Internet DRAFT - draft-chen-idr-bgp-ls-srv6

draft-chen-idr-bgp-ls-srv6







Interdomain Routing Working Group                                M. Chen
Internet-Draft                                                 S. Zhuang
Intended status: Standards Track                                  Huawei
Expires: April 23, 2018                                 October 20, 2017


           BGP Link-State Extensions for IPv6 Segment Routing
                     draft-chen-idr-bgp-ls-srv6-00

Abstract

   This document defines extensions to BGP link-state (BGP-LS) to carry
   the information of IPv6 Segment Routing (SRv6).

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

   This Internet-Draft will expire on April 23, 2018.

Copyright Notice

   Copyright (c) 2017 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



Chen & Zhuang            Expires April 23, 2018                 [Page 1]

Internet-Draft               BGP-LS for SRv6                October 2017


   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.  BGP-LS Extensions for SRv6  . . . . . . . . . . . . . . . . .   3
     2.1.  TLV and Sub-TLV Format  . . . . . . . . . . . . . . . . .   3
     2.2.  Common Attribute sub-TLVs . . . . . . . . . . . . . . . .   3
       2.2.1.  SRv6 Function sub-TLV . . . . . . . . . . . . . . . .   3
     2.3.  Node Attribute TLVs . . . . . . . . . . . . . . . . . . .   4
       2.3.1.  SRv6 Capability TLV . . . . . . . . . . . . . . . . .   4
       2.3.2.  SRv6 SID TLV  . . . . . . . . . . . . . . . . . . . .   8
     2.4.  Link Attribute TLVs . . . . . . . . . . . . . . . . . . .   8
       2.4.1.  P2P SRv6 x-SID TLV  . . . . . . . . . . . . . . . . .   9
       2.4.2.  LAN SRv6 X-SID TLV  . . . . . . . . . . . . . . . . .  10
   3.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  11
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .  11
   5.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  11
   6.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  11
     6.1.  Normative References  . . . . . . . . . . . . . . . . . .  11
     6.2.  Informative References  . . . . . . . . . . . . . . . . .  12
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  13

1.  Introduction

   Segment Routing (SR) [I-D.ietf-spring-segment-routing] is a source
   routed forwarding method that allows to directly encode forwarding
   instructions in each packet, hence it enables to steer traffic
   through a network without the per-flow states maintained in the
   transit nodes.  Segment Routing can be instantiated on MPLS data
   plane or IPv6 data plane.  The former is called SR-MPLS
   [I-D.ietf-spring-segment-routing-mpls], the latter is called SRv6 [I-
   D.filsfils-spring-srv6-network-programming][I-D.ietf-6man-segment-rou
   ting-header].  SR-MPLS leverages the MPLS label stack to construct
   the SR path, SRv6 uses the Segment Routing Header
   [I-D.ietf-spring-segment-routing-mpls] to construct SR path.

   ISIS extensions in support of SRv6 are defined
   [I-D.bashandy-isis-srv6-extensions].

   BGP-LS extensions for Segment Routing are defined
   [I-D.ietf-idr-bgp-ls-segment-routing-ext], it is mainly designed for
   SR-MPLS.

   This document defines extensions to BGP link-state (BGP-LS) [RFC7752]
   to carry the information of IPv6 Segment Routing (SRv6).



Chen & Zhuang            Expires April 23, 2018                 [Page 2]

Internet-Draft               BGP-LS for SRv6                October 2017


2.  BGP-LS Extensions for SRv6

   BGP-LS[RFC7752] defines Node NLRI, Link NLRI and Prefix NLRI, each
   NLRI has its own corresponding attribute which are referred to as
   Node Attribute, Link Attribute and Prefix Attribute.  These
   attributes are encoded as TLVs and/or sub-TLVs.

   This document defines new BGP-LS attribute TLVs and sub-TLVs that
   correspond to the IGP-SRv6 extensions.

2.1.  TLV and Sub-TLV Format

   To align with those existing BGP-LS TLV and sub-TLV definition, all
   TLVs and sub-TLVs defined in this document have the following format.

      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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |       TLV/sub-TLV Type        |            Length             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      ~                       Value (variable) ...                    ~
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Where:

   o  TLV/sub-TLV Type field is 2 octets in length.

   o  The Length filed is 2 octets in length as well, its value
      indicates the length (in octets) of the Value field.

   o  The Value filed is variable in length.

