Service path adjustment method and device

By determining the pre-deployment path in the network and updating the end-to-end delay, the problem that each service flow deployed requires re-judging the delay of all deployed service flows, achieving the effect of reducing network computing volume and reducing the complexity of service path measurement.

CN120075156APending Publication Date: 2025-05-30ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311615712.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-28
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

In the prior art, every time a service flow is deployed, it is necessary to re-judgment whether the end-to-end delay of all deployed service flows exceeds the delay requirement, resulting in huge computing volume and increasing network load.

Method used

By determining a pre-deployment path that meets the latency requirements of the service flow to be deployed, and updating the end-to-end delay of the deployed service flow based on the node's bandwidth utilization threshold and the port queue delay upper bound, business path adjustment is performed when the end-to-end delay is greater than the demand.

Benefits of technology

It reduces the amount of recomputation of the network, reduces the complexity of service path measurement, and avoids the problem of increasing network burden.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120075156A_ABST
    Figure CN120075156A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a service path adjusting method and device. The method comprises the following steps: determining a pre-deployment path meeting a time delay demand of a to-be-deployed service flow, and a bandwidth utilization rate of a first priority queue of each node in the pre-deployment path; correspondingly comparing the bandwidth utilization rate with the bandwidth utilization rate threshold value corresponding to each node, and determining a new bandwidth utilization rate threshold value corresponding to the node and a port queuing time delay upper bound under the condition that the node of which the bandwidth utilization rate is greater than the bandwidth utilization rate threshold value exists; and according to the new bandwidth utilization rate threshold and the port queuing time delay upper bound, updating the end-to-end time delay of the deployed service flow corresponding to the node, and carrying out service path adjustment under the condition that the end-to-end time delay is greater than the time delay demand of the deployed service flow. Through the embodiment of the invention, the problem that the network burden is increased due to the fact that whether the end-to-end time delay of all deployed service flows exceeds the time delay requirement or not needs to be re-judged when each service flow is deployed in the related technology is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to the field of network communication technologies, and in particular, to a service path adjustment method and apparatus. Background Art

[0002] The deterministic network provides end-to-end delay guarantee for deterministic service flows, and the end-to-end delay must be less than the end-to-end delay requirement of the service. After the deterministic service flow is deployed, the service path is fixed. However, as the number of service flows in the network increases, the end-to-end delay of the deployed deterministic service flow may change and no longer meet the requirement of the end-to-end delay of the service.

[0003] In the related art, the end-to-end delay of the service flow is mostly obtained through measurement or similar detection methods to check whether it meets the end-to-end delay requirement of the deterministic service flow. If the end-to-end delay of all the deployed service flows is rejudged every time a service flow is deployed, there will be a huge amount of calculation, which increases the load in the network, changes the packet encapsulation, and increases the processing flow of the device. Summary of the Invention

[0004] The embodiments of the present invention provide a service path adjustment method and apparatus to at least solve the problem in the related art that the end-to-end delay of all the deployed service flows needs to be rejudged every time a service flow is deployed, which increases the network burden.

[0005] According to an embodiment of the present invention, a service path adjustment method is provided, including: determining a pre-deployment path that meets the delay requirement of a service flow to be deployed, and the bandwidth utilization rate of the first priority queue of each node in the pre-deployment path; correspondingly comparing the bandwidth utilization rate with the bandwidth utilization rate threshold corresponding to each node, and in the case where there is a node with the bandwidth utilization rate greater than the bandwidth utilization rate threshold, determining the corresponding new bandwidth utilization rate threshold and the upper bound of the port queuing delay of the node; updating the end-to-end delay of the deployed service flow corresponding to the node according to the new bandwidth utilization rate threshold and the upper bound of the port queuing delay, and performing service path adjustment in the case where the end-to-end delay is greater than the delay requirement of the deployed service flow.

[0006] According to another embodiment of the present invention, a service path adjustment device is provided, including: a determination module, configured to determine a pre-deployment path that meets the latency requirements of the service flow to be deployed, and the bandwidth utilization rate of the first priority queue of each node in the pre-deployment path; a comparison module, configured to correspondingly compare the bandwidth utilization rate with the bandwidth utilization rate threshold corresponding to each node, and in the case where there is a node with the bandwidth utilization rate greater than the bandwidth utilization rate threshold, determine the new bandwidth utilization rate threshold and the upper bound of the port queuing latency corresponding to the node; an adjustment module, configured to update the end-to-end latency of the deployed service flow corresponding to the node according to the new bandwidth utilization rate threshold and the upper bound of the port queuing latency, and in the case where the end-to-end latency is greater than the latency requirement of the deployed service flow, perform service path adjustment.

[0007] According to still another embodiment of the present invention, a computer-readable storage medium is further provided. A computer program is stored in the computer-readable storage medium, wherein the computer program is configured to execute the steps in any one of the above method embodiments when running.

[0008] According to still another embodiment of the present invention, an electronic device is further provided, including a memory and a processor. A computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.

[0009] Through the above embodiments of the present invention, when the bandwidth utilization rate of the queue in a node exceeds the bandwidth utilization rate threshold, a new bandwidth utilization rate threshold and the upper bound of the queuing latency are determined, and it is not necessary to calculate once for each newly added service flow, which can greatly reduce the recalculation amount of the network. Therefore, it is possible to solve the problem in the related art that when deploying each service flow, it is necessary to re-determine whether the end-to-end latency of all deployed service flows exceeds the latency requirement, which will increase the network burden, and achieve the effect of reducing the complexity of service path measurement. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] Figure 1 is a hardware structure block diagram of a switch for operating the service path adjustment method according to an embodiment of the present invention;

[0011] Figure 2 is a network topology diagram of a deterministic network according to an embodiment of the present invention;

[0012] Figure 3 is a flowchart of the service path adjustment method according to an embodiment of the present invention;

