CN115801660A - Traffic scheduling method, apparatus, device, storage medium, and program product - Google Patents

Traffic scheduling method, apparatus, device, storage medium, and program product Download PDF

Info

Publication number
CN115801660A
CN115801660A CN202211378372.9A CN202211378372A CN115801660A CN 115801660 A CN115801660 A CN 115801660A CN 202211378372 A CN202211378372 A CN 202211378372A CN 115801660 A CN115801660 A CN 115801660A
Authority
CN
China
Prior art keywords
srv6
slave
wide area
strategy
policy
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211378372.9A
Other languages
Chinese (zh)
Inventor
许青邦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202211378372.9A priority Critical patent/CN115801660A/en
Publication of CN115801660A publication Critical patent/CN115801660A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The embodiment of the application provides a traffic scheduling method, a traffic scheduling device, traffic scheduling equipment, a storage medium and a program product. The method comprises the following steps: acquiring first traffic information of a main SRv6 strategy sent by a first node, wherein the main SRv6 strategy corresponds to M forwarding paths, and the first traffic information comprises wide area network traffic of the M forwarding paths; determining M slave SRv6 strategies corresponding to the master SRv6 strategy, wherein one slave SRv6 strategy corresponds to one forwarding path; according to the first traffic information, determining second traffic information corresponding to each slave SRv6 strategy, wherein the second traffic information comprises wide area network traffic of a forwarding path corresponding to the slave SRv6 strategy; updating the forwarding paths of the M slave SRv6 strategies according to the second traffic information corresponding to each slave SRv6 strategy, and updating the master SRv6 strategy according to the updated slave SRv6 strategy; and sending a main SRv6 strategy to the first node, wherein the main SRv6 strategy is used for updating the M forwarding paths of the first node. The reliability of flow scheduling is improved.

Description

