计算机科学
编译程序
前进飞机
优化编译器
编译时间
网络数据包
数据包处理
软件定义的网络
代码生成
程序优化
吞吐量
并行计算
软件
静态分析
程序设计语言
分布式计算
操作系统
计算机网络
无线
钥匙(锁)
作者
Sebastiano Miano,Alireza Sanaee,Fulvio Risso,Gábor Rétvári,Gianni Antichi
出处
期刊:IEEE ACM Transactions on Networking
[Institute of Electrical and Electronics Engineers]
日期:2024-01-01
卷期号:: 1-16
标识
DOI:10.1109/tnet.2023.3346286
摘要
State-of-the-art approaches to design, develop and optimize software packet-processing programs are based on static compilation: the compiler’s input is a description of the forwarding plane semantics and the output is a binary that can accommodate any control plane configuration or input traffic. In this paper, we demonstrate that tracking control plane actions and packet-level traffic dynamics at run time opens up new opportunities for code specialization. We present, a system working alongside static compilers that continuously optimizes the targeted networking code. We introduce a number of new techniques, from static code analysis to adaptive code instrumentation, and we implement a toolbox of domain specific optimizations that are not restricted to a specific data plane framework or programming language. We apply to several systems, from eBPF and DPDK programs including Katran, Meta’s production-grade load balancer to container orchestration solutions such a Kubernets. We compare to state-of-the-art optimization frameworks and show that it can bring up to 2x throughput improvement, while halving the 99th percentile latency.
科研通智能强力驱动
Strongly Powered by AbleSci AI