[0013] Figure 4 is a structure block diagram of the service path adjustment device according to an embodiment of the present invention;

[0014] Figure 5It is a flowchart of a threshold selection and queuing delay calculation method according to an embodiment of the present invention;

[0015] Figure 6 It is a process of a new service deployment and path delay update method according to an embodiment of the present invention Figure 1 ;

[0016] Figure 7 It is a process of a new service deployment and path delay update method according to an embodiment of the present invention Figure 2 ;

[0017] Figure 8 It is a schematic diagram of a service path according to Embodiment 1 of the present invention scenario;

[0018] Figure 9 It is a schematic diagram of a service path according to Embodiment 2 of the present invention scenario;

[0019] Figure 10 It is a schematic diagram of a service path according to Embodiment 3 of the present invention scenario. Detailed implementation manners

[0020] In the following, embodiments of the present invention will be described in detail with reference to the accompanying drawings and in conjunction with the embodiments.

[0021] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and do not necessarily need to be used to describe a specific order or sequence.

[0022] The method embodiments provided in the embodiments of the present application can be executed in a router, a switch or a similar controller. Taking running on a switch as an example, Figure 1 It is a hardware structure block diagram of a switch for running a service path adjustment method according to an embodiment of the present invention. As Figure 1 shown, the switch may include one or more ( Figure 1 only one is shown in Figure 1 the processor 102 (the processor 102 may include, but is not limited to, a processing device such as a microprocessor or a programmable logic device) and a memory 104 for storing data. Among them, the above-mentioned switch may further include a transmission device 106 for communication functions and an input / output device 108. Those of ordinary skill in the art can understand that Figure 1 the structure shown in Figure 1 is only schematic, and it does not limit the structure of the above-mentioned switch. For example, the switch may further include more or fewer components than

[0023] The memory 104 can be used to store computer programs, such as software programs and modules of application software, such as the computer program corresponding to the service path adjustment method in the embodiments of the present invention. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, that is, the above-mentioned method is implemented. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memories, or other non-volatile solid-state memories. In some instances, the memory 104 may further include a memory remotely disposed relative to the processor 102, and these remote memories can be connected to the switch through a network. Examples of the above-mentioned network include but are not limited to the Internet, intranet, local area network, mobile communication network, and combinations thereof.

[0024] The transmission device 106 is used to receive or send data via a network. Specific examples of the above-mentioned network may include a wireless network provided by a communication provider of the switch. In one instance, the transmission device 106 includes a network adapter (abbreviated as NIC), which can be connected to other switches through a base station and thus communicate with the Internet. In one instance, the transmission device 106 may be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.

[0025] The embodiments of the present application can run on a deterministic network. Figure 2 is a network topology diagram of a deterministic network according to an embodiment of the present invention, as Figure 2 shown, the network includes: a controller and a plurality of nodes (node1~node 8), wherein the controller arranges and deploys each node in the service path through network calculus.

[0026] In this embodiment, a service path adjustment method running on the above-mentioned switch or deterministic network is provided. Figure 3 is a flowchart of a service path adjustment method according to an embodiment of the present invention, as Figure 3 shown, the process includes the following steps:

[0027] Step S302, determine a pre-deployment path that meets the delay requirement of the service flow to be deployed, and the bandwidth utilization rate of the first priority queue of each node in the pre-deployment path;

[0028] In step S302 of this embodiment, determining a pre-deployment path that meets the delay requirement of the service flow to be deployed includes:

[0029] Step S1: For any node in the deterministic network, configure bandwidth utilization threshold ladders for multiple queues corresponding to this node. Among them, the bandwidth utilization threshold ladder includes multiple bandwidth utilization value ranges divided by multiple bandwidth utilization thresholds.

[0030] For example: According to experience, set multiple thresholds for different priority queues of a certain node: 10%, 20%, 30%, 40%, 50% and 70%. Then the corresponding threshold ladders are: the first ladder [0, 10%], the second ladder [10%, 20%], the third ladder [20%, 30%], the fourth ladder [30%, 40%], the fifth ladder [40%, 50%], the sixth ladder [50%, 70%], and the seventh ladder [70%, 100%].

[0031] In this embodiment, the same bandwidth utilization threshold ladder can be set for different queues of the same node or different nodes, or different bandwidth utilization threshold ladders can be set.

[0032] Step S2: Obtain the priority and end-to-end delay requirement of the service flow to be deployed, and determine the queue whose queue priority corresponds to the priority of the service flow to be deployed as the first priority queue.

[0033] For example: If the priority of the service flow to be deployed is level 5, then the queue with priority 5 on this node is determined as the first priority queue to transmit the service flow to be deployed through the first priority queue.

[0034] Step S3: Determine the bandwidth utilization threshold and the upper bound of port queuing delay of this node according to the bandwidth utilization of the first priority queue.

[0035] Step S4: Calculate the end-to-end delay by superimposing the node processing delay, the upper bound of port queuing delay and the link delay, and obtain a pre-deployment path that meets the service delay requirement in Step S2.

[0036] Dynamically calculate the upper bound of the end-to-end delay of the deterministic service flow through network calculus, which can ensure the delay determinism of the service flow.

[0037] Step S304: Correspondingly compare the bandwidth utilization with the bandwidth utilization thresholds corresponding to each node. In the case where there is a node whose bandwidth utilization is greater than the bandwidth utilization threshold, determine the new bandwidth utilization threshold and the new upper bound of port queuing delay corresponding to this node;

[0038] In this embodiment, when the bandwidth utilization of the first priority queue is less than or equal to its corresponding bandwidth utilization threshold, it indicates that this pre-deployment path does not affect the end-to-end delay of other service flows, and the path of the pre-deployment service flow is feasible, and this pre-deployment path can be directly deployed.

[0039] In step S304 of this embodiment, determining the new bandwidth utilization threshold corresponding to the node includes: determining the bandwidth utilization value range in which the bandwidth utilization corresponding to the node is located, and determining the maximum bandwidth utilization threshold corresponding to the bandwidth utilization value range as the new bandwidth utilization threshold.

[0040] For example: when the bandwidth utilization of the node is 55%, which is in the bandwidth utilization value range of the sixth ladder [50%, 70%], then 70% is determined as the new bandwidth utilization threshold.

[0041] In step S304 of this embodiment, determining the upper bound of the port queuing delay corresponding to the node includes: determining the new upper bound of the port queuing delay of the first priority queue under the new bandwidth utilization threshold according to the bandwidth utilization of the second priority queue; wherein, the second priority queue includes one or more queues, and the priority of the second priority queue is higher than the priority of the first priority queue.

[0042] Step S306, update the end-to-end delay of the deployed service flow corresponding to the node according to the new bandwidth utilization threshold and the new upper bound of the port queuing delay, and perform service path adjustment when the end-to-end delay is greater than the delay requirement of the deployed service flow.

[0043] In step S306 of this embodiment, updating the end-to-end delay of the deployed service flow corresponding to the node includes: calculating and updating the new end-to-end delay by superimposing the node processing delay, the new upper bound of the port queuing delay, and the link delay.

[0044] In one embodiment, the performing service path adjustment includes: among multiple service paths between the source node and the destination node, reselecting a service path that meets the delay requirement of the to-be-deployed service flow as the new pre-deployed path; determining the new pre-deployed path whose end-to-end delay of other deployed service flows is not affected after path deployment as the final pre-deployed path, and deploying the final pre-deployed path to the deterministic network.

[0045] In one embodiment, the performing service path adjustment includes: adjusting the service path of the deployed service flow until the service path of the deployed service flow meets the delay requirement of the deployed service flow again.

[0046] In one embodiment, the method further includes: in the case where there is no node with a bandwidth utilization rate greater than the current bandwidth utilization rate threshold, deploying the pre-deployed path in the deterministic network; or, in the case where the end-to-end delay is not greater than the delay requirement of the deployed traffic flow, deploying the pre-deployed path in the deterministic network.

[0047] Through the above steps, when the bandwidth utilization rate of the queue in the node exceeds the bandwidth utilization rate threshold, a new bandwidth utilization rate threshold and an upper bound of the queuing delay are determined, and it is not necessary to calculate once for each newly added traffic flow, which can greatly reduce the recalculation amount of the network. Therefore, it can solve the problem in the related art that when deploying each traffic flow, it is necessary to re-judge whether the end-to-end delay of all deployed traffic flows exceeds the delay requirement, which will increase the network burden, and reduce the complexity of service path measurement.

[0048] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by means of software plus a necessary general hardware platform. Of course, it can also be implemented by hardware, but in many cases the former is a better implementation manner. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. The computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disc), and includes several instructions for causing a terminal device (which can be a mobile phone, a computer, a server, or a switch, etc.) to execute the methods described in various embodiments of the present invention.

