| < draft-ietf-isis-mpls-elc-02.txt | draft-ietf-isis-mpls-elc-03.txt > | |||
|---|---|---|---|---|
| ISIS Working Group X. Xu | ISIS Working Group X. Xu | |||
| Internet-Draft Huawei | Internet-Draft Huawei | |||
| Intended status: Standards Track S. Kini | Intended status: Standards Track S. Kini | |||
| Expires: April 17, 2017 Ericsson | Expires: July 7, 2018 Ericsson | |||
| S. Sivabalan | S. Sivabalan | |||
| C. Filsfils | C. Filsfils | |||
| Cisco | Cisco | |||
| S. Litkowski | S. Litkowski | |||
| Orange | Orange | |||
| October 14, 2016 | January 3, 2018 | |||
| Signaling Entropy Label Capability Using IS-IS | Signaling Entropy Label Capability and Readable Label-stack Depth Using | |||
| draft-ietf-isis-mpls-elc-02 | IS-IS | |||
| draft-ietf-isis-mpls-elc-03 | ||||
| Abstract | Abstract | |||
| Multi Protocol 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 LSR | balance traffic flows using Entropy Labels (EL). An ingress Label | |||
| cannot insert ELs for packets going into a given tunnel unless an | Switching Router (LSR) cannot insert ELs for packets going into a | |||
| egress LSR has indicated via signaling that it can process ELs on | given tunnel unless an egress LSR has indicated via signaling that it | |||
| that tunnel. This draft defines a mechanism to signal that | has the capability of processing ELs, referred to as Entropy Label | |||
| capability using IS-IS. This mechanism is useful when the label | Capability (ELC), on that tunnel. In addition, it would be useful | |||
| advertisement is also done via IS-IS. | for ingress LSRs to know each LSR's capability of reading the maximum | |||
| label stack depth, referred to as Readable Label-stack Depth (RLD), | ||||
| in the cases where stacked LSPs are used for whatever reasons. This | ||||
| document defines mechanisms to signal these two capabilities using | ||||
| OSPF. These mechanisms are useful when the label advertisement is | ||||
| also done via IS-IS. | ||||
| 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 | |||
| 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 http://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 17, 2017. | This Internet-Draft will expire on July 7, 2018. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2016 IETF Trust and the persons identified as the | Copyright (c) 2018 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 | (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 | |||
| 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. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 3. Advertising ELC Using IS-IS . . . . . . . . . . . . . . . . . 3 | 3. Advertising ELC Using IS-IS . . . . . . . . . . . . . . . . . 3 | |||
| 4. Advertising RLDC Using IS-IS . . . . . . . . . . . . . . . . 3 | 4. Advertising RLD Using IS-IS . . . . . . . . . . . . . . . . . 3 | |||
| 5. Usage and Applicability . . . . . . . . . . . . . . . . . . . 4 | 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 4 | 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | |||
| 8. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 8.1. Normative References . . . . . . . . . . . . . . . . . . 4 | |||
| 9.1. Normative References . . . . . . . . . . . . . . . . . . 4 | 8.2. Informative References . . . . . . . . . . . . . . . . . 4 | |||
| 9.2. Informative References . . . . . . . . . . . . . . . . . 5 | ||||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 5 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 1. Introduction | 1. Introduction | |||
| Multi Protocol Label Switching (MPLS) has defined a method in | [RFC6790] describes a method to load balance Multiprotocol Label | |||
| [RFC6790] to load balance traffic flows using Entropy Labels (EL). | Switching (MPLS) traffic flows using Entropy Labels (EL). [RFC6790] | |||
| An ingress LSR cannot insert ELs for packets going into a given | introduces the concept of Entropy Label Capability (ELC) and defines | |||
| tunnel unless an egress LSR has indicated that it can process ELs on | the signalings of this capability via MPLS signaling protocols. | |||
| that tunnel. [RFC6790] defines the signaling of this capability | Recently, mechanisms are being defined to signal labels via link- | |||
| (a.k.a., Entropy Label Capability - ELC) via signaling protocols. | ||||
| Recently, mechanisms are being defined to signal labels via link | ||||
| state Interior Gateway Protocols (IGP) such as IS-IS | state Interior Gateway Protocols (IGP) such as IS-IS | |||
| [I-D.ietf-isis-segment-routing-extensions] . In such scenario the | [I-D.ietf-isis-segment-routing-extensions]. In such scenario, the | |||
| signaling mechanisms defined in [RFC6790] are inadequate. This draft | signaling mechanisms defined in [RFC6790] are inadequate. This draft | |||
| defines a mechanism to signal the ELC using IS-IS. This mechanism is | defines a mechanism to signal the ELC [RFC6790] using IS-IS. This | |||
| useful when the label advertisement is also done via IS-IS. In | mechanism is useful when the label advertisement is also done via IS- | |||
| addition, in the cases where stacked LSPs are used for whatever | IS. In addition, in the cases where stacked LSPs are used for | |||
| reasons (e.g., SPRING-MPLS [I-D.ietf-spring-segment-routing-mpls]), | whatever reasons (e.g., SPRING-MPLS | |||
| it would be useful for ingress LSRs to know each LSR's capability of | [I-D.ietf-spring-segment-routing-mpls]), it would be useful for | |||
| reading the maximum label stack deepth. This capability, referred to | ingress LSRs to know each LSR's capability of reading the maximum | |||
| as Readable Label Deepth Capability (RLDC) can be used by ingress | label stack depth. This capability, referred to as Readable Label- | |||
| LSRs to determine whether it's necessary to insert an EL for a given | stack Depth (RLD) may be used by ingress LSRs to determine whether | |||
| LSP tunnel in the case where there has already been at least one EL | it's necessary to insert an EL for a given LSP of the stacked LSP | |||
| in the label stack [I-D.ietf-mpls-spring-entropy-label] . Of course, | tunnel in the case where there has already been at least one EL in | |||
| even it has been determined that it's neccessary to insert an EL for | the label stack [I-D.ietf-mpls-spring-entropy-label]. | |||
| a given LSP tunnel, if the egress LSR of that LSP tunnel has not yet | ||||
| indicated that it can process ELs for that tunnel, the ingress LSR | ||||
| MUST NOT include an entropy label for that tunnel as well. | ||||
| 2. Terminology | 2. Terminology | |||
| This memo makes use of the terms defined in [RFC6790] and [RFC4971]. | This memo makes use of the terms defined in [RFC6790] and [RFC4971]. | |||
| 3. Advertising ELC Using IS-IS | 3. Advertising ELC Using IS-IS | |||
| The IS-IS Router CAPABILITY TLV as defined in [RFC4971] is used by | The IS-IS Router CAPABILITY TLV as defined in [RFC4971] is used by | |||
| IS-IS routers to announce their capabilities. A new sub-TLV of this | IS-IS routers to announce their capabilities. A new sub-TLV of this | |||
| TLV, called ELC sub-TLV is defined to advertise the capability of the | TLV, called ELC sub-TLV is defined to advertise the capability of the | |||
| router to process the ELs. It is formatted as described in [RFC5305] | router to process the ELs. As shown in Figure 1, it is formatted as | |||
| with a Type code to be assigned by IANA and a Length of zero. The | described in [RFC5305] with a Type code to be assigned by IANA and a | |||
| scope of the advertisement depends on the application but it is | Length of zero. The scope of the advertisement depends on the | |||
| RECOMMENDED that it SHOULD be domain-wide. If a router has multiple | application but it is RECOMMENDED that it SHOULD be domain-wide. If | |||
| linecards, the router MUST NOT advertise the ELC unless all of the | a router has multiple linecards, the router MUST NOT advertise the | |||
| linecards are capable of processing ELs. | ELC unless all of the linecards are capable of processing ELs. | |||
| 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=TBD1 | Length=0 | | | Type=TBD1 | Length=0 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Figure 1: ELC sub-TLV Format | Figure 1: ELC sub-TLV Format | |||
| 4. Advertising RLDC Using IS-IS | 4. Advertising RLD Using IS-IS | |||
| A new sub-TLV of the IS-IS Router CAPABILITY TLV, called RLDC sub-TLV | A new sub-TLV of the IS-IS Router CAPABILITY TLV, called RLD sub-TLV | |||
| is defined to advertise the capability of the router to read the | is defined to advertise the capability of the router to read the | |||
| maximum label stack depth. As shown in Figure 2, it is formatted as | maximum label stack depth. As shown in Figure 2, it is formatted as | |||
| described in [RFC5305] with a Type code to be assigned by IANA and a | described in [RFC5305] with a Type code to be assigned by IANA and a | |||
| Length of one. The Value field is set to the maximum readable label | Length of one. The Value field is set to the maximum readable label | |||
| stack deepth in the range between 1 to 255. The scope of the | stack deepth in the range between 1 to 255. The scope of the | |||
| advertisement depends on the application but it is RECOMMENDED that | advertisement depends on the application but it is RECOMMENDED that | |||
| it SHOULD be domain-wide. If a router has multiple linecards with | it SHOULD be domain-wide. If a router has multiple linecards with | |||
| different capabilities of reading the maximum label stack deepth, the | different capabilities of reading the maximum label stack deepth, the | |||
| router MUST advertise the smallest one in the RLDC sub-TLV. | router MUST advertise the smallest one in the RLDC sub-TLV. | |||
| 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=TBD2 | Length=1 | RLD | | | Type=TBD2 | Length=1 | RLD | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Figure 2: RLDC sub-TLV Format | Figure 2: RLD sub-TLV Format | |||
| 5. Usage and Applicability | ||||
| The ELC is used by ingress LSRs to determine whether an EL could be | ||||
| inserted into a given LSP tunnel. The RLDC is used by ingress LSRs | ||||
| to determine whether it's necessary to insert an EL for a given LSP | ||||
| tunnel in the case where there has already been at least one EL in | ||||
| the label stack. This document only describes how to signal the ELC | ||||
| and RLDC using IS-IS. As for how to apply those capabilities when | ||||
| inserting EL(s) into LSP tunnel(s), it's outside the scope of this | ||||
| document and accordingly would be described in | ||||
| [I-D.ietf-mpls-spring-entropy-label]. | ||||
| 6. Acknowledgements | 5. Acknowledgements | |||
| The authors would like to thank Yimin Shen, George Swallow, Acee | The authors would like to thank Yimin Shen, George Swallow, Acee | |||
| Lindem and Carlos Pignataro for their valuable comments. | Lindem and Carlos Pignataro for their valuable comments. | |||
| 7. IANA Considerations | 6. IANA Considerations | |||
| This memo includes a request to IANA to allocate two sub-TLV types | This memo includes a request to IANA to allocate two sub-TLV types | |||
| within the IS-IS Router Capability TLV. | within the IS-IS Router Capability TLV. | |||
| 8. Security Considerations | 7. Security Considerations | |||
| The security considerations as described in [RFC4971] is appliable to | The security considerations as described in [RFC4971] is applicable | |||
| this document. This document does not introduce any new security | to this document. This document does not introduce any new security | |||
| risk. | risk. | |||
| 9. References | 8. References | |||
| 9.1. Normative References | 8.1. Normative References | |||
| [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>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC4971] Vasseur, JP., Ed., Shen, N., Ed., and R. Aggarwal, Ed., | [RFC4971] Vasseur, JP., Ed., Shen, N., Ed., and R. Aggarwal, Ed., | |||
| "Intermediate System to Intermediate System (IS-IS) | "Intermediate System to Intermediate System (IS-IS) | |||
| Extensions for Advertising Router Information", RFC 4971, | Extensions for Advertising Router Information", RFC 4971, | |||
| DOI 10.17487/RFC4971, July 2007, | DOI 10.17487/RFC4971, July 2007, | |||
| <http://www.rfc-editor.org/info/rfc4971>. | <https://www.rfc-editor.org/info/rfc4971>. | |||
| 9.2. Informative References | 8.2. Informative References | |||
| [I-D.ietf-isis-segment-routing-extensions] | [I-D.ietf-isis-segment-routing-extensions] | |||
| Previdi, S., Filsfils, C., Bashandy, A., Gredler, H., | Previdi, S., Ginsberg, L., Filsfils, C., Bashandy, A., | |||
| Litkowski, S., Decraene, B., and j. jefftant@gmail.com, | Gredler, H., Litkowski, S., Decraene, B., and J. Tantsura, | |||
| "IS-IS Extensions for Segment Routing", draft-ietf-isis- | "IS-IS Extensions for Segment Routing", draft-ietf-isis- | |||
| segment-routing-extensions-08 (work in progress), October | segment-routing-extensions-15 (work in progress), December | |||
| 2016. | 2017. | |||
| [I-D.ietf-mpls-spring-entropy-label] | [I-D.ietf-mpls-spring-entropy-label] | |||
| Kini, S., Kompella, K., Sivabalan, S., Litkowski, S., | Kini, S., Kompella, K., Sivabalan, S., Litkowski, S., | |||
| Shakir, R., and j. jefftant@gmail.com, "Entropy labels for | Shakir, R., and J. Tantsura, "Entropy label for SPRING | |||
| source routed tunnels with label stacks", draft-ietf-mpls- | tunnels", draft-ietf-mpls-spring-entropy-label-07 (work in | |||
| spring-entropy-label-04 (work in progress), July 2016. | progress), October 2017. | |||
| [I-D.ietf-spring-segment-routing-mpls] | [I-D.ietf-spring-segment-routing-mpls] | |||
| Filsfils, C., Previdi, S., Bashandy, A., Decraene, B., | Filsfils, C., Previdi, S., Bashandy, A., Decraene, B., | |||
| Litkowski, S., Horneffer, M., Shakir, R., | Litkowski, S., and R. Shakir, "Segment Routing with MPLS | |||
| jefftant@gmail.com, j., and E. Crabbe, "Segment Routing | data plane", draft-ietf-spring-segment-routing-mpls-11 | |||
| with MPLS data plane", draft-ietf-spring-segment-routing- | (work in progress), October 2017. | |||
| mpls-05 (work in progress), July 2016. | ||||
| [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic | [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic | |||
| Engineering", RFC 5305, DOI 10.17487/RFC5305, October | Engineering", RFC 5305, DOI 10.17487/RFC5305, October | |||
| 2008, <http://www.rfc-editor.org/info/rfc5305>. | 2008, <https://www.rfc-editor.org/info/rfc5305>. | |||
| [RFC6790] Kompella, K., Drake, J., Amante, S., Henderickx, W., and | [RFC6790] Kompella, K., Drake, J., Amante, S., Henderickx, W., and | |||
| L. Yong, "The Use of Entropy Labels in MPLS Forwarding", | L. Yong, "The Use of Entropy Labels in MPLS Forwarding", | |||
| RFC 6790, DOI 10.17487/RFC6790, November 2012, | RFC 6790, DOI 10.17487/RFC6790, November 2012, | |||
| <http://www.rfc-editor.org/info/rfc6790>. | <https://www.rfc-editor.org/info/rfc6790>. | |||
| Authors' Addresses | Authors' Addresses | |||
| Xiaohu Xu | Xiaohu Xu | |||
| Huawei | Huawei | |||
| Email: xuxiaohu@huawei.com | Email: xuxh.mail@gmail.com | |||
| Sriganesh Kini | Sriganesh Kini | |||
| Ericsson | Ericsson | |||
| Email: sriganesh.kini@ericsson.com | Email: sriganesh.kini@ericsson.com | |||
| Siva Sivabalan | Siva Sivabalan | |||
| Cisco | Cisco | |||
| Email: msiva@cisco.com | Email: msiva@cisco.com | |||
| End of changes. 32 change blocks. | ||||
| 90 lines changed or deleted | 78 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/ | ||||