WO2017118239A1 - 数据包的无线传输跨层优化方法及装置 - Google Patents

数据包的无线传输跨层优化方法及装置 Download PDF

Info

Publication number
WO2017118239A1
WO2017118239A1 PCT/CN2016/107545 CN2016107545W WO2017118239A1 WO 2017118239 A1 WO2017118239 A1 WO 2017118239A1 CN 2016107545 W CN2016107545 W CN 2016107545W WO 2017118239 A1 WO2017118239 A1 WO 2017118239A1
Authority
WO
WIPO (PCT)
Prior art keywords
layer
value
data packet
rtt
rto
Prior art date
Application number
PCT/CN2016/107545
Other languages
English (en)
French (fr)
Inventor
姚忻
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2017118239A1 publication Critical patent/WO2017118239A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0273Traffic management, e.g. flow control or congestion control adapting protocols for flow control or congestion control to wireless environment, e.g. adapting transmission control protocol [TCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • 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
    • H04L1/1664Details of the supervisory signal the supervisory signal being transmitted together with payload signals; piggybacking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0289Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/04Error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/02Data link layer protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/06Transport layer protocols, e.g. TCP [Transport Control Protocol] over wireless

Definitions

  • the present disclosure relates to the field of wireless communication transmission performance and control technologies, for example, to a wireless transmission cross-layer optimization method and apparatus for data packets.
  • the Transmission Control Protocol was originally designed for wired networks with bit error rates less than 10-8.
  • the main cause of packet loss is network congestion, and packet loss due to link errors is extremely rare.
  • packet loss due to link errors is extremely rare.
  • wireless link errors can also result in data loss.
  • changes in the wireless channel environment, changes in cell load, cell handover, channel burst interference, and user mobility often lead to packet loss due to wireless link errors, that is, bit error rates are sometimes provided. 10-6 wireless channels are more difficult, not to mention less than 10-8 bit error rate.
  • the TCP congestion control since the TCP protocol infers the loss of data according to the repeated response or timeout, when the data loss is caused by a link error, if the TCP congestion control is still called, the data transmission rate will be reduced, the throughput will decrease, and the delay will be increased. Wait. In addition, TCP congestion control will cause large fluctuations in data transmission rate, and bandwidth utilization is not very high. And this large rate fluctuation is also not conducive to the estimation of the round trip delay in the wireless network. In addition, the TCP congestion control also includes fast retransmission, and the automatic repeat reQuest (ARQ) and Hybrid Automatic Repeat reQuest (HARQ) and the application layer have redundant data at the air interface protocol layer. Therefore, this will seriously waste bandwidth resources and reduce the effective throughput of the network system.
  • ARQ automatic repeat reQuest
  • HARQ Hybrid Automatic Repeat reQuest
  • the present disclosure provides a cross-layer optimization method and apparatus for wireless transmission of data packets, which reduces TCP layer call congestion control caused by packet loss caused by a wireless link error, causing a decrease in data transmission rate and a decrease in throughput. Increased delays, large fluctuations in data transmission rates, high bandwidth utilization, and severe waste of bandwidth resources.
  • the method for wirelessly transmitting cross-layer optimization of a data packet includes:
  • the packet data convergence protocol PDCP layer receives the data packet sent by the transmission control protocol TCP layer and forwards it. Giving the RLC layer of the Radio Link Control Protocol;
  • the PDCP layer determines that the mode of the RLC layer of the data packet is the acknowledge mode AM, and the PDCP layer determines that it is within the approximate value D of the TCP layer retransmission timeout time RTO value, the When the ACK of the return of the data packet sent by the RLC layer is confirmed, an acknowledgment ACK of the data packet is constructed and transmitted to the TCP layer.
  • the method further includes:
  • the RTO value is calculated by the PDCP layer according to an RTT (Round Trip Time) value of a historical data packet, where r is greater than 0 and less than 1.
  • the calculation formula of calculating the RTT value of the historical data packet by the PDCP layer is:
  • T2 T1-T0;
  • T4 T3-T1;
  • the T0 is a timestamp when the TCP layer sends the historical data packet in the historical data packet when the TCP layer sends the historical data packet to the PDCP layer;
  • the T1 is a time when the historical data packet arrives at the PDCP layer
  • the T3 is a time when the PDCP layer receives the ACK of the historical data packet.
  • the RTO value is obtained by smoothing the RTT value.
  • smoothing the RTT value to obtain the RTO value is:
  • RTTs (1-a)*RTTs_old+a*RTT;
  • RTTd (1-b)*RTTd_old+b*
  • the RTTs are current smooth RTT values
  • the RTTs_old is a historical smooth RTT value
  • the RTTd is a current RTT average deviation value
  • the RTTd_old is a historical RTT average deviation value
  • the a is greater than 0 and less than 1, and the b is greater than 0 and less than 1.
  • the method further includes: the TCP layer detects, by using a timer, whether the acknowledgement ACK of the data packet sent by the RLC layer is received within an approximation D of the TCP layer RTO value.
  • the present disclosure provides a wireless transmission cross-layer optimization apparatus for a data packet, including:
  • Receiving and forwarding unit configured to receive a data packet sent by the TCP layer and forward it to the RLC layer;
  • a judgment constructing unit configured to: when it is determined that the mode of the RLC layer of the data packet is AM, and determine that the data packet sent by the RLC layer is not received within an approximation D of the TCP layer RTO value When the ACK is acknowledged, an acknowledgment ACK of the data packet is constructed and transmitted to the TCP layer.
  • the device further includes:
  • a calculating unit configured to calculate an approximate value D of the TCP layer RTO value
  • the RTO value is calculated by the PDCP layer according to an RTT value of a historical data packet, where r is greater than 0 and less than 1.
  • the calculating unit is further configured to calculate an RTT value of the historical data packet
  • the calculation formula of the RTT value of the historical data packet is:
  • T2 T1-T0;
  • T4 T3-T1;
  • the T0 is a timestamp when the TCP layer sends the historical data packet to the PDCP layer, when the TCP layer sends the historical data packet in the historical data packet;
  • the T1 is a time when the historical data packet arrives at the PDCP layer
  • the T3 is a time when the PDCP layer receives the ACK of the historical data packet.
  • the calculating unit is further configured to perform smoothing on the RTT value to obtain the RTO value.
  • the calculating unit performs smoothing processing on the RTT value to obtain a calculation formula of the RTO value:
  • RTTs (1-a)*RTTs_old+a*RTT;
  • RTTd (1-b)*RTTd_old+b*
  • the RTTs are current smooth RTT values
  • the RTTs_old is a historical smooth RTT value
  • the RTTd is a current RTT average deviation value
  • the RTTd_old is a historical RTT average deviation value
  • the a is greater than 0 and less than 1, and the b is greater than 0 and less than 1.
  • the device further includes:
  • the timer unit is configured to detect, by the timer timing, within the approximate value D of the TCP layer RTO value, whether the TCP layer receives the acknowledgement ACK of the data packet sent by the RLC layer.
  • the present disclosure also provides a non-transitory computer readable storage medium storing computer executable instructions arranged to perform the above method.
  • the present disclosure determines, by the PDCP layer, that the mode of the RLC layer of the data packet is AM, and the PDCP layer determines that within the approximation D of the TCP layer RTO value, when the acknowledgement ACK of the data packet sent by the RLC layer is not received, the structure is constructed.
  • the acknowledgement ACK of the data packet is transmitted to the TCP layer, thereby preventing the network layer from being congested due to the TCP layer not receiving the acknowledgement ACK of the data packet within the RTO value time, and then calling the data transmission rate caused by the congestion control.
  • the method and apparatus for wireless transmission cross-layer optimization of the data packet of the present disclosure can accurately estimate the RTT value of the TCP layer in the PDCP layer, obtain an RTO value which is very similar to the RTO value of the TCP layer, and pass the RTT value.
  • the smoothing process can avoid the fluctuation of the RTT value calculated in a short time interval due to the error of the wireless link, and avoid the retransmission of the data packet caused by the fluctuation of the RTO value calculated by the RTT value, thereby improving
  • the stability of data transmission optimizes network status.
  • the TCP layer and the RLC layer protocol interface may not be modified, and the method and the device are compatible with the related network environment, and the data receiver is in the TCP layer and The RLC layer can normally receive the data packet without returning any changes and return an acknowledgement ACK for the data packet.
  • FIG. 1 is a schematic flow chart of a first embodiment of a method for wireless transmission cross-layer optimization of a data packet according to the present disclosure
  • FIG. 2 is a schematic flow chart of a second embodiment of a wireless transmission cross-layer optimization method for a data packet according to the present disclosure
  • FIG. 3 is a schematic flowchart of a RTT value calculation process in a first embodiment and a second embodiment of a wireless transmission cross-layer optimization method for a data packet according to the present disclosure
  • FIG. 4 is a schematic flowchart diagram of a third embodiment of a wireless transmission cross-layer optimization method for a data packet according to the present disclosure
  • FIG. 5 is a schematic diagram of functional modules of a first embodiment of a wireless transmission cross-layer optimization apparatus for a data packet of the present disclosure
  • FIG. 6 is a schematic diagram of functional modules of a second embodiment of a wireless transmission cross-layer optimization apparatus for a data packet of the present disclosure
  • FIG. 7 is a schematic diagram of functional modules of a third embodiment of a wireless transmission cross-layer optimization apparatus for a data packet of the present disclosure
  • FIG. 8 is a schematic diagram of an application scenario of a wireless transmission cross-layer optimization apparatus for a data packet of the present disclosure
  • FIG. 9 is a schematic diagram of functional modules in an embodiment of a wireless transmission cross-layer optimization device application scenario of a data packet according to the present disclosure.
  • FIG. 1 is a schematic flowchart diagram of a first embodiment of a wireless transmission cross-layer optimization method for data packets.
  • the Packet Data Convergence Protocol (PDCP) layer receives the data packet sent by the TCP layer and forwards it to the Radio Link Control Protocol (RLC) layer.
  • RLC Radio Link Control Protocol
  • the PDCP layer receives the data packet sent by the upper layer of the PDCP layer, that is, the TCP layer, and transmits the data packet to the lower layer of the PDCP layer, that is, the RLC layer, and the RLC layer is responsible for transmitting the data packet to the receiver through the wireless link.
  • step 120 when the PDCP layer determines that the mode of the RLC layer of the data packet is an Acknowledged Mode (AM), and the PDCP layer retransmits the timeout period at the TCP layer.
  • the PDCP layer determines that the mode of the RLC layer of the data packet is an Acknowledged Mode (AM)
  • the PDCP layer retransmits the timeout period at the TCP layer.
  • D of the (Retransmission Timeout, RTO) value when the acknowledgment (Acknowledge, ACK) of the packet transmitted by the RLC layer is not received, the ACK of the data packet is constructed and transmitted to the TCP layer.
  • the PDCP layer determines that the RLC layer of the data packet is the start timing of the AM. Within the approximate value D of the TCP layer RTO value, if the PDCP layer fails to receive the ACK of the data packet from the RLC layer, the PDCP layer constructs the ACK of the data packet. And sent to the TCP layer.
  • the TCP layer determines whether the data packet has been lost by receiving an ACK of the TCP layer to transmit a data packet, it is determined whether the network is congested and whether congestion control is invoked.
  • the PDCP layer can construct an ACK of the data packet and transmit it to the TCP layer before the TCP layer determines that the data packet is lost, thereby avoiding a decrease in the data transmission rate caused by the TCP layer call congestion control, and the throughput is decreased, and the delay is delayed. Increased, large fluctuations in data transmission rate, and serious waste of bandwidth resources, etc., improve the stability of wireless network data transmission.
  • the above step 120 is performed in the case where it is determined that the RLC layer mode of the data packet is only AM, the reliability of the data packet transmission is ensured.
  • FIG. 2 is a schematic flowchart diagram of a second embodiment of a wireless transmission cross-layer optimization method for data packets. As shown in FIG. 2, based on the foregoing embodiment of FIG. 1, the process of step 120 includes:
  • step 210 it is determined whether the RLC layer of the data packet is AM.
  • the PDCP layer determines the RLC layer mode of the data packet. If it is determined that the RLC layer mode is an Unacknowledged Mode (UM) or a Transparent Mode (TM), then the process jumps to step 260 to complete the transmission task of the data packet; if it is determined that the RLC layer mode is AM, then Go to step 220.
  • UM Unacknowledged Mode
  • TM Transparent Mode
  • step 220 it is determined whether an ACK of the data packet is received. That is, it is determined whether the PDCP layer receives an ACK of the data packet from the RLC layer. If the ACK of the data packet is received, it is determined that the ACK of the data packet is received, and the process jumps to step 250; if the ACK of the data packet is not received, step 230 is performed.
  • step 230 it is determined whether it has timed out. That is, the PDCP layer determines whether the time from the start of step 210 to the execution of the current step 230 has exceeded the approximate value D of the TCP layer RTO value. If not, go to step 220 and wait and determine if the ACK of the packet is received; if yes, go to step 240.
  • step 240 an ACK for the data packet is constructed.
  • the PDCP layer determines that the RLC layer mode of the data packet belongs to AM, and the PDCP layer is in the TCP layer RTO.
  • the ACK of the packet is also not received within the approximation D of the value, that is, it is presumed that the packet has been corrupted during the transmission of the radio link.
  • the PDCP layer will construct an ACK for the packet and perform step 250.
  • step 250 an ACK is sent to the TCP layer.
  • the PDCP layer transmits the ACK of the data packet to the upper layer of the PDCP layer, that is, the TCP layer.
  • step 260 the transmission task of the data packet is ended.
  • the TCP layer determines whether the data packet has been lost by receiving an ACK of the data packet, it determines whether the network is congested and whether congestion control is invoked.
  • the PDCP layer can be configured to construct an ACK of the data packet and transmit it to the TCP layer before the TCP layer determines that the data packet is lost, thereby avoiding a decrease in the data transmission rate and a decrease in throughput due to the TCP layer calling congestion control.
  • the delay is increased, the data transmission rate is greatly fluctuated, and the bandwidth resource is seriously wasted, which improves the stability of wireless network data transmission.
  • the RLC layer mode of the data packet is only in the case where the mode of the RLC layer is AM, the above steps 220 to 250 are performed, thereby ensuring the reliability of transmission of the data packet.
  • the approximate time D of the TCP layer RTO value is calculated as:
  • the RTO value is calculated by the PDCP layer according to the Round Trip Time (RTT) value of the historical data packet, and r is greater than 0 and less than 1.
  • RTT Round Trip Time
  • r is set to 0.9.
  • the execution of the above step 250 is performed before the arrival of the RTO value of the TCP layer, thereby avoiding the TCP layer calling congestion control.
  • the optional value 0.9 of r enables the PDCP layer to perform the above step 240 at a time before the RTO value of the TCP layer as close as possible, thereby avoiding interference to normal data transmission.
  • the step of calculating, by the PDCP layer, the RTT value of the historical data packet is referred to FIG. 3.
  • step 310 the arrival time T1 of the historical data packet is recorded, that is, the PDCP layer records the time T1 at which the historical data packet is transmitted from the TCP layer to the PDCP layer.
  • step 320 the timestamp T0 of the historical data packet is parsed. That is, the historical data packet is parsed, and the time stamp T0 sent by the historical data packet from the TCP layer to the PDCP layer is obtained.
  • step 340 the ACK arrival time T3 of the historical data packet is recorded, that is, the PDCP layer records the time T3 at which the ACK of the historical data packet is received from the RLC layer.
  • T1 is the time when the historical data packet is transmitted from the TCP layer to the PDCP layer
  • T2 is the historical data packet.
  • T4 is the time at which the historical data packet is sent at the PDCP layer until the historical data packet ACK is received. Therefore, by using T2 and T4, and the RTT value calculation formula of the above step 360, the RTT value of the TCP layer can be accurately estimated in the PDCP layer, thereby obtaining an RTO value which is very similar to the RTO value of the TCP layer. That is, the TCP layer may not transmit the RTO value of the TCP layer to the PDCP layer, thereby avoiding modification of the TCP layer protocol interface, which reduces the difficulty and complexity of development.
  • the RTO value is obtained by smoothing the RTT value of the data packet calculated by the PDCP layer.
  • calculation formula of the smoothing process is:
  • RTTs (1-a)*RTTs_old+a*RTT
  • RTTd (1-b)*RTTd_old+b*
  • RTTs is the current smooth RTT value
  • RTTs_old is the historical value of the smooth RTT value
  • RTTd is the current RTT average deviation value
  • the RTTd_old is the historical value of the RTT average deviation value
  • the a is greater than 0 and less than 1, and the b is greater than 0 and less than 1.
  • a is set to 0.125 and the b is set to 0.25.
  • the initial value of RTTs_old is set to the current RTT value, and the initial value of the RTTd_old is set to be one-half of the current RTT value.
  • the RTTs_old value is updated to the current RTTs value
  • the RTTd_old value is updated to the current RTTd value.
  • the optional value 0.125 of the parameter a indicates that the smoothing method will greatly utilize the historical value RTTs_old of the smooth RTT value, and the optional value 0.25 of the same parameter b indicates that the smoothing method will greatly utilize the RTT average deviation value.
  • the historical value of RTTd_old ensures that the smoothing process is as undisturbed as possible from fluctuations in the current RTT value.
  • the RTO value not only takes into account the smooth RTT value RTTs, but also considers the use of the RTT average deviation value RTTd, and the weight of the RTT average deviation value is greater than the weight of the smooth RTT value.
  • the calculation of the RTO value also takes into account the impact of the RTT average deviation value RTTd on the RTO value, and the RTT average deviation value RTTd is the parameter of the RTT value variation amplitude, that is, the RTO value will also change with the change of the RTT value, thereby
  • the RTO value can be adapted to changes in the network transmission rate.
  • FIG. 4 is a schematic flowchart diagram of a third embodiment of a method for wireless transmission cross-layer optimization of a data packet. Based on the embodiment of FIG. 2, the step 230 can be implemented in the manner of a timer.
  • step 231 is executed to start the timer of the data packet.
  • step 232 is performed to determine whether the timer count exceeds the approximate value D of the TCP layer RTO value. If it is determined that the timer does not exceed the approximation D, the process jumps to step 220 to determine whether the ACK of the data packet is received. If it is determined that the timer count exceeds the approximation D, step 240 is performed.
  • step 230 the processing of step 230 can be made relatively simple while making full use of the parameters of the TCP/IP protocol and system resources.
  • the TCP layer and the RLC layer may not be modified or changed, ensuring compatibility of the method with the relevant network environment, and the data receiver is in the TCP layer and the RLC.
  • the layer can receive packets normally without any changes. Returns the ACK of this packet. At the same time, this method also reduces the difficulty and complexity of the development of the method.
  • the wireless transmission cross-layer optimization method in the first embodiment of the wireless transmission cross-layer optimization method of the above disclosed data packet may be optimized by the wireless transmission cross-layer provided by the first embodiment of the wireless transmission cross-layer optimization apparatus of the disclosed data packet The device is implemented.
  • a first embodiment of a wireless transmission cross-layer optimization apparatus for a data packet of the present disclosure provides a wireless transmission cross-layer optimization apparatus, the apparatus comprising: a receiving and transmitting unit 100 and a judgment constructing unit 200.
  • the receiving and transmitting unit 100 is configured to receive the data packet sent by the TCP layer processing module 33 by the PDCP layer processing module 32, and forward the data packet to the RLC layer processing module 31.
  • the judgment constructing unit 200 is configured to determine that the mode of the RLC layer of the data packet is AM when the PDCP layer determines, and the PDCP layer determines that the ACK of the data packet transmitted by the RLC layer is not received within the approximate value D of the TCP layer RTO value.
  • the ACK of the data packet is constructed and transmitted to the TCP layer.
  • the judgment constructing unit 200 of the PDCP layer constructs the ACK of the data packet before the TCP layer judges the data packet loss and transmitting it to the TCP layer, the data transmission rate caused by the TCP layer call congestion control is prevented from being lowered, the throughput is decreased, and the delay is added. Large, large fluctuations in data transmission rate, and serious waste of bandwidth resources, etc., improve the stability of wireless network data transmission.
  • the wireless transmission cross-layer optimization method in the first embodiment or the second embodiment of the wireless transmission cross-layer optimization method of the above disclosed data packet may be provided by the second embodiment of the wireless transmission cross-layer optimization apparatus of the disclosed data packet
  • the wireless transmission is implemented by a cross-layer optimization device.
  • a second embodiment of a wireless transmission cross-layer optimization apparatus for a data packet of the present disclosure provides a wireless transmission cross-layer optimization apparatus.
  • the apparatus further includes a calculation unit 300 based on the embodiment shown in FIG.
  • the calculating unit 300 is configured to calculate an approximate value D of the TCP layer RTO value
  • the approximate value D is calculated as:
  • the RTO value is calculated by the PDCP layer according to the RTT value of the historical data packet, and the r is greater than 0 and less than 1.
  • r is set to 0.9.
  • the above-mentioned judgment constructing unit 200 constructs an ACK of the packet before the TCP layer judges that the packet is lost and transmits it to the TCP layer. And avoid the TCP layer calling congestion control.
  • An optional value of 0.9 of r enables the PDCP layer to perform the process of determining the construction unit 200 as close as possible to the RTO value of the TCP layer, thereby avoiding interference to normal data transmission.
  • the computing unit 300 is further configured to calculate an RTT value of the historical data packet.
  • calculation formula of the RTT value of the historical data packet is:
  • T2 T1-T0;
  • T4 T3-T1;
  • the T0 is a timestamp when the TCP layer sends the historical data packet to the PDCP layer, when the TCP layer sends the historical data packet in the historical data packet;
  • the T1 is a time when the historical data packet arrives at the PDCP layer
  • the T3 is a time when the PDCP layer receives the ACK of the historical data packet.
  • the RTT value of the TCP layer can be accurately estimated in the PDCP layer, and an RTO value which is very similar to the RTO value of the TCP layer is obtained. That is, the TCP layer does not need to transmit the RTO value of the TCP layer to the PDCP layer, which avoids modifying the interface of the TCP layer, thereby reducing the difficulty and complexity of development.
  • the calculating unit 300 is further configured to perform smoothing on the RTT value to obtain the RTO value.
  • the RTO value of the TCP layer can be estimated in the PDCP layer, and the fluctuation of the RTT value caused by the error of the wireless link can be avoided, and the judgment caused by the fluctuation of the RTO value calculated by the RTT value can be avoided.
  • the interference of the construction unit 200, and thus the retransmission of the data packet by the TCP layer, improves the stability of the data transmission and optimizes the network state.
  • the calculating unit 300 performs smoothing processing on the RTT value to obtain a calculation formula of the RTO value:
  • RTTs (1-a)*RTTs_old+a*RTT;
  • RTTd (1-b)*RTTd_old+b*
  • the RTTs are current smooth RTT values
  • the RTTs_old is a historical smooth RTT value
  • the RTTd is a current RTT average deviation value
  • the RTTd_old is a historical RTT average deviation value
  • the a is greater than 0 and less than 1.
  • the b is greater than 0 and less than 1.
  • a is set to 0.125 and the b is set to 0.25.
  • the initial value of RTTs_old is set to the current RTT value, and the initial value of the RTTd_old is set to be one-half of the current RTT value.
  • the RTTs_old value is updated to the current RTTs value
  • the RTTd_old value is updated to the current RTTd value.
  • the optional value 0.125 of the parameter a indicates that the smoothing method will greatly utilize the historical value RTTs_old of the smooth RTT value, and the optional value 0.25 of the same parameter b indicates that the smoothing method will greatly utilize the RTT average deviation value.
  • the historical value of RTTd_old ensures that the smoothing process is as undisturbed as possible from fluctuations in the current RTT value.
  • the RTO value not only takes into account the smooth RTT value RTTs, but also considers the use of the RTT average deviation value RTTd, and the weight of the RTT average deviation value is greater than the weight of the smooth RTT value.
  • the calculation of the RTO value also takes into account the impact of the RTT average deviation value RTTd on the RTO value, and the RTT average deviation value RTTd is the parameter of the RTT value variation amplitude, that is, the RTO value will also change with the change of the RTT value, thereby
  • the RTO value can be adapted to changes in the network transmission rate.
  • the wireless transmission cross-layer optimization method in the third embodiment of the wireless transmission cross-layer optimization method of the above disclosed data packet may be optimized by the third embodiment of the wireless transmission cross-layer optimization apparatus of the disclosed data packet.
  • the device is implemented.
  • a third embodiment of a wireless transmission cross-layer optimization apparatus for a data packet of the present disclosure provides a wireless transmission cross-layer optimization apparatus. Based on the embodiment shown in FIG. 6, the apparatus further includes a timer unit 400.
  • the timer unit 400 is arranged to detect, within the approximation D of the TCP layer RTO value, by the timer, whether the TCP layer receives the ACK of the data packet transmitted by the RLC layer.
  • the processing of the judgment constructing unit 200 and the calculating unit 300 can be made relatively simple.
  • the processing steps of the above processing unit are all processed at the PDCP layer, it may not be correct.
  • the TCP layer and the RLC layer are modified or changed to ensure compatibility of the device with the relevant network, and the data receiver can normally receive the data packet and return the ACK of the data packet without any modification. At the same time, this also reduces the difficulty and complexity of the development of the device.
  • FIG. 8 illustrates an application scenario of a wireless transmission cross-layer optimization apparatus according to the first to third embodiments of the wireless transmission cross-layer optimization apparatus according to the data packet of the present disclosure.
  • the device 1 is connected to the network 2 through a wireless link, thereby implementing wireless transmission of data packets.
  • Fig. 9 shows the structure of the apparatus 1 as shown in Fig. 8. For the convenience of explanation, only parts related to the embodiment of the present disclosure are shown.
  • the structure of the apparatus 1 based on the above FIG. 8 includes:
  • At least one central processing unit (CPU) 10 configured to process data information
  • At least one wireless communication module 20 is configured to implement a wireless link between the device 1 and the network 2;
  • At least one memory 30, configured to store data and programs
  • the data bus 40 is arranged to perform data transfer between the CPU 10, the wireless communication module 20, and the memory 30.
  • the memory 30 may include a high speed RAM memory, and may also include a non-volatile memory such as at least one disk memory.
  • the memory 30 can optionally include at least one storage device located remotely from the CPU 10.
  • the memory 30 can store the RLC layer processing module 31, the PDCP layer processing module 32, the TCP layer processing module 33, and the operating system 34.
  • the RLC layer processing module 31 is used for data processing and transmission of the RLC layer.
  • the PDCP layer processing module 32 is used for data processing and transmission of the PDCP layer.
  • the TCP layer processing module 33 is used for data processing and transmission of the TCP layer.
  • Operating system 34 can include a variety of system programs for implementing a variety of basic services and handling hardware-based tasks.
  • the PDCP layer processing module 32 includes: a receiving and transmitting unit 100 and a determining and constructing unit 200.
  • the receiving and transmitting unit 100 and the judging constructing unit 200 are for performing the implementation of the first embodiment of the wireless transmission cross-layer optimizing apparatus of the presently disclosed data packet as shown in FIG. 5 described above.
  • the TCP layer processing module 33 calls the congestion control to reduce the data transmission rate, the throughput decreases, the delay increases, the data transmission rate fluctuates greatly, and the bandwidth resource is seriously wasted, thereby improving the stability of the wireless network data transmission. .
  • the PDCP layer processing module 32 further includes a computing unit 300 for implementation of the second embodiment of the wireless transmission cross-layer optimization apparatus of the disclosed data packet as shown in FIG. 6 above.
  • the RTP value of the TCP layer processing module 33 can be accurately estimated in the PDCP layer processing module 32, and an RTO value which is very similar to the RTO value of the TCP layer processing module 33 is obtained.
  • the RTO value of the TCP layer processing module 33 can be estimated in the PDCP layer processing module 32, to avoid the fluctuation of the RTT value caused by the error of the wireless link, and to avoid the RTO value calculated by the RTT value.
  • the PDCP layer processing module 32 further includes a timer unit 400.
  • the timer unit 400 is for performing the implementation of the third embodiment of the wireless transmission cross-layer optimization apparatus of the presently disclosed data packet as shown in FIG. 7 above.
  • the processing of the judgment construction unit 200 and the calculation unit 300 of the PDCP layer processing module 32 can be made relatively simple.
  • the TCP layer processing module 33 and the RLC layer processing module 31 may not be modified or changed, thereby ensuring compatibility of the device with the relevant network, and data.
  • the receiver can normally receive the data packet and return the ACK of the data packet without any modification. At the same time, this also reduces the difficulty and complexity of the development of the device.
  • Embodiments of the present disclosure also provide a non-transitory computer readable storage medium storing computer executable instructions arranged to perform the method of any of the above embodiments.
  • the above-described modular units or steps of the present disclosure may be implemented by a general-purpose computing device. Alternatively, they may be implemented by program code executable by a computing device, such that they may be
  • the storage is performed by the computing device in the storage device, and in some cases, the steps shown or described may be performed in an order different than that herein, or they may be separately fabricated.
  • the integrated circuit modules are implemented by making a plurality of modules or steps of them into a single integrated circuit module.
  • the present disclosure provides a cross-layer optimization method and device for wireless transmission of data packets, which avoids a decrease in data transmission rate caused by TCP layer congestion control, a decrease in throughput, an increase in delay, a large fluctuation in data transmission rate, and waste.
  • the phenomenon of bandwidth resources, etc. improves the stability of wireless network data transmission, optimizes network status, and ensures compatibility with related network environments.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)

