Routing method, routing apparatus, controller, and computer-readable storage medium

CN114938327BActive Publication Date: 2026-11-03ZTE CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202110153959.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-02-04
Publication Date
2026-11-03
Estimated Expiration
2041-02-04

AI Technical Summary

Technical Problem

Traditional queue-based resource allocation or scheduling strategies in SDN networks result in low routing efficiency, impacting user service quality, and taking a long time to compute feasible routes.

Method used

By horizontally slicing the physical network structure of the forwarding plane to form network slices with the same physical structure, the forwarding paths of each service are calculated in parallel, and reinforcement learning models are used to optimize service deployment and dynamically adjust bandwidth resources.

Benefits of technology

It improved network bandwidth resource utilization, enhanced the success rate and time efficiency of service routing, and ensured the quality of user service.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114938327B_ABST
    Figure CN114938327B_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a routing method, a routing device, a controller and a computer readable storage medium, comprising: receiving routing computation requests carrying first service information of a plurality of first services; determining, for each first service, a target network slice from a plurality of network slices according to the first service information, the plurality of network slices having the same physical structure and being divided by a physical network structure of a forwarding plane; determining first forwarding path information of the first service on the target network slice according to slice topology information of the target network slice corresponding to the first service and the first service information; and sending the first forwarding path information to a forwarding plane device to make the forwarding plane device forward the first service. Embodiments of the present application slice the network bandwidth of the forwarding plane physical network structure horizontally, and can calculate the forwarding path of each service in parallel, thereby improving the network bandwidth resource utilization, the service quality, the success rate and the time consumption performance of the service routing.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to, but are not limited to, the field of communication technology, and particularly to a routing method, routing device, controller, and computer-readable storage medium. Background Technology

[0002] In traditional technologies, queue management and scheduling are commonly used to fully utilize network resources for traffic scheduling. In SDN (Software Defined Networking), queue-based scheduling is widely used to ensure high QoS (Quality of Service). However, these queue-based resource allocation or scheduling strategies have the following drawbacks: they require real-time calculation of the remaining available bandwidth on network links to determine feasible routes for services, which is time-consuming. Furthermore, requests in the queue must be processed sequentially; traditional technologies can only perform route calculations serially. Therefore, traditional queue-based resource allocation or scheduling strategies severely impact routing efficiency and reduce user service quality. Summary of the Invention

[0003] The following is an overview of the subject matter described in detail herein. This overview is not intended to limit the scope of the claims.

[0004] This invention provides a routing method, routing device, controller, and computer-readable storage medium that can improve routing efficiency and enhance user service quality.

[0005] In a first aspect, embodiments of the present invention provide a routing method, including:

[0006] Receive multiple routing calculation requests for the first service, wherein the routing calculation requests carry first service information;

[0007] For each of the first services, the target network slice corresponding to the first service is determined from multiple network slices based on the first service information, wherein the multiple network slices have the same physical structure and are divided by the physical network structure of the forwarding plane;

[0008] Based on the slice topology information of the target network slice corresponding to the first service and the first service information, the first forwarding path information of the first service on the target network slice is determined;

[0009] The first forwarding path information is sent to the forwarding plane device so that the forwarding plane device forwards the first service according to the first forwarding path information.

[0010] Secondly, embodiments of the present invention also provide a routing device, comprising:

[0011] A request receiving unit is used to receive multiple routing calculation requests for a first service, wherein the routing calculation requests carry first service information;

[0012] A service deployment unit is used to determine the target network slice corresponding to the first service from multiple network slices based on the first service information for each first service, wherein the multiple network slices have the same physical structure and are divided by the physical network structure of the forwarding plane;

[0013] The path determination unit is used to determine the first forwarding path information of the first service on the target network slice based on the slice topology information of the target network slice corresponding to the first service and the first service information;

[0014] A path sending unit is used to send the first forwarding path information to the forwarding plane device so that the forwarding plane device forwards the first service according to the first forwarding path information.

[0015] Thirdly, embodiments of the present invention also provide a controller, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the routing method as described in the first aspect above.

[0016] Fourthly, embodiments of the present invention also provide a computer-readable storage medium storing computer-executable instructions for performing the routing method as described in the first aspect above.

[0017] This invention includes the following steps: a controller receives multiple routing calculation requests for first services, each request carrying first service information; the controller then determines a target network slice corresponding to each first service from multiple network slices based on the first service information, wherein the multiple network slices have the same physical structure and are partitioned by the physical network structure of the forwarding plane; the controller then determines a first forwarding path information for the first service on the target network slice based on the slice topology information of the target network slice and the first service information; finally, the controller sends the first forwarding path information to the forwarding plane device so that the forwarding plane device forwards the first service according to the first forwarding path information. According to the technical solution of this invention, by horizontally slicing the network bandwidth of the physical network structure of the forwarding plane and isolating the network slice bandwidth resources from each other, the forwarding paths of each service can be calculated in parallel. Therefore, this invention improves the utilization rate of network bandwidth resources and ensures the quality of service while also improving the success rate and time efficiency of service routing.

[0018] Other features and advantages of the invention will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the invention. The objects and other advantages of the invention may be realized and obtained by means of the structures particularly pointed out in the description, claims, and drawings. Attached Figure Description