2.2.  Common Attribute sub-TLVs

   This section defines common attribute sub-TLVs that are used to
   describe the common attributes of a SRv6 SID, these sub-TLVs can be
   shared by all kind of SRv6 SID TLVs.

2.2.1.  SRv6 Function sub-TLV

   As defined [I-D.filsfils-spring-srv6-network-programming], an IPv6
   Segment Identifier is a 128-bit value.  A SRv6 SID is represented as
   LOC:FUNCT where LOC is the L most significant bits and FUNCT is the
   128-L least significant bits.  The LOC (location) part of the SID is
   routable and leads to the node which owns that SID, and the FUNCT
   (function) part of the SID is an opaque identification of a local
   function bound to the SID.




Chen & Zhuang            Expires April 23, 2018                 [Page 3]

Internet-Draft               BGP-LS for SRv6                October 2017


   The SRv6 Function sub-TLV is defined to describe the FUNCT part of a
   SRv6 SID.

   The SRv6 Function sub-TLV has the following format:

      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      |         Function              |    Reserved   |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Where:

   o  Type: 2 octets in length, and the value is TBD1.

   o  Length: 2 octets in length, and the value is 4.

   o  Flags: 1 octet in length.  As defined
      [I-D.bashandy-isis-srv6-extensions].

   o  Function: 2 octets in length.  As defined
      [I-D.bashandy-isis-srv6-extensions].

2.3.  Node Attribute TLVs

   This section defines the attribute TLVs that are only associated with
   the Node NLRI.

2.3.1.  SRv6 Capability TLV

   The SRv6 Capability TLV is defined to advertise SRv6 capabilities
   that a SRv6 node can support.

   The SRv6 Capability TLV has the following format:

      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             |         Reserved              |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Sub-TLVs                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Where:



Chen & Zhuang            Expires April 23, 2018                 [Page 4]

Internet-Draft               BGP-LS for SRv6                October 2017


   o  Type: 2 octets in length, and the value is TBD2.

   o  Length: 2 octets in length, and the value indicates the length (in
      octets) of the whole TLV (excluding the Type and Length fields).

   o  Flags: 2 octets in length, as defined
      [I-D.bashandy-isis-srv6-extensions].

   o  Sub-TLVs: variable in length.  This document defines 5 sub-TLVs in
      following sub-sections.

2.3.1.1.  Maximum SL sub-TLV

   The Maximum SL sub-TLV is defined to advertise the maximum value of
   the "SL" field [I-D.ietf-6man-segment-routing-header] in the SRH of a
   received packet before applying the function associated with a SID.
   It is carried as a sub-TLV of the SRv6 Capability TLV.

   The Maximum SL sub-TLV has the following format:

      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             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |     Max SL    |
      +-+-+-+-+-+-+-+-+

   Where:

   o  Type: 2 octets in length, and the value is TBD3.

   o  Length: 2 octets in length, and the value is 1.

   o  Max SL: 1 octets in length, as defined
      [I-D.bashandy-isis-srv6-extensions].

2.3.1.2.  Maximum End Pop SRH sub-TLV

   The Maximum End Pop SRH sub-TLV is defined to advertise the maximum
   number of SIDs in the top SRH in an SRH stack to which the router can
   apply "PSP" or USP" [I-D.filsfils-spring-srv6-network-programming]
   flavors.  It is carried as a sub-TLV of the SRv6 Capability TLV.

   The Maximum End Pop SRH sub-TLV has the following format:






Chen & Zhuang            Expires April 23, 2018                 [Page 5]

Internet-Draft               BGP-LS for SRv6                October 2017


      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             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |Max-End-Pop-SRH|
      +-+-+-+-+-+-+-+-+

   Where:

   o  Type: 2 octets in length, and the value is TBD4.

   o  Length: 2 octets in length, and the value is 1.

   o  Max-End-Pop-SRH: 1 octets in length, as defined
      [I-D.bashandy-isis-srv6-extensions].

2.3.1.3.  Maximum T.Insert SRH sub-TLV

   The Maximum T.Insert SRH sub-TLV is defined to advertise the maximum
   number of SIDs that can be inserted as part of the "T.insert"
   behavior [I-D.filsfils-spring-srv6-network-programming].  It is
   carried as a sub-TLV of the SRv6 Capability TLV.

   The Maximum T.Insert SRH sub-TLV has the following format:

      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             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |  Max-T.Insert |
      +-+-+-+-+-+-+-+-+

   Where:

   o  Type: 2 octets in length, and the value is TBD5.

   o  Length: 2 octets in length, and the value is 1.

   o  Max-T.Insert: 1 octets in length, as defined
      [I-D.bashandy-isis-srv6-extensions].

2.3.1.4.  Maximum T.Encap SRH sub-TLV

   The Maximum T.Encap SRH sub-TLV is defined to advertise the maximum
   number of SIDs that can be included as part of the "T.Encap" behavior




Chen & Zhuang            Expires April 23, 2018                 [Page 6]

Internet-Draft               BGP-LS for SRv6                October 2017


   [I-D.filsfils-spring-srv6-network-programming].  It is carried as a
   sub-TLV of the SRv6 Capability TLV.

   The Maximum T.Encap SRH sub-TLV has the following format:

      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             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |  Max-T.Encap  |
      +-+-+-+-+-+-+-+-+

   Where:

   o  Type: 2 octets in length, and the value is TBD6.

   o  Length: 2 octets in length, and the value is 1.

   o  Max-T.Encap: 1 octets in length, as defined
      [I-D.bashandy-isis-srv6-extensions].

2.3.1.5.  Maximum End D SRH sub-TLV

   The Maximum End D SRH sub-TLV is defined to advertise the maximum
   number of SIDs in an SRH when applying "End.DX6" and "End.DT6"
   functions.  It is carried as a sub-TLV of the SRv6 Capability TLV.

   The Maximum End D SRH sub-TLV has the following format:

      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             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   Max End D   |
      +-+-+-+-+-+-+-+-+

   Where:

   o  Type: 2 octets in length, and the value is TBD7.

   o  Length: 2 octets in length, and the value is 1.

   o  Max End D: 1 octets in length, as defined
      [I-D.bashandy-isis-srv6-extensions].





Chen & Zhuang            Expires April 23, 2018                 [Page 7]

Internet-Draft               BGP-LS for SRv6                October 2017


2.3.2.  SRv6 SID TLV

   The SRv6 SID TLV is defined to describe a SRv6 SID that is associated
   with a node.

   The SRv6 SID TLV has the following format:

      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      |   SID-size    |             Reserved          |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      ~                      SID (variable) . . .                     ~
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      ~            SRv6 Function Sub-TLVs (variable) . . .            ~
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Where:

   o  Type: 2 octets in length, and the value is TBD8.

   o  Length: 2 octets in length, and the value indicates the length (in
      octets) of the whole TLV (excluding the Type and Length fields).

   o  Flags: 1 octet in length.  As defined
      [I-D.bashandy-isis-srv6-extensions].

   o  SID-size: 1 octet in length.  Number of bits in the SID field.  It
      can have the values 1-128 and indicates the number of bits in the
      SID.

   o  SID: 1-16 octets.  This field encodes the advertised SRv6 SID.

   o  SRv6 Function Sub-TLVs: variable in length.  This field can carry
      one or more sub-TLVs.  Each sub-TLV specifies a function that
      associates with the SID.

2.4.  Link Attribute TLVs

   This section defines the attribute TLVs that are only associated with
   the Link NLRI.








Chen & Zhuang            Expires April 23, 2018                 [Page 8]

Internet-Draft               BGP-LS for SRv6                October 2017


