Facebook automates network peering to enable smoother web traffic management
Facebook Inc.’s engineering team today revealed how it overcame one of the most time-consuming problems in networking by automating a process called “network peering” that enables more efficient exchange of internet traffic across various networks and service providers.
In a blog post, Facebook engineers Jenny Ramseyer and Jakub Heichman explained that network peering involves sending internet traffic through something called a “peering exchange,” which serves as a common meeting point where lots of networks interconnect by establishing Border Gateway Protocol or BGP sessions between their routers. The peering sessions, as they’re often called, enable networks to establish the fastest, most direct route from an internet server to the user’s internet service provider, helping improve the performance, latency and reliability of the connections.
The only problem with peering sessions is that they need to be set up manually by each network provider, an incredibly complex, slow, inefficient and error-prone process, as Ramseyer and Heichman explain:
“Before developing our automated system, we suffered the same struggle. Peers would email us to request to establish peering sessions. Next, one of our Edge engineers would verify the email and check our mutual traffic levels. To confirm the traffic levels were appropriate, that team member had to check numerous internal dashboards, reports, and rulebooks, as well as external resources, such as the potential peer’s PeeringDB record. The team member then would use a few internal tools to configure BGP sessions, reply back to the peer, and wait for the peer to configure their side of the network.”
Facebook’s response was to create an automated system that lets peers request their own public peering sessions directly from the new facebook.com/peering page.
Networks must use the PeeringDB’s OAuth service, which is a part of the PeeringDB database, an open-source registry of network provider’s peering information.
“To ensure that peering requests made on our peering page are from an authorized person, we require the requester to authenticate using their PeeringDB login and leverage PeeringDB’s OAuth service on behalf of their network’s organization,” Ramseyer and Heichman said. “The peer does not need to provide any other authentication — no Facebook account is required. Once authenticated, the peer will see a list of all their network’s existing public peering sessions with Facebook and can submit new requests.”
Once the peer has requested a session, Facebook’s automated internal process takes over. Each request is sent to an auditing queue and, once approved, a second service will launch a workflow to set up peering. After that, the automated system emails the peer to confirm everything is ready on Facebook’s side. Then they just have to configure their side of the network.
“As soon our workflow detects that all sessions have been established, our workflow sends a final confirmation email,” the engineers wrote. “At that point, our peer should be able to see the new sessions as active in the table on facebook.com/peering.”
To ensure everything runs smoothly Facebook has created a monitoring system to sort through its peering@ mailbox. So whenever it detects a peering request, it automatically replies with instructions that direct the requester to the automated peering page.
Ramseyer and Heichman the system has so far processed more than 170 peering requests, approving 1,249 of them at the time of writing. As a result, it has automatically pushed more than 1,400 public peering sessions in total, saving its engineers about eight hours of work per week.
Analyst Holger Mueller of Constellation Research Inc. said that most internet users have no idea of the herculean effort that goes into traffic management.
“Peering is the solution for higher, faster and cheaper throughput, so it is good to see that one of the major users of bandwidth, Facebook, is now offering an open-source solution with its PeeringDB OAuth to enable this,” Mueller said. “It should help Facebook to improve user experiences while reducing network costs. We will see in a few months how successful PeeringDB OAuth is with the number of peering requests provided and used.”
Facebook is now calling for PeeringDB Oauth to be made an industry standard in all public peering automation applications. In addition, it’s also exploring the possibility of using PeeringDB Oauth to automate private peering network interconnects, which are a larger-volume counterpart to public peering.
A message from John Furrier, co-founder of SiliconANGLE:
Show your support for our mission by joining our Cube Club and Cube Event Community of experts. Join the community that includes Amazon Web Services and Amazon.com CEO Andy Jassy, Dell Technologies founder and CEO Michael Dell, Intel CEO Pat Gelsinger and many more luminaries and experts.
We really want to hear from you, and we’re looking forward to seeing you at the event and in theCUBE Club.