WO2019095228A1 - Method, apparatus and computer program - Google Patents

Method, apparatus and computer program Download PDF

Info

Publication number
WO2019095228A1
WO2019095228A1 PCT/CN2017/111420 CN2017111420W WO2019095228A1 WO 2019095228 A1 WO2019095228 A1 WO 2019095228A1 CN 2017111420 W CN2017111420 W CN 2017111420W WO 2019095228 A1 WO2019095228 A1 WO 2019095228A1
Authority
WO
WIPO (PCT)
Prior art keywords
acknowledgments
status report
data packets
transmission
timer
Prior art date
Application number
PCT/CN2017/111420
Other languages
French (fr)
Inventor
Samuli Turtinen
Chunli Wu
Raghuram Reddy KRISHNAMURTHY
Original Assignee
Nokia Shanghai Bell Co., Ltd.
Nokia Solutions And Networks Oy
Nokia Technologies Oy
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 Nokia Shanghai Bell Co., Ltd., Nokia Solutions And Networks Oy, Nokia Technologies Oy filed Critical Nokia Shanghai Bell Co., Ltd.
Priority to CN201780096924.8A priority Critical patent/CN111357223B/en
Priority to PCT/CN2017/111420 priority patent/WO2019095228A1/en
Publication of WO2019095228A1 publication Critical patent/WO2019095228A1/en

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
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1848Time-out mechanisms
    • H04L1/1851Time-out mechanisms using multiple timers
    • 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

