Upgrading the Internet for the mobile age

Aug 01, 2012 by John Sullivan
A team of Princeton researchers, including Erik Nordström (left), a research scholar, and Michael Freedman, an assistant professor of computer science, is developing a system to address the problems involved with the Internet's growing pains. Called Serval, the system makes a small change to the way programs download and manage data that could have a big impact on the future development of the Web. (Photo by Frank Wojciechowski)

(Phys.org) -- Some strands of the World Wide Web are getting a little tattered.

When it comes to delivering data to users, the Web still works brilliantly. But for other functions such as allowing users to move between or companies to shift traffic among , engineers are forced to implement increasingly cumbersome .

In part, that is a function of the Internet's growth. What began as an elegant method to transfer data among a small number of computers has evolved into a massive makeshift system in which have added workarounds on top of earlier layers of fixes.

Now, a team of Princeton University researchers has released a plan to cut through that tangle and provide a simple solution to many of the problems involved with the Internet's growing pains. Called Serval, the system makes a small change to the way programs download and manage data that could have a big impact on the future development of the Web.

"Smart engineers are great at mastering complexity and hacking around it. But with the current approach, everybody needs to reinvent the wheel," said Michael Freedman, an assistant professor of who heads the Serval development team. "Serval is something that will make things easier to build and easier to manage without relying on these hacks."

The team has put together a small Princeton network to demonstrate Serval's function and is moving into testing the system in larger and more complex deployments. Serval fixes problems by augmenting the role of one of the foundations of the Internet — the IP address. The IP, or Internet Protocol, address is the fundamental identifier for computers and other devices on the Internet. It is critical both for transferring information and for programs that use the data at its ultimate destination. 

One way to think about this is to imagine the IP address is a street address such as 1 Main St. When packets of information need to find their way to your computer, they use the IP address. When the information arrives, the IP address of the transmitting computer also plays a role in allowing your computer to recognize information needed for specific applications such as Firefox or QuickTime (there are a number of other programs involved, but the IP address is one step in allowing your computer to say 'Oh, yes, this is the data I need to run this YouTube video.')

That worked well in the early days of the Internet when users wanted to connect to a specific computer. But now, people are not interested in connecting to a single computer, they want to connect to services such as Google or Wikipedia. Unfortunately, because the IP address is still linked to specific machines, there is no easy way to do that. 

The problem is that the IP address cannot change without messing everything up. Computer programs that rely on the IP address have no easy way to adjust if the IP address changes, a possibility that is increasingly common as mobile devices proliferate. Without a clever hack, the program just stops.

"A lot of applications can be rewritten to hide the fact that you break your connection and re-establish it," said Jennifer Rexford, the Gordon Y.S. Wu Professor in Engineering who is also working on Serval. "But it makes things unnecessarily complex and more expensive."

Serval does not replace the IP address, which continues to function as usual. Instead, Serval works by adding another layer of information, called the service access layer, to certain packets contained in a data stream. Unlike the IP address, which identifies a specific computer, the service access layer identifies a service such as Google or Facebook. So if the IP address changes, the program does not stop because it receives the functional information it needs from the service access layer.

This makes it easier for users to watch a movie while their tablet computer switches between a Wi-Fi stream and a cellular one. It also allows a mobile device to use Wi-Fi and cellular service at the same time.

"The Internet is increasingly a platform for connecting mobile users with the cloud and the Internet was not designed to do that," Rexford said. "All the work that goes into shoehorning that into the old network architecture is very difficult."

Serval also makes it much easier for Internet companies to shift traffic among different servers. While not as immediately important to individual users, this function could allow for drastic increases in efficiency for Internet companies, and it could play an important role in the future development of the Internet in general. 

Remember the 1 Main St. analogy? Big companies such as Google have expanded far beyond an initial address such as 1 Main St. Now, the company has thousands of servers, branch offices if you will, and Serval will allow company managers to switch users among offices seamlessly or allow subdivisions within individual offices to serve different users. To do that now, the companies have to rely on expensive and hard-to-manage workarounds. With Serval, it would be straightforward.

Gary Berger, a lead engineer at Cisco Systems, said bringing greater flexibility to the network is a goal that many organizations would welcome. Although not affiliated with the development of Serval, Berger is reviewing the project to see whether Cisco could perform some in-house testing of the Serval system. Internet companies are looking at a number of options, but Berger said that Serval offers a possible solution to basic problems that are limiting the growth of the Internet — many of which can't be easily solved by further patches.