Abstract

本文公开了一种数据包的无线传输跨层优化方法及装置,所述方法包括,分组数据汇聚协议PDCP层接收传输控制协议TCP层发送的数据包并转发给无线链路控制协议RLC层;以及PDCP层判断所述数据包的RLC层的模式是确认模式AM,并且PDCP层判断在TCP层重传超时时间RTO值的近似值D之内,没有收到RLC层发送的该数据包的确认ACK时,构造所述数据包的ACK并传送给所述TCP层。

Description

数据包的无线传输跨层优化方法及装置 技术领域
本公开涉及无线通信传输性能和控制技术领域,例如涉及一种数据包的无线传输跨层优化方法及装置。
背景技术
传输控制协议(Transmission Control Protocol,TCP)原本是为小于10-8误比特率的有线网络设计的。对于有线网络而言,数据包丢失的主要原因是网络拥塞,而因为链路出错而导致的报文丢失极为罕见。无线网络中除了网络拥塞引起数据丢失外,无线链路错误同样也会导致数据的丢失。在无线网络系统中,无线信道环境的变化,小区负载的变化,小区切换,信道突发干扰以及用户的移动性等原因经常导致无线链路出错而造成报文丢失,即有时提供误比特率在10-6的无线信道都比较困难,更何况小于10-8误比特率。
由于TCP协议根据重复应答或超时来推断数据的丢失,因此当数据的丢失是链路错误所致时,如若仍调用TCP拥塞控制,会引起数据发送速率的降低,吞吐量下降,时延加大等。另外,TCP拥塞控制将会造成数据发送速率的较大波动,带宽利用率不是很高。并且这种较大的速率波动也不利于无线网络中往返时延的估计。此外,TCP拥塞控制还包括快速重传,而此时空口协议层的自动重传请求(Automatic Repeat reQuest,ARQ)和混合自动重传请求(Hybrid Automatic Repeat reQuest,HARQ)与应用层存在冗余数据,因此这将严重浪费带宽资源并降低网络系统的有效吞吐量。
发明内容
本公开提供一种数据包的无线传输跨层优化方法及装置,减少了由于无线链路出错而造成报文丢失所导致的TCP层调用拥塞控制,引起数据发送速率的降低,吞吐量下降,时延加大,以及数据发送速率的较大波动,带宽利用率高,和严重浪费带宽资源的问题。
本公开提供的一种数据包的无线传输跨层优化方法,包括:
分组数据汇聚协议PDCP层接收传输控制协议TCP层发送的数据包并转发 给无线链路控制协议RLC层;以及
当所述PDCP层判断所述数据包的所述RLC层的模式是确认模式AM,并且所述PDCP层判断在所述TCP层重传超时时间RTO值的近似值D之内,没有收到所述RLC层发送的所述数据包的返回确认ACK时,构造所述数据包的确认ACK并传送给所述TCP层。
可选地,所述PDCP层接收所述TCP层发送的所述数据包并转发给所述RLC层之前,所述方法还包括:
计算所述TCP层RTO值的近似值D;
所述近似值D的计算公式为:
D=r*RTO,
其中,所述RTO值是由所述PDCP层根据历史数据包的RTT(Round Trip Time,回环响应时间)值来计算的,所述r大于0并小于1。
可选地,所述PDCP层计算所述历史数据包的RTT值的计算公式为:
RTT=2*T2+T4;
T2=T1-T0;
T4=T3-T1;
其中,所述T0是当所述TCP层向所述PDCP层发送所述历史数据包时,在所述历史数据包内添加的所述TCP层发送所述历史数据包时的时间戳;
所述T1是所述历史数据包到达所述PDCP层的时间;以及
所述T3是所述PDCP层接收到所述历史数据包的所述ACK的时间。
可选地,所述RTO值是对所述RTT值进行光滑化处理所得到的。
可选地,对所述RTT值进行光滑化处理得到所述RTO值的计算公式为:
RTO=RTTs+4*RTTd;
RTTs=(1-a)*RTTs_old+a*RTT;
RTTd=(1-b)*RTTd_old+b*|RTT-RTTs|;
其中,所述RTTs为当前的光滑RTT值,所述RTTs_old为历史光滑RTT值,所述RTTd为当前的RTT平均偏差值,所述RTTd_old为历史RTT平均偏差值; 以及
所述a大于0并小于1,所述b大于0并小于1。
可选地,所述方法还包括,所述TCP层通过定时器定时检测在所述TCP层RTO值的近似值D之内是否收到所述RLC层发送的所述数据包的所述确认ACK。
本公开提供一种数据包的无线传输跨层优化装置,包括:
接收转发单元,设置为接收TCP层发送的数据包并转发给RLC层;以及
判断构造单元,设置为当判断所述数据包的所述RLC层的模式是AM,并且判断在所述TCP层RTO值的近似值D之内,没有收到所述RLC层发送的所述数据包的确认ACK时,构造所述数据包的确认ACK并传送给所述TCP层。
可选地,所述装置还包括:
计算单元,设置为计算所述TCP层RTO值的近似值D;
所述近似值D的计算公式为:
D=r*RTO,
其中,所述RTO值是由所述PDCP层根据历史数据包的RTT值来计算的,所述r大于0并小于1。
可选地,所述计算单元,还设置为计算所述历史数据包的RTT值;
所述历史数据包的RTT值的计算公式为:
RTT=2*T2+T4;
T2=T1-T0;
T4=T3-T1;
其中,所述T0是当所述TCP层向PDCP层发送所述历史数据包时,在所述历史数据包内添加的所述TCP层发送所述历史数据包时的时间戳;
所述T1是所述历史数据包到达所述PDCP层的时间;以及
所述T3是所述PDCP层接收到所述历史数据包的所述ACK的时间。
可选地,所述计算单元,还设置为对所述RTT值进行光滑化处理得到所述RTO值。
可选地,所述计算单元对所述RTT值进行光滑化处理得到所述RTO值的计算公式为:
RTO=RTTs+4*RTTd;
RTTs=(1-a)*RTTs_old+a*RTT;
RTTd=(1-b)*RTTd_old+b*|RTT-RTTs|;
其中,所述RTTs为当前的光滑RTT值,所述RTTs_old为历史光滑RTT值,所述RTTd为当前的RTT平均偏差值,所述RTTd_old为历史RTT平均偏差值;
所述a大于0并小于1,所述b大于0并小于1。
可选地,所述装置还包括:
计时器单元,设置为通过定时器定时检测在所述TCP层RTO值的近似值D之内,所述TCP层是否收到所述RLC层发送的所述数据包的所述确认ACK。本公开还提供了一种非暂态计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述方法。
本公开通过PDCP层判断该数据包的RLC层的模式是AM,并且PDCP层判断在所述TCP层RTO值的近似值D之内,没有收到RLC层发送的该数据包的确认ACK时,构造所述数据包的确认ACK并传送给所述TCP层,从而避免由于TCP层在RTO值的时间内未收到数据包的确认ACK而判断网络产生了拥塞,进而调用拥塞控制引起的数据发送速率降低,吞吐量下降,时延加大,数据发送速率的较大波动,和严重浪费带宽资源等问题,提高了无线网络数据传输的稳定性。同时,本公开的数据包的无线传输跨层优化方法及装置,可以在PDCP层精确的估算出TCP层的RTT值,得到一个与TCP层RTO值非常近似的RTO值,以及通过对RTT值的光滑化处理,可以避免由于无线链路出现的错误所造成的在较短的时间间隔内计算的RTT值的波动,避免由RTT值计算的RTO值的波动导致的数据包的重发,提高了数据传输的稳定性,优化了网络状态。并且,由于上述处理均是在PDCP层进行处理的,因此可以不对TCP层和RLC层协议接口进行改动,确保了该方法以及装置对相关网络环境的兼容性,同时数据接收方在对TCP层和RLC层不做任何改动的情况下也能正常接收数据包并返回该数据包的确认ACK。
附图说明
图1为本公开数据包的无线传输跨层优化方法的第一实施例的流程示意图;
图2为本公开数据包的无线传输跨层优化方法的第二实施例的流程示意图;
图3为本公开数据包的无线传输跨层优化方法的第一实施例和第二实施例中的RTT值计算流程示意图;
图4为本公开数据包的无线传输跨层优化方法的第三实施例的流程示意图;
图5为本公开数据包的无线传输跨层优化装置的第一实施例的功能模块示意图;
图6为本公开数据包的无线传输跨层优化装置的第二实施例的功能模块示意图;
图7为本公开数据包的无线传输跨层优化装置的第三实施例的功能模块示意图;
图8为本公开数据包的无线传输跨层优化装置的应用场景示意图;以及
图9为本公开数据包的无线传输跨层优化装置应用场景实施例中的功能模块示意图。
具体实施方式
应当理解,此处所描述的实施例仅仅用以解释本公开,并不用于限定本公开。
参照图1,图1为本公开一种数据包的无线传输跨层优化方法的第一实施例的流程示意图。
在步骤110中,分组数据汇聚协议(Packet Data Convergence Protocol,PDCP)层接收TCP层发送的数据包并转发给无线链路控制协议(Radio Link Control Protocol,RLC)层。
即PDCP层接收PDCP层的上层即TCP层发送来的数据包,并且将该数据包传送给PDCP层的下层即RLC层,由RLC层负责将该数据包通过无线链路传输给接收方。
在步骤120中,当PDCP层判断数据包的RLC层的模式是确认模式(Acknowledged Mode,AM),并且PDCP层在TCP层重传超时时间 (Retransmission Timeout,RTO)值的近似值D之内,没有收到RLC层发送的该数据包的确认(Acknowledge,ACK)时,构造数据包的ACK并传送给TCP层。
PDCP层判断该数据包的RLC层是AM开始计时,在TCP层RTO值的近似值D之内,若PDCP层未能从RLC层接收到该数据包的ACK,PDCP层将构造该数据包的ACK并发送给TCP层。
由于TCP层是通过是否接收到TCP层发送数据包的ACK来判断该数据包是否已经丢失,进而判断网络是否发生拥塞以及是否调用拥塞控制。上述步骤120,可以使PDCP层能够在TCP层判断数据包丢失之前构造该数据包的ACK并传送给TCP层,从而避免由于TCP层调用拥塞控制引起的数据发送速率降低,吞吐量下降,时延加大,数据发送速率的较大波动,和严重浪费带宽资源等问题,提高了无线网络数据传输的稳定性。同时,由于在确定该数据包的RLC层模式只有是AM的情况下,才执行上述步骤120,从而确保了该数据包传输的可靠性。
参照图2,图2为本公开一种数据包的无线传输跨层优化方法的第二实施例的流程示意图。如图2所示,基于上述图1的实施例,所述步骤120的流程包括:
在步骤210中,判断该数据包的RLC层是否为AM。
即PDCP层判断该数据包的RLC层模式。若判断RLC层模式是非确认模式(Unacknowledged Mode,UM)或透明模式(Transparent Mode,TM)时,则跳转至步骤260,完成该数据包的传输任务;若判断RLC层模式是AM时,则执行步骤220。
在步骤220中,判断是否收到该数据包的ACK。即判断PDCP层是否从RLC层接收到该数据包的ACK。若收到该数据包的ACK,判断收到该数据包的ACK,并跳转至步骤250;若未收到该数据包的ACK,执行步骤230。
在步骤230中,判断是否超时。即PDCP层判断从步骤210开始计时至执行当前步骤230的时间是否已经超过TCP层RTO值的近似值D。若否,跳转至步骤220,等待并判断是否接收到该数据包的ACK;若是,执行步骤240。
在步骤240中,构造该数据包的ACK。
PDCP层判断该数据包的RLC层模式属于AM,并且PDCP层在TCP层RTO 值的近似值D之内也没有接收到该数据包的ACK,即推测该数据包在无线链路的传输过程之中发生了错误产生了丢包。为了避免TCP层防拥塞的调用,PDCP层将构造该数据包的ACK并执行步骤250。
在步骤250中,发送ACK至TCP层。
即PDCP层将该数据包的ACK发送给PDCP层的上层即TCP层。
在步骤260中,结束该数据包的传输任务。
由于TCP层是通过是否接收到其发送数据包的ACK来判断该数据包是否已经丢失,判断网络是否发生拥塞以及是否调用拥塞控制。通过上述步骤210~250,可以使PDCP层能够在TCP层判断数据包丢失之前构造该数据包的ACK并传送给TCP层,从而避免由于TCP层调用拥塞控制引起的数据发送速率降低,吞吐量下降,时延加大,数据发送速率的较大波动,和严重浪费带宽资源等问题,提高了无线网络数据传输的稳定性。同时,由于该数据包的RLC层模式只在RLC层的模式为AM的情况下,才执行上述步骤220~250,从而确保了该数据包的传输的可靠性。
可选,基于上述图1或图2的实施例,所述TCP层RTO值的近似时间D的计算公式为:
D=r*RTO,
其中,RTO值是由PDCP层根据历史数据包的回环响应时间(Round Trip Time,RTT)值来计算的,r大于0并小于1。
可选地,r设为0.9。
通过上述近似时间D的计算公式以及r的约束条件,确保上述步骤250的执行是抢先在TCP层的RTO值到来之前完成的,从而避免TCP层调用拥塞控制。其中r的可选值0.9能够使PDCP层能够在尽量接近TCP层的RTO值之前的时间来执行上述步骤240,能够避免对正常数据传输所造成的干扰。
可选,基于上述图1或图2的实施例,所述PDCP层计算所述历史数据包的RTT值的步骤参照图3。
在步骤310中,记录该历史数据包的到达时间T1,即PDCP层记录该历史数据包从TCP层传送到达PDCP层的时间T1。
在步骤320中,解析该历史数据包的时间戳T0。即对该历史数据包进行解析,获得该历史数据包从TCP层向PDCP层发送的时间戳T0。
在步骤330中,计算T2,即T2=T1-T0。
在步骤340中,记录该历史数据包的ACK到达时间T3,即PDCP层记录从RLC层接收到该历史数据包的ACK的时间T3。
在步骤350中,计算T4,即T4=T3-T1。
在步骤360中,计算出该历史数据包的RTT值,即RTT=2*T2+T4。
由于TCP层在发送该历史数据包至PDCP层之时在该历史数据包之中添加时间戳T0,T1为该历史数据包从TCP层传送到达PDCP层的时间,因此时间差T2为该历史数据包从TCP层传至PDCP层的时间。同理,时间差T4为该历史数据包在PDCP层发出直至接收到该历史数据包ACK的时间。因此利用T2和T4,以及上述步骤360的RTT值计算公式,可以在PDCP层精确的估算出TCP层的RTT值,进而得到一个与TCP层RTO值非常近似的RTO值。即TCP层可以不向PDCP层传输TCP层的RTO值,避免了对TCP层协议接口进行修改,降低了开发的难度和复杂度。
可选,通过对上述PDCP层计算所得数据包的RTT值进行光滑化处理来获得RTO值。
通过利用光滑化处理方法以及所述的光滑化处理的计算公式,可以避免由于无线链路出现的错误所造成的RTT值的波动,避免由RTT值计算所得的RTO值的波动所导致的对执行上述步骤230的干扰,以及由此造成的数据包的重发,提高了数据传输的稳定性,优化了网络状态。
可选,所述光滑化处理的计算公式为:
RTO=RTTs+4*RTTd,
RTTs=(1-a)*RTTs_old+a*RTT,
RTTd=(1-b)*RTTd_old+b*|RTT-RTTs|,
其中,RTTs为当前的光滑RTT值,RTTs_old为光滑RTT值的历史值,RTTd为当前的RTT平均偏差值,所述RTTd_old为RTT平均偏差值的历史值,以及
所述a大于0并小于1,所述b大于0并小于1。
可选地,a设为0.125,所述b设为0.25。
可选地,RTTs_old的初始值设为当前RTT值,所述RTTd_old的初始值设为当前RTT值的二分之一。
可选地,在计算出RTO值之后,RTTs_old值更新为当前RTTs值,RTTd_old值更新为当前RTTd值。
参数a的可选值0.125说明该光滑化方法将极大限度的利用光滑RTT值的历史值RTTs_old,同理参数b的可选值0.25说明该光滑化方法将极大限度的利用RTT平均偏差值的历史值RTTd_old,从而确保光滑化处理尽可能的不受当前RTT值波动的干扰。
根据RTO值的计算公式RTO=RTTs+4*RTTd可知,RTO值不仅考虑到光滑RTT值RTTs,同时也考虑到使用RTT平均偏差值RTTd,并且使用RTT平均偏差值的权重大于光滑RTT值的权重,说明RTO值的计算也考虑到了RTT平均偏差值RTTd对RTO值的影响,而RTT平均偏差值RTTd是RTT值变化幅度的参数,即RTO值也将伴随RTT值的变化而进行变化,从而使RTO值能适应网络传输速率的变化。
参照图4,图4为本公开一种数据包的无线传输跨层优化方法的第三实施例的流程示意图。基于图2的实施例,所述步骤230可以采用定时器的方式进行实施。
在执行步骤210判断该数据包的RLC层是AM时,执行步骤231启动该数据包的定时器。
在执行步骤220判断没有收到该数据包的ACK时,执行步骤232判断该定时器计时是否超出TCP层RTO值的近似值D。若判断该定时器计时没有超过该近似值D,就跳转至步骤220,判断是否接收到该数据包的ACK;若判断该定时器计时超过该近似值D,则执行步骤240。
通过采用定时器计时的方式,可以在充分利用TCP/IP协议的参数以及系统资源的情况下,使步骤230的处理变得相对简单。
由于上述所有处理步骤均是在PDCP层上进行处理的,因此可以不对TCP层以及RLC层进行改动或变更,确保了该方法对相关网络环境的兼容性,同时数据接收方在对TCP层和RLC层不做任何改动的情况下也能正常接收数据包并 返回该数据包的ACK。同时这种方式也降低了该方法的开发的难度和复杂度。
上述本公开数据包的无线传输跨层优化方法的第一实施例中的无线传输跨层优化方法可以由本公开数据包的无线传输跨层优化装置的第一实施例所提供的无线传输跨层优化装置来实现。
参照图5,本公开数据包的无线传输跨层优化装置第一实施例提供一种无线传输跨层优化装置,所述装置包括:接收发送单元100以及判断构造单元200。
接收发送单元100设置为PDCP层处理模块32接收TCP层处理模块33发送的数据包,并向RLC层处理模块31转发该数据包。
判断构造单元200设置为当PDCP层判断该数据包的RLC层的模式是AM,并且PDCP层判断在所述TCP层RTO值的近似值D之内,没有收到RLC层发送的该数据包的ACK时,构造所述数据包的ACK并传送给所述TCP层。
通过使PDCP层的判断构造单元200在TCP层判断数据包丢失之前构造该数据包的ACK并传送给TCP层,避免由于TCP层调用拥塞控制引起的数据发送速率降低,吞吐量下降,时延加大,数据发送速率的较大波动,和严重浪费带宽资源等问题,提高了无线网络数据传输的稳定性。
上述本公开数据包的无线传输跨层优化方法的第一实施例或第二实施例中的无线传输跨层优化方法可以由本公开数据包的无线传输跨层优化装置的第二实施例所提供的无线传输跨层优化装置来实现。
参照图6,本公开数据包的无线传输跨层优化装置第二实施例提供一种无线传输跨层优化装置,基于上述图5所示的实施例,所述装置还包括计算单元300。
计算单元300设置为计算所述TCP层RTO值的近似值D;
近似值D的计算公式为:
D=r*RTO,
其中,RTO值是由PDCP层根据历史数据包的RTT值来计算的,所述r大于0并小于1。
可选地,r设为0.9。
通过上述近似值D的计算公式以及r的约束条件,确保上述判断构造单元200在TCP层判断数据包丢失之前构造该数据包的ACK并传送给TCP层,从 而避免TCP层调用拥塞控制。其中r的可选值0.9能够使PDCP层能够在尽量接近TCP层的RTO值之前来执行判断构造单元200的处理,从而能够避免对正常数据传输所造成的干扰。
可选,计算单元300还设置为计算所述历史数据包的RTT值。
其中,所述历史数据包的RTT值的计算公式为:
RTT=2*T2+T4;
T2=T1-T0;
T4=T3-T1;
其中,所述T0是当所述TCP层向PDCP层发送所述历史数据包时,在所述历史数据包内添加的所述TCP层发送所述历史数据包时的时间戳;
所述T1是所述历史数据包到达所述PDCP层的时间;以及
所述T3是所述PDCP层接收到所述历史数据包的所述ACK的时间。
通过计算单元300,可以在PDCP层精确的估算出TCP层的RTT值,得到一个与TCP层的RTO值非常近似的RTO值。即TCP层不需要向PDCP层传输TCP层的RTO值,避免了对TCP层的接口进行修改,降低了开发的难度和复杂度。
可选,计算单元300还设置为对所述RTT值进行光滑化处理得到所述RTO值。
通过计算单元300,可以在PDCP层估算出TCP层的RTO值,可以避免由于无线链路出现的错误所造成的RTT值的波动,避免由RTT值计算所得的RTO值的波动所导致的对判断构造单元200的干扰,以及由此造成TCP层对数据包的重发,提高了数据传输的稳定性,优化了网络状态。
可选,计算单元300对所述RTT值进行光滑化处理得到所述RTO值的计算公式为:
RTO=RTTs+4*RTTd;
RTTs=(1-a)*RTTs_old+a*RTT;
RTTd=(1-b)*RTTd_old+b*|RTT-RTTs|;
其中,所述RTTs为当前的光滑RTT值,所述RTTs_old为历史光滑RTT值,所述RTTd为当前的RTT平均偏差值,所述RTTd_old为历史RTT平均偏差值;以及所述a大于0并小于1,所述b大于0并小于1。
可选地,a设为0.125,所述b设为0.25。
可选地,RTTs_old的初始值设为当前RTT值,所述RTTd_old的初始值设为当前RTT值的二分之一。
可选地,在计算出RTO值之后,RTTs_old值更新为当前RTTs值,RTTd_old值更新为当前RTTd值。
参数a的可选值0.125说明该光滑化方法将极大限度的利用光滑RTT值的历史值RTTs_old,同理参数b的可选值0.25说明该光滑化方法将极大限度的利用RTT平均偏差值的历史值RTTd_old,从而确保光滑化处理尽可能的不受当前RTT值波动的干扰。
根据RTO值的计算公式RTO=RTTs+4*RTTd可知,RTO值不仅考虑到光滑RTT值RTTs,同时也考虑到使用RTT平均偏差值RTTd,并且使用RTT平均偏差值的权重大于光滑RTT值的权重,说明RTO值的计算也考虑到了RTT平均偏差值RTTd对RTO值的影响,而RTT平均偏差值RTTd是RTT值变化幅度的参数,即RTO值也将伴随RTT值的变化而进行变化,从而使RTO值能适应网络传输速率的变化。
上述本公开数据包的无线传输跨层优化方法的第三实施例中的无线传输跨层优化方法可以由本公开数据包的无线传输跨层优化装置的第三实施例所提供的无线传输跨层优化装置来实现。
参照图7,本公开数据包的无线传输跨层优化装置第三实施例提供一种无线传输跨层优化装置,基于上述图6所示的实施例,所述装置还包括计时器单元400。
计时器单元400设置为通过定时器定时检测在所述TCP层RTO值的近似值D之内,所述TCP层是否收到所述RLC层发送的所述数据包的所述ACK。
通过采用定时器单元400,可以使判断构造单元200以及计算单元300的处理变得相对简单。
由于上述处理单元的处理步骤均是在PDCP层进行处理的,因此可以不对 TCP层以及RLC层进行改动或变更,确保了该装置对相关网络的兼容性,同时数据接收方在不做任何改动的情况下也能正常接收数据包并返回该数据包的ACK。同时这也降低了该装置开发的难度和复杂度。
图8示出了根据本公开数据包的无线传输跨层优化装置第一实施例至第三实施例提供一种无线传输跨层优化装置的应用场景。其中装置1通过无线链路与网络2连接,从而实现对数据包的无线传输。
图9示出了如图8所示装置1的结构,为了便于说明,仅示出了与本公开实施例相关的部分。基于上述图8的装置1的结构包括:
至少一个中央处理器(Central Processing Unit,CPU)10,设置为对数据信息进行处理;
至少一个无线通信模块20,设置为实现装置1与网络2之间的无线链接;
至少一个存储器30,设置为存储数据和程序;以及
数据总线40,设置为在CPU 10,无线通信模块20以及存储器30之间进行数据传输。
需要说明的是,存储器30可能包含高速RAM存储器,也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器30可选的可以包含至少一个位于远离CPU 10的存储装置。存储器30可以存储RLC层处理模块31、PDCP层处理模块32、TCP层处理模块33以及操作系统34。
RLC层处理模块31用于RLC层的数据处理和传输。
PDCP层处理模块32用于PDCP层的数据处理和传输。
TCP层处理模块33用于TCP层的数据处理和传输。
操作系统34可以包含多种系统程序,用于实现多种基础业务以及处理基于硬件的任务。
可选,PDCP层处理模块32包括:接收发送单元100和判断构造单元200。接收发送单元100和判断构造单元200用于执行如上述图5所示的本公开数据包的无线传输跨层优化装置第一实施例的实施。
通过使PDCP层处理模块32的判断构造单元200在TCP层处理模块33判断数据包丢失之前构造该数据包的ACK并传送给TCP层处理模块33,避免由 于TCP层处理模块33调用拥塞控制引起的数据发送速率降低,吞吐量下降,时延加大,数据发送速率的较大波动,和严重浪费带宽资源等问题,提高了无线网络数据传输的稳定性。
可选,PDCP层处理模块32还包括计算单元300,用于如上述图6所示的本公开数据包的无线传输跨层优化装置第二实施例的实施。
通过计算单元300,可以在PDCP层处理模块32精确的估算出TCP层处理模块33的RTT值,得到一个与TCP层处理模块33的RTO值非常近似的RTO值。
并且通过计算单元300,可以在PDCP层处理模块32估算出TCP层处理模块33的RTO值,避免由于无线链路出现的错误所造成的RTT值的波动,避免由RTT值计算所得的RTO值的波动所导致的对判断构造单元200的干扰,以及由此造成TCP层处理模块33对数据包的不必要的重发,提高了数据传输的稳定性,优化了网络状态。
可选,PDCP层处理模块32还包括计时器单元400。计时器单元400用于执行如上述图7所示的本公开数据包的无线传输跨层优化装置第三实施例的实施。
采用定时器单元400,可以使PDCP层处理模块32的判断构造单元200以及计算单元300的处理变得相对简单。
并且,由于上述处理步骤均是在PDCP层处理模块32进行处理的,因此可以不对TCP层处理模块33以及RLC层处理模块31进行改动或变更,确保了该装置对相关网络的兼容性,同时数据接收方在不做任何改动的情况下也能正常接收数据包并返回该数据包的ACK。同时这也降低了该装置开发的难度和复杂度。
本公开实施例还提供了一种非暂态计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述任一实施例中的方法。
显然,本领域的技术人员应该明白,上述的本公开的模块单元或步骤可以用通用的计算装置来实现,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在一些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成多 个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。
工业实用性
本公开提供一种数据包的无线传输跨层优化方法及装置,避免了TCP层调用拥塞控制引起的数据发送速率降低,吞吐量下降,时延加大,数据发送速率的较大波动,以及浪费带宽资源等的现象,提高了无线网络数据传输的稳定性,优化了网络状态,并确保了对相关网络环境的兼容性。

