iOS 7 uses Multipath TCP

Eug

Lifer
Mar 11, 2000
23,586
1,000
126
Cool?

Apple iOS 7 surprises as first with new multipath TCP connections

This week, completely unheralded, Apple’s iOS 7 became the first big commercial release of MPTCP.

Apple's iOS 7 is the first large-scale use of a newly-minted Internet protocol, called multipath TCP. It lets computers send and receive data across different network paths and interfaces at the same time, such as Ethernet, Wi-Fi and 3G.

There is evidence [see screen shot below] that Apple is using the new protocol for iOS 7 device links to Siri, Apple’s cloud-based, natural language voice command and navigation service. MPTCP is intended to create more robust connections, resistant to path failures, and to improve performance, especially for delay-sensitive applications such as voice. It’s part of an ambitious, global effort to transform the Internet from a mainly data network today to one that supports far more demanding applications such as telephony and IP TV.


Apple’s use of MPTCP was discovered by one of the researchers active in the protocol development process, Professor Olivier Bonaventure, with the IP Networking Lab, in Belgium.

“Packet traces collected on an iPad running iOS7 reveal that it uses Multipath TCP to reach some destinations that seem to be directly controlled by Apple,” he wrote in a blog post. “You won’t see Multipath TCP for regular TCP connections from applications like Safari, but if you use SIRI, you might see that the connection with one of the apple servers runs uses Multipath TCP.”
 

Cooky

Golden Member
Apr 2, 2002
1,408
0
76
To be honest this is the first time I've heard of the concept of MPTCP.

If my iPhone is connected to WiFi, and carrier's 3G network at the same time, iPhone would send out the same request via both paths, instead of just one?
Does this mean the destination server would respond to both requests? (two source IP's)
Wouldn't the application be confused when it receives two different responses?
 

TallBill

Lifer
Apr 29, 2001
46,044
62
91
To be honest this is the first time I've heard of the concept of MPTCP.

If my iPhone is connected to WiFi, and carrier's 3G network at the same time, iPhone would send out the same request via both paths, instead of just one?
Does this mean the destination server would respond to both requests? (two source IP's)
Wouldn't the application be confused when it receives two different responses?

Ummm, which seems to be the point of multipath. I don't like it because it might be using data when I don't want it to.
 

drebo

Diamond Member
Feb 24, 2006
7,035
1
81
To be honest this is the first time I've heard of the concept of MPTCP.

If my iPhone is connected to WiFi, and carrier's 3G network at the same time, iPhone would send out the same request via both paths, instead of just one?
Does this mean the destination server would respond to both requests? (two source IP's)
Wouldn't the application be confused when it receives two different responses?

No, because the sequence information of both TCP packets would be the same.

The network stack just sends it in both directions and whichever packet is received first by the receiving end is used, with subsequent packets being discarded due to being duplicates.