MIT Researchers Develop Computer-Generated TCP for Network Connections That are Twice as Fast
Thanks to the efforts of some MIT researchers, our use of the Transmission Control Protocol could soon experience a nice upgrade. Since its introduction decades ago, TCP has become an integral part of our networking, whether we're connecting to another PC in the same building, or out to a remote server to fetch a webpage. In fact, because of its importance, TCP is one of the most-used pieces of software in the world.
A lot has changed since TCP's introduction in the mid-70s, however. We're constantly changing what sort of data we're pushing across our network wire, and as such, there's never been just "one" TCP. While the overarching idea of TCP has always been to efficiently transfer data over a network, different algorithms have been put to use over the years. On Linux, Cubic is the chosen default, and on Windows, Compound is. It's the goal of these MIT researchers that Remy replaces both of these over time.
The chart below highlights the benefits that Remy is able to offer:
Compared to Cubic and Compound, Remy is able to excel regardless of whether it's configured to treat throughput with higher importance over latency, or vice versa. These are fairly significant differences, too, with latency being cut in half, or in some cases, even better than that. With the help of in-house testing, Remy's developers have found that it could double the throughput and halve the latency versus Compound, and increase throughput by 70% and cut latency down to 33% with Cubic.
According to Remy's designers, the biggest downfall of other TCP implementations is that their algorithms have been designed by humans, and sometimes, computer brains are the better options. With Remy, you're able to initially specify a simple goal, emphasis on throughput or latency, and as time passes, it changes its behavior to best-suit the current scenario.
In an example given, TCP has to deal with a lot of decision-making. If someone is uploading a 1GB video to YouTube, and someone else is uploading one of 5GB, which user gets the priority? Is the line as a whole going to become so saturated, that someone else in the house becomes unable to voice chat through Skype? With its learning ability, Remy should be able to understand the overall situation, and handle the data efficiently. It could be that the person with the smallest video will get higher priority so that it can finish first, rather than have to wait 5x as long because the other user is hogging the bulk of the bandwidth.
As to how Remy can optimize the Internet as a whole, the developers admit to not really knowing at this point. It's just far too soon to tell if it even will be something that people want to jump on, but by all appearances, it has the right stuff to warrant further investigation.