Applications running in virtual environments often experience high communication latencies that might be problematic if such applications are characterized by strict temporal constraints. In this work, such high latencies are investigated with a focus on Kubernetes containers and on the software mechanisms used by many CNI plugins to interconnect them: network namespaces, virtual ethernet pairs, and software bridges. Our experiments show that virtual ethernet pairs and network namespaces introduce a negligible overhead, while most of the overhead is introduced by Netfilter rules and by traversing the network stack multiple times. Moreover, the worst-case latencies experienced by UDP packets exchanged between different containers are much larger than the average latencies because of the Linux “softirq” mechanism.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

An Investigation of the Linux Virtual Networking Latencies

  • Luca Abeni,
  • Harald Gustafsson,
  • Fredrik Svensson,
  • Tommaso Cucinotta

摘要

Applications running in virtual environments often experience high communication latencies that might be problematic if such applications are characterized by strict temporal constraints. In this work, such high latencies are investigated with a focus on Kubernetes containers and on the software mechanisms used by many CNI plugins to interconnect them: network namespaces, virtual ethernet pairs, and software bridges. Our experiments show that virtual ethernet pairs and network namespaces introduce a negligible overhead, while most of the overhead is introduced by Netfilter rules and by traversing the network stack multiple times. Moreover, the worst-case latencies experienced by UDP packets exchanged between different containers are much larger than the average latencies because of the Linux “softirq” mechanism.