[0049] In this embodiment, a service path adjustment device is further provided. The device is used to implement the above embodiments and preferred implementation manners, and those that have been described will not be repeated. As used below, the term "module" can be a combination of software and / or hardware that can implement a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware is also possible and contemplated.

[0050] Figure 4 is a structural block diagram of a service path adjustment device according to an embodiment of the present invention. As Figure 4 shown, the device includes: a determination module 10, a comparison module 20, and an adjustment module 30.

[0051] The determination module 10 is used to determine a pre-deployed path that meets the delay requirement of the traffic flow to be deployed, and the bandwidth utilization rate of the first priority queue of each node in the pre-deployed path;

[0052] A comparison module 20 is configured to correspondingly compare the bandwidth utilization rate with the bandwidth utilization rate thresholds corresponding to each node. When there is a node where the bandwidth utilization rate is greater than the bandwidth utilization rate threshold, determine the new bandwidth utilization rate threshold corresponding to this node and the upper bound of the port queuing delay.

[0053] An adjustment module 30 is configured to update the end-to-end delay of the deployed service flows corresponding to this node according to the new bandwidth utilization rate threshold and the upper bound of the port queuing delay, and perform service path adjustment when the end-to-end delay is greater than the delay requirement of the deployed service flows.

[0054] It should be noted that the above-mentioned various modules can be implemented by software or hardware. For the latter, it can be implemented in the following ways, but not limited thereto: the above-mentioned modules are all located in the same processor; or, the above-mentioned various modules are respectively located in different processors in any combination form.

[0055] The deterministic network provides end-to-end delay guarantee for deterministic service flows. The end-to-end delay must be less than the end-to-end delay requirement of the service. After the deterministic service flows are deployed, the service paths are fixed. However, as the service flows in the network continue to increase, the end-to-end delay of the deployed deterministic service flows may change and no longer meet the end-to-end delay requirement of the service. The existing solution is to measure the end-to-end delay of the service flows (including sending measurement packets, etc.) to determine whether it meets the end-to-end delay of the service. This measurement solution will increase the load in the network, change the packet encapsulation, and increase the processing flow of the device.

[0056] To reduce complexity, the present invention proposes a method and device for updating path delay based on network calculus. Among them, network calculus is an end-to-end delay calculation technology based on arrival curves and service curves. The network calculus theory transforms complex non-linear queuing problems into easy-to-analyze mathematical models by introducing min-plus algebra, and then derives the system performance through the mathematical relationships between the models, and can obtain the delay and backlog boundaries of the network. Through the arrival curve and service curve models of network nodes established by network calculus, the upper bound of the end-to-end delay of service flows can be accurately calculated for different service flows, providing guidance for delay guarantee in deterministic service deployment.

[0057] In addition, if the end-to-end delay of all deployed service flows is rejudged every time a service flow is deployed to determine whether it exceeds the delay requirement, the computational complexity is huge, which will increase the burden on the system. In the embodiments of the present invention, an improved bandwidth utilization rate threshold method is also proposed, which can greatly reduce the amount of recalculation and optimize the path update method.