Definitions

  • the present application relates to a method, apparatus, system and computer program and in particular but not exclusively to radio link control status reporting in New Radio (NR) .
  • NR New Radio
  • a communication system can be seen as a facility that enables communication sessions between two or more entities such as user terminals, base stations and/or other nodes by providing carriers between the various entities involved in the communications path.
  • a communication system can be provided for example by means of a communication network and one or more compatible communication devices.
  • the communication sessions may comprise, for example, communication of data for carrying communications such as voice, video, electronic mail (email) , text message, multimedia and/or content data and so on.
  • Non-limiting examples of services provided comprise two-way or multi-way calls, data communication or multimedia services and access to a data network system, such as the Internet.
  • wireless communication system at least a part of a communication session between at least two stations occurs over a wireless link.
  • wireless systems comprise public land mobile networks (PLMN) , satellite based communication systems and different wireless local networks, for example wireless local area networks (WLAN) .
  • PLMN public land mobile networks
  • WLAN wireless local area networks
  • the wireless systems can typically be divided into cells, and are therefore often referred to as cellular systems.
  • a user can access the communication system by means of an appropriate communication device or terminal.
  • a communication device of a user may be referred to as user equipment (UE) or user device.
  • UE user equipment
  • a communication device is provided with an appropriate signal receiving and transmitting apparatus for enabling communications, for example enabling access to a communication network or communications directly with other users.
  • the communication device may access a carrier provided by a station, for example a base station of a cell, and transmit and/or receive communications on the carrier.
  • the communication system and associated devices typically operate in accordance with a given standard or specification which sets out what the various entities associated with the system are permitted to do and how that should be achieved. Communication protocols and/or parameters which shall be used for the connection are also typically defined.
  • UTRAN 3G radio
  • Other examples of communication systems are the long-term evolution (LTE) of the Universal Mobile Telecommunications System (UMTS) radio-access technology and so-called 5G or New Radio (NR) networks. Standardization of 5G or New Radio networks is currently under discussion. LTE is being standardized by the 3rd Generation Partnership Project (3GPP) .
  • 3GPP 3rd Generation Partnership Project
  • a method comprising: receiving a plurality of data packets; causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently: starting a first timer; prior to expiry of the first timer: prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; and permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
  • the method comprises prior to expiry of the first timer: prohibiting the transmission of negative acknowledgments for data packets having a higher sequence number than any of the plurality of data packets received prior to the starting of the first timer.
  • the method comprises prior to expiry of the first timer: permitting the transmission of negative acknowledgments having a lower sequence number than any of the plurality of data packets received prior to the starting of the first timer.
  • the method comprises prohibiting the transmission of acknowledgments for data packets received after the starting of the first timer.
  • the method comprises determining a highest sequence number of the one or more data packets for which acknowledgments and negative acknowledgments are included in the first status report.
  • the prohibiting the further transmission comprises: prohibiting the transmission of an acknowledgment or negative acknowledgment for any data packet having a sequence number less than or equal to the highest sequence number.
  • the permitting the transmission comprises permitting the transmission of at least one of acknowledgments or negative acknowledgments for any data packet having a sequence number greater than the highest sequence number.
  • the transmission of at least one of acknowledgments or negative acknowledgements for one or more data packets prior to expiry of the first timer comprises transmitting at least one of acknowledgments or negative acknowledgments for one or more data packets having a sequence number less than a first limit.
  • the method comprises increasing the first limit after expiry of a second timer.
  • the transmission of negative acknowledgements comprises: transmitting in a status report a negative acknowledgment comprising a sequence number of a data packet which has not been received.
  • the transmission of negative acknowledgements comprises: transmitting in a status report, a negative acknowledgment comprising an indication of one or more segments of a partially received data packet which have not been received.
  • the indication of one or more segments comprises an indication of a start point and an end point of a continuous set of segments in the data packet which have not been received.
  • a computer program product for a computer comprising software code portions for performing the steps of the first aspect when said product is run on the computer.
  • an apparatus comprising: at least one processor and at least one memory including a computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to: receive a plurality of data packets; cause the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently: start a first timer; prior to expiry of the first timer: prohibit further transmission of acknowledgments and negative acknowledgments included in the first status report; and permit the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
  • the apparatus is configured to prior to expiry of the first timer: prohibit the transmission of negative acknowledgments for data packets having a higher sequence number than any of the plurality of data packets received prior to the starting of the first timer.
  • the apparatus is configured to prior to expiry of the first timer: permit the transmission of negative acknowledgments having a lower sequence number than any of the plurality of data packets received prior to the starting of the first timer.
  • the apparatus is configured to prohibit the transmission of acknowledgments for data packets received after the starting of the first timer.
  • the apparatus is configured to determine a highest sequence number of the one or more data packets for which acknowledgments and negative acknowledgments are included in the first status report.
  • the prohibiting the further transmission comprises: prohibiting the transmission of an acknowledgment or negative acknowledgment for any data packet having a sequence number less than or equal to the highest sequence number.
  • the permitting the transmission comprises: permitting the transmission of at least one of acknowledgments or negative acknowledgments for any data packet having a sequence number greater than the highest sequence number.
  • the transmission of at least one of acknowledgments or negative acknowledgements for one or more data packets prior to expiry of the first timer comprises transmitting at least one of acknowledgments or negative acknowledgments for one or more data packets having a sequence number less than a first limit.
  • the apparatus is configured to increase the first limit after expiry of a second timer.
  • the transmission of negative acknowledgements comprises: transmitting in a status report a negative acknowledgment comprising a sequence number of a data packet which has not been received.
  • the transmission of negative acknowledgements comprises: transmitting in a status report, a negative acknowledgment comprising an indication of one or more segments of a partially received data packet which have not been received.
  • the indication of one or more segments comprises an indication of a start point and an end point of a continuous set of segments in the data packet which have not been received.
  • a computer program embodied on a non-transitory computer-readable storage medium, the computer program comprising program code for controlling a process to execute a process, the process comprising: receiving a plurality of data packets; causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently: starting a first timer; prior to expiry of the first timer: prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; and permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
  • the process comprises prior to expiry of the first timer: prohibiting the transmission of negative acknowledgments for data packets having a higher sequence number than any of the plurality of data packets received prior to the starting of the first timer.
  • the process comprises prior to expiry of the first timer: permitting the transmission of negative acknowledgments having a lower sequence number than any of the plurality of data packets received prior to the starting of the first timer.
  • the process comprises prohibiting the transmission of acknowledgments for data packets received after the starting of the first timer.
  • the process comprises determining a highest sequence number of the one or more data packets for which acknowledgments and negative acknowledgments are included in the first status report.
  • the prohibiting the further transmission comprises: prohibiting the transmission of an acknowledgment or negative acknowledgment for any data packet having a sequence number less than or equal to the highest sequence number.
  • the permitting the transmission comprises permitting the transmission of at least one of acknowledgments or negative acknowledgments for any data packet having a sequence number greater than the highest sequence number.
  • the transmission of at least one of acknowledgments or negative acknowledgements for one or more data packets prior to expiry of the first timer comprises transmitting at least one of acknowledgments or negative acknowledgments for one or more data packets having a sequence number less than a first limit.
  • the process comprises increasing the first limit after expiry of a second timer.
  • the transmission of negative acknowledgements comprises: transmitting in a status report a negative acknowledgment comprising a sequence number of a data packet which has not been received.
  • the transmission of negative acknowledgements comprises: transmitting in a status report, a negative acknowledgment comprising an indication of one or more segments of a partially received data packet which have not been received.
  • the indication of one or more segments comprises an indication of a start point and an end point of a continuous set of segments in the data packet which have not been received.
  • an apparatus comprising: means for receiving a plurality of data packets; means for causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; means for subsequently: starting a first timer; prior to expiry of the first timer: prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; and permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
  • Figure 1 shows a schematic diagram of an example communication system comprising a base station and a plurality of communication devices
  • Figure 2 shows a schematic diagram of an example mobile communication device
  • Figure 3 shows a schematic diagram of an example control apparatus
  • Figure 4 shows a schematic diagram of the LTE protocol stack
  • Figure 5a shows an example of a PDCP PDU
  • Figure 5b shows an example of an RLC PDU
  • Figure 5c shows an example of a MAC PDU
  • Figure 6a shows an example of status report
  • Figure 6b shows an example of a status report
  • Figure 7 shows an example of a method according to embodiments.
  • Figure 8 shows an example of a status report.
  • a wireless communication system 100 such as that shown in Figure 1, mobile communication devices or user equipment (UE) 102, 104, 105 are provided wireless access via at least one base station or similar wireless transmitting and/or receiving node or point.
  • Base stations are typically controlled by at least one appropriate controller apparatus, so as to enable operation thereof and management of mobile communication devices in communication with the base stations.
  • the controller apparatus may be located in a radio access network (e.g. wireless communication system 100) or in a core network (CN) (not shown) and may be implemented as one central apparatus or its functionality may be distributed over several apparatus.
  • the controller apparatus may be part of the base station and/or provided by a separate entity such as a Radio Network Controller.
  • control apparatus 108 and 109 are shown to control the respective macro level base stations 106 and 107.
  • the control apparatus of a base station can be interconnected with other control entities.
  • the control apparatus is typically provided with memory capacity and at least one data processor.
  • the control apparatus and functions may be distributed between a plurality of control units. In some systems, the control apparatus may additionally or alternatively be provided in a radio network controller.
  • base stations 106 and 107 are shown as connected to a wider communications network 113 via gateway 112.
  • a further gateway function may be provided to connect to another network.
  • the smaller base stations 116, 118 and 120 may also be connected to the network 113, for example by a separate gateway function and/or via the controllers of the macro level stations.
  • the base stations 116, 118 and 120 may be pico or femto level base stations or the like. In the example, stations 116 and 118 are connected via a gateway 111 whilst station 120 connects via the controller apparatus 108. In some embodiments, the smaller stations may not be provided. Smaller base stations 116, 118 and 120 may be part of a second network, for example WLAN and may be WLAN APs.
  • LTE Long Term Evolution
  • UMTS Universal Mobile Telecommunications System
  • LTE-A LTE Advanced
  • E-UTRAN Evolved Universal Terrestrial Radio Access Network
  • Base stations of such systems are known as evolved or enhanced Node Bs (eNBs) and provide E-UTRAN features such as user plane Packet Data Convergence/Radio Link Control/Medium Access Control/Physical layer protocol (PDCP/RLC/MAC/PHY) and control plane Radio Resource Control (RRC) protocol terminations towards the communication devices.
  • E-UTRAN features such as user plane Packet Data Convergence/Radio Link Control/Medium Access Control/Physical layer protocol (PDCP/RLC/MAC/PHY) and control plane Radio Resource Control (RRC) protocol terminations towards the communication devices.
  • RRC Radio Resource Control
  • Other examples of radio access system comprise those provided by base stations of systems that are based on technologies such as wireless local area network (WLAN) and/or WiMax (Worldwide Interoperability for Microwave Access) .
  • WLAN wireless local area network
  • WiMax Worldwide Interoperability for Microwave Access
  • Network architecture in NR may be similar to that of LTE-advanced.
  • Base stations of NR systems may be known as next generation Node Bs (gNBs) .
  • Changes to the network architecture may depend on the need to support various radio technologies and finer QoS support, and some on-demand requirements for e.g. QoS levels to support QoE of user point of view.
  • network aware services and applications, and service and application aware networks may bring changes to the architecture. Those are related to Information Centric Network (ICN) and User-Centric Content Delivery Network (UC-CDN) approaches.
  • ICN Information Centric Network
  • UC-CDN User-Centric Content Delivery Network
  • NR may use multiple input -multiple output (MIMO) antennas, many more base stations or nodes than the LTE (aso-called small cell concept) , including macro sites operating in co-operation with smaller stations and perhaps also employing a variety of radio technologies for better coverage and enhanced data rates.
  • MIMO multiple input -multiple output
  • Future networks may utilise network functions virtualization (NFV) which is a network architecture concept that proposes virtualizing network node functions into “building blocks” or entities that may be operationally connected or linked together to provide services.
  • a virtualized network function (VNF) may comprise one or more virtual machines running computer program codes using standard or general type servers instead of customized hardware. Cloud computing or data storage may also be utilized.
  • radio communications this may mean node operations to be carried out, at least partly, in a server, host or node operationally coupled to a remote radio head. It is also possible that node operations will be distributed among a plurality of servers, nodes or hosts. It should also be understood that the distribution of labour between core network operations and base station operations may differ from that of the LTE or even be non-existent.
  • a possible mobile communication device will now be described in more detail with reference to Figure 2 showing a schematic, partially sectioned view of a communication device 200.
  • a communication device is often referred to as user equipment (UE) or terminal.
  • An appropriate mobile communication device may be provided by any device capable of sending and receiving radio signals.
  • Non-limiting examples comprise a mobile station (MS) or mobile device such as a mobile phone or what is known as a ’smart phone’ , a computer provided with a wireless interface card or other wireless interface facility (e.g., USB dongle) , personal data assistant (PDA) or a tablet provided with wireless communication capabilities, or any combinations of these or the like.
  • MS mobile station
  • PDA personal data assistant
  • a mobile communication device may provide, for example, communication of data for carrying communications such as voice, electronic mail (email) , text message, multimedia and so on. Users may thus be offered and provided numerous services via their communication devices. Non-limiting examples of these services comprise two-way or multi-way calls, data communication or multimedia services or simply an access to a data communications network system, such as the Internet. Users may also be provided broadcast or multicast data. Non-limiting examples of the content comprise downloads, television and radio programs, videos, advertisements, various alerts and other information.
  • the communication devices 102, 104, 105 may access the communication system based on various access techniques, such as code division multiple access (CDMA) , or wideband CDMA (WCDMA) .
  • CDMA code division multiple access
  • WCDMA wideband CDMA
  • Other non-limiting examples comprise time division multiple access (TDMA) , frequency division multiple access (FDMA) and various schemes thereof such as the interleaved frequency division multiple access (IFDMA) , single carrier frequency division multiple access (SC-FDMA) and orthogonal frequency division multiple access (OFDMA) , space division multiple access (SDMA) and so on.
  • TDMA time division multiple access
  • FDMA frequency division multiple access
  • IFDMA interleaved frequency division multiple access
  • SC-FDMA single carrier frequency division multiple access
  • OFDMA orthogonal frequency division multiple access
  • SDMA space division multiple access
  • the mobile device 200 may receive signals over an air or radio interface 207 via appropriate apparatus for receiving and may transmit signals via appropriate apparatus for transmitting radio signals.
  • transceiver apparatus is designated schematically by block 206.
  • the transceiver apparatus 206 may be provided for example by means of a radio part and associated antenna arrangement.
  • the antenna arrangement may be arranged internally or externally to the mobile device.
  • a mobile device is typically provided with at least one data processing entity 201, at least one memory 202 and other possible components 203 for use in software and hardware aided execution of tasks it is designed to perform, including control of access to and communications with access systems and other communication devices.
  • the data processing, storage and other relevant control apparatus can be provided on an appropriate circuit board and/or in chipsets. This feature is denoted by reference 204.
  • the user may control the operation of the mobile device by means of a suitable user interface such as key pad 205, voice commands, touch sensitive screen or pad, combinations thereof or the like.
  • a display 208, a speaker and a microphone can be also provided.
  • a mobile communication device may comprise appropriate connectors (either wired or wireless) to other devices and/or for connecting external accessories, for example hands-free equipment, thereto.
  • Figure 3 shows an example of a control apparatus for a communication system, for example to be coupled to and/or for controlling a station of an access system, such as a RAN node, e.g. a base station, (e) node B or 5G AP, or a node of a core network such as an MME or S-GW, or a server or host.
  • the method may be implanted in a single control apparatus or across more than one control apparatus.
  • the control apparatus may be integrated with or external to a node or module of a core network or RAN.
  • base stations comprise a separate control apparatus unit or module.
  • the control apparatus can be another network element such as a radio network controller or a spectrum controller.
  • each base station may have such a control apparatus as well as a control apparatus being provided in a radio network controller.
  • the control apparatus 300 can be arranged to provide control on communications in the service area of the system.
  • the control apparatus 300 comprises at least one memory 301, at least one data processing unit 302, 303 and an input/output interface 304. Via the interface the control apparatus can be coupled to a receiver and a transmitter of the base station.
  • the receiver and/or the transmitter may be implemented as a radio front end or a remote radio head.
  • Figure 4 provides an illustration of the UE protocol stack that is part of the LTE standard.
  • the stack includes 3 different layers through which a data packet passes on the uplink, when being prepared for transmission over the network, and on the downlink, when being received from the network for delivery to the host.
  • Layer 2 of the protocol stack comprises, a first protocol layer 401, a second protocol layer 402, and a zeroth protocol layer 403.
  • the first protocol layer 401 is a Radio Link Control (RLC) layer 401
  • the second protocol layer 402 is a Medium Access Control (MAC) layer 402
  • the zeroth protocol layer 403 is a Packet Data Convergence Protocol (PDCP) Layer 403.
  • the protocol stack may also comprise a Service Data Adaptation Protocol (SDAP) layer (not shown) .
  • SDAP Service Data Adaptation Protocol
  • the RLC layer 401 is configured to receive data packets from the PDCP 403. The RLC 401 then performs the necessary processing in order to produce data packets which are passed to the MAC layer 402.
  • the data packets passed by the RLC layer 401 to the MAC layer 402 may be referred to as RLC protocol data units (PDU) or MAC service data units (SDU) .
  • PDU RLC protocol data units
  • SDU MAC service data units
  • service data units refers to packets received by a layer of the stack, whilst packets output by a layer of the stack are referred to as “protocol data units” . Therefore, when the term “RLC PDU” is used, this may also be understood to refer to a “MAC SDU” , and vice versa.
  • the PDCP layer 403 receives the PDCP SDUs and then may perform at least some of the following functions to produce the PDCP PDUs: header compression and decompression, transfer of user data, reordering &in-sequence delivery, ciphering &deciphering, and timer-based SDU discard.
  • PDCP may also perform reordering.
  • the RLC layer 401 receives the PDCP PDUs from the PDCP layer 303 and then may perform some of the following functions to produce the RLC PDUs: transfer of upper layer PDUs; error correction through ARQ; , segmentation and reassembly of RLC SDUs; re-segmentation of RLC SDU segments; duplicate detection; and protocol error detection.
  • the MAC layer 402 receives the RLC PDUs from the RLC layer 401 and then may perform some of the following functions to produce the MAC PDUs: Mapping between logical channels and transport channels; Multiplexing/demultiplexing of MAC SDUs belonging to one or different logical channels into/from transport blocks (TB) delivered to/from the physical layer on transport channels; Scheduling information reporting; Error correction through HARQ; Priority handling between logical channels of one UE; Priority handling between UEs by means of dynamic scheduling; Transport format selection; and Padding.
  • the protocol stack may include a third protocol layer 404, which in this example is a physical layer 404.
  • the physical layer is just an example, and that the third protocol layer may take forms other than the physical layer 404.
  • the MAC layer 402 may then pass the MAC PDUs to the physical layer 404.
  • the physical layer is configured to prepare and transmit the data packets over the network to a receiving entity.
  • the transmitting entity which performs the above described processing and transmission of data packets, may be may comprise a user equipment (UE) , such as that described above with reference to Figure 2.
  • the receiving entity which receives the data packets from over the network may comprise a user equipment (UE) , such as that described above with reference to Figure 2.
  • Figure 5a shows an example of a PDCP PDU 510.
  • the PDCP PDU 510 includes a PDCP SDU 520, which is received by the PDCP layer 403, and a PDCP header 530, which is affixed to the PDCP SDU by the PDCP layer.
  • FIG. 5b shows an example of a RLC PDU 540.
  • the RLC PDU 540 includes a RLC Payload 550 and a RLC header 560, which is affixed to the RLC payload 550 by the RLC layer 401.
  • the RLC payload 550 comprises one complete or one segment of a PDCP PDU 510.
  • FIG. 5c shows an example of a MAC PDU 570.
  • the MAC PDU 570 includes a MAC Payload 580, and a MAC header 590, which is affixed to the MAC payload 580 by the MAC layer 402.
  • the MAC payload 580 comprises one or more RLC PDUs 540.
  • Radio link control is a layer 2 protocol.
  • the main tasks of the RLC protocol are the transfer of upper layer protocol data units (PDU) in one of three modes: Acknowledged Mode (AM) , Unacknowledged Mode (UM) and Transparent Mode (TM) .
  • PDU upper layer protocol data units
  • AM Acknowledged Mode
  • UM Unacknowledged Mode
  • TM Transparent Mode
  • a receiving entity (which may referred to as an RLC entity) may operate in acknowledge mode (AM) .
  • the receiving entity is configured to send status reports (which may be referred to as STATUS PDUs) to a transmitting entity (which may be referred to as a peer AM RLC entity) , from which it receives data packets (which may be RLC PDUs and/or RLC SDUs) .
  • the status reports may include positive acknowledgements (ACKs) of the data packets (or portions of them) which have been received from the transmitting entity.
  • the status reports may additionally include negative acknowledgments (NACKs) of data packets (or portions of them) which are expected to be received from the transmitting entity or have been determined to be lost.
  • ACKs positive acknowledgements
  • NACKs negative acknowledgments
  • a status report may only comprise a single explicit ACK value, which is used to indicate to the transmitting entity, the acknowledgement of multiple data packets that have been received at the receiving entity.
  • an ACK may comprise a sequence number which indicates to the transmitting entity that all data packets having up to but not including this sequence number, which have not been negatively acknowledged, have been successfully received at the receiving entity.
  • STATUS PDU refers to the process of transmitting a status report from a receiving entity. Part of this process comprises the delivery to a lower protocol layer, e.g. physical layer 404, of the status report for transmission over a network to the transmitting entity.
  • a lower protocol layer e.g. physical layer 404
  • a limit which, in some examples, may be referred to as RX_Highest_Status
  • the transmission of the status report is delayed until the sequence number of the data packet is less than the limit. This may occur when the limit is increased by the receiving entity. Additionally, or alternatively, the receiving entity shall transmit a status report upon receiving such a data packet if the sequence number of the data packet is greater than or equal to RX_Next + AM_Window_Size. Otherwise, the transmission of the status report is delayed until the sequence number is greater than or equal to RX_Next + AM_Window_Size.
  • RX_Next is the sequence number following the highest sequence number of any received data packets.
  • the status reports can be used by the transmitting entity to detect reception failure of an AMD PDU at the receiving entity.
  • a timer (which may be referred to as t-Reassembly) may be used for this purpose. This timer is referred to as second timer at various points in the description.
  • the receiving entity may be configured to transmit a status report when the time period for reordering (t-Reassembly) expires. For example, when the time period/timer expires, the limit (i.e.
  • RX_Highest_Status may be increased, such that the sequence numbers of packets for which ACKs or NACKs have not yet been transmitted are now lower than this limit, and, therefore a new status report including ACKs or NACKs for these data packets may be transmitted.
  • a further timer (which may be referred to as t-StatusProhibit) is used to determine whether or not status reporting is permitted or prohibited.
  • This timer may be referred to as a first timer at various points in the description.
  • the receiving entity may be configured to transmit a status report to the transmitting entity comprising both ACKs and NACKS.
  • the receiving entity may perform such transmission by, at the first transmission opportunity indicated by a lower layer, constructing a STATUS PDU and delivering it to a lower layer (e.g. the physical layer) .
  • the timer is running the receiving entity typically may prevent the transmission of ACKs and NACKs until the expiry of the first timer.
  • the receiving entity may be configured to start the first timer, so that the receiving entity will not transmit further status reports until the timer has expired.
  • the receiving side of an AM RLC entity shall, at the first transmission opportunity indicated by the lower protocol layer after t-StatusProhibit expires, construct a single STATUS PDU even if status reporting was triggered several times while t-StatusProhibit was running and deliver it to lower layer for transmission to the transmission entity.
  • the receiving side of an AM RLC entity shall start t-StatusProhibit.
  • STATUS PDUs may increase in size in comparison to other radio access technologies since a number of RLC SDUs may need to be NACKed. For example, if a single MAC PDU included 30 RLC PDUs and was lost, each RLC PDU would require a negative acknowledgement. However, there may be restrictions on the size of the status reports (and therefore the number of ACKs/NACKs) that can be transmitted. Such a size restrictions may be imposed by the size specified for the UL grant. Therefore, in some cases, a larger number of RLC PDUs than can be indicated may be lost. This may extend beyond the size permitted for the STATUS PDU.
  • One proposed solution to this problem is to prevent starting of the first timer until all of the NACKs for the failed transmissions have been transmitted in a status report.
  • the receiving entity may not start t-StatusProhibit if the complete information of all missing PDUs has not been included in the STATUS PDU.
  • the new UL grant may, as with the earlier UL grant, not include all the details to be reported. In fact, the same information will be set first according to the RLC specification (lowest NACK_SN) .
  • NACKs may be sent for the same missing data packets that were NACKed in the earlier status report.
  • the receiving entity may re-send the same NACKs since the new grant received does not include all the details which instruct the receiving entity which data packets need to be reported.
  • the first timer when the transmission of a status report is made, the first timer is started.
  • the receiving entity is configured to, prior to the expiry of the timer, not transmit ACKs and NACKs for one or more data packets for which ACKs or NACKs have previously been sent (i.e. in the first status report) .
  • the receiving entity is configured to, prior to the expiry of the first timer, transmit at least a second status report comprising ACKs and NACKs for one or more data packets for which ACKs or NACKs were not transmitted in the first status report by which either acknowledged data packets received prior to the starting of the timer or negatively acknowledged data packets which are expected to have been received prior to the starting the timer.
  • the receiving entity is permitted to transmit the remaining ACKs/NACKs which could not fit into the first status report.
  • the receiving entity may still be prohibited from transmitting ACKs/NACKs for data packets received (or expected to be received in the case of the NACKs) after the starting the timer.
  • the capacity of the second status report is over a threshold (i.e. there is enough space in the second status report)
  • the inclusion of ACKS for data packets received the starting of the timer may be permitted in the second status report.
  • the transmitting entity may receive the NACKs in at least the second status report and perform the necessary re-transmissions.
  • the receiving entity may determine that a data packet was expected to be received prior to the start of the timer, if the data packet has a lower sequence number than a data packet, which has been successfully received at the receiving entity prior to the start of the timer.
  • the receiving entity constructs a status report
  • the limit e.g. RX_Highest_Status
  • the receiving entity is only prohibited from reporting data packets that have already been reported in the first status report (i.e., data packets having a sequence number less than or equal to the highest sequence number of data packets reported in the first status report) .
  • These data packets may be said to meet the condition SN ⁇ ACK_SN_reported, where ACK_SN_reported is the SN following the highest SN of the reported data packets.
  • the receiving entity does not prohibit the remaining data packets from being reported in at least a second status report (i.e., data packets having a sequence number greater than the highest sequence number of data packets reported in the first status report) .
  • a partial status report is a status report comprising part of the information (i.e. ACKs/NACKs) , which may be constructed based on the data packets received at the receiving entity.
  • the partial status report cannot include all of the ACKs/NACKs and hence, there is a need for at least a second status report to be transmitted after starting of the first timer to send the remaining ACK/NACKs.
  • a status report may be constructed and sent to acknowledge or negatively acknowledge data packets until the sequence number of the data packets being positively or negatively acknowledged reaches the limit, i.e. until a status report is sent comprising a sequence number of a data packet which is equal to the limit.
  • the said limit could be referred to as RX_Highest_Status, which may be recorded during the construction of the first status report.
  • the first timer when the first timer is running, the first timer may be restarted in response to a status report being transmitted from the receiving entity.
  • the receiving entity may be configured to only transmit ACKs and/or NACKs when the first timer is active for data packets of a sequence number not exceeding the limit, even if other data packets are available to be acknowledged.
  • the limit may be considered to be set when the first status report is transmitted by the receiving entity.
  • the receiving entity may be configured to report ACKs and/or NACKs for data packets which arrive when the first timer is active. This may occur as long as the status report includes reporting (i.e. the remaining status information) for data packets having sequence numbers lower than the limit. This may occur as long as the status report includes reporting for data packets received or determined not to be successfully received at the receiving entity by the time the first status report was transmitted.
  • the at least second status report comprises an indication of the lowest sequence number that can be considered acknowledged in the at least second status report. Hence, if the transmission of the first status report has failed, the transmitting entity does not interpret all the sequence numbers below the indicated lowest sequence number to have been acknowledged.
  • a sequence number range is included in the at least second status report indicating the range of sequence numbers the at least second status report applies to.
  • Examples of the application have the advantage that they allow the reporting of the missing data packets by the receiving entity when not all information can be fitted to one status report. This can help to alleviate the transmitting entity from stalling (i.e. transmission window stalling) during high data rate scenarios.
  • the receiving entity shall, if the first timer is not running at the first transmission opportunity (which may be indicated by a lower protocol layer) construct a STATUS PDU and deliver it to a lower layer for transmission. On the other hand, if the first timer is running and partial status information is pending transmission: at the first transmission opportunity, construct a STATUS PDU and deliver it to a lower layer for transmission.
  • the receiving entity When STATUS reporting has been triggered, at the first transmission opportunity (which may be indicated by a lower layer) after the first timer has expired, the receiving entity is configured to construct a single status report and transmit it to the transmitting entity even if several status reports were transmitted whilst the first timer was active.
  • Figure 7 shows a method 700, which may be performed in a device, such as a user equipment or a network node, which receives data packets from a transmitting entity and transmits acknowledgments (ACKs) to indicate the successful receipt of the data packets or negative acknowledgments (NACKs) to indicate that the data packets have not been successfully received from the transmitting entity.
  • ACKs acknowledgments
  • NACKs negative acknowledgments
  • data packet used here may refer to RLC SDUs, which are individually acknowledged.
  • the term data packet may refer to segments of the RLC SDUs, such as PDCP PDUs.
  • the term data packet may refer to RLC PDUs.
  • the method 700 is provided as an example, and that in other examples, one or more steps of this method may be omitted.
  • the receiving entity transmits a status report to the transmitting entity.
  • the status report may be referred to as a status PDU.
  • the status report may comprise one or more ACKs of the receipt of data packets at the receiving entity.
  • the status report may comprise one or more NACKs corresponding to data packets expected to be received from the transmitting entity which, in whole or in part, were not received.
  • the receiving entity may be configured to transmit ACKs or NACKs for data packets up to a sequence number limit.
  • the sequence number limit may be referred to as RX_Highest_Status. This limit may be set to ensure that the status report is transmitted after HARQ reordering.
  • the receiving entity is configured to include in the status report ACKs/NACKs for data packets for which there is space in the first status report, even if the RX_Highest_Status limit isn’t reached, and to transmit the status report to the receiving entity.
  • a first timer is started. This timer may be referred to as a t-StatusProhibit timer.
  • the receiving entity transmits to the transmitting entity ACKs/NACKs for unreported data packets.
  • the ACKs/NACKs may be transmitted for data packets having a sequence number less or equal to the highest sequence number of data packets received prior to the starting of the timer. Therefore, data packets received after the starting of the timer, may not be acknowledged. However, data packets received at the receiving entity prior to the starting of the timer which were not included in the previous status report are acknowledged. Similarly data packets, which have not been received at the receiving entity, but which have a lower sequence number than a data packet received at the receiving entity prior to the starting of the timer are negatively acknowledged.
  • the unreported data packets are data packets for which an ACK or NACK has not been transmitted to the transmitting entity.
  • the receiving entity may determine whether or not a data packet is unreported by examining a highest sequence number value included in the previous status report that has been sent to the transmitting entity. The highest sequence number value provides an, indication of the next sequence number of a data packet which was not reported as missing in the previous status report.
  • the receiving entity at S740 may examine the highest sequence number value and transmit ACKs/NACKs for any data packets having equal to or a higher sequence number value.
  • the receiving entity may transmit ACKs/NACKs for data packets having sequence numbers up to the limit.
  • the transmitting entity By transmitting ACKs/NACKs for unreported data packets, the transmitting entity is able to receive the ACKs/NACKs and, in response, perform retransmissions of the NACKed (negatively acknowledged) data packets. If the receiving entity had to wait until expiry of the first timer to begin transmission of the ACKs/NACKs, a delay would be caused in the re-transmission, since the transmitting entity would not be aware of the failure of the transmission of the relevant data packets until after the expiry of the timer.
  • the method proceeds to S750.
  • the second timer e.g. t-Reassembly
  • the limit e.g. RX_Highest_Status
  • the method may proceed again to S710, where the receiving entity again transmits a further status report. Since the limit has been raised, the receiving entity is configured to transmit ACKs or NACKs for data packets having higher sequence numbers.
  • Figures 6a and 6b show examples of status reports which may be transmitted by the receiving entity to the transmitting entity.
  • Figure 6a shows an example of a first status report 600, which may be transmitted when the first timer is not active.
  • Figure 6b shows an example of a second status report 650, which may be transmitted subsequently when the first timer has become active.
  • Figure 6a shows a status report, having a header 605.
  • the header contains the information (such as Control PDU Type field (CPT) ) necessary for decoding the status report 600 correctly at the transmitting entity.
  • the NACK includes an indication of the particular segments of the data packet for which transmission has failed. If the segments for which transmission failed are in a continuous sequence, the NACK may contain an indication of the start of that sequence (SOstart) and the end of the sequence (SOend) .
  • the transmitting entity may determine which segments of a data packet have not been successfully transmitted and may then re-transmit those segments only, rather than re-transmit the entire data packet.
  • the receiving entity is configured to start the first timer. Until the expiry of the first timer, the receiving entity may transmit status reports including ACKs/NACKs for data packets for which no ACK or NACK has yet been transmitted (i.e. data packets which are unreported) . Such a status report is shown in Figure 6b.
  • Figure 6b shows a status report 650 having a header 655.
  • the header 655 contains the information (such as Control PDU Type field (CPT) ) necessary for decoding the status report correctly at the transmitting entity.
  • CPT Control PDU Type field
  • the NACK 670 includes an indication of the particular segments of the data packet for which transmission has failed. If the segments for which transmission failed are in a continuous sequence, the NACK 670 may contain an indication of the start of that sequence (SOstart) and the end of the sequence (SOend) .
  • the transmitting entity may determine which segments of a data packet have not been successfully transmitted and may then re-transmit those segments only, rather than re-transmit the entire data packet.
  • Figures 6a and 6b show that when the transmission of a continuous sequence of segments of a data packet fails, the amount of space required to communicate this in the status report may be reduced by including an indication of the start point and end point of the sequence. Similarly, when the transmission of a continuous sequence of data packets fails, this may indicated in the status report by indicating the start point and end point of the sequence. Reference is made to Figure 8, which illustrates this.
  • Figure 8 shows an example of a status report 800.
  • the status report also includes a NACK 805 indicating the failed transmission of data packets having sequence numbers 5 to 8.
  • the method may be implemented on a mobile device as described with respect to Figure 2 or control apparatus as shown in Figure 3.
  • Control functions may comprise receiving a plurality of data packets; causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently: starting a first timer; prior to expiry of the first timer: prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
  • apparatuses may comprise or be coupled to other units or modules etc., such as radio parts or radio heads, used in or for transmission and/or reception.
  • apparatuses have been described as one entity, different modules and memory may be implemented in one or more physical or logical entities.
  • the various embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. Some aspects of the invention may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the invention is not limited thereto. While various aspects of the invention may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.
  • the embodiments of this invention may be implemented by computer software executable by a data processor of the mobile device, such as in the processor entity, or by hardware, or by a combination of software and hardware.
  • Computer software or program also called program product, including software routines, applets and/or macros, may be stored in any apparatus-readable data storage medium and they comprise program instructions to perform particular tasks.
  • a computer program product may comprise one or more computer-executable components which, when the program is run, are configured to carry out embodiments.
  • the one or more computer-executable components may be at least one software code or portions of it.
  • any blocks of the logic flow as in the figures may represent program steps, or interconnected logic circuits, blocks and functions, or a combination of program steps and logic circuits, blocks and functions.
  • the software may be stored on such physical media as memory chips, or memory blocks implemented within the processor, magnetic media such as hard disk or floppy disks, and optical media such as for example DVD and the data variants thereof, CD.
  • the physical media is a non-transitory media.
  • the memory may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory.
  • the data processors may be of any type suitable to the local technical environment, and may comprise one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) , application specific integrated circuits (ASIC) , FPGA, gate level circuits and processors based on multi core processor architecture, as non-limiting examples.
  • Embodiments of the inventions may be practiced in various components such as integrated circuit modules.
  • the design of integrated circuits is by and large a highly automated process.
  • Complex and powerful software tools are available for converting a logic level design into a semiconductor circuit design ready to be etched and formed on a semiconductor substrate.

Abstract

A method comprising: receiving a plurality of data packets; causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently: starting a first timer; prior to expiry of the first timer: prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.

Description

METHOD, APPARATUS AND COMPUTER PROGRAM Field
The present application relates to a method, apparatus, system and computer program and in particular but not exclusively to radio link control status reporting in New Radio (NR) .
Background
A communication system can be seen as a facility that enables communication sessions between two or more entities such as user terminals, base stations and/or other nodes by providing carriers between the various entities involved in the communications path. A communication system can be provided for example by means of a communication network and one or more compatible communication devices. The communication sessions may comprise, for example, communication of data for carrying communications such as voice, video, electronic mail (email) , text message, multimedia and/or content data and so on. Non-limiting examples of services provided comprise two-way or multi-way calls, data communication or multimedia services and access to a data network system, such as the Internet.
In a wireless communication system at least a part of a communication session between at least two stations occurs over a wireless link. Examples of wireless systems comprise public land mobile networks (PLMN) , satellite based communication systems and different wireless local networks, for example wireless local area networks (WLAN) . The wireless systems can typically be divided into cells, and are therefore often referred to as cellular systems.
A user can access the communication system by means of an appropriate communication device or terminal. A communication device of a user may be referred to as user equipment (UE) or user device. A communication device is provided with an appropriate signal receiving and transmitting apparatus for enabling communications, for example enabling access to a communication network or communications directly with other users. The communication device may access a carrier provided by a station, for example a base station of a cell, and transmit and/or receive communications on the carrier.
The communication system and associated devices typically operate in accordance with a given standard or specification which sets out what the various entities associated with the  system are permitted to do and how that should be achieved. Communication protocols and/or parameters which shall be used for the connection are also typically defined. One example of a communications system is UTRAN (3G radio) . Other examples of communication systems are the long-term evolution (LTE) of the Universal Mobile Telecommunications System (UMTS) radio-access technology and so-called 5G or New Radio (NR) networks. Standardization of 5G or New Radio networks is currently under discussion. LTE is being standardized by the 3rd Generation Partnership Project (3GPP) .
Summary
In a first aspect, there is provided a method comprising: receiving a plurality of data packets; causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently: starting a first timer; prior to expiry of the first timer: prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; and permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
In one embodiment, the method comprises prior to expiry of the first timer: prohibiting the transmission of negative acknowledgments for data packets having a higher sequence number than any of the plurality of data packets received prior to the starting of the first timer.
In one embodiment, the method comprises prior to expiry of the first timer: permitting the transmission of negative acknowledgments having a lower sequence number than any of the plurality of data packets received prior to the starting of the first timer.
In one embodiment, the method comprises prohibiting the transmission of acknowledgments for data packets received after the starting of the first timer.
In one embodiment, the method comprises determining a highest sequence number of the one or more data packets for which acknowledgments and negative acknowledgments are included in the first status report.
In one embodiment, the prohibiting the further transmission comprises: prohibiting the transmission of an acknowledgment or negative acknowledgment for any data packet having a sequence number less than or equal to the highest sequence number.
In one embodiment, the permitting the transmission comprises permitting the transmission of at least one of acknowledgments or negative acknowledgments for any data packet having a sequence number greater than the highest sequence number.
In one embodiment, the transmission of at least one of acknowledgments or negative acknowledgements for one or more data packets prior to expiry of the first timer comprises transmitting at least one of acknowledgments or negative acknowledgments for one or more data packets having a sequence number less than a first limit.
In one embodiment, the method comprises increasing the first limit after expiry of a second timer.
In one embodiment, the transmission of negative acknowledgements comprises: transmitting in a status report a negative acknowledgment comprising a sequence number of a data packet which has not been received.
In one embodiment, the transmission of negative acknowledgements comprises: transmitting in a status report, a negative acknowledgment comprising an indication of one or more segments of a partially received data packet which have not been received.
In one embodiment, the indication of one or more segments comprises an indication of a start point and an end point of a continuous set of segments in the data packet which have not been received.
According to a second aspect, there is provided a computer program product for a computer, comprising software code portions for performing the steps of the first aspect when said product is run on the computer.
According to a third aspect, there is provided an apparatus comprising: at least one processor and at least one memory including a computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to: receive a plurality of data packets; cause the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently: start a first timer; prior to expiry of the first timer: prohibit further transmission of acknowledgments and negative acknowledgments included  in the first status report; and permit the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
In one embodiment, the apparatus is configured to prior to expiry of the first timer: prohibit the transmission of negative acknowledgments for data packets having a higher sequence number than any of the plurality of data packets received prior to the starting of the first timer.
In one embodiment, the apparatus is configured to prior to expiry of the first timer: permit the transmission of negative acknowledgments having a lower sequence number than any of the plurality of data packets received prior to the starting of the first timer.
In one embodiment, the apparatus is configured to prohibit the transmission of acknowledgments for data packets received after the starting of the first timer.
In one embodiment, the apparatus is configured to determine a highest sequence number of the one or more data packets for which acknowledgments and negative acknowledgments are included in the first status report.
In one embodiment, the prohibiting the further transmission comprises: prohibiting the transmission of an acknowledgment or negative acknowledgment for any data packet having a sequence number less than or equal to the highest sequence number.
In one embodiment, the permitting the transmission comprises: permitting the transmission of at least one of acknowledgments or negative acknowledgments for any data packet having a sequence number greater than the highest sequence number.
In one embodiment, the transmission of at least one of acknowledgments or negative acknowledgements for one or more data packets prior to expiry of the first timer comprises transmitting at least one of acknowledgments or negative acknowledgments for one or more data packets having a sequence number less than a first limit.
In one embodiment, the apparatus is configured to increase the first limit after expiry of a second timer.
In one embodiment, the transmission of negative acknowledgements comprises: transmitting in a status report a negative acknowledgment comprising a sequence number of a data packet which has not been received.
In one embodiment, the transmission of negative acknowledgements comprises: transmitting in a status report, a negative acknowledgment comprising an indication of one or more segments of a partially received data packet which have not been received.
In one embodiment, the indication of one or more segments comprises an indication of a start point and an end point of a continuous set of segments in the data packet which have not been received.
According to a fourth aspect, there is provided a computer program embodied on a non-transitory computer-readable storage medium, the computer program comprising program code for controlling a process to execute a process, the process comprising: receiving a plurality of data packets; causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently: starting a first timer; prior to expiry of the first timer: prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; and permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
In one embodiment, the process comprises prior to expiry of the first timer: prohibiting the transmission of negative acknowledgments for data packets having a higher sequence number than any of the plurality of data packets received prior to the starting of the first timer.
In one embodiment, the process comprises prior to expiry of the first timer: permitting the transmission of negative acknowledgments having a lower sequence number than any of the plurality of data packets received prior to the starting of the first timer.
In one embodiment, the process comprises prohibiting the transmission of acknowledgments for data packets received after the starting of the first timer.
In one embodiment, the process comprises determining a highest sequence number of the one or more data packets for which acknowledgments and negative acknowledgments are included in the first status report.
In one embodiment, the prohibiting the further transmission comprises: prohibiting the transmission of an acknowledgment or negative acknowledgment for any data packet having a sequence number less than or equal to the highest sequence number.
In one embodiment, the permitting the transmission comprises permitting the transmission of at least one of acknowledgments or negative acknowledgments for any data packet having a sequence number greater than the highest sequence number.
In one embodiment, the transmission of at least one of acknowledgments or negative acknowledgements for one or more data packets prior to expiry of the first timer comprises transmitting at least one of acknowledgments or negative acknowledgments for one or more data packets having a sequence number less than a first limit.
In one embodiment, the process comprises increasing the first limit after expiry of a second timer.
In one embodiment, the transmission of negative acknowledgements comprises: transmitting in a status report a negative acknowledgment comprising a sequence number of a data packet which has not been received.
In one embodiment, the transmission of negative acknowledgements comprises: transmitting in a status report, a negative acknowledgment comprising an indication of one or more segments of a partially received data packet which have not been received.
In one embodiment, the indication of one or more segments comprises an indication of a start point and an end point of a continuous set of segments in the data packet which have not been received.
According to a fifth aspect, there is provided an apparatus comprising: means for receiving a plurality of data packets; means for causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; means for subsequently: starting a first timer; prior to expiry of the first timer: prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; and permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
In the above, many different embodiments have been described. It should be appreciated that further embodiments may be provided by the combination of any two or more of the embodiments described above.
Description of Figures
Embodiments will now be described, by way of example only, with reference to the accompanying Figures in which:
Figure 1 shows a schematic diagram of an example communication system comprising a base station and a plurality of communication devices;
Figure 2 shows a schematic diagram of an example mobile communication device;
Figure 3 shows a schematic diagram of an example control apparatus;
Figure 4 shows a schematic diagram of the LTE protocol stack;
Figure 5a shows an example of a PDCP PDU;
Figure 5b shows an example of an RLC PDU;
Figure 5c shows an example of a MAC PDU;
Figure 6a shows an example of status report;
Figure 6b shows an example of a status report;
Figure 7 shows an example of a method according to embodiments; and
Figure 8 shows an example of a status report.
Detailed description
Before explaining in detail the examples, certain general principles of a wireless communication system and mobile communication devices are briefly explained with reference to Figures 1 to 2 to assist in understanding the technology underlying the described examples.
In a wireless communication system 100, such as that shown in Figure 1, mobile communication devices or user equipment (UE) 102, 104, 105 are provided wireless access via at least one base station or similar wireless transmitting and/or receiving node or point. Base stations are typically controlled by at least one appropriate controller apparatus, so as to enable operation thereof and management of mobile communication devices in communication with the base stations. The controller apparatus may be located in a radio access network (e.g. wireless communication system 100) or in a core network (CN) (not shown) and may be implemented as one central apparatus or its functionality may be distributed over several apparatus. The controller apparatus may be part of the base station and/or provided by a separate entity such as a Radio Network Controller. In Figure 1  control apparatus  108 and 109 are shown to control the respective macro  level base stations  106 and 107. The control apparatus of a base station can be interconnected with other control entities. The control apparatus is typically provided with memory capacity and at least one data processor. The control apparatus and functions may be distributed between a plurality of control units. In some systems, the control apparatus may additionally or alternatively be provided in a radio network controller.
In Figure 1  base stations  106 and 107 are shown as connected to a wider communications network 113 via gateway 112. A further gateway function may be provided to connect to another network.
The  smaller base stations  116, 118 and 120 may also be connected to the network 113, for example by a separate gateway function and/or via the controllers of the macro level stations. The  base stations  116, 118 and 120 may be pico or femto level base stations or the like. In the example,  stations  116 and 118 are connected via a gateway 111 whilst station 120 connects via the controller apparatus 108. In some embodiments, the smaller stations may not be provided.  Smaller base stations  116, 118 and 120 may be part of a second network, for example WLAN and may be WLAN APs.
An example of wireless communication systems are architectures standardized by the 3rd Generation Partnership Project (3GPP) . A 3GPP based development is often referred to as the long term evolution (LTE) of the Universal Mobile Telecommunications System (UMTS)  radio-access technology. The various development stages of the 3GPP specifications are referred to as releases. More recent developments of the LTE are often referred to as LTE Advanced (LTE-A) . The LTE employs a mobile architecture known as the Evolved Universal Terrestrial Radio Access Network (E-UTRAN) . Base stations of such systems are known as evolved or enhanced Node Bs (eNBs) and provide E-UTRAN features such as user plane Packet Data Convergence/Radio Link Control/Medium Access Control/Physical layer protocol (PDCP/RLC/MAC/PHY) and control plane Radio Resource Control (RRC) protocol terminations towards the communication devices. Other examples of radio access system comprise those provided by base stations of systems that are based on technologies such as wireless local area network (WLAN) and/or WiMax (Worldwide Interoperability for Microwave Access) . A base station can provide coverage for an entire cell or similar radio service area.
An example of a suitable communications system is the 5G or NR concept. Network architecture in NR may be similar to that of LTE-advanced. Base stations of NR systems may be known as next generation Node Bs (gNBs) . Changes to the network architecture may depend on the need to support various radio technologies and finer QoS support, and some on-demand requirements for e.g. QoS levels to support QoE of user point of view. Also network aware services and applications, and service and application aware networks may bring changes to the architecture. Those are related to Information Centric Network (ICN) and User-Centric Content Delivery Network (UC-CDN) approaches. NR may use multiple input -multiple output (MIMO) antennas, many more base stations or nodes than the LTE (aso-called small cell concept) , including macro sites operating in co-operation with smaller stations and perhaps also employing a variety of radio technologies for better coverage and enhanced data rates.
Future networks may utilise network functions virtualization (NFV) which is a network architecture concept that proposes virtualizing network node functions into “building blocks” or entities that may be operationally connected or linked together to provide services. A virtualized network function (VNF) may comprise one or more virtual machines running computer program codes using standard or general type servers instead of customized hardware. Cloud computing or data storage may also be utilized. In radio communications this may mean node operations to be carried out, at least partly, in a server, host or node operationally coupled to a remote radio head. It is also possible that node operations will be distributed among a plurality of servers, nodes or hosts. It should also be understood that the distribution of labour between core network operations and base station operations may differ from that of the LTE or even be non-existent.
A possible mobile communication device will now be described in more detail with reference to Figure 2 showing a schematic, partially sectioned view of a communication device 200. Such a communication device is often referred to as user equipment (UE) or terminal. An appropriate mobile communication device may be provided by any device capable of sending and receiving radio signals. Non-limiting examples comprise a mobile station (MS) or mobile device such as a mobile phone or what is known as a ’smart phone’ , a computer provided with a wireless interface card or other wireless interface facility (e.g., USB dongle) , personal data assistant (PDA) or a tablet provided with wireless communication capabilities, or any combinations of these or the like. A mobile communication device may provide, for example, communication of data for carrying communications such as voice, electronic mail (email) , text message, multimedia and so on. Users may thus be offered and provided numerous services via their communication devices. Non-limiting examples of these services comprise two-way or multi-way calls, data communication or multimedia services or simply an access to a data communications network system, such as the Internet. Users may also be provided broadcast or multicast data. Non-limiting examples of the content comprise downloads, television and radio programs, videos, advertisements, various alerts and other information.
The  communication devices  102, 104, 105 may access the communication system based on various access techniques, such as code division multiple access (CDMA) , or wideband CDMA (WCDMA) . Other non-limiting examples comprise time division multiple access (TDMA) , frequency division multiple access (FDMA) and various schemes thereof such as the interleaved frequency division multiple access (IFDMA) , single carrier frequency division multiple access (SC-FDMA) and orthogonal frequency division multiple access (OFDMA) , space division multiple access (SDMA) and so on.
The mobile device 200 may receive signals over an air or radio interface 207 via appropriate apparatus for receiving and may transmit signals via appropriate apparatus for transmitting radio signals. In Figure 2, transceiver apparatus is designated schematically by block 206. The transceiver apparatus 206 may be provided for example by means of a radio part and associated antenna arrangement. The antenna arrangement may be arranged internally or externally to the mobile device.
A mobile device is typically provided with at least one data processing entity 201, at least one memory 202 and other possible components 203 for use in software and hardware aided execution of tasks it is designed to perform, including control of access to and  communications with access systems and other communication devices. The data processing, storage and other relevant control apparatus can be provided on an appropriate circuit board and/or in chipsets. This feature is denoted by reference 204. The user may control the operation of the mobile device by means of a suitable user interface such as key pad 205, voice commands, touch sensitive screen or pad, combinations thereof or the like. A display 208, a speaker and a microphone can be also provided. Furthermore, a mobile communication device may comprise appropriate connectors (either wired or wireless) to other devices and/or for connecting external accessories, for example hands-free equipment, thereto.
Figure 3 shows an example of a control apparatus for a communication system, for example to be coupled to and/or for controlling a station of an access system, such as a RAN node, e.g. a base station, (e) node B or 5G AP, or a node of a core network such as an MME or S-GW, or a server or host. The method may be implanted in a single control apparatus or across more than one control apparatus. The control apparatus may be integrated with or external to a node or module of a core network or RAN. In some embodiments, base stations comprise a separate control apparatus unit or module. In other embodiments, the control apparatus can be another network element such as a radio network controller or a spectrum controller. In some embodiments, each base station may have such a control apparatus as well as a control apparatus being provided in a radio network controller. The control apparatus 300 can be arranged to provide control on communications in the service area of the system. The control apparatus 300 comprises at least one memory 301, at least one data processing unit 302, 303 and an input/output interface 304. Via the interface the control apparatus can be coupled to a receiver and a transmitter of the base station. The receiver and/or the transmitter may be implemented as a radio front end or a remote radio head.
Reference is now made to Figure 4, which provides an illustration of the UE protocol stack that is part of the LTE standard. As may be seen in the figure, the stack includes 3 different layers through which a data packet passes on the uplink, when being prepared for transmission over the network, and on the downlink, when being received from the network for delivery to the host.
Layer 2 of the protocol stack comprises, a first protocol layer 401, a second protocol layer 402, and a zeroth protocol layer 403. In this example, the first protocol layer 401 is a Radio Link Control (RLC) layer 401, the second protocol layer 402 is a Medium Access Control (MAC) layer 402, and the zeroth protocol layer 403 is a Packet Data Convergence Protocol  (PDCP) Layer 403. The protocol stack may also comprise a Service Data Adaptation Protocol (SDAP) layer (not shown) .
The RLC layer 401 is configured to receive data packets from the PDCP 403. The RLC 401 then performs the necessary processing in order to produce data packets which are passed to the MAC layer 402. The data packets passed by the RLC layer 401 to the MAC layer 402 may be referred to as RLC protocol data units (PDU) or MAC service data units (SDU) . The term “service data units” refers to packets received by a layer of the stack, whilst packets output by a layer of the stack are referred to as “protocol data units” . Therefore, when the term “RLC PDU” is used, this may also be understood to refer to a “MAC SDU” , and vice versa.
The PDCP layer 403 receives the PDCP SDUs and then may perform at least some of the following functions to produce the PDCP PDUs: header compression and decompression, transfer of user data, reordering &in-sequence delivery, ciphering &deciphering, and timer-based SDU discard. When dual connectivity is configured, PDCP may also perform reordering.
The RLC layer 401 receives the PDCP PDUs from the PDCP layer 303 and then may perform some of the following functions to produce the RLC PDUs: transfer of upper layer PDUs; error correction through ARQ; , segmentation and reassembly of RLC SDUs; re-segmentation of RLC SDU segments; duplicate detection; and protocol error detection.
The MAC layer 402 receives the RLC PDUs from the RLC layer 401 and then may perform some of the following functions to produce the MAC PDUs: Mapping between logical channels and transport channels; Multiplexing/demultiplexing of MAC SDUs belonging to one or different logical channels into/from transport blocks (TB) delivered to/from the physical layer on transport channels; Scheduling information reporting; Error correction through HARQ; Priority handling between logical channels of one UE; Priority handling between UEs by means of dynamic scheduling; Transport format selection; and Padding.
The protocol stack may include a third protocol layer 404, which in this example is a physical layer 404. However, it would be understood that the physical layer is just an example, and that the third protocol layer may take forms other than the physical layer 404. When the MAC layer 402 has processed the RLC PDUs 401 to produce the MAC PDUs 402, the MAC layer 402 may then pass the MAC PDUs to the physical layer 404. The physical layer is configured to prepare and transmit the data packets over the network to a receiving entity.
The transmitting entity, which performs the above described processing and transmission of data packets, may be may comprise a user equipment (UE) , such as that described above with reference to Figure 2. Similarly the receiving entity, which receives the data packets from over the network may comprise a user equipment (UE) , such as that described above with reference to Figure 2.
Reference is made to Figures 5a, 5b, and 5c. Figure 5a shows an example of a PDCP PDU 510. The PDCP PDU 510 includes a PDCP SDU 520, which is received by the PDCP layer 403, and a PDCP header 530, which is affixed to the PDCP SDU by the PDCP layer.
Figure 5b shows an example of a RLC PDU 540. The RLC PDU 540 includes a RLC Payload 550 and a RLC header 560, which is affixed to the RLC payload 550 by the RLC layer 401. The RLC payload 550 comprises one complete or one segment of a PDCP PDU 510.
Figure 5c shows an example of a MAC PDU 570. The MAC PDU 570 includes a MAC Payload 580, and a MAC header 590, which is affixed to the MAC payload 580 by the MAC layer 402. The MAC payload 580 comprises one or more RLC PDUs 540.
Radio link control (RLC) is a layer 2 protocol. The main tasks of the RLC protocol are the transfer of upper layer protocol data units (PDU) in one of three modes: Acknowledged Mode (AM) , Unacknowledged Mode (UM) and Transparent Mode (TM) .
A receiving entity (which may referred to as an RLC entity) may operate in acknowledge mode (AM) . In the AM, the receiving entity is configured to send status reports (which may be referred to as STATUS PDUs) to a transmitting entity (which may be referred to as a peer AM RLC entity) , from which it receives data packets (which may be RLC PDUs and/or RLC SDUs) . The status reports may include positive acknowledgements (ACKs) of the data packets (or portions of them) which have been received from the transmitting entity. The status reports may additionally include negative acknowledgments (NACKs) of data packets (or portions of them) which are expected to be received from the transmitting entity or have been determined to be lost. In some cases, a status report may only comprise a single explicit ACK value, which is used to indicate to the transmitting entity, the acknowledgement of multiple data packets that have been received at the receiving entity. For example, an ACK may comprise a sequence number which indicates to the transmitting entity that all  data packets having up to but not including this sequence number, which have not been negatively acknowledged, have been successfully received at the receiving entity.
It should be appreciated that although the term STATUS PDU is used in the description, this is an example only, and that, where this term is used, a status report more broadly may be intended. The description refers to the process of transmitting a status report from a receiving entity. Part of this process comprises the delivery to a lower protocol layer, e.g. physical layer 404, of the status report for transmission over a network to the transmitting entity.
The receiving entity may be configured to transmit a status report in response to polling from the transmitting entity. For example, when a data packet (this may, for example be an AMD (acknowledged mode data) PDU with sequence number (SN) = x and a polling field set to “1” ) containing an indication that a status report should be transmitted is received at the receiving entity from the transmitting entity, the receiving entity shall transmit a status report in response. The status report may be transmitted if the PDU is to be discarded. Additionally or alternatively, the receiving entity shall transmit a status report, upon receiving such a data packet if the sequence number of the data packet is less than a limit (which, in some examples, may be referred to as RX_Highest_Status) . Otherwise, the transmission of the status report is delayed until the sequence number of the data packet is less than the limit. This may occur when the limit is increased by the receiving entity. Additionally, or alternatively, the receiving entity shall transmit a status report upon receiving such a data packet if the sequence number of the data packet is greater than or equal to RX_Next + AM_Window_Size. Otherwise, the transmission of the status report is delayed until the sequence number is greater than or equal to RX_Next + AM_Window_Size. RX_Next is the receive state variable which holds the value of the SN following the last in-sequence received data packet, and it serves as the lower edge of the receiving window. It is initially set to 0, and it updated whenever the receiving entity receives a data with SN = RX_Next. In other words, RX_Next is the sequence number following the highest sequence number of any received data packets. AM_Window_Size is a constant used by both the transmitting side and the receiving side of each receiving entity. Its value varies in dependence upon the number of bits used to represent the sequence number. For example, AM_Window_Size = 2048 when a 12 bit SN is used, whereas AM_Window_Size = 131072 when an 18 bit SN is used.
By imposing one or more of these conditions on the transmission of the status report, it may be ensured that the status report is transmitted by the receiving entity after HARQ reordering.
The status reports can be used by the transmitting entity to detect reception failure of an AMD PDU at the receiving entity.
As explained, conditions may imposed to leave time for HARQ reordering before transmitting status reports. A timer (which may be referred to as t-Reassembly) may be used for this purpose. This timer is referred to as second timer at various points in the description. The receiving entity may be configured to transmit a status report when the time period for reordering (t-Reassembly) expires. For example, when the time period/timer expires, the limit (i.e. RX_Highest_Status) may be increased, such that the sequence numbers of packets for which ACKs or NACKs have not yet been transmitted are now lower than this limit, and, therefore a new status report including ACKs or NACKs for these data packets may be transmitted.
Typically, a further timer (which may be referred to as t-StatusProhibit) is used to determine whether or not status reporting is permitted or prohibited. This timer may be referred to as a first timer at various points in the description. If the timer is not running, the receiving entity may be configured to transmit a status report to the transmitting entity comprising both ACKs and NACKS. The receiving entity may perform such transmission by, at the first transmission opportunity indicated by a lower layer, constructing a STATUS PDU and delivering it to a lower layer (e.g. the physical layer) . However, if the timer is running the receiving entity typically may prevent the transmission of ACKs and NACKs until the expiry of the first timer.
When a status report has been transmitted by the receiving entity, the receiving entity may be configured to start the first timer, so that the receiving entity will not transmit further status reports until the timer has expired.
In one particular example, if t-StatusProhibit is running, the receiving side of an AM RLC entity shall, at the first transmission opportunity indicated by the lower protocol layer after t-StatusProhibit expires, construct a single STATUS PDU even if status reporting was triggered several times while t-StatusProhibit was running and deliver it to lower layer for transmission to the transmission entity. When a STATUS PDU has been delivered to a lower protocol layer, the receiving side of an AM RLC entity shall start t-StatusProhibit.
Since New Radio (NR) RLC does not concatenate RLC SDUs into bigger RLC PDUs, STATUS PDUs may increase in size in comparison to other radio access technologies since a number of RLC SDUs may need to be NACKed. For example, if a single MAC PDU  included 30 RLC PDUs and was lost, each RLC PDU would require a negative acknowledgement. However, there may be restrictions on the size of the status reports (and therefore the number of ACKs/NACKs) that can be transmitted. Such a size restrictions may be imposed by the size specified for the UL grant. Therefore, in some cases, a larger number of RLC PDUs than can be indicated may be lost. This may extend beyond the size permitted for the STATUS PDU.
Hence, in a single status report, it may not be possible to include all ACKs or NACKs up to the limit. If only part of the ACKs or NACKs can be included in the status report, then when the first timer is started -which will prohibit the sending of further status reports -not all of the ACKs or NACKs will be transmitted to the transmitting entity. As a result, data packets which are not received at the receiving entity may not be re-transmitted until after expiry of the first timer, since no NACK is received at the transmitting entity.
One proposed solution to this problem, is to prevent starting of the first timer until all of the NACKs for the failed transmissions have been transmitted in a status report. In this proposed solution, when a status report has been transmitted by the receiving entity, the receiving entity may not start t-StatusProhibit if the complete information of all missing PDUs has not been included in the STATUS PDU. However, there is problem with this approach which is, when a new UL grant is received and a new STATUS PDU is constructed, the new UL grant may, as with the earlier UL grant, not include all the details to be reported. In fact, the same information will be set first according to the RLC specification (lowest NACK_SN) . In other words, NACKs may be sent for the same missing data packets that were NACKed in the earlier status report. The receiving entity may re-send the same NACKs since the new grant received does not include all the details which instruct the receiving entity which data packets need to be reported.
Examples according to the present application may address this problem. According to such examples, when the transmission of a status report is made, the first timer is started. The receiving entity is configured to, prior to the expiry of the timer, not transmit ACKs and NACKs for one or more data packets for which ACKs or NACKs have previously been sent (i.e. in the first status report) . However, the receiving entity is configured to, prior to the expiry of the first timer, transmit at least a second status report comprising ACKs and NACKs for one or more data packets for which ACKs or NACKs were not transmitted in the first status report by which either acknowledged data packets received prior to the starting of the timer or negatively acknowledged data packets which are expected to have been received prior to the starting the timer. Hence, the receiving entity is permitted to transmit the  remaining ACKs/NACKs which could not fit into the first status report. However, the receiving entity may still be prohibited from transmitting ACKs/NACKs for data packets received (or expected to be received in the case of the NACKs) after the starting the timer. In some cases, if the capacity of the second status report is over a threshold (i.e. there is enough space in the second status report) , the inclusion of ACKS for data packets received the starting of the timer may be permitted in the second status report. The transmitting entity may receive the NACKs in at least the second status report and perform the necessary re-transmissions.
The receiving entity may determine that a data packet was expected to be received prior to the start of the timer, if the data packet has a lower sequence number than a data packet, which has been successfully received at the receiving entity prior to the start of the timer.
When the receiving entity constructs a status report, if the highest sequence number of any packet which is reported (i.e. for which an ACK or NACK is included in the status report) is less than the limit (e.g. RX_Highest_Status) (which may occur due to insufficient space in the UL grant) , when the first timer is active the receiving entity is only prohibited from reporting data packets that have already been reported in the first status report (i.e., data packets having a sequence number less than or equal to the highest sequence number of data packets reported in the first status report) . These data packets may be said to meet the condition SN < ACK_SN_reported, where ACK_SN_reported is the SN following the highest SN of the reported data packets.
On the other hand, the receiving entity does not prohibit the remaining data packets from being reported in at least a second status report (i.e., data packets having a sequence number greater than the highest sequence number of data packets reported in the first status report) . These data packet may be said to meet the condition ACK_SN_reported <= SN < RX_Highest_Status.
STATUS reporting can be considered triggered for the remaining part/not reported information (SN >= ACK_SN_reported of previous report) after the partial STATUS PDU has been sent. It should be appreciated that multiple partial STATUS PDUs may be transmitted consecutively, where ACK_SN_reported is defined as being one sequence number higher than the highest sequence number of the data packets reported in the last partial status report. A partial status report is a status report comprising part of the information (i.e. ACKs/NACKs) , which may be constructed based on the data packets received at the receiving entity. The partial status report cannot include all of the ACKs/NACKs and hence,  there is a need for at least a second status report to be transmitted after starting of the first timer to send the remaining ACK/NACKs.
When the first timer is active, a status report may be constructed and sent to acknowledge or negatively acknowledge data packets until the sequence number of the data packets being positively or negatively acknowledged reaches the limit, i.e. until a status report is sent comprising a sequence number of a data packet which is equal to the limit. In some examples, the said limit could be referred to as RX_Highest_Status, which may be recorded during the construction of the first status report.
In some examples, when the first timer is running, the first timer may be restarted in response to a status report being transmitted from the receiving entity.
In some examples, whilst the first timer is active, data packets of a sequence number higher than the limit (e.g. RX_Highest_Status) may be received. In this case, the receiving entity may be configured to only transmit ACKs and/or NACKs when the first timer is active for data packets of a sequence number not exceeding the limit, even if other data packets are available to be acknowledged. The limit may be considered to be set when the first status report is transmitted by the receiving entity. In other examples, the receiving entity may be configured to report ACKs and/or NACKs for data packets which arrive when the first timer is active. This may occur as long as the status report includes reporting (i.e. the remaining status information) for data packets having sequence numbers lower than the limit. This may occur as long as the status report includes reporting for data packets received or determined not to be successfully received at the receiving entity by the time the first status report was transmitted.
In some examples, the at least second status report comprises an indication of the lowest sequence number that can be considered acknowledged in the at least second status report. Hence, if the transmission of the first status report has failed, the transmitting entity does not interpret all the sequence numbers below the indicated lowest sequence number to have been acknowledged. In some examples, a sequence number range is included in the at least second status report indicating the range of sequence numbers the at least second status report applies to.
If t-StatusProhibit expires during the process, the reporting is initialized such that RX_Next <= SN < RX_Highest_Status are considered, i.e. according to the general rule of status reporting. This is because RLC SN = RX_Next could already be lost again.
Examples of the application have the advantage that they allow the reporting of the missing data packets by the receiving entity when not all information can be fitted to one status report. This can help to alleviate the transmitting entity from stalling (i.e. transmission window stalling) during high data rate scenarios.
When STATUS reporting has been triggered, the receiving entity shall, if the first timer is not running at the first transmission opportunity (which may be indicated by a lower protocol layer) construct a STATUS PDU and deliver it to a lower layer for transmission. On the other hand, if the first timer is running and partial status information is pending transmission: at the first transmission opportunity, construct a STATUS PDU and deliver it to a lower layer for transmission.
When STATUS reporting has been triggered, at the first transmission opportunity (which may be indicated by a lower layer) after the first timer has expired, the receiving entity is configured to construct a single status report and transmit it to the transmitting entity even if several status reports were transmitted whilst the first timer was active.
Examples of the application will be explained in more detail with reference to the following figures.
Reference is made to Figure 7, which shows a method 700, which may be performed in a device, such as a user equipment or a network node, which receives data packets from a transmitting entity and transmits acknowledgments (ACKs) to indicate the successful receipt of the data packets or negative acknowledgments (NACKs) to indicate that the data packets have not been successfully received from the transmitting entity. The term data packet used here may refer to RLC SDUs, which are individually acknowledged. Alternatively, the term data packet may refer to segments of the RLC SDUs, such as PDCP PDUs. Alternatively, the term data packet may refer to RLC PDUs.
It would be appreciated by the skilled person that the method 700 is provided as an example, and that in other examples, one or more steps of this method may be omitted.
At S710, the receiving entity transmits a status report to the transmitting entity. The status report may be referred to as a status PDU. The status report may comprise one or more ACKs of the receipt of data packets at the receiving entity. The status report may comprise one or more NACKs corresponding to data packets expected to be received from the  transmitting entity which, in whole or in part, were not received. The receiving entity may be configured to transmit ACKs or NACKs for data packets up to a sequence number limit. The sequence number limit may be referred to as RX_Highest_Status. This limit may be set to ensure that the status report is transmitted after HARQ reordering. However, as explained, in examples of the application, due to limited space, particularly in high data rate scenarios, it may not be possible to include all of the ACKs/NACKs of data packets up to the limit in the status report. Therefore, in this case, the receiving entity is configured to include in the status report ACKs/NACKs for data packets for which there is space in the first status report, even if the RX_Highest_Status limit isn’t reached, and to transmit the status report to the receiving entity.
At S720, a first timer is started. This timer may be referred to as a t-StatusProhibit timer.
At S730, it is determined whether or not the first timer has expired. In response to determining that the first timer has not expired, at S740, the receiving entity transmits to the transmitting entity ACKs/NACKs for unreported data packets. The ACKs/NACKs may be transmitted for data packets having a sequence number less or equal to the highest sequence number of data packets received prior to the starting of the timer. Therefore, data packets received after the starting of the timer, may not be acknowledged. However, data packets received at the receiving entity prior to the starting of the timer which were not included in the previous status report are acknowledged. Similarly data packets, which have not been received at the receiving entity, but which have a lower sequence number than a data packet received at the receiving entity prior to the starting of the timer are negatively acknowledged.
The unreported data packets are data packets for which an ACK or NACK has not been transmitted to the transmitting entity. The receiving entity may determine whether or not a data packet is unreported by examining a highest sequence number value included in the previous status report that has been sent to the transmitting entity. The highest sequence number value provides an, indication of the next sequence number of a data packet which was not reported as missing in the previous status report. The receiving entity at S740 may examine the highest sequence number value and transmit ACKs/NACKs for any data packets having equal to or a higher sequence number value. The receiving entity may transmit ACKs/NACKs for data packets having sequence numbers up to the limit.
By transmitting ACKs/NACKs for unreported data packets, the transmitting entity is able to receive the ACKs/NACKs and, in response, perform retransmissions of the NACKed  (negatively acknowledged) data packets. If the receiving entity had to wait until expiry of the first timer to begin transmission of the ACKs/NACKs, a delay would be caused in the re-transmission, since the transmitting entity would not be aware of the failure of the transmission of the relevant data packets until after the expiry of the timer.
After S740, if it is determined that the first timer has expired, the method proceeds to S750. At S750, it is determined that the second timer (e.g. t-Reassembly) has expired. At S760, in response to determining that this second timer has expired, the limit (e.g. RX_Highest_Status) stored by the receiving entity is updated. In response to determining that the limit has been updated, the method may proceed again to S710, where the receiving entity again transmits a further status report. Since the limit has been raised, the receiving entity is configured to transmit ACKs or NACKs for data packets having higher sequence numbers.
Reference is made to Figures 6a and 6b, which show examples of status reports which may be transmitted by the receiving entity to the transmitting entity. Figure 6a shows an example of a first status report 600, which may be transmitted when the first timer is not active. Figure 6b shows an example of a second status report 650, which may be transmitted subsequently when the first timer has become active.
Figure 6a shows a status report, having a header 605. The header contains the information (such as Control PDU Type field (CPT) ) necessary for decoding the status report 600 correctly at the transmitting entity. The status report 600 also comprises an ACK 610 indicating that data packets having sequence number less than = 4 which have not been negatively acknowledged have been successfully received at the receiving entity. In this example, the status report 600 contains no ACK or NACK for a first data packet having a sequence number = 1, However, the transmitting entity may be configured to interpret the ACK 610 f as acknowledging any data packets (including the first data packet, SN = 1) having a sequence number less than SN = 4, for which a NACK has not been received. Therefore, the status report 600 may be understood to ‘implicitly’ acknowledge the first data packet, even though an ACK with a sequence number = 1 is not included in the status report 600.
The status report 600 also comprises NACK 615 indicating that a third data packet (having a sequence number = 3) has not been successfully received at the receiving entity. In this case, all of the segments of the third data packet have not been received at the receiving entity and, therefore, the NACK 615 does not include an indication of which specific  segments have not been received, but simply indicates that the data packet as a whole has not been received by the receiving entity.
The status report 600 also comprises an NACK 620 indicating that one or more segments of a second data packet (having a sequence number = 2) have not been successfully received by the receiving entity. In this case, the NACK includes an indication of the particular segments of the data packet for which transmission has failed. If the segments for which transmission failed are in a continuous sequence, the NACK may contain an indication of the start of that sequence (SOstart) and the end of the sequence (SOend) . Hence, the transmitting entity may determine which segments of a data packet have not been successfully transmitted and may then re-transmit those segments only, rather than re-transmit the entire data packet.
Following the transmission of the status report 600, the receiving entity is configured to start the first timer. Until the expiry of the first timer, the receiving entity may transmit status reports including ACKs/NACKs for data packets for which no ACK or NACK has yet been transmitted (i.e. data packets which are unreported) . Such a status report is shown in Figure 6b.
Figure 6b shows a status report 650 having a header 655. The header 655 contains the information (such as Control PDU Type field (CPT) ) necessary for decoding the status report correctly at the transmitting entity. The status report 650 also comprises an ACK 660 indicating that data packets having sequence numbers less than 8 have been successfully received at the receiving entity. As in the first status report 600, the presence of the ACK may implicitly acknowledge data packets of a lower sequence number which have not been negatively acknowledged. Therefore, the ACK 660 may acknowledge to the transmitting entity, the receipt at the receiving entity of a fifth data packet (having a sequence number =5), since no NACK for the fifth data packet is included in the status report 650.
The status report 650 also includes NACK 665 indicating that a seventh data packet (having a sequence number = 7) has not been successfully received at the receiving entity. In this case, all of the segments of the seventh data packet have not been received at the receiving entity and, therefore, the NACK 665 does not include an indication of which specific segments have not been received, but simply indicates that the data packet as a whole has not been received by the receiving entity.
The status report 650 also includes a NACK 670 indicating that one or more segments of a sixth data packet (having a sequence number = 8) have not been successfully received by the receiving entity. In this case, the NACK 670 includes an indication of the particular segments of the data packet for which transmission has failed. If the segments for which transmission failed are in a continuous sequence, the NACK 670 may contain an indication of the start of that sequence (SOstart) and the end of the sequence (SOend) . Hence, the transmitting entity may determine which segments of a data packet have not been successfully transmitted and may then re-transmit those segments only, rather than re-transmit the entire data packet.
Figures 6a and 6b show that when the transmission of a continuous sequence of segments of a data packet fails, the amount of space required to communicate this in the status report may be reduced by including an indication of the start point and end point of the sequence. Similarly, when the transmission of a continuous sequence of data packets fails, this may indicated in the status report by indicating the start point and end point of the sequence. Reference is made to Figure 8, which illustrates this.
Figure 8 shows an example of a status report 800. The header 605, and NACK 615, and may substantially be the same as those shown in Figure 6a. The ACK 810 is an acknowledgment having SN = 9. The status report also includes a NACK 805 indicating the failed transmission of data packets having sequence numbers 5 to 8. The NACK 805, in this example, indicates these data packets by including a value (NACK_SN = 5) indicating the start of the range, and a value (NACK range) indicating the size of the range. In this example, NACK range = 3, indicating that there are 3 data packets having consecutive sequence numbers (i.e. SN = 6, 7, and 8) after the data packet with SN = 5, which are negatively acknowledged by the presence of this NACK 805 in the status report 800.
It should be understood that each block of the flowchart of Figure 7 and any combination thereof may be implemented by various means or their combinations, such as hardware, software, firmware, one or more processors and/or circuitry.
The method may be implemented on a mobile device as described with respect to Figure 2 or control apparatus as shown in Figure 3.
Control functions may comprise receiving a plurality of data packets; causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative  acknowledgments; and subsequently: starting a first timer; prior to expiry of the first timer: prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
It should be understood that the apparatuses may comprise or be coupled to other units or modules etc., such as radio parts or radio heads, used in or for transmission and/or reception. Although the apparatuses have been described as one entity, different modules and memory may be implemented in one or more physical or logical entities.
It is noted that whilst embodiments have been described in relation to LTE/LTE-Aand NR, similar principles can be applied in relation to other networks and communication systems. For example, the principles may be applies to devices operating using multi-connectivity. Therefore, although certain embodiments were described above by way of example with reference to certain example architectures for wireless networks, technologies and standards, embodiments may be applied to any other suitable forms of communication systems than those illustrated and described herein.
It is also noted herein that while the above describes example embodiments, there are several variations and modifications which may be made to the disclosed solution without departing from the scope of the present invention.
In general, the various embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. Some aspects of the invention may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the invention is not limited thereto. While various aspects of the invention may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.
The embodiments of this invention may be implemented by computer software executable by a data processor of the mobile device, such as in the processor entity, or by hardware, or by a combination of software and hardware. Computer software or program, also called  program product, including software routines, applets and/or macros, may be stored in any apparatus-readable data storage medium and they comprise program instructions to perform particular tasks. A computer program product may comprise one or more computer-executable components which, when the program is run, are configured to carry out embodiments. The one or more computer-executable components may be at least one software code or portions of it.
Further in this regard it should be noted that any blocks of the logic flow as in the figures may represent program steps, or interconnected logic circuits, blocks and functions, or a combination of program steps and logic circuits, blocks and functions. The software may be stored on such physical media as memory chips, or memory blocks implemented within the processor, magnetic media such as hard disk or floppy disks, and optical media such as for example DVD and the data variants thereof, CD. The physical media is a non-transitory media.
The memory may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The data processors may be of any type suitable to the local technical environment, and may comprise one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) , application specific integrated circuits (ASIC) , FPGA, gate level circuits and processors based on multi core processor architecture, as non-limiting examples.
Embodiments of the inventions may be practiced in various components such as integrated circuit modules. The design of integrated circuits is by and large a highly automated process. Complex and powerful software tools are available for converting a logic level design into a semiconductor circuit design ready to be etched and formed on a semiconductor substrate.
The foregoing description has provided by way of non-limiting examples a full and informative description of the exemplary embodiment of this invention. However, various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings and the appended claims. However, all such and similar modifications of the teachings of this invention will still fall within the scope of this invention as defined in the appended claims. Indeed there is a further embodiment comprising a combination of one or more embodiments with any of the other embodiments previously discussed.

