Traffic scheduling method and related equipment

By decomposing traffic scheduling into multiple time periods for parallel computation, and combining punitive traffic unit price and baseline bandwidth, traffic planning in large-scale enterprise networks is optimized, solving the problems of link usage and cost optimization in complex networks, and achieving efficient traffic scheduling and reduced overhead.

CN120880997APending Publication Date: 2025-10-31HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410537073.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-04-29
Publication Date
2025-10-31

AI Technical Summary

Technical Problem

In large-scale enterprise networks, how to formulate effective traffic scheduling strategies within a specified time to optimize link usage and reduce costs, especially when there are many branch gateways, complex links, many application types and different QoS requirements.

Method used

By decomposing the traffic scheduling process into multiple time periods for parallel computation, the predicted traffic and 95-level threshold for each link, combined with the penalty traffic unit price and baseline bandwidth, optimize the traffic planning of the links to reduce costs.

Benefits of technology

It improves the efficiency of traffic scheduling and planning, reduces overall traffic overhead, optimizes link usage, and saves network operating costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120880997A_ABST
    Figure CN120880997A_ABST
Patent Text Reader

Abstract

The invention relates to the field of networks. The invention specifically relates to a traffic scheduling method and related equipment. The method comprises the following steps: obtaining a plurality of first path sets, and obtaining a plurality of second path sets based on the QoS demand of each application group in a plurality of application groups and the plurality of first path sets; based on the plurality of second path sets, the predicted traffic of each application group in the plurality of first time periods and the charging information of each link in the target network are subjected to parallel calculation to obtain first predicted traffic of each link in the plurality of first time periods; determining a first 95 horizontal line of each link in the second time period based on the obtained first predicted traffic of each link in the plurality of first time periods; and determining the planned traffic of each link in each first time period based on the target 95 horizontal line of each link in the second time period and the traffic of each link in the historical time period. By adopting the scheme of the invention, the flow scheduling efficiency can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of networking, and more particularly to a traffic scheduling method and related equipment. Background Technology

[0002] In the cloud era, enterprises face new challenges in their digital transformation, including surging bandwidth demands, diverse networking scenarios, a massive increase in the number of applications, and complex network operations and maintenance. Software-defined wide-area network (SD-WAN) is a new type of network technology that replaces traditional hardware devices with software. Through network virtualization and automation technologies, it enables intelligent management and optimization of enterprise wide-area networks. Figure 1 This is a schematic diagram of an enterprise networking architecture. This networking architecture is a hub-spoke architecture. Figure 1 The network architecture shown includes a main gateway and multiple branch gateways. The main gateway is connected to the regional data server. The main gateway is connected to the branch gateways via a leased network or the Internet. The branch gateways are connected to the application terminals. The regional data server is used to provide corresponding application data to the application terminals through the main gateway, leased line or Internet, and branch gateways.

[0003] Because the service quality (QoS) of carrier-dedicated lines is higher than that of the internet, their prices are also higher. Different applications have different QoS requirements, and to save costs, traffic is scheduled along the network link. However, in practical applications… Figure 1 The network architecture shown has as many as 5,000 branch gateways, each connecting to the Internet and 1-3 leased networks, resulting in a maximum of 15,000 links. Based on user needs, applications can be categorized into up to 8 types, each with corresponding traffic requirements and SLA quality requirements. The entire network, comprising 5,000 gateways, hosts a total of 40,000 application types. For such a large-scale network, determining a traffic scheduling strategy within a specified timeframe is a critical problem that needs to be solved. Summary of the Invention

[0004] This application provides a traffic scheduling method and related equipment. Using this application is beneficial to improving the efficiency of traffic scheduling or traffic planning.

[0005] In a first aspect, embodiments of this application provide a traffic scheduling method. This method is applied to a scheduling device.

[0006] The scheduling device acquires multiple first path sets, which correspond to multiple application groups. The first path set corresponding to a target application group includes paths from the network device corresponding to the target application group to the regional data server within the target network. The multiple application groups include the target application group. Based on the Quality of Service (QoS) requirements of each application group and the multiple first path sets, the scheduling device obtains multiple second path sets, which correspond to the multiple first path sets. Each second path set includes paths in the corresponding first path set that satisfy the QoS of the corresponding application group. The first predicted traffic of each link in multiple first time periods is calculated in parallel using a second path set, the predicted traffic of each application group in multiple first time periods, and the billing information of each link in the target network. The scheduling device determines the first 95 level line of each link in the second time period based on the first predicted traffic of each link in multiple first time periods. The second time period includes multiple first time periods. The scheduling device determines the planned traffic of each link in each first time period based on the target 95 level line of each link in the second time period and the traffic of each link in historical time periods. The target 95 level line of each link in the second time period is determined based on the first 95 level line of each link in the second time period.

[0007] As can be seen, in the scheme of this application, when planning the traffic in the target network during the second time period, the second time period is divided into multiple first time periods. Then, the predicted traffic of each link in multiple first time periods is calculated in parallel, and the 95-level line of each link in the second time period is calculated based on the predicted traffic of each link in multiple first time periods. Finally, the planned traffic of each link in each first time period is determined based on the 95-level line of each link in the second time period. Since the predicted traffic of each link in multiple first time periods and the 95-level line of each link in the second time period are calculated in parallel, it is beneficial to improve the efficiency of traffic planning or traffic scheduling.

[0008] In conjunction with the first aspect, in one possible implementation, each link satisfies a first constraint condition when obtaining the first predicted traffic for multiple first time periods. The first constraint condition is:

[0009] Under the first, second, and third conditions, the sum of traffic costs for all links in the target network is minimized in each first time period; where link e in the target network... i Traffic costs for each first time period are based on link e i The first predicted flow is determined in each first time period;

[0010] The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period;

[0011] The second condition is: in each first time period, the link containing link e is passed. i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth, the first flow, and the second flow, where the first flow is the link e. i In each first time period, the first predicted traffic exceeds the baseline bandwidth, and the second traffic is the link e. i The first predicted traffic in each first time period exceeds the link e i The maximum elastic bandwidth of traffic;

[0012] The third condition is: in each first time period, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0013] In conjunction with the first aspect, in one possible implementation, link e i The traffic cost for the first time period is the sum of the first traffic cost and the second traffic cost. The first traffic cost is based on link e. i The first predicted traffic in the first time period and the link e i The unit price of traffic is determined by the second traffic cost, and the cost of the second traffic cost is based on the second traffic and the link e. i The unit price of traffic and the punitive unit price of traffic are determined.

[0014] By introducing a penalty traffic unit price, it is beneficial to avoid the predicted traffic on a link exceeding the link's maximum elastic bandwidth when predicting traffic on the link. Even if the predicted traffic exceeds the maximum elastic bandwidth of all links, the predicted traffic will be allocated to links with lower traffic unit prices, thereby reducing traffic costs.

[0015] In conjunction with the first aspect, in one possible implementation, the method of this embodiment further includes:

[0016] The scheduling device determines the baseline bandwidth and first identifier of each link based on the first 95-level line of each link in the second time period and the predicted traffic of each link in multiple first time periods. Specifically, if the first predicted traffic of each link exceeds the first 95-level line of each link in the second time period in multiple first time periods, the baseline bandwidth of each link is the maximum elastic bandwidth of each link, and the first identifier is set to a first value. If the first predicted traffic of each link does not exceed the first 95-level line of each link in the second time period in multiple first time periods, the baseline bandwidth of each link is the first 95-level line of each link in the second time period, and the first identifier is set to a second value. The scheduling device also determines the baseline bandwidth of each application group within multiple application groups based on the bandwidth of each application group. The requirements and multiple first path sets yield multiple third path sets, which correspond to multiple first path sets. Each third path set includes paths in the corresponding first path set that satisfy the bandwidth requirements of the corresponding application group. The scheduling device calculates the second predicted traffic of each link in the multiple first time periods based on the multiple third path sets, the predicted traffic of each application group in multiple first time periods, and the value of the second identifier of each link in the target network. The scheduling device determines the second 95-level line of each link in the second time period based on the second predicted traffic of each link in the multiple first time periods. The target 95-level line is either the first 95-level line or the second 95-level line.

[0017] In conjunction with the first aspect, in one possible implementation, each link satisfies the second constraint condition when obtaining multiple first time period second predicted traffic. The second constraint condition is:

[0018] Under the first, third, and fourth conditions, the sum of traffic costs for all links in the target network is minimized across multiple first time periods; where link e in the target network... i Traffic costs for each first time period are based on link e i Second predicted traffic and link e in each first time period i The unit price of traffic is determined;

[0019] The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period;

[0020] The fourth condition is: in each first time period, when link e i When the first identifier is set to the first value, it passes through the link e. i The sum of traffic on the path is not greater than link e i Maximum elastic bandwidth; when link e i When the first identifier is the second value, it passes through the link e.i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth and the first traffic, where the first traffic is the link e. i The first predicted traffic in each first time period exceeds the baseline bandwidth;

[0021] The third condition is: in each first time period, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0022] Updating the 95-level curve and predicted traffic for each link using the above method helps to further reduce traffic overhead when using the updated 95-level curve and predicted traffic for each link in subsequent traffic planning. Furthermore, when predicting traffic, the traffic on links during free periods is maximized to reduce traffic on other links, thereby reducing overall traffic overhead.

[0023] In conjunction with the first aspect, in one possible implementation, the scheduling device determines the planned traffic for each link in each first time period based on the target 95-degree horizontal line for each link in the second time period and the traffic of each link in historical time periods, including:

[0024] Based on the target predicted traffic of each link in time period t and the target 95-degree horizontal line in time period t, the baseline bandwidth and second identifier of each link in time period t are determined. When the target predicted traffic of each link in time period t exceeds the target 95-degree horizontal line, the baseline bandwidth of each link in time period t+1 is the maximum elastic bandwidth, and the second identifier of each link is set to the first value. When the target predicted traffic of each link in time period t does not exceed the target 95-degree horizontal line, the baseline bandwidth of each link in time period t is the target 95-degree horizontal line, and the second identifier of each link in time period t is set to the second value. When t=0, the target 95-degree horizontal line in time period t is either the first 95-degree horizontal line or the second 95-degree horizontal line. When the target 95-degree horizontal line is the first 95-degree horizontal line, the target predicted traffic is the first predicted traffic. When the target 95-degree horizontal line is the second 95-degree horizontal line, the target predicted traffic is the second predicted traffic.

