Message forwarding method supporting network node retransmission packet

By detecting packet loss between network nodes and performing fast retransmission, the problem of high packet loss rate of unreliable links is solved, and the reliability and efficiency of data transmission are improved.

CN120034302APending Publication Date: 2025-05-23CHENGDU HAIWANG NETWORK TECH CO LTD +3
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311553841.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-21
Publication Date
2025-05-23

AI Technical Summary

Technical Problem

When the prior art deals with packet loss problem of unreliable links between two network nodes, the packet loss rate is high and the transmission reliability is poor.

Method used

A message forwarding method that supports network nodes to retransmit packets is proposed. By detecting packet loss on the transmission link between adjacent network nodes, and matching the RFID field of the received packets in the downstream node for packet loss detection, a feedback message is constructed to notify the upstream node to retransmit packets.

Benefits of technology

It realizes more accurate and fast data retransmission during the forwarding process, improves the reliability and efficiency of data transmission, and reduces the network packet loss rate.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120034302A_ABST
    Figure CN120034302A_ABST
Patent Text Reader

Abstract

The invention discloses a message forwarding method supporting network node packet retransmission. Packet loss detection and rapid retransmission between network nodes are supported in the message forwarding process. The message forwarding method comprises the following steps: 1) an upstream node carries out unified numbering on messages in the same stream, fills in message serial numbers, stream identifiers, upstream node network addresses and retransmission packet mark fields, sequentially writes the messages into a sending cache region according to the serial numbers, copies the messages from the cache region according to a current sending rate and sends the copied messages; 2) the downstream node constructs a feedback message according to packet loss detection of the message serial number, and sends the feedback message to the upstream node; and 3) the upstream node determines that the message is lost based on the received feedback message, and retransmits the message after reallocating a sequence number. According to the method provided by the invention, packet loss detection and rapid retransmission can be carried out between network nodes, the packet loss rate in the network is effectively reduced, and the transmission reliability of the data packet in the network is enhanced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of network technology and communication technology, and specifically relates to a message forwarding method that supports network node retransmission of packets. Background Art

[0002] In network communications, data packets may be lost, delayed, or out of order during transmission, resulting in reduced transmission quality. In traditional network communications, reliable data transmission usually uses end-to-end packet loss detection, fast retransmission, and timeout retransmission mechanisms. After receiving three consecutive repeated ACKs, the sender considers the data packet lost and triggers a fast retransmission. If no confirmation message for the data is received within the specified time, a timeout retransmission is triggered.

[0003] These methods for solving packet loss also have some problems. For example, after the packet is out of order, unnecessary retransmissions are performed, wasting resources and bandwidth; when the network delay is high, frequent retransmissions may occur in the high-delay network, reducing transmission efficiency; the timeout setting is difficult to adapt to changes in the end-to-end network environment, etc. These problems may have a negative impact on transmission performance in some specific network environments.

[0004] In response to the above-mentioned problem of decreased transmission efficiency caused by packet loss, researchers have proposed various improvement methods. The first method is to improve the reliability and efficiency of data transmission by improving transmission protocols and mechanisms, such as congestion control retransmission mechanisms and selective retransmission. The action points of these improvement mechanisms are limited to the actual sending and receiving ends, which may cause delays in fault handling. The second method is to optimize network equipment and reduce the packet loss rate of network equipment by supporting caching, multiple queues, and multiple priorities on network equipment. This method can alleviate network packet loss to a certain extent, but there is still a lack of protection for the packet loss problem on unreliable links between two optimized network devices. Summary of the invention

[0005] The purpose of the present application is to overcome the defects of the prior art in dealing with the packet loss problem of an unreliable link between two network nodes, such as high packet loss rate and poor transmission reliability.

[0006] In order to achieve the above-mentioned purpose, the present application proposes a message forwarding method supporting network node retransmission packets, which is used to detect packet loss on a transmission link between adjacent network nodes and retransmit messages; the transmission link is used to carry message transmission between adjacent network nodes, and the transmission link includes network equipment and physical lines;

