Method and apparatus for improving quality of experience in the event of dropped or delayed packets

The method addresses packet drops in communication systems by analyzing data streams and performing corrective actions to ensure successful uplink transmission, maintaining service quality and avoiding inaccurate KPIs.

JP2025529804AActive Publication Date: 2025-09-09RAKUTEN SYMPHONY INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2025508828
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-09-09
Publication Date
2025-09-09
Estimated Expiration
2042-09-09

AI Technical Summary

Technical Problem

Packets are frequently dropped during uplink operations in communication systems due to network congestion, hardware malfunctions, or insufficient hardware, leading to poor service quality, incorrect decoding, and UE attachment failures.

Method used

A method and apparatus for handling dropped or delayed packets by analyzing data streams to identify missing packets and performing corrective actions, such as data copying or zeroing, to ensure successful uplink transmission.

Benefits of technology

Prevents performance degradation by recovering lost packets, maintaining quality of service, and avoiding inaccurate Key Performance Indicator declarations, even when some packets are lost.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025529804000001_ABST
    Figure 2025529804000001_ABST
Patent Text Reader

Abstract

The method is executed by at least one processor in a network node operating in a wireless communication network. The method includes receiving, from at least one user equipment (UE), a data stream including one or more data packets associated with uplink transmission between the UE and the network node. The method further includes analyzing the data stream to determine whether the at least one UE transmitted one or more data packets that are not received by the network node. The method further includes performing corrective action on the data stream in response to determining that the at least one UE transmitted one or more data packets that are not received by the network node. The method further includes completing the uplink transmission based on the data stream after the corrective action is performed.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates generally to communication systems, and more particularly to methods and apparatus for handling dropped or delayed packets. [Background technology]

[0002] The first uplink operation of an Open Random Access Network (ORAN) base station (gNB / ODU) is to process incoming packets to the CU plane. Packets are likely to be dropped due to network congestion, hardware malfunctions, insufficient hardware, or network transport characteristics, resulting in poor service for users. Packet drops in the system can lead to incorrect decoding behavior and UE attachment failures in the case of the Physical Random Access Channel (PRACH) (the UE sees this as a Radio Link Failure (RLF) for a Physical Uplink Shared Channel (PUSCH) failure, poor uplink control information (UCI) on the PUSCH, and poor throughput for a Physical Uplink Control Channel (PUCCH) failure). Summary of the Invention [Problem to be solved by the invention]

[0003] Improvements are presented here that are also applicable to other multiple access technologies and communication standards that employ these technologies. [Means for solving the problem]

[0004] The following presents a simplified summary of one or more embodiments of the present disclosure in order to provide a basic understanding of such embodiments. This summary is not an exhaustive overview of all possible embodiments, nor is it intended to identify key or critical elements of all embodiments, nor is it intended to delineate the scope of any or all embodiments. Its sole purpose is to present some concepts of one or more embodiments of the present disclosure in a simplified form as a prelude to the more detailed description that is presented later.

[0005] A method, apparatus, and non-transitory computer-readable medium for handling dropped or delayed packets are presented.

[0006] According to an example embodiment, a method is performed by at least one processor in a network node operating in a wireless communication network. The method includes receiving, from at least one user equipment (UE), a data stream including one or more data packets associated with uplink transmission between the UE and the network node. The method further includes analyzing the data stream to determine whether the at least one UE transmitted one or more data packets that are not received by the network node. The method further includes performing corrective action on the data stream in response to determining that the at least one UE transmitted one or more data packets that are not received by the network node. The method further includes completing the uplink transmission based on the data stream after the corrective action is performed.

[0007] According to an exemplary embodiment, a network node operating in a wireless communication network includes at least one memory configured to store computer program code and at least one processor configured to access the at least one memory and operate as directed by the computer program code. The computer program code includes receiving code configured to cause at least one of the at least one processor to receive, from at least one user equipment (UE), a data stream including one or more data packets associated with uplink transmission between the UE and the network node. The computer program code further includes analysis code configured to cause at least one of the at least one processor to analyze the data stream to determine whether the at least one UE has transmitted one or more data packets that are not received by the network node. The computer program code further includes execution code configured to cause at least one of the at least one processor to perform corrective action on the data stream in response to determining that the at least one UE has transmitted one or more data packets that are not received by the network node. The computer program code further includes completion code configured to cause at least one of the at least one processor to complete the uplink transmission based on the data stream after the corrective action has been performed.

[0008] According to an example embodiment, a non-transitory computer-readable medium has stored thereon instructions that, when executed by a processor in a network node operating in a wireless communication network, cause the processor to perform a method including receiving, from at least one user equipment (UE), a data stream including one or more data packets associated with uplink transmission between the UE and the network node. The method further includes analyzing the data stream to determine whether the at least one UE transmitted one or more data packets that are not received by the network node. The method further includes performing corrective action on the data stream in response to determining that the at least one UE transmitted one or more data packets that are not received by the network node. The method further includes completing the uplink transmission based on the data stream after the corrective action is performed.

[0009] Additional embodiments will be set forth in the description that follows, and in part will be obvious from the description and / or may be learned by practice of the presently disclosed embodiments. [Brief explanation of the drawings]

[0010] These and other aspects, features, and aspects of the disclosed embodiments will become apparent from the following description taken in conjunction with the accompanying drawings.

[0011] FIG. 1 is a diagram of an example network device, according to various embodiments of the present disclosure.

[0012] FIG. 2 is a schematic diagram of an example wireless communication system, according to various embodiments of the present disclosure.

[0013] FIG. 3 illustrates a stream of data packets and associated sequence numbering, according to various embodiments of the present disclosure.

[0014] 4A-4D illustrate examples of data packet transmissions according to various embodiments of the present disclosure.

[0015] 5A and 5B illustrate examples of received data streams according to various embodiments of the present disclosure.

[0016] 6A and 6B illustrate examples of received data streams according to various embodiments of the present disclosure.