[0025] Based on the bandwidth requirements of each application group in multiple application groups and multiple first path sets, multiple fourth path sets are obtained. The multiple fourth path sets correspond to multiple first path sets. Each fourth path set includes the path in the first path set corresponding to each fourth path set that satisfies the bandwidth requirements of the corresponding application group.

[0026] Based on multiple sets of fourth paths, the traffic of each application group in time period t, and the value of the second identifier of each link in the target network, the planned traffic of each link in time period t is calculated in parallel. When t=0, the traffic of each application group in time period t is the traffic of each application group in the historical time period. When t is greater than 0, the traffic of each application group in time period t is determined based on the actual traffic of each application group in time period t-1. Time period t-1 and time period t are time periods that are adjacent in time among multiple first time periods.

[0027] In conjunction with the first aspect, in one possible implementation, the planned traffic for each link during time period t satisfies the third constraint, which is:

[0028] Under conditions five, six, and seven, the sum of traffic costs for all links in the target network during time period t is minimized; the sum of traffic costs for links e in the target network is minimized. i Traffic charges during time period t are based on link e. i Planned traffic and link e during time period t i The unit price of traffic is determined;

[0029] The fifth condition is: during time period t, the sum of traffic on the paths in the fourth path set corresponding to the target application group is the traffic of the target application group during time period t.

[0030] The sixth condition is: during time period t, when link e i When the value of the second identifier is the first value, it passes through the link e. i The sum of traffic on the path is not greater than link e i Maximum elastic bandwidth; when link e i When the second identifier takes the second value, it passes through the link e. i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth and the third traffic, where the third traffic is the link e i Traffic exceeding the baseline bandwidth during time period t;

[0031] The seventh condition is: during time period t+1, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0032] It can be seen that when planning traffic, the traffic on links during free periods should be increased as much as possible to reduce the traffic on other links, thereby reducing overall traffic overhead.

[0033] In conjunction with the first aspect, in one possible implementation, the method of this embodiment further includes:

[0034] It is determined that the link containing link e is passed through during time period t.i Is the sum of traffic on the path greater than link e? i The baseline bandwidth; if it passes through a link e i The sum of traffic on the path exceeds link e i Baseline bandwidth, obtain link e i The load of all quantiles in the second time period was higher than that of link e. i The load at the target 95 level during time period t; from above link e i The load determination link e at the target 95 horizontal line during time period t. i At the target 95 level in time period t+1, link e i The target 95 level is higher than link e in time period t+1. i The target level is 95 during time period t.

[0035] It can be seen that when the actual traffic of each link in time period t exceeds the target 95 level line of time period t, it indicates that the traffic of that link is fluctuating. At this time, the target 95 level line of time period t is adjusted. Through this feedback adjustment, the planned traffic of each link in time period t+1 is consistent with the predicted traffic in time period t+1, which helps to ensure that the traffic cost is minimized.

[0036] Secondly, embodiments of this application provide a scheduling device. The scheduling device includes an acquisition unit, a determination unit, and a calculation unit.

[0037] The acquisition unit is used to acquire multiple sets of first paths, which correspond to multiple application groups. The first path set corresponding to the target application group includes the path between the network device corresponding to the target application group and the regional data server in the target network. The multiple application groups include the target application group.

[0038] The determining unit is used to obtain multiple second path sets based on the QoS requirements of each application group in multiple application groups and multiple first path sets. The multiple second path sets correspond to multiple first path sets, and each second path set includes paths in the first path set corresponding to each second path set that satisfy the QoS of the corresponding application group.

[0039] The computing unit is used to calculate the first predicted traffic of each link in multiple first time periods in parallel based on multiple second path sets, the predicted traffic of each application group in multiple first time periods, and the billing information of each link in the target network.

[0040] The determining unit is also used to determine the first 95-level line of each link in the second time period based on the first predicted traffic of each link in the first time period; the second time period includes multiple first time periods; and to determine the planned traffic of each link in each first time period based on the target 95-level line of each link in the second time period and the traffic of each link in the historical time period, wherein the target 95-level line of each link in the second time period is determined based on the first 95-level line of each link in the second time period.

[0041] In conjunction with the second aspect, in one possible implementation, each link satisfies a first constraint condition when obtaining the first predicted traffic for multiple first time periods. The first constraint condition is:

[0042] Under the first, second, and third conditions, the sum of traffic costs for all links in the target network is minimized in each first time period; where link e in the target network... i Traffic costs for each first time period are based on link e i The first predicted flow is determined in each first time period;

[0043] The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period;

[0044] The second condition is: in each first time period, the link containing link e is passed. i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth, the first flow, and the second flow, where the first flow is the link e. i In each first time period, the first predicted traffic exceeds the baseline bandwidth, and the second traffic is the link e. i The first predicted traffic in each first time period exceeds the link e i The maximum elastic bandwidth of traffic;

[0045] The third condition is: in each first time period, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0046] In conjunction with the second aspect, in one possible implementation, link e i The traffic cost for the first time period is the sum of the first traffic cost and the second traffic cost. The first traffic cost is based on link e. i First predicted traffic and link e in the first time period i The unit price of traffic is determined by the second traffic cost, and the cost of the second traffic cost is based on the second traffic and the link e. i The unit price of traffic and the punitive unit price of traffic are determined.

[0047] In conjunction with the second aspect, in one possible implementation,

[0048] The determining unit is further configured to determine the baseline bandwidth of each link and the first identifier of each link based on the first 95-level line of each link in the second time period and the predicted traffic of each link in multiple first time periods; wherein, if the first predicted traffic of each link exceeds the first 95-level line of each link in multiple first time periods, the baseline bandwidth of each link is the maximum elastic bandwidth of each link, and the first identifier is a first value; if the first predicted traffic of each link does not exceed the first 95-level line of each link in multiple first time periods, the baseline bandwidth of each link is the first 95-level line of each link in the second time period, and the first identifier is a second value; the scheduling device obtains multiple third path sets based on the bandwidth requirements of each application group in multiple application groups and multiple first path sets, the multiple third path sets correspond to multiple first path sets, and each third path set includes the path in the first path set corresponding to each third path set that satisfies the bandwidth requirements of the corresponding application group;

[0049] The computing unit is also used to calculate in parallel the second predicted traffic of each link in the multiple first time periods based on multiple third path sets, the predicted traffic of each application group in multiple first time periods, and the value of the second identifier of each link in the target network.

[0050] The determining unit is further configured to determine the second 95-level line of each link in the second time period based on the second predicted traffic of each link in the second time period obtained in the first time period; wherein the target 95-level line is either the first 95-level line or the second 95-level line.

[0051] In conjunction with the second aspect, in one possible implementation, each link satisfies the second constraint condition when obtaining multiple first-period second-predicted traffic flows. The second constraint condition is:

[0052] Under the first, third, and fourth conditions, the sum of traffic costs for all links in the target network is minimized across multiple first time periods; where link e in the target network... i Traffic costs for each first time period are based on link e i Second predicted traffic and link e in each first time period i The unit price of traffic is determined;

[0053] The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period;

[0054] The fourth condition is: in each first time period, when link e iWhen the first identifier is set to the first value, it passes through the link e. i The sum of traffic on the path is not greater than link e i Maximum elastic bandwidth; when link e i When the first identifier is the second value, it passes through the link e. i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth and the first traffic, where the first traffic is the link e. i The first predicted traffic in each first time period exceeds the baseline bandwidth;

[0055] The third condition is: in each first time period, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0056] In conjunction with the second aspect, in one possible implementation, regarding the determination of the planned traffic for each link in each first time period based on the target 95-degree horizontal line for each link in the second time period and the traffic of each link in historical time periods, the determining unit is specifically used for:

[0057] Based on the target predicted traffic of each link in time period t and the target 95-degree horizontal line in time period t, the baseline bandwidth and second identifier of each link in time period t are determined. When the target predicted traffic of each link in time period t exceeds the target 95-degree horizontal line, the baseline bandwidth of each link in time period t+1 is the maximum elastic bandwidth, and the second identifier of each link is set to the first value. When the target predicted traffic of each link in time period t does not exceed the target 95-degree horizontal line, the baseline bandwidth of each link in time period t+1 is the target 95-degree horizontal line, and the second identifier of each link in time period t+1 is set to the second value. When t=0, the target 95-degree horizontal line in time period t is either the first 95-degree horizontal line or the second 95-degree horizontal line. When the target 95-degree horizontal line is the first 95-degree horizontal line, the target predicted traffic is the first predicted traffic. When the target 95-degree horizontal line is the second 95-degree horizontal line, the target predicted traffic is the second predicted traffic.

[0058] Based on the bandwidth requirements of each application group in multiple application groups and multiple first path sets, multiple fourth path sets are obtained. The multiple fourth path sets correspond to multiple first path sets. Each fourth path set includes the path in the first path set corresponding to each fourth path set that satisfies the bandwidth requirements of the corresponding application group.

[0059] Based on multiple sets of fourth paths, the traffic of each application group in time period t, and the value of the second identifier of each link in the target network, the planned traffic of each link in time period t is calculated in parallel. When t = 0, the traffic of each application group in time period t is the traffic of each application group in the historical time period. When t is greater than 0, the traffic of each application group in time period t is determined based on the actual traffic of each application group in time period t-1. Time period t and time period t+1 are time periods that are adjacent in time among multiple first time periods.

[0060] In conjunction with the second aspect, in one possible implementation, the planned traffic for each link in time period t+1 satisfies the third constraint, which is:

[0061] Under conditions five, six, and seven, the sum of traffic costs for all links in the target network during time period t+1 is minimized; the sum of traffic costs for all links in the target network is minimized. i Traffic charges for the t+1 period are based on link e. i Planned traffic and link e in time period t+1 i The unit price of traffic is determined;

[0062] The fifth condition is: during time period t+1, the sum of traffic on the paths in the fourth path set corresponding to the target application group is equal to the traffic of the target application group during time period t.

