| rfc9791v1.txt | rfc9791.txt | |||
|---|---|---|---|---|
| Internet Engineering Task Force (IETF) T. Saad | Internet Engineering Task Force (IETF) T. Saad | |||
| Request for Comments: 9791 Cisco Systems, Inc. | Request for Comments: 9791 Cisco Systems, Inc. | |||
| Category: Informational K. Makhijani | Category: Informational K. Makhijani | |||
| ISSN: 2070-1721 Independent | ISSN: 2070-1721 Independent | |||
| H. Song | H. Song | |||
| Futurewei Technologies | Futurewei Technologies | |||
| G. Mirsky | G. Mirsky | |||
| Ericsson | Ericsson | |||
| May 2025 | July 2025 | |||
| Use Cases for MPLS Network Action Indicators and MPLS Ancillary Data | Use Cases for MPLS Network Action Indicators and Ancillary Data | |||
| Abstract | Abstract | |||
| This document presents use cases that have a common feature that may | This document presents use cases that have a common feature that may | |||
| be addressed by encoding network action indicators and associated | be addressed by encoding network action indicators and associated | |||
| ancillary data within MPLS packets. There is community interest in | ancillary data within MPLS packets. There is community interest in | |||
| extending the MPLS data plane to carry such indicators and ancillary | extending the MPLS data plane to carry such indicators and ancillary | |||
| data to address these use cases. | data to address these use cases. | |||
| The use cases described in this document are not an exhaustive set | The use cases described in this document are not an exhaustive set | |||
| skipping to change at line 116 ¶ | skipping to change at line 116 ¶ | |||
| 1.1. Terminology | 1.1. Terminology | |||
| The following terminology is used in the document: | The following terminology is used in the document: | |||
| RFC 9543 Network Slice: | RFC 9543 Network Slice: | |||
| Interpreted as defined in [RFC9543]. This document uses "network | Interpreted as defined in [RFC9543]. This document uses "network | |||
| slice" interchangeably as a shorter version of the term "RFC 9543 | slice" interchangeably as a shorter version of the term "RFC 9543 | |||
| Network Slice". | Network Slice". | |||
| MPLS Ancillary Data: | MPLS Ancillary Data (also referred to in this document as | |||
| "ancillary data"): | ||||
| Data that can be classified as: | Data that can be classified as: | |||
| * residing within the MPLS label stack (referred to as "in-stack | * residing within the MPLS label stack (referred to as "in-stack | |||
| data"), and | data"), and | |||
| * residing after the Bottom of Stack (BoS) (referred to as "post- | * residing after the Bottom of Stack (BoS) (referred to as "post- | |||
| stack data"). | stack data"). | |||
| 1.2. Abbreviations | 1.2. Abbreviations | |||
| MNA: MPLS Network Action | AMM: Alternative Marking Method | |||
| DEX: Direct Export | ||||
| I2E: Ingress to Edge | BoS: Bottom of Stack | |||
| HbH: Hop by Hop | DEX: Direct Export | |||
| PW: Pseudowire | eSPL: extended Special-Purpose Label | |||
| BoS: Bottom of Stack | FRR: Fast Reroute | |||
| ToS: Top of Stack | G-ACh: Generic Associated Channel | |||
| NSH: Network Service Header | HbH: Hop by Hop | |||
| FRR: Fast Reroute | I2E: Ingress to Egress | |||
| IOAM: In situ Operations, Administration, and Maintenance | IOAM: In situ Operations, Administration, and Maintenance | |||
| G-ACh: Generic Associated Channel | ||||
| LSP: Label Switched Path | LSP: Label Switched Path | |||
| LSR: Label Switching Router | LSR: Label Switching Router | |||
| MNA: MPLS Network Action | ||||
| NRP: Network Resource Partition | NRP: Network Resource Partition | |||
| SPL: Special-Purpose Label | NSH: Network Service Header | |||
| eSPL: extended Special-Purpose Label | PW: Pseudowire | |||
| AMM: Alternative Marking Method | SPL: Special-Purpose Label | |||
| ToS: Top of Stack | ||||
| 2. Use Cases | 2. Use Cases | |||
| 2.1. No Further Fast Reroute | 2.1. No Further Fast Reroute | |||
| MPLS Fast Reroute [RFC4090] [RFC5286] [RFC7490] [SR-TI-LFA] is a | MPLS Fast Reroute [RFC4090] [RFC5286] [RFC7490] [SR-TI-LFA] is a | |||
| useful and widely deployed tool for minimizing packet loss in the | useful and widely deployed tool for minimizing packet loss in the | |||
| case of a link or node failure. | case of a link or node failure. | |||
| Several cases exist where, once a Fast Reroute (FRR) has taken place | Several cases exist where, once a Fast Reroute (FRR) has taken place | |||
| skipping to change at line 196 ¶ | skipping to change at line 197 ¶ | |||
| the operational state and telemetry information collected on the LSR | the operational state and telemetry information collected on the LSR | |||
| may be transported using MNA techniques. | may be transported using MNA techniques. | |||
| 2.2.1. In Situ OAM | 2.2.1. In Situ OAM | |||
| In situ Operations, Administration, and Maintenance (IOAM), defined | In situ Operations, Administration, and Maintenance (IOAM), defined | |||
| in [RFC9197] and [RFC9326], might be used to collect operational and | in [RFC9197] and [RFC9326], might be used to collect operational and | |||
| telemetry information while a packet traverses a particular path in a | telemetry information while a packet traverses a particular path in a | |||
| network domain. | network domain. | |||
| IOAM can run in two modes: Ingress to Edge (I2E) and Hop by Hop | IOAM can run in two modes: Ingress to Egress (I2E) and Hop by Hop | |||
| (HbH). In I2E mode, only the encapsulating and decapsulating nodes | (HbH). In I2E mode, only the encapsulating and decapsulating nodes | |||
| will process IOAM data fields. In HbH mode, the encapsulating and | will process IOAM data fields. In HbH mode, the encapsulating and | |||
| decapsulating nodes and intermediate IOAM-capable nodes process IOAM | decapsulating nodes and intermediate IOAM-capable nodes process IOAM | |||
| data fields. The IOAM data fields, defined in [RFC9197], can be used | data fields. The IOAM data fields, defined in [RFC9197], can be used | |||
| to derive the operational state of the network experienced by the | to derive the operational state of the network experienced by the | |||
| packet with the IOAM Header that traversed the path through the IOAM | packet with the IOAM Header that traversed the path through the IOAM | |||
| domain. | domain. | |||
| Several IOAM Option-Types have been defined: | Several IOAM Option-Types have been defined: | |||
| skipping to change at line 268 ¶ | skipping to change at line 269 ¶ | |||
| treatments. | treatments. | |||
| MNA technologies can signal actions for MPLS packets and carry data | MNA technologies can signal actions for MPLS packets and carry data | |||
| essential for these actions. For example, MNA can carry the NRP | essential for these actions. For example, MNA can carry the NRP | |||
| Selector [NS-IP-MPLS] in MPLS packets. | Selector [NS-IP-MPLS] in MPLS packets. | |||
| 2.4. NSH-Based Service Function Chaining | 2.4. NSH-Based Service Function Chaining | |||
| [RFC8595] describes how Service Function Chaining can be realized in | [RFC8595] describes how Service Function Chaining can be realized in | |||
| an MPLS network by emulating the Network Service Header (NSH) | an MPLS network by emulating the Network Service Header (NSH) | |||
| [RFC8300] using only MPLS label stack elements. | [RFC8300] using only MPLS label stack entries. | |||
| The approach in [RFC8595] introduces some limitations, which are | The approach in [RFC8595] introduces some limitations, which are | |||
| discussed in [SFP-VERIF]. However, the approach can benefit from the | discussed in [SFP-VERIF]. However, the approach can benefit from the | |||
| MNA framework introduced in [RFC9789]. | MNA framework introduced in [RFC9789]. | |||
| MNA can be used to extend NSH emulation using MPLS labels [RFC8595] | MNA can be used to extend NSH emulation using MPLS labels [RFC8595] | |||
| to support the functionality of NSH Context Headers, whether fixed or | to support the functionality of NSH Context Headers, whether fixed or | |||
| variable length. For example, MNA could support Flow ID [RFC9263] | variable length. For example, MNA could support Flow ID [RFC9263] | |||
| that may be used for load-balancing among Service Function Forwarders | that may be used for load-balancing among Service Function Forwarders | |||
| and/or the Service Functions within the same Service Function Path. | and/or the Service Functions within the same Service Function Path. | |||
| skipping to change at line 321 ¶ | skipping to change at line 322 ¶ | |||
| the presence of the PW CW. | the presence of the PW CW. | |||
| In addition to providing connectivity to user traffic, MPLS may also | In addition to providing connectivity to user traffic, MPLS may also | |||
| transport OAM data (e.g., over MPLS Generic Associated Channels | transport OAM data (e.g., over MPLS Generic Associated Channels | |||
| (G-AChs) [RFC5586]). In this case, the first nibble of the data that | (G-AChs) [RFC5586]). In this case, the first nibble of the data that | |||
| immediately follows the MPLS BoS is set to 0b0001. It indicates the | immediately follows the MPLS BoS is set to 0b0001. It indicates the | |||
| presence of a control channel associated with a PW, LSP, or section. | presence of a control channel associated with a PW, LSP, or section. | |||
| Bit Index Explicit Replication (BIER) [RFC8296] traffic can also be | Bit Index Explicit Replication (BIER) [RFC8296] traffic can also be | |||
| encapsulated over MPLS. In this case, BIER has defined 0b0101 as the | encapsulated over MPLS. In this case, BIER has defined 0b0101 as the | |||
| value for the first nibble of the data that immediately follows the | value for the first nibble of the data that immediately appears after | |||
| bottom of the label stack for any BIER-encapsulated packet over MPLS. | the BoS for any BIER-encapsulated packet over MPLS. | |||
| For PWs, the G-ACh [RFC7212] uses the first four bits of the PW | For PWs, the G-ACh [RFC7212] uses the first four bits of the PW | |||
| control word to provide the initial discrimination between data | control word to provide the initial discrimination between data | |||
| packets and packets belonging to the associated channel, as described | packets and packets belonging to the associated channel, as described | |||
| in [RFC4385]. | in [RFC4385]. | |||
| MPLS can be used as the data plane for Deterministic Networking | MPLS can be used as the data plane for Deterministic Networking | |||
| (DetNet) [RFC8655]. The DetNet sub-layers, forwarding, and service | (DetNet) [RFC8655]. The DetNet sub-layers, forwarding, and service | |||
| are realized using the MPLS label stack, the DetNet control word | are realized using the MPLS label stack, the DetNet control word | |||
| [RFC8964], and the DetNet Associated Channel Header [RFC9546]. | [RFC8964], and the DetNet Associated Channel Header [RFC9546]. | |||
| skipping to change at line 357 ¶ | skipping to change at line 358 ¶ | |||
| Objectives (SLOs) are being met by the network provider. In this | Objectives (SLOs) are being met by the network provider. In this | |||
| case, IOAM can collect key performance measurement parameters of a | case, IOAM can collect key performance measurement parameters of a | |||
| network slice traffic flow as it traverses the transport network. | network slice traffic flow as it traverses the transport network. | |||
| 5. IANA Considerations | 5. IANA Considerations | |||
| This document has no IANA actions. | This document has no IANA actions. | |||
| 6. Security Considerations | 6. Security Considerations | |||
| Section 7 of the MNA framework [RFC9789] outlines security | Section 7 of [RFC9789] outlines security considerations for documents | |||
| considerations for documents that do not specify protocols. The | that do not specify protocols. The authors have verified that these | |||
| authors have verified that these considerations are fully applicable | considerations are fully applicable to this document. | |||
| to this document. | ||||
| In-depth security analysis for each specific use case is beyond the | In-depth security analysis for each specific use case is beyond the | |||
| scope of this document and will be addressed in future solution | scope of this document and will be addressed in future solution | |||
| documents. It is strongly recommended that these solution documents | documents. It is strongly recommended that these solution documents | |||
| undergo review by a security expert early in their development, | undergo review by a security expert early in their development, | |||
| ideally during the Working Group Last Call phase. | ideally during the Working Group Last Call phase. | |||
| 7. References | 7. References | |||
| 7.1. Normative References | 7.1. Normative References | |||
| [RFC9789] Andersson, L., Bryant, S., Bocci, M., and T. Li, "MPLS | [RFC9789] Andersson, L., Bryant, S., Bocci, M., and T. Li, "MPLS | |||
| Network Action (MNA) Framework", RFC 9789, | Network Actions (MNAs) Framework", RFC 9789, | |||
| DOI 10.17487/RFC9789, May 2025, | DOI 10.17487/RFC9789, July 2025, | |||
| <https://www.rfc-editor.org/info/rfc9789>. | <https://www.rfc-editor.org/info/rfc9789>. | |||
| 7.2. Informative References | 7.2. Informative References | |||
| [GDF] Zhang, Z., Bonica, R., Kompella, K., and G. Mirsky, | [GDF] Zhang, Z., Bonica, R., Kompella, K., and G. Mirsky, | |||
| "Generic Delivery Functions", Work in Progress, Internet- | "Generic Delivery Functions", Work in Progress, Internet- | |||
| Draft, draft-zzhang-intarea-generic-delivery-functions-03, | Draft, draft-zzhang-intarea-generic-delivery-functions-03, | |||
| 11 July 2022, <https://datatracker.ietf.org/doc/html/ | 11 July 2022, <https://datatracker.ietf.org/doc/html/ | |||
| draft-zzhang-intarea-generic-delivery-functions-03>. | draft-zzhang-intarea-generic-delivery-functions-03>. | |||
| skipping to change at line 518 ¶ | skipping to change at line 518 ¶ | |||
| Networking (DetNet) with the MPLS Data Plane", RFC 9546, | Networking (DetNet) with the MPLS Data Plane", RFC 9546, | |||
| DOI 10.17487/RFC9546, February 2024, | DOI 10.17487/RFC9546, February 2024, | |||
| <https://www.rfc-editor.org/info/rfc9546>. | <https://www.rfc-editor.org/info/rfc9546>. | |||
| [RFC9613] Bocci, M., Ed., Bryant, S., and J. Drake, "Requirements | [RFC9613] Bocci, M., Ed., Bryant, S., and J. Drake, "Requirements | |||
| for Solutions that Support MPLS Network Actions (MNAs)", | for Solutions that Support MPLS Network Actions (MNAs)", | |||
| RFC 9613, DOI 10.17487/RFC9613, August 2024, | RFC 9613, DOI 10.17487/RFC9613, August 2024, | |||
| <https://www.rfc-editor.org/info/rfc9613>. | <https://www.rfc-editor.org/info/rfc9613>. | |||
| [SFP-VERIF] | [SFP-VERIF] | |||
| Yao, L. and G. Mirsky, "MPLS-based Service Function | Liu, Y. and G. Mirsky, "MPLS-based Service Function | |||
| Path(SFP) Consistency Verification", Work in Progress, | Path(SFP) Consistency Verification", Work in Progress, | |||
| Internet-Draft, draft-lm-mpls-sfc-path-verification-03, 11 | Internet-Draft, draft-lm-mpls-sfc-path-verification-03, 11 | |||
| June 2022, <https://datatracker.ietf.org/doc/html/draft- | June 2022, <https://datatracker.ietf.org/doc/html/draft- | |||
| lm-mpls-sfc-path-verification-03>. | lm-mpls-sfc-path-verification-03>. | |||
| [SR-TI-LFA] | [SR-TI-LFA] | |||
| Bashandy, A., Litkowski, S., Filsfils, C., Francois, P., | Bashandy, A., Litkowski, S., Filsfils, C., Francois, P., | |||
| Decraene, B., and D. Voyer, "Topology Independent Fast | Decraene, B., and D. Voyer, "Topology Independent Fast | |||
| Reroute using Segment Routing", Work in Progress, | Reroute using Segment Routing", Work in Progress, | |||
| Internet-Draft, draft-ietf-rtgwg-segment-routing-ti-lfa- | Internet-Draft, draft-ietf-rtgwg-segment-routing-ti-lfa- | |||
| End of changes. 22 change blocks. | ||||
| 29 lines changed or deleted | 29 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||