Network parameter adjustment method, network device, and storage medium
By adjusting network parameters to meet the delay constraints of service flow, the problem of delay failure caused by adjusted parameter configuration is solved, and the effect of avoiding network congestion and data packet loss is achieved.
Patent Information
- Application Number
- PCT/CN2024/113415
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-18
- Filing Date
- 2024-08-20
- Publication Date
- 2025-06-26
AI Technical Summary
After the adjusted parameters are configured into the network node, the end-to-end delay of the deployed service flow does not meet the delay constraints, resulting in network congestion, packet loss and other problems.
By determining the first end-to-end delay upper bound of the current service flow between the two end nodes, and when the upper bound is greater than the delay constraint, the network parameters are adjusted to meet the preset conditions based on the first network parameters of the N nodes flowing through which the current service flow is, ensuring that the adjusted delay meets the constraint.
Effectively avoid network congestion and data packet loss caused by delay, ensuring that the end-to-end delay of deployed service flows meets the delay constraints.
Smart Images

Figure CN2024113415_26062025_PF_FP_ABST
Abstract
Description
Network parameter adjustment method, network device and storage medium
[0001] Related applications
[0002] This application claims priority to Chinese patent application No. 202311751639.9 filed on December 18, 2023, the entire contents of which are incorporated by reference into this application. Technical Field
[0003] The present application relates to the field of communication technology, and in particular to a network parameter adjustment method, a network device, and a storage medium. Background Art
[0004] In network communications, to avoid network congestion and packet loss caused by latency, it is necessary to calculate the upper bound of the end-to-end latency of the service flow. If the upper bound of the end-to-end latency is greater than the end-to-end latency constraint, it is necessary to adjust the parameter configuration of the shaper and other necessary parameters at the egress port of the node through which the service flow passes. The adjusted parameters should be configured in the network nodes to avoid network congestion and packet loss caused by latency.
[0005] However, currently, after configuring the adjusted parameters into the network nodes, the service flows already deployed in the network may experience increased latency after passing through the nodes with the reconfigured parameters, causing the end-to-end latency of the deployed service flows to fail to meet the latency constraints.
[0006] Summary of the Invention
[0007] The main purpose of this application is to provide a network parameter adjustment method, network device and storage medium, aiming to solve the technical problem that after the adjusted parameters are configured in the network nodes, the end-to-end delay of the deployed service flow does not meet the delay constraints.
[0008] To achieve the above-mentioned objectives, an embodiment of the present application provides a network parameter adjustment method, comprising the following steps: determining a first end-to-end delay upper bound of a current service flow between two end nodes; when the first end-to-end delay upper bound is greater than the end-to-end delay constraint of the current service flow, determining, based on the first network parameters of the N nodes through which the current service flow flows, second network parameters of the N nodes that meet a first preset condition, wherein at least one network parameter of the first network parameter is different from that of the second network parameter, and N is a positive integer; the first preset condition includes: the second end-to-end delay upper bound of the current service flow calculated based on the second network parameters of the N nodes is not greater than the end-to-end delay constraint of the current service flow, and the end-to-end delay upper bound of a deployed service flow flowing through any of the N nodes calculated based on the second network parameters of the N nodes is not greater than the end-to-end delay constraint of the deployed service flow.
[0009] An embodiment of the present application further provides a network device, comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the above method.
[0010] An embodiment of the present application further provides a storage medium, which is a computer-readable storage medium. A computer program is stored on the storage medium, and the computer program implements the above method when executed by a processor. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] FIG1 is a schematic diagram of the structure of the operating equipment of the hardware operating environment involved in the embodiment of the present application;
[0012] FIG2 is a schematic diagram of a structure of an operating device of a hardware operating environment involved in an embodiment of the present application;
[0013] FIG3 is a flow chart of a method according to an embodiment of the present application;
[0014] FIG4 is a schematic diagram of a service curve and an arrival curve in a method according to an embodiment of the present application;
[0015] FIG5 is a flow chart of a method according to an embodiment of the present application;
[0016] FIG6 is a flow chart of an embodiment of a method according to an embodiment of the present application.
[0017] The realization of the objectives, functional features and advantages of this application will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0018] It should be understood that the specific embodiments described herein are only used to explain the present application and are not intended to limit the present application.
[0019] For a clearer explanation, a network structure that can be used to implement an embodiment of the present application is first described. As shown in FIG1 , the network includes a sending unit 102 , a receiving unit 103 , and one or more forwarding units 105 .
[0020] The sending unit 102 is used to send the service flow at the end, and then the service flow can be forwarded in the network via the forwarding unit 105, and finally received by the receiving unit 103 at the end.
[0021] The network may also include an ingress shaper 104 and one or more hop-by-hop shapers 106. The ingress shaper 104 is generally used to shape a single service flow or multiple service flows with the same forwarding path or the same forwarding destination device that enter the network ingress during a certain period of time. A single service flow and multiple service flows are referred to as single flows and multi-flows, respectively. Before being shaped by the ingress shaper 104, the single flow or multi-flow can have the same or different shapes.
[0022] One or more hop-by-hop shapers 106 are generally used to shape a single flow or multiple flows for hop-by-hop regulation before or after the corresponding forwarding unit 105 forwards the single flow or multiple flows. A multiple flow is formed by the aggregation of multiple single flows flowing through the forwarding unit 105. Traffic shaping can effectively avoid congestion and packet loss caused by traffic aggregation or hop-by-hop transmission of bursty traffic.
[0023] The above network structure is only one possible implementation. In some possible designs, the sending unit 102 and the ingress shaper 104 can be integrated into the same device, such as an end-point sending node for sending traffic. Alternatively, the ingress shaper 104 can be integrated into the same device as the first forwarding unit 105 in the traffic flow transmission process, such as the first forwarding node for forwarding traffic. Alternatively, the ingress shaper 104 and the receiving unit 103 can be integrated into the same device, such as an end-point receiving node for receiving traffic. Similarly, the hop-by-hop shaper 106 can also be integrated into the same device as the forwarding unit 105.
[0024] As shown in Figure 1 , the network may further include a controller 101 for managing and controlling one or more of the forwarding unit 105, ingress shaper 104, and hop-by-hop shaper 106 at any network node during end-to-end network transmission. Management and control may include, for example, configuring shaping parameters for the ingress shaper 104 and one or more hop-by-hop shapers 106, allocating buffer sizes and / or performing hop-by-hop specifications for one or more forwarding units 105, and other functions. In other possible designs, in addition to controlling the aforementioned units, the controller 101 may also control the sending unit 102 and / or the receiving unit 103 to implement control and management of service flow transmission and reception.
[0025] The controller 101 can be deployed separately, that is, physically independent of other controlled functional units in the network (such as the sending unit 102, the forwarding unit 105, the ingress shaper 104, etc.), or it can be integrated with one of the functional units on the same device, or even split into several sub-units and arranged on multiple devices, as long as they can logically implement the corresponding management and control functions together.
[0026] The controller 101, the sending unit 102, the receiving unit 103, the forwarding unit 105, the ingress shaper 104, or the hop-by-hop shaper 106 can be implemented as hardware, software, or a combination of hardware and software. They can be implemented as a standalone device, such as an independent node in a network, or as a functional module or a combination of multiple functional modules on a network node. This can be selected and designed based on specific scenario requirements. One or more of the ingress shaper 104 and the hop-by-hop shaper 106 can implement the same shaping policy or different shaping policies.
[0027] An embodiment of the present application provides a network structure, as shown in Figure 2, comprising: a plurality of nodes connected in a network, and a controller connected to each node. Each node in the network can function as a sending node or a receiving node, and a shaper can be integrated within the node. The controller not only controls and manages the sending and receiving of traffic flows on the node, but also controls shaping parameter configuration and / or buffer allocation for the node's shaper.
[0028] The nodes in the embodiment of the present application may be routers, switches, etc. The network parameter adjustment method in the embodiment of the present application is implemented by a controller connected to each node.
[0029] In network communications, to avoid network congestion and packet loss caused by latency, it is necessary to calculate the upper bound of the end-to-end latency of the service flow. If the upper bound of the end-to-end latency is greater than the end-to-end latency constraint, it is necessary to adjust the parameter configuration of the shaper and other necessary parameters at the egress port of the node through which the service flow passes. The adjusted parameters should be configured in the network nodes to avoid network congestion and packet loss caused by latency.
[0030] Network calculations can obtain the arrival curve of the service flow based on the configuration parameters of the network ingress shaper, where the shaper parameters include the maximum burst size (CBS) of data and the average output rate (CIR). Based on the shaper configuration parameters and other necessary parameters, the arrival curve and service curve are calculated, thereby calculating the end-to-end delay upper bound DB of the current service flow. In addition, the end-to-end delay constraint of the service flow is DB_Cons. If the end-to-end delay upper bound DB of the current service flow is greater than the delay constraint DB_Cons, the shaper parameters are adjusted. The adjusted parameters can be one or more, so that the adjusted end-to-end delay upper bound DB1 is less than the end-to-end delay constraint DB_Cons, and the adjusted shaper parameters are configured in the network nodes to avoid network congestion and data packet loss caused by delay.
[0031] However, this network shaper parameter adjustment method only considers whether the end-to-end delay of the current service flow meets the constraint conditions, and does not consider the impact of the adjustment of the current shaper parameters on the deployed service flows. After the adjusted parameters are configured in the network nodes, the service flows already deployed in the network may increase in delay after passing through the nodes with the reconfigured parameters, resulting in the end-to-end delay of the deployed service flows not meeting the delay constraints.
[0032] To address this issue, this embodiment proposes a network parameter adjustment method that can address the technical issue of the end-to-end delay of deployed service flows failing to meet delay constraints after the adjusted parameters are configured in network nodes. As shown in Figure 3, the network parameter adjustment method provided in this embodiment includes the following steps.
[0033] Step S10: Determine the first upper bound of the end-to-end delay of the current service flow between two end nodes.
[0034] The upper bound of the end-to-end delay of a service flow between two end nodes can be calculated through network calculus. Network calculus is an end-to-end delay calculation technology based on arrival curves and service curves. By introducing minimum addition algebra, network calculus theory transforms complex nonlinear queuing problems into easily analyzable mathematical models. The mathematical relationships between these models are then used to derive system performance, thereby deriving the network's delay and backlog bounds. By using the arrival curve and service curve models of network nodes established through network calculus, the upper bound of the end-to-end delay of different service flows can be accurately calculated, providing guidance for delay assurance in service deployment.
[0035] The first upper bound of the end-to-end delay of a service flow between two end nodes can be calculated in the following two ways.
[0036] Method 1: Calculate the overall arrival curve α(t) and service curve β(t) for the current service flow through all N (N ≥ 1) nodes, calculate the maximum horizontal distance between α(t) and β(t), and determine the upper bound DB of the end-to-end delay of the current service flow. As shown in Figure 3, α(t) is the overall arrival curve of the previous service flow through all N nodes, and β(t) is the overall service curve of the service flow through all N nodes. The maximum horizontal distance h between the overall arrival curve and the overall service curve is the upper bound DB of the end-to-end delay of the service flow through all N nodes.
[0037] Method 2: Calculate the arrival curve αn(t) and service curve βn(t) of the current service flow passing through N (N≥1) forwarding nodes respectively, and calculate the maximum horizontal distance between each corresponding αn(t) and βn(t).
[0038] As shown in Figure 4, if the arrival curve of the current business flow passing through the node is α i(t), the service curve of the current business flow passing through the node is β i (t), calculate the arrival curve α i (t) and service curve β i (t) can be calculated by calculating the maximum horizontal distance h(α, β) between the two nodes. The upper bound D(t) of the delay of the current service flow at each node can be obtained as shown in Formula 1: D(t)≤h(α, β) (Formula 1)
[0039] Among them, the arrival curve α i (t) and service curve β i The maximum horizontal distance h(α, β) between (t) can be calculated using the following formula 2.
[0040] After the service flow path is determined, the upper bound of the delay DBk passing through all forwarding nodes can be calculated based on the arrival curve and service curve calculated by network calculation. The upper bound of the end-to-end delay DB of the current service flow is obtained by accumulation, as shown in Formula 3 below.
[0041] Where k = 1, 2, 3, ... m, and a total of m forwarding nodes are passed through.
[0042] Step S20: When the first end-to-end delay upper bound is greater than the end-to-end delay constraint of the current service flow, determine the second network parameters of the N nodes that meet the first preset conditions based on the first network parameters of the N nodes through which the current service flow flows.
[0043] The end-to-end delay constraint of the current service flow is DB_Cons. If the end-to-end delay upper bound DB of the current service flow is greater than the end-to-end delay constraint DB_Cons of the current service flow, the current service flow may experience network congestion and packet loss due to excessive delay during network transmission. In this case, it is necessary to adjust the first network parameters of the N nodes through which the current service flow passes so that the end-to-end delay upper bound DB of the current service flow is less than the end-to-end delay constraint DB_Cons of the current service flow under the new network parameters.
[0044] Each node has corresponding network parameters, such as shaper parameters and other necessary parameters for the node's egress port. The network parameters of the N nodes through which a traffic flow passes are collectively referred to as first network parameters. Second network parameters for the N nodes can be obtained by adjusting the aforementioned network parameters of at least one of the N nodes through which the current traffic flow passes. As shown in Figure 1, a traffic flow flows from node 1 to node 6. Node 1 is the sending node, node 6 is the receiving node, and nodes 2 and 3 are forwarding nodes. The network parameters of node 1 can be adjusted, or the network parameters of nodes 1 and 2 can be adjusted, or the network parameters of nodes 1, 2, and 3 can be adjusted, or the network parameters of nodes 1, 2, 3, and 6 can be adjusted simultaneously.
[0045] At least one of the first network parameters and the second network parameters is different, that is, at least one of the first network parameters of the N nodes through which the previous service flow flows is adjusted to obtain the second network parameters. Furthermore, the second network parameters of the N nodes obtained after the adjustment satisfy a first preset condition, the second end-to-end delay upper bound of the current service flow calculated based on the second network parameters of the N nodes is no greater than the end-to-end delay constraint of the current service flow, and the end-to-end delay upper bound of a deployed service flow flowing through any of the N nodes calculated based on the second network parameters of the N nodes is no greater than the end-to-end delay constraint of the deployed service flow. The adjusted network parameters of the node do not affect the end-to-end delay upper bounds of other deployed service flows on the node, thereby resolving the technical issue of the end-to-end delay of deployed service flows not meeting the delay constraint after the adjusted network parameters are configured in the network node.
[0046] In this embodiment, the network delay constraints DB_Cons for different service flows may be different, which may be related to the service type carried by the service flow or the transmission rate requirement for the service flow in a specific time period, or other possible network data transmission requirements. The delay constraint values DB_Cons corresponding to different service types can be pre-stored, for example, in the controller 101 shown in Figure 1, or in the controller shown in Figure 2, or in a possible storage location such as a node, and can be specifically set as needed. In actual applications, the network delay constraint DB_Cons can be automatically obtained by the controller based on the correspondence between the service type and the delay constraint, or manually configured by a network administrator, etc.
[0047] Exemplarily, the network parameters of a node include: average output rate, maximum burst size, the weight of the priority queue in the scheduling algorithm, and the mapping relationship between the node's service flow and priority. The average output rate and maximum burst size are parameters of the shaper at the node's egress port, the weight of the priority queue in the scheduling algorithm is a parameter in the node's scheduling algorithm, and the mapping relationship between the node's service flow and priority is a parameter related to the node and the service flow.
[0048] Exemplarily, the priority of the deployed service flow is the same as or lower than the priority of the current service flow.
[0049] Since higher-priority service flows on a node are sent or forwarded first, while lower-priority service flows must wait for higher-priority service flows to be sent or forwarded before they can be sent or forwarded, the deployment of the current service flow will have a significant impact on deployed service flows on the node that have the same priority as the current service flow, or a lower priority than the current service flow. Therefore, in this embodiment, special attention should be paid to the impact of the adjusted second network parameters on deployed service flows that have the same priority as the current service flow, or a lower priority than the current service flow.
[0050] In some embodiments, as shown in FIG5 , the network parameter adjustment method provided in this embodiment includes the following steps.
[0051] Step S10: Determine the first upper bound of the end-to-end delay of the current service flow between two end nodes.
[0052] Step S20: When the first end-to-end delay upper bound is greater than the end-to-end delay constraint of the current service flow, determine the initial delay upper bound of each of the N nodes based on the first network parameters of the N nodes through which the current service flow passes and the priority of the current service flow.
[0053] When determining the upper bound of the initial latency for each of the N nodes, not only the network parameters of each node are considered, but also the priority of the current service flow. Since higher-priority service flows on a node are sent or forwarded first, lower-priority service flows must wait for higher-priority service flows to be sent or forwarded before they can be sent or forwarded. Therefore, the deployment of the current service flow will have a significant impact on deployed service flows on the node with a lower priority than the current service flow. Therefore, in this embodiment, when determining the upper bound of the initial latency for each node, it is necessary to jointly determine the upper bound based on the first network parameters of the N nodes through which the current service flow flows and the priority of the current service flow.
[0054] Exemplarily, based on the first network parameters of the N nodes through which the current business flow flows and the priority of the current business flow, the initial delay upper bound of each node in the N nodes is determined, including: based on the shaper parameters of each node in the N nodes and the priority of the current business flow, the arrival curve of the current business flow at each node is determined; based on the scheduling algorithm of each node in the N nodes and the weight of the priority queue with the same priority as the current business flow in the scheduling algorithm of each node, the service curve of the current business flow at each node is determined; based on the arrival curve of each node and the service curve of each node, the initial delay upper bound of each node in the N nodes is calculated.
[0055] The upper bound of the service flow delay at a node can be calculated by determining the arrival curve and service curve of the service flow at the node.
[0056] The arrival curve α(t) of the service flow at the node can be determined according to the shaper parameters of the node and the priority of the current service flow, as follows.
[0057] Different priority queues have different shaper parameter configurations. Assuming that the priority of the current business flow is i, the current business flow enters the corresponding queue according to the priority. The arrival curve α of the business flow with priority i on the node can be calculated based on the priority of the business flow and the shaper parameters of the queue to which the business flow belongs. i (t) is shown in the following formula (4): α i (t)=cir i *t+cbs i (Formula 4)
[0058] Among them, the priority of the business flow i∈{0, 1, 2..., n-1}, n is the number of priority queues, cbs i and cir i is the shaper parameter of the queue to which the service flow priority belongs, where cbs i is the maximum burst size of the queue shaper parameter for priority i, cir i is the average output rate of the shaper parameter for queue with priority i.
[0059] The service curve β(t) of the business flow at the node can be determined based on the node scheduling algorithm and the weight of the priority queue with the same priority as the current business flow in the scheduling algorithm of each node.
[0060] There are various node scheduling models, including the Strict Priority (SP) algorithm, the Weighted Fair Queue (WFQ) algorithm, and the Weighted Round Robin (WRR) algorithm. Based on different scheduling models, the service curves calculated for the current service flow at each node are also different. Due to different service priorities, high-priority service flows will be served first, which will affect the service curve of the current priority service flow. In addition, the impact of the current service flow on low-priority service flows must also be considered. Therefore, high-priority service flows as well as low-priority service flows need to be considered when calculating the service curve.
[0061] (1) When the scheduling algorithm of the current node is a strict priority scheduling algorithm, the service curve of the current service flow at the current node is determined based on the general service curve of the current node, the arrival curve of the deployed service flow with a higher priority than the current service flow, and the maximum packet length of the deployed service flow with a lower priority than the current service flow.
[0062] The service curve of the current service flow at the current node is the curve obtained by subtracting the arrival curve of the deployed service flow with a higher priority than the current service flow from the general service curve of the current node, and subtracting the maximum packet length of the deployed service flow with a lower priority than the current service flow.
[0063] Assume that the general service curve of the current node is β(t), and the maximum packet length of the deployed service flow with lower priority than the current service flow is Based on the strict priority scheduling algorithm, the service curve β provided to the current service flow with queue priority i is calculated. i (t) is shown in Formula 5.
[0064] (2) When the scheduling algorithm of the current node is the weighted fair queue scheduling algorithm, the service curve of the current business flow at the current node is determined based on the ratio of the weight of the priority queue to which the priority of the current business flow belongs to the sum of the weights of all priority queues, the general service curve of the current node, and the upper limit of the data packet length in each priority column.
[0065] The service curve of the current business flow at the current node is the ratio of the weight of the priority queue to which the current business flow belongs to the sum of the weights of all priority queues multiplied by the general service curve of the current node, and the curve obtained by taking the maximum value of the curve obtained by subtracting the upper limit value of the packet length in each priority column compared with 0.
[0066] Assume that the weight of the priority queue to which the current business flow belongs is w i The general service curve of the current node is represented by β(t), and the upper limit of the length of the data packet in each priority column is represented by l u If , then the service curve β provided to the current service flow with queue priority i is calculated based on the weighted fair queue scheduling algorithm. i (t) is shown in Formula 6.
[0067] Where [x] + =max{x,0} is the maximum value.
[0068] (3) When the scheduling algorithm of the current node is a weighted round-robin scheduling algorithm, the service curve of the current business flow at the current node is determined based on the general service curve of the current node, the minimum number of data bits of service obtained by the priority queue to which the priority of the current business flow belongs in one poll, and the maximum number of data bits of service obtained by other queues except the priority queue to which the priority of the current business flow belongs in one poll.
[0069] The service curve of the current business flow at the node is the curve obtained by subtracting the maximum value of the sum of the maximum number of data bits served by the priority queues other than the priority queue to which the current business flow belongs in a poll from the general service curve of the current node, multiplied by the minimum number of data bits served by the priority queue to which the current business flow belongs in a poll, and the ratio of the minimum number of data bits served by the priority queue to which the current business flow belongs in a poll to the sum of the maximum number of data bits served by the priority queue to which the current business flow belongs in a poll. Assume that the general service curve of the current node is represented by β(t), and the minimum number of data bits served by the priority queue to which the current business flow belongs in a poll is represented by q i express, Among them, w i The weighted priority of the priority queue to which the current business flow belongs. The minimum length of the message of the queue with priority i; in one poll, except for the priority queue of the current business flow, the sum of the maximum number of data bits served by other queues is Q i express, Among them, w j The weights of other priority queues except the priority queue to which the current business flow belongs. is the maximum length of packets in the priority queues other than the one to which the current service flow belongs. Based on the weighted round-robin scheduling algorithm, the service curve β provided to the current service flow with queue priority i is calculated. i (t) is shown in Formula 7:
[0070] Where [x] + =max{x,0} is the maximum value.
[0071] In this embodiment, the arrival curve and service curve of each of the N nodes through which the current service flow flows can be calculated according to the above formula, and the initial delay upper bound of each node can be calculated according to the arrival curve and service curve of each node.
[0072] Step S30: sequentially adjusting the network parameters of the node with the largest initial delay upper bound among the N nodes and whose network parameters have not been adjusted, until obtaining the second network parameters of the N nodes that meet the first preset condition.
[0073] After obtaining the initial upper delay bound for each of the N nodes through which the current service flows, before adjusting the node's network parameters, the N nodes are first sorted in descending order of their initial upper delay bounds. When adjusting the node's network parameters, the network parameters of the node with the largest initial upper delay bound are adjusted first in the sorted order. If, after the adjustments, the second network parameters of the N nodes that do not meet the first preset condition are not obtained, the network parameters of the unadjusted nodes with the largest initial upper delay bounds are adjusted until the second network parameters of the N nodes that meet the first preset condition are obtained. In this embodiment, the nodes with larger initial upper delay bounds have a wider range of adjustment, and prioritizing adjustment of the unadjusted nodes with the largest initial upper delay bounds can speed up the adjustment of network parameters.
[0074] In this embodiment, the upper bound of the end-to-end delay of the current service flow has been calculated as DB. The upper bound of the delay passing through the kth forwarding node is DBk. The upper bounds of the delay passing through m nodes are arranged in descending order as DBmaxj, where j = 1, 2, 3, ... m. The node with the largest upper bound of the delay DBmax_j (j = 1) is selected as the adjustment node. The adjustment parameters include: the maximum burst size cbs of the current priority queue shaper i , average output rate cir i And the scheduling weight value w of each queue i wait.
[0075] It is recommended to prioritize adjusting the average output rate cir i , followed by adjusting the maximum burst size cbs i If WFQ or WRR scheduling algorithm is used, adjust the weight parameter w i Finally, the internal priority mapping relationship of the SP can be adjusted. The adjusted parameter can be one parameter or a combination of multiple parameters.
[0076] After adjusting the parameters, the nodes required must meet the following conditions:
[0077] (1) After adjustment, the upper limit of the delay of the current priority service flow at this node becomes smaller, and the recalculated value is BDmax_j` <DBmax_j。
[0078] (2) After adjusting the parameters, the upper limit of the delay of low-priority business flows at this node will change. Recalculate the upper limit of the delay of low-priority business flows at this node. Check and calculate the upper limit of the end-to-end delay of the deployed business flows passing through this node after adjusting the parameters. The upper limit cannot exceed the delay constraint value of the business flow.
[0079] In this embodiment, the adjusted network parameters of the node meet a second preset condition, which includes: the adjusted upper bound of the delay of the current service flow passing through the node, calculated based on the adjusted network parameters of the node, is no greater than the initial upper bound of the node's delay, and the upper bound of the end-to-end delay of the deployed service flow passing through the node, calculated based on the adjusted network parameters of the node, is no greater than the end-to-end delay constraint of the deployed service flow. In other words, after the node's network parameters are adjusted, the upper bound of the delay of the current service flow on the node cannot increase, and the upper bound of the end-to-end delay of the deployed service flow passing through the node can increase or decrease, but must not exceed the end-to-end delay constraint of the deployed service flow.
[0080] Because different scheduling strategies and service flow priorities significantly impact the end-to-end latency of deployed service flows, a globally coordinated parameter adjustment method is needed to ensure that the latency of the current service flow meets the required constraints while minimizing the impact on the latency of other service flows. This embodiment proposes a method for adjusting network shaping parameters for all network services, ensuring that the latency constraints of the current service flow are met while maintaining the latency constraints of other deployed service flows.
[0081] In some embodiments, the process of sequentially adjusting the network parameters of a node among N nodes whose initial upper delay bound is the largest and whose network parameters have not been adjusted includes: after adjusting the network parameters of a node among the N nodes whose initial upper delay bound is the largest and whose network parameters have not been adjusted, determining the sum of the reduced delay differences of the nodes of the current business flow after the adjustment; determining the total difference between the first end-to-end delay upper bound and the end-to-end delay constraint of the current business flow; based on the total difference and the sum of the reduced delay differences, determining whether the adjusted end-to-end delay upper bound of the current business flow is not greater than the end-to-end delay constraint of the current business flow; if not greater than, adjusting the network parameters of the next node among the N nodes whose initial upper delay bound is the largest and whose network parameters have not been adjusted, until the adjusted end-to-end delay upper bound of the current business flow is not greater than the end-to-end delay constraint of the current business flow.
[0082] In this embodiment, in the process of sequentially adjusting the network parameters of the node with the largest initial delay upper bound among N nodes and whose network parameters have not been adjusted, if before adjusting the network parameters of a node, the initial delay upper bound of the current business flow flowing through the node is DBmax_j, and after adjusting the network parameters of a node, the initial delay upper bound of the current business flow flowing through the node is DBmax_j', then after the adjustment, the delay difference reduced by the current business flow through the adjusted node is DBmax_j-DBmax_j'.
[0083] Assume that the first upper bound of the end-to-end delay of the current service flow between the two end nodes is DB, and the delay constraint of the current service flow between the two end nodes is DB_Cons. After adjusting the nodes, the difference DIFF can be calculated using the following formula 8 to determine whether the adjusted upper bound of the end-to-end delay of the current service flow is not greater than the end-to-end delay constraint of the current service flow.
[0084] If Diff > 0, then after adjustment, the end-to-end delay upper bound DB of the current service flow is less than the end-to-end delay constraint DB_Cons of the current service flow, thus meeting the requirement. If Diff < 0, then after adjustment, the end-to-end delay upper bound DB of the current service flow is still greater than the end-to-end delay constraint DB_Cons of the current service flow, thus failing to meet the requirement. The node DBmaxj (j = 2) with the largest initial delay upper bound and which has not been adjusted is selected as the adjustment node. The above adjustment process is repeated until Diff > 0.
[0085] In an embodiment of the present application, a network parameter adjustment method based on network calculation is proposed. The arrival curve and service curve of the current business flow at each node are calculated based on the network shaper configuration parameters and the scheduling model algorithm. At the same time, the upper limit of the delay is calculated. The end-to-end delay value of the current business flow is calculated based on the upper limit of the delay of the accumulated nodes in the business path. When the upper limit of the end-to-end delay of the current business flow is greater than the end-to-end delay constraint value of the current business flow, the network parameters of the forwarding node are adjusted. The adjusted parameters include the maximum burst size of the shaper parameters of the priority queue, the average output rate of the shaper parameters of the priority queue, the queue scheduling weight, etc. Nodes with larger upper limits of node delay are adjusted first. After the parameters are adjusted, the upper limit of the node delay of the current business flow needs to be reduced. At the same time, the end-to-end delay of other deployed business flows passing through this node must also meet the constraint conditions.
[0086] Current solutions adjust the satisfaction of individual service flows by adjusting shaper parameters such as burst size and average transmission rate, without considering the impact on other flows. Queues of different priorities have different shaper parameters. Adjusting the shaper parameters for one queue may reduce the latency of the current service flow, but may increase the latency impact on services of other priorities. In contrast, the embodiments of the present application perform global parameter adjustments, ensuring that the latency of the current service flow meets the required constraints without affecting the latency constraints of other service flows. This quantifies the impact of network parameter adjustments on other service flows, guiding parameter adjustments.
[0087] Currently, the shaper parameters and scheduling weights configured in network devices have default configuration values and will not change once configured, because adjusting one of them will affect other traffic flows and there is no quantitative index reference for the degree of impact. Network calculus can control the impact across the network, provide an adjustable method, quantify the impact after adjustment, and guide the adjustment of parameters.
[0088] The following presents the specific process of network parameter adjustment, as shown in Figure 6, including the following steps.
[0089] Step 1: Based on network parameters and traffic flow parameters, calculate the arrival curve and service curve of the traffic flow through the above formula 4 - 7.
[0090] Step 2: Calculate the upper bound of the delay DBk of the traffic flow passing through each node based on formula 8, and at the same time calculate the end - to - end upper bound of the delay DB.
[0091] Step 3: If the end - to - end upper bound of the delay DB is greater than the end - to - end delay constraint value DB_Cons, sort the upper bounds of the delays of the traffic flow passing through all nodes in descending order as DBmax_j.
[0092] Step 4: Select the node with the largest remaining sorted upper bound of the delay DBmax_j as the adjustment node. The parameters to be adjusted include: the maximum burst size cbsi of the current priority queue shaper, the average output rate ciri, and the scheduling weight values of each queue, etc. Make the recalculated upper bound of the delay BDmax_j` of the current traffic flow at this node after adjusting the parameters satisfy BDmax_j`<DBmax_j, and at the same time, the end - to - end delay of the deployed traffic flow passing through this node is less than the corresponding delay constraint value.
[0093] Step 5: Calculate. If Diff < 0, then after adjustment, the end - to - end upper bound of the delay DB of the current traffic flow is still greater than the delay constraint DB_Cons value, not meeting the requirements, go to Step 4; if Diff > 0, then after adjustment, the end - to - end upper bound of the delay DB of the current traffic flow is less than the delay constraint DB_Cons value, meeting the requirements, and end the process.
[0094] The following specifically describes the process shown in Figure 6 in combination with an embodiment.
[0095] Example 1: Forwarding nodes are implemented based on a strict priority scheduling algorithm. Assume the network topology shown in Figure 2, with a total of six nodes. A controller at the upper layer performs end-to-end delay calculation and parameter adjustment through network calculus. All link delays are negligible, and only the node delay upper bounds are accumulated when calculating the end-to-end delay. The default shaper parameters configured for the six forwarding nodes are consistent. Service flow 1 has a priority of 5, an end-to-end delay constraint of DB_Cons = 40us, a source node of node 1, a destination node of node 6, and the nodes traversed along the path are node 1, node 2, node 3, and node 6. Assume that all nodes are configured with shaper parameters cir5 = 512 kbit / s and cbs5 = 32000 bytes for the priority 5 queue. Calculate the arrival curve and service curve for service flow 1 at nodes node 1, node 2, node 3, and node 6, as well as the corresponding upper delay bounds DB1 = 9us, DB2 = 8us, DB3 = 13us, and DB6 = 11us. After accumulation, the calculated end-to-end delay upper bound DB = DB1 + DB2 + DB3 + DB6 = 9 + 8 + 13 + 11 = 41 us, which exceeds the end-to-end delay constraint of 40 us. Therefore, parameter adjustment is required. Sorting DB1 to DB6 from largest to smallest, we find that DBmax_1 = 13 us, DBmax_2 = 11 us, DBmax_3 = 9 us, and DBmax_4 = 8 us correspond to nodes node3, node6, node1, and node2, respectively. Node node3, corresponding to the highest delay DBmax_1 = 13 us, is selected for parameter adjustment. Assuming that cbs5 = 22000 bytes after adjustment, recalculate the upper delay bound DBmax_1` = 11 us for service flow 1 at node3. The new upper delay bound is less than DBmax_1, satisfying condition 1 after parameter adjustment. At the same time, check the deployed service flow passing through node 3. Assume it is service flow 2 with a priority of 4. Recalculate the upper limit of the delay of service flow 2 on node 3 according to the adjusted parameters and refresh the end-to-end delay value. If the value is less than the end-to-end delay constraint of service flow 2, condition 2 after the parameter adjustment is met.
[0096] The delay difference after adjusting node node3 is calculated as diff = (DBmax_1 - DBmax_1`) - (DB - DB_Cons) = (13 - 11) - (41 - 40) = 1. If the difference is greater than 0, the upper bound DB of the end-to-end delay of service flow 1 after adjusting parameter cbs5 is 39 μs, which is less than the delay constraint DB_Cons value of 40 μs. This satisfies the end-to-end delay constraint.
[0097] Example 2: Forwarding node scheduling based on weighted fair queues. Assume the network topology shown in Figure 2, with a total of six nodes. A controller at the upper layer performs end-to-end delay calculation and parameter adjustment through network calculus. All link delays are negligible, and only the upper bound of the node delay is accumulated when calculating the end-to-end delay. The default shaper parameters configured for the six forwarding nodes are consistent, as are the default queue weight parameters of the scheduling algorithm. The WFQ scheduling weight parameters for priority queues 1 through 4 are w1:w2:w3:w4 = 1:1:1:1, respectively. Service flow 1 has a priority of 4, an end-to-end delay constraint of DB_Cons = 40us, a source node of node 1, a destination node of node 6, and the nodes traversed along the path are node 1, node 2, node 3, and node 6. Assume that all nodes are configured with shaper parameters cir5 = 512kbit / s and cbs5 = 32000byte for the priority 4 queue. Calculate the arrival and service curves for service flow 1 at nodes node 1, node 2, node 3, and node 6, as well as the corresponding upper delay bounds DB1 = 9 us, DB2 = 8 us, DB3 = 15 us, and DB6 = 12 us. Accumulate the upper end-to-end delay bound, and calculate DB = DB1 + DB2 + DB3 + DB6 = 9 + 8 + 15 + 12 = 44 us, which exceeds the end-to-end delay constraint of 40 us. Therefore, parameter adjustment is necessary. Sort DB1 through DB6 from largest to smallest, and find that DBmax_1 = 15 us, DBmax_2 = 12 us, DBmax_3 = 9 us, and DBmax_4 = 8 us correspond to nodes node 3, node 6, node 1, and node 2, respectively. Select node 3, which has the highest delay (DBmax_1 = 15 us), for parameter adjustment. Assume that after adjustment, cir4 = 256 kbit / s, cbs3 = 42000 bytes, and the weight parameters w1:w2:w3:w4 = 1:1:2:2. Recalculate the upper delay bound DBmax_1` for service flow 1 at node 3 to 13 us. The new upper delay bound is less than DBmax_1, satisfying condition 1 after the parameter adjustment. Simultaneously, check the deployed service flow passing through node 3. Assume it is service flow 2 with a priority of 3. Recalculate the upper delay bound for service flow 2 at node 3 using the adjusted parameters and refresh the end-to-end delay value. If the value is less than the end-to-end delay constraint for service flow 2, condition 2 after the parameter adjustment is satisfied.
[0098] The delay difference after adjusting node node3 is calculated as diff = (DBmax_1-DBmax_1`)-(DB-DB_Cons) = (15-13)-(44-40) = -2. If the difference is less than 0, then after adjusting the parameters cbs3, cir4, and weight parameters, the end-to-end delay upper bound DB of service flow 1 is 42us, which is greater than the delay constraint DB_Cons value of 40us and does not meet the end-to-end delay constraint condition.
[0099] Continue to select node 6, which corresponds to the node with the largest delay DBmax_2 = 12us among the remaining nodes, for parameter adjustment. Assume that the weight parameters after adjustment are w1:w2:w3:w4 = 1:1:1:2. Recalculate the upper limit of the delay of service flow 1 at node6, DBmax_2` = 9us. The new upper limit of the delay is less than DBmax_2, which meets the condition 1 after parameter adjustment. At the same time, check the deployed service flow passing through node6, assuming it is service flow 3 with a priority of 6. Recalculate the upper limit of the delay of service flow 3 at node6 according to the adjusted parameters, and refresh the end-to-end delay value. If its value is less than the end-to-end delay constraint value of service flow 3, then condition 2 after parameter adjustment is met.
[0100] Continuing to calculate the delay difference after adjusting node 6, diff = (DBmax_1 - DBmax_1`) + (DBmax_2 - DBmax_2`) - (DB - DB_Cons) = (15 - 13) + (12 - 9) - (44 - 40) = 1. If the difference is greater than 0, the upper bound DB of the end-to-end delay for service flow 1 after the parameter adjustment is 39 us, which is less than the delay constraint DB_Cons value of 40 us. This satisfies the end-to-end delay constraint. The adjusted parameters include cbs3, cir4, and the weight parameter of node 3, and the weight parameter of node 6.
[0101] In addition, an embodiment of the present application also provides a network device, which includes: a memory, a processor, and a computer program stored on the memory and runnable on the processor, wherein the computer program is configured to implement the method described above or the steps of the network parameter adjustment method described above.
[0102] In addition, an embodiment of the present application further provides a storage medium, which is a computer-readable storage medium and stores a computer program. When the computer program is executed by a processor, the method described above or the steps of the network parameter adjustment method described above are implemented.
[0103] As used herein, the terms "comprises," "comprising," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or system that includes a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or system. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not preclude the presence of additional identical elements in the process, method, article, or system that includes the element.
[0104] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) as described above, and includes a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present application.
[0105] The above are only some embodiments of the present application and are not intended to limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the description and drawings of this application, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.
Claims
1. A network parameter adjustment method, wherein: include: Determine a first end-to-end delay upper bound of the current service flow between two end nodes; In a case where the first end-to-end delay upper bound is greater than the end-to-end delay constraint of the current service flow, determining second network parameters of the N nodes that meet a first preset condition based on first network parameters of the N nodes through which the current service flow flows, wherein at least one network parameter of the first network parameter is different from that of the second network parameter, and N is a positive integer; The first preset condition includes: the second end-to-end delay upper bound of the current service flow calculated based on the second network parameters of the N nodes is not greater than the end-to-end delay constraint of the current service flow, and the end-to-end delay upper bound of the deployed service flow flowing through any node of the N nodes calculated based on the second network parameters of the N nodes is not greater than the end-to-end delay constraint of the deployed service flow.
2. The network parameter adjustment method according to claim 1, wherein: The determining, based on the first network parameters of the N nodes through which the current service flow flows, the second network parameters of the N nodes that meet the first preset condition includes: Determine an initial delay upper bound of each of the N nodes based on first network parameters of the N nodes through which the current service flow flows and a priority of the current service flow; Sequentially adjusting the network parameters of the node with the largest upper bound of the initial delay among the N nodes and whose network parameters have not been adjusted, until the second network parameters of the N nodes satisfying the first preset condition are obtained, wherein the network parameters of the adjusted nodes satisfy the second preset condition; The second preset condition includes: the adjusted delay upper bound of the current service flow passing through the node calculated based on the adjusted network parameters of the node is not greater than the initial delay upper bound of the node, and the end-to-end delay upper bound of the deployed service flow passing through the node calculated based on the adjusted network parameters of the node is not greater than the end-to-end delay constraint of the deployed service flow.
3. The network parameter adjustment method according to claim 2, wherein: The determining, based on the first network parameters of the N nodes through which the current service flow flows and the priority of the current service flow, an initial delay upper bound of each of the N nodes includes: Determine an arrival curve of the current service flow at each node based on a shaper parameter of each node in the N nodes and a priority of the current service flow; Determine a service curve of the current service flow at each node based on a scheduling algorithm of each node in the N nodes and a weight of a priority queue having the same priority as the current service flow in the scheduling algorithm of each node; Based on the arrival curve of each node and the service curve of each node, an initial delay upper bound of each node in the N nodes is calculated.
4. The network parameter adjustment method according to claim 3, wherein: The determining, based on the scheduling algorithm of each node in the N nodes and the weight of the priority queue with the same priority as the current service flow in the scheduling algorithm of each node, the service curve of the current service flow at each node includes: When the scheduling algorithm of the current node is a strict priority scheduling algorithm, the service curve of the current service flow at the current node is determined based on the general service curve of the current node, the arrival curve of the deployed service flow with a higher priority than the current service flow, and the maximum data packet length in the deployed service flow with a lower priority than the current service flow.
5. The network parameter adjustment method according to claim 3, wherein: The determining, based on the scheduling algorithm of each node in the N nodes and the weight of the priority queue with the same priority as the current service flow in the scheduling algorithm of each node, the service curve of the current service flow at each node includes: When the scheduling algorithm of the current node is a weighted fair queue scheduling algorithm, the service curve of the current business flow at the current node is determined based on the ratio of the weight of the priority queue to which the priority of the current business flow belongs to the sum of the weights of all priority queues, the common service curve of the current node, and the upper limit value of the data packet length in each priority column.
6. The network parameter adjustment method according to claim 3, wherein: The determining, based on the scheduling algorithm of each node in the N nodes and the weight of the priority queue with the same priority as the current service flow in the scheduling algorithm of each node, the service curve of the current service flow at each node includes: When the scheduling algorithm of the current node is a weighted polling scheduling algorithm, the service curve of the current business flow at the current node is determined based on the general service curve of the current node, the minimum number of data bits of service obtained by the priority queue to which the priority of the current business flow belongs in one poll, and the maximum number of data bits of service obtained by other queues except the priority queue to which the priority of the current business flow belongs in one poll.
7. The network parameter adjustment method according to claim 2, wherein: The process of sequentially adjusting the network parameters of the node having the largest initial delay upper bound and whose network parameters have not been adjusted among the N nodes includes: After adjusting the network parameters of a node among the N nodes whose initial delay upper bound is the largest and whose network parameters have not been adjusted, determining the sum of the delay differences reduced by the node after the adjustment of the current service flow; Determine a total difference between the first end-to-end delay upper bound and the end-to-end delay constraint of the current service flow; Determining whether the adjusted end-to-end delay upper bound of the current service flow is not greater than the end-to-end delay constraint of the current service flow based on the sum of the total difference and the reduced delay difference; If it is not greater than, adjust the network parameters of the next node among the N nodes whose initial delay upper bound is the largest and whose network parameters have not been adjusted, until the adjusted end-to-end delay upper bound of the current service flow is no greater than the end-to-end delay constraint of the current service flow.
8. The network parameter adjustment method according to any one of claims 1 to 7, wherein: The network parameters of the node include: average output rate, maximum burst volume, weight of priority queue in scheduling algorithm, and mapping relationship between service flow and priority of the node.
9. The network parameter adjustment method according to any one of claims 1 to 7, wherein: The priority of the deployed service flow is the same as or lower than the priority of the current service flow.
10. A network device, wherein: The network device comprises: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the method according to any one of claims 1 to 9.
11. A storage medium, wherein: The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.
Citation Information
Patent Citations
Method and equipment for configuring network
CN112671656A
Delay sensitive stream forwarding method and device
CN113726656A
Cross-domain deterministic network, scheduling method and device and cross-domain control orchestrator
CN117118917A
Various network transmission methods and devices related thereto
WO2023216726A1