[0019] The accompanying drawings are provided to further understand the technical solutions of the present invention and constitute a part of the specification. They are used together with the embodiments of the present invention to explain the technical solutions of the present invention, and do not constitute a limitation on the technical solutions of the present invention.

[0020] Figure 1 This is a schematic diagram of a system architecture platform for executing a routing method provided in an embodiment of the present invention;

[0021] Figure 2 This is a flowchart of a routing method provided in one embodiment of the present invention;

[0022] Figure 3 This is a flowchart of a service slice allocation method based on reinforcement learning in a routing method provided in an embodiment of the present invention;

[0023] Figure 4 This is a schematic diagram of the interaction process between an agent and the environment in reinforcement learning according to an embodiment of the present invention;

[0024] Figure 5 This is a flowchart of a method for dynamically adjusting bandwidth resources among network slices in a routing method provided by an embodiment of the present invention;

[0025] Figure 6 This is a flowchart of a routing method for recalculating routes for services that have failed to be deployed, provided in one embodiment of the present invention.

[0026] Figure 7 This is a flowchart of an overall routing method provided in one embodiment of the present invention;

[0027] Figure 8 This is a schematic diagram of dividing the physical network topology of the forwarding plane into multiple network slices according to an embodiment of the present invention;

[0028] Figure 9 This is a schematic diagram of the bandwidth resource status of each network slice after the deployment of the first three services, provided by an embodiment of the present invention.

[0029] Figure 10 This is a schematic diagram of the bandwidth resource status of each network slice after dynamically adjusting the bandwidth resources between network slices, provided by an embodiment of the present invention.

[0030] Figure 11This is a schematic diagram of a routing device provided in one embodiment of the present invention. Detailed Implementation

[0031] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.

[0032] It should be noted that although functional modules are divided in the device schematic diagram and a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the device or the order in the flowchart. The terms "first," "second," etc., in the specification, claims, or the aforementioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.

[0033] With the rapid development of network technologies such as SDN and NFV (Network Functions Virtualization), effectively utilizing limited network bandwidth resources and improving service routing efficiency while ensuring network quality has become a key research issue for various equipment manufacturers. In an SDN scenario, the controller can collect global topology information. When a batch of services need to be deployed, for example, when new user services are launched in batches or when network instability requires rerouting of affected services, decisions need to be made on how to deploy these services and ensure their QoS.

[0034] In traditional technologies, queue management and scheduling are commonly used to fully utilize network resources for traffic scheduling. Typically, packets in a queue may have different priorities; for example, a packet at the front may have a higher priority than others. In Floodlight-based SDN networks, queue-based scheduling techniques are widely used to ensure high QoS. This involves dividing the traffic to be transmitted into QoS flows and optimal flows, and allocating them to different queues according to priority. However, the aforementioned queue-based resource allocation or scheduling strategies have the following drawbacks: they require real-time calculation of the remaining available bandwidth on the network links to determine feasible routes for the service, which is time-consuming. Furthermore, requests in the queue need to be processed sequentially; that is, traditional techniques can only perform route calculations serially. Therefore, traditional queue-based resource allocation or scheduling strategies severely impact routing efficiency and reduce user service quality.

[0035] Based on the above, embodiments of the present invention provide a routing method, routing device, controller, and computer-readable storage medium. The routing method includes the following steps: receiving routing calculation requests for multiple first services, each request carrying first service information; for each first service, determining a target network slice corresponding to the first service from multiple network slices based on the first service information, wherein the multiple network slices have the same physical structure and are divided by the physical network structure of the forwarding plane; determining first forwarding path information for the first service on the target network slice based on the slice topology information of the target network slice corresponding to the first service and the first service information; and sending the first forwarding path information to a forwarding plane device to forward the first service according to the first forwarding path information. According to the technical solution of the embodiments of the present invention, by horizontally slicing the network bandwidth of the physical network structure of the forwarding plane and isolating the network slice bandwidth resources from each other, the forwarding paths of each service can be calculated in parallel. Therefore, the embodiments of the present invention can improve the utilization rate of network bandwidth resources and ensure the quality of service while also improving the success rate and time-consuming performance of service routing.

[0036] The embodiments of the present invention will be further described below with reference to the accompanying drawings.

[0037] like Figure 1 As shown, Figure 1 This is a schematic diagram of a system architecture platform 100 for executing routing methods provided in an embodiment of the present invention.

[0038] exist Figure 1 In this example, the system architecture platform 100 includes a processor 110 and a memory 120, which can be connected via a bus or other means. Figure 1 Taking the example of a connection between China and Israel via a bus.

[0039] Memory 120, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory 120 may include high-speed random access memory and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory 120 may optionally include memory remotely located relative to processor 110, and these remote memories can be connected to the system architecture platform via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.

[0040] Those skilled in the art will understand that this system architecture platform can be applied to 3G communication network systems, LTE communication network systems, 5G communication network systems and subsequent evolved mobile communication network systems, etc., and this embodiment does not specifically limit it in this regard.