[0058] An embodiment of the present invention provides a method and device for updating path delay based on network calculus. When performing deterministic service path planning and calculation, this method uses the network calculus algorithm to calculate the upper bound of the end-to-end delay of the service and select a path that meets the deterministic service delay requirement.

[0059] The method for updating path delay based on network calculus described above includes threshold selection and queuing delay calculation methods, that is, a threshold ladder of the preset bandwidth utilization rate is set for the ports of all nodes in the network. The threshold is calculated according to the bandwidth utilization rate of the current priority queue, and the upper bound of the port queuing delay under the current threshold is calculated through the network calculus algorithm. Based on the calculated queuing delay, a method for updating the end-to-end service path delay is further proposed. The pre-deployment path that meets the end-to-end delay requirement of the newly deployed service is calculated according to the calculated upper bound of the port queuing delay. Check whether the current priority bandwidth utilization rate of the node ports passed on the pre-deployment path exceeds the threshold. If it exceeds the threshold, recalculate and select a new threshold, and then calculate the upper bound of the port queuing delay under the new threshold through network calculus. At the same time, recalculate the end-to-end delay of the same-priority service flows affected on this port. If the new end-to-end delays of all affected service flows are less than the delay requirement, the pre-deployment path meets the requirements and can be deployed; if the new end-to-end delays of some affected service flows are greater than the delay requirement, the path of the pre-deployed service flow is infeasible according to the policy, reselect the route and calculate, or adjust the path of the affected service flows.

[0060] In the embodiment of the present invention, a bandwidth utilization rate threshold is preset for the ports of all nodes in the deterministic network. Each node includes multiple queues with different priorities. Among them, multiple thresholds are respectively set for different-priority queues. The thresholds can be set according to empirical values or obtained by other means. For example, the set thresholds can be 10%, 20%, 30%, 40%, 50%, and 70%, etc. Different thresholds form a stepped section, the first stepped section [0, 10%], the second stepped section [10%, 20%], the third stepped section [20%, 30%], the fourth stepped section [30%, 40%], the fifth stepped section [40%, 50%], the sixth stepped section [50%, 70%], and the seventh stepped section [70%, 100%].

[0061] Among them, the thresholds of different-priority queues can be set to be the same or different thresholds can be set respectively;

[0062] The node ports of the entire network can be set to be the same uniformly or different ones can be set respectively;

[0063] Service flows with different priorities enter different-priority queues for queuing and forwarding respectively.

[0064] In the network calculus algorithm, according to the bandwidth utilization thresholds on different priority queues of node ports, the upper bound of the queuing delay of the corresponding priority queue under different bandwidth utilization thresholds can be calculated. Among them, the traffic of the high-priority queue will affect the upper bound of the queuing delay of the low-priority queue. When calculating the upper bound of the queuing delay of the low-priority queue, it is necessary to substitute the bandwidth utilization of the high-priority queue into the network calculus algorithm for calculation. Regarding the threshold selection and queuing delay calculation, it is necessary to query the bandwidth utilization of the current priority queue and select the upper bound value of the threshold ladder segment where the current bandwidth utilization is located as the bandwidth utilization threshold (Threshold) of the current priority queue. At the same time, taking the queried bandwidth utilization of the high-priority queue as a parameter, use the network calculus algorithm to calculate the upper bound value D of the queuing delay of the current priority queue at the bandwidth utilization threshold. When the bandwidth utilization of the current priority queue is less than Threshold, it will not exceed the queuing delay D. After the deployment of the service flow of the current priority increases, the bandwidth utilization also increases. When it exceeds Threshold, it will enter the next threshold ladder segment, select the upper bound value of the next threshold ladder segment as the bandwidth utilization threshold of the current priority queue, and then calculate the queuing delay D under the current threshold, and iterate the selection and calculation in turn.

[0065] For example: Suppose there are 8 priority queues: Queues 0-7. Then when calculating the upper bound value of the queuing delay of Priority 5 queue, it is necessary to use the bandwidth utilization values of Priority 7 and Priority 6 queues as the input parameters of the network calculus algorithm. Since the current bandwidth utilization of the Priority 5 queue is 5%, the threshold ladder segment where this queue is located is the first ladder segment of [0, 10]. Then select the upper bound value 10% of the first ladder segment as the bandwidth utilization threshold of the current priority queue. Then, taking the bandwidth utilization of the queues with priorities 6 and 7 as parameters, determine the upper bound value D of the queuing of the current Priority 5 queue at the bandwidth utilization threshold of 10%, that is, the upper bound of the queuing delay of the Priority 5 queue below the threshold of 10%. When the bandwidth utilization of the Priority 5 queue increases to 11% due to the increase in service flow deployment, the corresponding bandwidth utilization threshold Threshold is taken as 20%.

[0066] In this example, when multiple service flows with the same priority are forwarded from the queue of the same port of a certain node, these service flows are regarded as an aggregated flow.

[0067] Figure 5 It is a flowchart of the threshold selection and queuing delay calculation method according to the embodiment of the present invention. As Figure 5 shown, the method includes the following steps:

[0068] Step S502, query the bandwidth utilization of the current priority queue;

[0069] Step S504: Select the upper bound value of the threshold ladder segment where the current bandwidth utilization rate is located as the bandwidth utilization rate threshold Threshold of the current priority queue.

[0070] Step S506: Use the bandwidth utilization rate of the high-priority queue as a parameter, and use the network calculus algorithm to calculate the upper bound value D of the queuing delay of the current priority queue at the threshold Threshold.

[0071] Step S508: Determine whether the bandwidth utilization rate of the current priority exceeds the threshold Threshold. If it exceeds, go to Step S504; otherwise, execute Step S510.