[0007] Set adjacent network nodes i and j, which are two network nodes that are one-hop reachable in the network; define all the packets sent from network node i to network node j that support the use of the inter-node retransmission ability as a flow F(i,j). Network node i is called the upstream node of flow F(i,j), and j is called the downstream node;

[0008] The method for forwarding packets of the network node retransmission packet includes:

[0009] Step 1) For the packets that need to be retransmitted by the upstream node i and whose next-hop forwarding node is j, uniformly number them to obtain a packet sequence number; fill in the packet header fields: fill the RPN field with the packet sequence number, fill the RFID field with the identifier of flow F(i,j), fill the RSIP field with the network address of i, and fill the RP field with a set non-retransmission identifier; write the packets into the sending buffer in sequence, and copy the packets from the buffer according to the current sending rate and send them;

[0010] Step 2) The downstream node j matches the RFID field of the received packet. For the packets belonging to the same flow F(i,j), perform packet loss detection according to the RPN field and construct a feedback message; the feedback message carries the packet sequence number RPN, and the destination address is filled with RSIP and sent to the upstream node i;

[0011] Step 3) The upstream node i determines the lost packets based on the received feedback message, retrieves the packets from the sending buffer, reallocates the sequence numbers in sequence according to the current sequence number allocation situation of flow F(i,j); modify the RPN field in the packet header to the current sequence number value, and set RP to the set retransmission identifier, and write it into the sending buffer for retransmission.

[0012] As an improvement of the above method, the network nodes that are one-hop reachable by routing refer to the network nodes that are calculated and determined to be the next-hop forwarding nodes of a certain packet to be forwarded based on the routing rules;

[0013] The routing rules include: shortest path routing, random routing, link state-based routing, and DHT routing.

[0014] As an improvement of the above method, the fields of the packet header further include a reset packet flag RS field;

[0015] The fields of the packet header are located between the network layer base header and the application data;

[0016] The extension methods of the fields of the packet header include: using network layer header extension, using transport layer header extension, and using common extension of network layer and transport layer headers; the network node reads, fills in, and modifies the fields of the packet header;

[0017] Among them:

[0018] The RFlag field is a flag bit used to identify whether the message supports the retransmission capability between adjacent network nodes;

[0019] The RFID field is a flow identifier, which is the identifier of the flow in which the message is currently located; the flow identifier is used to uniquely represent a flow F(i,j);

[0020] The RPN field is a message sequence number, which is used to carry the message number in the flow F(i,j); the number space is of limited length and is uniformly numbered by the upstream node i according to the message sending order;

[0021] RSIP field is the network address of the upstream node, an optional field that identifies the address information of the upstream node of the flow F(i,j) where the message is located; it is used when the downstream node sends feedback information and is filled in as the destination address; when the downstream node maintains the information locally, it does not carry the RSIP field in the message;

[0022] The RP field is a retransmission packet flag, which is used to identify whether the current message is a retransmission message. When the upstream node determines that the message is to be retransmitted, the RP field in the message is first set to the set retransmission flag. For data messages with RP as the set retransmission flag, the execution strategy is supported to make the message be transmitted first.

[0023] The RS field is a reset packet flag used to identify whether a flow state reset occurs. When a reset occurs, the RS field of the first message is set to the set reset flag, and the RPN is set to the set initial value. The reasons for the flow state reset include: active reset by the upstream node and restart after an upstream node failure.

[0024] As an improvement of the above method, the method for generating the flow identifier includes: directly concatenating the network addresses of the upstream node and the downstream node, or using a summary value of the concatenated address.

[0025] As an improvement to the above method, the RPN field numbering rule is as follows: the RPN of the first message is the set initial value, and the RPNs of subsequent messages increase successively. When the number allocation reaches the upper limit, it is cyclically used starting from the set initial value; the sequence numbers of the retransmitted messages are reallocated.

[0026] As an improvement to the above method, the network node supports the following functions:

[0027] Support routing and forwarding functions of common network devices;

