CN117394953A - QUIC self-adaptive data retransmission method, device and system - Google Patents

QUIC self-adaptive data retransmission method, device and system Download PDF

Info

Publication number
CN117394953A
CN117394953A CN202311277477.XA CN202311277477A CN117394953A CN 117394953 A CN117394953 A CN 117394953A CN 202311277477 A CN202311277477 A CN 202311277477A CN 117394953 A CN117394953 A CN 117394953A
Authority
CN
China
Prior art keywords
retransmission
data packet
time slot
threshold
redundant data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311277477.XA
Other languages
Chinese (zh)
Inventor
江涛
李钊
刘洋
张宇
毕挺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN202311277477.XA priority Critical patent/CN117394953A/en
Publication of CN117394953A publication Critical patent/CN117394953A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/22Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

The invention discloses a QUIC self-adaptive data retransmission method, a device and a system, which belong to the field of wireless communication and comprise the following steps: the transmitting end generates a redundant data packet after forward error correction coding of the original data packet packaged by the QUIC protocol; the original data packet and the redundant data packet are simultaneously sent to a receiving end; wherein the redundant data packet does not set a timeout timer; the receiving end decodes the received original data packet and the redundant data packet, recovers the lost original data packet by using the redundant data packet, and feeds back the number of the received redundant data packet to the transmitting end; the sending end calculates the packet loss rate and retransmission rate of the current time slot data packet according to the network transmission state and the number of the feedback redundant data packets; and the transmitting end calculates a retransmission threshold value of the next time slot according to the packet loss rate and the retransmission rate so as to determine whether to retransmit the data. The invention can solve the problem of high communication overhead caused by excessive unnecessary data packet retransmission in QUIC link reliable data transmission.

Description