[0072] Step S510: Loop Step S508.

[0073] Through the above process, the maximum threshold within the bandwidth utilization rate ladder range is used to calculate the upper bound of the queuing delay of the current port, which simplifies the calculation of the upper bound of the queuing delay of the aggregated flows with the same priority, and there is no need to calculate the upper bound of the queuing delay for each newly added traffic flow. Only when the aggregated flow bandwidth exceeds the preset bandwidth utilization rate threshold, it is updated.

[0074] In the method for updating the network calculus path delay in this embodiment, it is also necessary to determine the end-to-end delay of the service, and the end-to-end delay of the service is determined by superimposing the node processing delay, port queuing delay, and link delay. Among them, the port queuing delay calculates the upper bound value D of the queuing delay at different thresholds through the above queuing delay calculation method.

[0075] When performing deterministic service path planning and calculation, the network calculus algorithm is used to select a path that meets the service delay requirements and calculate the upper bound of the end-to-end delay of the service at the same time. When a new deterministic service needs to be deployed, the controller obtains the characteristic information of the deterministic service flow to be deployed, including end-to-end delay requirements and priorities, etc. When calculating the service path, the upper bound of the queuing delay on the port is obtained through the priority information and the current bandwidth utilization rate threshold of the priority queue, and the processing delay and link delay of each hop are superimposed. The calculated end-to-end delay less than the end-to-end delay requirement of the service is used as the pre-deployment path. Then, the controller compares the new bandwidth utilization rate (the bandwidth utilization rate after pre-deploying the new service) of the current priority queue on all node ports passed on the pre-deployment path with the current bandwidth utilization rate threshold;

[0076] If it is less than the current bandwidth utilization rate threshold, the newly pre-deployed traffic flow does not affect the end-to-end delay of other traffic flows, the path of the pre-deployed traffic flow is feasible, and the new traffic flow is directly deployed;

[0077] If it is greater than the current bandwidth utilization threshold, the newly pre-deployed traffic flow will affect the upper bound of the port queuing delay of the aggregated flows in other queues with the same priority, that is, it will also affect the end-to-end delay. At this time, it is necessary to update the bandwidth utilization threshold according to the above threshold selection and queuing delay calculation method, and calculate the upper bound value D of the queuing delay corresponding to the new bandwidth utilization threshold.

[0078] That is, recalculate the end-to-end delay for each flow in the aggregated flows in the queues with the same priority that are affected. Check whether it is greater than its end-to-end delay requirement. If the recalculated end-to-end delay of each affected traffic flow is less than the end-to-end delay requirement value, the path of the newly pre-deployed traffic flow is feasible, and the new traffic flow can be directly deployed; if the recalculated end-to-end delay of some affected flows is greater than the end-to-end delay requirement value, the path of the pre-deployed traffic flow is not feasible, or adjust the path of the affected traffic flow. Here, multiple strategies can be selected, for example:

[0079] Strategy 1: The path of the currently pre-deployed traffic flow is not feasible. Recalculate another path that meets the delay requirement, and perform the above process again to check whether the new pre-deployed path affects other traffic flows until it does not affect any of them, then the new pre-deployed path is feasible.

[0080] Strategy 2: Continue to use the path of the currently pre-deployed traffic flow, adjust the paths of other affected traffic flows, and iteratively calculate the new paths of other affected traffic flows until the end-to-end delay of all affected traffic flows is less than the delay requirement.

[0081] Figure 6 is a flowchart of the new service deployment and path delay update method according to an embodiment of the present invention. As Figure 6 shown, the method includes the following steps:

[0082] Step S601, the controller configures a bandwidth utilization threshold ladder for the ports of all nodes in the deterministic network;

[0083] Step S602, the controller obtains the characteristic information of the deterministic traffic flow to be deployed, where the characteristic information includes the end-to-end delay requirement and the service priority;

[0084] Step S603, the controller determines the bandwidth utilization threshold Threshold and the upper bound D of the queuing delay on the port according to the service priority and the current priority queue bandwidth utilization on the port;

[0085] Step S604, the controller calculates the end-to-end delay by superimposing the node processing delay, the upper bound of the port queuing delay, and the link delay, and calculates a pre-deployed path that meets the service delay requirement;

[0086] As Figure 7As shown, after step S604 of this embodiment, the method further includes the following steps:

[0087] Step S605, determine whether the new bandwidth utilization rate (the bandwidth utilization rate after pre-deploying new services) of the current priority queue on all node ports passed on the pre-deployment path by the controller exceeds the current threshold Threshold;

[0088] If the new bandwidth utilization rate does not exceed the bandwidth utilization rate threshold Threshold, then execute step S606;

[0089] If the new bandwidth utilization rate exceeds the bandwidth utilization rate threshold Threshold, then execute step S607;

[0090] Step S606, the newly pre-deployed traffic flow does not affect the end-to-end delay of other traffic flows, and the path of the pre-deployed traffic flow is feasible, directly deploy the new traffic flow;

[0091] Step S607, the newly pre-deployed traffic flow will affect the upper bound of the port queuing delay of the aggregation flows in other same-priority queues, and also affect the end-to-end delay. According to the bandwidth utilization rate threshold updated by the threshold selection and queuing delay calculation method, calculate the upper bound value D of the queuing delay corresponding to the new bandwidth utilization rate threshold.

[0092] Step S608, recalculate the end-to-end delay for each flow in the aggregation flows in the affected same-priority queue, and determine whether it is greater than its end-to-end delay requirement.

[0093] If the end-to-end delay after recalculation for each affected traffic flow is less than the end-to-end delay requirement value, then return to step S606;

[0094] If the end-to-end delay after recalculation for each affected traffic flow is greater than or equal to the end-to-end delay requirement value, then execute step S609;

