AI network-oriented message transmission and packet loss detection method and system, and storage medium

By determining the maximum number of paths in the AI ​​network and using packet-by-packet spraying technology, the problem of low packet loss detection efficiency in the AI ​​network is solved, rapid detection and retransmission are achieved, and transmission efficiency and reliability are improved.

CN119922106APending Publication Date: 2025-05-02BEIJING JAGUAR MICROSYSTEMS CO LTD +1
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510000934.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-02
Publication Date
2025-05-02

AI Technical Summary

Technical Problem

In AI networks, it is difficult for the prior art to quickly detect packet loss, resulting in low transmission efficiency, especially for time-sensitive AI applications.

Method used

By determining the maximum number of paths in the AI ​​network topology, the source network card adopts packet-by-packet spraying technology to transmit messages with the same path number from the same transmission path to the destination network card, and quickly determine whether there is a loss of messages in the destination network card. If it exists, request the source network card to retransmit the lost messages.

Benefits of technology

It realizes rapid detection and retransmission of packet loss, improves transmission efficiency, reduces waiting time, and improves the reliability and efficiency of AI network communication.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119922106A_ABST
    Figure CN119922106A_ABST
Patent Text Reader

Abstract

The invention provides an AI network-oriented message transmission and packet loss detection method. The method comprises the following steps: determining the maximum path number from a source end network card to a destination end network card in an AI network topology; the source end network card carries out calculation according to the message serial number of a message to be sent and the maximum path number, obtains a path number corresponding to the message to be sent, and transmits a data message to be sent with the same path number to a target network card from the same transmission path in a packet-by-packet spraying mode; the destination end network card receives a data message, and determines whether message loss exists on the current transmission path according to the serial number of the received data message and the maximum path number; and when the message is lost, the destination network card requests the source network card to retransmit the lost message. The invention further discloses a corresponding system and a storage medium. According to the invention, rapid detection of packet loss can be realized, and the transmission efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of packet loss detection, and in particular to a packet transmission and packet loss detection method, system and storage medium for an AI network. Background Art

[0002] At present, the field of artificial intelligence (AI) is developing rapidly, and the scale of AI large models continues to expand. Distributed parallel computing, including data parallelism, pipeline parallelism, and tensor parallelism, is a key technology for training large models. These technologies rely on frequent collective communication between multiple graphics processing unit (GPU) cards, requiring high-performance computing networks to provide high bandwidth and low latency.

[0003] like Figure 1 As shown in the figure, the existing high-performance computing network topology usually includes GPU servers, NVIDIA node switches (NvSwitch), rack switches (Top Of Rack, TOR), leaf switches and backbone switches. Each GPU server is equipped with 4-8 GPU cards, and the interconnection within the high-bandwidth network domain (High Bandwidth Domain, HBD) is achieved through NvSwitch. The GPU card is directly connected to the network card through the PCIe switch, and there are 4-8 network cards on each server. The network card is connected to the rack switch to form a network group. Any two network cards in the network group can achieve one-hop communication through the rack switch, while communication across network groups must pass through the leaf switch, which requires three hops. Multiple network groups and leaf switches form a collection (Pod). When the number of GPU cards required for AI applications exceeds the capacity of a single Pod, multiple Pods can be interconnected through the backbone switch to build a three-layer network computing cluster.

[0004] Compared with the traditional data center traffic model, the high-performance computing network traffic of AI applications is periodic and bursty, which makes the traditional flow-based equal-cost multi-path routing (ECMP) load balancing ineffective. Therefore, packet spraying technology has gradually become a trend to solve this problem. This technology achieves balanced distribution of traffic by randomly or pseudo-randomly distributing data packets to multiple equal-cost paths. However, packet spraying may cause data packets to be out of order when they arrive at the destination. Reference Figure 2As shown in the diagram, the order of packets sent by the source network card is 1, 2, 3, 4, and the order of packets received by the destination network card is 1, 3, 4, 2.

