Cumulus Linux supports segment routing, also known as source routing, which provides the ability for a source node to specify the path a packet should take (traffic engineering). In some more advanced cases, you can use segment routing to have offline multiprotocol label switching (MPLS) controllers program labels into the network for traffic engineering.
Cumulus Linux provides full label-based forwarding, relying on BGP for label exchange. However, Cumulus Linux does not provide LDP interoperability for MPLS and it does not support VRFs for tenant isolation.
Segment routing is an early access feature in Cumulus Linux and is supported only on Mellanox switches.
Switches r1 through r5 announce their loopbacks (the 10.1.1.* addresses above) in BGP with a label-index.
The table below contains the configuration for all five nodes.
Configure Segment Routing