[0017] FIG. 7 is a flow chart of an example process for handling dropped or delayed packets. DETAILED DESCRIPTION OF THE INVENTION

[0018] The following detailed description of the embodiments refers to the accompanying drawings, in which the same reference numbers in different drawings may identify the same or similar elements.

[0019] The foregoing disclosure provides illustrations and descriptions, but is not intended to be exhaustive or to limit implementations to the precise form disclosed. Modifications and variations are possible in light of the foregoing disclosure or may be acquired from practice of the implementations. Furthermore, one or more features or components of one embodiment may be combined or combined with other embodiments (or one or more features of other embodiments). Additionally, in the flowcharts and operational descriptions provided below, it is understood that one or more operations may be omitted, one or more operations may be added, one or more operations may be performed concurrently (at least in part), and the order of one or more operations may be rearranged.

[0020] It will be apparent that the systems and / or methods described herein may be implemented in different forms of hardware, firmware, or a combination of hardware and software. The actual specific control hardware or software code used to implement these systems and / or methods is not a limitation of the implementation. Thus, the operation and behavior of the systems and / or methods are described herein without reference to specific software code. It will be understood that software and hardware may be designed to implement the systems and / or methods based on the description herein.

[0021] Although particular feature combinations are recited in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of possible implementations. Indeed, many of these features may be combined in ways other than those specifically recited in the claims and / or specifically disclosed in the specification. Although each dependent claim listed below may depend directly on only one claim, the disclosure of possible implementations includes each dependent claim in combination with all other claims in the claim group.

[0022] No element, act, or instruction used herein should be construed as critical or required unless explicitly stated otherwise. Also, as used herein, the articles "a" and "an" are intended to include one or more items and may be used interchangeably with "one or more." Where only one item is intended, the term "one" or similar words are used. Also, as used herein, the terms "has," "have," "having," "include," "including," etc. are intended to be open-ended terms. Furthermore, the phrase "based on" is intended to mean "based, at least in part, on," unless expressly stated otherwise. Furthermore, phrases such as "at least one of A and B" or "at least one of A or B" are understood to include A only, B only, or both A and B.

[0023] Throughout this specification, references to "one embodiment," "an embodiment," or similar language mean that a particular feature, structure, or characteristic described in connection with the illustrated embodiment is included in at least one embodiment of the solution. Thus, throughout this specification, the phrases "in one embodiment," "in one embodiment," and similar language do not necessarily all refer to the same embodiment.

[0024] Furthermore, the described features, advantages, and characteristics of the present disclosure may be combined in any suitable manner in one or more embodiments. Those skilled in the art will recognize, in light of the description herein, that the present disclosure may be practiced without one or more of the specific features or advantages of a particular embodiment. In other instances, additional features and advantages may be realized in a particular embodiment that may not be present in all embodiments of the present disclosure.

[0025] The embodiments are directed to handling packets that are lost or delayed during transmission to a network node, such as a base station. The embodiments provide a significant advantage of preventing performance degradation even when some packets are lost by recovering them to maintain quality of service for customers and avoid inaccurate Key Performance Indicator (KPI) declarations. When multiple streams are received, the embodiments manage data decoding even when only a single stream of the multiple streams is received. As a result, the embodiments eliminate the need to receive data from all streams in the event of packet drops. To achieve these advantages, robust mechanisms are added in the CU and user plane to ensure that data is decoded even when one or more packets are lost. When the code rate is relatively low, as in any real-time network, the network node can still decode the signal even when several sections of data are lost.

[0026] 1 is a diagram of an example device for performing translation services. Device 100 may correspond to any type of known computer, server, or data processing device. For example, device 100 may comprise a printed circuit board (PCB) with a processor, a personal computer (PC), or a computing device, a minicomputer, a mainframe computer, a microcomputer, a telephone computing device, a wired / wireless computing device (e.g., a smartphone, a personal digital assistant (PDA)), a laptop, a tablet, a smart device, or any other similarly functional device.

[0027] In some embodiments, as shown in FIG. 1, device 100 may include a set of components such as a processor 120, a memory 130, a storage component 140, an input component 150, an output component 160, and a communication interface 170.

[0028] Bus 110 may comprise one or more components that enable communication between a set of components of device 100. For example, bus 110 may be a communications bus, a crossover bar, a network, etc. Although bus 110 is depicted in FIG. 1 as a single line, bus 110 may be implemented using multiple (two or more) connections between a set of components of device 100. The disclosure is not limited in this respect.

[0029] Device 100 may include one or more processors, such as processor 120. Processor 120 may be implemented in hardware, firmware, and / or a combination of hardware and software. For example, processor 120 may comprise a central processing unit (CPU), graphics processing unit (GPU), accelerated processing unit (APU), microprocessor, microcontroller, digital signal processor (DSP), field-programmable gate array (FPGA), application-specific integrated circuit (ASIC), general-purpose single-chip or multi-chip processor, or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, or any conventional processor, controller, microcontroller, or state machine. Processor 120 may also be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors with a DSP core, or any other such configuration. In some embodiments, particular processes and methods may be performed by circuitry specialized for a given function.

[0030] Processor 120 may control the overall operation of device 100 and / or a set of components of device 100 (eg, memory 130, storage component 140, input component 150, output component 160, communication interface 170).

[0031] Device 100 may further comprise memory 130. In some embodiments, memory 130 may comprise random access memory (RAM), read-only memory (ROM), electrically erasable programmable ROM (EEPROM), flash memory, magnetic memory, optical memory, and / or other types of dynamic or static storage devices. Memory 130 may store information and / or instructions for use (e.g., execution) by processor 120.

[0032] Storage component 140 of device 100 may store information and / or computer-readable instructions and / or code related to the operation and use of device 100. For example, storage component 140 may include a hard disk (e.g., a magnetic disk, optical disk, magneto-optical disk, and / or solid-state disk), a compact disk (CD), a digital versatile disk (DVD), a universal serial bus (USB) flash drive, a Personal Computer Memory Card International Association (PCMCIA) card, a floppy disk, a cartridge, a magnetic tape, and / or other type of non-transitory computer-readable medium, along with a corresponding drive.

[0033] Device 100 may further include input component 150. Input component 150 may include one or more components that enable device 100 to receive information, such as via user input (e.g., a touchscreen, a keyboard, a keypad, a mouse, a stylus, a button, a switch, a microphone, a camera, etc.). Alternatively or additionally, input component 150 may include sensors for measuring information (e.g., a global positioning system (GPS) component, an accelerometer, a gyroscope, an actuator, etc.).

[0034] Output components 160 of device 100 may include one or more components that may provide output information from device 100 (e.g., a display, a liquid crystal display (LCD), a light emitting diode (LED), an organic light emitting diode (OLED), a haptic feedback device, a speaker, etc.).

[0035] Device 100 may further comprise a communication interface 170. Communication interface 170 may include a receiver component, a transmitter component, and / or a transceiver component. Communication interface 170 may enable device 100 to establish connections with and / or transfer communications to other devices (e.g., servers, other devices). Communication may be enabled via a wired connection, a wireless connection, or a combination of wired and wireless connections. Communication interface 170 may enable device 100 to receive information from and / or provide information to other devices. In some embodiments, communication interface 170 may provide for communication with other devices over a network (such as a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), a private network, an ad hoc network, an intranet, the Internet, an optical fiber-based network, a cellular network (e.g., a fifth-generation (5G) network, a long-term evolution (LTE) network, a third-generation (3G) network, a code division multiple access (CDMA) network, etc.), a public land mobile network (PLMN), a telephone network (e.g., a public switched telephone network (PSTN), etc., and / or a combination of these or other types of networks). Alternatively or additionally, communication interface 170 may provide for communication with other devices over a device-to-device (D2D) communication link, such as FlashLinQ, WiMedia, Bluetooth, ZigBee, Wi-Fi, LTE, 5G, etc. In other embodiments, communication interface 170 may include an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, a radio frequency (RF) interface, etc.

[0036] Device 100 may be included in core network 240 and may perform one or more processes described herein. Device 100 may perform operations based on processor 120 executing computer-readable instructions and / or code that may be stored by a non-transitory computer-readable medium, such as memory 130 and / or storage component 140. A computer-readable medium may represent a non-transitory memory device. A memory device may include memory space within a single physical storage device and / or memory space distributed across multiple physical storage devices.

[0037] Computer-readable instructions and / or code may be loaded into memory 130 and / or storage component 140 from other computer-readable media or from other devices via communication interface 170. The computer-readable instructions and / or code stored in memory 130 and / or storage component 140, when or when executed by processor 120, may cause device 100 to perform one or more processes described herein.

[0038] Alternatively or additionally, hardwired circuitry may be used in place of, or in combination with, software instructions to implement one or more processes described herein. Thus, the embodiments described herein are not limited to any specific combination of hardware circuitry and software.

[0039] The number and arrangement of components shown in Figure 1 are provided as an example. In practice, additional, fewer, different, or differently arranged components may be provided than those shown in Figure 1. Furthermore, two or more components shown in Figure 1 may be implemented within a single component, or a single component shown in Figure 1 may be implemented as multiple distributed components. Additionally or alternatively, a set or sets of components shown in Figure 1 may perform one or more functions described as being performed by other sets of components shown in Figure 1.

[0040] 2 illustrates an example wireless communication system 200, according to various embodiments of the present disclosure. The wireless communication system 200 (which may be referred to as a wireless wide area network (WWAN)) may include one or more user equipments (UEs) 210, one or more base stations 220, at least one transport network 230, and at least one core network 240. The device 100 (FIG. 1) may be integrated into the UE 210 or the base station 220.

[0041] One or more UEs 210 may access at least one core network 240 and / or IP services 250 via a connection to one or more base stations 220 over the RAN domain 224 and through at least one transport network 230. Examples of UEs 210 may include a cellular phone, a smartphone, a Session Initiation Protocol (SIP) phone, a laptop, a personal digital assistant (PDA), a satellite radio, a global positioning system (GPS), a multimedia device, a video device, a digital audio player (e.g., an MP3 player), a camera, a game console, a tablet, a smart device, a wearable device, a vehicle, an electric meter, a gas pump, a large or small kitchen appliance, a healthcare device, an implant, a sensor / actuator, a display, or any other similarly functioning device. Some of the one or more UEs 210 may be referred to as Internet-of-Things (IoT) devices (e.g., a parking meter, a gas pump, a toaster, a vehicle, a heart monitor, etc.). One or more UEs 210 may be referred to as a station, mobile station, subscriber station, mobile unit, subscriber unit, wireless unit, remote unit, mobile device, wireless device, wireless communication device, remote device, mobile subscriber station, access terminal, mobile terminal, wireless terminal, remote terminal, handset, user agent, mobile agent, client, or some other suitable terminology.

[0042] One or more base stations 220 may communicate wirelessly with one or more UEs 210 over the RAN domain 224. Each base station of the one or more base stations 220 may provide communication coverage for one or more UEs 210 located within the geographic coverage area of ​​the base station 220. In some embodiments, as shown in FIG. 2, a base station 220 may transmit one or more beamformed signals to one or more UEs 210 in one or more transmit directions. One or more UEs 210 may receive the beamformed signals from the base station 220 in one or more receive directions. Alternatively or additionally, one or more UEs 210 may transmit beamformed signals to the base station 220 in one or more transmit directions. The base station 220 may receive the beamformed signals from one or more UEs 210 in one or more receive directions.

[0043] One or more base stations 220 may include macrocells (e.g., high-power cellular base stations) and / or small cells (e.g., low-power cellular base stations). Small cells may include femtocells, picocells, and microcells. A base station 220 that is a macrocell or a large cell may include and / or may be referred to as an access point (AP), an evolved (or evolved universal terrestrial radio access network (E-UTRAN)) Node B (eNB), a next-generation Node B (gNB), or any other type of base station known to those skilled in the art.

