A traffic scheduling method and system across storage clusters

By applying the negative feedback mechanism of the PID algorithm in traffic scheduling across storage clusters, the problem of low automation in the existing technology is solved, and the rapid convergence of bandwidth and capacity and the improvement of operation and maintenance automation is achieved.

CN116192645BActive Publication Date: 2025-06-27CHINA TELECOM CLOUD TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211497899.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-27
Publication Date
2025-06-27
Estimated Expiration
2042-11-27

AI Technical Summary

Technical Problem

The existing technology has low degree of automation in traffic scheduling across storage clusters, resulting in the inability to effectively utilize the bandwidth and capacity utilization of the storage cluster or exceed the load-bearing capacity, increasing operation and maintenance costs.

Method used

Using a negative feedback mechanism based on PID algorithm, by setting the expected bandwidth and capacity of each resource pool, the PID controller calculates the concurrent correction value, and sends it to the incremental or decrement queue, and generates scheduling guidelines to realize traffic scheduling.

Benefits of technology

It realizes accurate scheduling of storage system traffic, so that the bandwidth and capacity of the storage cluster quickly converge to a reasonable range, improves the level of operation and maintenance automation, and reduces operation and maintenance costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116192645B_ABST
    Figure CN116192645B_ABST
Patent Text Reader

Abstract

The present invention discloses a traffic scheduling method and system across storage clusters, which relates to the field of computer information processing. The method includes: setting the expected bandwidth and capacity of each storage cluster, and regularly reporting the used bandwidth and used capacity; bringing the expected bandwidth capacity and the used bandwidth capacity into a PID controller to calculate a concurrency correction value and obtain a final correction value; if the final correction value of the resource pool is positive, sending the correction information of the resource pool to the increment queue, otherwise sending it to the decrement queue; sequentially consuming the two queues obtained in S3 to generate a scheduling guideline. The system includes: a cross-cluster storage gateway and a PID controller both connected to a plurality of resource pools, a message queue generated by the PID controller, and a traffic scheduling policy generation device communicating with the message queue, and the traffic scheduling policy generation device delivers data to the cross-cluster storage gateway. The present invention improves the stability and accuracy of cross-cluster traffic scheduling.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer information processing, and more particularly, to a traffic scheduling method and system across storage clusters. Background Art

[0002] In the scenario of EB-level mass storage, traffic scheduling across storage clusters is often required. Since the carrying capacity of each storage cluster is fixed at a certain moment, if the traffic is too small, it will lead to low utilization of system bandwidth and capacity, resulting in waste of resources; if the traffic is too large, it will lead to a deterioration of the system network environment, an increase in packet loss rate, an increase in latency, and capacity saturation, thus affecting customer services. If a disk failure occurs in a certain storage cluster, resulting in a decrease in available capacity and the bandwidth being occupied by high-priority services, it is necessary to reduce the load of the resource pool; while system bandwidth expansion and cluster scale expansion require an increase in the load of the resource pool. Currently, traffic scheduling is often carried out by operation and maintenance personnel based on experience, which often cannot quickly and accurately converge to the expected value, and with the rapid increase in the number of clusters, the operation and maintenance costs are also rising rapidly.

[0003] In order to solve the problems of low automation of the existing traffic scheduling scheme, the capacity utilization rate and bandwidth utilization rate of the storage cluster cannot be effectively utilized or exceed the carrying capacity of the current cluster, an implementation method of a traffic scheduling system across storage clusters based on the PID algorithm is proposed. Through negative feedback, accurate scheduling of the storage system traffic is achieved, enabling the bandwidth and capacity of the storage cluster to quickly converge to a reasonable range, and at the same time improving the level of operation and maintenance automation. Summary of the Invention

[0004] The technical problem to be solved by the present invention is to provide a traffic scheduling method and system across storage clusters, which achieve accurate scheduling of the storage system traffic through negative feedback, enable the bandwidth and capacity of the storage cluster to quickly converge to a reasonable range, and at the same time improve the level of operation and maintenance automation.

[0005] To achieve the above object, the present invention adopts the following technical solutions:

[0006] A traffic scheduling method across storage clusters includes the following steps:

[0007] S1: Set the expected bandwidth and capacity of each resource pool, and regularly report the used bandwidth and used capacity;

