Internet DRAFT - draft-lin-idr-sr-epe-over-l2bundle

draft-lin-idr-sr-epe-over-l2bundle



IDR Working Group                                                C. Lin
Internet Draft                                     New H3C Technologies
Intended status: Standards Track                                  Z. Li
Expires: July 10, 2024                                     China Mobile
                                                                R. Pang
                                                           China Unicom
                                                                M. Chen
                                                   New H3C Technologies
                                                       January 10, 2024

      Segment Routing BGP Egress Peer Engineering over Layer 2 Bundle
                   draft-lin-idr-sr-epe-over-l2bundle-04


Abstract

   There are deployments where the Layer 3 interface on which a BGP
   peer session is established is a Layer 2 interface bundle. In order
   to allow BGP-EPE to control traffic flows on individual member links
   of the underlying Layer 2 bundle, BGP Peering SIDs need to be
   allocated to individual bundle member links, and advertisement of
   such BGP Peering SIDs in BGP-LS is also required. This document
   describes how to support Segment Routing BGP Egress Peer Engineering
   over Layer 2 bundle.

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 July 10, 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
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document. Please review these documents

Lin, et al.             Expire July 26, 2024                  [Page 1]

Internet-Draft          SR BGP EPE over L2 Bundle         January 2024


   carefully, as they describe your rights and restrictions with
   respect to this document. Code Components extracted from this
   document must include Simplified BSD License text as described in
   Section 4.e of the Trust Legal Provisions and are provided without
   warranty as described in the Simplified BSD License.

Table of Contents


   1. Introduction...................................................2
      1.1. Requirements Language.....................................3
   2. Problem Statement..............................................3
   3. Peer Adjacency Segment for L2 Bundle Member Link...............4
      3.1. Advertising in BGP-LS.....................................4
      3.2. MPLS-SR Data Plane: L2 Bundle Member PeerAdj SID TLV......5
      3.3. SRv6 Data Plane: SRv6 End.X SID TLV.......................6
   4. Example........................................................6
      4.1. Link Attributes on SR-MPLS Data Plane.....................7
      4.2. Link Attributes on SRv6 Data Plane........................8
   5. Considerations of Reusing Existing PeerAdj SID TLV.............8
   6. Manageability Considerations...................................9
   7. Security Considerations........................................9
   8. IANA Considerations............................................9
   9. References.....................................................9
      9.1. Normative References......................................9
      9.2. Informative References...................................10
   Acknowledgements.................................................10
   Authors' Addresses...............................................11

1. Introduction

   Segment Routing (SR) leverages the source routing paradigm.  A node
   steers a packet through an ordered list of instructions called
   "segments". Segment Routing can be instantiated on both MPLS and
   IPv6 data planes, which are referred to as SR-MPLS and SRv6.

   BGP Egress Peer Engineering (BGP-EPE) allows an ingress Provider
   Edge (PE) router within the domain to use a specific egress PE and a
   specific external interface/neighbor to reach a particular
   destination.

   The SR architecture [RFC8402] defines three types of BGP Peering
   Segments that may be instantiated at a BGP node:

   o Peer Node Segment (PeerNode SID): instruction to steer to a
      specific peer node



Lin, et al.             Expires July 10, 2024                 [Page 2]

Internet-Draft          SR BGP EPE over L2 Bundle         January 2024


   o Peer Adjacency Segment (PeerAdj SID): instruction to steer over a
      specific local interface towards a specific peer node

   o Peer Set Segment (PeerSet SID): instruction to load-balance to a
      set of specific peer nodes

   [RFC9087] illustrates a centralized controller-based BGP-EPE
   solution involving SR path computation using the BGP Peering
   Segments. A centralized controller learns the BGP Peering SIDs via
   Border Gateway Protocol - Link State (BGP-LS) and then uses this
   information to program a BGP-EPE policy. [RFC9086] defines the
   extension to BGP-LS for advertisement of BGP Peering Segments along
   with their BGP peering node information.

   There are deployments where the Layer 3 interface on which a BGP
   peer session is established is a Layer 2 interface bundle (L2
   Bundle), for instance, a Link Aggregation Group (LAG) [IEEE802.1AX].
   BGP-EPE may wish to control traffic flows on individual member links
   of the underlying Layer 2 bundle. In order to do so, BGP Peering
   SIDs need to be allocated to individual bundle member links, and
   advertisement of such BGP Peering SIDs in BGP-LS is also required.

   This document describes how to support Segment Routing BGP Egress
   Peer Engineering over Layer 2 bundle.

1.1. 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.

2. Problem Statement

   In the network depicted in Figure 1, B and C establish BGP peer
   session on a Layer 2 bundle. Assume that, the link delays of the
   members are different because they are over different transport
   paths, and member link 1 has the lowest delay.

   The operator of AS1 wishes to apply a BGP-EPE policy to steer the
   time-sensitive traffic from AS1 to AS2 via member link 1 of the
   Layer 2 bundle.






Lin, et al.             Expires July 10, 2024                 [Page 3]

Internet-Draft          SR BGP EPE over L2 Bundle         January 2024


                    L2 Bundle      +--------+
                 /---member 1---\  |        |
               --+---member 2---+--C   AS2  |
   +--------+ /  \---member 3---/  |        |
   |        |/                     +--------+
   A   AS1  B
   |        |\                     +--------+
   +--------+ \                    |        |
               --------------------D   AS3  |
                                   |        |
                                   +--------+

   Figure 1: BGP-EPE over L2 Bundle

   The existing PeerAdj SID can be allocated to the Layer 3 interface
   between B and C, which is a Layer 2 interface bundle. If steered by
   that PeerAdj SID, the traffic will be forwarded by load balancing
   among all the bundle member links. So, the existing mechanism cannot
   meet the requirement of steering traffic flows via individual member
   link.

3. Peer Adjacency Segment for L2 Bundle Member Link

   This document extends Peer Adjacency Segments to be allocated to the
   individual member links of the Layer 2 interface bundle.

   The semantics of a Peer Adjacency Segment for L2 Bundle Member Link
   are:

   o SR operation: NEXT.

   o Next-Hop: forwarding across the bundle member link, which the
      segment is associated with, to the peer connected through the
      parent L3 interface.

   On the SR-MPLS data plane, Peer Adjacency Segments for L2 Bundle
   Member Links are instantiated as MPLS labels. On the SRv6 data
   plane, Peer Adjacency Segments for L2 Bundle Members are
   instantiated as SRv6 End.X SIDs.

3.1. Advertising in BGP-LS

   BGP peering segments are generally advertised in BGP-LS from a BGP
   node along with its peering topology information, in order to enable
   computation of efficient BGP-EPE policies and strategies.

   When advertising Peer Adjacency Segments for L2 Bundle Member Links
   in BGP-LS, they can be carried in the sub-TLVs of L2 Bundle Member

Lin, et al.             Expires July 10, 2024                 [Page 4]

Internet-Draft          SR BGP EPE over L2 Bundle         January 2024


   Attributes TLVs [RFC9085]. Derived from IS-IS advertisements of L2
   Bundle [RFC8668], each L2 Bundle Member Attributes TLV identifies an
   L2 Bundle Member link, which in turn is associated with a parent L3
   link. The L3 link is described by the Link NLRI, and the L2 Bundle
   Member Attributes TLV is associated with the Link NLRI. The L2
   Bundle Member Attributes TLV MAY include sub-TLVs that describe
   attributes associated with the bundle member.

   In order to advertise Peer Adjacency Segments for L2 Bundle Member
   Links in BGP-LS, a BGP-LS Link NLRI is advertised to describe the
   parent L3 link to the BGP peer, which is similar with advertising a
   PeerAdj SID for the parent L3 link as specified in Section 5.2 of
   [RFC9086]. Then, multiple L2 Bundle Member Attributes TLVs are
   included in the Link Attribute TLVs associated with the parent L3
   link, each identifying an L2 Bundle member link. The L2 Bundle
   Member Attributes TLV MUST carry the following sub-TLVs:

   o SR-MPLS data plane: L2 Bundle Member PeerAdj SID TLV (Type-TBD,
      defined in Section 3.2) contains a Peer Adjacency Segment for the
      associated L2 Bundle member link.

   o SRv6 data plane: SRv6 End.X SID TLV (Type-1106) [RFC9514]
      contains a Peer Adjacency Segment for the associated L2 Bundle
      member link.

   Besides, the L2 Bundle Member Attributes TLV MAY also carry other
   link attributes describing the associated L2 Bundle member link,
   such as administrative group (color), link bandwidth, and link
   delay.

   When a BGP peer session is established over a Layer 2 interface
   bundle, an implementation MAY allocate one or more Peer Adjacency
   Segments for each member link and advertise them in BGP-LS,
   according to its local configuration and the behavior defined in
   this document. The inclusion of a L2 Bundle Member Attributes TLV
   implies that the identified link is a member of the L2 bundle and
   that the member link is operationally up. If any member link fails,
   an implementation MUST withdraw the L2 Bundle Member Attributes TLV
   in BGP-LS, along with the Peer Adjacency Segments for the failed
   member link.

3.2. MPLS-SR Data Plane: L2 Bundle Member PeerAdj SID TLV

   On the SR-MPLS data plane, L2 Bundle Member PeerAdj SID TLV is
   defined to advertise Peer Adjacency Segments for L2 Bundle member
   links. It has the following format:



Lin, et al.             Expires July 10, 2024                 [Page 5]

Internet-Draft          SR BGP EPE over L2 Bundle         January 2024


    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    Flags      |     Weight    |             Reserved          |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   SID/Label/Index (variable)                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   o Type: TBD.

   o Length: variable.  Valid values are either 7 or 8 based on
      whether the encoding is done as a SID Index or a label.

   o Flags: one octet of flags. Same as the Flags field of BGP Peering
      SIDs TLV, as described in Section 5 of [RFC9086].

   o Weight: 1 octet. The value represents the weight of the SID for
      the purpose of load balancing.

   o SID/Index/Label. According to the TLV length and the V- and L-
      Flag settings, it contains either:

        - A 3-octet local label where the 20 rightmost bits are used
          for encoding the label value. In this case, the V- and L-
          Flags MUST be SET.

        - A 4-octet index defining the offset in the Segment Routing
          Global Block (SRGB) [RFC8402] advertised by this router. In
          this case, the SRGB MUST be advertised using the extensions
          defined in [RFC9085].

3.3. SRv6 Data Plane: SRv6 End.X SID TLV

   On the SRv6 data plane, SRv6 End.X SID TLV (Type-1106) [RFC9514] can
   be used to advertise Peer Adjacency Segments for L2 Bundle member
   links.

4. Example

   Take the allocating and advertising of Peer Adjacency Segments on
   Node B in Figure 1 as an example.

   B allocates a PeerAdj SID for the Layer 2 interface bundle to peer
   C, along with a PeerAdj SID for each member link. B programs its
   forwarding table accordingly:


Lin, et al.             Expires July 10, 2024                 [Page 6]

Internet-Draft          SR BGP EPE over L2 Bundle         January 2024


   +===============================+====================+
   |          PeerAdj SID          | Outgoing Interface |
   +---------------+---------------+                    |
   | IF on SR-MPLS |  IF on SRv6   |                    |
   |   Data Plane  |  Data Plane   |                    |
   +===============+===============+====================+
   |     1010      |     A::A0     | L2 Bundle to C     |
   +---------------+---------------+--------------------+
   |     1011      |     A::A1     | Member link 1 to C |
   +---------------+---------------+--------------------+
   |     1012      |     A::A2     | Member link 2 to C |
   +---------------+---------------+--------------------+
   |     1013      |     A::A3     | Member link 3 to C |
   +---------------+---------------+--------------------+

   B signals the related BGP-LS NLRI to the BGP-EPE controller, which
   is described in the following.

   Descriptors:

   o Local Node Descriptors (B's router-ID, ASN-AS1)

   o Remote Node Descriptors (C's router-ID, ASN-AS2)

   o Link Descriptors (Link Local/Remote Identifiers describing the
      Layer 2 bundle, IPv4 or IPv6 Interface Address, IPv4 or IPv6
      Neighbor Address)

4.1. Link Attributes on SR-MPLS Data Plane

   Attributes:

   o PeerAdj SID TLV (Label-1010)

   o L2 Bundle Member Attribute TLV (Link Local Identifier describing
      the member link 1)

      * L2 Bundle Member PeerAdj SID TLV (Label-1011)

      * (Optional) Min/Max Unidirectional Link Delay TLV (Delay of
            member link 1)

   o L2 Bundle Member Attribute TLV (Link Local Identifier describing
      the member link 2)

      * L2 Bundle Member PeerAdj SID TLV (Label-1012)



Lin, et al.             Expires July 10, 2024                 [Page 7]

Internet-Draft          SR BGP EPE over L2 Bundle         January 2024


      * (Optional) Min/Max Unidirectional Link Delay TLV (Delay of
            member link 2)

   o L2 Bundle Member Attribute TLV (Link Local Identifier describing
      the member link 3)

      * L2 Bundle Member PeerAdj SID TLV (Label-1013)

      * (Optional) Min/Max Unidirectional Link Delay TLV (Delay of
            member link 3)

4.2. Link Attributes on SRv6 Data Plane

   Attributes:

   o SRv6 End.X SID TLV (SID-A::A0)

   o L2 Bundle Member Attribute TLV (Link Local Identifier describing
      the member link 1)

      * SRv6 End.X SID TLV (SID-A::A1)

      * (Optional) Min/Max Unidirectional Link Delay TLV (Delay of
            member link 1)

   o L2 Bundle Member Attribute TLV (Link Local Identifier describing
      the member link 2)

      * SRv6 End.X SID TLV (SID-A::A2)

      * (Optional) Min/Max Unidirectional Link Delay TLV (Delay of
            member link 2)

   o L2 Bundle Member Attribute TLV (Link Local Identifier describing
      the member link 3)

      * SRv6 End.X SID TLV (SID-A::A3)

      * (Optional) Min/Max Unidirectional Link Delay TLV (Delay of
            member link 3)

5. Considerations of Reusing Existing PeerAdj SID TLV

   The solution in Section 3 defines a new TLV to advertise Peer
   Adjacency Segment for L2 Bundle member links on SR-MPLS data plane.
   It may also be possible to reuse the PeerAdj SID TLV defined in
   [RFC9086]. In this way, the PeerAdj SID TLV will be extended to be
   included as a sub-TLV of the L2 Bundle Member Attributes TLV.

Lin, et al.             Expires July 10, 2024                 [Page 8]

Internet-Draft          SR BGP EPE over L2 Bundle         January 2024


6. Manageability Considerations

   The manageability considerations described in [RFC9552] and
   [RFC9086] also apply to this document.

   The operator MUST be provided with the options of configuring,
   enabling, and disabling the advertisement of Peer Adjacency Segment
   for L2 Bundle member links, as well as control of which information
   is advertised to which internal or external peer.

7. Security Considerations

   The security considerations described in [RFC9552] and [RFC9086]
   also apply to this document.

   This document does not introduce any new security consideration.

8. IANA Considerations

   This document defines a new BGP-LS Attribute TLV in the "BGP-LS Node
   Descriptor, Link Descriptor, Prefix Descriptor, and Attribute TLVs"
   registry.

   +================+==============================
   | TLV Code Point | Description                  |
   +================+==============================+
   | TBA            | L2 Bundle Member PeerAdj SID |
   +----------------+------------------------------+

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>.

   [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>.



Lin, et al.             Expires July 10, 2024                 [Page 9]

Internet-Draft          SR BGP EPE over L2 Bundle         January 2024


   [RFC9085] Previdi, S., Talaulikar, K., Ed., Filsfils, C., Gredler,
             H., and M. Chen, "Border Gateway Protocol - Link State
             (BGP-LS) Extensions for Segment Routing", RFC 9085, DOI
             10.17487/RFC9085, August 2021, <https://www.rfc-
             editor.org/info/rfc9085>.

   [RFC9086] Previdi, S., Talaulikar, K., Ed., Filsfils, C., Patel, K.,
             Ray, S., and J. Dong, "Border Gateway Protocol - Link
             State (BGP-LS) Extensions for Segment Routing BGP Egress
             Peer Engineering", RFC 9086, DOI 10.17487/RFC9086, August
             2021, <https://www.rfc-editor.org/info/rfc9086>.

   [RFC9514] Dawra, G., Filsfils, C., Talaulikar, K., Ed., Chen, M.,
             Bernier, D., and B. Decraene, "Border Gateway Protocol -
             Link State (BGP-LS) Extensions for Segment Routing over
             IPv6 (SRv6)", RFC 9514, DOI 10.17487/RFC9514, December
             2023, <https://www.rfc-editor.org/info/rfc9514>.

   [RFC9552] K. Talaulikar, "Distribution of Link-State and Traffic
             Engineering Information Using BGP", RFC 9552, DOI
             10.17487/RFC9552, December 2023, <https://www.rfc-
             editor.org/info/rfc9552>.

9.2. Informative References

   [IEEE802.1AX] IEEE, "IEEE Standard for Local and metropolitan area
             networks -- Link Aggregation", IEEE 802.1AX,
             <https://ieeexplore.ieee.org/document/7055197>.

   [RFC8668] Ginsberg, L., Ed., Bashandy, A., Filsfils, C., Nanduri,
             M., and E. Aries, "Advertising Layer 2 Bundle Member Link
             Attributes in IS-IS", RFC 8668, DOI 10.17487/RFC8668,
             December 2019, <https://www.rfc-editor.org/info/rfc8668>.

   [RFC9087] Filsfils, C., Ed., Previdi, S., Dawra, G., Ed., Aries, E.,
             and D. Afanasiev, "Segment Routing Centralized BGP Egress
             Peer Engineering", RFC 9087, DOI 10.17487/RFC9087, August
             2021, <https://www.rfc-editor.org/info/rfc9087>.

Acknowledgements

   The authors would like to thank Sasha Vainshtein for his review and
   comments of this document.






Lin, et al.             Expires July 10, 2024                [Page 10]

Internet-Draft          SR BGP EPE over L2 Bundle         January 2024


Authors' Addresses

   Changwang Lin
   New H3C Technologies
   China
   Email: linchangwang.04414@h3c.com


   Zhenqiang Li
   China Mobile
   China
   Email: lizhenqiang@chinamobile.com


   Ran Pang
   China Unicom
   China
   Email: pangran@chinaunicom.cn


   Mengxiao Chen
   New H3C Technologies
   China
   Email: chen.mengxiao@h3c.com
























Lin, et al.             Expires July 10, 2024                [Page 11]