[0063] The sixth condition is: during time period t+1, when link e i When the value of the second identifier is the first value, it passes through the link e. i The sum of traffic on the path is not greater than link e i Maximum elastic bandwidth; when link e i When the second identifier takes the second value, it passes through the link e. i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth and the third traffic, where the third traffic is the link e i Traffic exceeding the baseline bandwidth during the t+1 time period;

[0064] The seventh condition is: during time period t+1, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0065] In conjunction with the second aspect, in one possible implementation, the determining unit is also used to determine the passage of link e during time period t+1. i Is the sum of traffic on the path greater than link e? i Baseline bandwidth;

[0066] The acquisition unit is also used if it passes through a link containing e iThe sum of traffic on the path exceeds link e i Baseline bandwidth, obtain link e i The load of all quantiles in the second time period was higher than that of link e. i The load at the target 95 level during time period t;

[0067] The determining unit is also used to determine the link e. i The load determination link e at the target 95 horizontal line during time period t. i At the target 95 level in time period t+1, link e i The target 95 level is higher than link e in time period t+1. i The target level is 95 during time period t.

[0068] Thirdly, embodiments of this application provide a scheduling apparatus, including a processor and a memory. The memory is used to store program code. The processor is used to invoke the program code stored in the memory to execute the method provided in the first aspect or any possible implementation of the first aspect.

[0069] Fourthly, embodiments of this application provide a computer storage medium including computer instructions that, when executed on an electronic device, cause the electronic device to perform a method as provided in any possible implementation of the first aspect.

[0070] Fifthly, embodiments of this application provide a computer program product that, when run on a computer, causes the computer to perform the method provided in any possible implementation of the first aspect.

[0071] It is understood that the scheduling device described in the second or third aspect above is used to execute any of the methods provided in the first aspect, and the computer storage medium described in the fourth aspect and the computer program product described in the fifth aspect are both used to implement any of the methods provided in the first aspect. Therefore, the beneficial effects they can achieve can be referred to the beneficial effects in the corresponding methods, and will not be repeated here. Attached Figure Description

[0072] Figure 1 A schematic diagram of a system architecture provided for an embodiment of this application;

[0073] Figure 2 A flowchart illustrating a traffic scheduling method provided in an embodiment of this application;

[0074] Figure 3 A schematic diagram of a link and path provided for an embodiment of this application;

[0075] Figure 4A schematic diagram illustrating a process for predicting traffic flow and determining a 95-level horizontal line, provided for an embodiment of this application;

[0076] Figure 5 A schematic diagram of a traffic scheduling process provided in an embodiment of this application;

[0077] Figure 6 This is a schematic diagram of the structure of a scheduling device provided in an embodiment of this application;

[0078] Figure 7 This is a schematic diagram of another scheduling device provided in an embodiment of this application. Detailed Implementation

[0079] The terms “first,” “second,” “third,” and “fourth,” etc., used in the specification, claims, and drawings of this application are used to distinguish different objects, not to describe a specific order.

[0080] "Multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating three possible relationships. For example, A and / or B means: A exists alone, A and B exist simultaneously, or B exists alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.

[0081] The embodiments of this application will now be described with reference to the accompanying drawings.

[0082] See Figure 1 , Figure 1 This is a schematic diagram of an enterprise network architecture provided as an embodiment of this application. For example... Figure 1 As shown, this network architecture includes a regional data server, a main gateway, the internet, a leased network, multiple branch gateways, and application terminals. The regional data server is connected to the main gateway, which in turn is connected to the internet and the leased network. The internet and the leased network are connected to each of the multiple branch gateways, and each branch gateway is connected to an application terminal. This enterprise network can be referred to as the target network.

[0083] The regional data server can be a server, server cluster, distributed server, or other type of server, and no specific restrictions are imposed here.

[0084] The main gateway is used to aggregate data from the internet and / or leased networks before forwarding it to the regional data server, or to distribute data from the regional data server to the internet and / or leased networks. It should be noted that the main gateway can also be replaced by other network devices, such as routing devices.

[0085] A leased network is a network that guarantees latency and bandwidth requirements, but it is more expensive than the internet. In one example, the leased network is a multi-protocol label switch (MPLS) network.

[0086] A branch gateway is used to aggregate data from application terminals and then forward it to the regional data server via the internet and / or leased network elements, or to send data from the regional data server to the application terminals. It should be noted that the branch gateway can also be replaced by other network devices, such as routing devices.

[0087] The application terminal refers to the terminal device that carries the service, such as a smartphone, desktop computer, laptop, or tablet. The service here can be anything from W3C services and Onebox services to email services, etc., without limitation.

[0088] The scheduling device, based on the services carried by the application terminal, will Figure 1 The application terminals are divided into multiple application groups, and application terminals carrying services with the same QoS requirements belong to the same application group. The scheduling device is a regional data server or a module within a regional data server. When the regional data server is a server cluster, the scheduling device is a server within the server cluster or a module within that server.

[0089] The scheduling device obtains multiple first path sets from the target network. These first path sets represent paths from the network devices corresponding to the application group to the regional data server. These paths are formed by overlay links in the target network. The network devices can be branch gateways connected to the application terminals. Overlay links include links between the branch gateway and the Internet, links between the branch gateway and the leased network, links between the Internet and the main gateway, and links between the leased network and the main gateway. Based on the application group's QoS requirements, the scheduling device determines a second path set from the first path sets. The paths in the second path set include those in the first path set that meet the application group's QoS requirements. The scheduling device calculates the predicted traffic of each link in multiple first time periods based on multiple second path sets, the predicted traffic of each application group in multiple first time periods, and the billing information of each link in the target network in parallel. The scheduling device determines the first 95-level line of each link in the second time period based on the predicted traffic of each link in multiple first time periods. The second time period includes multiple first time periods. The scheduling device determines the planned traffic of each link in each first time period based on the target 95-level line of each link in the second time period and the traffic of each link in historical time periods. The target 95-level line of each link in the second time period is determined based on the first 95-level line of each link in the second time period.

[0090] As can be seen, in the scheme of this application, when planning the traffic in the target network during the second time period, the second time period is divided into multiple first time periods. Then, the predicted traffic of each link in multiple first time periods is calculated in parallel, and the 95-level line of each link in the second time period is calculated based on the predicted traffic of each link in multiple first time periods. Finally, the planned traffic of each link in each first time period is determined based on the 95-level line of each link in the second time period. Since the predicted traffic of each link in multiple first time periods and the 95-level line of each link in the second time period are calculated in parallel, it is beneficial to improve the efficiency of traffic planning or traffic scheduling.

[0091] The implementation process of this application is described in detail below.

[0092] See Figure 2 , Figure 2 This is a flowchart illustrating a traffic scheduling method provided in an embodiment of this application. The method is applied to a scheduling device, which is... Figure 1 A server or a module within a regional data center. For example... Figure 2 As shown, the method includes:

[0093] S201, The scheduling device obtains multiple sets of first paths.

[0094] Among them, multiple first path sets correspond to multiple application groups. The first path set corresponding to the target application group includes the paths from the network devices corresponding to the target application group to the server in the target network, and the multiple application groups include the target application group.

[0095] It should be noted here that the target network refers to Figure 1 The network shown includes multiple application terminals, which are terminal devices that carry services.

[0096] The scheduling device, based on the services carried by the application terminal, will Figure 1 The application terminals are divided into multiple application groups. Application terminals that carry the same QoS requirements belong to the same application group.

[0097] The scheduling device obtains multiple sets of first paths from the target network. The paths in the first path set corresponding to the target application group are the paths between the network devices corresponding to the target application group and the regional data server. These paths are composed of overlay links in the network. The network devices here can be branch gateways connected to the application terminals. Overlay links include links between the branch gateway and the Internet, links between the branch gateway and the leased network, links between the Internet and the main gateway, and links between the leased network and the main gateway.

[0098] S202, The scheduling device obtains multiple second path sets based on the QoS of each application group in multiple application groups and multiple first path sets.

[0099] Among them, multiple second path sets correspond to multiple first path sets, and each of the multiple second path sets includes paths in the first path set corresponding to each second path set that satisfy the QoS of the corresponding application group.

[0100] It should be noted that, due to the differences in bandwidth and / or latency among different paths in the first path set, there are paths in the first path set that cannot meet the QoS requirements of the corresponding application group. Therefore, the scheduling device determines the paths that meet the QoS requirements of the application group from the first path set based on the QoS requirements of the application group. These paths constitute the second path set.

[0101] S203. The scheduling device calculates the predicted traffic of each link in multiple first time periods in parallel based on multiple second path sets, the predicted traffic of each application group in multiple first time periods, and the billing information of each link in the target network.

[0102] Among them, the first predicted traffic of each link in multiple first time periods satisfies the first constraint condition, which includes:

[0103] Under the first, second, and third conditions, the sum of traffic costs for all links in the target network in each first time period is minimized, and the link e in the target network is minimized. i Traffic costs for each first time period are based on link e i The first predicted flow is determined in each first time period;

[0104] The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period;

[0105] The second condition is: in each first time period, for link e i After passing through link e i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth, the first flow, and the second flow, where the first flow is the link e. i In each first time period, the first predicted traffic exceeds the baseline bandwidth, and the second traffic is the link e. i The first predicted traffic in each first time period exceeds the link e i The maximum elastic bandwidth of traffic;

[0106] The third condition is: in each first time period, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. iMaximum elastic bandwidth.

[0107] In one feasible embodiment, link e i Traffic costs in the first time period are based on link e i First predicted traffic and link e in the first time period i The unit price per unit of traffic is determined.

[0108] In one feasible embodiment, link e i The traffic cost for the first time period is the sum of the first traffic cost and the second traffic cost. The first traffic cost is based on link e. i First predicted traffic and link e in the first time period i The unit price of traffic is determined by the second traffic cost, and the cost of the second traffic cost is based on the second traffic and the link e. i The unit price of traffic and the penalty unit price of traffic are determined. By introducing the penalty unit price of traffic, it is beneficial to avoid the predicted traffic on a link exceeding the maximum elastic bandwidth of the link when performing traffic prediction on the link. Even if the predicted traffic exceeds the maximum elastic bandwidth of all links, the predicted traffic will be allocated to the link with the lower unit price of traffic, thereby reducing traffic costs.

[0109] In a specific example, the first constraint can be expressed as:

[0110]