[0041] It will be understood by those skilled in the art that Figure 1 The system architecture platform shown does not constitute a limitation on the embodiments of the present invention, and may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0042] exist Figure 1 In the system architecture platform shown, processor 110 can call the routing program stored in memory 120 to execute the routing method.

[0043] Based on the above system architecture platform, various embodiments of the routing method of the present invention are proposed below.

[0044] like Figure 2 As shown, Figure 2 This is a flowchart of a routing method provided in an embodiment of the present invention. The routing method includes, but is not limited to, steps S100, S200, S300 and S400.

[0045] Step S100: Receive multiple routing calculation requests for the first service, each routing calculation request carrying information about the first service.

[0046] Step S200: For each first service, determine the target network slice corresponding to the first service from multiple network slices based on the first service information, wherein the multiple network slices have the same physical structure and are divided by the physical network structure of the forwarding plane;

[0047] Step S300: Determine the first forwarding path information of the first service on the target network slice based on the slice topology information of the target network slice corresponding to the first service and the first service information;

[0048] Step S400: Send the first forwarding path information to the forwarding plane device so that the forwarding plane device forwards the first service according to the first forwarding path information.

[0049] According to the technical solution of the present invention, the present invention horizontally slices the network bandwidth of the physical network structure of the forwarding plane, and isolates the network slice bandwidth resources from each other, thereby enabling parallel calculation of the forwarding paths of each service. Therefore, the present invention can improve the network bandwidth resource utilization and ensure the service quality of services, while also improving the success rate and time consumption performance of service routing.

[0050] It should be noted that steps S100, S200, S300 and S400 can all be executed by the SDN controller.

[0051] It is understandable that the bandwidth of the aforementioned multiple network slices can be set uniformly or randomly.

[0052] In addition, it is understood that the slice topology information of the target network slice mentioned above may include, but is not limited to, node information, link bandwidth information and inherent link latency information.

[0053] In addition, it is understood that the aforementioned first business information may include, but is not limited to, source point information, destination point information, and service bandwidth information.

[0054] It is worth noting that the network slicing mentioned above involves dividing a physical network into multiple virtual end-to-end networks. In this embodiment of the invention, the network slicing is a horizontal slicing based on network bandwidth resources. That is, each network slice has the same physical structure, but the bandwidth resources are independent of each other, which is different from the traditional vertical slicing.

[0055] Regarding steps S100 and S200 above, when routing calculations are required for multiple first services in a batch, this embodiment of the invention can utilize a slicing structure to first assign slice affiliation to the multiple first services in a batch, that is, to first determine which network slice each first service should be deployed to. Since the scarcity of network slice bandwidth resources can cause some first services to fail to transmit, thus affecting the transmission success rate of the first services, this embodiment of the invention provides, based on the above-described network slicing architecture, the following... Figure 3 and Figure 5 The collaborative methods in, where, Figure 3 This is a flowchart of a service slice allocation method based on reinforcement learning in a routing method provided by an embodiment of the present invention, which determines which network slice each first service should be allocated to for deployment. Figure 5 This is a flowchart illustrating a method for dynamically adjusting bandwidth resources among network slices in a routing method provided by an embodiment of the present invention. By combining the two collaborative methods described above, this embodiment of the present invention can accelerate routing calculations without sacrificing deployment success rate or QoS.

[0056] like Figure 3 As shown, Figure 3 This is a flowchart of a service slice allocation method based on reinforcement learning in a routing method provided by an embodiment of the present invention. Regarding the above step S200, which determines the target network slice corresponding to the first service from multiple network slices based on the first service information, it includes, but is not limited to, step S500.

[0057] Step S500: Input the slice topology information of multiple network slices and the first service information into the service deployment model to obtain the target network slice corresponding to the first service. The service deployment model is trained by the slice topology information of multiple network slices and the second service information.

[0058] Specifically, before allocating a network slice to the first service, this embodiment of the invention also needs to train the required service deployment model through machine learning. Reinforcement learning (RL) is a branch of machine learning that primarily addresses how to take actions based on the environment to maximize cumulative expected returns. The reinforcement learning model includes a set of environmental states (State), a set of actions (A), state transition probabilities, and immediate rewards after state transitions. After the agent in reinforcement learning makes a decision, it can obtain rewards from the environment and learn a strategy to achieve a specific goal through continuous interaction with the environment. Therefore, in order to determine the network slice to deploy the first service based on the slice topology information of each network slice and the first service information, this embodiment of the invention needs to obtain a pre-trained service deployment model equivalent to the aforementioned agent before allocating the network slice to the first service.

[0059] It is understood that the reinforcement learning models mentioned above can be, but are not limited to, DQN (Deep Q-Network), DDPG (Deep Deterministic Policy Gradient), PPO (Proximal Policy Optimization), A3C (Asynchronous Advantage Actor-Critic), etc. The interaction process between the agent and the environment in reinforcement learning can be found in [reference needed]. Figure 4 As shown.

[0060] Specifically, in this embodiment of the invention, the network sharding problem can be modeled as a Markov decision problem, wherein the environmental state set State, action set A, reward function, and state transition probabilities in the model are as follows:

