Loading...
Image

Optimize Network Functions on Commodity Hardware

Improve performance by up to 70%

What is PacketMill?

PacketMill is a system for optimizing software packet processing. It grinds the whole packet processing stack, from the high-level network function configuration file to the low-level userspace network drivers, to mitigate inefficiencies and produce a customized binary for a given network function.

PacketMill is composed of three main components:

X-Change

X-Change is an optimization to DPDK, which uses customized buffers rather than the generic rte_mbuf.

Learn More

Source-Code Optimizations

PacketMill modifies FastClick's source code based on the available information in a network function configuration.

Learn More

IR-Code Optimizations

PacketMill exploits LLVM optimization passes to reorder FastClick's data structures.

Learn More

Why use PacketMill?

PacketMill achieves a better performance than other packet processing frameworks.

Publications

PacketMill: Toward per-core 100-Gbps Networking

ASPLOS'21 April 19-23, 2021

We present PacketMill, a system for optimizing software packet processing, which (i) introduces a new model to efficiently manage packet metadata and (ii) employs code-optimization techniques to better utilize commodity hardware. PacketMill grinds the whole packet processing stack, from the high-level network function configuration file to the low-level userspace network (specifically DPDK) drivers, to mitigate inefficiencies and produce a customized binary for a given network function. Our evaluation results show that PacketMill increases throughput (up to 36.4 Gbps - 70%) & reduces latency (up to 101us - 28%) and enables nontrivial packet processing (e.g., router) at ~100 Gbps, when new packets arrive >10× faster than main memory access times, while using only one processing core.

Read Paper Check Slides Watch Video

Authors

Image

Alireza Farshin

Co-First-Author/Developer

Doctoral Student at KTH Royal Institute of Technology.

Image

Tom Barbette

Co-First-Author/Developer

Post-Doctoral Researcher at KTH Royal Institute of Technology.

Image

Amir Roozbeh

Author

Industrial Doctoral Student at KTH/Ericsson Research.

Image

Gerald Q. Maguire Jr.

Author

Professor at KTH Royal Institute of Technology.

Image

Dejan Kostić

Author/Head of NSLab

Professor at KTH Royal Institute of Technology.