[0044] One or more base stations 220 may be configured to interface (e.g., establish connections, transfer data, etc.) with at least one core network 240 through at least one transport network 230. In addition to other functions, one or more base stations 220 may perform one or more of the following functions: forwarding data (e.g., uplink data) received from one or more UEs 210 to at least one core network 240 via at least one transport network 230, and forwarding data (e.g., downlink data) received from at least one core network 240 to one or more UEs 210 via at least one transport network 230.

[0045] The transport network 230 may transport data (e.g., uplink data, downlink data) and / or signaling between the RAN domain 224 and the CN domain 244. For example, the transport network 230 may provide one or more backhaul links between one or more base stations 220 and at least one core network 240. The backhaul links may be wired or wireless.

[0046] The core network 240 may be configured to provide one or more services (e.g., enhanced mobile broadband (eMBB), ultra-reliable low-latency communications (URLLC), massive machine type communications (mMTC), etc.) to one or more UEs 210 connected to the RAN domain 224 via the TN domain 234. As an example, the core network 240 performs translation services. Alternatively or additionally, the core network 240 may serve as an entry point for IP services 250. The IP services 250 may include the Internet, an intranet, an IP multimedia subsystem (IMS), streaming services (e.g., video, audio, gaming, etc.), and / or other IP services.

[0047] In some embodiments, a packet may be determined to be dropped or delayed based on a sequence number associated with the packet. For example, a UE may be determined to have transmitted a dropped or delayed packet when the packet is received out of sequence at a base station. The "RX_SEQID_ERR_C" parameter may be used as the sequence ID. FIG. 3 illustrates an example of a data stream 300 having an associated sequence ID. As an example, data stream 300 may be received by network node 220 (FIG. 2). For example, a first packet has a sequence number "Data_SQ1" and a second packet has a sequence number "Data_SQ2." As illustrated in FIG. 3, packets having sequence numbers "Data_SQ2" and "Data_SQ4" are received consecutively. Therefore, based on this received sequence, network node 220 may determine that a packet having sequence "Data_SQ3" has been dropped or lost.

[0048] According to some embodiments, the data stream transmitted from the UE 210 to the network node 220 corresponds to a PRACH preamble sequence transmitted via a PRACH process for uplink synchronization with the wireless communication network. In some embodiments, the data stream transmitted from the UE 210 to the network node 220 corresponds to uplink control information on a PUCCH. In some embodiments, the data stream transmitted from the UE 210 to the network node 220 corresponds to uplink data on a PUSCH.

[0049] 4A shows an example of a data stream transmitted from a UE 210 to a network node 220. The network node 220 may include multiple antennas, such as antennas 220A, 220B, 220C, and 220D. As illustrated in FIG. 4A, non-repeated data streams are transmitted to the network node 220. The data streams may be transmitted on respective beams corresponding to each antenna of the network node 220. In this manner, the network node 220 receives a respective data stream for each antenna.

[0050] FIG. 4B illustrates an example of a data stream with N repetitions transmitted to a network node 220 having antennas 220A, 220B, 220C, and 220D. Each antenna of the network node 220 may receive each repetition. For example, antenna 220A receives each of the repetitions "Data_1" through "Data_N." FIG. 4C illustrates an example of a data stream transmitted from a UE 210 to a network node 220, where the network node 220 includes a single antenna 220A. FIG. 4D illustrates an example of a data stream with N repetitions transmitted to a network node 220, where the network node 220 includes a single antenna 220A.

[0051] With reference to FIG. 4A, in the case of dropped packets for a PRACH where (i) UE 210 may not be admitted to the network and (ii) there are multiple streams (e.g., antennas 220A-220D) without repetition, when one of the data streams is lost, data from the stream that was received first may be duplicated or zeroed out on all other streams. For example, FIG. 5A illustrates streams "Stream_1," "Stream_2," "Stream_3," and "Stream_4," which may correspond to antennas 220A, 220B, 220C, and 220D, respectively. As illustrated in FIG. 5A, data streams are received on "Stream_1," "Stream_3," and "Stream_4." However, data was not properly received on "Stream_2."

[0052] In some embodiments, data that is properly received on one stream is copied to the stream that did not receive the data. For example, in FIG. 5A , data received on “Stream_1” is copied to “Stream_2.” Data from streams “Stream_3” and “Stream_4” may also be copied to “Stream_2.” In some embodiments, data that is properly received on one stream is copied to all other streams. For example, in FIG. 5A , data from “Stream_1” is copied to “Stream_2,” “Stream_3,” and “Stream_4.” In some embodiments, streams that did not properly receive data are zeroed. For example, in FIG. 5A , “Stream_2” is zeroed. Based on these embodiments, packets transmitted from UE 210 to network node 220 can be decoded even if packets are lost. Referring to FIG. 5A , for example, if data from “Stream_2” were used, incorrect decoding of the PRACH would occur because incorrect data would be available in the buffer.

[0053] With reference to FIG. 4B, in the case of a dropped packet for a PRACH where (i) the UE 210 may not be admitted to the network and (ii) there are multiple streams (e.g., antennas 220A-220D) with repetitions (e.g., "Data_1," "Data_2," ..., "Data_N"), multiple U-planes may be received. In some embodiments, for the PRACH, the number of repetitions N is 12. If a U-plane is lost, the lost repetitions may be zeroed or may not be used during data combination. For example, FIG. 5B illustrates streams "Stream_1," "Stream_2," "Stream_3," and "Stream_4," which may correspond to antennas 220A, 220B, 220C, and 220D, respectively. As illustrated in FIG. 5A, data streams with each repetition (e.g., "Data_1," "Data_2," ..., "Data_N") are received on "Stream_1," "Stream_3," and "Stream_4." However, the data was not properly received on "Stream_2." At this point, "Stream_2" repeatedly did not properly receive "Data_2."