QUIC self-adaptive data retransmission method, device and system
Technical Field
The invention belongs to the field of wireless communication, and in particular relates to a QUIC self-adaptive data retransmission method, device and system.
Background
The QUIC protocol bottom layer is realized based on UDP, and has become the protocol standard of HTTP/3. The QUIC protocol is fast and solves a series of problems of TCP. Because the QUIC protocol is implemented at the application layer, the functional modules can be easily updated; however, in the QUIC protocol, the out-of-order condition of packets during transmission is more severe than TCP.
The method for detecting the packet loss commonly used at present uses a fixed number of out-of-order arrival of a threshold or a timeout event of a fixed time threshold to judge whether the data packet is lost, and uses RTO as a final means to detect the packet loss. However, the method has low flexibility, and can bring more packet loss misjudgment, so that unnecessary retransmission is caused, and further, the interaction times of the transmitting and receiving parties are increased, and extra time delay is brought, so that communication overhead is overhigh.
Disclosure of Invention
Aiming at the defects and improvement demands of the prior art, the invention provides a QUIC self-adaptive data retransmission method, a device and a system, which aim to reduce the communication overhead of data packet retransmission in the QUIC link reliable data transmission.
To achieve the above object, according to a first aspect of the present invention, there is provided a quitc adaptive data retransmission method applied to a transmitting end and a receiving end, including:
the transmitting end generates a redundant data packet after forward error correction coding of the original data packet packaged by the QUIC protocol; the original data packet and the redundant data packet are simultaneously sent to a receiving end; wherein the redundant data packet does not set a timeout timer;
the receiving end decodes the received original data packet and the redundant data packet, recovers the lost original data packet by using the redundant data packet, and feeds back the number of the received redundant data packet to the transmitting end;
the method comprises the steps that a sending end calculates the packet loss rate and the retransmission rate of a current time slot data packet according to a network transmission state and the number of redundant data packets fed back by a receiving end, wherein the network transmission state comprises the number of sent original data packets and the number of redundant data packets;
and the transmitting end calculates a retransmission threshold value of the next time slot according to the packet loss rate and the retransmission rate of the current time slot so as to determine whether to retransmit data.
Further, the transmitting end calculates a retransmission threshold of the next time slot by adopting a self-adaptive threshold algorithm according to the packet loss rate and the retransmission rate of the current time slot; wherein the adaptive threshold algorithm comprises:
if r is larger than l, and the retransmission threshold of the current time slot triggers retransmission of the original data packet, the retransmission threshold of the next time slot is increased; if r is less than or equal to l, the retransmission threshold of the next time slot is reduced.
Further, the retransmission threshold includes a retransmission time threshold and a retransmission number threshold;
if r is greater than l, and the retransmission number threshold or retransmission time threshold of the current time slot triggers retransmission of the original data packet, judging the number N of the original data packet triggered by the retransmission number threshold of the current time slot 1 And the number N of retransmission original data packets triggered by the retransmission time threshold of the current time slot 2 If N is the size of 1 >N 2 Increasing the retransmission number threshold of the next time slot, otherwise, increasing the retransmission time threshold of the next time slot; if the increased retransmission number threshold or retransmission time threshold of the next time slot exceeds a preset threshold upper limit, adopting the preset threshold upper limit as the retransmission number threshold or retransmission time threshold of the next time slot;
if r is less than or equal to l, reducing the retransmission quantity threshold value of the next time slot; or/and, reducing the retransmission time threshold of the next time slot;
and if the retransmission number threshold or retransmission time threshold of the next time slot after the reduction is lower than the preset threshold lower limit, adopting the preset threshold lower limit as the retransmission number threshold or retransmission time threshold of the next time slot.
Further, the packet loss rate l of the current time slot data packet is:
l=a*FECLoss(n)+(1-a)*FECLoss(1~n)
wherein a is a weight coefficient, the value is 0-1, FECLoss (n) is the link packet loss rate of the current time slot, and FECLoss (1-n) is the link packet loss rate accumulated by the current time slot and the previous time slot; wherein FECLOSS (n) and FECLOSS (1-n) are respectively:
acked (n) is the number of redundant data packets received by the current time slot fed back by the receiving end, and FECSent (n) is the number of redundant data packets sent by the transmitting end from the current time slot acquired from the network transmission state; acked (1-n) is the sum of the number of redundant data packets accumulatively received by the current time slot and the previous time slot fed back by the receiving end, and FECSent (1-n) is the sum of the number of redundant data packets accumulatively transmitted by the current time slot and the previous time slot acquired by the transmitting end from the network transmission state.
Further, the receiving end feeds back the number of the received redundant data packets to the transmitting end through the confirmation frame; the acknowledgement frame comprises an ACK frame and an extension field, wherein the extension field is the number of redundant data packets;
or, the acknowledgement frame is a symbol ack frame, where the symbol ack frame includes a redundant data packet number field;
or, the acknowledgement frame is a SymbolACK frame, and the SymbolACK frame includes a frame number field of the redundant data packet.
According to a second aspect of the present invention, there is provided a quitc adaptive data retransmission method, applied to a transmitting end, comprising:
the method comprises the steps of generating a redundant data packet after forward error correction coding of an original data packet packaged by a QUIC protocol; the original data packet and the redundant data packet are simultaneously sent to a receiving end; wherein the redundant data packet does not set a timeout timer;
calculating the packet loss rate and retransmission rate of the current time slot data packet according to the network transmission state and the number of redundant data packets fed back by the receiving end, wherein the network transmission state comprises the number of the transmitted original data packets and the number of the redundant data packets; the number of the redundant data packets fed back by the receiving end is the number of the received redundant data packets which are decoded by the receiving end and fed back by the receiving end;
and calculating a retransmission threshold value of the next time slot according to the packet loss rate and the retransmission rate of the current time slot so as to determine whether to retransmit data.
According to a third aspect of the present invention, there is provided a QUIC server comprising a computer readable storage medium and a processor;
the computer-readable storage medium is for storing executable instructions;
the processor is configured to read executable instructions stored in the computer readable storage medium to perform the quitc adaptive data retransmission method according to the second aspect.
According to a fourth aspect of the present invention, there is provided a quitc adaptive data retransmission method, characterized by being applied to a receiving end, comprising:
decoding the received original data packets and the redundant data packets, recovering the lost original data packets by using the redundant data packets, and feeding back the quantity of the received redundant data packets to the QUIC server; wherein, the original data packet is a data packet packaged by QUIC protocol; the redundant data packet is a data packet generated by forward error correction coding of the data packet packaged by the QUIC protocol, and the redundant data packet is not provided with a timeout timer;
the QUIC server is the QUIC server of the third aspect.
According to a fifth aspect of the present invention, there is provided a QUIC client comprising a computer readable storage medium and a processor;
the computer-readable storage medium is for storing executable instructions;
the processor is configured to read executable instructions stored in the computer readable storage medium to perform the quitc adaptive data retransmission method according to the fourth aspect.
According to a sixth aspect of the present invention, there is provided a quit adaptive data retransmission system, comprising a quit server and a quit client, wherein the quit server is the quit server according to the third aspect, and the quit client is the quit client according to the fifth aspect.
In general, through the above technical solutions conceived by the present invention, the following beneficial effects can be obtained:
(1) According to the invention, through testing, when the data packet loss rate perceived by a transmitting end is high due to serious disorder of a wireless link, the perceived packet loss rate exceeds the real packet loss rate of a network, and the inaccurate packet loss rate is adopted for packet loss judgment, so that unnecessary retransmission is caused, the interaction times of a transmitting party and a receiving party are increased, additional time delay is brought, and the communication overhead is overhigh. Meanwhile, considering the characteristic of QUIC (quick response code) that forward error correction function is easy to integrate, the method has strong pluggable property and lower protocol updating cost, the invention provides a novel QUIC self-adaptive data retransmission method, a redundant data packet is generated after forward error correction redundancy coding is carried out on original data, in the scene of forward error correction protection, the redundant data packet is used for recovering lost original data packet, and simultaneously, a timeout timer is not arranged on the additionally introduced redundant data packet, so that the redundant data packet can not trigger retransmission, the packet loss rate of a link is accurately perceived by the information of the redundant data packet fed back by a receiving end, the real packet loss rate of a network can be reflected, the packet loss rate of the redundant data packet is used as a guide, the retransmission threshold value of the next time slot of the data packet is calculated, the error judgment problem of packet loss can be reduced, the interaction times of the transmitting and receiving party and the transmitting party can be further reduced, and the communication cost is reduced.
(2) Further, when the self-adaptive threshold algorithm calculates the retransmission threshold of the next time slot, the loss condition of the redundant data packet is adopted to evaluate the wireless link state information, and when the retransmission rate r is larger than the packet loss rate l, the condition that the original data packet in the current time slot is subjected to additional retransmission is indicated, and the disorder degree of the link is larger, the retransmission threshold of the next time slot is increased, so that unnecessary data packet retransmission is reduced, the sensitivity of triggering retransmission is reduced, and the retransmission rate is reduced; otherwise, the disorder program in the network in the current time slot is reduced, the retransmission ratio of the network due to disorder is reduced, and the retransmission threshold of the next time slot is reduced at the moment, so that the transmitting end responds to the network packet loss as soon as possible.
(3) Further, when the packet loss rate l is greater than the retransmission rate r, considering that the reasons for triggering retransmission of a plurality of data packets in one time slot are different, the invention adaptively selects and increases the retransmission number threshold or retransmission time threshold of the next time slot according to the size between the original data packet loss number determined by the retransmission number threshold of the current time slot and the original data packet loss number determined by the retransmission time threshold, so that the fluctuation of the threshold is stable, the convergence of the algorithm is improved, and the calculation resource of the CPU is saved. (4) Further, when the packet loss rate l or the retransmission rate r of the current time slot is calculated, taking the characteristic of fast channel change of the wireless link into consideration, taking the packet loss rate of the current time slot as a reliable basis, weighting the statistical result of the packet loss rate in the past time, wherein the weight of the statistical result of the packet loss rate in the past time represents an unreasonable statistical result of the adoption degree of the packet loss condition in the past time slot, and further improving the precision of the packet loss rate or the retransmission rate of the wireless link.
(5) Furthermore, the invention can adopt more flexible and various confirmation modes, and when the frame number of the redundant data packet is adopted as a confirmation frame, finer confirmation granularity can be provided, and the accuracy of the packet loss rate calculation is further improved.
In summary, the method of the invention can solve the problem of too high communication overhead caused by too many unnecessary data packet retransmissions in QUIC link reliable data transmission.
Drawings
FIG. 1 is a flowchart of a QUIC adaptive data retransmission method in embodiment 1 of the present invention.
Fig. 2 is a flowchart of a QUIC adaptive data retransmission system according to embodiment 1 of the present invention.
Fig. 3 is a schematic diagram of time slot division in embodiment 1 of the present invention.
Fig. 4 is a schematic diagram of an acknowledgement frame with an extension field directly in the original ACK frame in embodiment 1 of the present invention.
Fig. 5 is a schematic diagram of a symbol ack frame according to the present invention.
Fig. 6 is a schematic diagram of another embodiment of a symbol ack frame according to the present invention.
Fig. 7 is a flowchart of updating retransmission threshold in embodiment 1 of the present invention.
Fig. 8 is a schematic diagram of transmission results compared with the original qic protocol tested in the WLAN scenario in embodiment 1 of the present invention.
Fig. 9 is a schematic diagram of a QUIC adaptive data retransmission system in embodiment 6 of the present invention.
Fig. 10 is a schematic diagram of a statistics module in embodiment 6 of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the drawings and examples, in order to make the objects, technical solutions and advantages of the present invention more apparent. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention. In addition, the technical features of the embodiments of the present invention described below may be combined with each other as long as they do not collide with each other.
Example 1
As shown in fig. 1 and fig. 2, the present invention provides a quitc adaptive data retransmission method, which is applied to a transmitting end and a receiving end; the method comprises the following steps:
s1, a transmitting end performs forward error correction coding on an original data packet to generate a redundant data packet; the original data packet and the redundant data packet are simultaneously sent to a receiving end; the original data packets are all data packets of the application layer data stream after being packed by the QUIC protocol; the redundant data packet does not set a timeout timer.
S2, the receiving end decodes the received original data packet and the redundant data packet, recovers the lost original data packet by using the redundant data packet, and generates feedback information of the redundant data packet; the receiving end feeds back feedback information of the redundant data packet to the transmitting end through the confirmation frame; wherein the feedback information of the redundant data packet includes the number of the received redundant data packets; in other embodiments, the feedback information of the redundant data packet may further include: and other feedback information such as the time of the redundant data packet received by the current time slot. In the present invention, the sequence of recovering the lost original data packet and confirming the received redundant data packet is not limited to the redundant data packet, and when the receiving end receives the redundant data packet, the receiving end can perform feedback confirmation on the received redundant data packet.
S3, the sending end calculates the packet loss rate l and the retransmission rate r of the current time slot data packet according to the network transmission state and the feedback information of the redundant data packet fed back by the receiving end, wherein the network transmission state comprises the number of the sent original data packet and the number of the redundant data packet; in other embodiments, the network transmission state further includes information such as link delay, link bandwidth, etc. of the transmitted original data packet and the redundant data packet, and calculated packet loss rate, retransmission rate, etc.
And S4, the transmitting end calculates a retransmission threshold value of the next time slot of the data packet according to the obtained packet loss rate l and retransmission rate r of the current time slot so as to evaluate the transmission state of the original data packet and further determine whether to retransmit the data.
Specifically, in S1, the forward error correction coding mode includes commonly used codewords such as a riso code and a random linear code. In the embodiment of the invention, preset k original data packets and r redundant data packets redundant through forward error correction coding are taken as a group; in the embodiment of the invention, the inner code is used as a main coding mode, and a fixed redundancy coding scheme with k of 15 and r of 3 is used. The transmitting end transmits a (k, r) packet as a Group to the receiving end through the wireless link.
Specifically, in S2, the original data packet is protected by the redundant data packet generated by encoding the original data packet, and after the receiving end receives a certain number of original data packets and redundant data packets, the lost original data packet can be recovered by using the redundant data packet. Specifically, when the sum of the number of the current original data packets and the number of the redundant data packets is not lower than the number k of the original data packets transmitted in advance, the redundant data packets are used for recovering the lost original data packets in the current packets, and the recovered original data packets are submitted to an upper application.
After all r redundant data packets of the current packet are received and confirmed, namely, the redundant data packet of the previous packet generates corresponding feedback information and sends the feedback information to a sending end; or/and, when the number of the data packet packets tracked by the receiving end exceeds the preset maximum tracked packet number MAX_TRACK_GROUP, discarding the current packet to ensure that the receiving end does not occupy excessive memory; in the embodiment of the present invention, max_track_group is set to 5000.
Specifically, as shown in fig. 3, a transmission process between a sending end and a receiving end is divided into a plurality of time slots, and each time slot has a duration of T, where T is set to K RTT durations. In the embodiment of the present invention, the sequence number of the time slot is denoted by n, and starts from 1. Let the current time slot be the nth time slot, 1-n represent the current time slot and the previous time slot, the serial number of the next time slot be n+1, the time slot of the retransmission threshold value effective calculated in S4.
Specifically, when the receiving end feeds back feedback information of the redundant data packet to the transmitting end through the acknowledgement frame, the acknowledgement frame in the embodiment of the invention comprises an ACK frame and an extension field; the extension field is a "number of redundant data packets" field, where the field indicates the number of redundant data packets that the receiving end has received, as shown in fig. 4; in other embodiments, the acknowledgement frame may also be a SymbolACK frame, where the SymbolACK frame includes only one field, that is, a "number of redundant data packets" field, for acknowledging the number of redundant data packets that the receiving end has received, as shown in fig. 5. Further, as shown in fig. 6, the subsections included in the symbol ack frame may also be "the number of frames of the redundant data packet", and with finer acknowledgement granularity, the accuracy of the packet loss rate calculation may be further improved. The method of the invention can adopt more flexible and various confirmation modes and is convenient to implement.
Specifically, in S3, calculating the packet loss rate/of the current timeslot packet includes:
s311, calculating the link packet loss rate FECLoss (n) of the current time slot in the data packet transmission process:
wherein Acked (n) is the number of redundant data packets received by the transmitting end from the current time slot acquired from the feedback information of the redundant data packets, and fe (n) is the number of redundant data packets transmitted by the transmitting end from the current time slot acquired from the network transmission state;
s312, calculating the link packet loss rate FECLoss (1-n) of the accumulation of the current time slot and the previous time slot:
wherein Acked (1-n) is the sum of the number of redundant data packets which are cumulatively received by the current time slot and the previous time slot and obtained by the sending end from the feedback information of the redundant data packets, and FECSent (1-n) is the sum of the number of redundant data packets which are cumulatively transmitted by the current time slot and the previous time slot and obtained by the sending end from the network transmission state; that is, (1 to n) represents n slots including slot 1 to slot n.
S313, carrying out weighted average on the link packet loss rate FECLOSS (n) of the current time slot and the link packet loss rates FECLOSS (1-n) accumulated by the current time slot and the previous time slot to obtain a link packet loss rate l; namely, the link packet loss rate l is:
l=a*FECLoss(n)+(1-a)*FECLoss(1~n)
wherein a is a weight coefficient, the value is 0-1, and in this embodiment, 0.5 is taken to represent the adoption level of the packet loss rate of the current time slot.
Calculating the retransmission rate r of the current time slot data packet comprises:
s321, calculating retransmission rate PktRetrans (n) of a current time slot in a data packet transmission process:
wherein, reTrans (n) is the number of retransmission original data packets Sent by the sending end from the current time slot acquired from the network transmission state, and mount (n) is the number of original data packets Sent by the sending end from the current time slot acquired from the network transmission state;
s322, calculating the accumulated retransmission rate PktRetrans (1-n) of the current time slot and the previous time slot:
wherein, reTrans (1-n) is the sum of the number of retransmission original data packets which are cumulatively transmitted by the current time slot and the previous time slot which are acquired from the network transmission state by the transmitting end, and FECSent (n) is the sum of the number of original data packets which are cumulatively transmitted by the current time slot and the previous time slot which are acquired from the network transmission state by the transmitting end.
S323, carrying out weighted average on the link retransmission rate PktRetrans (n) of the current time slot and the retransmission rates PktRetrans (1-n) accumulated in the current time slot and the previous time slot to obtain a link packet loss rate l; namely, the link packet loss rate l is:
l=β*PktRetrans(n)+(1-β)*PktRetrans(1~n)
wherein, β is a weight coefficient, and the value is 0-1, and in this embodiment, 0.5 is taken to represent the adoption level of the retransmission rate of the current time slot.
Specifically, in S4, the transmitting end calculates a retransmission threshold of a next time slot of the data packet by adopting an adaptive threshold algorithm according to the obtained packet loss rate l and retransmission rate r of the current time slot, so as to perform adaptive retransmission of the data packet; the adaptive threshold algorithm of the invention comprises the following steps:
if the retransmission rate r calculated by the current time slot is larger than the packet loss rate l, and the original data packet is lost according to the retransmission threshold value of the current time slot (namely, some or a certain data packet triggers retransmission by the retransmission threshold value of the current time slot), the retransmission threshold value of the next time slot is increased; otherwise, the retransmission threshold of the next time slot is reduced. In the embodiment of the invention, when the retransmission rate r is greater than the packet loss rate l, if no original data packet is lost according to the retransmission threshold value of the current time slot, the retransmission threshold value of the next time slot is consistent with the retransmission threshold value of the current time slot; in the embodiment of the invention, the retransmission threshold value is adaptively increased or decreased by adopting an Additive Increase and Multiplicative Decrease (AIMD) method.
The retransmission threshold of the data packet comprises a retransmission time threshold and a retransmission quantity threshold; the retransmission time threshold and the retransmission number threshold are both provided with an upper limit and a lower limit, and are always constrained within limits in the increasing and decreasing process; the upper limit and the lower limit of the retransmission time threshold and the retransmission quantity threshold are initialized when the transmitting end and the receiving end establish connection.
Specifically, as shown in fig. 7, if the retransmission rate r calculated in the current time slot is greater than the packet loss rate l, which indicates that additional retransmission occurs to the original data packet in the current time slot, the disorder degree of the link is greater, and if the number of original data packets triggered to be retransmitted according to the retransmission number threshold Dup (N) of the current time slot is N 1 Triggering the number of the retransmitted original data packets to be N according to the retransmission time threshold value of the current time slot 2 Judgment of N 1 And N 2 If N is the size of 1 >N 2 The retransmission number threshold Dup (n+1) of the next slot, that is, the retransmission number threshold Dup (n+1) of the next slot is increased to the retransmission number threshold Dup (n) of the current slot plus a preset increment γ. In the embodiment of the invention, the preset increment gamma is 1; if the increased retransmission number threshold value of the next time slot exceeds a preset threshold upper limit MaxDap, the preset threshold upper limit MaxDap is adopted as the retransmission number threshold value of the next time slot. In the embodiment of the invention, the preset threshold upper limit MaxDup is set to 6. Specifically, the retransmission number threshold Dup (n+1) of the next slot is:
Dup(n+1)=min(MaxDup,max(Dup(n)+1,MinDup))
otherwise, the retransmission time threshold of the next time slot is increased, that is, the RTT multiplying power Delay (n+1) corresponding to the retransmission time threshold of the next time slot is increased by a preset increment delta for the RTT multiplying power Delay (n) corresponding to the retransmission time threshold of the current time slot, and the preset increment delta is initialized when the transmitting end and the receiving end establish connection. If the increased retransmission time threshold of the next time slot exceeds a preset threshold upper limit MaxDelay, the preset threshold upper limit MaxDelay is adopted as the retransmission time threshold of the next time slot. In the embodiment of the present invention, the preset upper threshold MaxDelay is set to 5. Specifically, delay (n+1) is:
Delay(n+1)=min(MaxDlay,max(Delay(n)+δ,MinDelay))
updating the time threshold delayUntilLost of the next time slot according to the formula:
delayUntilLost=max(Delay(n+1)*RTT,kGranularity)
where kGranularity is the granularity of the local timer.
If the retransmission rate r calculated in the current time slot does not exceed the packet loss rate l, the network condition in the current time slot is improved, that is, the disorder program in the network is reduced, the retransmission number threshold Dup (n+1) of the next time slot is reduced, that is, the retransmission number threshold Dup (n+1) of the next time slot is the retransmission number threshold of the current time slot minus a preset increment gamma; and if the reduced retransmission number threshold value of the next time slot is lower than a preset threshold value lower limit MinDup, adopting the preset threshold value lower limit MinDup as the retransmission number threshold value of the next time slot. In the embodiment of the invention, the preset threshold lower limit MinDup is set to 3 according to the proposal of RFC. Specifically, the retransmission number threshold Dup (n+1) of the next slot is:
Dup(n+1)=min(MaxDup,max(Dup(n)/2,MinDup))
or/and, reducing the retransmission time threshold of the next time slot, namely, the RTT multiplying power Delay (n+1) corresponding to the retransmission time threshold of the next time slot is (1-delta) times of the RTT multiplying power Delay (n) corresponding to the retransmission time threshold of the current time slot, and if the reduced retransmission time threshold of the next time slot is lower than the preset threshold lower limit MinDelay, adopting the preset threshold lower limit MinDelay as the retransmission time threshold of the next time slot. In the embodiment of the invention, the preset threshold lower limit MinDelay is set to 9/8 of RFC proposal. Specifically, delay (n+1) is:
Delay(n+1)=min(MaxDlay,max(Delay(n)*(1-δ),MinDelay))
and updating the time threshold according to a time threshold delayUntilLost updating formula of the next time slot.
And after calculating the retransmission threshold of the next time slot, judging the loss of the data packet by adopting the updated retransmission threshold of the next time slot and retransmitting the data packet. Specifically, if the retransmission threshold value of the next updated time slot exceeds the timeout timer set in the original data packet, the corresponding original data packet is indicated to be lost, and retransmission is performed. In the embodiment of the invention, the initialized retransmission number threshold is 3, and the initialized retransmission time threshold is 9/8.
In the embodiment of the invention, a test experiment selects a representative WLAN scene, an end-to-end transmission network is built in a mini, and network delay, packet loss, disorder and the like are controlled by a TC tool. In order to simulate the WLAN environment, the set packet loss rate range is 0-5%, RTT is 20-30ms, link bandwidth is 25Mbps, and the file size of test transmission is 10MB. The transfer completion times were analyzed for the case of no disorder, 1% disorder, 5% disorder, each test was performed 3 times and averaged, and the results are shown in fig. 8. The original QUIC scheme in FIG. 8 is a scheme of fixing retransmission threshold in the prior art, and in the embodiment of the present invention, the retransmission number threshold of the original QUIC scheme is 3, and the retransmission time threshold is 9/8. From the results, the method provided by the invention has great advantages in reducing the transmission time, especially when the disorder degree of the link is higher.
Example 2
The embodiment of the invention also provides a QUIC self-adaptive data retransmission method which is applied to the transmitting end and comprises the following steps:
the method comprises the steps of generating a redundant data packet after forward error correction coding of an original data packet packaged by a QUIC protocol; the original data packet and the redundant data packet are simultaneously sent to a receiving end; wherein the redundant data packet does not set a timeout timer;
calculating the packet loss rate and retransmission rate of the current time slot data packet according to the network transmission state and the number of redundant data packets fed back by the receiving end, wherein the network transmission state comprises the number of the transmitted original data packets and the number of the redundant data packets; the number of the redundant data packets fed back by the receiving end is the number of the received redundant data packets which are decoded by the receiving end and fed back by the receiving end;
and calculating a retransmission threshold value of the next time slot according to the packet loss rate and the retransmission rate of the current time slot so as to determine whether to retransmit the data.
The specific implementation manner of each step is referred to the corresponding steps in the quitc adaptive data retransmission method in the above embodiment 1.
Example 3
The embodiment of the invention also provides a QUIC server, which comprises a computer readable storage medium and a processor;
the computer-readable storage medium is for storing executable instructions;
the processor is configured to read executable instructions stored in the computer readable storage medium to perform the qic adaptive data retransmission method of embodiment 2 described above.
Example 4
The embodiment of the invention also provides a QUIC self-adaptive data retransmission method which is applied to the receiving end and comprises the following steps:
decoding the received original data packets and the redundant data packets, recovering the lost original data packets by using the redundant data packets, and feeding back the quantity of the received redundant data packets to the QUIC server; wherein, the original data packet is a data packet packed by QUIC protocol; the redundant data packet is a data packet generated by forward error correction coding of a data packet packaged by the QUIC protocol, and the redundant data packet is not provided with a timeout timer;
the QUIC server is the QUIC server in example 3.
Example 5
The embodiment of the invention also provides a QUIC client, which comprises a computer readable storage medium and a processor;
the computer-readable storage medium is for storing executable instructions;
the processor is operative to read executable instructions stored in the computer readable storage medium to perform the quitc adaptive data retransmission method of embodiment 4.
Example 6
As shown in fig. 9, the embodiment of the present invention further provides a quit adaptive data retransmission system, which includes a quit server and a quit client, wherein the quit server is the quit server in embodiment 3, and the quit client is the quit client in embodiment 5. Specifically, in the embodiment of the invention, the QUIC server comprises a forward error correction coding module, a statistics module and a calculation module; the QUIC client comprises a decoding module and a feedback module;
the forward error correction coding module is used for generating a redundant data packet after forward error correction coding is carried out on the original data packet, and simultaneously transmitting the original data packet and the redundant data packet to the QUIC client;
the coding module is used for decoding the received original data packet and the redundant data packet, recovering the lost original data packet by using the redundant data packet and generating feedback information of the redundant data packet;
the feedback module is used for feeding back feedback information of the redundant data packet to the transmitting end through the confirmation frame;
the statistics module is used for counting the network transmission state and the redundant data packet information fed back by the statistics feedback module, as shown in fig. 10;
the calculation module is used for calculating the packet loss rate l and the retransmission rate r of the current time slot data packet according to the network transmission state and the feedback information of the redundant data packet fed back by the receiving end; and calculating the retransmission threshold of the next time slot of the data packet according to the obtained packet loss rate l and retransmission rate r of the current time slot.
The specific implementation manner of each module refers to the corresponding specific steps in embodiment 1, as shown in fig. 2, where the first communication node in fig. 2 is a qic server, and the second communication node is a qic client.
Example 7
The invention also provides a computer storage medium comprising a stored computer program; when the computer program is executed by the processor, the device in which the computer readable storage medium is located is controlled to execute the quit adaptive data retransmission method in embodiment 1, and/or the quit adaptive data retransmission method in embodiment 2, or/and the quit adaptive data retransmission method in embodiment 4.
According to the invention, through testing, when the data packet loss rate perceived by a transmitting end is high due to serious disorder of a wireless link, the perceived packet loss rate exceeds the real packet loss rate of a network, and the inaccurate packet loss rate is adopted for packet loss judgment, so that unnecessary retransmission is caused, the interaction times of a transmitting party and a receiving party are increased, additional time delay is brought, and the communication overhead is overhigh. Meanwhile, the QUIC self-adaptive data retransmission method has strong pluggable property and lower protocol updating cost in consideration of the characteristic of the QUIC, generates a redundant data packet after forward error correction redundancy coding is carried out on original data, recovers the lost original data packet by the redundant data packet under the scene of forward error correction protection, ensures that the redundant data packet cannot trigger retransmission by setting a timeout timer on the additionally introduced redundant data packet, accurately senses the packet loss rate of a link by using the information of the redundant data packet fed back by a receiving end, can reflect the real packet loss rate of a network, calculates the retransmission threshold value of the next time slot of the data packet by using the packet loss rate of the redundant data packet as a guide, can reduce the misjudgment problem of the lost data packet, further reduces the interaction times of the receiving and transmitting sides and reduces the communication cost.
Specifically, when the self-adaptive threshold algorithm calculates the retransmission threshold of the next time slot, the loss condition of the redundant data packet is adopted to evaluate the wireless link state information, and when the retransmission rate r is larger than the packet loss rate l, the condition that the original data packet in the current time slot is subjected to additional retransmission is indicated, and the disorder degree of the link is larger, the retransmission threshold of the next time slot is increased, so that unnecessary data packet retransmission is reduced, the sensitivity of triggering retransmission is reduced, and the retransmission rate is reduced; otherwise, the disorder program in the network in the current time slot is reduced, the retransmission ratio of the network due to disorder is reduced, and the retransmission threshold of the next time slot is reduced at the moment, so that the transmitting end responds to the network packet loss as soon as possible.
When the packet loss rate l or the retransmission rate r of the current time slot is calculated, the characteristic of fast change of the wireless link channel is considered, the packet loss rate of the current time slot is used as a reliable basis, the statistical result of the packet loss rate in the past time is weighted, the weight of the statistical result of the packet loss rate in the past time represents the statistical result of the unreasonable adoption degree of the packet loss condition in the past time slot, and the precision of the packet loss rate or the retransmission rate of the wireless link is further improved.
It will be readily appreciated by those skilled in the art that the foregoing description is merely a preferred embodiment of the invention and is not intended to limit the invention, but any modifications, equivalents, improvements or alternatives falling within the spirit and principles of the invention are intended to be included within the scope of the invention.

