idnits 2.17.1 draft-dunbar-lsr-5g-edge-compute-ospf-ext-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (October 26, 2020) is 1277 days in the past. Is this intentional? Checking references for intended status: Full Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: '5GC' is mentioned on line 123, but not defined == Missing Reference: 'A-ER' is mentioned on line 364, but not defined == Missing Reference: 'IPv6-StickyService' is mentioned on line 357, but not defined == Missing Reference: 'RFC3630' is mentioned on line 514, but not defined == Missing Reference: 'RFC2328' is mentioned on line 585, but not defined == Unused Reference: 'RFC4364' is defined on line 713, but no explicit reference was found in the text == Unused Reference: 'RFC8200' is defined on line 721, but no explicit reference was found in the text == Unused Reference: '3GPP-EdgeComputing' is defined on line 726, but no explicit reference was found in the text == Unused Reference: '5G-StickyService' is defined on line 740, but no explicit reference was found in the text == Unused Reference: 'RFC5521' is defined on line 745, but no explicit reference was found in the text == Unused Reference: 'BGP-SDWAN-Port' is defined on line 750, but no explicit reference was found in the text == Unused Reference: 'SDWAN-EDGE-Discovery' is defined on line 755, but no explicit reference was found in the text == Unused Reference: 'Tunnel-Encap' is defined on line 760, but no explicit reference was found in the text ** Downref: Normative reference to an Proposed Standard RFC: RFC 4364 == Outdated reference: A later version (-02) exists of draft-dunbar-ippm-5g-edge-compute-ip-layer-metrics-00 -- No information found for draft-dunbar-6man-5g-ec-sticky-service - is the name correct? == Outdated reference: A later version (-04) exists of draft-dunbar-idr-sdwan-edge-discovery-00 == Outdated reference: A later version (-22) exists of draft-ietf-idr-tunnel-encaps-10 Summary: 1 error (**), 0 flaws (~~), 17 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Network Working Group L. Dunbar 2 Internet Draft H. Chen 3 Intended status: Standard Futurewei 4 Expires: April 26, 2021 6 October 26, 2020 8 OSPF extension for 5G Edge Computing Service 9 draft-dunbar-lsr-5g-edge-compute-ospf-ext-00 11 Abstract 13 This draft describes an OSPF extension that can dynamically 14 adjust network forwarding behavior based on Application 15 Servers' running status and environment. This feature can 16 greatly improve latency and performance for 5G Edge 17 Computing services. 19 The extension enables a feature, called soft anchoring, 20 which makes one Application Server at a specific location 21 to be more preferred than others for the same application 22 to receive packets from a specific source (UE). 24 Status of this Memo 26 This Internet-Draft is submitted in full conformance with 27 the provisions of BCP 78 and BCP 79. 29 This Internet-Draft is submitted in full conformance with 30 the provisions of BCP 78 and BCP 79. This document may not 31 be modified, and derivative works of it may not be created, 32 except to publish it as an RFC and to translate it into 33 languages other than English. 35 Internet-Drafts are working documents of the Internet 36 Engineering Task Force (IETF), its areas, and its working 37 groups. Note that other groups may also distribute working 38 documents as Internet-Drafts. 40 Internet-Draft OSPF Extension for 5G EC Service 42 Internet-Drafts are draft documents valid for a maximum of 43 six months and may be updated, replaced, or obsoleted by 44 other documents at any time. It is inappropriate to use 45 Internet-Drafts as reference material or to cite them other 46 than as "work in progress." 48 The list of current Internet-Drafts can be accessed at 49 http://www.ietf.org/ietf/1id-abstracts.txt 51 The list of Internet-Draft Shadow Directories can be 52 accessed at http://www.ietf.org/shadow.html 54 This Internet-Draft will expire on April 7, 2021. 56 Copyright Notice 58 Copyright (c) 2020 IETF Trust and the persons identified as 59 the document authors. All rights reserved. 61 This document is subject to BCP 78 and the IETF Trust's 62 Legal Provisions Relating to IETF Documents 63 (http://trustee.ietf.org/license-info) in effect on the 64 date of publication of this document. Please review these 65 documents carefully, as they describe your rights and 66 restrictions with respect to this document. Code Components 67 extracted from this document must include Simplified BSD 68 License text as described in Section 4.e of the Trust Legal 69 Provisions and are provided without warranty as described 70 in the Simplified BSD License. 72 Table of Contents 74 1. Introduction........................................... 3 75 1.1. 5G Edge Computing Background...................... 3 76 1.2. Problem#1: ANYCAST in 5G Edge Computing Environment 77 ....................................................... 5 78 1.3. Problem #2: Unbalanced Anycast Distribution due to 79 UE Mobility............................................ 5 80 1.4. Problem 3: Application Server Relocation.......... 6 81 2. Conventions used in this document...................... 6 82 3. OSPF Extension for 5G EC............................... 8 83 3.1. Solution Overview................................. 8 85 Internet-Draft OSPF Extension for 5G EC Service 87 3.2. IP Layer Metrics to Gauge Application Behavior.... 9 88 3.3. To Equalize among Multiple ANYCAST Locations..... 10 89 3.4. OSPF Protocol Extension to advertise Load & 90 Capacity.............................................. 11 91 3.5. Reason for using IGP Based Solution:............. 11 92 3.6. OSPF Extension Using TE Stub Link................ 12 93 3.7. Aggregated Link Cost Solution.................... 15 94 4. Soft Anchoring of an ANYCAST Flow..................... 16 95 5. Manageability Considerations.......................... 17 96 6. Security Considerations............................... 17 97 7. IANA Considerations................................... 18 98 8. References............................................ 18 99 8.1. Normative References............................. 18 100 8.2. Informative References........................... 18 101 9. Acknowledgments....................................... 19 103 1. Introduction 105 This document describes an OSPF extension that can 106 dynamically adjust network forwarding behavior towards 107 Applications servers in 5G Edge Computing Environment based 108 on the Application Servers running status and the UE (User 109 Equipment) status. 111 1.1. 5G Edge Computing Background 113 As described in [5G-EC-Metrics], one Application can have 114 multiple Application Servers hosted in different Edge 115 Computing data centers that are close in proximity. Those 116 Edge Computing (mini) data centers are usually very close 117 to, or co-located with, 5G base stations, with the goal to 118 minimize latency and optimize the user experience. 120 When a UE (User Equipment) initiates application packets 121 using the destination address from a DNS reply or from its 122 own cache, the packets from the UE are carried in a PDU 123 session through 5G Core [5GC] to the 5G UPF-PSA (User Plan 124 Function - PDU Session Anchor). The UPF-PSA decapsulate the 125 5G GTP outer header and forwards the packets from the UEs 126 to the Ingress router of the Edge Computing (EC) Local Data 127 Network (LDN). The LDN for 5G EC, which is the IP Networks 129 Internet-Draft OSPF Extension for 5G EC Service 131 from 5GC perspective, is responsible for forwarding the 132 packets to the intended destinations. 134 When the UE moves out of coverage of its current gNB (next 135 generation Node B) (gNB1), handover procedures are 136 initiated and the 5G SMF (Session Management Function) also 137 selects a new UPF-PSA. The standard handover procedures 138 described in 3GPP TS 23.501 and TS 23.502 are followed. 139 When the handover process is complete, the UE has a new IP 140 address and the IP point of attachment is to the new UPF- 141 PSA. 5GC may maintain a path from the old UPF to new the 142 UPF for a short period of time for SSC [Session and Service 143 Continuity] mode 3 to make the handover process more 144 seamless. 145 +--+ 146 |UE|---\+---------+ +------------------+ 147 +--+ | 5G | +---------+ | S1: aa08::4450 | 148 +--+ | Site +--++---+ +----+ | 149 |UE|----| A |PSA| Ra| | R1 | S2: aa08::4460 | 150 +--+ | +---+---+ +----+ | 151 +---+ | | | | | S3: aa08::4470 | 152 |UE1|---/+---------+ | | +------------------+ 153 +---+ |IP Network | L-DN1 154 |(3GPP N6) | 155 | | | +------------------+ 156 | UE1 | | | S1: aa08::4450 | 157 | moves to | +----+ | 158 | Site B | | R3 | S2: aa08::4460 | 159 v | +----+ | 160 | | | S3: aa08::4470 | 161 | | +------------------+ 162 | | L-DN3 163 +--+ | | 164 |UE|---\+---------+ | | +------------------+ 165 +--+ | 5G | | | | S1: aa08::4450 | 166 +--+ | Site +--++-+--+ +----+ | 167 |UE|----| B |PSA| Rb | | R2 | S2: aa08::4460 | 168 +--+ | +--++----+ +----+ | 169 +--+ | | +-----------+ | S3: aa08::4470 | 170 |UE|---/+---------+ +------------------+ 171 +--+ L-DN2 172 Figure 1: App Servers in different edge DCs 174 Internet-Draft OSPF Extension for 5G EC Service 176 1.2. Problem#1: ANYCAST in 5G EC Environment 178 Increasingly, Anycast is used extensively by various 179 application providers and CDNs because ANYCAST makes it 180 possible to dynamically load balance across server 181 instances based on network conditions. 183 Application Server location selection using Anycast address 184 leverages the proximity information present in the network 185 (routing) layer and eliminates the single point of failure 186 and bottleneck at the DNS resolvers and application layer 187 load balancers. Another benefit of using ANYCAST address is 188 removing the dependency on UEs. Some UEs (or clients) might 189 use their cached IP addresses instead of querying DNS for 190 extended period. 192 But, having multiple locations of the same ANYCAST address 193 in 5G Edge Computing environment can be problematic because 194 all those edge computing Data Centers can be close in 195 proximity. There might be very little difference in the 196 routing cost to reach the Application Servers in different 197 Edge DCs. 199 BGP is an integral part in the way IP Anycast usually 200 functions. Within BGP routing there are multiple routes for 201 the same IP address which are pointing to different 202 locations. But many Edge DCs could be within one IGP 203 domain, then there is no routing cost differentiation by 204 BGP. Same routing cost to multiple ANYCAST locations can 205 cause packets from one flow to be forwarded to different 206 locations, which can cause service glitches. 208 1.3. Problem #2: Unbalanced Anycast Distribution due to UE 209 Mobility 211 Another problem of using ANYCAST address for multiple 212 Application Servers of the same application in 5G 213 environment is that UEs' frequent moving from one 5G site 214 to another, which can make it difficult to plan where the 215 App Server should be hosted. When one App server is heavily 216 utilized, other App servers of the same address close-by 217 can be very underutilized. Since the condition can be short 219 Internet-Draft OSPF Extension for 5G EC Service 221 lived, it is difficult for the application controller to 222 anticipate the move and adjust. 224 1.4. Problem 3: Application Server Relocation 226 When an Application Server is added to, moved, or deleted 227 from a 5G Edge Computing Data Center, the routing protocol 228 has to propagate the changes to 5G PSA or the PSA adjacent 229 routers. After the change, the cost associated with the 230 site [5G-EC-Metrics] might change as well. 232 Note: for the ease of description, the Edge Application 233 Server and Application Server are used interchangeably 234 throughout this document. 236 2. Conventions used in this document 238 A-ER: Egress Router to an Application Server, [A-ER] 239 is used to describe the last router that the 240 Application Server is attached. For 5G EC 241 environment, the A-ER can be the gateway router 242 to a (mini) Edge Computing Data Center. 244 Application Server: An application server is a physical or 245 virtual server that host the software system 246 for the application. 248 Application Server Location: Represent a cluster of servers 249 at one location serving the same Application. 250 One application may have a Layer 7 Load 251 balancer, whose address(es) are reachable from 252 external IP network, in front of a set of 253 application servers. From IP network 255 Internet-Draft OSPF Extension for 5G EC Service 257 perspective, this whole group of servers are 258 considered as the Application server at the 259 location. 261 Edge Application Server: used interchangeably with 262 Application Server throughout this document. 264 EC: Edge Computing 266 Edge Hosting Environment: An environment providing support 267 required for Edge Application Server's 268 execution. 270 NOTE: The above terminologies are the same as 271 those used in 3GPP TR 23.758 273 Edge DC: Edge Data Center, which provides the Edge 274 Computing Hosting Environment. It might be co- 275 located with 5G Base Station and not only host 276 5G core functions, but also host frequently 277 used Edge server instances. 279 gNB next generation Node B 281 L-DN: Local Data Network 283 PSA: PDU Session Anchor (UPF) 285 SSC: Session and Service Continuity 287 UE: User Equipment 289 UPF: User Plane Function 291 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", 292 "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT 293 RECOMMENDED", "MAY", and "OPTIONAL" in this document are to 294 be interpreted as described in BCP 14 [RFC2119] [RFC8174] 295 when, and only when, they appear in all capitals, as shown 296 here. 298 Internet-Draft OSPF Extension for 5G EC Service 300 3. OSPF Extension for 5G EC 302 3.1. Solution Overview 304 From IP Layer, the Application Servers are identified by 305 their IP (ANYCAST) addresses. The 5G Edge Computing 306 controller or management system is aware of the ANYCAST 307 addresses of the Applications that need optimized 308 forwarding in 5G EC environment. The 5G Edge Computing 309 controller or management system can configure the ACLs to 310 filter out those applications on the routers adjacent to 311 the 5G PSA and the routers to which the Application Servers 312 are directly attached. 314 The proposed solution is for the routers, i.e. A-ER, that 315 have direct links, i.e. the stub links as described in 316 RFC2328, to the Application Servers to collect various 317 measurements about the Servers' running status [5G-EC- 318 Metrics] and advertise the metrics to other routers in 5G 319 EC LDN (Local Data Network). 321 Internet-Draft OSPF Extension for 5G EC Service 323 3.2. IP Layer Metrics to Gauge Application Behavior 325 There are many available network techniques and protocols 326 to optimize forwarding or ensuring QoS for applications, 327 such as DSCP/DiffServ, Traffic Engineered (TE) solutions, 328 Segment Routing, etc. But the reality is that most 329 application servers don't expose their internal logics to 330 network operators. Their communications are generally 331 encrypted. Most of them do not even respond to PING or ICMP 332 messages initiated by routers or network gears. 334 [5G-EC-Metrics] describes the IP Layer Metrics that can 335 gauge the application servers running status and 336 environment: 338 - IP-Layer Metric for App Server Load Measurement: 339 The Load Measurement to an App Server is a weighted 340 combination of the number of packets/bites to the App 341 Server and the number of packets/bytes from the App 342 Server which are collected by the A-ER to which the App 343 Server is directly attached. 344 The A-ER is configured with an ACL that can filter out 345 the packets for the Application Server. 346 - Capacity Index 347 Capacity Index is used to differentiate the running 348 environment of the application server. Some data centers 349 can have hundreds, or thousands, of servers behind an 350 Application Server's App Layer Load Balancer that is 351 reachable from external world. Other data centers can 352 have very small number of servers for the application 353 server. "Capacity Index", which is a numeric number, is 354 used to represent the capacity of the application server 355 in a specific location. 356 - Site preference index: 357 [IPv6-StickyService] describes a scenario that some 358 sites are more preferred for handling an application 359 server than others for flows from a specific UE. 361 Internet-Draft OSPF Extension for 5G EC Service 363 In this document, the term "Application Server Egress 364 Router" [A-ER] is used to describe the last router that an 365 Application Server is attached. For 5G EC environment, the 366 A-ER can be the gateway router to the EC DC where multiple 367 Application servers' instance are hosted. 369 From IP Layer, an Application Server is identified by its 370 IP (ANYCAST) Address. Those IP addresses are called the 371 Application Server IDs throughout this document. 373 3.3. To Equalize among Multiple ANYCAST Locations 375 The main benefit of using ANYCAST is to leverage the 376 network layer information to equalize the traffic among 377 multiple Application Server locations of the same 378 Application, which is identified by its ANYCAST addresses. 380 For 5G Edge Computing environment, the ingress routers to 381 the LDN needs to be notified of the Load Index and Capacity 382 Index of the App Servers at different EC data centers to 383 make the intelligent decision on where to forward the 384 traffic for the application from UEs. 386 [5G-EC-Metrics] describes the algorithms that can be used 387 by the routers directly attached to the 5G PSA to compare 388 the cost to reach the App Servers between the Site-i or 389 Site-j: 391 alpha*(LoadIndex-i*Beta-i) (1-alpha)*(Delay-i*gamma-i) 392 Cost=min(--------------- ---------- + -----------------------------) 393 (LoadIndex-j * Beta-j) ( Delay-j *gamm-j) 395 LoadIndex-i: weighted combination of the total bytes 396 (or/and packets) sent to/received from the Application 397 Server at Site-i during a fixed time period. 399 Beta-i (larger value means higher capacity): capacity 400 index at the site i. 402 Delay-i: Network latency measurement (RTT) to the A-ER 403 that has the Application Server attached at the site-i. 405 Internet-Draft OSPF Extension for 5G EC Service 407 gamma (larger value means higher preference): Network 408 Preference index for the site-I. 410 alpha (a value between 0 and 1: Weight for load & site 411 Index. If smaller than 0.5, Network latency has more 412 influence; otherwise, Server load has more influence). 414 3.4. OSPF Protocol Extension to advertise Load & Capacity 416 Goal of the protocol extension: 417 - Primary goal: Propagate the Load Measurement Index for 418 the attached App Servers to other routers in the LDN. 420 - Secondary goal: Propagate the Capacity Index & Site 421 Preference Index to other routers in the LDN. 422 Capacity index & Site preference might be steadier for an 423 Application server in a data center. It is possible to 424 use network management channel to distribute those two 425 attributes. Therefore, it is the secondary goal. 427 The OSPF extension takes the approach of TE solution: 429 - Each mini-DC gateway router announces the stub networks 430 of the attached Server addresses with the Load Index Sub- 431 TLV. 432 Only need to advertise the addresses for the applications 433 that needs the network to optimize the forwarding. 434 Therefore, A-ER do not need to advertise all attached 435 subnets. 436 - Load Index and Capacity Index are encoded in a Sub-TLV 437 added to the LSA. 439 3.5. Reason for using IGP Based Solution: 441 For scenario of multiple mini data centers within one AS 442 domain, there are benefits of using IGP approach: 443 - Intermediate routers can forward packets optimally 444 because they can derive the load status for the 445 Application Servers at different data centers by the IGP 446 protocol, 448 Internet-Draft OSPF Extension for 5G EC Service 450 - the path to the expected destination may be more 451 accurate or shorter 452 - Can quickly converge on faulty links and routers 453 - When a mini data center has failures, all the 454 packets in the fly can be optimally forwarded to an 455 App Server in another DC. 456 - Doesn't need ingress node to establish tunnels with 457 egress nodes. 458 - The operations in this approach from users' point of view 459 may be simpler. 461 Drawback of using IGP: 463 - This approach might not suit well to multiple ISPs 464 networks. 465 Using BGP, such as community extension or Tunnel Encap 466 extension, approach may be better for the network 467 crossing multiple ISPs. 469 3.6. OSPF Extension Using TE Stub Link 471 A new link type in Link TLV of TE LSA is defined for the 472 stub links, in addition to the existing P2P and Multi- 473 Access link types. A Stub Link is the address to the 474 Application Server attached. 476 For a stub link, a Link TLV comprises a Link Type sub-TLV 477 with stub link type, a Link ID sub-TLV with the address of 478 the attached App Server (stub-link), Link Data Sub-TLV and 479 some new sub-TLVs, such as, Load measurement sub-TLV, 480 Capacity sub-TLV and Preference sub-TLV. 482 An example of Link TLV for a stub link is illustrated 483 below: 485 Internet-Draft OSPF Extension for 5G EC Service 487 0 1 2 3 488 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 489 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 490 | Type = 2 | Length | 491 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 492 | Link type sub-TLV for stub link | 493 ~ ~ 494 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 495 | Link ID sub-TLV for the Instance address | 496 ~ ~ 497 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 498 | Link data sub-TLV for the mask of the AppServer address | 499 ~ ~ 500 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 501 | Load measurement sub-TLV | 502 ~ ~ 503 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 504 | Capability sub-TLV | 505 ~ ~ 506 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 507 | Preference sub-TLV | 508 ~ ~ 509 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 511 The Type value of the Link Type sub-TLV for the stub link: 512 3 (to be assigned by IANA). 514 Note: [RFC3630] has specified: Type=1 for P2P and Type=2 515 used for Multiaccess. 517 The Link Data Sub-TLV for the stub network is defined as: 519 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 520 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 521 | Type (TBD1) | Length | 522 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 523 | AppServer IP address mask | 524 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 526 Internet-Draft OSPF Extension for 5G EC Service 528 Load Measurement sub-TLV has the following format: 530 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 531 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 532 | Type (TBD2) | Length | 533 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 534 | Measurement Period | 535 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 536 | total number of packets to the AppServer | 537 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 538 | total number of packets from the AppServer | 539 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 540 | total number of bytes to the AppServer | 541 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 542 | total number of bytes from the AppServer | 543 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 545 Load measurement Sub-TLV: 547 Type=1: measurement of the packets towards the stub link 548 (i.e. towards the server instance); 549 Type=2: measurement of packets from the stub link (i.e. 550 from the server instance). 551 Measurement Period: A user specified period in seconds, 552 default is 3600 seconds. 554 The Capacity Index sub-TLV has the following format: 556 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 557 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 558 | Type (TBD3) | Length | 559 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 560 | Capacity Index | 561 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 563 The Preference Index sub-TLV has the following format: 565 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 566 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 567 | Type (TBD4) | Length | 568 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 569 | Preference Index | 570 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 572 Internet-Draft OSPF Extension for 5G EC Service 574 Note: "Capacity Index" and "Site preference" can be more 575 stable for each site. If those values are configured to 576 nodes, they might not need to be included in every OSPF 577 LSA. 579 3.7. Aggregated Link Cost Solution 581 Another solution is to reuse the field for link cost of a 582 stub link. 583 For a router with an Application Server directly attached, 584 its router LSA can contain a stub link for the App Server's 585 address [RFC2328]. This solution is using a formula to 586 calculate the aggregated cost value to the directly 587 attached App Server and assigned the cost value to the 588 Metric field of the stub link in the LSA in RFC2328. 589 The cost to the attached Application Server plays a 590 significant role on where the flows should be routed. See 591 Section 4 for soft anchoring a flow to a specific location 592 when the UEs move. 593 In this solution, the values of the Link ID, Link data and 594 link cost for the stub link are as follows: 596 - The Link ID is the IP address of the Application 597 Server, 598 - The Link Data is the network mask of the 599 Application Server address, 600 - The Link cost is the aggregated cost reach the 601 attached Application Server. 603 In this solution, every router connected to an Application 604 Server MUST use the same formula to compute the cost of the 605 Application Server. 606 No new protocol code point is needed. 608 The drawback of this solution is that Ingress router cannot 609 make differentiated forwarding for different applications 610 flows. 612 Internet-Draft OSPF Extension for 5G EC Service 614 4. Soft Anchoring of an ANYCAST Flow 615 This section describes a solution that can anchor an 616 application flow from a UE to a specific ANYCAST instance 617 even when the UE moves from one 5G Site to another. This 618 is called "Sticky Service" in the 3GPP Edge Computing 619 specification. 621 Lets' assume one application "App.net" is instantiated on 622 four servers that are attached to four different routers 623 R1, R2, R3, and R4 respectively. It is desired for packets 624 to the "App.net" from UE-1 to stick with one server, say 625 the App Server attached to R1, even when the UE moves from 626 one 5G site to another. When there is failure at R1 or the 627 Application Server attached to R1, the packets of the flow 628 "App.net" from UE-1 need to be forwarded to the 629 Application Server attached to R2, R3, or R4. 631 We call this kind of sticky service "Soft Anchoring", 632 meaning that anchoring to the site of R1 is preferred, but 633 other sites can be chosen when the preferred site 634 encounters failure. 636 Here is details of this solution: 638 - Assign a group of ANYCAST addresses to one 639 application. For example, "App.net" is assigned with 640 4 ANYCAST addresses, L1, L2, L3, and L4. L1/L2/L3/L4 641 represents the location preferred ANYCAST addresses. 642 - For the App.net Server attached to a router, the 643 router has four Stub links to the same Server, L1, 644 L2, L3, and L4 respectively. The cost to L1, L2, L3 645 and L4 is assigned differently for different routers. 646 For example, 647 o When attached to R1, the L1 has the lowest cost, 648 say 10, when attached to R2, R3, and R4, the L1 649 can have higher cost, say 30. 650 o ANYCAST L2 has the lowest cost when attached to 651 R2, higher cost when attached to R1, R3, R4 652 respectively. 653 o ANYCAST L3 has the lowest cost when attached to 654 R3, higher cost when attached to R1, R2, R4 655 respectively, and 657 Internet-Draft OSPF Extension for 5G EC Service 659 o ANYCAST L4 has the lowest cost when attached to 660 R4, higher cost when attached to R1, R2, R3 661 respectively 662 - When a UE queries for the "App.net" for the first 663 time, the DNS replies the location preferred ANYCAST 664 address, say L1, based on where the query is 665 initiated. 666 - When the UE moves from one 5G site-A to Site-B, UE 667 continues sending packets of the "App.net" to ANYCAST 668 address L1. The routers will continue sending packets 669 to R1 because the total cost for the App.net instance 670 for ANYCAST L1 is lowest at R1. If any failure occurs 671 making R1 not reachable, the packets of the "App.net" 672 from UE-1 will be sent to R2, R3, or R4 (depending on 673 the total cost to reach each of them). 675 If the Application Server supports the HTTP redirect, more 676 optimal forwarding can be achieved. 678 - When a UE queries for the "App.net" for the first 679 time, the global DNS replies the ANYCAST address G1, 680 which has the same cost regardless where the 681 Application Servers are attached. 682 - When the UE initiates the communication to G1, the 683 packets from the UE will be sent to the Application 684 Server that has the lowest cost, say the Server 685 attached to R1. The Application server is instructed 686 with HTTPs Redirect to respond back a location 687 specific URL, say App.net-Loc1. The client on the UE 688 will query the DNS for App.net-Loc1 and get the 689 response of ANYCAST L1. The subsequent packets from 690 the UE-1 for App.net are sent to L1. 692 5. Manageability Considerations 694 To be added. 696 6. Security Considerations 697 Internet-Draft OSPF Extension for 5G EC Service 699 To be added. 701 7. IANA Considerations 703 To be added. 705 8. References 707 8.1. Normative References 709 [RFC2119] Bradner, S., "Key words for use in RFCs to 710 Indicate Requirement Levels", BCP 14, RFC 2119, 711 March 1997. 713 [RFC4364] E. rosen, Y. Rekhter, "BGP/MPLS IP Virtual 714 Private networks (VPNs)", Feb 2006. 716 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase 717 in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 718 10.17487/RFC8174, May 2017, . 721 [RFC8200] s. Deering R. Hinden, "Internet Protocol, Version 722 6 (IPv6) Specification", July 2017 724 8.2. Informative References 726 [3GPP-EdgeComputing] 3GPP TR 23.748, "3rd Generation 727 Partnership Project; Technical Specification 728 Group Services and System Aspects; Study on 729 enhancement of support for Edge Computing in 5G 730 Core network (5GC)", Release 17 work in progress, 731 Aug 2020. 733 [5G-EC-Metrics] L. Dunbar, H. Song, J. Kaippallimalil, "IP 734 Layer Metrics for 5G Edge Computing Service", 735 draft-dunbar-ippm-5g-edge-compute-ip-layer- 736 metrics-00, work-in-progress, Oct 2020. 738 Internet-Draft OSPF Extension for 5G EC Service 740 [5G-StickyService] L. Dunbar, J. Kaippallimalil, "IPv6 741 Solution for 5G Edge Computing Sticky Service", 742 draft-dunbar-6man-5g-ec-sticky-service-00, work- 743 in-progress, Oct 2020. 745 [RFC5521] P. Mohapatra, E. Rosen, "The BGP Encapsulation 746 Subsequent Address Family Identifier (SAFI) and 747 the BGP Tunnel Encapsulation Attribute", April 748 2009. 750 [BGP-SDWAN-Port] L. Dunbar, H. Wang, W. Hao, "BGP Extension 751 for SDWAN Overlay Networks", draft-dunbar-idr- 752 bgp-sdwan-overlay-ext-03, work-in-progress, Nov 753 2018. 755 [SDWAN-EDGE-Discovery] L. Dunbar, S. Hares, R. Raszuk, K. 756 Majumdar, "BGP UPDATE for SDWAN Edge Discovery", 757 draft-dunbar-idr-sdwan-edge-discovery-00, work- 758 in-progress, July 2020. 760 [Tunnel-Encap] E. Rosen, et al "The BGP Tunnel 761 Encapsulation Attribute", draft-ietf-idr-tunnel- 762 encaps-10, Aug 2018. 764 9. Acknowledgments 766 Acknowledgements to Donald Eastlake for their review and 767 contributions. 769 This document was prepared using 2-Word-v2.0.template.dot. 771 Internet-Draft OSPF Extension for 5G EC Service 773 Authors' Addresses 775 Linda Dunbar 776 Futurewei 777 Email: ldunbar@futurewei.com 779 HuaiMo Chen 780 Futurewei 781 Email: huaimo.chen@futurewei.com