[0005] In order to solve the disorder problem, a variety of solutions have been proposed in the prior art. One of the solutions is to add a bitmap at the destination end to record the packet sequence number (PSN) in the received ROCEv2 message. Specifically, a bitmap is added at the destination end, where each connection adds a bitmap to record the message sequence number in the received ROCEv2 message. Taking the bitmap size of 128 as an example, when the bitmaps corresponding to PSN=0-3, 5-127 are all 1, and the bitmap corresponding to PSN=4 is 0, it means that the message of PSN=4 has not been received, and the message of PSN=0-3, 5-127 has been received. Due to the disorder, the destination network card cannot immediately send SACK to allow the other end to selectively retransmit the message of PSN=4. The destination needs to wait until it receives a message with PSN>=128, which exceeds the bitmap representation range, before sending a retransmission request to allow the other end to selectively retransmit the message with PSN=4. This waiting time is relatively long, which is extremely disadvantageous for time-sensitive applications such as AI. Summary of the invention

[0006] The technical problem to be solved by the present application is to provide a message transmission and packet loss detection method, system and storage medium for AI networks, which can realize rapid detection of packet loss and improve transmission efficiency.

[0007] In order to solve the above technical problems, as one aspect of the present application, a method for message transmission and packet loss detection for an AI network is provided, which includes the following steps:

[0008] Determine the maximum number of paths from the source NIC to the destination NIC in the AI ​​network topology;

[0009] The source network card calculates according to the message sequence number of the message to be sent and the maximum number of paths to obtain the path number corresponding to the message to be sent, and transmits the messages to be sent with the same path number from the same transmission path to the destination network card in a packet-by-packet spraying manner;

[0010] The destination network card receives the message, and determines whether there is message loss on the current transmission path according to the sequence number of the received message and the maximum number of paths;

[0011] When there is a message loss, the destination network card requests the source network card to retransmit the lost message.

[0012] Preferably, the calculation is performed based on the message sequence number of the message to be sent and the maximum number of paths to obtain the path number corresponding to the message to be sent:

[0013] Use the following remainder formula to calculate and obtain the path number corresponding to each message:

[0014] Source_Port=PSN%Path_Num;

[0015] Wherein, Source_Port is the path number; PSN is the message sequence number, and Path_Num is the maximum path number;

[0016] The method of transmitting the to-be-sent messages having the same path number from the same transmission path to the destination network card is specifically as follows:

[0017] In the quintuple of the message to be sent, its source port number is modified to the calculated path number, and then hash processing is performed to transmit the message to be sent with the same path number from the same transmission path to the destination network card.

[0018] Preferably, the destination network card receives the message, and determines whether there is message loss on the current transmission path according to the sequence number of the received message and the maximum number of paths, including:

[0019] After receiving the message with the same path number, the destination network card determines whether there is an earlier message sequence number with the same path number that has not been received based on the relationship between the message sequence number and the maximum path data. If so, it is determined that there is a message loss.

[0020] Preferably, when there is a message loss, the destination network card requests the source network card to retransmit the lost message specifically:

[0021] After detecting that a message is lost, the destination network card sends a selective confirmation message to the source network card, requesting retransmission of the lost message.

[0022] Preferably, the method further comprises:

[0023] When the output port state of the rack switch or leaf switch on the network side changes from UP to Down, the rack switch or leaf switch discards the data message sent to the output port in the Down state, and switches the sending path to continue sending the corresponding data message.

[0024] A second aspect of the present invention provides a message transmission and packet loss detection system for an AI network, comprising:

[0025] A path number determination module is used to determine the maximum number of paths from the source network card to the destination network card in the AI ​​network topology;

[0026] A data stream spraying module, used to calculate according to the message sequence number of the message to be sent and the maximum number of paths, obtain the path number corresponding to the message to be sent, and adopt a packet-by-packet spraying method to transmit the messages with the same path number from the same transmission path to the destination network card;

[0027] A packet loss detection module, used to determine whether there is packet loss on the current transmission path according to the sequence number of the received message and the maximum number of paths;

[0028] The packet loss retransmission module requests the source network card to retransmit the lost message when there is message loss.

[0029] Preferably, the data stream spraying module further comprises:

[0030] The path number obtaining unit is used to obtain the path number corresponding to the message to be sent by using the following remainder formula:

[0031] Source_Port=PSN%Path_Num

[0032] Wherein, Source_Port is the path number; PSN is the message sequence number, and Path_Num is the maximum path number;

[0033] The spray sending unit is used to modify the source port number in the five-tuple of the message to be sent to the path number calculated by the path number obtaining unit, and then perform hash processing to transmit the message to be sent with the same path number from the same transmission path to the destination network card.