[0111]

[0112]

[0113]

[0114] Among them, z i For link e i Traffic exceeding the baseline bandwidth during time period t, w i For link e i Traffic during time period t exceeds link e i Maximum elastic bandwidth traffic, x j This indicates that path p occurs during time period t. j Traffic on; P k This refers to the set of leased networks or the Internet that application group k can use. For application group k, the predicted traffic during time period t; v i c i and C i These are link e i The unit price of traffic, baseline bandwidth, and maximum elastic bandwidth, where V is the penalty unit price of traffic.

[0115] It should be noted here that the link e i The traffic in time period t refers to link e i The first predicted flow during time period t.

[0116] In one example, V = max i v i +1, which means the penalty unit price is the sum of the maximum value of the traffic unit price of all links in the target network and 1.

[0117] In order to explain See Figure 3 , Figure 3 This is a schematic diagram of a path. For example... Figure 3 As shown, the paths containing link e2 include paths {e2, e5} and {e2, e6}. The sum of traffic passing through path {e2, e5} and traffic passing through path {e2, e6} does not exceed the baseline bandwidth of link e2, the sum of the first predicted traffic of link e2 exceeding the baseline bandwidth of link e2 and the first predicted traffic of link e2 exceeding the maximum elastic bandwidth of link e2, which limits the traffic passing through link e2.

[0118] S204. The scheduling device determines the first 95-degree horizontal line of each link in the second time period based on the first predicted traffic of each link in multiple first time periods; the second time period includes multiple first time periods.

[0119] In one example, the first time period is 30 days, and the second time period can be one day, one hour, 30 minutes, 5 minutes, or other time periods.

[0120] Specifically, the scheduling device sorts the predicted traffic for each link across multiple first time periods from low to high, and determines the first predicted traffic at the 95th percentile as the first 95th percentile for each link in the second time period. For example, the second time period is 30 days, the first time period is 5 minutes long, and the second time period includes 8640 first time periods; link e i There are 8640 first predicted traffic items. The scheduling device sorts these 8640 first predicted traffic items from low to high, and determines the first predicted traffic item ranked 8208th as link e. i At the first 95 level in 30 days.

[0121] In one possible implementation, the scheduling device performs an iterative operation on the first 95-degree horizontal line of each link in the second time period, specifically as follows:

[0122] The scheduling device determines the baseline bandwidth and first identifier of each link based on the first 95-level line of each link in the second time period and the predicted traffic of each link in multiple first time periods. Specifically, if the predicted traffic of each link exceeds the first 95-level line of each link in the second time period in multiple first time periods, the baseline bandwidth of each link is the maximum elastic bandwidth of each link, and the first identifier is set to a first value. If the predicted traffic of each link does not exceed the first 95-level line of each link in the second time period in multiple first time periods, the baseline bandwidth of each link is the first 95-level line of each link in the second time period, and the first identifier is set to a second value. The scheduling device is based on... Multiple application groups, each with its bandwidth requirements and multiple first path sets, generate multiple third path sets. These third path sets correspond to multiple first path sets, and each third path set includes paths in the corresponding first path set that satisfy the bandwidth requirements of the corresponding application group. The scheduling device calculates the second predicted traffic of each link in the multiple first time periods based on the multiple third path sets, the predicted traffic of each application group in the multiple first time periods, and the value of the second identifier of each link in the target network. The scheduling device determines the second 95-degree horizontal line of each link in the second time period based on the second predicted traffic of each link in the multiple first time periods.

[0123] It should be noted that the paths in the multiple third path sets not only meet the bandwidth requirements of the corresponding application groups, but also meet other requirements such as latency for the application groups.

[0124] In this context, each link satisfies the second constraint condition when obtaining multiple second predicted traffic values ​​for the first time period. The second constraint condition is as follows:

[0125] Under the first, third, and fourth conditions, the sum of traffic costs for all links in the target network is minimized across multiple first time periods; where link e in the target network... i Traffic costs for each first time period are based on link e i Second predicted traffic and link e in each first time period i The unit price of traffic is determined;

[0126] The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period;

[0127] The fourth condition is: in each first time period, when link e i When the first identifier is set to the first value, it passes through the link e. i The sum of traffic on the path is not greater than link e i Maximum elastic bandwidth; when link ei When the first identifier is the second value, it passes through the link e. i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth and the first traffic, where the first traffic is the link e. i The first predicted traffic in each first time period exceeds the baseline bandwidth;

[0128] The third condition is: in each first time period, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0129] In a specific example, the second constraint can be expressed as:

[0130]

[0131]

[0132]

[0133]

[0134]

[0135] Among them, z i For link e i Traffic exceeding the baseline bandwidth during time period t, w i For link e i Traffic during time period t exceeds link e i Maximum elastic bandwidth traffic, x j This indicates that path p occurs during time period t. j Traffic on; P k This refers to the set of leased networks or the Internet that application group k can use. v represents the traffic of application group k during time period t; i ,c i and C i These are link e i The unit price per unit of traffic, baseline bandwidth, and maximum elastic bandwidth. Here... For link e in time period t i The first identifier, Indicates that time period t is link e i During the non-free period, the link e passes through the t period. i Traffic is billed normally; Indicates that time period t is link e i Free time slots. When When the scheduling device performs traffic prediction, it will allocate link e during time period t.i The bandwidth is set to the maximum elastic bandwidth, so that link e i During time period t, it handles more traffic load, and link e i Traffic costs will not increase, and due to link e i During time period t, more traffic load is carried, while the traffic load on other links decreases, and the cost of other links also decreases, thereby reducing the overall bandwidth cost.

[0136] It should be noted here that the link e i The traffic in time period t refers to link e i The predicted traffic for the first person in time period t. The traffic of application group k in time period t refers to the predicted traffic of application group k in time period t.

[0137] It should be noted that the above iterative process can be executed multiple times. By using the 95-level line obtained through multiple iterations and the predicted traffic of each link in the target network, the traffic of each link in the target network can be planned, which is beneficial to further reduce the traffic cost of the target network.

[0138] In a specific example, the scheduling device route includes a path aggregator, a QoS tester, a routing scheme generator, and a 95-level calculator. For example... Figure 4 As shown, the path aggregator obtains the paths between the network devices corresponding to the application group and the regional data server. These paths can be one or more, forming a first path set. For multiple application groups, the path aggregator can obtain multiple first path sets, each corresponding to a different application group. Not all paths in the first path set for each application group meet its QoS requirements; these QoS requirements include, but are not limited to, link bandwidth and link latency. The QoS tester, based on the application group's QoS requirements and the link attributes of the paths in the first path set, obtains a second path set. The paths in the second path set are those in the first path set that meet the application group's QoS requirements. These link attributes include, but are not limited to, latency and bandwidth. By performing the above processing on multiple first path sets, the QoS tester can obtain multiple second path sets.

[0139] The traffic scheduling scheme generator calculates the first predicted traffic for each link in multiple first time periods based on multiple second path sets, the predicted traffic for each application group in multiple first time periods, and the billing information for each link in the target network in parallel. The billing information for each link in the target network is determined based on the billing method. The first predicted traffic for each link in the target network satisfies a first constraint condition, which is described in detail above and will not be repeated here. The traffic scheduling scheme generator transmits the routing scheme to the 95-level calculator. It should be noted that the routing scheme here refers to the first predicted traffic for each link in the target network in each first time period.

[0140] The 95-level calculator sorts the predicted traffic of each link in the target network from low to high across multiple first time periods. The predicted traffic at the 95th percentile is defined as the first 95-level for each link in the second time period. Based on the first 95-level for each link in the second time period and the predicted traffic across multiple first time periods, the calculator adjusts the baseline bandwidth of each link. If the predicted traffic of any link exceeds the first 95-level for the second time period across multiple first time periods, the baseline bandwidth of each link is its maximum elastic bandwidth. If the predicted traffic of any link does not exceed the first 95-level for the second time period across multiple first time periods, the baseline bandwidth of each link is its first 95-level for the second time period. The 95-level calculator transmits the adjusted baseline bandwidth (i.e., the link bandwidth) of each link to the QoS tester, enabling the QoS tester to update the link attributes of each link based on the adjusted baseline bandwidth.

[0141] The QoS tester optimizes paths based on updated link attributes. Specifically, the QoS tester obtains a third path set from the first path set based on the application group's QoS requirements and the updated link attributes of the paths in the first path set. The paths in the third path set are those in the first path set that meet the application group's QoS requirements. This process is repeated for multiple first path sets, resulting in multiple third path sets.

[0142] The traffic scheduling scheme generator calculates the second predicted traffic for each link in multiple first time periods based on multiple third path sets, the predicted traffic of each application group in multiple first time periods, and the billing information of each link in the target network in parallel. The second predicted traffic of each link in the target network satisfies the second constraint condition, which is described in detail above and will not be repeated here. The traffic scheduling scheme generator transmits the routing scheme to the 95-level calculator. It should be noted that the routing scheme here is the second predicted traffic of each link in the target network in each first time period.

[0143] The 95-level line calculator sorts the second predicted traffic of each link in the target network from low to high across multiple first time periods, and determines the second predicted traffic at the 95th percentile as the second 95-level line for each link in the second time period.

[0144] It should be noted that the above iterative process can be executed once or multiple times, and there is no limitation on this.

[0145] S205. The scheduling device determines the planned traffic for each link in each first time period based on the target 95-degree horizontal line of each link in the second time period and the traffic of each link in the historical time period.

[0146] The target 95-degree horizontal line is either the first 95-degree horizontal line or the second 95-degree horizontal line.

