In our connected world we are used to having computers, laptops, tablets and smartphones all connected to the internet and we are increasingly intolerant of bandwidth and delay problems. However, the correct operation of the internet comes down to a few essential building blocks, or protocols, which have been developed for different purposes and often in a different era.
TCP is one of those key building blocks and enables any pair of hosts to exchange information reliably. TCP was designed in the 1970s when having even one network interface on a computer was a luxury. So the TCP designers naturally opted for a protocol that is capable of using a single network interface only. Since then though, the networks and the computers have evolved, and with this change comes new challenges and opportunities.
Today, the average computer or smartphone has several wired and wireless interfaces and most networks provide multiple paths between any source/destination pair. But TCP remained largely a single-path protocol – capable of using one path at a time. This limitation became a major problem for many applications. A smartphone cannot easily use WiFi and 3G at the same time. A server cannot combine several high-speed interfaces together. When a mobile host moves, it needs to restart all established TCP connections leading to slower connection in the best case scenario and a connection error in the worst case.
Researchers have come up with various options to deal with single-path TCP, but none has satisfactorily solved the problems. However in recent years, researchers working initially in the EU-funded Trilogy project and now in the CHANGE and Trilogy 2 projects have made a major breakthrough with an extended Multipath TCP.
On smartphones, Multipath TCP allows WiFi and 3G/4G interfaces simultaneous access and use. Furthermore, smartphones can move from one WiFi network to another without losing connectivity and having to restart their data-stream. On servers, Multipath TCP permits several high-speed links to combine together to increase performance.
Multipath TCP in action
Christoph Paasch, Gregory Detal and their colleagues at Belgium’s Université Catholique de Louvain (UCL) recently demonstrated the capabilities of Multipath TCP with their implementation in the Linux kernel. They reported a throughput of 52 Gigabits per second (Gbps) for a single TCP connection over six parallel 10 Gbps links. According to the researchers, that is more than an entire DVD’s worth of data transmitted every second.
Technically, Multipath TCP is fully backwards compatible with existing TCP implementations and network equipment. It has been ratified by the Internet Engineering Task Force and has been implemented on smartphones, laptops and servers. Other use cases have also been identified and will be explored in the coming years within the Trilogy 2 project.
More broadly, Trilogy 2 is developing a new internet architecture based on ‘liquid network’ concepts. “A liquid system should ideally allow resources, including bandwidth, storage and processing, to be used by any application, whether they are contributed by network operators, data centre operators or end systems,” notes the team on their website.
Meanwhile, the CHANGE team is tackling a central problem of today’s internet … “ossification”. Innovation through the introduction of new core network technologies is very difficult. New solutions are needed to avoid “optimising today’s applications at the expense of tomorrow’s”, which according to the CHANGE team will be achieved by introducing a “common concept of a flow-processing platform, instantiated at critical points in the network”.
Simple? Not really. But these European researchers’ record-breaking Multipath TCP demonstration is an encouraging achievement for the internet of the future.
Multipath TCP website – http://www.multipath-tcp.org