Claims (15)

  1. A method comprising:
    receiving a plurality of data packets;
    causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently:
    starting a first timer;
    prior to expiry of the first timer:
    prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; and
    permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
  2. A method as claimed in claim 1, comprising prior to expiry of the first timer: prohibiting the transmission of negative acknowledgments for data packets having a higher sequence number than any of the plurality of data packets received prior to the starting of the first timer.
  3. A method as claimed in any preceding claim, comprising, prior to expiry of the first timer: permitting the transmission of negative acknowledgments having a lower sequence number than any of the plurality of data packets received prior to the starting of the first timer.
  4. A method as claimed in any preceding claim, prohibiting the transmission of acknowledgments for data packets received after the starting of the first timer.
  5. A method as claimed in any preceding claim, comprising determining a highest sequence number of the one or more data packets for which acknowledgments and negative acknowledgments are included in the first status report.
  6. A method as claimed in claim 5, wherein the prohibiting the further transmission comprises: prohibiting the transmission of an acknowledgment or negative acknowledgment for any data packet having a sequence number less than or equal to the highest sequence number.
  7. A method as claimed in any of claims 5 to 6, wherein the permitting the transmission comprises permitting the transmission of at least one of acknowledgments or negative acknowledgments for any data packet having a sequence number greater than the highest sequence number.
  8. A method as claimed in any preceding claim, wherein the transmission of at least one of acknowledgments or negative acknowledgements for one or more data packets prior to expiry of the first timer comprises transmitting at least one of acknowledgments or negative acknowledgments for one or more data packets having a sequence number less than a first limit.
  9. A method as claimed in claim 7, comprising increasing the first limit after expiry of a second timer.
  10. A method as claimed in any preceding claim, wherein transmission of negative acknowledgements comprises:
    transmitting in a status report a negative acknowledgment comprising a sequence number of a data packet which has not been received.
  11. A method as claimed in any preceding claim, wherein transmission of negative acknowledgements comprises:
    transmitting in a status report, a negative acknowledgment comprising an indication of one or more segments of a partially received data packet which have not been received.
  12. A method as claimed in a claim 11, wherein the indication of one or more segments comprises an indication of a start point and an end point of a continuous set of segments in the data packet which have not been received.
  13. A computer program product for a computer, comprising software code portions for performing the steps of any of claims 1 to 12 when said product is run on the computer.
  14. An apparatus comprising:
    at least one processor and at least one memory including a computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to: receive a plurality of data packets;
    cause the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently:
    start a first timer;
    prior to expiry of the first timer:
    prohibit further transmission of acknowledgments and negative acknowledgments included in the first status report; and
    permit the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
  15. A computer program embodied on a non-transitory computer-readable storage medium, the computer program comprising program code for controlling a process to execute a process, the process comprising: receiving a plurality of data packets;
    causing the transmission of a first status report, the first status report including at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgments; and subsequently:
    starting a first timer;
    prior to expiry of the first timer:
    prohibiting further transmission of acknowledgments and negative acknowledgments included in the first status report; and
    permitting the transmission of at least one of acknowledgments for one or more of the plurality of data packets and negative acknowledgements not included in the first status report.
