Facebook Inc. deals with an enormous amount of data generated by its 1.86 billion users, including photos, videos and chat messages. But that’s not the only data it deals with, and in fact its user-generated data is dwarfed by the massive flow of machine data among its own facilities.
Data volumes soared to such an extent that around a year ago Facebook decided it would need to separate its own data traffic from that of its users. To do so, it built an enormous dedicated network for managing the flow of machine-to-machine traffic among its data centers. While Facebook user traffic will continue to use the company’s “classic backbone” infrastructure for users, data center traffic now travels along a new network called Express Backbone, or EBB.
Facebook created the new network to avoid “traffic jams” that might lead to congestion and poorer experiences for its users, and also so it can fine tune the machine-to-machine data flow across its network.
“In recent years, bandwidth demand for cross-data center replication of rich content like photos and video has been increasing rapidly, challenging the efficiency and speed of evolution of the classic backbone,” Facebook engineers Mikel Jimenez and Henry Kwok wrote in a long and technical blog post. “Furthermore, machine-to-machine traffic often occurs in large bursts that may interfere with and impact the regular user traffic, affecting our reliability goals. As new data centers were being built, we realized the need to split the cross-data center vs. Internet-facing traffic into different networks and optimize them individually.”
Facebook’s problem is that it has an enormous amount of traffic passing through its data centers at any time. Much of it is generated by users, but machines also create a fair amount of traffic too (pictured), usually from such tasks as data analytics, machine learning and storage backups. Facebook was worried that as its machine data traffic grows, this could impact on user’s experiences.
With Express Backbone, Facebook’s engineers built upon the company’s classic backbone network and improved some of its technical constraints. The new approach gives it a new level of control over how it handles different kinds of traffic.
“This model allows us to control some aspects of traffic flow centrally, e.g., running intelligent path computations,” the Facebook engineers wrote. “At the same time, we still handle network failures in a distributed fashion. … Such a hybrid approach allows the system to be nimble when it encounters congestion or failure.”
Facebook said it built its Express Backbone in under a year. The new architecture now connects its global network of data centers, including U.S. facilities like those in Iowa, Oregon and North Carolina with those in Europe, such as Lulea, Sweden, and Clonee, Ireland.
Most Facebook users probably won’t notice any difference as a result of the changes, and that’s exactly what the company wants. The alternative is that the Facebook experience slowly becomes more sluggish, and that could eventually cause some users to abandon it in favor of other social networks.