Claims (10)

1. The QUIC adaptive data retransmission method is characterized by being applied to a transmitting end and a receiving end and comprising the following steps:
the transmitting end generates a redundant data packet after forward error correction coding of the original data packet packaged by the QUIC protocol; the original data packet and the redundant data packet are simultaneously sent to a receiving end; wherein the redundant data packet does not set a timeout timer;
the receiving end decodes the received original data packet and the redundant data packet, recovers the lost original data packet by using the redundant data packet, and feeds back the number of the received redundant data packet to the transmitting end;
the method comprises the steps that a sending end calculates the packet loss rate and the retransmission rate of a current time slot data packet according to a network transmission state and the number of redundant data packets fed back by a receiving end, wherein the network transmission state comprises the number of sent original data packets and the number of redundant data packets;
and the transmitting end calculates a retransmission threshold value of the next time slot according to the packet loss rate and the retransmission rate of the current time slot so as to determine whether to retransmit data.
2. The method of claim 1, wherein the transmitting end calculates a retransmission threshold of a next time slot by adopting an adaptive threshold algorithm according to the packet loss rate and retransmission rate of a current time slot; wherein the adaptive threshold algorithm comprises:
if r is larger than l, and the retransmission threshold of the current time slot triggers retransmission of the original data packet, the retransmission threshold of the next time slot is increased; if r is less than or equal to l, the retransmission threshold of the next time slot is reduced.
3. The method of claim 2, wherein the retransmission threshold comprises a retransmission time threshold and a retransmission number threshold;
if r is greater than l, and the retransmission number threshold or retransmission time threshold of the current time slot triggers retransmission of the original data packet, judging the number N of the original data packet triggered by the retransmission number threshold of the current time slot 1 And the number N of retransmission original data packets triggered by the retransmission time threshold of the current time slot 2 If N is the size of 1 >N 2 Increasing the retransmission number threshold of the next time slot, otherwise, increasing the retransmission time threshold of the next time slot;
if the increased retransmission number threshold or retransmission time threshold of the next time slot exceeds a preset threshold upper limit, adopting the preset threshold upper limit as the retransmission number threshold or retransmission time threshold of the next time slot;
if r is less than or equal to l, reducing the retransmission quantity threshold value of the next time slot; or/and, reducing the retransmission time threshold of the next time slot;
and if the retransmission number threshold or retransmission time threshold of the next time slot after the reduction is lower than the preset threshold lower limit, adopting the preset threshold lower limit as the retransmission number threshold or retransmission time threshold of the next time slot.
4. A method according to any one of claims 1-3, wherein the packet loss rate/of the current timeslot packet is:
l=a*FECLoss(n)+(1-a)*FECLoss(1~n)
wherein a is a weight coefficient, the value is 0-1, FECLoss (n) is the link packet loss rate of the current time slot, and FECLoss (1-n) is the link packet loss rate accumulated by the current time slot and the previous time slot; wherein FECLOSS (n) and FECLOSS (1-n) are respectively:
acked (n) is the number of redundant data packets received by the current time slot fed back by the receiving end, and FECSent (n) is the number of redundant data packets sent by the transmitting end from the current time slot acquired from the network transmission state; acked (1-n) is the sum of the number of redundant data packets accumulatively received by the current time slot and the previous time slot fed back by the receiving end, and FECSent (1-n) is the sum of the number of redundant data packets accumulatively transmitted by the current time slot and the previous time slot acquired by the transmitting end from the network transmission state.
5. A method according to any one of claims 1-3, wherein the receiving end feeds back the number of received redundant data packets to the transmitting end via acknowledgement frames; the acknowledgement frame comprises an ACK frame and an extension field, wherein the extension field is the number of redundant data packets;
or, the acknowledgement frame is a symbol ack frame, where the symbol ack frame includes a redundant data packet number field;
or, the acknowledgement frame is a SymbolACK frame, and the SymbolACK frame includes a frame number field of the redundant data packet.
6. The QUIC adaptive data retransmission method is characterized by being applied to a transmitting end and comprising the following steps of:
the method comprises the steps of generating a redundant data packet after forward error correction coding of an original data packet packaged by a QUIC protocol; the original data packet and the redundant data packet are simultaneously sent to a receiving end; wherein the redundant data packet does not set a timeout timer;
calculating the packet loss rate and retransmission rate of the current time slot data packet according to the network transmission state and the number of redundant data packets fed back by the receiving end, wherein the network transmission state comprises the number of the transmitted original data packets and the number of the redundant data packets; the number of the redundant data packets fed back by the receiving end is the number of the received redundant data packets which are decoded by the receiving end and fed back by the receiving end;
and calculating a retransmission threshold value of the next time slot according to the packet loss rate and the retransmission rate of the current time slot so as to determine whether to retransmit data.
7. A quitc server comprising a computer readable storage medium and a processor;
the computer-readable storage medium is for storing executable instructions;
the processor is configured to read executable instructions stored in the computer readable storage medium to perform the quitc adaptive data retransmission method as claimed in claim 6.
8. The QUIC adaptive data retransmission method is characterized by being applied to a receiving end and comprising the following steps:
decoding the received original data packets and the redundant data packets, recovering the lost original data packets by using the redundant data packets, and feeding back the quantity of the received redundant data packets to the QUIC server; wherein, the original data packet is a data packet packaged by QUIC protocol; the redundant data packet is a data packet generated by forward error correction coding of the data packet packaged by the QUIC protocol, and the redundant data packet is not provided with a timeout timer;
the QUIC server is the QUIC server of claim 7.
9. A quitc client comprising a computer readable storage medium and a processor;
the computer-readable storage medium is for storing executable instructions;
the processor is configured to read executable instructions stored in the computer readable storage medium to perform the quitc adaptive data retransmission method as claimed in claim 8.
10. A quit adaptive data retransmission system, characterized by comprising a quit server and a quit client, the quit server being the quit server of claim 7, the quit client being the quit client of claim 9.
CN202311277477.XA 2023-09-27 2023-09-27 QUIC self-adaptive data retransmission method, device and system Pending CN117394953A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311277477.XA CN117394953A (en) 2023-09-27 2023-09-27 QUIC self-adaptive data retransmission method, device and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311277477.XA CN117394953A (en) 2023-09-27 2023-09-27 QUIC self-adaptive data retransmission method, device and system

