Monday 23 September 2013

Multipath TCP connections

Just recently , read about an interesting technology in network programming which is implemented for the first time in a commercial setting, in the just  launched Apple iOS-7. It  uses e Multipath TCP connections for the voice activated personal assistant Siri, to improve the Siri user experience which does bulk of its processing on the cloud, hoping that multipath tcp would inprove responsiveness and/or error robustness in case of congested channels.

Multipath TCP connections would allow a device to use various available internet connections like 3G, WiFi, or ethernet(if its connected via laptop/PC which has internet conenction via ethernet) over the most efficient(least congested) connection, in turn giving the user a robust/error free experience. It could also send data concurrently over these multiple connections to provide greater throughput to the application which needs to connect from the device( phone, PC, tablet,..) to the cloud or a application server, thus decreasing latencies and response times, and increasing the overall responsiveness.

This concept of Multipath tcp connections was proposed first in 2008,  in a initiative named Trilogy Project.
There is a document talking about technical guidelines for Multipah TCP development here.

I think and hope that this implementation of multipath TCP in a commercial product should pave way for more devices and protocol stacks having this implementation. I believe and wish this technology helps many bandwidth hungry applications which are also sensitive to network errors due to congestion and packet drops. Although UDP is the protocol of choice for Realtime Audio/Video communication applications like Skype, Google hangouts; Network audio streaming, IPTV, network gaming,  but if various related players in  the industry try implementing a proof of concept solution for this technology in their systems, they can see if their solutions and systems are benefited in some way by using multipath TCP specification. There will be issues about whether it becomes adopted widely, if it resolves interoperability issues and becomes mainstream choice for all networked data communication applications, but nonetheless as a technologist, it excites me for sure. We shall see how it fares in due course of time.


No comments: