Open Compute to open source high-end network switches

Open Compute to open source high-end network switches

Summary: Facebook and friends' Open Compute Project has made servers, motherboards, and power supplies more affordable for datacenters. Now it tackles perhaps its biggest challenge to date: High-end network switches.


Since Facebook started open sourcing the datacenter in 2011 in the Open Compute Project (OCP), Facebook and its OCP partners have had some successes in making datacenter computing more open and affordable. Now, the OCP takes on what may be its biggest challenge to date: Creating open-source, high-end network switches.

If Facebook and its Open Compute buddies are successful, high-end, open-source network switches will soon be commonplace in datacenters.
(Image: Facebook)

As Frank Frankovsky, chairman of OCP, said:

We are working together, in the open, to design and build smarter, more scalable, more efficient datacenter technologies — but we're still connecting them to the outside world using black-box switches that haven't been designed for deployment at scale, and don't allow consumers to modify or replace the software that runs on them.

With that in mind, we are today announcing a new project within OCP that will focus on developing a specification and a reference box for an open, OS-agnostic top-of-rack switch . Najam Ahmad, who runs the network engineering team at Facebook, has volunteered to lead the project, and a wide variety of organizations — including Big Switch Networks, Broadcom, Cumulus Networks, Facebook, Intel, Netronome, OpenDaylight, the Open Networking Foundation, and VMware — are already planning to participate. Work on the project will begin in earnest at the first-ever OCP Engineering Summit (, being held at MIT on May 16.

It's our hope that an open, disaggregated switch will enable a faster pace of innovation in the development of networking hardware; help software-defined networking continue to evolve and flourish; and ultimately provide consumers of these technologies with the freedom they need to build infrastructures that are flexible, scalable, and efficient across the entire stack. This is a new kind of undertaking for OCP — starting a project with just an idea and a clean sheet of paper, instead of building on an existing design that's been contributed to the foundation — and we are excited to see how the project group delivers on our collective vision.

Of course, there's nothing new about open-source switches. Any Linux or BSD server can also serve as a switch. Vyatta, an open-source router project designed to handle speeds from DSL to 10Gbps, has been around for years. That last number is the telling one, though. Datacenters need network switches that can start with 10Gbps and move up from there.

What will such an open-source switch look like? We don't know yet. One of Linux's weaknesses is that its network stack isn't that fast, noted Adrian Cockcroft, director of architecture for Netflix's cloud systems, at Linux Foundation's Linux Collaboration Summit in San Francisco in April 2013.

That said, many high-speed switches today use BSD Unix as their basis. While many say that the OCP is starting with a "clean sheet of paper", the ultimate goal of the project seems to be to give datacenter administrators a "bare metal network switch". I think it's likely that BSD will lie at its heart. After all, why reinvent the wheel?

What I find especially interesting about this OCP move is that it's coming immediately after the Linux Foundation's move to unify most of the software-defined networking (SDN) powers under an open-source approach in the Open Daylight Foundation.

In the past, the major network hardware vendors would use open-source software for their black boxes; but, since they used BSD-licensed code, they didn't need to share their improvements. We now seem to be moving to a much more truly open-source-friendly network infrastructure world. The result should be better and cheaper high-end network gear for server farms and datacenters.

Related stories

Topics: Networking, Data Centers, Hardware, Open Source, Operating Systems, Software Development

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.


Log in or register to join the discussion
  • I am surprised the OS networks stack is all that important


    Most of the heavy lifting should be handled in hardware. High level OSes aren't real-time. I would expect the OS to be there to allow users to configure the system and provide high level management tasks but I wouldn't expect it to be involved in the direct switching activities. That should be handled in hardware (e.g. FPGA). It is easy to open source software but harder to open source hardware. Even if you used FPGA's you still have to deal with what pins are connected to what.
  • "One of Linux's weaknesses is that its network stack isn't that fast"

    Weakness - what you talkin bout Willis? Linux is perfect. Obviously a closet windows fanboy posing as a linux fanboy.
    • If not Linux then Windows??

      I agree. I actually build packet capture engine and have done extensive tests comparing capture performance on Linux (CentOS) and windows (Server 2008). Windows simply sucks..
      Selvakumar Manickam
    • Mr Cockroft isn't a windows guy

      He used to work for Sun Microsystems and was one of the systems performance gurus. Then, maybe, he was more of a SunOS or Solaris Fan.

      At around the Solaris 8 time, Linux networking caught up with Solaris and was faster. Sun reengineered its network stack and Solaris 10 was again faster then the Linux of the time (2008 ish?, 2.6.??). I don't know if Solaris 10 is still faster than Linux 3.x.

      Netflix will know about relative speeds of different OSen as they have to optimize all the clients they code for (PC, tables, phones, game consoles, set tops. The Wii even!) and how they connect to their servers on AWS which are most likely Linux. Though Netflix could be using any other x86 OS on Amazon.
  • "Linux is perfect"

    OK. Linux is the best OS for any purpose (save for AD), and the network stack is better than Windows. But Unix is faster... To have proof, just ping some ip with windows, Linux and Unix and see the difference !