2.4.1.  P2P SRv6 x-SID TLV

   The P2P SRv6 x-SID TLV is defined to describe a SRv6 SID that is
   associated with End.X and End.DX6
   [I-D.filsfils-spring-srv6-network-programming] functions over a point
   to point adjacency.

   The P2P SRv6 x-SID TLV has the following format:

      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      |   SID-size    |     Weight    |   Reserved    |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      ~                     SID (variable) . . .                      ~
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      ~             SRv6 Function Sub-TLVs (variable) . . .           ~
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Where:

   o  Type: 2 octets in length, and the value is TBD9.

   o  Length: 2 octets in length, and the value indicates the length (in
      octets) of the whole TLV (excluding the Type and Length fields).

   o  Flags: 1 octet in length.  As defined
      [I-D.bashandy-isis-srv6-extensions].

   o  SID-size: 1 octet in length.  Number of bits in the SID field.  It
      can have the values 1-128 and indicates the number of bits in the
      SID.

   o  Weight: 1 octet in length.  The value represents the weight of the
      Adj-SID for the purpose of load balancing.  The use of the weight
      is defined in [I-D.ietf-spring-segment-routing].

   o  SID: 1-16 octets.  This field encodes the advertised SRv6 SID.

   o  SRv6 Function Sub-TLVs: variable in length.  This field can carry
      one or more sub-TLVs.  Each sub-TLV specifies a function that
      associates with the SID.







Chen & Zhuang            Expires April 23, 2018                 [Page 9]

Internet-Draft               BGP-LS for SRv6                October 2017


2.4.2.  LAN SRv6 X-SID TLV

   This LAN SRv6 X-SID TLV is defined to describe a SRv6 SIDs associated
   with End.X and End.DX6 [I-D.filsfils-spring-srv6-network-programming]
   functions over a LAN adjacency.

   The LAN SRv6 X-SID TLV has the following format:

      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      |   SID-size    |     Weight    |   Reserved    |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |             OSPF Neighbor ID / IS-IS System-ID                |
      +                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                               |            Reserved           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      ~                     SID (variable) . . .                      ~
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      ~            SRv6 Function Sub-TLVs (variable) . . .            ~
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Where:

   o  Type: 2 octets in length, and the value is TBD10.

   o  Length: 2 octets in length, and the value indicates the length (in
      octets) of the whole TLV (excluding the Type and Length fields).

   o  Flags: 1 octet in length.  As defined
      [I-D.bashandy-isis-srv6-extensions].

   o  SID-size: 1 octet in length.  Number of bits in the SID field.  It
      can have the values 1-128 and indicates the number of bits in the
      SID.

   o  Weight: 1 octet in length.  The value represents the weight of the
      Adj-SID for the purpose of load balancing.  The use of the weight
      is defined in [I-D.ietf-spring-segment-routing].

   o  SID: 1-16 octets.  This field encodes the advertised SRv6 SID.

   o  SRv6 Function Sub-TLVs: variable in length.  This field can carry
      one or more sub-TLVs.  Each sub-TLV specifies a function that
      associates with the SID.




Chen & Zhuang            Expires April 23, 2018                [Page 10]

Internet-Draft               BGP-LS for SRv6                October 2017


3.  IANA Considerations

   IANA maintains a registry called "Border Gateway Protocol - Link
   State (BGP-LS) Parameters" with a sub-registry called "Node Anchor,
   Link Descriptor and Link Attribute TLVs".

   IANA is requested to assign the following TLV code points:

     +----------+--------------------------------------+---------------+
     | TLV Code |             Description              | Value defined |
     |  Point   |                                      |       in      |
     +----------+--------------------------------------+---------------+
     |   TBD1   |   SRv6 Function TLV                  | this document |
     |   TBD2   |   SRv6 Capability TLV                | this document |
     |   TBD3   |   Maximum SL sub-TLV                 | this document |
     |   TBD4   |   Maximum End Pop SRH sub-TLV        | this document |
     |   TBD5   |   Maximum T.Insert SRH sub-TLV       | this document |
     |   TBD6   |   Maximum T.Encap SRH sub-TLV        | this document |
     |   TBD7   |   Maximum End D SRH sub-TLV          | this document |
     |   TBD8   |   SRv6 SID TLV                       | this document |
     |   TBD9   |   P2P SRv6 x-SID TLV                 | this document |
     |   TBD10  |   LAN SRv6 X-SID TLV                 | this document |
     +----------+--------------------------------------+---------------+

4.  Security Considerations

   BGP security is discussed in [RFC4271], [RFC4272] and [RFC6952].

   Procedures and protocol extensions defined in this document do not
   affect the BGP security model.

5.  Acknowledgements

6.  References

