WO2014117359A1 - 反馈丢包的消息处理方法及装置 - Google Patents
反馈丢包的消息处理方法及装置 Download PDFInfo
- Publication number
- WO2014117359A1 WO2014117359A1 PCT/CN2013/071193 CN2013071193W WO2014117359A1 WO 2014117359 A1 WO2014117359 A1 WO 2014117359A1 CN 2013071193 W CN2013071193 W CN 2013071193W WO 2014117359 A1 WO2014117359 A1 WO 2014117359A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- tcp
- rlc
- data packet
- packet
- response message
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
Definitions
- the present invention relates to the field of wireless communication technologies, and in particular, to a message processing and device for feedback packet loss. Background technique
- Transmission Control Protocol is the most widely used transmission protocol on the Internet, but its original design goal is to work in a wired network. Therefore, there is a section of wireless air interface in the TCP connection (ie, wireless TCP). At the time, the TCP protocol involved in the wired network is no longer able to guarantee efficient work.
- the TCP protocol controls the congestion of the transmission by introducing a control mechanism for the congestion window of the sender.
- the receiving end notifies the sending end of its current receiving window size, and the transmitting end determines how much data the transmitting end can send to the receiving end according to the size of the receiving window and the size of the congestion window, that is, the value of the real sending window is a congestion window. And the minimum value in the notification window. This prevents the sender from sending too much data without causing TCP buffer overflow at the receiving end and reducing the rate of congestion in the network.
- Radio network controller in the third generation mobile communication technology (3 Id Genera ion, 3G)
- Network Control ler, RNC or fourth generation mobile communication technology (3 rd Genera t ion, 3G ) evolved base station (evolut ion NodeB, eNodeB), there may be a corresponding TCP or TCP proxy function entity for the radio TCP accelerates.
- the receiver On the radio side of a terminal with a TCP proxy function or a TCP entity, due to air interface packet loss and non-sequential delivery, the receiver receives a large number of out-of-order packets.
- the receiving end will send multiple duplicate acknowledgements (Dup acknowledgement, Dup ACK) or send selective acknowledgement (Selec t acknowledgement, SACK) to the sender, indicating that a packet is lost.
- Dup ACK duplicate acknowledgements
- SACK selective acknowledgement
- the SACK option is supported. If the SACK option is not supported by the receiver, the scheme cannot be used. Therefore, most of the existing packet loss judging methods adopt a scheme of transmitting Dup ACK.
- the congestion window will decrease, generally decreasing to the threshold of the slow start; and the sender will start a timer after sending a packet. Within the time range of this timer, if the acknowledgment of this packet (acknowl edgemenmen t , ACK ) has not been received, the congestion window will be reduced to 1.
- the control of the congestion window is crucial in the TCP protocol, and many existing algorithms are given for adjusting the congestion window of TCP.
- the most common algorithm is to determine whether packet loss is possible based on the estimated bandwidth and the bandwidth corresponding to the congestion window. A judgment is made on the current network state, and the result of this state judgment may be congestion and non-congestion.
- congestion if a duplicate ACK occurs, or RT0 times out, the current congestion window is modified while retransmitting the data packet; if there is no congestion, if a duplicate ACK occurs, or When RT0 times out, the size of the current congestion window is maintained while retransmitting the data packet, and the problem of insufficient utilization of the wireless air interface caused by the congestion window being adjusted too small is avoided.
- a first aspect of the present invention provides a radio link control RLC apparatus, including: a processor, a first interface, and a second interface;
- the first interface is configured to interact with a transmission control protocol TCP device
- the second interface is configured to interact with the peer device;
- the processor is used to:
- the TCP packet received by the first interface carries information of a TCP packet, where the information of the TCP packet includes the following One or any combination: IP address, port and byte range;
- the processor is configured to form the TCP packet into an RLC data packet, and specifically includes: the processor is configured to:
- the processor is configured to construct, according to the response message of the RLC data packet, a TCP corresponding to the RLC data packet
- the response message of the packet including:
- the processor is used to:
- the response message of the TCP data packet is constructed by using the correspondence between the RLC data packet and the TCP data packet.
- the response message of the RLC data packet is an RLC acknowledgement ACK information
- the processor is configured to construct the message according to the response message of the RLC data packet.
- the response message of the TCP packet corresponding to the RLC data packet specifically includes: the processor is configured to construct TCP ACK information of the TCP data packet according to the RLC ACK information.
- the processor is further configured to:
- the processor when a packet loss occurs, is further configured to:
- the processor is further configured to:
- the response message of the RLC data packet is an RLC negative acknowledgement NACK information
- the processor is configured to construct a response message according to the RLC data packet.
- the response message of the TCP packet corresponding to the RLC data packet specifically includes: the processor is configured to construct a TCP NACK message of the TCP data packet according to the RLC NACK information. And indicating that the TCP device retransmits the TCP packet corresponding to the TCP NACK information.
- the processor is configured to construct TCP NACK information of the TCP data packet according to the RLC NACK information, specifically:
- the processor is used to:
- the TCP NACK information is constructed according to the RLC NACK information when the count value of the RLC retransmission timer and/or the RLC retransmission counter exceeds a preset threshold.
- the response message of the TCP packet is selectively acknowledged by a user plane GPRS tunneling protocol GTP-U extension header or TCP
- the RLC device is a radio network controller RNC or an evolved base station eNodeB.
- a TCP device including: a processor and a communication interface;
- the communication interface is configured to interact with an RLC device
- the processor is used to:
- TCP NACK information sent by the RLC device, where the TCP NACK information is configured by the RLC device according to the RLC NACK information;
- the TCP packet of the lost packet is determined according to the TCP NACK information.
- the processor is further configured to:
- the TCP device is an RNC, an eNodeB, a GGSN, an SGSN, or a PGW.
- a base station device including: an RLC device and a TCP device according to an embodiment of the present invention.
- a fourth aspect provides a message processing method for feedback packet loss, where the method includes: a radio link control RLC device receives a TCP packet sent by a TCP device of a transmission control protocol, and forms a packet of the TCP packet to form an RLC data. Packet, and sending the RLC data packet to the peer device;
- the RLC device receives a response message of the RLC data packet returned by the peer device; the RLC device constructs a response message of the TCP data packet corresponding to the RLC data packet according to the response message of the RLC data packet;
- the RLC device feeds back a response message of the TCP packet to the TCP device.
- the TCP data packet received by the RLC device carries information of a TCP data packet, where the information of the TCP data packet includes the following: One or any combination of: IP address, port, and byte range;
- the grouping the TCP data packet into an RLC data packet includes:
- the RLC device identifies the TCP data packet according to the information of the TCP data packet, and records an identifier of the TCP data packet;
- the RLC device performs an RLC group packet on the TCP data packet to form an RLC data packet, and identifies the RLC data packet;
- the RLC device establishes and records a correspondence between the RLC data packet and the TCP data packet according to the identifier of the TCP data packet and the identifier of the RLC data packet.
- the responding message of the TCP data packet is configured according to the response message of the RLC data packet, specifically:
- the response message of the RLC data packet is RLC ACK information
- the TCP ACK information of the TCP packet is constructed based on the RLC ACK information.
- the RLC device compares the TCP ACK information fed back by the peer device with the constructed TCP ACK information, and if not, determines that the data packet is lost when sent to the TCP device of the peer device. package.
- the method when a packet loss occurs, the method further includes:
- the RLC device instructs the TCP device to retransmit the TCP packet in which the packet loss occurs or to send the RLC packet corresponding to the TCP packet in which the packet loss occurs.
- the RLC device compares the TCP ACK information fed back by the peer device with the constructed TCP ACK information. If they are consistent, it is determined that no packet loss occurs, and the peer device is no longer sent to the TCP device. TCP ACK information fed back by the device.
- the response message of the RLC data packet is RLC NACK information
- TCP NACK information of the TCP packet according to the RLC NACK information, to instruct the TCP device to retransmit the TCP packet corresponding to the TCP NACK information.
- the configuring the TCP NACK information of the TCP data packet according to the RLC NACK information includes:
- the TCP NACK information is constructed according to the RLC NACK information when the count value of the RLC retransmission timer and/or the RLC retransmission counter exceeds a preset threshold.
- the response message of the TCP data packet is delivered by using an extension header of the GTP-U or a TCP SACK option.
- the fifth aspect provides a message processing method for feedback packet loss, where the method includes: receiving TCP negative acknowledgement NACK information sent by an RLC device, where the TCP NACK information is constructed by the RLC device according to RLC NACK information;
- the TCP packet of the lost packet is determined according to the TCP NACK information.
- the method further includes:
- the congestion window value of the transmitting end is reduced.
- a sixth aspect provides a message processing apparatus for feeding back a packet, where the apparatus includes: a packet unit, configured to receive a TCP data packet sent by the TCP device, group the TCP data packet into an RLC data packet, and send the RLC data packet to the peer device;
- a receiving unit configured to receive a response message of the RLC data packet returned by the RLC data packet sent by the peer device for the group packet unit
- a processing unit configured to construct, according to the response message of the RLC data packet received by the receiving unit, a response message of a TCP data packet corresponding to the RLC data packet;
- a sending unit configured to feed back a response message of the TCP packet obtained by the processing unit to the TCP device.
- a receiving subunit configured to receive a TCP data packet sent by the TCP device, and obtain information about a TCP data packet carried in the TCP data packet, where the information of the TCP data packet includes one or any combination of the following: IP address, port and byte range;
- a recording subunit configured to identify the TCP data packet according to the information of the TCP data packet obtained by the receiving subunit, and record an identifier of the TCP data packet;
- a packet subunit configured to perform RLC grouping on the TCP packet received by the receiving subunit to form an RLC data packet, and identify the RLC data packet;
- a storage subunit configured to establish and record a correspondence between the RLC data packet and the TCP data packet according to the identifier of the TCP data packet recorded by the recording subunit and the identifier of the RLC data packet obtained by the group packet subunit .
- the processing unit is specifically configured to use the storage subunit according to the response message of the RLC data packet Corresponding relationship between the recorded RLC data packet and the TCP data packet, constructing a response message of the TCP data packet.
- the processing unit when the response message of the RLC data packet received by the receiving unit is RLC ACK information, the processing unit is configured according to The RLC ACK information constructs TCP ACK information of a TCP packet.
- the receiving unit is further configured to receive TCP ACK information that is fed back by the peer device; Includes:
- a comparing unit configured to forward the TCP ACK information fed back by the peer device with the constructed TCP
- the ACK information is compared, if it is inconsistent, it is determined that the data packet is lost when it is sent to the TCP device of the peer device.
- the comparing unit when the packet loss occurs, is configured according to the TCP ACK information and the RLC fed back by the peer device The ACK information determines a TCP packet in which packet loss occurs; and triggers the sending unit to send an instruction indicating that the TCP device retransmits the TCP packet in which the packet loss occurs or sends the RLC corresponding to the TCP packet in which the packet loss occurs. The instruction of the packet.
- the receiving unit is further configured to receive TCP ACK information that is fed back by the peer device; Includes:
- a comparing unit configured to compare the TCP ACK information fed back by the peer device with the constructed TCP ACK information, if yes, determining that no packet loss occurs, and not triggering the sending unit to the TCP
- the device sends the TCP ACK information fed back by the peer device.
- the processing unit when the response message of the RLC data packet received by the receiving unit is RLC NACK information, the processing unit is configured according to the RLC NACK information.
- the TCP NACK information of the TCP packet is configured to instruct the TCP device to retransmit the TCP packet corresponding to the TCP NACK information.
- the device further includes:
- a first retransmission unit configured to: when the response message of the RLC data packet received by the receiving unit is RLC NACK information, the response message of the RLC data packet is an RLC of RLC NACK information Retransmitting the data packet to the peer device, and starting an RLC retransmission timer and/or an RLC retransmission counter; when the count value of the RLC retransmission timer and/or the RLC retransmission counter exceeds a preset threshold, Triggering the processing unit to construct TCP NACK information according to the RLC NACK information.
- the response message of the TCP packet that is sent by the sending unit is transmitted by using an extension header of the GTP-U or a TCP SACK option.
- the seventh aspect provides a message processing apparatus for feedback packet loss, where the apparatus includes: a receiving unit, configured to receive TCP negative acknowledgement NACK information sent by the RLC apparatus, where the TCP
- the NACK information is constructed by the RLC device according to the RLC NACK information
- a determining unit configured to determine, according to the TCP NACK information received by the receiving unit, packet loss
- the device further includes:
- a second retransmission unit configured to: after the determining unit determines the TCP packet of the packet loss, retransmit the TCP packet of the packet loss to the peer device, and start a TCP retransmission timer and/or Or TCP retransmission counter;
- an adjusting unit configured to reduce a congestion window value of the sending end when the count value of the TCP retransmission timer and/or the TCP retransmission counter initiated by the retransmission unit exceeds a preset threshold.
- the message processing method and device for feedback packet loss determine whether a current TCP data packet is correctly received by using ACK/NACK information fed back by a radio link control (RLC) layer. Therefore, the TCP packet loss can be accurately determined and the accurate TCP packet loss information can be obtained. Only the data that is not correctly received can be retransmitted, which can reduce unnecessary retransmission, improve the performance of the wireless TCP, and make full use of the air interface resources.
- RLC radio link control
- FIG. 1 is a flowchart of a message processing method for feedback packet loss according to Embodiment 1 of the present invention
- 2 is a flowchart of processing a packet of a TCP packet according to Embodiment 1 of the present invention
- FIG. 3 is a schematic diagram of correspondence between protocol layers in an RNC according to Embodiment 1 of the present invention
- FIG. 5 is a flowchart of a method for performing congestion control according to TCP NACK information according to Embodiment 2 of the present invention
- FIG. 6 is a signaling diagram of a message processing method for feedback packet loss according to Embodiment 3 of the present invention
- FIG. 7 is a schematic diagram of an extension header of a GTP-U protocol
- FIG. 8 is a schematic diagram of a message processing apparatus for feedback packet loss according to Embodiment 4 of the present invention
- FIG. 9 is a schematic diagram of a message processing apparatus for feedback packet loss according to Embodiment 5 of the present invention
- FIG. 10 is a schematic diagram of an RLC apparatus according to Embodiment 6 of the present invention. Schematic diagram of the structure;
- FIG. 11 is a schematic structural diagram of a TCP device according to Embodiment 7 of the present invention. detailed description
- Radio Link Control (RLC) layer is one of the protocols of the L2 layer of the LTE protocol stack, and is mainly used to provide a reliable data transmission link, which is used for shielding wireless The impact of the link and provide reliable data transmission for the upper layer.
- RLC Radio Link Control
- the radio access network (RAN) side includes an RNC node and a base station NodeB.
- the RNC node controls multiple NodeBs, and the NodeB directly communicates with a user equipment (User Equipment, UE).
- UE User Equipment
- the RAN side includes an eNodeB node, and the eNodeB node directly communicates with the Mobility Management Entity (MME) of the core network and the gateway, and simultaneously communicates with the UE.
- MME Mobility Management Entity
- the message processing method and device for feedback packet loss provided by the present invention are applied to determine the TCP transmission during the process of performing wireless TCP data transmission after establishing a bearer channel between the RAN side and the UE side. Whether the packet has been dropped.
- FIG. 1 is a flowchart of a message processing method for feedback packet loss according to the embodiment. As shown in FIG. 1, the method includes:
- the S1 0 RLC device receives the TCP packet sent by the TCP device, forms the TCP packet into an RLC packet, and sends the RLC packet to the peer device.
- the TCP packet received by the RLC device may be a processed TCP packet (such as a packet processed by another protocol layer) or a TCP packet sent by the TCP device.
- the peer device is usually a UE. The specific processing will be described in the following pages in conjunction with Figs. 2 and 3.
- the RLC device receives a response message of the RLC data packet returned by the peer device.
- the RLC device corresponding to the peer device returns the response information of the corresponding RLC packet for each RLC packet.
- the response information of the RLC packet may include RLC ACK information and/or RLC NACK information.
- the RLC device constructs a response message of the TCP packet corresponding to the RLC data packet according to the response message of the RLC data packet.
- the response message of an RLC packet is ACK
- the response message of the TCP packet corresponding to the RLC packet is ACK.
- the response message of an RLC packet is NACK
- the response message of the TCP packet corresponding to the RLC packet is NACK.
- a response message of the TCP packet is constructed based on the response message of the RLC packet, that is, the TCP ACK information is constructed using the RLC ACK information, and the TCP NACK information is constructed using the RLC NACK information.
- the RLC device feeds back the response message of the TCP packet to the TCP device.
- the TCP device determines whether the TCP packet is lost according to a response message of the TCP packet.
- the TCP device determines that the TCP packet has been dropped.
- the TCP device receives an ACK of a TCP packet, it determines that no packet loss has occurred in the TCP packet.
- FIG. 2 is a flowchart of processing a packet for a TCP packet according to the embodiment. As shown in FIG. 2, the process includes: The S101 RLC device receives the TCP packet sent by the TCP device and obtains information of the TCP packet carried in the TCP packet.
- the transmitting end may be the RAN side
- the receiving end may be the UE
- the RLC device and the TCP device are equally provided on the RAN side and the UE side.
- the TCP packet sent by the TCP device at the transmitting end usually performs pre-processing such as header compression and packet parsing through other protocol layers before reaching the RLC device, and the RLC device receives the processed TCP data. package.
- FIG. 3 is a schematic diagram of correspondence between protocol layers in an RNC.
- a TCP proxy server performs data transmission through a RNC and a base station NodeB.
- TCP Proxy Server Includes multiple TCP connections for multiple users.
- the RNC may include a Packet Data Convergence Protocol (PDCP) layer, an RLC device (ie, an RLC layer), a dedicated media access control (Media Acces s Cont ro l-D, MACD) layer, and media. Access control service (Med ia Acces s Cont ro l C li ent) layer.
- PDCP Packet Data Convergence Protocol
- RLC device ie, an RLC layer
- Media Acces s Cont ro l-D Media Acces s Cont ro l-D
- MACD media access control service
- Access control service Med ia Acces s Cont ro l C li ent
- the RNC receives the TCP data packet sent from the user's multiple TCP connections through the PDCP layer, and the PDCP layer parses the TCP data packet to obtain information of the TCP data packet, and the information of the TCP data packet includes one or any of the following. Combination: IP address, port and byte range, used to identify the TCP packet based on the information of the TCP packet.
- the PDCP layer also has a header compression function that passes the header-compressed TCP packets to the RLC device.
- the MAC layer performs scheduling on the RLC packets sent by the RLC device, and the MACC layer is used to aggregate and send the services in the cell to the NodeB.
- the RLC device receives the TCP packet sent by the TCP device at the transmitting end,
- the TCP packet is parsed to obtain the information of the TCP packet, and the parsed TCP packet is sent to the PDCP layer for header compression processing, and the RLC device supplies the packet processed by the PDCP layer to S1012.
- the SI 012 the RLC device identifies the TCP packet according to the information of the TCP packet, and records the identifier of the TCP packet.
- the identifier of the data packet includes one or any of the information of the TCP packets listed below. Combination: IP address, port and byte range.
- the RLC device performs RLC grouping on the data packet to form an RLC data packet, and identifies the RLC data packet.
- the processed RLC data packet may be sent to the peer device through other protocol layers, for example, sent through the MACD layer in FIG.
- the RLC device determines the size of the packet according to the scheduling of the MACD layer, and how much data is sent to the MACD layer for traffic control, thereby avoiding congestion of the IuB port between the RNC and the NodeB.
- the RLC device establishes and records a correspondence between the RLC data packet and the TCP data packet according to the identifier of the data packet and the identifier of the RLC data packet.
- the correspondence between the RLC data packet and the TCP data packet is one of the following three types: one of the TCP data packets corresponds to one of the RLC data packets; one of the TCP data packets corresponds to multiple of the RLC data packets; or, multiple The TCP data packet corresponds to one of the RLC data packets.
- a response message of the TCP packet is constructed according to the correspondence between the RLC packet and the TCP packet.
- the ACK of the RLC packet is an ACK of the TCP packet. If a TCP packet corresponds to multiple RLC packets, if the ACK of multiple RLC packets is received, then the TCP packet can be considered as ACK, that is, multiple RLC packets are required to be ACK. If multiple TCP packets correspond to one RLC packet, the ACK of the RLC packet is the ACK of multiple TCP packets.
- the present invention can accurately determine whether TCP packet loss has occurred, and can obtain accurate TCP packet loss information, and clarify which data packet is specifically lost, and can efficiently perform data retransmission.
- FIG. 4 is a flowchart of a message processing method for feedback packet loss according to the embodiment. As shown in FIG. 4, the method includes: The S20 TCP device receives a response message of the TCP packet sent by the RLC device at the transmitting end. The response message of the TCP packet is obtained by the method of Embodiment 1, and details are not described herein again.
- the TCP device determines, according to the response message of the TCP packet, whether the corresponding TCP packet is lost. When it is determined that the TCP packet is lost, the process proceeds to S203, otherwise, the process proceeds to S205.
- the TCP device retransmits the corresponding TCP packet to the peer device, and starts a TCP retransmission timer and/or a TCP retransmission counter.
- the TCP device reduces the congestion window value of the sending end when the count value of the TCP retransmission timer and/or the TCP retransmission counter exceeds a preset threshold.
- the response message of the received TCP packet is a TCP NACK message
- the data is retransmitted, and the TCP retransmission timer or the TCP retransmission counter is started.
- the TCP retransmission timer expires or the TCP retransmission counter exceeds a preset threshold, the congestion window value is reduced.
- the TCP device increases a congestion window value of the sending end.
- the TCP device After receiving the TCP ACK message fed back by the RLC device, the TCP device performs sliding of the transmission window and increases the size of the congestion window.
- the specific processing is the same as that in the existing TCP protocol.
- the response message of the TCP packet received by the TCP device is the TCP NACK information.
- the specific processing is shown in FIG. 5, including:
- S30 sets the retransmission timeout (RTO) threshold of the TCP device RTO_threshold.
- the size of the RT0 threshold RTO_threshold can be set according to actual needs. In the input, it is usually necessary to set a relatively small RTO threshold because the delay time of the direct packet loss of the RLC layer is very short.
- the initial value of the congestion window value can be set to be the same as the advertised window size, that is, the flow control function is completely handed over to the RLC layer and the underlying MAC layer.
- the RLC device can accurately feed back the NACK information of any TCP packet, the mechanism for using the RT0 to perform packet loss judgment in the TCP device may not be used.
- the TCP device can perform effective congestion control according to the response message fed back by the RLC device, accurately retransmit the lost TCP packet, and optimize the wireless TCP system.
- FIG. 6 is a signaling diagram of a message processing method for feedback packet loss according to the embodiment. As shown in FIG. 6, the method includes:
- the S40 RAN TCP device transmits a TCP packet to the RAN RLC device.
- the RAN RLC apparatus groups the TCP data packet to form an RLC data packet. After receiving the TCP data packet sent by the TCP device at the transmitting end, the RAN RLC device groups the TCP data packet to form at least one RLC data packet, and records the TCP data packet and the RLC data packet. Correspondence.
- the RAN RLC apparatus sends the RLC data packet to the user equipment UE.
- the UE RLC device feeds back the RLC ACK information to the RAN RLC device by receiving the RLC data packet.
- the UE RLC apparatus sends a TCP data packet formed by the RLC data packet group to the UE TCP device.
- the RAN RLC device constructs TCP ACK information according to the RLC ACK information fed back by the UE RLC device.
- the RAN RLC device constructs ACK information of the corresponding TCP packet according to the relationship between the current RLC data packet and the TCP data packet, and then feeds back the TCP ACK information to the RAN TCP device.
- the RAN RLC device sends the TCP ACK information to the RAN TCP device.
- the RAN TCP device receives the TCP ACK information, it is determined that the TCP packet has no packet loss.
- the RAN RLC device receives the TCP ACK information fed back by the UE TCP device.
- the RAN RLC device compares the TCP ACK information fed back by the UE TCP device with the TCP ACK information.
- the RLC ACK information fed back by the UE RLC device is generally more than the TCP fed back by the UE TCP device.
- the ACK message arrived early. If the TCP ACK information fed back by the UE TCP device is consistent with the constructed TCP ACK information, it is confirmed that there is no packet loss, and the TCP ACK information fed back by the UE TCP device is not sent to the RAN TCP device. If it is inconsistent, it is determined that the RLC data packet is lost when the UE RLC device sends the UE TCP device, and the packet loss may be determined according to the TCP ACK information and the RLC ACK information fed back by the peer device. And a TCP packet, and instructing the TCP device to retransmit the TCP packet in which the packet loss occurs or to send the RLC packet corresponding to the TCP packet in which the packet loss occurs, and perform a retransmission operation.
- the RAN RLC device sends 6 data packets to the UE, specifically identified as 1 to 6, and the RLC ACK information fed back by the UE RLC device is 1, 2, 3, 5, 6 , indicating that the received identifier is 1, 2, 3
- the RLC data packet of 5, 6 corresponds to the correspondence between the RLC data packet identifier and the TCP data packet identifier
- the corresponding TCP ACK information can be constructed according to the RLC ACK
- the RLC data packet identifier corresponds to the TCP data packet identifier.
- the constructed TCP ACK information is also 1, 2, 3, 5, and 6, indicating that the TCP packets with the identifiers 1, 2, 3, 5, and 6 have no packet loss.
- the TCP ACK information fed back by the UE TCP device is 3, indicating that the data packet with the identifier 1, 2, 3 is received. It can be seen that the TCP ACK information fed back by the UE TCP device is inconsistent with the constructed TCP ACK information, and it can be determined that the TCP packet with packet loss occurs, and can be determined according to the TCP ACK information and the constructed TCP ACK information fed back by the UE TCP device. If the TCP packet with packet loss is a TCP packet with the identifier 4, the RAN TCP device is instructed to retransmit the TCP packet with the identifier 4 or the RLC packet with the RAN RLC device retransmission identifier 4, corresponding to the identifier 4 TCP packet.
- the identifier of the lost RLC data packet and the corresponding TCP packet identifier are similarly determined, and the packet retransmission of the lost packet is performed.
- the UE RLC device feeds back the RLC NACK information to the RAN RLC device for the unreceived RLC data packet.
- the S41 RAN RLC device retransmits the RLC packet that feeds back the RLC NACK information.
- the RAN RLC device retransmits the corresponding RLC packet and starts the RLC retransmission timer or the RLC retransmission counter.
- the count value of the RLC retransmission timer and/or the RLC retransmission counter exceeds a preset threshold, it indicates that an RLC random packet loss, an RLC timeout packet loss, an RLC retransmission timeout, or an RLC retransmission failure occurs. S41 2.
- the RLC device In an RLC device, there are many cases in which one data is lost. For example, if its cache cannot receive TCP packets from the PDCP layer, the RLC device can directly discard the RLC packets. Or, after an RLC packet is transmitted multiple times, exceeds the retransmission time limit, or exceeds the retransmission limit, the NACK is fed back to the TCP device. That is, the RAN RLC device considers various packet loss scenarios, but the feedback to the TCP layer is a NACK message, because for the RAN TCP device, a certain TCP packet is not successfully transmitted.
- the RAN RLC device constructs TCP NACK information according to the RLC NACK information, and is used to instruct the TCP device to retransmit the TCP data packet corresponding to the TCP NACK information.
- the RAN RLC device sends TCP NACK information to the RAN TCP device.
- the RAN TCP device determines a packet loss condition of the TCP packet.
- the packet loss condition is determined according to the TCP ACK information or the TCP NACK information fed back by the RAN RLC device.
- the TCP ACK message When the TCP ACK message is received, it indicates that the packet transmission was successful.
- the TCP device determines the packet loss as follows: First, when the RLC device feeds back the TCP NACK information, it indicates that packet loss must occur. Lost data packets may fail after multiple retransmissions, or they may be directly discarded by the RLC device. If the NACK information fed back after multiple failures is retransmitted, the RT0 recording time of the data packet is relatively long. If it is directly discarded by the RLC device, there are two possibilities: One is to wait for a period of time to discard, The data packet is recorded in the RT0 timer of the TCP device for a relatively long time; one is because the buffer is already full and directly discarded, then the time recorded by the RT0 timer of the TCP device is very short. Under normal circumstances, whether it is retransmission timeout, retransmission times, or waiting timeout, then the RT0 time of the packet is relatively long, and the time of the RT0 timer recorded by the packet is Very short.
- the RAN TCP device retransmits the lost TCP packet.
- the specific transmission conditions of the RLC data packet are as follows: The first one is a successful transmission, the second is a retransmission multiple success, the third is a retransmission multiple times and the number of retransmissions fails, the fourth is After retransmission, it fails more than the time limit of retransmission. In the fifth case, if the buffer of the RLC device is full, the received data packet is directly discarded. In the third, fourth, and fifth cases, the RLC devices feed back the NACK information corresponding to the TCP packet to the TCP device, and the TCP layer retransmits.
- the TCP device and the RLC device are grouped on the radio side (ie, the RAN side), which can completely solve the problem of packet loss judgment in the wireless TCP, and also avoid the delay problem of information transmission.
- the network element capable of providing the RLC device in the RAN side may be a device such as an RNC or an eNodeB, and the TCP ACK/NACK information fed back by the RAN side may provide a network element location as an RNC, an eNodeB, and a general packet radio service gateway support node (Gateway GPRS). Support Node, GGSN) and Packet Data Network Gateway (P-GW). That is to say, the TCP ACK/NACK information fed back by the RAN side can be directly fed back to other network elements through the RNC or the eNodeB, or can be forwarded to the GGSN, P-GW, etc. through the RNC or the eNodeB, and then forwarded to other network elements. Therefore, in this embodiment, the RLC device may be an RNC, an eNodeB, or the like, and the TCP device may be a RNC, an eNodeB, a GGSN, a P-GW, or the like.
- the extension header of the GTP-U protocol can be used to transmit the corresponding TCP.
- ACK/NACK information. 7 is a schematic diagram of an extended header of a GTP-U protocol, including an extended header length, an extended header content, and a next extended header type, which can be transmitted as TCP ACK/NACK information.
- TCP ACK/NACK information is also available. The transmission is performed by using the ACK and NACK flag bits in the SACK in the RLC device. Since the SACK is located in the RLC device, it is not required to have the SACK option for the TCP device, and can be transmitted.
- the foregoing RAN TCP device and the RAN RLC device may be in the same base station device, and the base station device may be a device such as an RNC or an eNodeB.
- the TCP device at the transmitting end may not be in the RAN side, that is, there is no TCP optimization in the RAN side, and the RAN TCP device and the RAN RLC device are in different network elements, and the RAN RLC device may send the feedback TCP ACK information or The TCP NACK information is fed back to the TCP device of other network elements, for example, a Serving GPRS Suppering Node (SGSN) or a Policy and Charging Rules function (Po li cy And Charging Rul es Funcion,
- SGSN Serving GPRS Suppering Node
- Po li cy And Charging Rul es Funcion The specific processing of the network element, such as the PCRF, is similar to the embodiment, and will not be described again.
- FIG. 8 is a schematic diagram of a message processing apparatus for feedback packet loss according to the embodiment.
- the apparatus of the present invention includes: a packet unit 501, a receiving unit 502, a processing unit 503, and a transmitting unit 504.
- the packet unit 501 is configured to receive a TCP packet sent by the TCP device, group the TCP packet into an RLC packet, and send the RLC packet to the peer device.
- the packet unit 501 specifically includes: a receiving subunit, a recording subunit, a packet subunit, and a storage subunit (not shown).
- the receiving subunit is configured to receive the TCP data packet sent by the TCP device and obtain the information of the TCP data packet carried in the TCP data packet.
- FIG. 3 is a schematic diagram of the correspondence between protocol layers in the RNC. As shown in FIG. 3, the TCP proxy performs data transmission with the base station NodeB through the RNC.
- the TCP proxy server includes multiple TCP connections for multiple users.
- the RNC may include a Packet Data Convergence Pro toco l (PDCP) layer, an RLC device, a dedicated media access control (Met ia Acces s Cont ro lD , MACD ) layer, and a media access control service ( Med Ia Acces s Cont ro l CI i ent ) layer.
- the RNC receives TCP packets sent from multiple TCP connections of the user through the PDCP layer, and the PDCP layer parses the TCP packets to obtain information of the TCP packets, and the header information includes one or any combination of the following: IP The address, port, and byte range are used to identify the TCP packet based on the information of the TCP packet.
- the PDCP layer also has a header compression function that passes the header-compressed TCP packets to the RLC device.
- the MACD layer performs scheduling on the RLC data packets sent by the RLC device, and the MACC layer is used to aggregate and send the services in the cell to the NodeB.
- the receiving subunit further parses the TCP packet to obtain the information of the TCP packet, and then sends the parsed TCP packet to the PDCP layer for header.
- the compression process is performed, and the data packet processed by the PDCP layer is further provided to the recording subunit.
- the recording subunit is configured to identify the TCP data packet according to the information of the TCP data packet obtained by the receiving subunit, and record an identifier of the TCP data packet.
- the identifier of the TCP packet recorded by the recording subunit includes one or any combination of the information of the following TCP packets: IP address, port and byte range.
- the packet subunit is configured to perform RLC grouping on the TCP packet received by the receiving subunit to form an RLC data packet, and identify the RLC data packet.
- the packet sub-unit determines the size of the packet according to the scheduling of the MACD layer, and how much data is sent to the MACD layer for traffic control to avoid congestion of the IuB port between the RNC and the NodeB.
- the storage subunit is configured to establish and record a correspondence between the RLC data packet and the TCP data packet according to the identifier of the TCP data packet recorded by the recording subunit and the identifier of the RLC data packet obtained by the group packet subunit.
- the correspondence between the RLC data packet recorded by the storage subunit and the TCP data packet is one of the following three types: one of the TCP data packets corresponds to one of the RLC data packets; and one of the TCP data packets corresponds to multiple of the RLC data packets. Or, a plurality of the TCP data packets correspond to one of the RLC data packets.
- the receiving unit 502 is configured to receive a response message of the RLC data packet returned by the RLC device sent by the RLC device of the peer device to the RLC data packet.
- the RLC device of the peer device returns the response information of the corresponding RLC packet for each RLC packet.
- the response information of the RLC data packet received by the receiving unit 502 includes RLC ACK information and/or RLC NACK information.
- the processing unit 503 is configured to construct a response message of the TCP packet corresponding to the RLC data packet according to the response message of the RLC data packet received by the receiving unit 502.
- the processing unit 503 constructs a response message of the TCP packet based on the correspondence between the RLC packet recorded in the packet unit 501 and the TCP packet.
- the processing unit 503 constructs a response message of the TCP packet according to the response message of the RLC packet, that is, constructs TCP ACK information by using the RLC ACK information, and constructs TCP NACK information by using the RLC NACK information to indicate the TCP device. Retransmitting the TCP packet corresponding to the TCP NACK information.
- the processing unit 503 constructs a response message of the TCP data packet according to the response message of the RLC data packet by using the correspondence between the RLC data packet and the TCP data packet recorded by the storage subunit. Specifically, if a TCP packet corresponds to only one RLC packet, the ACK of the RLC packet is an ACK of the TCP packet. If a TCP packet corresponds to multiple RLC packets, if the ACK of multiple RLC packets is received, then the TCP packet can be considered as ACK, that is, multiple RLC packets are required to be ACK. If multiple TCP packets correspond to one RLC packet, the ACK of the RLC packet is the ACK of multiple TCP packets.
- the sending unit 504 is configured to feed back a response message of the TCP packet obtained by the processing unit 503 to TCP device.
- the TCP device determines whether the TCP packet is lost according to a response message of the TCP packet.
- the transmitting unit 504 transmits the TCP NACK information
- the TCP device at the transmitting end determines that the TCP packet has been dropped.
- the TCP device at the transmitting end receives an ACK of a certain TCP packet, it is determined that no packet loss has occurred in the TCP packet.
- the response message of the TCP packet fed back by the sending unit is transmitted through an extension header of the GPRS tunneling protocol GTP-U of the user plane or a selective acknowledge SACK.
- the message processing apparatus of the present invention further includes: a comparing unit 505 and a first retransmission unit
- the comparing unit 505 is connected to the receiving unit 502, the processing unit 503, and the transmitting unit 504.
- the receiving unit 502 is further configured to receive ACK information fed back by the TCP device of the peer device.
- the comparing unit 505 is configured to compare the ACK information fed back by the TCP device received by the receiving unit 502 with the TCP ACK information obtained by the processing unit 503, and if not, determine that the data packet is sent to the receiving end. If the TCP device is the same, it is determined that no packet loss occurs, and the sending unit 504 is no longer triggered to send the ACK information fed back by the TCP device to the transmitting end.
- the RLC ACK information fed back by the UE RLC device is generally earlier than the TCP ACK information fed back by the UE TCP device. If the TCP ACK information fed back by the UE TCP device is consistent with the constructed TCP ACK information, the comparing unit 505 confirms that there is no packet loss, and does not send the TCP ACK information fed back by the TCP device to the TCP device of the transmitting end. If not, the comparing unit 505 determines that the RLC data packet is lost when the RLC device of the UE sends the TCP device to the UE, and may use the TCP ACK information and the RLC ACK information that are fed back by the peer device.
- the TCP packet that sends the RLC ACK information is discarded by the TCP device after being transmitted to the TCP device.
- the first retransmission unit 506 is connected to the receiving unit 502 and the processing unit 503.
- the first retransmission unit 506 is configured to: when the response message of the RLC data packet received by the receiving unit 502 is RLC NACK information, retransmit the RLC data packet of the RLC data packet to the RLC NACK information.
- a peer device and starting an RLC retransmission timer and/or an RLC retransmission counter; when the count value of the RLC retransmission timer and/or the RLC retransmission counter exceeds a preset threshold, the trigger processing unit 503 is configured according to the The RLC NACK information constructs TCP NACK information.
- FIG. 9 is a schematic diagram of a message processing apparatus for feedback packet loss according to an embodiment of the present invention. As shown in FIG. 9, the apparatus includes: a receiving unit 601, a determining unit 602, a second retransmission unit 603, and an adjusting unit 604.
- the receiving unit 601 is configured to receive TCP NACK information sent by the RLC device.
- the TCP NACK information is obtained by the apparatus of the fourth embodiment.
- the determining unit 602 is configured to determine the TCP packet of the packet loss according to the TCP NACK information received by the receiving unit 601.
- the second retransmission unit 603 is configured to: after the determining unit 602 determines the TCP packet of the lost packet, retransmit the TCP packet of the lost packet to the UE, and start a TCP retransmission timer and/or a TCP retransmission counter. .
- the adjusting unit 604 is configured to reduce the congestion window value of the transmitting end when the count value of the TCP retransmission timer and/or the TCP retransmission counter started by the second retransmission unit 603 exceeds a preset threshold.
- the determining unit 602 determines that the corresponding TCP packet is lost, the second retransmission unit 603 performs data retransmission, and starts the TCP retransmission timer. Or TCP retransmission counter.
- the adjustment unit 604 reduces the congestion window value.
- the determining unit 602 determines that the data packet has no packet loss, and the adjusting unit 604 performs sliding of the sending window, and increases the size of the congestion window, and the specific processing process and existing The processing in the TCP protocol is the same.
- FIG. 10 is a schematic structural diagram of an RLC device according to an embodiment of the present invention. As shown in FIG. 10, the RLC device of the embodiment of the present invention may include:
- the processor 701 may be a single core or multi-core central processing unit (Centra l Proces s ing Uni t ,
- the CPU is either a specific integrated circuit (ASIC) or one or more integrated circuits configured to implement embodiments of the present invention.
- the first interface 702 is for interacting with a TCP device.
- the second interface 703 is used to interact with the peer device.
- the processor 701 is used to:
- the TCP packet received by the first interface 702 carries information of the TCP packet.
- the TCP packet received by the first interface 702 may be a processed TCP packet, or may be a TCP packet sent by a TCP device.
- the processor 701 identifies the TCP data packet according to the information of the TCP data packet, and records an identifier of the TCP data packet; performing an RLC group packet on the TCP data packet to form an RLC data packet, and identifying the An RLC data packet; and, according to the identifier of the TCP data packet and the identifier of the RLC data packet, establishing and recording a correspondence between the RLC data packet and the TCP data packet.
- the processor 701 uses the RLC data packet and the TCP according to the response message of the RLC data packet. Corresponding relationship of the data packet, constructing a response message of the TCP data packet.
- the processor 701 constructs TCP ACK information of the TCP packet based on the RLC ACK information.
- the second interface 703 may further receive the TCP ACK information that is fed back by the peer device, and the processor 701 compares the TCP ACK information fed back by the peer device with the constructed TCP ACK information, and if yes, determine If no packet loss occurs, the TCP ACK information fed back by the peer device is not sent to the TCP device; if not, it is determined that the TCP packet is generated when the TCP device is sent to the peer device. Lose the package.
- the processor 701 determines, according to the TCP ACK information and the RLC ACK information fed back by the peer device, the TCP packet in which the packet loss occurs, and instructs the TCP device to retransmit the TCP packet that is lost.
- the data packet or the RLC data packet corresponding to the TCP packet in which the packet loss occurs is sent through the second interface 703.
- the processor 701 is configured to construct TCP NACK information of the TCP data packet according to the RLC NACK information, to instruct the TCP device to retransmit the TCP NACK.
- the TCP packet corresponding to the information.
- the processor 701 retransmits the RLC data packet of the RLC data packet to the peer device, and starts an RLC retransmission timer and/or an RLC retransmission counter; when the RLC retransmits When the count value of the timer and/or the RLC retransmission counter exceeds a preset threshold, the TCP NACK information is constructed according to the RLC NACK information.
- the RLC device may also perform the processing methods shown in FIG. 1-3 and FIG. 6 above, and details are not described herein.
- FIG. 11 is a schematic structural diagram of a TCP device according to an embodiment of the present invention.
- the TCP device in the embodiment of the present invention may include: a processor 801 and a communication interface 802.
- the processor 801 may be a single core or multi-core central processing unit (CPU), or an application specific integrated circuit (ASIC), or one or more integrated systems configured to implement the embodiments of the present invention. Circuit. Communication interface 802 is used to interact with the RLC device.
- the processor 801 is used to:
- the TCP packet of the lost packet is determined according to the TCP NACK information.
- the TCP NACK information is configured by the RLC device according to the RLC NACK information.
- the specific configuration method is as described in the first embodiment or the third embodiment, and details are not described herein.
- the processor 801 When determining that there is a packet loss TCP packet, the processor 801 is further configured to retransmit the lost packet TCP packet to the peer device through the communication interface 802, and start a TCP retransmission timer and/or TCP.
- Retransmission counter when the count value of the TCP retransmission timer and/or the TCP retransmission counter exceeds a preset threshold, the congestion window value of the transmitting end is reduced, thereby performing congestion control on the transmission process.
- the TCP device further performs the foregoing control method shown in FIG. 4-6 according to the instruction, and details are not described herein again.
- the RLC device in Embodiment 6 may be a radio network controller RNC or an evolved base station eNodeB.
- the TCP device in the seventh embodiment may be an RNC or an eNodeB, or may be a device such as a GGSN or a P-GW. Since the RNC to the GGSN, the eNodeB and the P-GW are both the GPRS Tunneling Protocol (GPRS Tuning Protocol to Protocol), the response message of the TCP packet It is transmitted through the extension header of the user plane's GPRS tunneling protocol GTP-U. Of course, the response message of the TCP packet can also be transmitted by using the ACK and NACK flag bits in the SACK in the RLC device.
- GPRS Tunneling Protocol GPRS Tuning Protocol to Protocol
- the foregoing TCP device and the RLC device may be in the same base station device, and the base station device may be a device such as an RNC or an eNodeB. If the TCP device and the RLC device are in different network elements, the RLC device may feed back the TCP ACK information or the TCP NACK information to the TCP device of the other network element.
- the specific processing is similar to the embodiment, and details are not described herein.
- the message processing method and device for feedback packet loss provided by the present invention determine whether a current TCP packet is correctly received through the ACK/NACK information fed back by the RLC layer, thereby accurately determining the TCP packet loss and obtaining accurate TCP packet loss information. , only need to retransmit the data that was not received correctly, It can reduce unnecessary retransmissions, improve the performance of wireless TCP, and make full use of air interface resources.
- RAM random access memory
- ROM read-only memory
- EEPROM electrically programmable ROM
- EEPROM electrically erasable programmable ROM
- registers hard disk, removable disk, CD-ROM, or technical field Any other form of storage medium known.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Communication Control (AREA)
Abstract
本发明涉及一种反馈丟包的消息处理方法及装置,所述处理方法包括:RLC装置接收TCP装置发送的TCP数据包,将所述TCP数据包组包形成RLC数据包,并将所述RLC数据包发送给对端设备;所述RLC装置接收所述对端设备返回的所述RLC数据包的应答消息;所述RLC装置根据所述RLC数据包的应答消息构造所述RLC数据包对应的TCP数据包的应答消息;所述RLC装置将所述TCP数据包的应答消息反馈给所述TCP装置。本发明能够准确判断是否发生了TCP丟包,并可以获得准确的TCP丟包信息,明确具体丟失了哪个数据包。
Description
说 明 书
反馈丢包的消息处理方法及装置
技术领域
本发明涉及无线通信技术领域, 尤其涉及一种反馈丟包的消息处理及装 置。 背景技术
传输控制协议( Transmi s s ion Control Protocol , TCP )是目前互联网 上使用最为广泛的传输协议, 但其最初的设计目标是在有线网络中工作, 因 而当 TCP连接中存在一段无线空口部分(即无线 TCP ) 时, 针对有线网络所 涉及的 TCP协议就不再能够保证高效的工作。
在有线网络中, TCP 协议通过引入发送端拥塞窗口的控制机制, 来控制 传输的拥塞。 接收端会通知发送端其当前的接收窗口大小, 发送端根据这个 接收窗口大小以及拥塞窗口大小, 来决定发送端还能够发送多少数据给接收 端, 即真正的发送窗口的取值,为拥塞窗口和通告窗口中的最小值。 这样就可 以避免发送端发送过多的数据,而不会导致接收端的 TCP緩存溢出,以及降低 网络中拥塞出现的相无率。
在第三代移动通信技术( 3Id Genera t ion, 3G )的无线网络控制器( Radio
Network Control ler , RNC )或者第四代移动通信技术( 3rd Genera t ion, 3G ) 的演进型基站( evolut ion NodeB, eNodeB ) 中, 可能存在相应的 TCP代理功 能或 TCP实体, 用以对无线 TCP进行加速。 在具有 TCP代理功能或 TCP实体 的终端的无线侧, 由于空口丟包和非按序递交, 会导致接收端收到大量的乱 序包。 通常接收端在接收到乱序包后, 会发送多个重复的确认 ( Dup acknowledgement , Dup ACK )或者发送选择性确认 ( Selec t acknowledgement ,
SACK )给发送端, 表示丟失某个数据包。
由于发送 SACK的方案中要求接收端能够支持 SACK选项, 如果接收端不 支持使用 SACK选项, 则无法使用该方案。 因而, 现有的丟包判断方法大多采 用发送 Dup ACK的方案。 当发送端收到 Dup ACK时, 拥塞窗口会减小, 一般 减小到慢启动的门限大小; 而发送端在发送一个数据包后, 会启动一个定时 器。 在这个定时器的时间范围内, 如果还没有收到这个数据包的确认 ( acknowl edgemen t , ACK ) 的话, 拥塞窗口会减小到 1。
因而, 拥塞窗口的控制在 TCP协议中至关重要, 现有的很多算法都是针 对 TCP的拥塞窗口进行调整而给出的。 其中最为常见的算法是根据可用带宽 的估计值和拥塞窗口对应的带宽来判断是否可能丟包。 对当前的网络状态进 行一个判断,这个状态判断的结果可以是拥塞和不拥塞。 在拥塞情况下,如果 出现了重复的 ACK,或者是 RT0超时,则在重传数据包的同时,修改当前的拥塞 窗口的大小;在不拥塞的情况下, 如果出现了重复的 ACK,或者是 RT0超时,则 在重传数据包的同时,维持当前的拥塞窗口的大小不变,避免拥塞窗口调整过 小而导致的无线空口利用率不足的问题。 然而, 现有的这种算法^ ϋ于当前 的 TCP链路带宽估计进行的, 在对当前的 TCP链路带宽估计存在误差的情况 下, 对丟包的判断是不准确的, 而且也无法区分丟包和拥塞的情况, 另外, 也不能明确具体丟失的是哪个数据包。 发明内容
本发明的目的是提供一种反馈丟包的消息处理及装置, 能够准确判断是 否发生了 TCP丟包。
为实现上述目的, 本发明第一方面提供了一种无线链路控制 RLC装置, 包括: 处理器, 第一接口和第二接口;
所述第一接口, 用于与传输控制协议 TCP装置进行交互;
所述第二接口, 用于与对端设备进行交互;
所述处理器用于:
通过所述第一接口接收所述 TCP装置发送的 TCP数据包;
将所述 TCP数据包组包形成 RLC数据包;
通过所述第二接口将所述 RLC数据包发送给对端设备;
通过所述第二接口接收所述对端设备返回的所述 RLC 数据包的应答消 息;
根据所述 RLC数据包的应答消息构造所述 RLC数据包对应的 TCP数据包 的应答消息;
通过所述第一接口将所述 TCP数据包的应答消息反馈给所述 TCP装置。 结合第一方面, 在第一方面的第一种可能的实现方式中, 所述第一接口 接收的 TCP数据包中携带有 TCP数据包的信息, 所述 TCP数据包的信息包括 以下所列的一种或任意结合: IP地址、 端口和字节范围;
所述处理器用于将所述 TCP数据包组包形成 RLC数据包,具体包括: 所述处理器用于:
根据所述 TCP数据包的信息, 对所述 TCP数据包进行标识, 并记录所述
TCP数据包的标识;
对所述 TCP数据包进行 RLC组包形成 RLC数据包, 并标识所述 RLC数据 包; 以及
根据所述 TCP数据包的标识和所述 RLC数据包的标识, 建立并记录所述 RLC数据包与 TCP数据包的对应关系。
结合第一方面的第一种可能的实现方式, 在第一方面的第二种可能的实 现方式中, 所述处理器用于根据所述 RLC数据包的应答消息构造所述 RLC数 据包对应的 TCP数据包的应答消息, 包括:
所述处理器用于:
根据所述 RLC数据包的应答消息, 利用所述 RLC数据包与 TCP数据包的 对应关系, 构造所述 TCP数据包的应答消息。
结合第一方面, 在第一方面的第三种可能的实现方式中, 所述 RLC数据 包的应答消息为 RLC确认 ACK信息, 所述处理器用于根据所述 RLC数据包的 应答消息构造所述 RLC数据包对应的 TCP数据包的应答消息, 具体包括: 所述处理器用于根据所述 RLC ACK信息构造 TCP数据包的 TCP ACK信息。 结合第一方面的第三种可能的实现方式, 在第一方面的第四种可能的实 现方式中, 所述处理器还用于:
通过所述第二接口接收所述对端设备反馈的 TCP ACK信息;
将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP ACK信息相比较, 如果不一致, 则判断为所述 TCP数据包在发送给所述对端设备的 TCP装置时 发生丟包。
结合第一方面的第四种可能的实现方式, 在第一方面的第五种可能的实 现方式中, 当发生丟包时, 所述处理器还用于:
根据所述对端设备反馈的 TCP ACK信息和 RLC ACK信息确定发生丟包的 TCP数据包;
指示所述 TCP装置重传所述发生丟包的 TCP数据包或者通过所述第二接 口发送所述发生丟包的 TCP数据包对应的 RLC数据包。
结合第一方面的第三种可能的实现方式, 在第一方面的第六种可能的实 现方式中, 所述处理器还用于:
通过所述第二接口接收所述对端设备反馈的 TCP ACK信息;
将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP ACK信息相比较, 如果一致, 则判断为未发生丟包, 并不再向所述 TCP装置发送所述对端设备 反馈的 TCP ACK信息。
结合第一方面, 在第一方面的第七种可能的实现方式中, 所述 RLC数据 包的应答消息为 RLC否定确认 NACK信息,所述处理器用于根据所述 RLC数据 包的应答消息构造所述 RLC数据包对应的 TCP数据包的应答消息,具体包括: 所述处理器用于根据所述 RLC NACK信息构造 TCP数据包的 TCP NACK信
息, 用以指示所述 TCP装置重传所述 TCP NACK信息对应的 TCP数据包。
结合第一方面的第七种可能的实现方式, 在第一方面的第八种可能的实 现方式中,所述处理器用于根据所述 RLC NACK信息构造 TCP数据包的 TCP NACK 信息, 具体包括:
所述处理器用于:
将所述 RLC数据包的应答消息为 RLC NACK信息的 RLC数据包重传给所述 对端设备, 并启动 RLC重传定时器和 /或 RLC重传计数器;
当所述 RLC重传定时器和 /或 RLC重传计数器的计数值超过预设阈值时, 才艮据所述 RLC NACK信息构造 TCP NACK信息。
结合第一方面, 在第一方面的第九种可能的实现方式中, 所述 TCP数据 包的应答消息通过用户面的 GPRS隧道协议 GTP-U的扩展头或 TCP选择性确认
SACK选项来传递。
结合第一方面, 在第一方面的第十种可能的实现方式中, 所述 RLC装置 为无线网络控制器 RNC或者演进型基站 eNodeB。
第二方面, 提供了一种 TCP装置, 包括: 处理器和通信接口;
所述通信接口, 用于与 RLC装置进行交互;
所述处理器用于:
通过所述通信接口接收 RLC装置发送的 TCP NACK信息, 所述 TCP NACK 信息由所述 RLC装置根据 RLC NACK信息构造得到;
根据所述 TCP NACK信息确定丟包的 TCP数据包。
结合第二方面,在第二方面的第一种可能的实现方式中, 当确定丟包后, 所述处理器还用于:
通过所述通信接口重传所述丟包的 TCP数据包给所述对端设备, 并启动 TCP重传定时器和 /或 TCP重传计数器;
当所述 TCP重传定时器和 /或 TCP重传计数器的计数值超过预设阈值时, 缩小发送端的拥塞窗口值。
结合第二方面, 在第二方面的第二种可能的实现方式中, 所述 TCP装置 为 RNC、 eNodeB , GGSN、 SGSN或者 PGW。
第三方面, 提供了一种基站设备, 包括: 本发明实施例所述 RLC装置和 TCP装置。
第四方面, 提供了一种反馈丟包的消息处理方法, 所述方法包括: 无线链路控制 RLC装置接收传输控制协议 TCP装置发送的 TCP数据包, 将所述 TCP数据包组包形成 RLC数据包, 并将所述 RLC数据包发送给对端设 备;
所述 RLC装置接收所述对端设备返回的所述 RLC数据包的应答消息; 所述 RLC装置根据所述 RLC数据包的应答消息构造所述 RLC数据包对应 的 TCP数据包的应答消息;
所述 RLC装置将所述 TCP数据包的应答消息反馈给所述 TCP装置。
结合第四方面, 在第四方面的第一种可能的实现方式中, 所述 RLC装置 接收的所述 TCP数据包中携带有 TCP数据包的信息, 所述 TCP数据包的信息 包括以下所列的一种或任意结合: IP地址、 端口和字节范围;
所述将所述 TCP数据包组包形成 RLC数据包, 包括:
所述 RLC装置根据所述 TCP数据包的信息,对所述 TCP数据包进行标识, 并记录所述 TCP数据包的标识;
所述 RLC装置对所述 TCP数据包进行 RLC组包形成 RLC数据包, 并标识 所述 RLC数据包;
所述 RLC装置根据所述 TCP数据包的标识和所述 RLC数据包的标识, 建 立并记录所述 RLC数据包与 TCP数据包的对应关系。
结合第四方面的第一种可能的实现方式, 在第四方面的第二种可能的实 现方式中,所述根据所述 RLC数据包的应答消息构造 TCP数据包的应答消息, 具体为:
根据所述 RLC数据包的应答消息, 利用所述 RLC数据包与 TCP数据包的
对应关系, 构造所述 TCP数据包的应答消息。
结合第四方面, 在第四方面的第三种可能的实现方式中, 所述 RLC数据 包的应答消息为 RLC ACK信息;
所述根据所述 RLC数据包的应答消息构造 TCP数据包的应答消息, 具体 为:
根据所述 RLC ACK信息构造 TCP数据包的 TCP ACK信息。
结合第四方面的第三种可能的实现方式, 在第四方面的第四种可能的实 现方式中, 在所述 RLC装置将所述 TCP数据包的应答消息反馈给所述 TCP装 置之后, 还包括:
所述 RLC装置接收所述对端设备反馈的 TCP ACK信息;
所述 RLC装置将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP ACK 信息相比较,如果不一致,则判断为所述数据包在发送给所述对端设备的 TCP 装置时发生丟包。
结合第四方面的第四种可能的实现方式, 在第四方面的第五种可能的实 现方式中, 当发生丟包时, 所述方法还包括:
所述 RLC装置根据所述对端设备反馈的 TCP ACK信息和 RLC ACK信息确 定发生丟包的 TCP数据包;
所述 RLC装置指示所述 TCP装置重传所述发生丟包的 TCP数据包或者发 送所述发生丟包的 TCP数据包对应的 RLC数据包。
结合第四方面的第三种可能的实现方式, 在第四方面的第六种可能的实 现方式中, 在所述 RLC装置将所述 TCP数据包的应答消息反馈给所述 TCP装 置之后, 还包括:
所述 RLC装置接收所述对端设备反馈的 TCP ACK信息;
所述 RLC装置将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP ACK 信息相比较, 如果一致, 则判断为未发生丟包, 并不再向所述 TCP装置发送 所述对端设备反馈的 TCP ACK信息。
结合第四方面, 在第四方面的第七种可能的实现方式中, 所述 RLC数据 包的应答消息为 RLC NACK信息;
所述根据所述 RLC数据包的应答消息构造 TCP数据包的应答消息, 具体 为:
根据所述 RLC NACK信息构造 TCP数据包的 TCP NACK信息, 用以指示所 述 TCP装置重传所述 TCP NACK信息对应的 TCP数据包。
结合第四方面的第七种可能的实现方式, 在第四方面的第八种可能的实 现方式中, 所述根据所述 RLC NACK信息构造 TCP数据包的 TCP NACK信息, 具体包括:
将所述 RLC数据包的应答消息为 RLC NACK信息的 RLC数据包重传给所述 对端设备, 并启动 RLC重传定时器和 /或 RLC重传计数器;
当所述 RLC重传定时器和 /或 RLC重传计数器的计数值超过预设阈值时, 才艮据所述 RLC NACK信息构造 TCP NACK信息。
结合第四方面, 在第四方面的第九种可能的实现方式中, 所述 TCP数据 包的应答消息通过 GTP-U的扩展头或 TCP SACK选项来传递。
第五方面, 提供了一种反馈丟包的消息处理方法, 所述方法包括: 接收 RLC装置发送的 TCP否定确认 NACK信息, 所述 TCP NACK信息由所 述 RLC装置根据 RLC NACK信息构造得到;
根据所述 TCP NACK信息确定丟包的 TCP数据包。
结合第五方面, 在第五方面的第一种可能的实现方式中, 在所述根据所 述 TCP NACK信息确定丟包的 TCP数据包之后, 还包括:
重传所述丟包的 TCP数据包给所述对端设备,并启动 TCP重传定时器和 / 或 TCP重传计数器;
当所述 TCP重传定时器和 /或 TCP重传计数器的计数值超过预设阈值时, 缩小发送端的拥塞窗口值。
第六方面, 提供了一种反馈丟包的消息处理装置, 所述装置包括:
组包单元, 用于接收 TCP装置发送的 TCP数据包, 将所述 TCP数据包组 包形成 RLC数据包, 并将所述 RLC数据包发送给对端设备;
接收单元, 用于接收所述对端设备针对所述组包单元发送的所述 RLC数 据包返回的所述 RLC数据包的应答消息;
处理单元, 用于根据所述接收单元接收的所述 RLC数据包的应答消息构 造所述 RLC数据包对应的 TCP数据包的应答消息;
发送单元, 用于将所述处理单元得到的 TCP数据包的应答消息反馈给所 述 TCP装置。
结合第六方面, 在第六方面的第一种可能的实现方式中, 所述组包单元 具体包括:
接收子单元, 用于接收所述 TCP装置发送的 TCP数据包并得到所述 TCP 数据包中携带的 TCP数据包的信息, 所述 TCP数据包的信息包括以下所列的 一种或任意结合: IP地址、 端口和字节范围;
记录子单元, 用于根据所述接收子单元得到的所述 TCP数据包的信息, 对所述 TCP数据包进行标识, 并记录所述 TCP数据包的标识;
组包子单元, 用于对所述接收子单元接收的所述 TCP数据包进行 RLC组 包形成 RLC数据包, 并标识所述 RLC数据包;
存储子单元, 用于根据记录子单元记录的所述 TCP数据包的标识和所述 组包子单元得到的所述 RLC数据包的标识,建立并记录所述 RLC数据包与 TCP 数据包的对应关系。
结合第六方面的第一种可能的实现方式, 在第六方面的第二种可能的实 现方式中, 所述处理单元具体用于根据所述 RLC数据包的应答消息, 利用所 述存储子单元记录的所述 RLC数据包与 TCP数据包的对应关系,构造所述 TCP 数据包的应答消息。
结合第六方面, 在第六方面的第三种可能的实现方式中, 当所述接收单 元接收的所述 RLC数据包的应答消息为 RLC ACK信息时, 所述处理单元根据
所述 RLC ACK信息构造 TCP数据包的 TCP ACK信息。
结合第六方面的第三种可能的实现方式, 在第六方面的第四种可能的实 现方式中, 所述接收单元还用于接收所述对端设备反馈的 TCP ACK信息; 所述装置还包括:
比较单元, 用于将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP
ACK 信息相比较, 如果不一致, 则判断为所述数据包在发送给所述对端设备 的 TCP装置时发生丟包。
结合第六方面的第四种可能的实现方式, 在第六方面的第五种可能的实 现方式中, 当发生丟包时, 所述比较单元根据所述对端设备反馈的 TCP ACK 信息和 RLC ACK信息确定发生丟包的 TCP数据包; 并触发所述发送单元发送 指示所述 TCP装置重传所述发生丟包的 TCP数据包的指令或者发送所述发生 丟包的 TCP数据包对应的 RLC数据包的指令。
结合第六方面的第三种可能的实现方式, 在第六方面的第六种可能的实 现方式中, 所述接收单元还用于接收所述对端设备反馈的 TCP ACK信息; 所述装置还包括:
比较单元, 用于将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP ACK 信息相比较, 如果一致, 则判断为未发生丟包, 并不再触发所述发送单 元向所述 TCP装置发送所述对端设备反馈的 TCP ACK信息。
结合第六方面, 在第六方面的第七种可能的实现方式中, 当所述接收单 元接收的所述 RLC数据包的应答消息为 RLC NACK信息时, 所述处理单元根据 所述 RLC NACK信息构造 TCP数据包的 TCP NACK信息, 用以指示所述 TCP装 置重传所述 TCP NACK信息对应的 TCP数据包。
结合第六方面的第七种可能的实现方式, 在第六方面的第八种可能的实 现方式中, 所述装置还包括:
第一重传单元, 用于当所述接收单元接收的所述 RLC数据包的应答消息 为 RLC NACK信息时, 将所述 RLC数据包的应答消息为 RLC NACK信息的 RLC
数据包重传给所述对端设备, 并启动 RLC重传定时器和 /或 RLC重传计数器; 当所述 RLC重传定时器和 /或 RLC重传计数器的计数值超过预设阈值时,触发 所述处理单元根据所述 RLC NACK信息构造 TCP NACK信息。
结合第六方面, 在第六方面的第九种可能的实现方式中, 所述发送单元 反馈的所述 TCP数据包的应答消息通过 GTP-U的扩展头或 TCP SACK选项来传 递。
第七方面, 提供了一种反馈丟包的消息处理装置, 所述装置包括: 接收单元, 用于接收 RLC装置发送的 TCP否定确认 NACK信息, 所述 TCP
NACK信息由所述 RLC装置根据 RLC NACK信息构造得到;
判断单元, 用于根据所述接收单元接收的所述 TCP NACK信息确定丟包的
TCP数据包。
结合第七方面, 在第七方面的第一种可能的实现方式中, 所述装置还包 括:
第二重传单元, 用于当所述判断单元确定所述丟包的 TCP数据包之后, 重传所述丟包的 TCP数据包给所述对端设备, 并启动 TCP重传定时器和 /或 TCP重传计数器;
调整单元, 用于当所述重传单元启动的所述 TCP 重传定时器和 /或 TCP 重传计数器的计数值超过预设阈值时, 缩小发送端的拥塞窗口值。
本发明提供的反馈丟包的消息处理方法及装置, 通过无线链路控制 ( Rad i o L ink Cont ro l , RLC )层反馈的 ACK/NACK信息, 来判断当前的某个 TCP数据包是否正确接收, 从而准确判断 TCP丟包并获得准确的 TCP丟包信 息, 仅需要对没有正确接收的数据进行重传, 可以减少不必要的重传, 提升 无线 TCP的性能, 充分利用空口资源。 附图说明
图 1为本发明实施例一提供的反馈丟包的消息处理方法流程图;
图 2为本发明实施例一提供的对 TCP数据包进行组包的处理流程图; 图 3为本发明实施例一提供的 RNC中各协议层的对应关系示意图; 图 4为本发明实施例二提供的反馈丟包的消息处理方法流程图; 图 5为本发明实施例二提供的根据 TCP NACK信息进行拥塞控制的方法流 程图;
图 6为本发明实施例三提供的反馈丟包的消息处理方法的信令图; 图 7为一种 GTP-U协议的扩展头的示意图;
图 8为本发明实施例四提供的反馈丟包的消息处理装置示意图; 图 9为本发明实施例五提供的反馈丟包的消息处理装置示意图; 图 10为本发明实施例六提供的 RLC装置的结构组成示意图;
图 11为本发明实施例七提供的 TCP装置的结构组成示意图。 具体实施方式
下面通过附图和实施例, 对本发明的技术方案做进一步的详细描述。 第三代合作伙伴计划 ( 3rd Generation Partnership Project, 3GPP )开 始了 3G长期演进计划 (Long Term Evolution, LTE ) 。 在 LTE协议栈层次结 构中, 无线链路控制 (Radio Link Control, RLC)层作为 LTE协议栈 L2层 的协议之一, 主要用于提供可靠的数据传输链路, 该链路类型用于屏蔽无线 链路带来的影响并为上层提供可靠的数据传输。
在当前的 3G系统中, 无线接入网 ( Radio Access Network, RAN)侧包 括 RNC节点和基站 NodeB, RNC节点对多个 NodeB进行控制, NodeB直接与用 户设备(User Equipment, UE)进行通信。 在当前的 4G系统中, RAN侧包括 eNodeB 节点, eNodeB 节点直接与核心网的移动管理实体 ( Mobility Management Entity, MME)和网关进行通信, 同时和 UE进行通信。
本发明提供的反馈丟包的消息处理方法和装置应用于 RAN侧与 UE侧之间 建立承载通道之后, 进行无线 TCP数据传输的过程中, 用以判断传输的 TCP
数据包是否发生丟包的情况。
实施例一
图 1是本实施例提供的反馈丟包的消息处理方法流程图, 如图 1所示, 该方法包括:
S 1 0 RLC装置接收 TCP装置发送的 TCP数据包, 将所述 TCP数据包组 包形成 RLC数据包, 并将所述 RLC数据包发送给对端设备。
RLC装置接收到的 TCP数据包可以是处理过的 TCP数据包(如经过其他 协议层处理后的数据包) , 也可以是 TCP装置发送的 TCP数据包。 对端设备 通常为 UE。 具体的处理过程将在后续的篇幅中结合图 2和图 3进行说明。
S 1 02、 RLC装置接收所述对端设备返回的所述 RLC数据包的应答消息。 对端设备对应的 RLC装置会针对每一个 RLC数据包会返回对应 RLC数据 包的应答信息。 RLC数据包的应答信息可以包括 RLC ACK信息和 /或 RLC NACK 信息。
51 03、 RLC装置根据所述 RLC数据包的应答消息构造所述 RLC数据包对 应的 TCP数据包的应答消息。
如果某个 RLC数据包的应答消息为 ACK , 则该 RLC数据包对应的 TCP数 据包的应答消息为 ACK。 如果某个 RLC数据包的应答消息为 NACK , 则该 RLC 数据包对应的 TCP数据包的应答消息为 NACK。 利用这种对应关系, 根据 RLC 数据包的应答消息构造 TCP数据包的应答消息,即利用 RLC ACK信息构造 TCP ACK信息, 利用 RLC NACK信息构造 TCP NACK信息。
51 04、 RLC装置将所述 TCP数据包的应答消息反馈给所述 TCP装置。 TCP装置根据 TCP数据包的应答消息判断所述 TCP数据包是否丟包。 当
RLC装置发送 TCP NACK信息时, TCP装置则判断为 TCP数据包发生丟包。 当 TCP装置接收到某个 TCP数据包的 ACK , 则判断为该 TCP数据包未发生丟包。
图 2是本实施例提供的对 TCP数据包进行组包的处理流程图, 如图 2所 示, 该处理过程包括:
S101 RLC装置接收所述 TCP装置发送的 TCP数据包并得到所述 TCP数 据包中携带的 TCP数据包的信息。
在 RAN侧与 UE侧之间的数据传输过程中,发送端可以为 RAN侧,接收端 可以为 UE , 在 RAN侧与 UE侧均对等地设有 RLC装置和 TCP装置。 在实际应 用场景中, 发送端的 TCP装置发送的 TCP数据包在到达 RLC装置前通常还会 通过其他协议层进行头压缩、 数据包解析等预处理, RLC 装置接收到的是经 过处理后的 TCP数据包。
图 3是一种 RNC中各协议层的对应关系示意图, 如图 3所示, TCP代理 服务器( TCP proxy )通过 RNC与基站 NodeB进行数据传输。 TCP代理服务器 包括多个用户的多个 TCP连接。在 RNC中可以包括分组数据汇聚协议( Packet Da ta Convergence Protoco l , PDCP )层、 RLC装置(即 RLC层) 、 专用媒体 接入控制 (Med ia Acces s Cont ro l- D, MACD )层和媒体接入控制业务(Med i a Acces s Cont ro l C l i ent )层。 RNC通过 PDCP层接收从用户的多个 TCP连接 发送的 TCP数据包, PDCP层对 TCP数据包进行解析,得到 TCP数据包的信息, 所述 TCP数据包的信息包括以下所列的一种或任意结合: IP地址、 端口和字 节范围, 用以根据 TCP数据包的信息标识所述 TCP数据包。 PDCP层还具有头 压缩功能, 将进行头压缩后的 TCP数据包传递给 RLC装置。 MACD层对 RLC装 置发送的 RLC数据包进行调度, MACC层用于对小区内的业务进行汇总发送给 NodeB。
如果 RLC装置接收到的是发送端的 TCP装置发送的 TCP数据包, 则先对
TCP数据包进行解析, 得到 TCP数据包的信息, 再将解析后的 TCP数据包发 给 PDCP层进行头压缩处理, RLC装置再将经过 PDCP层处理后的数据包提供 给 S1012。
SI 012、 RLC装置根据所述 TCP数据包的信息, 对所述 TCP数据包进行标 识, 并记录所述 TCP数据包的标识。
相应的, 数据包的标识包括以下所列 TCP数据包的信息中的一种或任意
结合: IP地址、 端口和字节范围。
51 01 3、 RLC装置对所述数据包进行 RLC组包形成 RLC数据包, 并标识所 述 RLC数据包。
在实际应用场景中, RLC装置将标识好的 RLC数据包发送给对端设备时, 可能会通过其他协议层将处理后的 RLC数据包发送给对端设备, 例如图 3中 通过 MACD层发送。 此时, RLC装置根据 MACD层的调度来决定组包的大小, 以及该发送多少数据量给 MACD层, 以进行流量控制, 避免 RNC和 NodeB之间 IuB口的拥塞。
51 014、 RLC装置根据所述数据包的标识和所述 RLC数据包的标识, 建立 并记录所述 RLC数据包与 TCP数据包的对应关系。
RLC数据包与 TCP数据包的对应关系为以下三种之一: 一个所述 TCP数 据包对应一个所述 RLC数据包; 一个所述 TCP数据包对应多个所述 RLC数据 包; 或者, 多个所述 TCP数据包对应一个所述 RLC数据包。
在 S 1 03中,则根据 RLC数据包与 TCP数据包的对应关系来构建 TCP数据 包的应答消息。
具体地, 如果某个 TCP数据包仅对应一个 RLC数据包, 那么该 RLC数据 包的 ACK就是 TCP数据包的 ACK。 如果某个 TCP数据包对应于多个 RLC数据 包, 则多个 RLC数据包的 ACK都收到后, 那么该 TCP数据包才能认为 ACK , 即要求多个 RLC数据包都 ACK。 如果多个 TCP数据包对应于一个 RLC数据包, 则该 RLC数据包的 ACK就是多个 TCP数据包的 ACK。
本发明通过 RLC装置的消息反馈, 能够准确判断是否发生了 TCP丟包, 并可以获得准确的 TCP丟包信息, 明确具体丟失了哪个数据包, 可以有效率 地进行数据重传。
实施例二
图 4是本实施例提供的反馈丟包的消息处理方法流程图, 如图 4所示, 该方法包括:
S20 TCP装置接收发送端的 RLC装置发送的 TCP数据包的应答消息。 TCP数据包的应答消息通过实施例一的方法获得, 于此不再赘述。
5202、 TCP装置根据所述 TCP数据包的应答消息判断对应的所述 TCP数 据包是否丟包, 当判断到所述 TCP数据包发生丟包时, 进入 S203, 否则进入 S205。
5203、 TCP装置重传对应的所述 TCP数据包给对端设备, 并启动 TCP重 传定时器和 /或 TCP重传计数器。
5204、当所述 TCP重传定时器和 /或 TCP重传计数器的计数值超过预设阈 值时, TCP装置缩小发送端的拥塞窗口值。
如果接收到 TCP数据包的应答消息为 TCP NACK消息, 则认为对应的 TCP 数据包发生丟包, 则进行数据重传, 并启动 TCP重传定时器或 TCP重传计数 器。 当 TCP重传定时器超时或 TCP重传计数器超过预设阈值时, 缩小拥塞窗 口值。
5205、 TCP装置增大所述发送端的拥塞窗口值。
当 TCP装置收到 RLC装置反馈的 TCP ACK消息后, 进行发送窗口的滑动, 并增大拥塞窗口的大小, 具体的处理过程和现有的 TCP协议中的处理相同。
以 TCP装置接收的 TCP数据包的应答消息为 TCP NACK信息为例, 具体的 处理过程如图 5所示, 包括:
S30 设定 TCP装置的重传时间 ( Retransmission Timeout, RTO ) 门限 RTO_threshold。
5302、 接收数据包 n的 TCP NACK信息, 即可判断到数据包 n发生丟包。
5303、 启动 TCP重传定时器记录数据包 n的 RT0时间 RT0_n。
5304、 判断 RT0_n是否大于 RTO门限 RTO_threshold, 如果是, 则进入 S305, 重传数据包 n并减小拥塞窗口, 否则进入 S306, 重传数据包 n, 拥塞 窗口保持不变。
RT0 门限 RTO_threshold的大小可以根据实际需要进行设定, 在实际传
输中, 通常设定一个比较小的 RTO门限值即可, 因为 RLC层的直接丟包的延 迟时间是非常短的。
另外,考虑到 RLC装置的流控和 MACD的调度机制,拥塞窗口值的初始值 可以设置为和通告窗口大小相同, 即将流控的功能完全交给 RLC层和底层的 MAC层来完成。 当然, 如果 RLC装置能够准确的反馈任意一个 TCP数据包的 NACK信息, 也可以不使用 TCP装置中利用 RT0进行丟包判断的机制。
这样, TCP装置可以根据 RLC装置反馈的应答消息, 进行有效的拥塞控 制, 准确重传丟失的 TCP数据包, 优化无线 TCP系统。
实施例三
图 6是本实施例提供的反馈丟包的消息处理方法的信令图,如图 6所示, 该方法包括:
S40 RAN TCP装置向 RAN RLC装置发送 TCP数据包。
S402、 RAN RLC装置对所述 TCP数据包进行组包, 形成 RLC数据包。 RAN RLC装置在接收到发送端的 TCP装置发送的 TCP数据包之后 , RAN RLC 装置对所述 TCP数据包进行组包,形成至少一个 RLC数据包,并记录所述 TCP 数据包与所述 RLC数据包的对应关系。
5403、 RAN RLC装置发送所述 RLC数据包给用户设备 UE。
5404、 UE RLC装置在接收到所述 RLC数据包反馈 RLC ACK信息给 RAN RLC 装置。
S405、UE RLC装置发送由所述 RLC数据包组包形成的 TCP数据包给 UE TCP 装置。
5406、 RAN RLC装置才艮据 UE RLC装置反馈的 RLC ACK信息构造 TCP ACK 信息。
RAN RLC装置根据当前的 RLC数据包与 TCP数据包的关系, 构造相应 TCP 数据包的 ACK信息, 进而将 TCP ACK信息反馈给 RAN TCP装置。
5407、 RAN RLC装置发送 TCP ACK信息给 RAN TCP装置。
当 RAN TCP装置接收到 TCP ACK信息, 则判断为该 TCP数据包没有丟包。
5408、 RAN RLC装置接收 UE TCP装置反馈的 TCP ACK信息。
5409、 RAN RLC装置将 UE TCP装置反馈的 TCP ACK信息与 TCP ACK信息 相比较。
通常, UE RLC装置反馈的 RLC ACK信息一般会比 UE TCP装置反馈的 TCP
ACK信息早到。 如果 UE TCP装置反馈的 TCP ACK信息与构造的 TCP ACK信息 一致, 则确认没有丟包, 不再向所述 RAN TCP装置发送所述 UE TCP装置反馈 的 TCP ACK信息。 如果不一致, 则判断为所述 RLC数据包在所述 UE RLC装置 发送给所述 UE TCP装置时发生丟包, 可以根据所述对端设备反馈的 TCP ACK 信息和 RLC ACK信息确定发生丟包的 TCP数据包, 并指示 TCP装置重传所述 发生丟包的 TCP数据包或者发送所述发生丟包的 TCP数据包对应的 RLC数据 包, 进行重传操作。 此时, 可能是发送端的流控存在问题, 导致 UE TCP装置 的緩存溢出, 发出 RLC ACK信息的 TCP数据包在传输给 TCP装置后, 被 TCP 装置丟弃。
例如, RAN RLC装置向 UE发送了 6个数据包, 具体标识为 1 ~ 6 , UE RLC 装置反馈的 RLC ACK信息为 1, 2, 3, 5, 6 , 表示接收到标识为 1, 2, 3, 5, 6的 RLC 数据包,对应于 RLC数据包标识与 TCP数据包标识的对应关系,根据该 RLC ACK 可以构造得到对应的 TCP ACK信息, 以 RLC数据包标识与 TCP数据包标识一 一对应为例, 则构造得到的 TCP ACK 信息也为 1,2,3,5,6 , 表示标识为 1, 2, 3, 5, 6的 TCP数据包没有丟包。 而 UE TCP装置反馈的 TCP ACK信息为 3 , 表示接收到标识为 1, 2, 3的数据包。 可以看出 UE TCP装置反馈的 TCP ACK信 息与构造的 TCP ACK信息不一致, 可以判断出有发生丟包的 TCP数据包, 且 根据 UE TCP装置反馈的 TCP ACK信息与构造的 TCP ACK信息可以确定出发生 丟包的 TCP数据包为标识为 4的 TCP数据包, 则指示 RAN TCP装置重传标识 为 4的 TCP数据包或者 RAN RLC装置重传标识为 4的 RLC数据包, 对应于标 识为 4的 TCP数据包。 对于 RLC数据包标识与 TCP数据包标识不是——对应
的情形, 则可以根据对应关系, 相类似地确定丟包的 RLC数据包的标识以及 对应的 TCP数据包标识, 进行丟包的数据包重传。
S41 0、 UE RLC装置对未接收到的 RLC数据包, 反馈 RLC NACK信息给 RAN RLC装置。
S41 RAN RLC装置对反馈 RLC NACK信息的 RLC数据包进行重传。
RAN RLC装置重传对应的 RLC数据包, 并启动 RLC重传定时器或 RLC重 传计数器。 当所述 RLC重传定时器和 /或 RLC重传计数器的计数值超过预设阈 值时, 表示出现了 RLC随机丟包、 RLC超时丟包、 RLC重传超时或者 RLC重传 失败的情形, 进入 S41 2。
在 RLC装置中, 一个数据的丟失存在多种情况。 比如, 如果其緩存不能 接收来自 PDCP层的 TCP数据包的话, RLC装置可以直接将该 RLC数据包丟弃。 或者, 一个 RLC数据包传输多次后, 超过重传时间限制, 或者超出重传次数 限制, 则反馈 NACK给 TCP装置。 即 RAN RLC装置将多种丟包情况进行考虑, 但是反馈给 TCP层都是一个 NACK信息, 因为对 RAN TCP装置来说, 就是某个 TCP数据包没有发送成功。
541 2、 RAN RLC装置 ^据 RLC NACK信息构造 TCP NACK信息, 用以指示 所述 TCP装置重传所述 TCP NACK信息对应的 TCP数据包。
541 3、 RAN RLC装置发送 TCP NACK信息给 RAN TCP装置。
5414、 RAN TCP装置判断 TCP数据包的丟包情况。
根据 RAN RLC装置反馈的 TCP ACK信息或 TCP NACK信息, 判断丟包情况。 当接收到 TCP ACK信息, 则表明数据包传输成功。
当接收到 TCP NACK信息时, TCP装置判断丟包的情况具体如下: 首先, RLC装置反馈了 TCP NACK信息, 则表明一定是发生了丟包。 丟失的数据包可 能是重传多次后失败的, 也可能是被 RLC装置直接丟弃的。 如果是重传多次 失败后反馈的 NACK信息, 那么该数据包的 RT0记录时间是比较长的。 如果是 被 RLC装置直接丟弃的, 则存在两种可能: 一种是等待了一段时间后丟弃,
该数据包在 TCP装置的 RT0定时器有比较长的时间记录; 一种是因为緩存已 经满了, 直接丟弃, 那么该数据包在 TCP装置的 RT0定时器记录的时间是非 常短的。 正常情况下, 无论是重传超时, 重传超过次数, 或者是等待时间超 时, 那么该数据包的 RT0时间都是比较长的, 而直接丟弃则该数据包的 RT0 定时器记录的时间是非常短的。
S415、 RAN TCP装置重传丟失的 TCP数据包。
RLC数据包具体的传输情况有如下几种: 第一种是一次传输成功, 第二 种是重传多次成功, 第三种是重传多次后达到重传次数而失败, 第四种是重 传多次后超过重传的时间限制而失败, 第五种情况是 RLC装置的緩沖满的情 况下, 将收到的数据包直接丟弃。 在第三、 四、 五种情况下, RLC 装置都是 向 TCP装置反馈对应 TCP数据包的 NACK信息, 由 TCP层进行重传。
在本实施例中, 将 TCP装置和 RLC装置集合于无线侧 (即 RAN侧) 中, 可以彻底解决无线 TCP中丟包判断问题, 同时还避免了信息传递的时延问题。
在 RAN侧中能够提供 RLC装置的网元可以是 RNC或者 eNodeB等设备,而 RAN侧反馈的 TCP ACK/NACK信息的可能提供网元位置为 RNC, eNodeB, 通用 分组无线业务网关支持节点 (Gateway GPRS Support Node, GGSN )和分组数 据网络网关 (Packet Data Network Gateway, P-GW)等。 也就是说, RAN侧 反馈的 TCP ACK/NACK信息可以通过 RNC或者 eNodeB直接反馈给其他网元, 或者也可以通过 RNC或者 eNodeB先传给 GGSN、 P-GW等设备后再转发给其他 网元。 因而, 本实施例中 RLC装置可以是 RNC, eNodeB等设备, TCP装置可 以是 RNC, eNodeB, GGSN, P- GW等设备。
由于 RNC到 GGSN、 eNodeB到 P-GW之间都是用户面的 GPRS隧道协议( GPRS Tunnelling Protocol - User plane, GTP-U )协议, 因而, 可以采用 GTP- U 协议的扩展头, 来传递相应 TCP ACK/NACK信息。 图 7是一种 GTP-U协议的扩 展头的示意图, 包括扩展头长度、 扩展头内容和下一个扩展头类型, 可以将 TCP ACK/NACK信息作为扩展头内容进行传递。 当然, TCP ACK/NACK信息也可
以采用 RLC装置中的 SACK中的 ACK和 NACK标识位进行传递, 由于 SACK位于 RLC装置中, 对 TCP装置是否具有 SACK选项并不作要求, 均可以进行传递。
需要说明的是, 上述 RAN TCP装置和 RAN RLC装置可以在同一个基站设 备中, 所述基站设备可以为 RNC或者 eNodeB等设备。 当然, 发送端的 TCP装 置也可以不在 RAN侧中, 即在 RAN侧中不存在 TCP优化的情况, RAN TCP装 置和 RAN RLC装置处于不同网元中, 则 RAN RLC装置可以将反馈的 TCP ACK 信息或 TCP NACK信息反馈给其他网元的 TCP装置, 例如, 服务 GPRS支持节 点 ( Serv i ce GPRS Suppor t ing Node , SGSN )或者策略和计费规则功能 ( Po l i cy And Charg ing Rul es Func t ion, PCRF )等网元, 具体的处理过程与本实施例 类似, 不再赘述。
以上是对本发明所提供的反馈丟包的消息处理方法和拥塞控制方法进行 的详细描述, 下面对本发明提供的反馈丟包的消息处理装置和拥塞控制装置 进行详细描述。
实施例四
图 8是本实施例提供的反馈丟包的消息处理装置示意图, 如图 8所示, 本发明的装置包括: 组包单元 501、 接收单元 502、 处理单元 503和发送单元 504。
组包单元 501用于接收 TCP装置发送的 TCP数据包, 将所述 TCP数据包 组包形成 RLC数据包, 并将所述 RLC数据包发送给对端设备。
组包单元 501具体包括: 接收子单元、 记录子单元、 组包子单元和存储 子单元(图未示) 。
接收子单元用于接收所述 TCP装置发送的 TCP数据包并得到所述 TCP数 据包中携带的所述 TCP数据包的信息。
在实际应用场景中, 发送端的 TCP装置发送的 TCP数据包在到达 RLC装 置前通常还会通过其他协议层进行头压缩、 数据包解析等预处理, 接收子单 元接收到的是经过处理后的 TCP数据包。
图 3是一种 RNC中各协议层的对应关系示意图, 如图 3所示, TCP代理 服务器( TCP proxy )通过 RNC与基站 NodeB进行数据传输。 TCP代理服务器 包括多个用户的多个 TCP连接。在 RNC中可以包括分组数据汇聚协议( Packet Da ta Convergence Pro toco l , PDCP )层、 RLC装置、专用媒体接入控制( Med ia Acces s Cont ro l-D , MACD )层和媒体接入控制业务 ( Med ia Acces s Cont ro l C I i ent )层。 RNC通过 PDCP层接收从用户的多个 TCP连接发送的 TCP数据包, PDCP层对 TCP数据包进行解析, 得到 TCP数据包的信息, 所述包头信息包括 以下所列的一种或任意结合: IP地址、 端口和字节范围, 用以根据 TCP数据 包的信息标识所述 TCP数据包。 PDCP层还具有头压缩功能, 将进行头压缩后 的 TCP数据包传递给 RLC装置。 MACD层对 RLC装置发送的 RLC数据包进行调 度, MACC层用于对小区内的业务进行汇总发送给 NodeB。
如果 RLC装置接收到的是发送端的 TCP装置发送的 TCP数据包, 则接收 子单元还对 TCP数据包进行解析,得到 TCP数据包的信息,再将解析后的 TCP 数据包发给 PDCP层进行头压缩处理, 再将经过 PDCP层处理后的数据包提供 给记录子单元。
记录子单元用于根据所述接收子单元得到的所述 TCP数据包的信息, 对 所述 TCP数据包进行标识, 并记录所述 TCP数据包的标识。
相应的, 记录子单元记录的 TCP数据包的标识包括以下所列 TCP数据包 的信息中的一种或任意结合: IP地址、 端口和字节范围。
组包子单元用于对所述接收子单元接收的所述 TCP数据包进行 RLC组包 形成 RLC数据包, 并标识所述 RLC数据包。
组包子单元根据 MACD层的调度来决定组包的大小,以及该发送多少数据 量给 MACD层, 以进行流量控制, 避免 RNC和 NodeB之间 IuB口的拥塞。
存储子单元用于根据记录子单元记录的所述 TCP数据包的标识和所述组 包子单元得到的所述 RLC数据包的标识, 建立并记录所述 RLC数据包与 TCP 数据包的对应关系。
存储子单元记录的 RLC数据包与 TCP数据包的对应关系为以下三种之一: 一个所述 TCP数据包对应一个所述 RLC数据包; 一个所述 TCP数据包对应多 个所述 RLC数据包; 或者, 多个所述 TCP数据包对应一个所述 RLC数据包。
接收单元 502用于接收所述对端设备的 RLC装置针对组包单元 501发送 的所述 RLC数据包返回的所述 RLC数据包的应答消息。
对端设备的 RLC装置会针对每一个 RLC数据包会返回对应 RLC数据包的 应答信息。 接收单元 502接收的 RLC数据包的应答信息包括 RLC ACK信息和 / 或 RLC NACK信息。
处理单元 503用于根据接收单元 502接收的所述 RLC数据包的应答消息 构造所述 RLC数据包对应的 TCP数据包的应答消息。
处理单元 503根据组包单元 501中记录的 RLC数据包与 TCP数据包的对 应关系来构建 TCP数据包的应答消息。
如果某个 RLC数据包的应答消息为 ACK , 则该 RLC数据包对应的 TCP数 据包的应答消息为 ACK。 如果某个 RLC数据包的应答消息为 NACK, 则该 RLC 数据包对应的 TCP数据包的应答消息为 NACK。 利用这种对应关系, 处理单元 503根据 RLC数据包的应答消息构造 TCP数据包的应答消息, 即利用 RLC ACK 信息构造 TCP ACK信息, 利用 RLC NACK信息构造 TCP NACK信息, 用以指示 所述 TCP装置重传所述 TCP NACK信息对应的 TCP数据包。
处理单元 503根据所述 RLC数据包的应答消息, 利用所述存储子单元记 录的所述 RLC数据包与 TCP数据包的对应关系, 构造所述 TCP数据包的应答 消息。 具体地, 如果某个 TCP数据包仅对应一个 RLC数据包, 那么该 RLC数 据包的 ACK就是 TCP数据包的 ACK。 如果某个 TCP数据包对应于多个 RLC数 据包, 则多个 RLC数据包的 ACK都收到后, 那么该 TCP数据包才能认为 ACK, 即要求多个 RLC数据包都 ACK。 如果多个 TCP数据包对应于一个 RLC数据包, 则该 RLC数据包的 ACK就是多个 TCP数据包的 ACK。
发送单元 504用于将处理单元 503得到的 TCP数据包的应答消息反馈给
TCP装置。
所述 TCP装置根据 TCP数据包的应答消息判断所述 TCP数据包是否丟包。 当发送单元 504发送 TCP NACK信息时, 发送端的 TCP装置则判断为 TCP 数据包发生丟包。 当发送端的 TCP装置接收到某个 TCP数据包的 ACK, 则判 断为该 TCP数据包未发生丟包。
所述发送单元反馈的所述 TCP数据包的应答消息通过用户面的 GPRS隧道 协议 GTP-U的扩展头或选择性确认 SACK来传递。
可选地, 本发明的消息处理装置还包括: 比较单元 505和第一重传单元
506。
比较单元 505与接收单元 502、 处理单元 503和发送单元 504相连接。 接收单元 502还用于接收所述对端设备的 TCP装置反馈的 ACK信息。 比较单元 505用于将接收单元 502接收的所述 TCP装置反馈的 ACK信息 与处理单元 503得到的所述 TCP ACK信息相比较, 如果不一致, 则判断为所 述数据包在发送给所述接收端的 TCP装置时发生丟包; 如果一致, 则判断为 未发生丟包, 并不再触发发送单元 504向所述发送端发送所述 TCP装置反馈 的 ACK信息。
通常, UE RLC装置反馈的 RLC ACK信息一般会比 UE TCP装置反馈的 TCP ACK信息早到。 如果 UE TCP装置反馈的 TCP ACK信息与构造的 TCP ACK信息 一致, 则比较单元 505确认没有丟包, 不再向所述发送端的 TCP装置发送所 述 TCP装置反馈的 TCP ACK信息。 如果不一致, 则比较单元 505判断为所述 RLC数据包在所述 UE的 RLC装置发送给所述 UE的 TCP装置时发生丟包, 可 以根据所述对端设备反馈的 TCP ACK信息和 RLC ACK信息确定发生丟包的 TCP 数据包, 并指示 TCP装置重传所述发生丟包的 TCP数据包或者发送所述发生 丟包的 TCP数据包对应的 RLC数据包, 进行重传操作。 此时, 可能是发送端 的流控存在问题, 导致 UE TCP装置的緩存溢出, 发出 RLC ACK信息的 TCP数 据包在传输给 TCP装置后, 被 TCP装置丟弃。
第一重传单元 506与接收单元 502和处理单元 503相连接。 第一重传单 元 506用于当接收单元 502接收的所述 RLC数据包的应答消息为 RLC NACK信 息时, 将所述 RLC数据包的应答消息为 RLC NACK信息的 RLC数据包重传给所 述对端设备, 并启动 RLC重传定时器和 /或 RLC重传计数器; 当所述 RLC重传 定时器和 /或 RLC重传计数器的计数值超过预设阈值时,触发处理单元 503根 据所述 RLC NACK信息构造 TCP NACK信息。
实施例五
图 9是本发明实施例提供的反馈丟包的消息处理装置示意图, 如图 9所 示, 该装置包括: 接收单元 601、 判断单元 602、 第二重传单元 603和调整单 元 604。
接收单元 601用于接收 RLC装置发送的 TCP NACK信息。
所述 TCP NACK信息通过实施例四的装置获得。
判断单元 602用于根据接收单元 601接收的所述 TCP NACK信息确定丟包 的 TCP数据包。
第二重传单元 603用于当判断单元 602确定所述丟包的 TCP数据包之后, 重传所述丟包的 TCP数据包给 UE , 并启动 TCP重传定时器和 /或 TCP重传计 数器。
调整单元 604用于当第二重传单元 603启动的所述 TCP重传定时器和 / 或 TCP重传计数器的计数值超过预设阈值时, 缩小发送端的拥塞窗口值。
如果接收单元 601接收到 TCP数据包的应答消息为 TCP NACK消息, 则判 断单元 602判断为对应的 TCP数据包发生丟包, 第二重传单元 603进行数据 重传, 并启动 TCP重传定时器或 TCP重传计数器。 当 TCP重传定时器超时或 TCP重传计数器超过预设阈值时, 调整单元 604缩小拥塞窗口值。 当接收单 元 601接收到 RLC装置反馈的 TCP ACK消息后, 判断单元 602判断为数据包 没有丟包, 调整单元 604进行发送窗口的滑动, 并增大拥塞窗口的大小, 具 体的处理过程和现有的 TCP协议中的处理相同。
实施例六
图 10是本发明实施例的 RLC装置的结构组成示意图,如图 10所示,本发明 实施例的 RLC装置可包括:
处理器 701、 第一接口 702和第二接口 703。
处理器 701可能为单核或多核中央处理单元(Centra l Proces s ing Uni t ,
CPU ) , 或者为特定集成电路 ( Appl ica t ion Spec i f ic Integrated Ci rcui t , ASIC ) , 或者为被配置成实施本发明实施例的一个或多个集成电路。
第一接口 702用于与 TCP装置进行交互。
第二接口 703用于与对端设备进行交互。
处理器 701用于:
通过所述第一接口接收所述 TCP装置发送的 TCP数据包;
将所述 TCP数据包组包形成 RLC数据包;
通过所述第二接口将所述 RLC数据包发送给对端设备;
通过所述第二接口接收所述对端设备返回的所述 RLC数据包的应答消 息;
根据所述 RLC数据包的应答消息构造所述 RLC数据包对应的 TCP数据包 的应答消息; 以及
通过所述第一接口将所述 TCP数据包的应答消息反馈给所述 TCP装置。 具体地, 第一接口 702接收的 TCP数据包中携带有 TCP数据包的信息。 在实际应用场景中, 第一接口 702接收到的 TCP数据包可以是处理过的 TCP 数据包, 也可以是 TCP装置发送的 TCP数据包。
处理器 701根据所述 TCP数据包的信息, 对所述 TCP数据包进行标识, 并记录所述 TCP数据包的标识; 对所述 TCP数据包进行 RLC组包形成 RLC数 据包, 并标识所述 RLC数据包; 以及,根据所述 TCP数据包的标识和所述 RLC 数据包的标识, 建立并记录所述 RLC数据包与 TCP数据包的对应关系。
处理器 701根据所述 RLC数据包的应答消息,利用所述 RLC数据包与 TCP
数据包的对应关系, 构造所述 TCP数据包的应答消息。
如果所述 RLC数据包的应答消息为 RLC确认 ACK信息, 处理器 701根据 所述 RLC ACK信息构造 TCP数据包的 TCP ACK信息。
第二接口 703还可以接收所述对端设备反馈的的 TCP ACK信息, 处理器 701则将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP ACK信息相比 较, 如果一致, 则判断为未发生丟包, 并不再向所述 TCP装置发送所述对端 设备反馈的 TCP ACK信息; 如果不一致, 则判断为所述 TCP数据包在发送给 所述对端设备的 TCP装置时发生丟包。 当判断到发生丟包时, 处理器 701根 据所述对端设备反馈的 TCP ACK信息和 RLC ACK信息确定发生丟包的 TCP数 据包, 并指示所述 TCP装置重传所述发生丟包的 TCP数据包或者通过第二接 口 703发送所述发生丟包的 TCP数据包对应的 RLC数据包。
如果所述 RLC数据包的应答消息为 RLC否定确认 NACK信息, 处理器 701 用于 ^据所述 RLC NACK信息构造 TCP数据包的 TCP NACK信息, 用以指示所 述 TCP装置重传所述 TCP NACK信息对应的 TCP数据包。
处理器 701将所述 RLC数据包的应答消息为 RLC NACK信息的 RLC数据包 重传给所述对端设备, 并启动 RLC重传定时器和 /或 RLC重传计数器; 当所述 RLC重传定时器和 /或 RLC重传计数器的计数值超过预设阈值时,根据所述 RLC NACK信息构造 TCP NACK信息。
具体地, RLC装置还可以执行上述图 1-3, 图 6所示的处理方法, 具体 在此不再赘述。
实施例七
图 11是本发明实施例的 TCP装置的结构组成示意图,如图 11所示,本发明 实施例的 TCP装置可包括: 处理器 801和通信接口 802。
处理器 801可能为单核或多核中央处理单元(Central Processing Unit, CPU ) , 或者为特定集成电路 ( Application Specific Integrated Circuit, ASIC) , 或者为被配置成实施本发明实施例的一个或多个集成电路。
通信接口 802用于与 RLC装置进行交互。
处理器 801用于:
通过所述通信接口接收 RLC装置发送的 TCP NACK信息;
根据所述 TCP NACK信息确定丟包的 TCP数据包。
所述 TCP NACK信息由所述 RLC装置根据 RLC NACK信息构造得到, 具体 的构造方法如实施例一或实施例三中所述, 于此不再赘述。
当确定有丟包的 TCP数据包时, 处理器 8 01还用于通过通信接口 802重 传所述丟包的 TCP数据包给所述对端设备, 并启动 TCP重传定时器和 /或 TCP 重传计数器; 当所述 TCP重传定时器和 /或 TCP重传计数器的计数值超过预设 阈值时, 缩小发送端的拥塞窗口值, 从而对传输过程进行拥塞控制。
具体地, TCP装置还根据所述指令执行上述图 4-6所示的控制方法,具 体在此不再赘述。
需要说明的是, 实施例六中的 RLC装置可以为无线网络控制器 RNC或者 演进型基站 eNodeB。 实施例七中的 TCP装置可以为 RNC或者 eNodeB , 也可以 是 GGSN , P-GW等设备。 由于 RNC到 GGSN、 eNodeB到 P-GW之间都是用户面的 GPRS隧道协议 ( GPRS Tunne l l ing Pro toco l - Us er p l ane , GTP-U )协议, 因而,所述 TCP数据包的应答消息通过用户面的 GPRS隧道协议 GTP-U的扩展 头来传递。 当然, 所述 TCP数据包的应答消息也可以采用 RLC装置中的 SACK 中的 ACK和 NACK标识位进行传递。
上述 TCP装置和 RLC装置可以在同一个基站设备中, 所述基站设备可以 为 RNC或者 eNodeB等设备。 如果 TCP装置和 RLC装置处于不同网元中, 则 RLC装置可以将反馈的 TCP ACK信息或 TCP NACK信息反馈给其他网元的 TCP 装置, 具体的处理过程与本实施例类似, 不再赘述。
本发明提供的反馈丟包的消息处理方法及装置, 通过 RLC 层反馈的 ACK/NACK信息,判断当前的某个 TCP数据包是否正确接收,从而准确判断 TCP 丟包并获得准确的 TCP丟包信息, 仅需要对没有正确接收的数据进行重传,
可以减少不必要的重传, 提升无线 TCP的性能, 充分利用空口资源。
专业人员应该还可以进一步意识到, 结合本文中所公开的实施例描述的 各示例的单元及算法步骤, 能够以电子硬件、 计算机软件或者二者的结合来 实现, 为了清楚地说明硬件和软件的可互换性, 在上述说明中已经按照功能 一般性地描述了各示例的组成及步骤。 这些功能究竟以硬件还是软件方式来 执行, 取决于技术方案的特定应用和设计约束条件。 专业技术人员可以对每 个特定的应用来使用不同方法来实现所描述的功能, 但是这种实现不应认为 超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、 处理 器执行的软件模块, 或者二者的结合来实施。 软件模块可以置于随机存储器 ( RAM ) 、 内存、 只读存储器(ROM ) 、 电可编程 R0M、 电可擦除可编程 R0M、 寄存器、 硬盘、 可移动磁盘、 CD-ROM , 或技术领域内所公知的任意其它形式 的存储介质中。
以上所述的具体实施方式, 对本发明的目的、 技术方案和有益效果进行 了进一步详细说明, 所应理解的是, 以上所述仅为本发明的具体实施方式而 已, 并不用于限定本发明的保护范围, 凡在本发明的精神和原则之内, 所做 的任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。
Claims
1、 一种无线链路控制 RLC装置, 其特征在于, 所述装置包括: 处理器, 第一接口和第二接口;
所述第一接口, 用于与传输控制协议 TCP装置进行交互;
所述第二接口, 用于与对端设备进行交互;
所述处理器用于:
通过所述第一接口接收所述 TCP装置发送的 TCP数据包;
将所述 TCP数据包组包形成 RLC数据包;
通过所述第二接口将所述 RLC数据包发送给对端设备;
通过所述第二接口接收所述对端设备返回的所述 RLC 数据包的应答消 息;
根据所述 RLC数据包的应答消息构造所述 RLC数据包对应的 TCP数据包 的应答消息;
通过所述第一接口将所述 TCP数据包的应答消息反馈给所述 TCP装置。
2、 根据权利要求 1所述的装置, 其特征在于, 所述第一接口接收的 TCP 数据包中携带有 TCP数据包的信息, 所述 TCP数据包的信息包括以下所列的 一种或任意结合: IP地址、 端口和字节范围;
所述处理器用于将所述 TCP数据包组包形成 RLC数据包,具体包括: 所述处理器用于:
根据所述 TCP数据包的信息, 对所述 TCP数据包进行标识, 并记录所述 TCP数据包的标识;
对所述 TCP数据包进行 RLC组包形成 RLC数据包, 并标识所述 RLC数据 包; 以及
根据所述 TCP数据包的标识和所述 RLC数据包的标识, 建立并记录所述
RLC数据包与 TCP数据包的对应关系。
3、 根据权利要求 2所述的装置, 其特征在于, 所述处理器用于根据所述
RLC数据包的应答消息构造所述 RLC数据包对应的 TCP数据包的应答消息, 包括:
所述处理器用于:
根据所述 RLC数据包的应答消息, 利用所述 RLC数据包与 TCP数据包的 对应关系, 构造所述 TCP数据包的应答消息。
4、 根据权利要求 1所述的装置, 其特征在于, 所述 RLC数据包的应答消 息为 RLC确认 ACK信息, 所述处理器用于根据所述 RLC数据包的应答消息构 造所述 RLC数据包对应的 TCP数据包的应答消息, 具体包括:
所述处理器用于根据所述 RLC ACK信息构造 TCP数据包的 TCP ACK信息。
5、 根据权利要求 4所述的装置, 其特征在于, 所述处理器还用于: 通过所述第二接口接收所述对端设备反馈的 TCP ACK信息;
将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP ACK信息相比较, 如果不一致, 则判断为所述 TCP数据包在发送给所述对端设备的 TCP装置时 发生丟包。
6、 根据权利要求 5所述的装置, 其特征在于, 当发生丟包时, 所述处理 器还用于:
根据所述对端设备反馈的 TCP ACK信息和 RLC ACK信息确定发生丟包的 TCP数据包;
指示所述 TCP装置重传所述发生丟包的 TCP数据包或者通过所述第二接 口发送所述发生丟包的 TCP数据包对应的 RLC数据包。
7、 根据权利要求 4所述的装置, 其特征在于, 所述处理器还用于: 通过所述第二接口接收所述对端设备反馈的 TCP ACK信息;
将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP ACK信息相比较, 如果一致, 则判断为未发生丟包, 并不再向所述 TCP装置发送所述对端设备 反馈的 TCP ACK信息。
8、 根据权利要求 1所述的装置, 其特征在于, 所述 RLC数据包的应答消
息为 RLC否定确认 NACK信息,所述处理器用于根据所述 RLC数据包的应答消 息构造所述 RLC数据包对应的 TCP数据包的应答消息, 具体包括:
所述处理器用于根据所述 RLC NACK信息构造 TCP数据包的 TCP NACK信 息, 用以指示所述 TCP装置重传所述 TCP NACK信息对应的 TCP数据包。
9、 根据权利要求 8所述的装置, 其特征在于, 所述处理器用于根据所述
RLC NACK信息构造 TCP数据包的 TCP NACK信息, 具体包括:
所述处理器用于:
将所述 RLC数据包的应答消息为 RLC NACK信息的 RLC数据包重传给所述 对端设备, 并启动 RLC重传定时器和 /或 RLC重传计数器;
当所述 RLC重传定时器和 /或 RLC重传计数器的计数值超过预设阈值时, 才艮据所述 RLC NACK信息构造 TCP NACK信息。
1 0、 根据权利要求 1所述的装置, 其特征在于, 所述 TCP数据包的应答 消息通过用户面的 GPRS隧道协议 GTP-U的扩展头或 TCP选择性确认 SACK选 项来传递。
1 1、 根据权利要求 1所述的装置, 其特征在于, 所述 RLC装置为无线网 络控制器 RNC或者演进型基站 eNodeB。
12、 一种 TCP装置, 其特征在于, 所述装置包括: 处理器和通信接口; 所述通信接口, 用于与 RLC装置进行交互;
所述处理器用于:
通过所述通信接口接收 RLC装置发送的 TCP NACK信息, 所述 TCP NACK 信息由所述 RLC装置根据 RLC NACK信息构造得到;
根据所述 TCP NACK信息确定丟包的 TCP数据包。
1 3、 根据权利要求 12所述的装置, 其特征在于, 当确定丟包后, 所述处 理器还用于:
通过所述通信接口重传所述丟包的 TCP数据包给所述对端设备, 并启动
TCP重传定时器和 /或 TCP重传计数器;
当所述 TCP重传定时器和 /或 TCP重传计数器的计数值超过预设阈值时, 缩小发送端的拥塞窗口值。
14、 根据权利要求 12所述的装置, 其特征在于, 所述 TCP装置为 RNC、 eNodeB , GGSN、 SGSN或者 PGW。
15、 一种基站设备, 其特征在于, 包括:
如权利要求 1 ~ 1 0任一权项所述的 RLC装置和如权利要求 1 2 ~ 1 3任一权 项所述的 TCP装置。
16、 一种反馈丟包的消息处理方法, 其特征在于, 所述方法包括:
RLC装置接收 TCP装置发送的 TCP数据包, 将所述 TCP数据包组包形成 RLC数据包, 并将所述 RLC数据包发送给对端设备;
所述 RLC装置接收所述对端设备返回的所述 RLC数据包的应答消息; 所述 RLC装置根据所述 RLC数据包的应答消息构造所述 RLC数据包对应 的 TCP数据包的应答消息;
所述 RLC装置将所述 TCP数据包的应答消息反馈给所述 TCP装置。
17、 根据权利要求 16所述的消息处理方法, 其特征在于, 所述 RLC装置 接收的所述 TCP数据包中携带有 TCP数据包的信息, 所述 TCP数据包的信息 包括以下所列的一种或任意结合: IP地址、 端口和字节范围;
所述将所述 TCP数据包组包形成 RLC数据包, 包括:
所述 RLC装置根据所述 TCP数据包的信息,对所述 TCP数据包进行标识, 并记录所述 TCP数据包的标识;
所述 RLC装置对所述 TCP数据包进行 RLC组包形成 RLC数据包, 并标识 所述 RLC数据包;
所述 RLC装置根据所述 TCP数据包的标识和所述 RLC数据包的标识, 建 立并记录所述 RLC数据包与 TCP数据包的对应关系。
18、 根据权利要求 17所述的消息处理方法, 其特征在于, 所述根据所述
RLC数据包的应答消息构造 TCP数据包的应答消息, 具体为:
根据所述 RLC数据包的应答消息, 利用所述 RLC数据包与 TCP数据包的 对应关系, 构造所述 TCP数据包的应答消息。
19、 根据权利要求 16所述的消息处理方法, 其特征在于, 所述 RLC数据 包的应答消息为 RLC ACK信息;
所述根据所述 RLC数据包的应答消息构造 TCP数据包的应答消息, 具体 为:
根据所述 RLC ACK信息构造 TCP数据包的 TCP ACK信息。
20、 根据权利要求 19所述的消息处理方法, 其特征在于, 在所述 RLC装 置将所述 TCP数据包的应答消息反馈给所述 TCP装置之后, 还包括:
所述 RLC装置接收所述对端设备反馈的 TCP ACK信息;
所述 RLC装置将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP ACK 信息相比较,如果不一致,则判断为所述数据包在发送给所述对端设备的 TCP 装置时发生丟包。
21、根据权利要求 20所述的消息处理方法,其特征在于, 当发生丟包时, 所述方法还包括:
所述 RLC装置根据所述对端设备反馈的 TCP ACK信息和 RLC ACK信息确 定发生丟包的 TCP数据包;
所述 RLC装置指示所述 TCP装置重传所述发生丟包的 TCP数据包或者发 送所述发生丟包的 TCP数据包对应的 RLC数据包。
22、 根据权利要求 19所述的消息处理方法, 其特征在于, 在所述 RLC装 置将所述 TCP数据包的应答消息反馈给所述 TCP装置之后, 还包括:
所述 RLC装置接收所述对端设备反馈的 TCP ACK信息;
所述 RLC装置将所述对端设备反馈的 TCP ACK信息与构造的所述 TCP ACK 信息相比较, 如果一致, 则判断为未发生丟包, 并不再向所述 TCP装置发送 所述对端设备反馈的 TCP ACK信息。
23、 根据权利要求 16所述的消息处理方法, 其特征在于, 所述 RLC数据
包的应答消息为 RLC NACK信息;
所述根据所述 RLC数据包的应答消息构造 TCP数据包的应答消息, 具体 为:
根据所述 RLC NACK信息构造 TCP数据包的 TCP NACK信息, 用以指示所 述 TCP装置重传所述 TCP NACK信息对应的 TCP数据包。
24、 根据权利要求 23所述的消息处理方法, 其特征在于, 所述根据所述 RLC NACK信息构造 TCP数据包的 TCP NACK信息, 具体包括:
将所述 RLC数据包的应答消息为 RLC NACK信息的 RLC数据包重传给所述 对端设备, 并启动 RLC重传定时器和 /或 RLC重传计数器;
当所述 RLC重传定时器和 /或 RLC重传计数器的计数值超过预设阈值时, 才艮据所述 RLC NACK信息构造 TCP NACK信息。
25、 根据权利要求 16所述的消息处理方法, 其特征在于, 所述 TCP数据 包的应答消息通过 GTP-U的扩展头或 TCP SACK选项来传递。
26、 一种反馈丟包的消息处理方法, 其特征在于, 所述方法包括: 接收 RLC装置发送的 TCP否定确认 NACK信息, 所述 TCP NACK信息由所 述 RLC装置根据 RLC NACK信息构造得到;
根据所述 TCP NACK信息确定丟包的 TCP数据包。
27、 根据权利要求 26所述的消息处理方法, 其特征在于, 在所述根据所 述 TCP NACK信息确定丟包的 TCP数据包之后, 还包括:
重传所述丟包的 TCP数据包给所述对端设备,并启动 TCP重传定时器和 / 或 TCP重传计数器;
当所述 TCP重传定时器和 /或 TCP重传计数器的计数值超过预设阈值时, 缩小发送端的拥塞窗口值。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201380000199.1A CN104137507B (zh) | 2013-01-31 | 2013-01-31 | 反馈丢包的消息处理方法及装置 |
PCT/CN2013/071193 WO2014117359A1 (zh) | 2013-01-31 | 2013-01-31 | 反馈丢包的消息处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2013/071193 WO2014117359A1 (zh) | 2013-01-31 | 2013-01-31 | 反馈丢包的消息处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014117359A1 true WO2014117359A1 (zh) | 2014-08-07 |
Family
ID=51261414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2013/071193 WO2014117359A1 (zh) | 2013-01-31 | 2013-01-31 | 反馈丢包的消息处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN104137507B (zh) |
WO (1) | WO2014117359A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109525374A (zh) * | 2017-09-20 | 2019-03-26 | 华为技术有限公司 | 数据传输的方法、无线接入点、用户设备及传输设备 |
CN111447144A (zh) * | 2020-04-01 | 2020-07-24 | 中核武汉核电运行技术股份有限公司 | 一种基于透明代理的应用路由方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3490293B1 (en) * | 2016-08-11 | 2021-07-28 | Huawei Technologies Co., Ltd. | Data receiving method, data sending method, receiving device and system |
CN111435866B (zh) * | 2019-01-14 | 2023-02-10 | 华为技术有限公司 | 数据传输方法及相关装置 |
CN115085890B (zh) * | 2022-06-23 | 2024-06-25 | 云合智网(上海)技术有限公司 | 数据中心网络芯片优化tcp rto重传等待时间的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102007812A (zh) * | 2008-02-12 | 2011-04-06 | Ip无线有限公司 | Tcp流控制的方法和设备 |
US8279822B2 (en) * | 2009-12-30 | 2012-10-02 | Motorola Mobility Llc | Method and apparatus for scheduling an acknowledgement in a wireless communication system |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2843670B1 (fr) * | 2002-08-14 | 2005-01-14 | Evolium Sas | Procede pour l'allocation de ressources en mode paquet dans un systeme de radiocommunications mobiles |
DE602004030956D1 (de) * | 2004-06-15 | 2011-02-17 | Panasonic Corp | Prioritätsbehandlung für Datenübertragungen |
CN100407698C (zh) * | 2005-03-29 | 2008-07-30 | 华为技术有限公司 | 无线链路控制层的数据传输方法 |
CN101001131B (zh) * | 2006-01-12 | 2010-08-11 | 华为技术有限公司 | 一种分割级联方法 |
CN101043299B (zh) * | 2006-04-05 | 2010-08-25 | 华为技术有限公司 | 一种ack/nack方法 |
CN101132261A (zh) * | 2006-08-21 | 2008-02-27 | 华为技术有限公司 | 一种数据包重传方法和系统 |
KR101394784B1 (ko) * | 2007-10-16 | 2014-05-15 | 엘지전자 주식회사 | 고속데이터 전송을 위한 arq 과정의 수행방법 |
BRPI0822131B1 (pt) * | 2008-01-09 | 2020-10-13 | Telefonaktiebolaget Lm Ericsson (Publ) | método para reduzir um risco de parada de transmissão entre uma unidade transmissora e uma unidade receptora em um sistema de rede de comunicação, unidade transmissora, equipamento de usuário, e, nó de rede de comunicação |
CN102130756B (zh) * | 2008-07-17 | 2016-05-25 | 华为技术有限公司 | 数据传输方法和装置 |
CN102347827A (zh) * | 2010-07-28 | 2012-02-08 | 中兴通讯股份有限公司 | 一种实现rlc层重传的方法及系统 |
CN102761905B (zh) * | 2011-04-26 | 2016-03-30 | 华为技术有限公司 | 消息处理方法、设备及系统 |
CN102316515B (zh) * | 2011-09-16 | 2017-04-26 | 中兴通讯股份有限公司 | 无线链路控制层状态报告的构造方法及装置 |
CN102664718B (zh) * | 2012-04-28 | 2015-09-09 | 大唐移动通信设备有限公司 | 无线侧tcp数据重传的方法和设备 |
CN102761403B (zh) * | 2012-06-28 | 2014-12-17 | 深信服网络科技(深圳)有限公司 | 探测tcp丢包的方法、装置及tcp协议栈的探测端 |
-
2013
- 2013-01-31 CN CN201380000199.1A patent/CN104137507B/zh not_active Expired - Fee Related
- 2013-01-31 WO PCT/CN2013/071193 patent/WO2014117359A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102007812A (zh) * | 2008-02-12 | 2011-04-06 | Ip无线有限公司 | Tcp流控制的方法和设备 |
US8279822B2 (en) * | 2009-12-30 | 2012-10-02 | Motorola Mobility Llc | Method and apparatus for scheduling an acknowledgement in a wireless communication system |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109525374A (zh) * | 2017-09-20 | 2019-03-26 | 华为技术有限公司 | 数据传输的方法、无线接入点、用户设备及传输设备 |
CN111447144A (zh) * | 2020-04-01 | 2020-07-24 | 中核武汉核电运行技术股份有限公司 | 一种基于透明代理的应用路由方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104137507B (zh) | 2018-11-16 |
CN104137507A (zh) | 2014-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11133897B2 (en) | Data transmission method and apparatus | |
JP4806030B2 (ja) | 移動通信システムで信号を転送する方法 | |
JP4906844B2 (ja) | 無線移動通信システムで下位階層データブロックを生成する方法 | |
CA2677112C (en) | Method and apparatus for enhancing rlc for flexible rlc pdu size | |
TWI415433B (zh) | 雙向無線電連結控制非持久模式低延遲服務 | |
US8588784B2 (en) | Mobile communication system, wireless base station and hand over reconnection method for use therewith including an accumulation portion for holding data | |
RU2543996C2 (ru) | Управление перегрузкой в сети связи | |
KR101470637B1 (ko) | 이동통신 시스템에서의 무선자원 향상 방법, 상태정보 보고방법 및 수신장치 | |
WO2013075666A1 (zh) | Rlc数据包传输的确认方法及rlc am实体发送方 | |
KR20100053625A (ko) | 무선 통신 시스템에서의 핸드오버 동안 데이터의 계층 2 터널링 | |
WO2014094613A1 (zh) | 数据传输方法、装置及通信系统 | |
WO2009043308A1 (en) | A forwarding method for the downlink and uplink data packets based on the s1 switching and an evolved-nodeb thereof | |
WO2014204367A1 (en) | Polling and reporting mechanism | |
WO2015066836A1 (zh) | 视频业务数据传输方法、数据接收装置和数据发送装置 | |
WO2021000783A1 (zh) | 指示数据传输情况的方法和装置 | |
WO2020147453A1 (zh) | 数据传输方法及相关装置 | |
WO2014117359A1 (zh) | 反馈丢包的消息处理方法及装置 | |
WO2014166053A1 (zh) | 一种通讯方法和终端 | |
CN102340535A (zh) | 数据传输方法、设备和系统 | |
WO2016201904A1 (zh) | 一种基于tcp的数据传输方法及装置 | |
KR100812822B1 (ko) | 무선 네트워크 시스템에서 목적지 상태에 기초한 무선데이터 통신 방법 | |
WO2015113296A1 (zh) | 双连接模式下的状态反馈方法及设备 | |
US9980238B2 (en) | Timeout of communication radio link | |
CN107959554B (zh) | 一种数据的重传方法及装置 | |
WO2018218996A1 (zh) | 数据包传输方法及设备 |
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: 13873720 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: 13873720 Country of ref document: EP Kind code of ref document: A1 |