Erratic video-streaming on the internet is annoying. For some applications, however, the wait can cost businesses money or even be downright dangerous. Think entertainment applications like virtual reality, or remote robotic surgery, where surgeons are trying to control medical robots from a distance.
“These are applications where timeliness and reliability are both very important,” says Amy Babay, a fourth-year PhD student in computer science at the Whiting School. “On the internet you usually have to pick between these two traits.”
Babay is developing software protocols to send data quickly, reliably, and cost- effectively from one point on the globe to another over the internet. Last June, she won the best paper award at the IEEE International Conference on Distributed Computing Systems for her work on the subject: “Timely, Reliable, and Cost-Effective Internet Transport Service Using Dissemination Graphs.” Her co-authors include her adviser Yair Amir, chair of the Department of Computer Science, computer science Assistant Professor Michael Dinitz, and master’s student Emily Wagner.
Over the past few years, overlay networks have been built on top of the internet to support high-demand applications like live television and voice over internet protocol (VoIP). Each computer node in these overlay networks is linked to a few others so that data packets can be sent via different paths. Normally, software running on these computers smartly route data packets from source to destination along the best path. A natural approach for applications that need higher reliability is to send data packets over two disjoint paths. But this isn’t reliable enough under the strict speed constraints of highly interactive applications.
Babay and colleagues came up with a better approach based on analysis of real-world network data. A key finding: A routing approach using two disjoint paths works well in most cases, and cases where two disjoint paths do not do well usually involve problems around a source or destination.
Their solution? Design software that creates a few different “dissemination graphs,” maps of different paths connecting a source and destination point. Some graphs have more ways out of the source, while others have more ways into the destination. To transmit data packets, the software first routes using the simplest graph but quickly switches to another graph in case of a problem. This provides a good trade-off between cost, reliability, and speed.
Babay is planning tests of their new data-routing protocol with robotics researchers at the Technical University of Munich. The plan is to have a robotic ultrasound machine at Johns Hopkins mirror the motions of an identical machine setup at TUM. This will test how quickly and reliably data travels across the Atlantic using overlay nodes set up in data centers on the East Coast and a handful of cities in the United Kingdom and Germany.