| < draft-ietf-ospf-mpls-elc-04.txt | draft-ietf-ospf-mpls-elc-05.txt > | |||
|---|---|---|---|---|
| OSPF Working Group X. Xu | OSPF Working Group X. Xu | |||
| Internet-Draft Huawei | Internet-Draft Huawei | |||
| Intended status: Standards Track S. Kini | Intended status: Standards Track S. Kini | |||
| Expires: June 3, 2017 | Expires: July 7, 2018 | |||
| S. Sivabalan | S. Sivabalan | |||
| C. Filsfils | C. Filsfils | |||
| Cisco | Cisco | |||
| S. Litkowski | S. Litkowski | |||
| Orange | Orange | |||
| November 30, 2016 | January 3, 2018 | |||
| Signaling Entropy Label Capability Using OSPF | Signaling Entropy Label Capability and Readable Label-stack Depth Using | |||
| draft-ietf-ospf-mpls-elc-04 | OSPF | |||
| draft-ietf-ospf-mpls-elc-05 | ||||
| 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 tunnel unless an egress LSR has indicated via signaling that it | given tunnel unless an egress LSR has indicated via signaling that it | |||
| can process ELs on that tunnel. This draft defines a mechanism to | has the capability of processing ELs, referred to as Entropy Label | |||
| signal that capability using OSPF. This mechanism is useful when the | Capability (ELC), on that tunnel. In addition, it would be useful | |||
| label advertisement is also done via OSPF. | 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 OSPF. In addition, this document introduces the Router | ||||
| Non-OSPF Functional Capabilities TLV for advertising OSPF router's | ||||
| actual non-OSPF functional capabilities. ELC is one of such non-OSPF | ||||
| functional capabilities. | ||||
| 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 June 3, 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. Non-OSPF Functional Capabilities TLV . . . . . . . . . . . . 3 | 3. Non-OSPF Functional Capabilities TLV . . . . . . . . . . . . 3 | |||
| 4. Advertising ELC Using OSPF . . . . . . . . . . . . . . . . . 4 | 4. Advertising ELC Using OSPF . . . . . . . . . . . . . . . . . 4 | |||
| 5. Advertising RLDC Using OSPF . . . . . . . . . . . . . . . . . 4 | 5. Advertising RLD Using OSPF . . . . . . . . . . . . . . . . . 4 | |||
| 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 4 | 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 8. Security Considerations . . . . . . . . . . . . . . . . . . . 5 | 8. Security Considerations . . . . . . . . . . . . . . . . . . . 5 | |||
| 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 9.1. Normative References . . . . . . . . . . . . . . . . . . 5 | 9.1. Normative References . . . . . . . . . . . . . . . . . . 5 | |||
| 9.2. Informative References . . . . . . . . . . . . . . . . . 5 | 9.2. Informative References . . . . . . . . . . . . . . . . . 5 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 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). [RFC6790] | Switching (MPLS) traffic flows using Entropy Labels (EL). [RFC6790] | |||
| skipping to change at page 2, line 43 ¶ | skipping to change at page 3, line 4 ¶ | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 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). [RFC6790] | Switching (MPLS) traffic flows using Entropy Labels (EL). [RFC6790] | |||
| introduces the concept of Entropy Label Capability (ELC) and defines | introduces the concept of Entropy Label Capability (ELC) and defines | |||
| the signalings of this capability via MPLS signaling protocols. | the signalings of this capability via MPLS signaling protocols. | |||
| Recently, mechanisms are being defined to signal labels via link- | Recently, mechanisms are being defined to signal labels via link- | |||
| state Interior Gateway Protocols (IGP) such as OSPF | state Interior Gateway Protocols (IGP) such as OSPF | |||
| [I-D.ietf-ospf-segment-routing-extensions]. In such scenario, the | [I-D.ietf-ospf-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 [RFC6790] using OSPF. This | defines a mechanism to signal the ELC [RFC6790] using OSPF. This | |||
| mechanism is useful when the label advertisement is also done via | mechanism is useful when the label advertisement is also done via | |||
| OSPF. In addition, in the cases where stacked LSPs are used for | OSPF. In addition, in the cases where stacked LSPs are used for | |||
| whatever reasons (e.g., SPRING-MPLS | whatever reasons (e.g., SPRING-MPLS | |||
| [I-D.ietf-spring-segment-routing-mpls]), it would be useful for | [I-D.ietf-spring-segment-routing-mpls]), it would be useful for | |||
| ingress LSRs to know each LSR's capability of reading the maximum | ingress LSRs to know each LSR's capability of reading the maximum | |||
| label stack depth. This capability, referred to as Readable Label | label stack depth. This capability, referred to as Readable Label- | |||
| Depth Capability (RLDC) may be used by ingress LSRs to determine | stack Depth (RLD) may be used by ingress LSRs to determine whether | |||
| whether it's necessary to insert an EL for a given LSP of the stacked | it's necessary to insert an EL for a given LSP of the stacked LSP | |||
| LSP tunnel in the case where there has already been at least one EL | tunnel in the case where there has already been at least one EL in | |||
| in the label stack [I-D.ietf-mpls-spring-entropy-label]. | the label stack [I-D.ietf-mpls-spring-entropy-label]. | |||
| 2. Terminology | 2. Terminology | |||
| This memo makes use of the terms defined in [RFC6790] and [RFC7770]. | This memo makes use of the terms defined in [RFC6790] and [RFC7770]. | |||
| 3. Non-OSPF Functional Capabilities TLV | 3. Non-OSPF Functional Capabilities TLV | |||
| This document defines the Router Non-OSPF Functional Capabilities TLV | This document defines the Router Non-OSPF Functional Capabilities TLV | |||
| for advertisement in the OSPF Router Information LSA. An OSPF router | for advertisement in the OSPF Router Information LSA. An OSPF router | |||
| advertising an OSPF RI LSA MAY include the Router Non-OSPF Functional | advertising an OSPF RI LSA MAY include the Router Non-OSPF Functional | |||
| skipping to change at page 4, line 14 ¶ | skipping to change at page 4, line 25 ¶ | |||
| capabilities advertised in this TLV MUST describe protocol behavior | capabilities advertised in this TLV MUST describe protocol behavior | |||
| and address backwards compatibility. | and address backwards compatibility. | |||
| 4. Advertising ELC Using OSPF | 4. Advertising ELC Using OSPF | |||
| One bit of the Non-OSPF Functional Capability Bits is to be assigned | One bit of the Non-OSPF Functional Capability Bits is to be assigned | |||
| by the IANA for the ELC [RFC6790]. If a router has multiple line | by the IANA for the ELC [RFC6790]. If a router has multiple line | |||
| cards, the router MUST NOT announce the ELC [RFC6790] unless all of | cards, the router MUST NOT announce the ELC [RFC6790] unless all of | |||
| its linecards are capable of processing ELs. | its linecards are capable of processing ELs. | |||
| 5. Advertising RLDC Using OSPF | 5. Advertising RLD Using OSPF | |||
| A new TLV within the body of the OSPF RI LSA, called RLDC TLV is | A new TLV within the body of the OSPF RI LSA, called RLD TLV is | |||
| defined to advertise the capability of the router to read the maximum | defined to advertise the capability of the router to read the maximum | |||
| label stack depth. As showed in Figure 2, it is formatted as | label stack depth. As showed in Figure 2, it is formatted as | |||
| described in Section 2.3 of [RFC7770] with a Type code to be assigned | described in Section 2.3 of [RFC7770] with a Type code to be assigned | |||
| by IANA and a Length of one. The Value field is set to the maximum | by IANA and a Length of one. The Value field is set to the maximum | |||
| readable label stack depth in the range between 1 to 255. The scope | readable label stack depth in the range between 1 to 255. The scope | |||
| of the advertisement depends on the application but it is RECOMMENDED | of the advertisement depends on the application but it is RECOMMENDED | |||
| that it SHOULD be domain-wide. If a router has multiple line cards | that it SHOULD be domain-wide. If a router has multiple line cards | |||
| with different capabilities of reading the maximum label stack depth, | with different capabilities of reading the maximum label stack depth, | |||
| the router MUST advertise the smallest one in the RLDC TLV. This TLV | the router MUST advertise the smallest one in the RLD TLV. This TLV | |||
| is applicable to both OSPFv2 and OSPFv3. | is applicable to both OSPFv2 and OSPFv3. | |||
| 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 | | | Type=TBD2 | Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RLD | | | RLD | | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| Figure 2: RLDC TLV Format | Figure 2: RLD TLV Format | |||
| 6. Acknowledgements | 6. Acknowledgements | |||
| The authors would like to thank Yimin Shen, George Swallow, Acee | The authors would like to thank Yimin Shen, George Swallow, Acee | |||
| Lindem, Carlos Pignataro and Bruno Decraene for their valuable | Lindem, Carlos Pignataro and Bruno Decraene for their valuable | |||
| comments and suggestions. | comments and suggestions. | |||
| 7. IANA Considerations | 7. IANA Considerations | |||
| This document requests IANA to allocate one TLV type from the OSPF RI | This document requests IANA to allocate one TLV type from the OSPF RI | |||
| skipping to change at page 5, line 12 ¶ | skipping to change at page 5, line 22 ¶ | |||
| comprised of the fields Bit Number, Capability Name, and Reference. | comprised of the fields Bit Number, Capability Name, and Reference. | |||
| Initially, one bit is reqested to be assigned for the ELC. All Non- | Initially, one bit is reqested to be assigned for the ELC. All Non- | |||
| OSPF Functional Capability TLV additions are to be assigned through | OSPF Functional Capability TLV additions are to be assigned through | |||
| IETF Review [RFC5226]. | IETF Review [RFC5226]. | |||
| This document also requests IANA to allocate one TLV type from the | This document also requests IANA to allocate one TLV type from the | |||
| OSPF RI TLVs registry for the RLDC TLV. | OSPF RI TLVs registry for the RLDC TLV. | |||
| 8. Security Considerations | 8. Security Considerations | |||
| The security considerations as described in [RFC7770] is appliable to | The security considerations as described in [RFC7770] 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 | 9. References | |||
| 9.1. Normative References | 9.1. Normative References | |||
| [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. | |||
| [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>. | |||
| [RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and | [RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and | |||
| S. Shaffer, "Extensions to OSPF for Advertising Optional | S. Shaffer, "Extensions to OSPF for Advertising Optional | |||
| Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, | Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, | |||
| February 2016, <http://www.rfc-editor.org/info/rfc7770>. | February 2016, <https://www.rfc-editor.org/info/rfc7770>. | |||
| 9.2. Informative References | 9.2. Informative References | |||
| [I-D.ietf-ospf-segment-routing-extensions] | [I-D.ietf-ospf-segment-routing-extensions] | |||
| Psenak, P., Previdi, S., Filsfils, C., Gredler, H., | Psenak, P., Previdi, S., Filsfils, C., Gredler, H., | |||
| Shakir, R., Henderickx, W., and J. Tantsura, "OSPF | Shakir, R., Henderickx, W., and J. Tantsura, "OSPF | |||
| Extensions for Segment Routing", draft-ietf-ospf-segment- | Extensions for Segment Routing", draft-ietf-ospf-segment- | |||
| routing-extensions-10 (work in progress), October 2016. | routing-extensions-24 (work in progress), December 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. | ||||
| [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an | [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an | |||
| IANA Considerations Section in RFCs", BCP 26, RFC 5226, | IANA Considerations Section in RFCs", RFC 5226, | |||
| DOI 10.17487/RFC5226, May 2008, | DOI 10.17487/RFC5226, May 2008, | |||
| <http://www.rfc-editor.org/info/rfc5226>. | <https://www.rfc-editor.org/info/rfc5226>. | |||
| [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 | |||
| Email: sriganeshkini@gmail.com | Email: sriganeshkini@gmail.com | |||
| Siva Sivabalan | Siva Sivabalan | |||
| Cisco | Cisco | |||
| Email: msiva@cisco.com | Email: msiva@cisco.com | |||
| End of changes. 26 change blocks. | ||||
| 38 lines changed or deleted | 47 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/ | ||||