Search This Blog

Friday, June 25, 2010

Facetime on Iphone 4: Vanilla unencrypted STUN and SIP

(July 13: sorry for the downtime, looks like my bandwidth limits were exceeded. Upgraded my hosting package - fixed)

(note: Only the call part is Vanilla SIP. The procedure for registering a Facetime user into their servers etc. is all non-SIP, encrypted/ciphered.)

(for my user review of the iphone4 and bumper read here)

Well heck, good job Apple! I just tested facetime and did a quick check on its protocol. No hacking needed - just an on the wire black box inspection - its just plain SIP and STUN for firewall discovery. Apple plans to make this protocol public, and they seem to have done an excellent job. And thanks for showing the world that you don't need complicated encryption and proprietary tunneling tricks for an excellent experience. You need a good codec set, a good media stack that can adaptively switch codecs and manage buffers  and a good 'point-of-presence' network for the most part.

I am just going to restrict this post to an overview of the flow.


click on each image for a larger size (if they are small)

This is a facetime all flow - good, plain, SIP (they use MESSAGE for some proprietary data exchange during the call)

rest is perfect sip.

The protocols are here to see (besides SIP)

Ah here is their 200OK for INVITE

A quick look at their RTP stream:

Good Job Apple. Thanks for putting in an excellent quality, SIP client embedded into your dialer experience.