Rdma-based multi-path data transmission method, device and medium
By acquiring continuous and discrete signals of the RDMA path to evaluate path quality and dynamically adjusting data allocation strategies, the problems of unbalanced path load and congestion sensitivity in RDMA transmission are solved, thereby improving the throughput performance and service stability of data center networks.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING UNIV OF POSTS & TELECOMM
- Filing Date
- 2026-03-10
- Publication Date
- 2026-06-09
AI Technical Summary
Traditional RDMA transmission suffers from problems such as uneven path load, high congestion sensitivity, and lack of adaptive capabilities in data centers and intelligent computing clusters. This is especially true in scenarios with lossless Ethernet enabled by PFC and frequent burst traffic, which leads to decreased network resource utilization and unstable service experience.
By acquiring path status signals from multiple paths, including continuous delay signals and discrete event signals, the system dynamically evaluates path quality, generates real-time quality scores, dynamically adjusts data allocation strategies based on path weights, and uses the path selection field in data packets to guide intermediate nodes in the network to forward data.
It improves the throughput and tail latency performance of RDMA data center networks under sudden congestion and PFC enabled scenarios, enhances the stability and robustness of multi-path scheduling, and achieves more efficient resource utilization and service flow stability.
Smart Images

Figure CN122179366A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer network technology, and in particular to a multipath data transmission method, apparatus and medium based on RDMA. Background Technology
[0002] In recent years, with the rapid development of applications such as artificial intelligence training, distributed storage, and high-performance computing in data centers and intelligent computing clusters, the scale of internal communication traffic within clusters has been continuously expanding, and communication latency and throughput performance have gradually become key bottlenecks in system performance. Remote Direct Memory Access (RDMA) technology, due to its advantages such as low latency, low CPU usage, and zero-copy, has been widely used in scenarios such as inter-GPU communication, distributed parameter synchronization, and high-performance storage access in intelligent computing clusters. Meanwhile, RDMA over Converged Ethernet (RoCE) technology enables RDMA to be deployed in Ethernet data center environments, further promoting the application of RDMA in large-scale clusters.
[0003] In real-world network topologies, such as Clos and Fat-tree data center topologies, multiple equivalent or nearly equivalent available paths typically exist between hosts. However, traditional RDMA transmission often employs single-path or static routing based on fixed hashes. This approach suffers from issues such as uneven path load, high congestion sensitivity, and a lack of adaptive capabilities. Specifically, different flows may be mapped to the same path, causing congestion on hotspot links while other paths remain idle or under low load, leading to a decrease in overall network resource utilization. RDMA is highly sensitive to packet loss and queue growth; congestion on hotspot paths can trigger an increase in Explicit Congestion Notification (ECN) markers, an increase in Negative Acknowledgment (NACK) retransmissions, and a significant increase in Flow Completion Time (FCT) tail latency. When path quality changes dynamically, single-path transmission struggles to quickly migrate traffic, resulting in significant performance fluctuations.
[0004] In existing technologies, while static path mapping-based schemes are simple to implement, they are prone to multiple large flows colliding with the same path, leading to uneven link utilization and local hotspots. Dynamic switching unit mechanisms based on flowlets are difficult to reuse directly in RDMA networks because RDMA is more sensitive to out-of-order delivery and latency jitter, and the end-side buffer space is limited, so switching behavior may cause out-of-order arrivals. End-system-led multipath protocols have decision-making lag when path states change rapidly. Although load balancing schemes for Priority Flow Control (PFC) environments can improve congestion under hot links, they lack the ability to comprehensively characterize multi-dimensional path states and have limited scheduling adaptability in sudden congestion scenarios. Summary of the Invention
[0005] In view of this, embodiments of the present invention provide a multipath data transmission method, apparatus and medium based on RDMA to eliminate or improve one or more defects existing in the prior art.
[0006] One aspect of the present invention provides a multipath data transmission method based on RDMA, comprising the following steps: Obtain the path status signal for each of the multiple paths, wherein the path status signal includes continuous time delay signals and discrete event signals; The basic quality score of each path is determined based on the continuous time delay signal, and the basic quality score is dynamically corrected based on the discrete event signal to generate the real-time quality score of each path. Path weights for each path are generated based on the real-time quality score; Based on the path weights, the data to be sent is allocated to the multiple paths, and by modifying the field used for path selection in the data packet, the intermediate nodes of the network forward the data packet to the corresponding physical path according to the field.
[0007] In some embodiments of the present invention, obtaining the path status signal of each path among multiple paths includes: Assign a unique path identifier to each path and establish a mapping relationship between the path identifier and the field used for path selection in the data packet; The system receives feedback messages from the network, associates the feedback messages with corresponding path identifiers according to the mapping relationship, and extracts the path status signal from the feedback messages; wherein the feedback messages include ACK messages, ECN indication messages, and NACK messages.
[0008] In some embodiments of the present invention, determining the basic quality score of each path based on the continuous time delay signal includes: Obtain the baseline delay value and the smoothed delay value for each path; the smoothed delay value is obtained by updating the RTT measurement value collected at the current time using an exponentially weighted moving average; the baseline delay value is the minimum RTT measurement value recorded within each fixed-length evaluation window; The basic quality score is calculated based on the ratio of the baseline delay value to the smoothed delay value.
[0009] In some embodiments of the present invention, the dynamic correction of the basic quality score based on discrete event signals includes: If the discrete event signal is an explicit congestion notification (ECN) signal, then the base quality score of the current path is multiplied by a first attenuation coefficient. If the discrete event signal is a negative acknowledgment (NACK) signal, then the base quality score of the current path is multiplied by the second attenuation coefficient; The second attenuation coefficient is smaller than the first attenuation coefficient.
[0010] In some embodiments of the present invention, generating the path weights of each path based on the real-time quality score includes: normalizing the real-time quality score of each path to generate the path weights of each path; wherein the sum of the weights of all paths is 1.
[0011] In some embodiments of the present invention, the step of allocating the data to be sent to the multiple paths based on the path weights includes: for each data packet to be sent, probabilistically selecting according to the path weights of each path, such that the probability of a path being selected is proportional to its path weight.
[0012] In some embodiments of the present invention, it further includes: Detect the existence of abnormal paths. Abnormal paths refer to paths where the real-time quality score is lower than a preset threshold in multiple consecutive update cycles, or paths that receive more than a preset number of discrete event signals per unit time. When an abnormal path is detected, its path weight is reduced to be lower than that of a normal path.
[0013] The multipath data transmission method and apparatus based on RDMA of the present invention evaluate path quality by comprehensively considering continuous delay signals and discrete event signals, and dynamically adjusts the data allocation strategy accordingly. This effectively solves the problems of unbalanced path load, high congestion sensitivity, and lack of adaptive capability in traditional RDMA transmission. This method can more accurately characterize the real-time availability of paths, improve the stability and robustness of multipath scheduling, and thus improve the throughput performance and tail latency of RDMA data center networks under sudden congestion and PFC-enabled scenarios.
[0014] Additional advantages, objects, and features of the invention will be set forth in part in the description which follows, and will also become apparent in part to those skilled in the art upon studying the description, or may be learned by practice of the invention. The objects and other advantages of the invention can be realized and obtained by means of the structures specifically pointed out in the description and drawings.
[0015] Those skilled in the art will understand that the objectives and advantages achievable with the present invention are not limited to those specifically described above, and that the above and other objectives achievable with the present invention will become clearer from the following detailed description. Attached Figure Description
[0016] The accompanying drawings, which are included to provide a further understanding of the invention and form part of this application, are not intended to limit the scope of the invention. The components in the drawings are not drawn to scale but are merely illustrative of the principles of the invention. For ease of illustration and description of certain parts of the invention, corresponding portions in the drawings may be enlarged, i.e., may appear larger relative to other components in an exemplary device actually manufactured according to the invention. In the drawings: Figure 1 This is a flowchart of a multipath data transmission method based on RDMA in one embodiment of the present invention.
[0017] Figure 2 This is a schematic diagram of a multipath data transmission device based on RDMA in one embodiment of the present invention.
[0018] Figure 3 This is a flowchart of path anomaly detection and recovery scheduling in one embodiment of the present invention.
[0019] Figure 4 This is a flowchart of path anomaly detection and recovery scheduling in a specific embodiment of the present invention.
[0020] Figure 5 This is a schematic diagram showing the comparison of flow completion time in a normal network scenario according to an embodiment of the present invention.
[0021] Figure 6 This is a schematic diagram showing the comparison of flow completion time in a faulty link scenario according to one embodiment of the present invention.
[0022] Figure 7 This is a schematic diagram showing the statistical results of completion time under different load intensities in one embodiment of the present invention.
[0023] Figure 8 This is a schematic diagram showing the comparison of completion time in a high-concurrency scenario according to one embodiment of the present invention. Detailed Implementation
[0024] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the embodiments and accompanying drawings. Here, the illustrative embodiments and descriptions of this invention are used to explain the invention, but are not intended to limit the invention.
[0025] It should also be noted that, in order to avoid obscuring the invention with unnecessary details, only the structures and / or processing steps closely related to the solution according to the invention are shown in the accompanying drawings, while other details that are not closely related to the invention are omitted.
[0026] It should be emphasized that the term "including / comprises" as used herein refers to the presence of a feature, element, step, or component, but does not exclude the presence or addition of one or more other features, elements, steps, or components.
[0027] It should also be noted that, unless otherwise specified, the term "connection" in this article can refer not only to a direct connection, but also to an indirect connection involving an intermediary.
[0028] In the following description, embodiments of the invention will be illustrated with reference to the accompanying drawings. In the drawings, the same reference numerals represent the same or similar parts, or the same or similar steps.
[0029] Traditional RDMA transmission methods in data centers and intelligent computing clusters often employ single-path or static routing based on fixed hashes, resulting in uneven path load, high congestion sensitivity, and a lack of adaptive capabilities. Especially in lossless Ethernet scenarios with PFC and frequent bursts of traffic, path congestion and availability exhibit sudden and non-linear changes. RDMA is highly sensitive to out-of-order delivery, packet loss, and latency jitter. Existing methods are insufficient in terms of path state characterization, scheduling stability, and robustness to abnormal scenarios, which can easily lead to decreased throughput and unstable service experience.
[0030] In response, this application proposes a multipath data transmission method based on RDMA, comprising the following steps: Obtain the path status signal for each of the multiple paths, wherein the path status signal includes continuous time delay signals and discrete event signals; The basic quality score of each path is determined based on the continuous time delay signal, and the basic quality score is dynamically corrected based on the discrete event signal to generate the real-time quality score of each path. Path weights for each path are generated based on the real-time quality score; Based on the path weights, the data to be sent is allocated to the multiple paths, and by modifying the field used for path selection in the data packet, the intermediate nodes of the network forward the data packet to the corresponding physical path according to the field.
[0031] The above scheme evaluates path quality by comprehensively considering both continuous delay signals and discrete event signals, and dynamically adjusts the data allocation strategy accordingly. This effectively solves the problems of unbalanced path load, high congestion sensitivity, and lack of adaptive capability in traditional RDMA transmission. This method can more accurately characterize the real-time availability of paths, improve the stability and robustness of multi-path scheduling, and thus improve the throughput and tail latency performance of RDMA data center networks under sudden congestion and PFC-enabled scenarios.
[0032] For ease of understanding, the following explains some key terms in this embodiment: Remote direct memory access technology allows network adapters to transfer data directly between memory locations without CPU intervention, thereby achieving low-latency, high-throughput data transfer.
[0033] Path status signals indicate the current performance and health status of a specific data transmission path in the network, and are used to assess the availability of that path.
[0034] Continuous delay signals reflect the continuous delay characteristics of data transmission along a path, such as the time required for a data packet to travel along the path.
[0035] Discrete event signals represent specific, discontinuous events that occur along a path, such as network congestion or packet loss.
[0036] The basic quality score is a preliminary performance evaluation value calculated based on the continuous time delay signal of the path, reflecting the inherent transmission capability of the path.
[0037] Real-time quality score is a final performance evaluation value that is dynamically adjusted based on the basic quality score and discrete event signals, reflecting the immediate availability of the path.
[0038] Path weights are values calculated based on the real-time quality scores of paths and are used to guide the distribution of data across multiple paths.
[0039] The field used for path selection is a specific identification information in the packet header used to indicate which physical path the packet should be forwarded through.
[0040] The technical solution of the present invention will be further described below with reference to the accompanying drawings.
[0041] Figure 1 This is a flowchart of a multipath data transmission method based on RDMA in one embodiment of the present invention.
[0042] like Figure 1 As shown, the multipath data transmission method based on RDMA includes the following steps S101-S104.
[0043] In step S101, the path status signal of each path in the multiple paths is obtained, and the path status signal includes continuous time delay signal and discrete event signal; In step S102, the basic quality score of each path is determined based on the continuous time delay signal, and the basic quality score is dynamically corrected based on the discrete event signal to generate the real-time quality score of each path. In step S103, the path weights of each path are generated based on the real-time quality score; In step S104, the data to be sent is allocated to the multiple paths based on the path weights, and the intermediate network nodes forward the data packets to the corresponding physical paths by modifying the field used for path selection in the data packets.
[0044] In this embodiment, continuous delay signals can be acquired by periodically sending probe data packets to each path and recording the sending and receiving times of the probe data packets to roughly estimate the delay information. Discrete event signals can be acquired by simply counting the number of lost data packets on the path or receiving any form of error indication. For example, a fixed time interval can be set, during which a simple connectivity test can be performed on each path, and the test results can be recorded.
[0045] In this embodiment, the continuous delay signal includes at least one of the following: round-trip delay, one-way delay, and delay jitter; the discrete event signal includes at least one of the following: explicit congestion notification (ECN) signal, negative acknowledgment (NACK) signal, and packet loss signal.
[0046] Round-trip time (RTT) refers to the time required for a data packet to travel from the sender to the receiver and receive an acknowledgment. This metric directly reflects the time required for data to travel one round trip in the network and is one of the most intuitive and commonly used indicators for evaluating network link performance. It is typically measured by embedding timestamps in the data packets and calculating the time difference upon receiving an acknowledgment. One-way latency refers to the time required for a data packet to travel from the sender to the receiver. Unlike RTT, one-way latency more accurately reflects the transmission performance of data in a single direction, which is particularly important in asymmetric network paths. Measuring one-way latency usually requires precise time synchronization between the sender and receiver. Latency jitter refers to the variation in the arrival time interval of data packets during transmission in the network. High latency jitter can lead to unstable data flow, affecting the performance of real-time applications. Latency jitter is typically measured by calculating the variance or standard deviation of the arrival time intervals of consecutive data packets.
[0047] Explicit Congestion Notification (ECN) is a network layer mechanism that allows network routers to notify the sender of impending congestion by setting an ECN flag in the IP packet header, without dropping the packet. Upon receiving a packet with the ECN flag, the receiver echoes the flag in its acknowledgment message, informing the sender of network congestion, allowing the sender to reduce its transmission rate. Negative Acknowledgment (NACK) is a transport layer mechanism. When the receiver detects lost or out-of-order packets, it proactively sends a NACK message to the sender, explicitly requesting retransmission of the lost data. NACK signals notify the sender of data loss faster than timeout-based retransmission mechanisms, reducing retransmission delays. Packet loss refers to packets failing to reach the receiver during network transmission. Packet loss is a direct manifestation of network congestion or poor link quality, typically detected by detecting sequence number jumps or the receiver's failure to receive expected packets within a certain timeframe.
[0048] By specifying that the continuous delay signals specifically include at least one of round-trip delay, one-way delay, and delay jitter, and that the discrete event signals specifically include at least one of explicit congestion notification (ECN) signals, negative acknowledgment (NACK) signals, and packet loss signals, this application can more accurately and comprehensively acquire and evaluate the real-time status of multiple paths. These specific signal types are industry-recognized and widely used network performance indicators, reflecting the latency, congestion, and reliability of paths from different dimensions. For example, round-trip delay and one-way delay directly quantify the speed of data transmission, while delay jitter reveals fluctuations in transmission stability; while ECN signals, NACK signals, and packet loss signals directly indicate the occurrence of network congestion or data loss events. Based on these specific and representative signals, a more accurate path quality model can be constructed, making the generation of subsequent basic quality scores and real-time quality scores more reliable, thereby optimizing the allocation of path weights and ultimately achieving more efficient and stable RDMA multipath data transmission, effectively avoiding evaluation bias and resource waste caused by ambiguous signal types.
[0049] In this embodiment, the basic quality score can be determined based on a simple average of continuous time-delay signals. For example, the arithmetic average of all time-delay values collected over a period of time can be used as the basic quality score for that path. When a discrete event signal is detected, the basic quality score can be reduced by a fixed amount. For example, for each discrete event detected, the basic quality score is reduced by a preset fixed value to obtain the real-time quality score.
[0050] In this embodiment, path weights can be generated based on a simple comparison of real-time quality scores. For example, the path with the highest real-time quality score can be assigned a higher fixed weight, while other paths can be assigned a lower fixed weight, or the real-time quality score can be used directly as the weight value without any additional processing.
[0051] In this embodiment, the allocation of data to be sent can employ a simple round-robin mechanism, that is, data packets are sent sequentially to different paths according to their path weights. For example, if the weight of path A is higher than that of path B, a data packet is first sent to path A, then to path B, and then back to path A. The field in the data packet used for path selection can be a custom identifier located in a reserved position in the packet header. Network intermediate nodes are configured to recognize this identifier and forward the data packet to a preset physical path based on its value.
[0052] This application evaluates path quality by comprehensively considering both continuous delay signals and discrete event signals, and dynamically adjusts the data allocation strategy accordingly. This effectively solves the problems of unbalanced path load, high congestion sensitivity, and lack of adaptive capability in traditional RDMA transmission. This method can more accurately characterize the real-time availability of paths, improve the stability and robustness of multi-path scheduling, and thus improve the throughput performance and tail latency of RDMA data center networks under sudden congestion and PFC-enabled scenarios.
[0053] In some embodiments of the present invention, step S101, which involves obtaining the path status signal of each path among multiple paths, includes: Assign a unique path identifier to each path and establish a mapping relationship between the path identifier and the field used for path selection in the data packet; The system receives feedback messages from the network, associates the feedback messages with corresponding path identifiers according to the mapping relationship, and extracts the path status signal from the feedback messages; wherein the feedback messages include ACK messages, ECN indication messages, and NACK messages.
[0054] In this embodiment, the path identifier is a logical label used to uniquely identify each of the multiple available physical paths. It can be a simple integer sequence, a hash value, or a more complex encoding. The field in the data packet used for path selection is key information in the packet header that guides intermediate network nodes in forwarding data, such as the packet's 5-tuple, IPv6 flow label, or MPLS label. By establishing this mapping relationship, the internally managed path identifier can be associated with the forwarding behavior of data packets in the actual network, laying the foundation for subsequent feedback message processing.
[0055] In this embodiment, the feedback messages are messages sent back by the network or the receiving end to indicate the data transmission status. When these feedback messages are received, the relevant fields in the messages are parsed, and based on the pre-established mapping relationship, it is determined which specific physical path the feedback message reflects. Once the path to which the feedback message belongs is determined, the required path status signals are extracted from the message, such as RTT measurements for calculating continuous delay signals, and congestion or packet loss information indicating discrete event signals. Specifically, the feedback messages include ACK messages, ECN indication messages, and NACK messages. ACK messages are mainly used to measure round-trip time, obtained by recording the difference between the packet transmission time and the corresponding ACK message reception time. ECN indication messages explicitly indicate that congestion has occurred on the network path without packet loss, which is an important discrete event signal. NACK messages directly indicate packet loss or out-of-order arrival, also a key discrete event signal.
[0056] Through the above scheme, this application ensures that feedback messages received from the network in a multi-path environment can be accurately associated with their corresponding physical paths. By assigning a unique path identifier to each path and establishing a mapping relationship between it and the field used for path selection in the data packet, when feedback messages such as ACK, ECN, and NACK messages are received, the path status reflected by these feedback messages can be accurately identified according to the preset mapping relationship, and continuous delay signals and discrete event signals can be extracted from them. This mechanism effectively solves the problems of unclear feedback information attribution and inaccurate extraction of path status signals in complex multi-path networks, thus providing a reliable data foundation for subsequent accurate calculation of real-time quality scores and path weights for each path, significantly improving the accuracy and robustness of multi-path data transmission.
[0057] In some embodiments of the present invention, the determination of the basic quality score of each path based on the continuous time delay signal in step S102 includes: Obtain the baseline delay value and the smoothed delay value for each path; the smoothed delay value is obtained by updating the RTT measurement value collected at the current time using an exponentially weighted moving average; the baseline delay value is the minimum RTT measurement value recorded within each fixed-length evaluation window; The basic quality score is calculated based on the ratio of the baseline delay value to the smoothed delay value.
[0058] Specifically, in order to more accurately evaluate the continuous delay signal of the path, this application introduces two delay metrics: a baseline delay value. and smoothing delay value By simultaneously acquiring these two values, a multi-dimensional analysis of the path's latency characteristics can be performed, leading to a more comprehensive understanding of the path's quality. These two latency metrics can be calculated by periodically measuring round-trip time or one-way latency at the data sending or receiving end and processing these measurements. For example, the sending end can send probe packets and record their transmission time; the receiving end can immediately return an acknowledgment packet upon receipt, and the sending end can calculate the round-trip time after receiving the acknowledgment. These measurements are then used to calculate the baseline latency value and the smoothed latency value.
[0059] The reference delay value This represents the optimal performance that the path can achieve within a specific time period. It is the minimum RTT measurement recorded within each fixed-length evaluation window. By taking the minimum RTT measurement within the fixed-length evaluation window, occasional network congestion or transient jitter can be effectively filtered out, thus obtaining a relatively stable latency benchmark that reflects the inherent physical characteristics of the path. The length of the evaluation window can be configured according to the actual network environment and the requirements for the stability of the latency benchmark; for example, it can be set to 10 seconds, 30 seconds, or longer. A time-window update strategy is adopted to enable the benchmark to be slowly adjusted as the network's long-term state changes, avoiding being locked in for a long time by occasional minimal measurements.
[0060] The smoothed delay value aims to eliminate the impact of instantaneous delay fluctuations and measurement noise on path quality assessment, providing a more stable metric that better represents the recent performance of the path. It is obtained by updating the RTT measurement value collected at the current time using an exponentially weighted moving average (EWMA). EWMA is a commonly used smoothing algorithm, and the specific formula is as follows: ; Where t represents time and i represents the path. This is a smoothing coefficient used to control the rate of response of the estimate to new samples and the degree of inheritance from historical values. A smaller value indicates a smoother response. It can improve scoring stability and suppress short-term jitter, with larger... It can improve responsiveness to track congestion changes more quickly.
[0061] By calculating the ratio of the baseline delay value to the smoothed delay value, the deviation of the current path performance from its optimal performance can be quantified.
[0062] First, calculate the relative ratio. : ; And further map it to a bounded score: ; When the path delay approaches the baseline value A score close to 1 indicates that the path is in a low queuing state; when the path queuing increases, it leads to... When it increases, As the congestion level decreases, the score also decreases, thus continuously depicting the degree of congestion.
[0063] The above scheme effectively filters out instantaneous latency jitter, more stably reflecting the recent average performance of the path. Meanwhile, the baseline latency value provides a performance reference point for the path under optimal conditions, eliminating the impact of occasional congestion and more accurately representing the inherent performance of the path. By calculating the ratio of the baseline latency value to the smoothed latency value, the deviation of the current path performance from its optimal performance can be quantified, thereby generating a basic quality score that reflects both path stability and its potential performance. This method avoids directly using raw latency data susceptible to instantaneous fluctuations, making the basic quality score more robust and accurate. This provides a more reliable basis for subsequent dynamic corrections and path weight generation, ultimately improving the overall efficiency and stability of multi-path data transmission.
[0064] In some embodiments of the present invention, the step S102 of dynamically correcting the basic quality score based on discrete event signals includes: If the discrete event signal is an explicit congestion notification (ECN) signal, then the base quality score of the current path is multiplied by a first attenuation coefficient. If the discrete event signal is a negative acknowledgment (NACK) signal, then the base quality score of the current path is multiplied by the second attenuation coefficient; The second attenuation coefficient is smaller than the first attenuation coefficient.
[0065] Specifically, when a discrete event signal is detected as an Explicit Congestion Notification (ECN) signal, this typically indicates congestion on the path, signifying a deterioration in path quality. To promptly reflect this severe path quality degradation, the current path's baseline quality score is multiplied by a preset first attenuation factor. The first attenuation coefficient is a positive number less than 1. Its value can be configured according to factors such as the sensitivity of the network environment, the severity of congestion, and the application's tolerance for latency. For example, it can be set to 0.8 or 0.6 to ensure that when a serious problem is detected, the score of the path can be significantly reduced, thereby reducing the probability of the path being selected.
[0066] On the other hand, when a discrete event signal is detected as a Negative Acknowledgment (NACK) signal, this usually indicates that the receiver failed to receive a specific data packet or that the received data packet contained an error, but its severity may be higher than the congestion indicated by the ECN. To appropriately penalize this relatively severe path problem, the base quality score of the current path is multiplied by a preset second attenuation factor. It is worth noting that the second attenuation coefficient is set to be less than the first attenuation coefficient. This means that the attenuation effect (i.e., the degree of reduction) of the NACK signal on the baseline quality score is greater than that of the ECN signal. For example, if the first attenuation coefficient is 0.8, the second attenuation coefficient can be set to 0.5. This differentiated attenuation strategy allows for a more refined assessment of the impact of different types of discrete events on path quality, avoiding a blanket approach to all negative events, and thus more accurately reflecting the real-time quality of the path.
[0067] Through the above scheme, this application can differentiate and process the impact of different types of discrete event signals on path quality. This differentiated dynamic correction mechanism enables real-time quality scoring to more accurately reflect the true state of the path, avoiding a blanket approach to events of varying severity, thereby improving the granularity and accuracy of path quality assessment. More accurate real-time quality scoring helps generate more reasonable path weights, thereby optimizing the allocation of data packets across multiple paths, improving the overall efficiency and reliability of RDMA-based multipath data transmission, and effectively avoiding performance degradation caused by inaccurate path assessment.
[0068] In some embodiments of the present invention, step S103, which generates the path weights of each path based on the real-time quality score, includes: normalizing the real-time quality score of each path to generate the path weights of each path; wherein the sum of the weights of all paths is 1.
[0069] Specifically, normalizing the real-time quality scores of each path is a data processing technique aimed at transforming data of different dimensions or ranges to a unified scale, making them comparable. In this implementation, real-time quality scores may have different numerical ranges due to their calculation methods or the path characteristics they reflect. Through normalization, these scores can be mapped to a standardized interval, thereby eliminating the impact of differences in dimensions. In practice, various normalization methods can be employed. For example, if all real-time quality scores are positive, summation normalization can be used, dividing the real-time quality score of each path by the sum of the real-time quality scores of all paths; alternatively, the Softmax function can be used to normalize the scores, converting them into a probability distribution to ensure that the normalized values are between 0 and 1, and that the sum of all values is 1. This processing ensures the fairness and effectiveness of subsequent weight allocation, allowing the quality scores of different paths to be compared and utilized on a unified benchmark.
[0070] After normalizing the real-time quality scores, the resulting standardized values serve as the path weights for each path. A path weight is a numerical value assigned to each path to represent its relative importance or carrying capacity in data transmission. These weights directly reflect the performance of each path at the current moment; the larger the value, the better the path quality and the more suitable it is to carry more data traffic.
[0071] When allocating data packets, path weights can be directly interpreted as the probability that a packet will be assigned to that path. For example, if a path has a weight of 0.3, it means that 30% of packets are likely to be assigned to that path. This design greatly simplifies the logic of data allocation, allowing data traffic to be precisely distributed proportionally according to the real-time quality status of each path, thereby achieving load balancing and optimized resource utilization.
[0072] In some embodiments of the present invention, the step S104 of allocating the data to be sent to the multiple paths based on the path weights includes: for each data packet to be sent, performing probabilistic selection according to the path weights of each path, such that the probability of a path being selected is proportional to its path weight.
[0073] Specifically, for each data packet to be sent, an independent probabilistic decision is made based on the pre-calculated path weights of each path. This means that if one path has a weight of W1 and another has a weight of W2, then during the transmission of a large number of data packets, the ratio of the number of data packets assigned to the first path to the number of data packets assigned to the second path will approach W1:W2. This probabilistic selection can be achieved by generating a random number and comparing it with a cumulative probability interval based on the path weights. For example, if there are three paths P1, P2, and P3 with weights of W1, W2, and W3 (W1+W2+W3=1), a random number R between 0 and 1 can be generated. If R falls within the interval [0, W1), P1 is selected; if R falls within the interval [W1, W1+W2), P2 is selected; and if R falls within the interval [W1+W2, 1), P3 is selected. In this way, even the allocation of a single data packet reflects the dynamic influence of path weights, ensuring the real-time nature and accuracy of traffic allocation.
[0074] Through the above scheme, this application ensures that each data packet to be sent can be dynamically and probabilistically allocated based on the real-time performance of each path (reflected by path weights). This packet-by-packet probabilistic selection mechanism allows traffic allocation to accurately reflect changes in path weights, thereby avoiding problems such as uneven load distribution or insufficient path resource utilization caused by coarse-grained allocation strategies. It not only fully utilizes the currently best-performing path to carry more traffic, but also ensures that less-performing but still usable paths receive a certain amount of probing traffic to continuously monitor their status and respond promptly to performance recovery. This significantly improves the dynamic adaptability, resource utilization efficiency, and overall transmission performance of multi-path data transmission.
[0075] In some embodiments of the present invention, the modification of the field used for path selection in the data packet in step S104 includes at least one of the following: a 5-tuple of the data packet, an IPv6 flow label, or an MPLS label, to encode the identifier of the selected path, so that when the intermediate nodes of the network perform equivalent multipath hashing, they forward the data packet to the corresponding physical path according to the modified field.
[0076] In one implementation, the 5-tuple of a data packet can be modified. The 5-tuple typically consists of the source IP address, destination IP address, source port, destination port, and protocol type, and is commonly used by network intermediate nodes for flow identification and equivalent multipath hash calculations. By strategically modifying one or more fields in the 5-tuple (e.g., adjusting the source or destination port) without affecting application layer communication, the hash value calculated by the network intermediate nodes can be changed, thereby guiding the data packet to a predetermined physical path.
[0077] In another implementation, IPv6 flow labels can be used. The IPv6 header includes a 20-bit flow label field, one of its design purposes being to allow the sender to mark packets belonging to a specific flow and request routers in the network to handle these packets specially. By encoding the unique identifier of the physical path selected in this method into the IPv6 flow label, intermediate nodes in the network can identify the specific physical path that the data packet should take based on this label, thereby achieving precise path control and ensuring that data packets are forwarded along the expected path.
[0078] In another implementation, MPLS labels can be used. In a Multiprotocol Label Switching (MPLS) network, packets are loaded with one or more MPLS labels when entering the MPLS domain. These labels define the forwarding path of the packet in the MPLS network, i.e., the Label Switched Path (LSP). By pre-configuring a corresponding MPLS label for each physical path and loading the MPLS label representing the selected path when sending packets, it can be ensured that packets are forwarded strictly according to the preset LSP, thereby achieving precise control over the physical path and bypassing or influencing the IP header-based hash-based forwarding decisions of intermediate network nodes.
[0079] Regardless of which field is used, the core principle is to map and embed the unique path identifier (e.g., a unique path ID) assigned to each path into the corresponding field of the data packet. This requires some agreement or configuration between the sender and intermediate network nodes, enabling the intermediate nodes to correctly parse this encoded information and use it as the basis for forwarding decisions.
[0080] By employing the aforementioned scheme, this application effectively addresses the problem that network intermediate nodes may deviate from the preset physical path due to their own equivalent multipath hashing mechanism. Specifically, by encoding the path identifier of the selected path in the five-tuple, IPv6 flow label, or MPLS label of the data packet, network intermediate nodes can identify and follow the specific physical path selected by the upper-layer application when making forwarding decisions. This ensures that path selection decisions based on real-time quality scores and path weights can be accurately executed by the network infrastructure, thereby improving the accuracy and controllability of multipath transmission. It avoids low path utilization or unstable transmission performance caused by inconsistent forwarding strategies of network intermediate nodes, thus fully leveraging the advantages of multipath transmission and improving the overall efficiency and reliability of data transmission.
[0081] In some of the embodiments described above in this application, the path weights are dynamically adjusted based on the real-time quality scores of each path to achieve load balancing of multi-path data. However, in real-world network environments, some paths may experience severe performance degradation, such as link congestion or equipment failure, resulting in their real-time quality scores remaining at extremely low levels or frequent discrete event signals occurring within a short period. In such cases, even if the weight of the path is dynamically reduced, it may still carry a certain amount of traffic. This could not only exacerbate congestion on the path, leading to a further reduction in data transmission efficiency, but could also affect data transmission quality and hinder the recovery of the abnormal path.
[0082] In this regard, this application further proposes a method, which also includes step S106: Detecting the existence of abnormal paths, where abnormal paths refer to paths whose real-time quality scores fall below a preset threshold for multiple consecutive update cycles, or paths that receive more than a preset number of discrete event signals per unit time; and, When an abnormal path is detected, its path weight is reduced to be lower than that of a normal path.
[0083] Specifically, this application employs several methods to detect the existence of abnormal paths. One approach is to continuously monitor the real-time quality score of each path. If the real-time quality score of a path is below a preset threshold (e.g., 0.2 or 0.1) for multiple consecutive update cycles (e.g., three or five consecutive update cycles), the path is identified as an abnormal path. This preset threshold can be configured based on the actual network environment and the performance requirements of the path to distinguish between normal fluctuations and severe performance degradation. Another approach is to count the number of discrete event signals (e.g., explicit congestion notification (ECN) signals, negative acknowledgment (NACK) signals, and packet loss signals) received by each path within a unit of time. If, within a preset unit of time (e.g., 1 second or 5 seconds), the number of discrete event signals received by a path exceeds a preset number (e.g., 10 or 20 times), the path is also identified as an abnormal path. These two detection mechanisms can be used independently or in combination to more comprehensively and accurately identify paths with serious problems in the network.
[0084] When an abnormal path is detected, this application takes measures to reduce its path weight to be lower than that of a normal path. Specifically, once a path is identified as abnormal, its path weight will be significantly reduced. This reduction is not a simple proportional adjustment, but rather its weight is set to a fixed value or a dynamically calculated minimum value that is far lower than that of a normally functioning path. For example, the weight of the abnormal path can be directly set to a very small fixed value (such as 0.01), or it can be dynamically adjusted based on the number and total weight of normal paths in the current network to ensure that its weight is far lower than that of any normal path. This aims to minimize or stop the allocation of new data to be sent to the abnormal path, thereby avoiding further exacerbation of its congestion or deterioration of its performance, and creating conditions for the path's recovery.
[0085] Through the above scheme, this application can proactively identify and isolate abnormal paths in the network. By continuously monitoring the real-time quality scores of abnormal paths and combining this with the frequency of discrete event signals, paths with severely degraded performance or in an unstable state can be identified in a timely manner. Once an abnormal path is detected, its path weight is immediately and significantly reduced, effectively preventing new data traffic from continuing to flow into these problematic paths, thereby avoiding further deterioration of data transmission quality and reducing data loss and latency. Furthermore, this proactive weight reduction mechanism also provides abnormal paths with a "breathing room," allowing them to recover from congestion or failure states without being overwhelmed by continuous traffic. This not only protects the overall stability of data transmission but also improves the robustness and adaptability of the multipath transmission method, ensuring the efficiency and reliability of RDMA multipath data transmission.
[0086] In some embodiments of the present invention, reducing the path weight of abnormal paths in step S106 includes: The path weight of the abnormal path is set to a preset minimum detection weight, so that the abnormal path only carries exploratory traffic; wherein, the minimum detection weight is a fixed value or dynamically determined according to the number of paths.
[0087] Specifically, when a path is identified as an abnormal path, to prevent it from continuing to carry a large amount of data and affecting overall transmission performance, while not completely abandoning the opportunity for monitoring and recovery, this application proposes adjusting its path weight to a preset, extremely small value, namely, the minimum probe weight. This operation aims to temporarily remove the abnormal path from the main traffic carrying queue, but still retain a very low probability of it participating in path selection for continuous probing monitoring. By setting the weight of the abnormal path to the minimum probe weight, the probability of the abnormal path being selected in subsequent packet allocation will become very low. This means that only a very small number of packets, usually those used for path status probing or low-priority packets, will be allocated to the abnormal path. This mechanism ensures that the abnormal path will not significantly affect critical data transmission, while continuously collecting performance data of the path through these probing traffic to assess its recovery status.
[0088] The minimum probe weight can be set in several ways. A simple and direct approach is to set it to a fixed, pre-configured minimum value, such as 0.001 or 0.0001. A more flexible approach is to dynamically determine the minimum probe weight based on the number of currently available paths. For example, when the number of paths is large, the minimum probe weight can be appropriately lowered to ensure that the proportion of probe traffic on abnormal paths is not too high; conversely, when the number of paths is small, the weight can be appropriately increased to ensure that abnormal paths still receive sufficient probe opportunities. This dynamic adjustment mechanism can better adapt to network environments of different sizes and topologies, optimizing probe efficiency.
[0089] By employing the above-described scheme, this application effectively addresses the problem caused by the unclear strategy for reducing the weight of abnormal paths. By precisely setting the weight of abnormal paths to the minimum probe weight, the path carries only probe traffic, preventing abnormal paths from continuing to carry large amounts of data during the recovery period and negatively impacting overall transmission quality. Simultaneously, this strategy ensures that abnormal paths are not completely abandoned but are continuously monitored, enabling timely detection of signs of path recovery. When path quality recovers, its weight can be quickly recalculated and normal scheduling restored, significantly improving the robustness and adaptability of the multipath transmission method, optimizing network resource utilization efficiency, and shortening the recovery cycle of abnormal paths.
[0090] Corresponding to the above method, the present invention also provides a multipath data transmission device based on RDMA, the device including a computer device, the computer device including a processor and a memory, the memory storing computer instructions, the processor being used to execute the computer instructions stored in the memory, and when the computer instructions are executed by the processor, the device implements the steps of the method as described above.
[0091] Figure 2 This is a schematic diagram of a multipath data transmission device based on RDMA in one embodiment of the present invention.
[0092] like Figure 2 As shown, the RDMA-based multipath data transmission device includes: a signal acquisition module, a path evaluation module, a data scheduling module, and an anomaly detection and recovery module. The signal acquisition module, path evaluation module, and anomaly detection and recovery module constitute a control path, used to acquire and process path status signals, complete path quality evaluation, weight generation, and anomaly detection and recovery control. The data scheduling module constitutes a data path, used to read path weights and execute routing decisions during data packet transmission, guide data packets to the corresponding physical path through controllable 5-tuple transformations, and drive the control path update after network feedback arrives, thereby achieving adaptive utilization of multiple available paths and improving transmission performance and stability.
[0093] The system comprises several modules: a signal acquisition module to collect path status signals related to the path state, and an associated output of the collected data with the corresponding path identifier, providing input for path quality assessment; a path assessment module to quantitatively evaluate the quality of each candidate path, generate a real-time quality score, and further calculate the path weight; a data scheduling module to select the target path based on the path weight and guide data packets to the corresponding physical path through a controllable five-tuple mapping; and an anomaly detection and recovery module to identify paths with worsening congestion or delivery anomalies and perform traffic migration and recovery control to enhance system robustness and recoverability.
[0094] In this system, the path status signals acquired by the signal acquisition module include Round-Trip Time (RTT) signals, Explicit Congestion Notification (ECN) signals, and Negative Acknowledgment Feedback (NACK) signals. For continuous signals such as RTT, the module acquires information using an ACK arrival trigger method and records the timestamp. For discrete event signals such as ECN and NACK, the module records the event occurrence time and event type in real time using an event trigger method, and categorizes and summarizes the event information according to the path to support subsequent processing by the path evaluation module.
[0095] To ensure that path status signals from different paths are not confused, the signal acquisition module stores a path mapping table, maintains an independent observation entry for each path, and uses the path identifier `path_id` as an index to store the RTT measurement, ECN tag, and NACK feedback for that path. Typically, during the data transmission phase, the transmitting end encodes the `path_id` into a field combination used for equivalent multipath hashing through a 5-tuple transformation, thus ensuring that data packets with different `path_id`s are stably guided to different physical forwarding paths. Correspondingly, the signal acquisition module performs reverse correlation on feedback messages from the peer based on this encoding relationship, generating signal records tagged with `path_id`. This allows the RTT measurement, ECN tag, and NACK feedback to be mapped to the corresponding `path_id`, thereby ensuring the independence and consistency of the observation sequence for each path.
[0096] To facilitate unified reading and processing by the path evaluation module, the signal acquisition module outputs a unified signal recording mode. This recording format includes a basic identifier field and a signal payload field. The basic identifier field identifies which connection and path the observation belongs to, while the signal payload field describes the specific measurement value or event information. The recording mode can be abstractly represented as follows: (1) Time delay observation entries:<ts, flow_id, path_id, rtt_sample, rtt_src> , where ts is the timestamp, flow_id is used to identify the connection or session, path_id is used to identify the path, rtt_sample is the RTT measurement value, and rtt_src is used to identify the RTT source (e.g., ACK estimation or active probing). (2) Event observation entries:<ts, flow_id, path_id, event_type, event_meta> The event_type is used to distinguish between ECN and NACK, and the event_meta can carry event details (such as ECN flag count, NACK sequence number range, or retransmission trigger information).
[0097] Through the above recording mode, the path evaluation module can obtain multi-source observation inputs through a unified interface to support path quality evaluation.
[0098] The path evaluation module assesses the real-time quality of multiple candidate paths and maps the signal records output by the signal acquisition module into a real-time quality score (Scorei) and path weight (Wi) that can be used for scheduling decisions. The specific calculation process can be found in the above embodiment and will not be repeated here. This module uses path_id as the basic evaluation granularity, maintains an independent path status record for each path, and uses the real-time quality score to uniformly quantify path congestion trends and reliability delivery anomalies, thereby providing the data scheduling module with a comparable, normalizable, and real-time updatable weight vector.
[0099] The data scheduling module transforms the path weight vector output by the path evaluation module into actual data packet routing results, thereby achieving adaptive traffic distribution among multiple equivalent paths. During transmission, this module performs probabilistic path selection based on the path weights Wi, ensuring that the probability of a path being selected is proportional to its weight. This statistically achieves load balancing based on weight ratios and allows traffic distribution to be dynamically adjusted as path quality changes.
[0100] To ensure the selected path is implemented as the actual forwarding path, the data scheduling module employs a controllable hash redirection mechanism based on 5-tuple rewriting. This maps the selected path identifier `path_id` to a corresponding variant of the 5-tuple field combination, ensuring that data packets are stably directed to the target physical path after ECMP / WCMP hashing at the switch side. In this way, the sending end can achieve controllable multi-path traffic splitting without relying on additional network-side functions. Furthermore, because a deterministic mapping exists between `path_id` and the 5-tuple variant, subsequent ACK, ECN, and NACK feedback messages can be associated with the corresponding paths, providing fundamental support for closed-loop control of multi-path scheduling.
[0101] In RDMA multipath transmission scenarios, paths may experience performance degradation and delivery anomalies due to sudden congestion, link jitter, PFC pause propagation, or transient failures. Without an effective anomaly handling mechanism, abnormal paths may continue to carry service traffic, leading to increased NACKs, amplified retransmission overhead, and exacerbated queue congestion, resulting in a significant decrease in effective throughput, worsened tail latency, and even negating the benefits of multipath scheduling. Therefore, this application introduces an anomaly detection and recovery module at the transmitting end. Through timely identification of abnormal paths, rapid load reduction, and recoverable detection, it reduces the impact of anomalies on overall transmission efficiency and stability.
[0102] Combination Figure 3 As shown, fault path detection uses the score output by the path evaluation module as a continuous criterion. When the score of a certain path is lower than a preset threshold for K consecutive update cycles, the fault path detection is triggered. If a path is identified as an abnormal path, or if multiple NACK messages or other abnormal events occur within a short time window, the module will determine that path as an abnormal path and trigger rapid load reduction. This will minimize the traffic share of the path in subsequent scheduling, thereby migrating the main traffic to other higher-quality paths to prevent the abnormality from spreading and affecting overall performance. If the faulty path detection conditions are not met, the path evaluation module will update the weight normally and use it for subsequent scheduling.
[0103] To prevent abnormal paths from becoming unrecoverable due to prolonged lack of observation after being downloaded, this module further introduces a minimum probing mechanism. Even after a path is identified as abnormal and suppressed, the system retains minimum probing of that path, employing the minimum weight allocation. This allows the path to periodically carry a small amount of probe traffic during the cooling period to continuously obtain feedback information such as RTT, ECN, and NACK. When the abnormal path obtains this feedback information with minimal probe traffic, it triggers an update to the path's state record, recalculates the weight vector for subsequent packet scheduling, avoids permanent path failure, and improves the long-term stability and resource utilization of multipath transmission.
[0104] The following practical example illustrates how to perform path quality scoring and how to handle and recover from anomalies.
[0105] Normal operation: such as Figure 4As shown, there are three available equivalent forwarding paths between the sender and receiver, denoted as Path1, Path2, and Path3. The sender assigns stable path_ids to different paths using a 5-tuple mapping mechanism, ensuring that data packets with different path_ids are transmitted on their corresponding physical paths after ECMP / WCMP forwarding. The sender deploys a signal acquisition module, a path evaluation module, a data scheduling module, and an anomaly detection and recovery module, forming a complete closed-loop control system. In the initial transmission phase, each path is in a relatively stable network state, with no significant congestion or delivery anomalies. The signal acquisition module continuously extracts RTT signals from ACK packets. The path evaluation module calculates similar smooth delay values based on the RTT observations of each path and calculates a basic path score (basic quality score) based on the baseline delay value, while updating the score according to the collected ECN and NACK signals. Finally, the weights of the three paths are calculated and normalized. The data scheduling module distributes data packets among the three paths according to their weight ratios, achieving approximately balanced multi-path load distribution.
[0106] Anomaly Detection and Handling: Assume that the link containing Path2 becomes congested due to equipment failure. The receiver feedback will begin carrying ECN tags, accompanied by multiple NACK events. When the anomaly detection and recovery module detects K ECN tags or NACK events, it considers the Path2 link to be abnormal and performs fast load reduction control on that path, lowering the scheduling weight of Path2 to the minimum probe weight. This allows it to carry only a very small number of probe packets, while most service traffic is allocated to Path1 and Path3.
[0107] Path Recovery: After Path2 is deloaded, a small number of probe packets are continuously sent to the path with the minimum probe weight (Wprobe) to maintain its observability. If no feedback is received from Path2 during the probe, the anomaly detection and recovery module keeps the path in the probe state, waiting for subsequent feedback. When the Path2 link returns to normal, the probe packets regain RTT signals or related event feedback. The signal acquisition module feeds this feedback information back to the path evaluation module, triggering the path evaluation module to update the RTT estimation and scoring status of the path. Subsequently, the data scheduling module recalculates and normalizes the weight vector based on the latest scoring results, enabling Path2 to gradually resume participation in data transmission in subsequent scheduling cycles.
[0108] The RDMA-based multipath data transmission method and apparatus of the present invention achieve at least the following technical effects: (1) This invention enables the transmission traffic to be adaptively allocated among multiple equivalent paths based on the real-time status of different paths through path quality scoring and probabilistic weight scheduling mechanism, thereby reducing large-flow collisions and local hotspots under static mapping, and thus improving the utilization rate of multi-path resources and overall effective throughput. The path quality scoring uses RTT as a continuous evaluation signal and is supplemented by ECN / NACK events for rapid correction, so that the path weight can reflect congestion changes in a timely manner and guide traffic to tilt towards high-quality paths.
[0109] (2) This invention uses RTT as a continuous quality signal to characterize queuing trends and uses event signals such as ECN / NACK to quickly suppress abnormal paths, so that the traffic ratio of congestion and abnormal paths converges in a timely manner, reducing queue accumulation and retransmission amplification effects, thereby significantly improving the average completion time and 99% tail completion time performance.
[0110] (3) To address the risk of pause propagation in the event of sudden congestion, link jitter, or lossless Ethernet environments, this invention introduces an anomaly detection and recovery mechanism. When the path quality score continues to deteriorate or anomaly events occur frequently, rapid load reduction and traffic migration can be triggered, thereby achieving rapid loss mitigation in abnormal scenarios and reducing tail latency degradation. At the same time, a minimum detection mechanism is used to reserve limited detection opportunities for suppressed paths, enabling paths to gradually re-participate in scheduling after recovery, avoiding permanent path blocking and improving the long-term recoverability and robustness of the system.
[0111] (4) This invention implements path evaluation and scheduling control at the sending end, and drives ECMP / WCMP hash result redirection through five-tuple rewriting, enabling data packets to be stably guided to the target path without requiring the switch to maintain additional path states or add new protocol capabilities. Therefore, it has a low deployment threshold and is compatible with existing RDMA / RoCE data center networks. In addition, the mechanism is based on end-to-end feedback signals, which can achieve adaptive multipath scheduling without relying on complex network-side coordination.
[0112] Example of effect: (1) Experimental platform and network configuration The experiment uses the ns-3 simulation platform to build a two-layer leaf-spine data center network topology with a scale of 8×16 (8 spine switches and 16 leaf switches), connecting a total of 128 hosts. The network link speed is set to 400 Gbps. ECN marking mechanism is enabled on the switch side to provide explicit congestion feedback, and priority-based flow control (PFC) is enabled to construct a lossless Ethernet environment, thereby simulating the low packet loss and high throughput data center network conditions common in RoCE / RDMA services. The proposed solution implements path quality assessment, weight generation, and five-tuple rewriting routing control at the sending end, enabling data packets to be stably mapped to different physical paths via ECMP / WCMP hashing on the switch side, achieving end-side controllable multi-path routing.
[0113] (2) Experimental scenario and load settings The experimental setup includes two types of scenarios: Normal and Fail. 1) Normal Scenario: The network link is fault-free. Concurrent communication tasks are run under different load intensities to evaluate the average and tail performance of each scheme under stable conditions. Typical load levels are selected, such as 40%, 60%, 80%, and 100%.
[0114] 2) Fault scenario: During system operation, a link is artificially disconnected to construct path anomalies and changes in available paths, in order to evaluate the solution's ability to suppress abnormal paths, traffic migration capabilities, and tail latency robustness under link failure conditions.
[0115] In addition, to evaluate the scheduling effect under high-concurrency communication mode, the experiment also included an all-to-all communication scenario, in which multiple hosts simultaneously initiate paired communication requests, thereby forming significant multi-path competition and congestion pressure, which is used to test the stability and completion time performance of the multi-path scheduling mechanism in a strongly mixed traffic environment.
[0116] (3) Comparison of schemes and evaluation indicators The experimental comparison schemes include existing multi-path transmission schemes (MPRDMA, PSN, etc.) and the scheme of this invention (MSPS, Multi-Signal Path Scoring), and are tested under the same network conditions. The MPRDMA scheme introduces a multi-path ACK clock and congestion-aware allocation mechanism at the sending end to achieve multi-path traffic scheduling without maintaining the complete congestion state of each path, and reduces out-of-order risk by selecting a set of available paths with similar latency. PSN is a packet spraying scheme based on PSN, which distributes data packets across multiple paths at the packet granularity, thus achieving a statistically high load balancing degree, but may introduce more significant out-of-order and performance fluctuations when path latency differences or anomalies occur. The scheme of this invention employs a multi-signal path quality scoring and probabilistic scheduling mechanism based on RTT, ECN, and NACK, achieving continuous tracking of path quality and rapid anomaly suppression at the sending end, and improving robustness and recoverability through adaptive migration and minimum probe mechanisms in fault or congestion deterioration scenarios.
[0117] The evaluation metric uses flow completion time (FCT) and statistically outputs the following typical metrics: average flow completion time (AvgFCT), 99th percentile flow completion time (99% FCT), and maximum flow completion time (Max FCT), which are used to characterize overall performance, tail performance, and worst-case stability.
[0118] (4) Experimental results and analysis 1) Comparison of Stream Completion Time under Normal Network Scenarios like Figure 5 As shown, under completely normal, fault-free link conditions, the FCT comparison results of different schemes for multiple flows (Flow IDs) are presented. It can be observed that the completion time performance of the scheme of the present invention in this scenario is close to that of packet spraying schemes based on PSN, indicating that when there are no obvious network anomalies and the path status is relatively stable, the present invention can make full use of multi-path resources through path scoring and probabilistic scheduling, and achieve a completion time comparable to that of packet spraying strategies with fine-grained load balancing.
[0119] (2) Comparison of flow completion time in scenarios with faulty links Figure 6This paper presents a comparison of flow-by-flow FCT under network faulty link (link break) conditions. In this scenario, PSN-based packet spraying schemes are more susceptible to abnormal paths, leading to a significant increase in flow completion time. This is because packet spraying mechanisms tend to distribute data packets across multiple paths with finer granularity. When some paths experience link breaks or severe degradation, they may still continue to carry a certain proportion of data packets, triggering more frequent retransmissions, out-of-order arrivals, and queue fluctuations, ultimately resulting in a significant increase in flow completion time. The proposed solution, however, can significantly reduce the FCT of each flow and maintain a more stable completion time level. This phenomenon indicates that when link failures lead to path quality differentiation or abnormal events, this invention can quickly suppress abnormal paths based on signals such as ECN / NACK and adaptively migrate traffic to higher-quality available paths, thus demonstrating stronger robustness and significant performance advantages under fault conditions.
[0120] (3) Statistical results of completion time under different load intensities Figure 7 The results show the comparison of Avg FCT, 99% FCT, and Max FCT of the three schemes under different network loads (40%, 60%, 80%, 100%) in normal and fault scenarios.
[0121] Overall, as the load increases, the FCT of all schemes shows an upward trend, with the 99% FCT and Max FCT being more sensitive to congestion and anomalies. The scheme of this invention can maintain a similar completion time level to the comparative scheme under normal scenarios; under fault scenarios, the scheme of this invention has a more significant effect on suppressing tail completion time, especially under high load conditions, effectively reducing the increase in 99% FCT and Max FCT. This further verifies that the closed-loop mechanism of this invention, "continuous RTT evaluation + rapid correction of ECN / NACK events + weighted scheduling," can more effectively avoid hotspot accumulation and anomaly propagation when high load and anomalies coexist, thereby improving tail performance and worst-case stability.
[0122] (4) Comparison of completion time in all-to-all high-concurrency scenarios Figure 8The paper presents a comparison of AvgFCT, 99% FCT, and Max FCT for three schemes under all-to-all high-concurrency communication conditions in both normal and fault scenarios. All-to-all scenarios generate a large number of concurrent communication pairs, leading to more intense path contention and a greater likelihood of triggering congestion fluctuations and amplifying local anomalies. The results show that the scheme presented in this invention maintains a lower tail FCT and maximum FCT in this scenario, indicating that its multi-signal fusion path quality assessment and probabilistic scheduling mechanism can adjust traffic allocation more promptly in highly competitive environments and maintain better performance stability and recovery capabilities when abnormal links occur.
[0123] Corresponding to the above method, the present invention also provides an apparatus for a multipath data transmission method based on RDMA. The apparatus includes a computer device, which includes a processor and a memory. The memory stores computer instructions, and the processor is used to execute the computer instructions stored in the memory. When the computer instructions are executed by the processor, the apparatus implements the steps of the method described above.
[0124] This invention also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of the aforementioned method. The computer-readable storage medium may be a tangible storage medium, such as random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, register, floppy disk, hard disk, removable storage disk, CD-ROM, or any other form of storage medium known in the art.
[0125] Those skilled in the art will understand that the exemplary components, systems, and methods described in conjunction with the embodiments disclosed herein can be implemented in hardware, software, or a combination of both. Whether implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this invention. When implemented in hardware, it can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this invention are programs or code segments used to perform the desired tasks. The programs or code segments can be stored in a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried in a carrier wave.
[0126] It should be clarified that the present invention is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of the present invention is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of the present invention.
[0127] In this invention, features described and / or illustrated for one embodiment may be used in the same or similar manner in one or more other embodiments, and / or combined with or in place of features of other embodiments.
[0128] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, various modifications and variations of the embodiments of the present invention are possible. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A multipath data transmission method based on RDMA, characterized in that, Includes the following steps: Obtain the path status signal for each of the multiple paths, wherein the path status signal includes continuous time delay signals and discrete event signals; The basic quality score of each path is determined based on the continuous time delay signal, and the basic quality score is dynamically corrected based on the discrete event signal to generate the real-time quality score of each path. Path weights for each path are generated based on the real-time quality score; Based on the path weights, the data to be sent is allocated to the multiple paths, and by modifying the field used for path selection in the data packet, the intermediate nodes of the network forward the data packet to the corresponding physical path according to the field.
2. The method according to claim 1, characterized in that, The step of obtaining the path status signal for each of the multiple paths includes: Assign a unique path identifier to each path and establish a mapping relationship between the path identifier and the field used for path selection in the data packet; The system receives feedback messages from the network, associates the feedback messages with corresponding path identifiers according to the mapping relationship, and extracts the path status signal from the feedback messages; wherein the feedback messages include ACK messages, ECN indication messages, and NACK messages.
3. The method according to claim 1, characterized in that, The determination of the basic quality score for each path based on the continuous time delay signal includes: Obtain the baseline delay value and the smoothed delay value for each path; the smoothed delay value is obtained by updating the RTT measurement value collected at the current time using an exponentially weighted moving average; the baseline delay value is the minimum RTT measurement value recorded within each fixed-length evaluation window; The basic quality score is calculated based on the ratio of the baseline delay value to the smoothed delay value.
4. The method according to claim 1, characterized in that, The dynamic correction of the basic quality score based on discrete event signals includes: If the discrete event signal is an explicit congestion notification (ECN) signal, then the base quality score of the current path is multiplied by a first attenuation coefficient. If the discrete event signal is a negative acknowledgment (NACK) signal, then the base quality score of the current path is multiplied by the second attenuation coefficient; The second attenuation coefficient is smaller than the first attenuation coefficient.
5. The method according to claim 1, characterized in that, The step of generating path weights for each path based on the real-time quality score includes: normalizing the real-time quality score of each path to generate path weights for each path; wherein the sum of the weights of all paths is 1.
6. The method according to claim 1, characterized in that, The step of allocating the data to be sent to the multiple paths based on the path weights includes: for each data packet to be sent, probabilistically selecting a path according to its path weight, such that the probability of a path being selected is proportional to its path weight.
7. The method according to any one of claims 1 to 6, characterized in that, Also includes: Detect the existence of abnormal paths. Abnormal paths refer to paths where the real-time quality score is lower than a preset threshold in multiple consecutive update cycles, or paths that receive more than a preset number of discrete event signals per unit time. When an abnormal path is detected, its path weight is reduced to be lower than that of a normal path.
8. An apparatus for a multipath data transmission method based on RDMA, comprising a processor, a memory, and a computer program / instructions stored in the memory, characterized in that, The processor is configured to execute the computer program / instructions, and when the computer program / instructions are executed, the device implements the steps of the method as described in any one of claims 1 to 7.
9. A computer-readable storage medium having a computer program / instructions stored thereon, characterized in that, When the computer program / instructions are executed by the processor, they implement the steps of the method as described in any one of claims 1 to 7.
10. A computer program product comprising a computer program / instructions, characterized in that, When the computer program / instructions are executed by the processor, they implement the steps of the method according to any one of claims 1 to 7.