NeoTec L. Dunbar, Ed. Internet-Draft Futurewei Updates: 8342 (if approved) C. Xie Intended status: Standards Track Q. Sun Expires: 24 April 2025 China Telecom 21 October 2024 Dynamic Network Adjustments for Cloud Service Scaling draft-dunbar-neotec-net-adjust-cloud-scaling-00 Abstract This document specifies a framework for dynamically adjusting network configurations in response to cloud service scaling events. As cloud services grow, increase traffic, or add resources, automatically adapting network configurations can improve performance and enable greater interoperability. Manual network adjustments are often slow, error-prone, and inadequate for the rapid changes of cloud services. The proposed framework, along with the associated YANG models, facilitates seamless interoperability among network controllers and equipment from various vendors, which is an essential requirement for Telecom Cloud providers operating in multi-vendor environments. 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 24 April 2025. Copyright Notice Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved. Dunbar, et al. Expires 24 April 2025 [Page 1] Internet-Draft Resource Abstraction October 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. Requirements Language . . . . . . . . . . . . . . . . . . . . 3 3. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 3 4. Framework for Dynamic Network Adjustments . . . . . . . . . . 4 4.1. Core Components . . . . . . . . . . . . . . . . . . . . . 4 4.2. Work Flow . . . . . . . . . . . . . . . . . . . . . . . . 4 5. Network Changes Triggered by Cloud Services . . . . . . . . . 5 5.1. Dynamic-Bandwidth YANG module . . . . . . . . . . . . . . 5 5.2. Dynamic-Load-Balancer YANG Model . . . . . . . . . . . . 6 5.3. Dynamic-ACL YANG Model . . . . . . . . . . . . . . . . . 9 6. Security Considerations . . . . . . . . . . . . . . . . . . . 11 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 8. Normative References . . . . . . . . . . . . . . . . . . . . 12 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 13 Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 1. Introduction Cloud services have become increasingly dynamic, requiring real time adjustments to meet fluctuating workloads and user demand. As these services scale, whether due to increased traffic, new resource allocations, or expanded service delivery, network configurations must adapt accordingly to ensure performance. For example, scaling a cloud service may require adjustments in bandwidth, modifications to load balancers, or updates to access control lists (ACLs). Traditionally, coordinating these network adjustment with cloud service scalling has involved manual intervention or reliance on proprietary solutions, both of which are slow, error-prone, and inefficient. With the growing complexity of multi-vendor cloud orchestration systems and network controllers deployed in Telecom Cloud environment, there is a pressing need for a standardized, interoperable approach to managing dynamic network changes. Dunbar, et al. Expires 24 April 2025 [Page 2] Internet-Draft Resource Abstraction October 2024 The primary objective of this document is to propose a framework for automating network adjustments in response to cloud service scaling. By integrating cloud orchestration systems with network management via standardized YANG models, this framework ensures that network resources can scale flexibly and adapt swiftly to the evolving changes of cloud services. Furthermore, it enables seamless interoperability across controllers and equipment from different vendors, making it particularly valuable for Telecom Cloud providers operating in multi-vendor environments. 2. Requirements Language 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. Problem Statement As cloud services continue to scale dynamically, network infrastructure must adjust in real time to support the changing demands of these services. In many Telcom Cloud Operations, this coordination between cloud service scaling and network reconfiguration is either manual or dependent on proprietary solutions, leading to several key challenges: - Lack of coordination between cloud service orchestration and network management leads to inefficiencies and delays in adapting network configurations to cloud service changes. - Inconsistent and proprietary solutions limit the ability to manage and automate network resources across different vendors and multi- cloud environments. - Delayed network adaptation to cloud service scaling can result in performance issues, traffic congestion, and service disruptions. - Operational complexity increases in multi-cloud and multi-vendor environments due to the lack of standardized, vendor-agnostic frameworks. - No standardized framework exists for automating network adjustments in response to cloud service scaling, limiting the ability to implement seamless, real-time network changes. Dunbar, et al. Expires 24 April 2025 [Page 3] Internet-Draft Resource Abstraction October 2024 4. Framework for Dynamic Network Adjustments The Dynamic Network Adjustments Framework provides a vendor agnostic, standardized method for automating network changes in response to cloud service scaling events. The framework integrates cloud orchestration systems with network controllers, enabling seamless management of both cloud and network resources. 4.1. Core Components The framework consists of three core components: - Unified Resource Model (URM): The URM abstracts network and cloud resources, providing a unified interface for managing them across multi-vendor environments. - Cloud Orchestration Systems: Platforms like Kubernetes or OpenStack detect changes in cloud services (e.g., increased traffic or resource scaling) and communicate these triggers to the network controllers. - Network Controllers: Software-Defined Networking (SDN) controllers or network orchestrators use YANG models to dynamically adjust network resources (e.g., bandwidth, load balancers, ACLs) based on cloud service needs. 4.2. Work Flow - Cloud Service Trigger: A cloud orchestration system detects a service scaling event, such as increased traffic or the addition of new compute resources. - Trigger to Network Controller: The cloud orchestrator communicates with the network controller, requesting adjustments to network configurations (e.g., increasing bandwidth or reconfiguring the load balancer). - Network Adjustment via YANG Models: The network controller invokes YANG models, such as the Dynamic-Bandwidth YANG module or Dynamic- Load-Balancer YANG module, to modify the network infrastructure in real time. - Feedback Loop: Monitoring systems provide feedback on the effectiveness of the adjustments, ensuring that performance objectives are met. Dunbar, et al. Expires 24 April 2025 [Page 4] Internet-Draft Resource Abstraction October 2024 5. Network Changes Triggered by Cloud Services This section demonstrates how a cloud service expansion trigger (e.g., scaling a service, increasing traffic, or adding new resources) can interact with a network YANG model to dynamically modify network configurations, such as increasing bandwidth, updating load balancer settings, or adjusting an access control list (ACL). 5.1. Dynamic-Bandwidth YANG module The Dynamic-Bandwidth YANG module, extending the ietf-network- topology YANG model [RFC8345], can be invoked by orchestration systems or controllers in response to events or triggers, such as cloud services scalling up that generates increased traffic. module dynamic-bandwidth { namespace "urn:ietf:params:xml:ns:yang:dynamic-bandwidth"; prefix dbw; import ietf-network-topology { prefix nt; } organization "IETF"; contact "IETF Routing Area"; description "YANG model for dynamically updating bandwidth."; revision "2024-10-18" { description "Initial version."; } augment "/nt:networks/nt:network/nt:link" { description "Augment the network topology YANG model to update the bandwidth dynamically."; leaf requested-bandwidth { type uint64; description "Requested bandwidth in Mbps."; } } } Dunbar, et al. Expires 24 April 2025 [Page 5] Internet-Draft Resource Abstraction October 2024 For instance, when a cloud orchestration system detects increased traffic, it can dynamically request an increase in bandwidth to 1000 Mbps (1 Gbps) on network link link-123. The cloud orchestration system can use the following JSON input to initiate the requested changes. { "nt:networks": { "nt:network": [ { "network-id": "cloud-network-1", "nt:link": [ { "link-id": "link-123", "source-device": "device-1", "destination-device": "device-2", "requested-bandwidth": 1000 // 1000 Mbps bandwidth } ] } ] } } 5.2. Dynamic-Load-Balancer YANG Model When a cloud service scales, adjustments to the load balancer configuration may be required, such as adding new backend servers or modifying the load distribution method. The Dynamic-Load-Balancer YANG module defined here can be invoked by automated orchestration systems or controllers in response to specific events or triggers, enabling the load balancer to adapt dynamically to changing service demands. module dynamic-load-balancer { namespace "urn:ietf:params:xml:ns:yang:dynamic-load-balancer"; prefix dlb; import ietf-inet-types { prefix inet; } organization "IETF"; contact "IETF Routing Area"; description "YANG model for dynamically managing load balancer config, Dunbar, et al. Expires 24 April 2025 [Page 6] Internet-Draft Resource Abstraction October 2024 including backend server lists and load balancing algorithms."; revision "2024-10-18" { description "Initial revision."; } container load-balancer { description "Container for defining and managing dynamic load balancer configurations."; list balancer { key "balancer-id"; description "List of load balancers, each identified by a unique balancer ID."; leaf balancer-id { type string; description "Unique identifier for the load balancer instance."; } leaf algorithm { type enumeration { enum round-robin { description "Distributes traffic evenly across all servers in rotation."; } enum least-connections { description "Sends requests to the server with the fewest active connections."; } enum ip-hash { description "Distributes requests based on a hash of the client's IP address."; } } description "Load balancing algorithm to be used by this balancer."; } list backend-servers { key "server-id"; description "List of backend servers associated with Dunbar, et al. Expires 24 April 2025 [Page 7] Internet-Draft Resource Abstraction October 2024 the load balancer."; leaf server-id { type string; description "Unique identifier for the backend server."; } leaf ip-address { type inet:ipv4-address; description "IPv4 address of the backend server."; } leaf port { type uint16; description "Port number that the backend server uses for communication."; } } } } } For example, when the cloud service expansion triggers the addition of a new backend server (server-3 with IP 192.168.1.12) to the load balancer lb-1, the cloud orchestration system can automatically trigger the change using the following JSON code. The system specifies the use of the least-connections load balancing algorithm, ensuring that traffic is evenly distributed among backend servers based on the number of active connections. Dunbar, et al. Expires 24 April 2025 [Page 8] Internet-Draft Resource Abstraction October 2024 { "load-balancer": { "balancer": [ { "balancer-id": "lb-1", "algorithm": "least-connections", "backend-servers": [ { "server-id": "server-1", "ip-address": "192.168.1.10", "port": 8080 }, { "server-id": "server-2", "ip-address": "192.168.1.11", "port": 8080 }, { "server-id": "server-3", // New server added dynamically "ip-address": "192.168.1.12", "port": 8080 } ] } ] } } 5.3. Dynamic-ACL YANG Model In response to cloud service expansion or changing security needs, an ACL might need to be modified (e.g., adding or removing IPs allowed to access certain services). The Dynamic-ACL YANG module defined here can be invoked by orchestration systems or controllers to make the desired changes. module dynamic-acl { namespace "urn:ietf:params:xml:ns:yang:dynamic-acl"; prefix dacl; organization "IETF"; contact "IETF Routing Area"; description "YANG model for dynamically updating access control lists (ACLs)."; Dunbar, et al. Expires 24 April 2025 [Page 9] Internet-Draft Resource Abstraction October 2024 revision "2024-10-18" { description "Initial version."; } list acl { key "acl-id"; leaf acl-id { type string; description "Identifier for the ACL."; } list rules { key "rule-id"; leaf rule-id { type string; description "Identifier for the ACL rule."; } leaf action { type enumeration { enum permit; enum deny; } description "Action for this rule (permit or deny)."; } leaf src-ip { type inet:ipv4-address; description "Source IP address."; } leaf dst-ip { type inet:ipv4-address; description "Destination IP address."; } leaf protocol { type enumeration { enum tcp; enum udp; enum icmp; } description "Protocol for this rule."; } leaf port { type uint16; description "Port number associated with this rule."; } } } } Dunbar, et al. Expires 24 April 2025 [Page 10] Internet-Draft Resource Abstraction October 2024 Below is the JSON code to add a new rule (rule-3) to the ACL acl-123, allowing SSH traffic (port 22) from source IP 192.168.1.101 to destination IP 10.0.0.10. The existing rules, rule-1 and rule-2, control HTTPS (port 443) and block HTTP traffic (port 80), respectively. { "acl": [ { "acl-id": "acl-123", "rules": [ { "rule-id": "rule-1", "action": "permit", "src-ip": "192.168.1.100", "dst-ip": "10.0.0.10", "protocol": "tcp", "port": 443 }, { "rule-id": "rule-2", "action": "deny", "src-ip": "0.0.0.0", "dst-ip": "10.0.0.10", "protocol": "tcp", "port": 80 }, { "rule-id": "rule-3", // New rule added dynamically "action": "permit", "src-ip": "192.168.1.101", "dst-ip": "10.0.0.10", "protocol": "tcp", "port": 22 } ] } ] } 6. Security Considerations Security is a critical aspect when automating network adjustments in response to cloud service scaling. Several key areas should be addressed: Dunbar, et al. Expires 24 April 2025 [Page 11] Internet-Draft Resource Abstraction October 2024 - Authentication and Authorization: All communications between the cloud orchestration system and the network controllers must be authenticated and authorized to prevent unauthorized changes to network configurations. Strong access control mechanisms should be enforced to limit access to sensitive operations. Data Integrity: Configuration changes and adjustments made via YANG models must ensure data integrity during transmission. Mechanisms such as Transport Layer Security (TLS) should be employed to protect configuration data from tampering or unauthorized modifications. Monitoring and Auditing: Logs and records of configuration changes should be maintained for audit purposes. This helps in tracking who made changes, what changes were made, and when they were made. In case of misconfigurations or attacks, such records can be invaluable in diagnosing issues. 7. IANA Considerations IANA is requested to register the YANG module namespaces for dynamic- bandwidth, dynamic-load-balancer, and dynamic-acl under the "YANG Module Names" registry at https://www.iana.org/assignments/yang- parameters. These namespaces should be registered as follows: YANG Module Namespace URI Prefix reference ------------ -------------- ------ ---------- dynamic-bandwidth urn:ietf:params:xml:ns:yang dbw this document dynamic-load-balancer urn:ietf:params:xml:ns:yang dlb this document dynamic-acl urn:ietf:params:xml:ns:yang dacl this document 8. 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, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [RFC8345] Clemm, A., Medved, J., Varga, R., Bahadur, N., Ananthakrishnan, H., and X. Liu, "A YANG Data Model for Network Topologies", RFC 8345, DOI 10.17487/RFC8345, March 2018, . Dunbar, et al. Expires 24 April 2025 [Page 12] Internet-Draft Resource Abstraction October 2024 Acknowledgements The authors would like to thank for following for discussions and providing input to this document: xxx. Contributors Authors' Addresses Linda Dunbar (editor) Futurewei United States of America Email: ldunbar@futurewei.com ChongFeng Xie China Telecom China Email: chongfeng.xie@foxmail.com Qiang Sun China Telecom China Email: sunqiong@chinatelecom.com Dunbar, et al. Expires 24 April 2025 [Page 13]