LSR Working Group A. Wang Internet-Draft China Telecom Intended status: Standards Track Z. Hu Expires: 19 May 2025 Huawei Technologies C. Lin New H3C Technologies G. Mishra Verizon Inc. 15 November 2024 IGP based Network Computing Combined Optimization draft-wang-lsr-network-computing-optimization-00 Abstract This document describes the scenario and procedures that can be used to accomplish the IGP based network and computing combined optimization within the IS-IS or OSPF domain. Status of This Memo 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 19 May 2025. Copyright Notice Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved. Wang, et al. Expires 19 May 2025 [Page 1] Internet-Draft IGP based NCCO November 2024 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. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Conventions used in this document . . . . . . . . . . . . . . 2 3. Network Computing Combined Optimization Scenario . . . . . . 3 4. Network Computing Combined Optimization Procedures . . . . . 4 5. Advertisement of Computing Capacity Related Information . . . 5 6. OSPF Protocol Extension for Stub Link Attributes . . . . . . 5 6.1. OSPF Stub-Link TLV . . . . . . . . . . . . . . . . . . . 5 6.2. OSPF Stub Link IPv4 Prefix Sub-TLV . . . . . . . . . . . 6 6.3. OSPF Stub Link IPv6 Prefix Sub-TLV . . . . . . . . . . . 6 7. IS-IS Protocol Extension for Stub Link Attributes . . . . . . 7 7.1. IS-IS Stub-link TLV . . . . . . . . . . . . . . . . . . . 7 7.2. IS-IS Stub Link IPv4 Prefix Sub-TLV . . . . . . . . . . . 8 7.3. IS-IS Stub Link IPv6 Prefix Sub-TLV . . . . . . . . . . . 8 8. Application of the network computing combined optimization . 9 9. Security Considerations . . . . . . . . . . . . . . . . . . . 10 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 11. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 11 12. Normative References . . . . . . . . . . . . . . . . . . . . 11 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 1. Introduction Traditionally, the best path that is used to forward the packet within one IGP domain is calculated solely based on the network topology and links metric. In some scenario, there is need to select the best path based on other information. This document describes the scenario and procedures that can be used to accomplish the IGP based network and computing combined optimization requirements. 2. Conventions used in this document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119] . Wang, et al. Expires 19 May 2025 [Page 2] Internet-Draft IGP based NCCO November 2024 3. Network Computing Combined Optimization Scenario Figure 1 below illustrates the scenario that the necessities of integrating the computing and network related information to achieve the combined optimization upon the service requirements. In the network, R1-R8 are routers that connected each other to form one IGP domain. Server Pool A, B and C which are different server pools that can provide the same service are connected to the IGP domain via R6, R7 and R8 respectively. The capacities and the access bandwidths of the Server Pools may be different. Image that one customer that is connected to router R1 requires the computing capabilities, called X, and the minimum bandwidth C along the end to end path. Based on the Short Path First(SPF) algorithm, R1 will select the path R1-R4-R6 to access the service. But the bandwidth between R6 and Server Pool A is below C and can't meet the requirements. The user's service requirement can't be met and the customer experiences will be downgraded significantly. Even there is other Server Pools that can provide the same service, there is no method for the SPF to select them automatically. +--------------------------------------+ | | | +---+ +---+ | +-------------+ | |R1 +---------+ +----+R6 +----------+Server Pool A| | +-+-+ | | +-+-+ | +-------------+ | | +-+-+ | | | | | +---+R4 +-----+ | | | | | +-+-+ | | | +-+-+ | | +-+-+ | +-------------+ | |R2 +---+ +------------+R7 +----------+Server Pool B| | +-+-+ | +-+-+ | +-------------+ | | |---+---+ | | | | |R5 +-----+ | | | | +-+-+ | | | | +-+-+ | | +-+-+ | +-------------+ | |R3 +---------+ +----+R8 +----------+Server Pool C| | +---+ +---+ | +-------------+ | | | | | IGP Domain | +--------------------------------------+ Figure 1: Network Computing Combined Optimization Scenario Wang, et al. Expires 19 May 2025 [Page 3] Internet-Draft IGP based NCCO November 2024 Then, it is necessary to inject the other information that beyond the traditional network related information into the SPF algorithm, to find the best path that both satisfy the network and computing capacity requirements, which are the key factors in artificial intelligent era. 4. Network Computing Combined Optimization Procedures The procedures to accomplish the network computing combined optimization within one IGP domain are the followings: 1) Computing Capacity Information Registration. The server pool registers its capacity information to the router that it connects to, or the configuration of capacity information of the server pool on the access router directly. 2) Computing Capacity Information Encapsulation and Flooding. The access router that connects to the server pool encapsulates the computing capacity information within one new container and floods the computing capacity information within its domain, let other routers within the same domain aware the capacity of each server pool. 3) Computing and Network Information based SPF Optimization Algorithm Optimize the SPF algorithm, let it find the best path in combination both the network related information and computing capacity information, build the forward table on each router based on the combined optimization results. The router that can't parse the new container can still use the traditional SPF that based solely on network related information to build the forward table. 4) Network and Computing Combined Optimization Scheduling Forward the customer traffic based on the combined optimization results by the routers on the optimized path. In order to achieve the incremental deployment of such features within the operator network, the entry router should tunnel the customer traffic to the router that connected to the preferred server pool. This can avoid the traffic loop within the IGP domains when not all of its routers use the same algorithm to find the best path. Wang, et al. Expires 19 May 2025 [Page 4] Internet-Draft IGP based NCCO November 2024 5. Advertisement of Computing Capacity Related Information OSPF[RFC7684] defines the OSPFv2 Extended Link Opaque LSA and [RFC8362]defines the E-Link-LSA to carry the information about links. These existing LSA can be used to include the new container that encapsulates and floods the computing capacity related information. Based on the above containers, this document defines the Stub-Link TLV and some additional sub-TLVs to identify the stub link and transmit the associated computing capacity information for OSPF and IS-IS respectively. 6. OSPF Protocol Extension for Stub Link Attributes The following sections define the protocol extension to indicate the stub link and its associated attributes in OSPFv2/v3. 6.1. OSPF Stub-Link TLV This document defines the Stub-Link TLV to describe stub link of a single router. This Stub-Link TLV is only applicable to the OSPFv2 Extended Link Opaque LSA[RFC7684] and E-Link-LSA LSA [RFC8362]. Inclusion in other LSAs MUST be ignored. The OSPF Stub-Link TLV which is under the IANA codepoint "OSPFv2 Extended Link Opaque LSA TLVs" and "OSPFv3 Extended-LSA TLV" has the following format: 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type(Stub-Link) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Flags | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Stub Link Prefix Sub-TLVs | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Computing Capacity related Sub-TLVs (variable) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Existing Sub-TLVs (variable) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 2: OSPF Stub-Link TLV Type: The TLV type. The value is 2(TBD1) for OSPFv2 Extended Link Opaque LSA TLVs and 10(TBD2) for OSPFv3 Extended-LSA TLVs. Length: Variable, dependent on sub-TLVs Wang, et al. Expires 19 May 2025 [Page 5] Internet-Draft IGP based NCCO November 2024 Flags: Define the type of the stub-link: * bit 0-15: Reserved Stub Link Prefix Sub-TLV: The prefix of the stub-link. It's format is defined in Section 6.2 and Section 6.3. Computing Capacity related Sub-TLVs: Sub-TLVs that contains the computing capacity information. They can be defined in other document and is out of the scope of this document. Existing Sub-TLVs: Sub-TLV that defined within "Open Shortest Path First (OSPF) Traffic Engineering TLVs" for TE Link TLV(Value 2) can be included if necessary. If this TLV is advertised multiple times in the same LSA, only the first instance of the TLV is used by receiving OSPFv2/v3 routers. This situation SHOULD be logged as an error. This document creates a registry for Stub-Link attributes in Section 10. 6.2. OSPF Stub Link IPv4 Prefix Sub-TLV The OSPF Stub Link IPv4 Prefix Sub-TLV has the following format: 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Prefix Length | IPv4 Prefix(variable) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 3: OSPF Stub Link IPv4 Prefix Sub-TLV Type: IPv4 Prefix Sub-TLV codepoint. Value is 37(TBD3) for OSPF(under "Types for sub-TLVs of TE Link TLV (Value 2)") Length: The length of the value portion in octets. Prefix Length: the length of the IPv4 Prefix in bits. IPv4 Prefix: The IPv4 Prefix value of stub link. 6.3. OSPF Stub Link IPv6 Prefix Sub-TLV The OSPF Stub Link IPv6 Prefix Sub-TLV has the following format: Wang, et al. Expires 19 May 2025 [Page 6] Internet-Draft IGP based NCCO November 2024 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Prefix Length | IPv6 Prefix(variable) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 4: OSPF Stub Link IPv6 Prefix Sub-TLV Type: IPv6 Prefix Sub-TLV codepoint. Value is Value is 38(TBD4) for OSPF(under "Types for sub-TLVs of TE Link TLV (Value 2)") Length: The length of the value portion in octets. IPv6 Prefix: The IPv6 Prefix value of stub link. 7. IS-IS Protocol Extension for Stub Link Attributes The following sections define the protocol extension to indicate the stub link and its associated attributes in IS-IS. 7.1. IS-IS Stub-link TLV This document defines the IS-IS Stub-Link TLV to describes stub link of a single router. The IS-IS Stub-Link TLV has the following format: 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Type(Stub-Link)| Length | Flags | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Stub Link Prefix Sub-TLV | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Computing Capacity related Sub-TLVs (variable) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Existing Sub-TLVs (variable) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 5: IS-IS Stub-Link TLV Type: IS-IS TLV codepoint. Value is 151 (TBD5) for stub-link TLV. Length: Variable, dependent on sub-TLVs Flags: Define the type of the stub-link: * bit 0-15: Reserved Wang, et al. Expires 19 May 2025 [Page 7] Internet-Draft IGP based NCCO November 2024 Stub Link Prefix Sub-TLV: The prefix of the stub-link. It's format is defined in Section 7.2 and Section 7.3. Computing Capacity related Sub-TLVs: Sub-TLVs that contains the computing capacity information. They can be defined in other document and is out of the scope of this document. Existing Sub-TLVs: Sub-TLVs that defined within "IS-IS Sub-TLVs for TLVs Advertising Neighbor Information" can be included if necessary. 7.2. IS-IS Stub Link IPv4 Prefix Sub-TLV The IS-IS Stub Link IPv4 Prefix Sub-TLV has the following format: 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Reserved |Prefix Length| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IPv4 Prefix(Variable) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 6: IS-IS Stub Link IPv4 Prefix Sub-TLV Type: IPv4 Prefix Sub-TLV codepoint. Value is 46(TBD6) for IS- IS(under "IS-IS Sub-TLVs for TLVs Advertising Neighbor Information") Length: Length: The length of the value portion in octets. Prefix Length: the length of the IPv4 Prefix in bits. IPv4 Prefix: The IPv4 Prefix value of stub link. 7.3. IS-IS Stub Link IPv6 Prefix Sub-TLV The IS-IS Stub Link IPv6 Prefix Sub-TLV has the following format: 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Reserved |Prefix Length| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IPv6 Prefix(Variable) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 7: IS-IS Stub Link IPv6 Prefix Sub-TLV Type: IPv6 Prefix Sub-TLV codepoint. Value is 47(TBD7) for IS- IS(under "IS-IS Sub-TLVs for TLVs Advertising Neighbor Information") Wang, et al. Expires 19 May 2025 [Page 8] Internet-Draft IGP based NCCO November 2024 Length: Length: The length of the value portion in octets. Prefix Length: the length of the IPv6 Prefix in bits. IPv6 Prefix: The IPv6 Prefix value of stub link. 8. Application of the network computing combined optimization The following figure gives the application example of the network computing combined optimization. +--------------------------------------+ | | | ***** ***** | +-------------+ | *R1 *---------+ +----*R6 *----------+Server Pool A| | ***** | | ***** | +-------------+ | | +-+-+ | | | | | +---+R4 +-----+ | | | | | +-+-+ | | | +---+ | | ***** | +-------------+ | |R2 +---+ +------------*R7 *----------+Server Pool B| | +---+ | ***** | +-------------+ | | | ***** | | | | |---*R5 *-----+ | | | | ***** | | | | ***** | | ***** | +-------------+ | *R3 *---------+ +----*R8 *----------+Server Pool C| | ***** ***** | +-------------+ | | | | | IGP Domain | +--------------------------------------+ Figure 9: Application of Network Computing Combined Optimization Suppose R1, R3, R5,R6,R7 and R8 (identified via the "*" signal)are the routers that have been updated to support the parse of newly defined Stub Link TLV and the optimized SPF algorithm that depends both on the network and computing capacity information. The router R2 and R4 (identified via the "-" signal are the legacy routers that had not been upgraded yet. Wang, et al. Expires 19 May 2025 [Page 9] Internet-Draft IGP based NCCO November 2024 When R6, R7 and R8 knows the computing capacity information of their connected server Pool A, B and C( via the automatic registration process between the access router and server pool, or the manual configuration on the access router, which is out of the scope this document), they encapsulation such information within the above Stub Link TLV, and then the related LSA (for OSPF) or TLV(for IS-IS), flooding them within the IGP domain. When upgraded routers receives such information, it can accomplish the network computing combined optimized SPF algorithm, to calculate the best path to each server pool and build the forwarding table on it. For the legacy routers, the forwarding table are built still via the traditional SPF algorithm. When router R1 receives the customer traffic that requires the computing capacity X and minimum bandwidth path of C, it will lookup its FIB, make the final decision based on both of these information. If the connection between R6 and its associated server Pool A can't meet minimum bandwidth requirements, it will check the next candidate within its FIB table. If the capacity of Server Pool is less than X, it will be passed also. The final result will be Server Pool C, whose access bandwidth and the computing capacity can all meet the customer requirements. Router R1 will encapsulate the customer traffic within one tunnel, with the tunnel destination set to the address of R8, which is the access router of Server Pool C and tunnel source is the R1 itself. When the traffic path through the intermediated router along the path, the traffic will be forwarded based on the destination address of R8, which is solely based on the traditional SPF algorithm. The tunnelled traffic can arrive safely to the tunnel destination without any possibility of loop, even they use different algorithm for different prefixes. 9. Security Considerations Security concerns for IS-IS are addressed in [RFC5304] and[RFC5310] Security concern for OSPFv3 is addressed in [RFC4552] Advertisement of the additional information defined in this document introduces no new security concerns. 10. IANA Considerations IANA is requested to the allocation in following registries: Wang, et al. Expires 19 May 2025 [Page 10] Internet-Draft IGP based NCCO November 2024 +===========================================+============+===============================+ | Registry | Type | Meaning | | |(suggested) | | +===========================================+============+===============================+ |OSPFv2 Extended Link Opaque LSA TLVs | TBD1(2) |OSPFv2 Stub-Link | +-------------------------------------------+------------+-------------------------------+ |OSPFv3 Extended-LSA TLVs | TBD2(10) |OSPFv3 Stub-Link | +-------------------------------------------+------------+-------------------------------+ |IS-IS Top-Level TLV | TBD5(151)|IS-IS Stub-Link | +-------------------------------------------+------------+-------------------------------+ |Types for sub-TLVs of TE Link TLV (Value 2)| TBD3(37) |OSPF Stub Link IPv4 Prefix | +-------------------------------------------+------------+-------------------------------+ |Types for sub-TLVs of TE Link TLV (Value 2)| TBD4(38) |OSPF Stub Link IPv6 Prefix | +-------------------------------------------+------------+-------------------------------+ |IS-IS Sub-TLVs for TLVs | | | |Advertising Neighbor Information | TBD6(46) |IS-IS Stub Link IPv4 Prefix | +-------------------------------------------+------------+-------------------------------+ |IS-IS Sub-TLVs for TLVs | | | |Advertising Neighbor Information | TBD7(47) |IS-IS Stub Link IPv6 Prefix | +-------------------------------------------+------------+-------------------------------+ Figure 10: IANA Allocation for newly defined TLVs and Sub-TLVs 11. Acknowledgement TBD 12. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC4552] Gupta, M. and N. Melam, "Authentication/Confidentiality for OSPFv3", RFC 4552, DOI 10.17487/RFC4552, June 2006, . [RFC5304] Li, T. and R. Atkinson, "IS-IS Cryptographic Authentication", RFC 5304, DOI 10.17487/RFC5304, October 2008, . [RFC5310] Bhatia, M., Manral, V., Li, T., Atkinson, R., White, R., and M. Fanto, "IS-IS Generic Cryptographic Authentication", RFC 5310, DOI 10.17487/RFC5310, February 2009, . Wang, et al. Expires 19 May 2025 [Page 11] Internet-Draft IGP based NCCO November 2024 [RFC5392] Chen, M., Zhang, R., and X. Duan, "OSPF Extensions in Support of Inter-Autonomous System (AS) MPLS and GMPLS Traffic Engineering", RFC 5392, DOI 10.17487/RFC5392, January 2009, . [RFC7684] Psenak, P., Gredler, H., Shakir, R., Henderickx, W., Tantsura, J., and A. Lindem, "OSPFv2 Prefix/Link Attribute Advertisement", RFC 7684, DOI 10.17487/RFC7684, November 2015, . [RFC8362] Lindem, A., Roy, A., Goethals, D., Reddy Vallem, V., and F. Baker, "OSPFv3 Link State Advertisement (LSA) Extensibility", RFC 8362, DOI 10.17487/RFC8362, April 2018, . [RFC9346] Chen, M., Ginsberg, L., Previdi, S., and D. Xiaodong, "IS- IS Extensions in Support of Inter-Autonomous System (AS) MPLS and GMPLS Traffic Engineering", RFC 9346, DOI 10.17487/RFC9346, February 2023, . Authors' Addresses Aijun Wang China Telecom Beiqijia Town, Changping District Beijing 102209 China Email: wangaj3@chinatelecom.cn Zhibo Hu Huawei Technologies Huawei Bld., No.156 Beiqing Rd. Beijing 100095 China Email: huzhibo@huawei.com Changwang New H3C Technologies China Email: linchangwang.04414@h3c.com Wang, et al. Expires 19 May 2025 [Page 12] Internet-Draft IGP based NCCO November 2024 Gyan S. Mishra Verizon Inc. 13101 Columbia Pike Silver Spring, MD 20904 United States of America Email: gyan.s.mishra@verizon.com Wang, et al. Expires 19 May 2025 [Page 13]