Claims (13)

  1. 一种数据包的无线传输跨层优化方法,包括:
    分组数据汇聚协议PDCP层接收传输控制协议TCP层发送的数据包并转发给无线链路控制协议RLC层;以及
    当所述PDCP层判断所述数据包的所述RLC层的模式是确认模式AM,并且所述PDCP层判断在所述TCP层重传超时时间RTO值的近似值D之内,没有收到所述RLC层发送的所述数据包的确认ACK时,构造所述数据包的确认ACK并传送给所述TCP层。
  2. 根据权利要求1所述的方法,其中,所述PDCP层接收所述TCP层发送的所述数据包并转发给所述RLC层之前,所述方法还包括:
    计算所述TCP层RTO值的近似值D;
    所述近似值D的计算公式为:
    D=r*RTO,
    其中,所述RTO值是由所述PDCP层根据历史数据包的回环响应时间RTT值来计算的,所述r大于0并小于1。
  3. 根据权利要求2所述的方法,其中,所述PDCP层计算所述历史数据包的RTT值的计算公式为:
    RTT=2*T2+T4;
    T2=T1-T0;
    T4=T3-T1;
    其中,所述T0是当所述TCP层向所述PDCP层发送所述历史数据包时,在所述历史数据包内添加的所述TCP层发送所述历史数据包时的时间戳;
    所述T1是所述历史数据包到达所述PDCP层的时间;以及
    所述T3是所述PDCP层接收到所述历史数据包的所述ACK的时间。
  4. 根据权利要求3所述的方法,其中,所述RTO值是对所述RTT值进行光滑化处理所得到的。
  5. 根据权利要求4所述的方法,其中,对所述RTT值进行光滑化处理得到所述RTO值的计算公式为:
    RTO=RTTs+4*RTTd;
    RTTs=(1-a)*RTTs_old+a*RTT;
    RTTd=(1-b)*RTTd_old+b*|RTT-RTTs|;
    其中,所述RTTs为当前的光滑RTT值,所述RTTs_old为历史光滑RTT值,所述RTTd为当前的RTT平均偏差值,所述RTTd_old为历史RTT平均偏差值;以及
    所述a大于0并小于1,所述b大于0并小于1。
  6. 根据权利要求1至4任一项所述的方法,所述方法还包括,所述TCP层通过定时器定时检测在所述TCP层RTO值的近似值D之内是否收到所述RLC层发送的所述数据包的所述确认ACK。
  7. 一种数据包的无线传输跨层优化装置,包括:
    接收转发单元,设置为接收TCP层发送的数据包并转发给RLC层;以及
    判断构造单元,设置为当判断所述数据包的所述RLC层的模式是AM,并且判断在所述TCP层RTO值的近似值D之内,没有收到所述RLC层发送的所述数据包的确认ACK时,构造所述数据包的确认ACK并传送给所述TCP层。
  8. 如权利要求7所述的装置,所述装置还包括:
    计算单元,设置为计算所述TCP层RTO值的近似值D;
    所述近似值D的计算公式为:
    D=r*RTO,
    其中,所述RTO值是由所述PDCP层根据历史数据包的RTT值来计算的,所述r大于0并小于1。
  9. 如权利要求8所述的装置,其中,所述计算单元,还设置为计算所述历史数据包的RTT值;
    所述历史数据包的RTT值的计算公式为:
    RTT=2*T2+T4;
    T2=T1-T0;
    T4=T3-T1;
    其中,所述T0是当所述TCP层向PDCP层发送所述历史数据包时,在所述历史数据包内添加的所述TCP层发送所述历史数据包时的时间戳;
    所述T1是所述历史数据包到达所述PDCP层的时间;以及
    所述T3是所述PDCP层接收到所述历史数据包的所述ACK的时间。
  10. 如权利要求9所述的装置,其中,所述计算单元,还设置为对所述RTT值进行光滑化处理得到所述RTO值。
  11. 如权利要求10所述的装置,其中,所述计算单元对所述RTT值进行光滑化处理得到所述RTO值的计算公式为:
    RTO=RTTs+4*RTTd;
    RTTs=(1-a)*RTTs_old+a*RTT;
    RTTd=(1-b)*RTTd_old+b*|RTT-RTTs|;
    其中,所述RTTs为当前的光滑RTT值,所述RTTs_old为历史光滑RTT值,所述RTTd为当前的RTT平均偏差值,所述RTTd_old为历史RTT平均偏差值;以及
    所述a大于0并小于1,所述b大于0并小于1。
  12. 如权利要求7至10任一项所述的装置,所述装置还包括:
    计时器单元,设置为通过定时器定时检测在所述TCP层RTO值的近似值D之内,所述TCP层是否收到所述RLC层发送的所述数据包的所述确认ACK。
  13. 一种非暂态计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行权利要求1-6中任一项的方法。
