SlideShare a Scribd company logo
SRv6 Introduction
Dung-Ru Tsai
IPv4 limitations & work-arounds
IPv4 limitations & work-arounds
SID Format
- Locator: routeable address
- Function: forwarding behavior
- END, END.X, END.T
- Argument:
- Such as END.DT2M: ESI (Ethernet Segment Identifier) filterling
SRv6 note from book and some drawing for different srv6 packet format
Segment Routing Header(rfc8754)
SRH
- Routing Type: 4
- Segments Left(SL): The next active segment
- Last Entry: Zero based,
- Segment List[0..n]
- Segment List[0]: Last Segment
- Segment List[1]: Penultimate segment of the SR Policy
- Segment List[n]: First Segment
- The active segment is indicated by the Destination Address (DA) of the packet.
- SRH TLVs: Only process when the Active Segment is a local SID
- HMAC TLV: Hashed Message Authentication Code
- Access Control List (ACL) that considers HMAC Key ID, or other packet fields.
- SID List Verification
- Reduced SRH: Not contain the first segment of the related SR Policy
Network Nodes: SRv6 Nodes
- Source Node
- Transit Node
- SRv6 Segment Endpoint Node
Source Node Behavior Instruction
H.Encaps SR Headend with Encapsulation in an SR Policy
H.Encaps.Red H.Encaps with Reduced Encapsulation
H.Encaps.L2 H.Encaps Applied to Received L2 Frames
H.Encaps.L2.Red H.Encaps.Red Applied to Received L2 Frames
H.Insert SR Headend with insertion of an SRv6 Policy
H.Insert.Red H.Insert with reduced insertion
- SR Policy: an ordered list of segments.
- BSID: The headend of an SR Policy binds a SID (called a Binding
segment or BSID) to its policy.
Source Node Behavior
The Next Header field of the SRH MUST be set to 143.
Source Node Behavior
Endpoints Behavior Instruction
End Decrement Segments Left by 1
Update IPv6 DA with Segment List[Segments Left]
Submit the packet to the egress IPv6 FIB lookup
X Forwards packets through one or a group of Layer 3 outbound interfaces.
T Searches a specifed routing table and forwards packets.
D Decapsulates packets by removing the IPv6 header and related extension
headers.
V Searches a specifed table for packet forwarding based on Virtual Local Area
Network (VLAN) information.
U Searches a specifed table for packet forwarding based on unicast MAC
address information.
M Searches a Layer 2 forwarding table for multicast forwarding.
B6 Biding to SRv6 Policy
BM Biding to SR-MPLS policy
END
When N receives a packet whose IPv6 DA is S and S is a local End SID,
N does the following:
S01. When an SRH is processed {
S02. If (Segments Left == 0) {
S03. Stop processing the SRH, and proceed to process the next
header in the packet, whose type is identified by
the Next Header field in the routing header.
S04. }
S05. If (IPv6 Hop Limit <= 1) {
S06. Send an ICMP Time Exceeded message to the Source Address
with Code 0 (Hop limit exceeded in transit),
interrupt packet processing, and discard the packet.
S07. }
S08. max_LE = (Hdr Ext Len / 2) - 1
S09. If ((Last Entry > max_LE) or (Segments Left > Last Entry+1)) {
S10. Send an ICMP Parameter Problem to the Source Address
with Code 0 (Erroneous header field encountered)
and Pointer set to the Segments Left field,
interrupt packet processing, and discard the packet.
S11. }
S12. Decrement IPv6 Hop Limit by 1
S13. Decrement Segments Left by 1
S14. Update IPv6 DA with Segment List[Segments Left]
S15. Submit the packet to the egress IPv6 FIB lookup for
transmission to the new destination
S16. }
End, End.X, End.T
End.DT
End with layer 2
End.Encap, End.Insert
Flavors
- PSP: Penultimate Segment Pop (PSP) of the SRH
- After END behavior performed, if SL==0: remove SRH
- USP: Ultimate Segment Pop (USP) of the SRH
- Before END behavior, if SL==0: remove SRH
- USD: Ultimate Segment Decapsulation (USD)
- Before END behavior, if SL==0: remove Outer ipv6 header, process upper laye
header.
- SR Endpoint new 3 Flavors
- NEXT-C-SID: uSID
- REPLACE-C-SID => COC flavors => G-SRv6
- NEXT-and-REPLACE-C-SID
SRv6 Locator TLV and Prefix Reachablility TLV
Local SID Table
Packet Forwarding Process: Source Node
Packet Forwarding Process: End.X
Packet Forwarding Process: End.X PSP flavor
Transit Node E => End.DT4 SID in Node F
Header Compression
Compare C-SID and complete SID
Header Compression
REPLACE-C-SID Flavor: COC(Continue of Compression), C-SID 32bits
NEXT-C-SID Flavor: uSID, C-SID 16bit/32bit
Micro SID ⇒ Only Update the IPv6 DA
uN: End with NEXT-CSID, PSP and USD flavors
uA: End.x with NEXT-CSID, PSP and USD flavors
uDT: End.DT4/End.DT6/End.DT2*
uDX:End.DX4/End.DX6/End.DX2
https://www.cisco.com/c/en/us/td/docs/routers/ncs6000/software/ncs6k-7-4/segment-routing/configuration/guide/b-segment-ro
uting-cg-ncs6000-74x/configure-srv6.pdf
Generalized SRv6
- G-SID: 32bit SID, 128 bits Srv6 SID
- G-SID Container: Always 128 bits
- Contain single Srv6 SID
- Contain uSID
- Contain 4 C-SIDs
- Use SL to index a 128 bit G-SID, use SI(CL) to index C-SID inside this G-SID!
SI is a location argument of the G-SID, which is the least bits
in
the argument part. When G-SID is a 32 bits value, the SI is the
least 2 bits in Argument.
0 Variable Length 32 bits 128 bits
+--------------------------------------------------------------+
| Common Prefix | G-SID |SI| Padding |
SRv6 note from book and some drawing for different srv6 packet format
Generalized SRv6
When N receives a packet whose IPv6 DA is S and S is a local SID with
COC Flavor, N does:
1. If (DA.SI != 0) { //ref1
2. Decrement DA.SI by 1.
3. } Else {
4. Decrement Segments Left by 1.
5. Set DA.SI to 3 in the IPv6 Destination Address
6. }
7. Copy Segment List[Segments Left][DA.SI] into the bits //ref2
[B..B+31] of the IPv6 Destination Address.
SRv6 note from book and some drawing for different srv6 packet format
SRv6 note from book and some drawing for different srv6 packet format