Traffic scheduling method, device, equipment, storage medium and program product
Technical Field
Embodiments of the present application relate to the field of communications technologies, and in particular, to a method, an apparatus, a device, a storage medium, and a program product for traffic scheduling.
Background
The segment routing internet protocol version 6 (srv 6) policy is an IPv6 tunnel technology, and integrates the technical characteristics of both segment routing and IPv 6.
In the SRv6 backbone, there are typically multiple forwarding paths between two devices. In the practical application process, a weight ratio can be set for the forwarding paths, and according to the weight ratio of the forwarding paths, a traffic scheduling mechanism based on the UCMP is adopted to schedule the wide area network traffic on each forwarding path. However, according to the above manner, the bandwidth utilization rate of a part of the wide area network may be too low, and the bandwidth utilization rate of a part of the wide area network may be too high, resulting in lower reliability of traffic scheduling.
Disclosure of Invention
Embodiments of the present application provide a method, an apparatus, a device, a storage medium, and a program product for traffic scheduling, so as to solve the problem of low reliability of traffic scheduling.
In a first aspect, an embodiment of the present application provides a traffic scheduling method, which is applied to a controller, and the method includes:
acquiring first traffic information of a main segment routing internet protocol version 6 (SRv 6) strategy sent by a first node, wherein the main SRv6 strategy corresponds to M forwarding paths, and the first traffic information comprises wide area network traffic of the M forwarding paths;
determining M slave SRv6 strategies corresponding to the master SRv6 strategy, wherein one slave SRv6 strategy corresponds to one forwarding path;
determining second traffic information corresponding to each slave SRv6 strategy according to the first traffic information, wherein the second traffic information comprises wide area network traffic of a forwarding path corresponding to the slave SRv6 strategy;
updating the forwarding paths of the M slave SRv6 strategies according to the second traffic information corresponding to each slave SRv6 strategy, and updating the master SRv6 strategy according to the updated slave SRv6 strategy;
sending the master SRv6 policy to the first node, wherein the master SRv6 policy is used for updating the M forwarding paths of the first node.
In a possible implementation manner, performing update processing on the M slave SRv6 policies according to the second traffic information corresponding to each slave SRv6 policy includes:
determining a target slave SRv6 policy from the plurality of slave SRv6 policies according to the second traffic information;
and updating the wide area line where the forwarding path corresponding to the target slave SRv6 strategy is located.
In one possible implementation, determining a target slave SRv6 policy among the plurality of slave SRv6 policies based on the second traffic information comprises:
determining the bandwidth utilization rate of the wide area line where the forwarding path corresponding to each slave SRv6 strategy is located according to the second traffic information;
if the bandwidth utilization rate of a first wide area line is larger than or equal to a first threshold value, determining at least one first forwarding path corresponding to the first wide area line;
determining a target forwarding path in the at least one first forwarding path, wherein the target forwarding path is a forwarding path of a wide area line to be replaced;
and determining the slave SRv6 strategy corresponding to the target forwarding path as the target slave SRv6 strategy.
In one possible implementation, determining a target slave SRv6 policy among the plurality of slave SRv6 policies based on the second traffic information comprises:
determining the route state of a wide area line where the forwarding path corresponding to each slave SRv6 strategy is located according to the second traffic information;
and when the route state of the second wide area line is determined to be the fault state, determining the slave SRv6 policies corresponding to the forwarding path positioned in the second wide area line as the target slave SRv6 policies.
In a possible embodiment, updating the wide area line on which the forwarding path corresponding to the target slave SRv6 policy is located includes:
determining a wide area line to be selected, wherein the bandwidth utilization rate of the wide area line to be selected is less than or equal to a second threshold value;
and updating the target from the wide area line where the forwarding path corresponding to the SRv6 strategy is located to the wide area line to be selected.
In one possible implementation, updating the master SRv6 policy according to the updated slave SRv6 policy includes:
determining a target slave SRv6 strategy for updating in the M slave SRv6 strategies;
determining a first forwarding path corresponding to the target slave SRv6 strategy in M forwarding paths corresponding to the master SRv6 strategy;
and updating the wide area line corresponding to the first forwarding path in the master SRv6 strategy into an updated wide area line corresponding to the target slave SRv6 strategy.
In a second aspect, an embodiment of the present application provides a traffic scheduling apparatus, which is applied to a controller, and the apparatus includes: an acquisition module, a first determination module, a second determination module, a first update module, a second update module, wherein,
the acquiring module is configured to acquire first traffic information of a main SRv6 policy sent by a first node, where the main SRv6 policy corresponds to M forwarding paths, and the first traffic information includes wide area network traffic of the M forwarding paths;
the first determining module is configured to determine M slave SRv6 policies corresponding to the master SRv6 policy, where one slave SRv6 policy corresponds to one forwarding path;
the second determining module is configured to determine, according to the first traffic information, second traffic information corresponding to each slave SRv6 policy, where the second traffic information includes wide area network traffic of a forwarding path corresponding to the slave SRv6 policy;
the first updating module is configured to update forwarding paths of the M slave SRv6 policies according to second traffic information corresponding to each slave SRv6 policy, and update the master SRv6 policy according to the updated slave SRv6 policy;
the second updating module is configured to send the master SRv6 policy to the first node, where the master SRv6 policy is used to update the M forwarding paths of the first node.
In a possible implementation manner, the first updating module is specifically configured to:
determining a target slave SRv6 policy from the plurality of slave SRv6 policies according to the second traffic information;
and updating the wide area line where the forwarding path corresponding to the target slave SRv6 strategy is located.
In a possible implementation manner, the first updating module is specifically configured to:
determining the bandwidth utilization rate of the wide area line where the forwarding path corresponding to each slave SRv6 strategy is located according to the second traffic information;
if the bandwidth utilization rate of a first wide area line is larger than or equal to a first threshold value, determining at least one first forwarding path corresponding to the first wide area line;
determining a target forwarding path in the at least one first forwarding path, wherein the target forwarding path is a forwarding path of a wide area line to be replaced;
and determining the slave SRv6 strategy corresponding to the target forwarding path as the target slave SRv6 strategy.
In a possible implementation manner, the first updating module is specifically configured to:
determining the route state of the wide area line where the forwarding path corresponding to each slave SRv6 strategy is located according to the second traffic information;
and when the route state of the second wide area line is determined to be the fault state, determining the slave SRv6 policy corresponding to the forwarding path positioned in the second wide area line as the target slave SRv6 policy.
In a possible implementation manner, the first updating module is specifically configured to:
determining a wide area line to be selected, wherein the bandwidth utilization rate of the wide area line to be selected is less than or equal to a second threshold;
and updating the target from the wide area line where the forwarding path corresponding to the SRv6 strategy is located to the wide area line to be selected.
In a possible implementation manner, the first updating module is specifically configured to:
determining a target slave SRv6 strategy for updating in the M slave SRv6 strategies;
determining a first forwarding path corresponding to the target slave SRv6 strategy in M forwarding paths corresponding to the master SRv6 strategy;
and updating the wide area line corresponding to the first forwarding path in the master SRv6 strategy into an updated wide area line corresponding to the target slave SRv6 strategy.
In a third aspect, an embodiment of the present application provides an electronic device, including: a memory and a processor;
the memory stores computer-executable instructions;
the processor executes the computer-executable instructions stored in the memory, so that the processor executes the traffic scheduling method of any one of the first aspect.
In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, where computer-executable instructions are stored in the computer-readable storage medium, and when the computer-executable instructions are executed by a processor, the computer-readable storage medium is configured to implement the traffic scheduling method according to any one of the first aspect.
In a fifth aspect, the present application provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the method for traffic scheduling according to any one of the first aspect is implemented.
After acquiring first traffic information of a master SRv6 policy and determining M slave SRv6 policies corresponding to the master SRv6 policy, a second traffic information corresponding to each slave SRv6 policy may be determined according to wide area network traffic of M forwarding paths in the first traffic information, update processing may be performed on wide area lines of the M slave SRv6 policies according to wide area line traffic corresponding to the forwarding paths in the second traffic information, update the master SRv6 policy according to the updated slave SRv6 policy, send the master SRv6 policy to a first node, and update the M forwarding paths of the first node. According to the flow of the wide area network, the wide area lines of the M forwarding paths of the master SRv6 strategy can be updated by using the slave SRv6 strategy, the bandwidth utilization rate of the wide area network is balanced, and the reliability of flow scheduling is improved.
Drawings
Fig. 1 is a schematic diagram of an application scenario provided in an embodiment of the present application;
fig. 2 is a schematic flow chart of a traffic scheduling method according to an embodiment of the present application;
fig. 3 is a schematic flowchart of another traffic scheduling method according to an embodiment of the present application;
fig. 4 is a schematic process diagram of traffic scheduling according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a traffic scheduling apparatus according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
Fig. 1 is a schematic diagram of an application scenario provided in an embodiment of the present application. Referring to fig. 1, the device a and the device B are included, a plurality of forwarding paths (for example, 4 forwarding paths are illustrated in the figure) are provided between the device a and the device B, and the device a and the device B may communicate through any one of the forwarding paths.
The forwarding paths between device a and device B may be located on different wide area lines. For example, forwarding path 1 and forwarding path 2 may be located on wide area line 1, forwarding path 3 may be located on wide area line 2, and forwarding path 4 may be located on wide area line 3.
In an actual application process, the control device may obtain the bandwidth utilization rate of each wide area line, and coordinate the wide area line where each forwarding path is located according to the bandwidth utilization rate of each wide area line. For example, when the control device determines that the bandwidth utilization of the wide area line 1 is too high, the forwarding path 1 or the forwarding path 2 may be coordinated to other wide area lines.
In the related art, a weight ratio may be set for the forwarding paths, and according to the weight ratio of the forwarding paths, a traffic scheduling mechanism based on the UCMP is adopted to schedule the wide area network traffic on each forwarding path. However, according to the above manner, the bandwidth utilization rate of a part of the wide area network may be too low, and the bandwidth utilization rate of a part of the wide area network may be too high, resulting in lower reliability of traffic scheduling.
In this embodiment of the present application, after obtaining first traffic information of a master SRv6 policy and determining M slave SRv6 policies corresponding to the master SRv6 policy, second traffic information corresponding to each slave SRv6 policy may be determined according to wide area network traffic of M forwarding paths in the first traffic information, update processing is performed on wide area lines of the M slave SRv6 policies according to wide area line traffic corresponding to the forwarding paths in the second traffic information, the master SRv6 policy is updated according to the updated slave SRv6 policy, the master SRv6 policy is sent to a first node, and the M forwarding paths of the first node are updated. In the above process, the slave SRv6 policy corresponds to the M forwarding paths of the master SRv6 policy, and the slave SRv6 policy can be used to update the wide area lines of the M forwarding paths of the master SRv6 policy according to the traffic of the wide area network, so that the bandwidth utilization rate of the wide area network is balanced, and the reliability of traffic scheduling is improved.
The method described in the present application will be described below with reference to specific examples. It should be noted that the following embodiments may exist alone or in combination with each other, and the description of the same or similar contents is not repeated in different embodiments.
Fig. 2 is a flowchart illustrating a traffic scheduling method according to an embodiment of the present application. Referring to fig. 2, the method may include:
s201, first flow information of the main SRv6 strategy sent by the first node is obtained.
The execution main body of the embodiment of the application may be a controller, and may also be a flow scheduling device arranged in the controller. The traffic scheduling device may be implemented by software, or may be implemented by a combination of software and hardware.
The first node is a node to be sent, and the first node may be an Edge node (PE) in the local area network.
The master SRv6 policy may correspond to M forwarding paths, where the M forwarding paths are forwarding paths between the first node and the target node, and for example, the first node may send information to the target node through any one of the M forwarding paths. M is an integer greater than or equal to 1.
Each forwarding path has a corresponding wide area line, and different forwarding paths may use the same wide area line.
For example, assume that the main SRv6 policy corresponds to 3 forwarding paths, where the wide area lines corresponding to forwarding path 1 and forwarding path 2 are both wide area lines 1, and the wide area line corresponding to forwarding path 3 is wide area line 2.
The first traffic information may include wan traffic of the M forwarding paths.
First traffic information of the primary SRv6 policy sent by the first node may be obtained periodically. For example, the first node may report traffic information every 5 minutes.
For example, for a primary SRv6 policy between node a and node B, the first traffic information of the primary SRv6 policy may be as shown in table 1, where SL represents a forwarding path.
TABLE 1
Figure BDA0003927718490000071
S202, M slave SRv6 strategies corresponding to the master SRv6 strategy are determined, and one slave SRv6 strategy corresponds to one forwarding path.
M slave SRv6 policies may be determined, each slave SRv6 policy corresponding to one forwarding path of the master SRv6 policy.
For example, assuming that the master SRv6 policy corresponds to 2 forwarding paths, which are respectively the forwarding path 1 and the forwarding path 2, the master SRv6 policy corresponds to 2 slave SRv6 policies, which are respectively marked as the slave SRv6 policy 1 and the slave SRv6 policy 2, the forwarding path of the slave SRv6 policy 1 may correspond to the forwarding path 1 of the master SRv6 policy, the path information of the forwarding path of the slave SRv6 policy 1 is the same as the path information of the forwarding path 1, the forwarding path of the slave SRv6 policy 2 may correspond to the forwarding path 2 of the master SRv6 policy, and the path information of the forwarding path of the slave SRv6 policy 2 is the same as the path information of the forwarding path 2.
For example, suppose that for the master SRv6 policy AB between node a and node B, one forwarding path for each slave SRv6 policy corresponding to the master SRv6 policy may be as shown in table 2.
TABLE 2
Figure BDA0003927718490000081
And S203, determining second flow information corresponding to each slave SRv6 strategy according to the first flow information.
The second traffic information may include wide area network traffic from a forwarding path corresponding to the SRv6 policy.
For example, assume that for the master SRv6 policy AB between node a and node B, the second traffic information of the slave SRv6 policy may be as shown in table 3.
TABLE 3
Slave SRv6 policy Forwarding path Wide area line Second flow (Mbps)
Strategy AB1 from SRv6 SL11 Wide area line 1 Flow 1
Strategy AB2 from SRv6 SL21 Wide area line 1 Flow 2
Strategy AB3 from SRv6 SL31 Wide area line 2 Flow rate 3
…… …… …… ……
And S204, updating the M slave SRv6 strategies according to the second traffic information corresponding to each slave SRv6 strategy, and updating the master SRv6 strategy according to the updated slave SRv6 strategies.
The update process may be performed on the M slave SRv6 policies in the following manner: determining a target slave SRv6 policy among the plurality of slave SRv6 policies according to the second traffic information; and updating the wide area line where the forwarding path corresponding to the SRv6 strategy is located.
The wide area line corresponding to the forwarding path from the SRv6 policy may be updated using the path tuning calculation according to the second traffic information.
The forwarding path of the master SRv6 policy may be updated according to the updated forwarding path of the slave SRv6 policy. For example, assuming that the wide area line 1 of the slave SRv6 policy AB2 in table 3 is updated to the wide area line 2, the wide area line of the forwarding path SL2 corresponding to the master SRv6 policy AB is updated to the wide area line 2.
S205, sending a main SRv6 strategy to the first node, wherein the main SRv6 strategy is used for updating M forwarding paths of the first node.
The M forwarding paths of the first node may be updated by using the forwarding path of the main SRv6 policy through a Border Gateway Protocol (BGP).
The first node may forward the traffic according to the updated forwarding path.
For example, assuming that the wide area line of the forwarding path SL2 corresponding to the primary SRv6 policy AB in table 2 is updated to the wide area line 2, and the updated primary SRv6 policy is sent to the first node, the first node may forward the service according to the updated forwarding path SL 2.
In the traffic scheduling method provided in this embodiment of the present application, after obtaining first traffic information of a master SRv6 policy sent by a first node and determining M slave SRv6 policies corresponding to the master SRv6 policy, second traffic information corresponding to each slave SRv6 policy may be determined according to the first traffic information, and forwarding paths of the M slave SRv6 policies may be updated according to the second traffic information corresponding to each slave SRv6 policy, and the master SRv6 policy is sent to the first node by updating the master SRv6 policy according to the updated slave SRv6 policy, where the master SRv6 policy may be used to update the M forwarding paths of the first node. In the above process, after the slave SRv6 policy is updated according to the second traffic information corresponding to the slave SRv6 policy, the master SRv6 policy is updated, so that the reliability of traffic scheduling is improved.
Next, a traffic scheduling method according to an embodiment of the present application will be described in further detail with reference to fig. 3.
Fig. 3 is a flowchart illustrating a traffic scheduling method according to an embodiment of the present application. Referring to fig. 3, the method may include:
s301, first flow information of the main SRv6 strategy sent by the first node is obtained.
S302, M slave SRv6 strategies corresponding to the master SRv6 strategy are determined, and one slave SRv6 strategy corresponds to one forwarding path.
And S303, determining second traffic information corresponding to each slave SRv6 strategy according to the first traffic information.
It should be noted that the execution processes of S301 to S303 may refer to the execution processes of S201 to S203, and are not described herein again.
S304, according to the second traffic information, determining the bandwidth utilization rate of the wide area line where the forwarding path corresponding to each slave SRv6 strategy is located.
Bandwidth utilization refers to the ratio of actual traffic on a link to the theoretical bandwidth of the link.
Actual traffic information for each wide area line may be derived based on the second traffic information for each slave SRv6 policy.
For example, as shown in table 4, it is assumed that the main SRv6 policy corresponds to 3 forwarding paths, which are forwarding paths 1 to 3, where the wide area lines where the forwarding path 1 and the forwarding path 2 are both wide area lines 1, and the wide area line where the forwarding path 3 is located is a wide area line 2, an actual flow passing through the wide area line 1 is 8500Mbps, and an actual flow passing through the wide area line 2 is 1500Mbps.
The bandwidth utilization of the wide area line may be determined based on actual traffic information for each wide area line and a theoretical bandwidth of the wide area line. For example, assuming that the actual traffic through wide-area line 1 is 8500Mbps and the theoretical bandwidth of wide-area line 1 is 10Gbps, the bandwidth utilization rate of wide-area line 1 at this time is 85%.
TABLE 4
Figure BDA0003927718490000101
S305, if it is determined that the bandwidth utilization of the first wide area line is greater than or equal to the first threshold, determining at least one first forwarding path corresponding to the first wide area line.
The first wide area line is a wide area line having a bandwidth utilization greater than or equal to a first threshold.
The first forwarding path is a forwarding path through the first wide area line.
For example, assuming that the first threshold is 80% and the bandwidth utilization rate of the wide area line 1 in table 4 is 85%, the bandwidth utilization rate of the wide area line 1 is greater than the first threshold, the wide area line 1 is a first wide area line, and the forwarding paths SL11 and SL21 passing through the wide area line 1 are first forwarding paths.
S306, determining a target forwarding path in at least one first forwarding path.
The target forwarding path refers to a forwarding path of the wide area line to be replaced.
After a wide area line of a first forwarding path is updated in at least one first forwarding path, if the bandwidth utilization rate of an original wide area line where the first forwarding path is located is less than or equal to a first threshold, the first forwarding path may be determined as a target forwarding path.
For example, as shown in table 4, if the bandwidth utilization rate of the wide area line 1 is greater than the first threshold value of 80%, and the wide area line of the forwarding path SL21 is updated to the wide area line 2, the bandwidth utilization rate of the wide area line 1 is reduced to 50%, and the bandwidth utilization rate of the wide area line 2 is less than or equal to 80%, and the forwarding path SL21 is the target forwarding path.
And S307, determining the slave SRv6 strategy corresponding to the target forwarding path as a target slave SRv6 strategy.
For example, as shown in table 4, assuming that the target forwarding path is the forwarding path SL21, the corresponding slave SRv6 policy AB2 is the target slave SRv6 policy.
And S308, determining the route state of the wide area line where the forwarding path corresponding to each slave SRv6 strategy is located according to the second traffic information.
The route state may include a fault state and a normal state. For example, assuming that the second traffic information of the wide area line is 0, the line status is in a fault state; assuming that the second traffic information of the wide area line is 1000Mbps, the line state is in a normal state.
S309, when the route state of the second wide area line is determined to be the fault state, determining the slave SRv6 strategy corresponding to the forwarding path positioned in the second wide area line as a target slave SRv6 strategy.
The second wide area line is referred to as the failed wide area line.
For example, assuming that the wide area line 1 in which the forwarding path SL11 of the slave SRv6 policy AB1 and the forwarding path SL21 of the slave SRv6 policy AB2 are located is in a failure state, the slave SRv6 policy AB1 and the slave SRv6 policy AB2 are determined as the target slave SRv6 policy.
And S310, determining a wide area line to be selected.
And the bandwidth utilization rate of the wide area line to be selected is less than or equal to a second threshold value.
And after the wide area line of the target forwarding path is updated to the wide area line to be selected, the bandwidth utilization rate of the wide area line to be selected is less than or equal to a second threshold value.
Alternatively, the first threshold and the second threshold may be the same.
For example, as shown in table 4, if the bandwidth utilization of the wide area line 1 is 85% greater than the first threshold 80%, and the wide area line of the forwarding path SL21 is updated to the wide area line 2, the bandwidth utilization of the wide area line 1 is reduced to 50%, and the bandwidth utilization of the wide area line 2 is less than or equal to the second threshold 80%, and the forwarding path SL21 is the target forwarding path.
S311, the target is updated to the wide area line to be selected from the wide area line where the forwarding path corresponding to the SRv6 strategy is located.
For example, assuming that the wide area line on which the forwarding path SL11 of the target slave SRv6 policy AB1 is located is the wide area line 1, and the wide area line to be selected is the wide area line 2, the wide area line on which the forwarding path SL11 of the target slave SRv6 policy AB1 is located is updated to the wide area line 2.
And S312, determining the target slave SRv6 strategy with the updating in the M slave SRv6 strategies.
The updated target slave SRv6 policy may refer to a slave SRv6 policy in which a wide area route where a forwarding path is located is changed among the M slave SRv6 policies.
S313, determining a first forwarding path corresponding to the target slave SRv6 strategy in the M forwarding paths corresponding to the master SRv6 strategy.
A corresponding first forwarding path in the master SRv6 policy may be determined according to the first forwarding path of the target slave SRv6 policy.
For example, if the first forwarding path of the target slave SRv6 policy AB1 is SL11, the forwarding path of the master SRv6 policy AB corresponding to SL11 is SL1, and SL1 is the corresponding first forwarding path in the master SRv6 policy AB.
And S314, updating the wide area line corresponding to the first forwarding path in the master SRv6 strategy into an updated wide area line corresponding to the target slave SRv6 strategy.
For example, if the wide area line corresponding to the first forwarding path SL1 in the master SRv6 policy AB is the wide area line 1, and the updated wide area line corresponding to the target slave SRv6 policy AB1 is the wide area line 2, the wide area line corresponding to SL1 is updated to the wide area line 2.
S315, sending a main SRv6 strategy to the first node, wherein the main SRv6 strategy is used for the first node to select a target forwarding path from the M forwarding paths.
It should be noted that the execution process of S316 may refer to the execution process of S204, and is not described herein again.
The traffic scheduling method provided in this embodiment of the present application may determine, after determining, according to the first traffic information of the master SRv6 policy, second traffic information corresponding to M slave SRv6 policies corresponding to the master SRv6 policy, a route state of a wide area line where a forwarding path corresponding to each slave SRv6 policy is located, and if the route state is normal, may determine, according to the second traffic information, a bandwidth utilization rate of the wide area line where the forwarding path corresponding to each slave SRv6 policy is located, and may determine, according to the bandwidth utilization rate, a target forwarding path in at least one first forwarding path corresponding to the wide area line. And determining the slave SRv6 strategy corresponding to the target forwarding path as a target slave SRv6 strategy. And if the line state is failed, determining the slave SRv6 strategy corresponding to the forwarding path positioned on the second wide area line as a target slave SRv6 strategy. And after determining the wide area line to be selected, updating the target from the wide area line where the forwarding path corresponding to the SRv6 strategy is located to the wide area line to be selected. The wide area line corresponding to the first forwarding path in the master SRv6 policy may be updated to an updated wide area line corresponding to the target slave SRv6 policy. After sending the primary SRv6 policy to the first node, the first node may forward the service according to the forwarding path of the primary SRv6 policy. In the above process, after the wide area line of the forwarding path where the slave SRv6 policy is located is updated according to the bandwidth utilization rate of the wide area line, the forwarding path of the master SRv6 policy may be updated according to the slave SRv6 policy, so that the bandwidth utilization rate of the wide area network is balanced, and the reliability of traffic scheduling is improved.
Next, referring to fig. 4, a traffic scheduling method according to an embodiment of the present application is described in detail by using a specific example.
Fig. 4 is a schematic process diagram of traffic scheduling according to an embodiment of the present application. In an actual application process, the backbone network topology shown in fig. 4 includes three core nodes a, B, and C, and the nodes may be interconnected through a 2 × 10gbps dedicated line, and this embodiment takes the example that the core node a sends a service to the core node B for details. Each core node has multiple devices (also referred to as nodes), the PE device is an edge device in the service forwarding process, and the P device is an intermediate device in the service forwarding process. There are 4 wide area lines, 1-4, when core node a sends traffic to core node B.
Assume that the controller creates a master SRv6 policy AB with a number of forwarding paths of 8, which may be denoted as SL1-8. The slave SRv6 policies AB1-8 may be determined from the SL1-8 that generated the master SRv6 policy AB. An initial forwarding path from SRv6 policies AB1-8 may be determined as shown in table 5. The forwarding paths SL1-8 of the master SRv6 policy AB are determined from the initial forwarding paths of the slave SRv6 policies AB1-8. SL1-8 of the primary SRv6 policy may be sent to the first of the a nodes via BGP.
TABLE 5
Figure BDA0003927718490000131
Figure BDA0003927718490000141
First traffic information of SL1-8 of the master SRv6 policy AB periodically reported by the first node may be obtained, and second traffic information of the slave SRv6 policy AB1-8 may be determined according to the first traffic information, where the traffic information may be as shown in table 5.
Assuming that the preset threshold of the bandwidth utilization is 80% and the utilization of the wide area link 1 in table 5 is 85%, the controller may select to migrate the wide area line of the slave SRv6 policy AB4 to the wide area link 3, update the SL4 of the master SRv6 policy AB according to the SL41 of the slave SRv6 policy AB4, and finally issue the updated master SRv6 policy AB to the first node of the node a, where the updated wide area line may be as shown in table 6.
TABLE 6
Figure BDA0003927718490000142
Figure BDA0003927718490000151
If the wide area link 1 fails, the SL1-3 of the affected master SRv6 policy AB is quickly switched to the backup path wide area link 2, the controller may update the wide area link of the slave SRv6 policy AB1-3, update the SL1-3 of the master SRv6 policy AB according to the updated slave SRv6 policy AB1-3, and send the updated master SRv6 policy AB to the first node of the node a, where the updated wide area link may be as shown in table 7.
TABLE 7
Figure BDA0003927718490000152
Fig. 5 is a schematic structural diagram of a traffic scheduling device according to an embodiment of the present disclosure. Referring to fig. 5, the traffic scheduling apparatus may include an obtaining module 11, a first determining module 12, a second determining module 13, a first updating module 14, and a second updating module 15, wherein,
the acquiring module 11 is configured to acquire first traffic information of a main SRv6 policy sent by a first node, where the main SRv6 policy corresponds to M forwarding paths, and the first traffic information includes wide area network traffic of the M forwarding paths;
the first determining module 12 is configured to determine M slave SRv6 policies corresponding to the master SRv6 policy, where one slave SRv6 policy corresponds to one forwarding path;
the second determining module 13 is configured to determine, according to the first traffic information, second traffic information corresponding to each slave SRv6 policy, where the second traffic information includes wide area network traffic of a forwarding path corresponding to the slave SRv6 policy;
the first updating module 14 is configured to update forwarding paths of the M slave SRv6 policies according to the second traffic information corresponding to each slave SRv6 policy, and update the master SRv6 policy according to the updated slave SRv6 policy;
the second updating module 15 is configured to send the master SRv6 policy to the first node, where the master SRv6 policy is used to update the M forwarding paths of the first node.
The traffic scheduling apparatus provided in the embodiment of the present application may implement the technical solution shown in the foregoing method embodiment, and the implementation principle and the beneficial effect thereof are similar, which are not described herein again.
In a possible implementation, the first updating module 14 is specifically configured to:
determining a target slave SRv6 policy among the plurality of slave SRv6 policies based on the second traffic information;
and updating the wide area line where the forwarding path corresponding to the SRv6 strategy is located.
In a possible implementation, the first updating module 14 is specifically configured to:
determining the bandwidth utilization rate of the wide area line where the forwarding path corresponding to each slave SRv6 strategy is located according to the second traffic information;
if the bandwidth utilization rate of the first wide area line is larger than or equal to a first threshold value, determining at least one first forwarding path corresponding to the first wide area line;
determining a target forwarding path in at least one first forwarding path, wherein the target forwarding path is a forwarding path of a wide area line to be replaced;
and determining the slave SRv6 strategy corresponding to the target forwarding path as a target slave SRv6 strategy.
In a possible implementation, the first updating module 14 is specifically configured to:
determining the route state of the wide area line where the forwarding path corresponding to each slave SRv6 strategy is located according to the second traffic information;
and when the route state of the second wide area line is determined to be a fault state, determining the slave SRv6 strategies corresponding to the forwarding paths positioned on the second wide area line as target slave SRv6 strategies.
In a possible implementation, the first updating module 14 is specifically configured to:
determining a wide area line to be selected, wherein the bandwidth utilization rate of the wide area line to be selected is less than or equal to a second threshold;
and updating the target from the wide area line where the forwarding path corresponding to the SRv6 strategy is located to the wide area line to be selected.
In a possible implementation, the first updating module 14 is specifically configured to:
determining a target slave SRv6 strategy for updating in the M slave SRv6 strategies;
determining a first forwarding path corresponding to a target slave SRv6 strategy in M forwarding paths corresponding to the master SRv6 strategy;
and updating the wide area line corresponding to the first forwarding path in the master SRv6 strategy into the updated wide area line corresponding to the target slave SRv6 strategy.
The traffic scheduling apparatus provided in the embodiment of the present application may implement the technical solution shown in the foregoing method embodiment, and the implementation principle and the beneficial effect thereof are similar, which are not described herein again.
Referring to fig. 6, the electronic device 20 may include a processor 21 and a memory 22. The processor 21, the memory 22, and the various parts are illustratively interconnected by a bus 23.
The memory 22 stores computer-executable instructions;
processor 21 executes computer-executable instructions stored by memory 22 to cause processor 21 to perform a traffic scheduling method as shown in the above-described method embodiments.
Accordingly, an embodiment of the present application provides a computer-readable storage medium, in which computer-executable instructions are stored, and when the computer-executable instructions are executed by a processor, the method for scheduling traffic is implemented according to the above-mentioned method embodiment.
Accordingly, the present application may also provide a computer program product, which includes a computer program, and when the computer program is executed by a processor, the traffic scheduling method shown in the foregoing method embodiment may be implemented.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Disks (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrases "comprising a," "8230," "8230," or "comprising" does not exclude the presence of additional identical elements in the process, method, article, or apparatus comprising the element.
The above are merely examples of the present application and are not intended to limit the present application. Various modifications and changes may occur to those skilled in the art to which the present application pertains. Any modification, equivalent replacement, improvement or the like made within the spirit and principle of the present application shall be included in the scope of the claims of the present application.

Claims (10)

1. A traffic scheduling method is applied to a controller, and the method comprises the following steps:
acquiring first traffic information of a main segment routing Internet protocol (SRv 6) strategy sent by a first node, wherein the main SRv6 strategy corresponds to M forwarding paths, and the first traffic information comprises wide area network traffic of the M forwarding paths;
determining M slave SRv6 strategies corresponding to the master SRv6 strategy, wherein one slave SRv6 strategy corresponds to one forwarding path;
determining second traffic information corresponding to each slave SRv6 strategy according to the first traffic information, wherein the second traffic information comprises wide area network traffic of a forwarding path corresponding to the slave SRv6 strategy;
updating the forwarding paths of the M slave SRv6 strategies according to the second traffic information corresponding to each slave SRv6 strategy, and updating the master SRv6 strategy according to the updated slave SRv6 strategy;
sending the master SRv6 policy to the first node, wherein the master SRv6 policy is used for updating the M forwarding paths of the first node.
2. The method according to claim 1, wherein updating the M slave SRv6 policies according to the second traffic information corresponding to each slave SRv6 policy includes:
determining a target slave SRv6 policy from the plurality of slave SRv6 policies according to the second traffic information;
and updating the wide area line where the forwarding path corresponding to the target slave SRv6 strategy is located.
3. The method of claim 2, wherein determining a target slave SRv6 policy among the plurality of slave SRv6 policies based on the second traffic information comprises:
determining the bandwidth utilization rate of the wide area line where the forwarding path corresponding to each slave SRv6 strategy is located according to the second traffic information;
if the bandwidth utilization rate of a first wide area line is larger than or equal to a first threshold value, determining at least one first forwarding path corresponding to the first wide area line;
determining a target forwarding path in the at least one first forwarding path, wherein the target forwarding path is a forwarding path of a wide area line to be replaced;
and determining the slave SRv6 strategy corresponding to the target forwarding path as the target slave SRv6 strategy.
4. The method of claim 2, wherein determining a target slave SRv6 policy among the plurality of slave SRv6 policies based on the second traffic information comprises:
determining the route state of the wide area line where the forwarding path corresponding to each slave SRv6 strategy is located according to the second traffic information;
and when the route state of the second wide area line is determined to be the fault state, determining the slave SRv6 policy corresponding to the forwarding path positioned in the second wide area line as the target slave SRv6 policy.
5. The method according to any of claims 2-4, wherein updating the wide area line on which the forwarding path corresponding to the target slave SRv6 policy is located comprises:
determining a wide area line to be selected, wherein the bandwidth utilization rate of the wide area line to be selected is less than or equal to a second threshold;
and updating the target from the wide area line where the forwarding path corresponding to the SRv6 strategy is located to the wide area line to be selected.
6. The method of any of claims 1-5, wherein updating the master SRv6 policy according to the updated slave SRv6 policy comprises:
determining a target slave SRv6 strategy for updating in the M slave SRv6 strategies;
determining a first forwarding path corresponding to the target slave SRv6 strategy in M forwarding paths corresponding to the master SRv6 strategy;
and updating the wide area line corresponding to the first forwarding path in the master SRv6 strategy into an updated wide area line corresponding to the target slave SRv6 strategy.
7. A flow scheduling device applied to a controller, the device comprising: an acquisition module, a first determination module, a second determination module, a first update module, a second update module, wherein,
the acquiring module is configured to acquire first traffic information of a main SRv6 policy sent by a first node, where the main SRv6 policy corresponds to M forwarding paths, and the first traffic information includes wide area network traffic of the M forwarding paths;
the first determining module is configured to determine M slave SRv6 policies corresponding to the master SRv6 policy, where one slave SRv6 policy corresponds to one forwarding path;
the second determining module is configured to determine, according to the first traffic information, second traffic information corresponding to each slave SRv6 policy, where the second traffic information includes wide area network traffic of a forwarding path corresponding to the slave SRv6 policy;
the first updating module is configured to update forwarding paths of the M slave SRv6 policies according to second traffic information corresponding to each slave SRv6 policy, and update the master SRv6 policy according to the updated slave SRv6 policy;
the second updating module is configured to send the master SRv6 policy to the first node, where the master SRv6 policy is used to update the M forwarding paths of the first node.
8. An electronic device, comprising: a memory and a processor;
the memory stores computer-executable instructions;
the processor executing computer-executable instructions stored by the memory causes the processor to perform the traffic scheduling method of any of claims 1 to 6.
9. A computer-readable storage medium having computer-executable instructions stored therein, which when executed by a processor, are configured to implement the traffic scheduling method of any one of claims 1 to 6.
10. A computer program product comprising a computer program which, when executed by a processor, implements the traffic scheduling method of any of claims 1 to 6.
CN202211378372.9A 2022-11-04 2022-11-04 Traffic scheduling method, apparatus, device, storage medium, and program product Pending CN115801660A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211378372.9A CN115801660A (en) 2022-11-04 2022-11-04 Traffic scheduling method, apparatus, device, storage medium, and program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211378372.9A CN115801660A (en) 2022-11-04 2022-11-04 Traffic scheduling method, apparatus, device, storage medium, and program product

Publications (1)

Publication Number Publication Date
CN115801660A true CN115801660A (en) 2023-03-14

Family

ID=85435647

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211378372.9A Pending CN115801660A (en) 2022-11-04 2022-11-04 Traffic scheduling method, apparatus, device, storage medium, and program product

Country Status (1)

Country Link
CN (1) CN115801660A (en)

Similar Documents

Publication Publication Date Title
CN102204188B (en) Routing computation method and host node device in virtual network element
US10003649B2 (en) Systems and methods to improve read/write performance in object storage applications
US9231781B2 (en) Flow distribution algorithm for aggregated links in an ethernet switch
GB2536608A (en) Optimizing the topology of a network with variable traffic demands
CN104469845A (en) Message processing method, system and equipment
WO2017215378A1 (en) Software-defined network, node, path calculation method and device, and storage medium
WO2010127527A1 (en) Method and apparatus for implementing k-shortest paths algorithm in the case of existing multiple edges between adjacent nodes
US11050655B2 (en) Route information distribution through cloud controller
CN115514696B (en) Method, device and equipment for transmitting computing power resource information
CN107391039B (en) Data object storage method and device
US9686099B2 (en) Updating virtual network maps
US20210120097A1 (en) Scheduling solution configuration method and apparatus, computer readable storage medium thereof, and computer device
US8990619B1 (en) Method and systems to perform a rolling stack upgrade
CN115801660A (en) Traffic scheduling method, apparatus, device, storage medium, and program product
CN102651712B (en) Node routing method of multiprocessor system, controller and multiprocessor system
CN104348737A (en) Multicast message transmission method and switches
US10104202B2 (en) Collectively loading programs in a multiple program multiple data environment
CN102355370B (en) Method for Ethernet board-level protection, device and system
US20190044848A1 (en) Virtual switching framework
CN111130871B (en) Protection switching method and device and network equipment
RU2290760C2 (en) Method for dynamic distribution of load for signal points and subsystems
WO2017000845A1 (en) Traffic control method and apparatus
CN108390780B (en) Method and apparatus for processing information
CN112491744B (en) Port flow mirroring method, device and medium
WO2022193111A1 (en) Abnormality recovery method and apparatus, and base station and computer storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination