RDMA space-time online scheduling method based on end-network cooperation
By using a network-end collaborative transmission time estimation and spatiotemporal decision model, invalid and incomplete work requests are dynamically identified and delayed, solving the buffer jitter and congestion problems caused by IOWR in RDMA networks, and achieving efficient resource utilization and stream completion time optimization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-31
- Publication Date
- 2026-04-14
AI Technical Summary
In high-concurrency scenarios, there are a large number of invalid unfinished work requests (IOWRs) in RDMA networks, which cause RNIC buffer jitter and network congestion. Existing technologies have difficulty accurately identifying and reducing IOWRs, affecting throughput and stream completion time.
A transmission time estimation model for end-to-end network collaboration is constructed. Combining spatiotemporal decision variables and a profit maximization model, an online scheduling algorithm is designed using batch processing and compact exponential techniques to dynamically identify and delay IOWR, prioritize the scheduling of critical requests, and reduce invalid occupancy.
Significantly reduces average and tail flow completion time, decreases the number of invalid and incomplete work requests, and improves the overall performance and resource utilization of RDMA networks.
Smart Images

Figure CN121864874A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data center network and remote direct memory access (RDMA) communication technology, specifically to an RDMA spatiotemporal online scheduling method based on end-to-end network collaboration, and its corresponding electronic equipment and computer-readable storage medium. Background Technology
[0002] RDMA provides high-throughput, low-latency communication capabilities for workloads such as distributed storage, high-performance computing, and large-scale training by bypassing kernel mechanisms in user space and using zero-copy. RDMA network interface cards (RNICs) typically transmit and receive through queue pairs (QPs) and work requests (WRs), and internally rely on limited on-chip caches (including WQE caches, state caches, etc.) to store queue metadata and the status of incomplete requests.
[0003] In high-concurrency scenarios, applications continuously submit a large number of incomplete work requests (OWRs) to the RNIC. When the number of OWRs is too high, the RNIC's on-chip cache frequently undergoes replacement and jitter, leading to a decrease in cache hit rate. Reading and writing metadata requires multiple accesses to external storage or host memory, significantly reducing application throughput and increasing latency. Existing research shows that when the number of OWRs is too low, network parallelism is insufficient, failing to fully utilize RDMA link bandwidth; while when the number of OWRs is too high, it causes WQE cache jitter and queue accumulation, resulting in decreased throughput and a significant deterioration in Stream Completion Time (FCT).
[0004] To address the issue of excessive OWRs, existing solutions typically employ quota-based or rate-limiting methods to restrict the number of OWRs or the commit rate for each QP. These solutions generally treat all WRs as equally important, controlling only the total number without distinguishing which WRs can be safely delayed. In reality, a large number of invalid OWRs (IOWRs) exist in real-world networks: some WRs, even if committed later than one or more time slots, still have the same flow completion time. The existence of these requests only consumes valuable RNIC and network buffer resources without providing any performance improvement.
[0005] IOWR is essentially an inefficient use of resources, so reducing IOWR can alleviate excessive OWR without degrading network performance. However, accurately identifying IOWR and predicting its duration is very difficult because end-host load and network congestion are highly dynamic and unpredictable. Summary of the Invention
[0006] Technical Problem: After the IOWR arrives, the "when to schedule (time dimension)" and "which QP / path to schedule to (spatial dimension)" are jointly determined based on the end-side load and network-side congestion status. To address the challenges of end-to-end network collaborative RDMA spatiotemporal online scheduling, the following main problems are faced: how to balance the IOWR caused by premature scheduling with the additional latency caused by late scheduling in the time dimension; how to choose between paths with long queues but high throughput and paths with short queues but low throughput in the spatial dimension; and how to achieve end-to-end network collaborative real-time scheduling in the presence of end-host scheduling and network transmission latency. To solve these problems, this invention proposes an end-to-end network collaborative RDMA spatiotemporal online scheduling method. First, a dynamic scheduling model with transmission time estimation and IOWR determination is constructed, explicitly modeling the finite OWR depth and link bandwidth as resource constraints. Second, batch processing and compact exponential techniques are used to transform the original mixed integer nonlinear programming into integer linear programming with a packaged structure. Based on the exponential price function, a primitive-dual approximation algorithm is designed to determine the acceptance or delay of WRs according to marginal revenue. Finally, an online multi-round scheduling algorithm and a credit variant are presented, which dynamically delays low-value WRs and prioritizes scheduling critical WRs in polynomial time, thereby alleviating RNIC buffer jitter and network congestion, significantly reducing average and tail FCT, and improving RDMA resource utilization.
[0007] To achieve the above objectives, the technical solution of the present invention is as follows: A spatiotemporal online scheduling method for RDMA based on end-to-end network collaboration, comprising the following steps:
[0008] Step 1: Establish a collaborative transmission time estimation model between the end-user and network. First, considering both the dynamic load on the terminal host side and the real-time bandwidth on the network side, an integrated end-to-end transmission time estimation model is constructed. Based on this, by statistically analyzing historical traffic and current load and updating them online, a safe upper bound for transmission time under worst-case conditions is given, used to evaluate the worst-case FCT for each request at different scheduling times. Furthermore, based on this upper bound, we define Invalid Outstanding Work Requests (IOWRs): requests whose estimated FCT will not deteriorate even if their submission time is delayed under a given end-user network state. These are considered inefficient users of RNIC cache and network resources, providing a determinable target for subsequent scheduling strategies.
[0009] Step 2: Construct a revenue maximization model based on spatiotemporal decision variables. The optimization objective is the total utility gained by all work requests throughout their entire transmission cycle, where utility comprehensively reflects flow completion time, priority, and quality of service requirements. The model abstracts the limited buffer and queue resources of the RNIC, the link bandwidth and queue capacity on each QP's corresponding path, etc., into unified constraints. By introducing a time-dimensional variable for sending time and a spatial-dimensional variable for path / QP selection for each request, a spatiotemporal joint resource allocation framework is formed. This model, without exceeding the constraints of the RNIC and network resource capacity, jointly optimizes "when to send" and "from which path to send," thereby maintaining high throughput while minimizing invalid occupancy caused by IOWR and prioritizing the performance requirements of critical flows and high-priority requests.
[0010] Step 3: For the profit maximization model in Step 2, batch processing techniques are used to segment the originally continuously arriving online scheduling problem into a series of discrete offline batch scheduling problems. Specifically, scheduling windows are divided on the time axis, and requests arriving within a window are treated as a batch and optimized uniformly, thereby improving overall computability. Since the original model is a complex mixed-integer nonlinear programming problem, we use compact exponential techniques to reconstruct the utility function and resource constraints, absorbing the nonlinear coupling relationship into exponential price terms, making the problem transformable into an integer linear programming problem with a packaged structure. Based on this structure, we designed an exponential price function algorithm under the primal-dual framework: by setting prices for different resources that grow exponentially with the load, the primal variable (scheduling decision) and the dual variable (resource price) are updated simultaneously during the iteration process, obtaining an approximate optimal solution in polynomial time, and providing a core subroutine that can be efficiently implemented for subsequent online algorithms.
[0011] Step 4: Based on the theory and algorithm in Step 3, design an online-running time-space scheduling algorithm. In the actual system, the algorithm dynamically divides continuously arriving requests into multiple scheduling windows. Within each window, multiple rounds of resource allocation iterations are performed: First, based on the current host load and network status, a batch optimization subroutine is invoked to estimate the marginal value of each request in a feasible scheduling scheme (i.e., the utility increment brought by scheduling the request additionally under the current resource occupancy). Then, requests with non-positive marginal values are marked as IOWRs and safely postponed to subsequent batches to avoid them occupying scarce RNIC and network resources within the current window. For requests with positive marginal values, the optimal sending time and QP path are allocated to them, enabling them to complete transmission in a low-congestion, low-queueing spatiotemporal location as much as possible. Through this process, the algorithm can dynamically identify and filter invalid resource-occupying requests during runtime, prioritizing critical flows and high-priority requests, and significantly reducing the number of OWRs and flow completion time tail delays without sacrificing overall throughput.
[0012] Furthermore, the establishment of the end-to-end network collaborative transmission time estimation model in step 1 specifically includes the following steps:
[0013] Step 101: Define the end host as containing Q queue pairs (QP) and J work requests (WR), and obtain the real-time bandwidth B for each QP. q and the current queued load size;
[0014] Step 102: Perform end-to-end network collaborative estimation by combining end-host load and real-time network bandwidth. Given a working request j and a QPq, calculate the worst-case transmission time g(j, q) of the request on QPq. This estimation model reflects the impact of queuing delay on transmission time, and its calculation formula satisfies a relationship proportional to the data size and the current total load of QP:
[0015]
[0016] Where κ is a constant coefficient ranging from (0, 1), used to adjust the conservatism of the estimation; B q Indicates the real-time bandwidth of QPq; J q This represents the set of currently existing unfinished work requests in QPq; ∑s j ′ represents the total data size of the existing load in QPq.
[0017] Step 103: Define an Invalid Outstanding Work Request (IOWR) as follows: For a work request j, if its scheduled completion time (FCT) at time t is the same as that at time t+1, i.e., FCT(j, t) = FCT(j, t+1), then the request is an IOWR. Existing technologies mainly control the number of OWRs or the sending rate, treating all requests equally, without knowing whether sending a request at a certain moment can actually shorten the flow completion time (FCT). However, in reality, many OWRs are invalid: immediately submitting them does not improve the FCT, but still occupies scarce RNIC and network resources, introducing a large amount of inefficient concurrency. Therefore, by reducing IOWRs, invalid resource consumption can be directly reduced, alleviating NIC buffer jitter and queue congestion, without worsening the completion time of the corresponding flow. This is something that traditional methods that only control concurrency cannot achieve.
[0018] Furthermore, the profit maximization model based on spatiotemporal decision variables described in step 2 specifically includes the following steps:
[0019] Step 201: Construct a system model, including a set of queue pairs [Q] and a set of work requests [J], where t represents the time slot index, and C... q This represents the depth of the queue pair QPq. j r represents the data size of job request j. jQ represents the arrival time of job request j. j This represents the set of QPs available for job request j. The decision variable y jq (t) indicates whether job request j is scheduled to QPq at time t (value is 1 or 0), variable a j The variable represents the start time of the scheduling of job request j. Let represent the completion time of job request j. The total revenue of the system is defined as the sum of the utility functions of all job requests, and the goal is to maximize this total revenue. Establish a mixed-integer nonlinear programming (MINLP) mathematical model:
[0020]
[0021] subject to:
[0022]
[0023] x jq y jq (y)∈{0,1} (2j)
[0024] The model aims to maximize overall benefits by jointly optimizing transmission time and spatial paths. Specifically, it captures network dynamics using the transmission time estimation formula g(j,q) defined in step 201, and constraint (2a) represents the variable x. jq With y jq The relationship between (t) is as follows. Constraint (2b) ensures that each scheduled WR has sufficient processing time. Constraint (2c) is a QP capacity constraint. Constraint (2d) states that any WRj can only be scheduled to a matching QP set Q consistent with its destination. j Above. Constraint (2e) states that within any given time slot, a WR can be scheduled to at most one QP. Constraint (2f) states that a WR can only be scheduled after arrival and released after transmission is complete. The scheduling time and completion time of a WR are determined by constraints (2g) and (2h), respectively. Constraint (2i) prevents a scheduled WR from being preempted before completion. Compared to existing scheduling models based on "controlling quantity / rate", the above steps treat the finite OWRs as explicit resources, unify the transmission time and QP selection as spatiotemporal decision variables, establish a revenue maximization model, and can achieve refined allocation based on "joint optimization of utility and resource cost".
[0025] Furthermore, step 3, which transforms the original problem into an offline batch scheduling problem and further relaxes it into a dual problem, specifically includes the following steps:
[0026] Step 301: Divide the scheduling window. To address the uncertainty of online arrival requests, the timeline is divided into scheduling windows that grow geometrically. Define time points τ0 = 1, τ1 = 2, ..., τi =2 i-1 The time interval of the i-th scheduling window is (i, i+α(τ)). i -i)), where λ is the algorithm parameter, calculated by equation (8). This partitioning mechanism transforms the original continuous online scheduling problem into a series of offline batch scheduling subproblems, with each window handling requests that were not processed in the previous stage and newly arrived requests.
[0027] Step 302: Define the Ideal Revenue Maximization Problem (IRMP): Given a deadline D, a set of job requests (WRs) available at time 0, and a utility function associated with the completion time of each request, construct a feasible scheduling scheme that maximizes the total utility of all job requests completed before the deadline D.
[0028]
[0029] subject to:
[0030]
[0031] Where τ i This indicates the deadline for the current scheduling window. The model aims to determine which requests within the current window should be processed immediately. j =1), which should be postponed (o j =0).
[0032] Step 303, Problem Reconstruction and Dual Relaxation. Problem (3) is reconstructed into an integer linear programming problem with a packed structure using the compact exponential technique. L is defined as... j Let a variable be introduced to represent the set of all feasible scheduling schemes for request j. Indicates whether request j adopts the scheme.
[0033]
[0034] subject to:
[0035]
[0036] in, Indicating in the scheduling scheme Whether job request j occupies queue q in time slot t.
[0037] Step 304: When relaxing the reconstructed model (4), the integer constraints are... Relaxed to Introducing dual variable δ q (t) and μ jCorresponding to constraints (4a) and (4b) respectively, the objective function of the dual problem is constructed as follows:
[0038]
[0039] subject to:
[0040]
[0041] Step 305, according to the complementary relaxation condition, when work request j is in the scheme The following was accepted The corresponding dual constraint takes the equality sign, and then the marginal benefit μ of work request j is defined. j for:
[0042]
[0043] Where f(·) is the utility function, and the latter term is the expression at a given price δ. q(t) The resource cost under the condition; if the maximum marginal value μ j If μ > 0, the request should be scheduled immediately; if μ < 0, the request should be scheduled immediately. j =0 indicates that the current network is congested or that the request is an invalid Incomplete Work Request (IOWR), and it should be postponed to a later window for processing.
[0044] Step 306: Design an exponential price function. To calculate the cost of network resources, the unit price of the resource needs to be determined. Based on the dual variable δ... q (t), design an index price function that reflects the degree of resource scarcity, and let β q (t) represents the number of Outstanding Work Requests (OWRs) for QPq at time t, and the price function is defined as follows:
[0045]
[0046] Where λ>1 is a constant parameter that regulates the rate of price growth. This function exhibits market-regulating characteristics: when QP resources are exhausted (i.e., β... q (t) When approaching the QP depth limit, the price should tend to infinity or a sufficiently large value to prevent new requests from being scheduled.
[0047] Step 307: To ensure that when resources are exhausted, the utility of any request minus the resource cost is negative (i.e., it is rejected), the calculation of parameter λ must satisfy the following condition: Therefore, the formula for calculating λ is:
[0048]
[0049] Thus, when network congestion occurs or queue depth approaches its limit, the exponential price function automatically suppresses the submission of low-marginal-return requests.
[0050] Step 308: Given the current price system δ q Under (t), for each work request j, find its optimal scheduling scheme. This process is equivalent to solving the following optimization problem that maximizes net profit:
[0051]
[0052] subject to:
[0053]
[0054] Wherein (9a) means that for any QPq, the occupancy allocated to work request j within the entire scheduling interval does not exceed the remaining capacity of that queue pair; and (9b) means that a work request can only be scheduled after arrival, is not preemptible from start to finish, occupies resources only during the occupancy period, and can only be scheduled to the set of queue pairs Q that match its destination. j Compared to existing technologies, the above steps introduce a resource pricing mechanism to unify the constraints of the end host and the network side, and support lightweight scheduling decisions on the end host, thereby adapting to the dynamically changing network environment.
[0055] Furthermore, the specific execution steps of the online time-space temperature algorithm in step 4 include:
[0056] Step 401: Request Sorting and Initialization. Within each scheduling window, the Shortest Job First (SJF) strategy is used to sort the set of job requests J in the current batch. i Sort the data in non-decreasing order based on size, and initialize the marginal benefit μ for all requests. j =0;
[0057] Step 402: Spacetime Scheme Enumeration and Pruning. For each sorted work request j, enumerate all available queue pairs q∈Q. j Based on the current network status, calculate the estimated completion time if request j is scheduled to QPq. if If the time frame exceeds the current scheduling round, skip that QP.
[0058] Step 403: Marginal Value Calculation and IOWR Identification. For scheduling schemes that meet the time requirements, based on the current resource price δ... q (t) Calculate resource costs And calculate the potential marginal value of the plan. like The scheduling of this request on this QP is determined to be invalid (IOWR), and the QP is marked as invalid for request j and all data sizes greater than s.j Subsequent requests were all unavailable, thus triggering a pruning operation.
[0059] Step 404: Optimal Solution Decision and State Update. If there exists... Then update the optimal scheduling scheme for this request. And the maximum marginal return. After the traversal, if μ j If the value is greater than 0, then follow the optimal solution. Perform resource allocation and update the load depth β of QP in real time. q (t) and price δ q (t); if μ j If the value is 0, the request is postponed to the next batch. The above steps, through multiple rounds of online scheduling, combined with shortest job priority, marginal benefit determination, and IOWR postponement, significantly reduce the number of average and tail FCTs and OWRs while ensuring polynomial complexity. Compared with existing technologies such as SMART and Valve, which are limited to concurrency, it is superior in both congestion relief and performance.
[0060] An electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, it implements the aforementioned RDMA spatiotemporal online scheduling method based on end-to-end network collaboration.
[0061] A computer-readable storage medium storing computer instructions, which, when executed by a processor, implement the steps of the described RDMA spatiotemporal online scheduling method based on end-to-end network cooperation.
[0062] Beneficial effects:
[0063] The advantages of this invention are:
[0064] By proposing an online time-space scheduling method for RDMA based on end-to-end network collaboration, invalid incomplete work requests (IOWRs) are identified and delayed without deteriorating flow completion time. This effectively alleviates on-chip buffer jitter and network congestion in RNICs, significantly reduces average and tail flow completion time, and reduces the number of redundant incomplete work requests, thereby improving the overall performance and resource utilization of the RDMA network.
[0065] Compared with the prior art, the present invention has the following characteristics:
[0066] 1. This invention establishes the concept of invalid incomplete work requests (IOWR) and, based on end-to-end network collaborative transmission time estimation and marginal benefit determination, automatically identifies and postpones IOWR during the scheduling process. Only requests that actually contribute to the flow completion time are allowed to occupy RNIC cache resources and network storage resources, thereby significantly reducing invalid concurrency and queuing, alleviating network congestion, and improving the overall throughput and latency performance of RDMA networks.
[0067] 2. This invention constructs a scheduling model that considers end-to-end network coordination and spatiotemporal joint decision-making. It explicitly models the limited QP depth and link bandwidth as resource constraints, and combines worst-case transmission time estimation and utility function to determine the timing (transmission time).
[0068] Scheduling strategies that combine network performance with spatial dimensions (QP / path selection)
[0069] 3. This invention proposes an approximate solution algorithm based on compact exponential reconstruction and the primal-dual method. It utilizes batch processing to decompose the online problem into an offline batch scheduling problem, introduces an exponential price function and a multi-round search mechanism, and determines the acceptance or postponement of requests based on marginal revenue. This achieves theoretically guaranteed online scheduling while maintaining polynomial time complexity.
[0070] Scheduling performance. Attached Figure Description
[0071] Figure 1 This is a scheduling flowchart of the spatiotemporal joint decision-making technology of the present invention;
[0072] Figure 2 This is a flowchart of the scheduling algorithm for end-to-end network coordination and spatiotemporal joint decision-making of the present invention;
[0073] Figure 3 —6 is a comparison chart of experimental results between the algorithm of this invention and other existing algorithms. Detailed Implementation
[0074] To facilitate understanding and implementation of the present invention by those skilled in the art, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the embodiments described herein are for illustration and explanation only and are not intended to limit the present invention.
[0075] Example: First, Table 1 explains some important symbols used in the example:
[0076] Table 1 Important Symbols
[0077]
[0078]
[0079] This embodiment of an RDMA spatiotemporal online scheduling method based on end-to-end network collaboration includes the following steps:
[0080] Step 1: Establish a transmission time estimation model for end-to-end network collaboration.
[0081] Step 101: Establish a system model on the RDMA host. Assume the host contains Q queue pairs (QP) and J work requests (WR). The scheduling layer is located between the application and the user-space RDMA driver. It intercepts the WR submitted by the application and adds them to the WR pool. It maintains two key states for each QP: (1) Real-time bandwidth B q : The path monitoring module counts the total number of bytes completed on the QP within the most recent time window and divides it by the time window length to obtain the result; (2) Queue load: Record the current uncompleted WR set J q and the sum of its data size Optional record OWR number β q (t) represents the queue length. The above information is added, reduced, and updated when WR submits and completes, enabling the scheduling layer to grasp the "bandwidth capacity" and "queue occupancy" of each QP in real time, providing a basis for subsequent end-to-end network collaborative estimation.
[0082] Step 102: Perform end-to-end network collaborative estimation by combining end-host load and real-time network bandwidth. Given a working request j and a QP q, calculate the worst-case transmission time g(j, q) of the request on QP q. This estimation model reflects the impact of queuing delay on transmission time, and its calculation formula satisfies a relationship proportional to the data size and the current total load of the QP:
[0083]
[0084] Where κ is a constant coefficient ranging from (0, 1), used to adjust the conservatism of the estimation; B q Indicates the real-time bandwidth of QPq; J q This represents the set of currently existing Outstanding Work Requests (OWRs) in QPq; ∑s j ' represents the total data size of the existing load in QPq. This model linearly reflects the impact of queuing delay on transmission time and has two properties: first, g(j,q) varies with s j Monotonically increasing, if a smaller WR cannot be completed within the current window on this QP, then any larger WR is also infeasible on this QP, which can be used to prune subsequent large requests; secondly, g(j, q) and The higher the queue load of a QP, the longer the estimated transmission time of a new WR. During scheduling, the system will actively reduce the number of WRs submitted to that QP, thereby bypassing severely queuing paths and alleviating queue congestion on the end side and the switch side.
[0085] Step 103: Based on the end-network collaborative estimation, define Invalid Unfinished Work Requests (IOWRs) to identify requests where "delayed submission does not affect completion time". For any WRj, let FCT(j,t) be the completion time of the corresponding flow when the request is scheduled at time t. If there exists a t such that FCT(j,t) = FCT(j,t+1), then the request is called an IOWR in the interval [t,t+1]. In this case, even if the WR is submitted immediately, it will remain in the RNIC queue and switch buffer for a long time with almost no effective transmission progress. Its submission time is not sensitive to the final FCT, but it occupies valuable QP depth and buffer resources.
[0086] Step 2: Construct a profit maximization model based on spatiotemporal decision variables.
[0087] Step 201: Construct a system model to formally characterize the RDMA scheduling process based on end-to-end network collaboration. Specifically, denote all queue pairs on the host as set Q, where element q∈Q represents the q-th QP; denote all pending or potentially arriving work requests as set J, where element j∈J represents the j-th work request (WR). The time axis is discretized into a set of time slots with indices t∈[T], and scheduling decisions are made on these discrete time slots. For each QPq, let its depth (maximum number of concurrent pending requests) be C. q In the specific implementation, the current queue length β can also be maintained. q (t) and real-time bandwidth B q This is used for subsequent transmission time estimation and price calculation.
[0088] Each work request j has a defined data size s. j and arrival time r j When t <r j It cannot be scheduled at that time. Define Q based on the destination address and path binding relationship. j The set of QPs available to WRj, meaning j can only be scheduled to the set Q. j The queue is matched to ensure that the path matches the destination.
[0089] To simultaneously describe "when to schedule (time dimension)" and "which QP to schedule to (spatial dimension)," a spatiotemporal joint decision variable y is introduced. jq(t) As a core scheduling variable: when y jq(t) When y = 1, it means that WRj will be scheduled to QPq in time slot t and will occupy its resources in that slot; when .... jq(t) =0 indicates that it is not occupied. Therefore, y jq(t) It determines both the transmission time of WR and implicitly its path selection, hence it is called a spatiotemporal joint decision variable. In addition, an auxiliary variable a is introduced. jThis represents the scheduling start time of WRj, i.e., the time slot when j is first scheduled to any QP; introducing variables. This indicates the completion time of WRj, which is the time slot during which it last occupied resources on a QP, corresponding to the time when its CQE was polled.
[0090] In this system model, the transmission time of each WR j from the start of scheduling to completion is ( -a j Let f(·) be the independent variable of the utility function f(·), which is a monotonically non-increasing function used to characterize the property that the earlier the completion time, the higher the utility. Therefore, the total revenue of the system is defined as the sum of the utilities of all WRs, i.e. The scheduling objective is to maximize this total benefit, thereby optimizing the overall completion time performance of WR under the constraints of limited RNIC cache and network bandwidth.
[0091] Establish a mathematical model for mixed-integer nonlinear programming (MINLP):
[0092]
[0093] subject to:
[0094]
[0095]
[0096]
[0097] x jq y jq (t)∈{0,1} (2j)
[0098] The model aims to maximize overall benefits by jointly optimizing transmission time and spatial paths. Specifically, it captures network dynamics using the transmission time estimation formula g(j,q) defined in step 201, and constraint (2a) represents the variable x. jq With y jq The relationship between (t) is as follows. Constraint (2b) ensures that each scheduled WR has sufficient processing time. Constraint (2c) is a QP capacity constraint. Constraint (2d) states that any WRj can only be scheduled to a matching QP set Q consistent with its destination. j Above. Constraint (2e) states that within any given time slot, a WR can be scheduled to at most one QP. Constraint (2f) states that a WR can only be scheduled after arrival and released after transmission is complete. The scheduling time and completion time of a WR are determined by constraints (2g) and (2h), respectively. Constraint (2i) prevents a scheduled WR from being preempted before completion.
[0099] Step 3: For the profit maximization model in Step 2, batch processing technology is used to divide the originally continuously arriving online scheduling problem into a series of discrete offline batch scheduling problems.
[0100] Step 301: Divide the scheduling window. To address the uncertainty of online arrival requests, the timeline is divided into scheduling windows that grow geometrically. Define time points τ0 = 1, τ1 = 2, ..., τ i =2 i-1 The time interval of the i-th scheduling window is (i, i+α(τ)). i -i)), where λ is the algorithm parameter, calculated by equation (8). This partitioning mechanism transforms the original continuous online scheduling problem into a series of offline batch scheduling subproblems, with each window handling requests that were not processed in the previous stage and newly arrived requests.
[0101] Step 302: Define the Ideal Revenue Maximization Problem (IRMP): Given a deadline D, a set of job requests (WRs) available at time 0, and a utility function associated with the completion time of each request, construct a feasible scheduling scheme that maximizes the total utility of all job requests completed before the deadline D.
[0102]
[0103] subject to:
[0104]
[0105] Where τ i This indicates the deadline for the current scheduling window. The model aims to determine which requests within the current window should be processed immediately. j =1), which should be postponed (o j =0).
[0106] Step 303, Problem Reconstruction and Dual Relaxation. Problem (3) is reconstructed into an integer linear programming problem with a packed structure using the compact exponential technique. L is defined as... j Let a variable be introduced to represent the set of all feasible scheduling schemes for request j. Indicates whether request j adopts the scheme.
[0107]
[0108] subject to:
[0109]
[0110] in, Indicating in the scheduling scheme Whether job request j occupies queue q in time slot t.
[0111] Step 304: When relaxing the reconstructed model (4), the integer constraints are... Relaxed to Introducing dual variable δ q (t) and μ j Corresponding to constraints (4a) and (4b) respectively, the objective function of the dual problem is constructed as follows:
[0112]
[0113] subject to:
[0114]
[0115] Step 305, according to the complementary relaxation condition, when work request j is in the scheme The following was accepted The corresponding dual constraint takes the equality sign, and then the marginal benefit μ of work request j is defined. j for:
[0116]
[0117] Where f(·) is the utility function, and the latter term is the expression at a given price δ. q(t) The resource cost under the condition; if the maximum marginal value μ j If μ > 0, the request should be scheduled immediately; if μ < 0, the request should be scheduled immediately. j =0 indicates that the current network is congested or that the request is an invalid Incomplete Work Request (IOWR), and it should be postponed to a later window for processing.
[0118] Step 306: Design an exponential price function. To calculate the cost of network resources, the unit price of the resource needs to be determined. Based on the dual variable δ... q (t), design an index price function that reflects the degree of resource scarcity, and let β q (t) represents the number of Outstanding Work Requests (OWRs) for QPq at time t, and the price function is defined as follows:
[0119]
[0120] Where λ>1 is a constant parameter that regulates the rate of price growth. This function exhibits market-regulating characteristics: when QP resources are exhausted (i.e., β... q (t) When approaching the depth limit, the price should tend to infinity or a sufficiently large value to prevent new requests from being scheduled.
[0121] Step 307: To ensure that when resources are exhausted, the utility of any request minus the resource cost is negative (i.e., it is rejected), the calculation of parameter λ must satisfy the following condition: Therefore, the formula for calculating λ is:
[0122]
[0123] Thus, when network congestion occurs or queue lengths approach their limits, the exponential price function automatically suppresses the submission of low-marginal-return requests.
[0124] Step 308: Given the current price system δ q Under (t), for each work request j, find its optimal scheduling scheme. This process is equivalent to solving the following optimization problem that maximizes net profit:
[0125]
[0126] subject to:
[0127]
[0128] Wherein (9a) means that for any QPq, the occupancy allocated to work request j within the entire scheduling interval does not exceed the remaining capacity of that queue pair; and (9b) means that a work request can only be scheduled after arrival, is not preemptible from start to finish, occupies resources only during the occupancy period, and can only be scheduled to the set of queue pairs Q that match its destination. j middle;
[0129] Step 4: Based on the theory and algorithm in Step 3, design an online time-space scheduling algorithm (e.g., Figure 2 (As shown).
[0130] Step 401: Request sorting and initialization.
[0131] At the beginning of each scheduling window i, unfinished work requests from the previous window and newly arrived work requests in the current window are merged into a batch set J. i The data is sorted in ascending order using a Shortest Job First (SJF) strategy in a non-decreasing order, ensuring that smaller requests are scheduled first, thereby minimizing the overall and tail completion time under the same resource conditions. For each job request j in the batch, its optimal scheduling scheme is initialized. Empty, maximum marginal revenue μ j Set it to 0, and simultaneously change the queue length β of all QPs. q (t) and price δ q (t) Reset to the state of the current window's starting point; for those queues whose length has reached the depth limit C. q QP constitutes an unavailable set No new requests will be allocated to it during subsequent enumerations. Through the above initialization, multiple rounds of scheduling within the current window can iteratively select and update the request scheduling scheme in SJF order from a consistent starting point, providing a foundation for subsequent spatiotemporal enumeration and primal-dual decision-making.
[0132] Step 402: Enumeration and pruning of spatiotemporal schemes.
[0133] In a given scheduling round within the current window, the scheduling algorithm iterates through each work request j in sorted order, treating it as the current scheduling object requiring a decision. For request j, it enumerates the set Q of all available queue pairs. j QP in the middle, skip the one already in In the queue, only QPqs with remaining capacity are attempted. For each candidate QPq, the time of the current round is used as the candidate scheduling start time a for j. j The worst-case transmission time on QPq is calculated using the end-to-end collaborative transmission time estimation model g(j,q), and the estimated completion time is obtained. like The time range exceeds the upper bound of the current scheduling round (e.g., the right endpoint i+k(τ) of the k-th round within window i). i If -i), it is considered that the solution cannot be completed in this round, and the QP is skipped directly to avoid generating invalid solutions across rounds. By jointly enumerating in the two dimensions of "time-QP", the algorithm generates a series of candidate time-space scheduling solutions for each request, laying the foundation for subsequent calculation of marginal value and execution of pruning.
[0134] Step 403: Marginal Value Calculation and IOWR Identification.
[0135] For each feasible spatiotemporal scheme that meets the time requirement in step 402 The scheduling algorithm will y jq (t) in the interval The built-in value of 1 indicates the depth of QPq occupied during this continuous time period, and is based on the current price system δ. q (t) Calculate the resource cost, which can be approximated in a simplified implementation as: Then, the potential marginal value of the project is calculated based on the utility function f(·). The former reflects the benefit of the request at the time of completion, while the latter reflects its cost in terms of QP depth and network resource usage. If If scheduling the request immediately on the current window and QP is deemed "unprofitable," it indicates either that the network and endpoint are already highly congested, and continuing to submit will only increase the queue; or that the submission time of the request has almost no impact on its final completion time, classifying it as an invalid incomplete work request (IOWR). In this case, the QPq is marked as unprofitable for the current request j and all data volumes greater than s.j Subsequent requests are unavailable and added to the unavailable set. Implement pruning; based on the property that g(j, q) monotonically increases with the size of the request, once a small request is not feasible on a certain QP, a larger request will also be not feasible on that QP, thus greatly reducing the subsequent search space.
[0136] Step 404: Optimal solution decision and state update.
[0137] After all available QPs for a given request j have been enumerated, if there exists at least one spatiotemporal solution with marginal value... Then select the solution with the highest marginal value. Its corresponding sending time a j Completion Time QP selects q as the optimal scheduling scheme for the request in the current round and records its maximum marginal benefit μ. j After the traversal is complete, if μ j If the value is greater than 0, then scheduling the request within the current window is considered to bring positive benefits, and the plan should be implemented immediately. Consume QP resources within the corresponding time interval: Update relevant QP in queue length β q (t), and based on this, the price δ at each time point is recalculated using the exponential price function. q (t); for queues whose length has reached C q Add the QP to the unavailable set. To prevent subsequent requests from continuing to occupy this QP. If eventually μ j If the value is ≤0, it indicates that the request is low-return or IOWR on all feasible QPs. In this case, it is not scheduled in the current window, but remains in the unscheduled set and is postponed to the next round or the next scheduling window for re-evaluation. Through the above decision-making and state update process of "positive marginal scheduling and non-positive marginal postponement", the algorithm gradually fills each scheduling window in multiple iterations, effectively suppressing IOWR, prioritizing high-value requests, and achieving spatiotemporal joint optimization scheduling while ensuring polynomial time complexity.
[0138] Experimental setup:
[0139] The experiment constructed a 2:1 oversubscription Clos data center network topology in a simulation platform, connecting 128 servers using 8 leaf switches and 8 spine switches, with 16 servers deployed per rack. All link bandwidth was configured to 100Gbps, with a one-way link latency of 1μs. Switch buffers were configured to 9MB and dynamically allocated using a shared buffer mechanism. Load balancing employed ECMP. The basic congestion control algorithm used was DCQCN, with configuration parameters based on publicly available literature.
[0140] AliCloudStorage was selected as the dataset for traffic. In the simulation, the flow size of each new flow was obtained by randomly selecting a client-server pair and sampling from the traffic size distribution of the corresponding workload. The flow arrival process adopted a Poisson distribution to control the overall business load intensity.
[0141] Experimental comparison:
[0142] like Figures 3-6 As shown, under leaf-ridge topology and fixed load scenarios, the overall performance of the proposed Adelay algorithm in this invention was compared with various comparison algorithms in terms of two metrics: Flow Completion Time (FCT) and Outstanding Work Requests (OWR). Regarding FCT, Figure 3 The average FCT of different algorithms in mixed long and short flow scenarios is presented. Figure 4 The corresponding P99 FCT is given. It can be seen that among all tested algorithms, Adelay consistently has the lowest average FCT, with an average FCT reduction of approximately 55.10%. Under high load and severe congestion conditions, Adelay's P99 FCT is reduced by a maximum of approximately 53.74%, indicating that this method not only shortens the flow completion time on average but also significantly improves tail latency performance. Regarding OWR... Figure 5 This shows the average number of OWRs for different algorithms. Figure 6 The study demonstrates the number of P99 OWRs; results show that Adelay reduces average OWR by approximately 28.6% and P99 OWR by approximately 27.7%, effectively reducing invalid concurrent requests and alleviating pressure on RNIC buffers and switch queues. Overall, Adelay, through its end-network coordinated time-sharing scheduling mechanism, significantly suppresses IOWR while reducing average and tail FCTs, decreasing the number of invalid requests queued in RNIC and switch buffers under extreme conditions, thereby comprehensively improving the stability and service quality of RDMA networks under high load.
[0143] This invention may also have other various embodiments. Without departing from the spirit and essence of this invention, those skilled in the art can make various corresponding changes and modifications according to this invention, and these corresponding changes and modifications should all fall within the protection scope of the appended claims.
Claims
1. A spatiotemporal online scheduling method for RDMA based on end-to-end network collaboration, characterized in that, The method includes the following steps: Step 1: Establish a transmission time estimation model for end-to-end network collaboration, estimate the worst-case transmission time by combining terminal host load and real-time network bandwidth, and define invalid incomplete work requests (IOWR), which are requests whose delayed submission will not reduce their flow completion time (FCT). Step 2: Construct a revenue maximization model based on spatiotemporal decision variables. This model aims to maximize the total utility of all work requests, models the limited RNIC cache resources and network resources as constraints, and achieves dynamic resource allocation by jointly optimizing the sending time and spatial path of requests (QP selection). Step 3: For the model in Step 2, the online scheduling problem is transformed into a series of offline batch scheduling problems using batch processing technology. The complex mixed integer nonlinear programming problem is reconstructed into an integer linear programming problem with a packaged structure using compact exponential technology. An primal-dual algorithm based on the exponential price function is designed to solve the problem. Step 4: Based on Step 3, design an online scheduling algorithm. This algorithm divides requests into scheduling windows and performs multiple rounds of resource allocation within each window. By calculating the marginal value of each request under feasible scheduling, it identifies requests with non-positive marginal value as IOWRs and postpones them to subsequent batches. It allocates the optimal sending time and QP to requests with positive marginal value, thereby reducing the occupation of invalid resources while prioritizing the processing of critical requests.
2. The RDMA spatiotemporal online scheduling method based on end-to-end network collaboration according to claim 1, characterized in that: Step 1, establishing the end-to-end network collaborative transmission time estimation model, specifically includes the following steps: Step 101: Define the end host as containing Q queue pairs (QP) and J work requests (WR), and obtain the real-time bandwidth B for each QP. q and the current queued load size; Step 102: Combine end-to-end network collaborative estimation with end-host load and real-time network bandwidth. Given a working request j and a QP q, calculate the worst-case transmission time g(j, q) of the request on QP q. This estimation model reflects the impact of queuing delay on transmission time, and its calculation formula satisfies a direct proportional relationship with the data size and the current total load of QP. Where κ is a constant coefficient ranging from (0, 1), used to adjust the conservatism of the estimation; B q Indicates the real-time bandwidth of QP q; J q ∑s represents the set of currently existing Unfinished Work Requests (OWRs) in QP q; j′ s represents the total data size of the existing load in QP q. j This indicates the data size of job request j. Step 103: Define an invalid unfinished work request as follows: For a work request j, if its completion time FCT is the same as that of the stream scheduled at time t and at time t+1, i.e., FCT(j, t) = FCT(j, t+1), then the request is an IOWR.
3. The RDMA spatiotemporal online scheduling method based on end-to-end network collaboration according to claim 1, characterized in that: Step 2, which involves constructing a payoff maximization model based on spatiotemporal decision variables, specifically includes the following steps: Step 201: Construct a system model, including a set of queue pairs [Q] and a set of work requests [J], where t represents the time slot index, and C... q s represents the depth of queue pair QPq. j r represents the data size of job request j. j Q represents the arrival time of job request j. j Let y represent the set of QPs available for job request j, and the decision variable be y. jq (t) indicates whether job request j is scheduled to QP q at time t (value is 1 or 0), variable a j The variable represents the start time of the scheduling of job request j. Indicates the completion time of job request j. The total revenue of the system is defined as the sum of the utility functions of all job requests. The goal is to maximize this total revenue. A mixed-integer nonlinear programming (MINLP) mathematical model is established as follows: x jq y jq (t)∈{0,1} (2j) The model aims to maximize overall benefits by jointly optimizing transmission time and spatial paths. Specifically, it captures network dynamics using the transmission time estimation formula g(j,q) defined in step 201, and constraint (2a) represents the variable x. jq With y jq The relationship between (t) is given by constraint (2b), which ensures that each scheduled WR has sufficient processing time. Constraint (2c) is a QP capacity constraint, and constraint (2d) indicates that any WRj can only be scheduled to a matching QP set Q consistent with its destination. j Above, constraint (2e) indicates that in any time slot, a WR can be scheduled to at most one QP, constraint (2f) indicates that a WR can only be scheduled after arrival and released after transmission is completed, the scheduling time and completion time of the WR are determined by constraints (2g) and (2h) respectively, and constraint (2i) prevents a scheduled WR from being preempted before completion.
4. The RDMA spatiotemporal online scheduling method based on end-to-end network collaboration according to claim 1, characterized in that: Step 3, which transforms the original problem into an offline batch scheduling problem and further relaxes it into a dual problem, specifically includes the following steps: Step 301: Divide the scheduling window. To address the uncertainty of online arrival requests, the time axis is divided into geometrically increasing scheduling windows, defining time points τ0 = 1, τ1 = 2, ..., τ i =2 i-1 The time interval of the i-th scheduling window is (i, i+α(τ)). i -i)), where λ is the algorithm parameter, calculated by equation (8). This partitioning mechanism transforms the original continuous online scheduling problem into a series of offline batch scheduling sub-problems. Each window processes the unprocessed requests from the previous stage and the newly arrived requests. Step 302: Define the Ideal Revenue Maximization Problem (IRMP): Given a deadline D, a set of work requests available at time 0, and a utility function associated with the completion time of each request, construct a feasible scheduling scheme that maximizes the total utility of all work requests completed before the deadline D. Where τ i This indicates the deadline for the current scheduling window. The model aims to determine which requests within the current window should be processed immediately. j =1), which should be postponed (o j =0), Step 303: Problem Reconstruction and Dual Relaxation. Using the compact exponential technique, problem (3) is reconstructed into an integer linear programming problem with a packed structure. L is defined. j Let a variable be introduced to represent the set of all feasible scheduling schemes for request j. Indicates whether request j should adopt scheme l: in, This indicates whether work request j occupies queue pair q in time slot t in scheduling scheme l.
5. The RDMA spatiotemporal online scheduling method based on end-to-end network collaboration according to claim 4, characterized in that, Step 3 involves constructing an exponential price function based on the dual problem and providing a criterion for determining marginal returns, including: Step 304: When relaxing the reconstructed model (4), the integer constraints are... Relaxed to Introducing dual variable δ q (t) and μ j Corresponding to constraints (4a) and (4b) respectively, the objective function of the dual problem is constructed as follows: Step 305, according to the complementary relaxation condition, when work request j is accepted under scheme l. The corresponding dual constraint takes the equality sign, and thus the marginal benefit μ of work request j is defined. j for: Where f(·) within parentheses represents utility, and the latter term represents the utility at a given price δ. q(t) The resource cost under the condition; if the maximum marginal value μ j If μ > 0, the request should be scheduled immediately; if μ < 0, the request should be scheduled immediately. j If the value is 0, it indicates that the current network is congested or that the request is an invalid Incomplete Work Request (IOWR), and it should be deferred to a later window for processing. Step 306: Design an exponential price function. To calculate the cost of network resources, it is necessary to determine the unit price of the resource, based on the dual variable δ. q (t), design an index price function that reflects the degree of resource scarcity, and let β q (t) represents the number of Outstanding Work Requests (OWRs) for QPq at time t, and the price function is defined as follows: Where λ>1 is a constant parameter regulating the rate of price growth, this function has market-regulating characteristics: when QP resources are exhausted (i.e., β... q (t) When approaching the depth limit, the price should tend to infinity or a sufficiently large value to prevent new requests from being scheduled. Step 307: To ensure that when resources are exhausted, the utility of any request minus the resource cost is negative (i.e., it is rejected), the calculation of parameter λ must satisfy the following condition: Therefore, the formula for calculating λ is: Therefore, when network congestion occurs or queue depth approaches its limit, the exponential price function automatically suppresses the submission of low-marginal-return requests. Step 308: Given the current price system δ q Under (t), for each work request j, find its optimal scheduling scheme l. * This process is equivalent to solving the following optimization problem that maximizes net profit: Wherein (9a) means that for any QPq, the occupancy allocated to work request j within the entire scheduling interval does not exceed the remaining capacity of that queue pair; and (9b) means that a work request can only be scheduled after arrival, is not preemptible from start to finish, occupies resources only during the occupancy period, and can only be scheduled to the set of queue pairs Q that match its destination. j middle.
6. The RDMA spatiotemporal online scheduling method based on end-to-end network collaboration according to claim 1, characterized in that: The specific execution steps of the online time-space temperature algorithm in step 4 include: Step 401: Request sorting and initialization. Within each scheduling window, the shortest job first (SJF) strategy is used to sort the set of job requests J in the current batch. i Sort the data in non-decreasing order based on size, and initialize the marginal benefit μ for all requests. j =0; Step 402: Spacetime scheme enumeration and pruning. Traverse each sorted work request j and enumerate all available queue pairs q∈Q. j Based on the current network status, calculate the estimated completion time if request j is scheduled to QPq. if If the time frame exceeds the current scheduling round, skip that QP. Step 403, Marginal Value Calculation and IOWR Identification: For scheduling schemes that meet the time conditions, based on the current resource price δ... q (t) Calculate resource costs And calculate the potential marginal value of the plan. like The request is determined to be scheduled as IOWR on this QP, and the QP is marked as having a request j and all data volumes greater than s. j Subsequent requests were all unavailable, thus triggering a pruning operation. Step 404, Optimal solution decision and state update, if there exists Then update the optimal scheduling scheme for this request. And the maximum marginal return, after the traversal, if μ j If the value is greater than 0, then follow the optimal solution. Perform resource allocation and update the load depth β of QP in real time. q (t) and price δ q (t); if μ j If the value is 0, the request will be postponed to the next batch.
7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, it implements an RDMA spatiotemporal online scheduling method based on end-to-end network collaboration as described in any one of claims 1 to 6.
8. A computer-readable storage medium storing computer instructions thereon, characterized in that: When executed by the processor, the computer instructions implement the steps of the RDMA spatiotemporal online scheduling method based on end-to-end network collaboration as described in any one of claims 1-6.