6.1.  Normative References

   [I-D.bashandy-isis-srv6-extensions]
              Ginsberg, L., Bashandy, A., Filsfils, C., and B. Decraene,
              "IS-IS Extensions to Support Routing over IPv6 Dataplane",
              draft-bashandy-isis-srv6-extensions-01 (work in progress),
              September 2017.









Chen & Zhuang            Expires April 23, 2018                [Page 11]

Internet-Draft               BGP-LS for SRv6                October 2017


   [I-D.filsfils-spring-srv6-network-programming]
              Filsfils, C., Leddy, J., daniel.voyer@bell.ca, d.,
              daniel.bernier@bell.ca, d., Steinberg, D., Raszuk, R.,
              Matsushima, S., Lebrun, D., Decraene, B., Peirens, B.,
              Salsano, S., Naik, G., Elmalky, H., Jonnalagadda, P.,
              Sharif, M., Ayyangar, A., Mynam, S., Henderickx, W.,
              Bashandy, A., Raza, K., Dukes, D., Clad, F., and P.
              Camarillo, "SRv6 Network Programming", draft-filsfils-
              spring-srv6-network-programming-01 (work in progress),
              June 2017.

   [I-D.ietf-6man-segment-routing-header]
              Previdi, S., Filsfils, C., Raza, K., Leddy, J., Field, B.,
              daniel.voyer@bell.ca, d., daniel.bernier@bell.ca, d.,
              Matsushima, S., Leung, I., Linkova, J., Aries, E., Kosugi,
              T., Vyncke, E., Lebrun, D., Steinberg, D., and R. Raszuk,
              "IPv6 Segment Routing Header (SRH)", draft-ietf-6man-
              segment-routing-header-07 (work in progress), July 2017.

   [I-D.ietf-idr-bgp-ls-segment-routing-ext]
              Previdi, S., Psenak, P., Filsfils, C., Gredler, H., and M.
              Chen, "BGP Link-State extensions for Segment Routing",
              draft-ietf-idr-bgp-ls-segment-routing-ext-03 (work in
              progress), July 2017.

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

6.2.  Informative References

   [I-D.ietf-spring-segment-routing]
              Filsfils, C., Previdi, S., Decraene, B., Litkowski, S.,
              and R. Shakir, "Segment Routing Architecture", draft-ietf-
              spring-segment-routing-12 (work in progress), June 2017.

   [I-D.ietf-spring-segment-routing-mpls]
              Filsfils, C., Previdi, S., Bashandy, A., Decraene, B.,
              Litkowski, S., and R. Shakir, "Segment Routing with MPLS
              data plane", draft-ietf-spring-segment-routing-mpls-10
              (work in progress), June 2017.

   [RFC4271]  Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A
              Border Gateway Protocol 4 (BGP-4)", RFC 4271,
              DOI 10.17487/RFC4271, January 2006,
              <https://www.rfc-editor.org/info/rfc4271>.




Chen & Zhuang            Expires April 23, 2018                [Page 12]

Internet-Draft               BGP-LS for SRv6                October 2017


   [RFC4272]  Murphy, S., "BGP Security Vulnerabilities Analysis",
              RFC 4272, DOI 10.17487/RFC4272, January 2006,
              <https://www.rfc-editor.org/info/rfc4272>.

   [RFC6952]  Jethanandani, M., Patel, K., and L. Zheng, "Analysis of
              BGP, LDP, PCEP, and MSDP Issues According to the Keying
              and Authentication for Routing Protocols (KARP) Design
              Guide", RFC 6952, DOI 10.17487/RFC6952, May 2013,
              <https://www.rfc-editor.org/info/rfc6952>.

   [RFC7752]  Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and
              S. Ray, "North-Bound Distribution of Link-State and
              Traffic Engineering (TE) Information Using BGP", RFC 7752,
              DOI 10.17487/RFC7752, March 2016,
              <https://www.rfc-editor.org/info/rfc7752>.

Authors' Addresses

   Mach(Guoyi) Chen
   Huawei

   Email: mach.chen@huawei.com


   Shunwan Zhuang
   Huawei

   Email: zhuangshunwan@huawei.com























Chen & Zhuang            Expires April 23, 2018                [Page 13]