Segment Routing is a form of loose source routing. It provides the ability to include a list of instructions (called segments), in the packet headers. The Segment Routing architecture has been first implemented with the MPLS dataplane and then, quite recently, with the IPv6 dataplane (SRv6). IPv6 Segment Routing (SRv6) is a promising solution to support advanced services such as Traffic Engineering, Service Function Chaining, Virtual Private Networks, and Load Balancing. The SRv6 data-plane is supported in many different software forwarding engines including the Linux kernel and VPP software router, as well as in hardware devices. In this paper, we present SRPerf, a performance evaluation framework for software and hardware implementations of SRv6. SRPerf is able to perform different benchmarking tests such as throughput and latency. For throughput tests, we use the Partial Drop Rate (PDR) to characterize a system under test. The architecture of SRPerf can be easily extended to support new benchmarking methodologies as well as different SRv6 implementations. We have used SRPerf to evaluate the performance of the SRv6 implementation in the Linux kernel and in VPP. SRPerf is a valuable tool in the context of software forwarding engines where new features can be added at fast pace, as it helps experimenters to validate their work. In particular, we describe how we have leveraged SRPerf to validate the implementation of some SRv6 behaviors that were missing or wrongly implemented in the Linux kernel mainline.
SDN Architecture and Southbound APIs for IPv6 Segment Routing Enabled Wide Area Networks
SRv6架构(Segment Routing based on IPv6 data plane,基于IPv6数据平面的分段路由)是一种很有前途的解决方案,可以在IPv6骨干网和网关中支持流量工程、业务功能链和虚拟专用网等业务。SRv6架构具有有趣的可伸缩性属性,因为它减少了需要在节点中配置以支持网络服务的状态信息量。在本文中,我们描述了在骨干网中使用基于SDN的方法补充SRv6技术的优势。我们讨论了基于Linux节点的SRv6使能网络的体系结构。此外,我们提出了SDN控制器和SRv6设备之间的南向API的设计和实现。我们已经定义了一个数据模型和四种不同的API实现,分别基于gRPC,REST,NETCONF和远程命令行接口(CLI)。由于支持开发和测试方面非常重要,我们实现了一个基于Intent的仿真系统,以构建逼真和可重复的实验。这些工具的集合自动化了大多数配置方面,减轻了实验者的大量工作。最后,我们已经实现了对我们的架构和南向API的不同变体的一些性能方面的评估,并且我们已经分析了启用SRv6的节点中的配置更新的影响。