[0095] Step S609, select Strategy 1, the path of the pre-deployed traffic flow is not feasible, recalculate another pre-deployment path that meets the delay requirement, and return to step S605; select Strategy 2, adjust the paths of the affected traffic flows, and iteratively calculate the new paths of all affected traffic flows;

[0096] Step S610, determine whether the end-to-end delay of all affected traffic flows is less than the delay requirement. If so, then execute step S611; otherwise execute step S612;

[0097] Step S611, update the paths of the affected traffic flows, and use the pre-deployment path for the path of the new service;

[0098] Step S612, the calculation of the new service path fails and cannot be deployed.

[0099] For the convenience of understanding the technical solution provided by the present invention, the following will be elaborated in detail in combination with the embodiments of specific scenarios.

[0100] Scenario Embodiment 1

[0101] The network topology diagram in this scenario embodiment is as Figure 2 shown, including 8 nodes node1 to node8. There is a controller at the upper layer to perform the orchestration and deployment of service paths through network calculus. All ports of the 8 nodes are configured with the same bandwidth utilization threshold. Each node has 8 priority queues: queues 0 - 7, and 6 bandwidth utilization thresholds are set for each priority queue, which are 10%, 20%, 30%, 40%, 50%, and 70% respectively.

[0102] As Figure 8 shown, assume that the source node of the deployed deterministic service flow 1 is node1, the destination node is node6, the end - to - end maximum delay requirement is 60 us, and the priority is 5. Through network calculus, the path that meets the delay requirement is calculated as node1 - node2 - node4 - node6, and the end - to - end delay upper bound is 47 us. By querying, it is known that the bandwidth utilization of the queue with priority 5 on the egress port of node1 on the link node1 - node2 is 3%, which is in the first step of the threshold ladder segment [0, 10%]. Then, the upper bound value 10% of the threshold ladder segment is taken as the bandwidth utilization threshold Threshold of the priority 5 queue. Additionally, query the bandwidth utilization values of priorities 6 and 7 with higher priorities and substitute them into the network calculus algorithm to calculate that the queuing delay upper bound of the priority 5 queue at the threshold of 10% is 0.5 us. In the same way, query that the threshold of the priority 5 queue on the egress port of node2 on the link node2 - node4 is 10%, and the delay upper bound is 0.8 us, and the threshold of the priority 5 queue on the egress port of node4 on the link node4 - node6 is 10%, and the delay upper bound is 0.9 us.

[0103] The source node of the new deterministic traffic flow 2 to be deployed is node1, the destination node is node4, the priority is 5, and the end-to-end maximum latency requirement is 50 us. Through network calculus, the pre-deployed path that meets the latency requirement is node1-node2-node4, and the end-to-end latency upper bound is 34 us. Then, query in turn whether the new bandwidth utilization rate of the priority 5 queue at the outgoing port on the pre-deployed path exceeds the original threshold. The new bandwidth utilization rate of the priority 5 queue at the outgoing port of node1 on the link node1-node2 is 4%, which does not exceed the threshold of 10%. Then, the upper bound of the queuing latency of 0.5 us remains unchanged. The new bandwidth utilization rates of the outgoing ports of other nodes node2 and node4 also do not exceed the original threshold of 10%, and the upper bounds of the queuing latency also remain unchanged. That is, the end-to-end latency of traffic flow 1 affected on the pre-deployed path of traffic flow 2 remains unchanged. Then, the pre-deployed path of traffic flow 2 is feasible and can be directly deployed.

[0104] Scenario Embodiment 2

[0105] The network topology diagram in this scenario embodiment is as Figure 2 shown, including 8 nodes node1~node8. There is a controller on the upper layer to perform the orchestration and deployment of service paths through network calculus. The same bandwidth utilization threshold is configured for all ports of the 8 nodes. Each node has 8 priority queues: queues 0-7, and 6 bandwidth utilization thresholds are set for each priority queue, which are 10%, 20%, 30%, 40%, 50% and 70% respectively.

[0106] As Figure 9 shown, assume that the source node of the deployed deterministic traffic flow 1 is node1, the destination node is node6, the end-to-end maximum latency requirement is 60 us, and the priority is 5. Through network calculus, the path that meets the latency requirement is node1-node2-node4-node6, and the end-to-end latency upper bound is 58 us. By querying, the bandwidth utilization rate of the priority 5 queue at the outgoing port of node1 on the link node1-node2 is 9%, which is in the first step of the threshold ladder segment [0, 10%]. Then, take the upper bound value of 10% of the threshold ladder segment as the bandwidth utilization threshold Threshold of the priority 5 queue. In addition, query the bandwidth utilization values of the higher priorities 6 and 7, and substitute them into the network calculus algorithm to calculate that the upper bound of the queuing latency of the priority 5 queue at the threshold of 10% is 1.5 us. In the same way, query that the threshold of the priority 5 queue at the outgoing port of node2 on the link node2-node4 is 10%, and the latency upper bound is 1.6 us. The threshold of the outgoing port of node4 on the link node4-node6 is 10%, and the latency upper bound is 1.9 us.

[0107] The source node of the new deterministic service flow 2 to be deployed is node1, the destination node is node4, the priority is 5, and the end-to-end maximum delay requirement is 50 us. Through network calculus, the pre-deployed path that meets the delay requirement is node1-node2-node4, and the end-to-end delay upper bound is 44 us. Then, query in turn whether the new bandwidth utilization rate of the priority 5 queue at the outgoing port on the pre-deployed path exceeds the original threshold. The new bandwidth utilization rate of the priority 5 queue at the outgoing port of node1 on the link node1-node2 is 11%, exceeding the threshold of 10%. Based on the above threshold selection and queuing delay calculation method, a new threshold of 20% is reselected. Through network calculus, the queuing delay upper bound becomes 2.5 us under the threshold of 20%. The new bandwidth utilization rate of the priority 5 queue at the outgoing port of node2 on the link node2-node4 is 12%, exceeding the threshold of 10%. A new threshold of 20% is reselected. Through network calculus, the queuing delay upper bound becomes 2.9 us under the threshold of 20%. The new bandwidth utilization rate of the outgoing port of node4 does not exceed the original threshold of 10%, and the queuing delay upper bound remains unchanged. Then, the thresholds of the outgoing ports of node1 and node2 change, and the affected service flow is service flow 1. By recalculating the end-to-end delay of the service flow, it is 60.3 us, exceeding the delay requirement of 60 us. Assume that the subsequent policy is set to the above policy 1 now. Then, recalculate another pre-deployed path that meets the delay requirement of service flow 2 as node1-node3-node5-node4. Query that the threshold of the outgoing port of node1 on the link node1-node3 remains unchanged, and the thresholds of the outgoing ports of node3 and node5 also remain unchanged, without affecting the end-to-end delay of other service paths. Then, the new pre-deployed path is feasible and can be directly deployed.

[0108] Scenario Embodiment 3

[0109] The network topology diagram in this scenario embodiment is as Figure 2 shown, including 8 nodes node1~node8. There is a controller on the upper layer to perform the orchestration and deployment of service paths through network calculus. The same bandwidth utilization threshold is configured for all ports of the 8 nodes. Each node has 8 priority queues: queues 0-7. Six bandwidth utilization thresholds are set for each priority queue, which are 7%, 15%, 25%, 35%, 55%, and 75% respectively.

[0110] As Figure 10As shown in the figure, assume that the source node of the deployed deterministic service flow 1 is node1, the destination node is node6, the end-to-end maximum delay requirement is 60 us, and the priority is 5. Through network calculus, the path that meets the delay requirement is node1-node2-node4-node6, and the end-to-end delay upper bound is 58 us. By querying the bandwidth utilization rate of the queue with priority 5 on the egress port of node1 on the link node1-node2, it is 6%, which is in the first step of the threshold ladder section [0, 7%]. Then, the upper bound value 7% of the threshold ladder section is taken as the bandwidth utilization rate threshold Threshold of the queue with priority 5. In addition, query the bandwidth utilization rate values of the higher priorities 6 and 7, and substitute them into the network calculus algorithm to calculate that the upper bound of the queuing delay of the queue with priority 5 at the threshold of 7% is 1.5 us. In the same way, query that the threshold of the queue with priority 5 on the egress port of node2 on the link node2-node4 is 7%, the delay upper bound is 1.6 us, and the threshold of the egress port of node4 on the link node4-node6 is 7%, and the delay upper bound is 1.9 us.

[0111] The source node of the new deterministic service flow 2 to be deployed is node1, the destination node is node4, the priority is 5, and the end-to-end maximum delay requirement is 50 us. Through network calculus, the pre-deployed path that meets the delay requirement is node1-node2-node4, and the end-to-end delay upper bound is 44 us. Then, query in turn whether the new bandwidth utilization rate of the priority 5 queue at the outgoing port on the pre-deployed path exceeds the original threshold. The new bandwidth utilization rate of the priority 5 queue at the outgoing port of node1 on the link node1-node2 is 9%, exceeding the threshold of 7%. Re-select a new threshold of 15% in the way of process 1. Through network calculus, the queuing delay upper bound under the threshold of 15% becomes 2.5 us. The new bandwidth utilization rate of the priority 5 queue at the outgoing port of node2 on the link node2-node4 is 8%, exceeding the threshold of 7%. Re-select a new threshold of 15% in the way of process 1. Through network calculus, the queuing delay upper bound under the threshold of 15% becomes 2.9 us. The new bandwidth utilization rate of the outgoing port of node4 does not exceed the original threshold of 7%, and the queuing delay upper bound remains unchanged. Then, the thresholds of the outgoing ports of node1 and node2 change, and the affected service flow is service flow 1. If the subsequent policy selection is policy two, then by recalculating the end-to-end delay of the service flow, it is 61 us, exceeding the delay requirement of 60 us. Assume that the subsequent policy setting is 2 now. Adjust the path of the affected service flow 1, and recalculate another pre-deployed path that meets the delay requirement of service flow 1 as node1-node3-node5-node6. Query that the threshold of the outgoing port of node1 on the link node1-node3 remains unchanged, and the thresholds of the outgoing ports of node3 and node5 also remain unchanged, without affecting the end-to-end delay of other service paths. Then, the pre-deployed path node1-node2-node4 of service flow 2 is feasible. Adjust the new path of the affected service flow 1 to node1-node3-node5-node6 and directly deploy it.

[0112] In the embodiments of the present invention, it is also applied to the scenario where different thresholds are set for different priority queues. For specific examples, reference can be made to the examples described in the above scenario embodiments, and this embodiment will not be elaborated here.

[0113] After the existing deterministic service flow is deployed, by measuring the end-to-end delay of the service flow to determine whether it meets the service end-to-end delay, this measurement scheme will increase the load in the network, change the packet encapsulation, and increase the processing flow of the device. To reduce the complexity, calculate the end-to-end delay upper bound of the service flow through network calculus, which can dynamically calculate and update the path according to the network state, reducing the measurement complexity.

[0114] In addition, if the end-to-end delay of all deployed service flows is re-judged every time a service flow is deployed to determine whether it exceeds the delay requirement, the computational complexity is huge, increasing the burden on the system. By means of the improved bandwidth utilization threshold method in the embodiments of the present invention, the amount of recalculation can be greatly reduced, and the path update method can be optimized.

[0115] An embodiment of the present invention also provides a computer-readable storage medium, in which a computer program is stored. Wherein, the computer program is configured to execute the steps in any one of the above method embodiments when running.

[0116] In an exemplary embodiment, the above computer-readable storage medium may include, but is not limited to: various media such as a USB flash drive, a read-only memory (ROM for short), a random access memory (RAM for short), a mobile hard disk, a magnetic disk, or an optical disc that can store a computer program.

