< draft-ietf-idr-te-lsp-distribution-14.txt   draft-ietf-idr-te-lsp-distribution-15.txt >
Network Working Group S. Previdi Network Working Group S. Previdi
Internet-Draft Internet-Draft
Intended status: Standards Track K. Talaulikar, Ed. Intended status: Standards Track K. Talaulikar, Ed.
Expires: April 26, 2021 Cisco Systems, Inc. Expires: November 6, 2021 Cisco Systems, Inc.
J. Dong, Ed. J. Dong, Ed.
M. Chen M. Chen
Huawei Technologies Huawei Technologies
H. Gredler H. Gredler
RtBrick Inc. RtBrick Inc.
J. Tantsura J. Tantsura
Apstra Apstra
October 23, 2020 May 5, 2021
Distribution of Traffic Engineering (TE) Policies and State using BGP-LS Distribution of Traffic Engineering (TE) Policies and State using BGP-LS
draft-ietf-idr-te-lsp-distribution-14 draft-ietf-idr-te-lsp-distribution-15
Abstract Abstract
This document describes a mechanism to collect the Traffic This document describes a mechanism to collect the Traffic
Engineering and Policy information that is locally available in a Engineering and Policy information that is locally available in a
node and advertise it into BGP Link State (BGP-LS) updates. Such node and advertise it into BGP Link State (BGP-LS) updates. Such
information can be used by external components for path computation, information can be used by external components for path computation,
re-optimization, service placement, network visualization, etc. re-optimization, service placement, network visualization, etc.
Status of This Memo Status of This Memo
skipping to change at page 1, line 42 skipping to change at page 1, line 42
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 April 26, 2021. This Internet-Draft will expire on November 6, 2021.
Copyright Notice Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the Copyright (c) 2021 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
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
skipping to change at page 2, line 35 skipping to change at page 2, line 35
4.4. IPv4/IPv6 Tunnel Tail-End Address . . . . . . . . . . . . 9 4.4. IPv4/IPv6 Tunnel Tail-End Address . . . . . . . . . . . . 9
4.5. SR Policy Candidate Path Descriptor . . . . . . . . . . . 10 4.5. SR Policy Candidate Path Descriptor . . . . . . . . . . . 10
4.6. Local MPLS Cross Connect . . . . . . . . . . . . . . . . 11 4.6. Local MPLS Cross Connect . . . . . . . . . . . . . . . . 11
4.6.1. MPLS Cross Connect Interface . . . . . . . . . . . . 13 4.6.1. MPLS Cross Connect Interface . . . . . . . . . . . . 13
4.6.2. MPLS Cross Connect FEC . . . . . . . . . . . . . . . 14 4.6.2. MPLS Cross Connect FEC . . . . . . . . . . . . . . . 14
5. MPLS-TE Policy State TLV . . . . . . . . . . . . . . . . . . 15 5. MPLS-TE Policy State TLV . . . . . . . . . . . . . . . . . . 15
5.1. RSVP Objects . . . . . . . . . . . . . . . . . . . . . . 16 5.1. RSVP Objects . . . . . . . . . . . . . . . . . . . . . . 16
5.2. PCEP Objects . . . . . . . . . . . . . . . . . . . . . . 17 5.2. PCEP Objects . . . . . . . . . . . . . . . . . . . . . . 17
6. SR Policy State TLVs . . . . . . . . . . . . . . . . . . . . 18 6. SR Policy State TLVs . . . . . . . . . . . . . . . . . . . . 18
6.1. SR Binding SID . . . . . . . . . . . . . . . . . . . . . 18 6.1. SR Binding SID . . . . . . . . . . . . . . . . . . . . . 18
6.2. SR Candidate Path State . . . . . . . . . . . . . . . . . 20 6.2. SRv6 Binding SID . . . . . . . . . . . . . . . . . . . . 20
6.3. SR Candidate Path Name . . . . . . . . . . . . . . . . . 22 6.3. SR Candidate Path State . . . . . . . . . . . . . . . . . 22
6.4. SR Candidate Path Constraints . . . . . . . . . . . . . . 22 6.4. SR Policy Name . . . . . . . . . . . . . . . . . . . . . 24
6.4.1. SR Affinity Constraint . . . . . . . . . . . . . . . 24 6.5. SR Candidate Path Name . . . . . . . . . . . . . . . . . 24
6.4.2. SR SRLG Constraint . . . . . . . . . . . . . . . . . 25 6.6. SR Candidate Path Constraints . . . . . . . . . . . . . . 25
6.4.3. SR Bandwidth Constraint . . . . . . . . . . . . . . . 26 6.6.1. SR Affinity Constraint . . . . . . . . . . . . . . . 27
6.4.4. SR Disjoint Group Constraint . . . . . . . . . . . . 26 6.6.2. SR SRLG Constraint . . . . . . . . . . . . . . . . . 28
6.5. SR Segment List . . . . . . . . . . . . . . . . . . . . . 28 6.6.3. SR Bandwidth Constraint . . . . . . . . . . . . . . . 28
6.6. SR Segment . . . . . . . . . . . . . . . . . . . . . . . 31 6.6.4. SR Disjoint Group Constraint . . . . . . . . . . . . 29
6.6.1. Segment Descriptors . . . . . . . . . . . . . . . . . 32 6.7. SR Segment List . . . . . . . . . . . . . . . . . . . . . 31
6.7. SR Segment List Metric . . . . . . . . . . . . . . . . . 39 6.8. SR Segment . . . . . . . . . . . . . . . . . . . . . . . 33
7. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 41 6.8.1. Segment Descriptors . . . . . . . . . . . . . . . . . 35
8. Manageability Considerations . . . . . . . . . . . . . . . . 41 6.9. SR Segment List Metric . . . . . . . . . . . . . . . . . 42
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 42 7. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 44
9.1. BGP-LS NLRI-Types . . . . . . . . . . . . . . . . . . . . 42 8. Manageability Considerations . . . . . . . . . . . . . . . . 44
9.2. BGP-LS Protocol-IDs . . . . . . . . . . . . . . . . . . . 42 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 45
9.3. BGP-LS TLVs . . . . . . . . . . . . . . . . . . . . . . . 42 9.1. BGP-LS NLRI-Types . . . . . . . . . . . . . . . . . . . . 45
9.4. BGP-LS SR Policy Protocol Origin . . . . . . . . . . . . 43 9.2. BGP-LS Protocol-IDs . . . . . . . . . . . . . . . . . . . 45
9.5. BGP-LS TE State Object Origin . . . . . . . . . . . . . . 44 9.3. BGP-LS TLVs . . . . . . . . . . . . . . . . . . . . . . . 45
9.6. BGP-LS TE State Address Family . . . . . . . . . . . . . 44 9.4. BGP-LS SR Policy Protocol Origin . . . . . . . . . . . . 46
9.7. BGP-LS SR Segment Descriptors . . . . . . . . . . . . . . 44 9.5. BGP-LS TE State Object Origin . . . . . . . . . . . . . . 47
9.8. BGP-LS Metric Type . . . . . . . . . . . . . . . . . . . 45 9.6. BGP-LS TE State Address Family . . . . . . . . . . . . . 47
10. Security Considerations . . . . . . . . . . . . . . . . . . . 45 9.7. BGP-LS SR Segment Descriptors . . . . . . . . . . . . . . 47
11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 46 9.8. BGP-LS Metric Type . . . . . . . . . . . . . . . . . . . 48
12. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 46 10. Security Considerations . . . . . . . . . . . . . . . . . . . 48
13. References . . . . . . . . . . . . . . . . . . . . . . . . . 46 11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 49
13.1. Normative References . . . . . . . . . . . . . . . . . . 46 12. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 49
13.2. Informative References . . . . . . . . . . . . . . . . . 48 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 49
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 49 13.1. Normative References . . . . . . . . . . . . . . . . . . 49
13.2. Informative References . . . . . . . . . . . . . . . . . 51
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 52
1. Introduction 1. Introduction
In many network environments, traffic engineering (TE) policies are In many network environments, traffic engineering (TE) policies are
instantiated into various forms: instantiated into various forms:
o MPLS Traffic Engineering Label Switched Paths (TE-LSPs). o MPLS Traffic Engineering Label Switched Paths (TE-LSPs).
o IP based tunnels (IP in IP, GRE, etc). o IP based tunnels (IP in IP, GRE, etc).
skipping to change at page 13, line 18 skipping to change at page 13, line 18
| 556 | MPLS Cross Connect Interface | | 556 | MPLS Cross Connect Interface |
| 557 | MPLS Cross Connect FEC | | 557 | MPLS Cross Connect FEC |
+-----------+----------------------------------+ +-----------+----------------------------------+
These are defined in the following sub-sections. These are defined in the following sub-sections.
4.6.1. MPLS Cross Connect Interface 4.6.1. MPLS Cross Connect Interface
The MPLS Cross Connect Interface sub-TLV is optional and contains the The MPLS Cross Connect Interface sub-TLV is optional and contains the
identifier of the interface (incoming or outgoing) in the form of an identifier of the interface (incoming or outgoing) in the form of an
IPv4 address or an IPv6 address. IPv4/IPv6 address and/or a local interface identifier.
The MPLS Cross Connect Interface sub-TLV has the following format: The MPLS Cross Connect Interface sub-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 18, line 39 skipping to change at page 18, line 39
status. These TLVs are carried in the optional non-transitive BGP status. These TLVs are carried in the optional non-transitive BGP
Attribute "LINK_STATE Attribute" defined in [RFC7752] and enable the Attribute "LINK_STATE Attribute" defined in [RFC7752] and enable the
same consistent form of reporting for SR Policy state irrespective of same consistent form of reporting for SR Policy state irrespective of
the Protocol-Origin used to provision the policy. Detailed procedure the Protocol-Origin used to provision the policy. Detailed procedure
is described in Section 7 . is described in Section 7 .
6.1. SR Binding SID 6.1. SR Binding SID
The SR Binding SID (BSID) is an optional TLV that provides the BSID The SR Binding SID (BSID) is an optional TLV that provides the BSID
and its attributes for the SR Policy CP. The TLV MAY also optionally and its attributes for the SR Policy CP. The TLV MAY also optionally
contain the Provisioned BSID value for reporting when explicitly contain the Specified BSID value for reporting as described in
provisioned. section 6.2.3 of [I-D.ietf-spring-segment-routing-policy].
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| BSID Flags | RESERVED | | BSID Flags | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Binding SID (4 or 16 octets) // | Binding SID (4 or 16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Provisioned Binding SID (4 or 16 octets) // | Specified Binding SID (4 or 16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o Type: 1201 o Type: 1201
o Length: variable (valid values are 12 or 36 octets) o Length: variable (valid values are 12 or 36 octets)
o BSID Flags: 2 octet field that indicates attribute and status of o BSID Flags: 2 octet field that indicates attribute and status of
the Binding SID (BSID) associated with this CP. The following bit the Binding SID (BSID) associated with this CP. The following bit
skipping to change at page 19, line 45 skipping to change at page 19, line 45
where: where:
* D-Flag : Indicates the dataplane for the BSIDs and if they are * D-Flag : Indicates the dataplane for the BSIDs and if they are
16 octet SRv6 SID when set and are 4 octet SR/MPLS label value 16 octet SRv6 SID when set and are 4 octet SR/MPLS label value
when clear. when clear.
* B-Flag : Indicates the allocation of the value in the BSID * B-Flag : Indicates the allocation of the value in the BSID
field when set and indicates that BSID is not allocated when field when set and indicates that BSID is not allocated when
clear. clear.
* U-Flag : Indicates the provisioned BSID value is unavailable * U-Flag : Indicates the specified BSID value is unavailable when
when set. set.
* L-Flag : Indicates the BSID value is from the Segment Routing * L-Flag : Indicates the BSID value is from the Segment Routing
Local Block (SRLB) of the headend node when set and is from the Local Block (SRLB) of the headend node when set and is from the
local dynamic label pool when clear local dynamic label pool when clear
* F-Flag : Indicates the BSID value is one allocated from dynamic * F-Flag : Indicates the BSID value is one allocated from dynamic
label pool due to fallback (e.g. when specified BSID is label pool due to fallback (e.g. when specified BSID is
unavailable) when set. unavailable) when set.
o RESERVED: 2 octets. SHOULD be set to 0 by originator and MUST be o RESERVED: 2 octets. SHOULD be set to 0 by originator and MUST be
ignored by receiver. ignored by receiver.
o Binding SID: It indicates the operational or allocated BSID value o Binding SID: It indicates the operational or allocated BSID value
for the CP based on the status flags. for the CP based on the status flags.
o Provisioned BSID: It is used to report the explicitly provisioned o Specified BSID: It is used to report the explicitly specified BSID
BSID value regardless of whether it is successfully allocated or value regardless of whether it is successfully allocated or not.
not. The field is set to value 0 when BSID has not been specified The field is set to value 0 when BSID has not been specified for
or provisioned for the CP. the CP.
The BSID fields above are 4 octet carrying the MPLS Label or 16 The BSID fields above are 4 octet carrying the MPLS Label or 16
octets carrying the SRv6 SID based on the BSID D-flag. When carrying octets carrying the SRv6 SID based on the BSID D-flag. When carrying
the MPLS Label, as shown in the figure below, the TC, S and TTL the MPLS Label, as shown in the figure below, the TC, S and TTL
(total of 12 bits) are RESERVED and SHOULD be set to 0 by originator (total of 12 bits) are RESERVED and SHOULD be set to 0 by originator
and MUST be ignored by the receiver. and MUST be ignored by the receiver.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Label | TC |S| TTL | | Label | TC |S| TTL |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
6.2. SR Candidate Path State In the case of an SRv6, the Binding SID sub-TLV does not have the
ability to signal the SRv6 Endpoint Behavior [RFC8986] or the
structure of the SID. It is RECOMMENDED that the SRv6 Binding SID
TLV defined in Section 6.2, that enables the specification of the
SRv6 Endpoint Behavior, be used for signaling of an SRv6 Binding SID
for an SR Policy candidate path.
6.2. SRv6 Binding SID
The SRv6 Binding SID (BSID) is an optional TLV that provides the SRv6
BSID and its attributes for the SR Policy CP. The TLV MAY also
optionally contain the Specified SRv6 BSID value for reporting as
described in section 6.2.3 of
[I-D.ietf-spring-segment-routing-policy].
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| BSID Flags | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Binding SID (16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Specified Binding SID (16 octets) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Sub-TLVs (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where:
o Type: TBD
o Length: variable
o BSID Flags: 2 octet field that indicates attribute and status of
the Binding SID (BSID) associated with this CP. The following bit
positions are defined and the semantics are described in detail in
[I-D.ietf-spring-segment-routing-policy]. Other bits SHOULD be
cleared by originator and MUST be ignored by receiver.
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|B|U|F| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where:
* B-Flag : Indicates the allocation of the value in the BSID
field when set and indicates that BSID is not allocated when
clear.
* U-Flag : Indicates the specified BSID value is unavailable when
set.
* F-Flag : Indicates the BSID value is one allocated dynamically
due to fallback (e.g. when specified BSID is unavailable) when
set.
o RESERVED: 2 octets. SHOULD be set to 0 by originator and MUST be
ignored by receiver.
o Binding SID: It indicates the operational or allocated BSID value
for the CP based on the status flags.
o Specified BSID: It is used to report the explicitly specified BSID
value regardless of whether it is successfully allocated or not.
The field is set to value 0 when BSID has not been specified for
the CP.
o Sub-TLVs : variable and contains any other optional attributes
associated with the SRv6 BSID.
The SRv6 Endpoint Behavior TLV (1250) and the SRv6 SID Structure TLV
(1252) defined in [I-D.ietf-idr-bgpls-srv6-ext] are used as sub-TLVs
of the SRv6 Binding SID TLV to optionally indicate the SRv6 Endpoint
behavior and SID structure for the Binding SID value in the TLV.
6.3. SR Candidate Path State
The SR Candidate Path (CP) State TLV provides the operational status The SR Candidate Path (CP) State TLV provides the operational status
and attributes of the SR Policy at the CP level. The TLV has the and attributes of the SR Policy at the CP level. The TLV has the
following format: 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 22, line 22 skipping to change at page 24, line 13
[I-D.ietf-spring-segment-routing-policy]. [I-D.ietf-spring-segment-routing-policy].
* T-Flag : Indicates the CP has been marked as eligible for use * T-Flag : Indicates the CP has been marked as eligible for use
as Transit Policy on the headend when set. Refer Section 8.3 as Transit Policy on the headend when set. Refer Section 8.3
of [I-D.ietf-spring-segment-routing-policy]. of [I-D.ietf-spring-segment-routing-policy].
o Preference : 4 octet value which indicates the preference of the o Preference : 4 octet value which indicates the preference of the
CP. Refer Section 2.7 of CP. Refer Section 2.7 of
[I-D.ietf-spring-segment-routing-policy]. [I-D.ietf-spring-segment-routing-policy].
6.3. SR Candidate Path Name 6.4. SR Policy Name
The SR Policy Name TLV is an optional TLV that is used to carry the
symbolic name associated with the SR Policy. 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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SR Policy Name (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where:
o Type: TBD
o Length: variable
o SR Policy Name : Symbolic name for the SR Policy without a NULL
terminator as specified in section 2.6 of
[I-D.ietf-spring-segment-routing-policy]. It is RECOMMENDED that
the size of the symbolic name be limited to 255 bytes.
Implementations MAY choose to truncate long names to 255 bytes
when signaling via BGP-LS.
6.5. SR Candidate Path Name
The SR Candidate Path Name TLV is an optional TLV that is used to The SR Candidate Path Name TLV is an optional TLV that is used to
carry the symbolic name associated with the candidate path. The TLV carry the symbolic name associated with the candidate path. The TLV
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Candidate Path Symbolic Name (variable) // | Candidate Path Name (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o Type: 1203 o Type: 1203
o Length: variable o Length: variable
o CP Name : Symbolic name for the CP. It is a string of printable o Candidate Path Name : Symbolic name for the SR Policy candidate
ASCII characters without a NULL terminator. path without a NULL terminator as specified in section 2.6 of
[I-D.ietf-spring-segment-routing-policy]. It is RECOMMENDED that
the size of the symbolic name be limited to 255 bytes.
Implementations MAY choose to truncate long names to 255 bytes
when signaling via BGP-LS.
6.4. SR Candidate Path Constraints 6.6. SR Candidate Path Constraints
The SR Candidate Path Constraints TLV is an optional TLV that is used The SR Candidate Path Constraints TLV is an optional TLV that is used
to report the constraints associated with the candidate path. The to report the constraints associated with the candidate path. The
constraints are generally applied to a dynamic candidate path which constraints are generally applied to a dynamic candidate path which
is computed by the headend. The constraints may also be applied to is computed by the headend. The constraints may also be applied to
an explicit path where the headend is expected to validate that the an explicit path where the headend is expected to validate that the
path expresses satisfies the specified constraints and the path is to path expresses satisfies the specified constraints and the path is to
be invalidated by the headend when the constraints are no longer met be invalidated by the headend when the constraints are no longer met
(e.g. due to topology changes). (e.g. due to topology changes).
skipping to change at page 24, line 29 skipping to change at page 27, line 11
o RESERVED: 1 octet. SHOULD be set to 0 by originator and MUST be o RESERVED: 1 octet. SHOULD be set to 0 by originator and MUST be
ignored by receiver. ignored by receiver.
o sub-TLVs: optional sub-TLVs MAY be included in this TLV to o sub-TLVs: optional sub-TLVs MAY be included in this TLV to
describe other constraints. describe other constraints.
The following constraint sub-TLVs are defined for the SR CP The following constraint sub-TLVs are defined for the SR CP
Constraints TLV. Constraints TLV.
6.4.1. SR Affinity Constraint 6.6.1. SR Affinity Constraint
The SR Affinity Constraint sub-TLV is an optional sub-TLV that is The SR Affinity Constraint sub-TLV is an optional sub-TLV that is
used to carry the affinity constraints [RFC2702] associated with the used to carry the affinity constraints [RFC2702] associated with the
candidate path. The affinity is expressed in terms of Extended Admin candidate path. The affinity is expressed in terms of Extended Admin
Group (EAG) as defined in [RFC7308]. The TLV has the following Group (EAG) as defined in [RFC7308]. The TLV 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 25, line 37 skipping to change at page 28, line 19
o Exclude-Any EAG : the bitmask used to represent the affinities to o Exclude-Any EAG : the bitmask used to represent the affinities to
be excluded from the path. be excluded from the path.
o Include-Any EAG : the bitmask used to represent the affinities to o Include-Any EAG : the bitmask used to represent the affinities to
be included in the path. be included in the path.
o Include-All EAG : the bitmask used to represent the all affinities o Include-All EAG : the bitmask used to represent the all affinities
to be included in the path. to be included in the path.
6.4.2. SR SRLG Constraint 6.6.2. SR SRLG Constraint
The SR SRLG Constraint sub-TLV is an optional sub-TLV that is used to The SR SRLG Constraint sub-TLV is an optional sub-TLV that is used to
carry the Shared Risk Link Group (SRLG) values [RFC4202] that are to carry the Shared Risk Link Group (SRLG) values [RFC4202] that are to
be excluded from the candidate path. The TLV has the following be excluded from the candidate path. The TLV 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 |
skipping to change at page 26, line 12 skipping to change at page 28, line 43
where: where:
o Type: 1209 o Type: 1209
o Length: variable, dependent on the number of SRLGs encoded. MUST o Length: variable, dependent on the number of SRLGs encoded. MUST
be a multiple of 4 octets. be a multiple of 4 octets.
o SRLG Values : One or more SRLG values (each of 4 octets). o SRLG Values : One or more SRLG values (each of 4 octets).
6.4.3. SR Bandwidth Constraint 6.6.3. SR Bandwidth Constraint
The SR Bandwidth Constraint sub-TLV is an optional sub-TLV that is The SR Bandwidth Constraint sub-TLV is an optional sub-TLV that is
used to indicate the desired bandwidth availability that needs to be used to indicate the desired bandwidth availability that needs to be
ensured for the candidate path. The TLV has the following format: ensured for the candidate path. 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 26, line 35 skipping to change at page 29, line 22
where: where:
o Type: 1210 o Type: 1210
o Length: 4 octects o Length: 4 octects
o Bandwidth : 4 octets which specify the desired bandwidth in unit o Bandwidth : 4 octets which specify the desired bandwidth in unit
of bytes per second in IEEE floating point format. of bytes per second in IEEE floating point format.
6.4.4. SR Disjoint Group Constraint 6.6.4. SR Disjoint Group Constraint
The SR Disjoint Group Constraint sub-TLV is an optional sub-TLV that The SR Disjoint Group Constraint sub-TLV is an optional sub-TLV that
is used to carry the disjointness constraint associated with the is used to carry the disjointness constraint associated with the
candidate path. The disjointness between two SR Policy Candidate candidate path. The disjointness between two SR Policy Candidate
Paths is expressed by associating them with the same disjoint group Paths is expressed by associating them with the same disjoint group
identifier and then specifying the type of disjointness required identifier and then specifying the type of disjointness required
between their paths. The computation is expected to achieve the between their paths. The computation is expected to achieve the
highest level of disjointness requested and when that is not possible highest level of disjointness requested and when that is not possible
then fallback to a lesser level progressively based on the levels then fallback to a lesser level progressively based on the levels
indicated. indicated.
skipping to change at page 28, line 34 skipping to change at page 31, line 18
* X-Flag : Indicates that the disjointness constraint could not * X-Flag : Indicates that the disjointness constraint could not
be achieved and hence path has been invalidated be achieved and hence path has been invalidated
o RESERVED: 2 octets. SHOULD be set to 0 by originator and MUST be o RESERVED: 2 octets. SHOULD be set to 0 by originator and MUST be
ignored by receiver. ignored by receiver.
o Disjointness Group Identifier : 4 octet value that is the group o Disjointness Group Identifier : 4 octet value that is the group
identifier for a set of disjoint paths identifier for a set of disjoint paths
6.5. SR Segment List 6.7. SR Segment List
The SR Segment List TLV is used to report the SID-List(s) of a The SR Segment List TLV is used to report the SID-List(s) of a
candidate path. The TLV has following format: candidate path. The TLV has 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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flags | RESERVED | | Flags | RESERVED |
skipping to change at page 30, line 44 skipping to change at page 33, line 19
ignored by receiver. ignored by receiver.
o Weight: 4 octet field that indicates the weight associated with o Weight: 4 octet field that indicates the weight associated with
the SID-List for weighted load-balancing. Refer Section 2.2 and the SID-List for weighted load-balancing. Refer Section 2.2 and
2.11 of [I-D.ietf-spring-segment-routing-policy]. 2.11 of [I-D.ietf-spring-segment-routing-policy].
o Sub-TLVs : variable and contains the ordered set of Segments and o Sub-TLVs : variable and contains the ordered set of Segments and
any other optional attributes associated with the specific SID- any other optional attributes associated with the specific SID-
List. List.
The SR Segment sub-TLV (defined in Section 6.6) MUST be included as The SR Segment sub-TLV (defined in Section 6.8) MUST be included as
an ordered set of sub-TLVs within the SR Segment List TLV when the an ordered set of sub-TLVs within the SR Segment List TLV when the
SID-List is not empty. A SID-List may be empty in certain cases SID-List is not empty. A SID-List may be empty in certain cases
(e.g. for a dynamic path) where the headend has not yet performed the (e.g. for a dynamic path) where the headend has not yet performed the
computation and hence not derived the segments required for the path; computation and hence not derived the segments required for the path;
in such cases, the SR Segment List TLV SHOULD NOT include any SR in such cases, the SR Segment List TLV SHOULD NOT include any SR
Segment sub-TLVs. Segment sub-TLVs.
6.6. SR Segment 6.8. SR Segment
The SR Segment sub-TLV describes a single segment in a SID-List. One The SR Segment sub-TLV describes a single segment in a SID-List. One
or more instances of this sub-TLV in an ordered manner constitute a or more instances of this sub-TLV in an ordered manner constitute a
SID-List for a SR Policy candidate path. It is a sub-TLV of the SR SID-List for a SR Policy candidate path. It is a sub-TLV of the SR
Segment List TLV and has following format: Segment List TLV and has 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 31, line 31 skipping to change at page 34, line 4
// Segment Descriptor (variable) // // Segment Descriptor (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Sub-TLVs (variable) // // Sub-TLVs (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o Type: 1206 o Type: 1206
o Length: variable o Length: variable
o Segment Type : 1 octet which indicates the type of segment (refer o Segment Type : 1 octet which indicates the type of segment (refer
Section 6.6.1 for details) Section 6.8.1 for details)
o RESERVED: 1 octet. SHOULD be set to 0 by originator and MUST be o RESERVED: 1 octet. SHOULD be set to 0 by originator and MUST be
ignored by receiver. ignored by receiver.
o Flags: 2 octet field that indicates attribute and status of the o Flags: 2 octet field that indicates attribute and status of the
Segment and its SID. The following bit positions are defined and Segment and its SID. The following bit positions are defined and
the semantics are described in detail in the semantics are described in detail in
[I-D.ietf-spring-segment-routing-policy]. Other bits SHOULD be [I-D.ietf-spring-segment-routing-policy]. Other bits SHOULD be
cleared by originator and MUST be ignored by receiver. cleared by originator and MUST be ignored by receiver.
skipping to change at page 32, line 37 skipping to change at page 35, line 12
are RESERVED and SHOULD be set to 0 by originator and MUST be are RESERVED and SHOULD be set to 0 by originator and MUST be
ignored by the receiver. ignored by the receiver.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Label | TC |S| TTL | | Label | TC |S| TTL |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o Segment Descriptor : variable size Segment descriptor based on the o Segment Descriptor : variable size Segment descriptor based on the
type of segment (refer Section 6.6.1 for details) type of segment (refer Section 6.8.1 for details)
o Sub-Sub-TLVs : variable and contains any other optional attributes o Sub-Sub-TLVs : variable and contains any other optional attributes
associated with the specific SID-List. associated with the specific segment.
Currently no Sub-Sub-TLV of the SR Segment sub-TLV is defined. The SRv6 Endpoint Behavior TLV (1250) and the SRv6 SID Structure TLV
(1252) defined in [I-D.ietf-idr-bgpls-srv6-ext] are used as sub-sub-
TLVs of the SR Segment sub-TLV to optionally indicate the SRv6
Endpoint behavior and SID structure when advertising the SRv6
specific segment types.
6.6.1. Segment Descriptors 6.8.1. Segment Descriptors
[I-D.ietf-spring-segment-routing-policy] section 4 defines multiple [I-D.ietf-spring-segment-routing-policy] section 4 defines multiple
types of segments and their description. This section defines the types of segments and their description. This section defines the
encoding of the Segment Descriptors for each of those Segment types encoding of the Segment Descriptors for each of those Segment types
to be used in the Segment sub-TLV describes previously in to be used in the Segment sub-TLV describes previously in
Section 6.6. Section 6.8.
The following types are currently defined: The following types are currently defined:
+-------+--------------------------------------------------------------+ +-------+--------------------------------------------------------------+
| Type | Segment Description | | Type | Segment Description |
+-------+--------------------------------------------------------------+ +-------+--------------------------------------------------------------+
| 0 | Invalid | | 0 | Invalid |
| 1 | SR-MPLS Label | | 1 | SR-MPLS Label |
| 2 | SRv6 SID as IPv6 address | | 2 | SRv6 SID as IPv6 address |
| 3 | SR-MPLS Prefix SID as IPv4 Node Address | | 3 | SR-MPLS Prefix SID as IPv4 Node Address |
skipping to change at page 33, line 30 skipping to change at page 36, line 28
| | Interface ID for Local & Remote nodes | | | Interface ID for Local & Remote nodes |
| 8 | SR-MPLS Adjacency SID as pair of IPv6 Global Addresses for | | 8 | SR-MPLS Adjacency SID as pair of IPv6 Global Addresses for |
| | the Local & Remote Interface | | | the Local & Remote Interface |
| 9 | SRv6 END SID as IPv6 Node Global Address | | 9 | SRv6 END SID as IPv6 Node Global Address |
| 10 | SRv6 END.X SID as pair of IPv6 Global Address & Interface ID | | 10 | SRv6 END.X SID as pair of IPv6 Global Address & Interface ID |
| | for Local & Remote nodes | | | for Local & Remote nodes |
| 11 | SRv6 END.X SID as pair of IPv6 Global Addresses for the | | 11 | SRv6 END.X SID as pair of IPv6 Global Addresses for the |
| | Local & Remote Interface | | | Local & Remote Interface |
+-------+--------------------------------------------------------------+ +-------+--------------------------------------------------------------+
6.6.1.1. Type 1: SR-MPLS Label 6.8.1.1. Type 1: SR-MPLS Label
The Segment is SR-MPLS type and is specified simply as the label. The Segment is SR-MPLS type and is specified simply as the label.
The format of its Segment Descriptor is as follows: The format of its Segment Descriptor is 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
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Algorithm | | Algorithm |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Where: Where:
o Algorithm: 1 octet value that indicates the algorithm used for o Algorithm: 1 octet value that indicates the algorithm used for
picking the SID. This is valid only when the A-flag has been set picking the SID. This is valid only when the A-flag has been set
in the Segment TLV. in the Segment TLV.
6.6.1.2. Type 2: SRv6 SID 6.8.1.2. Type 2: SRv6 SID
The Segment is SRv6 type and is specified simply as the SRv6 SID The Segment is SRv6 type and is specified simply as the SRv6 SID
address. The format of its Segment Descriptor is as follows: address. The format of its Segment Descriptor is 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
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Algorithm | | Algorithm |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
Where: Where:
o Algorithm: 1 octet value that indicates the algorithm used for o Algorithm: 1 octet value that indicates the algorithm used for
picking the SID. This is valid only when the A-flag has been set picking the SID. This is valid only when the A-flag has been set
in the Segment TLV. in the Segment TLV.
6.6.1.3. Type 3: SR-MPLS Prefix SID for IPv4 6.8.1.3. Type 3: SR-MPLS Prefix SID for IPv4
The Segment is SR-MPLS Prefix SID type and is specified as an IPv4 The Segment is SR-MPLS Prefix SID type and is specified as an IPv4
node address. The format of its Segment Descriptor is as follows: node address. The format of its Segment Descriptor is 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
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Algorithm | | Algorithm |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Node Address (4 octets) | | IPv4 Node Address (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where: Where:
o Algorithm: 1 octet value that indicates the algorithm used for o Algorithm: 1 octet value that indicates the algorithm used for
picking the SID picking the SID
o IPv4 Node Address: 4 octet value which carries the IPv4 address o IPv4 Node Address: 4 octet value which carries the IPv4 address
associated with the node associated with the node
6.6.1.4. Type 4: SR-MPLS Prefix SID for IPv6 6.8.1.4. Type 4: SR-MPLS Prefix SID for IPv6
The Segment is SR-MPLS Prefix SID type and is specified as an IPv6 The Segment is SR-MPLS Prefix SID type and is specified as an IPv6
global address. The format of its Segment Descriptor is as follows: global address. The format of its Segment Descriptor is 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
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Algorithm | | Algorithm |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Node Global Address (16 octets) | | IPv6 Node Global Address (16 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where: Where:
o Algorithm: 1 octet value that indicates the algorithm used for o Algorithm: 1 octet value that indicates the algorithm used for
picking the SID picking the SID
o IPv6 Node Global Address: 16 octet value which carries the IPv6 o IPv6 Node Global Address: 16 octet value which carries the IPv6
global address associated with the node global address associated with the node
6.6.1.5. Type 5: SR-MPLS Adjacency SID for IPv4 with Interface ID 6.8.1.5. Type 5: SR-MPLS Adjacency SID for IPv4 with Interface ID
The Segment is SR-MPLS Adjacency SID type and is specified as an IPv4 The Segment is SR-MPLS Adjacency SID type and is specified as an IPv4
node address along with the local interface ID on that node. The node address along with the local interface ID on that node. The
format of its Segment Descriptor is as follows: format of its Segment Descriptor is 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Node Address (4 octets) | | IPv4 Node Address (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 35, line 33 skipping to change at page 38, line 33
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where: Where:
o IPv4 Node Address: 4 octet value which carries the IPv4 address o IPv4 Node Address: 4 octet value which carries the IPv4 address
associated with the node associated with the node
o Local Interface ID : 4 octet value which carries the local o Local Interface ID : 4 octet value which carries the local
interface ID of the node identified by the Node Address interface ID of the node identified by the Node Address
6.6.1.6. Type 6: SR-MPLS Adjacency SID for IPv4 with Interface Address 6.8.1.6. Type 6: SR-MPLS Adjacency SID for IPv4 with Interface Address
The Segment is SR-MPLS Adjacency SID type and is specified as a pair The Segment is SR-MPLS Adjacency SID type and is specified as a pair
of IPv4 local and remote addresses. The format of its Segment of IPv4 local and remote addresses. The format of its Segment
Descriptor is as follows: Descriptor is 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Local Address (4 octets) | | IPv4 Local Address (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 36, line 10 skipping to change at page 39, line 10
Where: Where:
o IPv4 Local Address: 4 octet value which carries the local IPv4 o IPv4 Local Address: 4 octet value which carries the local IPv4
address associated with the node address associated with the node
o IPv4 Remote Address: 4 octet value which carries the remote IPv4 o IPv4 Remote Address: 4 octet value which carries the remote IPv4
address associated with the node's neighbor. This is optional and address associated with the node's neighbor. This is optional and
MAY be set to 0 when not used (e.g. when identifying point-to- MAY be set to 0 when not used (e.g. when identifying point-to-
point links). point links).
6.6.1.7. Type 7: SR-MPLS Adjacency SID for IPv6 with interface ID 6.8.1.7. Type 7: SR-MPLS Adjacency SID for IPv6 with interface ID
The Segment is SR-MPLS Adjacency SID type and is specified as a pair The Segment is SR-MPLS Adjacency SID type and is specified as a pair
of IPv6 global address and interface ID for local and remote nodes. of IPv6 global address and interface ID for local and remote nodes.
The format of its Segment Descriptor is as follows: The format of its Segment Descriptor is 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Local Node Global Address (16 octets) | | IPv6 Local Node Global Address (16 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 36, line 47 skipping to change at page 39, line 47
o IPv6 Remote Node Global Address: 16 octet value which carries the o IPv6 Remote Node Global Address: 16 octet value which carries the
IPv6 global address associated with the remote node. This is IPv6 global address associated with the remote node. This is
optional and MAY be set to 0 when not used (e.g. when identifying optional and MAY be set to 0 when not used (e.g. when identifying
point-to-point links). point-to-point links).
o Remote Node Interface ID : 4 octet value which carries the o Remote Node Interface ID : 4 octet value which carries the
interface ID of the remote node identified by the Remote Node interface ID of the remote node identified by the Remote Node
Address. This is optional and MAY be set to 0 when not used (e.g. Address. This is optional and MAY be set to 0 when not used (e.g.
when identifying point-to-point links). when identifying point-to-point links).
6.6.1.8. Type 8: SR-MPLS Adjacency SID for IPv6 with interface address 6.8.1.8. Type 8: SR-MPLS Adjacency SID for IPv6 with interface address
The Segment is SR-MPLS Adjacency SID type and is specified as a pair The Segment is SR-MPLS Adjacency SID type and is specified as a pair
of IPv6 Global addresses for local and remote interface addresses. of IPv6 Global addresses for local and remote interface addresses.
The format of its Segment Descriptor is as follows: The format of its Segment Descriptor is 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Global IPv6 Local Interface Address (16 octets) | | Global IPv6 Local Interface Address (16 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 37, line 21 skipping to change at page 40, line 21
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where: Where:
o IPv6 Local Address: 16 octet value which carries the local IPv6 o IPv6 Local Address: 16 octet value which carries the local IPv6
address associated with the node address associated with the node
o IPv6 Remote Address: 16 octet value which carries the remote IPv6 o IPv6 Remote Address: 16 octet value which carries the remote IPv6
address associated with the node's neighbor address associated with the node's neighbor
6.6.1.9. Type 9: SRv6 END SID as IPv6 Node Address 6.8.1.9. Type 9: SRv6 END SID as IPv6 Node Address
The Segment is SRv6 END SID type and is specified as an IPv6 global The Segment is SRv6 END SID type and is specified as an IPv6 global
address. The format of its Segment Descriptor is as follows: address. The format of its Segment Descriptor is 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
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| Algorithm | | Algorithm |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Node Global Address (16 octets) | | IPv6 Node Global Address (16 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where: Where:
o Algorithm: 1 octet value that indicates the algorithm used for o Algorithm: 1 octet value that indicates the algorithm used for
picking the SID picking the SID
o IPv6 Node Global Address: 16 octet value which carries the IPv6 o IPv6 Node Global Address: 16 octet value which carries the IPv6
global address associated with the node global address associated with the node
6.6.1.10. Type 10: SRv6 END.X SID as interface ID 6.8.1.10. Type 10: SRv6 END.X SID as interface ID
The Segment is SRv6 END.X SID type and is specified as a pair of IPv6 The Segment is SRv6 END.X SID type and is specified as a pair of IPv6
global address and interface ID for local and remote nodes. The global address and interface ID for local and remote nodes. The
format of its Segment Descriptor is as follows: format of its Segment Descriptor is 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Local Node Global Address (16 octets) | | IPv6 Local Node Global Address (16 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 38, line 36 skipping to change at page 41, line 36
o IPv6 Remote Node Global Address: 16 octet value which carries the o IPv6 Remote Node Global Address: 16 octet value which carries the
IPv6 global address associated with the remote node. This is IPv6 global address associated with the remote node. This is
optional and MAY be set to 0 when not used (e.g. when identifying optional and MAY be set to 0 when not used (e.g. when identifying
point-to-point links). point-to-point links).
o Remote Node Interface ID : 4 octet value which carries the o Remote Node Interface ID : 4 octet value which carries the
interface ID of the remote node identified by the Remote Node interface ID of the remote node identified by the Remote Node
Address. This is optional and MAY be set to 0 when not used (e.g. Address. This is optional and MAY be set to 0 when not used (e.g.
when identifying point-to-point links). when identifying point-to-point links).
6.6.1.11. Type 11: SRv6 END.X SID as interface address 6.8.1.11. Type 11: SRv6 END.X SID as interface address
The Segment is SRv6 END.X SID type and is specified as a pair of IPv6 The Segment is SRv6 END.X SID type and is specified as a pair of IPv6
Global addresses for local and remote interface addresses. The Global addresses for local and remote interface addresses. The
format of its Segment Descriptor is as follows: format of its Segment Descriptor is 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Global IPv6 Local Interface Address (16 octets) | | Global IPv6 Local Interface Address (16 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 39, line 11 skipping to change at page 42, line 11
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where: Where:
o IPv6 Local Address: 16 octet value which carries the local IPv6 o IPv6 Local Address: 16 octet value which carries the local IPv6
address associated with the node address associated with the node
o IPv6 Remote Address: 16 octet value which carries the remote IPv6 o IPv6 Remote Address: 16 octet value which carries the remote IPv6
address associated with the node's neighbor address associated with the node's neighbor
6.7. SR Segment List Metric 6.9. SR Segment List Metric
The SR Segment List Metric sub-TLV describes the metric used for The SR Segment List Metric sub-TLV describes the metric used for
computation of the SID-List. It is used to report the type of metric computation of the SID-List. It is used to report the type of metric
used in the computation of a dynamic path either on the headend or used in the computation of a dynamic path either on the headend or
when the path computation is delegated to a PCE/controller. When the when the path computation is delegated to a PCE/controller. When the
path computation is done on the headend, it is also used to report path computation is done on the headend, it is also used to report
the calculated metric for the path. the calculated metric for the path.
It is a sub-TLV of the SR Segment List TLV and has following format: It is a sub-TLV of the SR Segment List TLV and has following format:
skipping to change at page 41, line 28 skipping to change at page 44, line 28
to to encode the related PCEP objects corresponding to the LSP as to to encode the related PCEP objects corresponding to the LSP as
defined in Section 5.2. defined in Section 5.2.
For SR Policies, the NLRI descriptor TLV as specified in Section 4.5 For SR Policies, the NLRI descriptor TLV as specified in Section 4.5
is used. An SR Policy candidate path (CP) may be instantiated on the is used. An SR Policy candidate path (CP) may be instantiated on the
headend node via a local configuration, PCEP or BGP SR Policy headend node via a local configuration, PCEP or BGP SR Policy
signaling and this is indicated via the SR Protocol Origin. Then the signaling and this is indicated via the SR Protocol Origin. Then the
SR Policy Candidate Path's attribute and state is encoded in the BGP- SR Policy Candidate Path's attribute and state is encoded in the BGP-
LS Attribute field as SR Policy State TLVs and sub-TLVs as described LS Attribute field as SR Policy State TLVs and sub-TLVs as described
in Section 6. The SR Candidate Path State TLV as defined in in Section 6. The SR Candidate Path State TLV as defined in
Section 6.2 is included to report the state of the CP. The SR BSID Section 6.3 is included to report the state of the CP. The SR BSID
TLV as defined in Section 6.1 is included to report the BSID of the TLV as defined in Section 6.1 or Section 6.2 is included to report
CP when one is either provisioned or allocated by the headend. The the BSID of the CP when one is either specified or allocated by the
constraints for the SR Policy Candidate Path are reported using the headend. The constraints for the SR Policy Candidate Path are
SR Candidate Path Constraints TLV as described in Section 6.4.The SR reported using the SR Candidate Path Constraints TLV as described in
Segment List TLV is included for each of the SID-List(s) associated Section 6.6.The SR Segment List TLV is included for each of the SID-
with the CP. Each SR Segment List TLV in turn includes SR Segment List(s) associated with the CP. Each SR Segment List TLV in turn
sub-TLV(s) to report the segment(s) and their status. The SR Segment includes SR Segment sub-TLV(s) to report the segment(s) and their
List Metric sub-TLV is used to report the metric values and status. The SR Segment List Metric sub-TLV is used to report the
constraints for the specific SID List. metric values and constraints for the specific SID List.
When the SR Policy CP is setup with the help of PCEP signaling then When the SR Policy CP is setup with the help of PCEP signaling then
another MPLS-TE Policy State TLV MAY be used to to encode the related another MPLS-TE Policy State TLV MAY be used to to encode the related
PCEP objects corresponding to the LSP as defined in Section 5.2 PCEP objects corresponding to the LSP as defined in Section 5.2
specifically to report information and status that is not covered by specifically to report information and status that is not covered by
the defined TLVs under Section 6. In the event of a conflict of the defined TLVs under Section 6. In the event of a conflict of
information, the receiver MUST prefer the information originated via information, the receiver MUST prefer the information originated via
TLVs defined in Section 6 over the PCEP objects reported via the TE TLVs defined in Section 6 over the PCEP objects reported via the TE
Policy State TLV. Policy State TLV.
skipping to change at page 43, line 32 skipping to change at page 46, line 32
| 1202 | SR CP State TLV | this document | | 1202 | SR CP State TLV | this document |
| 1203 | SR CP Name TLV | this document | | 1203 | SR CP Name TLV | this document |
| 1204 | SR CP Constraints TLV | this document | | 1204 | SR CP Constraints TLV | this document |
| 1205 | SR Segment List TLV | this document | | 1205 | SR Segment List TLV | this document |
| 1206 | SR Segment sub-TLV | this document | | 1206 | SR Segment sub-TLV | this document |
| 1207 | SR Segment List Metric sub-TLV | this document | | 1207 | SR Segment List Metric sub-TLV | this document |
| 1208 | SR Affinity Constraint sub-TLV | this document | | 1208 | SR Affinity Constraint sub-TLV | this document |
| 1209 | SR SRLG Constraint sub-TLV | this document | | 1209 | SR SRLG Constraint sub-TLV | this document |
| 1210 | SR Bandwidth Constraint sub-TLV | this document | | 1210 | SR Bandwidth Constraint sub-TLV | this document |
| 1211 | SR Disjoint Group Constraint sub-TLV | this document | | 1211 | SR Disjoint Group Constraint sub-TLV | this document |
| TBD | SRv6 BSID TLV | this document |
| TBD | SR Policy Name TLV | this document |
+----------+----------------------------------------+---------------+ +----------+----------------------------------------+---------------+
9.4. BGP-LS SR Policy Protocol Origin 9.4. BGP-LS SR Policy 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 "SR Policy Protocol Origin" and contains the registry is called "SR Policy Protocol Origin" and contains the
codepoints allocated to the "Protocol Origin" field defined in codepoints allocated to the "Protocol Origin" field defined in
Section 4.5. The registry contains the following codepoints, with Section 4.5. The registry contains the following codepoints, with
initial values, to be assigned by IANA: initial values, to be assigned by IANA:
skipping to change at page 44, line 45 skipping to change at page 47, line 45
| 1 | MPLS-IPv4 | | 1 | MPLS-IPv4 |
| 2 | MPLS-IPv6 | | 2 | MPLS-IPv6 |
+----------+------------------+ +----------+------------------+
9.7. BGP-LS SR Segment Descriptors 9.7. BGP-LS SR Segment Descriptors
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 "SR Segment Descriptor Types" and contains the registry is called "SR Segment Descriptor Types" and contains the
codepoints allocated to the "Segment Type" field defined in codepoints allocated to the "Segment Type" field defined in
Section 6.6 and described in Section 6.6.1. The registry contains Section 6.8 and described in Section 6.8.1. The registry contains
the following codepoints, with initial values, to be assigned by the following codepoints, with initial values, to be assigned by
IANA: IANA:
+-------+--------------------------------------------------------------+ +-------+--------------------------------------------------------------+
| Code | Segment Description | | Code | Segment Description |
| Point | | | Point | |
+-------+--------------------------------------------------------------+ +-------+--------------------------------------------------------------+
| 0 | Invalid | | 0 | Invalid |
| 1 | SR-MPLS Label | | 1 | SR-MPLS Label |
| 2 | SRv6 SID as IPv6 address | | 2 | SRv6 SID as IPv6 address |
skipping to change at page 45, line 34 skipping to change at page 48, line 34
| | for Local & Remote nodes | | | for Local & Remote nodes |
| 11 | SRv6 END.X SID as pair of IPv6 Global Addresses for the | | 11 | SRv6 END.X SID as pair of IPv6 Global Addresses for the |
| | Local & Remote Interface | | | Local & Remote Interface |
+-------+--------------------------------------------------------------+ +-------+--------------------------------------------------------------+
9.8. BGP-LS Metric Type 9.8. BGP-LS Metric Type
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 "Metric Type" and contains the codepoints registry is called "Metric Type" and contains the codepoints
allocated to the "metric type" field defined in Section 6.7. The allocated to the "metric type" field defined in Section 6.9. The
registry contains the following codepoints, with initial values, to registry contains the following codepoints, with initial values, to
be assigned by IANA: be assigned by IANA:
+------------+-----------------------------------------+ +------------+-----------------------------------------+
| Code Point | Metric Type | | Code Point | Metric Type |
+------------+-----------------------------------------+ +------------+-----------------------------------------+
| 0 | IGP Metric | | 0 | IGP Metric |
| 1 | Min Unidirectional Link Delay [RFC7471] | | 1 | Min Unidirectional Link Delay [RFC7471] |
| 2 | TE Metric [RFC3630] | | 2 | TE Metric [RFC3630] |
+------------+-----------------------------------------+ +------------+-----------------------------------------+
skipping to change at page 46, line 30 skipping to change at page 49, line 30
13. References 13. References
13.1. Normative References 13.1. Normative References
[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-idr-bgpls-srv6-ext]
Dawra, G., Filsfils, C., Talaulikar, K., Chen, M.,
Bernier, D., and B. Decraene, "BGP Link State Extensions
for SRv6", draft-ietf-idr-bgpls-srv6-ext-07 (work in
progress), March 2021.
[I-D.ietf-spring-segment-routing-policy] [I-D.ietf-spring-segment-routing-policy]
Filsfils, C., Talaulikar, K., Voyer, D., Bogdanov, A., and Filsfils, C., Talaulikar, K., Voyer, D., Bogdanov, A., and
P. Mattes, "Segment Routing Policy Architecture", draft- P. Mattes, "Segment Routing Policy Architecture", draft-
ietf-spring-segment-routing-policy-08 (work in progress), ietf-spring-segment-routing-policy-11 (work in progress),
July 2020. April 2021.
[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>.
[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, <https://www.rfc-editor.org/info/rfc2205>. September 1997, <https://www.rfc-editor.org/info/rfc2205>.
skipping to change at page 48, line 9 skipping to change at page 51, line 15
[RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and
S. Ray, "North-Bound Distribution of Link-State and S. Ray, "North-Bound Distribution of Link-State and
Traffic Engineering (TE) Information Using BGP", RFC 7752, Traffic Engineering (TE) Information Using BGP", RFC 7752,
DOI 10.17487/RFC7752, March 2016, DOI 10.17487/RFC7752, March 2016,
<https://www.rfc-editor.org/info/rfc7752>. <https://www.rfc-editor.org/info/rfc7752>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>. May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8986] Filsfils, C., Ed., Camarillo, P., Ed., Leddy, J., Voyer,
D., Matsushima, S., and Z. Li, "Segment Routing over IPv6
(SRv6) Network Programming", RFC 8986,
DOI 10.17487/RFC8986, February 2021,
<https://www.rfc-editor.org/info/rfc8986>.
13.2. Informative References 13.2. Informative References
[RFC2702] Awduche, D., Malcolm, J., Agogbua, J., O'Dell, M., and J. [RFC2702] Awduche, D., Malcolm, J., Agogbua, J., O'Dell, M., and J.
McManus, "Requirements for Traffic Engineering Over MPLS", McManus, "Requirements for Traffic Engineering Over MPLS",
RFC 2702, DOI 10.17487/RFC2702, September 1999, RFC 2702, DOI 10.17487/RFC2702, September 1999,
<https://www.rfc-editor.org/info/rfc2702>. <https://www.rfc-editor.org/info/rfc2702>.
[RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering [RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering
(TE) Extensions to OSPF Version 2", RFC 3630, (TE) Extensions to OSPF Version 2", RFC 3630,
DOI 10.17487/RFC3630, September 2003, DOI 10.17487/RFC3630, September 2003,
 End of changes. 49 change blocks. 
90 lines changed or deleted 221 lines changed or added

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