| rfc9831v1.txt | rfc9831.txt | |||
|---|---|---|---|---|
| Internet Engineering Task Force (IETF) K. Talaulikar, Ed. | Internet Engineering Task Force (IETF) K. Talaulikar, Ed. | |||
| Request for Comments: 9831 C. Filsfils | Request for Comments: 9831 C. Filsfils | |||
| Category: Experimental Cisco Systems | Category: Experimental Cisco Systems | |||
| ISSN: 2070-1721 S. Previdi | ISSN: 2070-1721 S. Previdi | |||
| Huawei Technologies | Huawei Technologies | |||
| P. Mattes | P. Mattes | |||
| Microsoft | Microsoft | |||
| D. Jain | D. Jain | |||
| August 2025 | September 2025 | |||
| Segment Routing Segment Types Extensions for BGP SR Policy | Segment Type Extensions for BGP Segment Routing (SR) Policy | |||
| Abstract | Abstract | |||
| This document specifies the signaling of additional Segment Routing | This document specifies the signaling of additional Segment Routing | |||
| (SR) Segment Types for SR Policies in BGP using the SR Policy | (SR) Segment Types for SR Policies in BGP using the SR Policy | |||
| Subsequent Address Family Identifier (SAFI). | Subsequent Address Family Identifier (SAFI). | |||
| Status of This Memo | Status of This Memo | |||
| This document is not an Internet Standards Track specification; it is | This document is not an Internet Standards Track specification; it is | |||
| skipping to change at line 59 ¶ | skipping to change at line 59 ¶ | |||
| to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
| include Revised BSD License text as described in Section 4.e of the | include Revised BSD License text as described in Section 4.e of the | |||
| Trust Legal Provisions and are provided without warranty as described | Trust Legal Provisions and are provided without warranty as described | |||
| in the Revised BSD License. | in the Revised BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction | 1. Introduction | |||
| 1.1. Requirements Language | 1.1. Requirements Language | |||
| 2. Segment Type Sub-TLVs | 2. Segment Type Sub-TLVs | |||
| 2.1. Segment Type C: SR-MPLS Prefix SID for IPv4 | 2.1. Segment Type C | |||
| 2.2. Segment Type D: SR-MPLS Prefix SID for IPv6 | 2.2. Segment Type D | |||
| 2.3. Segment Type E: SR-MPLS Adjacency SID for IPv4 with an | 2.3. Segment Type E | |||
| Interface ID | 2.4. Segment Type F | |||
| 2.4. Segment Type F: SR-MPLS Adjacency SID for IPv4 with an | 2.5. Segment Type G | |||
| Interface Address | 2.6. Segment Type H | |||
| 2.5. Segment Type G: SR-MPLS Adjacency SID for IPv6 with an | 2.7. Segment Type I | |||
| Interface ID | 2.8. Segment Type J | |||
| 2.6. Segment Type H: SR-MPLS Adjacency SID for IPv6 with an | 2.9. Segment Type K | |||
| Interface Address | ||||
| 2.7. Segment Type I: SRv6 END SID as IPv6 Node Address | ||||
| 2.8. Segment Type J: SRv6 END.X SID as an Interface ID | ||||
| 2.9. Segment Type K: SRv6 END.X SID as an Interface Address | ||||
| 2.10. SR Policy Segment Flags | 2.10. SR Policy Segment Flags | |||
| 3. IANA Considerations | 3. IANA Considerations | |||
| 3.1. SR Policy Segment List Sub-TLVs | 3.1. SR Policy Segment List Sub-TLVs | |||
| 3.2. SR Policy Segment Flags | 3.2. SR Policy Segment Flags | |||
| 4. Security Considerations | 4. Security Considerations | |||
| 5. Manageability Considerations | 5. Manageability Considerations | |||
| 6. Normative References | 6. Normative References | |||
| Acknowledgments | Acknowledgments | |||
| Authors' Addresses | Authors' Addresses | |||
| skipping to change at line 151 ¶ | skipping to change at line 147 ¶ | |||
| Type K: IPv6 Addresses for link endpoints as Local, Remote pair for | Type K: IPv6 Addresses for link endpoints as Local, Remote pair for | |||
| SRv6 | SRv6 | |||
| [RFC9830] specifies Segment Type Sub-TLVs for the Segment Types A and | [RFC9830] specifies Segment Type Sub-TLVs for the Segment Types A and | |||
| B. The following subsections specify the sub-TLVs used for encoding | B. The following subsections specify the sub-TLVs used for encoding | |||
| each of the other Segment Types above. | each of the other Segment Types above. | |||
| As specified in Sections 2.4.4 and 2.4.4.2 of [RFC9830], validation | As specified in Sections 2.4.4 and 2.4.4.2 of [RFC9830], validation | |||
| of an explicit path encoded by the Segment List sub-TLV is beyond the | of an explicit path encoded by the Segment List sub-TLV is beyond the | |||
| scope of BGP and performed by the Segment Routing Policy Module | scope of BGP and performed by the Segment Routing Policy Module | |||
| (SRPM) as described in Section 5 of [RFC9256]. As specified in | (SRPM) as described in Section 5 of [RFC9830]. As specified in | |||
| Section 5.1 of [RFC9256], a mix of SR-MPLS and SRv6 segments make the | Section 5.1 of [RFC9256], a mix of SR-MPLS and SRv6 segments make the | |||
| segment-list invalid. | segment-list invalid. | |||
| 2.1. Segment Type C: SR-MPLS Prefix SID for IPv4 | 2.1. Segment Type C | |||
| The Type C Segment sub-TLV encodes an IPv4 node address, SR | The Type C Segment sub-TLV encodes an IPv4 node address, SR | |||
| Algorithm, and an optional SR-MPLS Segment Identifier (SID). The | Algorithm, and an optional SR-MPLS Segment Identifier (SID). The | |||
| format is as follows: | format is as follows: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type | Length | Flags | SR Algorithm | | | Type | Length | Flags | SR Algorithm | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at line 196 ¶ | skipping to change at line 192 ¶ | |||
| [RFC9830] as described in Section 4 of [RFC9256]. When the A-Flag | [RFC9830] as described in Section 4 of [RFC9256]. When the A-Flag | |||
| is not set, this field MUST be set to zero on transmission and | is not set, this field MUST be set to zero on transmission and | |||
| MUST be ignored on receipt. | MUST be ignored on receipt. | |||
| IPv4 Node Address: A 4-octet IPv4 address representing a node. | IPv4 Node Address: A 4-octet IPv4 address representing a node. | |||
| SR-MPLS SID: Optional. A 4-octet field containing a label, Traffic | SR-MPLS SID: Optional. A 4-octet field containing a label, Traffic | |||
| Class (TC), bottom-of-stack (S), and TTL as defined for Segment | Class (TC), bottom-of-stack (S), and TTL as defined for Segment | |||
| Type A [RFC9830]. | Type A [RFC9830]. | |||
| 2.2. Segment Type D: SR-MPLS Prefix SID for IPv6 | 2.2. Segment Type D | |||
| The Type D Segment sub-TLV encodes an IPv6 node address, SR | The Type D Segment sub-TLV encodes an IPv6 node address, SR | |||
| Algorithm, and an optional SR-MPLS SID. The format is as follows: | Algorithm, and an optional SR-MPLS SID. The format is as follows: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type | Length | Flags | SR Algorithm | | | Type | Length | Flags | SR Algorithm | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| // IPv6 Node Address (16 octets) // | // IPv6 Node Address (16 octets) // | |||
| skipping to change at line 235 ¶ | skipping to change at line 231 ¶ | |||
| Section 2.10 is set. The SR Algorithm is used by the SRPM | Section 2.10 is set. The SR Algorithm is used by the SRPM | |||
| [RFC9830] as described in Section 4 of [RFC9256]. When the A-Flag | [RFC9830] as described in Section 4 of [RFC9256]. When the A-Flag | |||
| is not set, this field MUST be set to zero on transmission and | is not set, this field MUST be set to zero on transmission and | |||
| MUST be ignored on receipt. | MUST be ignored on receipt. | |||
| IPv6 Node Address: A 16-octet IPv6 address representing a node. | IPv6 Node Address: A 16-octet IPv6 address representing a node. | |||
| SR-MPLS SID: Optional. A 4-octet field containing a label, TC, S, | SR-MPLS SID: Optional. A 4-octet field containing a label, TC, S, | |||
| and TTL as defined for Segment Type A [RFC9830]. | and TTL as defined for Segment Type A [RFC9830]. | |||
| 2.3. Segment Type E: SR-MPLS Adjacency SID for IPv4 with an Interface | 2.3. Segment Type E | |||
| ID | ||||
| The Type E Segment sub-TLV encodes an IPv4 node address, a local | The Type E Segment sub-TLV encodes an IPv4 node address, a local | |||
| interface Identifier (Local Interface ID), and an optional SR-MPLS | interface Identifier (Local Interface ID), and an optional SR-MPLS | |||
| SID. The format is as follows: | SID. The format is as follows: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type | Length | Flags | RESERVED | | | Type | Length | Flags | RESERVED | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at line 269 ¶ | skipping to change at line 264 ¶ | |||
| Length: Specifies the length of the value field (i.e., not including | Length: Specifies the length of the value field (i.e., not including | |||
| Type and Length fields) in terms of octets. The value MUST be 14 | Type and Length fields) in terms of octets. The value MUST be 14 | |||
| when the SR-MPLS SID is present; else, it MUST be 10. | when the SR-MPLS SID is present; else, it MUST be 10. | |||
| Flags: 1 octet of flags as defined in Section 2.10. | Flags: 1 octet of flags as defined in Section 2.10. | |||
| RESERVED: 1 octet of reserved bits. This field MUST be set to zero | RESERVED: 1 octet of reserved bits. This field MUST be set to zero | |||
| on transmission and MUST be ignored on receipt. | on transmission and MUST be ignored on receipt. | |||
| Local Interface ID: 4 octets of interface index of local interface | Local Interface ID: 4 octets carrying the interface index of the | |||
| (refer to TLV 258 of [RFC9552]). | local interface (refer to TLV 258 of [RFC9552]). | |||
| IPv4 Node Address: A 4-octet IPv4 address representing a node. | IPv4 Node Address: A 4-octet IPv4 address representing a node. | |||
| SR-MPLS SID: Optional. A 4-octet field containing a label, TC, S, | SR-MPLS SID: Optional. A 4-octet field containing a label, TC, S, | |||
| and TTL as defined for Segment Type A [RFC9830]. | and TTL as defined for Segment Type A [RFC9830]. | |||
| 2.4. Segment Type F: SR-MPLS Adjacency SID for IPv4 with an Interface | 2.4. Segment Type F | |||
| Address | ||||
| The Type F Segment sub-TLV encodes an adjacency local address, an | The Type F Segment sub-TLV encodes an adjacency local address, an | |||
| adjacency remote address, and an optional SR-MPLS SID. The format is | adjacency remote address, and an optional SR-MPLS SID. The format is | |||
| as follows: | as follows: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type | Length | Flags | RESERVED | | | Type | Length | Flags | RESERVED | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at line 320 ¶ | skipping to change at line 314 ¶ | |||
| Local IPv4 Address: A 4-octet IPv4 address representing the local | Local IPv4 Address: A 4-octet IPv4 address representing the local | |||
| link address of the node. | link address of the node. | |||
| Remote IPv4 Address: A 4-octet IPv4 address representing the link | Remote IPv4 Address: A 4-octet IPv4 address representing the link | |||
| address of the neighbor node. | address of the neighbor node. | |||
| SR-MPLS SID: Optional. A 4-octet field containing a label, TC, S, | SR-MPLS SID: Optional. A 4-octet field containing a label, TC, S, | |||
| and TTL as defined for Segment Type A [RFC9830]. | and TTL as defined for Segment Type A [RFC9830]. | |||
| 2.5. Segment Type G: SR-MPLS Adjacency SID for IPv6 with an Interface | 2.5. Segment Type G | |||
| ID | ||||
| The Type G Segment sub-TLV encodes an IPv6 link-local adjacency with | The Type G Segment sub-TLV encodes an IPv6 link-local adjacency with | |||
| an IPv6 local node address, a local interface identifier (Local | an IPv6 local node address, a local interface identifier (Local | |||
| Interface ID), an IPv6 remote node address, a remote interface | Interface ID), an IPv6 remote node address, a remote interface | |||
| identifier (Remote Interface ID), and an optional SR-MPLS SID. The | identifier (Remote Interface ID), and an optional SR-MPLS SID. The | |||
| format is as follows: | format is as follows: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at line 378 ¶ | skipping to change at line 371 ¶ | |||
| when the local node address and interface identifiers are | when the local node address and interface identifiers are | |||
| sufficient to describe the link. | sufficient to describe the link. | |||
| IPv6 Remote Node Address: A 16-octet IPv6 address. The value MAY be | IPv6 Remote Node Address: A 16-octet IPv6 address. The value MAY be | |||
| set to zero when the local node address and interface identifiers | set to zero when the local node address and interface identifiers | |||
| are sufficient to describe the link. | are sufficient to describe the link. | |||
| SR-MPLS SID: Optional. A 4-octet field containing a label, TC, S, | SR-MPLS SID: Optional. A 4-octet field containing a label, TC, S, | |||
| and TTL as defined for Segment Type A [RFC9830]. | and TTL as defined for Segment Type A [RFC9830]. | |||
| 2.6. Segment Type H: SR-MPLS Adjacency SID for IPv6 with an Interface | 2.6. Segment Type H | |||
| Address | ||||
| The Type H Segment sub-TLV encodes an adjacency local address, an | The Type H Segment sub-TLV encodes an adjacency local address, an | |||
| adjacency remote address, and an optional SR-MPLS SID. The format is | adjacency remote address, and an optional SR-MPLS SID. The format is | |||
| as follows: | as follows: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type | Length | Flags | RESERVED | | | Type | Length | Flags | RESERVED | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at line 421 ¶ | skipping to change at line 413 ¶ | |||
| Local IPv6 Address: A 16-octet IPv6 address representing the local | Local IPv6 Address: A 16-octet IPv6 address representing the local | |||
| link address of the node. | link address of the node. | |||
| Remote IPv6 Address: A 16-octet IPv6 address representing the link | Remote IPv6 Address: A 16-octet IPv6 address representing the link | |||
| address of the neighbor node. | address of the neighbor node. | |||
| SR-MPLS SID: Optional. A 4-octet field containing a label, TC, S, | SR-MPLS SID: Optional. A 4-octet field containing a label, TC, S, | |||
| and TTL as defined for Segment Type A [RFC9830]. | and TTL as defined for Segment Type A [RFC9830]. | |||
| 2.7. Segment Type I: SRv6 END SID as IPv6 Node Address | 2.7. Segment Type I | |||
| The Type I Segment sub-TLV encodes an IPv6 node address, an SR | The Type I Segment sub-TLV encodes an IPv6 node address, an SR | |||
| Algorithm, and an optional SRv6 SID. The format is as follows: | Algorithm, and an optional SRv6 SID. The format is as follows: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type | Length | Flags | SR Algorithm | | | Type | Length | Flags | SR Algorithm | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| // IPv6 Node Address (16 octets) // | // IPv6 Node Address (16 octets) // | |||
| skipping to change at line 470 ¶ | skipping to change at line 462 ¶ | |||
| is not set, this field MUST be set to zero on transmission and | is not set, this field MUST be set to zero on transmission and | |||
| MUST be ignored on receipt. | MUST be ignored on receipt. | |||
| IPv6 Node Address: A 16-octet IPv6 address representing the node. | IPv6 Node Address: A 16-octet IPv6 address representing the node. | |||
| SRv6 SID: Optional. A 16-octet IPv6 address. The value 0 MAY be | SRv6 SID: Optional. A 16-octet IPv6 address. The value 0 MAY be | |||
| used when the controller wants to indicate the desired SRv6 | used when the controller wants to indicate the desired SRv6 | |||
| Endpoint Behavior or SID Structure without specifying the SID. | Endpoint Behavior or SID Structure without specifying the SID. | |||
| SRv6 Endpoint Behavior and SID Structure: Optional, as defined in | SRv6 Endpoint Behavior and SID Structure: Optional, as defined in | |||
| Section 2.4.4.2.4 of [RFC9830]. The SRv6 Endpoint Behavior and | Section 2.4.4.2.4 of [RFC9830]. The SRv6 Endpoint Behavior or SID | |||
| SID Structure MUST NOT be included when the SRv6 SID has not been | Structure MUST NOT be included when the SRv6 SID has not been | |||
| included. | included. | |||
| TLV 10 defined for the advertisement of Segment Type I in the early | TLV 10 defined for the advertisement of Segment Type I in the early | |||
| draft versions of [RFC9830] has been deprecated to avoid backward- | draft versions of [RFC9830] has been deprecated to avoid backward- | |||
| compatibility issues. | compatibility issues. | |||
| 2.8. Segment Type J: SRv6 END.X SID as an Interface ID | 2.8. Segment Type J | |||
| The Type J Segment sub-TLV encodes an IPv6 link-local adjacency with | The Type J Segment sub-TLV encodes an IPv6 link-local adjacency with | |||
| a local node address, a local interface identifier (Local Interface | a local node address, a local interface identifier (Local Interface | |||
| ID), a remote IPv6 node address, a remote interface identifier | ID), a remote IPv6 node address, a remote interface identifier | |||
| (Remote Interface ID), and an optional SRv6 SID. The format is as | (Remote Interface ID), and an optional SRv6 SID. The format is as | |||
| follows: | follows: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at line 557 ¶ | skipping to change at line 549 ¶ | |||
| SRv6 Endpoint Behavior and SID Structure: Optional, as defined in | SRv6 Endpoint Behavior and SID Structure: Optional, as defined in | |||
| Section 2.4.4.2.4 of [RFC9830]. The SRv6 Endpoint Behavior and | Section 2.4.4.2.4 of [RFC9830]. The SRv6 Endpoint Behavior and | |||
| SID Structure MUST NOT be included when the SRv6 SID has not been | SID Structure MUST NOT be included when the SRv6 SID has not been | |||
| included. | included. | |||
| TLV 11 defined for the advertisement of Segment Type J in the early | TLV 11 defined for the advertisement of Segment Type J in the early | |||
| draft versions of [RFC9830] has been deprecated to avoid backward- | draft versions of [RFC9830] has been deprecated to avoid backward- | |||
| compatibility issues. | compatibility issues. | |||
| 2.9. Segment Type K: SRv6 END.X SID as an Interface Address | 2.9. Segment Type K | |||
| The Type K Segment sub-TLV encodes an adjacency local address, an | The Type K Segment sub-TLV encodes an adjacency local address, an | |||
| adjacency remote address, and an optional SRv6 SID. The format is as | adjacency remote address, and an optional SRv6 SID. The format is as | |||
| follows: | follows: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type | Length | Flags | SR Algorithm | | | Type | Length | Flags | SR Algorithm | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at line 675 ¶ | skipping to change at line 667 ¶ | |||
| 3.1. SR Policy Segment List Sub-TLVs | 3.1. SR Policy Segment List Sub-TLVs | |||
| IANA has allocated the following code points from the "SR Policy | IANA has allocated the following code points from the "SR Policy | |||
| Segment List Sub-TLVs" registry [RFC9830] under the "Border Gateway | Segment List Sub-TLVs" registry [RFC9830] under the "Border Gateway | |||
| Protocol (BGP) Tunnel Encapsulation" registry group. | Protocol (BGP) Tunnel Encapsulation" registry group. | |||
| +=======+========================+===========+ | +=======+========================+===========+ | |||
| | Value | Description | Reference | | | Value | Description | Reference | | |||
| +=======+========================+===========+ | +=======+========================+===========+ | |||
| | 3 | Segment Type C sub-TLV | RFC 9831 | | | 3 | Type C Segment sub-TLV | RFC 9831 | | |||
| +-------+------------------------+-----------+ | +-------+------------------------+-----------+ | |||
| | 4 | Segment Type D sub-TLV | RFC 9831 | | | 4 | Type D Segment sub-TLV | RFC 9831 | | |||
| +-------+------------------------+-----------+ | +-------+------------------------+-----------+ | |||
| | 5 | Segment Type E sub-TLV | RFC 9831 | | | 5 | Type E Segment sub-TLV | RFC 9831 | | |||
| +-------+------------------------+-----------+ | +-------+------------------------+-----------+ | |||
| | 6 | Segment Type F sub-TLV | RFC 9831 | | | 6 | Type F Segment sub-TLV | RFC 9831 | | |||
| +-------+------------------------+-----------+ | +-------+------------------------+-----------+ | |||
| | 7 | Segment Type G sub-TLV | RFC 9831 | | | 7 | Type G Segment sub-TLV | RFC 9831 | | |||
| +-------+------------------------+-----------+ | +-------+------------------------+-----------+ | |||
| | 8 | Segment Type H sub-TLV | RFC 9831 | | | 8 | Type H Segment sub-TLV | RFC 9831 | | |||
| +-------+------------------------+-----------+ | +-------+------------------------+-----------+ | |||
| | 14 | Segment Type I sub-TLV | RFC 9831 | | | 14 | Type I Segment sub-TLV | RFC 9831 | | |||
| +-------+------------------------+-----------+ | +-------+------------------------+-----------+ | |||
| | 15 | Segment Type J sub-TLV | RFC 9831 | | | 15 | Type J Segment sub-TLV | RFC 9831 | | |||
| +-------+------------------------+-----------+ | +-------+------------------------+-----------+ | |||
| | 16 | Segment Type K sub-TLV | RFC 9831 | | | 16 | Type K Segment sub-TLV | RFC 9831 | | |||
| +-------+------------------------+-----------+ | +-------+------------------------+-----------+ | |||
| Table 1: SR Policy Segment List Code Points | Table 1: SR Policy Segment List Code Points | |||
| 3.2. SR Policy Segment Flags | 3.2. SR Policy Segment Flags | |||
| IANA has allocated code points from the "SR Policy Segment Flags" | IANA has allocated code points from the "SR Policy Segment Flags" | |||
| registry [RFC9830] under the "Border Gateway Protocol (BGP) Tunnel | registry [RFC9830] under the "Border Gateway Protocol (BGP) Tunnel | |||
| Encapsulation" registry group. | Encapsulation" registry group. | |||
| skipping to change at line 769 ¶ | skipping to change at line 761 ¶ | |||
| RFC 9256, DOI 10.17487/RFC9256, July 2022, | RFC 9256, DOI 10.17487/RFC9256, July 2022, | |||
| <https://www.rfc-editor.org/info/rfc9256>. | <https://www.rfc-editor.org/info/rfc9256>. | |||
| [RFC9552] Talaulikar, K., Ed., "Distribution of Link-State and | [RFC9552] Talaulikar, K., Ed., "Distribution of Link-State and | |||
| Traffic Engineering Information Using BGP", RFC 9552, | Traffic Engineering Information Using BGP", RFC 9552, | |||
| DOI 10.17487/RFC9552, December 2023, | DOI 10.17487/RFC9552, December 2023, | |||
| <https://www.rfc-editor.org/info/rfc9552>. | <https://www.rfc-editor.org/info/rfc9552>. | |||
| [RFC9830] Previdi, S., Filsfils, C., Talaulikar, K., Ed., Mattes, | [RFC9830] Previdi, S., Filsfils, C., Talaulikar, K., Ed., Mattes, | |||
| P., and D. Jain, "Advertising Segment Routing Policies in | P., and D. Jain, "Advertising Segment Routing Policies in | |||
| BGP", RFC 9830, DOI 10.17487/RFC9830, August 2025, | BGP", RFC 9830, DOI 10.17487/RFC9830, September 2025, | |||
| <https://www.rfc-editor.org/info/rfc9830>. | <https://www.rfc-editor.org/info/rfc9830>. | |||
| Acknowledgments | Acknowledgments | |||
| The authors would like to Dan Romascanu, Stig Venaas, and Russ | The authors would like to Dan Romascanu, Stig Venaas, and Russ | |||
| Housley for their comments and review. The authors would like to | Housley for their comments and review. The authors would like to | |||
| thank Susan Hares for her detailed shepherd review that helped in | thank Susan Hares for her detailed shepherd review that helped in | |||
| improving the document. | improving the document. | |||
| Authors' Addresses | Authors' Addresses | |||
| End of changes. 25 change blocks. | ||||
| 43 lines changed or deleted | 35 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||