[0061] Regarding the state in the above model, it specifically refers to the information observed by the agent. This observed information includes two parts: one part is the slice topology information of all network slices, and the other part is the service information of the service to be deployed, i.e., State = {O}. s O f}, where O s The adjacency matrix represents the available bandwidth of each network slice, O fThis indicates the source and sink points of the service to be deployed, as well as the required bandwidth.

[0062] In addition, the action set A in the above model specifically refers to the slice index number to which each service to be deployed goes. For example, if there are k network slices, then the action set A = {1,2,…,k}.

[0063] Furthermore, the reward function in the above model could be: in This indicates whether service i can be successfully deployed to network slice j based on the model prediction result. If it is successful, the value is 1, and if it fails, the value is -1. This embodiment of the invention can design a reward function in this way, which can well reflect the correctness of the agent's decision.

[0064] Furthermore, regarding the state transition probability in the above model, the transition probability is deterministic, depending on the deployment method of the service, including the routing scheme and the dynamic resource adjustment strategy between bandwidths.

[0065] When the bandwidth resources of a network slice can meet the needs of the services to be deployed, it means that the agent has made the correct decision and will be rewarded. Conversely, incorrect decisions will always result in negative rewards.

[0066] like Figure 5 As shown, Figure 5 This is a flowchart of a method for dynamically adjusting bandwidth resources among network slices in a routing method provided by an embodiment of the present invention. When the above-mentioned multiple network slices include a first network slice and a second network slice, the first network slice includes a first link, and the second network slice includes a second link corresponding to the first link, the routing method of the embodiment of the present invention includes, but is not limited to, step S600.

[0067] In step S600, when the bandwidth of the first link is less than the bandwidth of all first services to be routed through the first link, the idle bandwidth of the second link is transferred to the first link so that the bandwidth of the first link is greater than or equal to the bandwidth of all first services to be routed through the first link.

[0068] According to the technical solution of the present invention, since network bandwidth and the characteristics of new services to be deployed are constantly changing, the network bandwidth in each network slice will gradually become unevenly distributed. In response, the present invention can, based on the current network bandwidth and service characteristics, rationally utilize the idle bandwidth in each network slice according to a certain adjustment strategy, thereby improving the utilization rate of network bandwidth and thus increasing the throughput of service deployment.

[0069] Specifically, embodiments of the present invention enable links frequently transmitted within network slices to obtain higher bandwidth, allowing network slices to dynamically adapt to changes in the scenario. For network slices, embodiments of the present invention include, but are not limited to, the following four operations: The first operation is receiving bandwidth replenishment, specifically referring to the second network slice transferring excess bandwidth resources to the current first network slice, and the current first network slice expanding the bandwidth of the links involved in the transfer; the second operation is route calculation, specifically referring to the service about to be allocated to the current first network slice performing route calculation according to its routing strategy; the third operation is responding to the first network slice's bandwidth expansion request, specifically referring to determining whether the transfer conditions are met for the resource transfer request sent by the current first network slice, and if so, transferring the excess bandwidth of the second network slice to the current first network slice; the fourth operation is sending a bandwidth request request. After the above route calculation is completed, the current network slice will deduct bandwidth resources for the service whose routing has ended. Due to the reduction of bandwidth resources on some links, a bandwidth expansion request can be sent to other slices, wherein the size of the expansion resources requested by the current network slice can be the bandwidth value of the service.

[0070] It is worth noting that for the above four operations on a single network slice, route calculation is performed sequentially with the other three operations. That is, route calculation is only performed once the network bandwidth resource status is fixed.

[0071] like Figure 6 As shown, Figure 6 This is a flowchart of a routing method for recalculating routes for a failed deployment service provided in an embodiment of the present invention. When the first service includes a failed deployment service for which the first forwarding path information calculation failed, the routing method of the present invention includes, but is not limited to, steps S710 and S720.

[0072] Step S710: Based on the first service information of the failed service deployment, calculate the second forwarding path information of the failed service on the physical network structure of the forwarding plane.

[0073] Step S720: Send the second forwarding path information to the forwarding plane device so that the forwarding plane device forwards the failed deployment service according to the second forwarding path information.

[0074] Specifically, after the routing calculation in step S300, it is possible that some services may fail to complete the routing calculation. Reasons for this failure include: bandwidth dilution resulting from dividing the network into multiple slices, making the bandwidth of each slice insufficient to support large services. To address this, this embodiment of the invention utilizes the original physical network structure to perform route recalculation for services that have failed to deploy, further ensuring that all services have reachable paths, thereby guaranteeing a high routing success rate.

[0075] Based on the above Figure 2 , Figure 3 , Figure 5 and Figure 6 The method steps described in this embodiment of the invention provide a flowchart of an overall routing method, such as... Figure 7 As shown. Among them, Figure 7 The overall routing method includes, but is not limited to, steps S801, S802, S803, S804, S805, S806, S807, S808, S809, and S810.

[0076] Step S801: The controller collects network topology information and second service information;

[0077] Specifically, the SDN controller collects various information, including network topology information of the forwarding plane and information about the secondary service to be forwarded. The forwarding plane devices then report this information to the SDN controller via a protocol.

[0078] It is understood that the network topology information mentioned above includes, but is not limited to, node information, link bandwidth information, and inherent link latency information. Among these, node information refers to information about routers, switches, or other network devices.

[0079] In addition, it is understood that the aforementioned second business information includes, but is not limited to, information such as source point information, destination point information, and service bandwidth size.

[0080] Step S802: Based on the collected network topology information, the physical network structure of the forwarding plane is divided into multiple network slices with the same physical structure.

[0081] Specifically, based on the network topology information collected in step S801 above, this embodiment of the invention initializes network bandwidth resources to form multiple isolated network slices.

[0082] It should be noted that the multiple isolated network slices formed in the embodiments of the present invention can provide an interactive environment for the deep reinforcement learning algorithm in subsequent steps.

[0083] In addition, it is understood that the method of dividing network slices in the embodiments of the present invention may be, but is not limited to, uniform bandwidth division or random division.

[0084] Step S803: Input the slice topology information of multiple network slices and multiple second service information into the service deployment model to obtain the trained service deployment model.

[0085] According to the technical solution of this embodiment of the invention, a deep reinforcement learning algorithm model is trained. Specifically, this embodiment simulates a real network slicing scenario and interacts with the network slicing environment in step S802, enabling the service deployment model to learn a service deployment strategy. The service deployment model in this embodiment is equivalent to the aforementioned intelligent agent. Specifically, the input to the service deployment model is the topology information of multiple network slices and the second service information of a batch of second services to be deployed. The output is the slice affiliation index of this batch of second services. This slice affiliation index clearly indicates the network slice to which each second service belongs. Through a certain number of interactions with the environment, the service deployment model can eventually learn a better allocation strategy, thereby obtaining a well-trained service deployment model to deploy new services.

[0086] It is understood that the slice topology information of the aforementioned multiple network slices specifically refers to the adjacency matrix of the topology graph, where each element of the matrix represents the link bandwidth value between two nodes. Additionally, it is understood that the aforementioned second service information includes, but is not limited to, source node information, destination node information, and service bandwidth size.

[0087] Step S804: Receive multiple routing calculation requests for the first service, each routing calculation request carrying information about the first service;

[0088] Specifically, after completing the network slicing and training the service deployment model, this embodiment of the invention can deploy new services. When this embodiment of the invention needs to deploy multiple new first services in batches, the SDN controller will receive batch routing calculation requests for multiple first services, wherein the routing calculation request carries first service information.

[0089] It is understandable that the aforementioned first business information includes, but is not limited to, source point information, destination point information, and service bandwidth size.

[0090] Step S805: Call the trained service deployment model and input the slice topology information of multiple network slices and multiple first service information into the service deployment model to obtain the slice belonging index of each first service.

[0091] Specifically, when the SDN controller receives batch routing calculation requests for multiple first services, in order to deploy the multiple first services better and more intelligently, this embodiment of the invention will call the trained service deployment model obtained in step S803 above, and take the first service information of the first service to be deployed and the slice topology information in each current network slice as input. Then the service deployment model will output the slice belonging index corresponding to each first service. Based on the slice belonging index, the target network slice to be deployed for each first service can be determined.

[0092] Step S806: Dynamically adjust bandwidth resources between network slices;

[0093] Specifically, because network bandwidth and the characteristics of new services are constantly changing, the network bandwidth across different network slices will gradually become unevenly distributed. Based on the current network bandwidth and service characteristics, and following a certain adjustment strategy, the idle bandwidth in each network slice can be rationally utilized to improve network bandwidth utilization and, consequently, increase the throughput of service deployments.

[0094] For example, the above-mentioned multiple network slices include a first network slice and a second network slice. The first network slice includes a first link, and the second network slice includes a second link corresponding to the first link. When the bandwidth of the first link is less than the bandwidth of all first services to be routed through the first link, the idle bandwidth of the second link is transferred to the first link so that the bandwidth of the first link is greater than or equal to the bandwidth of all first services to be routed through the first link.

[0095] Step S807: Calculate the first forwarding path information of each first service on the target network slice in parallel;

[0096] Specifically, based on the slice affiliation index corresponding to each first service obtained in step S805, the target network slice for each first service to be deployed can be determined. After dynamically adjusting the bandwidth resources between network slices, this embodiment of the invention will then calculate the first forwarding path information of each first service on its corresponding target network slice in parallel, based on the slice topology information and the first service information of the target network slice corresponding to the first service. This embodiment of the invention will then send the first forwarding path information to the forwarding plane device so that the forwarding plane device forwards the first service according to the first forwarding path information. This parallel calculation method can significantly reduce routing time. Simultaneously, the bandwidth resources between each network slice will continuously adjust to each other according to the strategy in step S806, thereby maximizing the utilization rate of network bandwidth resources.

[0097] Step S808: Determine if there is a first service that has failed to calculate the route. If there is a first service that has failed to calculate the route, proceed to step S809; otherwise, proceed to step S810.

[0098] Specifically, dividing the network into multiple slices will dilute the bandwidth, making the bandwidth of each slice insufficient to support large services. Therefore, when there is a primary service that requires a large amount of bandwidth, the routing calculation may fail.

[0099] Step S809: Perform route recalculation for the first service whose route calculation failed;

