Skip to main content

BGP SRv6 Policy SID List Optimization
draft-ali-idr-srv6-policy-sid-list-optimization-01

Document Type Active Internet-Draft (individual)
Authors Zafar Ali , Rajesh M Venkateswaran , Cheng Li
Last updated 2024-11-04
RFC stream (None)
Intended RFC status (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-ali-idr-srv6-policy-sid-list-optimization-01
IDR Working Group                                                 Z. Ali
Internet-Draft                                          R. Venkateswaran
Intended status: Standards Track                                   Cisco
Expires: 8 May 2025                                                C. Li
                                                     Huawei Technologies
                                                         4 November 2024

                 BGP SRv6 Policy SID List Optimization
           draft-ali-idr-srv6-policy-sid-list-optimization-01

Abstract

   In some use cases, an SRv6 policy's SID list ends with the policy
   endpoint's node SID, and the traffic steered (over policy) already
   ensures that it is taken to the policy endpoint.  In such cases, the
   SID list can be optimized by excluding the endpoint Node SID when
   installing the policy.  This draft specifies a BGP extension to
   indicate whether the endpoint's node SID needs to be included or
   excluded when installing the SRv6 Policy.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   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 https://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 8 May 2025.

Ali, et al.                Expires 8 May 2025                   [Page 1]
Internet-Draft   BGP      extensions for SRv6 Policy SID   November 2024

Copyright Notice

   Copyright (c) 2024 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 (https://trustee.ietf.org/
   license-info) in effect on the date of publication of this document.
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.  Code Components
   extracted from this document must include Revised BSD License text as
   described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Revised BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Requirements Language . . . . . . . . . . . . . . . . . . . .   3
   3.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   4.  Overview of BGP Extensions  . . . . . . . . . . . . . . . . .   3
   5.  Procedure . . . . . . . . . . . . . . . . . . . . . . . . . .   4
   6.  Backward compatibility  . . . . . . . . . . . . . . . . . . .   4
   7.  Security Considerations . . . . . . . . . . . . . . . . . . .   4
   8.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   4
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   4
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .   4
     9.2.  Informative References  . . . . . . . . . . . . . . . . .   5
   Appendix A.  Acknowledgements . . . . . . . . . . . . . . . . . .   5
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   5

1.  Introduction

   Segment Routing (SR) [RFC8402] allows a node to steer a packet flow
   along any path.  A Segment Routing Policy (SR Policy) [RFC8402] is an
   ordered list of segments that represent a source-routed policy.  The
   headend node is said to steer a flow into an SR Policy.  The packets
   steered into an SR Policy have an ordered list of segments associated
   with that SR Policy written into them.  Segment Routing Policy
   Architecture [RFC9256] updates [RFC8402] as it details the concepts
   of SR Policy and steering into an SR Policy.  [RFC8986] describes the
   representation and processing of this ordered list of segments for
   Segment Routing over IPv6 (SRv6).  [I-D. draft-ietf-idr-sr-policy-
   safi] document specifies how BGP may distribute SR Policy candidate
   paths.  [I.D.draft-ietf-idr-bgp-ls-sr-policy] defines a mechanism to
   collect the Segment Routing Policy information that is locally
   available in a node and advertise it into BGP Link-State (BGP-LS)
   updates.

Ali, et al.                Expires 8 May 2025                   [Page 2]
Internet-Draft   BGP      extensions for SRv6 Policy SID   November 2024

   The SRv6 policy SID list may end with the policy endpoint's Node SID
   or the penultimate hop adjacency SID.  If the computed SID list ends
   with the policy endpoint's node SID and the overlay SID in the
   steered traffic (over policy) already ensures that the traffic is
   taken to the policy endpoint with the same intent, the SRv6 policy
   endpoint device needs to process back-to-back local node SIDs.
   Examples of overlay SID containing the local node SID are a service
   SID, a binding SID for transit policies, an EPE SID, etc.  From a
   compression efficiency viewpoint, carrying back-to-back end-point
   node SID is inefficient.  The SID list in the packet can be optimized
   by excluding the end-point node SID when installing the policy.  End-
   point node SID exclusion improves the compression efficiency and
   makes packet processing more efficient for the policy endpoint.

   Excluding the policy endpoint's node SID is possible in most use
   cases, but not all.  For example, if the SRv6 policy is used to carry
   MPLS traffic, as described in [I-D.draft-agrawal-spring-srv6-mpls-
   interworking], it is not possible to exclude the policy endpoint's
   node SID.  Specifically, the endpoint's node SID inclusion or
   exclusion is a policy attribute.  This draft specifies BGP extensions
   to include or exclude the node SID when installing the SRv6 Policy.

2.  Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in
   BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

3.  Terminology

   Headend node: Packet flows are steered into an SR Policy on a node
   where it is instantiated called a headend node [RFC9256].

   SR: Segment Routing.

   SID: Segment Identifier.

   SRv6: Segment Routing over IPv6 data plane.

4.  Overview of BGP Extensions

   N-flag (endpoint node SID iNclusion flag) is proposed in the SRv6
   Binding SID Sub-TLV specified in [I.D-draft-ietf-idr-sr-policy-safi].
   The SRv6 Binding SID Sub-TLV is one of the BGP Tunnel Encapsulation
   Attribute Sub-TLVs [RFC9012].  The bit position for the flag is to be
   defined by IANA.

Ali, et al.                Expires 8 May 2025                   [Page 3]
Internet-Draft   BGP      extensions for SRv6 Policy SID   November 2024

   N-flag (endpoint node SID iNclusion flag) in the SR Candidate Path
   State TLV specified in [I-D- draft-ietf-idr-bgp-ls-sr-policy] is
   proposed to indicate whether the endpoint node SID is included or
   excluded in installing SID list(s) of the Candidate Path (CP).

5.  Procedure

   When an SRv6 Policy candidate path is instantiated with an N-flag set
   to 1 in the SRv6 Binding SID Sub-TLV, the Headend node MUST include
   the endpoint node SID when installing the Policy sid list(s) used to
   carry data traffic.

   When an SRv6 Policy candidate path is instantiated with an N-flag set
   to 0 in the SRv6 Binding SID Sub-TLV, the Headend node MUST NOT
   include the endpoint node SID when installing the Policy sid list(s)
   used to carry data traffic.

   The setting of other fields and attributes in the BGP SR Policy
   SHOULD follow the mechanism as defined in [I-D. draft-ietf-idr-sr-
   policy-safi].  On reception of an SR Policy NLRI, a BGP speaker
   determines if it is acceptable and usable according to the rules
   described in [I-D. draft-ietf-idr-sr-policy-safi].

   Local policy at Headend node MAY override the N-flag.

6.  Backward compatibility

   If SRv6 policy Headend node is not capable of supporting the I-flag,
   the endpoint Node SID inclusion/exclusion is a local decision at the
   Headend node.

7.  Security Considerations

   TBA

8.  IANA Considerations

   TBA

9.  References

9.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

Ali, et al.                Expires 8 May 2025                   [Page 4]
Internet-Draft   BGP      extensions for SRv6 Policy SID   November 2024

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8402]  Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L.,
              Decraene, B., Litkowski, S., and R. Shakir, "Segment
              Routing Architecture", RFC 8402, DOI 10.17487/RFC8402,
              July 2018, <https://www.rfc-editor.org/info/rfc8402>.

   [RFC8986]  Filsfils, C., Ed., Camarillo, P., Ed., Leddy, J., Voyer,
              D., Matsushima, S., and Z. Li, "Segment Routing over IPv6
              (SRv6) Network Programming", RFC 8986,
              DOI 10.17487/RFC8986, February 2021,
              <https://www.rfc-editor.org/info/rfc8986>.

   [RFC9012]  Patel, K., Van de Velde, G., Sangli, S., and J. Scudder,
              "The BGP Tunnel Encapsulation Attribute", RFC 9012,
              DOI 10.17487/RFC9012, April 2021,
              <https://www.rfc-editor.org/info/rfc9012>.

   [RFC9256]  Filsfils, C., Talaulikar, K., Ed., Voyer, D., Bogdanov,
              A., and P. Mattes, "Segment Routing Policy Architecture",
              RFC 9256, DOI 10.17487/RFC9256, July 2022,
              <https://www.rfc-editor.org/info/rfc9256>.

9.2.  Informative References

Appendix A.  Acknowledgements

   The authors would like to thank Ketan Talaulikar for the review
   comments.

Authors' Addresses

   Zafar Ali
   Cisco
   Email: zali@cisco.com

   Rajesh M Venkateswaran
   Cisco
   Email: melarco@cisco.com

   Cheng Li
   Huawei Technologies
   Email: c.l@huawei.com

Ali, et al.                Expires 8 May 2025                   [Page 5]