Traffic scheduling method, device, storage medium and program product of multi-data center system

By dynamically scheduling traffic data from edge nodes to target data centers based on bandwidth and round-trip time, the problem of not being able to schedule traffic requests in real time in multi-data center system architectures is solved, realizing real-time scheduling of traffic requests and business continuity.

CN119676162BActive Publication Date: 2026-03-17CHINA MERCHANTS FINANCE HLDG CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-26
Publication Date
2026-03-17

AI Technical Summary

Technical Problem

Existing multi-datacenter system architectures cannot schedule traffic requests in real time when the main datacenter network is in poor condition or fails, resulting in service interruptions and failing to guarantee business continuity.

Method used

When edge nodes receive traffic data, they obtain a unique token value and determine the scheduling ratio based on the bandwidth utilization ratio, bandwidth margin, and round-trip time of data packets in each data center, and dynamically adjust the traffic data to the target data center.

Benefits of technology

It enables the rational allocation of resources among data centers, ensures real-time scheduling of traffic requests, improves service response speed and reliability, and avoids service interruptions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119676162B_ABST
    Figure CN119676162B_ABST
Patent Text Reader

Abstract

The application discloses a traffic scheduling method and device of a multi-data center system, a storage medium and a program product, and relates to the technical field of data processing. The method comprises the following steps: when receiving traffic data of a user side at an edge node, acquiring a unique token value corresponding to the traffic data; if the unique token value does not exist in a specified data center, determining a scheduling proportion of each data center based on a bandwidth occupation proportion, a bandwidth surplus and a data packet round trip time of each data center; then, determining a target data center based on the scheduling proportion of the data center, and forwarding the traffic data to the target data center. The method dynamically adjusts the scheduling proportion according to real-time bandwidth data and data packet round trip time data, ensures that resources are reasonably distributed among data centers, and solves the problem that a current multi-data center system architecture cannot schedule traffic requests in real time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data processing technology, and in particular to a traffic scheduling method, device, storage medium and program product for a multi-data center system. Background Technology

[0002] Multi-datacenter architecture is a highly available system architecture that achieves business continuity and disaster recovery by deploying the same application systems and data in data centers located in different geographical locations. Traffic data can be distributed to various data centers through load balancers to achieve load balancing and performance optimization.

[0003] Current multi-datacenter system architectures primarily rely on an Nginx proxy deployed within the primary datacenter to distribute traffic requests across the primary and backup datacenters according to a specified ratio. However, this architecture struggles to flexibly manage user traffic requests when the primary datacenter experiences poor network conditions or low communication speeds. Furthermore, if the primary datacenter's network ingress or isolation zone fails, its applications will be unable to provide services. This necessitates modifications to the primary datacenter's DNS settings, redirecting the domain names to the backup datacenter to ensure continued service. However, this process requires time to execute and for the DNS resolution to take effect, leading to service interruptions and compromising the continuity of traffic requests. Therefore, current multi-datacenter system architectures suffer from the inability to schedule traffic requests in real time.

[0004] The above content is only used to help understand the technical solution of this application and does not represent an admission that the above content is prior art. Summary of the Invention

[0005] The main purpose of this application is to provide a traffic scheduling method, device, storage medium and program product for a multi-data center system, which aims to solve the technical problem that the current multi-data center system architecture cannot schedule traffic requests in real time.

[0006] To achieve the above objectives, this application proposes a traffic scheduling method for a multi-data center system, applied to edge nodes, the method comprising:

[0007] When the edge node receives traffic data from the user side, it obtains the unique token value corresponding to the traffic data;

[0008] If the unique token value does not exist in the specified data center, the scheduling ratio of each data center is determined based on the bandwidth utilization ratio, bandwidth margin, and data packet round-trip time of each data center.

[0009] Based on the scheduling ratio of the data centers, the target data center is determined, and the traffic data is forwarded to the target data center.

[0010] In one embodiment, the step of determining the scheduling ratio of each data center based on the bandwidth utilization ratio, bandwidth margin, and data packet round-trip time of each data center includes:

[0011] Within a preset time interval, obtain the bandwidth occupancy ratio and bandwidth reserve of each data center;

[0012] Based on the round-trip time of data packets in each of the data centers, determine the ratio difference in round-trip time of data packets between the data centers;

[0013] Obtain the scheduling baseline value for each of the data centers;

[0014] The scheduling ratio of each data center is determined based on the bandwidth utilization ratio, bandwidth margin, scheduling baseline value, and the difference in data packet round-trip time ratio.

[0015] In one embodiment, the step of determining the scheduling ratio of each data center based on the bandwidth utilization ratio, bandwidth margin, scheduling baseline value, and the difference in data packet round-trip time ratio includes:

[0016] If the bandwidth occupancy ratio of each data center is less than or equal to the preset occupancy ratio, and the difference in the round-trip time ratio of data packets is less than or equal to the preset round-trip time ratio difference, the scheduling ratio of each data center is determined according to the scheduling benchmark value.

[0017] If the bandwidth occupancy ratio of each data center is less than or equal to the preset occupancy ratio, and the difference in the round-trip time ratio of data packets is greater than the preset round-trip time ratio difference, the scheduling ratio of each data center is determined based on the scheduling benchmark value and the difference in the round-trip time ratio of data packets.

[0018] In one embodiment, the step of determining the scheduling ratio of each data center based on the bandwidth utilization ratio, bandwidth margin, scheduling baseline value, and the difference in data packet round-trip time ratio of each data center further includes:

[0019] If the bandwidth occupancy ratio of each data center is greater than the preset occupancy ratio, and the difference in the round-trip time ratio of data packets is less than or equal to the preset round-trip time ratio difference, the scheduling ratio of each data center is determined based on the scheduling benchmark value and the bandwidth margin.

[0020] If the bandwidth occupancy ratio of each data center is greater than the preset occupancy ratio, and the difference in round-trip time ratio of data packets is greater than the preset round-trip time ratio difference, the scheduling ratio of each data center is determined based on the scheduling benchmark value, the bandwidth margin, and the difference in round-trip time ratio of data packets.

[0021] In one embodiment, the step of determining the scheduling ratio of each data center based on the bandwidth utilization ratio, bandwidth margin, scheduling baseline value, and the difference in data packet round-trip time ratio of each data center further includes:

[0022] If a data center has a bandwidth usage ratio greater than the preset usage ratio, the data center with a bandwidth usage ratio greater than the preset usage ratio will be designated as the first data center, and the data center with a bandwidth usage ratio less than or equal to the preset usage ratio will be designated as the second data center.

[0023] If the difference in the round-trip time ratio of data packets between the first data center and the second data center is less than or equal to the preset round-trip time ratio difference, the call ratio of the second data center is determined to be a preset multiple of the corresponding scheduling benchmark value.

[0024] If the difference in the round-trip time ratio of data packets between the first data center and the second data center is greater than the preset round-trip time ratio difference, the call ratio of the second data center is determined to be a preset multiple of the corresponding scheduling baseline value and the difference in the round-trip time ratio of data packets.

[0025] Based on the call ratio of the second data center, the corresponding remaining traffic scheduling ratio is determined as the call ratio of the first data center.

[0026] In one embodiment, the step of determining the ratio difference in packet round-trip time between the data centers based on the packet round-trip time of each of the data centers includes:

[0027] The historical round-trip time of traffic data is obtained from each of the aforementioned data centers;

[0028] Within a first preset time period, the historical average round-trip time of traffic data in each of the data centers is calculated.

[0029] Within a second preset time period, the average historical round-trip time of each of the data centers is exponentially smoothed to obtain the round-trip time of data packets for each of the data centers.

[0030] In one embodiment, the method further includes:

[0031] If the unique token value corresponding to the traffic data exists in a designated data center, the traffic data will be forwarded to the designated data center.

[0032] Alternatively, the traffic data can be forwarded to the historically corresponding data center based on the unique token value associated with the traffic data and the historical correspondence between the data centers.

[0033] In addition, to achieve the above objectives, this application also proposes a traffic scheduling device for a multi-data center system, the device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the traffic scheduling method for the multi-data center system as described above.

[0034] In addition, to achieve the above objectives, this application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the traffic scheduling method for a multi-data center system as described above.

[0035] In addition, to achieve the above objectives, this application also provides a computer program product, which includes a computer program that, when executed by a processor, implements the steps of the traffic scheduling method for a multi-data center system as described above.

[0036] This application proposes a traffic scheduling method for a multi-datacenter system. When an edge node receives traffic data from a user, it obtains a unique token value corresponding to the traffic data. If the unique token value does not specify a datacenter, the scheduling ratio of each datacenter is determined based on its bandwidth utilization, bandwidth margin, and packet round-trip time. Then, based on the scheduling ratio, the target datacenter is determined, and the traffic data is forwarded to the target datacenter. This method dynamically adjusts the scheduling ratio based on real-time bandwidth and packet round-trip time data, ensuring that resources are rationally allocated among datacenters and solving the problem that current multi-datacenter system architectures cannot schedule traffic requests in real time. Attached Figure Description

[0037] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0038] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0039] Figure 1This is a schematic diagram of the dual-service architecture of the traffic data scheduling system involved in the traffic scheduling method of the multi-data center system in this application embodiment;

[0040] Figure 2 This is a flowchart illustrating an embodiment of the traffic scheduling method for a multi-data center system according to this application.

[0041] Figure 3 This is a flowchart illustrating Embodiment 2 of the traffic scheduling method for a multi-data center system in this application.

[0042] Figure 4 This is a flowchart illustrating Embodiment 3 of the traffic scheduling method for a multi-data center system in this application.

[0043] Figure 5 This is a flowchart illustrating Embodiment 4 of the traffic scheduling method for a multi-data center system in this application.

[0044] Figure 6 This is a flowchart illustrating Embodiment 5 of the traffic scheduling method for a multi-data center system in this application.

[0045] Figure 7 This is a flowchart illustrating Embodiment Seven of the traffic scheduling method for a multi-data center system in this application.

[0046] Figure 8 This is a schematic diagram of the hardware operating environment involved in the traffic scheduling method of the multi-data center system in this application embodiment.

[0047] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0048] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of this application and are not intended to limit this application.

[0049] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.

[0050] Current dual-datacenter system architectures primarily distribute traffic requests to the primary and backup datacenters according to a specified ratio by setting up an Nginx proxy within the primary datacenter. However, this dual-datacenter architecture cannot flexibly schedule user traffic requests when the primary datacenter's network conditions are poor or the communication speed is low. Furthermore, when the primary datacenter's network ingress or isolation zone fails, the application systems in the primary datacenter will be unable to provide services. Operations personnel need to modify the primary datacenter's domain name resolution configuration to point the domain name to the backup datacenter so that the backup datacenter can continue providing services. However, this process requires a certain amount of operation time and domain name resolution time to take effect, leading to service interruption and failing to guarantee the continuity of traffic request services. Therefore, current multi-datacenter system architectures suffer from the problem of not being able to schedule traffic requests in real time.

[0051] In view of the above problems, this application proposes a traffic scheduling method for a multi-datacenter system. When an edge node receives traffic data from the user side, it obtains a unique token value corresponding to the traffic data. If the unique token value does not specify a datacenter, the scheduling ratio of each datacenter is determined based on its bandwidth utilization, bandwidth margin, and packet round-trip time. Then, based on the scheduling ratio, the target datacenter is determined, and the traffic data is forwarded to the target datacenter. This method dynamically adjusts the scheduling ratio according to real-time bandwidth and packet round-trip time data, ensuring that resources are rationally allocated among datacenters and solving the problem that current multi-datacenter system architectures cannot schedule traffic requests in real time.

[0052] It should be noted that the execution subject in the embodiments of this application can be a computing service device with data processing, network communication and program running functions, such as a tablet computer, personal computer, mobile phone, etc., or an electronic device that can realize the above functions.

[0053] For example, to more clearly illustrate this technical solution, this application uses a traffic data scheduling system with a dual-datacenter, dual-service architecture as the implementation subject for description. (Refer to...) Figure 1 , Figure 1 This is a schematic diagram of the dual-service architecture of the traffic data scheduling system involved in the following embodiments of this application.

[0054] Specifically, an edge node traffic proxy module is introduced between the user side and the data center side. This module routes user-initiated business data traffic requests to the data center, where an Nginx proxy in the data center's isolated zone then forwards the traffic to the data center's API (Application Programming Interface) gateway. A parameter control module within the data center collects configuration parameters and sends them to the edge node traffic proxy module. This module obtains the mapping between the application system's domain name and the public IP address (Internet Protocol) address used to provide services from the Domain Name System (DNS); it also obtains bandwidth data from the data center's data center traffic monitoring module. A unified user center module is located in the core area of ​​the data center for registering and managing user information and generating unique tokens based on user registration accounts. The edge node traffic proxy module stores the mapping between each user's unique token and the data center, ensuring that when the user initiates another traffic request, the edge node traffic proxy module can route the request to the same data center, maintaining service continuity.

[0055] Based on this, the first embodiment of this application provides a traffic scheduling method for a multi-data center system, referring to... Figure 2 In this embodiment, the traffic scheduling method for the multi-data center system includes steps S10 to S30:

[0056] Step S10: When the edge node receives traffic data from the user side, it obtains the unique token value corresponding to the traffic data.

[0057] It should be noted that a token is a string or number used to identify a user and is associated with the user's account. When a user makes a request, the unified user center module can generate a unique token based on the user's account identifier.

[0058] For example, suppose user A registers an account on a video-on-demand application for the first time and requests to watch a video. The unified user center module will convert user A's account ID (identification) registered on the video-on-demand application into a fixed-length output sequence value. For example, a one-way hash algorithm can be used to map the user's 8-digit account ID "10132334" into a 32-bit string token "ACVBNMZXCVBFGTYIKFGCBDOUNSLBGEQL".

[0059] Alternatively, in addition to one-way hashing algorithms, other encoding methods such as Base64 encoding, HMAC (Hash-based Message Authentication Code), and UUID (Universally Unique Identifier) ​​can be used to convert user accounts into unique tokens.

[0060] Step S20: If the unique token value does not exist in the designated data center, determine the scheduling ratio of each data center based on the bandwidth occupancy ratio, bandwidth reserve, and data packet round-trip time of each data center.

[0061] It's important to note that bandwidth utilization refers to the ratio of currently used bandwidth to the total bandwidth capacity of a data center. For example, if a data center has a total bandwidth of 100Mbps and is currently using 80Mbps, the bandwidth utilization is 80%. Bandwidth margin refers to the amount of bandwidth remaining available in the data center. In the example above, if the total bandwidth is 100Mbps and 80Mbps has been used, then the bandwidth margin is 20Mbps. Data packet round-trip time reflects the transmission speed of traffic data inside and outside the data center. It is determined by the time it takes for traffic data to be allocated from the edge node traffic proxy module to the data center for processing, and then for the requested data to be returned to the edge node traffic proxy module, reflecting the network performance of the data center. The data center scheduling ratio is calculated by the edge nodes according to a preset traffic scheduling algorithm. It indicates the proportion at which traffic data should be forwarded to various data centers when a designated data center is not available.

[0062] Optionally, the traffic data scheduling system continuously monitors the bandwidth utilization, bandwidth reserve, and packet round-trip time of each data center, and periodically evaluates the current status of each data center based on the above performance indicators, such as every minute or every hour. These performance indicators are used to comprehensively determine the traffic proportion that each data center should handle. Specifically, if a data center has a high bandwidth utilization, the traffic data scheduling system may reduce its scheduling proportion to avoid overload; if a data center has a large bandwidth reserve, the traffic data scheduling system may increase its scheduling proportion to fully utilize resources; if a data center has a short packet round-trip time, it indicates that the data center has good network quality or a high communication rate, and the traffic data scheduling system may tend to schedule more traffic to that data center to improve overall response speed.

[0063] By dynamically adjusting the scheduling ratio based on actual performance, the resources of each data center can be utilized more effectively, ensuring that traffic data is allocated to the data center with the best performance in real time, thereby improving the response speed and quality of services.

[0064] Step S30: Based on the scheduling ratio of the data center, determine the target data center and forward the traffic data to the target data center.

[0065] Optionally, when a user logs into the application for the first time and initiates traffic data to a specific network domain, the token can be placed in a custom header of the HTTP (Hypertext Transfer Protocol) request and sent to the edge node traffic proxy module. The edge node traffic proxy module forwards the traffic data to the corresponding data center according to the calculated scheduling ratio of the data center. Before forwarding the traffic data, the edge node traffic proxy module can obtain the mapping between the user's unique token and the public IP address of the application system through the parameter control module. This allows the edge traffic proxy node to quickly establish a connection with the application system based on the corresponding public IP address when obtaining the user's traffic data.

[0066] For example, the parameter control module in the data center can query the public IP address corresponding to the application system domain name from the domain name system within a preset time interval. After obtaining the public IP address, the parameter control module sends the public IP address to the edge node traffic proxy module. The edge node traffic proxy module uses the received public IP address to directly establish a network connection with the application system and realize the application and scheduling of traffic data.

[0067] To better understand the solution presented in this example, we will further explain this example in conjunction with specific application scenarios.

[0068] Suppose an online video streaming service application needs to deliver video content through data centers. For load balancing and disaster recovery, the service operator sets up two data centers, X and Y. Both data centers X and Y have the capacity to handle video streaming requests, and their scheduling ratios are 30% and 70%, respectively. This means that without specific allocation, 30% of the traffic will be scheduled to data center X, while 70% of the traffic will be scheduled to data center Y.

[0069] When a user registers an account by entering their username and password in the user interface of the online video streaming service application, the unified user center module in the data center generates and saves a unique token based on the user's registered account, for example, "1234567". After logging into the online video streaming service application, if the user wants to access a service of the application deployed on a specific network domain, such as "https: / / service.example.com", the application places the generated token in a custom header of the HTTP request, for example, "X-User-Token:1234567". The edge node traffic proxy module receives the traffic data and extracts the token from the custom header. Based on the mapping between this token and the public IP address of the application system providing services, the edge node traffic proxy module determines the public IP address corresponding to "https: / / service.example.com", for example, "123.123.1.100", and establishes a network connection with the online video streaming service application through this public IP address.

[0070] In this embodiment, by using tokens and dynamic scheduling ratios, the traffic data scheduling system can flexibly handle the allocation of requests between different users and different data centers, adapt to constantly changing network conditions and user needs, and transfer requests to other data centers when a data center fails, thereby realizing real-time scheduling of traffic requests and improving the reliability and fault tolerance of the traffic data scheduling system.

[0071] Based on the first embodiment of this application, in the second embodiment of this application, the content that is the same as or similar to that in Embodiment 1 above can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 3 Step S20 also includes steps S21 to S24:

[0072] Step S21: Within a preset time interval, obtain the bandwidth occupancy ratio and bandwidth reserve of each data center.

[0073] Optionally, the edge node traffic proxy module obtains the current bandwidth usage ratio and bandwidth reserve from the data center traffic monitoring module at preset time intervals, such as every minute.

[0074] For example, in a traffic data scheduling system, the parameter control module of the data center can periodically collect the current network traffic and data center egress bandwidth of the data center egress router from the data center's internal data center traffic monitoring module, and calculate the bandwidth utilization ratio and bandwidth reserve of the current data center egress router based on the current network traffic and data center egress bandwidth, i.e., bandwidth utilization ratio = current network traffic / data center egress bandwidth; bandwidth reserve = data center egress bandwidth - current network traffic.

[0075] Optionally, different traffic monitoring tools such as SNMP (Simple Network Management Protocol) and NetFlow can be used to obtain bandwidth information, or the frequency of bandwidth information acquisition can be set to real-time in order to gain a more accurate understanding of the network status of the data center.

[0076] Step S22: Determine the ratio difference of data packet round-trip time between each data center based on the round-trip time of each data center.

[0077] For example, the edge node traffic proxy module periodically sends speed test request data packets from the parameter control module to two data centers, records the round-trip time of the data packets between the two data centers, and calculates the difference in the round-trip time ratio between the two data centers, which is used for traffic scheduling algorithm decisions. The edge node traffic proxy module can adjust the distribution ratio of user traffic between the two data centers based on the difference in the round-trip time ratio, scheduling user traffic to the data center with higher communication efficiency to improve user experience.

[0078] Step S23: Obtain the scheduling baseline value for each of the data centers.

[0079] Step S24: Determine the scheduling ratio of each data center based on the bandwidth occupancy ratio, bandwidth margin, scheduling baseline value, and the difference in round-trip time ratio of data packets.

[0080] It should be noted that the scheduling baseline value is a reference scheduling ratio value pre-set by business personnel based on business needs. For example, it may be pre-set to allocate more traffic data to data centers with larger bandwidth capacity, or different scheduling baseline values ​​may be set according to the characteristics of different businesses. For example, more traffic data of high-priority businesses may be allocated to the main data center to ensure the processing efficiency of critical businesses.

[0081] It should also be noted that the scheduling ratio refers to the actual proportion of traffic data allocated to the data center after calculation by the edge node traffic proxy module. This ratio is calculated by the edge node traffic proxy module based on the collected data center parameters and using a preset traffic scheduling algorithm.

[0082] Optionally, business personnel can set the data center scheduling baseline value in the parameter control module according to business needs. The edge node traffic proxy module can periodically obtain the data center scheduling baseline value from the parameter control module and dynamically adjust the distribution ratio of traffic data between the two data centers based on the obtained scheduling baseline value, real-time bandwidth information, packet round-trip time and other factors to achieve load balancing and intelligent scheduling.

[0083] In this implementation, by monitoring bandwidth utilization, bandwidth reserves, and packet round-trip time, the traffic data scheduling system can intelligently route traffic data to data centers with higher communication efficiency. Furthermore, by setting scheduling baseline values ​​and dynamically adjusting scheduling ratios, and by comprehensively considering bandwidth information, packet round-trip time, and scheduling baseline values, the traffic data scheduling system can make more accurate traffic scheduling decisions and quickly adapt to changes in business needs.

[0084] Based on the above embodiments of this application, in the third embodiment of this application, the same or similar content as the above embodiments can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 4 Step S24 also includes steps S241 to S242:

[0085] Step S241: If the bandwidth occupancy ratio of each data center is less than or equal to the preset occupancy ratio, and the difference in the round-trip time ratio of data packets is less than or equal to the preset round-trip time ratio difference, the scheduling ratio of each data center is determined according to the scheduling benchmark value.

[0086] For example, assume that the bandwidth utilization rate is denoted as . The bandwidth usage ratio of the first data center A is denoted as . The bandwidth utilization rate of the second data center B is denoted as: Based on business needs, the baseline values ​​for different data center traffic scheduling ratios are set in the parameter control module and denoted as follows: The scheduling baseline value for data center A is denoted as The scheduling baseline value for data center B is denoted as Assume the round-trip time of data packets in data center A is... The round-trip time for data packets in data center B is The difference in their round-trip time ratio is | - |

[0087] When the bandwidth utilization ratio of both data centers is less than or equal to the preset utilization ratio (set to 90%), and the difference in the round-trip time ratio of data packets between the two data centers is less than or equal to the preset round-trip time ratio difference (e.g., 30%), that is... 90%, 90% and | - | This indicates that both data centers have sufficient bandwidth capacity, and because the round-trip time of data packets between the two data centers is relatively similar, traffic can be distributed relatively evenly. In this case, the scheduling ratio is determined based on the data center's scheduling baseline value; for example, the scheduling ratio for data center A is set at [value missing]. = The scheduling ratio of data center B is =1- .