PCT/CN2017/111420 2017-11-16 2017-11-16 Method, apparatus and computer program WO2019095228A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201780096924.8A CN111357223B (en) 2017-11-16 2017-11-16 Communication method, device and computer readable storage medium
PCT/CN2017/111420 WO2019095228A1 (en) 2017-11-16 2017-11-16 Method, apparatus and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/111420 WO2019095228A1 (en) 2017-11-16 2017-11-16 Method, apparatus and computer program

Publications (1)

Publication Number Publication Date
WO2019095228A1 true WO2019095228A1 (en) 2019-05-23

Family

ID=66539283

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/111420 WO2019095228A1 (en) 2017-11-16 2017-11-16 Method, apparatus and computer program

Country Status (2)

Country Link
CN (1) CN111357223B (en)
WO (1) WO2019095228A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113348695A (en) * 2021-04-27 2021-09-03 北京小米移动软件有限公司 Method and device for generating status report, setting timer and configuring information

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090181703A1 (en) * 2008-01-10 2009-07-16 Sam Shiaw-Shiang Jiang Method and Apparatus for Triggering Status Report in a Wireless Communications System
CN107148762A (en) * 2014-10-31 2017-09-08 高通股份有限公司 Forbid timer for partial status report come disabled status

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1154190A (en) * 1995-05-09 1997-07-09 诺基亚电信公司 Non-transparent data transmission in a digital telecommunications system
GB9625373D0 (en) * 1996-12-06 1997-01-22 Philips Electronics Nv Method of, and system for, transmitting messages
KR20090017699A (en) * 2006-06-20 2009-02-18 가부시키가이샤 엔티티 도코모 Radio communication device and method used in mobile communication system
US9065545B2 (en) * 2012-03-12 2015-06-23 Blackberry Limited Handling scheduling request collisions with an ACK/NACK repetition signal
CN102868504A (en) * 2012-08-24 2013-01-09 中兴通讯股份有限公司 Method for sending status report and radio link control (RLC) receiving entity
ES2669718T3 (en) * 2014-02-26 2018-05-29 Mediatek Inc. Method and apparatus for triggering acknowledgment status report in wireless communications system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090181703A1 (en) * 2008-01-10 2009-07-16 Sam Shiaw-Shiang Jiang Method and Apparatus for Triggering Status Report in a Wireless Communications System
CN107148762A (en) * 2014-10-31 2017-09-08 高通股份有限公司 Forbid timer for partial status report come disabled status

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113348695A (en) * 2021-04-27 2021-09-03 北京小米移动软件有限公司 Method and device for generating status report, setting timer and configuring information
CN113348695B (en) * 2021-04-27 2023-09-26 北京小米移动软件有限公司 Method and device for generating status report, setting timer and information configuration