More Related Content

PDF
Aci presentation
PDF
Ccnp presentation day 4 sd-access vs traditional network architecture
PPTX
Network and server performance monitoring training
PDF
IP Routing Tutorial
PDF
An Introduction to BGP Flow Spec
PDF
Migrating from OSPF to IS-IS by Philip Smith
PPTX
EMEA Airheads- Aruba Central with Instant AP
PDF
Inter as vpn option c
Aci presentation
Ccnp presentation day 4 sd-access vs traditional network architecture
Network and server performance monitoring training
IP Routing Tutorial
An Introduction to BGP Flow Spec
Migrating from OSPF to IS-IS by Philip Smith
EMEA Airheads- Aruba Central with Instant AP
Inter as vpn option c

What's hot (20)

PPTX
Aruba ClearPass Exchange Deep Dive
PPTX
Tutorial: Using GoBGP as an IXP connecting router
PPTX
Introduction to HTTP/2
PDF
From Zero to Hero with Kafka Connect
PPT
BGP Communities: A Guide for Service Provider Networks
PPTX
Vxlan deep dive session rev0.5 final
PDF
Magnet Shuffle Service: Push-based Shuffle at LinkedIn
PPTX
Access Management with Aruba ClearPass
PPSX
FD.IO Vector Packet Processing
PPTX
PRTG NETWORK MONITORING
PDF
Understanding Cisco Next Generation SD-WAN Solution
PPTX
Diameter based Interfaces and description
PDF
SP Routing Innovation with Segment Routing, VXLAN and EVPN - Ismail Ali
PPT
F5 link controller
PDF
EMEA Airheads - Aruba Central- Managing Networks from the Cloud
PDF
Confluent Tech Talk Korea
PDF
How BGP Works
PDF
CCNA R&S-13-Spanning Tree Protocol Implementation
PDF
Implementing cisco mpls
PDF
Using MikroTik routers for BGP transit and IX points
Aruba ClearPass Exchange Deep Dive
Tutorial: Using GoBGP as an IXP connecting router
Introduction to HTTP/2
From Zero to Hero with Kafka Connect
BGP Communities: A Guide for Service Provider Networks
Vxlan deep dive session rev0.5 final
Magnet Shuffle Service: Push-based Shuffle at LinkedIn
Access Management with Aruba ClearPass
FD.IO Vector Packet Processing
PRTG NETWORK MONITORING
Understanding Cisco Next Generation SD-WAN Solution
Diameter based Interfaces and description
SP Routing Innovation with Segment Routing, VXLAN and EVPN - Ismail Ali
F5 link controller
EMEA Airheads - Aruba Central- Managing Networks from the Cloud
Confluent Tech Talk Korea
How BGP Works
CCNA R&S-13-Spanning Tree Protocol Implementation
Implementing cisco mpls
Using MikroTik routers for BGP transit and IX points
Ad

