LSR Working Group                                                J. Dong
Internet-Draft                                                     Z. Hu
Intended status: Standards Track                     Huawei Technologies
Expires: April 27, 2022                                 October 24, 2021


      Advertising SRv6 SIDs for Layer 2 Bundle Member Links in IGP
                    draft-dong-lsr-l2bundle-srv6-01

Abstract

   There are deployments where the Layer-3 interface on which IGP
   operates is a Layer-2 interface bundle.  Existing IGP advertisements
   only support advertising link attributes of the Layer-3 interface.
   If entities external to IGP wish to control traffic flows on the
   individual physical links that comprise the Layer-2 interface bundle,
   link attribute information about the bundle members is advertised by
   IGP extensions for Layer-2 (L2) bundle.

   When Segment Routing over IPv6 (SRv6) is used with Layer-2 interface
   bundle to control traffic flows on the individual member links, the
   SRv6 SIDs which represent the Layer 2 member links of the L2 bundle
   needs to be advertised in IGP.

   This document proposes the IGP extensions to advertise the SRv6 SIDs
   of the Layer 2 (L2) bundle member links.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [RFC2119].

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




Dong & Hu                Expires April 27, 2022                 [Page 1]


Internet-Draft           IGP L2 bundle for SRv6             October 2021


   This Internet-Draft will expire on April 27, 2022.

Copyright Notice

   Copyright (c) 2021 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 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
   2.  Requirements Language . . . . . . . . . . . . . . . . . . . .   3
   3.  SRv6 Function for L2 Bundle Member Links  . . . . . . . . . .   3
   4.  Advertising SRv6 SIDs for L2 Bundle Members . . . . . . . . .   3
     4.1.  SRv6 SIDs Encodings for IS-IS L2 Bundle . . . . . . . . .   3
       4.1.1.  L2 Bundle Member SRv6 End.XU SID Sub-TLV  . . . . . .   3
       4.1.2.  L2 Bundle Member SRv6 LAN End.XU SID Sub-TLV  . . . .   5
     4.2.  SRv6 SIDs Encodings for OSPF L2 Bundle  . . . . . . . . .   6
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   6
   7.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   7
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   7
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .   7
     8.2.  Informative References  . . . . . . . . . . . . . . . . .   8
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   There are deployments where the Layer-3 interface on which an IGP
   adjacency is established is a Layer-2 interface bundle, for instance,
   a Link Aggregation Group (LAG) [IEEE802.1AX].  This reduces the
   number of adjacencies that need to be maintained by the routing
   protocol in cases where there are parallel links between the
   neighbors.  Entities external to IS-IS such as Path Computation
   Elements (PCEs) [RFC4655] may wish to control traffic flows on
   individual members of the underlying Layer-2 bundle.  In order to do
   so, link attribute information about individual bundle members is
   required.




Dong & Hu                Expires April 27, 2022                 [Page 2]


Internet-Draft           IGP L2 bundle for SRv6             October 2021


   [RFC8668] and [I-D.ietf-lsr-ospf-l2bundles] specify the IGP
   extensions to advertise link attribute information for each of the L2
   Bundle members which comprise the Layer-3 interface, in which the
   encoding and advertisement of SR-MPLS adjacency SIDs of each bundle
   member link is defined.  When SRv6 is used with Layer-2 interface
   bundle, to control traffic flows on the individual member links, the
   SRv6 SIDs which represent the Layer-2 member links of the L2 bundle
   needs to be advertised.

   This document proposes the IGP extensions to advertise the SRv6 SIDs
   of the Layer-2 (L2) bundle member links.

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
   BCP14 RFC 2119 [RFC2119] RFC 8174 [RFC8174] when, and only when, they
   appear in all capitals, as shown here.

3.  SRv6 Function for L2 Bundle Member Links

   As defined in [RFC8986], the SRv6 End.X behavior means "Endpoint with
   cross-connect to an array of layer-3 adjacencies".  An SRv6 SID
   associated with a Layer 2 bundle member link of an L3 adjacency is
   considered a variant of the End.X behavior.  In order to distinguish
   it from the SIDs associated with a L3 adjacency, it is considered
   that a different type of SRv6 function needs to be used.

   [I-D.dong-spring-srv6-inter-layer-programming] defines a new End.XU
   function which means "Endpoint with cross-connect to an underlay
   interface", this function can be used for the L2 bundle member links.

4.  Advertising SRv6 SIDs for L2 Bundle Members

4.1.  SRv6 SIDs Encodings for IS-IS L2 Bundle

   This section defines the IS-IS sub-TLVs to advertise SRv6 SIDs for L2
   Bundle Members.  Following the encoding mechanism used in [RFC8668]
   for the advertisement of SR-MPLS adj-SIDs for L2 Bundle Members, this
   allows the advertisement of a set of SRv6 SIDs (one per L2 Bundle
   Member) in a single sub-TLV.

4.1.1.  L2 Bundle Member SRv6 End.XU SID Sub-TLV

   [I-D.ietf-lsr-isis-srv6-extensions] defines the SRv6 End.X SID sub-
   TLV to advertise an SRv6 SID associated with a point to point
   adjacency.  This document defines a new sub-TLV of called "L2 Bundle



Dong & Hu                Expires April 27, 2022                 [Page 3]


Internet-Draft           IGP L2 bundle for SRv6             October 2021


   Member SRv6 End.XU SIDs" to advertise the SRv6 End.XU SIDs for the L2
   Bundle Members.  This sub-TLV is allowed to be carried in TLV 25 "L2
   Bundle Member Attributes" only.  The format of the sub-TLV is as
   below:

   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    |   Algorithm   |    Weight     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Endpoint Behavior     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | SID #1 (128 bits)                                             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | SID #2 (128 bits)                                             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | ...                                                           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | SID #n (128 bits)                                             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Sub-sub-tlv-len|         Sub-sub-TLVs (variable) . . .         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Where:

   o  Type: TBA.

   o  Length: Variable.

   o  Flags: 1 octet.  The format is the same as the Flags field in the
      SRv6 End.X SID sub-TLV as defined in
      [I-D.ietf-lsr-isis-srv6-extensions].

   o  Algorithm: 1 octet.  The algorithm values are defined in the IGP
      Algorithm Type registry.

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

   o  Endpoint Behavior: 2 octets.  It SHOULD be set to the Endpoint
      functions as defined in
      [I-D.dong-spring-srv6-inter-layer-programming].

   o  SIDs.  One or multiple 16-octet SRv6 SIDs.  The number of the SIDs
      is determined by the "Number of L2 Bundle Member Descriptors"
      field as defined in [RFC8668].



Dong & Hu                Expires April 27, 2022                 [Page 4]


Internet-Draft           IGP L2 bundle for SRv6             October 2021


   o  Sub-sub-tlv-length: 1 octet.  Number of octets used by sub-sub-
      TLVs.

4.1.2.  L2 Bundle Member SRv6 LAN End.XU SID Sub-TLV

   [I-D.ietf-lsr-isis-srv6-extensions] defines the SRv6 LAN End.X SID
   sub-TLV to advertise an SRv6 SID associated with a LAN adjacency.
   This document defines a new sub-TLV called "L2 Bundle Member SRv6 LAN
   End.XU SIDs" to advertise the SRv6 LAN End.XU SIDs for the L2 Bundle
   Members.  The format of the sub-TLV is as below:

   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    |                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               |
   |             Neighbor System-ID (ID length octets)             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |      Flags    |   Algorithm   |    Weight     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Endpoint Behavior     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | SID #1 (128 bits)                                             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | SID #2 (128 bits)                                             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | ...                                                           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | SID #n (128 bits)                                             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Sub-sub-tlv-len|         Sub-sub-TLVs (variable) . . .         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Where:

   o  Type: TBA.

   o  Length: Variable.

   o  Neighbor System-ID: IS-IS System-ID of length "ID Length" as
      defined in [ISO10589].

   o  Flags: 1 octet, the format is the same as the Flags field in the
      SRv6 End.X SID sub-TLV as defined in
      [I-D.ietf-lsr-isis-srv6-extensions].

   o  Algorithm: 1 octet.  The algorithm values are defined in the IGP
      Algorithm Type registry.



Dong & Hu                Expires April 27, 2022                 [Page 5]


Internet-Draft           IGP L2 bundle for SRv6             October 2021


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

   o  Endpoint Behavior: 2 octets.  It SHOULD be set to the Endpoint
      functions as defined in
      [I-D.dong-spring-srv6-inter-layer-programming].

   o  SIDs.  One or multiple 16-octet SRv6 SIDs.  The number of the SIDs
      is determined by the "Number of L2 Bundle Member Descriptors"
      field as defined in [RFC8668].

   o  Sub-sub-tlv-length: 1 octet.  Number of octets used by sub-sub-
      TLVs.