[0147] In one possible implementation, the scheduling device determines the baseline bandwidth and second identifier of each link in time period t based on the target predicted traffic of each link in time period t and the target 95-degree horizontal line in time period t. When the traffic of each link in time period t exceeds the target 95-degree horizontal line, the baseline bandwidth of each link in time period t is the maximum elastic bandwidth, and the second identifier of each link is set to a first value. When the target predicted traffic of each link in time period t does not exceed the target 95-degree horizontal line, the baseline bandwidth of each link in time period t+1 is the target 95-degree horizontal line, and the second identifier of each link in time period t+1 is set to a second value. When t = 0, the target 95-degree horizontal line in time period t is either the first 95-degree horizontal line or the second 95-degree horizontal line. When the target 95-degree horizontal line is the first 95-degree horizontal line, the target predicted traffic is the first predicted traffic. When the target 95-degree horizontal line is the second 95-degree horizontal line, the target predicted traffic is... The traffic is the second predicted traffic; the scheduling device obtains multiple fourth path sets based on the bandwidth requirements of each application group in multiple application groups and multiple first path sets. The multiple fourth path sets correspond to the multiple first path sets. Each fourth path set includes the path in the first path set corresponding to each fourth path set that satisfies the bandwidth requirements of the corresponding application group; the scheduling device calculates the planned traffic of each link in the time period t in parallel based on the multiple fourth path sets, the traffic of each application group in time period t, and the value of the second identifier of each link in the target network; when t=0, the traffic of each application group in time period t is the traffic of each application group in the historical time period. When t is greater than 0, the traffic of each application group in time period t is determined based on the actual traffic of each application group in time period t-1. Time period t-1 and time period t are time periods that are adjacent in time among multiple first time periods.

[0148] The planned traffic for each link in time period t satisfies the third constraint condition, which is:

[0149] Under conditions five, six, and seven, the sum of traffic costs for all links in the target network during time period t is minimized; the sum of traffic costs for links e in the target network is minimized. i Traffic charges during time period t are based on link e. i Planned traffic and link e during time period t i The unit price of traffic is determined;

[0150] The fifth condition is: during time period t, the sum of traffic on the paths in the fourth path set corresponding to the target application group is the traffic of the target application group during time period t.

[0151] The sixth condition is: during time period t, when link e i When the value of the second identifier is the first value, it passes through the link e. i The sum of traffic on the path is not greater than link e i Maximum elastic bandwidth; when link e i When the second identifier takes the second value, it passes through the link e. i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth and the third traffic, where the third traffic is the link e i Traffic exceeding the baseline bandwidth during the t+1 time period;

[0152] The seventh condition is: during time period t, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0153] In a specific example, the third constraint can be expressed as:

[0154]

[0155]

[0156]

[0157]

[0158]

[0159] Among them, z i For link e i Traffic exceeding the baseline bandwidth during time period t, w i For link e i Traffic during time period t exceeds link e i Maximum elastic bandwidth traffic, x j This indicates that path p occurs during time period t. j Traffic on; P kHere, k represents the set of leased networks or the internet that application group k can use. For application group k, the predicted traffic during time period t; v i c i and C i These are link e i The unit price per unit of traffic, baseline bandwidth, and maximum elastic bandwidth. Here... For link e in time period t i The second identifier, Indicates that time period t is link e i During the non-free period, the link e passes through the t period. i Traffic is billed normally; Indicates that time period t is link e i Free time slots. When When the scheduling device performs traffic prediction, it will allocate link e during time period t. i The bandwidth is set to the maximum elastic bandwidth, so that link e i During time period t, it handles more traffic load, and link e i Traffic costs will not increase, and due to link e i During time period t, more traffic load is carried, while the traffic load on other links decreases, and the cost of other links also decreases, thereby reducing the overall bandwidth cost.

[0160] It should be noted here that the link e i The traffic in time period t refers to link e i The target predicted flow for time period t. The predicted flow of application group k in time period t refers to the predicted value of the actual flow of application group k in time period t. This predicted value is the actual flow of application group k in time period t-1. When t=0, the predicted value of the actual flow of application group k in time period t is the flow of application group k in the historical time period.

[0161] In conjunction with the first aspect, in one possible implementation, the method of this embodiment further includes:

[0162] It is determined that the link containing link e is passed through during time period t. i Is the sum of traffic on the path greater than link e? i The baseline bandwidth; if it passes through a link e i The sum of traffic on the path exceeds link e i Baseline bandwidth, obtain link e i The load of all quantiles in the second time period was higher than that of link e. i The load at the target 95 level during time period t; from above link e i The load determination link e at the target 95 horizontal line during time period t. iAt the target 95 level in time period t+1, link e i The target 95 level is higher than link e in time period t+1. i The target level is 95 during time period t.

[0163] Specifically, the online process planning process is as follows: Figure 5 As shown, for time period t, the scheduling device obtains link e i After determining the target 95-level horizontal line and the target predicted traffic for time period t, the scheduling device determines link e. i Does the target predicted traffic in time period t exceed link e? i The target level is 95 degrees horizontal during time period t; if so, the scheduling device will link e. i The bandwidth was adjusted to link e i The maximum elastic bandwidth; otherwise, the scheduling device will link e i The bandwidth was adjusted to link e i The baseline bandwidth. The traffic scheduling scheme generator of the scheduling device is based on the adjusted link e. i Baseline bandwidth update link e i The link attributes are then adjusted. Similarly, the link attributes of each link in the target network are adjusted. Based on the QoS requirements of the application group and the adjusted link attributes of the paths in the first path set, the scheduling device obtains a fourth path set from the first path set. The paths in the fourth path set are those in the first path set that meet the QoS requirements of the application group. By performing the above processing on multiple first path sets, the scheduling device can obtain multiple fourth path sets.

[0164] The traffic scheduling scheme generator calculates the planned traffic for each link in time period t in parallel based on multiple fourth path sets, the actual traffic of each application group in time period t-1, and the value of the second identifier of each link in the target network. The planned traffic for each link in time period t satisfies the aforementioned third constraint. After obtaining the planned traffic for each link in the target network in time period t, the 95-degree horizontal line calculator determines the target 95-degree horizontal line for each link in time period t+1 based on the planned traffic for each link in the target network in time period t and the target 95-degree horizontal line for each link in time period t. Specifically, for link e... i The 95 horizontal line calculator determines that during time period t, the link e is included. i Is the sum of traffic on the path greater than link e? i The baseline bandwidth; if it is not greater than, it means that the time period t passes through link e. i Traffic on the path did not exceed link e i At time t, the 95-degree horizontal line will link e. i The 95-degree horizontal line at time t is identified as link e. iAt time t+1, the 95-degree horizontal line, in other words, link e i The 95-degree horizontal line remains unchanged; if it is greater than 95, it indicates that time period t passes through link e. i Traffic on the path exceeds link e i At time t, at the 95-degree horizontal line, a free period that shouldn't have been used was used, resulting in a reduction in the free period. To maintain the free period unchanged, the scheduling device obtains link e. i The load of all quantiles in the second time period was higher than that of link e. i The load corresponding to the 95th percentile of the target horizontal line in time period t, from above link e i The load corresponding to the quantile of the target 95-level line in time period t determines link e. i The target horizontal line at time t+1; where link e i For link e i At time t+1, the target 95-degree horizontal line is higher than link e. i The target horizontal line at time t is 95.

[0165] Using the above method, the target 95-degree horizontal line of each link in the target network at time t+1 can be obtained, which can be used to determine the planned traffic of each link at time t+1.

[0166] It can be seen that by dividing the traffic scheduling problem of the second time period into multiple traffic scheduling problems of the first time period included in the second time period, and solving the traffic planning problems of multiple first time periods in parallel, it is beneficial to improve the efficiency of traffic scheduling, and thus to solve the problem of large-scale traffic planning. The traffic planning problem is solved based on the principle of minimizing cost, which helps to reduce traffic costs. When calculating the cost of traffic planning, a penalty unit price is introduced for traffic exceeding the maximum elastic bandwidth of the link. Under the principle of minimizing cost, the predicted traffic of the link is kept as low as possible within the maximum elastic bandwidth of the link, thus helping to reduce traffic costs. In the offline phase of traffic prediction and the online phase of traffic planning, a first identifier and a second identifier are introduced respectively, so that the traffic of the link is maximized during the free period to achieve a "peak" effect, further helping to reduce traffic costs. In the online phase, when the actual traffic of each link in time period t exceeds the target 95 level line of time period t, it indicates that the traffic of that link has fluctuated. At this time, the target 95 level line of time period t is adjusted. Through this feedback adjustment, the planned traffic of each link in time period t+1 is consistent with the predicted traffic in time period t+1, thus helping to ensure the minimum traffic cost.

[0167] It should be noted that the solution presented in this application does not consider the possibility of link failure or application terminal failure, and cannot guarantee throughput and cost in the event of network failure. Developing disaster recovery plans in advance to proactively or passively respond to potential network failures, or considering the probability of link failure and striking a balance between availability, reliability, throughput, and billing cost based on VaR (Value at Risk) theory, are all potentially commercially viable solutions for the future. Furthermore, the solution presented in this application can be implemented using neural networks, which can be deployed on... Figure 1 In the regional data server.

[0168] Reference Figure 6 The diagram shown is a structural schematic of a scheduling device provided in an embodiment of this application. Figure 6 As shown, the scheduling device 600 includes:

[0169] The acquisition unit 601 is used to acquire multiple first path sets, which correspond to multiple application groups. The first path set corresponding to the target application group includes the path between the network device corresponding to the target application group and the regional data server in the target network. The multiple application groups include the target application group.

[0170] The determining unit 602 is used to obtain multiple second path sets based on the QoS requirements of each application group in multiple application groups and multiple first path sets. The multiple second path sets correspond to multiple first path sets, and each second path set includes paths in the first path set corresponding to each second path set that satisfy the QoS of the corresponding application group.

[0171] The calculation unit 603 is used to calculate the first predicted traffic of each link in multiple first time periods in parallel based on multiple second path sets, the predicted traffic of each application group in multiple first time periods, and the billing information of each link in the target network.

[0172] The determining unit 602 is further configured to determine a first 95-degree horizontal line for each link in a second time period based on the first predicted traffic of each link in multiple first time periods; the second time period includes multiple first time periods; and to determine the planned traffic of each link in each first time period based on the target 95-degree horizontal line of each link in the second time period and the traffic of each link in historical time periods, wherein the target 95-degree horizontal line of each link in the second time period is determined based on the first 95-degree horizontal line of each link in the second time period.

[0173] In one possible implementation, each link satisfies a first constraint condition when obtaining the first predicted traffic for multiple first time periods. The first constraint condition is:

[0174] Under the first, second, and third conditions, the sum of traffic costs for all links in the target network is minimized in each first time period; where link e in the target network... i Traffic costs for each first time period are based on link e i The first predicted flow is determined in each first time period;