Also Published As

Publication number Publication date
CN111357223A (en) 2020-06-30
CN111357223B (en) 2022-09-13

Similar Documents

Publication Publication Date Title
CN111566971B (en) System and method for reliable transmission over network resources
US11343671B2 (en) Handling of PDCP duplication and data recovery in new radio access technology
JP6139490B2 (en) MAC and RLC architecture and procedures that allow reception from multiple transmission points
US20200280882A1 (en) Methods, apparatuses and computer program product for pdu formatting according to sdu segmentation
CN111373679A (en) Novel radio data transmission using low density parity check codes
US10313063B2 (en) Method, system and apparatus
US20190173623A1 (en) Reallocation of control channel resources for retransmission of data in wireless networks based on communications mode
US11711167B2 (en) Apparatus, method and computer program
WO2020223846A1 (en) Sidelink data packet acknowledgment
US20220140957A1 (en) HARQ Feedback Technique for Communication Systems
CN111357223B (en) Communication method, device and computer readable storage medium
GB2496171A (en) Delay timer to prevent unnecessary data block retransmissions in systems experiencing skew
WO2017075832A1 (en) Method and device for transmitting downlink data packet and uplink data packet
US11968683B2 (en) Apparatus, method and computer program
US20210219330A1 (en) Apparatus, method and computer program
WO2018232627A1 (en) Communication apparatus, method and computer program
CN116530201A (en) Method and device for logic channel aggregation
EP4144010A2 (en) Methods and apparatus for efficient packet transmission
WO2016041574A1 (en) Detection of a transmission error in a wireless network

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

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

Country of ref document: EP

Kind code of ref document: A1