draft-ietf-isis-mpls-elc-12.txt   draft-ietf-isis-mpls-elc-13.txt 
Network Working Group X. Xu LSR Working Group X. Xu
Internet-Draft Alibaba Inc Internet-Draft Alibaba Inc
Intended status: Standards Track S. Kini Intended status: Standards Track S. Kini
Expires: October 30, 2020 Expires: November 29, 2020
P. Psenak P. Psenak
C. Filsfils C. Filsfils
S. Litkowski S. Litkowski
Cisco Systems, Inc. Cisco Systems, Inc.
M. Bocci M. Bocci
Nokia Nokia
April 28, 2020 May 28, 2020
Signaling Entropy Label Capability and Entropy Readable Label Depth Signaling Entropy Label Capability and Entropy Readable Label Depth
Using IS-IS Using IS-IS
draft-ietf-isis-mpls-elc-12 draft-ietf-isis-mpls-elc-13
Abstract Abstract
Multiprotocol Label Switching (MPLS) has defined a mechanism to load- Multiprotocol Label Switching (MPLS) has defined a mechanism to load-
balance traffic flows using Entropy Labels (EL). An ingress Label balance traffic flows using Entropy Labels (EL). An ingress Label
Switching Router (LSR) cannot insert ELs for packets going into a Switching Router (LSR) cannot insert ELs for packets going into a
given Label Switched Path (LSP) unless an egress LSR has indicated given Label Switched Path (LSP) unless an egress LSR has indicated
via signaling that it has the capability to process ELs, referred to via signaling that it has the capability to process ELs, referred to
as the Entropy Label Capability (ELC), on that tunnel. In addition, as the Entropy Label Capability (ELC), on that LSP. In addition, it
it would be useful for ingress LSRs to know each LSR's capability for would be useful for ingress LSRs to know each LSR's capability for
reading the maximum label stack depth and performing EL-based load- reading the maximum label stack depth and performing EL-based load-
balancing, referred to as Entropy Readable Label Depth (ERLD). This balancing, referred to as Entropy Readable Label Depth (ERLD). This
document defines a mechanism to signal these two capabilities using document defines a mechanism to signal these two capabilities using
IS-IS. IS-IS and BGP-LS.
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
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
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 October 30, 2020. This Internet-Draft will expire on November 29, 2020.
Copyright Notice Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the Copyright (c) 2020 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 46 skipping to change at page 2, line 46
1. Introduction 1. Introduction
[RFC6790] describes a method to load-balance Multiprotocol Label [RFC6790] describes a method to load-balance Multiprotocol Label
Switching (MPLS) traffic flows using Entropy Labels (EL). It also Switching (MPLS) traffic flows using Entropy Labels (EL). It also
introduces the concept of Entropy Label Capability (ELC) and defines introduces the concept of Entropy Label Capability (ELC) and defines
the signaling of this capability via MPLS signaling protocols. the signaling of this capability via MPLS signaling protocols.
Recently, mechanisms have been defined to signal labels via link- Recently, mechanisms have been defined to signal labels via link-
state Interior Gateway Protocols (IGP) such as IS-IS [RFC8667]. This state Interior Gateway Protocols (IGP) such as IS-IS [RFC8667]. This
draft defines a mechanism to signal the ELC using IS-IS. draft defines a mechanism to signal the ELC using IS-IS.
In cases where LSPs are used (e.g., SR-MPLS [RFC8660], it would be In cases where Segment Routing (SR) is used with the MPLS Data Plane
useful for ingress LSRs to know each intermediate LSR's capability of (e.g., SR-MPLS [RFC8660]), it would be useful for ingress LSRs to
reading the maximum label stack depth and performing EL-based load- know each intermediate LSR's capability of reading the maximum label
balancing. This capability, referred to as Entropy Readable Label stack depth and performing EL-based load-balancing. This capability,
Depth (ERLD) as defined in [RFC8662] may be used by ingress LSRs to referred to as Entropy Readable Label Depth (ERLD) as defined in
determine the position of the EL label in the stack, and whether it's [RFC8662], may be used by ingress LSRs to determine the position of
necessary to insert multiple ELs at different positions in the label the EL label in the stack, and whether it's necessary to insert
stack. multiple ELs at different positions in the label stack. This
document defines a mechanism to signal the ERLD using IS-IS.
2. Terminology 2. Terminology
This memo makes use of the terms defined in [RFC6790], and [RFC8662]. This memo makes use of the terms defined in [RFC6790], and [RFC8662].
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP "OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here. capitals, as shown here.
3. Advertising ELC Using IS-IS 3. Advertising ELC Using IS-IS
Even though ELC is a property of the node, in some cases it is Even though ELC is a property of the node, in some cases it is
advantageous to associate and advertise the ELC with a prefix. In a advantageous to associate and advertise the ELC with a prefix. In a
multi-area network, routers may not know the identity of the prefix multi-area network, routers may not know the identity of the prefix
originator in a remote area, or may not know the capabilities of such originator in a remote area, or may not know the capabilities of such
originator. Similarly in a multi-domain network, the identity of the originator. Similarly, in a multi-domain network, the identity of
prefix originator and its capabilities may not be known to the the prefix originator and its capabilities may not be known to the
ingress LSR. ingress LSR.
Bit 3 in the Prefix Attribute Flags [RFC7794] is used as the ELC Flag Bit 3 in the Prefix Attribute Flags [RFC7794] is used as the ELC Flag
(E-flag), as shown in Figure 1. If a router has multiple interfaces, (E-flag), as shown in Figure 1. If a router has multiple interfaces,
the router MUST NOT announce the ELC for any local host prefixes the router MUST NOT announce the ELC for any local host prefixes
unless all of its interfaces are capable of processing ELs. If a unless all of its interfaces are capable of processing ELs. If a
router supports ELs on all of its interfaces, it SHOULD set the ELC router supports ELs on all of its interfaces, it SHOULD set the ELC
for every local host prefix it advertises in IS-IS. for every local host prefix it advertises in IS-IS.
0 1 2 3 4 5 6 7... 0 1 2 3 4 5 6 7...
+-+-+-+-+-+-+-+-+... +-+-+-+-+-+-+-+-+...
|X|R|N|E| ... |X|R|N|E| ...
+-+-+-+-+-+-+-+-+... +-+-+-+-+-+-+-+-+...
Figure 1: Prefix Attribute Flags Figure 1: Prefix Attribute Flags
E-flag: ELC Flag (Bit 3) - Set for local host prefix of the E-flag: ELC Flag (Bit 3) - Set for local host prefix of the
originating node if it supports ELC on all interfaces. originating node if it supports ELC on all interfaces.
When a router propagates a prefix between ISIS levels ([RFC5302], it The ELC signaling MUST be preserved when a router propagates a prefix
MUST preserve the ELC signaling for this prefix. between ISIS levels [RFC5302].
When redistributing a prefix between two IS-IS protocol instances or When redistributing a prefix between two IS-IS protocol instances or
redistributing from another protocol to an IS-IS protocol instance, a redistributing from another protocol to an IS-IS protocol instance, a
router SHOULD preserve the ELC signaling for that prefix. The exact router SHOULD preserve the ELC signaling for that prefix if it
mechanism used to exchange ELC between protocol instances running on exists. The exact mechanism used to exchange ELC between protocol
an Autonomous System Boundary Router (ASBR) is outside of the scope instances running on an Autonomous System Boundary Router is outside
of this document. of the scope of this document.
4. Advertising ERLD Using IS-IS 4. Advertising ERLD Using IS-IS
A new MSD-type [RFC8491], called ERLD-MSD is defined to advertise the A new MSD-Type [RFC8491], called ERLD-MSD, is defined to advertise
ERLD [RFC8662] of a given router. A MSD-Type code 2 has been the ERLD [RFC8662] of a given router. A MSD-Type code 2 has been
assigned by IANA for ERLD-MSD. The MSD-Value field is set to the assigned by IANA for ERLD-MSD. The MSD-Value field is set to the
ERLD in the range between 0 to 255. The scope of the advertisement ERLD in the range between 0 to 255. The scope of the advertisement
depends on the application. If a router has multiple interfaces with depends on the application. If a router has multiple interfaces with
different capabilities of reading the maximum label stack depth, the different capabilities of reading the maximum label stack depth, the
router MUST advertise the smallest one. router MUST advertise the smallest value found across all its
interfaces.
The absence of ERLD-MSD advertisements indicates only that the The absence of ERLD-MSD advertisements indicates only that the
advertising node does not support advertisement of this capability. advertising node does not support advertisement of this capability.
The considerations for advertising the ERLD are specified in The considerations for advertising the ERLD are specified in
[RFC8662]. [RFC8662].
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MSD-Type=TBD2 | ERLD |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: ERLD MSD-Type Format
If the ERLD-MSD Type is received in the Link MSD Sub-TLV, it MUST be If the ERLD-MSD Type is received in the Link MSD Sub-TLV, it MUST be
ignored. ignored.
5. Signaling ELC and ERLD in BGP-LS 5. Signaling ELC and ERLD in BGP-LS
The IS-IS extensions defined in this document can be advertised via The IS-IS extensions defined in this document can be advertised via
BGP-LS [RFC7752] using existing BGP-LS TLVs. BGP-LS (Distribution of Link-State and TE Information Using BGP)
[RFC7752] using existing BGP-LS TLVs.
The ELC is advertised using the Prefix Attribute Flags TLV as defined The ELC is advertised using the Prefix Attribute Flags TLV as defined
in [I-D.ietf-idr-bgp-ls-segment-routing-ext]. in [I-D.ietf-idr-bgp-ls-segment-routing-ext].
The ERLD-MSD is advertised using the Node MSD TLV as defined in The ERLD-MSD is advertised using the Node MSD TLV as defined in
[I-D.ietf-idr-bgp-ls-segment-routing-msd]. [I-D.ietf-idr-bgp-ls-segment-routing-msd].
6. IANA Considerations 6. IANA Considerations
Early allocation has been done by IANA for this document as follows: Early allocation has been done by IANA for this document as follows:
skipping to change at page 5, line 19 skipping to change at page 5, line 15
7. Security Considerations 7. Security Considerations
This document specifies the ability to advertise additional node This document specifies the ability to advertise additional node
capabilities using IS-IS and BGP-LS. As such, the security capabilities using IS-IS and BGP-LS. As such, the security
considerations as described in [RFC7981], [RFC7752], [RFC7794], considerations as described in [RFC7981], [RFC7752], [RFC7794],
[RFC8491], [RFC8662], [I-D.ietf-idr-bgp-ls-segment-routing-ext] and [RFC8491], [RFC8662], [I-D.ietf-idr-bgp-ls-segment-routing-ext] and
[I-D.ietf-idr-bgp-ls-segment-routing-msd] are applicable to this [I-D.ietf-idr-bgp-ls-segment-routing-msd] are applicable to this
document. document.
Incorrectly setting the E flag during origination, propagation or Incorrectly setting the E flag during origination, propagation or
redistribution may lead to black-holing of the traffic on the egress redistribution may lead to poor or no load-balancing of the MPLS
node. traffic or black-holing of the MPLS traffic on the egress node.
Incorrectly setting of the ERLD value may lead to poor or no load- Incorrectly setting of the ERLD value may lead to poor or no load-
balancing of the traffic. balancing of the MPLS traffic.
8. Contributors 8. Contributors
The following people contributed to the content of this document and The following people contributed to the content of this document and
should be considered as co-authors: should be considered as co-authors:
Gunter Van de Velde (editor) Gunter Van de Velde (editor)
Nokia Nokia
Antwerp Antwerp
BE BE
skipping to change at page 6, line 26 skipping to change at page 6, line 26
[I-D.ietf-idr-bgp-ls-segment-routing-ext] [I-D.ietf-idr-bgp-ls-segment-routing-ext]
Previdi, S., Talaulikar, K., Filsfils, C., Gredler, H., Previdi, S., Talaulikar, K., Filsfils, C., Gredler, H.,
and M. Chen, "BGP Link-State extensions for Segment and M. Chen, "BGP Link-State extensions for Segment
Routing", draft-ietf-idr-bgp-ls-segment-routing-ext-16 Routing", draft-ietf-idr-bgp-ls-segment-routing-ext-16
(work in progress), June 2019. (work in progress), June 2019.
[I-D.ietf-idr-bgp-ls-segment-routing-msd] [I-D.ietf-idr-bgp-ls-segment-routing-msd]
Tantsura, J., Chunduri, U., Talaulikar, K., Mirsky, G., Tantsura, J., Chunduri, U., Talaulikar, K., Mirsky, G.,
and N. Triantafillis, "Signaling MSD (Maximum SID Depth) and N. Triantafillis, "Signaling MSD (Maximum SID Depth)
using Border Gateway Protocol - Link State", draft-ietf- using Border Gateway Protocol - Link State", draft-ietf-
idr-bgp-ls-segment-routing-msd-17 (work in progress), idr-bgp-ls-segment-routing-msd-18 (work in progress), May
April 2020. 2020.
[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>.
[RFC5302] Li, T., Smit, H., and T. Przygienda, "Domain-Wide Prefix [RFC5302] Li, T., Smit, H., and T. Przygienda, "Domain-Wide Prefix
Distribution with Two-Level IS-IS", RFC 5302, Distribution with Two-Level IS-IS", RFC 5302,
DOI 10.17487/RFC5302, October 2008, DOI 10.17487/RFC5302, October 2008,
<https://www.rfc-editor.org/info/rfc5302>. <https://www.rfc-editor.org/info/rfc5302>.
 End of changes. 18 change blocks. 
40 lines changed or deleted 36 lines changed or added

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