[0175] The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period;

[0176] The second condition is: in each first time period, the link containing link e is passed. i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth, the first flow, and the second flow, where the first flow is the link e. i In each first time period, the first predicted traffic exceeds the baseline bandwidth, and the second traffic is the link e. i The first predicted traffic in each first time period exceeds the link e i The maximum elastic bandwidth of traffic;

[0177] The third condition is: in each first time period, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0178] In one possible implementation, link e i The traffic cost for the first time period is the sum of the first traffic cost and the second traffic cost. The first traffic cost is based on link e. i First predicted traffic and link e in the first time period i The unit price of traffic is determined by the second traffic cost, and the cost of the second traffic cost is based on the second traffic and the link e. i The unit price of traffic and the punitive unit price of traffic are determined.

[0179] In one possible implementation, the determining unit 602 is further configured to determine the baseline bandwidth of each link and the first identifier of each link based on the first 95-level line of each link in the second time period and the predicted traffic of each link in multiple first time periods; wherein, if the first predicted traffic of each link exceeds the first 95-level line of each link in the multiple first time periods, the baseline bandwidth of each link is the maximum elastic bandwidth of each link, and the first identifier is a first value; if the first predicted traffic of each link does not exceed the first 95-level line of each link in the second time period in multiple first time periods, the baseline bandwidth of each link is the first 95-level line of each link in the second time period, and the first identifier is a second value; the scheduling device obtains multiple third path sets based on the bandwidth requirements of each application group in multiple application groups and multiple first path sets, the multiple third path sets correspond to multiple first path sets, and each third path set includes the path in the first path set corresponding to each third path set that satisfies the bandwidth requirements of the corresponding application group;

[0180] The computing unit 603 is also used to calculate in parallel the second predicted traffic of each link in the multiple first time periods based on multiple third path sets, the predicted traffic of each application group in multiple first time periods, and the value of the second identifier of each link in the target network.

[0181] The determining unit 602 is further configured to determine the second 95-level line of each link in the second time period based on the second predicted traffic of each link in the second time period obtained in the first time period; wherein the target 95-level line is either the first 95-level line or the second 95-level line.

[0182] In one possible implementation, each link satisfies a second constraint condition when obtaining multiple first time period second predicted traffic. The second constraint condition is:

[0183] Under the first, third, and fourth conditions, the sum of traffic costs for all links in the target network is minimized across multiple first time periods; where link e in the target network... i Traffic costs for each first time period are based on link e i Second predicted traffic and link e in each first time period i The unit price of traffic is determined;

[0184] The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period;

[0185] The fourth condition is: in each first time period, when link e i When the first identifier is set to the first value, it passes through the link e. iThe sum of traffic on the path is not greater than link e i Maximum elastic bandwidth; when link e i When the first identifier is the second value, it passes through the link e. i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth and the first traffic, where the first traffic is the link e. i Traffic exceeding baseline bandwidth in the first predicted traffic of each first time period:

[0186] The third condition is: in each first time period, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0187] In one possible implementation, in determining the planned traffic of each link in each first time period based on the target 95-degree horizontal line of each link in the second time period and the traffic of each link in historical time periods, the determining unit 602 is specifically used for:

[0188] Based on the target predicted traffic of each link in time period t and the target 95-degree horizontal line in time period t, the baseline bandwidth and second identifier of each link in time period t+1 are determined. When the target predicted traffic of each link in time period t exceeds the target 95-degree horizontal line, the baseline bandwidth of each link in time period t+1 is the maximum elastic bandwidth, and the second identifier of each link is set to the first value. When the target predicted traffic of each link in time period t does not exceed the target 95-degree horizontal line, the baseline bandwidth of each link in time period t+1 is the target 95-degree horizontal line, and the second identifier of each link in time period t+1 is set to the second value. When t=0, the target 95-degree horizontal line in time period t is either the first 95-degree horizontal line or the second 95-degree horizontal line. When the target 95-degree horizontal line is the first 95-degree horizontal line, the target predicted traffic is the first predicted traffic. When the target 95-degree horizontal line is the second 95-degree horizontal line, the target predicted traffic is the second predicted traffic.

[0189] Based on the bandwidth requirements of each application group in multiple application groups and multiple first path sets, multiple fourth path sets are obtained. The multiple fourth path sets correspond to multiple first path sets. Each fourth path set includes the path in the first path set corresponding to each fourth path set that satisfies the bandwidth requirements of the corresponding application group.

[0190] Based on multiple sets of fourth paths, the traffic of each application group in time period t, and the value of the second identifier of each link in the target network, the planned traffic of each link in time period t is calculated in parallel. When t = 0, the traffic of each application group in time period t is the traffic of each application group in the historical time period. When t is greater than 0, the traffic of each application group in time period t is determined based on the actual traffic of each application group in time period t-1. Time period t-1 and time period t are time periods that are adjacent in time among multiple first time periods.

[0191] In one possible implementation, the planned traffic for each link in time period t satisfies the third constraint, which is:

[0192] Under conditions five, six, and seven, the sum of traffic costs for all links in the target network during time period t is minimized; the sum of traffic costs for links e in the target network is minimized. i Traffic charges during time period t are based on link e. i Planned traffic and link e during time period t i The unit price of traffic is determined;

[0193] The fifth condition is: during time period t, the sum of traffic on the paths in the fourth path set corresponding to the target application group is the traffic of the target application group during time period t.

[0194] The sixth condition is: during time period t, when link e i When the value of the second identifier is the first value, it passes through the link e. i The sum of traffic on the path is not greater than link e i Maximum elastic bandwidth; when link e i When the second identifier takes the second value, it passes through the link e. i The sum of traffic on the path is not greater than link e i The sum of the baseline bandwidth and the third traffic, where the third traffic is the link e i Traffic exceeding the baseline bandwidth during time period t;

[0195] The seventh condition is: during time period t, link e i The sum of the baseline bandwidth and the first traffic is not greater than link e. i Maximum elastic bandwidth.

[0196] In one possible implementation, the determining unit 602 is further configured to determine the passage of link e during time period t. i Is the sum of traffic on the path greater than link e? i Baseline bandwidth;

[0197] The acquisition unit 601 is further configured to, if it passes through a link containing e i The sum of traffic on the path exceeds link e iBaseline bandwidth, obtain link e i The load of all quantiles in the second time period was higher than that of link e. i The load at the target 95 level during time period t;

[0198] The determining unit 602 is also used to determine from higher than link e i The load determination link e at the target 95 horizontal line during time period t. i At the target 95 level in time period t+1, link e i The target 95 level is higher than link e in time period t+1. i The target level is 95 during time period t.

[0199] It is worth noting that the specific functional implementation of the scheduling device 600 is described in the above-described traffic scheduling method. For example, the acquisition unit 601 is used to execute the relevant content of S201, the determination unit 602 is used to execute the relevant content of S202, S204, and S205, and the calculation unit 603 is used to execute the relevant content of S203. Each unit or module in the scheduling device 600 can be individually or entirely merged into one or more other units or modules, or some of the units or modules can be further divided into multiple functionally smaller units or modules. This achieves the same operation without affecting the technical effect of the embodiments of the present invention. The above-mentioned units or modules are based on logical function division. In practical applications, the function of one unit (or module) is implemented by multiple units (or modules), or the function of multiple units (or modules) is implemented by one unit (or module).

[0200] Based on the description of the above method embodiments and related device embodiments, please refer to... Figure 7 The present invention also provides a schematic diagram of the structure of a scheduling device 700. Figure 7 The scheduling device 700 shown includes a memory 701, a processor 702, a communication interface 703, and a bus 704. The memory 701, processor 702, and communication interface 703 are interconnected via the bus 704.

[0201] Optionally, the memory 701 can be a ROM, a static storage device, a dynamic storage device, or RAM.

[0202] Memory 701 can store programs. When the program stored in memory 701 is executed by processor 702, processor 702 and communication interface 703 are used for execution. Figure 2 The various steps of the traffic scheduling method in the illustrated embodiment.

[0203] The processor 702 employs a general-purpose CPU, microprocessor, application-specific integrated circuit (ASIC), GPU, or one or more integrated circuits to execute relevant programs to achieve... Figure 2 The traffic scheduling method shown in the embodiment.

[0204] The processor 702 can also be an integrated circuit chip with signal processing capabilities. In implementation, each step of the flow scheduling in this application can be completed through integrated logic circuits in the hardware of the processor 702 or instructions in software form. Optionally, the processor 702 can be a general-purpose processor, DSP, ASIC, FPGA, or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The processor can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor is a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. Optional software modules are located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory 701. The processor 702 reads information from memory 701 and, in conjunction with its hardware, completes the functions required by the units included in the scheduling device 600 of this application embodiment, or executes the flow scheduling method of the method embodiment of this application.

[0205] The communication interface 703 uses transceiver-related devices, such as, but not limited to, transceivers, to enable communication between the scheduling device 700 and other devices or communication networks.

[0206] Bus 704 may include a path for transmitting information between various components of scheduling device 700 (e.g., memory 701, processor 702, communication interface 703).

[0207] It should be noted that, although Figure 7 The scheduling device 700 shown only illustrates the memory, processor, and communication interface. However, those skilled in the art should understand that in specific implementations, the scheduling device 700 may also include other devices necessary for normal operation. Furthermore, depending on specific needs, those skilled in the art should understand that the scheduling device 700 may also include hardware devices for implementing other additional functions. Moreover, those skilled in the art should understand that the scheduling device 700 may only include the devices necessary for implementing the embodiments of this application, and may not necessarily include... Figure 7 All the devices shown.

[0208] This application also provides a chip, which includes a processor and a data interface. The processor reads instructions stored in a memory through the data interface to implement the traffic scheduling method of this application.

[0209] Optionally, as one implementation, the chip further includes a memory storing instructions, and the processor is used to execute the instructions stored in the memory. When the instructions are executed, the processor is used to execute the traffic scheduling method.

[0210] This application also provides a computer-readable storage medium storing instructions that, when executed on a computer or processor, cause the computer or processor to perform one or more steps of any of the above methods.

[0211] This application also provides a computer program product containing instructions. When the computer program product is run on a computer or processor, it causes the computer or processor to perform one or more steps of any of the methods described above.