[0028] As an upstream node, it maintains a sending buffer for each flow, and supports using the sending buffer to cache the messages in the flow; it writes messages to the buffer in sequence according to the flow forwarding rate. When the buffer is full, it deletes and updates the buffer in sequence according to the order in which the messages enter; the buffer size is set according to the port forwarding rate and transmission delay parameters;

[0029] As an upstream node, it supports unified numbering of messages in the flow;

[0030] Support reading, filling and modifying some fields of the message header; the said some fields include: destination address, RFlag, RFID, RPN, RSIP, RP and RS;

[0031] Support building, parsing, sending and receiving feedback messages;

[0032] Supports packet loss detection based on message sequence numbers and message retransmission based on feedback messages.

[0033] As an improvement of the above method, the packet loss detection is used by the downstream node to determine whether a packet is lost in the transmission link based on the sequence number of the message received in the flow. The packet loss detection method includes: a timeout detection method and a message disorder detection method.

[0034] As an improvement of the above method, the feedback message is used by the downstream node j in the flow F(i,j) to notify the upstream node i of the reception status of the message, and supports the separate construction of the feedback message message and the carrying method in the data message; the destination address of the feedback message is filled in with the network address of the node j.

[0035] As an improvement to the above method, in case of packet loss in the transmission link of the feedback message, the method of improving transmission reliability includes:

[0036] 1) The feedback message uses the retransmission capability between network nodes, and adds the following fields to the header: RFlag, RFID, RPN, RSIP, RP, and RS; among them, the RFlag field is set to the set retransmission flag, RFID is filled in with the flag of flow F(i, j), RPN is filled in with the sequence number of the feedback message in F(i, j), RSIP is filled in with the network address of node j, RP is set to the set non-retransmission flag, and RS is set to the set non-reset flag;

[0037] 2) When the upstream node receives the feedback message, it sends a reply message NACKReply to the upstream node. If the downstream node does not receive the NACKReply within the set time threshold, it resends the feedback message to the upstream node.

[0038] As an improvement to the above method, when a data message is retransmitted:

[0039] Reassign data packet sequence numbers to retransmitted messages, update the RPN field, and set the RP field to the set retransmission flag;

[0040] The execution strategy makes the retransmitted message be transmitted first; the strategy includes: increasing the queue priority or adjusting the routing strategy.

[0041] Compared with the prior art, the advantages of this application are:

[0042] The method of the present application designs a message forwarding method that supports packet loss detection and fast retransmission between network nodes, which can more accurately perform fast data retransmission during the forwarding process, which is conducive to achieving timeliness and pertinence of fault handling and improving data transmission reliability and efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] Figure 1 Shown is a sequence diagram of a message forwarding method supporting retransmission of packets by a network node;

[0044] Figure 2 Shown is the message structure that supports retransmission of packets by network nodes;

[0045] Figure 3 Shown is a flow chart of message forwarding that supports retransmission of packets by network nodes;

[0046] Figure 4 The figure shows a schematic diagram of the entity interactions that support the retransmission of packets by network nodes. DETAILED DESCRIPTION

[0047] The technical solution of the present application is described in detail below with reference to the accompanying drawings.

[0048] In response to the packet loss problem of an unreliable link between two network nodes, the applicant has found that timely packet loss detection and fast retransmission between network nodes are conducive to reducing the packet loss rate between network nodes, achieving timely and targeted fault handling, and effectively improving the reliability and efficiency of data transmission. Therefore, the present application proposes a message forwarding method that supports network node retransmission packets, which is used to assist in packet loss detection and fast retransmission between network nodes.

[0049] The purpose of this application is to address the packet loss problem of an unreliable link between two network nodes, and to propose a message forwarding method that supports network node retransmission of packets. The method can detect and retransmit the packet loss problem of the transmission link between network nodes during the data forwarding process, so as to achieve timeliness and pertinence of fault handling, reduce the network packet loss rate, and improve the reliability and efficiency of data transmission.

[0050] In order to achieve the above-mentioned purpose, the present application proposes a message forwarding method that supports network node retransmission of packets, which is used to detect packet loss on a transmission link between adjacent network nodes and retransmit messages.