[0054] In some embodiments, the missing repeats are zeroed. For example, in FIG. 5B, the repeat "Data_2" on "Stream_2" is zeroed, or all repeats on "Stream_2" are zeroed. In some embodiments, the missing repeats are not used while combining the received data. For example, in FIG. 5B, the repeat "Data_2" on "Stream_2" is not used while combining the data, or all repeats on "Stream_2" are not used. In some embodiments, data repeats that were properly received on one stream are copied to streams that did not properly receive the repeats. For example, in FIG. 5B, data repeats "Data_1," "Data_2," ..., "Data_N" from "Stream_1" are copied to "Stream_2." In some embodiments, data repeats that were properly received on one stream are copied to all other streams. For example, in FIG. 5B, data repeats "Data_1," "Data_2," ..., "Data_N" from "Stream_1" are copied to "Stream_2," "Stream_3," and "Stream_4." Referring to FIG. 5B, for example, if the repeated "Data_2" from "Stream_2" is used, incorrect decoding of the PRACH will occur because incorrect data is available in the buffer.

[0055] Referring to FIG. 4C, in the case of dropped packets for a PRACH, (i) the UE 210 may not be admitted to the network, and (ii) there is one stream (e.g., antenna 220A) without repetition, a scenario in which all packets are lost may occur. In some embodiments, if all packets are lost, corrective action may be taken at the media access control (MAC) layer to recognize this error and indicate it as an infrastructure error rather than an error related to normal operation. This procedure ensures that inaccurate KPIs are not reported. For example, in FIG. 6A, because there is only one stream, if a data stream is lost, no data is properly received at the network node 220. Therefore, if data is not received, corrective action may be taken at the MAC layer.

[0056] With reference to FIG. 4D, in the case of a dropped packet for a PRACH where (i) the UE 210 may not be admitted to the network, and (ii) there is one stream (e.g., antenna 220A) with repetitions (e.g., "Data_1," "Data_2," ..., "Data_N"), multiple U-planes may be received. If a U-plane is lost, the lost repetition may be zeroed or may not be used while combining the received data repetitions. For example, in FIG. 6B, data repetition "Data_2" was not properly received. In some embodiments, "Data_2" may be zeroed or may not be used while combining the data repetitions.

[0057] With reference to FIG. 4A, in the case of dropped packets for PUSCH / PUCCH where (i) control information may not be decoded and (ii) there are multiple streams, UL data may be received on each stream. If one data stream is lost, data from one stream may be copied to the stream where data was not properly received, or the data that was not properly received may be zeroed out. For example, in FIG. 5A, data streams are received on "Stream_1," "Stream_3," and "Stream_4." However, data was not properly received on "Stream_2."

[0058] In some embodiments, data that is properly received on one stream is copied to the streams that did not receive the data. For example, in FIG. 5A , data received on "Stream_1" is copied to "Stream_2." In some embodiments, data that is properly received on one stream is copied to all other streams. For example, in FIG. 5A , data from "Stream_1" is copied to "Stream_2," "Stream_3," and "Stream_4." In some embodiments, streams that did not properly receive data are zeroed. For example, in FIG. 5A , "Stream_2" is zeroed. Based on these embodiments, packets sent from the UE 210 to the network node 220 can be decoded even if packets are lost.

[0059] 7 illustrates a flowchart of one embodiment of a process for handling lost or delayed packets. The process may begin at step S700, where a data stream including one or more packets associated with an uplink transmission is received. The process proceeds to step S702, where it is determined whether a packet from the data stream has been lost or delayed. For example, sequence numbers of received packets may be analyzed to determine whether a packet has been lost or delayed.

[0060] If it is determined that no packets are delayed or lost, the process proceeds to step S704, where uplink transmission is completed based on the received data stream. If it is determined that packets are lost or lost, the process proceeds to step S706, where corrective action is performed on the data stream. For example, if there are multiple streams, data from other streams may be copied to the stream that did not properly receive data. As another example, if there are multiple streams, the stream that did not properly receive data may be zeroed or not used during combining. The process proceeds to step S708, where uplink transmission is completed based on the data stream after corrective action is performed. As part of completing uplink transmission, received data may be combined. For example, with reference to FIG. 4A, data received on each stream may be combined. With reference to FIG. 4B, each received data repetition on each stream may be combined. The process illustrated in FIG. 7 may be completed after step S704 or step S708 is performed.

[0061] The foregoing disclosure provides illustration and description, but is not intended to be exhaustive or to limit implementations to the precise form disclosed. Modifications and variations are possible in light of the above disclosure or may be acquired from practice of the implementations.

[0062] It is understood that the specific order or hierarchy of the blocks in the processes / flowcharts disclosed herein is illustrative of example approaches. Based on design preferences, it is understood that the specific order or hierarchy of the blocks in the processes / flowcharts may be rearranged. Furthermore, some blocks may be combined or omitted. The accompanying method claims present elements of the various blocks in a sample order and are not intended to be limited to the specific order or hierarchy presented.

[0063] Some embodiments may relate to systems, methods, and / or computer-readable media at any possible level of technical detail of integration. Furthermore, one or more of the above-described components may be implemented as instructions stored on a computer-readable medium and executable by at least one processor (and / or may include at least one processor). The computer-readable medium may include a computer-readable non-transitory storage medium (or medium) having computer-readable program instructions stored thereon for causing a processor to perform operations.

[0064] A computer-readable storage medium may be a tangible device that can hold and store instructions for use by an instruction execution device. The computer-readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof. A non-exhaustive list of more specific examples of computer-readable storage media includes the following: portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory sticks, floppy disks, mechanically encoded devices such as punch cards or raised structures in grooves in which instructions are recorded, and any suitable combination thereof. As used herein, computer-readable storage medium is not to be understood as a transitory signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse passing through a fiber optic cable), or an electrical signal transmitted over a wire.

[0065] The computer-readable program instructions described herein may be downloaded from a computer-readable storage medium into each computing / processing device, or may be downloaded to an external computer or external storage device over a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and transfers the computer-readable program instructions for storage in a computer-readable storage medium within the respective computing / processing device.