[0100] Specifically, when there is a first service that fails to calculate the route, this embodiment of the invention will perform route recalculation using the original physical network structure for the first service that failed to calculate the route, further ensuring that all services have reachable paths, thereby guaranteeing the routing success rate of services.

[0101] Step S810: End and output the route calculation results.

[0102] Based on the method steps in the above figures, the present invention provides a specific embodiment to illustrate the above method steps in detail, such as... Figures 8 to 10 As shown, where, Figure 8 This is a schematic diagram illustrating how the physical network topology of the forwarding plane is divided into multiple network slices according to an embodiment of the present invention. Figure 9 This is a schematic diagram of the bandwidth resource status of each network slice after the deployment of the first three services, provided by an embodiment of the present invention. Figure 10 This is a schematic diagram of the bandwidth resource status of each network slice after dynamically adjusting the bandwidth resources between network slices, according to an embodiment of the present invention.

[0103] like Figure 8 As shown, the original physical network topology T0 of the forwarding plane includes four nodes (A, B, C, D) and four links between the nodes. Each link has a corresponding current bandwidth and weight. It is assumed that the service is routed according to the minimum weight strategy. For example, as... Figure 8 As shown, the current bandwidth of the link between node A and node B in the original physical network topology T0 is 30, and the weight is 1; the current bandwidth of the link between node A and node C in the original physical network topology T0 is 30, and the weight is 1; the current bandwidth of the link between node B and node D in the original physical network topology T0 is 16, and the weight is 3; the current bandwidth of the link between node C and node D in the original physical network topology T0 is 30, and the weight is 1.

[0104] right Figure 8The original physical network topology T0 is divided into three network slices (T1, T2, and T3). In network slice T1, the current bandwidth of the link between nodes A and B is 12, with a weight of 1; the current bandwidth of the link between nodes A and C is 12, with a weight of 1; the current bandwidth of the link between nodes B and D is 5, with a weight of 3; and the current bandwidth of the link between nodes C and D is 12, with a weight of 1. In network slice T2, the current bandwidth of the link between nodes A and B is 10, with a weight of 1; the current bandwidth of the link between nodes A and C is 10, with a weight of 1; the current bandwidth of the link between nodes B and D is 3, with a weight of 3; and the current bandwidth of the link between nodes C and D is 10, with a weight of 1. The current bandwidth of the link between node A and node B in network slice T3 is 8, and the weight is 1; the current bandwidth of the link between node A and node C in network slice T3 is 8, and the weight is 1; the current bandwidth of the link between node B and node D in network slice T3 is 8, and the weight is 3; the current bandwidth of the link between node C and node D in network slice T3 is 8, and the weight is 1.

[0105] according to Figure 8 The original physical network topology T0, network slice T1, network slice T2, and network slice T3 show that the sum of the link bandwidths corresponding to all network slices equals the link bandwidth in the original physical network topology. For example, the link bandwidth between node A and node B in the original physical network topology T0 is equal to the sum of the link bandwidths between node A and node B in network slice T1, network slice T2, and network slice T3.

[0106] Based on the above Figure 8 In the slice partitioning results, when four services need to be deployed, this embodiment of the invention will call the pre-trained service deployment model to predict the deployment of the four services. Assume that the number "1" marks the successful deployment of a service in network slice T1, the number "2" marks the successful deployment of a service in network slice T2, and the number "3" marks the successful deployment of a service in network slice T3. When four services are deployed in network slices T1, T2, T3, and T2 respectively, and the output of the service deployment model is {1,2,3,2}.

[0107] Specifically, based on the results of the business deployment model, the current deployment status of the business is obtained. If the deployment status of the first three businesses is as shown in Table 1:

[0108] Business ID Source accommodation bandwidth Was the service successfully deployed before the bandwidth adjustment? Business 1 B D 10 Successfully deployed to network slice T1 Business 2 B D 10 Successfully deployed to network slice T2 Business 3 B D 5 Successfully deployed to network slice T3

[0109] Table 1

[0110] As shown in Table 1 above, the source node of Service 1 is Node B, the destination node is Node D, the bandwidth is 10, the current slice it belongs to is network slice T1, and it can be successfully assigned to network slice T1. The forwarding path of Service 1 in network slice T1 is from B through A and C to D. The source node of Service 2 is Node B, the destination node is Node D, the bandwidth is 10, the current slice it belongs to is network slice T2, and it can be successfully assigned to network slice T2. The forwarding path of Service 2 in network slice T2 is from B through A and C to D. The source node of Service 3 is Node B, the destination node is Node D, the bandwidth is 5, the current slice it belongs to is network slice T3, and it can be successfully assigned to network slice T3. The forwarding path of Service 3 in network slice T3 is from B to D.

[0111] After the deployment of Services 1, 2, and 3 is completed, the remaining bandwidth information in each network slice can be referenced. Figure 9 As shown, for network slice T1, the link bandwidth between node A and node B is reduced from 12 to 2, the link bandwidth between node A and node C is reduced from 12 to 2, and the link bandwidth between node C and node D is reduced from 12 to 2. Furthermore, for network slice T2, the link bandwidth between node A and node B is reduced from 10 to 0, the link bandwidth between node A and node C is reduced from 10 to 0, and the link bandwidth between node C and node D is reduced from 10 to 0. Additionally, for network slice T3, the link bandwidth between node B and node D is reduced from 8 to 3.

[0112] In addition, the deployment status of the fourth service is shown in Table 2:

[0113] Business ID Source accommodation bandwidth Was the service successfully deployed before the bandwidth adjustment? Business 4 B D 4 Deployment to network slice T2 failed

[0114] Table 2

[0115] As shown in Table 2 above, the source of service 4 is node B, the destination is node D, the bandwidth is 4, and the current slice it belongs to is network slice T2. The forwarding path is from B through A and C to D. After the deployment of services 1, 2, and 3, the link bandwidth between nodes A and B, between nodes A and C, and between nodes C and D in network slice T2 are all reduced to 0. Since service 4 requires a bandwidth of 4, the link bandwidth between nodes A and B, between nodes A and C, and between nodes C and D in network slice T2 cannot meet the bandwidth requirements of service 4. Therefore, service 4 will fail to deploy on network slice T2.

[0116] To address this, this embodiment of the invention dynamically adjusts the bandwidth resources between network slices. Since the link bandwidth between nodes A and B, between nodes A and C, and between nodes C and D in network slice T3 are all greater than the bandwidth required by service 4 after the deployment of services 1, 2, and 3, this embodiment directly allocates a portion of the bandwidth from B through A and C to D in network slice T3 to network slice T2. This ensures that the adjusted bandwidth of network slice T2 meets the bandwidth requirements of service 4. The bandwidth resource status of each network slice after the aforementioned dynamic adjustment can be referenced... Figure 10 As shown, this embodiment of the invention can effectively avoid a situation where a large amount of bandwidth resources in a certain network slice are idle, thereby successfully transmitting service 4. Specifically, the deployment of services 1, 2, 3, and 4 before and after dynamic adjustment is shown in Table 3:

[0117]

[0118] Table 3

[0119] According to the technical solutions of the above embodiments, the embodiments of the present invention can perform routing calculations in parallel based on a slicing architecture, significantly improving routing efficiency; and organically combining network resource allocation with service deployment to obtain better network resource allocation and service deployment strategies. Secondly, the embodiments of the present invention can use an offline method to train deep reinforcement learning algorithm models; in practical applications, only the stored service deployment model needs to be read, resulting in short processing time. Furthermore, the embodiments of the present invention use a network slicing architecture, combined with deep reinforcement learning algorithms, to perform rerouting in parallel, which can improve routing time performance by several times.

[0120] Based on the routing method described in the above embodiments, various embodiments of the routing device of the present invention are presented below.

[0121] like Figure 11 As shown, Figure 11 This is a schematic diagram of a routing device 200 provided in an embodiment of the present invention. The routing device 200 includes, but is not limited to, a request receiving unit 210, a service deployment unit 220, a path determination unit 230, and a path sending unit 240.

[0122] Specifically, the request receiving unit 210 is used to receive multiple routing calculation requests for first services, each routing calculation request carrying first service information; the service deployment unit 220 is used to determine the target network slice corresponding to the first service from multiple network slices based on the first service information for each first service, wherein the multiple network slices have the same physical structure and are divided by the physical network structure of the forwarding plane; the path determination unit 230 is used to determine the first forwarding path information of the first service on the target network slice based on the slice topology information of the target network slice corresponding to the first service and the first service information; the path sending unit 240 is used to send the first forwarding path information to the forwarding plane device so that the forwarding plane device forwards the first service according to the first forwarding path information.

[0123] In addition, the aforementioned service deployment unit 220 is also used to input the slice topology information of multiple network slices and the first service information into the service deployment model to obtain the target network slice corresponding to the first service. The service deployment model is trained by the slice topology information of multiple network slices and the second service information.

[0124] For reference Figure 11 As shown, regarding the routing device 200 described above, when multiple network slices include a first network slice and a second network slice, the first network slice includes a first link, and the second network slice includes a second link corresponding to the first link, the routing device 200 may also include, but is not limited to, a dynamic adjustment unit 250.

[0125] Specifically, the dynamic adjustment unit 250 is used to transfer the idle bandwidth of the second link to the first link when the bandwidth of the first link is less than the bandwidth of all first services to be routed through the first link, so that the bandwidth of the first link is greater than or equal to the bandwidth of all first services to be routed through the first link.

[0126] For reference Figure 11 As shown, regarding the routing device 200 described above, when the first service includes a deployment failure service where the first forwarding path information calculation fails, the routing device 200 further includes, but is not limited to, a failure service recalculation unit 260 and a failure service path sending unit 270.

[0127] Specifically, the failed service compensation unit 260 is used to calculate the second forwarding path information of the failed service on the physical network structure of the forwarding plane based on the first service information of the failed service; the failed service path sending unit 270 is used to send the second forwarding path information to the forwarding plane device so that the forwarding plane device forwards the failed service according to the second forwarding path information.

[0128] It is worth noting that the technical effects of the routing device in the embodiments of the present invention can be referred to the embodiments of the routing method described above.

[0129] Based on the above routing method, various embodiments of the controller and computer-readable storage medium of the present invention are presented below.

[0130] In addition, one embodiment of the present invention provides a controller, which includes: a memory, a processor, and a computer program stored in the memory and executable on the processor.

