WO2019080814A1 - 接收窗口滑动方法及装置 - Google Patents

接收窗口滑动方法及装置

Info

Publication number
WO2019080814A1
WO2019080814A1 PCT/CN2018/111279 CN2018111279W WO2019080814A1 WO 2019080814 A1 WO2019080814 A1 WO 2019080814A1 CN 2018111279 W CN2018111279 W CN 2018111279W WO 2019080814 A1 WO2019080814 A1 WO 2019080814A1
Authority
WO
WIPO (PCT)
Prior art keywords
data packet
pdcp
sequence number
rlc
layer
Prior art date
Application number
PCT/CN2018/111279
Other languages
English (en)
French (fr)
Inventor
王刚
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2019080814A1 publication Critical patent/WO2019080814A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling

Definitions

  • the present application relates to the field of communications, and in particular, to a receiving window sliding method and apparatus.
  • the user plane protocol stack of the Long Term Evolution (LTE) communication system is mainly divided into four layers: Packet Data Convergence Protocol (PDCP), Radio Link Control (RLC), and media connection. Medium Access Control (MAC) and Physical Layer (PLY).
  • PDCP Packet Data Convergence Protocol
  • RLC Radio Link Control
  • MAC Medium Access Control
  • PLY Physical Layer
  • the MAC layer provides services to the RLC layer; the RLC layer provides Data Radio Bearers (DRB) services to the PDCP layer; and the PDCP layer provides services to the upper layers.
  • DRB Data Radio Bearers
  • the functions of the PDCP layer include, but are not limited to, header compression of Internet Protocol (IP) packets, encryption and decryption of data, timer discarding, and reordering processing.
  • IP Internet Protocol
  • At least two eNBs include a macro base station and a micro base station, and the PDCP layer of the macro base station receives its own The data packet sent by the RLC layer and the data packet sent by the RLC layer of the micro base station, wherein the RLC layer of the macro base station and the RLC layer of the micro base station are in descending order according to the RLC serial number (SN) of the data packet, respectively.
  • a packet is transmitted to the PDCP layer of the macro base station.
  • the PDCP layer of the macro base station receives the data packet may be out of order. For example, the PDCP layer of the macro base station first receives the data packet of the PDCP sequence number 5 sent by the RLC layer of the macro base station, and then receives the data packet of the PDCP sequence number 2 sent by the RLC layer of the micro base station. Therefore, the PDCP layer of the macro base station needs to sort each data packet according to the PDCP sequence number of the data packet, and deliver the data packet to the upper layer according to the sorting order.
  • the UE When the UE sends a data packet through the PDCP layer according to the scheduling of the macro base station or the micro base station, the UE may be some or some due to too many data packets to be sent in the PDCP layer or a long time for transmitting a certain data packet. The data packet is actively discarded.
  • the PDCP layer of the macro base station is provided with a reordering timer (t-Reordering).
  • the macro base station determines that the UE actively discards the data packet, slides the PDCP receiving window, and continues to receive the subsequent packet. Packet.
  • the PDCP receiving window is used to indicate a data packet received by the PDCP layer and not delivered to the upper layer.
  • the macro base station can only detect that the UE has packet loss when waiting for the duration of the data packet to reach the reordering timer.
  • the timing of the reordering timer is large, the delay of the macro base station sliding the PDCP receiving window is large. This results in a large overall transmission delay for the packet.
  • the embodiment of the present invention provides a receiving window sliding method and device, which can solve the problem that the receiving device detects that the packet loss is long, and the transmission delay of the data packet is large.
  • a first aspect provides a receiving window sliding method, the method comprising: receiving, by an RLC layer, a first data packet sent by a sending device; and receiving, by a PDCP layer, a first data packet sent by the RLC layer; The packet information of the data packet determines whether to slide the PDCP receiving window; when determining the sliding PDCP receiving window according to the data packet information, sliding the PDCP receiving window, the receiving window is used to buffer the data received by the PDCP layer and not submitted to the upper layer package.
  • the receiving device By determining whether to slide the PDCP receiving window when the receiving device receives the first data packet, so that the PDCP layer of the receiving device does not need to wait for the timing duration of the reordering timer to arrive, it can determine whether the PDCP receiving window is slid or not, and the PDCP layer sliding can be resolved.
  • the delay of the PDCP receiving window is large; since the length of time consumed by the sliding receiving window is shortened, the transmission delay of the data packet is shortened.
  • the data packet information includes: an RLC sequence number of the first data packet and a PDCP sequence number; and the RLC sequence number is used to receive the data packet at the RLC layer.
  • the sorting is performed; the PDCP sequence number is used to sort the received data packets at the PDCP layer, and submit the data packets to the upper layer in the sorting order.
  • the receiving device receives the data packet sent by the first RLC layer and the second RLC layer, and the receiving device sends the first data to the PDCP layer by using the RLC layer.
  • the packet includes: receiving, by the first RLC layer, the first data packet in an order of small to large according to the RLC sequence number; and determining, by the receiving device, whether to slide the PDCP receiving window according to the data packet information of the first data packet, including: determining the first Whether the PDCP sequence number of the data packet is consecutive with the PDCP sequence number of the data packet submitted to the upper layer last time; when the PDCP sequence number of the first data packet is not continuous with the PDCP sequence number of the data packet submitted to the upper layer last time, the buffer is determined.
  • sliding the PDCP receiving window includes: when the PDCP sequence number of the first data packet is not continuous with the PDCP sequence number of the data packet submitted to the upper layer last time, and is slow
  • the receiving device slides the PDCP receiving window; wherein, when the PDCP sequence number of the first data packet is located before the PDCP sequence number of the second data packet, The value of the lower boundary of the sliding PDCP receiving window is the PDCP sequence number of the first data packet or the PDCP sequence number after the PDCP sequence number of the first data packet; when the PDCP serial number of the first data packet is located in the second data packet After the PD
  • the PDCP layer of the receiving device determines whether the PDCP layer of the sending device has a discarded packet according to the PDCP sequence number of the first data packet. Therefore, the PDCP layer of the receiving device does not need to wait for the timing duration of the reordering timer to arrive, and can determine whether the PDCP layer of the transmitting device discards the data packet; shortening the duration of detecting the packet discarding, thereby shortening the connection in multiple The transmission delay of the data packet in the scenario where the RLC layer delivers the data packet in order.
  • the first RLC layer is located in the receiving device, and the at least one second RLC layer is respectively located in another receiving device different from the receiving device; or the first RLC layer is located in the other receiving device, and the at least one second RLC is present.
  • a second RLC is located in the receiving device; the transmitting device is configured to send data packets to the receiving device and other receiving devices, respectively.
  • the data packet information includes a PDCP sequence number, an RLC sequence number, and a transmission mode of the first data packet, and the transmission mode is generated by the RLC layer and sent to In the PDCP layer, the transmission mode is an in-sequence transmission mode or an out-of-order transmission mode; the sequential transmission mode is used to indicate that the RLC layer does not have an uncompleted full data packet when transmitting the first data packet; the out-of-order transmission mode is used to indicate that the RLC layer is in the When the first data packet is sent, there is an unreceived full data packet; the uncompleted full data packet refers to a data packet whose RLC serial number is before the RLC serial number of the first data packet, and all the fragmented data packets are not received.
  • the receiving device receives the data packet sent by the first RLC layer and the second RLC layer, and the receiving device sends the first data to the PDCP layer by using the RLC layer.
  • the packet includes: when the value of the lower boundary of the RLC receiving window of the first RLC layer is the RLC sequence number of the first data packet, and the first RLC layer receives the complete first data packet, the first RLC layer will be in order
  • the sending mode and the first data packet are sent to the PDCP layer, and the RLC receiving window is used to buffer the data packet received by the RLC layer and not delivered to the upper layer; the first RLC layer slides the RLC receiving window, and the lower boundary of the sliding RLC window
  • the value is located after the RLC sequence number of the first data packet; the receiving device determines whether to slide the PDCP receiving window according to the data packet information of the first data packet, including: determining the PDCP sequence number of the first data packet and the data submitted to the upper layer last time.
  • the receiving window includes: when the PDCP sequence number of the first data packet is not continuous with the PDCP sequence number of the data packet submitted to the upper layer last time, the sending mode of the first data packet is the sequential sending mode, and the buffer is stored in the first When the PDCP sequence number of the third data packet sent by the second RLC layer is received, the receiving device slides the PDCP receiving window; wherein, when the PDCP sequence number of the first data packet is located before the PDCP sequence number of the third
  • the PDCP sequence number of the first data packet and the transmission mode of the first data packet are determined to be sent. Whether the PDCP layer of the receiving device has a discarding packet, so that the PDCP layer of the receiving device does not need to wait for the timing of the reordering timer to arrive.
  • the problem is that the transmission delay of the detection packet is shortened, thereby shortening the transmission delay of the data packet in the scenario where the multi-connection and the RLC layer fail to deliver the data packet.
  • the first RLC layer is located in the receiving device; or the first RLC layer is located in other receiving independent of the receiving device In the device.
  • the RLC layer is located in the receiving device, and the receiving device sends the first data packet to the PDCP layer by using the RLC layer, including: when the RLC in the RLC layer The value of the lower boundary of the receiving window is the RLC sequence number of the first data packet, and when the RLC layer receives the complete first data packet, the RLC layer sends the sequential transmission mode and the first data packet to the PDCP layer, and the RLC receiving window For buffering the data packet received by the RLC layer and not being delivered to the upper layer; the RLC layer slides the RLC receiving window, and the value of the lower boundary of the sliding RLC window is located after the RLC sequence number of the first data packet; Determining whether to slide the PDCP receiving window by the data packet information of the data packet includes: determining whether the PDCP sequence number of the first data packet is consecutive with the PDCP sequence number of the data packet submitted to the upper layer last time; when the PDCP serial number of
  • the PDCP layer of the receiving device receives the first data packet, and determines whether the PDCP layer of the sending device has a discarded packet according to the sending mode of the first data packet.
  • the PDCP layer of the receiving device does not need to wait for the timing of the reordering timer to arrive, it can determine whether there is a discarding packet in the PDCP layer of the transmitting device, which solves the problem that the delay of sending the data packet is large; The length of the discarding time, thereby shortening the transmission delay of the data packet in the scenario where the single connection and the RLC layer fail to deliver the data packet.
  • the receiving device sends the first data packet to the PDCP layer through the RLC layer, and further includes: when the RLC receiving window of the RLC layer The value of the lower boundary is the RLC sequence number of the fourth data packet, and when the RLC layer receives the complete first data packet, the out-of-order transmission mode and the first data packet are sent to the PDCP layer; the RLC layer pauses the sliding RLC reception window. Until the RLC layer receives the complete fourth data packet, the RLC window is slid, and the RLC sequence number of the fourth data packet is before the RLC serial number of the first data packet.
  • the data packet information includes: a PDCP sequence number of the discarded packet, where the discarded packet refers to a data packet that is discarded by the sending device.
  • the receiving device determines whether to slide the PDCP receiving window according to the data packet information of the first data packet, including: receiving, by the receiving device, the first data packet At the time of buffering, the cache location indicated by the PDCP sequence number in the first data packet is marked in the buffer area, and the marked cache location is used to indicate that the buffered data packet is actively discarded by the sending device; the value of the lower boundary of the PDCP receiving window When the indicated buffer location does not store the data packet, it is determined whether the value of the lower boundary of the PDCP receiving window indicates the marked buffer location; when the sliding PDCP receiving window is determined according to the data packet information, the sliding PDCP receiving window includes: when the PDCP receives When the value of the lower boundary of the window indicates the marked buffer position, the receiving device slides the PDCP receiving window, and the value of the lower boundary of the sliding PDCP receiving window is located after the value of the lower boundary of the PDCP receiving window.
  • the length of the sliding PDCP receiving window is shortened, thereby shortening the transmission delay of the data packet.
  • the first data packet is a control data packet
  • the number of discarded packets is at least one
  • the control data packet includes a common data unit and a sequence number indicating unit
  • the common data unit is used to indicate a common part of the PDCP sequence number of the discarded packet
  • the sequence number indication unit is configured to indicate a difference portion of the PDCP sequence number of the dropped packet.
  • the transmitting device By setting a common data unit for the first data packet, the transmitting device does not need to generate all the fields of the PDCP sequence number of each discarded packet in the first data packet, and only needs to generate the difference portion of the PDCP sequence number of each discarded packet and the PDCP.
  • a common part of the serial number saves the field of the first data packet, thereby saving the transmission resources consumed by transmitting the first data packet.
  • a second aspect provides a receiving window sliding method, the method comprising: a transmitting device generating a first data packet in a PDCP layer; receiving a first data packet generated by a PDCP layer through an RLC layer; and transmitting the first data packet through an RLC layer To the receiving device; the first data packet includes a PDCP sequence number of the discarded packet, the first data packet is used by the receiving device to slide the PDCP receiving window according to the PDCP sequence number of the discarded packet, and the PDCP receiving window is used to buffer the PDCP layer, and A packet that is not delivered to the upper layer.
  • a dropped packet is a packet that the transmitting device drops at the PDCP layer.
  • the first data packet is a control data packet
  • the number of discarded packets is at least one
  • the control data packet includes a common data unit and a sequence number indicating unit
  • the common data unit is used to indicate a common part of the PDCP sequence number of the discarded packet
  • the sequence number indication unit is configured to indicate a difference portion of the PDCP sequence number of the dropped packet.
  • a receiving window sliding device comprising at least one unit for implementing the receiving window sliding method provided by any one of the first aspect or the first aspect.
  • a receiving window sliding device comprising at least one unit for implementing the receiving window sliding method provided by the second aspect.
  • a communication device comprising: a processor, a memory coupled to the processor; the memory configured to be controlled by a processor, the processor for implementing the first aspect or the first
  • the receiving window sliding method provided by any one of the aspects is implemented, or the processor is used to implement the receiving window sliding method provided by the second aspect.
  • a computer readable storage medium stores instructions that, when run on a communication device, cause the communication device to perform any of the first aspect or the first aspect described above
  • the receiving window sliding method provided is implemented, or the processor is used to implement the receiving window sliding method provided by the second aspect.
  • FIG. 1A is a schematic structural diagram of a mobile communication system according to an exemplary embodiment of the present application.
  • FIG. 1B is a schematic diagram of a data packet sending process provided by an exemplary embodiment of the present application.
  • FIG. 1C is a schematic diagram of a receiving window sliding method provided by an exemplary embodiment of the present application.
  • FIG. 1D is a flowchart of a receiving window sliding method provided by an exemplary embodiment of the present application.
  • FIG. 2A is a schematic structural diagram of a mobile communication system according to another exemplary embodiment of the present application.
  • FIG. 2B is a schematic diagram of a hierarchical relationship inside a communication device provided by an exemplary embodiment of the present application.
  • FIG. 3 is a flowchart of a receiving window sliding method provided by another exemplary embodiment of the present application.
  • 4A is a schematic diagram of detecting packet discarding provided by an exemplary embodiment of the present application.
  • FIG. 4B is a flowchart of a receiving window sliding method provided by another exemplary embodiment of the present application.
  • FIG. 5 is a flowchart of a receiving window sliding method provided by another exemplary embodiment of the present application.
  • FIG. 6 is a schematic diagram of detecting packet discarding provided by an exemplary embodiment of the present application.
  • FIG. 7 is a flowchart of a receiving window sliding method provided by another exemplary embodiment of the present application.
  • FIG. 8 is a schematic diagram of a first data packet provided by an exemplary embodiment of the present application.
  • FIG. 9 is a schematic diagram of a first data packet provided by another exemplary embodiment of the present application.
  • FIG. 10 is a block diagram of a receiving window sliding device according to an embodiment of the present application.
  • FIG. 11 is a block diagram of a receiving window sliding device provided by an embodiment of the present application.
  • FIG. 12 is a schematic structural diagram of a communication device according to an exemplary embodiment of the present application.
  • Multiple as referred to herein means two or more. "and/or”, describing the association relationship of the associated objects, indicating that there may be three relationships, for example, A and/or B, which may indicate that there are three cases where A exists separately, A and B exist at the same time, and B exists separately.
  • the character "/” generally indicates that the contextual object is an "or” relationship.
  • the transmitting device when the transmitting device has data to be transmitted, the transmitting device sequentially performs data according to protocols such as a PDCP layer, an RLC layer, and a MAC layer. Encapsulate into a packet and then send the packet on the physical link.
  • protocols such as a PDCP layer, an RLC layer, and a MAC layer.
  • FIG. 1A a schematic structural diagram of a mobile communication system provided by the present application is shown.
  • the mobile communication system includes a transmitting device 110 and a receiving device 120.
  • the transmitting device 110 and the receiving device 120 establish a wireless connection through a wireless air interface.
  • the wireless air interface is a wireless air interface based on the fifth generation mobile communication network technology (5G) standard, for example, the wireless air interface is an NR; or the wireless air interface may be a 4G or 5G based next generation mobile communication network.
  • 5G fifth generation mobile communication network technology
  • the wireless air interface is an NR; or the wireless air interface may be a 4G or 5G based next generation mobile communication network.
  • Technical standard wireless air interface for example, the wireless air interface is an NR; or the wireless air interface may be a 4G or 5G based next generation mobile communication network.
  • the sending device 110 is a terminal or a base station
  • the receiving device 120 is a terminal or a base station.
  • the terminal is a device that provides voice and/or data connectivity to the user.
  • the terminal can communicate with one or more core networks via a Radio Access Network (RAN).
  • RAN Radio Access Network
  • the terminal may be a mobile terminal, such as a mobile telephone (or "cellular" telephone) and a computer with a mobile terminal, for example, a mobile device that may be portable, pocket, handheld, computer built, or in-vehicle.
  • Subscriber Unit Subscriber Station, Mobile Station, Mobile, Remote Station, Access Point, Remote Terminal , Access Terminal, User Terminal, User Agent, User Device, or User Equipment.
  • the base station may be a gNB in a 5G system; or it may be an eNB in a 4G system; or it may be an access network device in other communication systems.
  • the data to be transmitted in the transmitting device 110 is a PDCP Service Data Unit (SDU), and the transmitting device 110 adds a PDCP header before the PDCP SDU according to the PDCP layer protocol, and the PDCP is to be PDCP.
  • SDU PDCP Service Data Unit
  • the SDU is encapsulated into a PDCP packet data unit (PDU); the RLC header is added before the PDCP PDU according to the RLC layer protocol, and the PDCP PDU is encapsulated into an RLC PDU; and then the MAC subheader is added before the RLC PDU according to the MAC layer protocol, The RLC PDU is encapsulated into a MAC sub-PDU; finally, each MAC sub-PDU is combined into a MAC PDU as a encapsulated data packet.
  • PDU PDCP packet data unit
  • the transmitting device 110 transmits the encapsulated data packet to the receiving device 120 through a physical link.
  • the receiving device 120 when receiving the encapsulated data packet through the physical link, delivers the data packet to the MAC layer, removes the MAC sub-head according to the MAC layer protocol to obtain the RLC PDU, and then removes the RLC header according to the RLC layer protocol to obtain the RLC header.
  • the PDCP PDU is removed from the PDCP header according to the PDCP layer protocol to obtain the PDCP SDU.
  • the PDCP SDUs are delivered to the upper layer in the order of the PDCP sequence number (SN).
  • the PDCP layer in the receiving device 120 includes a PDCP receiving window for buffering data packets received by the PDCP layer and not delivered to the upper layer.
  • the PDCP receiving window is indicated by a lower boundary (or left boundary) and a window length; or, by a lower boundary and an upper boundary (or right boundary).
  • the window length is pre-configured, or dynamically configured.
  • the length of the PDCP receive window is 50% of the PDCP sequence number range.
  • the PDCP receiving window is slid in order from the front to the back of the PDCP sequence number.
  • the sliding length of each sliding of the PDCP receiving window is fixed to n PDCP serial numbers; or, the sliding length of each sliding of the PDCP receiving window is not fixed.
  • n is a pre-configured positive integer.
  • the PDCP receiving window stops sliding and starts the reordering timer.
  • the PDCP layer receives the data packet whose PDCP sequence number is the second PDCP sequence number, or determines that the data packet is actively discarded by the transmitting device 110, the PDCP receiving window continues to slide backward.
  • the PDCP layer receives four data packets, and the PDCP sequence numbers of the four data packets are 1, 2, 3, and 4, respectively. If the four data packets are received, the sequence is: 2, 1, 4, 3, and the start position of the lower boundary of the PDCP receiving window is 1; when the PDCP receiving window receives the data packet with the PDCP sequence number 2, the PDCP receives the sliding window, and the value of the lower boundary is still 1; the PDCP receiving window When receiving a packet with a PDCP sequence number of 1, the PDCP receiving window is slid, and the value of the lower boundary is 2; when the PDCP receiving window receives the packet with the PDCP sequence number 4, the sliding window is not slipped, and the value of the lower boundary is received. Still 2; when the PDCP receiving window receives the packet with the PDCP sequence number 3, the sliding PDCP receives the sliding, and the value of the lower boundary is 4.
  • the sliding of the PDCP receiving window triggers the PDCP layer to submit the data packet to the upper layer
  • the PDCP sequence number of the submitted data packet includes: a lower boundary of the PDCP receiving window before sliding to a lower boundary of the sliding PDCP receiving window ( The serial number including the lower boundary of the PDCP receiving window before sliding.
  • the PDCP sequence number of the data packet submitted by the PDCP layer is 1; after the second sliding of the PDCP receiving window, the PDCP serial number of the data packet submitted by the PDCP layer is 2. And 3.
  • the PDCP receiving window may also be referred to as a PDPC reordering window, which is not limited in this embodiment.
  • the upper layer may be a Service Data Adaptation Protocol (SDAP) in the 5G communication system; or may be an IP layer; or may be a Radio Resource Control (RRC) layer.
  • SDAP Service Data Adaptation Protocol
  • RRC Radio Resource Control
  • the size of the RLC PDU of the sending device 110 is specified by the MAC layer. Therefore, the RLC layer of the transmitting device 110 may need to split the PDCP PDU, and generate at least two according to the split data. RLC PDUs, wherein the size of each RLC PDU is less than or equal to the size of the RLC PDU specified by the MAC layer.
  • the receiving device 120 needs to splicing the RLC PDUs of the same PDCP PDU at the RLC layer to obtain the PDCP PDU.
  • the data packet to be sent in the PDCP layer is an IP data packet and/or a control data packet.
  • the transmitting device may actively discard one or some data packets at the PDCP layer.
  • a reordering timer is usually set in the PDCP layer of the receiving device, and is received.
  • the PDCP layer of the receiving device receives the data packet with the PDCP sequence number 1, 2, and 3. If the PDCP receiving window waits for the duration of the data packet with the PDCP sequence number 4 to reach the timing of the reordering timer, determine the sending device. The PDCP sequence number 4 packet is discarded at the PDCP layer, and the PDCP reception window is slid.
  • the receiving device determines that the sending device actively discards the data packet for a long period of time. Then, the PDCP layer slides the PDCP receiving window, the time consuming, and the data packet transmission process delay is large. . Based on this technical problem, the present application provides the following technical solutions.
  • FIG. 1D shows a flowchart of a receiving window sliding method provided by an exemplary embodiment of the present application.
  • the method is used in the mobile communication system shown in FIG. 1A, and the method includes the following steps:
  • Step 101 The sending device generates a first data packet in the PDCP layer.
  • the first data packet is a PDCP PDU generated by the sending device according to the PDCP layer protocol.
  • the first data packet is an IP data packet; or the first data packet is a control data packet.
  • the first data packet includes an RLC sequence number and a PDCP sequence number.
  • the RLC sequence number is used by the RLC layer of the receiving device to sort the received data packets;
  • the PDCP sequence number is used by the PDCP layer of the receiving device to sort the received data packets, and submit the data packets to the upper layer according to the sorting order.
  • the first data packet includes a PDCP sequence number of the discarded packet
  • the discarded packet refers to a data packet that is sent by the sending device at the PDCP layer.
  • Step 102 The sending device receives the first data packet generated by the PDCP layer through the RLC layer.
  • the sending device adds an RLC header to the first data packet according to the RLC layer protocol, to obtain an RLC PDU.
  • the sending device splits the first data packet into multiple fragmented data packets at the RLC layer, and then generates an RLC PDU corresponding to each fragmented data packet.
  • Step 103 The sending device sends the first data packet to the receiving device through the RLC layer.
  • the first data packet is used by the receiving device to determine whether to slide the PDCP receiving window according to the data packet information of the first data packet through the PDCP layer, and to slide the PDCP receiving window when determining the sliding PDCP receiving window.
  • the process in which the sending device sends the first data packet to the MAC layer through the RLC layer, and then sends the first data packet encapsulated by the MAC layer to the receiving device through the physical link is omitted.
  • Step 104 The receiving device acquires the first data packet sent by the sending device by using the RLC layer.
  • the first data packet received by the RLC layer of the receiving device carries an RLC header, and the receiving device removes the RLC header according to the RLC layer protocol to obtain a PDCP PDU.
  • the first data packet includes at least one fragmented data packet.
  • the process in which the receiving device receives the first data packet through the physical link and then removes the MAC sub-header in the first data packet through the MAC layer is omitted.
  • Step 105 The receiving device sends the first data packet to the PDCP layer through the RLC layer.
  • Step 106 The receiving device receives the first data packet sent by the RLC layer through the PDCP layer.
  • a time interval between a time when the PDCP layer receives the first data packet and a time when the first data packet is received is less than a timing duration of the reordering timer.
  • Step 107 The receiving device determines, according to the data packet information of the first data packet, whether to slide the PDCP receiving window.
  • the packet information is obtained from the first data packet; and/or is information independent of the first data packet.
  • the RLC sequence number and the PDCP sequence number of the first data packet or, the PDCP sequence number, the RLC sequence number, and the sending mode of the first data packet; or the PDCP serial number of the discarded packet, where the discarded packet refers to the sending device Dropped packets.
  • the sending mode is generated by the RLC layer and sent to the PDCP layer, and the sending mode is a sequential sending mode or an out-of-order sending mode; the sequential sending mode is used to indicate that the RLC layer does not have an uncompleted full data packet when sending the first data packet;
  • the sequence transmission mode is used to indicate that the RLC layer has an unreceived full data packet when transmitting the first data packet; the uncompleted full data packet means that the RLC sequence number is before the RLC serial number of the first data packet, and all the points are not received. Packet data packet.
  • Step 108 When determining the sliding PDCP receiving window according to the data packet information, the receiving device slides the PDCP receiving window.
  • the receiving window sliding method determines whether to slide the PDCP receiving window when the receiving device receives the first data packet, so that the PDCP layer of the receiving device does not need to wait for the timing duration of the reordering timer to arrive. It can be determined whether the sliding PDCP receiving window is closed, and the problem that the delay of the PDCP layer sliding PDCP receiving window is large can be solved; since the duration of the sliding receiving window consumption is shortened, the transmission delay of the data packet is shortened.
  • the steps 101-103 can be implemented separately as a method embodiment on the transmitting device side; the steps 104-107 can be implemented separately as the method embodiment on the receiving device side.
  • the PDCP layer in the same communication device sends a data packet to the RLC layer or the RLC layer sends the data packet to the PDCP layer, which means that the module executing a certain protocol performs another protocol.
  • the module passes the data packet, for example, the module for executing the PDCP layer protocol transmits the data packet to the module for executing the RLC layer protocol; for example, the module for executing the RLC layer protocol passes the module for executing the PDCP layer protocol data pack.
  • the data packet information includes three cases, and the method for the receiving device to slide the PDCP receiving window is different for different situations.
  • the corresponding window sliding method refers to the embodiment shown in FIG. 3 and FIG. 4B; when the data packet information includes the RLC sequence of the first data packet.
  • the corresponding window sliding method refers to the embodiment shown in FIG. 5; when the data packet information includes the PDCP serial number of the discarded packet, the corresponding window sliding method is shown in FIG. 7 .
  • the first sliding method In the multi-connection scenario, the PDCP layer of the receiving device determines whether to slide the PDCP receiving window according to the PDCP sequence number of the data packet sent by different RLC layers. At this time, the packet information includes the RLC sequence number and the PDCP sequence number of the first data packet.
  • FIG. 2A shows a schematic structural diagram of a mobile communication system provided by the present application.
  • the mobile communication system can be a 5G system, also known as a new radio (NR) system.
  • the mobile communication system includes at least one micro base station 210, a macro base station 220, and a terminal 230.
  • Terminal 230 is a device that provides voice and/or data connectivity to a user.
  • the terminal 230 can communicate with one or more core networks via a Radio Access Network (RAN).
  • RAN Radio Access Network
  • the terminal 230 may be a mobile terminal, such as a mobile phone (or "cellular" phone) and a computer with a mobile terminal, for example, a mobile device that can be portable, pocket, handheld, computer built, or in-vehicle.
  • RAN Radio Access Network
  • the terminal 230 may be a mobile terminal, such as a mobile phone (or "cellular" phone) and a computer with a mobile terminal, for example, a mobile device that can be portable, pocket, handheld, computer built, or in-vehicle.
  • Subscriber Unit Subscriber Station, Mobile Station, Mobile, Remote Station, Access Point, Remote Terminal , Access Terminal, User Terminal, User Agent, User Device, or User Equipment.
  • the terminal 230 establishes a wireless connection with the micro base station 210 and the macro base station 220 through the wireless air interface, respectively.
  • the wireless air interface is a wireless air interface based on the fifth generation mobile communication network technology (5G) standard, for example, the wireless air interface is an NR; or the wireless air interface may also be a next generation mobile communication based on 4G or 5G. Wireless air interface for network technology standards.
  • 5G fifth generation mobile communication network technology
  • the wireless air interface is an NR; or the wireless air interface may also be a next generation mobile communication based on 4G or 5G.
  • Wireless air interface for network technology standards.
  • the wireless air interface between the terminal 230 and the micro base station 210 is the same as or different from the wireless air interface between the terminal 230 and the macro base station 220.
  • the base station (the micro base station 210 and the macro base station 220) may be a gNB in the 5G system; or, may be an eNB in the 4G system.
  • the micro base station 210 is the same as or different from the type of the macro base station 220.
  • the micro base station 210 and the macro base station 220 pre-establish a split bearer (Split Bearer).
  • the split bearer is used for the micro base station 210 and the macro base station 220 to simultaneously provide services for the terminal 230.
  • the micro base station 210 includes a MAC layer 211 and an RLC layer 212;
  • the macro base station 220 includes a MAC layer 221, an RLC layer 222, and a PDCP.
  • terminal 230 includes MAC layers 2311 and 2312, RLC layer 2321 and RLC layer 2322, and PDCP layer 233.
  • the data packet is transmitted to the micro base station 210 and the macro base station 220 according to the transmission mechanism shown in FIG. 1B, wherein the micro base station 210 receives the terminal 230 and transmits the data through the RLC layer 2322. Part of the data packet; the macro base station 220 receives another portion of the data packet transmitted by the terminal 230 through the RLC layer 2321.
  • the RLC layer 212 in the micro base station 210 transmits the received RLC PDU to the PDCP layer 223 in the macro base station 220.
  • the RLC layer 222 in the macro base station 220 transmits the received RLC PDU to the PDCP layer 223 in the macro base station 220.
  • the PDCP layer 223 in the macro base station 220 delivers data packets to the upper layer in order of small to large PDCP sequence numbers.
  • the macro base station 220 may be another name, such as a large base station, an eNB, or the like.
  • the micro base station 210 may also be another name, such as a small base station, a gNB, or the like. The name of the micro base station 210 is defined.
  • micro base station 210 in the mobile communication system shown in FIG. 2A and FIG. 2B, only one micro base station 210 is taken as an example for description. In actual implementation, multiple micro base stations 210 and the macro base station 220 may establish separate bearers. Correspondingly, there may be multiple RLC layers in the terminal 230, and the multiple RLC layers respectively communicate with the RLC layer in the corresponding base station.
  • the first method of PDCP receiving window sliding is applicable to the following scenarios:
  • the RLC layer 212 in the micro base station 210 transmits the received RLC PDUs in order from the RLC sequence number to the PDCP layer 223 in the macro base station 220; the RLC layer 222 in the macro base station 220 receives the received RLC PDUs according to The RLC sequence numbers are transmitted to the PDCP layer 223 in the macro base station 220 in the order from the front to the back.
  • the RLC layer 2321 in the terminal 230 transmits the received RLC PDUs in order from the RLC sequence number to the PDCP layer 233 in the terminal 230; the RLC layer 2322 in the terminal 230 receives the received RLC PDUs according to The RLC sequence numbers are transmitted to the PDCP layer 233 in the terminal 230 in the order from the front to the back.
  • FIG. 3 is a flowchart of a receiving window sliding method provided by an exemplary embodiment of the present application. The method is used in the mobile communication system shown in FIG. 2A, based on the receiving window sliding method described in FIG. 1C, the method comprising the following steps:
  • step 301 the transmitting device sends the first data packet to the first RLC layer through the third RLC layer.
  • the third RLC layer is located in the transmitting device, and the first RLC layer is located at the receiving device or other receiving independent of the receiving device.
  • the transmitting device and the receiving device both include a PDCP layer.
  • the terminal 230 transmits the first data packet through the RLC layer 2321 (third RLC layer), and the RLC layer 222 (first RLC layer) in the macro base station 220 (receiving device) receives the first data packet.
  • the first packet transmits the first data packet through the RLC layer 2321 (third RLC layer), and the RLC layer 222 (first RLC layer) in the macro base station 220 (receiving device) receives the first data packet.
  • the first packet receives the first data packet.
  • the terminal 230 transmits the first data packet through the RLC layer 2322 (the third RLC layer), and the RLC layer 212 (the first RLC layer) in the micro base station 210 (other receiving device) Receiving the first data packet.
  • the third RLC layer is located in the sending device or other transmitting device independent of the transmitting device; the first RLC layer is located In the receiving device.
  • the transmitting device and the receiving device both include a PDCP layer.
  • the macro base station 220 transmits the first data packet through the RLC layer 222 (the third RLC layer), and the RLC layer 2321 (the first RLC layer) in the terminal 230 (receiving device) receives the first data packet.
  • the first packet transmits the first data packet through the RLC layer 222 (the third RLC layer), and the RLC layer 2321 (the first RLC layer) in the terminal 230 (receiving device) receives the first data packet.
  • the first packet the RLC layer 222 (the third RLC layer), and the RLC layer 2321 (the first RLC layer) in the terminal 230 (receiving device) receives the first data packet.
  • the micro base station 210 (other transmitting device) transmits the first data packet through the RLC layer 212 (the third RLC layer), and the RLC layer 2322 (the first RLC layer) in the terminal 230 (receiving device) Receiving the first data packet.
  • step 302 the receiving device receives the first data packet sent by the sending device through the first RLC layer.
  • the macro base station 220 receives the first data packet transmitted by the RLC layer 222 (the first RLC layer).
  • the macro base station 220 receives the first data packet transmitted by the RLC layer 232 (the first RLC layer).
  • step 303 the receiving device sends the first data packet to the PDCP layer in the order of the RLC sequence number from small to large through the first RLC layer.
  • the first RLC layer first sends the RLC PDU with the RLC sequence number 2 when the RLC PDU is sent to the PDCP layer, and then sends the RLC PDU.
  • the RLC PDU with the RLC sequence number of 5 and the RLC PDU with the RLC sequence number of 8 are finally transmitted.
  • step 304 the PDCP layer of the receiving device receives the first data packet sent by the first RLC layer.
  • the PDCP layer of the receiving device receives the data packet sent by the first RLC layer in the order of the RLC sequence number from small to large; the PDCP layer of the receiving device further receives the second RLC layer according to the RLC serial number from small to large. Sequentially sent packets.
  • the transmission direction of the first data packet is uplink transmission (the terminal transmits the first data packet to the base station), and the first RLC layer is located in the receiving device, the second RLC layer is located at the other receiving device; or, when the first data packet The transmission direction is uplink transmission (the terminal transmits the first data packet to the base station), and when the first RLC layer is located in another receiving device, the second RLC layer is located in the receiving device.
  • the second RLC layer is located in the terminal.
  • step 305A determines whether the PDCP sequence number of the first data packet is consecutive with the PDCP sequence number of the last data packet submitted to the higher layer.
  • the state variable maintained by the PDCP layer of the receiving device includes: a PDCP sequence number of the data packet that was last submitted to the upper layer.
  • the initial value of the PDCP sequence number of the data packet submitted to the upper layer last time is the maximum value of the PDCP sequence number, Maximum_PDCP_SN.
  • the PDCP layer sets the PDCP sequence number of the data packet submitted to the upper layer last time to the PDCP sequence number of the data packet submitted this time.
  • the PDCP layer of the receiving device slides the PDCP receiving window in the order from the front to the back of the PDCP sequence number, and submits the data packet to the upper layer.
  • the PDCP layer pauses the sliding PDCP reception window and suspends the delivery of the currently received data packet to the upper layer.
  • the device slides the PDCP receiving window, and delivers the data packet that the PDCP receiving window slides when it goes to the upper layer.
  • the value of the lower boundary of the sliding PDCP receiving window is greater than or equal to the PDPC serial number of the first data packet.
  • step 305B is performed.
  • Step 305B When the PDCP sequence number of the first data packet is not consecutive with the PDCP sequence number of the data packet submitted to the upper layer last time, it is determined whether the buffer stores the PDCP sequence number of the second data packet sent by the second RLC layer.
  • the state variable maintained by the PDCP layer of the receiving device further includes: a first minimum PDCP sequence number of the data packet from the first RLC layer and a second minimum PDCP sequence number of the data packet from the second RLC layer.
  • the initial value of the first minimum PDCP sequence number is a PDCP sequence number of the first received packet from the first RLC layer.
  • the first minimum PDCP sequence number is set to be the smallest PDCP sequence number of the data packet from the first RLC layer in the PDCP receiving window.
  • the initial value of the second minimum PDCP sequence number is a PDCP sequence number of the first received packet from the second RLC layer.
  • the second smallest PDCP sequence number is set as the smallest PDCP sequence number of the data packet from the second RLC layer in the PDCP receiving window.
  • the PDCP layer of the receiving device determines whether the second minimum PDCP sequence number is maintained, and the second minimum PDCP sequence number is greater than the PDCP sequence number of the last data packet submitted to the upper layer; if the PDCP layer maintains the second minimum PDCP sequence number, And the second minimum PDCP sequence number is greater than the PDCP sequence number of the data packet submitted to the upper layer last time, indicating that the second data packet corresponding to the second minimum PDCP sequence number is not continuous with the last submitted data packet.
  • the first data packet or the second data packet is preceded by a discarding packet, and the receiving device performs step 306; if the PDCP layer does not buffer the second smallest PDCP sequence number, or the cached second minimum PDCP sequence number is less than or equal to the last time submitted to the upper layer The PDCP sequence number of the data packet, the receiving device stops sliding the PDCP receiving window, continues to receive the second data packet through the PDCP layer, and performs the step again when receiving the second data packet sent by the second RLC layer.
  • the comparison before and after the PDCP sequence number refers to the comparison of the COUNT value corresponding to the PDCP sequence number
  • the addition and subtraction operation of the sequence number also refers to performing the addition on the corresponding COUNT value. Subtract operation.
  • step 306 when the PDCP sequence number of the first data packet is not continuous with the PDCP sequence number of the data packet that was last submitted to the upper layer, and the buffer stores the second data sent by the second RLC layer.
  • the receiving device slides the PDCP receiving window.
  • the PDCP sequence number of the first data packet is not continuous with the PDCP sequence number of the data packet submitted to the upper layer last time, and the PDCP sequence number of the second data packet is stored in the buffer, the first data packet or the second data packet is indicated. A packet is discarded before the packet, and the receiving device slides the PDCP receiving window.
  • the value of the lower boundary of the sliding PDCP receiving window is the PDCP sequence number of the first data packet or located in the first data packet.
  • the PDCP sequence number of the first data packet is 3, the PDCP sequence number of the second data packet is 5, and the PDCP receiving window further receives the data packet with the PDCP serial number 4, the lower boundary of the sliding PDCP receiving window is The value can be 3; or, it can be 4; or it can be 5.
  • the terminal 410 transmits a data packet with a PDCP sequence number of 1, 2, 6 to the receiving device 420; the terminal 410 transmits a data packet with a PDCP sequence number of 3, 5 to the other receiving device 430.
  • the receiving device 420 receives the data packets with the PDCP sequence numbers 1 and 2 through the first RLC layer in the receiving device 420, and the data packets with the PDCP serial numbers 3 and 5 through the second RLC layer in the other receiving device 430.
  • An RLC layer and a second RLC layer sequentially deliver data packets to the PDCP layer in the receiving device 420, respectively.
  • the receiving device 420 sequentially receives the data packets sent by the first RLC layer and the second RLC layer through the PDCP receiving window of the PDCP layer, and the PDCP sequence numbers of the data packets are 1, 2, 3, and 5, respectively.
  • the value of the lower boundary of the PDCP receiving window is 3, the sliding is stopped, and the packet with the PDCP sequence number of 5 is buffered.
  • the receiving device 420 determines that the PDCP sequence number of the data packet is not continuous with the PDCP sequence number 3 of the last submitted data packet. And the buffer stores the PDCP sequence number 5 of the second data packet sent by the second RLC layer. At this time, the PDCP layer of the terminal 410 discards the data packet with the PDCP sequence number 4, and the receiving device 420 slides the PDCP receiving window.
  • the value of the lower boundary of the PDCP receiving window is PDCP serial number 6.
  • the receiving window sliding method does not need to wait for the reordering timer when the PDCP layer of the receiving device receives the first data packet in the scenario that the data packet is delivered in sequence in the multi-connection and RLC layers.
  • the timing duration arrives, and it is determined whether to slide the PDCP receiving window according to the PDCP sequence number of the first data packet; since the length of determining whether to slide the PDCP receiving window is shortened, the data packet is sequentially delivered in the multi-connection and RLC layer.
  • the receiving device when the first data packet received by the first RLC layer is the last data packet sent by the sending device, the PDCP sequence number of the first data packet and the PDCP of the last submitted data packet.
  • the sequence numbers are not consecutive, and the PDCP sequence number of the second data packet is not buffered in the buffer, since the first data packet is the last data packet, the PDCP does not receive other data packets.
  • the receiving device also It is determined that there is a discard packet at the PDCP layer of the transmitting device, thereby sliding the PDCP receiving window.
  • the second sliding method is: in the multi-connection scenario, the PDCP layer of the receiving device determines whether to slide the PDCP receiving window according to the PDCP sequence number and the sending mode of the data packet sent by different RLC layers.
  • the packet information includes an RLC sequence number, a PDCP sequence number, and a transmission mode of the first data packet.
  • the transmission mode is generated by the RLC layer and sent to the PDCP layer.
  • the transmission mode is an in-sequence transmission mode or an out-of-order transmission mode; the sequential transmission mode is used to indicate that the RLC layer does not have an uncompleted full data packet when transmitting the first data packet; the out-of-order transmission mode is used to indicate that the RLC layer is transmitting the first.
  • the RLC layer of the receiving device receives the partial fragment data packet with the PDCP sequence number 1 and receives the full partial fragment data packet with the PDCP sequence number 2, the RLC layer sends the PDCP sequence number to the PDCP layer of the receiving device.
  • the data packet of 2 at this time, the data packet with the PDCP sequence number 2 is the first data packet, and the data packet with the PDCP serial number 1 is the uncompleted full data packet.
  • the data packet may include at least two fragmented data packets; or the data packet may be complete, excluding the fragmented data packet.
  • the implementation environment corresponding to the second window sliding method refers to the mobile communication system shown in FIG. 2A.
  • the second method of PDCP receiving window sliding is applicable to the following scenarios:
  • the RLC layer 212 in the micro base station 210 sends the received RLC PDU out of order to the PDCP layer 223 in the macro base station 220; the RLC layer 222 in the macro base station 220 sends the received RLC PDU out of order to the macro base station 220.
  • the RLC layer 2321 in the terminal 230 sends the received RLC PDU out of order to the PDCP layer 233 in the terminal 230; the RLC layer 2322 in the terminal 230 sends the received RLC PDU out of order to the PDCP in the terminal 230.
  • the out-of-order transmission means that the RLC layer delivers the data packet to the PDCP layer when receiving the complete data packet, that is, the delivery order of the RLC layer delivery data packet is independent of the RLC serial number of the data packet.
  • FIG. 4B shows a flowchart of a receiving window sliding method provided by an exemplary embodiment of the present application.
  • the method is used in the mobile communication system shown in FIG. 2A, based on the receiving window sliding method described in FIG. 1C, the method comprising the following steps:
  • step 401 the transmitting device sends the first data packet to the first RLC layer through the third RLC layer.
  • step 301 For details about this step, refer to step 301. This embodiment is not described here.
  • step 402 the receiving device acquires the first data packet sent by the sending device by using the first RLC layer.
  • step 302. This embodiment is not described here.
  • step 403A when the value of the lower boundary of the RLC reception window of the first RLC layer is the RLC sequence number of the first data packet, and the first RLC layer receives the complete When the first data packet is transmitted, the first RLC layer sends the sequential transmission mode and the first data packet to the PDCP layer.
  • the RLC reception window slides in the order from the front to the back of the RLC sequence number, when the value of the lower boundary of the RLC reception window is the RLC sequence number of the first data packet, and the first RLC layer receives the complete first data packet, , indicating that the first data packet does not exist before the full data packet, and therefore, the sequential transmission mode is sent to the PDCP layer.
  • the sequential transmission mode and the first data packet may be simultaneously sent to the PDCP layer; or, respectively, may be sent to the PDCP.
  • the RLC receive window is used to buffer packets received by the RLC layer and not delivered to the upper layer (ie, the PDCP layer).
  • Step 403B The receiving device slides the RLC receiving window through the first RLC layer.
  • the value of the lower boundary of the swept RLC window is after the RLC sequence number of the first packet.
  • the value of the lower boundary of the swept RLC window is plus one for the RLC sequence number of the first packet.
  • step 404 the PDCP layer of the receiving device receives the first data packet sent by the first RLC layer.
  • the PDCP layer of the receiving device receives the data packet that is sent out of order by the first RLC layer; and the PDCP layer of the receiving device further receives the data packet that is sent out of order by the second RLC layer.
  • the transmission direction of the first data packet is uplink transmission (the terminal transmits the first data packet to the base station), and the first RLC layer is located in the receiving device, the second RLC layer is located at the other receiving device; or, when the first data packet The transmission direction is uplink transmission (the terminal transmits the first data packet to the base station), and when the first RLC layer is located in another receiving device, the second RLC layer is located in the receiving device.
  • the second RLC layer is located in the terminal.
  • step 304 For details about this step, refer to step 304. This embodiment is not described here.
  • step 405A determines whether the PDCP sequence number of the first data packet is consecutive with the PDCP sequence number of the last data packet submitted to the higher layer.
  • the device slides the PDCP receiving window, and delivers the data packet that the PDCP receiving window slides when it goes to the upper layer.
  • the value of the lower boundary of the sliding PDCP receiving window is greater than or equal to the PDPC serial number of the first data packet.
  • step 405B is performed.
  • step 305A For a description of this step, refer to step 305A, which is not described herein.
  • Step 405B When the PDCP sequence number of the first data packet is not consecutive with the PDCP sequence number of the data packet submitted to the upper layer last time, it is determined whether the transmission mode of the first data packet is in the sequential transmission mode, and whether the buffer is stored in the buffer. There is a PDCP sequence number of the third data packet sent by the second RLC layer.
  • the transmission mode of the third data packet is an in-sequence transmission mode.
  • the receiving device When the transmission mode of the first data packet is the sequential transmission mode, and the PDCP sequence number of the third data packet sent by the second RLC layer is stored in the buffer, the receiving device performs step 406.
  • the first data packet When the PDCP sequence number of the first data packet is not continuous with the PDCP sequence number of the data packet submitted to the upper layer last time, if the first data packet is in the sequential transmission mode, it indicates that the first data packet is sent when the RLC reception window slides.
  • the data packet, the first RLC layer does not have a PDCP sequence number before the PDCP sequence number of the first data packet.
  • the PDCP layer of the receiving device continues to determine whether the second minimum PDCP sequence number is maintained, and the second minimum PDCP sequence number is greater than the PDCP sequence number of the data packet that was last submitted to the upper layer; if the PDCP layer maintains the second a minimum PDCP sequence number, indicating that the third data packet corresponding to the second minimum PDCP sequence number is discontinuous from the last submitted data packet, because the transmission mode of the third data packet is an in-sequence transmission mode, that is, in the second RLC layer. There is no packet with the PDCP sequence number before the PDCP sequence number of the third packet.
  • the receiving device performs step 406;
  • the PDCP layer does not buffer the second smallest PDCP sequence number, or the buffered second minimum PDCP sequence number is smaller than the PDCP sequence number of the last data packet submitted to the upper layer, and the receiving device continues to receive the third data packet through the PDCP layer, and receives the third data packet.
  • this step is performed again.
  • step 406 when the PDCP sequence number of the first data packet is not continuous with the PDCP sequence number of the data packet that was last submitted to the upper layer, the transmission mode of the first data packet is the sequential transmission mode, and When the PDCP sequence number of the third data packet sent by the second RLC layer is stored in the buffer, the receiving device slides the PDCP receiving window.
  • the value of the lower boundary of the sliding PDCP receiving window is the PDCP sequence number of the first data packet or located in the first data packet.
  • the PDCP sequence number of the first data packet is 3, the PDCP sequence number of the third data packet is 5, and the PDCP receiving window further buffers the data packet with the PDCP sequence number 4, the lower boundary of the sliding PDCP receiving window is The value can be 3; or, it can be 4; or it can be 5.
  • the terminal 410 transmits a data packet with a PDCP sequence number of 1, 2, 6 to the receiving device 420; the terminal 410 transmits a data packet with a PDCP sequence number of 3, 5 to the other receiving device 430.
  • the receiving device 420 receives the data packets with the PDCP sequence numbers 1 and 2 through the first RLC layer in the receiving device 420, and the data packets with the PDCP serial numbers 3 and 5 through the second RLC layer in the other receiving device 430.
  • An RLC layer and a second RLC layer respectively deliver data packets out of order to the PDCP layer in the receiving device 420.
  • the receiving device 420 sequentially receives the data packets sent by the first RLC layer and the second RLC layer through the PDCP receiving window of the PDCP layer, and the PDCP sequence numbers of the data packets are 1, 2, 3, and 5, respectively.
  • the value of the lower boundary of the PDCP receiving window is 3, the sliding is stopped, and the packet with the PDCP sequence number of 5 is buffered.
  • the PDCP layer of the receiving device 420 receives the data packet of the PDCP sequence number 6 sent by the first RLC layer, the PDCP sequence number of the data packet is not continuous with the PDCP sequence number 3 of the last submitted data packet, and the buffer is stored. There is a PDCP sequence number 5 of the third data packet sent by the second RLC layer, and the transmission mode of the third data packet is a sequential transmission mode. At this time, the PDCP layer of the terminal 410 discards the data packet with the PDCP sequence number 4. The receiving device 420 slides the PDCP receiving window, and the value of the lower boundary of the sliding PDCP receiving window is the PDCP sequence number 6.
  • the receiving window sliding method is configured to: when the first data packet is received by the PDCP layer of the receiving device in the scenario that the data packet is delivered in a multi-connection and RLC layer, according to the first data packet
  • the PDCP sequence number and the transmission mode can determine whether to slide the PDCP receiving window without waiting for the timing of the reordering timer to arrive; shortening the length of the PDCP receiving window by shortening the determination, thereby shortening the out of order in the multi-connection, RLC layer
  • the receiving device when the first data packet received by the first RLC layer is the last data packet sent by the sending device, the PDCP sequence number of the first data packet and the PDCP of the last submitted data packet.
  • the sequence numbers are not consecutive, and the PDCP sequence number of the second data packet is not buffered in the buffer, since the first data packet is the last data packet, the PDCP does not receive other data packets.
  • the receiving device also It is determined that there is a discard packet at the PDCP layer of the transmitting device, thereby sliding the PDCP receiving window.
  • the third sliding method in the scenario where the RLC layer is delivered in a non-sequential manner, the receiving device determines whether to slide the PDCP receiving window according to the transmission mode and the PDCP sequence number added by the RLC layer for each data packet.
  • the packet information includes an RLC sequence number, a PDCP sequence number, and a transmission mode of the first data packet.
  • the implementation environment corresponding to the third sliding method refers to the mobile communication system shown in FIG. 1.
  • FIG. 5 is a flowchart of a receiving window sliding method provided by an exemplary embodiment of the present application.
  • the method is used in the mobile communication system shown in FIG. 1.
  • the sending device is the transmitting device 110.
  • the receiving device is the receiving device 120.
  • the receiving window sliding method is based on FIG. 1C. The method includes the following steps:
  • step 501 the transmitting device sends the first data packet to the RLC layer of the receiving device through the RLC layer.
  • the first data packet sent by the transmitting device through the RLC layer includes a PDCP sequence number.
  • step 502A when the value of the lower boundary of the RLC reception window in the RLC layer is the RLC sequence number of the first data packet, and the RLC layer receives the complete first
  • the RLC layer of the receiving device sends the sequential transmission mode and the first data packet to the PDCP layer.
  • the RLC receiving window is used to buffer the data packets received by the RLC layer and not delivered to the upper layer.
  • the RLC receiving window slides in the order from the front to the back of the RLC sequence number, when the value of the lower boundary of the RLC receiving window is the RLC sequence number of the first data packet, and the RLC layer receives the complete first data packet, the description The first data packet does not exist before the full data packet, and therefore, the sequential transmission mode is sent to the PDCP layer.
  • Step 502B The RLC layer of the receiving device slides the RLC receiving window.
  • the value of the lower boundary of the swept RLC window is located after the RLC sequence number of the first packet.
  • the value of the lower boundary of the swept RLC window is plus one for the RLC sequence number of the first packet.
  • the RLC layer when receiving the full partial slice data packet of the first data packet, the RLC layer sends the first data packet to the PDCP layer. Since the order in which the RLC layer transmits data packets to the PDCP layer is independent of the PDCP sequence number of the data packet, but is related to whether or not a full partial slice data packet of a certain data packet is received, the PDCP of the data packet transmitted by the RLC layer to the PDCP layer is The serial number may be out of order.
  • the sending mode may be represented by a character, for example, the out-of-order sending mode is represented by 0, and the sequential sending mode is represented by 1.
  • step 503A determines whether the PDCP sequence number of the first data packet is consecutive with the PDCP sequence number of the last data packet submitted to the higher layer.
  • the device slides the PDCP receiving window, and delivers the data packet that the PDCP receiving window slides when it goes to the upper layer.
  • the value of the lower boundary of the sliding PDCP receiving window is greater than or equal to the PDPC serial number of the first data packet.
  • step 503B is performed.
  • step 305A For a description of this step, refer to step 305A, which is not described herein.
  • Step 503B When the PDCP sequence number of the first data packet is not continuous with the PDCP sequence number of the data packet submitted to the upper layer last time, it is determined whether the transmission mode of the first data packet is the sequential transmission mode.
  • the transmission mode of the first data packet is the sequential transmission mode, it indicates that there is no uncompleted data packet in the RLC layer before the first data packet, and the PDCP layer of the receiving device does not receive the PDCP serial number at the first The packet before the PDCP serial number of the packet.
  • the receiving device receives all the data packets before the first data packet, it indicates that the data packet before the first data packet is not discarded, and the receiving device pauses to slide the PDCP receiving window; if the receiving device does not receive the first data packet All the previous data packets indicate that there is a discarded data packet before the first data packet, and the receiving device performs step 504.
  • step 504 when the PDCP sequence number of the first data packet is not continuous with the PDCP sequence number of the data packet that was last submitted to the upper layer, and the transmission mode of the first data packet is the sequential transmission mode.
  • the receiving device slides the PDCP receiving window.
  • the value of the lower boundary of the sliding PDCP receiving window is greater than or equal to the PDCP serial number of the first data packet.
  • the value of the lower boundary of the sliding PDCP receiving window may be 3; or 4 .
  • the transmitting device 610 transmits a packet having PDCP sequence numbers 1, 2, 3, and 5 to the receiving device 620.
  • the receiving device 620 receives the partial fragment data packet with the RLC sequence number 1 (represented by the shaded portion in the figure), receives the data packet with the RLC sequence number 2, and receives the partial fragment data with the RLC sequence number 3 through the RLC layer.
  • the packet (represented by the shaded part in the figure) receives a partial fragmented packet of RLC sequence number 5 (shown by the shaded part in the figure).
  • the RLC sequence number of the data packet is the same as the PDCP sequence number.
  • the RLC layer of the receiving device 620 sends a data packet with the PDCP sequence number 2 to the PDCP layer, and sets the transmission mode of the data packet to the out-of-order transmission mode; after receiving the data packet, the PDCP layer determines the data packet. If there is an unrecovered packet before, it will continue to wait for the packet to be received, and pause the sliding PDCP receiving window.
  • the RLC layer When the RLC layer receives the full partial slice data packet with the PDCP sequence number 3, it sends a PDCP sequence number 3 packet to the PDCP layer, and sets the transmission mode of the data packet to the out-of-order transmission mode; the PDCP layer receives After the data packet, it is determined that there is an uncompleted data packet before the data packet, and then continues to wait for receiving the data packet, and pauses the sliding PDCP reception window.
  • the RLC layer When receiving the full partial slice data packet with the PDCP sequence number of 1, the RLC layer sends the data packet with the PDCP sequence number 1 to the PDCP layer, and sets the transmission mode of the data packet to the sequential transmission mode; the PDCP layer receives After the data packet, it is determined that there is no unrecovered data packet before the data packet, and the receiving device slides the PDCP receiving window, and the value of the lower boundary of the sliding PDCP receiving window is PDCP serial number 3.
  • the RLC layer When the RLC layer receives the full partial slice data packet with the PDCP sequence number 5, it sends a PDCP sequence number 5 data packet to the PDCP layer, and sets the data packet transmission mode to the sequential transmission mode; the PDCP layer receives After the data packet, it is determined that there is no unrecovered data packet before the data packet. Since the PDCP sequence number of the data packet received by the PDCP layer is not continuous, the sending device actively discards the data packet, and the receiving device slides the PDCP. In the receiving window, the value of the lower boundary of the sliding PDCP receiving window is PDCP serial number 5.
  • the receiving window sliding method provided by the embodiment is based on the first data packet when the PDCP layer of the receiving device receives the first data packet in a scenario where the data packet is delivered in a single connection and the RLC layer.
  • the PDCP sequence number and the transmission mode of the first data packet determine whether to slide the PDCP reception window without waiting for the timing duration of the reordering timer to arrive; since the detection packet discarding time is shortened, the single connection and the RLC layer chaos are shortened.
  • the RLC layer when the value of the lower boundary of the RLC receiving window of the RLC layer is the RLC sequence number of the fourth data packet, and the RLC layer receives the complete first data.
  • the packet is sent, the out-of-order transmission mode and the first data packet are sent to the PDCP layer; the RLC layer pauses to slide the RLC reception window until the RLC layer receives the complete fourth data packet, and slides the RLC window, and the RLC sequence of the fourth data packet The number is before the RLC serial number of the first packet.
  • a fourth sliding method the transmitting device generates a first data packet marked with a PDCP sequence number of the discarded packet, and the receiving device determines, according to the first data packet, a data packet discarded by the transmitting device.
  • the packet information includes: the PDCP sequence number of the discarded packet.
  • the implementation environment corresponding to the fourth sliding method may be the mobile communication system shown in FIG. 1; or, may be the mobile communication system shown in FIG. 2A.
  • FIG. 7 shows a flowchart of a receiving window sliding method provided by an exemplary embodiment of the present application.
  • the method is used in the mobile communication system shown in FIG. 1 or FIG. 2A, based on the receiving window sliding method described in FIG. 1C, the method comprising the following steps:
  • step 701 the transmitting device generates a first data packet in the PDCP layer, where the first data packet includes a PDCP sequence number of the discarded packet.
  • the sending device may generate the first data packet when discarding one data packet; or, when the sending time of the data packet reaches a preset duration, the sending device generates the first data packet.
  • the number of discarded packets indicated by the first data packet is at least one.
  • the preset duration is less than the timing duration of the reordering timer in the PDCP layer of the receiving device.
  • the first data packet is a control data packet, which is different from the IP data packet.
  • the control data packet includes a common data unit and a sequence number indicating unit, and the common data unit is configured to indicate a common part of the PDCP sequence number of the different discarded packets when there are at least two discarded packets; the serial number indicating unit is configured to exist in at least two When discarding a packet, it indicates the difference portion of the PDCP sequence number of the different dropped packets.
  • the first data packet includes a field 810 for indicating the type of the first data packet, a field 820 for the length of the common data unit, a PDCP field 830 indicated by the common data unit, and a PDCP field 840 indicated by the sequence number indicating unit.
  • the length of the common data unit is determined according to the number of sequence numbers of the PDCP sequence number of the first discarded packet to the PDCP sequence number of the last discarded packet.
  • the length of the common data unit the maximum length of the PDCP sequence number - the length corresponding to the number of serial numbers.
  • the PDCP sequence number of the first dropped packet is 0010
  • the PDCP sequence number of the last discarded packet is 0110.
  • the 0010 to 0110 includes 0010, 0011, 0100, 0101, and 0110, and the sequence number is 5.
  • the length of the serial number corresponds to 3 bits
  • the PDCP field indicated by the common data unit is determined according to the first n bits of the first discarded packet, where n is the length of the common data unit. For example, in the above example, the PDCP field indicated by the common data unit is 0.
  • the PDCP sequence number of the first discarded packet is 1110, and the PDCP sequence number of the last discarded packet is 0010.
  • the PDCP sequence number of the PDCP layer is reversed, that is, the transmitting device uses one cycle period.
  • the packet is sent using the PDCP sequence number in the next cycle.
  • the PDCP sequence numbers 1110 to 0010 include 1110, 1111, 0000, 0001, and 0010, and the number of the sequence numbers is 5.
  • the PDCP field indicated by the common data unit is 1.
  • first data packet shown in FIG. 8 and FIG. 9 is only schematic. In actual implementation, the first data packet may also carry other control information.
  • step 702A when the receiving device receives the first data packet, marking the cache location indicated by the PDCP sequence number in the first data packet in the buffer area .
  • the marked cache location is used to indicate that the buffered data packet is actively discarded by the sending device.
  • the receiving device marks the cache location corresponding to the PDCP sequence number 4 in the cache access of the PDCP layer, and caches the PDCP sequence number 5 correspondingly.
  • the location is marked, the cache location corresponding to PDCP sequence number 6 is marked, and the cache location corresponding to PDCP sequence number 7 is marked.
  • Step 702B When the buffer position indicated by the value of the lower boundary of the PDCP receiving window does not store the data packet, determine whether the value of the lower boundary of the PDCP receiving window indicates the cached position after the marking.
  • step 703 When the PDCP receives the marked cache location indicated by the value of the lower boundary of the window, it indicates that the data packet corresponding to the cache location is actively discarded by the sending device, and the receiving device no longer waits for the data packet, and step 703 is performed.
  • the receiving device suspends the sliding PDCP reception window and continues to wait for the data packet of the storage location indicated by the value of the lower boundary of the PDCP reception window.
  • step 703 when the value of the lower boundary of the PDCP reception window indicates the marked cache location, the receiving device slides the PDCP reception window.
  • the value of the lower boundary of the sliding PDCP reception window is located after the value of the lower boundary of the PDCP reception window.
  • the receiving device when the fields corresponding to the sequence number indicating unit in the first data packet are arranged from small to large, the receiving device combines the field indicated by the common data unit with the field corresponding to the sequence number indicating unit to obtain the PDCP sequence of each discarded packet. number.
  • the first data packet received by the PDCP layer of the receiving device is as shown in FIG. 8.
  • the field corresponding to the serial number indicating unit is arranged from small to large, and the receiving device indicates the field and the serial number indicated by the common data unit.
  • Each field indicated by the unit is merged, and the PDCP sequence numbers of all the discarded packets are: 0010 and 0110.
  • the receiving device uses each field before the nth field (including the nth field). Merging with the field indicated by the common data unit; combining each field after the n+1th field (including the n+1th field) with the field +1 indicated by the common data unit to obtain the PDCP sequence number of all discarded packets, n Is a positive integer.
  • each field before the nth field is arranged from small to large; each field after the n+1th field is arranged from small to large.
  • the first data packet received by the PDCP layer of the receiving device is as shown in FIG. 9.
  • the second field indicated by the serial number indicating unit is smaller than the first field, and the receiving device uses the first field and the public.
  • the fields indicated by the data unit are merged; the second field is merged with the field +1 indicated by the common data unit, and the PDCP sequence numbers of all the discarded packets are: 1110 and 0010.
  • the receiving window sliding method generates a first data packet by using a PDCP layer of the transmitting device, where the first data packet includes a PDCP sequence number of the discarded packet, so that the PDCP layer of the receiving device does not need to be according to the first
  • the PDCP sequence number of a data packet determines whether the PDCP receiving window is slid, shortening the duration of sliding the PDCP receiving window, thereby shortening the transmission delay of the data packet.
  • the transmitting device does not need to generate all the fields of the PDCP sequence number of each discarded packet in the first data packet, and only needs to generate a difference portion of the PDCP sequence number of each discarded packet. And a common part of the PDCP sequence number saves the field of the first data packet, thereby saving transmission resources consumed by transmitting the first data packet.
  • FIG. 10 is a block diagram of a receiving window sliding device provided by an embodiment of the present application.
  • the apparatus includes a receiving unit 1001, a transmitting unit 1002, a determining unit 1003, and a sliding unit 1004.
  • the receiving unit 1001 is configured to control, by using a radio link, the RLC layer to acquire the first data packet sent by the sending device.
  • the sending unit 1002 is configured to send, by using an RLC layer, a first data packet to a packet data convergence protocol PDCP layer;
  • the receiving unit 1001 is configured to receive, by using a PDCP layer, a first data packet.
  • a determining unit 1003 configured to determine, according to the data packet information of the first data packet, whether to slide the PDCP receiving window, where the PDCP receiving window is used to buffer the data packet received by the PDCP layer and not delivered to the upper layer;
  • the sliding unit 1004 is configured to slide the PDCP receiving window when the determining unit 1003 determines the sliding PDCP receiving window.
  • the data packet information includes: an RLC sequence number of the first data packet and a PDCP sequence number; the RLC sequence number is used to sort the received data packet at the RLC layer; and the PDCP sequence number is used to receive the PDCP layer pair.
  • the data packets are sorted and the data packets are submitted to the higher layers in sorted order.
  • the receiving device receives the data packet sent by the first RLC layer and the second RLC layer, where
  • the sending unit 1002 is further configured to:
  • the determining unit 1003 is further configured to:
  • the PDCP sequence number of the data packet is located after the PDCP sequence number of the last data packet submitted to the upper layer;
  • the sliding unit 1004 is further configured to:
  • the buffer stores the second data packet sent by the second RLC layer.
  • the value of the lower boundary of the sliding PDCP receiving window is the PDCP sequence number of the first data packet or located in the first data packet.
  • the data packet information includes a PDCP sequence number, an RLC sequence number, and a sending mode of the first data packet, where the sending mode is generated by the RLC layer and sent to the PDCP layer, and the sending mode is a sequential sending mode or an out-of-order sending mode;
  • the sequence transmission mode is used to indicate that the RLC layer does not have an uncompleted full data packet when transmitting the first data packet;
  • the out-of-order transmission mode is used to indicate that the RLC layer has an uncompleted full data packet when the first data packet is sent;
  • a packet refers to a packet whose RLC sequence number precedes the RLC sequence number of the first packet and does not receive all the fragmented packets.
  • the receiving device receives the data packet sent by the first RLC layer and the second RLC layer, where
  • the sending unit 1002 is further configured to:
  • the mode and the mode are sequentially transmitted through the first RLC layer.
  • the first data packet is sent to the PDCP layer, and the RLC receiving window is used to buffer the data packet received by the RLC layer and not delivered to the upper layer;
  • the first RLC layer slides the RLC receiving window, and the value of the lower boundary of the sliding RLC window is located after the RLC sequence number of the first data packet;
  • the determining unit 1003 is further configured to:
  • the transmission mode of the first data packet is the sequential transmission mode, and whether the buffer is stored in the second mode.
  • the PDCP sequence number of the third data packet sent by the RLC layer; the transmission mode of the third data packet is the sequential transmission mode;
  • the sliding unit 1004 is further configured to:
  • the sending mode of the first data packet is the sequential transmission mode
  • the receiving device slides the PDCP receiving window
  • the value of the lower boundary of the sliding PDCP receiving window is the PDCP sequence number of the first data packet or located in the first data packet.
  • the first RLC layer is located in the receiving device; or the first RLC layer is located in another receiving device independent of the receiving device.
  • the data packet information includes a PDCP sequence number, an RLC sequence number, and a transmission mode of the first data packet.
  • the RLC layer is located in the receiving device
  • the sending unit 1002 is further configured to:
  • the RLC receiving window is used to buffer the data packet received by the RLC layer and not delivered to the upper layer;
  • the RLC layer slides the RLC receiving window, and the value of the lower boundary of the sliding RLC window is located after the RLC sequence number of the first data packet;
  • the determining unit 1003 is further configured to:
  • a transmission mode of the first data packet is an in-sequence transmission mode when a PDCP sequence number of the first data packet is not consecutive with a PDCP sequence number of the data packet that was last submitted to the upper layer;
  • the sliding unit 1004 is further configured to:
  • the lower boundary of the sliding PDCP receiving window is The value is greater than or equal to the PDCP sequence number of the first packet.
  • the sending unit 1002 is further configured to:
  • the out-of-order transmission mode and the first data packet are sent to the RLC layer to The PDCP layer; the RLC layer pauses the sliding RLC reception window until the RLC layer slides the RLC window when the complete fourth data packet is received, and the RLC sequence number of the fourth data packet precedes the RLC sequence number of the first data packet.
  • the data packet information includes a PDCP sequence number of the discarded packet, and the discarded packet is a data packet that is discarded by the sending device.
  • the determining unit 1003 is further configured to:
  • the cache location indicated by the PDCP sequence number in the first data packet is marked in the buffer area, and the marked cache location is used to indicate that the buffered data packet is actively discarded by the sending device.
  • the sliding unit 1004 is further configured to:
  • the PDCP reception window When the value of the lower boundary of the PDCP reception window indicates the marked buffer position, the PDCP reception window is slid, and the value of the lower boundary of the slid PDCP reception window is located after the value of the lower boundary of the PDCP reception window.
  • the first data packet is a control data packet
  • the number of discarded packets is at least one
  • the control data packet includes a common data unit and a sequence number indicating unit
  • the common data unit is used to indicate a common part of the PDCP sequence number of the discarded packet
  • the sequence number indication unit is configured to indicate a difference portion of the PDCP sequence number of the dropped packet.
  • FIG. 11 is a block diagram of a receiving window sliding device provided by an embodiment of the present application.
  • the apparatus includes: a generating unit 1110, a receiving unit 1120, and a transmitting unit 1130.
  • the generating unit 110 is configured to generate a first data packet in the PDCP layer
  • the receiving unit 1120 is configured to receive, by using a radio link, the RLC layer to receive the first data packet generated by the PDCP layer;
  • the sending unit 1130 is configured to send the first data packet to the receiving device by using the RLC layer, where the first data packet includes a PDCP sequence number of the discarded packet, where the first data packet is used by the receiving device to perform the PDCP receiving according to the PDCP sequence number of the discarded packet.
  • the window, the PDCP receiving window is used to buffer the data packet received by the PDCP layer and not delivered to the upper layer, and the discarded packet refers to the data packet that the sending device discards at the PDCP layer.
  • the first data packet is a control data packet
  • the number of discarded packets is at least one
  • the control data packet includes a common data unit and a sequence number indicating unit
  • the common data unit is used to indicate a common part of the PDCP sequence number of the discarded packet
  • the sequence number indication unit is configured to indicate a difference portion of the PDCP sequence number of the dropped packet.
  • FIG. 12 is a schematic structural diagram of a communication device provided by an exemplary embodiment of the present application.
  • the communication device may be a sending device or a receiving device; the sending device may be a terminal or a base station; the receiving device may be a terminal or a base station.
  • the communication device includes a processor 1201, a memory 1202, and a bus 1203.
  • the processor 1201 includes one or more processing cores, and the processor 1201 executes various functional applications and information processing by running software programs and modules.
  • the memory 1202 is coupled to the processor 1201 via a bus 1203.
  • the memory 1202 stores instructions necessary for the communication device.
  • the processor 1201 is configured to execute instructions in the memory 1202 to implement the receive window sliding method provided by the various method embodiments of the present application.
  • memory 1202 can be implemented by any type of volatile or non-volatile storage device, or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read only memory (EEPROM), erasable In addition to Programmable Read Only Memory (EPROM), Programmable Read Only Memory (PROM), Read Only Memory (ROM), Magnetic Memory, Flash Memory, Disk or Optical Disk.
  • SRAM static random access memory
  • EEPROM electrically erasable programmable read only memory
  • EPROM Programmable Read Only Memory
  • PROM Programmable Read Only Memory
  • ROM Read Only Memory
  • Magnetic Memory Flash Memory
  • Disk Disk
  • Disk Disk or Optical Disk
  • the memory 1202 stores protocols such as a PDCP layer protocol, an RLC layer protocol, and a MAC layer protocol.
  • protocols such as a PDCP layer protocol, an RLC layer protocol, and a MAC layer protocol.
  • Figure 12 only shows a simplified design of the communication device.
  • the communication device may include any number of transmitters, receivers, processors, controllers, communication units, etc., which are not limited in this embodiment.
  • the present application provides a computer readable storage medium having instructions stored therein that, when run on a communication device, cause the communication device to perform a receive window slip provided by the various embodiments described above method.
  • each of the above units may be implemented by a processor in the communication device executing instructions in memory.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit may be only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined. Or it can be integrated into another system, or some features can be ignored or not executed.

Landscapes

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

Abstract

本申请公开了一种接收窗口滑动方法及装置,属于通信领域。该方法包括:通过RLC层获取发送设备发送的第一数据包;通过所述RLC层向PDCP层发送所述第一数据包;所述接收设备的所述PDCP层接收所述第一数据包;根据所述第一数据包的数据包信息确定是否滑动PDCP接收窗口;在根据所述数据包信息确定出滑动所述PDCP接收窗口时,滑动所述PDCP接收窗口;所述PDCP接收窗口用于缓存所述PDCP层接收到的、且未向上层递交的数据包;可以解决PDCP层确定PDCP接收窗口是否滑动的延时较大的问题;由于缩短了接收窗口滑动时长,从而缩短了数据包的传输延时。

Description

接收窗口滑动方法及装置
本申请要求于2017年10月26日提交的申请号为201711018421.7、申请名称为“接收窗口滑动方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,特别涉及一种接收窗口滑动方法及装置。
背景技术
长期演进(Long Term Evolution,LTE)通信系统的用户面协议栈主要分为四层:分组数据汇聚协议(Packet Data Convergence Protocol,PDCP)、无线链路控制层(Radio Link Control,RLC)、媒体接入控制(Medium Access Control,MAC)和物理层(Physical Layer,PLY)。
其中,MAC层向RLC层提供服务;RLC层向PDCP层提供数据无线承载(Data Radio Bearers,DRB)服务;PDCP层向高层提供服务。
PDCP层的功能包括但不限于:网际协议(Internet Protocol,IP)数据包的头压缩、数据的加解密、定时器丢弃及重排序处理等。
示意性地,在用户设备(User Experience,UE)与至少两个演进型基站(Evolved Node B,eNB)同时通信时,至少两个eNB包括宏基站和微基站,宏基站的PDCP层接收自身的RLC层发送的数据包和微基站的RLC层发送的数据包,其中,宏基站的RLC层和微基站的RLC层分别按照数据包的RLC序列号(Serial Number,SN)由小到大的顺序向宏基站的PDCP层发送数据包。由于宏基站的RLC层和微基站的RLC层发送数据包的时机不可控,此时,宏基站的PDCP层接收到数据包可能是乱序的。比如:宏基站的PDCP层先接收到宏基站的RLC层发送的PDCP序列号为5的数据包,然后,再接收到微基站的RLC层发送的PDCP序列号为2的数据包。因此,宏基站的PDCP层需要根据数据包的PDCP序列号对各个数据包进行排序,将排序后的数据包按照排序顺序向高层递交数据包。
当UE根据宏基站或微基站的调度通过PDCP层发送数据包时,UE可能由于在PDCP层中的待发送的数据包过多或者发送某一数据包的时间过长而将某个或某些数据包主动丢弃,为了使得宏基站能够感知到UE在PDCP层丢弃了该数据包,宏基站的PDCP层设置有重排序定时器(t-Reordering)。若宏基站在等待数据包的时长达到重排序定时器的定时时长时,还未接收到PDCP序列号连续的数据包,则宏基站确定UE主动丢弃了数据包,滑动PDCP接收窗口,继续接收后续的数据包。PDCP接收窗口用于指示PDCP层接收到的、且未向上层递交的数据包。
宏基站只有在等待数据包的时长达到重排序定时器的定时时长时,才能感知到UE存在丢包,在重排序定时器的定时时长较大时,宏基站滑动PDCP接收窗口的延迟较大,导致数据包的整体传输延迟较大。
发明内容
本申请实施例提供了一种接收窗口滑动方法及装置,可以解决接收设备检测丢包的时长较长,导致数据包的传输延时较大的问题。
第一方面,提供了一种接收窗口滑动方法,该方法包括:接收设备通过RLC层获取发送设备发送的第一数据包;通过PDCP层接收该RLC层发送的第一数据包;根据该第一数据包的数据包信息确定是否滑动PDCP接收窗口;在根据数据包信息确定出滑动PDCP接收窗口时,滑动PDCP接收窗口,该接收窗口用于缓存PDCP层接收到的、且未向上层递交的数据包。
通过在接收设备接收到第一数据包时确定是否滑动PDCP接收窗口,使得接收设备的PDCP层无需等待重排序定时器的定时时长到达,就能够确定出是否滑动PDCP接收窗口,可以解决PDCP层滑动PDCP接收窗口的延时较大的问题;由于缩短了滑动接收窗口消耗的时长,因此,缩短了数据包的传输延时。
结合第一方面,在第一方面的第一种实现中,所述数据包信息包括:第一数据包的RLC序列号和PDCP序列号;RLC序列号用于在RLC层对接收到的数据包进行排序;PDCP序列号用于在PDCP层对接收到的数据包进行排序,并按照排序顺序向高层递交数据包。
结合第一方面的第一种实现,在第一方面的第二种实现中,接收设备接收第一RLC层和第二RLC层发送的数据包,接收设备通过RLC层向PDCP层发送第一数据包,包括:接收设备通过第一RLC层按照RLC序列号由小到大的顺序发送第一数据包;接收设备根据第一数据包的数据包信息确定是否滑动PDCP接收窗口,包括:确定第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号是否连续;当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,确定缓冲区中是否存储有第二RLC层发送的第二数据包的PDCP序列号;第二数据包的PDCP序列号位于上一次向高层递交的数据包的PDCP序列号之后;在根据数据包信息确定出滑动PDCP接收窗口时,滑动PDCP接收窗口,包括:当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续,且缓冲区存储有第二RLC层发送的第二数据包的PDCP序列号时,接收设备滑动PDCP接收窗口;其中,当第一数据包的PDCP序列号位于第二数据包的PDCP序列号之前,则滑动后的PDCP接收窗口的下边界的值是第一数据包的PDCP序列号或位于第一数据包的PDCP序列号之后的PDCP序列号;当第一数据包的PDCP序列号位于第二数据包的PDCP序列号之后,则滑动后的PDCP接收窗口的下边界的值是第二数据包的PDCP序列号或位于第二数据包的PDCP序列号之后的PDCP序列号。
通过在多连接、RLC层按序递交数据包的场景下,接收设备的PDCP层接收到第一数据包时,根据该第一数据包的PDCP序列号确定出发送设备的PDCP层是否存在丢弃包,使得接收设备的PDCP层无需等待重排序定时器的定时时长到达,就能确定出发送设备的PDCP层是否丢弃了数据包;由于缩短了检测数据包丢弃的时长,从而缩短了在多连接、RLC层按序递交数据包的场景下数据包的传输延时。
可选地,第一RLC层位于接收设备中,至少一个第二RLC层分别位于与接收设备不同的其它接收设备中;或者,第一RLC层位于其它接收设备中,至少一个第二RLC中存在一个第二RLC位于接收设备中;发送设备用于分别向接收设备和其它接收设备发送数据包。
结合第一方面的第一种实现,在第一方面的第三种实现中,数据包信息包括第一数据包的PDCP序列号、RLC序列号和发送模式,发送模式由RLC层生成并发送至PDCP层,发送模式是按序发送模式或乱序发送模式;按序发送模式用于指示RLC层在发送第一数据包时不存在未收全数据包;乱序发送模式用于指示RLC层在发送第一数据包时存在未收全数据包;未收全数据包是指RLC序列号在第一数据包的RLC序列号之前、且未收到全部的分片数据包的数据包。
结合第一方面的第三种实现,在第一方面的第四种实现中,接收设备接收第一RLC层和第二RLC层发送的数据包,接收设备通过RLC层向PDCP层发送第一数据包,包括:当第一RLC层的RLC接收窗口的下边界的值是第一数据包的RLC序列号,且第一RLC层接收到完整的第一数据包时,第一RLC层将按序发送模式和第一数据包发送至PDCP层,RLC接收窗口用于缓存RLC层接收到的、且未向上层递交的数据包;第一RLC层滑动RLC接收窗口,滑动后的RLC窗口的下边界的值位于第一数据包的RLC序列号之后;接收设备根据第一数据包的数据包信息确定是否滑动PDCP接收窗口,包括:确定第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号是否连续;当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,确定第一数据包的发送模式是否为按序发送模式,且缓冲区中是否存储有第二RLC层发送的第三数据包的PDCP序列号;第三数据包的发送模式为按序发送模式;在根据数据包信息确定出滑动PDCP接收窗口时,滑动PDCP接收窗口,包括:当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续,第一数据包的发送模式为按序发送模式,且缓冲区中存储有第二RLC层发送的第三数据包的PDCP序列号时,接收设备滑动PDCP接收窗口;其中,当第一数据包的PDCP序列号位于第三数据包的PDCP序列号之前,则滑动后的PDCP接收窗口的下边界的值是为第一数据包的PDCP序列号或位于第一数据包的PDCP序列号之后的PDCP序列号;当第一数据包的PDCP序列号位于第三数据包的PDCP序列号之后,则滑动后的PDCP接收窗口的下边界的值是第三数据包的PDCP序列号或位于第三数据包的PDCP序列号之后的PDCP序列号。
通过在多连接、RLC层乱序递交数据包的场景下,接收设备的PDCP层接收到第一数据包时,根据该第一数据包的PDCP序列号和第一数据包的发送模式确定出发送设备的PDCP层是否存在丢弃包,使得接收设备的PDCP层无需等待重排序定时器的定时时长到达时,才能确定出发送设备的PDCP层是否存在丢弃包,解决了数据包发送的延时较大的问题;由于缩短了检测数据包丢弃的时长,从而缩短了在多连接、RLC层乱序递交数据包的场景下的数据包的传输延时。
结合第一方面的第二种实现或第四种实现,在第一方面的第五种实现中,第一RLC层位于接收设备中;或者,第一RLC层位于与接收设备相独立的其它接收设备中。
结合第一方面的第三种实现,在第一方面的第六种实现中,RLC层位于接收设备中;接收设备通过RLC层向PDCP层发送第一数据包,包括:当RLC层中的RLC接收窗口的下边界的值是第一数据包的RLC序列号,且RLC层接收到完整的第一数据包时,RLC层将按序发送模式和第一数据包发送至PDCP层,RLC接收窗口用于缓存RLC层接收到的、且未向上层递交的数据包;RLC层滑动RLC接收窗口,滑动后的RLC窗口的下边界的值位于第一数据包的RLC序列号之后;接收设备根据第一数据包的数据包信息确定是否滑动 PDCP接收窗口,包括:确定第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号是否连续;当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,确定第一数据包的发送模式是否为按序发送模式;在根据数据包信息确定出滑动PDCP接收窗口时,滑动PDCP接收窗口,包括:当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续,且第一数据包的发送模式为按序发送模式时,接收设备滑动PDCP接收窗口,滑动后的PDCP接收窗口的下边界的值大于或等于第一数据包的PDCP序列号。
通过在单连接、RLC层乱序递交数据包的场景下,接收设备的PDCP层接收到第一数据包时,根据该第一数据包的发送模式确定出发送设备的PDCP层是否存在丢弃包,使得接收设备的PDCP层无需等待重排序定时器的定时时长到达时,才能确定出发送设备的PDCP层是否存在丢弃包,解决了数据包发送的延时较大的问题;由于缩短了检测数据包丢弃的时长,从而缩短了在单连接、RLC层乱序递交数据包的场景下的数据包的传输延时。
结合第一方面的第四种实现或第六种实现,在第一方面的第七种实现中,接收设备通过RLC层向PDCP层发送第一数据包,还包括:当RLC层的RLC接收窗口的下边界的值是第四数据包的RLC序列号,且RLC层接收到完整的第一数据包时,将乱序发送模式和第一数据包发送至PDCP层;RLC层暂停滑动RLC接收窗口,直至RLC层接收到完整的第四数据包时滑动RLC窗口,第四数据包的RLC序列号在第一数据包的RLC序列号之前。
结合第一方面的第种实现,在第一方面的第八种实现中,所述数据包信息包括:丢弃包的PDCP序列号,所述丢弃包是指所述发送设备丢弃的数据包。
结合第一方面的第八种实现,在第一方面的第九种实现中,接收设备根据第一数据包的数据包信息确定是否滑动PDCP接收窗口,包括:在接收设备接收到第一数据包时,在缓存区中对第一数据包中的PDCP序列号指示的缓存位置进行标记,标记后的缓存位置用于指示缓存的数据包被发送设备主动丢弃;在PDCP接收窗口的下边界的值指示的缓存位置未存储数据包时,确定PDCP接收窗口的下边界的值是否指示标记后的缓存位置;在根据数据包信息确定出滑动PDCP接收窗口时,滑动PDCP接收窗口,包括:当PDCP接收窗口的下边界的值指示标记后的缓存位置时,接收设备滑动PDCP接收窗口,滑动后的PDCP接收窗口的下边界的值位于PDCP接收窗口的下边界的值之后。
通过在发送设备的PDCP层生成第一数据包,该第一数据包包括丢弃包的PDCP序列号,使得接收设备的PDCP层无需根据第一数据包的PDCP序列号确定是否滑动PDCP接收窗口,缩短了滑动PDCP接收窗口的时长,从而缩短了数据包的传输延时。
可选地,第一数据包为控制数据包,丢弃包的数量为至少一个,控制数据包包括公共数据单元和序列号指示单元,公共数据单元用于指示丢弃包的PDCP序列号的公共部分;序列号指示单元用于指示丢弃包的PDCP序列号的差异部分。
通过为第一数据包设置公共数据单元,使得发送设备无需在第一数据包中生成每个丢弃包的PDCP序列号的全部字段,只需要生成每个丢弃包的PDCP序列号的差异部分和PDCP序列号的一个公共部分,节省了第一数据包的字段,从而节省了传输该第一数据包消耗的传输资源。
第二方面,提供了一种接收窗口滑动方法,该方法包括:发送设备在PDCP层生成第 一数据包;通过RLC层接收PDCP层生成的第一数据包;通过RLC层将第一数据包发送至接收设备;第一数据包包括丢弃包的PDCP序列号,第一数据包用于供接收设备根据丢弃包的PDCP序列号滑动PDCP接收窗口,PDCP接收窗口用于缓存PDCP层接收到的、且未向高层递交的数据包,丢弃包是指发送设备在PDCP层丢弃的数据包。
可选地,第一数据包为控制数据包,丢弃包的数量为至少一个,控制数据包包括公共数据单元和序列号指示单元,公共数据单元用于指示丢弃包的PDCP序列号的公共部分;序列号指示单元用于指示丢弃包的PDCP序列号的差异部分。
本申请第二方面所获得的技术效果与第一方面的第七种实现中对应的技术手段获得的技术效果近似,在这里不再赘述。
第三方面,提供了一种接收窗口滑动装置,该装置包括至少一个单元,该至少一个单元用于实现第一方面或第一方面中的任意一种实现所提供的接收窗口滑动方法。
第四方面,提供了一种接收窗口滑动装置,该装置包括至少一个单元,该至少一个单元用于实现第二方面所提供的接收窗口滑动方法。
第五方面,提供了一种通信设备,该通信设备包括:处理器、与所述处理器相连的存储器;该存储器被配置为由处理器控制,该处理器用于实现上述第一方面或第一方面中的任意一种实现所提供的接收窗口滑动方法,或者,该处理器用于实现第二方面所提供的接收窗口滑动方法。
第六方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在通信设备上运行时,使得通信设备执行上述第一方面或第一方面中的任意一种实现所提供的接收窗口滑动方法,或者,该处理器用于实现第二方面所提供的接收窗口滑动方法。
附图说明
图1A是本申请一个示例性实施例提供的移动通信系统的结构示意图;
图1B是本申请一个示例性实施例提供的数据包发送过程的示意图;
图1C是本申请一个示例性实施例提供的接收窗口滑动方法的示意图;
图1D是本申请一个示例性实施例提供的接收窗口滑动方法的流程图;
图2A是本申请另一个示例性实施例提供的移动通信系统的结构示意图;
图2B是本申请一个示例性实施例提供的通信设备内部的层级关系的示意图;
图3是本申请另一个示例性实施例提供的接收窗口滑动方法的流程图;
图4A是本申请一个示例性实施例提供的检测数据包丢弃的示意图;
图4B是本申请另一个示例性实施例提供的接收窗口滑动方法的流程图;
图5是本申请另一个示例性实施例提供的接收窗口滑动方法的流程图;
图6是本申请一个示例性实施例提供的检测数据包丢弃的示意图;
图7是本申请另一个示例性实施例提供的接收窗口滑动方法的流程图;
图8是本申请一个示例性实施例提供的第一数据包的示意图;
图9是本申请另一个示例性实施例提供的第一数据包的示意图;
图10是本申请一个实施例提供的接收窗口滑动装置的框图;
图11是本申请一个实施例提供的接收窗口滑动装置的框图;
图12是本申请一个示例性实施例提供的通信设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本文所提及的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”或者“一”等类似词语也不表示数量限制,而是表示存在至少一个。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。、
在LTE、第五代移动通信技术(the 5th generation mobile communication,5G)等通信系统中,当发送设备存在待发送的数据时,该发送设备依次根据PDCP层、RLC层、MAC层等协议将数据封装成数据包,再在物理链路上发送该数据包。
示意性地,参考图1A,其示出了本申请提供的移动通信系统的结构示意图。该移动通信系统包括发送设备110和接收设备120。
发送设备110和接收设备120通过无线空口建立无线连接。
可选地,该无线空口是基于第五代移动通信网络技术(5G)标准的无线空口,比如该无线空口是NR;或者,该无线空口也可以是基于4G或5G的更下一代移动通信网络技术标准的无线空口。
可选地,发送设备110为终端或者基站,接收设备120为终端或者基站。
可选地,终端是指向用户提供语音和/或数据连通性的设备。终端可以经无线接入网(Radio Access Network,RAN)与一个或多个核心网进行通信。可选地,终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置。例如,订户单元(Subscriber Unit)、订户站(Subscriber Station),移动站(Mobile Station)、移动台(Mobile)、远程站(Remote Station)、接入点(Access Point)、远程终端(Remote Terminal)、接入终端(Access Terminal)、用户装置(User Terminal)、用户代理(User Agent)、用户设备(User Device)、或用户终端(User Equipment)。
可选地,基站可以是5G系统中的gNB;或者,也可以是4G系统中的eNB;或者,还可以是其它通信系统中的接入网设备。
参考图1B所示的数据包传输过程,发送设备110中的待发送的数据为PDCP服务数据单元(Service Data Unit,SDU),发送设备110根据PDCP层协议在PDCP SDU之前添加PDCP头,将PDCP SDU封装成PDCP分组数据单元(packet dataunit,PDU);再根据RLC 层协议在PDCP PDU之前添加RLC头,将PDCP PDU封装成RLC PDU;再根据MAC层协议在RLC PDU之前添加MAC子头,将RLC PDU封装成MAC sub-PDU;最后将各个MAC sub-PDU组合成的MAC PDU作为封装后的数据包。
发送设备110通过物理链路将封装后的数据包发送至接收设备120。
相应地,接收设备120通过物理链路接收到封装后的数据包时,将该数据包递交至MAC层,根据MAC层协议去掉MAC子头得到RLC PDU;再根据RLC层协议去掉RLC头,得到PDCP PDU;再根据PDCP层协议去掉PDCP头,得到PDCP SDU。在PDCP层得到PDCP SDU后,将PDCP SDU按照PDCP序列号(Sequence Number,SN)的顺序向高层递交PDCP SDU。
接收设备120中的PDCP层包括PDCP接收窗口,PDCP接收窗口用于缓存PDCP层接收到的、且未向上层递交的数据包。
其中,PDCP接收窗口由下边界(或称左边界)和窗口长度来指示;或者,由下边界和上边界(或称右边界)来指示。其中,窗口长度是预配置的,或者,动态配置的。示意性地,PDCP接收窗口的长度为PDCP序列号范围的50%。
可选地,PDCP接收窗口是按照PDCP序列号由前到后的顺序滑动的。
可选地,PDCP接收窗口每次滑动的滑动长度固定为n个PDCP序列号;或者,PDCP接收窗口每次滑动的滑动长度不固定。n为预配置的正整数。
可选地,当PDCP接收窗口的下边界的值为第一PDCP序列号,且PDPC接收窗口中未缓存PDCP序列号为第二PDCP序列号的数据包,该第二PDCP序列号与该第一PDCP连续,则PDCP接收窗口停止滑动,并启动重排序定时器。当PDCP层接收到PDCP序列号为第二PDCP序列号的数据包,或者,确定出该数据包被发送设备110主动丢弃时,PDCP接收窗口继续向后滑动。
比如:参考图1C,PDCP层接收到了4个数据包,这4个数据包的PDCP序列号分别为1、2、3、4,若接收这4个数据包的先后顺序为:2、1、4、3,且PDCP接收窗口的下边界的起始位置为1;则PDCP接收窗口接收到PDCP序列号为2的数据包时,PDCP接收滑动窗口,下边界的值仍为1;PDCP接收窗口接收到PDCP序列号为1的数据包时,滑动PDCP接收窗口,下边界的值为2;PDCP接收窗口接收到PDCP序列号为4的数据包时,不滑动PDCP接收滑动窗口,下边界的值仍为2;PDCP接收窗口接收到PDCP序列号为3的数据包时,滑动PDCP接收滑动,下边界的值为4。
可选地,PDCP接收窗口的滑动触发PDCP层向高层递交数据包,递交的数据包的PDCP序列号包括:滑动前的PDCP接收窗口的下边界至滑动后的PDCP接收窗口的下边界之间(包括滑动前的PDCP接收窗口的下边界)的序列号。
比如:在图1C中,PDCP接收窗口第一次滑动后,PDCP层递交的数据包的PDCP序列号为1;PDCP接收窗口第二次滑动后,PDCP层递交的数据包的PDCP序列号为2和3。
可选地,PDCP接收窗口还可以称为PDPC重排序窗口,本实施例对此不作限定。
其中,高层可以为5G通信系统中的服务数据适应协议(Service Data Adaptation Protocol,SDAP);或者,也可以为IP层;或者,也可以为无线资源控制协议(Radio Resource Control,RRC)层。
在发送数据包的过程中,发送设备110的RLC PDU的大小是由MAC层指定的,因此, 在发送设备110的RLC层可能需要将PDCP PDU进行拆分,根据拆分后的数据生成至少两个RLC PDU,其中,每个RLC PDU的大小小于或等于MAC层指定的RLC PDU的大小。
相应地,接收设备120在RLC层需要将同一PDCP PDU的RLC PDU拼接,得到该PDCP PDU。
可选地,在上述实施例中,PDCP层中待发送的数据包为IP数据包和/或控制数据包。
若发送设备在PDCP层中待发送的数据包(PDCP SDU)过多或发送某一数据的时间过长,则发送设备可能会在PDCP层主动丢弃某个或某些数据包。目前,为了保证接收设备在PDCP层能够感知到发送设备存在丢包,从而滑动PDCP接收窗口并继续向高层递交下一个数据包,通常在接收设备的PDCP层中设置有重排序定时器,在接收设备的PDCP层等待数据包的时长达到重排序定时器的定时时长时,滑动PDCP接收窗口。
比如:接收设备的PDCP层接收到了PDCP序列号为1、2、3的数据包,若PDCP接收窗口等待PDCP序列号为4的数据包的时长达到重排序定时器的定时时长时,确定发送设备在PDCP层将PDCP序列号为4的数据包丢弃,滑动PDCP接收窗口。
当重排序定时器的定时时长较长时,接收设备确定发送设备主动丢弃数据包的时长较长,那么,PDCP层滑动PDCP接收窗口的耗时就会拉长,数据包的传输过程延迟较大。基于该技术问题,本申请提供了如下技术方案。
请参考图1D,其示出了本申请一个示例性实施例提供的接收窗口滑动方法的流程图。该方法用于图1A所示的移动通信系统中,该方法包括如下几个步骤:
步骤101,发送设备在PDCP层生成第一数据包。
可选地,第一数据包为发送设备根据PDCP层协议生成的PDCP PDU。
可选地,第一数据包为IP数据包;或者,第一数据包为控制数据包。
可选地,第一数据包包括RLC序列号和PDCP序列号。RLC序列号用于供接收设备的RLC层对接收到数据包进行排序;PDCP序列号用于供接收设备的PDCP层对接收到的数据包进行排序,并按照排序顺序向高层递交数据包。
可选地,第一数据包包括丢弃包的PDCP序列号,丢弃包是指发送设备在PDCP层丢弃的数据包。
步骤102,发送设备通过RLC层接收PDCP层生成的第一数据包。
可选地,发送设备根据RLC层协议为第一数据包添加RLC头,得到RLC PDU。
可选地,发送设备在RLC层将第一数据包拆分为多个分片数据包,然后生成每个分片数据包对应的RLC PDU。
步骤103,发送设备通过RLC层将第一数据包发送至接收设备。
第一数据包用于供接收设备通过PDCP层根据第一数据包的数据包信息确定是否滑动PDCP接收窗口,并在确定出滑动PDCP接收窗口时,滑动该PDCP接收窗口。
需要补充说明的是,本实施例省略了发送设备通过RLC层将第一数据包发送至MAC层,再通过物理链路将经过MAC层封装的第一数据包发送至接收设备的过程。
步骤104,接收设备通过RLC层获取发送设备发送的第一数据包。
接收设备的RLC层接收到的第一数据包带有RLC头,接收设备根据RLC层协议将该RLC头去掉,得到PDCP PDU。
可选地,第一数据包包括至少一个分片数据包。
需要补充说明的是,本实施例中省略了接收设备通过物理链路接收第一数据包,再通过MAC层去掉该第一数据包中的MAC子头的过程。
步骤105,接收设备通过RLC层向PDCP层发送第一数据包。
步骤106,接收设备通过PDCP层接收RLC层发送的第一数据包。
可选地,本实施例中,PDCP层接收到第一数据包的时刻与上一次接收到数据包的时刻之间的时间间隔小于重排序定时器的定时时长。
步骤107,接收设备根据第一数据包的数据包信息确定是否滑动PDCP接收窗口。
可选地,数据包信息是从第一数据包中获取到的;和/或,是与第一数据包相独立的信息。
可选地,第一数据包的RLC序列号和PDCP序列号;或者,第一数据包的PDCP序列号、RLC序列号和发送模式;或者,丢弃包的PDCP序列号,丢弃包是指发送设备丢弃的数据包。
发送模式由RLC层生成并发送至PDCP层,发送模式是按序发送模式或乱序发送模式;按序发送模式用于指示RLC层在发送第一数据包时不存在未收全数据包;乱序发送模式用于指示RLC层在发送第一数据包时存在未收全数据包;未收全数据包是指RLC序列号在第一数据包的RLC序列号之前、且未收到全部的分片数据包的数据包。
步骤108,在根据数据包信息确定出滑动PDCP接收窗口时,接收设备滑动该PDCP接收窗口。
综上所述,本实施例提供的接收窗口滑动方法,通过在接收设备接收到第一数据包时确定是否滑动PDCP接收窗口,使得接收设备的PDCP层无需等待重排序定时器的定时时长到达,就能够确定出是否滑动PDCP接收窗口,可以解决PDCP层滑动PDCP接收窗口的延时较大的问题;由于缩短了滑动接收窗口消耗的时长,因此,缩短了数据包的传输延时。
可选地,步骤101-103可单独实现为发送设备侧的方法实施例;步骤104-107可单独实现为接收设备侧的方法实施例。
可选地,本申请中,同一通信设备(发送设备或接收设备)中的PDCP层向RLC层发送数据包或者RLC层向PDCP层发送数据包是指执行某一协议的模块向执行另一协议的模块传递数据包,比如:用于执行PDCP层协议的模块向用于执行RLC层协议的模块传递数据包;又比如:用于执行RLC层协议的模块向用于执行PDCP层协议的模块传递数据包。
在上述实施例中,数据包信息包括三种情况,对于不同的情况,接收设备滑动PDCP接收窗口的方法也有所不同。
下面对每种数据包信息对应的检测数据包丢弃的方法进行介绍。其中,当数据包信息包括第一数据包的RLC序列号和PDCP序列号时,对应的窗口滑动方法参见图3和图4B所示的实施例;当数据包信息包括第一数据包的RLC序列号、PDCP序列号和第一数据包的发送模式时,对应的窗口滑动方法参见图5所示的实施例;当数据包信息包括丢弃包的PDCP序列号时对应的窗口滑动方法参见图7所示的实施例。
第一种滑动方法:在多连接场景下,接收设备的PDCP层根据不同的RLC层发送的数据包的PDCP序列号来判断是否滑动PDCP接收窗口。此时,数据包信息包括第一数据包的RLC序列号和PDCP序列号。
下面对第一种滑动方法的实施环境进行介绍。
请参考图2A,其示出了本申请提供的移动通信系统的结构示意图。该移动通信系统可以是5G系统,又称新空口(new radio,NR)系统。该移动通信系统包括:至少一个微基站210、宏基站220和终端230。
终端230是指向用户提供语音和/或数据连通性的设备。终端230可以经无线接入网(Radio Access Network,RAN)与一个或多个核心网进行通信。可选地,终端230可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置。例如,订户单元(Subscriber Unit)、订户站(Subscriber Station),移动站(Mobile Station)、移动台(Mobile)、远程站(Remote Station)、接入点(Access Point)、远程终端(Remote Terminal)、接入终端(Access Terminal)、用户装置(User Terminal)、用户代理(User Agent)、用户设备(User Device)、或用户终端(User Equipment)。
终端230分别与微基站210和宏基站220通过无线空口建立无线连接。
可选地,该无线空口是基于第五代移动通信网络技术(5G)标准的无线空口,比如:该无线空口是NR;或者,该无线空口也可以是基于4G或5G的更下一代移动通信网络技术标准的无线空口。
可选地,终端230与微基站210之间的无线空口,与终端230与宏基站220之间的无线空口相同或不同。
可选地,基站(微基站210和宏基站220)可以是5G系统中的gNB;或者,也可以是4G系统中的eNB。可选地,微基站210与宏基站220的类型相同或不同。
微基站210与宏基站220预先建立分离承载(Split Bearer)。分离承载用于供微基站210和宏基站220同时为终端230提供服务。
可选地,参考图2B所示的多连接场景下的各个通信设备内部的层级关系的示意图,微基站210包括MAC层211和RLC层212;宏基站220包括MAC层221、RLC层222和PDCP层223;终端230包括MAC层2311和2312、RLC层2321和RLC层2322和PDCP层233。
终端230中的PDCP层233存在待发送的数据包时,根据图1B所示的发送机制向微基站210和宏基站220分别发送数据包,其中,微基站210接收终端230通过RLC层2322发送的部分数据包;宏基站220接收终端230通过RLC层2321发送的另一部分数据包。
微基站210中的RLC层212将接收到的RLC PDU发送至宏基站220中的PDCP层223。
宏基站220中的RLC层222将接收到的RLC PDU发送至宏基站220中的PDCP层223。
宏基站220中的PDCP层223按照PDCP序列号由小到大的顺序向高层递交数据包。
可选地,本实施例中,宏基站220也可以为其它名称,比如:大基站、eNB等;微基站210也可以为其它名称,比如:小基站、gNB等,本实施例不对宏基站220和微基站210的名称作限定。
需要说明的是,在图2A和图2B所示的移动通信系统中,仅以一个微基站210为例进 行说明,在实际实现时,可以存在多个微基站210与宏基站220建立分离承载,相应地,终端230中可以存在多个RLC层,该多个RLC层分别与对应的基站中的RLC层进行通信。
基于图2A所示的移动通信系统,下面对本申请提供的第一种接收窗口滑动方法进行介绍。
第一种PDCP接收窗口滑动的方法适用于以下场景:
微基站210中的RLC层212将接收到的RLC PDU按照RLC序列号由前到后的顺序发送至宏基站220中的PDCP层223;宏基站220中的RLC层222将接收到的RLC PDU按照RLC序列号由前到后的顺序发送至宏基站220中的PDCP层223。
相应地,终端230中的RLC层2321将接收到的RLC PDU按照RLC序列号由前到后的顺序发送至终端230中的PDCP层233;终端230中的RLC层2322将接收到的RLC PDU按照RLC序列号由前到后的顺序发送至终端230中的PDCP层233。
请参考图3,其示出了本申请一个示例性实施例提供的接收窗口滑动方法的流程图。该方法用于图2A所示的移动通信系统中,基于图1C所述的接收窗口滑动方法,该方法包括如下几个步骤:
作为步骤103的可替换步骤,步骤301,发送设备通过第三RLC层将第一数据包发送至第一RLC层。
当第一数据包的传输方向为上行传输(终端向基站传输该第一数据包)时,第三RLC层位于发送设备中,第一RLC层位于接收设备,或者与接收设备相独立的其它接收设备中。其中,发送设备和接收设备均包括PDCP层。
比如:在图2B中,终端230(发送设备)通过RLC层2321(第三RLC层)发送第一数据包,则宏基站220(接收设备)中的RLC层222(第一RLC层)接收该第一数据包。
又比如:在图2B中,终端230(发送设备)通过RLC层2322(第三RLC层)发送第一数据包,则微基站210(其它接收设备)中的RLC层212(第一RLC层)接收该第一数据包。
当第一数据包的传输方向为下行传输(基站向终端传输该第一数据包)时,第三RLC层位于发送设备中,或者与发送设备相独立的其它发送设备中;第一RLC层位于接收设备中。其中,发送设备和接收设备均包括PDCP层。
比如:在图2B中,宏基站220(发送设备)通过RLC层222(第三RLC层)发送第一数据包,则终端230(接收设备)中的RLC层2321(第一RLC层)接收该第一数据包。
又比如:在图2B中,微基站210(其它发送设备)通过RLC层212(第三RLC层)发送第一数据包,则终端230(接收设备)中的RLC层2322(第一RLC层)接收该第一数据包。
作为步骤104的可替换步骤,步骤302,接收设备通过第一RLC层接收发送设备发送的第一数据包。
比如:在图2B中,宏基站220(接收设备)接收RLC层222(第一RLC层)发送的第一数据包。
又比如:在图2B中,宏基站220(接收设备)接收RLC层232(第一RLC层)发送的第一数据包。
作为步骤105的可替换步骤,步骤303,接收设备通过第一RLC层按照RLC序列号由小到大的顺序向PDCP层发送第一数据包。
比如:第一RLC层接收到的RLC PDU的RLC序列号分别为2、5、8,则第一RLC层在向PDCP层发送RLC PDU时,先发送RLC序列号为2的RLC PDU、再发送RLC序列号为5的RLC PDU、最后发送RLC序列号为8的RLC PDU。
作为步骤106的可替换步骤,步骤304,接收设备的PDCP层接收第一RLC层发送的第一数据包。
本实施例中,接收设备的PDCP层接收第一RLC层按照RLC序列号由小到大的顺序发送的数据包;接收设备的PDCP层还接收第二RLC层按照RLC序列号由小到大的顺序发送的数据包。
当第一数据包的传输方向为上行传输(终端向基站传输该第一数据包)、且第一RLC层位于接收设备中时,第二RLC层位于其它接收设备;或者,当第一数据包的传输方向为上行传输(终端向基站传输该第一数据包)、且第一RLC层位于其它接收设备中时,第二RLC层位于接收设备中。
当第一数据包的传输方向为下行传输(基站向终端传输该第一数据包)时,第二RLC层位于终端中。
作为步骤107的可替换步骤(包括步骤305A和305B),步骤305A,确定第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号是否连续。
可选地,在本实施例中,接收设备的PDCP层维护的状态变量包括:上一次向高层递交的数据包的PDCP序列号。
可选地,上一次向高层递交的数据包的PDCP序列号的初始值为PDCP序列号的最大值Maximum_PDCP_SN。当PDCP层向高层递交数据包时,PDCP层将上一次向高层递交的数据包的PDCP序列号置为本次递交的数据包的PDCP序列号。
接收设备的PDCP层按照PDCP序列号从前到后的顺序滑动PDCP接收窗口,并向高层递交数据包,当前接收到的数据包的PDCP序列号与上一次递交的数据包的PDCP序列号不连续时,PDCP层暂停滑动PDCP接收窗口,并暂停向高层递交当前接收到的数据包。
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号连续时,说明该第一数据包是上一次递交的数据包之后的第一个数据包,此时,接收设备滑动PDCP接收窗口,并向高层递交PDCP接收窗口滑动时经过的数据包,滑动后的PDCP接收窗口的下边界的值大于或等于第一数据包的PDPC序列号。
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,接收设备需要判断在上一次向高层递交的数据包与第一数据包之间是否存在丢包,从而确定是否继续滑动PDCP接收窗口,此时,执行步骤305B。
步骤305B,当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,确定缓冲区是否存储有第二RLC层发送的第二数据包的PDCP序列号。
可选地,接收设备的PDCP层维护的状态变量还包括:来自第一RLC层的数据包的第一最小PDCP序列号和来自第二RLC层的数据包的第二最小PDCP序列号。
可选地,第一最小PDCP序列号的初始值为第一次接收到的来自第一RLC层的数据包的PDCP序列号。当第一最小PDCP序列号对应的数据包被向上递交时,将第一最小PDCP 序列号置为PDCP接收窗口中、来自第一RLC层的数据包的最小的PDCP序列号。
可选地,第二最小PDCP序列号的初始值为第一次接收到的来自第二RLC层的数据包的PDCP序列号。当第二最小PDCP序列号对应的数据包被向上递交时,将第二最小PDCP序列号置为PDCP接收窗口中、来自第二RLC层的数据包的最小的PDCP序列号。
接收设备的PDCP层确定是否维护有第二最小PDCP序列号,且该第二最小PDCP序列号大于上一次向高层递交的数据包的PDCP序列号;若PDCP层维护有第二最小PDCP序列号,且该第二最小PDCP序列号大于上一次向高层递交的数据包的PDCP序列号,说明该第二最小PDCP序列号对应的第二数据包与上一次递交的数据包不连续,此时,在第一数据包或第二数据包之前存在丢弃包,接收设备执行步骤306;若PDCP层未缓存第二最小PDCP序列号,或者缓存的第二最小PDCP序列号小于或等于上一次向高层递交的数据包的PDCP序列号,则接收设备停滑动PDCP接收窗口,继续通过PDCP层接收第二数据包,在接收到第二RLC层发送的第二数据包时,再次执行本步骤。
需要说明的是,在此处以及此后描述的实施例中,PDCP序列号的前后比较是指PDCP序列号对应的COUNT值的比较,对序列号的加减操作也是指对对应的COUNT值执行加减操作。
作为步骤108的可替换步骤,步骤306,当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续,且缓冲区存储有第二RLC层发送的第二数据包的PDCP序列号时,接收设备滑动PDCP接收窗口。
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续,且缓冲区中存储有第二数据包的PDCP序列号时,说明在第一数据包或第二数据包之前存在丢弃包,接收设备滑动PDCP接收窗口。
其中,若第一数据包的PDCP序列号位于第二数据包的PDCP序列号之前,则滑动后的PDCP接收窗口的下边界的值是第一数据包的PDCP序列号或位于第一数据包的PDCP序列号之后的PDCP序列号;若第一数据包的PDCP序列号位于第二数据包的PDCP序列号之后,则滑动后的PDCP接收窗口的下边界的值是第二数据包的PDCP序列号或位于第二数据包的PDCP序列号之后的PDCP序列号。
比如:第一数据包的PDCP序列号为3、第二数据包的PDCP序列号为5、且PDCP接收窗口还接收到了PDCP序列号为4的数据包,则滑动后的PDCP接收窗口的下边界的值可以为3;或者,也可以为4;或者,还可以为5。
为了更清楚地理解本实施例提供的接收窗口滑动方法,下面举一个实例进行说明。
参考图4A,终端410向接收设备420发送PDCP序列号为1、2、6的数据包;终端410向其它接收设备430发送PDCP序列号为3、5的数据包。
接收设备420通过该接收设备420中的第一RLC层接收PDCP序列号为1和2的数据包,通过其它接收设备430中的第二RLC层接收PDCP序列号为3和5的数据包,第一RLC层和第二RLC层分别向接收设备420中的PDCP层按序递交数据包。
相应地,接收设备420通过PDCP层的PDCP接收窗口依次接收第一RLC层和第二RLC层发送的数据包,这些数据包的PDCP序列号分别为1、2、3和5。PDCP接收窗口的下边界的值为3时,停止滑动,并将PDCP序列号为5的数据包缓存。
若接收设备420的PDCP层接收到第一RLC层发送的PDCP序列号为6的数据包,接 收设备确定出该数据包的PDCP序列号与上一次递交的数据包的PDCP序列号3不连续,且缓冲区存储有第二RLC层发送的第二数据包的PDCP序列号5,此时,终端410的PDCP层丢弃了PDCP序列号为4的数据包,接收设备420滑动PDCP接收窗口,滑动后的PDCP接收窗口的下边界的值为PDCP序列号6。
综上所述,本实施例提供的接收窗口滑动方法,通过在多连接、RLC层按序递交数据包的场景下,接收设备的PDCP层接收到第一数据包时,无需等待重排序定时器的定时时长到达,根据该第一数据包的PDCP序列号就能确定是否滑动PDCP接收窗口;由于缩短了确定是否滑动PDCP接收窗口的时长,从而缩短了在多连接、RLC层按序递交数据包的场景下数据包的传输延时。
可选地,在本实施例中,当第一RLC层接收到的第一数据包为发送设备发送的最后一个数据包,该第一数据包的PDCP序列号与上一次递交的数据包的PDCP序列号之间不连续,且缓冲区中未缓存第二数据包的PDCP序列号时,由于该第一数据包为最后一个数据包,PDCP不会接收到其它数据包,此时,接收设备也会确定在发送设备的PDCP层存在丢弃包,从而滑动PDCP接收窗口。
第二种滑动方法:在多连接场景下,接收设备的PDCP层根据不同的RLC层发送的数据包的PDCP序列号和发送模式来判断是否滑动PDCP接收窗口。此时,数据包信息包括第一数据包的RLC序列号、PDCP序列号和发送模式。
其中,发送模式由RLC层生成并发送至PDCP层。
发送模式是按序发送模式或乱序发送模式;按序发送模式用于指示RLC层在发送第一数据包时不存在未收全数据包;乱序发送模式用于指示RLC层在发送第一数据包时存在未收全数据包;未收全数据包是指RLC序列号在第一数据包的RLC序列号之前、且未收到全部的分片数据包的数据包。
例如:接收设备的RLC层接收到PDCP序列号为1的部分分片数据包、接收到PDCP序列号为2的全部分片数据包,则该RLC层向接收设备的PDCP层发送PDCP序列号为2的数据包,此时,PDCP序列号为2的数据包为第一数据包,PDCP序列号为1的数据包为未收全数据包。
可选地,数据包可以包括至少两个分片数据包;或者,数据包也可以是完整的,不包括分片数据包。
第二种窗口滑动方法对应的实施环境参考图2A所示的移动通信系统。
第二种PDCP接收窗口滑动的方法适用于以下场景:
微基站210中的RLC层212将接收到的RLC PDU乱序发送至宏基站220中的PDCP层223;宏基站220中的RLC层222将接收到的RLC PDU乱序发送至宏基站220中的PDCP层223。
相应地,终端230中的RLC层2321将接收到的RLC PDU乱序发送至终端230中的PDCP层233;终端230中的RLC层2322将接收到的RLC PDU乱序发送至终端230中的PDCP层233。
其中,乱序发送是指:RLC层在接收到完整的数据包时,向PDCP层递交该数据包,即,RLC层递交数据包的递交顺序与该数据包的RLC序列号无关。
请参考图4B,其示出了本申请一个示例性实施例提供的接收窗口滑动方法的流程图。该方法用于图2A所示的移动通信系统中,基于图1C所述的接收窗口滑动方法,该方法包括如下几个步骤:
作为步骤103的可替换步骤,步骤401,发送设备通过第三RLC层将第一数据包发送至第一RLC层。
本步骤的相关说明详见步骤301,本实施例在此不作赘述。
作为步骤104的可替换步骤,步骤402,接收设备通过第一RLC层获取发送设备发送的第一数据包。
本步骤的相关说明详见步骤302,本实施例在此不作赘述。
作为步骤105的可替换步骤(包括步骤403A和403B),步骤403A,当第一RLC层的RLC接收窗口的下边界的值是第一数据包的RLC序列号,且第一RLC层接收到完整的第一数据包时,第一RLC层将按序发送模式和第一数据包发送至PDCP层。
由于RLC接收窗口按照RLC序列号从前至后的顺序滑动,因此,当RLC接收窗口的下边界的值是第一数据包的RLC序列号,且第一RLC层接收到完整的第一数据包时,说明该第一数据包之前不存在未收全数据包,因此,将按序发送模式发送至PDCP层。
可选地,按序发送模式和第一数据包可以同时发送至PDCP层;或者,也可以分别发送至PDCP。
RLC接收窗口用于缓存RLC层接收到的、且未向上层(即,PDCP层)递交的数据包。
步骤403B,接收设备通过第一RLC层滑动RLC接收窗口。
滑动后的RLC窗口的下边界的值在第一数据包的RLC序列号之后。示意性地,滑动后的RLC窗口的下边界的值为第一数据包的RLC序列号加1。
作为步骤106的可替换步骤,步骤404,接收设备的PDCP层接收第一RLC层发送的第一数据包。
本实施例中,接收设备的PDCP层接收第一RLC层乱序发送的数据包;接收设备的PDCP层还接收第二RLC层乱序发送的数据包。
当第一数据包的传输方向为上行传输(终端向基站传输该第一数据包)、且第一RLC层位于接收设备中时,第二RLC层位于其它接收设备;或者,当第一数据包的传输方向为上行传输(终端向基站传输该第一数据包)、且第一RLC层位于其它接收设备中时,第二RLC层位于接收设备中。
当第一数据包的传输方向为下行传输(基站向终端传输该第一数据包)时,第二RLC层位于终端中。
本步骤的相关说明详见步骤304,本实施例在此不作赘述。
作为步骤107的可替换步骤(包括步骤405A和405B),步骤405A,确定第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号是否连续。
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号连续时,说明该第一数据包是上一次递交的数据包之后的第一个数据包,此时,接收设备滑动PDCP接收窗口,并向高层递交PDCP接收窗口滑动时经过的数据包,滑动后的PDCP接收窗口的下边界的值大于或等于第一数据包的PDPC序列号。
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时, 接收设备需要判断在上一次向高层递交的数据包与第一数据包之间是否存在丢包,从而确定是否继续滑动PDCP接收窗口,此时,执行步骤405B。
本步骤的相关描述参考步骤305A,本实施例在此不作赘述。
步骤405B,当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,确定第一数据包的发送模式是否为按序发送模式,且缓冲区中是否存储有第二RLC层发送的第三数据包的PDCP序列号。
其中,第三数据包的发送模式为按序发送模式。
当第一数据包的发送模式为按序发送模式,且缓冲区中存储有第二RLC层发送的第三数据包的PDCP序列号时,接收设备执行步骤406。
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,若第一数据包为按序发送模式,则说明第一数据包是RLC接收窗口滑动时发送的数据包,第一RLC层不存在PDCP序列号在第一数据包的PDCP序列号之前的数据包。此时,接收设备的PDCP层继续确定是否维护有第二最小PDCP序列号,且该第二最小PDCP序列号大于上一次向高层递交的数据包的PDCP序列号;若PDCP层维护有该第二最小PDCP序列号,说明该第二最小PDCP序列号对应的第三数据包与上一次递交的数据包不连续,由于第三数据包的发送模式为按序发送模式,即,在第二RLC层中不存在PDCP序列号在第三数据包的PDCP序列号之前的数据包。此时,在第一数据包和第三数据包均与上一次递交的数据包不连续的情况下,说明在第一数据包或第三数据包之前存在丢弃包,接收设备执行步骤406;若PDCP层未缓存第二最小PDCP序列号,或者缓存的第二最小PDCP序列号小于上一次向高层递交的数据包的PDCP序列号,则接收设备继续通过PDCP层接收第三数据包,在接收到第二RLC层发送的第三数据包时,再次执行本步骤。
作为步骤108的可替换步骤,步骤406,当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续,第一数据包的发送模式为按序发送模式,且缓冲区中存储有第二RLC层发送的第三数据包的PDCP序列号时,接收设备滑动PDCP接收窗口。
其中,若第一数据包的PDCP序列号位于第三数据包的PDCP序列号之前,则滑动后的PDCP接收窗口的下边界的值是第一数据包的PDCP序列号或位于第一数据包的PDCP序列号之后的PDCP序列号;若第一数据包的PDCP序列号位于第三数据包的PDCP序列号之后,则滑动后的PDCP接收窗口的下边界的值是第三数据包的PDCP序列号或位于第三数据包的PDCP序列号之后的PDCP序列号。
比如:第一数据包的PDCP序列号为3、第三数据包的PDCP序列号为5、且PDCP接收窗口还缓存有PDCP序列号为4的数据包,则滑动后的PDCP接收窗口的下边界的值可以为3;或者,也可以为4;或者,还可以为5。
为了更清楚地理解本实施例提供的接收窗口滑动方法,下面举一个实例进行说明。
参考图4A,终端410向接收设备420发送PDCP序列号为1、2、6的数据包;终端410向其它接收设备430发送PDCP序列号为3、5的数据包。
接收设备420通过该接收设备420中的第一RLC层接收PDCP序列号为1和2的数据包,通过其它接收设备430中的第二RLC层接收PDCP序列号为3和5的数据包,第一RLC层和第二RLC层分别向接收设备420中的PDCP层乱序递交数据包。
相应地,接收设备420通过PDCP层的PDCP接收窗口依次接收第一RLC层和第二RLC 层发送的数据包,这些数据包的PDCP序列号分别为1、2、3和5。PDCP接收窗口的下边界的值为3时,停止滑动,并将PDCP序列号为5的数据包缓存。
若接收设备420的PDCP层接收到第一RLC层发送的PDCP序列号为6的数据包,该数据包的PDCP序列号与上一次递交的数据包的PDCP序列号3不连续,且缓冲区存储有第二RLC层发送的第三数据包的PDCP序列号5,该第三数据包的发送模式为按序发送模式,此时,终端410的PDCP层丢弃了PDCP序列号为4的数据包,接收设备420滑动PDCP接收窗口,滑动后的PDCP接收窗口的下边界的值为PDCP序列号6。
综上所述,本实施例提供的接收窗口滑动方法,通过在多连接、RLC层乱序递交数据包的场景下,接收设备的PDCP层接收到第一数据包时,根据该第一数据包的PDCP序列号和发送模式就能确定是否滑动PDCP接收窗口,无需等待重排序定时器的定时时长到达;由于缩短了确定是否滑动PDCP接收窗口的时长,从而缩短了在多连接、RLC层乱序递交数据包的场景下的数据包的传输延时。
可选地,在本实施例中,当第一RLC层接收到的第一数据包为发送设备发送的最后一个数据包,该第一数据包的PDCP序列号与上一次递交的数据包的PDCP序列号之间不连续,且缓冲区中未缓存第二数据包的PDCP序列号时,由于该第一数据包为最后一个数据包,PDCP不会接收到其它数据包,此时,接收设备也会确定在发送设备的PDCP层存在丢弃包,从而滑动PDCP接收窗口。
第三种滑动方法:在RLC层非按序递交的场景下,接收设备根据RLC层为每个数据包添加的发送模式和PDCP序列号确定是否滑动PDCP接收窗口。此时,数据包信息包括第一数据包的RLC序列号、PDCP序列号和发送模式。
第三种滑动方法对应的实施环境参考图1所示的移动通信系统。
基于图1所示的移动通信系统,下面对本申请提供的第三种接收窗口滑动方法进行介绍。
请参考图5,其示出了本申请一个示例性实施例提供的接收窗口滑动方法的流程图。该方法用于图1所示的移动通信系统中,发送设备为发送设备110接收设备为接收设备120,基于图1C所述的接收窗口滑动方法,该方法包括如下几个步骤:
作为步骤103的可替换步骤,步骤501,发送设备通过RLC层向接收设备的RLC层发送第一数据包。
发送设备通过RLC层发送的第一数据包包括PDCP序列号。
作为步骤105的可替换步骤(包括步骤502A和步骤502B),步骤502A,当RLC层中的RLC接收窗口的下边界的值是第一数据包的RLC序列号,且RLC层接收到完整的第一数据包时,接收设备的RLC层将按序发送模式和第一数据包发送至PDCP层。
RLC接收窗口用于缓存所述RLC层接收到的、且未向上层递交的数据包。
由于RLC接收窗口按照RLC序列号从前至后的顺序滑动,因此,当RLC接收窗口的下边界的值是第一数据包的RLC序列号,且RLC层接收到完整的第一数据包时,说明该第一数据包之前不存在未收全数据包,因此,将按序发送模式发送至PDCP层。
步骤502B,接收设备的RLC层滑动RLC接收窗口。
滑动后的RLC窗口的下边界的值位于第一数据包的RLC序列号之后。示意性地,滑动 后的RLC窗口的下边界的值为第一数据包的RLC序列号加1。
本实施例中,RLC层在接收到第一数据包的全部分片数据包时,向PDCP层发送该第一数据包。由于RLC层向PDCP层发送数据包的顺序与数据包的PDCP序列号无关,而是与是否接收某一数据包的全部分片数据包有关,因此,RLC层向PDCP层发送的数据包的PDCP序列号可能是乱序的。
可选地,发送模式可以通过字符表示,比如:乱序发送模式通过0来表示,按序发送模式通过1来表示。
作为步骤107的可替换步骤(包括步骤503A和503B),步骤503A,确定第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号是否连续。
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号连续时,说明该第一数据包是上一次递交的数据包之后的第一个数据包,此时,接收设备滑动PDCP接收窗口,并向高层递交PDCP接收窗口滑动时经过的数据包,滑动后的PDCP接收窗口的下边界的值大于或等于第一数据包的PDPC序列号。
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,接收设备需要判断在上一次向高层递交的数据包与第一数据包之间是否存在丢包,从而确定是否继续滑动PDCP接收窗口,此时,执行步骤503B。
本步骤的相关描述参考步骤305A,本实施例在此不作赘述。
步骤503B,当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,确定第一数据包的发送模式是否为按序发送模式。
在第一数据包的发送模式为按序发送模式时,说明在第一数据包之前RLC层中不存在未收全的数据包,接收设备的PDCP层不会接收到PDCP序列号在该第一数据包的PDCP序列号之前的数据包。此时,若接收设备接收到第一数据包之前的全部数据包,则说明第一数据包之前的数据包没有被丢弃,接收设备暂停滑动PDCP接收窗口;若接收设备未收到第一数据包之前的全部数据包,则说明第一数据包之前存在被丢弃的数据包,接收设备执行步骤504。
作为步骤108的可替换步骤,步骤504,当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续,且第一数据包的发送模式为按序发送模式时,接收设备滑动PDCP接收窗口。
其中,滑动后的PDCP接收窗口的下边界的值大于或等于第一数据包的PDCP序列号。
比如:第一数据包的PDCP序列号为3、PDCP接收窗口还缓存有PDCP序列号为4的数据包,则滑动后的PDCP接收窗口的下边界的值可以为3;或者,也可以为4。
参考图6,发送设备610向接收设备620发送PDCP序列号为1、2、3和5的数据包。
接收设备620通过RLC层接收到RLC序列号为1的部分分片数据包(图中阴影部分表示)、接收到RLC序列号为2的数据包、接收到RLC序列号为3的部分分片数据包(图中阴影部分表示)、接收到RLC序列号为5的部分分片数据包(图中阴影部分表示)。可选地,本示例中,数据包的RLC序列号与PDCP序列号相同。
1、在接收设备620的RLC层向PDCP层发送PDCP序列号为2的数据包,并将该数据包的发送模式设置为乱序发送模式;PDCP层接收到该数据包后,确定该数据包之前存在未收全的数据包,则继续等待接收数据包,暂停滑动PDCP接收窗口。
2、RLC层接收到PDCP序列号为3的全部分片数据包时,向PDCP层发送PDCP序列号为3的数据包,并将该数据包的发送模式设置为乱序发送模式;PDCP层接收到该数据包后,确定该数据包之前存在未收全的数据包,则继续等待接收数据包,暂停滑动PDCP接收窗口。
3、RLC层接收到PDCP序列号为1的全部分片数据包时,向PDCP层发送PDCP序列号为1的数据包,并将该数据包的发送模式设置为按序发送模式;PDCP层接收到该数据包后,确定该数据包之前不存在未收全的数据包,接收设备滑动PDCP接收窗口,滑动后的PDCP接收窗口的下边界的值为PDCP序列号3。
4、RLC层接收到PDCP序列号为5的全部分片数据包时,向PDCP层发送PDCP序列号为5的数据包,并将该数据包的发送模式设置为按序发送模式;PDCP层接收到该数据包后,确定该数据包之前不存在未收全的数据包,由于PDCP层已接收到的数据包的PDCP序列号不连续,因此,发送设备主动丢弃了数据包,接收设备滑动PDCP接收窗口,滑动后的PDCP接收窗口的下边界的值为PDCP序列号5。
综上所述,本实施例提供的接收窗口滑动方法,通过在单连接、RLC层乱序递交数据包的场景下,接收设备的PDCP层接收到第一数据包时,根据该第一数据包的PDCP序列号和第一数据包的发送模式确定是否滑动PDCP接收窗口,无需等待重排序定时器的定时时长到达;由于缩短了检测数据包丢弃的时长,从而缩短了在单连接、RLC层乱序递交数据包的场景下的数据包的传输延时。
可选地,在第三种滑动方法和第四种滑动方法中,当RLC层的RLC接收窗口的下边界的值是第四数据包的RLC序列号,且RLC层接收到完整的第一数据包时,将乱序发送模式和第一数据包发送至PDCP层;RLC层暂停滑动RLC接收窗口,直至RLC层接收到完整的第四数据包时滑动RLC窗口,该第四数据包的RLC序列号在第一数据包的RLC序列号之前。
第四种滑动方法:发送设备生成标记有丢弃包的PDCP序列号的第一数据包,接收设备根据该第一数据包确定发送设备丢弃的数据包。此时,数据包信息包括:丢弃包的PDCP序列号。
可选地,第四种滑动方法对应的实施环境可以是图1所示的移动通信系统;或者,也可以是图2A所示的移动通信系统。
请参考图7,其示出了本申请一个示例性实施例提供的接收窗口滑动方法的流程图。该方法用于图1或图2A所示的移动通信系统中,基于图1C所述的接收窗口滑动方法,该方法包括如下几个步骤:
作为步骤101的可替换步骤,步骤701,发送设备在PDCP层生成第一数据包,第一数据包包括丢弃包的PDCP序列号。
可选地,发送设备可以在丢弃一个数据包时生成第一数据包;或者,发送设备在数据包的发送时长达到预设时长时,生成第一数据包。第一数据包指示的丢弃包的数量为至少一个。
其中,预设时长小于接收设备的PDCP层中重排序定时器的定时时长。
第一数据包为控制数据包,该控制数据包与IP数据包不同。控制数据包包括公共数据 单元和序列号指示单元,公共数据单元用于在存在至少两个丢弃包时,指示不同丢弃包的PDCP序列号的公共部分;序列号指示单元用于在存在至少两个丢弃包时,指示不同丢弃包的PDCP序列号的差异部分。
参考图8所示的第一数据包的示意图。第一数据包包括用于指示该第一数据包的类型的字段810、公共数据单元的长度的字段820、公共数据单元指示的PDCP字段830和序列号指示单元指示的PDCP字段840。
其中,公共数据单元的长度是根据第一个丢弃包的PDCP序列号至最后一个丢弃包的PDCP序列号的序列号个数确定的。
可选地,公共数据单元的长度=PDCP序列号的最大长度-序列号个数对应的长度。
在一个示例中,第一个丢弃包的PDCP序列号为0010、最后一个丢弃包的PDCP序列号为0110,则在0010至0110包括0010、0011、0100、0101和0110,序列号个数为5,该序列号个数对应的长度为3比特(bit),则公共数据单元的长度为4-3=1bit。
公共数据单元指示的PDCP字段根据第一个丢弃包的前n位确定,其中,n为公共数据单元的长度。比如:在上例中,公共数据单元指示的PDCP字段为0。
参考图9所示的第一数据包的示意图。在又一个示例中,第一个丢弃包的PDCP序列号为1110、最后一个丢弃包的PDCP序列号为0010,此时,PDCP层的PDCP序列号发生翻转,即,发送设备使用一个循环周期内的PDCP序列号发送完数据包后,使用下一个循环周期内的PDCP序列号来发送数据包。此时,PDCP序列号1110至0010包括1110、1111、0000、0001和0010,序列号个数为5,该序列号个数对应的长度为3比特(bit),则公共数据单元的长度为4-3=1bit。公共数据单元指示的PDCP字段为1。
需要说明的是,图8和图9所示的第一数据包仅是示意性的,在实际实现时,第一数据包中还可以携带其它控制信息。
作为步骤107的可替换步骤(包括步骤702A和步骤702B),步骤702A,在接收设备接收到第一数据包时,在缓存区中对第一数据包中的PDCP序列号指示的缓存位置进行标记。
标记后的缓存位置用于指示缓存的数据包被发送设备主动丢弃。
比如:第一数据包中的PDCP序列号为4、5、6、7,则接收设备在PDCP层的缓存取中对PDCP序列号4对应的缓存位置进行标记、对PDCP序列号5对应的缓存位置进行标记、对PDCP序列号6对应的缓存位置进行标记、对PDCP序列号7对应的缓存位置进行标记。
步骤702B,在PDCP接收窗口的下边界的值指示的缓存位置未存储数据包时,确定PDCP接收窗口的下边界的值是否指示标记后的缓存位置。
当PDCP接收窗口的下边界的值指示的标记后的缓存位置时,说明该缓存位置对应的数据包被发送设备主动丢弃,接收设备不再等待该数据包,执行步骤703。
当PDCP接收窗口的下边界的值未指示的标记后的缓存位置时,接收设备暂停滑动PDCP接收窗口,继续等待PDCP接收窗口的下边界的值指示的存储位置的数据包。
作为步骤108的可替换步骤,步骤703,当PDCP接收窗口的下边界的值指示标记后的缓存位置时,接收设备滑动PDCP接收窗口。
滑动后的PDCP接收窗口的下边界的值位于PDCP接收窗口的下边界的值之后。
可选地,当第一数据包中的序列号指示单元对应的字段由小到大排列时,接收设备将公共数据单元指示的字段与序列号指示单元对应的字段合并得到各个丢弃包的PDCP序列号。
在一个示例中,接收设备的PDCP层接收到的第一数据包如图8所示,序列号指示单元对应的字段由小到大排列,则接收设备将公共数据单元指示的字段与序列号指示单元指示的每个字段进行合并,得到的所有丢弃包的PDCP序列号为:0010和0110。
可选地,当第一数据包中的序列号指示单元对应的字段存在第n+1个字段小于第n个字段时,接收设备将第n个字段之前的各个字段(包括第n个字段)与公共数据单元指示的字段合并;将第n+1个字段之后的各个字段(包括第n+1个字段)与公共数据单元指示的字段+1合并,得到所有丢弃包的PDCP序列号,n为正整数。
可选地,第n个字段之前的各个字段由小到大排列;第n+1个字段之后的各个字段由小到大排列。
在又一个示例中,接收设备的PDCP层接收到的第一数据包如图9所示,序列号指示单元指示的第二个字段小于第一个字段,则接收设备将第一个字段与公共数据单元指示的字段合并;将第二个字段与公共数据单元指示的字段+1合并,得到的所有丢弃包的PDCP序列号为:1110和0010。
综上所述,本实施例提供的接收窗口滑动方法,通过在发送设备的PDCP层生成第一数据包,该第一数据包包括丢弃包的PDCP序列号,使得接收设备的PDCP层无需根据第一数据包的PDCP序列号确定是否滑动PDCP接收窗口,缩短了滑动PDCP接收窗口的时长,从而缩短了数据包的传输延时。
另外,通过为第一数据包设置公共数据单元,使得发送设备无需在第一数据包中生成每个丢弃包的PDCP序列号的全部字段,只需要生成每个丢弃包的PDCP序列号的差异部分和PDCP序列号的一个公共部分,节省了第一数据包的字段,从而节省了传输该第一数据包消耗的传输资源。
请参考图10,其示出了本申请一个实施例提供的接收窗口滑动装置的框图。该装置包括:接收单元1001、发送单元1002、确定单元1003和滑动单元1004。
接收单元1001,用于通过无线链路控制RLC层获取发送设备发送的第一数据包;
发送单元1002,用于通过RLC层向分组数据汇聚协议PDCP层发送第一数据包;
接收单元1001,用于通过PDCP层接收第一数据包;
确定单元1003,用于根据第一数据包的数据包信息确定是否滑动PDCP接收窗口,PDCP接收窗口用于缓存PDCP层接收到的、且未向上层递交的数据包;
滑动单元1004,用于在确定单元1003确定出滑动PDCP接收窗口时,滑动PDCP接收窗口。
可选地,数据包信息包括:第一数据包的RLC序列号和PDCP序列号;RLC序列号用于在RLC层对接收到的数据包进行排序;PDCP序列号用于在PDCP层对接收到的数据包进行排序,并按照排序顺序向高层递交数据包。
可选地,接收设备接收第一RLC层和第二RLC层发送的数据包,
发送单元1002,还用于:
通过第一RLC层按照RLC序列号由小到大的顺序发送第一数据包;
确定单元1003,还用于:
确定第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号是否连续;
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,确定缓冲区中是否存储有第二RLC层发送的第二数据包的PDCP序列号;第二数据包的PDCP序列号位于上一次向高层递交的数据包的PDCP序列号之后;
所述滑动单元1004,还用于:
当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续,且所述缓冲区存储有所述第二RLC层发送的第二数据包的所述PDCP序列号时,所述接收设备滑动所述PDCP接收窗口;
其中,若第一数据包的PDCP序列号位于第二数据包的PDCP序列号之前,则滑动后的PDCP接收窗口的下边界的值是第一数据包的PDCP序列号或位于第一数据包的PDCP序列号之后的PDCP序列号;若第一数据包的PDCP序列号位于第二数据包的PDCP序列号之后,则滑动后的PDCP接收窗口的下边界的值是第二数据包的PDCP序列号或位于第二数据包的PDCP序列号之后的PDCP序列号。
可选地,数据包信息包括第一数据包的PDCP序列号、RLC序列号和发送模式,发送模式由RLC层生成并发送至PDCP层,发送模式是按序发送模式或乱序发送模式;按序发送模式用于指示RLC层在发送第一数据包时不存在未收全数据包;乱序发送模式用于指示RLC层在发送第一数据包时存在未收全数据包;未收全数据包是指RLC序列号在第一数据包的RLC序列号之前、且未收到全部的分片数据包的数据包。
可选地,接收设备接收第一RLC层和第二RLC层发送的数据包,
发送单元1002,还用于:
当第一RLC层的RLC接收窗口的下边界的值是第一数据包的RLC序列号,且第一RLC层接收到完整的第一数据包时,通过第一RLC层将按序发送模式和第一数据包发送至PDCP层,RLC接收窗口用于缓存RLC层接收到的、且未向上层递交的数据包;
第一RLC层滑动RLC接收窗口,滑动后的RLC窗口的下边界的值位于第一数据包的RLC序列号之后;
确定单元1003,还用于:
确定第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号是否连续;
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,确定第一数据包的发送模式是否为按序发送模式,且缓冲区中是否存储有第二RLC层发送的第三数据包的PDCP序列号;第三数据包的发送模式为按序发送模式;
所述滑动单元1004,还用于:
当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续,所述第一数据包的发送模式为所述按序发送模式,且所述缓冲区中存储有所述第二RLC层发送的第三数据包的所述PDCP序列号时,所述接收设备滑动所述PDCP接收窗口;
其中,若第一数据包的PDCP序列号位于第三数据包的PDCP序列号之前,则滑动后的PDCP接收窗口的下边界的值是为第一数据包的PDCP序列号或位于第一数据包的PDCP序列号之后的PDCP序列号;若第一数据包的PDCP序列号位于第三数据包的PDCP序列号之后,则滑动后的PDCP接收窗口的下边界的值是第三数据包的PDCP序列号或位于第三数据包的PDCP序列号之后的PDCP序列号。
可选地,第一RLC层位于接收设备中;或者,第一RLC层位于与接收设备相独立的其它接收设备中。
可选地,数据包信息包括第一数据包的PDCP序列号、RLC序列号和发送模式。
可选地,RLC层位于接收设备中;
发送单元1002,还用于:
当RLC层中的RLC接收窗口的下边界的值是第一数据包的RLC序列号,且RLC层接收到完整的第一数据包时,通过RLC层将按序发送模式和第一数据包发送至PDCP层,RLC接收窗口用于缓存RLC层接收到的、且未向上层递交的数据包;
RLC层滑动RLC接收窗口,滑动后的RLC窗口的下边界的值位于第一数据包的RLC序列号之后;
确定单元1003,还用于:
确定第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号是否连续;
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续时,确定第一数据包的发送模式是否为按序发送模式;
滑动单元1004,还用于:
当第一数据包的PDCP序列号与上一次向高层递交的数据包的PDCP序列号不连续,且第一数据包的发送模式为按序发送模式时,滑动后的PDCP接收窗口的下边界的值大于或等于第一数据包的PDCP序列号。
可选地,发送单元1002,还用于:
当RLC层的RLC接收窗口的下边界的值是第四数据包的RLC序列号,且RLC层接收到完整的第一数据包时,通过RLC层将乱序发送模式和第一数据包发送至PDCP层;RLC层暂停滑动RLC接收窗口,直至RLC层接收到完整的第四数据包时滑动RLC窗口,第四数据包的RLC序列号在第一数据包的RLC序列号之前。
可选地,数据包信息包括丢弃包的PDCP序列号,丢弃包是指发送设备丢弃的数据包;
可选地,确定单元1003,还用于:
在接收到第一数据包时,在缓存区中对第一数据包中的PDCP序列号指示的缓存位置进行标记,标记后的缓存位置用于指示缓存的数据包被发送设备主动丢弃;
在PDCP接收窗口的下边界的值指示的缓存位置未存储数据包时,确定PDCP接收窗口的下边界的值是否指示标记后的缓存位置;
滑动单元1004,还用于:
当PDCP接收窗口的下边界的值指示标记后的缓存位置时,滑动PDCP接收窗口,滑动后的PDCP接收窗口的下边界的值位于PDCP接收窗口的下边界的值之后。
可选地,第一数据包为控制数据包,丢弃包的数量为至少一个,控制数据包包括公共 数据单元和序列号指示单元,公共数据单元用于指示丢弃包的PDCP序列号的公共部分;序列号指示单元用于指示丢弃包的PDCP序列号的差异部分。
相关细节可结合参考上述方法实施例。
请参考图11,其示出了本申请一个实施例提供的接收窗口滑动装置的框图。该装置包括:生成单元1110、接收单元1120和发送单元1130。
生成单元110,用于在PDCP层生成第一数据包;
接收单元1120,用于通过无线链路控制RLC层接收PDCP层生成的第一数据包;
发送单元1130,用于通过RLC层将第一数据包发送至接收设备;第一数据包包括丢弃包的PDCP序列号,第一数据包用于供接收设备根据丢弃包的PDCP序列号滑动PDCP接收窗口,PDCP接收窗口用于缓存PDCP层接收到的、且未向高层递交的数据包,丢弃包是指发送设备在PDCP层丢弃的数据包。
可选地,第一数据包为控制数据包,丢弃包的数量为至少一个,控制数据包包括公共数据单元和序列号指示单元,公共数据单元用于指示丢弃包的PDCP序列号的公共部分;序列号指示单元用于指示丢弃包的PDCP序列号的差异部分。
相关细节可结合参考上述方法实施例。
请参考图12,其示出了本申请一个示例性实施例提供的通信设备的结构示意图。本申请中,通信设备可以为发送设备,也可以为接收设备;发送设备可以为终端也可以为基站;接收设备可以为终端也可以为基站。
该通信设备包括:处理器1201、存储器1202和总线1203。
处理器1201包括一个或者一个以上处理核心,处理器1201通过运行软件程序以及模块,从而执行各种功能应用以及信息处理。
存储器1202通过总线1203与处理器1201相连。存储器1202存储有通信设备必要的指令。
处理器1201用于执行存储器1202中的指令以实现本申请各个方法实施例提供的接收窗口滑动方法。
此外,存储器1202可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随时存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
示意性地,存储器1202中存储有PDCP层协议、RLC层协议、MAC层协议等协议。
可以理解的是,图12仅仅示出了通信设备的简化设计。在其他的实施例中,通信设备可以包含任意数量的发射器,接收器,处理器,控制器,通信单元等,本实施例对此不作限定。
可选地,本申请提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在通信设备上运行时,使得通信设备执行上述各个实施例所提供的接收窗口滑动方法。
可选地,上述各个单元可由通信设备中的处理器执行存储器中的指令来实现。
本领域普通技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

Claims (27)

  1. 一种接收窗口滑动方法,其特征在于,所述方法包括:
    接收设备通过无线链路控制RLC层获取发送设备发送的第一数据包;
    所述接收设备通过所述RLC层向分组数据汇聚协议PDCP层发送所述第一数据包;
    所述接收设备的所述PDCP层接收所述第一数据包;
    所述接收设备根据所述第一数据包的数据包信息确定是否滑动PDCP接收窗口,所述PDCP接收窗口用于缓存所述PDCP层接收到的、且未向上层递交的数据包;
    在根据所述数据包信息确定出滑动所述PDCP接收窗口时,所述接收设备滑动所述PDCP接收窗口。
  2. 根据权利要求1所述的方法,其特征在于,所述数据包信息包括:所述第一数据包的RLC序列号和PDCP序列号;
    所述RLC序列号用于在所述RLC层对接收到的数据包进行排序;
    所述PDCP序列号用于在所述PDCP层对接收到的数据包进行排序,并按照排序顺序向高层递交所述数据包。
  3. 根据权利要求2所述的方法,其特征在于,所述接收设备接收第一RLC层和第二RLC层发送的数据包,
    所述接收设备通过所述RLC层向PDCP层发送所述第一数据包,包括:
    所述接收设备通过所述第一RLC层按照所述RLC序列号由小到大的顺序发送所述第一数据包;
    所述接收设备根据所述第一数据包的数据包信息确定是否滑动PDCP接收窗口,包括:
    确定所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号是否连续;
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续时,确定缓冲区是否存储有所述第二RLC层发送的第二数据包的所述PDCP序列号;所述第二数据包的所述PDCP序列号位于所述上一次向所述高层递交的数据包的PDCP序列号之后;
    所述在根据所述数据包信息确定出滑动所述PDCP接收窗口时,所述接收设备滑动所述PDCP接收窗口,包括:
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续,且所述缓冲区存储有所述第二RLC层发送的第二数据包的所述PDCP序列号时,所述接收设备滑动所述PDCP接收窗口;
    其中,若所述第一数据包的所述PDCP序列号位于所述第二数据包的所述PDCP序列号之前,则滑动后的所述PDCP接收窗口的下边界的值是所述第一数据包的所述PDCP序列号或位于所述第一数据包的所述PDCP序列号之后的所述PDCP序列号;若所述第一数据包的所述PDCP序列号位于所述第二数据包的所述PDCP序列号之后,则滑动后的所述PDCP接收窗口的下边界的值是所述第二数据包的所述PDCP序列号或位于所述第二数据包的所述 PDCP序列号之后的所述PDCP序列号。
  4. 根据权利要求1所述的方法,其特征在于,所述数据包信息包括:所述第一数据包的PDCP序列号、RLC序列号和发送模式;
    所述RLC序列号用于在所述RLC层对接收到的数据包进行排序;
    所述PDCP序列号用于在所述PDCP层对接收到的数据包进行排序,并按照排序顺序向高层递交所述数据包;
    所述发送模式由所述RLC层生成并发送至所述PDCP层,所述发送模式是按序发送模式或乱序发送模式;所述按序发送模式用于指示所述RLC层在发送所述第一数据包时不存在未收全数据包;所述乱序发送模式用于指示所述RLC层在发送所述第一数据包时存在所述未收全数据包;所述未收全数据包是指RLC序列号在所述第一数据包的RLC序列号之前、且未收到全部的分片数据包的数据包。
  5. 根据权利要求4所述的方法,其特征在于,所述接收设备接收第一RLC层和第二RLC层发送的数据包,
    所述接收设备通过所述RLC层向PDCP层发送所述第一数据包,包括:
    当所述第一RLC层的RLC接收窗口的下边界的值是所述第一数据包的所述RLC序列号,且所述第一RLC层接收到完整的第一数据包时,所述第一RLC层将所述按序发送模式和所述第一数据包发送至所述PDCP层,所述RLC接收窗口用于缓存所述RLC层接收到的、且未向上层递交的数据包;
    所述第一RLC层滑动所述RLC接收窗口,滑动后的所述RLC窗口的下边界的值位于所述第一数据包的所述RLC序列号之后;
    所述接收设备根据所述第一数据包的数据包信息确定是否滑动PDCP接收窗口,包括:
    确定所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号是否连续;
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续时,确定所述第一数据包的发送模式是否为所述按序发送模式,且缓冲区中是否存储有所述第二RLC层发送的第三数据包的所述PDCP序列号;所述第三数据包的发送模式为所述按序发送模式;
    所述在根据所述数据包信息确定出滑动所述PDCP接收窗口时,滑动所述PDCP接收窗口,包括:
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续,所述第一数据包的发送模式为所述按序发送模式,且所述缓冲区中存储有所述第二RLC层发送的第三数据包的所述PDCP序列号时,所述接收设备滑动所述PDCP接收窗口;
    其中,若所述第一数据包的所述PDCP序列号位于所述第三数据包的所述PDCP序列号之前,则滑动后的所述PDCP接收窗口的下边界的值是为所述第一数据包的所述PDCP序列号或位于所述第一数据包的所述PDCP序列号之后的所述PDCP序列号;若所述第一数据包的所述PDCP序列号位于所述第三数据包的所述PDCP序列号之后,则滑动后的所述PDCP接收窗口的下边界的值是所述第三数据包的所述PDCP序列号或位于所述第三数据包的所述 PDCP序列号之后的所述PDCP序列号。
  6. 根据权利要求3或5所述的方法,其特征在于,所述第一RLC层位于所述接收设备中;或者,所述第一RLC层位于与所述接收设备相独立的其它接收设备中。
  7. 根据权利要求4所述的方法,其特征在于,所述RLC层位于所述接收设备中;
    所述接收设备通过所述RLC层向PDCP层发送所述第一数据包,包括:
    当所述RLC层中的RLC接收窗口的下边界的值是所述第一数据包的所述RLC序列号,且所述RLC层接收到完整的第一数据包时,所述RLC层将所述按序发送模式和所述第一数据包发送至所述PDCP层,所述RLC接收窗口用于缓存所述RLC层接收到的、且未向上层递交的数据包;
    所述RLC层滑动所述RLC接收窗口,滑动后的所述RLC窗口的下边界的值位于所述第一数据包的所述RLC序列号之后;
    所述接收设备根据所述第一数据包的数据包信息确定是否滑动PDCP接收窗口,包括:
    确定所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号是否连续;
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续时,确定所述第一数据包的发送模式是否为所述按序发送模式;
    所述在根据所述数据包信息确定出滑动所述PDCP接收窗口时,滑动所述PDCP接收窗口,包括:
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续,且所述第一数据包的发送模式为所述按序发送模式时,所述接收设备滑动所述PDCP接收窗口,滑动后的所述PDCP接收窗口的下边界的值大于或等于所述第一数据包的所述PDCP序列号。
  8. 根据权利要求5或7所述的方法,其特征在于,所述接收设备通过所述RLC层向PDCP层发送所述第一数据包,还包括:
    当所述RLC层的RLC接收窗口的下边界的值是第四数据包的所述RLC序列号,且所述RLC层接收到完整的第一数据包时,将所述乱序发送模式和所述第一数据包发送至所述PDCP层;所述RLC层暂停滑动所述RLC接收窗口,直至所述RLC层接收到完整的所述第四数据包时滑动所述RLC窗口,所述第四数据包的所述RLC序列号在所述第一数据包的所述RLC序列号之前。
  9. 根据权利要求1所述的方法,其特征在于,所述数据包信息包括:丢弃包的PDCP序列号,所述丢弃包是指所述发送设备丢弃的数据包;
    所述PDCP序列号用于在所述PDCP层对接收到的数据包进行排序,并按照排序顺序向高层递交所述数据包。
  10. 根据权利要求9所述的方法,其特征在于,
    所述接收设备根据所述第一数据包的数据包信息确定是否滑动PDCP接收窗口,包括:
    在所述接收设备接收到所述第一数据包时,在缓存区中对所述第一数据包中的所述PDCP序列号指示的缓存位置进行标记,标记后的缓存位置用于指示缓存的数据包被所述发送设备主动丢弃;
    在所述PDCP接收窗口的下边界的值指示的缓存位置未存储数据包时,确定所述PDCP接收窗口的下边界的值是否指示所述标记后的缓存位置;
    所述在根据所述数据包信息确定出滑动所述PDCP接收窗口时,滑动所述PDCP接收窗口,包括:
    当所述PDCP接收窗口的下边界的值指示所述标记后的缓存位置时,所述接收设备滑动所述PDCP接收窗口,滑动后的所述PDCP接收窗口的下边界的值位于所述PDCP接收窗口的下边界的值之后。
  11. 根据权利要求10所述的方法,其特征在于,所述第一数据包为控制数据包,所述丢弃包的数量为至少一个,所述控制数据包包括公共数据单元和序列号指示单元,所述公共数据单元用于指示所述丢弃包的PDCP序列号的公共部分;所述序列号指示单元用于指示所述丢弃包的PDCP序列号的差异部分。
  12. 一种接收窗口滑动方法,其特征在于,所述方法包括:
    发送设备在分组数据汇聚协议PDCP层生成第一数据包;
    所述发送设备通过无线链路控制RLC层接收所述PDCP层生成的所述第一数据包;
    所述发送设备通过所述RLC层将所述第一数据包发送至接收设备;所述第一数据包包括丢弃包的PDCP序列号,所述第一数据包用于供所述接收设备根据所述丢弃包的所述PDCP序列号滑动PDCP接收窗口,所述PDCP接收窗口用于缓存所述PDCP层接收到的、且未向高层递交的数据包,所述丢弃包是指所述发送设备在所述PDCP层丢弃的数据包。
  13. 根据权利要求12所述的方法,其特征在于,所述第一数据包为控制数据包,所述丢弃包的数量为至少一个,所述控制数据包包括公共数据单元和序列号指示单元,所述公共数据单元用于指示所述丢弃包的PDCP序列号的公共部分;所述序列号指示单元用于指示所述丢弃包的PDCP序列号的差异部分。
  14. 一种接收窗口滑动装置,其特征在于,所述装置包括:
    接收单元,用于通过无线链路控制RLC层获取发送设备发送的第一数据包;
    发送单元,用于通过所述RLC层向分组数据汇聚协议PDCP层发送所述第一数据包;
    所述接收单元,用于通过所述PDCP层接收所述第一数据包;
    确定单元,用于根据所述第一数据包的数据包信息确定是否滑动PDCP接收窗口,所述PDCP接收窗口用于缓存所述PDCP层接收到的、且未向上层递交的数据包;
    滑动单元,用于在所述确定单元确定出滑动所述PDCP接收窗口时,滑动所述PDCP接收窗口。
  15. 根据权利要求14所述的装置,其特征在于,所述数据包信息包括:所述第一数据包的RLC序列号和PDCP序列号;
    所述RLC序列号用于在所述RLC层对接收到的数据包进行排序;
    所述PDCP序列号用于在所述PDCP层对接收到的数据包进行排序,并按照排序顺序向高层递交所述数据包。
  16. 根据权利要求15所述的装置,其特征在于,接收设备接收第一RLC层和第二RLC层发送的数据包,
    所述发送单元,还用于:
    通过所述第一RLC层按照所述RLC序列号由小到大的顺序发送所述第一数据包;
    所述确定单元,还用于:
    确定所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号是否连续;
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续时,确定缓冲区中是否存储有所述第二RLC层发送的第二数据包的所述PDCP序列号;所述第二数据包的所述PDCP序列号位于所述上一次向所述高层递交的数据包的PDCP序列号之后;
    所述滑动单元,还用于:
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续,且所述缓冲区存储有所述第二RLC层发送的第二数据包的所述PDCP序列号时,所述接收设备滑动所述PDCP接收窗口;
    其中,若所述第一数据包的所述PDCP序列号位于所述第二数据包的所述PDCP序列号之前,则滑动后的所述PDCP接收窗口的下边界的值是所述第一数据包的所述PDCP序列号或位于所述第一数据包的所述PDCP序列号之后的所述PDCP序列号;若所述第一数据包的所述PDCP序列号位于所述第二数据包的所述PDCP序列号之后,则滑动后的所述PDCP接收窗口的下边界的值是所述第二数据包的所述PDCP序列号或位于所述第二数据包的所述PDCP序列号之后的所述PDCP序列号。
  17. 根据权利要求14所述的装置,其特征在于,所述数据包信息包括所述第一数据包的所述PDCP序列号、所述RLC序列号和所述发送模式,
    所述RLC序列号用于在所述RLC层对接收到的数据包进行排序;
    所述PDCP序列号用于在所述PDCP层对接收到的数据包进行排序,并按照排序顺序向高层递交所述数据包;
    所述发送模式由所述RLC层生成并发送至所述PDCP层,所述发送模式是按序发送模式或乱序发送模式;所述按序发送模式用于指示所述RLC层在发送所述第一数据包时不存在未收全数据包;所述乱序发送模式用于指示所述RLC层在发送所述第一数据包时存在所述未收全数据包;所述未收全数据包是指RLC序列号在所述第一数据包的RLC序列号之前、且未收到全部的分片数据包的数据包。
  18. 根据权利要求17所述的装置,其特征在于,所述接收设备接收第一RLC层和第二RLC层发送的数据包,
    所述发送单元,还用于:
    当所述第一RLC层的RLC接收窗口的下边界的值是所述第一数据包的所述RLC序列号,且所述第一RLC层接收到完整的第一数据包时,通过所述第一RLC层将所述按序发送模式和所述第一数据包发送至所述PDCP层,所述RLC接收窗口用于缓存所述RLC层接收到的、且未向上层递交的数据包;
    所述第一RLC层滑动所述RLC接收窗口,滑动后的所述RLC窗口的下边界的值位于所述第一数据包的所述RLC序列号之后;
    所述确定单元,还用于:
    确定所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号是否连续;
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续时,确定所述第一数据包的发送模式是否为所述按序发送模式,且缓冲区中是否存储有所述第二RLC层发送的第三数据包的所述PDCP序列号时,所述接收设备滑动所述PDCP接收窗口;所述第三数据包的发送模式为所述按序发送模式;
    所述滑动单元,还用于:
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续,所述第一数据包的发送模式为所述按序发送模式,且所述缓冲区中存储有所述第二RLC层发送的第三数据包的所述PDCP序列号时,所述接收设备滑动所述PDCP接收窗口;
    其中,若所述第一数据包的所述PDCP序列号位于所述第三数据包的所述PDCP序列号之前,则滑动后的所述PDCP接收窗口的下边界的值是为所述第一数据包的所述PDCP序列号或位于所述第一数据包的所述PDCP序列号之后的所述PDCP序列号;若所述第一数据包的所述PDCP序列号位于所述第三数据包的所述PDCP序列号之后,则滑动后的所述PDCP接收窗口的下边界的值是所述第三数据包的所述PDCP序列号或位于所述第三数据包的所述PDCP序列号之后的所述PDCP序列号。
  19. 根据权利要求16或18所述的装置,其特征在于,所述第一RLC层位于所述接收设备中;或者,所述第一RLC层位于与所述接收设备相独立的其它接收设备中。
  20. 根据权利要求17所述的装置,其特征在于,
    所述发送单元,还用于:
    当所述RLC层中的RLC接收窗口的下边界的值是所述第一数据包的所述RLC序列号,且所述RLC层接收到完整的第一数据包时,通过所述RLC层将所述按序发送模式和所述第一数据包发送至所述PDCP层,所述RLC接收窗口用于缓存所述PDCP层接收到的、且未向上层递交的数据包;
    所述RLC层滑动所述RLC接收窗口,滑动后的所述RLC窗口的下边界的值位于所述第一数据包的所述RLC序列号之后;
    所述确定单元,还用于:
    确定所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号是否连续;
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续时,确定所述第一数据包的发送模式是否为所述按序发送模式;
    所述滑动单元,还用于:
    当所述第一数据包的所述PDCP序列号与上一次向所述高层递交的数据包的PDCP序列号不连续,且所述第一数据包的发送模式为所述按序发送模式时,滑动所述PDCP接收窗口,滑动后的所述PDCP接收窗口的下边界的值大于或等于所述第一数据包的所述PDCP序列号。
  21. 根据权利要求18或20所述的装置,其特征在于,所述发送单元,还用于:
    当所述RLC层的RLC接收窗口的下边界的值是第四数据包的所述RLC序列号,且所述RLC层接收到完整的第一数据包时,通过所述RLC层将所述乱序发送模式和所述第一数据包发送至所述PDCP层;所述RLC层暂停滑动所述RLC接收窗口,直至所述RLC层接收到完整的所述第四数据包时滑动所述RLC窗口,所述第四数据包的所述RLC序列号在所述第一数据包的所述RLC序列号之前。
  22. 根据权利要求14所述的装置,其特征在于,所述数据包信息包括所述丢弃包的所述PDCP序列号,所述丢弃包是指所述发送设备丢弃的数据包;
    所述PDCP序列号用于在所述PDCP层对接收到的数据包进行排序,并按照排序顺序向高层递交所述数据包。
  23. 根据权利要求22所述的装置,其特征在于,
    所述确定单元,还用于:
    在接收到所述第一数据包时,在缓存区中对所述第一数据包中的所述PDCP序列号指示的缓存位置进行标记,标记后的缓存位置用于指示缓存的数据包被所述发送设备主动丢弃;
    在所述PDCP接收窗口的下边界的值指示的缓存位置未存储数据包时,确定所述PDCP接收窗口的下边界的值是否指示所述标记后的缓存位置;
    所述滑动单元,还用于:
    当所述PDCP接收窗口的下边界的值指示所述标记后的缓存位置时,滑动所述PDCP接收窗口,滑动后的所述PDCP接收窗口的下边界的值位于所述PDCP接收窗口的下边界的值之后。
  24. 根据权利要求23所述的装置,其特征在于,所述第一数据包为控制数据包,所述丢弃包的数量为至少一个,所述控制数据包包括公共数据单元和序列号指示单元,所述公共数据单元用于指示所述丢弃包的PDCP序列号的公共部分;所述序列号指示单元用于指示所述丢弃包的PDCP序列号的差异部分。
  25. 一种接收窗口滑动装置,其特征在于,所述装置包括:
    生成单元,用于在分组数据汇聚协议PDCP层生成第一数据包;
    接收单元,用于通过无线链路控制RLC层接收所述PDCP层生成的所述第一数据包;
    发送单元,用于通过所述RLC层将所述第一数据包发送至接收设备;所述第一数据包包括丢弃包的PDCP序列号,所述第一数据包用于供所述接收设备根据所述丢弃包的所述PDCP序列号滑动PDCP接收窗口,所述PDCP接收窗口用于缓存所述PDCP层接收到的、且未向高层递交的数据包,所述丢弃包是指所述发送设备在所述PDCP层丢弃的数据包。
  26. 根据权利要求25所述的装置,其特征在于,所述第一数据包为控制数据包,所述丢弃包的数量为至少一个,所述控制数据包包括公共数据单元和序列号指示单元,所述公共数据单元用于指示所述丢弃包的PDCP序列号的公共部分;所述序列号指示单元用于指示所述丢弃包的PDCP序列号的差异部分。
  27. 一种通信设备,其特征在于,所述通信设备包括:处理器、与所述处理器相连的存储器;
    所述存储器被配置为由所述处理器控制,所述处理器用于实现权利要求1至11任一所述的接收窗口滑动方法,或,用于实现权利要求12或13所述的接收窗口滑动方法。
PCT/CN2018/111279 2017-10-26 2018-10-22 接收窗口滑动方法及装置 WO2019080814A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201711018421.7 2017-10-26
CN201711018421.7A CN109714134B (zh) 2017-10-26 2017-10-26 接收窗口滑动方法及装置

Publications (1)

Publication Number Publication Date
WO2019080814A1 true WO2019080814A1 (zh) 2019-05-02

Family

ID=66246791

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/111279 WO2019080814A1 (zh) 2017-10-26 2018-10-22 接收窗口滑动方法及装置

Country Status (2)

Country Link
CN (1) CN109714134B (zh)
WO (1) WO2019080814A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230006940A1 (en) * 2021-07-02 2023-01-05 Qualcomm Incorporated Techniques for reducing a feedback time for communications over multiple wireless connections
US11856451B2 (en) 2020-03-02 2023-12-26 Qualcomm Incorporated Avoiding packet data convergence protocol holes for bearer in dual connectivity mode across multiple radio access technologies

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112399468B (zh) * 2019-08-14 2022-02-15 大唐移动通信设备有限公司 一种数据传输方法及接收设备
CN114765690B (zh) * 2020-12-31 2023-09-12 华为技术有限公司 数据包传输方法、通信装置及存储介质
CN115277608B (zh) * 2022-07-22 2023-10-24 哲库科技(北京)有限公司 无线通信的方法及设备
WO2024020789A1 (en) * 2022-07-26 2024-02-01 Apple Inc. Proactive packet dropping for extended reality traffic flows

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1411227A (zh) * 2001-09-25 2003-04-16 华为技术有限公司 推动无线链路控制层数据发送窗口快速滑动的方法及装置
CN101197646A (zh) * 2007-12-28 2008-06-11 北京天碁科技有限公司 基于hsupa的数据传输方法
CN104821859A (zh) * 2014-01-30 2015-08-05 上海贝尔股份有限公司 用于在分组数据汇聚协议层处理数据的方法和设备
EP3174362A1 (en) * 2014-07-25 2017-05-31 Kyocera Corporation User terminal and mobile communication system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009045871A2 (en) * 2007-09-28 2009-04-09 Interdigital Patent Holdings, Inc. Operation of control protocol data units in packet data convergence protocol
CN102905310A (zh) * 2011-07-25 2013-01-30 中兴通讯股份有限公司 一种数据处理方法、装置及分组数据汇聚协议层模块
CN104519477B (zh) * 2013-09-27 2019-01-29 上海诺基亚贝尔股份有限公司 识别Xn接口造成拥塞以及对接收窗口进行控制的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1411227A (zh) * 2001-09-25 2003-04-16 华为技术有限公司 推动无线链路控制层数据发送窗口快速滑动的方法及装置
CN101197646A (zh) * 2007-12-28 2008-06-11 北京天碁科技有限公司 基于hsupa的数据传输方法
CN104821859A (zh) * 2014-01-30 2015-08-05 上海贝尔股份有限公司 用于在分组数据汇聚协议层处理数据的方法和设备
EP3174362A1 (en) * 2014-07-25 2017-05-31 Kyocera Corporation User terminal and mobile communication system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11856451B2 (en) 2020-03-02 2023-12-26 Qualcomm Incorporated Avoiding packet data convergence protocol holes for bearer in dual connectivity mode across multiple radio access technologies
US20230006940A1 (en) * 2021-07-02 2023-01-05 Qualcomm Incorporated Techniques for reducing a feedback time for communications over multiple wireless connections
US11811671B2 (en) * 2021-07-02 2023-11-07 Qualcomm Incorporated Techniques for reducing a feedback time for communications over multiple wireless connections

Also Published As

Publication number Publication date
CN109714134A (zh) 2019-05-03
CN109714134B (zh) 2020-11-06

Similar Documents

Publication Publication Date Title
WO2019080814A1 (zh) 接收窗口滑动方法及装置
WO2015139557A1 (zh) 分组数据汇聚协议pdcp实体及其执行的方法
US10735334B2 (en) Data sending method, data receiving method, and related device
WO2018130034A1 (zh) 数据处理方法、装置和系统
US20200267793A1 (en) Method and system for handling packet duplication and resumption of rbs in wireless communication system
WO2014110810A1 (zh) 传输数据的方法、基站和用户设备
CN108337633B (zh) 数据分流配置方法、基站系统和用户终端
TW200926851A (en) Method of transmitting uplink data and buffer status reports in a wireless communications system, wireless device for implementing such method
TW202002705A (zh) 支援資料預處理之方法及其行動通訊裝置
WO2017185941A1 (zh) 一种数据传输方法及相关设备
CN105264830B (zh) 数据包的处理方法、终端、基站及系统
KR20150123926A (ko) 무선 통신에서 패킷 프로세싱을 병렬화하는 방법 및 시스템
JP2014123992A (ja) データ再伝送要請のための制御メッセージを処理する方法及び装置
US9967695B2 (en) Method and apparatus for transmitting and receiving data by machine type communication terminal in wireless communication system
US9866495B2 (en) Method and apparatus for buffering data
WO2022075912A1 (en) Group pdcp discard timer for low-latency services
CN113923712A (zh) 数据处理的方法及装置
CN110995750B (zh) 终端设备
WO2022188686A1 (zh) 一种通信方法及设备
KR102307472B1 (ko) 이중 연결 네트워크에서의 연계 기지국의 데이터 전송 속도를 추정하는 방법 및 그 방법이 적용된 기지국
CN106993311B (zh) 基站数据优化传输方法与系统
CN108200605B (zh) 一种基站的数据传输方法和装置
JP4900477B2 (ja) 移動体通信システム、ネットワーク装置、およびパケット順序制御方法
WO2024032352A1 (zh) 数据处理方法及装置
WO2023217009A1 (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: 18870004

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: 18870004

Country of ref document: EP

Kind code of ref document: A1