Similar to SRv6 note from book and some drawing for different srv6 packet format (20)

PDF
201901-SRv6.pdf
PDF
1 bonica tutorial_segment_routing
PDF
SRv6-TOI-rev3i-EXTERNAL.pdf
PPTX
Brkrst 3123 previdi-final
PDF
18-20180514_SRv6_RIPE.pdf
PPTX
Implementing IPv6 Segment Routing in the Linux kernel
PDF
Cisco Connect Montreal 2017 - Segment Routing - Technology Deep-dive and Adva...
PPTX
Leveraging IPv6 extension header for traffic engineering, by Eric Vyncke [APN...
PPT
Tlcm513 ipv6
 
PDF
Zebra SRv6 CLI on Linux Dataplane (ENOG#49)
PDF
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124 | Las Vegas 2017
PDF
Segment Routing Lab
PPTX
VPP for Stateless SRv6/GTP-U Translation
PDF
BRKSPG-3001.pdf
PDF
Segment Routing Technology Deep Dive and Advanced Use Cases
PDF
SRv6 Network Programming: deployment use-cases
PDF
Traffic Engineering Using Segment Routing
PPTX
IPv6 Segment Routing : an end-to-end solution ?
PDF
WAN SDN meet Segment Routing
201901-SRv6.pdf
1 bonica tutorial_segment_routing
SRv6-TOI-rev3i-EXTERNAL.pdf
Brkrst 3123 previdi-final
18-20180514_SRv6_RIPE.pdf
Implementing IPv6 Segment Routing in the Linux kernel
Cisco Connect Montreal 2017 - Segment Routing - Technology Deep-dive and Adva...
Leveraging IPv6 extension header for traffic engineering, by Eric Vyncke [APN...
Tlcm513 ipv6
 
Zebra SRv6 CLI on Linux Dataplane (ENOG#49)
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124 | Las Vegas 2017
Segment Routing Lab
VPP for Stateless SRv6/GTP-U Translation
BRKSPG-3001.pdf
Segment Routing Technology Deep Dive and Advanced Use Cases
SRv6 Network Programming: deployment use-cases
Traffic Engineering Using Segment Routing
IPv6 Segment Routing : an end-to-end solution ?
WAN SDN meet Segment Routing
Ad

Recently uploaded (20)

PPTX
Green and Orange Illustration Understanding Climate Change Presentation.pptx
PPTX
Review1_Bollywood_Project analysis of bolywood trends from 1950s to 2025
PPTX
Visual-Arts.pptx power point elements of art the line, shape, form
PPTX
unit5-servicesrelatedtogeneticsinnursing-241221084421-d77c4adb.pptx
PDF
630895715-Romanesque-Architecture-ppt.pdf
PPTX
CPAR_QR1_WEEK1_INTRODUCTION TO CPAR.pptx
PPTX
EJ Wedding 520 It's official! We went to Xinyi District to do the documents
PPTX
Art Appreciation-Lesson-1-1.pptx College
PPTX
Military history & Evolution of Armed Forces of the Philippines
PDF
the saint and devil who dominated the outcasts
PPSX
Multiple scenes in a single painting.ppsx
PPTX
400kV_Switchyard_Training_with_Diagrams.pptx
PDF
waiting, Queuing, best time an event cab be done at a time .pdf
PPTX
Green and Blue Illustrative Earth Day Presentation.pptx
PPTX
Physical Education and Health Q4-CO4-TARPAPEL
PDF
Close Enough S3 E7 "Bridgette the Brain"
PPTX
CPAR7 ARTS GRADE 112 LITERARY ARTS OR LI
PPTX
SlideEgg_21518-Company Presentation.pptx
PPTX
CMU-PPT-LACHICA-DEFENSE FOR RESEARCH PRESENTATION
PDF
Love & Romance in Every Sparkle_ Discover the Magic of Diamond Painting.pdf
Green and Orange Illustration Understanding Climate Change Presentation.pptx
Review1_Bollywood_Project analysis of bolywood trends from 1950s to 2025
Visual-Arts.pptx power point elements of art the line, shape, form
unit5-servicesrelatedtogeneticsinnursing-241221084421-d77c4adb.pptx
630895715-Romanesque-Architecture-ppt.pdf
CPAR_QR1_WEEK1_INTRODUCTION TO CPAR.pptx
EJ Wedding 520 It's official! We went to Xinyi District to do the documents
Art Appreciation-Lesson-1-1.pptx College
Military history & Evolution of Armed Forces of the Philippines
the saint and devil who dominated the outcasts
Multiple scenes in a single painting.ppsx
400kV_Switchyard_Training_with_Diagrams.pptx
waiting, Queuing, best time an event cab be done at a time .pdf
Green and Blue Illustrative Earth Day Presentation.pptx
Physical Education and Health Q4-CO4-TARPAPEL
Close Enough S3 E7 "Bridgette the Brain"
CPAR7 ARTS GRADE 112 LITERARY ARTS OR LI
SlideEgg_21518-Company Presentation.pptx
CMU-PPT-LACHICA-DEFENSE FOR RESEARCH PRESENTATION
Love & Romance in Every Sparkle_ Discover the Magic of Diamond Painting.pdf

SRv6 note from book and some drawing for different srv6 packet format

  • 2. IPv4 limitations & work-arounds
  • 3. IPv4 limitations & work-arounds
  • 4. SID Format - Locator: routeable address - Function: forwarding behavior - END, END.X, END.T - Argument: - Such as END.DT2M: ESI (Ethernet Segment Identifier) filterling
  • 7. SRH - Routing Type: 4 - Segments Left(SL): The next active segment - Last Entry: Zero based, - Segment List[0..n] - Segment List[0]: Last Segment - Segment List[1]: Penultimate segment of the SR Policy - Segment List[n]: First Segment - The active segment is indicated by the Destination Address (DA) of the packet. - SRH TLVs: Only process when the Active Segment is a local SID - HMAC TLV: Hashed Message Authentication Code - Access Control List (ACL) that considers HMAC Key ID, or other packet fields. - SID List Verification - Reduced SRH: Not contain the first segment of the related SR Policy
  • 8. Network Nodes: SRv6 Nodes - Source Node - Transit Node - SRv6 Segment Endpoint Node
  • 9. Source Node Behavior Instruction H.Encaps SR Headend with Encapsulation in an SR Policy H.Encaps.Red H.Encaps with Reduced Encapsulation H.Encaps.L2 H.Encaps Applied to Received L2 Frames H.Encaps.L2.Red H.Encaps.Red Applied to Received L2 Frames H.Insert SR Headend with insertion of an SRv6 Policy H.Insert.Red H.Insert with reduced insertion - SR Policy: an ordered list of segments. - BSID: The headend of an SR Policy binds a SID (called a Binding segment or BSID) to its policy.
  • 10. Source Node Behavior The Next Header field of the SRH MUST be set to 143.
  • 12. Endpoints Behavior Instruction End Decrement Segments Left by 1 Update IPv6 DA with Segment List[Segments Left] Submit the packet to the egress IPv6 FIB lookup X Forwards packets through one or a group of Layer 3 outbound interfaces. T Searches a specifed routing table and forwards packets. D Decapsulates packets by removing the IPv6 header and related extension headers. V Searches a specifed table for packet forwarding based on Virtual Local Area Network (VLAN) information. U Searches a specifed table for packet forwarding based on unicast MAC address information. M Searches a Layer 2 forwarding table for multicast forwarding. B6 Biding to SRv6 Policy BM Biding to SR-MPLS policy
  • 13. END When N receives a packet whose IPv6 DA is S and S is a local End SID, N does the following: S01. When an SRH is processed { S02. If (Segments Left == 0) { S03. Stop processing the SRH, and proceed to process the next header in the packet, whose type is identified by the Next Header field in the routing header. S04. } S05. If (IPv6 Hop Limit <= 1) { S06. Send an ICMP Time Exceeded message to the Source Address with Code 0 (Hop limit exceeded in transit), interrupt packet processing, and discard the packet. S07. } S08. max_LE = (Hdr Ext Len / 2) - 1 S09. If ((Last Entry > max_LE) or (Segments Left > Last Entry+1)) { S10. Send an ICMP Parameter Problem to the Source Address with Code 0 (Erroneous header field encountered) and Pointer set to the Segments Left field, interrupt packet processing, and discard the packet. S11. } S12. Decrement IPv6 Hop Limit by 1 S13. Decrement Segments Left by 1 S14. Update IPv6 DA with Segment List[Segments Left] S15. Submit the packet to the egress IPv6 FIB lookup for transmission to the new destination S16. }
  • 18. Flavors - PSP: Penultimate Segment Pop (PSP) of the SRH - After END behavior performed, if SL==0: remove SRH - USP: Ultimate Segment Pop (USP) of the SRH - Before END behavior, if SL==0: remove SRH - USD: Ultimate Segment Decapsulation (USD) - Before END behavior, if SL==0: remove Outer ipv6 header, process upper laye header. - SR Endpoint new 3 Flavors - NEXT-C-SID: uSID - REPLACE-C-SID => COC flavors => G-SRv6 - NEXT-and-REPLACE-C-SID
  • 19. SRv6 Locator TLV and Prefix Reachablility TLV
  • 23. Packet Forwarding Process: End.X PSP flavor
  • 24. Transit Node E => End.DT4 SID in Node F
  • 26. Header Compression REPLACE-C-SID Flavor: COC(Continue of Compression), C-SID 32bits NEXT-C-SID Flavor: uSID, C-SID 16bit/32bit
  • 27. Micro SID ⇒ Only Update the IPv6 DA uN: End with NEXT-CSID, PSP and USD flavors uA: End.x with NEXT-CSID, PSP and USD flavors uDT: End.DT4/End.DT6/End.DT2* uDX:End.DX4/End.DX6/End.DX2
  • 29. Generalized SRv6 - G-SID: 32bit SID, 128 bits Srv6 SID - G-SID Container: Always 128 bits - Contain single Srv6 SID - Contain uSID - Contain 4 C-SIDs - Use SL to index a 128 bit G-SID, use SI(CL) to index C-SID inside this G-SID! SI is a location argument of the G-SID, which is the least bits in the argument part. When G-SID is a 32 bits value, the SI is the least 2 bits in Argument. 0 Variable Length 32 bits 128 bits +--------------------------------------------------------------+ | Common Prefix | G-SID |SI| Padding |
  • 31. Generalized SRv6 When N receives a packet whose IPv6 DA is S and S is a local SID with COC Flavor, N does: 1. If (DA.SI != 0) { //ref1 2. Decrement DA.SI by 1. 3. } Else { 4. Decrement Segments Left by 1. 5. Set DA.SI to 3 in the IPv6 Destination Address 6. } 7. Copy Segment List[Segments Left][DA.SI] into the bits //ref2 [B..B+31] of the IPv6 Destination Address.