[0066] The computer-readable program code / instructions for carrying out operations may be assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, configuration data for an integrated circuit, or source or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk, C++, and procedural programming languages ​​such as the "C" programming language, or similar programming languages. The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, partially on the user's computer, partially on a remote computer, or entirely on a remote computer or server, as a standalone software package. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be to an external computer (e.g., through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, a programmable logic circuit, a field-programmable gate array (FPGA), or a programmable logic array (PLA), may execute computer-readable program instructions by utilizing state information of the computer-readable program instructions to personalize the electronic circuitry to perform a certain aspect or operation.

[0067] These computer-readable program instructions may be provided to a processor of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus to produce an apparatus, such that the instructions, when executed by the processor of the computer or other programmable data processing apparatus, produce means for implementing the functions / acts set forth in the flowcharts and / or block diagrams (one or more blocks). These computer-readable program instructions may be stored on a computer-readable storage medium that can direct a computer, programmable data processing apparatus, and / or other device to function in a particular manner, such that the computer-readable storage medium on which the instructions are stored comprises an article including instructions that implement aspects of the functions / acts set forth in the flowcharts and / or block diagrams (one or more blocks).

[0068] The computer-readable program instructions may be loaded onto a computer, other programmable data processing apparatus, or other device such that a series of operational steps are performed on the computer, other programmable apparatus, or other device to generate a computer-implemented process such that the instructions, executed on the computer, other programmable apparatus, or other device, implement the functions / acts described in the flowcharts and / or block diagrams (one or more blocks).

[0069] The illustrated flowcharts and block diagrams illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer-readable media according to various embodiments. Each block in a flowchart or block diagram may represent a module, segment, or portion of instructions, comprising one or more executable instructions for implementing specific logical functions. The methods, computer systems, and computer-readable media may include additional, fewer, different, or differently arranged blocks than those shown in the figures. In some alternative implementations, the functions shown in the blocks may occur out of the order shown in the figures. For example, two blocks shown in succession may, in fact, be executed concurrently or substantially concurrently, depending on the functionality involved, or the blocks may be executed in the reverse order. Note that each block of the block diagram and / or flowchart illustrations, and combinations of blocks in the block diagram and / or flowchart illustrations, may be implemented by a dedicated hardware-based system performing specific functions or acts, or by executing a combination of dedicated hardware and computer instructions.

[0070] It will be apparent that the systems and / or methods described herein may be implemented in different forms of hardware, firmware, or a combination of hardware and software. The actual specific control hardware or software code used to implement these systems and / or methods is not a limitation of the implementation. Thus, the operation and behavior of the systems and / or methods are described herein without reference to specific software code. It will be understood that software and hardware may be designed to implement the systems and / or methods based on the description herein.

[0071] The above disclosure also encompasses the embodiments listed below.

[0072] Feature 1: 1. A method executed by at least one processor in a network node operating in a wireless communications network, comprising: receiving, from at least one user equipment (UE), a data stream comprising one or more data packets associated with an uplink transmission between the UE and the network node; analyzing the data stream to determine whether the at least one UE transmitted one or more data packets that were not received by the network node; performing corrective action on the data stream in response to determining that the at least one UE transmitted the one or more data packets that are not received by the network node; and completing the uplink transmission based on the data stream after the corrective action is performed; and A method comprising:

[0073] Feature 2: analyzing the data stream includes analyzing sequence numbers associated with the one or more data packets included in the received data stream; in response to determining that the one or more data packets in the received data stream are received out of sequence, determining that the at least one UE transmitted the one or more data packets that are not received by the network node. The method according to feature 1.

[0074] Feature 3: the uplink transmission includes a request to connect to a Physical Random Access Shared Channel (PRACH); the data stream of the one or more data packets corresponds to one or more PRACH preamble sequences; 3. The method according to feature 1 or 2.

[0075] Feature 4: the network node includes a plurality of antennas; the one or more PRACH preamble sequences include a non-repeated PRACH preamble sequence; The method according to feature 3.

[0076] Feature 5: performing the corrective action on the data stream in response to determining that a first antenna from the plurality of antennas did not receive the non-repeated PRACH preamble sequence includes one of: (i) copying the data stream from a second antenna from the plurality of antennas that received the data stream to the first antenna; or (ii) zeroing the data on the first antenna; completing the uplink transmission further includes combining data from each antenna of the plurality of antennas. The method according to feature 4.

[0077] Feature 6: the network node includes a plurality of antennas; the one or more PRACH preamble sequences include multiple repetitions of PRACH preamble sequences; The method according to feature 3.

[0078] Feature 7: performing the corrective action on the data stream in response to determining that a first antenna from the plurality of antennas did not receive a repetition from the plurality of PRACH preamble sequence repetitions includes one of: (i) zeroing out the repetition not received on the first antenna; (ii) discarding data on the first antenna corresponding to the repetition not received; or (iii) copying data corresponding to the repetition not received from a second antenna from the plurality of antennas that received the repetition not received by the first antenna; completing the uplink transmission includes combining data from each antenna of the plurality of antennas. The method according to feature 4.

[0079] Feature 8: the number of antennas of the network node is 1; the one or more PRACH preamble sequences include multiple repetitions of PRACH preamble sequences; performing the corrective action on the data stream in response to determining that the antenna of the network node does not receive a repetition from the plurality of PRACH preamble sequence repetitions includes one of: (i) zeroing out the repetition not received on the antenna; or (ii) discarding data on the antenna corresponding to the repetition not received; completing the uplink transmission includes combining repetitions of each PRACH preamble sequence received on the antenna. The method according to feature 3.

[0080] Feature 9: the number of antennas of the network node is 1; the one or more PRACH preamble sequences include a non-repeated PRACH preamble sequence; performing corrective action on the data stream in response to determining that an antenna of the network node does not receive the non-repeated PRACH preamble sequence includes performing corrective action at a medium access control (MAC) layer. The method according to feature 3.