[0034] Preferably, in the packet loss detection module, based on the relationship between the message sequence number and the maximum path data, and based on the arrangement order of the message sequence numbers of the received data packets, it is determined whether there is an earlier message sequence number with the same path number that has not been received. If so, it is determined that there is message loss.

[0035] Preferably, in the packet loss retransmission module, after detecting that a data message is lost, the destination network card immediately sends a selective acknowledgment (SACK) message to the source network card to request retransmission of the lost message.

[0036] Preferably, it further comprises:

[0037] The exception handling module is used to, when the output port state of the rack switch or leaf switch on the network side changes from UP to Down, the rack switch or leaf switch discards the data message sent to the output port in the Down state; or switches the sending path to continue sending the corresponding data message.

[0038] As another aspect of the present application, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the aforementioned method are implemented.

[0039] Implementing this embodiment has the following beneficial effects:

[0040] This application provides a method, system and storage medium for message transmission and packet loss detection for AI networks. Through the source network card, packet-by-packet spraying is realized, and the elephant flow is split into multiple small flows by modifying the source port number of the UDP message, so as to achieve efficient and balanced distribution of traffic on multiple paths;

[0041] This solution introduces the concept of path number. The destination network card can quickly determine whether a message is discarded based on the message path number, saving waiting time and improving the response speed to packet loss.

[0042] This solution does not rely on the support of the network-side switch. The network-side switch still uses the original flow-based load balancing algorithm, which reduces the requirements for the switch and improves the reliability and efficiency of AI network communication.

[0043] This solution provides two processing methods for the path switching problem caused by changes in the output port status of the network-side switch, ensuring that the end-side network card can still accurately detect packet loss and trigger the retransmission mechanism under abnormal circumstances. BRIEF DESCRIPTION OF THE DRAWINGS

[0044] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, without paying creative labor, other drawings obtained based on these drawings still belong to the scope of the present application.

[0045] Figure 1 A typical high performance computing network topology diagram in the prior art;

[0046] Figure 2 for Figure 1 The schematic diagram of the principle of using packet-by-packet spraying to shuffle messages;

[0047] Figure 3 A schematic diagram of the main process of an embodiment of a method for message transmission and packet loss detection for an AI network provided by the present application;

[0048] Figure 4 for Figure 3 Schematic diagram of the principle of packet loss detection involved in;

[0049] Figure 5A schematic diagram of the structure of an embodiment of a message transmission and packet loss detection system for an AI network provided by the present application;

[0050] Figure 6 for Figure 5 Schematic diagram of the structure of the data stream spray module in . DETAILED DESCRIPTION

[0051] In order to make the objectives, technical solutions and advantages of the present application more clear, the present application will be further described in detail below in conjunction with the accompanying drawings.

[0052] like Figure 3 As shown, a main flow diagram of an embodiment of a message transmission and packet loss detection method for an AI network provided by the present application is shown; together with Figure 4 As shown, in this embodiment, the message transmission and packet loss detection method for AI network is applied to Figure 1 In the high performance computing network shown, the network may be, for example, an AI network, which includes the following steps:

[0053] Step S10, determine the maximum number of paths from the source network card to the destination network card in the AI ​​network topology, and establish a connection between the source network card and the destination network card; it is understandable that after the entire AI network topology is determined, a maximum number of paths Path_Num needs to be determined. Among them, the Path_Num is not limited by the number of output ports of the rack switch (TOR Switch) and the leaf switch (Leaf Switch) in the AI ​​network. Simply put, the maximum number of paths is just a value pre-agreed on the entire network. For the sake of convenience, in this example, it is assumed that Path_Num = 8.

[0054] Step S11, when sending data packets, the source network card calculates according to the message sequence number of each message to be sent and the maximum number of paths to obtain the path number corresponding to each message to be sent; and adopts a packet-by-packet spraying method to transmit the messages to be sent with the same path number from the same transmission path to the destination network card.

[0055] In a specific example, the step S11 further includes:

[0056] The following remainder formula (1) is used to calculate and obtain the path number corresponding to each message, and the path number is used to modify the source port number in the corresponding data message:

[0057] Source_Port = PSN % Path_Num; (1)