[0051] Adjacent network nodes i and j are assumed to be two network nodes reachable by one hop in the network. The transmission link is used to carry the message transmission between adjacent network nodes, and the transmission link can be composed of network equipment and physical lines. All messages supporting inter-node retransmission capability, i.e., RFlag=1, sent by node i to node j are defined as a flow F(i,j), network node i is called the upstream node of flow F(i,j), and j is called the downstream node.

[0052] Among them, a network node that is reachable within one hop of routing refers to a network node that can be calculated and determined to be the next-hop forwarding node for a message to be forwarded based on routing rules; there is packet loss on the transmission link between the next-hop forwarding node and the current network node; routing rules include: shortest path routing, random routing, link state-based routing and DHT routing.

[0053] Each network node has the following functions:

[0054] 1) Possess the routing and forwarding functions of general network equipment;

[0055] 2) As an upstream node, it maintains a sending buffer for each flow, and supports using the sending buffer to cache the messages in the flow; the messages are written to the buffer in sequence according to the flow forwarding rate. When the buffer is full, the buffer is deleted and updated in sequence according to the order in which the messages enter; the size of the buffer needs to be set according to parameters such as port forwarding rate and transmission delay. The larger the buffer, the better the effect of enhancing the transmission reliability between adjacent nodes;

[0056] 3) As an upstream node, it supports unified numbering of messages in the flow;

[0057] 4) Ability to read, fill in and modify some fields in the message header, including: destination address, RFlag, RFID, RPN, RSIP, RP and RS;

[0058] 5) Construct, parse, send and receive feedback messages;

[0059] 6) Packet loss detection is performed based on the message sequence number, and message retransmission is performed based on the feedback message.

[0060] Packet loss detection is used by downstream nodes to determine whether packets are lost in the transmission link based on the sequence number of the packets received in the flow. The packet loss detection methods include: timeout detection method and message disorder detection method.

[0061] like Figure 1 As shown, the message forwarding method includes:

[0062] Step 1) The upstream node i matches the RFlag field of the message to be forwarded, and for the message with RFlag=1 and the next hop forwarding node j, uniformly numbers the message sequence number and fills in the relevant fields of the message header, where: the RPN field is filled in with the message sequence number, the RFID field is filled in with the identifier of the flow F(i,j), the RSIP field is filled in with the network address of i, and the RP field is set to 0; the messages are written into the sending buffer in sequence, and the messages are copied from the buffer according to the current sending rate and sent;

[0063] The fields of the message header include: flag bit RFlag, flow identifier RFID, message sequence number RPN, upstream node network address RSIP, retransmission packet flag RP and reset packet flag RS. The above fields are located between the network layer basic header and the application data. The extension methods include: using the network layer header extension, using the transport layer header extension, and using the network layer and transport layer headers to extend together; the network node will read, fill in and modify the above fields; among which:

[0064] The flag bit RFlag is used to identify whether the message supports the retransmission capability between adjacent network nodes. When RFlag = 1, it means support, and when RFlag = 0, it means no support;

[0065] Flow ID RFID, fill in the ID of the flow where the message is currently located, the ID is used to uniquely represent a flow F(i,j), and its generation method includes: directly splicing the network addresses of the upstream node and the downstream node to obtain [RSIP:RDIP] and using the summary value Hash[RSIP:RDIP] of the spliced ​​address;

[0066] The message sequence number RPN is used to carry the message number in the flow F(i,j). The numbering space is of limited length and is uniformly numbered by the upstream node i according to the message sending order. The RPN of the first message is 0, and the RPN of subsequent messages increases by 1. When the number is allocated to the upper limit, it is cyclically used starting from 0. For retransmitted messages, the sequence number needs to be reallocated.

[0067] The upstream node network address RSIP is an optional field that identifies the address information of the upstream node of the flow F(i,j) where the message is located. It is used as the destination address when the downstream node sends feedback information. The downstream node can maintain this information locally, and in this case, there is no need to carry the RSIP field in the message.

