| < draft-song-mpls-extension-header-00.txt | draft-song-mpls-extension-header-01.txt > | |||
|---|---|---|---|---|
| Network Working Group H. Song, Ed. | Network Working Group H. Song, Ed. | |||
| Internet-Draft Z. Li | Internet-Draft Z. Li | |||
| Intended status: Standards Track T. Zhou | Intended status: Standards Track T. Zhou | |||
| Expires: January 16, 2019 Huawei | Expires: February 9, 2019 Huawei | |||
| July 15, 2018 | L. Andersson | |||
| Bronze Dragon Consulting | ||||
| August 8, 2018 | ||||
| MPLS Extension Header | MPLS Extension Header | |||
| draft-song-mpls-extension-header-00 | draft-song-mpls-extension-header-01 | |||
| Abstract | Abstract | |||
| Motivated by the need to support multiple in-network services and | Motivated by the need to support multiple in-network services and | |||
| functions in an MPLS network, this document describes a generic | functions in an MPLS network, this document describes a method to | |||
| method to encapsulate extension headers into MPLS packets. The | encapsulate extension headers into MPLS packets. The encapsulation | |||
| encapsulation method allows stacking multiple extension headers and | method allows stacking multiple extension headers and quickly | |||
| quickly accessing any of them as well as the original upper layer | accessing any of them as well as the original upper layer protocol | |||
| protocol header and payload. We show how the extension header can be | header and payload. We show how the extension header can be used to | |||
| used to support several new network applications. | support several new network applications. | |||
| 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", "NOT RECOMMENDED", "MAY", and | |||
| document are to be interpreted as described in RFC 2119 [RFC2119]. | "OPTIONAL" in this document are to be interpreted as described in BCP | |||
| 14 [RFC2119][RFC8174] when, and only when, they appear in all | ||||
| capitals, as shown here. | ||||
| 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 January 16, 2019. | This Internet-Draft will expire on February 9, 2019. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2018 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 | |||
| (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 | |||
| described in the Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 2. MPLS Extension Header . . . . . . . . . . . . . . . . . . . . 4 | 2. MPLS Extension Header . . . . . . . . . . . . . . . . . . . . 4 | |||
| 3. Operation on MPLS Extension Headers . . . . . . . . . . . . . 7 | 3. Operation on MPLS Extension Headers . . . . . . . . . . . . . 8 | |||
| 4. Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 4. Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 5. Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 5. Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 6. Security Considerations . . . . . . . . . . . . . . . . . . . 9 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 10 | |||
| 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 | 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 | |||
| 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 10 | 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 10 | 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 10 | 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 10.1. Normative References . . . . . . . . . . . . . . . . . . 10 | 10.1. Normative References . . . . . . . . . . . . . . . . . . 11 | |||
| 10.2. Informative References . . . . . . . . . . . . . . . . . 11 | 10.2. Informative References . . . . . . . . . . . . . . . . . 12 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 1. Motivation | 1. Motivation | |||
| Some applications require adding instructions and/or metadata to user | Some applications require adding instructions and/or metadata to user | |||
| packets within a network. Such examples include In-situ OAM (IOAM) | packets within a network. Such examples include In-situ OAM (IOAM) | |||
| [I-D.brockners-inband-oam-requirements] and Service Function Chaining | [I-D.brockners-inband-oam-requirements] and Service Function Chaining | |||
| (SFC) [RFC7665]. New applications are emerging. It is possible that | (SFC) [RFC7665]. New applications are emerging. It is possible that | |||
| the instructions and/or metadata for multiple applications are | the instructions and/or metadata for multiple applications are | |||
| stacked together in one packet to support a compound service. | stacked together in one packet to support a compound service. | |||
| However, the encapsulation of the new header(s) poses some challenges | However, the encapsulation of the new header(s) poses some challenges | |||
| to the ubiquitous MPLS networks. A problem of the MPLS protocol | to the ubiquitous MPLS networks. The MPLS protocol header contains | |||
| header is that there is no explicit indicator for the upper layer | no explicit indicator for the upper layer protocols by design. The | |||
| protocols. The succinct MPLS header provide little room to encode | compact MPLS header, while beneficial to forwarding, allows little | |||
| any extra information. Moreover, the backward compatibility issue | room for any extra information. Moreover, the backward compatibility | |||
| discourages any attempts trying to overload the semantics of the | issue discourages any attempts trying to overload the semantics of | |||
| existing MPLS header fields. | the existing MPLS header fields. While it is possible to designate | |||
| "service labels" with special semantics by an operator, the non- | ||||
| standard approach burdens the control plane and impairs the | ||||
| interoperability. | ||||
| The similar "header extension" requirement for MPLS has led to | The similar "header extension" requirement for MPLS has led to | |||
| several proposals. A special Generic Associated Channel Label (GAL) | several proposals. A special Generic Associated Channel Label (GAL) | |||
| [RFC5586] is assigned to support the identification of an Associated | [RFC5586] is assigned to support the identification of an Associated | |||
| Channel Header (ACH). Later, it was proposed to use GAL to indicate | Channel Header (ACH). Later, it was proposed to use GAL to indicate | |||
| the presence of a Metadata Channel Header (MCH) | the presence of a Metadata Channel Header (MCH) | |||
| [I-D.guichard-sfc-mpls-metadata] as well. | [I-D.guichard-sfc-mpls-metadata] as well. | |||
| GAL has several limitations: | GAL has several limitations: | |||
| o It must be located at the bottom of a label stack for its chief | o It must be located at the bottom of a label stack for its chief | |||
| use case of MPLS-TP. An LSR needs to scan the entire label stack | use case of MPLS-TP. An LSR needs to search the entire label | |||
| to be able to identify the presence of a new header. This can | stack for the BoS bit and check if the corresponding label is GAL. | |||
| impact the performance when the label stack is deep. | This can impact the performance when the label stack is deep. | |||
| o When GAL is present, the first nibble of the word following the | o When GAL is present, the first nibble of the word following the | |||
| GAL needs to be checked to determine the header type. Since the | GAL needs to be checked to determine the header type. Since the | |||
| value of the nibble cannot be greater than 3, this approach is | value of the nibble cannot be greater than 3 to avoid any possible | |||
| neither scalable nor reliable. | confliction with IP version numbers, this approach is not | |||
| scalable. | ||||
| o By design, GAL can only indicate the presence of a single header. | o By design, GAL can only indicate the presence of a single header. | |||
| Therefore, the solution alone is not sufficient to support adding | Therefore, the solution alone is not sufficient to support adding | |||
| multiple headers at the same time. | multiple headers at the same time. | |||
| o The presence of GAL makes the network load balancing or deep | o The presence of GAL makes the network load balancing or deep | |||
| packet inspection based on upper layer protocol headers and | packet inspection based on upper layer protocol headers and | |||
| payload difficult. | payload difficult. | |||
| In addition to the above limitations, it is not desirable to keep | In addition to the above limitations, it is not desirable to keep | |||
| overloading GAL with new semantics. Instead of trying to patch on | overloading GAL with new semantics. Instead of trying to patch on | |||
| existing schemes, we propose a general mechanism to solve the above | existing schemes, we propose a new mechanism to solve the above | |||
| mentioned issues and create new innovation opportunities. We derive | mentioned issues and create new innovation opportunities, similar to | |||
| our scheme from the experience of the IPv4 to IPv6 evolution. The | the way that IPv6 supports extension headers, which offer a huge | |||
| adoption of IPv6 is gaining its momentum. Ironically, this is not | ||||
| due much to the extended address space over IPv4. One true power of | ||||
| IPv6 is that it supports extension headers, which offer a huge | ||||
| innovation potential (e.g, network security, SRv6 | innovation potential (e.g, network security, SRv6 | |||
| [I-D.ietf-spring-segment-routing], network programming | [I-D.ietf-spring-segment-routing], network programming | |||
| [I-D.filsfils-spring-srv6-network-programming], SFC | [I-D.filsfils-spring-srv6-network-programming], SFC | |||
| [I-D.xu-clad-spring-sr-service-chaining], etc.). It is | [I-D.xu-clad-spring-sr-service-chaining], etc.). Thanks to the | |||
| straightforward to introduce new in-network services into IPv6 | existing of extension headers, it is straightforward to introduce new | |||
| networks through extension headers. For example, it has been | in-network services into IPv6 networks. For example, it has been | |||
| proposed to carry IOAM header [I-D.brockners-inband-oam-transport] | proposed to carry IOAM header [I-D.brockners-inband-oam-transport] | |||
| and NSH as new extension headers in IPv6 networks. | and NSH as new extension headers in IPv6 networks. | |||
| Nevertheless, IPv6 is not perfect either. For one thing, IPv6's | Nevertheless, IPv6 is not perfect either. It has two main issues. | |||
| header overhead is large compared to MPLS. We would like to retain | First, IPv6's header is large compared to MPLS, claiming extra | |||
| the header compactness in MPLS networks. On the other hand, IPv6's | bandwidth overhead and complicating the packet processing. We prefer | |||
| to retain the header compactness in MPLS networks. Second, IPv6's | ||||
| extension headers are chained with the original upper layer protocol | extension headers are chained with the original upper layer protocol | |||
| headers in a flat stack. One has to scan all the extension headers | headers in a flat stack. One must scan all the extension headers to | |||
| to access the upper layer protocol headers and the payload. This is | access the upper layer protocol headers and the payload. This is | |||
| inconvenient and raises some performance concerns for some | inconvenient and raises some performance concerns for some | |||
| applications (e.g., DPI and ECMP). The new scheme for MPLS header | applications (e.g., DPI and ECMP). The new scheme for MPLS header | |||
| extension needs to address these issues too. | extension needs to address these issues too. | |||
| 2. MPLS Extension Header | 2. MPLS Extension Header | |||
| From the previous discussion, we have laid out the design | From the previous discussion, we have laid out the design | |||
| requirements to support extension headers in MPLS networks: | requirements to support extension headers in MPLS networks: | |||
| Performance: If possible, unnecessary label stack scanning and | Performance: If possible, unnecessary label stack scanning for a | |||
| extension header scanning should be avoided. | label and extension header stack scanning for the upper layer | |||
| protocol should be avoided. | ||||
| Scalability: New applications can be easily supported by introducing | Scalability: New applications can be easily supported by introducing | |||
| new extension headers. Multiple extension headers can be easily | new extension headers. Multiple extension headers can be easily | |||
| stacked together to support multiple services simultaneously. | stacked together to support multiple services simultaneously. | |||
| Backward Compatibility: Legacy devices which do not recognize the | Backward Compatibility: Legacy devices which do not recognize the | |||
| extension header option should still be able to forward the | extension header option should still be able to forward the | |||
| packets as usual. If a device recognize some of the extension | packets as usual. If a device recognize some of the extension | |||
| headers but not the others in an extension header stack, it can | headers but not the others in an extension header stack, it can | |||
| process the known headers only while ignoring the others. | process the known headers only while ignoring the others. | |||
| To support the extension header in MPLS, we need to assign a new | Extension headers can be be supported in several ways in an MPLS | |||
| special label, namely the Extension Header Label (EHL). So far 8 | network, we have outlined some of them in this document. However, it | |||
| special label values are left unsigned by IANA (which are 4 to 6 and | should be noted that we do not intend to close this discussion yet, | |||
| 8 to 12). We believe this use case is significant enough to deserve | and are prepared to listen to arguments why and how any other methods | |||
| one dedicated special label. Alternatively, a two label scheme with | could be used. One interesting line of thought is whether it would | |||
| the use of the extension label (XL) plus an EHL is possible, but it | be possible to let a label that is received on top of the stack | |||
| does use one more label. It is also possible to use FEC labels to | indicate whether there are extension headers beneath the stack. | |||
| indicate the presence of extension headers. Although this approach | ||||
| avoid the need of a new special label, it introduces a good deal of | Our investigations indicate that a special purpose label and/or an | |||
| complexity into the control plane. In the remaining of the document, | extended special purpose label will be the optimal way to go. A new | |||
| we assume a special EHL is assigned. | special purpose label, namely the Extension Header Label (EHL), can | |||
| be used to indicate EHs. So far 8 special purpose label values are | ||||
| left unsigned by IANA (which are 4 to 6 and 8 to 12). Alternatively, | ||||
| a two label scheme with the use of the extension label (XL) plus an | ||||
| EHL is possible, but it does use one more label. It is also possible | ||||
| to use FEC labels to indicate the presence of extension headers. | ||||
| Although this approach avoid the need of a new special purpose label, | ||||
| it introduces a good deal of complexity into the control plane. In | ||||
| the remaining of the document, we assume a special EHL is assigned | ||||
| and use it as an example to illustrate the scheme. A formal | ||||
| recommendation on the Extension Header (EH) indicator approach will | ||||
| be given in a future revision of this document. | ||||
| The format of the MPLS packets with extension headers is shown in | The format of the MPLS packets with extension headers is shown in | |||
| Figure 1. An EHL can be located in anywhere in an MPLS label stack. | Figure 1. An EHL can be located in anywhere in an MPLS label stack. | |||
| However, if there are legacy devices which do not recognize the EHL | However, if there are legacy devices which do not recognize the EHL | |||
| in the network, then for backward compatibility, the EHL must be | in the network, then for backward compatibility, the EHL must be | |||
| located at the bottom of the stack (i.e., only the MPLS tunnel ends | located at the bottom of the stack (i.e., only the MPLS tunnel ends | |||
| and EHL-aware nodes will look up and process it). Otherwise, the EHL | and EHL-aware nodes will look up and process it). Otherwise, the EHL | |||
| can be located close to the top of the stack for better lookup | can be located close to the top of the stack for better lookup | |||
| performance. | performance. | |||
| skipping to change at page 7, line 13 ¶ | skipping to change at page 8, line 13 ¶ | |||
| the EH. This field is 4-octet aligned. | the EH. This field is 4-octet aligned. | |||
| The extension headers as well as the first original upper layer | The extension headers as well as the first original upper layer | |||
| protocol header are chained together through the NH field in HEH and | protocol header are chained together through the NH field in HEH and | |||
| EHs. The encoding of NH uses the same values as the IPv4 protocol | EHs. The encoding of NH uses the same values as the IPv4 protocol | |||
| field. Values for new EH types shall be assigned by IANA. | field. Values for new EH types shall be assigned by IANA. | |||
| Specifically, the NH field of the last EH in a chain can have two | Specifically, the NH field of the last EH in a chain can have two | |||
| special values, which shall be assigned by IANA: | special values, which shall be assigned by IANA: | |||
| NONE: Indicates that there is no any other header and payload after | NONE (No Next Header): Indicates that there is no other header and | |||
| this header. This can be used to transport packets with only | payload after this header. This can be used to transport packets | |||
| extension header(s). | with only extension header(s). | |||
| UNKNOWN: Indicates that the type of the header after this header is | UNKNOWN (Unknown Next Header): Indicates that the type of the header | |||
| unknown. This is intended to be compatible with the original MPLS | after this header is unknown. This is intended to be compatible | |||
| design in which the upper layer protocol type is unknown from the | with the original MPLS design in which the upper layer protocol | |||
| MPLS header alone. | type is unknown from the MPLS header alone. | |||
| 3. Operation on MPLS Extension Headers | 3. Operation on MPLS Extension Headers | |||
| When the first EH X needs to be added to an MPLS packet, an EHL is | When the first EH X needs to be added to an MPLS packet, an EHL is | |||
| inserted into the proper location in the MPLS label stack. A HEH is | inserted into the proper location in the MPLS label stack. A HEH is | |||
| then inserted after the MPLS label stack, in which EHCNT is set to 1, | then inserted after the MPLS label stack, in which EHCNT is set to 1, | |||
| EHTLEN is set to the length of X in 4-octet units, and NH is set to | EHTLEN is set to the length of X in 4-octet units, and NH is set to | |||
| the header value of X. At last, X is inserted after the HEH, in | the header value of X. At last, X is inserted after the HEH, in | |||
| which NH and HELN are set accordingly. Note that if this operation | which NH and HELN are set accordingly. Note that if this operation | |||
| happens at a PE device, the upper layer protocol is known before the | happens at a PE device, the upper layer protocol is known before the | |||
| skipping to change at page 9, line 12 ¶ | skipping to change at page 10, line 12 ¶ | |||
| summarize the potential schemes that allow MPLS packets to carry | summarize the potential schemes that allow MPLS packets to carry | |||
| extension headers and list the main issues for each scheme. | extension headers and list the main issues for each scheme. | |||
| +---+---------------------------+---------------------------------+ | +---+---------------------------+---------------------------------+ | |||
| |No.| Description | Issues | | |No.| Description | Issues | | |||
| +---+---------------------------+---------------------------------+ | +---+---------------------------+---------------------------------+ | |||
| | 1 | GAL + MCH with multi- |- Label location limitation lead | | | 1 | GAL + MCH with multi- |- Label location limitation lead | | |||
| | | header extension | to performance concern | | | | header extension | to performance concern | | |||
| | | |- Interfere with load balancing | | | | |- Interfere with load balancing | | |||
| | | | and DPI functions | | | | | and DPI functions | | |||
| | | |- Overlaod GAL semantics | | | | |- Overload GAL semantics | | |||
| | | |- Need standard extension | | | | |- Need standard extension | | |||
| +---+---------------------------+---------------------------------+ | +---+---------------------------+---------------------------------+ | |||
| | 2 | GAL + another nibble value|- Same as above | | | 2 | GAL + another nibble value|- Same as above | | |||
| | | to encode the EHs (e.g., | | | | | to encode the EHs (e.g., | | | |||
| | | "0010") | | | | | "0010") | | | |||
| +---+---------------------------+---------------------------------+ | +---+---------------------------+---------------------------------+ | |||
| | 3 | FEC label to indicate EH |- Complex control plane | | | 3 | FEC label to indicate EH |- Complex control plane | | |||
| | | |- Interoperability | | ||||
| +---+---------------------------+---------------------------------+ | +---+---------------------------+---------------------------------+ | |||
| | 4 | XL(15) + EHL |- One extra label | | | 4 | XL(15) + EHL |- One extra label | | |||
| | | |- Need standard extension | | | | |- Need standard extension | | |||
| +---+---------------------------+---------------------------------+ | +---+---------------------------+---------------------------------+ | |||
| | 5 | Sepcial EHL |- Need standard extension | | | 5 | Special purpose EHL |- Need standard extension | | |||
| +---+---------------------------+---------------------------------+ | +---+---------------------------+---------------------------------+ | |||
| Figure 4: Potential Schemes for MPLS Extension Headers | Figure 4: Potential Schemes for MPLS Extension Headers | |||
| Through comprehensive considerations on the pros and cons of each | Through comprehensive considerations on the pros and cons of each | |||
| scheme, we currently recommend the scheme No.5. The proposed MPLS | scheme, we currently recommend the scheme No.5. The proposed MPLS | |||
| extension header scheme provides a generic way to support in-network | extension header scheme provides a generic way to support in-network | |||
| services and functions in MPLS networks. | services and functions in MPLS networks. | |||
| 6. Security Considerations | 6. Security Considerations | |||
| TBD | TBD | |||
| 7. IANA Considerations | 7. IANA Considerations | |||
| This document requires IANA to assign a new special MPLS label value | If the EHL approach is adopted to indicate the presence of MPLS | |||
| ("EHL") which is dedicated to indicate the presence of MPLS extension | extension header(s), this document requests IANA to assign a new | |||
| header(s). | Special-Purpose MPLS Label Value from the Special-Purpose | |||
| Multiprotocol Label Switching (MPLS) Label Values Registry of | ||||
| "Extension Header Label (EHL)". | ||||
| This document also requires IANA to assign two new protocol numbers | This document also requests IANA to assign two new Internet Protocol | |||
| which are used to indicate no next header ("NONE") or an unknown next | Numbers from the "Protocol Numbers" Registry to indicate "No Next | |||
| header ("UNKNOWN"). | Header" or "Unknown Next Header". | |||
| The new header type values shall be assigned by IANA on a case-by- | This document does not create any new registries. | |||
| case basis. | ||||
| 8. Contributors | 8. Contributors | |||
| The other contributors of this document are listed as follows. | The other contributors of this document are listed as follows. | |||
| o James Guichard | o James Guichard | |||
| o Stewart Bryant | o Stewart Bryant | |||
| o Andrew Malis | o Andrew Malis | |||
| skipping to change at page 10, line 38 ¶ | skipping to change at page 11, line 38 ¶ | |||
| [RFC5586] Bocci, M., Ed., Vigoureux, M., Ed., and S. Bryant, Ed., | [RFC5586] Bocci, M., Ed., Vigoureux, M., Ed., and S. Bryant, Ed., | |||
| "MPLS Generic Associated Channel", RFC 5586, | "MPLS Generic Associated Channel", RFC 5586, | |||
| DOI 10.17487/RFC5586, June 2009, | DOI 10.17487/RFC5586, June 2009, | |||
| <https://www.rfc-editor.org/info/rfc5586>. | <https://www.rfc-editor.org/info/rfc5586>. | |||
| [RFC7665] Halpern, J., Ed. and C. Pignataro, Ed., "Service Function | [RFC7665] Halpern, J., Ed. and C. Pignataro, Ed., "Service Function | |||
| Chaining (SFC) Architecture", RFC 7665, | Chaining (SFC) Architecture", RFC 7665, | |||
| DOI 10.17487/RFC7665, October 2015, | DOI 10.17487/RFC7665, October 2015, | |||
| <https://www.rfc-editor.org/info/rfc7665>. | <https://www.rfc-editor.org/info/rfc7665>. | |||
| [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | ||||
| 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | ||||
| May 2017, <https://www.rfc-editor.org/info/rfc8174>. | ||||
| [RFC8300] Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed., | [RFC8300] Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed., | |||
| "Network Service Header (NSH)", RFC 8300, | "Network Service Header (NSH)", RFC 8300, | |||
| DOI 10.17487/RFC8300, January 2018, | DOI 10.17487/RFC8300, January 2018, | |||
| <https://www.rfc-editor.org/info/rfc8300>. | <https://www.rfc-editor.org/info/rfc8300>. | |||
| [RFC8321] Fioccola, G., Ed., Capello, A., Cociglio, M., Castaldelli, | [RFC8321] Fioccola, G., Ed., Capello, A., Cociglio, M., Castaldelli, | |||
| L., Chen, M., Zheng, L., Mirsky, G., and T. Mizrahi, | L., Chen, M., Zheng, L., Mirsky, G., and T. Mizrahi, | |||
| "Alternate-Marking Method for Passive and Hybrid | "Alternate-Marking Method for Passive and Hybrid | |||
| Performance Monitoring", RFC 8321, DOI 10.17487/RFC8321, | Performance Monitoring", RFC 8321, DOI 10.17487/RFC8321, | |||
| January 2018, <https://www.rfc-editor.org/info/rfc8321>. | January 2018, <https://www.rfc-editor.org/info/rfc8321>. | |||
| skipping to change at line 538 ¶ | skipping to change at page 13, line 30 ¶ | |||
| Email: lizhenbin@huawei.com | Email: lizhenbin@huawei.com | |||
| Tianran Zhou | Tianran Zhou | |||
| Huawei | Huawei | |||
| 156 Beiqing Road | 156 Beiqing Road | |||
| Beijing, 100095 | Beijing, 100095 | |||
| P.R. China | P.R. China | |||
| Email: zhoutianran@huawei.com | Email: zhoutianran@huawei.com | |||
| Loa Andersson | ||||
| Bronze Dragon Consulting | ||||
| Stockholm | ||||
| Sweden | ||||
| Email: loa@pi.nu | ||||
| End of changes. 25 change blocks. | ||||
| 78 lines changed or deleted | 102 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/ | ||||