[0212] Those skilled in the art will appreciate that the functionality described in conjunction with the various illustrative logic blocks, modules, and algorithmic steps disclosed herein can be implemented by hardware, software, firmware, or any combination thereof. If implemented in software, the functionality described by the various illustrative logic blocks, modules, and steps can be stored or transmitted as one or more instructions or codes on a computer-readable medium and executed by a hardware-based processing unit. The computer-readable medium may comprise a computer-readable storage medium, which corresponds to a tangible medium, such as a data storage medium, or a communication medium that includes any medium facilitating the transfer of a computer program from one place to another (e.g., based on a communication protocol). In this way, the computer-readable medium may substantially correspond to (1) a non-transitory tangible computer-readable storage medium, or (2) a communication medium, such as a signal or carrier wave. The data storage medium may be any available medium accessible by one or more computers or one or more processors to retrieve instructions, code, and / or data structures for implementing the techniques described in this application. A computer program product may comprise a computer-readable medium.

[0213] By way of example and not limitation, such computer-readable storage media includes RAM, ROM, EEPROM, CD-ROM or other optical disc storage devices, magnetic disk storage devices or other magnetic storage devices, flash memory, or any other media that can be used to store desired program code in the form of instructions or data structures and is accessible by a computer. Furthermore, any connection is properly referred to as computer-readable media. For example, if instructions are transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of media. However, it should be understood that the computer-readable storage media and data storage media do not include connections, carrier waves, signals, or other temporary media, but are specifically referring to non-temporary tangible storage media. As used herein, disks and optical discs include Compact Discs (CDs), Laser Discs, Optical Discs, Digital Versatile Discs (DVDs), and Blu-ray Discs, where disks typically reproduce data magnetically, while optical discs reproduce data optically using lasers. Combinations of these should also be included within the scope of computer-readable media.

[0214] Instructions can be executed by one or more processors, such as one or more DSPs, general-purpose microprocessors, ASICs, FPGAs, or other equivalent integrated or discrete logic circuits. Therefore, the term "processor" as used herein can refer to any of the foregoing structures or any other structures suitable for implementing the techniques described herein. Furthermore, in some aspects, the functions described in the various illustrative logic blocks, modules, and steps described herein are provided within dedicated hardware and / or software modules configured for encoding and decoding, or incorporated into combined codecs. Moreover, the techniques can be fully implemented within one or more circuit or logic elements.

[0215] In the embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the division of units is merely a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Optionally, the coupling, direct coupling, or communication connection shown or discussed between them may be through some interfaces, indirect coupling or communication connection of devices or units, such as electrical, mechanical, or other forms.

[0216] Optionally, the units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, i.e., located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0217] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented, in whole or in part, as a computer program product. This computer program product includes one or more computer instructions. When these computer program instructions are loaded and executed on a computer, all or part of the processes or functions according to the embodiments of this application are generated.

[0218] The above description is merely a specific implementation of the embodiments of this application, but the protection scope of the embodiments of this application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the embodiments of this application should be covered within the protection scope of the embodiments of this application. Therefore, the protection scope of the embodiments of this application should be determined by the protection scope of the claims.

Claims

1. A traffic scheduling method, characterized in that, The method includes: A plurality of first path sets are obtained, the plurality of first path sets corresponding to a plurality of application groups, the first path set corresponding to the target application group includes the path between the network device corresponding to the target application group and the regional data server in the target network; the plurality of application groups includes the target application group. Based on the Quality of Service (QoS) requirements of each application group and the multiple first path sets, multiple second path sets are obtained. The multiple second path sets correspond to the multiple first path sets. Each of the multiple second path sets includes paths in the first path set corresponding to each second path set that satisfy the QoS of the corresponding application group. The first predicted traffic of each link in the multiple first time periods is calculated in parallel based on the multiple second path sets, the predicted traffic of each application group in multiple first time periods, and the billing information of each link in the target network; Based on the first predicted traffic for each link in multiple first time periods, a first 95-degree horizontal line for each link in a second time period is determined; the second time period includes the multiple first time periods. The planned traffic of each link in each first time period is determined based on the target 95-level line of each link in the second time period and the traffic of each link in the historical time period. The target 95-level line of each link in the second time period is determined based on the first 95-level line of each link in the second time period.

2. The method according to claim 1, characterized in that, Each link satisfies a first constraint condition when the first predicted traffic for multiple first time periods is obtained. The first constraint condition is: Under the first, second, and third conditions, the sum of traffic costs for all links in the target network in each first time period is minimized; wherein, link e in the target network i The traffic cost for each first time period is based on the link e i The first predicted flow rate is determined in each first time period; The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period; The second condition is: in each first time period, after passing through the link e i The sum of traffic on the path is not greater than the link e. i The sum of the baseline bandwidth, the first traffic, and the second traffic, wherein the first traffic is the link e. i The first predicted traffic in each first time period exceeds the baseline bandwidth, and the second traffic is the link e. i The first predicted traffic in each first time period exceeds the link e i The maximum elastic bandwidth of traffic; The third condition is: in each first time period, the link e i The sum of the baseline bandwidth and the first traffic is not greater than the link e. i Maximum elastic bandwidth.

3. The method according to claim 2, characterized in that, The link e i The traffic cost in the first time period is the sum of the first traffic cost and the second traffic cost, where the first traffic cost is based on the link e. i The first predicted traffic in the first time period and the link e i The unit price of traffic is determined by the second traffic cost, which is based on the second traffic and the link e. i The unit price of traffic and the punitive unit price of traffic are determined.

4. The method according to any one of claims 1-3, characterized in that, The method further includes: Based on the first 95-level line of each link in the second time period and the predicted traffic of each link in the multiple first time periods, the baseline bandwidth of each link and the first identifier of each link are determined; wherein, if the first predicted traffic of each link exceeds the first 95-level line of each link in the multiple first time periods, the baseline bandwidth of each link is the maximum elastic bandwidth of each link, and the first identifier is a first value; if the first predicted traffic of each link does not exceed the first 95-level line of each link in the second time period in the multiple first time periods, the baseline bandwidth of each link is the first 95-level line of each link in the second time period, and the first identifier is a second value. Based on the bandwidth requirements of each application group in the plurality of application groups and the plurality of first path sets, a plurality of third path sets are obtained. The plurality of third path sets correspond to the plurality of first path sets. Each of the plurality of third path sets includes the path in the first path set corresponding to each third path set that satisfies the bandwidth requirements of the corresponding application group. The second predicted traffic of each link in the multiple first time periods is calculated in parallel based on the multiple third path sets, the predicted traffic of each application group in multiple first time periods, and the value of the second identifier of each link in the target network. Based on the second predicted traffic of each link in multiple first time periods, a second 95-level line is determined for each link in the second time period; wherein the target 95-level line is either the first 95-level line or the second 95-level line.

5. The method according to claim 4, characterized in that, Each link satisfies the second constraint condition when obtaining the second predicted traffic for multiple first time periods. The second constraint condition is: Under the first, third, and fourth conditions, the sum of the traffic costs of all links in the target network in each of the plurality of first time periods is minimized; wherein, link e in the target network i The traffic cost for each first time period is based on the link e i The second predicted traffic in each first time period and the link e i The unit price of traffic is determined; The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period; the target application group is one of the plurality of application groups; The fourth condition is: in each first time period, when the link e i When the first identifier is set to the first value, it passes through the link e. i The sum of traffic on the path is not greater than the link e. i Maximum elastic bandwidth; when link e i When the first identifier is set to the second value, it passes through the link e. i The sum of traffic on the path is not greater than the link e. i The sum of the baseline bandwidth and the first traffic, wherein the first traffic is the link e i The first predicted traffic in each first time period exceeds the baseline bandwidth; The third condition is: in each first time period, the link e i The sum of the baseline bandwidth and the first traffic is not greater than the link e. i Maximum elastic bandwidth.

6. The method according to any one of claims 1-5, characterized in that, The determination of the planned traffic for each link in each first time period based on the target 95-degree horizontal line of each link in the second time period and the traffic of each link in historical time periods includes: Based on the target predicted traffic of each link in time period t and the target 95-degree horizontal line in time period t, the baseline bandwidth of each link and the second identifier of each link in time period t are determined. When the target predicted traffic of each link in time period t exceeds the target 95-degree horizontal line, the baseline bandwidth of each link in time period t is the maximum elastic bandwidth, and the second identifier of each link is a first value. When the target predicted traffic of each link in time period t does not exceed the target 95-degree horizontal line, the baseline bandwidth of each link in time period t is the target 95-degree horizontal line, and the second identifier of each link in time period t is a second value. When t = 0, the target 95-degree horizontal line in time period t is either the first 95-degree horizontal line or the second 95-degree horizontal line. When the target 95-degree horizontal line is the first 95-degree horizontal line, the target predicted traffic is the first predicted traffic. When the target 95-degree horizontal line is the second 95-degree horizontal line, the target predicted traffic is the second predicted traffic. Based on the bandwidth requirements of each application group in the plurality of application groups and the plurality of first path sets, a plurality of fourth path sets are obtained. The plurality of fourth path sets correspond to the plurality of first path sets. Each of the plurality of fourth path sets includes the path in the first path set corresponding to each fourth path set that satisfies the bandwidth requirements of the corresponding application group. Based on the multiple fourth path sets, the traffic of each application group in time period t, and the value of the second identifier of each link in the target network, the planned traffic of each link in time period t is calculated in parallel. When t = 0, the traffic of each application group in time period t is the traffic of each application group in the historical time period. When t is greater than 0, the traffic of each application group in time period t is determined based on the actual traffic of each application group in time period t-1. Time period t-1 and time period t are time periods that are adjacent in time among the multiple first time periods.

7. The method according to claim 6, characterized in that, The planned traffic of each link in time period t satisfies the third constraint condition, which is: Under conditions five, six, and seven, the sum of traffic costs for all links in the target network during time period t is minimized; the link e in the target network i The traffic cost for the time period t is based on the link e. i The planned traffic during the time period t and the link e i The unit price of traffic is determined; The fifth condition is: during the time period t, the sum of traffic on the paths in the fourth path set corresponding to the target application group is the actual traffic of the target application group during the time period t-1. The sixth condition is: during the time period t, when the link e i When the value of the second identifier is the first value, it passes through the link e. i The sum of traffic on the path is not greater than the link e. i Maximum elastic bandwidth; when link e i When the value of the second identifier is the second value, it passes through the link e. i The sum of traffic on the path is not greater than the link e. i The sum of the baseline bandwidth and the third traffic, wherein the third traffic is the link e i The planned traffic during the time period t exceeds the baseline bandwidth; The seventh condition is: during the time period t, the link e i The sum of the baseline bandwidth and the first traffic is not greater than the link e. i Maximum elastic bandwidth.