[0117] An embodiment of the present invention also provides an electronic device, including a memory and a processor. A computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.

[0118] In an exemplary embodiment, the above electronic device may further include a transmission device and an input / output device. Wherein, the transmission device is connected to the above processor, and the input / output device is connected to the above processor.

[0119] Specific examples in this embodiment may refer to the examples described in the above embodiments and exemplary embodiments, and will not be repeated here.

[0120] Obviously, those skilled in the art should understand that the above modules or steps of the present invention can be implemented by a general-purpose computing device. They can be concentrated on a single computing device or distributed on a network composed of multiple computing devices. They can be implemented by program codes executable by the computing device, so that they can be stored in a storage device and executed by the computing device. And in some cases, the steps shown or described can be executed in a different order than here, or they can be separately fabricated into individual integrated circuit modules, or multiple modules or steps among them can be fabricated into a single integrated circuit module to implement. In this way, the present invention is not limited to any specific combination of hardware and software.

[0121] The above are only the preferred embodiments of the present invention and are not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modifications, equivalent replacements, improvements, etc. made within the principle of the present invention shall be included within the protection scope of the present invention.

Claims

1. A method for adjusting a service path, characterized in that, it includes: Determine a pre-deployment path that meets the latency requirements of the service flow to be deployed, and the bandwidth utilization rate of the first-priority queue of each node in the pre-deployment path; Correspondingly compare the bandwidth utilization rate with the bandwidth utilization rate threshold corresponding to each node. In the case where there is a node whose bandwidth utilization rate is greater than the bandwidth utilization rate threshold, determine the new bandwidth utilization rate threshold and the upper bound of the port queuing latency corresponding to this node; According to the new bandwidth utilization rate threshold and the upper bound of the port queuing latency, update the end-to-end latency of the deployed service flow corresponding to this node, and in the case where the end-to-end latency is greater than the latency requirement of the deployed service flow, perform service path adjustment.

2. The method according to claim 1, characterized in that, Before determining the pre-deployment path that meets the latency requirements of the service flow to be deployed, the method further includes: Obtain the priority of the service flow to be deployed, and determine the queue with the queue priority corresponding to the priority of the service flow to be deployed as the first-priority queue, so as to transmit the service flow to be deployed through the first-priority queue.

3. The method according to claim 1, characterized in that, Before determining the pre-deployment path that meets the latency requirements of the service flow to be deployed, the method further includes: For any one of the nodes, configure bandwidth utilization rate threshold ladders for multiple queues corresponding to this node respectively, where the bandwidth utilization rate threshold ladder includes multiple bandwidth utilization rate value ranges divided by multiple bandwidth utilization rate thresholds.

4. The method according to claim 3, characterized in that, Determining the new bandwidth utilization rate threshold corresponding to this node includes: Determine the bandwidth utilization rate value range where the bandwidth utilization rate corresponding to this node is located, and determine the maximum bandwidth utilization rate threshold corresponding to this bandwidth utilization rate value range as the new bandwidth utilization rate threshold.

5. The method according to claim 1, characterized in that, Determining the upper bound of the port queuing latency corresponding to this node includes: According to the bandwidth utilization rate of the second-priority queue, determine the new upper bound of the port queuing latency of the first-priority queue under the new bandwidth utilization rate threshold; where the second-priority queue includes one or more queues, and the priority of the second-priority queue is higher than the priority of the first-priority queue.

6. The method according to claim 1, characterized in that, Determining the pre-deployment path that meets the latency requirements of the service flow to be deployed includes: Determine multiple service paths between the source node and the target node corresponding to the service flow to be deployed; For any one of the service paths, superimpose the processing latency of each node in this service path, the upper bound of the port queuing latency corresponding to the bandwidth utilization rate, and the link latency of this service path, and determine the end-to-end latency of this service path; Determine any service path that meets the latency requirements of the service flow to be deployed as the pre-deployment path.

7. The method according to claim 6, characterized in that, The performing service path adjustment includes: Among multiple service paths between a source node and a destination node, reselect a service path that meets the latency requirement of the to-be-deployed service flow as the new pre-deployment path; Determine the new pre-deployment path whose end-to-end latency of the service flow is not affected after path deployment as the final pre-deployment path, and deploy the final pre-deployment path to the deterministic network.

8. The method according to claim 1, wherein, the performing service path adjustment includes: Adjust the service path of the deployed service flow until the service path of the deployed service flow meets the latency requirement of the deployed service flow again.

9. The method according to claim 1, wherein, the method further includes: In the case where there is no node with a bandwidth utilization rate greater than the bandwidth utilization rate threshold, deploy the pre-deployment path in the deterministic network; or, In the case where the end-to-end latency is not greater than the latency requirement of the deployed service flow, deploy the pre-deployment path in the deterministic network.

10. A service path adjustment device, wherein, it includes: A determination module, configured to determine a pre-deployment path that meets the latency requirement of the to-be-deployed service flow, and the bandwidth utilization rate of the first priority queue of each node in the pre-deployment path; A comparison module, configured to correspondingly compare the bandwidth utilization rate and the bandwidth utilization rate threshold corresponding to each node, and in the case where there is a node with a bandwidth utilization rate greater than the bandwidth utilization rate threshold, determine the corresponding new bandwidth utilization rate threshold and the upper bound of the port queuing latency of the node; An adjustment module, configured to update the end-to-end latency of the deployed service flow corresponding to the node according to the new bandwidth utilization rate threshold and the upper bound of the port queuing latency, and perform service path adjustment in the case where the end-to-end latency is greater than the latency requirement of the deployed service flow.

11. A computer-readable storage medium, wherein, a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the steps of the method described in any one of claims 1 to 9 are implemented.

12. An electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein, when the processor executes the computer program, the steps of the method described in any one of claims 1 to 9 are implemented.