Conference Paper

Implementation of Accurate Per-Flow Packet Loss Monitoring in Segment Routing over IPv6 Networks

Authors:
If you want to read the PDF, try requesting it from the authors.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... A preliminary version of the coloring and counting solution based on the Linux IPTable modules was studied and presented in [29]. In this work we overcome the identified limitations developing a new packet counting component based on the eBPF framework. ...
... In this work we overcome the identified limitations developing a new packet counting component based on the eBPF framework. Note that the previous work [29] did not include the definition of the cloud-native architecture and the SRv6-PM platform. ...
... In particular an exemplary data plane has been implemented extending the Linux kernel SRv6 networking and using other Linux frameworks for packet processing, namely IPset and eBPF. We integrated in the system the counting solution based on IPset presented in [29] and a brand new implementation that exploit the eBPF Virtual Machines to execute both the packet coloring and counters. All the developed software components are available as open source [32]. ...
Article
Full-text available
Segment Routing over IPv6 (SRv6 in short) is a networking architecture suitable for both IP backbones and datacenters. The research, standardization and implementation of this architecture are actively progressing and SRv6 is already adopted in a number of large scale deployments. Effective solutions for Performance Monitoring (PM) of SRv6 networks are strongly needed and there is a lot of activity in this area. A full blown Performance Monitoring solution needs to include: i) Data Plane (as needed to measure metrics such as packet loss and delay); ii) Control Plane (to send commands to the monitoring entities in the nodes); iii) Management Plane (e.g., to collect the measured metrics). Moreover, Big-Data tools and solutions can be applied inside or above the traditional Management Plane boundaries to store and analyze the collected data. In this article we describe SRv6-PM, a solution for Performance Monitoring of SRv6 networks that deals with all the aspects discussed above. SRv6-PM features a cloud-native architecture that supports: i) the ingestion, processing, storage and visualization of PM data using Big-Data tools; ii) the SDN-based control of network routers to drive the performance monitoring operations. In particular, we focus on Loss Monitoring and consider a solution capable of tracking single packet loss events operating in near-real time (e.g., with a time granularity in the order of 10-20 seconds). SRv6-PM is released as open source. We offer a re-usable and extensible platform that can be automatically deployed in different environments, from a single host to multiple servers on private/public clouds and includes a set of Big-Data tools and the SDN control plane. We also provide a reproducible Data Plane environment for PM experiments in SRv6 networks based on the Mininet emulator.
... A preliminary version of the coloring and counting solution based on the Linux IPTable modules was studied and presented in [29]. In this work we overcome the identified limitations developing a new packet counting component based on the eBPF framework. ...
... In this work we overcome the identified limitations developing a new packet counting component based on the eBPF framework. Note that the previous work [29] did not include the definition of the cloud-native architecture and the SRv6-PM platform. ...
... In particular an exemplary data plane has been implemented extending the Linux kernel SRv6 networking and using other Linux frameworks for packet processing, namely IPset and eBPF. We integrated in the system the counting solution based on IPset presented in [29] and a brand new implementation that exploit the eBPF Virtual Machines to execute both the packet coloring and counters. All the developed software components are available as open source [32]. ...
Preprint
Full-text available
Segment Routing over IPv6 (SRv6 in short) is a networking solution for IP backbones and datacenters. The SRv6 standardization, implementation and research are actively progressing and SRv6 has already been adopted in a number of large scale network deployments. Effective Performance Monitoring (PM) solutions for SRv6 networks are strongly needed. The design, implementation and deployment of such PM solutions span the different planes of a networking architecture: Performance Measurements data (packet loss and delay) needs to be measured (in the Data Plane), the monitored nodes needs to be controlled (in the Control Plane), the measured data needs to be collected (in the Control/Management Planes), then the Data must be processed and stored, using Big-Data processing solutions. We focus on Loss Monitoring, by considering a solution capable of tracking single packet loss events in near-real time (e.g. with a delay in the order of 20 seconds). We describe SRv6-PM, a solution for Performance Monitoring of SRv6 networks. SRv6-PM features a cloud-native architecture for the SDN-based control of Linux routers and for ingestion, processing, storage and visualization of PM data. In the Data Plane, SRv6-PM includes efficient building blocks for packet loss evaluation (e.g. the packet counting components) in a Linux router. SRv6-PM is released as open source. Not only we provide a reproducible environment for PM experiments, but we also offer a re-usable and extensible cloud-native platform that can be automatically deployed in different environments, from a single host to multiple servers on private/public clouds.
... [16] is an active measurement solution, not compatible with INT. [17] and [18] are representative of the alternate-marking performance measurement (AM-PM), they only need a few bits to achieve loss measurement. However, their marks are updated periodically, which requires strict time synchronization too. ...
... However, their marks are updated periodically, which requires strict time synchronization too. But, [17] and [18] give us inspiration. If AM-PM is applied to INT measurement, we can know when packet loss has occurred. ...
Preprint
Full-text available
In-band network telemetry (INT) is a new network measurement technology that uses business packet to collect network information hop by hop. Since business packets may be lost due to various reasons, INT telemetry information will inevitably be lost. Unfortunately, telemetry system is not aware of this loss. In this letter, we give an INT packet coding scheme FindINT to measure the per-flow packet loss rate and location. FindINT learnes from alternative marking method. We give two marking strategies and analyze their performance. FindINT is triggered by loss event instead of polling, with extremely low measurement overhead and high detection accuracy.
... These solutions usually cannot balance performance and network overhead. Cociglio [24] and PF-PLM [25] are representative of the alternate-marking performance measurement (AM-PM), they only need a few bits to achieve loss measurement. However, their marks are updated periodically, which requires strict time synchronization too. ...
Article
Network measurement provides rich data for network monitoring, control, and management. In-band network telemetry (INT) is a new network measurement technology that uses normal data packet to collect network information hop-by-hop. However, the design and implementation of INT protocol cannot do anything about packet loss: (1) The end-to-end telemetry mechanism makes INT unable to detect packet loss; (2) Since data packets may be lost due to various reasons, INT telemetry information will inevitably be lost. In summary, INT system by itself is unreliable. Incomplete telemetry data will seriously affect the performance of upper-layer network telemetry applications. In this paper, we present our successful experience in INT packet loss monitoring. We design, implement, and open source a powerful packet loss monitoring system for INT, called LossSight. The functions of LossSight include the detection of packet loss events, the deduction of the time and location of the losses, the diagnose of the root cause of the losses, and the recovery of the lost INT information. Experiment results show that LossSight provides excellent performance and extremely low overhead, including detection accuracy and diagnostic precision close to 100%, and detection latency of just milliseconds. In particular, LossSight uses a generative adversarial network to recover lost telemetry information, with excellent accuracy and reliability. LossSight has been running stably in the supercomputing interconnection environment of the National Supercomputing Center in Jinan. We suggest that all INT applications that require reliable telemetry information should be implemented based on LossSight.
Chapter
With the rapid development of the Internet, the IP network has become the infrastructure of human society and plays an important role in life. However, the IPv4 network is criticized as it faces address exhaustion problem. At the same time, there are many problems in the IPv4 network in the process of practical use, such as routing table expansion, fragile security, etc.
Article
In-band network telemetry (INT) is a new network measurement technology that uses business packet to collect network information hop by hop. Since business packets may be lost due to various reasons, INT telemetry information will inevitably be lost. Unfortunately, telemetry system is not aware of this loss. In this letter, we present FindINT, an INT packet coding scheme with two marking strategies, to measure per-flow packet loss rate and location. FindINT is inspired by alternative marking method, which is triggered by loss event instead of polling.Experimental results show that FindINT has extremely low overhead and high detection accuracy.
Article
Segment Routing with IPv6 (SRv6) is a leading Hybrid SDN (HSDN) architecture, as it fully exploits standard IP routing and forwarding both in the control plane and in the data plane. In this paper we design, implement and evaluate a programmable data plane solution for Linux routers called HIKE (HybrId Kernel/eBPF forwarding), integrated in an HSDN/SRv6 architecture. HIKE integrates the conventional Linux kernel packet forwarding with custom designed eBPF/XDP (extended Berkeley Packet Filter/eXtreme Data Path) bypass to speed up performance of SRv6 software routers. Thus, in addition to the hybrid IP/SDN forwarding, we foster an additional hybrid approach inside a Linux forwarding engine combining eBPF/XDP and kernel based forwarding, taking the best from both worlds. Therefore, considering the two different conceptual levels of hybridization, we call our overall solution Hybrid squared or Hˆ2. We have applied the Hˆ2 solution to Performance Monitoring (PM) in Hybrid SDNs, and we show how our HIKE data plane architecture supports SRv6 networking and Performance Monitoring (in particular Loss Monitoring) allowing a significant increase in performance: our implementation results show a remarkable throughput improvement (5x) with respect to a conventional Linux based solution.
Technical Report
Full-text available
The One-way Active Measurement Protocol (OWAMP), specified in RFC 4656, provides a common protocol for measuring one-way metrics between network devices. OWAMP can be used bi-directionally to measure one-way metrics in both directions between two network elements. However, it does not accommodate round-trip or two-way measurements. This memo specifies a Two-Way Active Measurement Protocol (TWAMP), based on the OWAMP, that adds two-way or round-trip measurement capabilities. The TWAMP measurement architecture is usually comprised of two hosts with specific roles, and this allows for some protocol simplifications, making it an attractive alternative in some circumstances.
Article
Full-text available
This document describes a method to perform packet loss, delay, and jitter measurements on live traffic. This method is based on an Alternate-Marking (coloring) technique. A report is provided in order to explain an example and show the method applicability. This technology can be applied in various situations, as detailed in this document, and could be considered Passive or Hybrid depending on the application.
Article
Segment Routing (SR) is a form of loose source routing. It provides the ability to include a list of instructions, called segments, in the packet header. The SR architecture has been first implemented with the MPLS (SR-MPLS) data plane and then, quite recently, with the IPv6 data plane (SRv6). SRv6 is a promising solution to support advanced services such as Traffic Engineering, Service Function Chaining and Virtual Private Networks. The SRv6 data plane is supported in many different software forwarding engines including the Linux kernel and the Vector Packet Processor (VPP), 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. 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 two SRv6 implementations: Linux kernel and VPP. SRPerf is a valuable tool in the context of modern forwarding engines where new features can be added at fast pace, as it helps experimenters to validate their work. In this work, we have leveraged SRPerf to validate the implementation of some SRv6 behaviors in the Linux kernel and we have discovered and fixed some implementation flaws, making available the fixed code.
Article
Fixed and mobile telecom operators, enterprise network operators and cloud providers strive to face the challenging demands coming from the evolution of IP networks (e.g. huge bandwidth requirements, integration of billions of devices and millions of services in the cloud). Proposed in the early 2010s, Segment Routing (SR) architecture helps face these challenging demands, and it is currently being adopted and deployed. SR architecture is based on the concept of source routing and has interesting scalability properties, as it dramatically reduces the amount of state information to be configured in the core nodes to support complex services. SR architecture was first implemented with the MPLS dataplane and then, quite recently, with the IPv6 dataplane (SRv6). IPv6 SR architecture (SRv6) has been extended from the simple steering of packets across nodes to a general network programming approach, making it very suitable for use cases such as Service Function Chaining and Network Function Virtualization. In this paper we present a tutorial and a comprehensive survey on SR technology, analyzing standardization efforts, patents, research activities and implementation results. We start with an introduction on the motivations for Segment Routing and an overview of its evolution and standardization. Then, we provide a tutorial on Segment Routing technology, with a focus on the novel SRv6 solution. We discuss the standardization efforts and the patents providing details on the most important documents and mentioning other ongoing activities. We then thoroughly analyze research activities according to a taxonomy. We have identified main categories during our analysis of the current state of play: Monitoring, Traffic Engineering, Failure Recovery, Centrally Controlled Architectures, Path Encoding, Network Programming, Performance Evaluation and Miscellaneous. We report the current status of SR deployments in production networks and of SR implementations (including several open source projects). Finally, we report our experience from this survey work and we identify a set of future research directions related to Segment Routing.
Patent
A customizable ASIC routing architecture is provided. The architecture utilizes the uppermost metal layers of an ASIC composed of an array of function blocks for routing among function blocks while lower layers are used for local interconnections within the function blocks. The second-to-uppermost metal layer is fixed and generally includes a plurality of parallel segmented conductors extending in a first direction. The uppermost metal layer is customizable in a predesignated manner. Metal in the uppermost metal layer is selectively placed in tracks, which are substantially perpendicular to the segmented conductors in the layer below. Vias are provided between the two uppermost layers. One embodiment of the invention permits one-mask customization of an ASIC.
Conference Paper
IPv6 Segment Routing is a major IPv6 extension that provides a modern version of source routing that is currently being developed within the Internet Engineering Task Force (IETF). We propose the first open-source implementation of IPv6 Segment Routing in the Linux kernel. We first describe it in details and explain how it can be used on both endhosts and routers. We then evaluate and compare its performance with plain IPv6 packet forwarding in a lab environment. Our measurements indicate that the performance penalty of inserting IPv6 Segment Routing Headers or encapsulating packets is limited to less than 15%. On the other hand, the optional HMAC security feature of IPv6 Segment Routing is costly in a pure software implementation. Since our implementation has been included in the official Linux 4.10 kernel, we expect that it will be extended by other researchers for new use cases.
Article
This memo describes a simple extension to TWAMP (the Two-Way Active Measurement Protocol). The extension adds the option to use different security modes in the TWAMP-Control and TWAMP-Test protocols simultaneously. The memo also describes a new IANA registry for additional features, called the TWAMP Modes registry.
SRv6 Implementation and Deployment Status
  • matsushima