[0081] Feature 10: the uplink transmission includes (i) a request to connect to a Physical Uplink Control Channel (PUCCH) or (ii) data transmitted on a Physical Uplink Shared Channel (PUSCH); the data stream of the one or more data packets corresponds to control information; 10. The method of any one of features 1 to 9.

[0082] Feature 11: the network node includes a plurality of antennas; performing the corrective action on the data stream in response to determining that a first antenna from the plurality of antennas did not receive the control information includes one of: (i) copying the data stream from a second antenna from the plurality of antennas that received the data stream to the first antenna; or (ii) zeroing the data on the first antenna; completing the uplink transmission further includes combining data from each antenna of the plurality of antennas. 11. The method according to claim 10.

[0083] Feature 12: 1. A network node operating in a wireless communication network, comprising: at least one memory configured to store computer program code; at least one processor configured to access said at least one memory and to operate as directed by said computer program code; Including, The computer program code receiving code configured to cause at least one of the at least one processor to receive, from at least one user equipment (UE), a data stream including one or more data packets associated with an uplink transmission between the UE and the network node; analysis code configured to cause at least one of the at least one processor to analyze the data stream to determine if the at least one UE transmitted one or more data packets that are not received by the network node; executable code configured to cause at least one of the at least one processor to perform corrective action on the data stream in response to determining that the at least one UE transmitted the one or more data packets that are not received by the network node; completion code configured to cause at least one of the at least one processor to complete the uplink transmission based on the data stream after the corrective action is performed; A network node containing

[0084] Feature 13: the analysis code is further configured to cause at least one of the at least one processor to analyze sequence numbers associated with the one or more data packets included in the received data stream; in response to determining that the one or more data packets in the received data stream are received out of sequence, determining that the at least one UE transmitted the one or more data packets that are not received by the network node. 13. The network node of claim 12.

[0085] Feature 14: the uplink transmission includes a request to connect to a Physical Random Access Shared Channel (PRACH); the data stream of the one or more data packets corresponds to one or more PRACH preamble sequences; 14. The network node of claim 12 or 13.

[0086] Feature 15: further comprising a plurality of antennas; the one or more PRACH preamble sequences include a non-repeated PRACH preamble sequence; 15. The network node of claim 14.

[0087] Feature 16: In response to determining that a first antenna from the plurality of antennas did not receive the non-repeated PRACH preamble sequence, the executable code is further configured to cause at least one of the at least one processor to perform one of: (i) copying the data stream from a second antenna from the plurality of antennas that received the data stream to the first antenna; or (ii) zeroing the data on the first antenna; the completion code is further configured to cause at least one of the at least one processor to combine data from each antenna of the plurality of antennas. 16. The network node of claim 15.

[0088] Feature 17: the network node includes a plurality of antennas; the one or more PRACH preamble sequences include multiple repetitions of PRACH preamble sequences; 15. The network node of claim 14.

[0089] Feature 18: In response to determining that a first antenna from the plurality of antennas did not receive a repetition from the plurality of PRACH preamble sequence repetitions, the executable code is further configured to cause at least one of the at least one processor to perform one of: (i) zeroing out the repetitions not received on the first antenna; (ii) discarding data on the first antenna corresponding to the repetitions not received; or (iii) copying data corresponding to the repetitions not received from a second antenna from the plurality of antennas that received the repetitions not received by the first antenna; completing the uplink transmission includes combining data from each antenna of the plurality of antennas. 16. The network node of claim 15.

[0090] Feature 19: the number of antennas of the network node is 1; the one or more PRACH preamble sequences include multiple repetitions of PRACH preamble sequences; In response to determining that the antenna of the network node does not receive a repetition from the plurality of PRACH preamble sequence repetitions, the executable code is further configured to cause at least one of the at least one processor to perform one of: (i) zeroing out the repetitions not received on the antenna; or (ii) discarding data on the antenna corresponding to the repetitions not received; the completion code is further configured to cause at least one of the at least one processor to combine repetitions of each PRACH preamble sequence received on the antenna. 16. The network node of claim 15.

[0091] Feature 20: When executed by a processor in a network node operating in a wireless communication network, the processor is caused to: receiving, from at least one user equipment (UE), a data stream comprising one or more data packets associated with an uplink transmission between the UE and the network node; analyzing the data stream to determine whether the at least one UE transmitted one or more data packets that were not received by the network node; performing corrective action on the data stream in response to determining that the at least one UE transmitted the one or more data packets that are not received by the network node; and completing the uplink transmission based on the data stream after the corrective action is performed; and A non-transitory computer-readable medium storing instructions for performing a method including:

Claims

1. 1. A method executed by at least one processor in a network node operating in a wireless communications network, comprising: receiving, from at least one user equipment (UE), a data stream comprising one or more data packets associated with an uplink transmission between the UE and the network node; analyzing the data stream to determine whether the at least one UE transmitted one or more data packets that were not received by the network node; performing corrective action on the data stream in response to determining that the at least one UE transmitted the one or more data packets that are not received by the network node; and completing the uplink transmission based on the data stream after the corrective action is performed; and A method for providing

2. analyzing the data stream includes analyzing sequence numbers associated with the one or more data packets included in the received data stream; in response to determining that the one or more data packets in the received data stream are received out of sequence, determining that the at least one UE transmitted the one or more data packets that are not received by the network node. The method of claim 1.

3. the uplink transmission includes a request to connect to a Physical Random Access Shared Channel (PRACH); the data stream of the one or more data packets corresponds to one or more PRACH preamble sequences; The method of claim 1.

4. the network node includes a plurality of antennas; the one or more PRACH preamble sequences include a non-repeated PRACH preamble sequence; The method of claim 3.

5. performing the corrective action on the data stream in response to determining that a first antenna from the plurality of antennas did not receive the non-repeated PRACH preamble sequence includes one of: (i) copying the data stream from a second antenna from the plurality of antennas that received the data stream to the first antenna; or (ii) zeroing the data on the first antenna; completing the uplink transmission further includes combining data from each antenna of the plurality of antennas. The method of claim 4.