[0008] S2: Substitute the expected bandwidth, capacity, used bandwidth, and used capacity in S1 into the PID controller to calculate the concurrent correction values of each resource pool, and obtain the final correction value by synthesizing the correction values of bandwidth and capacity;

[0009] S3: If the final correction value of the resource pool is positive, it indicates that the resource pool needs to increase concurrency, and then send the correction information of the resource pool to the increment queue; if the final correction value of the resource pool is negative, it indicates that the resource pool needs to reduce concurrency, and then send the correction information of the resource pool to the decrement queue.

[0010] S4: Consume the two queues obtained in S3 in sequence, generate a scheduling guideline, and send the scheduling guideline to the cross-cluster storage gateway, and the cross-cluster storage gateway performs the actual scheduling action.

[0011] Preferably, the algorithm of the PID control is the incremental PID algorithm.

[0012] Preferably, in S2, the final correction value is the minimum value of the bandwidth correction value and the capacity correction value.

[0013] Preferably, in S3, if the final correction value of the resource pool is positive, then send the correction information of the resource pool to the end of the increment queue, otherwise send it to the end of the decrement queue.

[0014] Preferably, the process of generating the scheduling guideline in S4 includes:

[0015] First, take out the correction data dec_C of Resource Pool A from the decrement queue, and then take out the correction data inc_C of Resource Pool B from the increment queue. If |dec_C| ≥ |inc_C|, then generate the scheduling guideline "Schedule inc_C concurrencies from Resource Pool A to Resource Pool B", and change the correction value of Resource Pool A to |inc_C| - |dec_C| and insert it into the head of the decrement queue; if |dec_C| ≤ |inc_C|, then generate the scheduling guideline "Schedule |dec_C| concurrencies from Resource Pool A to Resource Pool B", and change the correction value of Resource Pool B to |inc_C| - |dec_C| and insert it into the head of the increment queue.

[0016] The present invention also discloses a traffic scheduling system for cross-storage clusters, including a cross-cluster storage gateway and a PID controller both connected to multiple resource pools, a message queue generated by the PID controller, and a traffic scheduling policy generation device communicating with the message queue, and the traffic scheduling policy generation device delivers data to the cross-cluster storage gateway.

[0017] Preferably, the PID controller operates according to the functional relationship of proportional, integral, and differential by inputting the deviation value of the bandwidth, obtains the concurrency increment of each resource pool, and performs subsequent traffic scheduling based on this.

[0018] Preferably, the PID controller includes a capacity PID controller and a bandwidth PID controller.

[0019] Preferably, the message queue includes an increment queue and a decrement queue.

[0020] Preferably, the traffic scheduling policy generation device is used to traverse the increment queue and the decrement queue, consume the data in the queue through the positive and negative cancellation policy, and then generate a scheduling guideline.

[0021] The advantages of the present invention over the prior art are as follows:

[0022] 1. Based on the capacity and bandwidth utilization rate, traffic scheduling is performed between multiple storage clusters, considering both situations comprehensively, and the scheduling is more adapted to the actual usage situation.

[0023] 2. Utilizing the negative feedback mechanism of the PID controller improves the stability and accuracy of traffic scheduling.

[0024] 3. Since the automation degree of the PID controller and others is high, the automation degree of the traffic scheduling system is thus improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] Figure 1 is a schematic diagram of the system of the present invention;

[0026] Figure 2 is a schematic diagram of the PID controller model of the present invention;

[0027] Figure 3 is a schematic diagram of the calculation method of the final correction value of the present invention;

[0028] Figure 4 is a schematic diagram of the generation of the scheduling policy of the present invention. DETAILED DESCRIPTION OF THE INVENTION

[0029] The following describes the specific embodiments of the present invention in conjunction with the drawings.

[0030] As Figure 1 is the overall architecture of the system of the present invention. When in use, the operation and maintenance personnel of the present invention set the expected bandwidth and capacity of each storage cluster. Each storage resource pool regularly reports the used bandwidth and capacity, and brings them into the PID controller together with the set expected values to calculate the concurrent correction values of each resource pool. The final correction value is obtained by synthesizing the correction values of the bandwidth and capacity. If the final correction value is positive, the correction information of the resource pool is sent to the increment queue, otherwise it is sent to the decrement queue. The traffic scheduling policy generation device sequentially consumes the two queues to generate a scheduling guideline, and sends the scheduling guideline to the cross-cluster storage gateway, and the gateway executes the actual scheduling action. The operation and maintenance personnel only need to set the expected bandwidth and capacity, and the system can automatically and quickly converge to this expected value.

[0031] The system mainly includes: a PID controller, a message queue, and a traffic scheduling policy generation device.

[0032] The first part is the PID controller.

[0033] The PID controller is a control algorithm that combines the three links of proportional, integral, and differential. It calculates by inputting the deviation value of the bandwidth, performs operations according to the functional relationships of proportion, integral, and differential, obtains the concurrency increment of each resource pool, and conducts subsequent traffic scheduling based on this. Among them, Kp represents the proportional gain, Tt represents the integral time constant, TD represents the differential time constant. u(t) represents the output of the PID controller, and e(t) represents the difference between the given value and the measured value. The PID controller model is as Figure 2 shown.

[0034] The formula for the positional PID is as follows.

[0035]

[0036] The formula for the incremental PID is as follows, and the incremental PID scheme is used in the present invention.

[0037] Δu(k) = K p (e(k) - e(k - 1)) + K i e(k) + K d (e(k) - 2e(k - 1) + e(k - 2))

[0038] The PID controller is divided into a capacity PID controller and a bandwidth PID controller: the correction value calculated by the capacity PID controller is the capacity correction value C_store, the correction value calculated by the bandwidth PID controller is the bandwidth correction value C_bw, and the comprehensively calculated correction value is the final correction value C_final. The calculation process is as Figure 3 shown.

[0039] If the capacity correction value is positive and the bandwidth correction value is also positive, then take the minimum value of the two as the final correction value, because both bandwidth and capacity will limit the bearing capacity of the storage cluster, and the storage cluster needs to be incremented to the minimum extent; if the capacity correction value is positive and the bandwidth correction value is negative, then take the bandwidth correction value as the final correction value, indicating that the storage cluster now needs to be decremented; if the capacity correction value is negative and the bandwidth correction value is positive, then take the capacity correction value as the final correction value, indicating that the storage cluster now needs to be decremented; if both the capacity correction value and the bandwidth correction value are negative, then take the minimum value of the two as the final correction value, indicating that the storage cluster now needs to be decremented to the maximum extent.

[0040] If C_final is positive, insert the correction signal <cluster, C_final> of this resource pool into the end of the increment queue; if C_final is negative, insert the correction signal <cluster, C_final> of this resource pool into the end of the decrement queue.

[0041] The second part is the message queue and traffic scheduling policy generation device.

[0042] Both the increment queue and the decrement queue are implemented based on a deque.

[0043] The traffic scheduling policy generation device first retrieves the correction data dec_C of resource pool A from the decrement queue, and then retrieves the correction data inc_C of resource pool B from the increment queue. At this time, the data retrieved from the original queue disappears.

[0044] After Figure 4 the calculations shown, a traffic scheduling guideline is obtained.

[0045] The core idea of the traffic scheduling index generation device is to traverse the increment queue and the decrement queue, and then consume the data in the queue through a positive and negative cancellation strategy, thereby generating a cut volume guideline.

[0046] Send the scheduling signal to the cross-cluster storage gateway for actual traffic scheduling operations.

[0047] In summary, the present invention applies the PID algorithm to the cross-storage cluster traffic scheduling scenario; designs the logic of the traffic scheduling guideline generation device based on a deque, and enables the bandwidth utilization rate and capacity utilization rate of the storage cluster to quickly converge to near the desired level through a negative feedback system.

[0048] The above is only a preferred specific implementation manner of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present invention, according to the technical solution and inventive concept of the present invention, makes equivalent substitutions or changes, and should be covered by the protection scope of the present invention.

Claims

1. A traffic scheduling method across storage clusters, characterized in that It includes the following steps: S1: Set the expected bandwidth and capacity of each resource pool, and regularly report the used bandwidth and used capacity; S2: Bring the expected bandwidth, capacity, used bandwidth, and used capacity in S1 into the PID controller to calculate the concurrency correction value of each resource pool, and obtain the final correction value by synthesizing the correction values of bandwidth and capacity; S3: If the final correction value of the resource pool is positive, it means that the resource pool needs to increase concurrency, then send the correction information of the resource pool to the increment queue; if the final correction value of the resource pool is negative, it means that the resource pool needs to reduce concurrency, then send the correction information of the resource pool to the decrement queue; S4: Consume the two queues obtained in S3 in sequence, generate a scheduling guideline, and send the scheduling guideline to the cross-cluster storage gateway, and the cross-cluster storage gateway performs the actual scheduling action; The process of generating the scheduling guideline in S4 includes: First, take out the correction data dec_C of resource pool A from the decrement queue, then take out the correction data inc_C of resource pool B from the increment queue. If |dec_C|≥|inc_C|, then generate the scheduling guideline "Schedule inc_C concurrencies from resource pool A to resource pool B", and change the correction value of resource pool A to |inc_C|-|dec_C| and insert it into the head of the decrement queue; if |dec_C|≤|inc_C|, then generate the scheduling guideline "Schedule |dec_C| concurrencies from resource pool A to resource pool B", and change the correction value of resource pool B to |inc_C|-|dec_C| and insert it into the head of the increment queue.

2. The method according to claim 1, characterized in that, The algorithm of the PID control is the incremental PID algorithm.

3. The method according to claim 1, wherein In S2, the final correction value is the minimum of the bandwidth correction value and the capacity correction value.

4. The method according to claim 1, wherein In S3, if the final correction value of the resource pool is positive, then send the correction information of the resource pool to the end of the increment queue, otherwise send it to the end of the decrement queue.

5. A traffic scheduling system across storage clusters, characterized in that, It includes a cross-cluster storage gateway and a PID controller both connected to multiple resource pools, a message queue generated by the PID controller, and a traffic scheduling policy generation device communicating with the message queue, and the traffic scheduling policy generation device delivers data to the cross-cluster storage gateway; The steps of scheduling traffic through the traffic scheduling system of the cross-storage cluster include: S1: Set the expected bandwidth and capacity of each resource pool, and regularly report the used bandwidth and used capacity; S2: Bring the expected bandwidth, capacity, used bandwidth, and used capacity in S1 into the PID controller to calculate the concurrency correction value of each resource pool, and obtain the final correction value by synthesizing the correction values of bandwidth and capacity; S3: If the final correction value of the resource pool is positive, it means that the resource pool needs to increase concurrency, then send the correction information of the resource pool to the increment queue; if the final correction value of the resource pool is negative, it means that the resource pool needs to reduce concurrency, then send the correction information of the resource pool to the decrement queue; S4: Consume the two queues obtained in S3 in sequence, generate a scheduling guideline, and send the scheduling guideline to the cross-cluster storage gateway, and the cross-cluster storage gateway performs the actual scheduling action; The process of generating the scheduling guideline in S4 includes: First, retrieve the correction data dec_C of resource pool A from the decrement queue, and then retrieve the correction data inc_C of resource pool B from the increment queue. If |dec_C| ≥ |inc_C|, generate a scheduling directive "Schedule inc_C concurrences from resource pool A to resource pool B", and change the correction value of resource pool A to |inc_C| - |dec_C| and insert it at the head of the decrement queue; if |dec_C| ≤ |inc_C|, generate a scheduling directive "Schedule |dec_C| concurrences from resource pool A to resource pool B", and change the correction value of resource pool B to |inc_C| - |dec_C| and insert it at the head of the increment queue.

6. The system according to claim 5, wherein The PID controller operates based on the deviation value of the input bandwidth, performs calculations according to the functional relationships of proportional, integral, and differential, obtains the concurrency increments of each resource pool, and conducts subsequent traffic scheduling based on this.

7. The system according to claim 5, characterized in that, The PID controller includes a capacity PID controller and a bandwidth PID controller.

8. The system according to claim 5, wherein The message queue includes an increment queue and a decrement queue.

9. The system according to claim 8, wherein, The traffic scheduling policy generation device is used to traverse the increment queue and the decrement queue, consume the data in the queue through a positive and negative cancellation strategy, and thereby generate a scheduling directive.

Citation Information

Patent Citations

  • Calculation unit transmission and load regulation and control system and regulation and control method

    CN114138456A