Performance Measurement Using UDP Path for Segment Routing Networks
  • R Gandhi
  • C Filsfils
  • D Voyer
  • S Salsano
  • M Chen
Service Programming with Segment Routing
  • clad
SRv6 Network Programming
  • filsfils
Packet Loss and Delay Measurement for MPLS Networks
  • D Frost
  • S Bryant
D. Frost and S. Bryant, "Packet Loss and Delay Measurement for MPLS Networks," IETF RFC 6374, Sep. 2011. [Online]. Available: https://tools.ietf.org/html/rfc6374
Simple Two-way Active Measurement Protocol
  • G Mirsky
  • G Jun
  • H Nydell
  • R Foote
Network Time Protocol Version 4: Protocol and Algorithms Specification
  • D Mills
  • J Martin
D. Mills, J. Martin, "Network Time Protocol Version 4: Protocol and Algorithms Specification," IETF RFC 5905, Jun. 2010. [Online].
UDP Return Path for Packet Loss and Delay Measurement for MPLS Networks
  • S Bryant
  • S Sivabalan
  • S Soni
S. Bryant, S. Sivabalan and S. Soni, "UDP Return Path for Packet Loss and Delay Measurement for MPLS Networks," IETF RFC 7876, Jul. 2016. [Online]. Available: https://tools.ietf.org/html/rfc7876
Performance Measurement Using TWAMP Light for Segment Routing Networks
  • R Gandhi
  • C Filsfils
  • D Voyer
  • M Chen
  • B Janssens
Introducing Cloud-Lab: Scientific infrastructure for advancing cloud architectures and applications
  • ricci
Robert Ricci, Eric Eide, and the CloudLab Team, "Introducing Cloud-Lab: Scientific infrastructure for advancing cloud architectures and applications," ; login:: the magazine of USENIX & SAGE, vol. 39, no. 6, pp. 36-38, 2014.
Performance of IPv6 Segment Routing in Linux Kernel
  • abdelsalam
A. Abdelsalam et al., "Performance of IPv6 Segment Routing in Linux Kernel," in 1st Workshop on Segment Routing and Service Function Chaining (SR+SFC 2018) at CNSM 2018, Rome, Italy, 2018.
Internet Engineering Task Force, Internet-Draft draft-ietf-spring-srv6-networkprogramming
  • C Filsfils
C. Filsfils et al., "SRv6 Network Programming," Internet Engineering Task Force, Internet-Draft draft-ietf-spring-srv6-networkprogramming, Jan. 2020, work in Progress. [Online]. Available: https://tools.ietf.org/html/draft-ietf-spring-srv6-network-programming
Internet Engineering Task Force, Internet-Draft draft-matsushimaspring-srv6-deployment-status
  • S Matsushima
S. Matsushima et al., "SRv6 Implementation and Deployment Status," Internet Engineering Task Force, Internet-Draft draft-matsushimaspring-srv6-deployment-status, May 2020, work in Progress. [Online]. Available: https://tools.ietf.org/html/draft-matsushima-spring-srv6-deployment-status
A Two-Way Active Measurement Protocol (TWAMP)
  • K Hedayat
  • R Krzanowski