PCT/CN2016/107545 2016-01-04 2016-11-28 数据包的无线传输跨层优化方法及装置 WO2017118239A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610005841.0A CN106941694A (zh) 2016-01-04 2016-01-04 数据包的无线传输跨层优化方法及装置
CN201610005841.0 2016-01-04

Publications (1)

Publication Number Publication Date
WO2017118239A1 true WO2017118239A1 (zh) 2017-07-13

Family

ID=59273777

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/107545 WO2017118239A1 (zh) 2016-01-04 2016-11-28 数据包的无线传输跨层优化方法及装置

Country Status (2)

Country Link
CN (1) CN106941694A (zh)
WO (1) WO2017118239A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113766561A (zh) * 2021-05-31 2021-12-07 大连交通大学 基于跨层优化的无人集群网络拥塞控制方法
CN116996675A (zh) * 2023-09-27 2023-11-03 河北天英软件科技有限公司 一种即时通信系统及信息处理方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108650258B (zh) * 2018-05-09 2021-03-02 东南大学 窄带物联网无线链路协议子层am实体数据传输自适应方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102833783A (zh) * 2012-07-02 2012-12-19 北京邮电大学 一种优化无线环境下tcp协议的方法
CN103138905A (zh) * 2011-11-24 2013-06-05 华为技术有限公司 Rlc数据包传输的确认方法及rlc am实体发送方
CN104093170A (zh) * 2014-06-10 2014-10-08 北京创毅视讯科技有限公司 基于tcp的数据传输方法和tcp代理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103138905A (zh) * 2011-11-24 2013-06-05 华为技术有限公司 Rlc数据包传输的确认方法及rlc am实体发送方
CN102833783A (zh) * 2012-07-02 2012-12-19 北京邮电大学 一种优化无线环境下tcp协议的方法
CN104093170A (zh) * 2014-06-10 2014-10-08 北京创毅视讯科技有限公司 基于tcp的数据传输方法和tcp代理装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113766561A (zh) * 2021-05-31 2021-12-07 大连交通大学 基于跨层优化的无人集群网络拥塞控制方法
CN113766561B (zh) * 2021-05-31 2024-04-09 大连交通大学 基于跨层优化的无人集群网络拥塞控制方法
CN116996675A (zh) * 2023-09-27 2023-11-03 河北天英软件科技有限公司 一种即时通信系统及信息处理方法
CN116996675B (zh) * 2023-09-27 2023-12-19 河北天英软件科技有限公司 一种即时通信系统及信息处理方法

