draft-ietf-idr-te-lsp-distribution-04.txt   draft-ietf-idr-te-lsp-distribution-05.txt 
Network Working Group J. Dong Network Working Group S. Previdi, Ed.
Internet-Draft M. Chen Internet-Draft Cisco Systems, Inc.
Intended status: Standards Track Huawei Technologies Intended status: Standards Track J. Dong, Ed.
Expires: June 5, 2016 H. Gredler Expires: January 7, 2017 M. Chen
Individual Contributor Huawei Technologies
S. Previdi H. Gredler
Cisco Systems, Inc. RtBrick Inc.
J. Tantsura J. Tantsura
Ericsson Individual
December 3, 2015 July 6, 2016
Distribution of MPLS Traffic Engineering (TE) LSP State using BGP Distribution of Traffic Engineering (TE) Policies and State using BGP-LS
draft-ietf-idr-te-lsp-distribution-04 draft-ietf-idr-te-lsp-distribution-05
Abstract Abstract
This document describes a mechanism to collect the Traffic This document describes a mechanism to collect the Traffic
Engineering (TE) LSP information using BGP. Such information can be Engineering and Policy information that is locally available in a
used by external components for path reoptimization, service router and advertise it into BGP-LS updates. Such information can be
placement, and network visualization. used by external components for path computation, re-optimization,
service placement, network visualization, etc.
Requirements Language Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119]. document are to be interpreted as described in RFC 2119 [RFC2119].
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
skipping to change at page 1, line 45 skipping to change at page 1, line 46
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 http://datatracker.ietf.org/drafts/current/. Drafts is at http://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 June 5, 2016. This Internet-Draft will expire on January 7, 2017.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2016 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
(http://trustee.ietf.org/license-info) in effect on the date of (http://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
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Carrying LSP State Information in BGP . . . . . . . . . . . . 4 2. Carrying TE Policy Information in BGP . . . . . . . . . . . . 5
2.1. MPLS TE LSP Information . . . . . . . . . . . . . . . . . 4 2.1. TE Policy Information . . . . . . . . . . . . . . . . . . 5
2.2. IPv4/IPv6 MPLS TE LSP NLRI . . . . . . . . . . . . . . . 5 2.2. TE Policy NLRI . . . . . . . . . . . . . . . . . . . . . 5
2.2.1. MPLS TE LSP Descriptors . . . . . . . . . . . . . . . 6 2.2.1. TE Policy Descriptors . . . . . . . . . . . . . . . . 6
2.3. LSP State Information . . . . . . . . . . . . . . . . . . 8 2.3. TE Policy State . . . . . . . . . . . . . . . . . . . . . 12
2.3.1. RSVP Objects . . . . . . . . . . . . . . . . . . . . 10 2.3.1. RSVP Objects . . . . . . . . . . . . . . . . . . . . 14
2.3.2. PCE Objects . . . . . . . . . . . . . . . . . . . . . 11 2.3.2. PCE Objects . . . . . . . . . . . . . . . . . . . . . 15
2.3.3. SR Encap TLVs . . . . . . . . . . . . . . . . . . . . 11 2.3.3. SR TE Policy Sub-TLVs . . . . . . . . . . . . . . . . 15
3. Operational Considerations . . . . . . . . . . . . . . . . . 12 3. Operational Considerations . . . . . . . . . . . . . . . . . 21
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 22
4.1. BGP-LS NLRI-Types . . . . . . . . . . . . . . . . . . . . 12 4.1. BGP-LS NLRI-Types . . . . . . . . . . . . . . . . . . . . 22
4.2. BGP-LS Protocol-IDs . . . . . . . . . . . . . . . . . . . 12 4.2. BGP-LS Protocol-IDs . . . . . . . . . . . . . . . . . . . 22
4.3. BGP-LS Descriptors TLVs . . . . . . . . . . . . . . . . . 13 4.3. BGP-LS Descriptors TLVs . . . . . . . . . . . . . . . . . 22
4.4. BGP-LS LSP-State TLV Protocol Origin . . . . . . . . . . 13 4.4. BGP-LS LSP-State TLV Protocol Origin . . . . . . . . . . 23
5. Security Considerations . . . . . . . . . . . . . . . . . . . 14 5. Security Considerations . . . . . . . . . . . . . . . . . . . 23
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 14 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 23
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 14 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.1. Normative References . . . . . . . . . . . . . . . . . . 14 7.1. Normative References . . . . . . . . . . . . . . . . . . 24
7.2. Informative References . . . . . . . . . . . . . . . . . 15 7.2. Informative References . . . . . . . . . . . . . . . . . 25
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 26
1. Introduction 1. Introduction
In some network environments, the state of established Multi-Protocol In many network environments, traffic engineering policies are
Label Switching (MPLS) Traffic Engineering (TE) Label Switched Paths instantiated into various forms:
(LSPs) and Tunnels in the network are required by components external
to the network domain. Usually this information is directly
maintained by the ingress Label Edge Routers (LERs) of the MPLS TE
LSPs.
One example of using the LSP information is stateful Path Computation o MPLS Traffic Engineering Label Switched Paths (TE-LSPs).
Element (PCE) [I-D.ietf-pce-stateful-pce], which could provide
benefits in path reoptimization. While some extensions are proposed o IP based tunnels (IP in IP, GRE, etc).
in Path Computation Element Communication Protocol (PCEP) for the
Path Computation Clients (PCCs) to report the LSP states to the PCE, o Segment Routing Traffic Engineering Policies (SR TE Policy) as
this mechanism may not be applicable in a management-based PCE defined in [I-D.previdi-idr-segment-routing-te-policy]
o Local cross-connect configuration
All this information can be grouped into the same term: TE Policies.
In the rest of this document we refer to TE Policies as the set of
information related to the various instantiation of polices: MPLS TE
LSPs, IP tunnels (IPv4 or IPv6), SR TE Policies, etc.
TE Polices are generally instantiated by the head-end and are based
on either local configuration or controller based programming of the
node using various protocols and APIs, e.g., PCEP or BGP.
In many network environments, the configuration and state of each TE
Policy that is available in the network is required by a controller
which allows the network operator to optimize several functions and
operations through the use of a controller aware of both topology and
state information.
One example of a controller is the stateful Path Computation Element
(PCE) [I-D.ietf-pce-stateful-pce], which could provide benefits in
path reoptimization. While some extensions are proposed in Path
Computation Element Communication Protocol (PCEP) for the Path
Computation Clients (PCCs) to report the LSP states to the PCE, this
mechanism may not be applicable in a management-based PCE
architecture as specified in section 5.5 of [RFC4655]. As architecture as specified in section 5.5 of [RFC4655]. As
illustrated in the figure below, the PCC is not an LSR in the routing illustrated in the figure below, the PCC is not an LSR in the routing
domain, thus the head-end nodes of the TE-LSPs may not implement the domain, thus the head-end nodes of the TE-LSPs may not implement the
PCEP protocol. In this case a general mechanism to collect the TE- PCEP protocol. In this case a general mechanism to collect the TE-
LSP states from the ingress LERs is needed. This document proposes LSP states from the ingress LERs is needed. This document proposes
an LSP state collection mechanism complementary to the mechanism an TE Policy state collection mechanism complementary to the
defined in [I-D.ietf-pce-stateful-pce]. mechanism defined in [I-D.ietf-pce-stateful-pce].
----------- -----------
| ----- | | ----- |
Service | | TED |<-+-----------> Service | | TED |<-+----------->
Request | ----- | TED synchronization Request | ----- | TED synchronization
| | | | mechanism (for example, | | | | mechanism (for example,
v | | | routing protocol) v | | | routing protocol)
------------- Request/ | v | ------------- Request/ | v |
| | Response| ----- | | | Response| ----- |
| NMS |<--------+> | PCE | | | NMS |<--------+> | PCE | |
skipping to change at page 3, line 43 skipping to change at page 4, line 29
---------- Signaling ---------- ---------- Signaling ----------
| Head-End | Protocol | Adjacent | | Head-End | Protocol | Adjacent |
| Node |<---------->| Node | | Node |<---------->| Node |
---------- ---------- ---------- ----------
Figure 1. Management-Based PCE Usage Figure 1. Management-Based PCE Usage
In networks with composite PCE nodes as specified in section 5.1 of In networks with composite PCE nodes as specified in section 5.1 of
[RFC4655], PCE is implemented on several routers in the network, and [RFC4655], PCE is implemented on several routers in the network, and
the PCCs in the network can use the mechanism described in the PCCs in the network can use the mechanism described in
[I-D.ietf-pce-stateful-pce] to report the LSP information to the PCE [I-D.ietf-pce-stateful-pce] to report the TE Policy information to
nodes. An external component may also need to collect the LSP the PCE nodes. An external component may also need to collect the TE
information from all the PCEs in the network to obtain a global view Policy information from all the PCEs in the network to obtain a
of the LSP state in the network. global view of the LSP state in the network.
In multi-area or multi-AS scenarios, each area or AS can have a child In multi-area or multi-AS scenarios, each area or AS can have a child
PCE to collect the LSP state in its own domain, in addition, a parent PCE to collect the TE Policies in its own domain, in addition, a
PCE needs to collect LSP information from multiple child PCEs to parent PCE needs to collect TE Policy information from multiple child
obtain a global view of LSPs inside and across the domains involved. PCEs to obtain a global view of LSPs inside and across the domains
involved.
In another network scenario, a centralized controller is used for In another network scenario, a centralized controller is used for
service placement. Obtaining the TE LSP state information is quite service placement. Obtaining the TE Policy state information is
important for making appropriate service placement decisions with the quite important for making appropriate service placement decisions
purpose to both meet the application's requirements and utilize with the purpose to both meet the application's requirements and
network resources efficiently. utilize network resources efficiently.
The Network Management System (NMS) may need to provide global The Network Management System (NMS) may need to provide global
visibility of the TE LSPs in the network as part of the network visibility of the TE Policies in the network as part of the network
visualization function. visualization function.
BGP has been extended to distribute link-state and traffic BGP has been extended to distribute link-state and traffic
engineering information to external components engineering information to external components [RFC7752]. Using the
[I-D.ietf-idr-ls-distribution]. Using the same protocol to collect same protocol to collect Traffic Engineering and Policy information
TE LSP information is desirable for these external components since is desirable for these external components since this avoids
this avoids introducing multiple protocols for network information introducing multiple protocols for network information collection.
collection. This document describes a mechanism to distribute TE LSP This document describes a mechanism to distribute traffic engineering
information to external components using BGP. and policy information (MPLS, IPv4 and IPv6) to external components
using BGP-LS.
2. Carrying LSP State Information in BGP 2. Carrying TE Policy Information in BGP
2.1. MPLS TE LSP Information 2.1. TE Policy Information
The MPLS TE LSP information is advertised in BGP UPDATE messages TE Policy information is advertised in BGP UPDATE messages using the
using the MP_REACH_NLRI and MP_UNREACH_NLRI attributes [RFC4760]. MP_REACH_NLRI and MP_UNREACH_NLRI attributes [RFC4760]. The "Link-
The "Link-State NLRI" defined in [I-D.ietf-idr-ls-distribution] is State NLRI" defined in [RFC7752] is extended to carry the TE Policy
extended to carry the MPLS TE LSP information. BGP speakers that information. BGP speakers that wish to exchange TE Policy
wish to exchange MPLS TE LSP information MUST use the BGP information MUST use the BGP Multiprotocol Extensions Capability Code
Multiprotocol Extensions Capability Code (1) to advertise the (1) to advertise the corresponding (AFI, SAFI) pair, as specified in
corresponding (AFI, SAFI) pair, as specified in [RFC4760]. [RFC4760].
The format of "Link-State NLRI" is defined in The format of "Link-State NLRI" is defined in [RFC7752]. A new "NLRI
[I-D.ietf-idr-ls-distribution]. A new "NLRI Type" is defined for Type" is defined for TE Policy Information as following:
MPLS TE LSP Information as following:
o NLRI Type: IPv4/IPv6 MPLS TE LSP NLRI (suggested codepoint value o NLRI Type: TE Policy NLRI (suggested codepoint value 5, to be
5, to be assigned by IANA). assigned by IANA).
[I-D.ietf-idr-ls-distribution] defines the BGP-LS NLRI as follows: [RFC7752] defines the BGP-LS NLRI as follows:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| NLRI Type | Total NLRI Length | | NLRI Type | Total NLRI Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
// Link-State NLRI (variable) // // Link-State NLRI (variable) //
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
This document defines a new NLRI-Type and its format: the IPv4/IPv6 This document defines a new NLRI-Type and its format: the TE Policy
MPLS TE LSP NLRI defined in the following section. NLRI defined in the following section.
2.2. IPv4/IPv6 MPLS TE LSP NLRI 2.2. TE Policy NLRI
The IPv4/IPv6 MPLS TE LSP NLRI (NLRI Type 5. Suggested value, to be The TE Policy NLRI (NLRI Type 5. Suggested value, to be assigned by
assigned by IANA) is shown in the following figure: IANA) is shown in the following figure:
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
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Protocol-ID | | Protocol-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Identifier | | Identifier |
| (64 bits) | | (64 bits) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// MPLS TE LSP Descriptors (variable) // // TE Policy Descriptors (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o Protocol-ID field specifies the type of signaling of the MPLS TE o Protocol-ID field specifies the signaling protocol of the TE
LSP. The following Protocol-IDs are defined (suggested values, to Policy. The following Protocol-IDs are defined (suggested values,
be assigned by IANA) and apply to the IPv4/IPv6 MPLS TE LSP NLRI: to be assigned by IANA) and apply to the TE Policy NLRI:
+-------------+----------------------------------+ +-------------+----------------------------------+
| Protocol-ID | NLRI information source protocol | | Protocol-ID | NLRI information source protocol |
+-------------+----------------------------------+ +-------------+----------------------------------+
| 7 | RSVP-TE | | 8 | RSVP-TE |
| 8 | Segment Routing | | 9 | Segment Routing |
+-------------+----------------------------------+ +-------------+----------------------------------+
o "Identifier" is an 8 octet value as defined in o "Identifier" is an 8 octet value as defined in [RFC7752].
[I-D.ietf-idr-ls-distribution].
o Following MPLS TE LSP Descriptors are defined: o Following TE Policy Descriptors are defined:
+-----------+----------------------------------+ +-----------+----------------------------------+
| Codepoint | Descriptor TLV | | Codepoint | Descriptor TLV |
+-----------+----------------------------------+ +-----------+----------------------------------+
| 267 | Tunnel ID | | 267 | Tunnel ID |
| 268 | LSP ID | | 268 | LSP ID |
| 269 | IPv4/6 Tunnel Head-end address | | 269 | IPv4/6 Tunnel Head-end address |
| 270 | IPv4/6 Tunnel Tail-end address | | 270 | IPv4/6 Tunnel Tail-end address |
| 271 | SR-ENCAP Identifier | | 271 | SR TE Policy |
| 272 | Local Cross Connect |
+-----------+----------------------------------+ +-----------+----------------------------------+
2.2.1. MPLS TE LSP Descriptors 2.2.1. TE Policy Descriptors
This sections defines the MPLS TE Descriptors TLVs. This sections defines the TE Policy Descriptors TLVs.
2.2.1.1. Tunnel Identifier (Tunnel ID) 2.2.1.1. Tunnel Identifier (Tunnel ID)
The Tunnel Identifier TLV contains the Tunnel ID defined in [RFC3209] The Tunnel Identifier TLV contains the Tunnel ID defined in [RFC3209]
and has the following format: and 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 6, line 40 skipping to change at page 7, line 31
2.2.1.2. LSP Identifier (LSP ID) 2.2.1.2. LSP Identifier (LSP ID)
The LSP Identifier TLV contains the LSP ID defined in [RFC3209] and The LSP Identifier TLV contains the LSP ID defined in [RFC3209] and
has the following format: 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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LSP ID | | LSP ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o Type: To be assigned by IANA (suggested value: 268) o Type: To be assigned by IANA (suggested value: 268)
o Length: 2 octets. o Length: 2 octets.
o LSP ID: 2 octets as defined in [RFC3209]. o LSP ID: 2 octets as defined in [RFC3209].
skipping to change at page 8, line 8 skipping to change at page 9, line 5
o Type: To be assigned by IANA (suggested value: 270) o Type: To be assigned by IANA (suggested value: 270)
o Length: 4 or 16 octets. o Length: 4 or 16 octets.
When the IPv4/IPv6 Tunnel Tail-end Address TLV contains an IPv4 When the IPv4/IPv6 Tunnel Tail-end Address TLV contains an IPv4
address, its length is 4 (octets). address, its length is 4 (octets).
When the IPv4/IPv6 Tunnel Tail-end Address TLV contains an IPv6 When the IPv4/IPv6 Tunnel Tail-end Address TLV contains an IPv6
address, its length is 16 (octets). address, its length is 16 (octets).
2.2.1.5. SR-Encap TLV 2.2.1.5. SR TE Policy TLV
The SR-ENCAP TLV contains the Identifier defined in The SR TE Policy TLV identifies a SR TE Policy as defined in
[I-D.sreekantiah-idr-segment-routing-te] and has the following [I-D.previdi-idr-segment-routing-te-policy] and has the following
format: 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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SR-ENCAP Identifier | | Distinguisher (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Color (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Endpoint (4 or 16 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o Type: To be assigned by IANA (suggested value: 271) o Type: To be assigned by IANA (suggested value: 271)
o Length: 4 octets. o Length: 12 octets.
o SR-ENCAP Identifier: 4 octets as defined in o Distinguisher, Policy Color and Endpoint are defined in
[I-D.sreekantiah-idr-segment-routing-te]. [I-D.previdi-idr-segment-routing-te-policy].
2.3. LSP State Information 2.2.1.6. MPLS Cross Connect
A new TLV called "LSP State TLV" (codepoint to be assigned by IANA), The MPLS Cross Connect TLV identifies a local MPLS state in the form
is used to describe the characteristics of the MPLS TE LSPs, which is of incoming label and interface followed by an outgoing label and
carried in the optional non-transitive BGP Attribute "LINK_STATE interface. Outgoing interface may appear multiple times (for
Attribute" defined in [I-D.ietf-idr-ls-distribution]. These MPLS TE multicast states).
LSP characteristics include the switching technology of the LSP,
Quality of Service (QoS) parameters, route information, the The Local Cross Connect TLV has the following format:
protection mechanisms, etc.
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Incoming label (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Outgoing label (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Sub-TLVs (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where:
o Type: To be assigned by IANA (suggested value: 271)
o Length: variable.
o Incoming and Outgoing labels: 4 octets each.
o Sub-TLVs: following Sub-TLVs are defined:
* Interface Sub-TLV
* Forwarding Equivalent Class (FEC)
The MPLS Cross Connect TLV:
MUST have an incoming label.
MUST have an outgoing label.
MAY contain an Interface Sub-TLV having the I-flag set.
MUST contain at least one Interface Sub-TLV having the I-flag
unset.
MAY contain multiple Interface Sub-TLV having the I-flag unset.
This is the case of a multicast MPLS cross connect.
MAY contain a FEC Sub-TLV.
2.2.1.6.1. MPLS Cross Connect Sub-TLVs
2.2.1.6.1.1. Interface Sub-TLV
The Interface sub-TLV is optional and contains the identifier of the
interface (incoming or outgoing) in the form of an IPv4 address or an
IPv6 address.
The Interface 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 | Interface Address (4 or 16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where:
o Type: To be assigned by IANA (suggested value: 1)
o Length: 5 or 17.
o Flags: 1 octet of flags defined as follows:
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
|I| |
+-+-+-+-+-+-+-+-+
where:
* I-Flag is the Interface flag. When set, the Interface Sub-TLV
describes an incoming interface. If the I-flag is not set,
then the Interface Sub-TLV describes an outgoing interface.
o Interface address: a 4 octet IPv4 address or a 16 octet IPv6
address.
2.2.1.6.1.2. Forwarding Equivalent Class (FEC) Sub-TLV
The FEC sub-TLV is optional and contains the FEC associated to the
incoming label.
The FEC 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 | Masklength | Prefix (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Prefix (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where:
o Type: To be assigned by IANA (suggested value: 2)
o Length: variable.
o Flags: 1 octet of flags defined as follows:
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
|4| |
+-+-+-+-+-+-+-+-+
where:
* 4-Flag is the IPv4 flag. When set, the FEC Sub-TLV describes
an IPv4 FEC. If the 4-flag is not set, then the FEC Sub-TLV
describes an IPv6 FEC.
o Mask Length: 1 octet of prefix length.
o Prefix: an IPv4 or IPv6 prefix whose mask length is given by the "
Mask Length" field.
2.3. TE Policy State
A new TLV called "TE Policy State TLV" (codepoint to be assigned by
IANA), is used to describe the characteristics of the TE Policy,
which is carried in the optional non-transitive BGP Attribute
"LINK_STATE Attribute" defined in [RFC7752]. These TE Policy
characteristics include the characteristics and attributs of the
policy, it's dataplane, explicit path, Quality of Service (QoS)
parameters, route information, the protection mechanisms, etc.
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
// LSP State Information (variable) // // TE Policy State Information (variable) //
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
LSP State TLV TE Policy State TLV
Type: Suggested value 1158 (to be assigned by IANA) Type: Suggested value 1158 (to be assigned by IANA)
LSP State Information: Consists of a set of TE-LSP objects as defined TE Policy State Information: Consists of a set of objects as defined
in [RFC3209],[RFC3473] and [RFC5440]. Rather than replicating all in [RFC3209],[RFC3473], [RFC5440] and
MPLS TE LSP related objects in this document, the semantics and [I-D.previdi-idr-segment-routing-te-policy]. Rather than replicating
encodings of the MPLS TE LSP objects are reused. These MPLS TE LSP all these objects in this document, the semantics and encodings of
objects are carried in the "LSP State Information" with the following the objects are reused. These objects are carried in the "TE Policy
format. State Information" with 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Protocol-Origin| Reserved | Length | |Protocol-Origin| Reserved | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
// Protocol specific TE-LSP object // // Protocol specific TE Policy objects //
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
LSP State Information TE Policy State Information
The Protocol-Origin field identifies the protocol from which the The Protocol-Origin field identifies the protocol from which the
contained MPLS TE LSP object originated. This allows for MPLS TE LSP contained object originated. This allows for objects defined in
objects defined in different protocols to be collected while avoiding different protocols to be collected while avoiding the possible code
the possible code collisions among these protocols. Three Protocol- collisions among these protocols. Three Protocol-Origins are defined
Origins are defined in this document (suggested values, to be in this document (suggested values, to be assigned by IANA)
assigned by IANA)
+----------+--------------+ +----------+------------------+
| Protocol | LSP Object | | Protocol | LSP Object |
| Origin | Origin | | Origin | Origin |
+----------+--------------+ +----------+------------------+
| 1 | RSVP-TE | | 1 | RSVP-TE |
| 2 | PCE | | 2 | PCE |
| 3 | SR ENCAP | | 3 | BGP SR TE Policy |
+----------+--------------+ +----------+------------------+
The 8-bit Reserved field SHOULD be set to 0 on transmission and The 8-bit Reserved field SHOULD be set to 0 on transmission and MUST
ignored on receipt. be ignored on receipt.
The Length field is set to the Length of the value field, which is The Length field is set to the Length of the value field, which is
the total length of the contained MPLS TE LSP object. the total length of the contained object.
The Valued field is a MPLS-TE LSP object which is defined in the The Valued field is a TE Policy object which is defined in the
protocol identified by the Protocol-Origin field. protocol identified by the Protocol-Origin field.
2.3.1. RSVP Objects 2.3.1. RSVP Objects
RSVP-TE objects are encoded in the "Value" field of the LSP State TLV RSVP-TE objects are encoded in the "Value" field of the LSP State TLV
and consists of MPLS TE LSP objects defined in RSVP-TE [RFC3209] and consists of MPLS TE LSP objects defined in RSVP-TE [RFC3209]
[RFC3473]. Rather than replicating all MPLS TE LSP related objects [RFC3473]. Rather than replicating all MPLS TE LSP related objects
in this document, the semantics and encodings of the MPLS TE LSP in this document, the semantics and encodings of the MPLS TE LSP
objects are re-used. These MPLS TE LSP objects are carried in the objects are re-used. These MPLS TE LSP objects are carried in the
LSP State TLV. LSP State TLV.
skipping to change at page 11, line 31 skipping to change at page 15, line 39
o METRIC Object [RFC5440] o METRIC Object [RFC5440]
o BANDWIDTH Object [RFC5440] o BANDWIDTH Object [RFC5440]
For the MPLS TE LSP Objects listed above, the corresponding sub- For the MPLS TE LSP Objects listed above, the corresponding sub-
objects are also applicable to this mechanism. Note that this list objects are also applicable to this mechanism. Note that this list
is not exhaustive, other MPLS TE LSP objects which reflect specific is not exhaustive, other MPLS TE LSP objects which reflect specific
characteristics of the MPLS TE LSP can also be carried in the LSP characteristics of the MPLS TE LSP can also be carried in the LSP
state TLV. state TLV.
2.3.3. SR Encap TLVs 2.3.3. SR TE Policy Sub-TLVs
SR-ENCAP objects are encoded in the "Value" field of the LSP State Segment Routing Traffic Engineering Policy (SR TE Policy) as
TLV and consists of SR-ENCAP objects defined in described in [I-D.previdi-idr-segment-routing-te-policy]makes use of
[I-D.sreekantiah-idr-segment-routing-te]. Rather than replicating the Tunnel Encapsulation Attribute defined in
all MPLS TE LSP related objects in this document, the semantics and [I-D.ietf-idr-tunnel-encaps] and defines following sub-TLVs:
encodings of the MPLS TE LSP objects are re-used. These MPLS TE LSP
objects are carried in the LSP State TLV.
When carrying SR-ENCAP objects, the "Protocol-Origin" field is set to o Preference
"SR-ENCAP" (suggested value 3, to be assigned by IANA).
The following SR-ENCAP Objects are defined: o Binding SID
o ERO TLV [I-D.sreekantiah-idr-segment-routing-te] o Weight
o Segment List
o Weight TLV [I-D.sreekantiah-idr-segment-routing-te] o Segment
o Binding SID TLV [I-D.sreekantiah-idr-segment-routing-te] The equivalent sub-TLVs are defined hereafter and carried in the TE
For the MPLS TE LSP Objects listed above, the corresponding sub- Policy State TLV. When carrying SR TE Policy objects, the "Protocol-
objects are also applicable to this mechanism. Note that this list Origin" field is set to "BGP SR TE Policy" (suggested value 3, to be
is not exhaustive, other MPLS TE LSP objects which reflect specific assigned by IANA).
characteristics of the MPLS TE LSP can also be carried in the LSP
state TLV. 2.3.3.1. Preference Object
The Preference 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 | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Preference (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
All fields, including type and length, are defined in
[I-D.previdi-idr-segment-routing-te-policy].
2.3.3.2. SR TE Binding SID Sub-TLV
The Binding SID 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 | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Binding SID (variable, optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
All fields, including type and length, are defined in
[I-D.previdi-idr-segment-routing-te-policy].
[I-D.previdi-idr-segment-routing-te-policy] specifies the Binding SID
sub-TLV which carries an indication of which value to allocate as
Binding SID to the SR TE Policy. In the context of the BGP-LS
extensions defined in this document, the Binding SID sub-TLV to the
reciever of the , the Binding SID TLThe Binding SID sub-TLV contains
the Binding SID the originator of the BGP-LS update has allocated to
the corresponding SR TE Policy.
In the context of BGP-LS, the Binding SID sub-TLV defined in this
document, contains the effective value of the Binding SID that the
router allocated to the SR TE Policy. The router is the SR TE Policy
receiver (as described in
[I-D.previdi-idr-segment-routing-te-policy]) and it is also the
originator of the corresponding BGP-LS update with the extensions
defined in this document.
2.3.3.3. Weight Sub-TLV
The Weight 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 | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Weight |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
All fields, including type and length, are defined in
[I-D.previdi-idr-segment-routing-te-policy].
2.3.3.4. Segment List Sub-TLV
The Segment List object contains sub-TLVs (which in fact are sub-sub-
TLVs) and has 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 | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// sub-TLVs //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o All fields, including type and length, are defined in
[I-D.previdi-idr-segment-routing-te-policy].
o Length is the total length (not including the Type and Length
fields) of the sub-TLVs encoded within the Segment List sub-TLV.
o sub-objects:
* An optional single Weight sub-TLV.
* One or more Segment sub-TLVs.
The Segment List sub-TLV is mandatory.
Multiple occurrences of the Segment List sub-TLV MAY appear in the SR
TE Policy.
2.3.3.5. Segment Sub-TLV
The Segment sub-TLV describes a single segment in a segment list
(i.e.: a single element of the explicit path). Multiple Segment sub-
TLVs constitute an explicit path of the SR TE Policy.
[I-D.previdi-idr-segment-routing-te-policy] defines 8 different types
of Segment Sub-TLVs:
Type 1: SID only, in the form of MPLS Label
Type 2: SID only, in the form of IPv6 address
Type 3: IPv4 Node Address with optional SID
Type 4: IPv6 Node Address with optional SID
Type 5: IPv4 Address + index with optional SID
Type 6: IPv4 Local and Remote addresses with optional SID
Type 7: IPv6 Address + index with optional SID
Type 8: IPv6 Local and Remote addresses with optional SID
2.3.3.5.1. Type 1: SID only, in the form of MPLS Label
The Type-1 Segment Sub-TLV encodes a single SID in the form of an
MPLS label. The format is as follows:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Label | TC |S| TTL |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type, Length and values are defined in
[I-D.previdi-idr-segment-routing-te-policy].
2.3.3.5.2. Type 2: SID only, in the form of IPv6 address
The Type-2 Segment Sub-TLV encodes a single SID in the form of an
IPv6 address. The format is as follows:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// IPv6 SID (16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type, Length and values are defined in
[I-D.previdi-idr-segment-routing-te-policy].
2.3.3.5.3. Type 3: IPv4 Node Address with optional SID
The Type-3 Segment Sub-TLV encodes an IPv4 node address and an
optional SID in the form of either an MPLS label or an IPv6 address.
The format is as follows:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Node Address (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// SID (optional, 4 or 16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type, Length and values are defined in
[I-D.previdi-idr-segment-routing-te-policy].
2.3.3.5.4. Type 4: IPv6 Node Address with optional SID
The Type-4 Segment Sub-TLV encodes an IPv6 node address and an
optional SID in the form of either an MPLS label or an IPv6 address.
The format is as follows:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// IPv6 Node Address (16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// SID (optional, 4 or 16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type, Length and values are defined in
[I-D.previdi-idr-segment-routing-te-policy].
2.3.3.5.5. Type 5: IPv4 Address + index with optional SID
The Type-5 Segment Sub-TLV encodes an IPv4 node address, an interface
index and an optional SID in the form of either an MPLS label or an
IPv6 address. The format is as follows:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IfIndex (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Node Address (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// SID (optional, 4 or 16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type, Length and values are defined in
[I-D.previdi-idr-segment-routing-te-policy].
2.3.3.5.6. Type 6: IPv4 Local and Remote addresses with optional SID
The Type-6 Segment Sub-TLV encodes an IPv4 node address, an adjacency
local address, an adjacency remote address and an optional SID in the
form of either an MPLS label or an IPv6 address. The format is as
follows:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Local IPv4 Address (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Remote IPv4 Address (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// SID (4 or 16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type, Length and values are defined in
[I-D.previdi-idr-segment-routing-te-policy].
2.3.3.5.7. Type 7: IPv6 Address + index with optional SID
The Type-7 Segment Sub-TLV encodes an IPv6 node address, an interface
index and an optional SID in the form of either an MPLS label or an
IPv6 address. The format is as follows:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IfIndex (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// IPv6 Node Address (16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// SID (optional, 4 or 16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type, Length and values are defined in
[I-D.previdi-idr-segment-routing-te-policy].
2.3.3.5.8. Type 8: IPv6 Local and Remote addresses with optional SID
The Type-8 Segment Sub-TLV encodes an IPv6 node address, an adjacency
local address, an adjacency remote address and an optional SID in the
form of either an MPLS label or an IPv6 address. The format is as
follows:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Local IPv6 Address (16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Remote IPv6 Address (16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// SID (4 or 16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type, Length and values are defined in
[I-D.previdi-idr-segment-routing-te-policy].
3. Operational Considerations 3. Operational Considerations
The Existing BGP operational procedures apply to this document. No The Existing BGP operational procedures apply to this document. No
new operation procedures are defined in this document. The new operation procedures are defined in this document. The
operational considerations as specified in operational considerations as specified in [RFC7752] apply to this
[I-D.ietf-idr-ls-distribution] apply to this document. document.
In general the ingress nodes of the MPLS TE LSPs are responsible for In general, it is assumed that the TE Policy head-end nodes are
the distribution of LSP state information, while other nodes on the responsible for the distribution of TE Policy state information,
LSP path MAY report the LSP information when needed. For example, while other nodes, e.g. the nodes in the path of a policy, MAY report
the TE Policy information (if available) when needed. For example,
the border routers in the inter-domain case will also distribute LSP the border routers in the inter-domain case will also distribute LSP
state information since the ingress node may not have the complete state information since the ingress node may not have the complete
information for the end-to-end path. information for the end-to-end path.
4. IANA Considerations 4. IANA Considerations
This document requires new IANA assigned codepoints. This document requires new IANA assigned codepoints.
4.1. BGP-LS NLRI-Types 4.1. BGP-LS NLRI-Types
IANA maintains a registry called "Border Gateway Protocol - Link IANA maintains a registry called "Border Gateway Protocol - Link
State (BGP-LS) Parameters" with a sub-registry called "BGP-LS NLRI- State (BGP-LS) Parameters" with a sub-registry called "BGP-LS NLRI-
Types". Types".
The following codepoints is suggested (to be assigned by IANA): The following codepoints is suggested (to be assigned by IANA):
+------+----------------------------+---------------+ +------+----------------------------+---------------+
| Type | NLRI Type | Reference | | Type | NLRI Type | Reference |
+------+----------------------------+---------------+ +------+----------------------------+---------------+
| 5 | IPv4/IPv6 MPLS TE LSP NLRI | this document | | 5 | TE Policy NLRI type | this document |
+------+----------------------------+---------------+ +------+----------------------------+---------------+
4.2. BGP-LS Protocol-IDs 4.2. BGP-LS Protocol-IDs
IANA maintains a registry called "Border Gateway Protocol - Link IANA maintains a registry called "Border Gateway Protocol - Link
State (BGP-LS) Parameters" with a sub-registry called "BGP-LS State (BGP-LS) Parameters" with a sub-registry called "BGP-LS
Protocol-IDs". Protocol-IDs".
The following Protocol-ID codepoints are suggested (to be assigned by The following Protocol-ID codepoints are suggested (to be assigned by
IANA): IANA):
+-------------+----------------------------------+---------------+ +-------------+----------------------------------+---------------+
| Protocol-ID | NLRI information source protocol | Reference | | Protocol-ID | NLRI information source protocol | Reference |
+-------------+----------------------------------+---------------+ +-------------+----------------------------------+---------------+
| 7 | RSVP-TE | this document | | 8 | RSVP-TE | this document |
| 8 | Segment Routing | this document | | 9 | Segment Routing | this document |
+-------------+----------------------------------+---------------+ +-------------+----------------------------------+---------------+
4.3. BGP-LS Descriptors TLVs 4.3. BGP-LS Descriptors TLVs
IANA maintains a registry called "Border Gateway Protocol - Link IANA maintains a registry called "Border Gateway Protocol - Link
State (BGP-LS) Parameters" with a sub-registry called "Node Anchor, State (BGP-LS) Parameters" with a sub-registry called "Node Anchor,
Link Descriptor and Link Attribute TLVs". Link Descriptor and Link Attribute TLVs".
The following TLV codepoints are suggested (to be assigned by IANA): The following TLV codepoints are suggested (to be assigned by IANA):
+----------+--------------------------------------+---------------+ +----------+--------------------------------------+---------------+
| TLV Code | Description | Value defined | | TLV Code | Description | Value defined |
| Point | | in | | Point | | in |
+----------+--------------------------------------+---------------+ +----------+--------------------------------------+---------------+
| 1158 | LSP State TLV | this document | | 1158 | TE Policy State TLV | this document |
| 267 | Tunnel ID TLV | this document | | 267 | Tunnel ID TLV | this document |
| 268 | LSP ID TLV | this document | | 268 | LSP ID TLV | this document |
| 269 | IPv4/6 Tunnel Head-end address TLV | this document | | 269 | IPv4/6 Tunnel Head-end address TLV | this document |
| 270 | IPv4/6 Tunnel Tail-end address TLV | this document | | 270 | IPv4/6 Tunnel Tail-end address TLV | this document |
| 271 | SR-ENCAP Identifier TLV | this document | | 271 | SR TE Policy Identifier TLV | this document |
+----------+--------------------------------------+---------------+ +----------+--------------------------------------+---------------+
4.4. BGP-LS LSP-State TLV Protocol Origin 4.4. BGP-LS LSP-State TLV Protocol Origin
This document requests IANA to maintain a new sub-registry under This document requests IANA to maintain a new sub-registry under
"Border Gateway Protocol - Link State (BGP-LS) Parameters". The new "Border Gateway Protocol - Link State (BGP-LS) Parameters". The new
registry is called "Protocol Origin" and contains the codepoints registry is called "Protocol Origin" and contains the codepoints
allocated to the "Protocol Origin" field defined in Section 2.3. The allocated to the "Protocol Origin" field defined in Section 2.3. The
registry contains the following codepoints (suggested values, to be registry contains the following codepoints (suggested values, to be
assigned by IANA): assigned by IANA):
+----------+--------------+ +----------+------------------+
| Protocol | Description | | Protocol | Description |
| Origin | | | Origin | |
+----------+--------------+ +----------+------------------+
| 1 | RSVP-TE | | 1 | RSVP-TE |
| 2 | PCE | | 2 | PCE |
| 3 | SR-ENCAP | | 3 | BGP SR TE Policy |
+----------+--------------+ +----------+------------------+
5. Security Considerations 5. Security Considerations
Procedures and protocol extensions defined in this document do not Procedures and protocol extensions defined in this document do not
affect the BGP security model. See [RFC6952] for details. affect the BGP security model. See [RFC6952] for details.
6. Acknowledgements 6. Acknowledgements
The authors would like to thank Dhruv Dhody, Mohammed Abdul Aziz The authors would like to thank Dhruv Dhody, Mohammed Abdul Aziz
Khalid, Lou Berger, Acee Lindem, Siva Sivabalan and Arjun Sreekantiah Khalid, Lou Berger, Acee Lindem, Siva Sivabalan, Arjun Sreekantiah,
for their review and valuable comments. Dhanendra Jain and Clarence Filsfils for their review and valuable
comments.
7. References 7. References
7.1. Normative References 7.1. Normative References
[I-D.ietf-idr-ls-distribution]
Gredler, H., Medved, J., Previdi, S., Farrel, A., and S.
Ray, "North-Bound Distribution of Link-State and TE
Information using BGP", draft-ietf-idr-ls-distribution-13
(work in progress), October 2015.
[I-D.sreekantiah-idr-segment-routing-te]
Sreekantiah, A., Filsfils, C., Previdi, S., Sivabalan, S.,
Mattes, P., and J. Marcon, "Segment Routing Traffic
Engineering Policy using BGP", draft-sreekantiah-idr-
segment-routing-te-00 (work in progress), October 2015.
[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,
<http://www.rfc-editor.org/info/rfc2119>. <http://www.rfc-editor.org/info/rfc2119>.
[RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S. [RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S.
Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1
Functional Specification", RFC 2205, DOI 10.17487/RFC2205, Functional Specification", RFC 2205, DOI 10.17487/RFC2205,
September 1997, <http://www.rfc-editor.org/info/rfc2205>. September 1997, <http://www.rfc-editor.org/info/rfc2205>.
skipping to change at page 15, line 41 skipping to change at page 25, line 16
Ayyangarps, "Encoding of Attributes for MPLS LSP Ayyangarps, "Encoding of Attributes for MPLS LSP
Establishment Using Resource Reservation Protocol Traffic Establishment Using Resource Reservation Protocol Traffic
Engineering (RSVP-TE)", RFC 5420, DOI 10.17487/RFC5420, Engineering (RSVP-TE)", RFC 5420, DOI 10.17487/RFC5420,
February 2009, <http://www.rfc-editor.org/info/rfc5420>. February 2009, <http://www.rfc-editor.org/info/rfc5420>.
[RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation
Element (PCE) Communication Protocol (PCEP)", RFC 5440, Element (PCE) Communication Protocol (PCEP)", RFC 5440,
DOI 10.17487/RFC5440, March 2009, DOI 10.17487/RFC5440, March 2009,
<http://www.rfc-editor.org/info/rfc5440>. <http://www.rfc-editor.org/info/rfc5440>.
[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,
<http://www.rfc-editor.org/info/rfc7752>.
7.2. Informative References 7.2. Informative References
[I-D.ietf-idr-tunnel-encaps]
Rosen, E., Patel, K., and G. Velde, "The BGP Tunnel
Encapsulation Attribute", draft-ietf-idr-tunnel-encaps-02
(work in progress), May 2016.
[I-D.ietf-pce-stateful-pce] [I-D.ietf-pce-stateful-pce]
Crabbe, E., Minei, I., Medved, J., and R. Varga, "PCEP Crabbe, E., Minei, I., Medved, J., and R. Varga, "PCEP
Extensions for Stateful PCE", draft-ietf-pce-stateful- Extensions for Stateful PCE", draft-ietf-pce-stateful-
pce-13 (work in progress), December 2015. pce-14 (work in progress), March 2016.
[I-D.previdi-idr-segment-routing-te-policy]
Previdi, S., Filsfils, C., Sreekantiah, A., Sivabalan, S.,
Mattes, P., and E. Rosen, "Advertising Segment Routing
Traffic Engineering Policies in BGP", draft-previdi-idr-
segment-routing-te-policy-01 (work in progress), May 2016.
[RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation
Element (PCE)-Based Architecture", RFC 4655, Element (PCE)-Based Architecture", RFC 4655,
DOI 10.17487/RFC4655, August 2006, DOI 10.17487/RFC4655, August 2006,
<http://www.rfc-editor.org/info/rfc4655>. <http://www.rfc-editor.org/info/rfc4655>.
[RFC6952] Jethanandani, M., Patel, K., and L. Zheng, "Analysis of [RFC6952] Jethanandani, M., Patel, K., and L. Zheng, "Analysis of
BGP, LDP, PCEP, and MSDP Issues According to the Keying BGP, LDP, PCEP, and MSDP Issues According to the Keying
and Authentication for Routing Protocols (KARP) Design and Authentication for Routing Protocols (KARP) Design
Guide", RFC 6952, DOI 10.17487/RFC6952, May 2013, Guide", RFC 6952, DOI 10.17487/RFC6952, May 2013,
<http://www.rfc-editor.org/info/rfc6952>. <http://www.rfc-editor.org/info/rfc6952>.
Authors' Addresses Authors' Addresses
Jie Dong Stefano Previdi (editor)
Cisco Systems, Inc.
Via Del Serafico, 200
Rome 00142
Italy
Email: sprevidi@cisco.com
Jie Dong (editor)
Huawei Technologies Huawei Technologies
Huawei Campus, No. 156 Beiqing Rd. Huawei Campus, No. 156 Beiqing Rd.
Beijing 100095 Beijing 100095
China China
Email: jie.dong@huawei.com Email: jie.dong@huawei.com
Mach(Guoyi) Chen Mach(Guoyi) Chen
Huawei Technologies Huawei Technologies
Huawei Campus, No. 156 Beiqing Rd. Huawei Campus, No. 156 Beiqing Rd.
Beijing 100095 Beijing 100095
China China
Email: mach.chen@huawei.com Email: mach.chen@huawei.com
Hannes Gredler Hannes Gredler
Individual Contributor RtBrick Inc.
Austria
Email: hannes@gredler.at
Stefano Previdi Email: hannes@rtbrick.com
Cisco Systems, Inc.
Via Del Serafico, 200
Rome 00142
Italy
Email: sprevidi@cisco.com
Jeff Tantsura Jeff Tantsura
Ericsson Individual
300 Holger Way
San Jose, CA 95134
US
Email: jeff.tantsura@ericsson.com Email: jefftant@gmail.com
 End of changes. 76 change blocks. 
210 lines changed or deleted 630 lines changed or added

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