Wire-speed DPI and other packet processing functions can be now be implemented without developing specialized packet processing solutions. Companies can easily develop systems that will support packet processing at 40Gbit/s and above by using the Intel® data plane development kit (DPDK) and Intel® Xeon® processor E5-2400/2600 (formerly codenamed “Romley”) together with off-the-shelf software and hardware solutions.
In this blog I am going to explore the benefits of using the standard Intel® Xeon® processors for packet processing and the support that is available from Intel and companies in the Intel® Intelligent Systems Alliance to significantly reduce time to market. The 200-plus members of the Alliance collaborate closely with Intel to create hardware, software, tools, and services to help speed intelligent systems to market. For this blog I am using examples from two members of the Alliance; Radisys and Wind River that have been collaborating closely with Intel on the development and use of the DPDK.
Multicore Packet Processing
High performance packet processing (data plane) has historically been handled by dedicated hardware or network processors. These devices must be closely coupled to a suitable general-purpose processor to handle control packet processing (control plane) and system management. This leads to an inflexible system in which it is not easy to balance the processing capabilities for data plane and control plane. Similar problems balancing the work load can also occur with multicore processors that integrate both general-purpose processor cores and hardware acceleration for packet processing.
The Intel® Xeon® processors E5-2400/2600 have several features that make these processors suitable for DPI and other packet processing applications. These processors integrate up to 8 Intel Architecture cores with large layer 2 and layer 3 caches, and high-performance DDR3 memory controllers, delivering very fast memory access, critical for DPI. The Intel® Xeon® processors E5-2400/2600 have integrated SIMD (Single-Instruction, Multiple-Data) cores providing a very powerful parallel processing capability and support instruction extensions for application-specific functions such as security.
The flexible power management on the Intel® Xeon® processors E5-2400/2600 allows individual cores to be slowed down, minimizing power consumption. This is particularly important when cores are allocated to completely different applications such as packet processing and system management. These processors also integrate up to 40 PCI Express Gen 3 interfaces supporting a total I/O bandwidth significantly in excess of 100Gbit/s.
Benefits from Using DPDK
The Intel® data plane development kit (DPDK) is a set of source code programming libraries. These are small algorithms that implement basic packet processing functions such as moving data in and out of Intel processors. These algorithms make maximum use of the layer 2 and layer 3 caches and the direct memory access (DMA) engines in the memory control blocks. The libraries are optimized for the latest Intel® processors.
By using the DPDK system developers can quickly implement packet processing functions on Intel processors such as the Intel® Xeon® processors E5-2400/2600. This approach has already proved very successful with many system developers using the DPDK to develop packet processing solutions for applications such as policy management.
Integrating DPDK with Hardware Platform
The Intel DPDK programming libraries have been developed to optimize system performance using the standard features of a Intel® Xeon® processors E5-2400/2600 based system. Most embedded and networking systems use additional hardware such as network interface cards (NIC) or Ethernet controller devices. These NICs and Ethernet controller devices integrate dedicated hardware to accelerate packet transfer to and from the system processors. To gain maximum performance with DPDK system developers need to port the drivers for these NICs and Ethernet controller devices. This can be a significant challenge.
Fortunately Intel® Intelligent Systems Alliance members are already porting drivers for various NICs and other hardware. An example is the Radisys ATCA-4600 ATCA processor blade (see Figure 1). This integrates dual sockets for E5-2448L or E5-2428L Intel® Xeon® processors and a Mellanox Ethernet controller device supporting dual 10 Gbit/s or 40 Gbit/s interfaces. For this blade Radisys has ported the Mellanox Ethernet controller driver to work with the Intel DPDK giving customers a fast time to market solution to implementing line rate packet processing.
Figure 1. Radisys ATCA-4600 with dual socket E5-2448L or E5-2428L Intel® Xeon® processors
Radisys is working closely with Intel and expects to have both ATCA blades and updated drivers available for future Intel Xeon processors. This is a major benefit to system developers allowing a quick upgrade to the latest processors without sacrificing driver efficiency.
Integrating DPDK with Operating System
The DPDK libraries are not targeted at a specific operating system (OS) or hardware platform. To make maximum use of the DPDK system developers need to integrate the DPDK algorithms with the operating system and packet processing implementation they are using. This integration can also be a significant challenge as it is important to optimize packet processing performance.
Intel® Intelligent Systems Alliance associate member Wind River will provide an integrated, embedded development kit for next-generation servers, data centers, and storage and communication systems. This includes Wind River Linux, to meet Carrier Grade Linux 5.0 specification, and integrated Intel DPDK libraries. The company also has a network acceleration platform that integrates a lightweight hypervisor and accelerated IP stacks. The Wind River Network Acceleration Platform uses the DPDK libraries for accelerated packet delivery . These solutions significantly reduce time to market for high-performance carrier-grade systems.
The introduction of Intel architecture multicore processors with integrated high-performance I/O and memory controllers like the Intel® Xeon® processors E5-2400/2600 has opened up new opportunities for high-performance packet processing without using specialized hardware. The Intel DPDK and off-the-shelf hardware and software solutions from Intel® Intelligent Systems Alliance members, including Radisys and Wind River, has significantly reduced the time to market for systems implementing high-performance packet processing such as DPI. Together with Intel these companies are developing a growing ecosystem around the Intel DPDK with hardware specific drivers, support for standard operating systems and timely upgrades to support the latest Intel processors.
For more on building flexible networking solutions, see intel.com/go/embedded-consolidation.
For more on flexible, scalable, standards-based communications visit intel.com/go/embedded-communications.
Radisys is a premier member of Intel® Intelligent Systems Alliance. Wind River is an associate member of the Intel® Intelligent Systems Alliance.
Roving Reporter (Intel Contractor), Intel® Embedded Alliance
Principal Consultant, Earlswood Marketing
Follow me on Twitter: @simon_stanley