The SDxCentral directory provides a collection of the major open-source networking projects available today. And the second half of this report provides a rich list of the more popular open source projects. Nevertheless, in this section, we will provide you with a quick run through, by major category, of projects you should pay attention to and that you might consider utilizing in your own products or deploy in your infrastructure. If you think we’ve missed a project that deserves more prominence, we would love to hear from you at firstname.lastname@example.org.
The Infrastructure Layer projects are primarily focused on accelerating network data plane processing on general-purpose hardware. Some of the popular ones include Data Plane Development Kit (DPDK) which is a set of development tools to accelerate packet processing. DPDK was originally contributed to the open source community in 2010s by Intel, and is now available on multiple platforms. In early 2017, the DPDK project joined the Linux Foundation open-source networking portfolio. Another similar project is Fast Data I/O Project (FD.IO), another network acceleration initiative that is developing a “modular and extensible I/O services framework” agnostic to the hardware and virtualization architecture. FD.io is complementary to DPDK, and may be deployed in tandem. The core code for FD.IO was contributed by Cisco, and was derived from Cisco’s Vector Packet Processing, which has been productized for over a decade.
No list for open source in networking would be complete without mentioning the venerable Open Virtual Switch (OvS). Now part of the Linux Foundation, it was originally created by the Nicira/VMware team. Open vSwitch (OVS) is the predominant virtual switch for virtualization environments, originally derived from work in the early days of virtualization. It has been widely deployed, and integrated with many open source packages.
P4 is a slight lesser known open-source initiative that is a high-level language for programming protocol-independent packet processors. Created by some of the early proponents of SDN, P4 was designed to realize the vision of SDN- truly programmable networks with a focus on enabling protocol-independent silicon.
Network virtualization is the layer that provides an abstraction over and above physical transport, allowing for a virtual network to be run above an underlay network that doesn’t have to be aware of the complexities of the virtual network running above it. Prominent projects in this area include Project Calico, a layer-3 networking solution that has gained a significant following within the container networking industry.