[0068] The retransmission packet flag RP is used to identify whether the current message is a retransmission message. When the upstream node determines that the message is a retransmission message, it will first set the RP field in the message to 1. For data messages with RP=1, it supports the execution of corresponding strategies to give priority to the message transmission;

[0069] The reset packet flag RS is used to identify whether a flow state reset occurs. When a reset occurs, the RS field of the first message needs to be set to 1 and the RPN needs to be set to 0. The reasons for the flow state reset include: active reset by the upstream node and restart after an upstream node failure.

[0070] Step 2) Downstream node j matches the RFID field of the received message, performs packet loss detection based on the RPN field for messages belonging to the same flow F(i,j), constructs a feedback message, carries the message sequence number RPN, and fills in the destination address as RSIP, and sends it to upstream node i;

[0071] The feedback message is used by the downstream node j in the flow F(i,j) to notify the upstream node i of the reception status of the message. It supports the separate construction of the feedback message message and the way of carrying it in the data message. The destination address of the feedback message NACK is filled in with the network address of node j, and the message should carry the lost data message sequence number RPN.

[0072] If feedback messages are lost in the transmission link, the following methods can be used to improve transmission reliability:

[0073] 1) The feedback message supports the use of the retransmission capability between network nodes. The relevant fields are added to the header, the RFlag field is set to 1, RFID is filled in with the identifier of the flow F(i, j), RPN is filled in with the sequence number of the feedback message in F(i, j), RSIP is filled in with the network address of node j, RP is set to 0, and RS is set to 0;

[0074] 2) When the upstream node receives a feedback message NACK, it sends a reply message NACKReply to the upstream node. If the downstream node does not receive the NACKReply within the time threshold, it resends the NACK to the upstream node.

[0075] Step 3) Based on the received feedback message, upstream node i determines the lost message, takes the message out of the sending buffer, and reallocates the sequence number in order according to the current sequence number allocation of flow F(i,j); modifies the RPN field in the message header to the current sequence number value, sets the RP field to 1, writes it into the sending buffer and retransmits it.

[0076] When a data packet is retransmitted:

[0077] Reassign data packet sequence numbers to retransmitted messages, update the RPN field, and set the RP field to 1;

[0078] Execute corresponding strategies to give priority to retransmitted messages. The methods include: increasing queue priority and adjusting routing strategies.

[0079] In order to make the technical solution of the present application clearer, the technical solution of the present application is described in detail below with reference to the accompanying drawings and embodiments.

[0080] like Figure 2 As shown, the embodiment of the present application provides a method for designing a message structure based on IPv6. In the embodiment, the IPv6 extension header is used to extend the fast retransmit related fields, and the Next Header field in the IPv6 basic header is filled with 0x99, indicating that the next extension header is a fast retransmit extension header; the value filled in the Next Header field of the fast retransmit extension header should point to the transport layer protocol, such as the TCP protocol or other new transport layer protocols.

[0081] In this embodiment:

[0082] RFlag: 1 bit, used to indicate whether to enable the fast retransmit level, 1: enabled, 0: disabled.

[0083] RP: 1 bit, used to mark whether the data packet is a normal packet or a retransmission packet, which can be used for RTO calculation, etc.

[0084] RS: 1 bit, used to mark whether the data packet is reset. When RPN=0, this flag bit will be checked. 1: reset sequence number, 0: cyclic use.

[0085] RFID: 4 bytes, used to carry the fast retransmission flow identifier, which is the hash value of the forwarding and second network node addresses.

[0086] RPN: 4 bytes, used to carry the sequence number of the data packet in the fast retransmit flow, the value range is: 0 to 232-1.

[0087] RSIP: 16 bytes, used to carry the IP address of the first network node of the fast retransmit flow.

[0088] like Figure 3 As shown, the embodiment of the present application provides a message forwarding flow chart supporting network node retransmission packets. Network node i and network node j are respectively the upstream node and downstream node of flow F(i, j). There is packet loss on the transmission link between nodes i and j. The steps of implementing packet loss detection and fast retransmission between nodes i and j based on the relevant fields carried in the message are as follows:

