markburkley

Many networking equipment manufacturers and vendors struggle to facilitate high IP network traffic throughput rates in networking equipment when cryptography, data compression and/or pattern matching functionality is exercised in data streams. Most networking devices implement these functions in software only, using standard libraries provided with the operating system. At Emutex, we can help them to achieve higher traffic processing rates in their networking devices, particularly Linux based devices.

 

Mark Burkley - CTO, Principal Embedded Software Engineer

 

Emutex realized a customised high-speed network packet generator to be used for testing network switches and routers.

 

Our client, an international manufacturer of networking infrastructure equipment, contracted Emutex to build a customised high-speed network packet generator to be used in the testing of their network switches and routers. The generator simulates high speed and high volume network traffic typically experienced within commercial cloud server farms.

 

Intel DPDK

Linux O.S.

C

Python

 

THE EMUTEX APPROACH

We decided to create a software based network packet generator solution to run on powerful multi-core Intel Xeon based Dell servers. Using Intel DPDK technology and the Linux Operating System as a foundation, we built a C and Python based network packet generation software framework to test network load, latency and TCP connection setup and teardown - including datagrams transmission, a key feature not present in other software TCP simulators and required by our client to test networking applications like Open vSwitch. The framework allowed the flexible generation of user defined network frames and flows at line rate on standard Intel 10 GbE Network Interface Cards (NICs).

THE SOLUTION

The solution was network protocol agnostic but included incremental or random field updates (e.g. source and destination IP addresses) plus updating of all GRE/Ethernet/IP/UDP/TCP checksums.

 

Packages Generation Tool

Packets Generator Tools

TCP-Connections

Thousands of TCP/IP connections

 

THE RESULTS

The final solution enabled our client to migrate some of their testing of 10/100 GbE networking solutions away from expensive and not so scalable third party test frameworks such as IXIA and Spirent, to a flexible proprietary software solution using commodity hardware and NICs. It was also capable of generating 40Gbps of *IMIX traffic where up to 8 field modifications (plus the resulting checksum updates) were carried out on each packet while using just 2 physical cores. This scaled linearly depending on the number of physical cores used. Moreover the framework offers another key advantage: it is extensible; so we trained our client’s engineers to tailor and grow it.

*IMIX, or internet mix, refers to a mix of packet sizes which are assumed to resemble typical "real-world" internet traffic conditions.

 

ABOUT DPDK

The Intel Data Plane Development Kit (DPDK) is a set of data plane libraries and network interface controller drivers for fast packet processing at 10 and 40GbE speeds. Intel DPDK provides a programming framework that scales from Intel Atom processors to Intel Xeon processors and enables faster development of high speed data packet networking applications. Intel DPDK is provided and supported under the open source BSD license. It is widely used in Amazon AWS, Microsoft Azure, Cisco and other companies involved in high speed networking. For more information on Intel DPDK refer to dpdk.org.


Questions? Contact us.

 

We're here to help. Contact us and speak with our representatives who will answer any questions you might have.

 

Go To Top