--- 1/draft-ietf-idr-bgp-prefix-sid-12.txt 2018-02-05 13:13:18.990298381 -0800 +++ 2/draft-ietf-idr-bgp-prefix-sid-13.txt 2018-02-05 13:13:19.030299339 -0800 @@ -1,23 +1,23 @@ IDR S. Previdi, Ed. Internet-Draft C. Filsfils Intended status: Standards Track A. Lindem -Expires: August 8, 2018 Cisco Systems +Expires: August 9, 2018 Cisco Systems A. Sreekantiah H. Gredler RtBrick Inc. - February 4, 2018 + February 5, 2018 Segment Routing Prefix SID extensions for BGP - draft-ietf-idr-bgp-prefix-sid-12 + draft-ietf-idr-bgp-prefix-sid-13 Abstract Segment Routing (SR) architecture allows a node to steer a packet flow through any topological path and service chain by leveraging source routing. The ingress node prepends an SR header to a packet containing a set of segment identifiers (SID). Each SID represents a topological or a service-based instruction. Per-flow state is maintained only on the ingress node of the SR domain. @@ -41,21 +41,21 @@ Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on August 8, 2018. + This Internet-Draft will expire on August 9, 2018. Copyright Notice Copyright (c) 2018 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents @@ -150,21 +150,22 @@ o A BGP Prefix-SID MAY be attached to a prefix. In addition, each prefix will likely have a different AS_PATH attribute. This implies that each prefix is advertised individually, reducing the ability to pack BGP advertisements (when sharing common attributes). 2. BGP-Prefix-SID The BGP Prefix-SID advertised for BGP prefix P indicates that the segment routed path should be used (as described below) if the BGP - best path selects the corresponding NLRI. + best path selects the corresponding Network Layer Reachability + Information (NLRI). 2.1. MPLS BGP Prefix SID The BGP Prefix-SID is realized on the MPLS dataplane ([I-D.ietf-spring-segment-routing-mpls]) in the following way: The operator assigns a globally unique label index, L_I, to a locally sourced prefix of a BGP speaker N which is advertised to all other BGP speakers in the SR domain. @@ -243,21 +244,21 @@ o IPv6 SID TLV o Originator SRGB TLV The Label-Index and Originator SRGB TLVs are used only when SR is applied to the MPLS dataplane. The IPv6 SID TLV is used only when SR is applied to the IPv6 dataplane. - For future extendibility, unknown TLVs MUST be ignored and propagated + For future extensibility, unknown TLVs MUST be ignored and propagated unmodified. 3.1. Label-Index TLV The Label-Index TLV MUST be present in the BGP Prefix-SID attribute attached to Labeled IPv4/IPv6 unicast prefixes ([RFC8277]). It MUST be ignored when received for other BGP AFI/SAFI combinations. The Label-Index TLV has the following format: 0 1 2 3 @@ -393,22 +394,22 @@ be ignored when received for other BGP AFI/SAFI combinations. Since the Label-Index TLV is required for IPv4/IPv6 prefix applicability, the originator SRGB will be ignored if it is not specified consistent with Section 6. 4. Receiving BGP Prefix-SID Attribute A BGP speaker receiving a BGP Prefix-SID attribute from an EBGP neighbor residing outside the boundaries of the SR domain MUST discard the attribute unless it is configured to accept the attribute - from the EBGP neighbor. A BGP speaker MAY log an error for further - analysis when discarding an attribute. + from the EBGP neighbor. A BGP speaker SHOULD log an error for + further analysis when discarding an attribute. 4.1. MPLS Dataplane: Labeled Unicast A Multiprotocol BGP labeled IPv4/IPv6 Unicast ([RFC8277]) session type is required. A BGP speaker may be locally configured with an SRGB=[SRGB_Start, SRGB_End]. The preferred method for deriving the SRGB is a matter of local node configuration. @@ -427,33 +428,33 @@ receiving speaker. If multiple prefixes are received with the same label index value, all these prefixes MUST have their BGP Prefix-SID attribute considered as "unacceptable" by the receiving speaker. When a BGP speaker receives a path from a neighbor with an acceptable BGP Prefix-SID attribute, it MUST program the derived label as the local label for the prefix in its MPLS dataplane. In case of an error, a BGP speaker MUST follow to the error handling rules - specified in Section 6. A BGP speaker MAY log an error for further - analysis. + specified in Section 6. A BGP speaker SHOULD log an error for + further analysis. When a BGP speaker receives a path from a neighbor with an unacceptable BGP Prefix-SID attribute or when a BGP speaker receives a path from a neighbor with a BGP Prefix-SID attribute but is unable to process it (it does not have the capability or local policy disables the capability), it MUST treat the path as if it came without a BGP Prefix-SID attribute. For the purposes of local label allocation, a BGP speaker MUST assign a local (also called dynamic) label (non-SRGB) for such a prefix as per classic Multiprotocol BGP - labeled IPv4/IPv6 Unicast ([RFC8277]) operation. A BGP speaker MAY - log an error for further analysis. + labeled IPv4/IPv6 Unicast ([RFC8277]) operation. A BGP speaker + SHOULD log an error for further analysis. The outgoing label is always programmed as per classic Multiprotocol BGP labeled IPv4/IPv6 Unicast ([RFC8277]) operation. Specifically, a BGP speaker receiving a prefix with a BGP Prefix-SID attribute and a label NLRI field of Implicit NULL from a neighbor MUST adhere to standard behavior and program its MPLS dataplane to pop the top label when forwarding traffic to the prefix. The label NLRI defines the outbound label that MUST be used by the receiving node. The label index provides the receiving BGP speaker with guidance as @@ -461,21 +462,21 @@ 4.2. IPv6 Dataplane When an SR IPv6 BGP speaker receives an IPv6 Unicast BGP Update with a prefix having the BGP Prefix-SID attribute attached, it checks whether the IPv6 SID TLV is present. If present and chosen as the best path, the prefix is installed into the Segment Routing IPv6 dataplane as described in [I-D.ietf-spring-segment-routing]. The Label-Index and Originator SRGB TLVs MUST be ignored on - reception. For future extendibility, no TLVs are required for the + reception. For future extensibility, no TLVs are required for the BGP IPv6 unicast address family. However, a BGP Prefix-SID attribute corresponding to the BGP IPv6 address family without an IPv6 SID TLV MUST be ignored. 5. Advertising BGP Prefix-SID Attribute The BGP Prefix-SID attribute MAY be attached to labeled BGP prefixes (IPv4/IPv6) [RFC8277] or to IPv6 unicast prefixes [RFC4760]. In order to prevent distribution of the BGP Prefix-SID attribute beyond its intended scope of applicability, attribute filtering SHOULD be @@ -538,21 +539,21 @@ in this case [RFC7606]. When withdrawing the prefix, a BGP speaker SHOULD log an error for further analysis. Consistent with [RFC7606], only the first occurrence of the BGP Prefix-SID attribute will be considered and subsequent occurrences will be discarded. Similarly, only the first occurrence of a BGP Prefix-SID attribute TLV of a given TLV type will be considered unless the specification of that TLV type allows for multiple occurrences. - For future extendibility, unknown TLVs MUST be ignored and propagated + For future extensibility, unknown TLVs MUST be ignored and propagated unmodified. 7. IANA Considerations This document defines a BGP path attribute known as the BGP Prefix- SID attribute. This document requests IANA to assign an attribute code type (suggested value: 40) to the BGP Prefix-SID attribute from the BGP Path Attributes registry. Currently, IANA temporarily assigned the following: @@ -645,22 +646,23 @@ The authors would like to thank Satya Mohanty for his contribution to this document. The authors would like to thank Alvaro Retana for substantive comments as part of the Routing AD review. The authors would like to thank Shyam Sethuram for comments and discussion of TLV processing and validation. - The authors would like to thank Peter Yee and Tony Przygienda for - IETF last call directorate reviews. + The authors would like to thank Peter Yee, Tony Przygienda, Mirja + Kuehlewind, and Alexey Melnikov for IETF last call directorate and + IESG reviews. 12. References 12.1. Normative References [I-D.ietf-spring-segment-routing] Filsfils, C., Previdi, S., Ginsberg, L., Decraene, B., Litkowski, S., and R. Shakir, "Segment Routing Architecture", draft-ietf-spring-segment-routing-15 (work in progress), January 2018.