Leveraging eBPF for programmable network functions with IPv6 segment routing

Leveraging eBPF for programmable network functions with IPv6 segment routing
复制标题

利用 eBPF 实现具有 IPv6 分段路由的可编程网络功能

DOI:
--
复制
发表时间:
2018
期刊:
Conference on Emerging Network Experiment and Technology
影响因子:
--
通讯作者:
O. Bonaventure
O. Bonaventure
中科院分区:
--
文献类型:
--
作者:
Mathieu Xhonneux;Fabien Duchene;O. Bonaventure

文献摘要

被引文献

相似文献

随着软件定义网络(SDN)、网络功能虚拟化(NFV)或服务功能链(SFC)的出现,运营商希望网络支持灵活的服务,而不仅仅是转发分组。通过利用IPv6分段路由在IETF内开发的网络可编程性框架能够实现网内功能。在本文中,我们论证了这种网络内可编程性的愿景是可以实现的。通过利用Linux内核对eBPF的支持,我们实现了一个灵活的框架,该框架允许网络运营商将他们自己的网络功能编码为eBPF代码,该代码在处理特定分组时自动执行。我们的实验室测量表明,调用此类eBPF函数的开销仍然可以接受。多亏了eBPF,运营商可以实现各种网络功能。我们描述了我们在Linux内核中实现的体系结构。此扩展已随Linux 4.18一起发布。我们通过三个不同的用例来说明我们方法的灵活性:延迟测量、混合网络和网络发现。我们的实验室测量还表明,在Linux路由器上运行eBPF网络功能的性能损失不会产生显著的开销。
With the advent of Software Defined Networks (SDN), Network Function Virtualisation (NFV) or Service Function Chaining (SFC), operators expect networks to support flexible services beyond the mere forwarding of packets. The network programmability framework which is being developed within the IETF by leveraging IPv6 Segment Routing enables the realisation of in-network functions. In this paper, we demonstrate that this vision of in-network programmability can be realised. By leveraging the eBPF support in the Linux kernel, we implement a flexible framework that allows network operators to encode their own network functions as eBPF code that is automatically executed while processing specific packets. Our lab measurements indicate that the overhead of calling such eBPF functions remains acceptable. Thanks to eBPF, operators can implement a variety of network functions. We describe the architecture of our implementation in the Linux kernel. This extension has been released with Linux 4.18. We illustrate the flexibility of our approach with three different use cases: delay measurements, hybrid networks and network discovery. Our lab measurements also indicate that the performance penalty of running eBPF network functions on Linux routers does not incur a significant overhead.