Facebook is no stranger when it comes to open sourcing its computing knowledge. Over the years, it has consistently created software and hardware internally, then transferred that wisdom to the open source community to let them have it. Today, it announced it was open sourcing its modular network routing software called Open/R, as the tradition continues.
Facebook obviously has unique scale needs when it comes to running a network. It has billions of users doing real-time messaging and streaming content at a constant clip. As with so many things, Facebook found that running the network traffic using traditional protocols had its limits and it needed a new way to route traffic that didn’t rely on the protocols of the past,
“Open/R is a distributed networking application platform. It runs on different parts of the network. Instead of relying on protocols for networking routing, it gives us flexibility to program and control a large variety of modern networks,” Omar Baldonado, Engineering Director at Facebook explained.
While it was originally developed for Facebook’s Terragraph wireless backhaul network, the company soon recognized it could work on other networks too including the Facebook network backbone, and even in the middle of Facebook network, he said.
Given the company’s extreme traffic requirements where the conditions were changing so rapidly and was at such scale, they needed a new way to route traffic on the network. “We wanted to find per application, the best path, taking into account dynamic traffic conditions throughout the network,” Baldonado said.
But Facebook also recognized that it could only take this so far internally, and if they could work with partners and other network operators and hardware manufacturers, they could extend the capabilities of this tool. They are in fact working with other companies in this endeavor including Juniper and Arista networks, but by open sourcing the software, it allows developers to do things with it that Facebook might not have considered, and their engineering team finds that prospect both exciting and valuable.
It’s also part of a growing trend at Facebook (and other web scale companies) to open up more and more of the networking software and hardware. These companies need to control every aspect of the process that they can, and building software like this, then giving it to the open source community lets others bring their expertise and perspective and improve the original project.
“This goes along with movement toward disaggregation of the network. If you open up the hardware and open up the software on top of it, it benefits everyone,” Baldonado said.