by Jackie Swift
Technology is getting smarter. The evolution is fueled by an ever-expanding internet of things—devices embedded in the environment around us and connected to cloud computing via the network. Smart applications for diverse settings—such as smart highways, smart power grids, and smart agriculture—are under consideration, but they come with unprecedented needs.
“Smart systems require fast responses, yet run with very high-rate data flows,” says Kenneth P. Birman, Computer Science. “We want these applications to react instantly, yet we also need them to run at cloud-scale. Traditional big-data approaches, as seen in the cloud today, introduce far too much delay.”
Birman’s expertise is distributed computing systems—that is, software that interconnects large numbers of computers so that they can work collaboratively. In the past, he and his group helped create the software system that ran the New York Stock Exchange for 10 years without a disruption. His solutions are still used in the French air traffic control system, which has been running for more than two decades.
How Smart Can a Highway Be?
These days, Birman’s group is turning its attention to smart systems. Eventually, he is hoping to enable smart highways, where sensors on the roadway and in the cars themselves would continuously stream torrents of data. Birman sees the problem as analogous to running an air traffic control system. However, smart highways would require far greater scale, more automation through use of artificial intelligence, and the ability to react almost instantly.
“You would see data flows that spread over tens of thousands of computers, with torrents of information pouring in,” Birman explains. “The challenge is to immediately figure out what each car is doing and to warn a car right away if a danger arises. We’ll also have to continuously refine the system’s knowledge of the state of the world. For example, instead of driving exactly where the highway thought you were driving, perhaps you’re a few inches to one side or the other. That might matter, so the system would need to continuously track that sort of thing. We also need to find ways to reduce the volume of data—for example, by throwing away uninteresting video where there’s nothing on that section of the highway.”
Birman continues, “If we can get these systems to focus on what really matters, we can trim the volume and rate of data down to something manageable, then process it quickly enough to guide convoys of cars, warn if there are hazards on the road ahead, and hopefully have a really positive impact on congestion.”
Ensuring high performance means that information needs to be processed the instant it arrives in the cloud, which isn’t the way today’s big data systems are structured. “We want to move some of the artificial intelligence tools from the back, where they currently live, right into the edge. If we can shift smart logic out to where the data is first seen, store-and-forward delays vanish,” Birman says. “My goal is to solve this in a general-purpose way and also in a way that can preserve as much of today’s existing tools as possible.”
Birman works closely with fellow faculty members Robbert van Renesse, Hakim Weatherspoon, and Lorenzo Alvisi, as well as with Research Associate Weijia Song and computer science PhD candidates Theodoros Gkountouvas, Edward Tremel, and Sagar Jha.
The Super-Smart Memory Approach
The researchers have already prototyped a first generation of what they call a smart memory framework—a software file storage system for real-time applications that integrates directly with real-time machine intelligence components. Called the Freeze-Frame File System, it takes time-stamped updates from sensors and captures the data for smart applications to access at any moment in time. “The Freeze-Frame approach is especially valuable when an artificial intelligence solution needs to track fast-evolving information, like a car’s trajectory, which involves watching events in rapid motion,” says Birman.
The next big step is already underway. The team is re-implementing Freeze-Frame over a new platform they’ve created, known as Derecho. Named after the phenomenon of unstoppable straight-line winds, Derecho is a communications library that offers unprecedented speed in data movement while at the same time promising fault-tolerance and data consistency. Ultimately the researchers hope to create a fully customizable, second-generation smart memory technology. “When we layer Freeze-Frame over Derecho, we end up with smart memories that look like normal file systems, which makes them easy to use,” Birman says, “but they can also be customized by inserting machine intelligence apps right into the storage infrastructure. This permits instant access to data, and lets us leverage the huge parallelism of the cloud. We are hoping this will be a break-through capability for smart applications.”
GridCloud for a Smart Power Grid
Smart highways remain a distant goal, but the team’s work already has real users. The impetus for Freeze Frame came from a project called GridCloud that aims to turn the bulk power grid for the Northeastern United States into a smart grid. Funded by the Department of Energy’s Advanced Research Project Agency and the New York State Energy Research Development Agency, GridCloud is already used by operators that control nearly 20 percent of bulk power in the United States, as well as by the energy company Eaton LLC. “With our smart memory approach, it may finally be possible to leverage the cloud in support of fast, secure, real-time power grid monitoring and control,” Birman says.
GridCloud is the first smart application built on Freeze Frame and Derecho, but it won’t be the last. “When we build computer software these days we try to isolate pieces, solve them very elegantly, and build one really good system,” Birman says. “But by working in a sufficiently general way, we get to reuse the pieces for other kinds of applications. That avoids wastefully solving the same problems in slightly different ways. My goal is to keep using Derecho and Freeze-Frame as a shared core, but then to layer fancier things over it, like we did with GridCloud. The key is to focus on real customers with real needs.”
Birman enjoys the types of technical puzzles generated by distributed computing systems. “If I wasn’t working on something like this, I’d get pretty bored,” he says. “I find it very satisfying to see new problems and be part of finding a path to solving them—ideally, elegantly, and with amazing performance. Systems researchers rarely talk much about air traffic control, yet every time I fly to Europe, my software is down there, making it possible for the controllers to do their jobs. In fact, a few years ago the head of the French air traffic control agency sent me a nice note, thanking me for my help. For me, it doesn’t get better than that.”