[0088] Step S242: If the bandwidth occupancy ratio of each data center is less than or equal to the preset occupancy ratio, and the data packet round-trip time ratio difference is greater than the preset round-trip time ratio difference, the scheduling ratio of each data center is determined according to the scheduling benchmark value and the data packet round-trip time ratio difference.

[0089] For example, when the bandwidth utilization ratios of both data centers are less than or equal to a preset utilization ratio, set to 90%, and the difference in the round-trip time ratio of the data packets between the two data centers is greater than a preset round-trip time difference, for example, 30%, then... 90%, 90% and | - | This indicates that both data centers have sufficient bandwidth margins, but their round-trip times (RTTs) differ significantly. Therefore, the scheduling ratio of the two data centers is adjusted appropriately based on this difference, increasing the scheduling ratio of the data center with the shorter RTT. For example, assuming data center A has a shorter RTT, its scheduling ratio is increased based on the difference in RTT ratios between the two data centers. The scheduling ratio for data center A is determined as follows: = | - If | / 2, then the scheduling ratio of data center B is =1- .

[0090] It should be noted that the values ​​and specific formulas of the preset occupancy ratio and the preset round-trip time ratio difference in this embodiment can be adjusted according to the actual situation, and this application does not make any specific limitations on them.

[0091] Based on the above embodiments of this application, in the fourth embodiment of this application, the same or similar content as the above embodiments can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 5 Step S24 also includes steps S243 to S244:

[0092] Step S243: If the bandwidth occupancy ratio of each data center is greater than the preset occupancy ratio, and the difference in the round-trip time ratio of data packets is less than or equal to the preset round-trip time ratio difference, the scheduling ratio of each data center is determined according to the scheduling benchmark value and the bandwidth margin.

[0093] For example, suppose the bandwidth margin is denoted as... Let the bandwidth margin of the first data center A be denoted as... The bandwidth margin of the second data center is denoted as... .

[0094] When the bandwidth utilization of both data centers is greater than the preset utilization rate (set to 90%), and the difference in the round-trip time ratio of the data packets between the two data centers is less than or equal to the preset round-trip time ratio difference (e.g., 30%), for example... 90%, 90% and | - | This indicates that the bandwidth margins of two data centers are relatively tight, and the round-trip time ratios of data packets between the two data centers are not significantly different. In this case, traffic data will be preferentially allocated to the data center with more bandwidth margin. For example, suppose data center A has a bandwidth margin of... If the value is relatively large, then determine the scheduling ratio for data center A. =( / ) The scheduling ratio of data center B =1- .

[0095] Step S244: If the bandwidth occupancy ratio of each data center is greater than the preset occupancy ratio, and the data packet round-trip time ratio difference is greater than the preset round-trip time ratio difference, the scheduling ratio of each data center is determined based on the scheduling benchmark value, the bandwidth margin, and the data packet round-trip time ratio difference.

[0096] For example, when the bandwidth utilization rates of both data centers are greater than a preset utilization rate (set to 90%), and the difference in the round-trip time ratio of data packets between the two data centers is greater than a preset round-trip time difference (e.g., 30%), for example... 90%, 90% and | - | This indicates that the bandwidth margins of the two data centers are relatively tight, and the round-trip time ratios of data packets differ significantly between them. In this case, the scheduling ratio of the two data centers is adjusted based on this difference. For example, if data center A has a shorter round-trip time, its scheduling ratio is increased based on the difference in their round-trip time ratios. =( / ) The scheduling ratio of data center B is =1- .

[0097] For example, in determining the first scheduling ratio Then, the remaining traffic allocation ratio will be used as the second allocation ratio. ,Right now =1- .

[0098] It should be noted that the values ​​and specific formulas of the preset occupancy ratio and the preset round-trip time ratio difference in this embodiment can be adjusted according to the actual situation, and this application does not make any specific limitations on them.

[0099] Based on the above embodiments of this application, in the fifth embodiment of this application, the same or similar content as the above embodiments can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 6 Step S24 also includes steps S245 to S248:

[0100] Step S245: If a data center has a bandwidth occupancy ratio greater than a preset occupancy ratio, the data center with a bandwidth occupancy ratio greater than the preset occupancy ratio shall be designated as the first data center, and the data center with a bandwidth occupancy ratio less than or equal to the preset occupancy ratio shall be designated as the second data center.

[0101] Step S246: If the difference in the round-trip time ratio of data packets between the first data center and the second data center is less than or equal to the preset round-trip time ratio difference, determine that the calling ratio of the second data center is a preset multiple of the corresponding scheduling benchmark value.

[0102] Step S247: If the difference in the round-trip time ratio of data packets between the first data center and the second data center is greater than the preset round-trip time ratio difference, determine that the calling ratio of the second data center is a preset multiple of the corresponding scheduling benchmark value and the difference in the round-trip time ratio of data packets.

[0103] Step S248: Based on the call ratio of the second data center, determine the corresponding remaining traffic scheduling ratio as the call ratio of the first data center.

[0104] For example, when the bandwidth utilization rate of the first data center is greater than a preset utilization rate, the bandwidth utilization rate of the second data center is less than or equal to a preset utilization rate (set to 90%), and the difference in the round-trip time ratio of the data packets between the two data centers is less than or equal to a preset round-trip time ratio difference, for example, 30%, then... 90%, 90% and | - | In this case, prioritize increasing the scheduling ratio of data centers with lower bandwidth utilization or larger bandwidth reserves, and determine the scheduling ratio of the second data center. =2 If the difference in round-trip time ratio between the two data centers is greater than the preset round-trip time ratio difference, that is... 90%, 90% and | - | At that time, the scheduling ratio of the two data centers is adjusted according to the difference in the round-trip time ratio of data packets. For example, In determining Then, the remaining traffic scheduling ratio will be used as... ,Right now =1- .

