So what is packet processing?
Packet processing refers to a wide range of technologies and algorithms that guide a packet of data through the network. Packet processing is the act of data identification, inspection, extraction, and manipulation so that a network may make intelligent management decisions, such as identifying latency critical traffic and prioritizing it above other packets.
In short, packet processing solutions are responsible for managing, monitoring and securing data flow within your network while facilitating the streamlined transfer of information. You will find unique packet processing solutions within the networks of many of the largest data-intensive organizations, including Verizon, AT&T, Google and Amazon.
High-efficiency packet processing on Intel architecture server platforms
In the recent past, truly efficient packet processing was only possible on dedicated hardware combined with proprietary software. Today, Intel Architecture server platforms complemented by specialized open source software libraries and techniques along with advances in Network Functions Virtualization (NFV) and cloud technologies result in high-efficiency packet processing from a range of ecosystem providers.
A few of the key platform hardware ingredients supporting high-efficiency packet processing include:
- Intel® Advanced Encryption Standard New Instructions (Intel® AES-NI).
- Intel® Data Direct I/O Technology (Intel® DDIO) permitting Intel® Ethernet Controllers and adapters to talk directly with the processor cache.
- Intel® Ethernet Flow Director directing Ethernet packets to the right processor core.
- Intel® QuickAssist Technology (Crypto and compression hardware acceleration)
- Intel® Resource Director Technology (Intel® RDT) bringing visibility and control over how shared resources, such as last-level cache (LLC) and memory bandwidth.
Select specialized open source software libraries include: Data Plane Development Kit (DPDK) library found at dpdk.org, Hyperscan Pattern Matching library found at 01.org, Vector Packet Processing (VPP) library found at FD.io, and DPDK optimized Open vSwitch found at openvswitch.org.
As an example of an optimized packet processing solution, the VPP library built on top of the DPDK poll mode drivers (PMD) and ring buffer libraries achieves unprecedented switching and routing performance of 480Gbps/200mpps with 8 million routes and 2k whitelist entries on standard high volume Intel based server.2 VPP achieves this level of packet processing performance through software techniques that reduce the number of CPU cache misses and replacing standard serial packet processing with parallel packet processing.
Benefits of packet processing
High-efficiency packet processing offers many potential benefits over traditional packet processing strategies, including:
- Increased flexibility and speed to deliver new services.
- A reduction in network Total Cost of Ownership (TCO).
- Streamlined additions of new connectivity and services.
- Reduced time investment and staffing costs.
- Ability to accomplish tasks that once required specialized builds on proprietary hardware platforms.
Please watch the latest episode in our eight-part Network Transformation video podcast series, hosted by my colleague, Jim St. Leger, Data Plane Software Product Line Manager at Intel. This episode takes you through the basics of packet processing, including how it works and the benefits.
You can find new videos every two weeks through the end of 2016 on our YouTube channel.
- Webcast: DPDK 16.07 New Features
- Webcast: DPDK 101: Introduction to Data Plane Development Kit
- DPDK documentation (getting started guides, release notes, programmer’s guides and more)
- Solution Brief: Packet Processing on Intel® Architecture
- Video: Maximizing Your Traffic Throughput
1 Source: Cisco Visual Networking Index Global Mobile Data Traffic Forecast Update, February 2016
2 Source: https://fd.io/news/announcement/2016/06/fdio-announces-communitys-first-major-software-release-1606-0 (tested on UCS 4-CPU-socket server with 4 of Intel “Haswell" x86-64 processors E7-8890v3 18C 2.5GHz)