Also Published As

Publication number Publication date
CN106941694A (zh) 2017-07-11

Similar Documents

Publication Publication Date Title
CN112165355B (zh) 一种面向卫星网络的基于udp的可靠数据传输方法
JP4654926B2 (ja) 通信システム、通信装置及びそれらに用いる輻輳制御方法並びにそのプログラム
EP1568180B1 (en) A method for enhancing transmission quality of streaming media
US7965698B2 (en) Method for preventing unnecessary retransmission due to delayed transmission in wireless network and communication device using the same
US8418016B2 (en) Communication system, communication device, and communication method
JP4778453B2 (ja) 通信端末、輻輳制御方法および輻輳制御プログラム
TWI459768B (zh) 協助tcp封包傳送的通訊系統與方法
KR20190095487A (ko) 패킷 전송 방법, 단말, 네트워크 디바이스 및 통신 시스템
US20080022180A1 (en) Method and apparatus for handling transmission errors in a wireless communications system
US9674101B2 (en) Communication device, transmission data output control method, and program for same
JP2007089174A (ja) 無線通信システムにおける信号の伝送速度を改善する方法及び装置
CN109981385B (zh) 一种实现丢包检测的方法、装置和系统
CN102594434B (zh) 面向卫星网络的传输控制机制改进方法
WO2012141533A2 (ko) 중첩된 망 환경에서 상향 수직 핸드오버시의 데이터 전송률 제어방법 및 시스템
WO2017118239A1 (zh) 数据包的无线传输跨层优化方法及装置
US9590913B2 (en) System and method for reducing bandwidth usage of a network
KR20190011898A (ko) 무선 통신 시스템에서 단말, 기지국 및 이의 통신 방법
JP2007129723A (ja) 無線通信システムにおいてプロトコルエラーを処理する方法及び装置
US10630568B2 (en) Transmission control protocol timestamp rewriting
JP7067544B2 (ja) 通信システム、通信装置、方法およびプログラム
JP5387058B2 (ja) 送信装置、送信レート算出方法及び送信レート算出プログラム
JP6011813B2 (ja) 通信装置およびその通信制御方法
WO2014155495A1 (ja) 通信装置、受信装置、及び送信装置
JP2003224547A (ja) フロー制御方法
JP6973511B2 (ja) 通信装置、通信システム、通信方法及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16883365

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16883365

Country of ref document: EP

Kind code of ref document: A1