[0105] It should be noted that the values ​​and specific formulas of the preset occupancy ratio and the preset round-trip time ratio difference in this embodiment can be adjusted according to the actual situation, and this application does not make any specific limitations on them.

[0106] Based on the above embodiments of this application, in the sixth embodiment of this application, if there are two or more data centers, the scheduling weight factor of each data center is determined based on the bandwidth occupancy ratio, bandwidth margin and data packet round-trip time of each data center, and the scheduling ratio of each data center is determined based on the scheduling weight factor of each data center and the preset scheduling benchmark value.

[0107] For example, first, collect the current bandwidth utilization rate, bandwidth reserve, and packet round-trip time of each data center. Based on factors such as business needs and resource allocation strategies, determine the weighting principles for these factors. For instance, bandwidth reserve can be given a higher weight to forward more traffic to data centers with more available bandwidth resources. For each data center, calculate a single weight value based on its bandwidth utilization rate, bandwidth reserve, and packet round-trip time. The calculation methods for single weight values ​​include linear functions, non-linear functions, or exponential functions. Then, perform weighted summation or weighted averaging operations on the single weight values ​​to obtain the scheduling weight factor for each data center.

[0108] Before calculating the scheduling ratio, a preset scheduling baseline value is obtained. Based on the scheduling weight factor of each data center and the preset scheduling baseline value, the scheduling ratio of each data center is determined through certain calculations such as proportional allocation and weighted averaging. This ensures that traffic data can be fairly and efficiently allocated to each data center according to the actual situation of the data centers, thereby optimizing resource utilization.

[0109] Optionally, if at least one data center is detected to be faulty, an additional scheduling ratio for each normal data center is determined based on the bandwidth utilization, bandwidth margin, and packet round-trip time of the other normal data centers. Then, based on the additional scheduling ratio of each normal data center, traffic data is forwarded to the respective normal data center.

[0110] For example, after confirming that at least one data center has failed, all normally functioning data centers are identified. The bandwidth utilization, bandwidth margin, and packet round-trip time of each normally functioning data center are collected.

[0111] Each of the above indicators is assigned a specific weight value, and the additional scheduling ratio is calculated based on this weight value. For example, for each data center, the sum of the individual scores for each indicator is calculated based on its bandwidth margin, bandwidth utilization, and packet round-trip time to obtain its comprehensive score. The comprehensive score of each data center is divided by the sum of the comprehensive scores of all data centers, and then multiplied by a preset total additional scheduling amount to obtain the additional scheduling ratio for each data center. The total additional scheduling amount can be determined based on the traffic load of the faulty data center. If some unallocated traffic data still exists after forwarding the data traffic to the normally operating data center according to the additional scheduling ratio, the unallocated traffic data is temporarily stored in the edge node traffic proxy module.

[0112] Optionally, if only two data centers exist, and one of them is unable to provide normal service, all user traffic requests will be routed to the available data center. For example, if the ingress of the first data center fails and cannot provide normal service, then... 0, =100%. Among them... This indicates the scheduling proportion of the first data center that experienced the failure. This indicates the scheduling ratio of the second data center that is operating normally.

[0113] Optionally, the scheduling ratio of the data center can be set between 5% and 95%.

[0114] It's important to note that even if a data center has poor communication efficiency, its traffic allocation should not be set to 0 when there are no data center failures. Instead, a portion of traffic should be reserved for it. This is because if a data center's traffic allocation is 0%, speed measurement data cannot be obtained, and its round-trip time (RTT) cannot be assessed, thus impacting traffic scheduling decisions. Therefore, even if a data center has poor communication efficiency, there may still be a small amount of available bandwidth. Reserving 5% of the traffic allocation for that data center fully utilizes this bandwidth and avoids resource waste. When the network condition of that data center improves, this reserved traffic can be used in RTT calculations, helping the data center's traffic allocation gradually return to normal levels. By reserving a certain percentage of traffic for underperforming data centers, potential available bandwidth can be fully utilized, avoiding complete resource waste. Furthermore, in the event of a data center failure, the edge node traffic proxy module can quickly transfer traffic to other data centers, reducing the risk of the traffic data scheduling system completely failing due to a single point of failure.

[0115] Based on the above embodiments of this application, in the seventh embodiment of this application, the same or similar content as the above embodiments can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 7 Step S22 includes steps S25 to S27:

[0116] Step S25: Obtain the historical round-trip time of traffic data from each of the data centers.

[0117] It should be noted that historical RTT of traffic data refers to the time required for traffic data to be sent from the edge node to the data center and back from the data center to the edge node, or the round-trip time for traffic data to be allocated from the user end to the data center for processing and then returned to the user end.

[0118] Step S26: Within the first preset time period, calculate the historical round-trip time average of traffic data in each of the data centers.

[0119] The edge node traffic proxy module periodically collects historical round-trip time (RTT) data for traffic from the two data centers. The edge node traffic proxy module sends requests to both data centers, collects and records the RTT for each request, and calculates the average RTT for all requests from both data centers within a first preset time period.

[0120] For example, assuming the first preset time period is 1 minute, the edge node traffic proxy module averages all RTTs collected within 1 minute to obtain the average round-trip time. For instance, the average round-trip time is obtained by summing the RTTs collected within 1 minute and then dividing by the amount of traffic data received within that minute. The average round-trip time can more accurately reflect the network communication efficiency of the data center, avoiding the impact of RTT fluctuations in individual data packets.

[0121] Step S27: Within the second preset time period, the average historical round-trip time of each data center is exponentially smoothed to obtain the data packet round-trip time of each data center.

[0122] It should be noted that the exponential smoothing algorithm can eliminate random fluctuations in the average round-trip time and reflect the changing trend of the average round-trip time within the second preset time period.

[0123] For example, suppose the basic formula for the exponential smoothing algorithm is as follows:

[0124]

