Comparing concept, SID and header format of compressed Segment Routing IPv6 proposals such as uSID, SRv6+, C-SRH. Slide presented at SRv6 Consortium @Tokyo on 23rd Aug 2019.
How AI, OpenAI, and ChatGPT impact business and software.
Comparison of SRv6 Extensions uSID, SRv6+, C-SRH
1. SRv6 Consortium @Tokyo
Comparison of SRv6 Extensions
uSID, SRv6+, C-SRH
2019/08/23
Kentaro Ebisawa
Twitter: @ebiken
SRv6 Consortium @Tokyo, Japan
2. SRv6 Consortium @Tokyo
• Around IETF 105 Montreal, some Internet-Drafts proposing
extensions to SRv6 were submitted. Since some extensions are not
compatible with the existing SRv6 specifications (drafts), one need
good understanding of what each proposal extends to compare them.
• This document aims to describes overview of each proposal to build a
basic understanding to study difference of each proposal.
Comparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
Motivation
4. SRv6 Consortium @TokyoComparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
Authors as of 2019/08/19
uSID: Network Programming extension: SRv6 uSID instruction
draft-filsfils-spring-net-pgm-extension-srv6-usid-01
C-SRH … Compressed SRv6 Network Programming
draft-li-spring-compressed-srv6-np-00
SRv6+ … IPv6 Support for Segment Routing: SRv6+
draft-bonica-spring-srv6-plus-04
5. SRv6 Consortium @TokyoComparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
Authors as of 2019/08/19
uSID: Network Programming extension: SRv6 uSID instruction
draft-filsfils-spring-net-pgm-extension-srv6-usid-01
C-SRH … Compressed SRv6 Network Programming
draft-li-spring-compressed-srv6-np-00
SRv6+ … IPv6 Support for Segment Routing: SRv6+
draft-bonica-spring-srv6-plus-04
6. SRv6 Consortium @Tokyo
Overview of Concepts,
what are extended
Comparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
7. SRv6 Consortium @Tokyo
uSID & C-SRH
• No Conceptual change from SRv6
• How to update IPv6 DA based on SID value has changed
• Segment … a single node.
• Source SR Node, Transit Node, SR Segment Endpoint Node
• No concept of “Ingress / Egress Segment node”
• Adjacency SID … Described as SID of End function. (ex: End.X)
C-SRH
• SRH format was enhanced
Comparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
uSID and Compressed SRH (C-SRH)
8. SRv6 Consortium @Tokyo
SRv6+
• SRv6+ consist of “Segment” and “Path”
• Path consists of multiple Segments.
• Segment consists of multiple nodes,
• Segment Ingress node, Transit node, Segment Egress node
• or a single node which has both Ingress/Egress Node.
Comparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
SRv6+
10. SRv6 Consortium @Tokyo
SRv6+
Comparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
Path and Segment Ingress/Egress/Transit Node
SRv6+ Path = {
Segment A-C,
Segment C-D,
Segment D-F
}
Path Ingress
Path Egress
A segment provides
unidirectional connectivity from its ingress node to its egress node.
Segment
Ingress
Segment
Egress In Eg In Eg In Eg
Segment
11. SRv6 Consortium @Tokyo
SRv6+
Comparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
“per-segment” Topological / Service Instructions
In Eg In Eg In Eg
T S T S T S
Topological
Instructions
Service
Instructions
=> determines the segment egress node
=> augment a segment
12. SRv6 Consortium @Tokyo
SRv6+
Comparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
“per-path” Service Instructions
“per-path”
Service Instruction
13. SRv6 Consortium @Tokyo
SRv6+
• Loosely Routed
• IPv6 address of Segment Egress node.
• (Follow IGP shortest path)
• Strictly Routed
• IPv6 address of Segment Egress node.
• Interface a packet would be forwarded (on Segment Ingress node)
• (Follow IGP shortest path after sent out from the interface)
Comparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
Topology Segments … Loosely / Strictly Routed
19. SRv6 Consortium @TokyoComparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
SRv6+ Headers for Instruction (IPv6 options)
PSSI, PPSI is Destination Options header defined in RFC8200 (IPv6)
Opt Type Data Len
PSSI/PPSI identifier
Total 8 bytes
The Per-Path Service Instruction (PPSI) Option
draft-bonica-6man-vpn-dest-opt-06
The Per-Segment Service Instruction (PSSI) Option
draft-bonica-6man-seg-end-opt-04
20. SRv6 Consortium @Tokyo
Tables maintained by
SRv6, SRv6+ and SR-MPLS
Comparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
21. SRv6 Consortium @Tokyo
• SRv6 (uSID, C-SRH)
• SR Policy Table (SRv6 Path Ingress Node)
• My SID Table (All Segments)
• No SID to IPv6 mapping table
• SRv6+
• SR Policy Table (SRv6+ Path Ingress Node)
• My SID Table (All Segments)
• Segment Forwarding Information Base (SFIB) (All Segments)
• SR-MPLS
• SID to IPv6 mapping table required
Comparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
SRv6 (uSID, C-SRH), SRv6+, SR-MPLS Tables
22. SRv6 Consortium @TokyoComparison of SRv6 Extensions ... uSID, SRv6+, C-SRH | 2019/08/23 | Kentaro Ebisawa @ebiken
Segment Forwarding Information Base (SFIB)
The IPv6 Compressed Routing Header (CRH)
draft-bonica-6man-comp-rtg-hdr-05
[Segment Type] = Strictly-routed