[0089] Step 1) For data packets that need to use the fast retransmission capability between network nodes, a fast retransmission extension header needs to be added, and the RFlag field is set to 1, and the RP and RS are set to 0;

[0090] Step 2) The upstream node i detects all messages with RFlag = 1, defines the message forwarded to the downstream node j as a fast retransmit flow F(i, j), calculates the flow F(i, j) identifier RFID = HASH[IP(i):IP(j)]; uniformly numbers the messages in F(i, j) to obtain the sequence number RPN, fills in the RPN, RFID, and RSIP fields in the fast retransmit extension header, and writes them into the send buffer in sequence number order;

[0091] Step 3) The upstream node i copies the message from the buffer according to the sending rate and sends it;

[0092] Step 4) Downstream node j detects the destination address field of the received message, detects RPN for the message whose destination address is the j network address and is related to RFID, and performs packet loss detection; for the lost message, a feedback message is constructed separately, an extension header is added, RFlag is set to 1, and the RPN field is filled in with the sequence number in F(i,j), and the retransmission capability is used to send it to node i;

[0093] Step 5) The upstream node i determines the lost data packet based on the received feedback message; takes out the corresponding message from the buffer, assigns a new sequence number RPN' and updates it, and sets the RP field in the message to 1, and retransmits the data packet to the network node j.

[0094] Step 6) The process ends.

[0095] like Figure 4 As shown, the embodiment of the present application provides a schematic diagram of entity interaction for message forwarding supporting network node retransmission packets. In the embodiment, the message feedback message NACK also uses the retransmission capability to improve transmission reliability. The following describes the interaction behavior of network node i and network node j by taking the packet loss of the message numbered seq(4), seq(6), and NACK[6] as an example.

[0096] The functions of network node i are as follows:

[0097] As an upstream node, it is responsible for maintaining the sending buffer for flow F(i,j), assigning sequence numbers to the messages in F(i,j), judging the packet loss in F(i,j) based on the message feedback message NACK sent by node j, and reallocating sequence numbers for the lost messages and retransmitting them;

[0098] As a downstream node, it has the ability to detect packet loss of flow F(i,j) based on the RPN of the received message, and supports constructing and sending a message feedback message NACK' to network node j.

[0099] The functions of network node j are as follows:

[0100] As a downstream node, it is responsible for the packet loss detection capability based on the RPN field carried in the received message in flow F(i,j), and supports the construction and sending of message feedback message NACK to network node j;

[0101] As an upstream node, it is responsible for maintaining the sending buffer for flow F(i,j), assigning sequence numbers to NACK messages as messages in flow F(i,j), judging the NACK packet loss in F(i,j) based on the message feedback message NACK' sent by node i, reallocating sequence numbers for the lost messages and retransmitting them.

[0102] The specific steps of message forwarding are as follows:

[0103] Step 1) Network node i numbers the message F(i,j) uniformly, fills in the relevant fields, and writes it into the sending buffer;

[0104] Step 2) Network node i copies messages seq(1) to seq(8) from the buffer in order and sends them. Assume that packets seq(4) and seq(6) are lost during the transmission process.

[0105] Step 3) Network node j uses a packet loss detection algorithm based on out-of-order detection to detect packet loss of seq(4) and seq(6) in flow F(i,j);

[0106] Step 4) Network node j constructs feedback message packets NACK[4] and NACK[6], puts the packets in stream F(i,j) and numbers them uniformly, and obtains seq(5) in stream F(i,j) corresponding to NACK[4] and seq(7) in stream F(i,j) corresponding to NACK[6].

[0107] Step 5) Network node j copies messages seq(3) to seq(8) from the buffer in order and sends them. Assume that seq(7) is lost during the transmission process.

[0108] Step 6) Network node i receives NACK[4], takes out the corresponding message from the cache, renumbers the message into seq(10), and updates the RPN and RP fields in the message;