[0058] Among them, Source_Port is the path number; PSN is the message sequence number, and Path_Num is the maximum path number.

[0059] Then, in the five-tuple (protocol number, source IP, destination IP, source port number, destination port number) of the message to be sent, its source port number is modified to the calculated path number, and ECMP hash processing is performed to transmit the data message to be sent with the same path number from the same transmission path to the destination network card. It can be understood that in this step, the above-mentioned remainder formula (1) is used to calculate the path number and modify the source port number in the data message. The principle is that in network transmission, especially when transmitting "elephant" flow (i.e., flow with large amount of data), if all traffic is concentrated on the same path, it may cause network congestion and resource exhaustion on the path. By modifying the source port number, the original elephant flow can be split into multiple small flows, which will be transmitted along different paths, thereby achieving load balancing and reducing the pressure of a single path. Specifically, when the source network card sends the ROCEv2 message, it modifies the source port number in the UDP message, and the elephant flow sent between the connection of the source network card and the destination network card will be split into Path_Num small flows. At this time, the network side rack switch / leaf switch still performs load balancing processing by equal cost multi-path hash (ECMP HASH) according to the traditional five-tuple (protocol number, source destination IP, source destination port number) by flow. Therefore, when Path_Num=8, the original flow is split into 8 flows. These 8 flows will take different paths on the rack switch / leaf switch.

[0060] Since the rack switch / leaf switch is strictly based on the five-tuple equal-cost multi-path hash, it can be guaranteed that the paths taken by the flows with the same path number (Source Port) in the original flow are the same. It should be noted that: it is not guaranteed that two different flows with different path numbers will take different paths. They may still take the same path, depending on the result of the HASH.

[0061] In such Figure 4 In the example shown, a connection between the source and destination network cards is to send PSN=

[0062] 1,2,…,n. When sending these messages, the source port number is assigned according to the PSN using formula (1). In this way, a flow becomes 8 flows (assuming Path_Num = 8). When selecting the path on the intermediate network side, these 8 flows may take different paths. But one thing is certain: PSN = 1,9,17,…, such messages take the same path; PSN = 2,10,18,…, such messages also take the same path. And so on, PSN = 8,16,24,…, such messages also take the same path.

[0063] Step S12: the destination network card receives a message, and determines whether there is message loss on the current transmission path according to the sequence number of the received message and the maximum number of paths.

[0064] Specifically, in this step S12, after receiving the data message with the same path number, the destination network card determines whether there is an earlier message sequence number with the same path number that has not been received based on the relationship between the message sequence number and the maximum path data, and based on the arrangement order of the message sequence numbers of the received data messages. If so, it is determined that a message is lost.

[0065] Specifically, Figure 4 As shown, according to the above conclusion, if the destination network card receives a message with PSN=1 and then receives a message with PSN=17, it can quickly determine that the message with PSN=9 has been discarded. Because the message with PSN=9 and the messages with PSN=1,17 have the same source port number and follow the same path, the difference between the PSNs of adjacent messages should be the maximum path number (Path_Num), and there should be no disorder. Here, the difference between the two PSNs is 16, so the message with PSN-9 should be lost.

[0066] Step S13: When there is a message loss, the destination network card triggers a packet loss retransmission mechanism and requests the source network card to retransmit the lost message.

[0067] Locally, in this step S13, after detecting that a data packet is lost, the destination network card immediately sends a selective acknowledgment (SACK) message to the source network card to request retransmission of the lost message. Figure 4 In the example, it is determined that the PSN=9 message is lost, so the destination network card immediately sends a selective acknowledgment (SACK) message to the source network card, requesting retransmission of the PSN=9 message.

[0068] It is understood that the method provided in this application further comprises the following steps:

[0069] When the source-side network card detects that the output port state of the rack switch or leaf switch on the network side changes from UP to Down, the rack switch or leaf switch is controlled to discard the message sent to the output port in the Down state; or the rack switch or leaf switch is controlled to switch the sending path to continue sending the corresponding message.

[0070] It is understandable that the method provided by the present application realizes packet-by-packet spraying by the source-side network card and fast out-of-order detection by the destination-side network card. This solution does not rely on the support of the network-side switch, which still uses the original flow-based load balancing algorithm.