8. The method according to claim 6 or 7, characterized in that, The method further includes: Determine that during the time period t, the link e is included. i Is the sum of traffic on the path greater than the link e? i Baseline bandwidth; If the passage includes the link e i The sum of traffic on the path exceeds the link e i The baseline bandwidth of the link e is obtained. i The load at all quantiles in the second time period is higher than that of link e. i The load at the target 95-level line during the time period t; From the link above e i The load on the target 95-level line during the t-period determines the link e. i The target 95-degree horizontal line in the t+1 time period, the link e i The target 95-level line in the t+1 time period is higher than the link e. i The target 95 level line during the time period t.

9. A scheduling device, characterized in that, include: An acquisition unit is configured to acquire multiple first path sets, wherein the multiple first path sets correspond to multiple application groups, and the first path set corresponding to a target application group includes the path between the network device corresponding to the target application group and the regional data server in the target network; the multiple application groups include the target application group. The determining unit is configured to obtain a plurality of second path sets based on the QoS requirements of each application group in the plurality of application groups and the plurality of first path sets, wherein the plurality of second path sets correspond to the plurality of first path sets, and each of the plurality of second path sets includes paths in the first path set corresponding to each second path set that satisfy the QoS of the corresponding application group. The calculation unit is used to calculate in parallel the first predicted traffic of each link in the multiple first time periods based on the multiple second path sets, the predicted traffic of each application group in multiple first time periods, and the billing information of each link in the target network. The determining unit is further configured to determine a first 95-degree horizontal line for each link in a second time period based on the first predicted traffic of each link in a plurality of first time periods; the second time period includes the plurality of first time periods; and to determine the planned traffic of each link in each first time period based on the target 95-degree horizontal line of each link in the second time period and the traffic of each link in historical time periods, wherein the target 95-degree horizontal line of each link in the second time period is determined based on the first 95-degree horizontal line of each link in the second time period.

10. The apparatus according to claim 9, characterized in that, Each link satisfies a first constraint condition when the first predicted traffic for multiple first time periods is obtained. The first constraint condition is: Under the first, second, and third conditions, the sum of traffic costs for all links in the target network in each first time period is minimized; wherein, link e in the target network i The traffic cost for each first time period is based on the link e i The first predicted flow rate is determined in each first time period; The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period; The second condition is: in each of the first time periods, for link e i After passing through the link e i The sum of traffic on the path is not greater than the link e. i The sum of the baseline bandwidth, the first traffic, and the second traffic, wherein the first traffic is the link e. i The first predicted traffic in each first time period exceeds the baseline bandwidth, and the second traffic is the link e. i The first predicted traffic in each first time period exceeds the link e i The maximum elastic bandwidth of traffic; The third condition is: in each first time period, the link e l The sum of the baseline bandwidth and the first traffic is not greater than the link e. i Maximum elastic bandwidth.

11. The apparatus according to claim 10, characterized in that, The link e i The traffic cost in the first time period is the sum of the first traffic cost and the second traffic cost, where the first traffic cost is based on the link e. i The first predicted traffic in the first time period and the link e i The unit price of traffic is determined by the second traffic cost, which is based on the second traffic and the link e. i The unit price of traffic and the punitive unit price of traffic are determined.

12. The apparatus according to any one of claims 9-11, characterized in that, The determining unit is further configured to determine the baseline bandwidth of each link and the first identifier of each link based on the first 95 level line of each link in the second time period and the predicted traffic of each link in the plurality of first time periods; wherein, if the first predicted traffic of each link exceeds the level line of the first 95 level line of each link in the plurality of first time periods, the baseline bandwidth of each link is the maximum elastic bandwidth of each link, and the first identifier is a first value; if the first predicted traffic of each link does not exceed the first 95 level line of each link in the second time period in the plurality of first time periods, the baseline bandwidth of each link is the first 95 level line of each link in the second time period, and the first identifier is a second value; The acquisition unit is further configured to obtain a plurality of third path sets based on the bandwidth requirements of each application group in the plurality of application groups and the plurality of first path sets, wherein the plurality of third path sets correspond to the plurality of first path sets, and each of the plurality of third path sets includes a path in the first path set corresponding to each third path set that satisfies the bandwidth requirements of the corresponding application group; The computing unit is also used to calculate in parallel the second predicted traffic of each link in the multiple first time periods based on the multiple third path sets, the predicted traffic of each application group in multiple first time periods, and the value of the second identifier of each link in the target network. The determining unit is further configured to determine a second 95-level line for each link in a second time period based on the second predicted traffic of each link in a plurality of first time periods; wherein the target 95-level line is either the first 95-level line or the second 95-level line.

13. The apparatus according to claim 12, characterized in that, Each link satisfies the second constraint condition when obtaining the second predicted traffic for multiple first time periods. The second constraint condition is: Under the first, third, and fourth conditions, the sum of the traffic costs of all links in the target network in each of the plurality of first time periods is minimized; wherein, link e in the target network i The traffic cost for each first time period is based on the link e i The second predicted traffic in each first time period and the link e i The unit price of traffic is determined; The first condition is: in each first time period, the sum of traffic on the paths in the second path set corresponding to the target application group is the predicted traffic of the target application group in each first time period; The fourth condition is: in each first time period, when the link e i When the first identifier is set to the first value, it passes through the link e. i The sum of traffic on the path is not greater than the link e. i Maximum elastic bandwidth; when link e i When the first identifier takes the second value, it passes through the link e. i The sum of traffic on the path is not greater than the link e. i The sum of the baseline bandwidth and the first traffic, wherein the first traffic is the link e i The first predicted traffic in each first time period exceeds the baseline bandwidth; The third condition is: in each first time period, the link e i The sum of the baseline bandwidth and the first traffic is not greater than the link e. i Maximum elastic bandwidth.

14. The apparatus according to any one of claims 9-13, characterized in that, In determining the planned traffic of each link in each first time period based on the target 95-degree horizontal line of each link in the second time period and the traffic of each link in historical time periods, the determining unit is specifically used for: The baseline bandwidth of each link and the second identifier of each link are determined based on the target predicted traffic of each link in time period t and the target 95-degree horizontal line in time period t. When the target predicted traffic of each link in time period t exceeds the target 95 level, the baseline bandwidth of each link in time period t+1 is the maximum elastic bandwidth, and the second identifier of each link is taken as the first value; when the target predicted traffic of each link in time period t does not exceed the target 95 level, the baseline bandwidth of each link in time period t is the target 95 level, and the second identifier of each link in time period t is taken as the second value. When t = 0, the target 95-degree horizontal line for the time period t is either the first 95-degree horizontal line or the second 95-degree horizontal line; when the target 95-degree horizontal line is the first 95-degree horizontal line, the target predicted flow rate is the first predicted flow rate; When the target 95-degree horizontal line is the second 95-degree horizontal line, the target predicted flow rate is the second predicted flow rate; Based on the bandwidth requirements of each application group in the plurality of application groups and the plurality of first path sets, a plurality of fourth path sets are obtained. The plurality of fourth path sets correspond to the plurality of first path sets. Each of the plurality of fourth path sets includes the path in the first path set corresponding to each fourth path set that satisfies the bandwidth requirements of the corresponding application group. Based on the multiple sets of fourth paths, the traffic of each application group in time period t, and the value of the second identifier of each link in the target network, the planned traffic of each link in time period t is calculated in parallel. When t=0, the traffic of each application group in time period t is the traffic of each application group in the historical time period. When t is greater than 0, the traffic of each application group in time period t is determined based on the actual traffic of each application group in time period t-1. Time period t-1 and time period t are time periods that are adjacent in time among the plurality of first time periods.

15. The apparatus according to claim 14, characterized in that, The planned traffic of each link in time period t satisfies the third constraint condition, which is: Under conditions five, six, and seven, the sum of traffic costs for all links in the target network during time period t is minimized; the link e in the target network i The traffic cost for the time period t is based on the link e. i The planned traffic during the time period t and the link e i The unit price of traffic is determined; The fifth condition is: during the time period t, the sum of traffic on the paths in the fourth path set corresponding to the target application group is the traffic of the target application group during the time period t. The sixth condition is: during the time period t, when the link e i When the value of the second identifier is the first value, it passes through the link e. i The sum of traffic on the path is not greater than the link e. i Maximum elastic bandwidth; when link e i When the value of the second identifier is the second value, it passes through the link e. i The sum of traffic on the path is not greater than the link e. i The sum of the baseline bandwidth and the third traffic, wherein the third traffic is the link e i The planned traffic during the time period t exceeds the baseline bandwidth; The seventh condition is: during the time period t, the link e i The sum of the baseline bandwidth and the first traffic is not greater than the link e. i Maximum elastic bandwidth.

16. The apparatus according to claim 14 or 15, characterized in that, The determining unit is further configured to determine that during the time period t, the link e is included. i Is the sum of traffic on the path greater than the link e? i Baseline bandwidth; The acquisition unit is further configured to, if the link e is included i The sum of traffic on the path exceeds the link e i The baseline bandwidth of the link e is obtained. i The load at all quantiles in the second time period is higher than that of link e. i The load at the target 95-level line during the time period t; The determining unit is further configured to determine from the link e above the link e i The load on the target 95-level line during the t-period determines the link e. i The target 95-degree horizontal line in the t+1 time period, the link e i The target 95-level line in the t+1 time period is higher than the link e. i The target 95 level line during the time period t.

17. A scheduling device, characterized in that, The method includes a processor and a memory, wherein the memory is used to store program code, and the processor is used to execute the program code to implement the method according to any one of claims 1 to 8.

18. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the method described in any one of claims 1-8.

19. A computer program product that, when run on a computer, causes the computer to perform the method as described in any one of claims 1-8.