TY - GEN
T1 - Accelerating Packet Processing in Container Overlay Networks via Packet-level Parallelism
AU - Lei, Jiaxin
AU - Munikar, Manish
AU - Lu, Hui
AU - Jia, Rao
N1 - Publisher Copyright:
© 2023 IEEE.
PY - 2023
Y1 - 2023
N2 - Overlay networks serve as the de facto network virtualization technique for providing connectivity among distributed containers. Despite the flexibility in building customized private container networks, overlay networks incur significant performance loss compared to physical networks (i.e., the native). The culprit lies in the inclusion of multiple network processing stages in overlay networks, which prolongs the network processing path and overloads CPU cores. In this paper, we propose mFlow, a novel packet steering approach to parallelize the in-kernel data path of network flows. mFlow exploits packet-level parallelism in the kernel network stack by splitting the packets of the same flow into multiple micro-flows, which can be processed in parallel on multiple cores. mFlow devises new, generic mechanisms for flow splitting while preserving in-order packet delivery with little overhead. Our evaluation with both micro-benchmarks and real-world applications demonstrates the effectiveness of mFlow, with significantly improved performance - e.g., by 81% in TCP throughput and 139% in UDP compared to vanilla overlay networks. mFlow even achieved higher TCP throughput than the native (e.g., 29.8 vs. 26.6 Gbps).
AB - Overlay networks serve as the de facto network virtualization technique for providing connectivity among distributed containers. Despite the flexibility in building customized private container networks, overlay networks incur significant performance loss compared to physical networks (i.e., the native). The culprit lies in the inclusion of multiple network processing stages in overlay networks, which prolongs the network processing path and overloads CPU cores. In this paper, we propose mFlow, a novel packet steering approach to parallelize the in-kernel data path of network flows. mFlow exploits packet-level parallelism in the kernel network stack by splitting the packets of the same flow into multiple micro-flows, which can be processed in parallel on multiple cores. mFlow devises new, generic mechanisms for flow splitting while preserving in-order packet delivery with little overhead. Our evaluation with both micro-benchmarks and real-world applications demonstrates the effectiveness of mFlow, with significantly improved performance - e.g., by 81% in TCP throughput and 139% in UDP compared to vanilla overlay networks. mFlow even achieved higher TCP throughput than the native (e.g., 29.8 vs. 26.6 Gbps).
KW - Container Overlay Networks
KW - Kernel Network Stack
KW - Packet Processing
UR - http://www.scopus.com/inward/record.url?scp=85166647494&partnerID=8YFLogxK
U2 - 10.1109/IPDPS54959.2023.00018
DO - 10.1109/IPDPS54959.2023.00018
M3 - Conference contribution
AN - SCOPUS:85166647494
T3 - Proceedings - 2023 IEEE International Parallel and Distributed Processing Symposium, IPDPS 2023
SP - 79
EP - 89
BT - Proceedings - 2023 IEEE International Parallel and Distributed Processing Symposium, IPDPS 2023
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 37th IEEE International Parallel and Distributed Processing Symposium, IPDPS 2023
Y2 - 15 May 2023 through 19 May 2023
ER -