draft-ietf-idr-sr-policy-safi-09.txt | draft-ietf-idr-sr-policy-safi-10.txt | |||
---|---|---|---|---|
Network Working Group S. Previdi | Network Working Group S. Previdi | |||
Internet-Draft Huawei Technologies | Internet-Draft Huawei Technologies | |||
Updates: 9012 (if approved) C. Filsfils | Updates: 9012 (if approved) C. Filsfils | |||
Intended status: Standards Track K. Talaulikar, Ed. | Intended status: Standards Track K. Talaulikar, Ed. | |||
Expires: 6 April 2025 Cisco Systems | Expires: 7 May 2025 Cisco Systems | |||
P. Mattes | P. Mattes | |||
Microsoft | Microsoft | |||
D. Jain | D. Jain | |||
3 October 2024 | 3 November 2024 | |||
Advertising Segment Routing Policies in BGP | Advertising Segment Routing Policies in BGP | |||
draft-ietf-idr-sr-policy-safi-09 | draft-ietf-idr-sr-policy-safi-10 | |||
Abstract | Abstract | |||
A Segment Routing (SR) Policy is an ordered list of segments (i.e., | A Segment Routing (SR) Policy is an ordered list of segments (i.e., | |||
instructions) that represent a source-routed policy. An SR Policy | instructions) that represent a source-routed policy. An SR Policy | |||
consists of one or more candidate paths, each consisting of one or | consists of one or more candidate paths, each consisting of one or | |||
more segment lists. A headend may be provisioned with candidate | more segment lists. A headend may be provisioned with candidate | |||
paths for an SR Policy via several different mechanisms, e.g., CLI, | paths for an SR Policy via several different mechanisms, e.g., CLI, | |||
NETCONF, PCEP, or BGP. | NETCONF, PCEP, or BGP. | |||
skipping to change at page 2, line 4 ¶ | skipping to change at page 2, line 4 ¶ | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on 6 April 2025. | This Internet-Draft will expire on 7 May 2025. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2024 IETF Trust and the persons identified as the | Copyright (c) 2024 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents (https://trustee.ietf.org/ | Provisions Relating to IETF Documents (https://trustee.ietf.org/ | |||
license-info) in effect on the date of publication of this document. | license-info) in effect on the date of publication of this document. | |||
Please review these documents carefully, as they describe your rights | Please review these documents carefully, as they describe your rights | |||
skipping to change at page 2, line 38 ¶ | skipping to change at page 2, line 38 ¶ | |||
Sub-TLVs . . . . . . . . . . . . . . . . . . . . . . . . 10 | Sub-TLVs . . . . . . . . . . . . . . . . . . . . . . . . 10 | |||
2.4. SR Policy Sub-TLVs . . . . . . . . . . . . . . . . . . . 10 | 2.4. SR Policy Sub-TLVs . . . . . . . . . . . . . . . . . . . 10 | |||
2.4.1. Preference Sub-TLV . . . . . . . . . . . . . . . . . 11 | 2.4.1. Preference Sub-TLV . . . . . . . . . . . . . . . . . 11 | |||
2.4.2. Binding SID Sub-TLV . . . . . . . . . . . . . . . . . 11 | 2.4.2. Binding SID Sub-TLV . . . . . . . . . . . . . . . . . 11 | |||
2.4.3. SRv6 Binding SID Sub-TLV . . . . . . . . . . . . . . 13 | 2.4.3. SRv6 Binding SID Sub-TLV . . . . . . . . . . . . . . 13 | |||
2.4.4. Segment List Sub-TLV . . . . . . . . . . . . . . . . 15 | 2.4.4. Segment List Sub-TLV . . . . . . . . . . . . . . . . 15 | |||
2.4.5. Explicit NULL Label Policy Sub-TLV . . . . . . . . . 21 | 2.4.5. Explicit NULL Label Policy Sub-TLV . . . . . . . . . 21 | |||
2.4.6. Policy Priority Sub-TLV . . . . . . . . . . . . . . . 23 | 2.4.6. Policy Priority Sub-TLV . . . . . . . . . . . . . . . 23 | |||
2.4.7. Policy Candidate Path Name Sub-TLV . . . . . . . . . 23 | 2.4.7. Policy Candidate Path Name Sub-TLV . . . . . . . . . 23 | |||
2.4.8. Policy Name Sub-TLV . . . . . . . . . . . . . . . . . 24 | 2.4.8. Policy Name Sub-TLV . . . . . . . . . . . . . . . . . 24 | |||
3. Color Extended Community . . . . . . . . . . . . . . . . . . 25 | 3. Color Extended Community . . . . . . . . . . . . . . . . . . 26 | |||
4. SR Policy Operations . . . . . . . . . . . . . . . . . . . . 27 | 4. SR Policy Operations . . . . . . . . . . . . . . . . . . . . 27 | |||
4.1. Advertisement of SR Policies . . . . . . . . . . . . . . 27 | 4.1. Advertisement of SR Policies . . . . . . . . . . . . . . 27 | |||
4.2. Reception of an SR Policy NLRI . . . . . . . . . . . . . 27 | 4.2. Reception of an SR Policy NLRI . . . . . . . . . . . . . 27 | |||
4.2.1. Validation of an SR Policy NLRI . . . . . . . . . . . 28 | 4.2.1. Validation of an SR Policy NLRI . . . . . . . . . . . 28 | |||
4.2.2. Eligibility for Local Use of an SR Policy NLRI . . . 28 | 4.2.2. Eligibility for Local Use of an SR Policy NLRI . . . 28 | |||
4.2.3. Propagation of an SR Policy . . . . . . . . . . . . . 29 | 4.2.3. Propagation of an SR Policy . . . . . . . . . . . . . 29 | |||
5. Error Handling and Fault Management . . . . . . . . . . . . . 29 | 5. Error Handling and Fault Management . . . . . . . . . . . . . 29 | |||
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30 | 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30 | |||
6.1. Subsequent Address Family Identifiers (SAFI) | 6.1. Subsequent Address Family Identifiers (SAFI) | |||
Parameters . . . . . . . . . . . . . . . . . . . . . . . 31 | Parameters . . . . . . . . . . . . . . . . . . . . . . . 31 | |||
skipping to change at page 15, line 8 ¶ | skipping to change at page 15, line 8 ¶ | |||
- B-Flag: This flag, when set, indicates the presence of the SRv6 | - B-Flag: This flag, when set, indicates the presence of the SRv6 | |||
Endpoint Behavior and SID Structure encoding specified in | Endpoint Behavior and SID Structure encoding specified in | |||
Section 2.4.4.2.4. | Section 2.4.4.2.4. | |||
- The unassigned bits in the Flag octet MUST be set to zero upon | - The unassigned bits in the Flag octet MUST be set to zero upon | |||
transmission and MUST be ignored upon receipt. | transmission and MUST be ignored upon receipt. | |||
* RESERVED: 1 octet of reserved bits. This field MUST be set to | * RESERVED: 1 octet of reserved bits. This field MUST be set to | |||
zero on transmission and MUST be ignored on receipt. | zero on transmission and MUST be ignored on receipt. | |||
* SRv6 Binding SID: Contains a 16-octet SRv6 SID. | * SRv6 Binding SID: Contains a 16-octet SRv6 SID. The value 0 MAY | |||
be used when the controller wants to indicate the desired SRv6 | ||||
Endpoint Behavior, SID Structure, or flags without specifying the | ||||
BSID. | ||||
* 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. | Section 2.4.4.2.4. The SRv6 Endpoint Behavior and SID Structure | |||
MUST NOT be included when the SRv6 SID has not been included. | ||||
2.4.4. Segment List Sub-TLV | 2.4.4. Segment List Sub-TLV | |||
The Segment List sub-TLV encodes a single explicit path towards the | The Segment List sub-TLV encodes a single explicit path towards the | |||
endpoint as described in section 5.1 of [RFC9256]. The Segment List | endpoint as described in section 5.1 of [RFC9256]. The Segment List | |||
sub-TLV includes the elements of the paths (i.e., segments) as well | sub-TLV includes the elements of the paths (i.e., segments) as well | |||
as an optional Weight sub-TLV. | as an optional Weight sub-TLV. | |||
The Segment List sub-TLV may exceed 255 bytes in length due to a | The Segment List sub-TLV may exceed 255 bytes in length due to a | |||
large number of segments. A 2-octet length is thus required. | large number of segments. A 2-octet length is thus required. | |||
skipping to change at page 19, line 45 ¶ | skipping to change at page 19, line 48 ¶ | |||
present else it MUST be 18. | present else it MUST be 18. | |||
* Flags: 1 octet of flags as defined in Section 2.4.4.2.3. | * Flags: 1 octet of flags as defined in Section 2.4.4.2.3. | |||
* RESERVED: 1 octet of reserved bits. This field MUST be set to | * RESERVED: 1 octet of reserved bits. This field MUST be set to | |||
zero on transmission and MUST be ignored on receipt. | zero on transmission and MUST be ignored on receipt. | |||
* SRv6 SID: 16 octets of IPv6 address. | * SRv6 SID: 16 octets of IPv6 address. | |||
* 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. | Section 2.4.4.2.4. The SRv6 Endpoint Behavior and SID Structure | |||
MUST NOT be included when the SRv6 SID has not been included. | ||||
The Sub-TLV code point 2 defined for the advertisement of Segment | The Sub-TLV code point 2 defined for the advertisement of Segment | |||
Type B in the earlier versions of this document has been deprecated | Type B in the earlier versions of this document has been deprecated | |||
to avoid backward compatibility issues. | to avoid backward compatibility issues. | |||
2.4.4.2.3. Segment Flags | 2.4.4.2.3. SR Policy Segment Flags | |||
The Segment Types sub-TLVs described above may contain the following | The Segment Types sub-TLVs described above may contain the following | |||
flags in the "Flags" field defined in Section 6.8: | SR Policy Segment Flags in their "Flags" field. Also refer to | |||
Section 6.8: | ||||
0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | |||
+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
|V| |B| | | |V| |B| | | |||
+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
Figure 22: Segment Flags | Figure 22: SR Policy Segment Flags | |||
where: | where: | |||
V-Flag: This flag, when set, is used by SRPM for "SID | V-Flag: This flag, when set, is used by SRPM for "SID | |||
verification" as described in Section 5.1 of [RFC9256]. | verification" as described in Section 5.1 of [RFC9256]. | |||
B-Flag: This flag, when set, indicates the presence of the SRv6 | B-Flag: This flag, when set, indicates the presence of the SRv6 | |||
Endpoint Behavior and SID Structure encoding specified in | Endpoint Behavior and SID Structure encoding specified in | |||
Section 2.4.4.2.4. | Section 2.4.4.2.4. | |||
skipping to change at page 37, line 4 ¶ | skipping to change at page 37, line 4 ¶ | |||
via BGP SR Policy SAFI along with their operational states. | via BGP SR Policy SAFI along with their operational states. | |||
9. Acknowledgments | 9. Acknowledgments | |||
The authors of this document would like to thank Shyam Sethuram, John | The authors of this document would like to thank Shyam Sethuram, John | |||
Scudder, Przemyslaw Krol, Alex Bogdanov, Nandan Saha, Bruno Decraene, | Scudder, Przemyslaw Krol, Alex Bogdanov, Nandan Saha, Bruno Decraene, | |||
Gurusiddesh Nidasesi, Kausik Majumdar, Zafar Ali, Swadesh Agarwal, | Gurusiddesh Nidasesi, Kausik Majumdar, Zafar Ali, Swadesh Agarwal, | |||
Jakob Heitz, Viral Patel, Peng Shaofu, Cheng Li, Martin Vigoureux, | Jakob Heitz, Viral Patel, Peng Shaofu, Cheng Li, Martin Vigoureux, | |||
John Scudder, Vincent Roca, Brian Haberman, Mohamed Boucadair, | John Scudder, Vincent Roca, Brian Haberman, Mohamed Boucadair, | |||
Shunwan Zhuang, Andrew Alston, Jeffrey (Zhaohui) Zhang, Nagendra | Shunwan Zhuang, Andrew Alston, Jeffrey (Zhaohui) Zhang, Nagendra | |||
Nainar, Rajesh Melarcode Venkateswaran, Nat Kao, Boris Hassanov, and | Nainar, Rajesh Melarcode Venkateswaran, Nat Kao, Boris Hassanov, | |||
Vincent Roca for their comments and review of this document. The | Vincent Roca, and Russ Housley for their comments and review of this | |||
authors would like to thank Susan Hares for her detailed shepherd | document. The authors would like to thank Susan Hares for her | |||
review that helped in improving the document. | detailed shepherd review that helped in improving the document. | |||
10. Contributors | 10. Contributors | |||
Eric Rosen | Eric Rosen | |||
Juniper Networks | Juniper Networks | |||
US | US | |||
Email: erosen@juniper.net | Email: erosen@juniper.net | |||
Arjun Sreekantiah | Arjun Sreekantiah | |||
skipping to change at page 40, line 9 ¶ | skipping to change at page 40, line 9 ¶ | |||
A., and P. Mattes, "Segment Routing Policy Architecture", | A., and P. Mattes, "Segment Routing Policy Architecture", | |||
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>. | |||
11.2. Informational References | 11.2. Informational References | |||
[I-D.ietf-idr-bgp-ls-sr-policy] | [I-D.ietf-idr-bgp-ls-sr-policy] | |||
Previdi, S., Talaulikar, K., Dong, J., Gredler, H., and J. | Previdi, S., Talaulikar, K., Dong, J., Gredler, H., and J. | |||
Tantsura, "Advertisement of Segment Routing Policies using | Tantsura, "Advertisement of Segment Routing Policies using | |||
BGP Link-State", Work in Progress, Internet-Draft, draft- | BGP Link-State", Work in Progress, Internet-Draft, draft- | |||
ietf-idr-bgp-ls-sr-policy-05, 22 July 2024, | ietf-idr-bgp-ls-sr-policy-06, 19 October 2024, | |||
<https://datatracker.ietf.org/doc/html/draft-ietf-idr-bgp- | <https://datatracker.ietf.org/doc/html/draft-ietf-idr-bgp- | |||
ls-sr-policy-05>. | ls-sr-policy-06>. | |||
[I-D.ietf-idr-bgp-model] | [I-D.ietf-idr-bgp-model] | |||
Jethanandani, M., Patel, K., Hares, S., and J. Haas, "YANG | Jethanandani, M., Patel, K., Hares, S., and J. Haas, "YANG | |||
Model for Border Gateway Protocol (BGP-4)", Work in | Model for Border Gateway Protocol (BGP-4)", Work in | |||
Progress, Internet-Draft, draft-ietf-idr-bgp-model-17, 5 | Progress, Internet-Draft, draft-ietf-idr-bgp-model-18, 21 | |||
July 2023, <https://datatracker.ietf.org/doc/html/draft- | October 2024, <https://datatracker.ietf.org/doc/html/ | |||
ietf-idr-bgp-model-17>. | draft-ietf-idr-bgp-model-18>. | |||
[I-D.ietf-idr-bgp-sr-segtypes-ext] | [I-D.ietf-idr-bgp-sr-segtypes-ext] | |||
Talaulikar, K., Filsfils, C., Previdi, S., Mattes, P., and | Talaulikar, K., Filsfils, C., Previdi, S., Mattes, P., and | |||
D. Jain, "Segment Routing Segment Types Extensions for BGP | D. Jain, "Segment Routing Segment Types Extensions for BGP | |||
SR Policy", Work in Progress, Internet-Draft, draft-ietf- | SR Policy", Work in Progress, Internet-Draft, draft-ietf- | |||
idr-bgp-sr-segtypes-ext-04, 30 July 2024, | idr-bgp-sr-segtypes-ext-05, 27 September 2024, | |||
<https://datatracker.ietf.org/doc/html/draft-ietf-idr-bgp- | <https://datatracker.ietf.org/doc/html/draft-ietf-idr-bgp- | |||
sr-segtypes-ext-04>. | sr-segtypes-ext-05>. | |||
[I-D.ietf-spring-sr-policy-yang] | [I-D.ietf-spring-sr-policy-yang] | |||
Raza, S. K., Saleh, T., Shunwan, Z., Voyer, D., Durrani, | Raza, S. K., Saleh, T., Shunwan, Z., Voyer, D., Durrani, | |||
M., Matsushima, S., and V. P. Beeram, "YANG Data Model for | M., Matsushima, S., and V. P. Beeram, "YANG Data Model for | |||
Segment Routing Policy", Work in Progress, Internet-Draft, | Segment Routing Policy", Work in Progress, Internet-Draft, | |||
draft-ietf-spring-sr-policy-yang-03, 4 March 2024, | draft-ietf-spring-sr-policy-yang-03, 4 March 2024, | |||
<https://datatracker.ietf.org/doc/html/draft-ietf-spring- | <https://datatracker.ietf.org/doc/html/draft-ietf-spring- | |||
sr-policy-yang-03>. | sr-policy-yang-03>. | |||
[RFC4272] Murphy, S., "BGP Security Vulnerabilities Analysis", | [RFC4272] Murphy, S., "BGP Security Vulnerabilities Analysis", | |||
End of changes. 17 change blocks. | ||||
22 lines changed or deleted | 28 lines changed or added | |||
This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |