Internet-Draft | CATS Use case of MUP | October 2023 |
Phung, et al. | Expires 22 April 2024 | [Page] |
5G support new emerging high reliability and low-latency services by Mobile Edge Computing. Multiple instances of the same service can be deployed over different edge sites to enable high availability, scalability and better response time. However, due to different computing loads and network resources overtime, a specific edge site might not always guarantee service quality. Routing user traffic to an overloaded edge site can significantly affect user service experiences. Current 5G mobile network does not have a method to dynamically steer traffic to an optimal service instance based on network status and edge sites' computing resources availability.¶
This document describes solutions to provide computing-aware traffic steering methods for the 5G mobile user plane using Segment Routing. The solution explains how to use Segment Routing to deliver mobile user traffic dynamically to the best edge site destination based on both computing and networking resource information in the mobile user plane.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 22 April 2024.¶
Copyright (c) 2023 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
5G mobile network can support high reliability and low latency services such as high-definition video, Augmented Reality(AR)/Virtual Reality(VR), Internet-of-Things via Mobile Edge Computing(MEC) sites. To support high availability and improve user experiences, multiple computing instances of the same service can be often geographically distributed to multiple edge nodes. However, edge nodes might have different computing resources and network availability over time. Current 5G mobile network routes user traffic to edge nodes via UPF, and is unaware of these information. When the traffic is routed to a service instance at an overloaded node, user might experience significant drop in service quality. Hence, computing-aware traffic steering should be considered in 5G mobile network.¶
The Computing-Aware Traffic Steering (CATS) framework [I-D.draft-ldbc-cats-framework] provides an approach for making compute- and network-aware traffic steering decisions in networking environments where services are deployed in many locations. CATS framework is an overlay framework for selecting the suitable service contact instance for placing a service request by combining the networking and computing metrics.¶
To provide computing-aware traffic steering for mobile user plane, using Segment Routing (SR) [RFC8402] is a suitable solution. As mentioned in [RFC9433], operators can use SR to explicitly indicate routes for the packets in mobile nodes via network programming concept to achieve flexible and optimized mobile data plane. Therefore, after an optimal service instance is determined by CATS framework, route to this service instance can be installed via SR.¶
However, there are different SR deployment scenarios in mobile user plane that need to be considered when interworking with CATS. The first scenario is SRv6 Drop-in Interworking defined in [RFC9433]. In this scenario, the existing 3GPP mobile network is unchanged. SR gateways are inserted in either N3 or N9 interface to route packets between gNodeB, UPF and data network via the SRv6 underlay network. The second scenario is using SRv6 Mobile User Plane Controller (SRv6MUP-C) defined in [I-D.mhkk-dmm-srv6mup-architecture]. In this scenario, the SRv6MUP-C transform 5G session information into SR underlay dataplane routing information. User traffic route between gNodeB and data network can be optimized by being steered via SRv6 underlay routers only, bypassing a specific UPF.¶
This document discusses how CATS and SR can interwork together in 5G mobile network regarding these different scenarios.¶
CATS-MUP-C: Computing-aware traffic steering MUP-C which integrates both CATS-C and SRv6 MUP-C Controller features.¶
Besides, this document uses the following terminologies which has been defined in [I-D.draft-ldbc-cats-framework]¶
CATS: Computing-Aware Traffic Steering takes into account the dynamic nature of computing resource metrics and network state metrics to steer service traffic to a service instance.¶
Service: A monolithic function. A composite service can be built by orchestrating monolithic services.¶
Service instance: A run-time environment (e.g., a server or a process on a server) that makes the functionality of a service available. One service can have multiple instances running at the same or different network locations.¶
Service Contact Instance: A client-facing service function instance that is responsible for receiving requests in the context of a given service.¶
CS-ID: The CATS Service ID is an identifier representing a service, which the clients use to access said service. Such an identifier identifies all of the instances of the same service, no matter on where they are actually running.¶
CATS-router: AA network device (usually at the edge of the network) that makes forwarding decisions based on CATS information to steer traffic belonging to the same service demand to the same chosen service instance.¶
Ingress CATS-Router: A network edge router that serves as a service access point for CATS clients. It steers the service packets onto an overlay path to an Egress CAN-Router linked to the most suitable edge site to access a service instance.¶
C-SMA:The CATS Service Metric Agent responsible for collecting service capabilities and status, and for reporting them to the C-PS.¶
CATS Path Selector (C-PS): The CATS Path Selector determines the path toward the appropriate service location and service instances to meet a service demand given the service status and network status information.¶
C-TC: The CATS Traffic Classifier is responsible for determining which packets belong to a traffic flow for a particular service demand, and for steering them on the path to the service instance as determined by the C-PS.¶
C-NMA: The CATS Network Metric Agent responsible for collecting network capabilities and status, and for reporting them to the C-PS.¶
In our use cases, the Segment Routing transport infrastructure is assumed as the base transport infrastructure of the mobile network so that the IP connectivity for the N3 interface between gNodeB(es) and UPFs is provided by SR, as well as for the N6 interface between UPFs and DNs (Data Network). There are two different scenarios for deploying SR for the Mobile user Plane: SRv6 Drop-in Interworking and SRv6 Mobile User Plane Controller.¶
The first scenario is the SRv6 Drop-in Interworking mode defined in [RFC9433] where the existing 3GPP mobile network is unchanged and simply interworks with the SRv6 underlay network. This mode provides an SRv6-enabled user plane between two GTP-U tunnel endpoints. Two SRGWs are deployed in either an N3 or N9 interface to realize an intermediate SR Policy so that UPF and GNB behavior are not modified from current and previous generations.¶
The second scenario is using SRv6 Mobile User Plane Controller defined in [I-D.mhkk-dmm-srv6mup-architecture]. The SRv6 MUP Controller Architecture defines the following Route Types: Interwork Segment Discovery route, Direct Segment Discovery route, Type 1 Session Transformed (ST) route, and Type 2 Session Transformed (ST) route. The SRv6 MUP Controller transforms the received session information to routing information and will advertise the session-transformed routes with the corresponding extended communities to the SR domain. The received session information is expected to include the UE or MN IP prefix(es), tunnel endpoint identifiers for both ends and any other attributes for the mobile networks. For example, the tunnel endpoint identifier will be a pair of the Fully Qualified Tunnel Endpoint Identifier F-TEIDs (including IP Address and TEID) on both the N3 access side (RAN) and core side (UPF). Each F-TEID is treated as a logical tunnel. Therefore, with SRv6 MUP Controller approach, users can send traffic to a service contact instance directly through the SRv6 underlay network without having to go through UPF.¶
The Computing-Aware Traffic Steering framework [I-D.draft-ldbc-cats-framework] provides an approach for making compute- and network-aware traffic steering decisions in networking environments where services are deployed in many locations. CATS is a framework for selecting the suitable service contact instance for placing a service request by taking into account both service instance status and network state (e.g., reachability considerations, path cost, and traffic congestion conditions).¶
Service instances can be instantiated and accessed through different service sites so that a single service can be represented and accessed by several contact instances that run in different regions of a network. The CATS Service Metric Agent (C-SMA) gathers information about service sites and server resources, the CATS Network Metric Agent (C-NMA) gathers information about the state of the underlay network. The C-SMAs and C-NMAs share the collected information with CATS Path Selectors (C-PSes) and C-PSes will determine the best paths (possibly using tunnels) to forward traffic, according to various criteria that include network state and traffic congestion conditions. CATS Traffic Classifier (C-TC) is responsible for associating incoming packets from clients with existing service requests.¶
CATS framework can utilize SRv6 underlay infrastructure and SRv6 network programming ability for running CATS functions for 5G Mobile User Plane. Both computing- and networking metrics can be collected and based on the CATS decision, the underlying path can be steered dynamically to the optimized destination. To provide this CATS function, the interaction between CATS-SR and 5G mobile control plane for dynamically modifying user PDU session is necessary.¶
However as discussed in previous sections, the designs for this interaction are different for the 2 main deployment scenarios of a mobile user plane with Segment routing.¶
For the SRv6 Drop-in Interworking scenario, the 5G mobile control plane can provide user information to CATS, then CATS utilizes that information with its collected computing- and networking metrics to select the best destination. If the mobile userplane path needs to be changed to a new destination, CATS sends a traffic influence message back to the 5GC control plane.¶
For the SRv6 MUP Controller scenario, user traffic can go directly to the target service contact instance through the Segment Network without passing through UPF by additional SRv6 MUP Controller Route Types. Besides, an approach of using a PDU session with Anycast Service IP Address can be considered to change the mobile user path without 5GC control plane intervention.¶
Details of how CATS can interwork with Mobile User Plane using Segment Routing in different deployment scenarios are presented in the next section. In this document, we discuss following cases based on how SR is deployed in the mobile user plane:¶
- The first case is providing computing-aware traffic steering ability for 5G mobile user plane using the SRv6 Drop-in Interworking scenario.¶
- The second case is providing computing-aware traffic steering ability for 5G mobile user plane using the SRv6 MUP Controller scenario. In this case, utilizing specific Service IP address and Anycast Service IP address for UE PDU Session Establishment is considered.¶
Figure 1 describes the architecture of this case. There is a service instance of a service called Service Contact Instance deployed behind a UPF. That UPF acts as an ingress gateway to access into Service Contact Instances. Also, there are multiple UPFs for multiple Service Contact Instances deployed on geographically distributed edge sites and attached to a Segment Routing underlay network. CATS Controller(CATS-C) in our case is not only responsible for managing computing- and networking- metric to select the optimized path as origin CATS-C in the CATS framework, but also supports communication with 5G Control Plane for optimized service contact instance selection and owns SRv6 underlay network control ability.¶
In underlay network infrastructure, C1 CATS Ingress Router and C2 CATS Egress Router also be SRv6 awareness nodes and deployed with CATS functions. Egress Router acts as SR Gateway and can be aware of one or more Service Contact Instance(s) by SID Behavior Endpoint with its corresponding interface. Also, the Ingress Router acts as an SR Gateway and has SID Behavior Endpoint to the GNB interface.¶
Whenever UE joins the mobile network, it sends a PDU Session Establishment request with Service ID to 5GC control plane. Service ID here can be the domain name of a service and 5GC control plane does not have a knowledge about the service location and deployment which is managed by CATS domain. Hence, 5GC control plane sends a request with service ID and GNB-UE location to CATS-C for asking about a specific IP address of that Service ID. Then CATS-C responses to 5GC control plane with an selected Service Contact Instance IP to establish mobile user path from UE to the target UPF associated with the selected service contact instance. At the same time, CATS-C controls underlay network for the establishment of a SR underlay tunnel between UE’s GNB and target UPF.¶
Figure 2 describes the architecture of this case. Service Contact Instance is not only deployed behind a UPF as in case 1, it can be attached directly to SRv6 based underlay network. To establish UE PDU Session with a Service ID for a UE, the 5GC control plane sends a request to CATS-MUP-C for asking about specific Service IP for the Service ID. The CATS-MUP-C responses to 5GC with optimal Service Contact Instance IP. Also, it transforms 5G session information into SR underlay dataplane routing information and user traffic route between gNodeB and data network can be optimized by being steered via SRv6 underlay routers, bypassing a specific UPF.¶
In underlay network infrastructure, C1 CATS Ingress Router and C2 CATS Egress Router also be SRv6 MUP nodes and deployed with CATS functions.¶
Whenever UE joins the mobile network, it will send a PDU Session Establishment request with Service ID to 5GC control plane. Service ID here can be the domain name of a service and 5GC control plane does not have a knowledge about the service location and deployment which is managed by CATS domain. Hence, 5GC control plane sends a request with service ID and GNB-UE location to CATS-C for asking about a specific IP address of that Service ID. CATS-MUP-C responses to 5GC control plane with an optimized Service Contact Instance IP to establish mobile user path from UE to the selected service contact instance. At the same time, CATS-MUP-C injects Type 1 Session Transformed Route, Type 2 Session Transformed Route to the corresponding Egress and Ingress Router respectively for bypassing UPF route.¶
Figure 3 describes the architecture of this case. Same as case 2, Service Contact Instance can be attached directly to SRv6 based underlay network. But instead of establishing UE PDU session with specific service IP, PDU Session with Anycast Service IP is utilized. To establish UE PDU Session with the Anycast Service IP for a UE, if Anycast Service IP is not in 5G mobile domain and is managed by CATS, 5GC control plane can ask CATS-MUP-C for resolving that Anycast Service IP for UE PDU Session establishment. Then, CATS-MUP-C also transform 5G session information into SR underlay dataplane routing information and user traffic route between gNodeB and data network can be optimized by being steered via SRv6 underlay routers, bypassing a specific UPF.¶
There are two phases in this use case, firstly UE PDU Session Establishment with Anycast IP Address of a service, and then UE sends service request with Anycast IP address to Ingress CATS router C1, C1 asks the CATS-MUP-C Controller to resolve the request by its integrated C-PS function.¶
In underlay network infrastructure, C1 CATS Ingress Router and C2 CATS Egress Router also be SRv6 MUP nodes and deployed with CATS functions.¶
In the first phase, an Anycast Service IP address is a network address that represents a variety of different service instance addresses running in different locations. Instead of specific Service IP address, we use Anycast Service PDU Session for providing a user plane connectivity between the UE and our Ingress CATS Router. Then, the Ingress CATS Router resolves the target destination by asking the CATS-MUP-C Controller and forwards the user traffic to that optimized service instance location. A service can be known by the 5GC operator or be deployed on the general Internet side. If the service is located under the mobile network domain, Anycast Service IP address management is under the mobile operator, then the 5GC control plane can directly make a PDU session with that Anycast PDU Session without asking for any third-party service deployed outside the mobile network domain. If the service is located on the Internet side, the CATS-MUP-C controller can query this information, and whenever the 5GC control plane wants to establish an Anycast Service PDU Session, asking the CATS-MUP-C controller about that information is required.¶
In the second phase, when a packet destined for the Anycast IP Address of service is sent to Ingress Router C1, C1 checks if exists any SRv6 routing rules for that IP address. In case there are no routing rules for the Anycast IP address, C1 sends a service request for an Anycast IP message to the CATS-MUP-C controller for service resolution. Then CATS-MUP-C injects Type 1 Session Transformed Route, Type 2 Session Transformed Route to the corresponding Egress and Ingress Router respectively to establish the SR underlay tunnel.¶
This document specifies a CATS solution using anycast IP addresses as CS-IDs and SR as data plane. It does not introduce further security threats considering to the existing ones in [I-D.draft-ldbc-cats-framework], [I-D.mhkk-dmm-srv6mup-architecture], [RFC9433], and [RFC8402] .¶
This document makes no requests for IANA action.¶
TBD¶