6. the network node includes a plurality of antennas; the one or more PRACH preamble sequences include multiple repetitions of PRACH preamble sequences; The method of claim 3.

7. performing the corrective action on the data stream in response to determining that a first antenna from the plurality of antennas did not receive a repetition from the plurality of PRACH preamble sequence repetitions includes one of: (i) zeroing out the repetition not received on the first antenna; (ii) discarding data on the first antenna corresponding to the repetition not received; or (iii) copying data corresponding to the repetition not received from a second antenna from the plurality of antennas that received the repetition not received by the first antenna; completing the uplink transmission includes combining data from each antenna of the plurality of antennas. The method of claim 4.

8. the number of antennas of the network node is 1; the one or more PRACH preamble sequences include multiple repetitions of PRACH preamble sequences; performing the corrective action on the data stream in response to determining that the antenna of the network node does not receive a repetition from the plurality of PRACH preamble sequence repetitions comprises one of: (i) zeroing out the repetition not received on the antenna; or (ii) discarding data on the antenna corresponding to the repetition not received; completing the uplink transmission includes combining repetitions of each PRACH preamble sequence received on the antenna. The method of claim 3.

9. the number of antennas of the network node is 1; the one or more PRACH preamble sequences include a non-repeated PRACH preamble sequence; performing corrective action on the data stream in response to determining that an antenna of the network node does not receive the non-repeated PRACH preamble sequence includes performing corrective action at a Medium Access Control (MAC) layer. The method of claim 3.

10. the uplink transmission includes (i) a request to connect to a Physical Uplink Control Channel (PUCCH) or (ii) data transmitted on a Physical Uplink Shared Channel (PUSCH); the data stream of the one or more data packets corresponds to control information; The method of claim 1.

11. the network node includes a plurality of antennas; performing the corrective action on the data stream in response to determining that a first antenna from the plurality of antennas did not receive the control information includes one of: (i) copying the data stream from a second antenna from the plurality of antennas that received the data stream to the first antenna; or (ii) zeroing the data on the first antenna; completing the uplink transmission further includes combining data from each antenna of the plurality of antennas. The method of claim 10.

12. 1. A network node operating in a wireless communication network, comprising: at least one memory configured to store computer program code; at least one processor configured to access said at least one memory and to operate as directed by said computer program code; Equipped with The computer program code receiving code configured to cause at least one of the at least one processor to receive, from at least one user equipment (UE), a data stream including one or more data packets associated with an uplink transmission between the UE and the network node; analysis code configured to cause at least one of the at least one processor to analyze the data stream to determine if the at least one UE transmitted one or more data packets that are not received by the network node; executable code configured to cause at least one of the at least one processor to perform corrective action on the data stream in response to determining that the at least one UE transmitted the one or more data packets that are not received by the network node; completion code configured to cause at least one of the at least one processor to complete the uplink transmission based on the data stream after the corrective action is performed; A network node containing

13. the analysis code is further configured to cause at least one of the at least one processor to analyze sequence numbers associated with the one or more data packets included in the received data stream; in response to determining that the one or more data packets in the received data stream are received out of sequence, determining that the at least one UE transmitted the one or more data packets that are not received by the network node.

13. A network node according to claim 12.

14. the uplink transmission includes a request to connect to a Physical Random Access Shared Channel (PRACH); the data stream of the one or more data packets corresponds to one or more PRACH preamble sequences; 13. A network node according to claim 12.

15. further comprising a plurality of antennas; the one or more PRACH preamble sequences include a non-repeated PRACH preamble sequence; 15. A network node according to claim 14.

16. In response to determining that a first antenna from the plurality of antennas did not receive the non-repeated PRACH preamble sequence, the executable code is further configured to cause at least one of the at least one processor to perform one of: (i) copying the data stream from a second antenna from the plurality of antennas that received the data stream to the first antenna; or (ii) zeroing the data on the first antenna; the completion code is further configured to cause at least one of the at least one processor to combine data from each antenna of the plurality of antennas.

16. A network node according to claim 15.

17. the network node includes a plurality of antennas; the one or more PRACH preamble sequences include multiple repetitions of PRACH preamble sequences; 15. A network node according to claim 14.

18. In response to determining that a first antenna from the plurality of antennas did not receive a repetition from the plurality of PRACH preamble sequence repetitions, the executable code is further configured to cause at least one of the at least one processor to perform one of: (i) zeroing out the repetitions not received on the first antenna; (ii) discarding data on the first antenna corresponding to the repetitions not received; or (iii) copying data corresponding to the repetitions not received from a second antenna from the plurality of antennas that received the repetitions not received by the first antenna; completing the uplink transmission includes combining data from each antenna of the plurality of antennas.

16. A network node according to claim 15.

19. the number of antennas of the network node is 1; the one or more PRACH preamble sequences include multiple repetitions of PRACH preamble sequences; In response to determining that the antenna of the network node does not receive a repetition from the plurality of PRACH preamble sequence repetitions, the executable code is further configured to cause at least one of the at least one processor to perform one of: (i) zeroing out the repetitions not received on the antenna; or (ii) discarding data on the antenna corresponding to the repetitions not received; the completion code is further configured to cause at least one of the at least one processor to combine repetitions of each PRACH preamble sequence received on the antenna.

16. A network node according to claim 15.

20. When executed by a processor in a network node operating in a wireless communication network, the processor is caused to: receiving, from at least one user equipment (UE), a data stream comprising one or more data packets associated with an uplink transmission between the UE and the network node; analyzing the data stream to determine whether the at least one UE transmitted one or more data packets that were not received by the network node; performing corrective action on the data stream in response to determining that the at least one UE transmitted the one or more data packets that are not received by the network node; and completing the uplink transmission based on the data stream after the corrective action is performed; and A non-transitory computer-readable medium storing instructions for performing a method comprising:

Citation Information

Patent Citations

  • Method and apparatus for improved coverage for random access processes - Patents.com

    JP2016528791A

  • Fast RLC Retransmission upon HARQ Failure during Tune-Away

    JP2017526225A