[0109] Step 7) Network node i uses the out-of-order packet loss detection algorithm to detect packet loss in seq(7) in stream F(i,j), constructs a feedback message packet NACK'[7], puts the message in stream F(i,j) and assigns it a uniform number, and obtains NACK'[7] corresponding to seq(11) in stream F(i,j);

[0110] Step 8) Network node i copies messages seq(9) to seq(12) from the buffer in order and sends them;

[0111] Step 9) Network node j receives NACK'[7], takes out the corresponding message from the cache, renumbers the message into seq(10) in flow F(i,j), and updates the RPN, RP fields in the message;

[0112] Step 10) Network node j copies messages seq(9) to seq(13) from the buffer in order and sends them;

[0113] Step 11) Network node i receives NACK[6], retrieves the corresponding message from the cache, renumbers the message into seq(13), and updates the RPN and RP fields in the message;

[0114] Step 12) Network node i copies message seq(13) from the buffer in sequence and sends it.

[0115] The method of the present application designs a message forwarding method that supports packet loss detection and fast retransmission between network nodes, which can more accurately perform fast data retransmission during the forwarding process, which is conducive to achieving timeliness and pertinence of fault handling and improving data transmission reliability and efficiency.

[0116] Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present application and are not intended to limit it. Although the present application is described in detail with reference to the embodiments, a person skilled in the art should understand that any modification or equivalent replacement of the technical solution of the present application does not depart from the spirit and scope of the technical solution of the present application and should be included in the scope of the claims of the present application.

Claims

1. A message forwarding method supporting network node retransmission of packets, used to detect packet loss on a transmission link between adjacent network nodes and retransmit messages; the transmission link is used to carry message transmission between adjacent network nodes, and the transmission link includes network equipment and physical lines; Set adjacent network nodes i and j as two network nodes reachable by one hop in the network; define all messages that support the use of inter-node retransmission capability sent by network node i to network node j as a flow F(i,j), network node i is called the upstream node of flow F(i,j), and j is called the downstream node; The message forwarding method of the network node retransmission packet includes: Step 1) For messages that need to be retransmitted and whose next-hop forwarding node is j, the upstream node i uniformly numbers them to obtain message sequence numbers; fill in the message header fields: the RPN field is filled with the message sequence number, the RFID field is filled with the identifier of flow F(i,j), the RSIP field is filled with the network address of i, and the RP field is filled with the set non-retransmission identifier; write the messages into the sending buffer in sequence, copy the messages from the buffer according to the current sending rate, and send them; Step 2) Downstream node j matches the RFID field of the received message, performs packet loss detection based on the RPN field for messages belonging to the same flow F(i,j), and constructs a feedback message; the feedback message carries the message sequence number RPN, the destination address is filled in as RSIP, and is sent to the upstream node i; Step 3) Based on the received feedback message, upstream node i determines the lost message, takes the message out of the sending buffer, and reallocates the sequence number in order according to the current sequence number allocation of flow F(i,j); modifies the RPN field in the message header to the current sequence number value, sets RP to the set retransmission flag, and writes it to the sending buffer for retransmission.

2. The message forwarding method supporting network node retransmission packet according to claim 1, It is characterized in that The network node reachable by one hop of routing refers to a network node that is calculated and determined to be the next hop forwarding node of a message to be forwarded based on routing rules; The routing rules include: shortest path routing, random routing, link state-based routing and DHT routing.