"You can't solve all the problems by incrementally adding to the architecture because it is fundamentally broken at a basic level," Berger said. "Serval helps us to think differently about the problem, which will benefit everyone."

One advantage of Serval is that the system can be deployed incrementally and does not require massive changes to current networks. For users who do not use Serval, the additional data layer in packets will be invisible and the IP address will remain as the identifier. In cases where Serval is used, the researchers estimate that it will increase the amount of time data takes to transit the Web by less than 1 percent.

Berger said the Serval team has already addressed the issue of making applications work with the service access layer rather than the IP address alone. He said that was the most technically and the most important part of Serval. But Berger noted there are still questions that have to be answered regarding how Serval will function in the broader context of the Internet, and what potential problems could crop up if it were widely deployed.

Erik Nordström, a research scholar in the computer science department and the lead author of the team's conference paper on Serval, said the group has been meeting with Internet companies and service providers to inform them of the system's advantages. He said it can be difficult to convince large organizations to make fundamental changes, particularly when they already invested considerable sums into the software that runs their systems.

"We'd like to understand how we can make Serval more attractive for others to adopt, especially when it comes to managing large-scale Web services," Nordström said. 

Serval was developed with support from the National Science Foundation, the Defense Advanced Research Projects Agency, the Office of Naval Research and Cisco Systems. The authors of the Serval paper were: Nordström, David Shue, Prem Gopalan, Robert Kiefer, Matvey Arye, Steven Y. Ko, Rexford and Freedman. All are with the Princeton School of Engineering and Applied Science's Department of Computer Science.

Nordström said the Serval team would like to follow up with a wider deployment of the system to understand engineering challenges at a larger scale and in a more realistic environment.

He said the next step will allow the team "to better understand practical limitations and benefits of Serval, and also provide us with a complete deployment strategy that we can present to interested parties."

Explore further: Scientists twist radio beams to send data: Transmissions reach speeds of 32 gigabits per second

Related Stories

Dutch support for disaster zone phone software

Apr 13, 2011

Software developed by Flinders University’s Dr. Paul Gardner-Stephen which enables mobile phones to communicate during a disaster will be freely available to the public by the end of the year thanks to the support of ...

Support brings network-less mobiles closer to reality

Aug 31, 2011

A new, open source mobile phone technology developed by Flinders University’s "digital blacksmith" Dr. Paul Gardner-Stephen and which promises to revolutionize telecommunications has earned him a $400,000 Fellowship ...

Flinders phone software goes global

Nov 14, 2011

A revolutionary software program which allows mobile phones to communicate when normal phone lines are down has earned Flinders University’s Dr. Paul Gardner-Stephen (pictured) a place in the finals of ...

Recommended for you

EnGo public charging station serves university students

1 hour ago

Kinetic tiles and solar panels are ready to power up mobile devices for people on the go thanks to something called the EnGo charging station. The technology involves a combination of kinetic tiles and solar ...

User comments : 2

Adjust slider to filter visible comments by rank

Display comments: newest first

Eikka
not rated yet Aug 01, 2012
One way to think about this is to imagine the IP address is a street address such as 1 Main St.


It's not even that. The IP adress is technically just a number, akin to the number of the apartment on the door. You don't know what street it's in, what city, not even what country. When a router sees an IP adress, it just has to know that certain IPs starting with certain numbers should be sent to certain other routers along some possible route, and this is called the global routing table. On the next lower hierarchy levels there are local routing tables that guide the packet all the way to you.

The problem they're talking about stems from this structure, because each router has to know all possible paths. If a company wants two separate connections that point to one server, for redundancy, those then represent two possible routes in the global/local routing table, which grows exponentially every time you add a route.

At some point, you just can't process it anymore.
Eikka
not rated yet Aug 01, 2012
There are other routing methods. For example, the telephone network was originally designed so that each digit in the number represents a path, so when you dial 0 that goes to the local exchange, then let's say 9 goes to the exchange in the next city, and so on. It means the number itself describes the route how to reach you: take the local line to the central hub, then down wire number 5, turn left at exchange number 8 and you're there. In that kind of a system, you can easily dial different numbers and open different parallel routes to the same endpoint, or the operator may do it for you seamlessly, so that when one drops the others still work. It also has no trouble growing by just adding more digits to the numbers.

This is not possible with the IP scheme because the IP address is just a number. It doesn't mean anything, so the network has to know where everyone is and how to get there, and this is why you need organizations like ICANN and IANA that basically dictate that.