Network slice configuration method and related device
By configuring an elastic bandwidth mechanism for network slicing, the problem of waste caused by fixed network slicing bandwidth resources is solved, dynamic bandwidth adjustment is achieved, and resource utilization and user experience are improved.
Patent Information
- Application Number
- CN202410305625.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-15
- Publication Date
- 2025-09-16
AI Technical Summary
The bandwidth resources configured in existing network slices are fixed, which means that when the business is busy, a larger bandwidth needs to be configured to ensure the normal operation of the business. However, when the business is idle, resources are wasted and dynamic bandwidth requirements cannot be met.
By adopting the elastic bandwidth mechanism, the communication device receives information from the controller and dynamically adjusts the bandwidth resources for the network slice when the bandwidth demand exceeds the limit, changing the rigid bandwidth to the rigid bandwidth plus the elastic bandwidth to meet the sudden large traffic demand.
It improves bandwidth resource utilization, avoids resource waste, saves user costs, and improves user experience.
Smart Images

Figure CN120658612A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a method for configuring a network slice and related devices. Background Art
[0002] With technological advancements, different industries, businesses, and users have increasingly placed diverse quality of service (QoS) requirements on networks. Network slicing technology has emerged to address these demands. Through network slicing, operators can build multiple dedicated, virtualized, and isolated logical networks on a common physical network to meet the differentiated network capability requirements of different customers. Common resource reservation technologies used in network slicing include flexible Ethernet (FlexE) interfaces, channelized sub-interfaces, and flexible Ethernet channels. These resource reservation technologies can meet diverse business requirements and achieve refined allocation of network resources.
[0003] Currently, network slices are allocated fixed bandwidth resources. During busy periods, services carried by a network slice may generate sudden bursts of high bandwidth traffic. To ensure the normal operation of these services, larger bandwidth resources must be allocated to the network slice. However, during periods of low service availability, the allocated bandwidth resources are often idle, resulting in a waste of bandwidth resources. Summary of the Invention
[0004] The present application provides a method and related apparatus for configuring network slices. When a network slice requests bandwidth resources that exceed the rigid bandwidth configured for the network slice, elastic bandwidth can be allocated to the network slice. The bandwidth resources used by the network slice are changed to a combination of the rigid bandwidth and the elastic bandwidth. This eliminates the need to pre-configure a larger rigid bandwidth for the network slice, avoids wasted bandwidth resources, and saves user costs.
[0005] In the first aspect, an embodiment of the present application proposes a method for configuring a network slice, which can be applied to a communication device (or node) in a network, such as a provider edge device (PE) or a provider backbone device (P). For example, a communication device can be a physical device such as a router, a switch, or a gateway, or a virtual device that supports route publishing and message forwarding. The embodiment of the present application does not limit the specific type of the communication device. The controller can be a server or computing device that manages the communication device.
[0006] The method includes: first, a communication device receives first information sent by a controller, the controller being configured to manage the communication device, the first information indicating a first bandwidth value and a second bandwidth value, the second bandwidth value being greater than the first bandwidth value. Based on the first information, the communication device allocates a first bandwidth resource corresponding to the first bandwidth value to a network slice. When the bandwidth resource requested by the network slice exceeds the first bandwidth resource, the communication device allocates a second bandwidth resource corresponding to the second bandwidth value to the network slice.
[0007] In the above technical solution, the bandwidth of the network slice is allowed to change from the first bandwidth value to the second bandwidth value through the first information, and the second bandwidth value is greater than the first bandwidth value to meet the dynamic bandwidth requirements of the service and improve the utilization of bandwidth resources. When the bandwidth resources requested by the network slice exceed the first bandwidth resources configured for the network slice, the bandwidth resources of the network slice can be increased to the second bandwidth resources to ensure that the network slice can carry sudden high-traffic services, meet the dynamically changing data transmission requirements of the services carried by the network slice, and improve the user experience.
[0008] In another description, the first bandwidth resource corresponding to the first bandwidth value may be referred to as rigid bandwidth, and the second bandwidth resource corresponding to the second bandwidth value may be referred to as elastic bandwidth.
[0009] It should be noted that, in addition to network slicing, the embodiments of the present application can also configure elastic bandwidth for other forwarding paths. Such other forwarding paths include, but are not limited to, tunnels or paths, etc. Taking the forwarding path being a tunnel as an example, the communication device in the embodiment of the present application can also allocate a first bandwidth resource corresponding to a first bandwidth value to the tunnel based on the first information. When the bandwidth resources requested for use by the tunnel exceed the first bandwidth resources, the communication device allocates a second bandwidth resource corresponding to a second bandwidth value to the tunnel. Without the need to configure a larger rigid bandwidth in advance, it is ensured that the tunnel can carry sudden high-traffic services. This avoids the waste of bandwidth resources and saves user costs.
[0010] In conjunction with the first aspect, in a possible implementation of the first aspect, the first information includes: a first bandwidth value and a second bandwidth value. For example, if the first bandwidth value is 200 megabits per second (Mbps) and the second bandwidth value is 500 Mbps, the communication device determines that the bandwidth resource corresponding to the first bandwidth value is 200 Mbps and the second bandwidth resource corresponding to the second bandwidth value is 500-200=300 Mbps.
[0011] Alternatively, the first information includes: a first bandwidth value and a third bandwidth value, where the sum of the first bandwidth value and the third bandwidth value is the second bandwidth value. For example, if the first bandwidth value is 200 Mbps and the third bandwidth value is 300 Mbps, the communication device determines that the bandwidth resource corresponding to the first bandwidth value is 200 Mbps. The first bandwidth value and the third bandwidth value determine the second bandwidth value to be 500 Mbps, and further determines that the second bandwidth resource corresponding to the second bandwidth value is 500-200 = 300 Mbps.
[0012] Alternatively, the first information includes: a first bandwidth value and a first indication information, and the first indication information is used to determine the second bandwidth value. Specifically, the first indication information indicates that the network slice is allowed to obtain idle bandwidth resources from the shared bandwidth resource pool. When the bandwidth resource pool shared by the communication device is 1000M. If the service of the network slice requires a bandwidth of 500M, the communication device allocates 300M (second bandwidth resource) to the network slice from the bandwidth resource pool, and superimposes the allocated first bandwidth resource 200M, so that the total bandwidth resource allocated by the network slice is changed to 200+300=500M.
[0013] In the above technical solution, there are multiple possible implementation methods for the first information, which improves the implementation flexibility of the solution.
[0014] In conjunction with the first aspect, in one possible implementation of the first aspect, the sum of the bandwidth value of the second bandwidth resource and the bandwidth value of the first bandwidth resource is less than or equal to the second bandwidth value. Specifically, because the second bandwidth resource is derived from idle bandwidth resources provided by a bandwidth resource pool, when the idle bandwidth resources in the bandwidth resource pool are less than the difference between the second bandwidth value and the first bandwidth value, the sum of the bandwidth value of the second bandwidth resource and the bandwidth value of the first bandwidth resource is less than the second bandwidth value.
[0015] In conjunction with the first aspect, in one possible implementation of the first aspect, the first bandwidth value is equal to 0. Specifically, the controller does not configure a rigid bandwidth for the network slice. When a service carried by the network slice requests bandwidth resources, the communication device allocates a second bandwidth resource to the network slice from the bandwidth resource pool. This can further avoid bandwidth resource waste caused by configuring a rigid bandwidth, save user costs, and improve the implementation flexibility of the solution.
[0016] In conjunction with the first aspect, in a possible implementation of the first aspect, allocating a second bandwidth resource corresponding to a second bandwidth value to a network slice includes: a communication device allocating the second bandwidth resource to the network slice from a bandwidth resource pool, the bandwidth resource pool providing idle bandwidth resources, and the bandwidth resource pool supporting allocation of bandwidth resources to one or more network slices. Through the above method, bandwidth resource utilization is improved.
[0017] In combination with the first aspect, in a possible implementation of the first aspect, the method also includes: the communication device sends cache information to the controller, and the cache information is used as a path constraint factor for determining the network slice.
[0018] In the above method, the communication device may also report cache information of the communication device to the controller, so as to facilitate the controller to select appropriate communication devices when calculating the path, thereby improving the accuracy of the path calculation result.
[0019] In conjunction with the first aspect, in a possible implementation of the first aspect, the cache information of one or more nodes is carried in an Interior Gateway Protocol Link Tag Length Value (IGP Link TLV) field; or, the cache information of one or more nodes is carried in a Layer 2 Bundle Member Attribute Tag Length Value (L2 Bundle Member Attribute TLV) field; or, the cache information of one or more nodes is carried in a Link Attribute Tag Length Value (Link Attribute TLV) field; or, the cache information of one or more nodes is carried in a Link Descriptors TLV field. Through the above method, the implementation flexibility of the solution is improved.
[0020] In conjunction with the first aspect, in one possible implementation of the first aspect, the cache information includes any one or more of the following: a maximum cache value of a node, a remaining cache value of a node, a maximum cache value of a board, a remaining cache value of a board, a maximum cache value of a port, or a remaining cache value of a port, where a node includes one or more boards, and a board includes one or more ports. The communication device can report cache information in various forms to the controller, thereby increasing the implementation flexibility of the solution.
[0021] In conjunction with the first aspect, in a possible implementation of the first aspect, receiving the first information includes: receiving a configuration model of the network configuration protocol NETCONF, where the configuration model includes the first information; or receiving a configuration model of a command line, where the configuration model includes the first information; or receiving a configuration model of YANG, where the configuration model includes the first information. The above method improves the implementation flexibility of the solution.
[0022] In conjunction with the first aspect, in a possible implementation of the first aspect, receiving the first information includes: receiving a Border Gateway Protocol (BGP) address family, where the BGP address family includes the first information. The above method improves the implementation flexibility of the solution.
[0023] In combination with the first aspect, in a possible implementation of the first aspect, the first information is carried in the network slice identifier sub-tag length value slice ID sub-TLV field included in the BGP address family. Through the above method, the implementation flexibility of the solution is improved.
[0024] In conjunction with the first aspect, in a possible implementation of the first aspect, receiving the first information includes: receiving a CCI object from the central controller, where the CCI object includes the first information. Through the above method, the implementation flexibility of the solution is improved.
[0025] In conjunction with the first aspect, in a possible implementation of the first aspect, the CCI object includes an optional type length value optionalTLV field, and the optional TLV field is used to carry the first information. Through the above method, the implementation flexibility of the solution is improved.
[0026] In combination with the first aspect, in a possible implementation of the first aspect, the method further includes: receiving an explicit routing object ERO, where the ERO includes identification information of the network slice. Through the above method, the implementation flexibility of the solution is improved.
[0027] In conjunction with the first aspect, in a possible implementation of the first aspect, the first bandwidth value is a committed information rate (CIR), and the second bandwidth value is a peak information rate (PIR). The above method improves the implementation flexibility of the solution.
[0028] In a second aspect, an embodiment of the present application provides a method for configuring a network slice, which is applied to a controller that manages one or more communication devices (or nodes). The method includes:
[0029] The controller sends first information to the communication device, where the first information indicates a first bandwidth value and a second bandwidth value, where the second bandwidth value is greater than the first bandwidth value, wherein the first bandwidth value is used to indicate that a first bandwidth resource corresponding to the first bandwidth value is allocated to the network slice, and the second bandwidth value is used to indicate that when the bandwidth resource requested by the network slice exceeds the first bandwidth resource, a second bandwidth resource corresponding to the second bandwidth value is allocated to the network slice.
[0030] In the above technical solution, the bandwidth of the network slice is allowed to change from the first bandwidth value to the second bandwidth value through the first information, and the second bandwidth value is greater than the first bandwidth value to meet the dynamic bandwidth requirements of the service and improve the utilization of bandwidth resources. When the bandwidth resources requested by the network slice exceed the first bandwidth resources configured for the network slice, the bandwidth resources of the network slice can be increased to the second bandwidth resources to ensure that the network slice can carry sudden high-traffic services, meet the dynamically changing data transmission requirements of the services carried by the network slice, and improve the user experience.
[0031] In another description, the first bandwidth resource corresponding to the first bandwidth value may be referred to as rigid bandwidth, and the second bandwidth resource corresponding to the second bandwidth value may be referred to as elastic bandwidth.
[0032] It should be noted that, in addition to network slicing, the embodiments of the present application can also configure elastic bandwidth for other forwarding paths. Such other forwarding paths include, but are not limited to, tunnels or paths, etc. Taking the forwarding path being a tunnel as an example, the communication device in the embodiment of the present application can also allocate a first bandwidth resource corresponding to a first bandwidth value to the tunnel based on the first information. When the bandwidth resources requested for use by the tunnel exceed the first bandwidth resources, the communication device allocates a second bandwidth resource corresponding to a second bandwidth value to the tunnel. Without the need to configure a larger rigid bandwidth in advance, it is ensured that the tunnel can carry sudden high-traffic services. This avoids the waste of bandwidth resources and saves user costs.
[0033] In conjunction with the second aspect, in a possible implementation of the second aspect, the first information includes: a first bandwidth value and a second bandwidth value. For example, if the first bandwidth value is 200 megabits per second (Mbps, M) and the second bandwidth value is 500 M, the communication device determines that the bandwidth resource corresponding to the first bandwidth value is 200 M, and the second bandwidth resource corresponding to the second bandwidth value is 500 - 200 = 300 M.
[0034] Alternatively, the first information includes: a first bandwidth value and a third bandwidth value, where the sum of the first bandwidth value and the third bandwidth value is the second bandwidth value. For example, if the first bandwidth value is 200 Mbps and the third bandwidth value is 300 Mbps, the communication device determines that the bandwidth resource corresponding to the first bandwidth value is 200 Mbps. The first bandwidth value and the third bandwidth value determine the second bandwidth value to be 500 Mbps, and further determines that the second bandwidth resource corresponding to the second bandwidth value is 500-200 = 300 Mbps.
[0035] Alternatively, the first information includes: a first bandwidth value and a first indication information, and the first indication information is used to determine the second bandwidth value. Specifically, the first indication information indicates that the network slice is allowed to obtain idle bandwidth resources from the shared bandwidth resource pool. When the bandwidth resource pool shared by the communication device is 1000M. If the service of the network slice requires a bandwidth of 500M, the communication device allocates 300M (second bandwidth resource) to the network slice from the bandwidth resource pool, and superimposes the allocated first bandwidth resource 200M, so that the total bandwidth resource allocated by the network slice is changed to 200+300=500M.
[0036] In the above technical solution, there are multiple possible implementation methods for the first information, which improves the implementation flexibility of the solution.
[0037] With reference to the second aspect, in one possible implementation of the second aspect, the sum of the bandwidth value of the second bandwidth resource and the bandwidth value of the first bandwidth resource is less than or equal to the second bandwidth value. Specifically, because the second bandwidth resource is derived from idle bandwidth resources provided by a bandwidth resource pool, when the idle bandwidth resources in the bandwidth resource pool are less than the difference between the second bandwidth value and the first bandwidth value, the sum of the bandwidth value of the second bandwidth resource and the bandwidth value of the first bandwidth resource is less than the second bandwidth value.
[0038] In conjunction with the second aspect, in one possible implementation of the second aspect, the first bandwidth value is equal to 0. Specifically, the controller does not configure a rigid bandwidth for the network slice. When a service carried by the network slice requests bandwidth resources, the communication device allocates a second bandwidth resource to the network slice from the bandwidth resource pool. This can further avoid bandwidth resource waste caused by configuring a rigid bandwidth, save user costs, and improve the implementation flexibility of the solution.
[0039] In conjunction with the second aspect, in a possible implementation of the second aspect, sending the first information includes: the controller sending the first information to one or more hop nodes that the network slice passes through. In the above solution, the controller can directly send the first information to multiple nodes that the network slice passes through, so that the multiple nodes that the network slice passes through configure rigid bandwidth and elastic bandwidth for the network slice, thereby improving the implementation flexibility of the solution.
[0040] In conjunction with the second aspect, in a possible implementation of the second aspect, sending the first information to one or more hop nodes that the network slice passes through includes sending the first information to a head node of the network slice. The head node of the network slice then sends the first information to downstream nodes of the network slice, so that multiple nodes that the network slice passes through configure rigid bandwidth and elastic bandwidth for the network slice, thereby improving the implementation flexibility of the solution.
[0041] In combination with the second aspect, in a possible implementation of the second aspect, the first information includes any one or more of the following: identification information of the network slice, a network slice cache value, or a cache waterline threshold; wherein the network slice cache value indicates the size of the cache resources reserved by the node carrying the network slice for the network slice, the cache resources are used to cache the data carried by the network slice, and the cache waterline threshold indicates the cache waterline size of the cache resources when network congestion occurs in the network slice.
[0042] Specifically, by configuring a cache waterline threshold for a node, when the cache used by a network slice exceeds the cache waterline threshold, the network slice is considered to have network congestion at the node. This triggers the node to notify the upstream node to perform speed reduction processing on the data flow carried by the network slice or to notify the upstream node to perform load sharing processing on the data flow carried by the network slice. The upstream node includes but is not limited to: any one-hop or multi-hop node between the node and the head node of the network slice, the head node of the network slice, or the sending end (i.e., the source device) corresponding to the data flow carried by the network slice.
[0043] Specifically, by configuring the network slice cache value for the node, the node allocates cache space for the network slice, ensuring that the node can use the cache space to cache the data stream carried by the network slice. During the process of triggering the network slice to slow down, the node can use the cache space to cache the data stream carried by the network slice, avoiding packet loss and ensuring data flow is lossless.
[0044] In combination with the second aspect, in a possible implementation of the second aspect, the network slice cache value includes: a static network slice cache value, or a dynamic network slice cache value; wherein the static network slice cache value indicates the size of the fixed cache resources reserved by the node carrying the network slice for the network slice, and the fixed cache resources are only used to cache the data of the network slice; the dynamic network slice cache value indicates the size of the dynamic cache resources reserved by the node carrying the network slice for the network slice, and the dynamic cache resources support caching the data of one or more network slices.
[0045] In the above solution, since the cache resources of the communication device are limited, by configuring dynamic network slice cache values, the communication device supports configuring elastic bandwidth for more network slices, thereby improving the flexibility of network slice configuration.
[0046] In combination with the second aspect, in a possible implementation of the second aspect, the method also includes: obtaining cache information of one or more nodes, and using the cache information of one or more nodes as a path constraint factor for determining the network slice.
[0047] For example, the controller determines the elastic and rigid bandwidths for a network slice based on business needs or quality of service (QoS) requirements. It then calculates the cache watermark threshold for each node based on information such as the elastic and rigid bandwidths and the number of network slices in the network. If the cache information reported by a node fails to meet the cache watermark threshold for that network slice, the node is removed from the topology and another node is selected to continue path calculation.
[0048] In the above method, the communication device may also report cache information of the communication device to the controller, so as to facilitate the controller to select appropriate communication devices when calculating the path, thereby improving the accuracy of the path calculation result.
[0049] In conjunction with the second aspect, in a possible implementation of the second aspect, the cache information of one or more nodes is carried in an Interior Gateway Protocol Link Tag Length Value (IGP Link TLV) field; or, the cache information of one or more nodes is carried in a Layer 2 Bundle Member Attribute Tag Length Value (L2 Bundle Member Attribute TLV) field; or, the cache information of one or more nodes is carried in a Link Attribute Tag Length Value (Link Attribute TLV) field; or, the cache information of one or more nodes is carried in a Link Descriptors TLV field. Through the above method, the implementation flexibility of the solution is improved.
[0050] In conjunction with the second aspect, in one possible implementation of the second aspect, the cache information of one or more nodes includes any one or more of the following: the maximum cache value of the node, the remaining cache value of the node, the maximum cache value of a board, the remaining cache value of a board, the maximum cache value of a port, or the remaining cache value of a port, where the node includes one or more boards, and the board includes one or more ports. The controller can also obtain cache information in various forms from the communication device, thereby increasing the implementation flexibility of the solution.
[0051] In conjunction with the second aspect, in a possible implementation of the second aspect, the method further includes: obtaining path calculation requirement information, the path calculation requirement information including any one or more of the following: path calculation target information, path calculation constraint information, or service level agreement (SLA) requirement information, wherein the path calculation target information includes minimizing node cache occupancy, and the path calculation constraint information includes a first bandwidth resource constraint, a second bandwidth resource constraint, and / or a node cache occupancy constraint; and determining the first information based on the path calculation requirement information and the cache information of one or more nodes. By calculating paths for network slices using multiple constraint factors, the accuracy of the path calculation results is improved to accommodate various business needs.
[0052] In combination with the second aspect, in a possible implementation of the second aspect, sending the first information includes: sending a configuration model of the network configuration protocol NETCONF, where the configuration model of the network configuration protocol includes the first information; or sending a configuration model of a command line, where the configuration model of the command line includes the first information; or sending a YANG configuration model, where the YANG configuration model includes the first information.
[0053] In combination with the second aspect, in a possible implementation manner of the second aspect, sending the first information includes: sending a Border Gateway Protocol BGP address family, where the BGP address family includes the first information.
[0054] In combination with the second aspect, in a possible implementation of the second aspect, the first information is carried in the network slice identifier sub-tag length value slice ID sub-TLV field included in the BGP address family.
[0055] In combination with the second aspect, in a possible implementation manner of the second aspect, sending the first information includes: sending a central controller description CCI object, where the CCI object includes the first information.
[0056] In combination with the second aspect, in a possible implementation manner of the second aspect, the CCI object includes an optional type length value optionalTLV field, and the optional TLV field is used to carry the first information.
[0057] In combination with the second aspect, in a possible implementation of the second aspect, the method also includes: sending an explicit routing object ERO, where the ERO includes identification information of the network slice.
[0058] Through the above method, the controller can send the first information in multiple ways, thereby improving the implementation flexibility of the solution.
[0059] In combination with the second aspect, in a possible implementation of the second aspect, the first bandwidth value is a committed information rate CIR, and the second bandwidth value is a peak information rate PIR.
[0060] In a third aspect, an embodiment of the present application proposes a communication device, which includes a processing unit and a transceiver unit, and is used to execute the method of the aforementioned first aspect and any one of the first aspects.
[0061] In a fourth aspect, an embodiment of the present application proposes a communication device, which includes a processing unit and a transceiver unit, and the communication device is used to execute the method of the aforementioned second aspect and any one of the second aspects.
[0062] In a fifth aspect, an embodiment of the present application provides a chip, which includes an interface circuit and a processing circuit. The interface circuit and the processing circuit are interconnected through lines, and the processing circuit is used to run computer programs or instructions to perform the method of the first aspect or the second aspect.
[0063] Optionally, the chip includes at least one processor and a communication interface, the communication interface and the at least one processor are interconnected via a line, and the at least one processor is used to run a computer program or instruction to perform the method of the first aspect or the second aspect.
[0064] Optionally, the communication interface of the chip may be an input / output interface, a pin or a circuit, etc.
[0065] In conjunction with the sixth aspect, in one implementation of the sixth aspect of the embodiments of the present application, the chip described above in the present application further includes at least one memory, wherein the at least one memory stores instructions. The memory can be a storage unit within the chip, such as a register, a cache, etc., or can be a storage unit of the chip (such as a read-only memory, a random access memory, etc.).
[0066] In a seventh aspect of an embodiment of the present application, a computing device is provided, comprising at least one processor coupled to a memory; the memory is used to store programs or instructions; and the at least one processor is used to execute the programs or instructions so that the device can implement any possible implementation method of the first or second aspect described above.
[0067] An eighth aspect of an embodiment of the present application provides a computing device, comprising a communication interface for inputting and / or outputting signaling or data; and a processor for executing a computer-executable program so that the device can implement any possible implementation of the first or second aspect described above.
[0068] A ninth aspect of an embodiment of the present application provides a computing device comprising at least one logic circuit and an input / output interface; the input / output interface is used to input or output information; and the logic circuit is used to execute any possible implementation method as described in the first or second aspect above.
[0069] A tenth aspect of the present application provides a communication system, comprising the communication device of the third aspect and / or the communication device of the fourth aspect mentioned above.
[0070] In an eleventh aspect, the present application provides a computer-readable storage medium, in which a computer program is stored. When the computer-readable storage medium is run on a computer, the computer executes the method of the first or second aspect.
[0071] The twelfth aspect of the present application provides a computer program product, which, when executed on a computer, enables the computer to execute the method of the first or second aspect above.
[0072] A thirteenth aspect of the present application provides a communication system, which includes a communication device and a controller, wherein the communication device is used to execute any method as described in the first aspect, and the controller is used to execute any method as described in the second aspect. BRIEF DESCRIPTION OF THE DRAWINGS
[0073] Figure 1 A schematic diagram of resource reservation technology;
[0074] Figure 2 This is a schematic diagram of the network slicing scenario;
[0075] Figure 3 This is a topological diagram of a communication system according to an embodiment of the present application;
[0076] Figure 4 This is a flow chart of an embodiment of a method for configuring a network slice in an embodiment of the present application;
[0077] Figure 5 Schematic diagram of bandwidth resources of network slicing in an embodiment of the present application;
[0078] Figure 6 This is a schematic diagram of the reporting process of cache information in an embodiment of the present application;
[0079] Figure 7 This is another schematic diagram of a reporting process for cache information in an embodiment of the present application;
[0080] Figure 8 A schematic diagram of a structure of cache information in an embodiment of the present application;
[0081] Figure 9 A schematic diagram of a structure of cache information in an embodiment of the present application;
[0082] Figure 10 A schematic diagram of a structure of cache information in an embodiment of the present application;
[0083] Figure 11 A schematic diagram of a structure of cache information in an embodiment of the present application;
[0084] Figure 12 A schematic diagram of the structure of the first information in the embodiment of the present application;
[0085] Figure 13 A schematic diagram of the structure of the first information in the embodiment of the present application;
[0086] Figure 14 A schematic diagram of the structure of the first information in the embodiment of the present application;
[0087] Figure 15 A schematic diagram of the structure of the first information in the embodiment of the present application;
[0088] Figure 16 This is a flow chart of sending first information through PCEP in an embodiment of the present application;
[0089] Figure 17 This is another flowchart of sending the first information through PCEP in an embodiment of the present application;
[0090] Figure 18A schematic diagram illustrating the structure of a CCI object for a central controller according to an embodiment of the present application;
[0091] Figure 19 This is another structural diagram of the first information in the embodiment of the present application;
[0092] Figure 20 This is another structural diagram of the first information in the embodiment of the present application;
[0093] Figure 21 This is a schematic diagram of an application scenario in an embodiment of the present application;
[0094] Figure 22 A schematic structural diagram of a communication device 2200 provided in an embodiment of the present application;
[0095] Figure 23 A schematic structural diagram of a communication device 2300 provided in an embodiment of the present application;
[0096] Figure 24 A schematic structural diagram of a communication device 2400 provided in an embodiment of the present application;
[0097] Figure 25 A schematic diagram of a communication system 2500 proposed in an embodiment of the present application. DETAILED DESCRIPTION
[0098] The terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequential order. It should be understood that the terms used in this way can be interchangeable under appropriate circumstances, and this is merely a way of distinguishing the objects of the same attributes when describing them in the embodiments of the present application. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, so that the process, method, system, product or equipment comprising a series of units need not be limited to those units, but may include other units that are not clearly listed or inherent to these processes, methods, products or equipment.
[0099] First, some concepts involved in the embodiments of this application are introduced.
[0100] 1. Network slicing.
[0101] Network slicing refers to the provision of multiple logical networks on the same shared network infrastructure, each serving a specific business type or industry user. Each network slice can flexibly define its own logical topology, service level agreement (SLA) requirements, reliability, and security levels to meet the differentiated needs of different businesses, industries, or users.
[0102] In a network slicing scenario, the data plane guides packet forwarding within the network slice based on the network slice ID and the destination address. Specifically, the destination address is used to address the packet's forwarding path, and the network slice ID is used to select the forwarding resource for the packet. By combining these two identifiers, the number of Internet Protocol (IP) addresses in the network is reduced, saving computational overhead.
[0103] 2. Resource reservation technology.
[0104] For example, see Figure 1 , Figure 1 This is a schematic diagram of resource reservation technology. Figure 1 As shown in the figure, common resource reservation technologies include Flexible Ethernet (FlexE) interfaces, channelized sub-interfaces, and Flexible Ethernet channels (Flex-channels). Specifically, a FlexE interface pools physical interface resources at a timeslot granularity using a FlexE Shim. This flexibly divides a physical port with high bandwidth into several sub-channel ports (i.e., FlexE interfaces), enabling flexible and refined management of the physical interface. Bandwidth resources are strictly isolated between each FlexE interface, making the FlexE interface equivalent to a physical interface.
[0105] Channelized sub-interfaces use a sub-interface model to flexibly allocate bandwidth by configuring independent channelized sub-interfaces for network slices. Each network slice has its own dedicated bandwidth and scheduling tree, providing resource reservation for slice services.
[0106] Flexible Ethernet channels (also known as flexible subchannels) provide a flexible and fine-grained interface resource reservation method. Compared to channelized sub-interfaces, Flex-channels do not have a sub-interface model and are simpler to configure. Therefore, they are more suitable for scenarios where network slices can be quickly created on demand.
[0107] The bandwidth resources configured by the current network slice are fixed. For example Figure 2 As shown, Figure 2This is a diagram of a network slicing scenario. In a network consisting of an access network, an aggregation network, and a core network, multiple hierarchical network slices are created on the physical interface between the transmitter and receiver. For example, a physical interface is used as the default network slice, and an IP address is configured for this default network slice. A channelized sub-interface is used as the primary network slice for resource isolation, and a unique network slice identifier is configured for this primary network slice. The primary network slice reuses the IP address of the default network slice. Flexible Ethernet channel technology is used to reserve resources, forming sub-network slices, and each sub-network slice is configured with a unique network slice identifier. Services carried by the primary network slice can use Segment Routing IPv6 best effort (SRv6 BE) or SRv6 policy based on the IPv6 forwarding plane. Services carried by sub-network slices can use SRv6 policy tunneling. During busy periods, services carried by a network slice may generate bursts of high bandwidth traffic. To ensure the normal operation of these services, larger bandwidth resources must be allocated to the network slice. However, during idle periods, the bandwidth resources allocated to the network slice often remain idle, resulting in a waste of bandwidth resources.
[0108] Based on this, an embodiment of the present application proposes a method for configuring a network slice and a related device. A communication device in a network receives first information, the first information indicating a first bandwidth value and a second bandwidth value, where the second bandwidth value is greater than the first bandwidth value. Then, based on the first information, the communication device allocates a first bandwidth resource corresponding to the first bandwidth value to the network slice. When the bandwidth resource requested by the network slice exceeds the first bandwidth resource, the communication device allocates a second bandwidth resource corresponding to the second bandwidth value to the network slice. In an embodiment of the present application, the first bandwidth resource corresponding to the first bandwidth value is referred to as rigid bandwidth, and the second bandwidth resource corresponding to the second bandwidth value is referred to as elastic bandwidth. When the bandwidth resource requested by the network slice exceeds the rigid bandwidth configured for the network slice, elastic bandwidth can be allocated to the network slice. The bandwidth resource used by the network slice is changed to the rigid bandwidth plus the elastic bandwidth to ensure the normal transmission of the services carried by the network slice, meet the dynamically changing data transmission requirements of the services carried by the network slice, and improve the user experience. There is no need to configure a large rigid bandwidth for the network slice in advance, which avoids the waste of bandwidth resources and saves user costs.
[0109] It should be noted that, in addition to network slicing, embodiments of the present application can also configure elastic bandwidth for other forwarding paths. Such other forwarding paths include, but are not limited to, tunnels or paths. Taking the forwarding path as an example, in embodiments of the present application, the communication device can also allocate a first bandwidth resource corresponding to a first bandwidth value to the tunnel based on the first information. When the bandwidth resource requested by the tunnel exceeds the first bandwidth resource, the communication device allocates a second bandwidth resource corresponding to a second bandwidth value to the tunnel.
[0110] First, the communication system used in the embodiment of the present application is introduced. For example, please refer to Figure 3 , Figure 3 This is a topology diagram of a communication system in an embodiment of the present application. A communication system in an embodiment of the present application includes: multiple communication devices and a controller (or network controller, or network management controller) that manages the above communication devices. Among them, the communication devices include: provider edge equipment (provider edge, PE) 1, PE2, provider backbone equipment (provider, P) 1, P2, P3, P4, P5 and P6 (P1~P6 can also be called P nodes). PE1 is connected to P1 and P2 respectively, PE2 is connected to P5 and P6 respectively, and the P nodes are connected to each other. The controller can be connected to PE1 and PE2, and the controller can also be connected to the P node.
[0111] Optionally, the communication system may further include: a source device (source), a customer edge (CE) 1 communicating with the source device, a receiver device (receiver), and a CE2 communicating with the receiver device. The PE node may be a router or switch, for example. Because PE1 is connected to CE1 communicating with the source device, PE1 may also be referred to as an ingress node. Because PE2 is connected to CE2 connected to the receiver device, PE2 may also be referred to as an egress node.
[0112] In one example, the source device may be a server or other device, and the receiving device may be a terminal device or other device. A terminal device, also known as user equipment (UE), mobile station (MS), mobile terminal (MT), or terminal, is a device that provides voice and / or data connectivity to a user, or a chip within the device, such as a handheld device or vehicle-mounted device with wireless connectivity. At present, some examples of terminal devices include: mobile phones, desktop computers, tablet computers, laptops, PDAs, mobile internet devices (MIDs), wearable devices, virtual reality (VR) devices, augmented reality (AR) devices, wireless terminals in industrial control, wireless terminals in self-driving, wireless terminals in remote medical surgery, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, or 5G-residential gateway devices (5G-RG) that support 5G access, etc.
[0113] In another example, the source device may be an access network device, and the receiving device may be a core network, an internet data center (IDC), or a content distribution network (CDN).
[0114] In another example, the source device may be a core network, an IDC, or a CDN, and the receiving device may be an access network device.
[0115] In one example, the controller may specifically include a path computation element (PCE) and a management unit. The controller is used to centrally control the network, including computing tunnels, network slices, or paths.
[0116] Next, the embodiments of the present application will be described with reference to the accompanying drawings. Figure 4 , Figure 4A flow chart of an embodiment of a method for configuring a network slice in an embodiment of the present application is provided. A method for configuring a network slice proposed in an embodiment of the present application includes:
[0117] D1. The communication device reports cache information to the controller.
[0118] In step D1, the communication device (i.e., each node in the network) can report cache information to the controller, and the cache information serves as a path constraint factor for the controller to determine the network slice.
[0119] Specifically, the cache information includes but is not limited to: the maximum cache value of the node, the remaining cache value of the node, the maximum cache value of the single board, the remaining cache value of the single board, the maximum cache value of the port, or the remaining cache value of the port, where the node includes one or more single boards, and the single board includes one or more ports.
[0120] In the embodiment of the present application, the communication device can report the cache information to the controller in a variety of ways, which are described below:
[0121] In one possible implementation, the communication device performs intra-domain flooding by extending the Interior Gateway Protocol (IGP) to transmit the cache information of each node to a Border Gateway Protocol-link state (BGP_LS) node. The BGP_LS node is then enabled to report the cache information of one or more nodes to the controller.
[0122] For easier understanding, see Figure 6 , Figure 6 This is a schematic diagram of the reporting process of cache information in an embodiment of the present application. Specifically including:
[0123] Step F1: A BGP_LS neighbor relationship is established between the PE node and the controller.
[0124] Step F2: Flooding within the domain. Each node transmits the cache information to the PE node.
[0125] In step F2, the node may perform intra-domain flooding via the IGP protocol to transmit the cache information to the PE node.
[0126] In one example, using Intermediate System to Intermediate System (ISIS) as an example, cache information of one or more nodes is carried in an Interior Gateway Protocol Link Tag Length Value (IGPlink TLV) field, for example, see Request For Comments (RFC) 5305.
[0127] In another example, when the link is a Layer 2 link, the cache information of one or more nodes is carried in a Layer 2 Bundle Member Attribute TLV field (see, for example, RFC8668).
[0128] For example, when the cache information is the maximum cache value of the port (maximum link buffer), the cache information is as follows: Figure 8 As shown, Figure 8 This is a schematic diagram of the structure of cache information in an embodiment of the present application. The maximum cache value of a port can be used as a sub-TLV field of the L2 BundleMember Attribute TLV field. The maximum cache value of the port includes: type (type), length (length), flags (flags), and the maximum cache value of the port (maximum link buffer).
[0129] For example, when the buffer information is the residual buffer value of the port (unidirectional residual buffer), the buffer information is as follows: Figure 9 As shown, Figure 9 This is a schematic diagram of the structure of cache information in an embodiment of the present application. The port's residual buffer value can be used as a sub-TLV field of the L2 BundleMember Attribute TLV field. The port's residual buffer value includes: type (type), length (length), flags (flags), and the port's residual buffer value (unidirectional residual buffer).
[0130] For example, when the buffer information is the maximum buffer value of the board where the port is located (slot maximum buffer), the buffer information is as follows: Figure 10 As shown, Figure 10This is a schematic diagram of the structure of cache information in an embodiment of the present application. The maximum cache value of the board where the port is located can be used as a sub-TLV field of the L2 Bundle Member Attribute TLV field. The maximum cache value of the board where the port is located includes: type (type), length (length), reserved (resv), and the maximum cache value (slot maximum buffer) of the board where the port is located.
[0131] For example, when the buffer information is the remaining buffer value (slot unidirectional buffer) of the board where the port is located, the buffer information is as follows: Figure 11 As shown, Figure 11 This is a schematic diagram of the structure of cache information in an embodiment of the present application. The remaining cache value of the board where the port is located can be used as a sub-TLV field of the L2 Bundle Member Attribute TLV field. The remaining cache value of the board where the port is located includes: type (type), length (length), reserved (resv), and the remaining cache value of the board where the port is located (slot unidirectional buffer).
[0132] Step F3: The PE node uploads the cache information to the controller.
[0133] In step F3, since a BGP_LS neighbor relationship is established between the PE node and the controller, the PE node can report cache information of one or more nodes to the controller via BGP_LS.
[0134] In one example, cache information of one or more nodes is reported to the controller based on information related to attributes reported through BGP_LS as defined in RFC7752.
[0135] In another example, cache information of one or more nodes is reported to the controller through the L2 Bundle Member Attributes TLV of BGP_LS defined in RFC9085.
[0136] In another example, the Link Attribute TLV field carries the cache information of one or more nodes. Specifically, a link buffer sub-TLV set (Link_Buffer_subTLVs) is defined as a sub-TLV describing the LinkAttribute TLVs and L2 Bundle Member Attribute TLVs (refer to RFC8668) in BGP_LS, and the Link_Buffer_subTLVs carry the cache information of one or more nodes.
[0137] In another example, cache information of one or more nodes is reported to the controller through the L2 Bundle Member Attributes TLV of BGP_LS defined in RFC9085.
[0138] For example, the TLV format for the PE node to report cache information to the controller is similar to the aforementioned Figures 8 to 11 The TLV format shown is not described here in detail.
[0139] In another possible implementation, each node in the network establishes a BGP_LS neighbor relationship with the controller, and the node can directly report cache information to the controller through BGP_LS. Figure 7 , Figure 7 This is another schematic diagram of a reporting process for cache information in an embodiment of the present application. Specifically, it includes:
[0140] Step G1: Establish a BGP_LS neighbor relationship between each node and the controller.
[0141] Step G2: Each node reports cache information to the controller.
[0142] In step G2, the specific reporting method is similar to the aforementioned step F3 and will not be described here in detail.
[0143] Optionally, when the network further includes a route reflector (RR), the node reports the cache information to the route reflector, and then the route reflector forwards the cache information to the controller.
[0144] In another possible implementation, each node establishes a Path Computation Element Communication Protocol (PCEP) neighbor with the controller, and then each node can report cache information to the controller through a PCEP link state (PCEP-LS) interface.
[0145] In one example, cache information of one or more nodes is carried in a LinkDescriptors TLV field.
[0146] D2. The controller determines first information according to the path calculation requirement information and the cache information, where the first information indicates a first bandwidth value and a second bandwidth value.
[0147] In step D2, the controller obtains the cache information and other information reported by one or more nodes in the network (such as network topology information, link delay information and / or bandwidth information, etc.), and then calculates the path in combination with the path calculation requirement information. Specifically, the path calculation requirement information includes any one or more of the following: path calculation target information, path calculation constraint information, or service level agreement (SLA) requirement information. Among them, the path calculation target information includes but is not limited to: minimizing the cache occupancy of the node, high data throughput, minimizing bandwidth overlap, number of hops, overhead (cost) or delay, etc. The path calculation constraint information includes but is not limited to: first bandwidth resource constraint, second bandwidth resource constraint, cache occupancy constraint, or delay jitter constraint, etc.
[0148] The first bandwidth resource constraint, also known as a rigid bandwidth resource constraint, constrains the first bandwidth resource of the network slice corresponding to the routing result. The second bandwidth resource constraint, also known as an elastic bandwidth resource constraint, constrains the second bandwidth resource of the network slice corresponding to the routing result.
[0149] The following describes the first bandwidth resource and the second bandwidth resource in an embodiment of the present application. In an embodiment of the present application, a first bandwidth resource corresponding to a first bandwidth value and a second bandwidth resource corresponding to a second bandwidth value can be configured for a network slice, where the second bandwidth value is greater than the first bandwidth value. When the bandwidth resource requested by the network slice exceeds the first bandwidth resource, the second bandwidth resource corresponding to the second bandwidth value is allocated to the network slice, ensuring that the network slice can carry burst traffic of the service.
[0150] For example, see Figure 5 , Figure 5 Schematic diagram of bandwidth resources of network slicing in an embodiment of the present application.
[0151] The bandwidth resources configured for a network slice according to the first bandwidth value are called first bandwidth resources, which can also be called rigid bandwidth. Regardless of whether the node has idle bandwidth resources, the node should ensure that the network slice can use the first bandwidth resources. For example, if the first bandwidth value is 200 megabits per second (Mbps), the node needs to ensure that the network slice can use at least 200M bandwidth resources.
[0152] The bandwidth resource configured according to the second bandwidth value is called the second bandwidth resource, and the second bandwidth resource is called elastic bandwidth. The sum of the bandwidth value of the second bandwidth resource and the bandwidth value of the first bandwidth resource is less than or equal to the second bandwidth value. When the bandwidth resource pool of the node can provide idle bandwidth resources (and the idle bandwidth resources are greater than or equal to the second bandwidth resources), the node allows the idle bandwidth resources to be obtained from the bandwidth resource pool and allocated to the network slice as the second bandwidth resource, so that the network slice can use the first bandwidth resource and the second bandwidth resource. The bandwidth resource pool includes idle bandwidth resources in the node, and the bandwidth resource pool supports allocating the idle bandwidth resources to one or more network slices. For example, the second bandwidth value is 500M, and the bandwidth value of the second bandwidth resource is 500-200=300M, and the 300M is used as elastic bandwidth. Only when the bandwidth resources requested by the network slice exceed 200M (first bandwidth resources) and the bandwidth resource pool of the node can provide idle bandwidth resources greater than or equal to 300M, the node is allowed to allocate the second bandwidth resource of 300M to the network slice. The total bandwidth resources allocated by the node to the network slice is 200+300=500M.
[0153] In a possible implementation, the first bandwidth value may be a committed information rate (CIR), and the second bandwidth value may be a peak information rate (PIR).
[0154] When the controller obtains the path calculation requirement information and cache information and performs path calculation, the result of the path calculation can be represented by the first information. In the embodiment of the present application, there are multiple possible implementations of the first information, which are described below:
[0155] In one possible implementation, the first information includes a first bandwidth value and a second bandwidth value. For example, if the first bandwidth value is 200 megabits per second (Mbps) and the second bandwidth value is 500 Mbps, the communication device determines that the bandwidth resource corresponding to the first bandwidth value is 200 Mbps and the second bandwidth resource corresponding to the second bandwidth value is 500-200=300 Mbps.
[0156] In another possible implementation, the first information includes a first bandwidth value and a third bandwidth value, and the sum of the first bandwidth value and the third bandwidth value is the second bandwidth value. Figure 5 In the illustrated scenario, the first bandwidth value is 200M and the third bandwidth value is 300M.
[0157] In another possible implementation, the first information includes a first bandwidth value and first indication information, where the first indication information is used to determine the second bandwidth value. For example, the first bandwidth value is 200 Mbps, and the first indication information is, for example, a field indicating a "1" bit. The first indication information indicates that the network slice is permitted to obtain idle bandwidth resources from the shared bandwidth resource pool. Example 1: When the bandwidth resource pool shared by node A is 1000 Mbps. If the network slice's service requires 500 Mbps of bandwidth, node A allocates 300 Mbps (the second bandwidth resource) from the bandwidth resource pool to the network slice, adding the allocated first bandwidth resource of 200 Mbps to the total allocated bandwidth resource of 500 Mbps. Example 2: When the bandwidth resource pool shared by the nodes is 400 Mbps. If the network slice's service requires 1000 Mbps of bandwidth, the node allocates 400 Mbps (the second bandwidth resource) from the bandwidth resource pool to the network slice, adding the allocated first bandwidth resource of 200 Mbps to the total allocated bandwidth resource of 600 Mbps. Example 3: When the bandwidth resource pool shared by the nodes is 600M. If the service of the network slice requires 500M of bandwidth, the node allocates 600M (the second bandwidth resource) to the network slice from the bandwidth resource pool, and superimposes the allocated first bandwidth resource of 200M, so that the total bandwidth resource allocated to the network slice changes to 800M.
[0158] In another example, the first bandwidth value is equal to 0. In other words, the node determines the second bandwidth resource allocated to the network slice based on the second bandwidth value and the node's bandwidth resource pool.
[0159] Furthermore, the first information may also include: identification information of the network slice, a network slice cache value, and / or a cache waterline threshold. The network slice cache value indicates the size of cache resources reserved by the node carrying the network slice for the network slice, and the cache resources are used to cache data carried by the network slice. The cache waterline threshold indicates the cache waterline size of the cache resources when network congestion occurs in the network slice.
[0160] By configuring a cache waterline threshold for a node, when the cache used by a network slice exceeds the cache waterline threshold, the network slice is considered to have network congestion at the node. This triggers the node to notify the upstream node to perform speed reduction processing on the data flow carried by the network slice or to notify the upstream node to perform load sharing processing on the data flow carried by the network slice. The upstream node includes but is not limited to: any one-hop or multi-hop node between the node and the head node of the network slice, the head node of the network slice, or the sending end (i.e., the source device) corresponding to the data flow carried by the network slice.
[0161] By configuring the network slice cache value for the node, the node allocates cache resources (buffer) for the network slice, ensuring that the node can use the cache resources to cache the data stream carried by the network slice. During the process of network slice triggering speed reduction, the node can use the cache resources to cache the data stream carried by the network slice, avoiding packet loss and ensuring data flow is lossless.
[0162] In one possible implementation, the controller can calculate the cache watermark threshold as follows: buffer_threshold > n * number of network slices with elastic bandwidth configured on the node * cache polling detection time of each network slice * (max_bw – min_bw);
[0163] Among them, buffer_threshold is the cache waterline threshold, max_bw represents the second bandwidth value (or the maximum elastic bandwidth value allowed), min_bw represents the first bandwidth value (or rigid bandwidth value), the cache polling detection time of each network slice refers to the detection time of the cache (buffer) allocated to the network slice in the controller detection node, n is a positive integer, n represents the polling period, and the polling period refers to determining whether the bandwidth resource usage of the network slice has increased through periodic queries.
[0164] In one possible implementation, the controller can calculate the network slice cache value in the following way: buffer_size > (bidirectional link delay + number of network slices with elastic bandwidth configured on the node * cache polling detection time of each network slice) * (max_bw – min_bw) + buffer_threshold;
[0165] Among them, buffer_size is the network slice cache value, and the two-way link delay refers to the delay value from the head node of the network slice to the tail node of the network node and then to the head node of the network slice.
[0166] It should be noted that the controller can also use other methods to determine the network slice cache value or cache waterline threshold, and the embodiments of the present application do not limit this.
[0167] Optionally, the network slice cache value may specifically include: a static network slice cache value, or a dynamic network slice cache value. The static network slice cache value indicates the size of the fixed cache resource reserved by the node carrying the network slice for the network slice, and the fixed cache resource is only used to cache the data of the network slice. The dynamic network slice cache value indicates the size of the dynamic cache resource reserved by the node carrying the network slice for the network slice, and the dynamic cache resource supports caching the data of one or more network slices.
[0168] When the first information includes a static network slice cache value, the node reserves fixed cache resources for the network slice based on the static network slice cache value. For example, if the static network slice cache value is 20 milliseconds (ms), the node allocates fixed cache resources to the network slice based on the static network slice cache value, and the cache resources can only be used by the network slice. The cache resource size is 20 milliseconds, supporting caching of 20 milliseconds of data transmitted by the network slice at the maximum bandwidth.
[0169] When the first information includes a dynamic network slice cache value, the node reserves dynamic cache resources for the network slice according to the dynamic network slice cache value. For example, if the size of the dynamic cache resources in the node is 10 gigabytes (GB) and the dynamic network slice cache value is 1 GB, the node allows the network slice to use 1 GB of cache resources in the dynamic cache resources.
[0170] Optionally, the first information may also include the primary interface identifier (interface-ID) of the network slice.
[0171] Furthermore, after the controller calculates the network slice cache value and / or cache waterline threshold, the controller filters out nodes that can support the creation of the network slice from multiple nodes (nodes that have reported cache information) based on the network slice cache value and / or cache waterline threshold. Exemplarily, the nodes that support the creation of the network slice need to meet the following conditions: the maximum cache value of the node is greater than or equal to the network slice cache value; or, the maximum cache value of the node is greater than or equal to the cache waterline threshold; or, the available cache value of the node is greater than or equal to the network slice cache value; or, the available cache value of the node is greater than or equal to the cache waterline threshold.
[0172] D3. The controller sends the first information to the communication device.
[0173] In step D3, after the controller determines the first information, the controller may send the first information to the communication device (node) in a variety of ways, which are described below.
[0174] In one possible implementation, the controller sends the first information through a configuration model of the Network Configuration Protocol (Netconf). Alternatively, the controller sends the first information through a configuration model of the command-line interface (CLI). Alternatively, the controller sends the first information through a configuration model of YANG.
[0175] Exemplarily, the process of the controller sending the first information to the head node of the network slice is as follows: by adding the first information (identification information of the network slice) in the Netconf configuration model, the CLI configuration model, or the YANG configuration model. Network slices can be created using a variety of protocols, including but not limited to: Multiprotocol Label Switching Traffic Engineering (MPLS TE), Resource Reservation Protocol-Traffic Engineering (RSVP-TE), Segment Routing policy (SR Policy), Segment Routing over IPv6 (SRv6 SRv6 Policy), or IPv6-based Segment Routing Traffic Engineering Policy (SRv6TE policy). In one example, taking the configuration model of SRv6 TE policy as an example, the configuration model sent by the controller to the head node of the network slice is as follows "srv6-te policy policy1 endpoint 2001:DB8:3::3color 101
[0176] candidate-path preference 100
[0177] segment-list list1
[0178] SliceID 101", where "SliceID 101" is the identification information of the network slice, indicating that the identification information of the network slice configured by the first information is "SliceID 101".
[0179] The first information sent by the controller to the hop-by-hop nodes in the network slice is as follows: By adding the first information in the Netconf configuration model, the CLI configuration model, or the YANG configuration model. Taking the creation of a Flex-channel network slice sub-channel under the channelized sub-interface GigabitEthernet1 / 0 / 0.2 as an example, the configuration model is as follows: "interface GigabitEthernet1 / 0 / 0.2
[0180] vlan-type dot1q 22
[0181] ipv6 enable
[0182] ipv6 address auto link-local
[0183] mode channel enable
[0184] mode channel bandwidth 800
[0185] basic-slice 10
[0186] network-slice 101flex-channel 100pir 300buffer 200buff-threshold 50", where: the identification information of the network slice sub-channel corresponding to the configuration model is "flex-channel 100", the network slice sub-channel belongs to the network slice "slice 101", the second bandwidth value of the network slice sub-channel is 300M, indicating that the second bandwidth resource used by the network slice sub-channel is 300M, the network slice cache value of the network slice sub-channel is 200 microseconds, and the cache waterline threshold of the network slice sub-channel is 50 microseconds.
[0187] In another possible implementation, the controller sends the first information to the communication device via a Border Gateway Protocol (BGP) address family.
[0188] Implementation method 1: The BGP address family includes the BGPSR Policy address family, which supports the delivery of SR policy network slice paths based on the network slice identification information (slice ID). A subsequent address family identifier (SAFI) is defined in the SR TE policy "draft-ietf-idr-segment-routing-te-policy" to announce SR Policy candidate paths. The BGPSR Policy address family is encoded using the Address Family Identifier (AFI) (1 / 2) and SAFI 73.
[0189] The first information is carried in the slice ID sub-TLV field of the network slice identifier sub-tag length value included in the BGP address family. Specifically, a sub-sub TLV (sub-sub TLV) is added to the sub-TLV (Slice ID sub-TLV) of the network slice identifier of the above-mentioned BGPSR Policy address family, and the sub-sub TLV is used to carry the first information.
[0190] In one example, the first information is carried in a first bandwidth value TLV. The first bandwidth value TLV may also be called a CIR TLV or a bw_cir sub-sub-TLV. Figure 12 As shown, Figure 12 The first information includes: type (type), length (length), reservation (resv) and bandwidth (bandwidth), and the bandwidth field is used to carry the first bandwidth value (CIR).
[0191] In one example, the first information is carried in a second bandwidth value TLV. The second bandwidth value TLV may also be called a PIR TLV or a bw_pir sub-sub-TLV. Figure 13 As shown, Figure 13 This is a schematic diagram of the structure of the first information in an embodiment of the present application. The first information includes: type (type), length (length), reservation (resv) and bandwidth (bandwidth), and the bandwidth field is used to carry the second bandwidth value (PIR).
[0192] In one example, the first information is carried in a network slice buffer value TLV. The network slice buffer value TLV may also be referred to as a buffer_size sub-sub-TLV. Figure 14 As shown, Figure 14 This is a schematic diagram of the structure of the first information in an embodiment of the present application. The first information includes: type (type), length (length), reservation (resv) and network slice cache value (buffer_size).
[0193] In one example, the first information is carried in the buffer waterline threshold TLV. The buffer waterline threshold TLV may also be called buffer_threshold sub-sub-TLV. Figure 15 As shown, Figure 15 This is a schematic diagram of the structure of the first information in an embodiment of the present application. The first information includes: type (type), length (length), reservation (resv) and buffer waterline threshold (bufferthreshold).
[0194] Implementation method 2: The controller sends the first information to the communication device by adding a new BGP address family or a new sub-address family within the BGP address family, with the new BGP address family or the new sub-address family within the BGP address family carrying the first information. For example, a new BGP Network-Slice address family is added, and the BGP Network-Slice address family includes the first information. The controller sends the BGP Network-Slice address family to the communication device to send the first information to the communication device.
[0195] In another possible implementation, the controller sends the first information to the communication device through PCEP. For example, the path computation element (PCE) included in the controller sends the first information to the communication device through the network slice through PCEP. Specifically, the controller sends a central controller instruction (CCI) object to the communication device, and the CCI object carries the first information. For ease of understanding, please refer to Figure 18 , Figure 18 A structural diagram of a CCI object is provided for a central controller in an embodiment of the present application. The CCI object includes: a CCI identifier (CC-ID), an identifier of a network slice (sliceID), flags, a reserved (reserved), and an optional type-length value (optional TLV). Among them, the optionalTLV field is used to carry the first information. RFC9050 defines the PCE central controller (PCECC) of the Label Switched Path (LSP), and also defines the CCI object (Object) for sending MPLS label information of hop-by-hop nodes in the path. Exemplarily, in the CCI object that carries the first information, the type value (Object-Type) of the CCI object can be any value from 2 to 15, the class (class) of the CCI object can be 44, and the type (Type) of the CCI object can be 1.
[0196] The CCI carrying the first information may specifically include:
[0197] The primary interface identifier (interface-ID) sub-TLV is used to carry the primary interface of the network slice. For ease of understanding, please refer to Figure 20 , Figure 20This is another structural diagram of the first information in an embodiment of the present application. The first information includes type (type), length (length), reserved (resv) and identification information of the main interface (interface-ID);
[0198] The first bandwidth value TLV is used to carry the first bandwidth value. The first bandwidth value TLV can also be called CIR TLV or bw_cir sub-TLV. The first information includes: type (type), length (length), reservation (resv) and bandwidth (bandwidth). The bandwidth field is used to carry the first bandwidth value (CIR). The specific structure is similar to the above Figure 12 , I will not elaborate on this here;
[0199] The second bandwidth value TLV is used to carry the second bandwidth value. The second bandwidth value TLV can also be called PIR TLV or bw_pir sub-TLV. The first information includes: type (type), length (length), reservation (resv) and bandwidth (bandwidth). The bandwidth field is used to carry the second bandwidth value (PIR). The specific structure is similar to the above Figure 13 , I will not elaborate on this here;
[0200] The network slice cache value TLV is used to carry the network slice cache value. The network slice cache value TLV can also be called buffer_sizesub-TLV. The first information includes: type (type), length (length), reservation (resv) and network slice cache value (buffer_size). The specific structure is similar to the above Figure 14 , I will not elaborate on this here;
[0201] The buffer waterline threshold TLV is used to carry the buffer waterline threshold. The buffer waterline threshold TLV can also be called buffer_thresholdsub-TLV. The first information includes: type (type), length (length), reservation (resv) and buffer waterline threshold (bufferthreshold). The specific structure is similar to the above Figure 15 , which will not be elaborated here.
[0202] Optionally, the controller may also send an explicit routing object (ERO) to the communication device, the ERO including identification information of the network slice.
[0203] The controller sends the first information to the communication device through PCEP, which may include two possible implementation methods, which are described below respectively.
[0204] Implementation method 1: Path Computation Element-Initiated (PCE-Initiated) method. PCE-Initiated is initiated by the PCE. After the PCE calculates the network slice, it sends a Label Switched Path Initiate Request (PCInitiate) message to the network slice head node: Path Computation Client (PCC) to create the network slice. The PCE, as the Path Computation Element central controller (PCECC), sends PCInitiate messages to each hop-by-hop node in the network slice to notify the hop-by-hop nodes to reserve resources for the network slice.
[0205] For easier understanding, see Figure 16 , Figure 16 This is a flow chart of sending the first information via PCEP in an embodiment of the present application. The specific process of sending the first information via PCE-Initiated includes:
[0206] H1. PCE (e.g., controller) sends a PCInitiate message to the Path Computation Client (PCC) head node (e.g., the head node of the network slice). The PCInitiate message is a PCEP message used to create an LSP. The explicit route object (ERO) of the PCInitiate message carries the identification information of the network slice. For ease of understanding, please refer to Figure 19 , Figure 19 This is another structural diagram of the first information in the embodiment of the present application. By newly defining the identification information object of the network slice (Slice ID object) as a subobject (subobject) of ERO. A subobject is added to ERO, and the subobject includes type (type), length (length), reservation (resv) and identification information (slice ID) of the network slice.
[0207] Correspondingly, after receiving the above PCInitiate message, the PCC head node installs the path of the network slice and applies for a PLSP-ID as the identifier of the network slice. The PLSP-ID can be used to identify an LSP.
[0208] H2. The PCC head node feeds back a Path Computation LSP State Report (PCRpt) message to the PCE (controller). The PCRpt message is used to report the current state of the LSP.
[0209] In step H2, after the PCC head node completes the path installation of the network slice, it sends a PCRpt message to the PCE. In the PCRpt message, the Delegation Flag (D Flag) of the LSP object is set to 1, indicating that the control of the network tunnel is delegated to the PCE; the Create Flag (C Flag) in the LSP object is set to 1, indicating that the PCC has created the PCE-triggered network slice. Through this PCRpt message, the PCC head node is notified to set the status of the network slice to "Going-Up".
[0210] H3. The PCE sends a PCInitiate message to the PCC head node, where the PCInitiate message carries the first information. Specifically, the CCI of the PCInitiate message carries the first information.
[0211] How to carry the first information in CCI is similar to the above Figure 12-15 As shown, no further description is given here.
[0212] H4. The PCC head node feeds back a PCRpt message to the PCE, where the PCRpt message carries the first information.
[0213] H5. PCE sends a PCInitiate message to the PCC intermediate node (for example, the intermediate node of the network slice), and the PCInitiate message carries the first information.
[0214] In step H5, the PCE sends a PCInitiate message along the hop-by-hop nodes of the network slice, and the PCInitiate message carries the first information.
[0215] H6. The PCC intermediate node feeds back a PCRpt message to the PCE, where the PCRpt message carries the first information.
[0216] In step H6, after the PCC intermediate node successfully completes the configuration of the first information and the reservation of bandwidth resources (and / or cache resources), it feeds back a PCRpt message to the PCE, where the PCRpt message carries the first information.
[0217] If there is a PCC intermediate node configuration failure or resource reservation failure, a path calculation error (Path Computation Error, PCErr) message is fed back to the PCE. Optionally, in response to the PCErr message, the PCE recalculates the path.
[0218] H7. PCE sends a PCInitiate message to the PCC tail node (for example, the tail node of the network slice), and the PCInitiate message carries the first information.
[0219] H8. The PCC egress node feeds back a PCRpt message to the PCE. The PCRpt message carries the first information.
[0220] H9. The PCE sends a path update request (Path Computation LSP UpdateRequest, PCUpd) message to the PCC head node. The PCUpd message is used to update LSP information.
[0221] In step H9, when all nodes through which the network slice passes successfully complete the configuration of the network slice and resource reservation, the PCE notifies the PCC head node through the PCUpd message to set the status of the network slice to "Up".
[0222] H10. The PCC head node feeds back a PCRpt message to the PCE.
[0223] In step H10, the PCC head node feeds back the status information of the network slice to the PCE through a PCRpt message.
[0224] Implementation method 2: Path Computation Unit-Initiated (PCC-Initiated) method. PCC-Initiated is initiated by the PCC. For ease of understanding, please refer to Figure 17 , Figure 17 This is another flow diagram of sending the first information through PCEP in an embodiment of the present application. The specific process of sending the first information through PCC-Initiated includes:
[0225] J1. The PCC head node sends a PCRpt message to the PCE. The PCC head node requests the PCE to host the network slice and perform path calculation for the network slice. In response to the PCRpt message, the PCE calculates a path based on the network topology and cache information reported by multiple nodes.
[0226] J2. The PCE sends a PCInitiate message to the PCC head node.
[0227] J3. The PCC head node feeds back a PCRpt message to the PCE.
[0228] J4. PCE sends a PCInitiate message to the PCC intermediate node (for example, the intermediate node of the network slice), carrying the first information.
[0229] J5. The PCC intermediate node (for example, the intermediate node of the network slice) feeds back a PCRpt message to the PCE, carrying the first information.
[0230] J6. PCE sends a PCInitiate message to the PCC tail node (for example, the tail node of the network slice), carrying the first information.
[0231] J7. The PCC tail node (for example, the tail node of the network slice) sends a PCRpt message to the PCE, carrying the first information.
[0232] In steps J3, J5, and J7, after the node completes the configuration and resource reservation of the network slice, it feeds back a PCRpt message to the PCE, indicating that the node has completed the configuration and resource reservation of the network slice. If there is a PCC intermediate node configuration failure or resource reservation failure, a Path Computation Error (PCErr) message is fed back to the PCE. Optionally, in response to the PCErr message, the PCE recalculates the path.
[0233] J8. The PCE sends a PCUpd message to the PCC head node.
[0234] In step J8, when all nodes through which the network slice passes successfully complete the configuration of the network slice and resource reservation, the PCE notifies the PCC head node through the PCUpd message to set the status of the network slice to "Up".
[0235] D4. The communication device allocates a first bandwidth resource corresponding to the first bandwidth value to the network slice based on the first information.
[0236] In step D4, after the communication device (node) receives the first information, it allocates the first bandwidth resource corresponding to the first bandwidth value to the network slice according to the first information to ensure that the lower limit of the available bandwidth of the network slice reaches the first bandwidth value.
[0237] D5. When the bandwidth resources requested by the network slice exceed the first bandwidth resources, the communication device allocates second bandwidth resources corresponding to the second bandwidth value to the network slice.
[0238] In step D5, after receiving the first information, the communication device (node) reserves a second bandwidth resource corresponding to the second bandwidth value for the network slice based on the first information. When the bandwidth resource requested by the network slice exceeds the first bandwidth resource, the communication device allocates the second bandwidth resource corresponding to the second bandwidth value to the network slice.
[0239] In an embodiment of the present application, a first bandwidth resource corresponding to a first bandwidth value is configured for a network slice using first information. The first information can also be used to allocate a second bandwidth resource corresponding to a second bandwidth value to the network slice when the bandwidth resource requested by the network slice exceeds the first bandwidth resource, where the second bandwidth value is greater than the first bandwidth value. This allows the network slice to cope with burst traffic, ensures normal transmission of the services carried by the network slice, meets the dynamically changing data transmission requirements of the services carried by the network slice, and improves the user experience. In addition, there is no need to pre-configure a large rigid bandwidth for the network slice, avoiding the waste of bandwidth resources and saving user costs.
[0240] In combination with the above embodiments, the following describes an application scenario proposed by the embodiment of the present application. Figure 21 , Figure 21 The following is a schematic diagram of an application scenario in an embodiment of the present application. An application scenario proposed in an embodiment of the present application includes: a source device (access network device), a communication device (nodes A to H), a receiving device (core network), and a controller that manages the above nodes A to H.
[0241] S1. Nodes A to H report attribute information of each node in the network to the controller, where the attribute information includes cache information.
[0242] S2. The controller obtains the path calculation requirement information.
[0243] S3. The controller calculates the path based on the path calculation requirement information and the attribute information (cache information) of the node, determines the network slice and determines the first information.
[0244] Exemplarily, the nodes that the network slice passes through include: node A, node B, node C and node D.
[0245] S4. The controller sends the first information to the nodes corresponding to the network slice (for example, node A, node B, node C and node D).
[0246] S5. The nodes corresponding to the network slice (for example, node A, node B, node C, and node D) create a network slice according to the first information sent by the controller. The bandwidth of the network slice is allowed to change from the first bandwidth value to the second bandwidth value, and the second bandwidth value is greater than the first bandwidth value.
[0247] In combination with the foregoing embodiments, the communication device 2200 of an embodiment of the present application is introduced below. The communication device 2200 introduced below has any functions of the communication device or controller in the foregoing method embodiments.
[0248] Figure 22 A schematic diagram of the structure of a communication device 2200 provided in an embodiment of the present application is shown in FIG. Figure 22As shown, the communication device 2200 includes: a transceiver module 2201 for executing step D1 or step D3; a processing module 2202 for executing step D4 or step D5. The processing module 2202 is also used to execute step D2.
[0249] In one example, the communication device 2200 is applied to the communication device (node) of the aforementioned embodiment, and the communication device 2200 includes:
[0250] The transceiver module 2201 is configured to receive first information, where the first information indicates a first bandwidth value and a second bandwidth value, where the second bandwidth value is greater than the first bandwidth value;
[0251] The processing module 2202 is configured to allocate a first bandwidth resource corresponding to the first bandwidth value to the network slice according to the first information;
[0252] Processing module 2202 is also used to allocate second bandwidth resources corresponding to the second bandwidth value to the network slice when the bandwidth resources requested by the network slice exceed the first bandwidth resources.
[0253] In a possible implementation, the first information includes: the first bandwidth value and the second bandwidth value;
[0254] Alternatively, the first information includes: the first bandwidth value and a third bandwidth value, and the sum of the first bandwidth value and the third bandwidth value is the second bandwidth value;
[0255] Alternatively, the first information includes: the first bandwidth value and first indication information, and the first indication information is used to determine the second bandwidth value.
[0256] In a possible implementation, the sum of the bandwidth value of the second bandwidth resource and the bandwidth value of the first bandwidth resource is less than or equal to the second bandwidth value.
[0257] In a possible implementation, the first bandwidth value is equal to 0.
[0258] In one possible implementation, the processing module 2202 is also used to allocate the second bandwidth resource to the network slice from the bandwidth resource pool, the bandwidth resource pool provides idle bandwidth resources, and the bandwidth resource pool supports allocation of bandwidth resources to one or more network slices.
[0259] In one possible implementation,
[0260] The transceiver module 2201 is also used to send cache information, and the cache information is used as a path constraint factor for determining the network slice.
[0261] In one possible implementation, the cache information of the one or more nodes is carried in an Interior Gateway Protocol Link Tag Length Value (IGP link TLV) field;
[0262] Alternatively, the cache information of the one or more nodes is carried in a layer 2 bundle member attribute tag length value L2BundleMemberAttribute TLV field;
[0263] Alternatively, the cache information of the one or more nodes is carried in a LinkAttribute TLV field;
[0264] Alternatively, the cache information of the one or more nodes is carried in a LinkDescriptors TLV field.
[0265] In one possible implementation, the cache information includes any one or more of the following:
[0266] The maximum cache value of a node, the remaining cache value of the node, the maximum cache value of a board, the remaining cache value of the board, the maximum cache value of a port, or the remaining cache value of the port, wherein the node includes one or more boards, and the board includes one or more ports.
[0267] In one possible implementation,
[0268] The transceiver module 2201 is further configured to receive a configuration model of the network configuration protocol NETCONF, where the configuration model of the network configuration protocol includes the first information;
[0269] Alternatively, the transceiver module 2201 is further configured to receive a configuration model of a command line, where the configuration model of the command line includes the first information;
[0270] Alternatively, the transceiver module 2201 is further configured to receive a YANG configuration model, where the YANG configuration model includes the first information.
[0271] In one possible implementation,
[0272] The transceiver module 2201 is further configured to receive a Border Gateway Protocol (BGP) address family, where the BGP address family includes the first information.
[0273] In one possible implementation, the first information is carried in the network slice identifier sub-tag length value slice ID sub-TLV field included in the BGP address family.
[0274] In one possible implementation,
[0275] The transceiver module 2201 is further configured to receive a CCI object from the central controller, where the CCI object includes the first information.
[0276] In a possible implementation, the CCI object includes an optional type length value optional TLV field, and the optional TLV field is used to carry the first information.
[0277] In one possible implementation,
[0278] The transceiver module 2201 is also used to receive an explicit routing object ERO, which includes identification information of the network slice.
[0279] In a possible implementation, the first bandwidth value is a committed information rate CIR, and the second bandwidth value is a peak information rate PIR.
[0280] In another example, the communication device 2200 is applied to a controller, and the communication device 2200 includes:
[0281] The transceiver module 2201 is used to send first information, where the first information indicates a first bandwidth value and a second bandwidth value, and the second bandwidth value is greater than the first bandwidth value, wherein the first bandwidth value is used to indicate that a first bandwidth resource corresponding to the first bandwidth value is allocated to the network slice, and the second bandwidth value is used to indicate that when the bandwidth resource requested by the network slice exceeds the first bandwidth resource, a second bandwidth resource corresponding to the second bandwidth value is allocated to the network slice.
[0282] In a possible implementation, the first information includes the first bandwidth value and the second bandwidth value;
[0283] Alternatively, the first information includes: the first bandwidth value and a third bandwidth value, and the sum of the first bandwidth value and the third bandwidth value is the second bandwidth value;
[0284] Alternatively, the first information includes: the first bandwidth value and first indication information, and the first indication information is used to determine the second bandwidth value.
[0285] In a possible implementation, the sum of the bandwidth value of the second bandwidth resource and the bandwidth value of the first bandwidth resource is less than or equal to the second bandwidth value.
[0286] In a possible implementation, the first bandwidth value is equal to 0.
[0287] In one possible implementation,
[0288] The transceiver module 2201 is also used to send the first information to one or more hop nodes through which the network slice passes.
[0289] In one possible implementation,
[0290] The transceiver module 2201 is also used to send the first information to the head node of the network slice.
[0291] In a possible implementation, the first information includes any one or more of the following: identification information of the network slice, a network slice cache value, or a cache waterline threshold;
[0292] The network slice cache value indicates the size of cache resources reserved by the node carrying the network slice for the network slice, and the cache resources are used to cache data carried by the network slice.
[0293] The cache waterline threshold indicates the cache waterline size of the cache resource when network congestion occurs in the network slice.
[0294] In a possible implementation, the network slice cache value includes: a static network slice cache value, or a dynamic network slice cache value;
[0295] The static network slice cache value indicates the size of a fixed cache resource reserved by the node carrying the network slice for the network slice, and the fixed cache resource is only used to cache data of the network slice;
[0296] The dynamic network slice cache value indicates the size of the dynamic cache resources reserved for the network slice by the node carrying the network slice, and the dynamic cache resources support caching data of one or more network slices.
[0297] In one possible implementation,
[0298] The transceiver module 2201 is also used to obtain cache information of one or more nodes, and the cache information of the one or more nodes is used as a path constraint factor for determining the network slice.
[0299] In one possible implementation, the cache information of the one or more nodes is carried in an Interior Gateway Protocol Link Tag Length Value (IGP link TLV) field;
[0300] Alternatively, the cache information of the one or more nodes is carried in a layer 2 bundle member attribute tag length value L2BundleMemberAttribute TLV field;
[0301] Alternatively, the cache information of the one or more nodes is carried in a LinkAttribute TLV field;
[0302] Alternatively, the cache information of the one or more nodes is carried in a LinkDescriptors TLV field.
[0303] In one possible implementation, the cache information of the one or more nodes includes any one or more of the following:
[0304] The maximum cache value of the node, the remaining cache value of the node, the maximum cache value of the single board, the remaining cache value of the single board, the maximum cache value of the port, or the remaining cache value of the port, wherein the node includes one or more of the single boards, and the single board includes one or more of the ports.
[0305] In one possible implementation,
[0306] The transceiver module 2201 is further configured to obtain path calculation requirement information, where the path calculation requirement information includes any one or more of the following: path calculation target information, path calculation constraint information, or service level agreement (SLA) requirement information, wherein the path calculation target information includes minimizing the cache occupancy of the node, and the path calculation constraint information includes a first bandwidth resource constraint, a second bandwidth resource constraint, and / or a cache occupancy constraint of the node;
[0307] The processing module 2202 is further configured to determine the first information according to the path calculation requirement information and the cache information of the one or more nodes.
[0308] In one possible implementation,
[0309] The transceiver module 2201 is further configured to send a configuration model of the network configuration protocol NETCONF, where the configuration model of the network configuration protocol includes the first information;
[0310] Alternatively, the transceiver module 2201 is further configured to send a configuration model of a command line, where the configuration model of the command line includes the first information;
[0311] Alternatively, the transceiver module 2201 is further configured to send a YANG configuration model, where the YANG configuration model includes the first information.
[0312] In one possible implementation,
[0313] The transceiver module 2201 is further configured to send a Border Gateway Protocol BGP address family, where the BGP address family includes the first information.
[0314] In one possible implementation, the first information is carried in the network slice identifier sub-tag length value slice ID sub-TLV field included in the BGP address family.
[0315] In one possible implementation,
[0316] The transceiver module 2201 is further configured to send a central controller description CCI object, where the CCI object includes the first information.
[0317] In a possible implementation, the CCI object includes an optional type length value optional TLV field, and the optional TLV field is used to carry the first information.
[0318] In one possible implementation,
[0319] The transceiver module 2201 is also used to send an explicit routing object ERO, which includes identification information of the network slice.
[0320] In a possible implementation, the first bandwidth value is a committed information rate CIR, and the second bandwidth value is a peak information rate PIR.
[0321] The communication device 2200 can correspond to the communication device or controller in the above-mentioned method embodiment. The various units in the communication device 2200 and the above-mentioned other operations and / or functions are respectively for implementing the various steps and methods implemented by the communication device or controller in the method embodiment. For specific details, please refer to the above-mentioned method embodiment. For the sake of brevity, they will not be repeated here.
[0322] When the communication device 2200 processes a message, the division of the above functional modules is used as an example for illustration. In actual application, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the communication device 2200 is divided into different functional modules to complete all or part of the functions described above. Figure 4-Figure 21 The corresponding embodiment methods belong to the same concept, and their specific implementation processes are detailed in the above method embodiments, which will not be repeated here.
[0323] In order to implement the above embodiment, the present application also provides a communication device. Figure 23 , Figure 23 A schematic structural diagram of a communication device 2300 provided in an embodiment of the present application.
[0324] Figure 23 Although the communication device 2300 shown shows certain specific features, those skilled in the art will appreciate from the embodiments of the present application that for the sake of brevity, Figure 23Various other features are not shown to avoid obscuring more relevant aspects of the embodiments disclosed in the embodiments of the present application. To this end, as an example, in some implementations, the communication device 2300 includes one or more processing units (e.g., CPU) 2301, a network interface 2302, a programming interface 2303, a memory 2304, and one or more communication buses 2305 for interconnecting the various components. In other implementations, the communication device 2300 may also omit or add some functional components or units based on the above examples.
[0325] In some implementations, the network interface 2302 is used to connect to one or more other communication devices / servers in the communication system. In some implementations, the communication bus 2305 includes circuits that interconnect and control communication between system components. The memory 2304 may include non-volatile memory, such as read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The memory 2304 may also include volatile memory, which may be random access memory (RAM) that is used as an external cache.
[0326] In some implementations, memory 2304 or the non-transitory computer-readable storage medium of memory 2304 stores the following programs, modules, and data structures, or a subset thereof, including, for example, a transceiver unit (not shown), an acquisition unit 23041, and a processing unit 23042.
[0327] In a possible embodiment, the communication device 2300 may have the above Figure 4-Figure 21 Any function in the communication device or controller in the corresponding method embodiment.
[0328] It should be understood that the communication device 2300 corresponds to the communication device or controller in the above method embodiment, and the various modules in the communication device 2300 and the above other operations and / or functions are respectively for implementing the various steps and methods implemented by the communication device or controller in the above method embodiment. For specific details, please refer to the above Figure 4-Figure 21 For the sake of brevity, the corresponding method embodiments are not described here in detail.
[0329] It should be understood that in this application, the data sending and receiving operations can be completed by the network interface 2302 on the communication device 2300, or the processor can call the program code in the memory and cooperate with the network interface 2302 when necessary to implement the functions of the sending and receiving unit.
[0330] In various implementations, the communication device 2300 is used to execute the network slicing configuration method provided in the embodiment of the present application, for example, to execute the above Figure 4-Figure 21 The configuration method of the network slice corresponding to the embodiment shown.
[0331] This application Figure 23 The specific structure of the communication device can be Figure 24 shown.
[0332] Figure 24 A schematic structural diagram of a communication device 2400 provided in an embodiment of the present application.
[0333] The communication device 2400 includes a main control board 2410 and an interface board 2430 .
[0334] Main control board 2410, also known as the main processing unit (MPU) or route processor, is used to control and manage various components in communication device 2400, including routing calculation, device management, device maintenance, and protocol processing. Main control board 2410 includes a central processing unit 2411 and memory 2412.
[0335] Interface board 2430 is also known as a line processing unit (LPU), line card, or service board. It provides various service interfaces and implements data packet forwarding. Service interfaces include, but are not limited to, Ethernet interfaces and POS (Packet over SONET / SDH) interfaces. Interface board 2430 includes a central processing unit (CPU) 2431, a network processor (NPU) 2432, a forwarding table memory 2434, and a physical interface card (PIC) 2433.
[0336] The central processing unit 2431 on the interface board 2430 is used to control and manage the interface board 2430 and communicate with the central processing unit 2411 on the main control board 2410 .
[0337] The network processor 2432 is used to implement packet forwarding processing and can be in the form of a forwarding chip.
[0338] The physical interface card 2433 is used to implement the physical layer docking function. The original traffic enters the interface board 2430 from this, and the processed message is sent from the physical interface card 2433. The physical interface card 2433 includes at least one physical interface, which is also called a physical port. The physical interface can be a Flexible Ethernet (FlexE) physical interface. The physical interface card 2433 is also called a daughter card and can be installed on the interface board 2430. It is responsible for converting the optical and electrical signals into messages and performing a validity check on the messages before forwarding them to the network processor 2432 for processing. In some embodiments, the central processing unit 2431 of the interface board 2430 can also perform the functions of the network processor 2432, such as implementing software forwarding based on a general-purpose CPU, so that the network processor 2432 is not required in the interface board 2430.
[0339] Optionally, the communication device 2400 includes multiple interface boards. For example, the communication device 2400 further includes an interface board 2440 . The interface board 2440 includes: a central processing unit 2441 , a network processor 2442 , a forwarding table entry memory 2444 and a physical interface card 2443 .
[0340] Optionally, the communication device 2400 further includes a switching fabric board 2423. The switching fabric board 2423 may also be referred to as a switch fabric unit (SFU). If the communication device includes multiple interface boards 2430, the switching fabric board 2423 is used to exchange data between the interface boards. For example, the interface board 2430 and the interface board 2440 can communicate via the switching fabric board 2423.
[0341] The main control board 2410 is coupled to the interface board. For example, the main control board 2410, the interface board 2430, the interface board 2440, and the switching network board 2423 are interconnected via a system bus and / or a system backplane. In one possible implementation, an inter-process communication (IPC) channel is established between the main control board 2410 and the interface board 2430, and communication between the main control board 2410 and the interface board 2430 is performed via the IPC channel.
[0342] Logically, communication device 2400 comprises a control plane and a forwarding plane. The control plane includes a main control board 2410 and a central processing unit 2431. The forwarding plane includes various components that perform forwarding, such as a forwarding table entry memory 2434, a physical interface card 2433, and a network processor 2432. The control plane performs functions such as publishing routes, generating forwarding tables, processing signaling and protocol messages, and configuring and maintaining device status. The control plane sends the generated forwarding table to the forwarding plane. On the forwarding plane, the network processor 2432 forwards messages received by the physical interface card 2433 based on the forwarding table sent by the control plane. The forwarding table sent by the control plane can be stored in the forwarding table entry memory 2434. In some embodiments, the control plane and forwarding plane can be completely separate and not located on the same device.
[0343] It should be understood that the transceiver unit in the communication device 2300 can be equivalent to the physical interface card 2433 or the physical interface card 2443 in the communication device 2400; the acquisition unit 23041 and the processing unit 23042 in the communication device 2300 can be equivalent to the central processing unit 2411 or the central processing unit 2431 in the communication device 2400, or can be equivalent to the program code or instructions stored in the memory 2412.
[0344] It should be understood that the operations on interface board 2440 in the embodiment of the present application are consistent with those on interface board 2430, and for the sake of brevity, detailed description thereof will be omitted. It should be understood that the communication device 2400 of this embodiment may correspond to the communication device or controller in each of the above-mentioned method embodiments, and the main control board 2410, interface board 2430, and / or interface board 2440 in the communication device 2400 may implement the functions and / or various steps performed by the communication device or controller in each of the above-mentioned method embodiments, and for the sake of brevity, detailed description thereof will be omitted.
[0345] It's worth noting that there may be one or more main control boards (SBCs), which may include a primary SBC and a backup SBC. There may be one or more interface boards. The higher the data processing capability of a communication device, the more interface boards are provided. An interface board may also have one or more physical interface cards. There may be no SBCs, or one or more. Multiple SBCs can be used to achieve load balancing and redundant backup. In a centralized forwarding architecture, a communication device may not require a SBC; the interface board handles service data processing for the entire system. In a distributed forwarding architecture, a communication device may have at least one SBC, which enables data exchange between multiple interface boards, providing high-capacity data exchange and processing capabilities. Alternatively, a communication device may have only one SBC, i.e., no SBC. The functions of the interface board and the SBC are integrated on this single SBC. In this case, the central processing unit (CPU) on the interface board and the CPU on the SBC can be combined into a single CPU on this single SBC, performing the combined functions of the two. The specific architecture to be adopted depends on the specific network deployment scenario and is not intended to be exclusive here.
[0346] In some possible embodiments, the communication device or controller may be implemented as a virtualized device. The virtualized device may be a virtual machine (VM), a virtual router, or a virtual switch running a program for sending messages. The virtualized device is deployed on a hardware device (e.g., a physical server). For example, the communication device or controller may be implemented based on a general-purpose physical server in combination with network function virtualization (NFV) technology.
[0347] It should be understood that the communication devices in the various product forms described above respectively have any functions of the communication device or controller in the above method embodiments, which will not be described in detail here.
[0348] An embodiment of the present application also provides a computer-readable storage medium, comprising instructions, which, when executed on a computer, enables the computer to control a computing device to execute any one of the implementation methods shown in the aforementioned method embodiments.
[0349] An embodiment of the present application also provides a computer program product, which includes computer program code. When the computer program code runs on a computer, it enables the computer to execute any one of the implementation methods shown in the aforementioned method embodiments.
[0350] Furthermore, the embodiment of the present application also provides a computer program product, which, when executed on a communication device, enables the communication device to execute the above Figure 4-Figure 21 The method is performed by the communication device or controller in the corresponding method embodiment.
[0351] The present application also provides a chip system including a processor and an interface circuit, wherein the interface circuit is configured to receive instructions and transmit them to the processor, wherein the processor is configured to implement any of the above method embodiments.
[0352] Optionally, the chip system further includes a memory, and the chip system may include one or more processors. The processor may be implemented in hardware or software. When implemented in hardware, the processor may be a logic circuit, an integrated circuit, etc. When implemented in software, the processor may be a general-purpose processor that implements any of the above method embodiments by reading software code stored in the memory.
[0353] Optionally, the memory in the chip system may be one or more memories. The memory may be integrated with the processor or may be provided separately from the processor, which is not limited in this application. For example, the memory may be a non-transient processor, such as a read-only memory (ROM), which may be integrated with the processor on the same chip or provided on different chips. This application does not specifically limit the type of memory or the configuration of the memory and the processor.
[0354] See also Figure 25 , Figure 25 This is a schematic diagram of a communication system 2500 proposed in an embodiment of the present application. The communication system 2500 includes: a first device 2501, a second device 2502, and a controller 2503. The first device 2501 and the second device 2502 can be, for example, physical devices such as routers, switches, or gateways, or virtual devices that support route publishing and message forwarding. This embodiment does not limit the specific types of the first device 2501 and the second device 2502. The controller 2503 can be a server or computing device that manages the first device 2501 and the second device 2502. Optionally, the first device 2501 can be a communication device 2200, a communication device 2300, or a communication device 2400. Optionally, the second device 2502 can be a communication device 2200, a communication device 2300, or a communication device 2400. Optionally, the controller 2503 can be a communication device 2200, a communication device 2300, or a communication device 2400.
[0355] The above describes the embodiments of the present application in detail. The steps in the method of the embodiments of the present application can be scheduled sequentially, merged or deleted according to actual needs; the modules in the device of the embodiments of the present application can be divided, merged or deleted according to actual needs.
[0356] It should be understood that “one embodiment” or “an embodiment” mentioned throughout the specification means that the specific features, structures or characteristics related to the embodiment are included in at least one embodiment of the present application. Therefore, “in one embodiment” or “in an embodiment” appearing throughout the specification does not necessarily refer to the same embodiment. In addition, these specific features, structures or characteristics can be combined in one or more embodiments in any suitable manner. It should be understood that in the various embodiments of the present application, the size of the sequence numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0357] The term "and / or" in this document simply describes a relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can mean: A exists alone, A and B exist simultaneously, or B exists alone. Additionally, the character " / " in this document generally indicates that the related objects are in an "or" relationship.
[0358] It should be understood that in the embodiments of the present application, "B corresponding to A" means that B is associated with A and B can be determined based on A. However, it should also be understood that determining B based on A does not mean determining B based solely on A, but B can also be determined based on A and / or other information.
[0359] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0360] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interface, device or unit, which can be electrical, mechanical or other forms.
[0361] Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0362] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
Claims
1. A method for configuring a network slice, characterized in that: The method comprises: receiving first information, where the first information indicates a first bandwidth value and a second bandwidth value, where the second bandwidth value is greater than the first bandwidth value; Allocate a first bandwidth resource corresponding to the first bandwidth value to the network slice according to the first information; When the bandwidth resources requested by the network slice exceed the first bandwidth resources, second bandwidth resources corresponding to the second bandwidth value are allocated to the network slice.
2. The method according to claim 1, characterized in that The first information includes: the first bandwidth value and the second bandwidth value; Alternatively, the first information includes: the first bandwidth value and a third bandwidth value, and the sum of the first bandwidth value and the third bandwidth value is the second bandwidth value; Alternatively, the first information includes: the first bandwidth value and first indication information, and the first indication information is used to determine the second bandwidth value.
3. The method according to claim 1 or 2, characterized in that The sum of the bandwidth value of the second bandwidth resource and the bandwidth value of the first bandwidth resource is less than or equal to the second bandwidth value.
4. The method according to any one of claims 1 to 3, characterized in that The first bandwidth value is equal to 0.
5. The method according to any one of claims 1 to 4, characterized in that The allocating a second bandwidth resource corresponding to the second bandwidth value to the network slice includes: The second bandwidth resource is allocated to the network slice from a bandwidth resource pool, the bandwidth resource pool provides idle bandwidth resources, and the bandwidth resource pool supports allocating bandwidth resources to one or more network slices.
6. The method according to any one of claims 1 to 5, characterized in that The method further comprises: Send cache information, which is used as a path constraint factor to determine the network slice.
7. The method according to claim 6, characterized in that The cache information of the one or more nodes is carried in the Interior Gateway Protocol Link Tag Length Value (IGP link TLV) field; Alternatively, the cache information of the one or more nodes is carried in a layer 2 bundle member attribute tag length value L2 BundleMember Attribute TLV field; Alternatively, the cache information of the one or more nodes is carried in a Link Attribute Tag Length Value (Link AttributeTLV) field; Alternatively, the cache information of the one or more nodes is carried in a LinkDescriptors TLV field.
8. The method according to claim 6 or 7, characterized in that The cache information includes any one or more of the following: The maximum cache value of a node, the remaining cache value of the node, the maximum cache value of a board, the remaining cache value of the board, the maximum cache value of a port, or the remaining cache value of the port, wherein the node includes one or more boards, and the board includes one or more ports.
9. The method according to any one of claims 1 to 8, characterized in that Receiving the first information includes: Receiving a configuration model of a network configuration protocol NETCONF, where the configuration model of the network configuration protocol includes the first information; Alternatively, receiving a configuration model of a command line, where the configuration model of the command line includes the first information; Alternatively, a YANG configuration model is received, where the YANG configuration model includes the first information.
10. The method according to any one of claims 1 to 9, characterized in that Receiving the first information includes: A Border Gateway Protocol (BGP) address family is received, where the BGP address family includes the first information.
11. The method according to claim 10, characterized in that The first information is carried in the network slice identifier sub-tag length value slice ID sub-TLV field included in the BGP address family.
12. The method according to any one of claims 1 to 9, characterized in that Receiving the first information includes: A central controller description CCI object is received, where the CCI object includes the first information.
13. The method according to claim 12, characterized in that The CCI object includes an optional type length value optional TLV field, and the optional TLV field is used to carry the first information.
14. The method according to claim 12 or 13, characterized in that The method also includes: receiving an explicit routing object ERO, wherein the ERO includes identification information of the network slice.
15. The method according to claims 1-14, characterized in that The first bandwidth value is a committed information rate CIR, and the second bandwidth value is a peak information rate PIR.
16. A method for configuring a network slice, characterized in that: The method is applied to a controller, and the method includes: Send first information, where the first information indicates a first bandwidth value and a second bandwidth value, where the second bandwidth value is greater than the first bandwidth value, wherein the first bandwidth value is used to indicate that a first bandwidth resource corresponding to the first bandwidth value is allocated to the network slice, and the second bandwidth value is used to indicate that when the bandwidth resource requested by the network slice exceeds the first bandwidth resource, a second bandwidth resource corresponding to the second bandwidth value is allocated to the network slice.
17. The method according to claim 16, characterized in that The first information includes the first bandwidth value and the second bandwidth value; Alternatively, the first information includes: the first bandwidth value and a third bandwidth value, and the sum of the first bandwidth value and the third bandwidth value is the second bandwidth value; Alternatively, the first information includes: the first bandwidth value and first indication information, and the first indication information is used to determine the second bandwidth value.
18. The method according to claim 16 or 17, characterized in that The sum of the bandwidth value of the second bandwidth resource and the bandwidth value of the first bandwidth resource is less than or equal to the second bandwidth value.
19. The method according to any one of claims 16 to 18, characterized in that The first bandwidth value is equal to 0.
20. The method according to any one of claims 16 to 19, characterized in that Sending the first information includes: Send the first information to one or more hop nodes that the network slice passes through.
21. The method according to claim 20, characterized in that Sending the first information to one or more hop nodes through which the network slice passes, comprising: Send the first information to the head node of the network slice.
22. The method according to any one of claims 16 to 21, characterized in that The first information includes any one or more of the following: identification information of the network slice, a network slice cache value, or a cache waterline threshold; The network slice cache value indicates the size of cache resources reserved by the node carrying the network slice for the network slice, and the cache resources are used to cache data carried by the network slice. The cache waterline threshold indicates the cache waterline size of the cache resource when network congestion occurs in the network slice.
23. The method according to claim 22, characterized in that The network slice cache value includes: Static network slice cache value, or dynamic network slice cache value; The static network slice cache value indicates the size of a fixed cache resource reserved by the node carrying the network slice for the network slice, and the fixed cache resource is only used to cache data of the network slice; The dynamic network slice cache value indicates the size of the dynamic cache resources reserved for the network slice by the node carrying the network slice, and the dynamic cache resources support caching data of one or more network slices.
24. The method according to any one of claims 16 to 23, characterized in that The method further comprises: Obtain cache information of one or more nodes, and use the cache information of the one or more nodes as a path constraint factor for determining a network slice.
25. The method according to claim 24, characterized in that The cache information of the one or more nodes is carried in the Interior Gateway Protocol Link Tag Length Value (IGP link TLV) field; Alternatively, the cache information of the one or more nodes is carried in a layer 2 bundle member attribute tag length value L2 BundleMember Attribute TLV field; Alternatively, the cache information of the one or more nodes is carried in a Link Attribute Tag Length Value (Link AttributeTLV) field; Alternatively, the cache information of the one or more nodes is carried in a LinkDescriptors TLV field.
26. The method according to claim 24 or 25, characterized in that The cache information of the one or more nodes includes any one or more of the following: The maximum cache value of the node, the remaining cache value of the node, the maximum cache value of the single board, the remaining cache value of the single board, the maximum cache value of the port, or the remaining cache value of the port, wherein the node includes one or more of the single boards, and the single board includes one or more of the ports.
27. The method according to any one of claims 24 to 26, characterized in that The method further comprises: Obtaining path calculation requirement information, the path calculation requirement information including any one or more of the following: path calculation target information, path calculation constraint information, or service level agreement (SLA) requirement information, wherein the path calculation target information includes: minimizing the cache occupancy of the node, and the path calculation constraint information includes: a first bandwidth resource constraint, a second bandwidth resource constraint, and / or a cache occupancy constraint of the node; The first information is determined according to the path calculation requirement information and the cache information of the one or more nodes.
28. The method according to any one of claims 16 to 27, characterized in that Sending the first information includes: Sending a configuration model of a network configuration protocol NETCONF, where the configuration model of the network configuration protocol includes the first information; Alternatively, sending a configuration model of a command line, where the configuration model of the command line includes the first information; Alternatively, a YANG configuration model is sent, where the YANG configuration model includes the first information.
29. The method according to any one of claims 16 to 27, characterized in that Sending the first information includes: A Border Gateway Protocol (BGP) address family is sent, where the BGP address family includes the first information.
30. The method according to claim 29, wherein The first information is carried in the network slice identifier sub-tag length value slice ID sub-TLV field included in the BGP address family.
31. The method according to any one of claims 16 to 27, wherein: Sending the first information includes: A central controller description CCI object is sent, where the CCI object includes the first information.
32. The method according to claim 31, characterized in that The CCI object includes an optional type length value optional TLV field, and the optional TLV field is used to carry the first information.
33. The method according to claim 31 or 32, characterized in that The method also includes: sending an explicit routing object ERO, wherein the ERO includes identification information of the network slice.
34. The method according to any one of claims 16 to 33, wherein: The first bandwidth value is a committed information rate CIR, and the second bandwidth value is a peak information rate PIR.
35. A communication device, characterized in that: The device includes multiple functional modules, which interact with each other to implement the method according to any one of claims 1 to 15.
36. A communication device, characterized in that The device is a controller, and the device includes multiple functional modules. The multiple functional modules interact with each other to implement the method according to any one of claims 16 to 34.
37. A communication device comprising a processor and a memory, wherein the memory is used to store program code, and the processor is used to call the program code in the memory so that the communication device executes the method according to any one of claims 1 to 34.
38. A computer-readable storage medium storing instructions, which, when executed on a computer, causes the computer to execute the method according to any one of claims 1 to 34.
39. A computer program product, characterized in that The computer program product comprises program codes, which, when a computer runs the computer program product, causes the computer to execute the method according to any one of claims 1 to 34.
Citation Information
Cited By
Intelligent scheduling method, system and equipment for computing power network and medium
CN121037225A