MPLS Network Actions: Technological Overview and P4-Based Implementation on a High-Speed Switching ASIC

Fabian Ihle,Michael Menth
2024-10-27
Abstract:The MPLS protocol, traditionally focused on packet forwarding using labels, has evolved to include advanced mechanisms such as Service Function Chaining (SFC), Alternate-Marking Method (AMM), and in-situ OAM (IOAM). However, many of those mechanisms require extensions to existing specifications in MPLS making them difficult to deploy. To bridge this gap, the IETF MPLS WG proposed the MPLS Network Actions (MNA) framework which provides a unified encoding for signaling network actions and their data within the MPLS stack. Network actions in the MNA framework serve a similar role for MPLS as extension headers (EH) do for IPv6. The network actions can be encoded within the label stack (in-stack) or following the stack (post-stack). In this work, we give a comprehensive overview of the design principles of network actions in the MNA framework and the mechanisms that benefit from this framework. We summarize and explain use cases in the MNA framework. Building on this, we implement the MNA framework in P4 on the Intel Tofino 2 switching ASIC. Our work explores an in-stack data (ISD) implementation of the MNA framework. The implementation can process 51 label stack entries containing 32 network actions at a line rate of 400 Gb/s per port. Additionally, we implement and evaluate an exemplary network action for performance measurement with AMM. Finally, we identify challenges with an MNA in-stack implementation and propose an extension to the signaling procedure.
Networking and Internet Architecture,Emerging Technologies
What problem does this paper attempt to address?
The problem that this paper attempts to solve is the scalability issue faced when introducing new mechanisms and functions in MPLS (Multi - Protocol Label Switching) networks. Specifically: 1. **Scalability challenges of the MPLS protocol**: With the development of the MPLS protocol, new applications and services (such as Service Function Chaining (SFC), Alternate Marking Method (AMM), In - situ OAM (IOAM), etc.) require extensions to the existing MPLS specifications. These extensions make deployment complex and difficult to achieve. 2. **Proposal of the MPLS Network Action (MNA) framework**: To solve the above - mentioned scalability problems, the IETF MPLS working group proposed the MPLS Network Action (MNA) framework. This framework provides a unified encoding method for signaling network actions and their data in the MPLS label stack. In this way, the MNA framework can simplify the deployment of new mechanisms and improve their flexibility and scalability. 3. **Challenges in hardware implementation**: Although the MNA framework provides a theoretical solution, how to efficiently implement this framework on high - speed switching ASICs is still a challenge. In particular, how to handle In - Stack Data (ISD) and ensure that 32 network actions in 51 label stack entries can be correctly processed at a line rate of 400 Gb/s. ### Main contributions of the paper - **Comprehensive introduction of the MNA framework**: The paper details the design principles and working mechanism of the MNA framework, and summarizes and explains the usage scenarios of the MNA framework. - **Implementation of the MNA framework in P4 language**: For the first time, the paper implemented the MNA framework on the Intel Tofino™ 2 switching ASIC using the P4 programming language, especially achieving a breakthrough in the implementation of In - Stack Data (ISD). - **Performance measurement and evaluation**: The paper implemented the performance - measuring network action based on AMM and evaluated it. - **Proposing improvement suggestions**: Based on the challenges encountered during the implementation process, the paper proposed improvement suggestions for the signaling process to better support the integration of low - power - consumption hardware. ### Conclusion This paper aims to solve the scalability problem faced when introducing new mechanisms in MPLS networks. By proposing and implementing the MNA framework, it simplifies the deployment of new functions and verifies its feasibility on high - performance hardware.