Network Programming with SRv6 ; Belgium

This PhD thesis defines the Network Programming for IPv6 also known as Segment Routing (SR) with IPv6 data plane (SRv6). SRv6 leverages the source routing paradigm by allowing a source to engineer a flow across a network as a program: i.e. a combination of traffic engineering objectives, service chainings, and Virtual Private Network (VPN) instantiations. The network program is encoded in the Segment Routing (SR) extension Header (SRH) of a network packet as an ordered list of 128-bit segments. Each segment represents an instruction (topological, service, VPN). The first segment is placed in t... Mehr ...

Verfasser: Filsfils, Clarence
Dokumenttyp: doctoral thesis
Erscheinungsdatum: 2020
Verlag/Hrsg.: ULiège - Université de Liège
Schlagwörter: Segment Routing / SR / Network Programming / Source Routing / Routing / IP / IPv6 / SRH / Engineering / computing & technology / Computer science / Ingénierie / informatique & technologie / Sciences informatiques
Sprache: Englisch
Permalink: https://search.fid-benelux.de/Record/base-26592855
Datenquelle: BASE; Originalkatalog
Powered By: BASE
Link(s) : https://orbi.uliege.be/handle/2268/245292

This PhD thesis defines the Network Programming for IPv6 also known as Segment Routing (SR) with IPv6 data plane (SRv6). SRv6 leverages the source routing paradigm by allowing a source to engineer a flow across a network as a program: i.e. a combination of traffic engineering objectives, service chainings, and Virtual Private Network (VPN) instantiations. The network program is encoded in the Segment Routing (SR) extension Header (SRH) of a network packet as an ordered list of 128-bit segments. Each segment represents an instruction (topological, service, VPN). The first segment is placed in the destination address of the packet. The most significant bits of a segment are called “locator”. The locator acts as any routed subnet address and ensures that the packet destined for a segment is routed to the parent of that segment. Once at the parent the rest of the segment (called function) is mapped to a pseudocode enabling programmability, then the pseudocode is executed, the next segment in the SRH is placed in the destination address, and the packet is routed accordingly. A function can be associated with any behavior: traffic engineering (e.g., take the shortest path to this node, take the shortest path to this node and then take this specific interface), service (e.g., a firewall application in a container), or VPN (e.g., look the updated destination address in this virtual forwarding table). The network acts as a big computer. The packet goes from node to node and receives sequential processing according to ordered instructions selected by the source and encoded in the SRH. No intermediate node stores any a priori state for the flow. The only per-flow state is in the packet header. In this thesis, we explain how SRv6 deployed within a Service Provider (SP) domain delivers the following benefits: • Stateless-ness: Transit nodes must not store per-engineered flow state • Scalability: The solution must support multi-domain SP networks with 100 thousands of routers • Hardware-friendliness: Line rate performance ...