Publications (1)

Publication Number Publication Date
CN117394953A true CN117394953A (en) 2024-01-12

Family

ID=89469335

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311277477.XA Pending CN117394953A (en) 2023-09-27 2023-09-27 QUIC self-adaptive data retransmission method, device and system

Country Status (1)

Country Link
CN (1) CN117394953A (en)

Similar Documents

Publication Publication Date Title
US10931410B2 (en) Network-based real-time video transmission method and device
JP4016387B2 (en) Data flow control method
US7904777B2 (en) Method and system for generating block acknowledgements in wireless communications
US6622172B1 (en) Dynamically delayed acknowledgement transmission system
US6289054B1 (en) Method and systems for dynamic hybrid packet loss recovery for video transmission over lossy packet-based network
US8171365B2 (en) Communication apparatus and method thereof
CN105450357A (en) Adjustment method of encoding parameters, adjustment device of encoding parameters, processing method of feedback information and processing device of feedback information
EP1856813A2 (en) Block ack protocols for wireless packet network
CA2539367A1 (en) Loss tolerant transmission control protocol
CN114024914A (en) Video data transmission method and device and electronic equipment
CN114337928A (en) Real-time video transmission method based on ARQ and FEC self-adaptive selection
US20100162070A1 (en) Method and apparatus for optimizing a retry limit for multimedia systems that are prone to errors
Canton et al. End-to-end reliability in UMTS: TCP over ARQ
CN109560897B (en) TCP retransmission method and device
EP3890431A2 (en) Tcp acknowledgment latency optimization
JP2004080070A (en) Data transfer method, data transfer system and content distribution system
KR100278288B1 (en) Wireless packet retransmission method using multiple response signals in wireless communication system
CN117394953A (en) QUIC self-adaptive data retransmission method, device and system
CN116346952A (en) Transmission protocol parameter adjustment method, device, equipment and storage medium
CN113541885A (en) Transmission performance protection method and system
Ma et al. Improving TCP robustness under reordering network environment
CN115085865B (en) KCP protocol-based radar digital video low-delay high-reliability transmission method
KR100419279B1 (en) Indirect acknowledgement method in snoop protocol and packet transmission apparatus in an integrated network using the same method
Rossi et al. On the delay statistics of an aggregate of SR-ARQ packets over Markov channels with finite round-trip delay
JP2000059347A (en) Method and device for radio communication

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination