Hi,

We have two functional implementations of the Redundancy Protection draft
(https://datatracker.ietf.org/doc/draft-ietf-spring-sr-redundancy-protection/).

They can be used on GNU/Linux platform reusing it's existing SRv6 encapsulation 
functionality
to define different segment lists for the redundancy paths (both implementation 
leverage this).

Implementation #1: Dependable Networking Toolkit 
-https://github.com/EricssonResearch/dnt
Portable, highly configurable and generic virtual switch and router with 
various L2 and L3 encapsulations
supported. Additionally, to TSN FRER and DetNet MPLS PREOF it implements SRv6 
PREOF with R-SID.
For more information see "getting_started/scenario_srv6" which implements a 
service-protected
SRv6 L3VPN on top of an emulated (mininet) network. DNT can handle traffic of 
physical network
interfaces (Linux AF_PACKET socket API) and one can use it as TSN-DetNet relay 
with the right
configuration. It has additional capabilities like specific OAM extensions.

Implementation #2: XDPPREF - https://github.com/EricssonResearch/xdpfrer
High-performance TSN FRER and SRv6 PREF implementation using the Redundancy SID 
format.
Unlike DNT, this implementation focuses to the service-protection and lack of 
generic tunneling,
OAM and stream identification functionalities, but unlike DNT it can be used 
from the CLI without
a configuration file. Also, it is less portable than DNT because built on top 
of Linux kernel's XDP
packet processor and eBPF APIs supported by recent Linux versions.

If IPv6 FlowLabel based stream identification enough and high-performance 
tunneling is key XDPPREF
is recommended for quick experimentation. For brown-field environments, where 
many tunneling
protocols used, addresses assigned dynamically and telemetry and OAM is 
important, DNT is the
recommended implementation with the cost of the learning curve.

Any comments, reactions are welcome.

BTW, if You would like to contribute to the implementation, there is an item on 
the IETF 126 Hackathon
to improve the stream identification function of XDPPREF. Anyone is very 
welcome to participate and
contribute. Details can be found here:
https://wiki.ietf.org/en/meeting/126/hackathon#stream-identification-for-srv6-pref

Thanks & Cheers
Bala'zs

_______________________________________________
spring mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to