[0125] in, It is the smoothed value at the t-th time point within the second preset time period, i.e., the estimated communication time. It is the actual observed value at the t-th time point, i.e., the average round-trip time. It is a smoothing coefficient, with a value between 0 and 1, used to control the degree of smoothing. It is the smoothed value at the (t-1)th time point of the second preset time period.

[0126] Before starting exponential smoothing, the smoothed value for the first time point within the second time period can be initialized, such as the actual observed value for the first time point: For each data center, starting from the second time point, the exponential smoothing formula is applied to calculate the smoothed value for each time point until the smoothed values ​​for all time points within the second preset time period have been calculated. The smoothed value of the last time point is selected as the communication time estimate for that data center, and this communication time is used as the round-trip time of the data packets for that data center.

[0127] In this embodiment, by calculating the historical average round-trip time of data traffic in the data center and applying an exponential smoothing algorithm, an accurate and flexible method is provided to estimate the round-trip time of data packets in the data center. This not only improves the accuracy of the round-trip time estimation, but also helps to optimize traffic data scheduling decisions and forward traffic data to data centers with better performance more efficiently.

[0128] Based on the above embodiments of this application, in the eighth embodiment of this application, the content that is the same as or similar to the above embodiments can be referred to the above description, and will not be repeated hereafter. In addition, the traffic scheduling method for the multi-data center system further includes:

[0129] If the unique token value corresponding to the traffic data exists in a designated data center, the traffic data will be forwarded to the designated data center.

[0130] When traffic data is received for the first time, the system checks whether the unique token value associated with the traffic data has a specific correspondence with a particular data center. If the unique token value corresponding to the traffic data exists in the specified data center, the system will schedule the user's traffic request to that specific data center for processing.

[0131] For example, a special user list can be set up in the unified user center module of the data center, containing the tokens of the special users designated by that data center. The edge node traffic proxy module can obtain the special user list of the data center from the parameter control module. When traffic data is received, it is determined whether the user's token is in the special user list of the data center. If it is in the special user list, the user's request is scheduled to the data center corresponding to the special user list; if it is not in the special user list, the traffic data is allocated according to the scheduling ratio of the data center.

[0132] In an optional implementation, the traffic scheduling method of the multi-data center system further includes: forwarding the traffic data to the historically corresponding data center based on the unique token value associated with the traffic data and the historical correspondence between the data centers.

[0133] To maintain service continuity for users within the data center, the edge node traffic proxy module records the mapping between each scheduled traffic data and its assigned data center. When a user has previously initiated a request, and the system has processed that request at least once, and the user sends another request to the edge node traffic proxy module (i.e., when the edge node traffic proxy module receives traffic data with the same unique token value again), it checks the historical records, identifies the data center that previously processed that traffic data, and schedules the new request to the same data center. This reduces data migration and replication, improves processing efficiency, and maintains service continuity for users.

[0134] Optionally, if the edge node traffic proxy module receives traffic data with the same unique token value again and finds that the data center that previously processed the traffic data has failed, it can schedule the traffic data to another data center. After the original data center recovers, the traffic data can be returned to the original data center.

[0135] In this embodiment, by directly scheduling traffic data to a designated data center or a historically corresponding data center, the need for data migration and replication can be reduced. The traffic data is sent to the data centers they have previously connected to, which can also reduce the risk of service interruption due to data center switching and help maintain the continuity of user services.

[0136] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the traffic scheduling method of the multi-data center system of this application. Any simple modifications based on this technical concept are within the protection scope of this application.

[0137] This application provides a traffic scheduling device for a multi-data center system. The traffic scheduling device for a multi-data center system includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the traffic scheduling method for the multi-data center system in the above embodiment 1.

[0138] The following is for reference. Figure 8 The diagram illustrates a structural schematic of a traffic scheduling device suitable for implementing the embodiments of this application in a multi-data center system. The traffic scheduling device for the multi-data center system in the embodiments of this application may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PADs (Portable Application Description: tablet computers), PMPs (Portable Media Players: portable multimedia players), and in-vehicle terminals (e.g., in-vehicle navigation terminals), as well as fixed terminals such as digital TVs and desktop computers. Figure 8 The traffic scheduling device for the multi-data center system shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.

[0139] like Figure 8As shown, the traffic scheduling device for a multi-data center system may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage device 1003 into a random access memory (RAM) 1004. The RAM 1004 also stores various programs and data required for the operation of the traffic scheduling device for the multi-data center system. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touchscreen, touchpad, keyboard, mouse, image sensor, microphone, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; storage devices 1003 including, for example, magnetic tape, hard disk, etc.; and communication devices 1009. Communication device 1009 allows the traffic scheduling device of a multi-data center system to communicate wirelessly or wiredly with other devices to exchange data. While the figure shows a traffic scheduling device for a multi-data center system with various systems, it should be understood that implementation or possession of all the systems shown is not required. More or fewer systems may be implemented alternatively.

[0140] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.

[0141] The traffic scheduling device for multi-data center systems provided in this application, employing the traffic scheduling method for multi-data center systems described in the above embodiments, can solve the technical problem that current multi-data center system architectures cannot schedule traffic requests in real time. Compared with the prior art, the beneficial effects of the traffic scheduling device for multi-data center systems provided in this application are the same as those of the traffic scheduling method for multi-data center systems provided in the above embodiments, and other technical features in this traffic scheduling device for multi-data center systems are the same as those disclosed in the previous embodiment method, and will not be repeated here.

[0142] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.

[0143] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0144] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, which are used to execute the traffic scheduling method of the multi-data center system described in the above embodiments.

[0145] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.

[0146] The aforementioned computer-readable storage medium may be included in the traffic scheduling device of a multi-data center system; or it may exist independently and not be assembled into the traffic scheduling device of the multi-data center system.

[0147] The aforementioned computer-readable storage medium carries one or more programs that, when executed by the traffic scheduling device of the multi-data center system, enable the traffic scheduling device to write computer program code for performing the operations of this application in one or more programming languages ​​or a combination thereof. These programming languages ​​include object-oriented programming languages—such as Java, Smalltalk, and C++—and conventional procedural programming languages—such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, or as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0148] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0149] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.

[0150] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the traffic scheduling method of the multi-data center system described above. This solves the technical problem that multi-data center system architectures cannot schedule traffic requests in real time. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the traffic scheduling method of the multi-data center system provided in the above embodiments, and will not be repeated here.

[0151] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the traffic scheduling method for a multi-data center system as described above.

[0152] The computer program product provided in this application can solve the technical problem that current multi-datacenter system architectures cannot schedule traffic requests in real time. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as the beneficial effects of the traffic scheduling method for multi-datacenter systems provided in the above embodiments, and will not be repeated here.

[0153] The above description is only a part of the embodiments of this application and does not limit the patent scope of this application. All equivalent structural transformations made under the technical concept of this application and using the contents of the specification and drawings of this application, or direct / indirect applications in other related technical fields, are included in the patent protection scope of this application.

Claims

1. A method for traffic scheduling of a multi-data center system, the method comprising: The traffic scheduling method of the multi-data center system applied to an edge node comprises: When the edge node receives traffic data from a user side, a unique token value corresponding to the traffic data is obtained; If the unique token value does not exist in a specified data center, within a preset time interval, a bandwidth occupation ratio and a bandwidth surplus of each data center are obtained; Based on a data packet round trip time of each data center, a data packet round trip time ratio difference between each data center is determined; A scheduling reference value of each data center is obtained; Based on the bandwidth occupation ratio, the bandwidth surplus, the scheduling reference value and the data packet round trip time ratio difference of each data center, a scheduling ratio of each data center is determined; Based on the scheduling ratio of the data center, a target data center is determined, and the traffic data is forwarded to the target data center.

2. The method of claim 1, wherein, The step of determining the scheduling ratio of each data center based on the bandwidth occupation ratio, the bandwidth surplus, the scheduling reference value and the data packet round trip time ratio difference of each data center comprises: If the bandwidth occupation ratio of each data center is less than or equal to a preset occupation ratio, and the data packet round trip time ratio difference is less than or equal to a preset round trip time ratio difference, the scheduling ratio of each data center is determined according to the scheduling reference value; If the bandwidth occupation ratio of each data center is less than or equal to the preset occupation ratio, and the data packet round trip time ratio difference is greater than the preset round trip time ratio difference, the scheduling ratio of each data center is determined according to the scheduling reference value and the data packet round trip time ratio difference.

3. The method of traffic scheduling for a multi-data center system of claim 1, wherein, The step of determining the scheduling ratio of each data center based on the bandwidth occupation ratio, the bandwidth surplus, the scheduling reference value and the data packet round trip time ratio difference of each data center further comprises: If the bandwidth occupation ratio of each data center is greater than a preset occupation ratio, and the data packet round trip time ratio difference is less than or equal to a preset round trip time ratio difference, the scheduling ratio of each data center is determined according to the scheduling reference value and the bandwidth surplus; If the bandwidth occupation ratio of each data center is greater than the preset occupation ratio, and the data packet round trip time ratio difference is greater than the preset round trip time ratio difference, the scheduling ratio of each data center is determined according to the scheduling reference value, the bandwidth surplus and the data packet round trip time ratio difference.

4. The method of traffic scheduling for a multi-data center system of claim 1, wherein, The step of determining the scheduling ratio of each data center based on the bandwidth occupation ratio, the bandwidth surplus, the scheduling reference value and the data packet round trip time ratio difference of each data center further comprises: If there is a data center whose bandwidth occupation ratio is greater than a preset occupation ratio, the data center whose bandwidth occupation ratio is greater than the preset occupation ratio is taken as a first data center, and the data center whose bandwidth occupation ratio is less than or equal to the preset occupation ratio is taken as a second data center; If the packet round-trip time ratio difference between the first data center and the second data center is less than or equal to a preset round-trip time ratio difference, the calling ratio of the second data center is determined as a preset multiple of the corresponding scheduling reference value; If the packet round-trip time ratio difference between the first data center and the second data center is greater than the preset round-trip time ratio difference, the calling ratio of the second data center is determined as a preset multiple of the corresponding scheduling reference value and the packet round-trip time ratio difference; Based on the calling ratio of the second data center, the corresponding residual traffic scheduling ratio is determined as the calling ratio of the first data center.

5. The method of traffic scheduling for a multi-data center system of claim 1, wherein, The step of determining the packet round-trip time ratio difference between each data center based on the packet round-trip time of each data center comprises: respectively obtaining the historical round-trip time of the traffic data from each data center; respectively calculating the historical round-trip time mean of the traffic data in each data center within a first preset time period; respectively performing exponential smoothing calculation on the historical round-trip time mean of each data center within a second preset time period to obtain the packet round-trip time of each data center.

6. The method of traffic scheduling of a multi-data center system of claim 1, wherein, The method further comprises: If the unique token value corresponding to the traffic data exists in a specified data center, the traffic data is forwarded to the specified data center; Or, according to the historical correspondence between the unique token value associated with the traffic data and the data center, the traffic data is forwarded to the historically corresponding data center.

7. A traffic scheduling device for a multi-data center system, the traffic scheduling device comprising: The device comprises a memory, a processor, and a computer program stored on the memory and executable on the processor, the computer program being configured to implement the steps of the traffic scheduling method of the multi-data center system according to any one of claims 1 to 6.

8. A storage medium, characterized by The storage medium is a computer readable storage medium, and the storage medium stores a computer program, which is executed by the processor to implement the steps of the traffic scheduling method of the multi-data center system according to any one of claims 1 to 6.

9. A computer program product, characterised in that, The computer program product comprises a computer program, which is executed by the processor to implement the steps of the traffic scheduling method of the multi-data center system according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Adaptive multimedia stream link transmission method

    CN102215174A

  • Network traffic scheduling method and apparatus for data centers

    CN105471759A