[0131] The processor and memory can be connected via a bus or other means.

[0132] It should be noted that the controller in this embodiment may include, for example, the controller with the following components: Figure 1 The memory and processor in the illustrated embodiment can constitute Figure 1 The system architecture platform shown in the embodiment is part of the same inventive concept, and therefore has the same implementation principle and beneficial effects, which will not be described in detail here.

[0133] Specifically, the controller in this embodiment of the invention can be an SDN controller.

[0134] The routing method or the non-transitory software program and instructions required to implement the routing method described in the above embodiments are stored in memory. When executed by a processor, the routing method described in the above embodiments is executed, for example, the method described above is executed. Figure 2 Method steps S100 to S400 in the text Figure 3 Method steps S500, Figure 5 Method steps S600, Figure 6 Method steps S710 to S720 in the text Figure 7 Method steps S801 to S810.

[0135] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0136] Furthermore, one embodiment of the present invention also provides a computer-readable storage medium storing computer-executable instructions, which, when used to execute the routing method described above, for example, execute the above-described... Figure 2 Method steps S100 to S400 in the text Figure 3 Method steps S500, Figure 5 Method steps S600, Figure 6 Method steps S710 to S720 in the text Figure 7 Method steps S801 to S810.

[0137] It will be understood by those skilled in the art that all or some of the steps and systems in the methods disclosed above can be implemented as software, firmware, hardware, and suitable combinations thereof. Some or all of the physical components can be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit. Such software can be distributed on a computer-readable medium, which can include computer storage media (or non-transitory media) and communication media (or transient media). As is known to those skilled in the art, the term computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to a computer. Furthermore, as is known to those skilled in the art, communication media typically include computer-readable instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.

[0138] The above provides a detailed description of the preferred embodiments of the present invention. However, the present invention is not limited to the above embodiments. Those skilled in the art can make various equivalent modifications or substitutions without departing from the spirit of the present invention. All such equivalent modifications or substitutions are included within the scope defined by the claims of the present invention.

Claims

1. A routing method, comprising: Receive multiple routing calculation requests for the first service, wherein the routing calculation requests carry first service information; For each of the first services, the target network slice corresponding to the first service is determined from multiple network slices based on the first service information. The multiple network slices have the same physical structure and are obtained by horizontal slicing of the network bandwidth of the physical network structure of the forwarding plane, and the network slice bandwidth resources are isolated from each other. Based on the slice topology information of the target network slice corresponding to the first service and the first service information, the first forwarding path information of each of the first services on their respective target network slices is calculated in parallel. The first forwarding path information is sent to the forwarding plane device so that the forwarding plane device forwards the first service according to the first forwarding path information.

2. The routing method according to claim 1, characterized in that, The step of determining the target network slice corresponding to the first service from multiple network slices based on the first service information includes: The slice topology information of multiple network slices and the first service information are input into the service deployment model to obtain the target network slice corresponding to the first service. The service deployment model is trained by the slice topology information of the multiple network slices and the second service information.

3. The routing method according to claim 1, characterized in that, The plurality of network slices includes a first network slice and a second network slice, the first network slice includes a first link, the second network slice includes a second link corresponding to the first link, and the routing method further includes: When the bandwidth of the first link is less than the bandwidth of all the first services to be routed through the first link, the idle bandwidth of the second link is transferred to the first link so that the bandwidth of the first link is greater than or equal to the bandwidth of all the first services to be routed through the first link.

4. The routing method according to claim 1, characterized in that, When the first service includes a deployment failure service where the calculation of the first forwarding path information fails, the routing method further includes: Based on the first service information of the failed deployment service, the second forwarding path information of the failed deployment service on the physical network structure of the forwarding plane is calculated; The second forwarding path information is sent to the forwarding plane device so that the forwarding plane device forwards the deployment failure service according to the second forwarding path information.

5. The routing method according to claim 1, characterized in that, The bandwidth of the multiple network slices is set uniformly or randomly.

6. The routing method according to any one of claims 1 to 5, characterized in that: The slice topology information of the target network slice includes node information, link bandwidth information, and inherent link latency information.

7. The routing method according to any one of claims 1 to 5, characterized in that: The first service information includes source information, destination information, and service bandwidth information.

8. A routing device, characterized in that, include: A request receiving unit is used to receive multiple routing calculation requests for a first service, wherein the routing calculation requests carry first service information; A service deployment unit is used to determine the target network slice corresponding to the first service from multiple network slices based on the first service information for each first service. The multiple network slices have the same physical structure and are obtained by horizontally slicing the network bandwidth of the physical network structure of the forwarding plane, and the network slice bandwidth resources are isolated from each other. The path determination unit is used to calculate, in parallel, the first forwarding path information of each of the first services on their respective corresponding target network slices based on the slice topology information of the target network slice corresponding to the first service and the first service information. The path sending unit is used to send the first forwarding path information to the forwarding plane device so that the forwarding plane device forwards the first service according to the first forwarding path information.

9. A controller, characterized in that, include: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, implements the routing method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, The device stores computer-executable instructions for performing the routing method as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Management method, system and device for transport network slices

    CN110855542A