K. Hedayat, R. Krzanowski, et al., "A Two-Way Active Measurement Protocol (TWAMP)," IETF RFC 5357, Sep. 2006. [Online]. Available: https://tools.ietf.org/html/rfc5357
1588-2008 IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems
"1588-2008 IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems," IEEE, Mar. 2008.
Internet Engineering Task Force, Internet-Draft draft-gandhi-springtwamp-srpm-05
  • R Gandhi
  • C Filsfils
  • D Voyer
  • M Chen
  • B Janssens
R. Gandhi, C. Filsfils, D. Voyer, M. Chen, and B. Janssens, "Performance Measurement Using TWAMP Light for Segment Routing Networks," Internet Engineering Task Force, Internet-Draft draft-gandhi-springtwamp-srpm-05, Dec. 2019, work in Progress. [Online]. Available: https://datatracker.ietf.org/doc/html/draft-gandhi-spring-twamp-srpm-05
Internet Engineering Task Force, Internet-Draft draftgandhi-spring-rfc6374-srpm-udp-03
  • R Gandhi
  • C Filsfils
  • D Voyer
  • S Salsano
  • M Chen
R. Gandhi, C. Filsfils, D. Voyer, S. Salsano, and M. Chen, "Performance Measurement Using UDP Path for Segment Routing Networks," Internet Engineering Task Force, Internet-Draft draftgandhi-spring-rfc6374-srpm-udp-03, Nov. 2019, work in Progress. [Online]. Available: https://datatracker.ietf.org/doc/html/draft-gandhispring-rfc6374-srpm-udp-03
Internet Engineering Task Force, Internet-Draft draft-ietf-ippm-stamp-10
  • G Mirsky
  • G Jun
  • H Nydell
  • R Foote
G. Mirsky, G. Jun, H. Nydell, and R. Foote, "Simple Two-way Active Measurement Protocol," Internet Engineering Task Force, Internet-Draft draft-ietf-ippm-stamp-10, Oct. 2019, work in Progress. [Online].
Internet Engineering Task Force, Internet-Draft draft-xuclad-spring-sr-serviceprogramming
  • F Clad
F. Clad et al., "Service Programming with Segment Routing," Internet Engineering Task Force, Internet-Draft draft-xuclad-spring-sr-serviceprogramming, Oct. 2018, work in Progress. [Online]. Available: https://tools.ietf.org/html/draft-xuclad-spring-sr-service-programming
Simple Two-way Active Measurement Protocol
  • mirsky
Performance Measurement Using UDP Path for Segment Routing Networks
  • gandhi
IPv6 Segment Routing Header (SRH)
  • filsfils
Segment Routing Architecture
  • previdi