Network Working Group L. Dunbar Internet Draft Futurewei Intended status: Informational K. Majumdar Expires: January 9, 2023 Microsoft H. Wang Huawei G. Mishra Verizon July 11, 2022 BGP Usage for 5G Edge Computing Service Metadata draft-dunbar-idr-5g-edge-compute-bgp-usage-00 Abstract This draft describes the problems in the 5G Edge computing environment and how BGP can be used to propagating additional information, so that the ingress routers in the 5G Local Data Network can make path selection not only based on the routing distance but also the running environment of the destinations. The goal is to improve latency and performance for 5G EC services. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. This document may not be modified, and derivative works of it may not be created, except to publish it as an RFC and to translate it into languages other than English. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. 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." xxx, et al. Expires January 9, 2023 [Page 1] Internet-Draft AppMetaData for 5G EC Service The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html This Internet-Draft will expire on April 7, 2021. Copyright Notice Copyright (c) 2022 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 (http://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 Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction.............................................. 3 1.1. 5G Edge Computing Background......................... 3 1.2. 5G Edge Computing Network Properties................. 4 1.3. Problem#1: ANYCAST in 5G EC Environment.............. 5 1.4. Problem #2: Unbalanced Anycast Distribution due to UE Mobility.................................................. 7 1.5. Problem 3: Application Server Relocation............. 7 2. Conventions used in this document......................... 8 3. Usage of AppMetaData for 5G Edge Computing................ 9 3.1. Assumptions.......................................... 9 3.2. IP Layer Metrics to Gauge Application Behavior...... 10 3.3. AppMetaData Constrained Optimal Path Selection...... 11 4. Soft Anchoring of an ANYCAST Flow........................ 11 5. Manageability Considerations............................. 13 6. Security Considerations.................................. 13 7. IANA Considerations...................................... 14 8. References............................................... 14 8.1. Normative References................................ 14 8.2. Informative References.............................. 15 Dunbar, et al. Expires January 9, 2023 [Page 2] Internet-Draft AppMetaData for 5G EC Service 9. Acknowledgments.......................................... 15 1. Introduction This document describes the problems in the 5G Edge computing environment and how BGP can be used to propagating additional information, so that the ingress routers in the 5G Local Data Network can make path selection not only based on the routing distance but also the running environment of the destinations. The goal is to improve latency and performance for 5G Edge Computing services. 1.1. 5G Edge Computing Background In 5G Edge Computing (EC), one Application can be hosted on multiple Servers in different EC data centers that are close in proximity. The 5G Local Data Networks (LDN)that connect the EC data centers with the 5G Base stations consist of a small number of dedicated routers. When a User Equipment (UE) initiates application packets using the destination address from a DNS reply or its cache, the packets from the UE are carried in a PDU session through 5G Core [5GC] to the 5G UPF-PSA (User Plan Function - PDU Session Anchor). The UPF-PSA decapsulates the 5G GTP outer header and forwards the packets from the UEs to its directly connected Ingress router of the 5G LDN. The LDN for 5G EC is responsible for forwarding the packets to the intended destinations. When the UE moves out of coverage of its current gNB (next- generation Node B) and anchors to a new gNB, the 5G SMF (Session Management Function) could select the same UPF or a new UPF for the UE per standard handover procedures described in 3GPP TS 23.501 and TS 23.502. If the UE is anchored to a new UPF-PSA when the handover process is complete, the packets to/from the UE is carried by a GTP tunnel to the new UPF-PSA. Per TS 23.501-h20 Section 5.8.2, the UE may maintain its IP address when anchored to a new UPF-PSA unless the new UFP-PSA belongs to different mobile operators. 5GC may maintain a path from the old UPF to the new UPF for a short time for the SSC [Session and Service Continuity] mode 3 to make the handover process more seamless. Dunbar, et al. Expires January 9, 2023 [Page 3] Internet-Draft AppMetaData for 5G EC Service 1.2. 5G Edge Computing Network Properties In this document, 5G Edge Computing Network refers to multiple Local IP Data Networks (LDN) in one region that interconnect the Edge Computing data centers. Those IP LDN networks are the N6 interfaces from 3GPP 5G perspective. The ingress routers to the 5G Edge Computing Network are the routers directly connected to 5G UPFs. The egress routers to the 5G Edge Computing [EC] Network are the routers that have a direct link to the EC servers. The EC servers and the egress routers are co-located. Some of those Edge Computing Data centers may have virtual switches or Top of Rack [ToR] switches between the egress routers and the servers. But transmission delay between the egress routers and the EC servers is negligible, which is too small to be considered in this document. When multiple EC servers are attached to one App Layer Load Balancer, only the IP addresses of the App Layer Load Balancer are visible to the 5G LDNs. How an App Layer Load balancer manages the individual servers is out of the scope of the network layer. The 5G EC Services are registered premium services that require super-low latency and very high SLA. Most services by the UEs are not part of the registered 5G EC Services. Dunbar, et al. Expires January 9, 2023 [Page 4] Internet-Draft AppMetaData for 5G EC Service +--+ |UE|---\+---------+ +------------------+ +--+ | 5G | +--------+ | S1: aa08::4450 | +--+ | Site +--+-+---+ +----+ | |UE|----| A |PSA1| Ra| | R1 | S2: aa08::4460 | +--+ | +----+---+ +----+ | +---+ | | | | | S3: aa08::4470 | |UE1|---/+---------+ | | +------------------+ +---+ |IP Network | L-DN1 |(3GPP N6) | | | | +------------------+ | UE1 | | | S1: aa08::4450 | | moves to | +----+ | | Site B | | R3 | S2: aa08::4460 | v | +----+ | | | | S3: aa08::4470 | | | +------------------+ | | L-DN3 +--+ | | |UE|---\+---------+ | | +------------------+ +--+ | 5G | | | | S1: aa08::4450 | +--+ | Site +--+--+---+ +----+ | |UE|----| B |PSA2| Rb | | R2 | S2: aa08::4460 | +--+ | +--+-+----+ +----+ | +--+ | | +-----------+ | S3: aa08::4470 | |UE|---/+---------+ +------------------+ +--+ L-DN2 Figure 1: App Servers in different edge DCs 1.3. Problem#1: ANYCAST in 5G EC Environment Increasingly, Anycast is used by various application providers and CDNs because Anycast provides better and faster resiliency to failover events than GEO database DNS-based load balancing, which relies on DNS to provide a different IP based on source address. Anycast address leverages the proximity information present in the network (routing) layer. It eliminates the single point of failure and bottleneck at the DNS resolvers. Anycast address can be assigned to multiple app layer load balancers to Dunbar, et al. Expires January 9, 2023 [Page 5] Internet-Draft AppMetaData for 5G EC Service leverage network condition for balanced forwarding. Another benefit of using the ANYCAST address is removing the dependency on UEs. Some UEs (or clients) might use their cached IP addresses for an extended period instead of querying DNS. Client using Virtual IP address is a common practice in Cloud Native networking, e.g., Kubernetes, to scale dynamic changes of app servers' instantiations. Virtual IP requires the destination gateway node to perform address translation for return traffic, which is unsuitable for underlay network nodes with millions of flows passing by. The Cloud Native network can also leverage network condition to balance forwarding among multiple Cloud Gateway nodes by assigning the same virtual IP address (ANYCAST). Having multiple locations of the same IP address in the 5G EC LDN can be problematic if path selection is solely based on routing cost as the routing cost differences to reach different egress routers can be very small. This list elaborates the issues in detail: a) Path Selection: When a new flow comes to an ingress node (Ra), how to avoid instability with Anycast flipping between paths to the same address. The problem also exists in the BGP multipath environment, with the optimal path selected based on routing cost metrics. b) Ingress node forwards the packets from one flow to the same ANYCAST server. a.k.a. Flow Affinity, or Flow-based load balancing. Almost all vendors have supported flow or session based ECMP load balancing and not per packet to avoid out of order packets for decades. When a flow is hashed to an ECMP path, the flow remains on that path for the life of the flow until the flow ends. The ingress node, (Ra/Rb), can use Flow ID (in IPv6 header) or UDP/TCP port number combined with the source address to enforce packets in one flow being placed in one tunnel to one Egress router. No new features are needed. Dunbar, et al. Expires January 9, 2023 [Page 6] Internet-Draft AppMetaData for 5G EC Service c) When a UE moves to a new 5G site in the middle of a communication session with an EC server, a method is needed to stick the flow to the same EC server, which is required by 5G Edge Computing: 3GPP TR 23.748. [5g-edge- compute-sticky-service] describes several approaches to achieve stickiness in the IPv6 domain. Note: most EC services have shorter sessions, e.g., shorter TCP sessions. Most likely, when a UE is moving to a new 5G site, the TCP session via the old UPF to an EC server is already finished. Only a very small percentage of registered EC services need to stick to the original server when handover to a new cell tower. From BGP perspective, the multiple servers with the same IP address (ANYCAST)attached to different egress routers is the same as multiple next hops for the IP address. This draft describes the BGP UPDATE to enable ingress routers to take the App Server load, the capacity index, and the location preference into consideration when computing the optimal path to the egress routers. 1.4. Problem #2: Unbalanced Anycast Distribution due to UE Mobility Usually, higher capacity EC servers are placed in a metro data center to accommodate more UEs in the proximity needing the services, and fewer are placed in remote sites. When there is a special event occurring at a remote site for a short period, e.g., 1~2 days, the EC servers in the remote site might be heavily utilized. In contrast, the EC servers of the same app in the metro DC can be very underutilized. Since the condition can be short-lived, it might not make business sense to adjust EC capacity among DCs. Sometimes, UEs swarming to a specific site are not anticipated. 1.5. Problem 3: Application Server Relocation When an EC server is added to, moved, or deleted from a 5G EC Data Center, the routing protocol needs to propagate the Dunbar, et al. Expires January 9, 2023 [Page 7] Internet-Draft AppMetaData for 5G EC Service changes to 5G PSA or the PSA adjacent routers. After the change, the cost associated with the site might change as well. Note: for ease of description, the Edge Application Server and Application Server are used interchangeably throughout this document. 2. Conventions used in this document A-ER: Egress Router to an Application Server, [A-ER] is used to describe the last router that the Application Server is attached. For a 5G EC environment, the A-ER can be the gateway router to a (mini) Edge Computing Data Center. Application Server: An application server is a physical or virtual server that hosts the software system for the application. Application Server Location: Represent a cluster of servers at one location serving the same Application. One application may have a Layer 7 Load balancer, whose address(es) are reachable from an external IP network, in front of a set of application servers. From an IP network perspective, this whole group of servers is considered as the Application server at the location. Edge Application Server: used interchangeably with Application Server throughout this document. EC: Edge Computing Edge Hosting Environment: An environment providing the support required for Edge Application Server's execution. NOTE: The above terminologies are the same as those used in 3GPP TR 23.758 Edge DC: Edge Data Center, which provides the Edge Computing Hosting Environment. An Edge DC might Dunbar, et al. Expires January 9, 2023 [Page 8] Internet-Draft AppMetaData for 5G EC Service host 5G core functions in addition to the frequently used application servers. gNB next generation Node B L-DN: Local Data Network PSA: PDU Session Anchor (UPF) SSC: Session and Service Continuity UE: User Equipment UPF: User Plane Function The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "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. 3. Usage of AppMetaData for 5G Edge Computing AppMetaData consists of metrics about the running environment at the egress routers to which EC servers are directly attached. 3.1. Assumptions From the IP Layer, the EC servers or their respective load balancers are identified by their IP addresses. Those IP addresses are the identifiers to the EC servers throughout this document. Here are some assumptions about the 5G EC services: - Only the registered EC services, which are only a small portion of the services, need to incorporate the destination capacity metrics for optimal forwarding. - The 5G EC controller or management system can send those EC service identifiers to relevant routers. - The ingress routers' local BGP path compute algorithm includes a special plugin that can compute the path to Dunbar, et al. Expires January 9, 2023 [Page 9] Internet-Draft AppMetaData for 5G EC Service the optimal Next Hop (egress router) based on the BGP AppMetaData TLV received for the registered EC services. The proposed solution is for the egress routers, a.k.a. A-ERs in this document, that have direct links to the EC Servers to collect various measurements about the Servers' running status [5G-EC-Metrics] and advertise the metrics to other routers in 5G EC LDN (Local Data Network). 3.2. IP Layer Metrics to Gauge Application Behavior [5G-EC-Metrics] describes the IP Layer Metrics that can gauge the application servers running status and environment: - IP-Layer Metric for App Server Load Measurement: The Load Measurement to an App Server is a weighted combination of the number of packets/bytes to the App Server and the number of packets/bytes from the App Server which are collected by the A-ER to which the App Server is directly attached. The A-ER is configured with an ACL that can filter out the packets for the Application Server. - Capacity Index a numeric number, configured on all A-ERs in the domain consistently, is used to represent the capacity of the application server attached to an A-ER. At some sites, the IP address exposed to the A-ER is the App Layer Load balancer that have many instances attached. At other sites, the IP address exposed is the server instance itself. - Site preference index: is used to describe some sites are more preferred than others. For example, a site with higher bandwidth has a higher preference number than other. In this document, the term "Application Server Egress Router" [A-ER] is used to describe the last router that an Application Server is attached. For the 5G EC environment, the A-ER can be the gateway router to the EC DC where multiple Application servers are hosted. Dunbar, et al. Expires January 9, 2023 [Page 10] Internet-Draft AppMetaData for 5G EC Service 3.3. AppMetaData Constrained Optimal Path Selection The main benefit of using ANYCAST is to leverage the network layer conditions to select an optimal path to the application instantiated in multiple locations. When the ingress routers to the 5G LDN are informed of the Load and Capacity Index of the App Servers at different EC data centers, they can incorporate those metrics with the network path conditions for path selection. Here is an algorithm that computes the cost to reach the App Servers attached to Site-i relative to another site, say Site- b. When the reference site, Site-b, is plugged in the formula, the cost is 1. So, if the formula returns a value less than 1, the cost to reach Site-i is less than reaching Site-b. CP-b * Load-i Pref-b * Network-Delay-i Cost-i= (w *(----------------) + (1-w) *(-------------------------)) CP-i * Load-b Pref-i * Network-Delay-b Load-i: Load Index at Site-i, it is the weighted combination of the total packets or/and bytes sent to and received from the Application Server at Site-i during a fixed time period. CP-i: capacity index at Site-i, a higher value means higher capacity. Delay-i: Network latency measurement (RTT) to the A-ER that has the Application Server attached at the site-i. Pref-i: Preference index for the Site-i, a higher value means higher preference. w: Weight for load and site information, which is a value between 0 and 1. If smaller than 0.5, Network latency and the site Preference have more influence; otherwise, Server load and its capacity have more influence. 4. Soft Anchoring of an ANYCAST Flow "Sticky Service" in the 3GPP Edge Computing specification (3GPP TR 23.748) is about flows from a UE sticking to a specific location when the UE moves from one 5G Site to another. Dunbar, et al. Expires January 9, 2023 [Page 11] Internet-Draft AppMetaData for 5G EC Service "Soft Anchoring" is a mechanism for ingress routers to apply preference to the path towards the previous server location when the UE is anchored to a new UPF and continue using its cached IP for the EC server. Let's assume one application "App.net" is instantiated on four servers that are attached to four different routers R1, R2, R3, and R4 respectively. It is desired for packets to the "App.net" from UE-1 to stick with one server, say the App Server attached to R1, even when the UE moves from one 5G site to another. However, when there is a failure reaching R1 or the Application Server attached to R1, the packets of the flow "App.net" from UE-1 need to be forwarded to the Application Server attached to R2, R3, or R4. We call this kind of sticky service "Soft Anchoring", meaning that anchoring to the site of R1 is preferred, but other sites can be chosen when the preferred site encounters a failure. Here is a mechanism to achieve Soft Anchoring: - Assign a group of ANYCAST addresses to one application. For example, "App.net" is assigned with 4 ANYCAST addresses, L1, L2, L3, and L4. L1/L2/L3/L4 represents the location preferred ANYCAST addresses. - For the App.net Server attached to a router, the router has four Stub links to the same Server, L1, L2, L3, and L4 respectively. The cost to L1, L2, L3, and L4 is assigned differently for different egress routers. For example, o When attached to R1, the L1 has the lowest cost, say 10, when attached to R2, R3, and R4, the L1 can have a higher cost, say 30. o ANYCAST L2 has the lowest cost when attached to R2, higher cost when attached to R1, R3, R4 respectively. o ANYCAST L3 has the lowest cost when attached to R3, higher cost when attached to R1, R2, R4 respectively, and Dunbar, et al. Expires January 9, 2023 [Page 12] Internet-Draft AppMetaData for 5G EC Service o ANYCAST L4 has the lowest cost when attached to R4, higher cost when attached to R1, R2, R3 respectively - When a UE queries for the "App.net" for the first time, the DNS reply has the location preferred ANYCAST address, say L1, based on where the query is initiated. - When the UE moves from one 5G site-A to Site-B, UE continues sending packets of the "App.net" to ANYCAST address L1. The routers will continue sending packets to R1 because the total cost for the App.net instance for ANYCAST L1 is lowest at R1. If any failure occurs making R1 not reachable, the packets of the "App.net" from UE-1 will be sent to R2, R3, or R4 (depending on the total cost to reach L1 attached to R2/R3/R4). If the Application Server supports the HTTP redirect, more optimal forwarding can be achieved. - When a UE queries for the "App.net" for the first time, the global DNS reply has the ANYCAST address G1, which has the same cost regardless of where the Application servers are attached. - When the UE initiates the communication to G1, the packets from the UE will be sent to the Application Server that has the lowest cost, say the Server attached to R1. The Application server is instructed with HTTPs Redirect to reply with a location-specific URL, say App.net-Loc1. The client on the UE will query the DNS for App.net-Loc1 and get the response of ANYCAST L1. The subsequent packets from the UE-1 for App.net are sent to L1. 5. Manageability Considerations To be added. 6. Security Considerations To be added. Dunbar, et al. Expires January 9, 2023 [Page 13] Internet-Draft AppMetaData for 5G EC Service 7. IANA Considerations Here are new Sub-TLV types requiring IANA registration: Type = TBD1: Aggregated Load Measurement Index derived from the Weighted combination of bytes/packets sent to/received from the App server. Type = TBD2: Raw measurements of packets/bytes to/from the App Server address. Type = TBD3: Capacity value sub-TLV Type = TBD4: Site preference value sub-TLV 8. References 8.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC4364] E. rosen, Y. Rekhter, "BGP/MPLS IP Virtual Private networks (VPNs)", Feb 2006. [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [RFC8200] s. Deering R. Hinden, "Internet Protocol, Version 6 (IPv6) Specification", July 2017 Dunbar, et al. Expires January 9, 2023 [Page 14] Internet-Draft AppMetaData for 5G EC Service 8.2. Informative References [3GPP-EdgeComputing] 3GPP TR 23.748, "3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; Study on enhancement of support for Edge Computing in 5G Core network (5GC)", Release 17 work in progress, Aug 2020. [5G-EC-Metrics] L. Dunbar, H. Song, J. Kaippallimalil, "IP Layer Metrics for 5G Edge Computing Service", draft- dunbar-ippm-5g-edge-compute-ip-layer-metrics-00, work-in-progress, Oct 2020. [5G-Edge-Sticky] L. Dunbar, J. Kaippallimalil, "IPv6 Solution for 5G Edge Computing Sticky Service", draft-dunbar- 6man-5g-ec-sticky-service-00, work-in-progress, Oct 2020. [RFC5521] P. Mohapatra, E. Rosen, "The BGP Encapsulation Subsequent Address Family Identifier (SAFI) and the BGP Tunnel Encapsulation Attribute", April 2009. [BGP-SDWAN-Port] L. Dunbar, H. Wang, W. Hao, "BGP Extension for SDWAN Overlay Networks", draft-dunbar-idr-bgp- sdwan-overlay-ext-03, work-in-progress, Nov 2018. [SDWAN-EDGE-Discovery] L. Dunbar, S. Hares, R. Raszuk, K. Majumdar, "BGP UPDATE for SDWAN Edge Discovery", draft-dunbar-idr-sdwan-edge-discovery-00, work-in- progress, July 2020. [Tunnel-Encap] E. Rosen, et al "The BGP Tunnel Encapsulation Attribute", draft-ietf-idr-tunnel-encaps-10, Aug 2018. 9. Acknowledgments Acknowledgements to Sue Hares and Donald Eastlake for their review and contributions. Dunbar, et al. Expires January 9, 2023 [Page 15] Internet-Draft AppMetaData for 5G EC Service This document was prepared using 2-Word-v2.0.template.dot. Authors' Addresses Linda Dunbar Futurewei Email: ldunbar@futurewei.com Kausik Majumdar Microsoft Email: kmajumdar@microsoft.com Haibo Wang Huawei Email: rainsword.wang@huawei.com Gyan Mishra Verizon Email: gyan.s.mishra@verizon.com Dunbar, et al. Expires January 9, 2023 [Page 16]