< draft-ietf-idr-bgpls-srv6-ext-00.txt   draft-ietf-idr-bgpls-srv6-ext-01.txt >
Inter-Domain Routing G. Dawra, Ed. Inter-Domain Routing G. Dawra, Ed.
Internet-Draft LinkedIn Internet-Draft LinkedIn
Intended status: Standards Track C. Filsfils Intended status: Standards Track C. Filsfils
Expires: December 2, 2019 K. Talaulikar, Ed. Expires: January 8, 2020 K. Talaulikar, Ed.
Cisco Systems Cisco Systems
M. Chen M. Chen
Huawei Huawei
D. Bernier D. Bernier
Bell Canada Bell Canada
B. Decraene B. Decraene
Orange Orange
May 31, 2019 July 7, 2019
BGP Link State Extensions for SRv6 BGP Link State Extensions for SRv6
draft-ietf-idr-bgpls-srv6-ext-00 draft-ietf-idr-bgpls-srv6-ext-01
Abstract Abstract
Segment Routing IPv6 (SRv6) allows for a flexible definition of end- Segment Routing IPv6 (SRv6) allows for a flexible definition of end-
to-end paths within various topologies by encoding paths as sequences to-end paths within various topologies by encoding paths as sequences
of topological or functional sub-paths, called "segments". These of topological or functional sub-paths, called "segments". These
segments are advertised by the various protocols such as BGP, ISIS segments are advertised by the various protocols such as BGP, ISIS
and OSPFv3. and OSPFv3.
BGP Link-state (BGP-LS) address-family solution for SRv6 is similar BGP Link-state (BGP-LS) address-family solution for SRv6 is similar
skipping to change at page 2, line 10 skipping to change at page 2, line 10
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on December 2, 2019. This Internet-Draft will expire on January 8, 2020.
Copyright Notice Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the Copyright (c) 2019 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 45 skipping to change at page 2, line 45
4.1. SRv6 End.X SID TLV . . . . . . . . . . . . . . . . . . . 7 4.1. SRv6 End.X SID TLV . . . . . . . . . . . . . . . . . . . 7
4.2. SRv6 LAN End.X SID TLV . . . . . . . . . . . . . . . . . 9 4.2. SRv6 LAN End.X SID TLV . . . . . . . . . . . . . . . . . 9
4.3. SRv6 Link MSD Types . . . . . . . . . . . . . . . . . . . 11 4.3. SRv6 Link MSD Types . . . . . . . . . . . . . . . . . . . 11
5. SRv6 Prefix Attributes . . . . . . . . . . . . . . . . . . . 11 5. SRv6 Prefix Attributes . . . . . . . . . . . . . . . . . . . 11
5.1. SRv6 Locator TLV . . . . . . . . . . . . . . . . . . . . 11 5.1. SRv6 Locator TLV . . . . . . . . . . . . . . . . . . . . 11
6. SRv6 SID NLRI . . . . . . . . . . . . . . . . . . . . . . . . 13 6. SRv6 SID NLRI . . . . . . . . . . . . . . . . . . . . . . . . 13
6.1. SRv6 SID Information TLV . . . . . . . . . . . . . . . . 15 6.1. SRv6 SID Information TLV . . . . . . . . . . . . . . . . 15
7. SRv6 SID Attributes . . . . . . . . . . . . . . . . . . . . . 15 7. SRv6 SID Attributes . . . . . . . . . . . . . . . . . . . . . 15
7.1. SRv6 Endpoint Function TLV . . . . . . . . . . . . . . . 15 7.1. SRv6 Endpoint Function TLV . . . . . . . . . . . . . . . 15
7.2. SRv6 BGP Peer Node SID TLV . . . . . . . . . . . . . . . 16 7.2. SRv6 BGP Peer Node SID TLV . . . . . . . . . . . . . . . 16
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 18 7.3. SRv6 SID Structure TLV . . . . . . . . . . . . . . . . . 18
8.1. BGP-LS NLRI-Types . . . . . . . . . . . . . . . . . . . . 18 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19
8.2. BGP-LS TLVs . . . . . . . . . . . . . . . . . . . . . . . 18 8.1. BGP-LS NLRI-Types . . . . . . . . . . . . . . . . . . . . 19
8.2. BGP-LS TLVs . . . . . . . . . . . . . . . . . . . . . . . 19
9. Manageability Considerations . . . . . . . . . . . . . . . . 19 9. Manageability Considerations . . . . . . . . . . . . . . . . 19
10. Operational Considerations . . . . . . . . . . . . . . . . . 19 10. Operational Considerations . . . . . . . . . . . . . . . . . 20
10.1. Operations . . . . . . . . . . . . . . . . . . . . . . . 19 10.1. Operations . . . . . . . . . . . . . . . . . . . . . . . 20
11. Security Considerations . . . . . . . . . . . . . . . . . . . 19 11. Security Considerations . . . . . . . . . . . . . . . . . . . 20
12. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 19 12. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 20
13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 20 13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 20
14. References . . . . . . . . . . . . . . . . . . . . . . . . . 20 14. References . . . . . . . . . . . . . . . . . . . . . . . . . 21
14.1. Normative References . . . . . . . . . . . . . . . . . . 20 14.1. Normative References . . . . . . . . . . . . . . . . . . 21
14.2. Informative References . . . . . . . . . . . . . . . . . 22 14.2. Informative References . . . . . . . . . . . . . . . . . 22
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 23
1. Introduction 1. Introduction
SRv6 refers to Segment Routing instantiated on the IPv6 dataplane SRv6 refers to Segment Routing instantiated on the IPv6 dataplane
[RFC8402]. Segment Identifier (SID) is often used as a shorter [RFC8402]. Segment Identifier (SID) is often used as a shorter
reference for "SRv6 Segment". reference for "SRv6 Segment".
The network programming paradigm The network programming paradigm
[I-D.filsfils-spring-srv6-network-programming] is central to SRv6. [I-D.ietf-spring-srv6-network-programming] is central to SRv6. It
It describes how different functions can be bound to their SIDs and describes how different functions can be bound to their SIDs and how
how a network program can be expressed as a combination of SIDs. a network program can be expressed as a combination of SIDs.
An SRv6-capable node N maintains a "My SID Table" (refer An SRv6-capable node N maintains a "My SID Table" (refer
[I-D.filsfils-spring-srv6-network-programming]). This table contains [I-D.ietf-spring-srv6-network-programming]). This table contains all
all the SRv6 segments explicitly instantiated at node N. the SRv6 segments explicitly instantiated at node N.
The IS-IS [I-D.bashandy-isis-srv6-extensions] and OSPFv3 The IS-IS [I-D.ietf-lsr-isis-srv6-extensions] and OSPFv3
[I-D.li-ospf-ospfv3-srv6-extensions] link-state routing protocols [I-D.li-ospf-ospfv3-srv6-extensions] link-state routing protocols
have been extended to advertise some of these SRv6 SIDs and have been extended to advertise some of these SRv6 SIDs and
SRv6-related information. BGP ([I-D.dawra-idr-srv6-vpn]) has been SRv6-related information. BGP ([I-D.dawra-bess-srv6-services]) has
extended to advertise some of these SRv6 SIDs for VPN services. been extended to advertise some of these SRv6 SIDs for VPN services.
Certain other SRv6 SIDs may be instantiated on a node via other Certain other SRv6 SIDs may be instantiated on a node via other
mechanisms for topological or service functionalities. mechanisms for topological or service functionalities.
The advertisement of SR related information along with the topology The advertisement of SR related information along with the topology
for the MPLS dataplane instantiation is specified in for the MPLS dataplane instantiation is specified in
[I-D.ietf-idr-bgp-ls-segment-routing-ext] and for the BGP Egress Peer [I-D.ietf-idr-bgp-ls-segment-routing-ext] and for the BGP Egress Peer
Engineering (EPE) is specified in Engineering (EPE) is specified in
[I-D.ietf-idr-bgpls-segment-routing-epe]. On the similar lines, [I-D.ietf-idr-bgpls-segment-routing-epe]. On the similar lines,
introducing the SRv6 related information in BGP-LS allows it's introducing the SRv6 related information in BGP-LS allows it's
consumer applications that require topological visibility to also consumer applications that require topological visibility to also
skipping to change at page 5, line 14 skipping to change at page 5, line 14
o The endpoint function of the SRv6 SID is advertised via a new SRv6 o The endpoint function of the SRv6 SID is advertised via a new SRv6
Endpoint Function TLV Endpoint Function TLV
o The BGP EPE Peer Node and Peer Set SID context is advertised via a o The BGP EPE Peer Node and Peer Set SID context is advertised via a
new SRv6 BGP EPE Peer Node SID TLV new SRv6 BGP EPE Peer Node SID TLV
When the BGP-LS router is advertising topology information that it When the BGP-LS router is advertising topology information that it
sources from the underlying link-state routing protocol, then it maps sources from the underlying link-state routing protocol, then it maps
the corresponding SRv6 information from the SRv6 extensions for IS-IS the corresponding SRv6 information from the SRv6 extensions for IS-IS
[I-D.bashandy-isis-srv6-extensions] and OSPFv3 [I-D.ietf-lsr-isis-srv6-extensions] and OSPFv3
[I-D.li-ospf-ospfv3-srv6-extensions] protocols to their BGP-LS TLVs/ [I-D.li-ospf-ospfv3-srv6-extensions] protocols to their BGP-LS TLVs/
sub-TLVs for all SRv6 capable nodes in that routing protocol domain. sub-TLVs for all SRv6 capable nodes in that routing protocol domain.
When the BGP-LS router is advertising topology information from the When the BGP-LS router is advertising topology information from the
BGP routing protocol [I-D.ietf-idr-bgpls-segment-routing-epe], then BGP routing protocol [I-D.ietf-idr-bgpls-segment-routing-epe], then
it advertises the SRv6 information from the local node alone (e.g. it advertises the SRv6 information from the local node alone (e.g.
BGP EPE topology information or in the case of a data center network BGP EPE topology information or in the case of a data center network
running BGP as the only routing protocol). running BGP as the only routing protocol).
Subsequent sections of this document specify the encoding of the Subsequent sections of this document specify the encoding of the
newly defined extensions. newly defined extensions.
skipping to change at page 6, line 32 skipping to change at page 6, line 32
o Reserved: 2 octet that SHOULD be set to 0 and MUST be ignored on o Reserved: 2 octet that SHOULD be set to 0 and MUST be ignored on
receipt. receipt.
3.2. SRv6 Node MSD Types 3.2. SRv6 Node MSD Types
The Node MSD TLV [I-D.ietf-idr-bgp-ls-segment-routing-msd] of the The Node MSD TLV [I-D.ietf-idr-bgp-ls-segment-routing-msd] of the
BGP-LS Attribute of the Node NLRI is also used to advertise the BGP-LS Attribute of the Node NLRI is also used to advertise the
limits and the supported Segment Routing Header (SRH) limits and the supported Segment Routing Header (SRH)
[I-D.ietf-6man-segment-routing-header] operations supported by the [I-D.ietf-6man-segment-routing-header] operations supported by the
SRv6 capable node. The SRv6 MSD Types specified in SRv6 capable node. The SRv6 MSD Types specified in
[I-D.bashandy-isis-srv6-extensions] are also used with the BGP-LS [I-D.ietf-lsr-isis-srv6-extensions] are also used with the BGP-LS
Node MSD TLV as these codepoints are shared between IS-IS, OSPF and Node MSD TLV as these codepoints are shared between IS-IS, OSPF and
BGP-LS protocols. The description and semantics of these new MSD BGP-LS protocols. The description and semantics of these new MSD
types for BGP-LS are identical as specified types for BGP-LS are identical as specified
[I-D.bashandy-isis-srv6-extensions] and summarized in the table [I-D.ietf-lsr-isis-srv6-extensions] and summarized in the table
below: below:
+----------+------------------------------+ +----------+------------------------------+
| MSD Type | Description | | MSD Type | Description |
+----------+------------------------------+ +----------+------------------------------+
| TBD | Maximum Segments Left | | TBD | Maximum Segments Left |
| TBD | Maximum End Pop | | TBD | Maximum End Pop |
| TBD | Maximum T.Insert | | TBD | Maximum T.Insert |
| TBD | Maximum T.Encaps | | TBD | Maximum T.Encaps |
| TBD | Maximum End D | | TBD | Maximum End D |
skipping to change at page 8, line 14 skipping to change at page 8, line 14
Where: Where:
Type: 2 octet field with value TBD, see Section 8. Type: 2 octet field with value TBD, see Section 8.
Length: 2 octet field with the total length of the value portion Length: 2 octet field with the total length of the value portion
of the TLV. of the TLV.
Function Code: 2 octet field. The Endpoint Function code point Function Code: 2 octet field. The Endpoint Function code point
for this SRv6 SID as defined in for this SRv6 SID as defined in
[I-D.filsfils-spring-srv6-network-programming]. [I-D.ietf-spring-srv6-network-programming].
Flags: 1 octet of flags with the following definition: Flags: 1 octet of flags with the following definition:
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
|B|S|P| Rsvd | |B|S|P| Rsvd |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Figure 5: SRv6 End.X SID TLV Flags Format Figure 5: SRv6 End.X SID TLV Flags Format
skipping to change at page 10, line 10 skipping to change at page 10, line 10
Where: Where:
o Type: 2 octet field with value TBD in case of IS-IS and TBD in o Type: 2 octet field with value TBD in case of IS-IS and TBD in
case of OSPFv3, see Section 8. case of OSPFv3, see Section 8.
o Length: 2 octet field with the total length of the value portion o Length: 2 octet field with the total length of the value portion
of the TLV. of the TLV.
o Function Code: 2 octet field. The Endpoint Function code point o Function Code: 2 octet field. The Endpoint Function code point
for this SRv6 SID as defined in for this SRv6 SID as defined in
[I-D.filsfils-spring-srv6-network-programming]. [I-D.ietf-spring-srv6-network-programming].
o Flags: 1 octet of flags with the following definition: o Flags: 1 octet of flags with the following definition:
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
|B|S|P| Rsvd | |B|S|P| Rsvd |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Figure 7: SRv6 LAN End.X SID TLV Flags Format Figure 7: SRv6 LAN End.X SID TLV Flags Format
skipping to change at page 11, line 15 skipping to change at page 11, line 15
o Sub-TLVs : currently none defined. Used to advertise sub-TLVs o Sub-TLVs : currently none defined. Used to advertise sub-TLVs
that provide additional attributes for the given SRv6 LAN End.X that provide additional attributes for the given SRv6 LAN End.X
SID. SID.
4.3. SRv6 Link MSD Types 4.3. SRv6 Link MSD Types
The Link MSD TLV [I-D.ietf-idr-bgp-ls-segment-routing-msd] of the The Link MSD TLV [I-D.ietf-idr-bgp-ls-segment-routing-msd] of the
BGP-LS Attribute of the Link NLRI is also used to advertise the BGP-LS Attribute of the Link NLRI is also used to advertise the
limits and the supported Segment Routing Header (SRH) operations limits and the supported Segment Routing Header (SRH) operations
supported on the specific link by the SRv6 capable node. The SRv6 supported on the specific link by the SRv6 capable node. The SRv6
MSD Types specified in [I-D.bashandy-isis-srv6-extensions] are also MSD Types specified in [I-D.ietf-lsr-isis-srv6-extensions] are also
used with the BGP-LS Link MSD TLV as these codepoints are shared used with the BGP-LS Link MSD TLV as these codepoints are shared
between IS-IS, OSPF and BGP-LS protocols. The description and between IS-IS, OSPF and BGP-LS protocols. The description and
semantics of these new MSD types for BGP-LS are identical as semantics of these new MSD types for BGP-LS are identical as
specified [I-D.bashandy-isis-srv6-extensions] and summarized in the specified [I-D.ietf-lsr-isis-srv6-extensions] and summarized in the
table below: table below:
+----------+------------------------------+ +----------+------------------------------+
| MSD Type | Description | | MSD Type | Description |
+----------+------------------------------+ +----------+------------------------------+
| TBD | Maximum Segments Left | | TBD | Maximum Segments Left |
| TBD | Maximum End Pop | | TBD | Maximum End Pop |
| TBD | Maximum T.Insert | | TBD | Maximum T.Insert |
| TBD | Maximum T.Encaps | | TBD | Maximum T.Encaps |
| TBD | Maximum End D | | TBD | Maximum End D |
skipping to change at page 11, line 45 skipping to change at page 11, line 45
value. value.
5. SRv6 Prefix Attributes 5. SRv6 Prefix Attributes
SRv6 attributes with an IPv6 prefix are advertised using the new BGP- SRv6 attributes with an IPv6 prefix are advertised using the new BGP-
LS Attribute TLVs defined in this section and associated with the LS Attribute TLVs defined in this section and associated with the
BGP-LS Prefix NLRI. BGP-LS Prefix NLRI.
5.1. SRv6 Locator TLV 5.1. SRv6 Locator TLV
As described in [I-D.filsfils-spring-srv6-network-programming], an As described in [I-D.ietf-spring-srv6-network-programming], an SRv6
SRv6 SID is 128 bits and represented as SID is 128 bits and represented as
LOC:FUNCT LOC:FUNCT
where LOC (the locator portion) is the L most significant bits and where LOC (the locator portion) is the L most significant bits and
FUNCT is the 128-L least significant bits. L is called the locator FUNCT is the 128-L least significant bits. L is called the locator
length and is flexible. A node is provisioned with one or more length and is flexible. A node is provisioned with one or more
locators supported by that node. Locators are covering prefixes for locators supported by that node. Locators are covering prefixes for
the set of SIDs provisioned on that node. These Locators are the set of SIDs provisioned on that node. These Locators are
advertised as BGP-LS Prefix NLRI objects along with the SRv6 Locator advertised as BGP-LS Prefix NLRI objects along with the SRv6 Locator
TLV in its BGP-LS Attribute. TLV in its BGP-LS Attribute.
skipping to change at page 13, line 14 skipping to change at page 13, line 14
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
|D|A| Reserved | |D|A| Reserved |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Figure 10: SRv6 Locator TLV Flags Format Figure 10: SRv6 Locator TLV Flags Format
* D-Flag: Indicates that the locator has been leaked into the IGP * D-Flag: Indicates that the locator has been leaked into the IGP
domain when set. IS-IS operations for this are discussed in domain when set. IS-IS operations for this are discussed in
[I-D.bashandy-isis-srv6-extensions]. [I-D.ietf-lsr-isis-srv6-extensions].
* A-Flag: When the Locator is associated with anycast * A-Flag: When the Locator is associated with anycast
destinations, the A flag SHOULD be set. Otherwise, this bit destinations, the A flag SHOULD be set. Otherwise, this bit
MUST be clear. MUST be clear.
* Reserved bits: Reserved for future use and MUST be zero when * Reserved bits: Reserved for future use and MUST be zero when
originated and ignored when received. originated and ignored when received.
Algorithm: 1 octet field. Algorithm associated with the SID. Algorithm: 1 octet field. Algorithm associated with the SID.
Algorithm values are defined in the IGP Algorithm Type registry. Algorithm values are defined in the IGP Algorithm Type registry.
skipping to change at page 15, line 8 skipping to change at page 15, line 8
defined in Section 6.1 and optionally MAY include the Multi- defined in Section 6.1 and optionally MAY include the Multi-
Topology Identifier TLV as defined in [RFC7752]. Topology Identifier TLV as defined in [RFC7752].
New TLVs carried in the BGP Link State Attribute defined in [RFC7752] New TLVs carried in the BGP Link State Attribute defined in [RFC7752]
are also defined in order to carry the attributes of a SRv6 SID in are also defined in order to carry the attributes of a SRv6 SID in
Section 7. Section 7.
6.1. SRv6 SID Information TLV 6.1. SRv6 SID Information TLV
A SRv6 SID is a 128 bit value A SRv6 SID is a 128 bit value
[I-D.filsfils-spring-srv6-network-programming] and is encoded using [I-D.ietf-spring-srv6-network-programming] and is encoded using the
the SRv6 SID Information TLV. SRv6 SID Information TLV.
The TLV has the following format: The TLV has the following format:
0 1 2 3 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 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 | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (16 octets) ... | SID (16 octets) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 15, line 48 skipping to change at page 15, line 48
7. SRv6 SID Attributes 7. SRv6 SID Attributes
This section specifies the new TLVs to be carried in the BGP Link This section specifies the new TLVs to be carried in the BGP Link
State Attribute associated with the BGP-LS SRv6 SID NLRI. State Attribute associated with the BGP-LS SRv6 SID NLRI.
7.1. SRv6 Endpoint Function TLV 7.1. SRv6 Endpoint Function TLV
Each SRv6 SID instantiated in the "My SID Table" of an SRv6 capable Each SRv6 SID instantiated in the "My SID Table" of an SRv6 capable
node has a specific instruction bound to it. A set of well-known node has a specific instruction bound to it. A set of well-known
functions that can be associated with a SID are defined in functions that can be associated with a SID are defined in
[I-D.filsfils-spring-srv6-network-programming]. [I-D.ietf-spring-srv6-network-programming].
The SRv6 Endpoint Function TLV is a mandatory TLV that MUST be The SRv6 Endpoint Function TLV is a mandatory TLV that MUST be
included in the BGP-LS Attribute associated with the BGP-LS SRv6 SID included in the BGP-LS Attribute associated with the BGP-LS SRv6 SID
NLRI. The TLV has the following format: NLRI. The TLV has the following format:
0 1 2 3 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 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 | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 16, line 27 skipping to change at page 16, line 27
Figure 14: SRv6 Endpoint Function TLV Figure 14: SRv6 Endpoint Function TLV
Where: Where:
Type: 2 octet field with value TBD, see Section 8. Type: 2 octet field with value TBD, see Section 8.
Length: 2 octet field with the value 4. Length: 2 octet field with the value 4.
Function Code: 2 octet field. The Endpoint Function code point Function Code: 2 octet field. The Endpoint Function code point
for this SRv6 SID as defined in for this SRv6 SID as defined in
[I-D.filsfils-spring-srv6-network-programming]. [I-D.ietf-spring-srv6-network-programming].
Flags: 1 octet of flags with the none defined currently. Reserved Flags: 1 octet of flags with the none defined currently. Reserved
for future use and MUST be zero when originated and ignored when for future use and MUST be zero when originated and ignored when
received. received.
Algorithm: 1 octet field. Algorithm associated with the SID. Algorithm: 1 octet field. Algorithm associated with the SID.
Algorithm values are defined in the IGP Algorithm Type registry. Algorithm values are defined in the IGP Algorithm Type registry.
7.2. SRv6 BGP Peer Node SID TLV 7.2. SRv6 BGP Peer Node SID TLV
skipping to change at page 18, line 19 skipping to change at page 18, line 19
o Peer AS Number : 4 octets of BGP AS number of the peer router. o Peer AS Number : 4 octets of BGP AS number of the peer router.
o Peer BGP Identifier : 4 octets of the BGP Identifier (BGP Router- o Peer BGP Identifier : 4 octets of the BGP Identifier (BGP Router-
ID) of the peer router. ID) of the peer router.
For a SRv6 BGP EPE Peer Node SID, one instance of this TLV is For a SRv6 BGP EPE Peer Node SID, one instance of this TLV is
associated with the SRv6 SID. For SRv6 BGP EPE Peer Set SID, associated with the SRv6 SID. For SRv6 BGP EPE Peer Set SID,
multiple instances of this TLV (one for each peer in the "peer set") multiple instances of this TLV (one for each peer in the "peer set")
are associated with the SRv6 SID and the S (set/group) flag is SET. are associated with the SRv6 SID and the S (set/group) flag is SET.
7.3. SRv6 SID Structure TLV
SRv6 SID Structure TLV is used to advertise the length of each
individual part of the SRv6 SID as defined in
[I-D.ietf-spring-srv6-network-programming]. It is an optional TLV
for use in the BGP-LS Attribute for an SRv6 SID NLRI. The 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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LB Length | LN Length | Fun. Length | Arg. Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 17: SRv6 SID Structure TLV
Where:
Type: 2 octet field with value TBD, see Section 8.
Length: 2 octet field with the value 4.
LB Length: 1 octet field. SRv6 SID Locator Block length in bits.
LN Length: 1 octet field. SRv6 SID Locator Node length in bits.
Function Length: 1 octet field. SRv6 SID Function length in bits.
Argument Length: 1 octet field. SRv6 SID Argument length in bits.
8. IANA Considerations 8. IANA Considerations
This document requests assigning code-points from the IANA "Border This document requests assigning code-points from the IANA "Border
Gateway Protocol - Link State (BGP-LS) Parameters" registry as Gateway Protocol - Link State (BGP-LS) Parameters" registry as
described in the sub-sections below. described in the sub-sections below.
8.1. BGP-LS NLRI-Types 8.1. BGP-LS NLRI-Types
The following codepoints is suggested (to be assigned by IANA) from The following codepoints is suggested (to be assigned by IANA) from
within the sub-registry called "BGP-LS NLRI-Types": within the sub-registry called "BGP-LS NLRI-Types":
+------+----------------------------+---------------+ +------+----------------------------+---------------+
| Type | NLRI Type | Reference | | Type | NLRI Type | Reference |
+------+----------------------------+---------------+ +------+----------------------------+---------------+
| TBD | SRv6 SID | this document | | TBD | SRv6 SID | this document |
+------+----------------------------+---------------+ +------+----------------------------+---------------+
Figure 17: SRv6 SID NLRI Type Codepoint Figure 18: SRv6 SID NLRI Type Codepoint
8.2. BGP-LS TLVs 8.2. BGP-LS TLVs
The following TLV codepoints are suggested (to be assigned by IANA) The following TLV codepoints are suggested (to be assigned by IANA)
from within the sub-registry called "BGP-LS Node Descriptor, Link from within the sub-registry called "BGP-LS Node Descriptor, Link
Descriptor, Prefix Descriptor, and Attribute TLVs": Descriptor, Prefix Descriptor, and Attribute TLVs":
+----------+----------------------------------------+---------------+ +----------+----------------------------------------+---------------+
| TLV Code | Description | Value defined | | TLV Code | Description | Value defined |
| Point | | in | | Point | | in |
+----------+----------------------------------------+---------------+ +----------+----------------------------------------+---------------+
| TBD | SRv6 Capabilities TLV | this document | | TBD | SRv6 Capabilities TLV | this document |
| TBD | SRv6 End.X SID TLV | this document | | TBD | SRv6 End.X SID TLV | this document |
| TBD | IS-IS SRv6 LAN End.X SID TLV | this document | | TBD | IS-IS SRv6 LAN End.X SID TLV | this document |
| TBD | OSPFv3 SRv6 LAN End.X SID TLV | this document | | TBD | OSPFv3 SRv6 LAN End.X SID TLV | this document |
| TBD | SRv6 Locator TLV | this document | | TBD | SRv6 Locator TLV | this document |
| TBD | SRv6 SID Information TLV | this document | | TBD | SRv6 SID Information TLV | this document |
| TBD | SRv6 Endpoint Function TLV | this document | | TBD | SRv6 Endpoint Function TLV | this document |
| TBD | SRv6 BGP Peer Node SID TLV | this document | | TBD | SRv6 BGP Peer Node SID TLV | this document |
| TBD | SRv6 SID Structure TLV | this document |
+----------+----------------------------------------+---------------+ +----------+----------------------------------------+---------------+
Figure 18: SRv6 BGP-LS Attribute TLV Codepoints Figure 19: SRv6 BGP-LS Attribute TLV Codepoints
9. Manageability Considerations 9. Manageability Considerations
This section is structured as recommended in[RFC5706] This section is structured as recommended in[RFC5706]
10. Operational Considerations 10. Operational Considerations
10.1. Operations 10.1. Operations
Existing BGP and BGP-LS operational procedures apply. No additional Existing BGP and BGP-LS operational procedures apply. No additional
skipping to change at page 20, line 37 skipping to change at page 21, line 18
[I-D.ali-spring-srv6-oam] [I-D.ali-spring-srv6-oam]
Ali, Z., Filsfils, C., Kumar, N., Pignataro, C., Ali, Z., Filsfils, C., Kumar, N., Pignataro, C.,
faiqbal@cisco.com, f., Gandhi, R., Leddy, J., Matsushima, faiqbal@cisco.com, f., Gandhi, R., Leddy, J., Matsushima,
S., Raszuk, R., daniel.voyer@bell.ca, d., Dawra, G., S., Raszuk, R., daniel.voyer@bell.ca, d., Dawra, G.,
Peirens, B., Chen, M., and G. Naik, "Operations, Peirens, B., Chen, M., and G. Naik, "Operations,
Administration, and Maintenance (OAM) in Segment Routing Administration, and Maintenance (OAM) in Segment Routing
Networks with IPv6 Data plane (SRv6)", draft-ali-spring- Networks with IPv6 Data plane (SRv6)", draft-ali-spring-
srv6-oam-02 (work in progress), October 2018. srv6-oam-02 (work in progress), October 2018.
[I-D.bashandy-isis-srv6-extensions] [I-D.dawra-bess-srv6-services]
Psenak, P., Filsfils, C., Bashandy, A., Decraene, B., and Dawra, G., Filsfils, C., Brissette, P., Agrawal, S.,
Z. Hu, "IS-IS Extensions to Support Routing over IPv6 Leddy, J., daniel.voyer@bell.ca, d.,
Dataplane", draft-bashandy-isis-srv6-extensions-05 (work
in progress), March 2019.
[I-D.dawra-idr-srv6-vpn]
Dawra, G., Filsfils, C., Dukes, D., Brissette, P.,
Camarillo, P., Leddy, J., daniel.voyer@bell.ca, d.,
daniel.bernier@bell.ca, d., Steinberg, D., Raszuk, R., daniel.bernier@bell.ca, d., Steinberg, D., Raszuk, R.,
Decraene, B., Matsushima, S., and S. Zhuang, "BGP Decraene, B., Matsushima, S., Zhuang, S., and J. Rabadan,
Signaling for SRv6 based Services.", draft-dawra-idr- "SRv6 BGP based Overlay services", draft-dawra-bess-
srv6-vpn-05 (work in progress), October 2018. srv6-services-01 (work in progress), July 2019.
[I-D.filsfils-spring-srv6-network-programming]
Filsfils, C., Camarillo, P., Leddy, J.,
daniel.voyer@bell.ca, d., Matsushima, S., and Z. Li, "SRv6
Network Programming", draft-filsfils-spring-srv6-network-
programming-07 (work in progress), February 2019.
[I-D.ietf-6man-segment-routing-header] [I-D.ietf-6man-segment-routing-header]
Filsfils, C., Dukes, D., Previdi, S., Leddy, J., Filsfils, C., Dukes, D., Previdi, S., Leddy, J.,
Matsushima, S., and d. daniel.voyer@bell.ca, "IPv6 Segment Matsushima, S., and d. daniel.voyer@bell.ca, "IPv6 Segment
Routing Header (SRH)", draft-ietf-6man-segment-routing- Routing Header (SRH)", draft-ietf-6man-segment-routing-
header-19 (work in progress), May 2019. header-21 (work in progress), June 2019.
[I-D.ietf-idr-bgp-ls-segment-routing-ext] [I-D.ietf-idr-bgp-ls-segment-routing-ext]
Previdi, S., Talaulikar, K., Filsfils, C., Gredler, H., Previdi, S., Talaulikar, K., Filsfils, C., Gredler, H.,
and M. Chen, "BGP Link-State extensions for Segment and M. Chen, "BGP Link-State extensions for Segment
Routing", draft-ietf-idr-bgp-ls-segment-routing-ext-15 Routing", draft-ietf-idr-bgp-ls-segment-routing-ext-16
(work in progress), May 2019. (work in progress), June 2019.
[I-D.ietf-idr-bgp-ls-segment-routing-msd] [I-D.ietf-idr-bgp-ls-segment-routing-msd]
Tantsura, J., Chunduri, U., Mirsky, G., Sivabalan, S., and Tantsura, J., Chunduri, U., Talaulikar, K., Mirsky, G.,
N. Triantafillis, "Signaling MSD (Maximum SID Depth) using and N. Triantafillis, "Signaling MSD (Maximum SID Depth)
Border Gateway Protocol Link-State", draft-ietf-idr-bgp- using Border Gateway Protocol Link-State", draft-ietf-idr-
ls-segment-routing-msd-04 (work in progress), February bgp-ls-segment-routing-msd-05 (work in progress), June
2019. 2019.
[I-D.ietf-idr-bgpls-segment-routing-epe] [I-D.ietf-idr-bgpls-segment-routing-epe]
Previdi, S., Talaulikar, K., Filsfils, C., Patel, K., Ray, Previdi, S., Talaulikar, K., Filsfils, C., Patel, K., Ray,
S., and J. Dong, "BGP-LS extensions for Segment Routing S., and J. Dong, "BGP-LS extensions for Segment Routing
BGP Egress Peer Engineering", draft-ietf-idr-bgpls- BGP Egress Peer Engineering", draft-ietf-idr-bgpls-
segment-routing-epe-19 (work in progress), May 2019. segment-routing-epe-19 (work in progress), May 2019.
[I-D.ietf-lsr-isis-srv6-extensions]
Psenak, P., Filsfils, C., Bashandy, A., Decraene, B., and
Z. Hu, "IS-IS Extension to Support Segment Routing over
IPv6 Dataplane", draft-ietf-lsr-isis-srv6-extensions-02
(work in progress), July 2019.
[I-D.ietf-spring-srv6-network-programming]
Filsfils, C., Camarillo, P., Leddy, J.,
daniel.voyer@bell.ca, d., Matsushima, S., and Z. Li, "SRv6
Network Programming", draft-ietf-spring-srv6-network-
programming-01 (work in progress), July 2019.
[I-D.li-ospf-ospfv3-srv6-extensions] [I-D.li-ospf-ospfv3-srv6-extensions]
Li, Z., Hu, Z., Cheng, D., Talaulikar, K., and P. Psenak, Li, Z., Hu, Z., Cheng, D., Talaulikar, K., and P. Psenak,
"OSPFv3 Extensions for SRv6", draft-li-ospf- "OSPFv3 Extensions for SRv6", draft-li-ospf-
ospfv3-srv6-extensions-03 (work in progress), March 2019. ospfv3-srv6-extensions-03 (work in progress), March 2019.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
 End of changes. 34 change blocks. 
63 lines changed or deleted 97 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/