PacketMill: toward per-Core 100-Gbps networking

Farshin, Alireza;Barbette, Tom;Roozbeh, Amir;Maguire Jr., Gerald Q.;Kostić, Dejan
(2021) ASPLOS ’21: 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems — Location: Virtual USA

Files

LLVM.zip
  • Open Access
  • Unknown
  • 1.66 MB

Details

Authors
  • Farshin, Alireza
    Author
  • Barbette, Tomorcid-logoUCLouvain
    Author
  • Roozbeh, Amir
    Author
  • Maguire Jr., Gerald Q.
    Author
  • Kostić, Dejan
    Author
Abstract
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 101 us -- 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.
Affiliations

Citations

Farshin, A., Barbette, T., Roozbeh, A., Maguire Jr., G. Q., & Kostić, D. (2021). PacketMill: toward per-Core 100-Gbps networking. Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems. Published. ASPLOS ’21: 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Virtual USA. https://doi.org/10.1145/3445814.3446724