[0071] The solution of this application introduces the concept of path number, and uses packet-by-packet spraying. If the path number is the same, it means that they take the same path, so the message order will not be disordered. If it is disordered, it means that packet loss has occurred. The packet loss can be quickly determined and the other end can be asked to retransmit. This saves waiting time and improves the response speed of packet loss.

[0072] like Figure 5 As shown, a schematic diagram of the structure of an embodiment of a message transmission and packet loss detection system for an AI network provided by the present application is shown. Figure 6 As shown, in this embodiment, the message transmission and packet loss detection system 1 for the AI ​​network includes:

[0073] A path number determination module 10 is used to determine the maximum number of paths from the source network card to the destination network card in the AI ​​network topology, and to establish a connection between the source network card and the destination network card;

[0074] The data flow spraying module 11 is used for the source network card to calculate the path number corresponding to each message to be sent according to the message sequence number and the maximum path number of each message to be sent when sending the data message; and adopt the packet-by-packet spraying method to transmit the messages to be sent with the same path number from the same transmission path to the destination network card;

[0075] The packet loss detection module 12 is used to determine whether there is packet loss on the current transmission path according to the sequence number of the received data packet and the maximum number of paths. When there is packet loss, the destination network card requests the source network card to retransmit the lost packet.

[0076] Specifically, Figure 6 As shown, in the data stream spraying module 11, it includes:

[0077] The path number obtaining unit 110 is used to obtain the path number corresponding to the message to be sent by using the following modulo formula:

[0078] Source_Port=PSN%Path_Num

[0079] Wherein, Source_Port is the path number; PSN is the message sequence number, and Path_Num is the maximum path number;

[0080] The spraying and sending unit 111 is used to modify the source port number of the five-tuple of the message to be sent to the path number calculated by the path number obtaining unit, and then perform ECMP hash processing to transmit the data messages to be sent with the same path number from the same transmission path to the destination network card;

[0081] Specifically, in the packet loss detection module 12, based on the relationship between the message sequence number and the maximum path data, and based on the arrangement order of the message sequence numbers of the received data messages, it is determined whether there is an earlier message sequence number with the same path number that has not been received. If so, it is determined that a message is lost.

[0082] The packet loss retransmission module 13, when detecting message loss, triggers the packet loss retransmission mechanism of the destination network card, and requests the source network card to retransmit the lost message.

[0083] Specifically, in the packet loss retransmission module 13, after detecting that a data message is lost, the destination network card immediately sends a selective acknowledgment (SACK) message to the source network card to request retransmission of the lost message.

[0084] Among them, further include:

[0085] The exception handling module 14 is used to control the rack switch or leaf switch to discard the data message sent to the output port in the Down state when the source-end network card detects that the output port state of the rack switch or leaf switch on the network side changes from UP to Down; or control the rack switch or leaf switch to switch the sending path to continue sending the corresponding data message.

[0086] For more details, please refer to and combine the above Figure 3 to Figure 4 The description is not repeated here.

[0087] As another aspect of the present application, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the above-mentioned Figure 3 to Figure 4 For more details, please refer to and combine with the above Figure 3 to Figure 4 The description is not repeated here.

[0088] Implementing this embodiment has the following beneficial effects:

[0089] This application provides a method, system and storage medium for message transmission and packet loss detection for AI networks. Through the source network card, packet-by-packet spraying is realized, and the elephant flow is split into multiple small flows by modifying the source port number of the UDP message, so as to achieve efficient and balanced distribution of traffic on multiple paths;

[0090] This solution introduces the concept of path number. The destination network card can quickly determine whether a message is discarded based on the message path number, saving waiting time and improving the response speed to packet loss.

[0091] This solution does not rely on the support of the network-side switch. The network-side switch still uses the original flow-based load balancing algorithm, which reduces the requirements for the switch and improves the reliability and efficiency of AI network communication.

[0092] This solution provides two processing methods for the path switching problem caused by changes in the output port status of the network-side switch, ensuring that the end-side network card can still accurately detect packet loss and trigger the retransmission mechanism under abnormal circumstances.

[0093] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, devices, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0094] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0095] The above disclosure is only a preferred embodiment of the present application, and certainly cannot be used to limit the scope of rights of the present application. Therefore, equivalent changes made according to the claims of the present application are still within the scope covered by the present application.

Claims

1. A method for packet transmission and packet loss detection for AI networks, characterized in that: The following steps are involved: Determine the maximum number of paths from the source NIC to the destination NIC in the AI ​​network topology; The source network card calculates according to the message sequence number of the message to be sent and the maximum number of paths to obtain the path number corresponding to the message to be sent, and adopts a packet-by-packet spraying method to transmit the messages to be sent with the same path number from the same transmission path to the destination network card; The destination network card receives the message, and determines whether there is message loss on the current transmission path according to the sequence number of the received message and the maximum number of paths; When there is a message loss, the destination network card requests the source network card to retransmit the lost message.

2. The method according to claim 1, characterized in that in: The calculation is performed based on the message sequence number of the message to be sent and the maximum number of paths to obtain the path number corresponding to the message to be sent: Use the following remainder formula to calculate and obtain the path number corresponding to each message: Source_Port=PSN%Path_Num; Wherein, Source_Port is the path number; PSN is the message sequence number, and Path_Num is the maximum path number; The method of transmitting the to-be-sent messages having the same path number from the same transmission path to the destination network card is specifically as follows: In the quintuple of the message to be sent, its source port number is modified to the calculated path number, and then hash processing is performed to transmit the message to be sent with the same path number from the same transmission path to the destination network card.

3. The method according to claim 2, characterized in that The destination network card receives the message, and determines whether there is message loss on the current transmission path according to the sequence number of the received message and the maximum number of paths, including: After receiving the message with the same path number, the destination network card determines whether there is an earlier message sequence number with the same path number that has not been received based on the relationship between the message sequence number and the maximum path data. If so, it is determined that there is a message loss.

4. The method according to claim 3, characterized in that When there is a message loss, the destination network card requests the source network card to retransmit the lost message specifically: After detecting that a message is lost, the destination network card sends a selective confirmation message to the source network card, requesting retransmission of the lost message.

5. The method according to any one of claims 1 to 4, characterized in that: Further including: When the output port state of the rack switch or leaf switch on the network side changes from UP to Down, the rack switch or leaf switch discards the data message sent to the output port in the Down state, and switches the sending path to continue sending the corresponding data message.

6. A message transmission and packet loss detection system for AI network, characterized in that: include: A path number determination module is used to determine the maximum number of paths from the source network card to the destination network card in the AI ​​network topology; A data stream spraying module, used to calculate according to the message sequence number of the message to be sent and the maximum number of paths, obtain the path number corresponding to the message to be sent, and adopt a packet-by-packet spraying method to transmit the messages with the same path number from the same transmission path to the destination network card; A packet loss detection module, used to determine whether there is packet loss on the current transmission path according to the sequence number of the received message and the maximum number of paths; The packet loss retransmission module requests the source network card to retransmit the lost message when there is message loss.

7. The system according to claim 6, characterized in that The data stream spraying module further includes: The path number obtaining unit is used to obtain the path number corresponding to the message to be sent by using the following remainder formula: Source_Port=PSN%Path_Num Wherein, Source_Port is the path number; PSN is the message sequence number, and Path_Num is the maximum path number; The spray sending unit is used to modify the source port number in the five-tuple of the message to be sent to the path number calculated by the path number obtaining unit, and then perform hash processing to transmit the message to be sent with the same path number from the same transmission path to the destination network card.

8. The system according to claim 7, characterized in that In the packet loss detection module, based on the relationship between the message sequence number and the maximum path data, and based on the arrangement order of the message sequence numbers of the received data messages, it is determined whether there is an earlier message sequence number with the same path number that has not been received. If so, it is determined that a message is lost.

9. The system according to claim 8, characterized in that In the packet loss retransmission module, after detecting that a data packet is lost, the destination network card immediately sends a selective acknowledgment (SACK) message to the source network card to request retransmission of the lost message.

10. The system according to any one of claims 6 to 9, characterized in that: Further including: The exception handling module is used to, when the output port state of the rack switch or leaf switch on the network side changes from UP to Down, the rack switch or leaf switch discards the data message sent to the output port in the Down state; or switches the sending path to continue sending the corresponding data message.

11. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 5 are implemented.

Citation Information

Cited By

  • SACK-based packet loss retransmission and receiving method

    CN120856277A

  • Sack-based packet loss retransmission and receiving method

    CN120856277B