3. The message forwarding method supporting network node retransmission packet according to claim 1, It is characterized in that The fields of the message header also include a reset packet flag RS field; The fields of the message header are located between the network layer basic header and the application data; The expansion method of the fields of the message header includes: using a network layer header to expand, using a transport layer header to expand, and using a network layer and a transport layer header to expand together; the network node reads, fills in, and modifies the fields of the message header; in: The RFlag field is a flag bit used to identify whether the message supports the retransmission capability between adjacent network nodes; The RFID field is a flow identifier, which is the identifier of the flow in which the message is currently located; the flow identifier is used to uniquely represent a flow F(i,j); The RPN field is a message sequence number, which is used to carry the message number in the flow F(i,j); the number space is of limited length and is uniformly numbered by the upstream node i according to the message sending order; RSIP field is the network address of the upstream node, an optional field that identifies the address information of the upstream node of the flow F(i,j) where the message is located; it is used when the downstream node sends feedback information and is filled in as the destination address; when the downstream node maintains the information locally, it does not carry the RSIP field in the message; The RP field is a retransmission packet flag, which is used to identify whether the current message is a retransmission message. When the upstream node determines that the message is to be retransmitted, the RP field in the message is first set to the set retransmission flag. For data messages with RP as the set retransmission flag, the execution strategy is supported to make the message be transmitted first. The RS field is a reset packet flag used to identify whether a flow state reset occurs. When a reset occurs, the RS field of the first message is set to the set reset flag, and the RPN is set to the set initial value. The reasons for the flow state reset include: active reset by the upstream node and restart after an upstream node failure.

4. The message forwarding method supporting network node retransmission packets according to claim 3, It is characterized in that The method for generating the flow identifier includes: directly splicing the network addresses of the upstream node and the downstream node, or using the summary value of the spliced ​​address.

5. The message forwarding method supporting network node retransmission packet according to claim 3, It is characterized in that The RPN field numbering rule is: the RPN of the first message is the set initial value, and the RPNs of subsequent messages increase in sequence. When the number allocation reaches the upper limit, it is cyclically used starting from the set initial value; the sequence number of the retransmitted message is reallocated.

6. The message forwarding method supporting network node retransmission packet according to claim 3, It is characterized in that The network node supports the following functions: Support routing and forwarding functions of common network devices; As an upstream node, it maintains a send buffer for each flow and supports using the send buffer to cache the messages in the flow; Messages are written to the buffer in sequence according to the flow forwarding rate. When the buffer is full, the buffer is deleted and updated in sequence according to the order in which the messages enter. The size of the buffer is set according to the port forwarding rate and transmission delay parameters. As an upstream node, it supports unified numbering of messages in the flow; Support reading, filling and modifying some fields of the message header; the said some fields include: destination address, RFlag, RFID, RPN, RSIP, RP and RS; Support building, parsing, sending and receiving feedback messages; Supports packet loss detection based on message sequence numbers and message retransmission based on feedback messages.

7. The message forwarding method supporting network node retransmission packets according to claim 1, It is characterized in that The packet loss detection is used by the downstream node to determine whether a packet is lost in the transmission link based on the sequence number of the message received in the flow. The packet loss detection method includes: a timeout-based detection method and a message disorder detection method.

8. The message forwarding method supporting network node retransmission packets according to claim 1, It is characterized in that The feedback message is used by the downstream node j in the flow F(i,j) to notify the upstream node i of the reception status of the message, and supports the method of constructing a feedback message message separately and carrying it in a data message; the destination address of the feedback message is filled in with the network address of node j.

9. The message forwarding method supporting network node retransmission packets according to claim 8, It is characterized in that In case of packet loss in the transmission link of feedback messages, the following methods are used to improve transmission reliability: 1) The feedback message uses the retransmission capability between network nodes, and adds the following fields to the header: RFlag, RFID, RPN, RSIP, RP, and RS; among them, the RFlag field is set to the set retransmission flag, RFID is filled in with the flag of flow F(i, j), RPN is filled in with the sequence number of the feedback message in F(i, j), RSIP is filled in with the network address of node j, RP is set to the set non-retransmission flag, and RS is set to the set non-reset flag; 2) When the upstream node receives the feedback message, it sends a reply message NACKReply to the upstream node. If the downstream node does not receive the NACKReply within the set time threshold, it resends the feedback message to the upstream node.

10. The message forwarding method supporting network node retransmission packets according to claim 1, It is characterized in that When a data packet is retransmitted: Reassign data packet sequence numbers to retransmitted messages, update the RPN field, and set the RP field to the set retransmission flag; The execution strategy makes the retransmitted message be transmitted first; the strategy includes: increasing the queue priority or adjusting the routing strategy.