4.2.  SRv6 SIDs Encodings for OSPF L2 Bundle

   This section defines the mechanism to advertise SRv6 SIDs for L2
   Bundle Members.  In [I-D.ietf-lsr-ospf-l2bundles], the SR-MPLS
   Adjacency SID sub-TLVs for the L3 adjacency is reused for the
   advertisement of Adjacency SIDs of L2 Bundle Members.  For SRv6 data
   plane , the SRv6 End.X SID sub-TLV and SRv6 LAN End.X SID Sub-TLV as
   defined in [I-D.ietf-lsr-ospfv3-srv6-extensions] are reused for the
   advertisement of SRv6 End.XU SIDs of L2 Bundle Members, the Endpoint
   Behavior in the sub-TLV SHOULD be set to the Endpoint functions as
   defined in [I-D.dong-spring-srv6-inter-layer-programming].

5.  IANA Considerations

   IANA is requested to assign two new code points from the IS-IS "Sub-
   TLVs for TLVs 22, 23, 25, 141, 222, and 223" registry.

    +------+--------------------------+----+----+----+-----+-----+-----+
    | Type | Description              | 22 | 23 | 25 | 141 | 222 | 223 |
    +======+==========================+====+====+====+=====+=====+=====+
    |  TBD | L2 Bundle Member SRv6    | n  | n  | y  |  n  |  n  |  n  |
    |      | End.XU SID               |    |    |    |     |     |     |
    +------+--------------------------+----+----+----+-----+-----+-----+
    |  TBD | L2 Bundle Member SRv6    | n  | n  | y  |  n  |  n  |  n  |
    |      | LAN End.XU SID           |    |    |    |     |     |     |
    +------+--------------------------+----+----+----+-----+-----+-----+

6.  Security Considerations

   The security considerations in [RFC8668] and
   [I-D.ietf-lsr-ospf-l2bundles] apply.  This document introduces no
   additional security vulnerabilities to IS-IS and OSPF.





Dong & Hu                Expires April 27, 2022                 [Page 6]


Internet-Draft           IGP L2 bundle for SRv6             October 2021


7.  Acknowledgements

   The authors would like to thank Zhenbin Li for the review and
   discussion of this document.

8.  References

8.1.  Normative References

   [I-D.ietf-lsr-isis-srv6-extensions]
              Psenak, P., Filsfils, C., Bashandy, A., Decraene, B., and
              Z. Hu, "IS-IS Extensions to Support Segment Routing over
              IPv6 Dataplane", draft-ietf-lsr-isis-srv6-extensions-18
              (work in progress), October 2021.

   [I-D.ietf-lsr-ospf-l2bundles]
              Talaulikar, K. and P. Psenak, "Advertising L2 Bundle
              Member Link Attributes in OSPF", draft-ietf-lsr-ospf-
              l2bundles-02 (work in progress), October 2021.

   [I-D.ietf-lsr-ospfv3-srv6-extensions]
              Li, Z., Hu, Z., Cheng, D., Talaulikar, K., and P. Psenak,
              "OSPFv3 Extensions for SRv6", draft-ietf-lsr-
              ospfv3-srv6-extensions-02 (work in progress), February
              2021.

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

   [ISO10589]
              ISO, "Information technology -- Telecommunications and
              information exchange between systems -- Intermediate
              System to Intermediate System intra-domain routing
              information exchange protocol for use in conjunction with
              the protocol for providing the connectionless-mode network
              service (ISO 8473)", November 2002,
              <https://ieeexplore.ieee.org/document/7055197>.

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



Dong & Hu                Expires April 27, 2022                 [Page 7]


Internet-Draft           IGP L2 bundle for SRv6             October 2021


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

8.2.  Informative References

   [I-D.dong-spring-srv6-inter-layer-programming]
              Dong, J. and Z. Du, "SRv6 for Inter-Layer Network
              Programming", draft-dong-spring-srv6-inter-layer-
              programming-02 (work in progress), October 2021.

   [RFC4655]  Farrel, A., Vasseur, J., and J. Ash, "A Path Computation
              Element (PCE)-Based Architecture", RFC 4655,
              DOI 10.17487/RFC4655, August 2006,
              <https://www.rfc-editor.org/info/rfc4655>.

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

Authors' Addresses

   Jie Dong
   Huawei Technologies
   Huawei Campus, No. 156 Beiqing Road
   Beijing  100095
   China

   Email: jie.dong@huawei.com


   Zhibo Hu
   Huawei Technologies
   Huawei Campus, No. 156 Beiqing Road
   Beijing  100095
   China

   Email: huzhibo@huawei.com










Dong & Hu                Expires April 27, 2022                 [Page 8]