View on GitHub

srv6-pm

SRv6 Performance Monitoring in Linux

ROSE project

Accurate Per-Flow Packet Loss Monitoring in SRv6

Segment Routing over IPv6 (SRv6) is a solution for IP backbones and Data Centers, which has been recently adopted in several large scale network deployments. A number of Internet Drafts have been submitted related to the Performance Monitoring of flows in an SRv6 network (SRv6-PM in short).

We present the implementation of a per-flow packet loss measurement (PF-PLM) solution based on the alternate marking method. The implementation is based on Linux kernel networking and is open source. Please fine hereafter the source code repository of two data plane solutions for packet marking and counting and one control plane solution for the generation and processing of Loss Measurement protocol packets.

This project is part of the ROSE project.

Data plane based on iptables

srv6-pm-dp-iptables : Packet marking and counting based on iptables

Data plane based on ipset

srv6-pm-dp-ipset : Packet marking and counting based on ipset extensions

Control plane

rose-srv6-control-plane : Generation and processing of Loss Measurement Protocol Packets (based on scapy)

Data plane

rose-srv6-data-plane

The Mininet topology

The Mininet topology used in the loss monitoring experiments is called 8r-1c-srv6-pm and it can be found in this repo: rose-srv6-tutorial

Scientific papers