Packet discarding method and communication device
By dynamically adjusting the discard timer in the PDCP layer based on instruction information, the method addresses packet drop issues in XR services, enhancing network capacity and ensuring successful transmission of important data, thereby improving user experience.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2024-04-01
- Publication Date
- 2026-04-14
AI Technical Summary
Packet drop mechanisms in the Packet Data Convergence Protocol (PDCP) layer reduce effective network capacity, particularly in extended reality (XR) services, leading to congestion and limited transmission resources, which can cause the subsequent I-frame data to be dropped even if P-frame data is transmitted correctly, impacting user experience.
A packet discarding method that adjusts the duration of the discard timer in the PDCP layer based on instruction information, prioritizing the discarding of less important data during network congestion to alleviate resource pressure and ensuring the successful transmission of important data.
This method increases the effective network capacity and improves user experience by providing more transmission opportunities for high-priority data, ensuring its successful delivery and decoding, while reducing the strain on network resources.
Smart Images

Figure 2026512006000001_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communications, and more specifically, to a packet discarding method and a communication device.
Background Art
[0002] Extended reality (XR) refers to the combination of reality and virtuality and the various environments generated by wearable devices using computing technology, as well as the interaction between humans and computers. XR includes augmented reality (AR), mixed reality (MR), and virtual reality (VR).
[0003] Packet discard behavior at the Packet Data Convergence Protocol (PDCP) layer is specified in the 3rd Generation Partnership Project (3GPP) protocol. Specifically, each time a PDCP entity at the transmitter's PDCP layer receives a PDCP service data unit (SDU) from a higher layer (e.g., the Service Data Adaptation Protocol (SDAP) layer), the PDCP entity activates a timer on the PDCP SDU. When the timer expires, the PDCP entity discards the PDCP SDU corresponding to the timer and the PDCP protocol data unit (PDU) corresponding to the SDU. If the PDCP PDU is delivered to a lower layer (e.g., the Radio Link Control (RLC) layer), the PDCP entity further notifies the lower layer of the packet discard instruction, and the lower layer performs the corresponding packet discard operation. Network devices configure the duration of the timers for each PDCP entity. PDCP discards data packets that are scheduled for transmission but are different within the same quality of service (QoS) flow after waiting for the same amount of time.
[0004] Packet drop mechanisms can reduce the effective network capacity in several scenarios. For example, in an XR service, one I-frame (intra-coded picture) data and one P-frame (predictive-coded picture) data wait in a buffer for transmission, with the P-frame data preceding the I-frame data. In this case, congestion is expected to occur, resulting in a severely limited number of available transmission resources. In this scenario, during the transmission of the P-frame data, a timeout may cause the subsequent I-frame data to be dropped. As a result, even if the P-frame data, which depends on the I-frame, is transmitted correctly, the subsequent P-frame data cannot be properly parsed. Consequently, the effective network capacity decreases, impacting the user experience. [Overview of the Initiative]
[0005] This application provides a packet discarding method and a communication device to increase the effective capacity of a system and improve the user experience. [Means for solving the problem]
[0006] According to the first embodiment, a packet discarding method is provided. This method may be implemented by a first communication device (i.e., a data sender), by a component of the first communication device (e.g., a processor, chip, or chip system), or by a logic module or software capable of implementing all or part of the functions of the first communication device.
[0007] This method includes the steps of receiving first instruction information from a second communication device, wherein the first instruction information indicates adjusting the duration of a discard timer corresponding to first data in the PDCP layer to a second duration, and the first data is a first data packet or a first data packet set of target importance, and adjusting the duration of the discard timer from a first duration to a second duration based on the first instruction information.
[0008] It should be understood that the first duration is the duration of the discard timer before its duration is adjusted based on the first instruction information.
[0009] For example, any data packet set, such as the first data packet set, may be a PDU set or a data burst.
[0010] According to the method provided in this application, the first communication device can adapt to different communication environments, increase the effective capacity of the system, and improve the user experience by quickly and flexibly adjusting the duration of the discard timer for some data (e.g., first data) based on instructions from the second communication device. For example, in a scenario where network congestion occurs, the second communication device can instruct the first communication device to shorten the duration of the discard timer for some less important data. In this way, the first communication device can prioritize the discarding of less important data to alleviate pressure on network resources and ensure that important data can be transmitted successfully. For example, if the network conditions are good, the second communication device can instruct the first communication device to extend the timer for some important data. In this way, the first communication device can ensure the successful transmission of important data by providing more opportunities for transmission of that data, and as a result, ensure that other data that depends on that data can be decoded successfully thereafter.
[0011] In possible implementations, the first data is a first data packet or a set of first data packets of low importance, and the duration of the first data is longer than the duration of the second data.
[0012] According to this solution, the first communication device can provide more transmission opportunities for high-priority data packets / packet sets by prioritizing the discarding of low-priority first data packets / packet sets based on first instruction information, thereby shortening the duration of the discard timer for low-priority first data packets / packet sets. In the event of network congestion, this solution helps to alleviate the strain on network resources and ensure the smooth transmission of high-priority data. This helps to increase the effective capacity of the network and improve the user experience.
[0013] In possible implementations, the importance of any data packet is determined based on the PDU set importance (PSI) and / or the remaining transmission delay budget corresponding to the data packet, and / or the importance of any set of data packets is determined based on the PSI and / or the remaining transmission delay budget corresponding to the set of data packets.
[0014] For example, the PSI corresponding to a data packet may be the PSI of the PDU set to which the data packet belongs.
[0015] For example, the remaining transmission delay budget corresponding to a data packet is the remaining packet delay budget (PDB) for that data packet.
[0016] For example, the remaining transmission delay budget of a PDU set may be the remaining PSDB of a PDU set.
[0017] In possible implementations, the first instruction indicates that the second duration has a default value of 0.
[0018] For example, if network congestion occurs, the second communication device expects the first communication device to discard less important data packets / packet sets. In this case, the second communication device sends first instruction information to the first communication device, instructing the first communication device to adjust the duration of the discard timer for less important data packets / packet sets to 0. After receiving the first instruction information, the first communication device adjusts the discard timers for all less important data packets / packet sets cached within the relevant PDCP entity to 0, so that the discard timers for less important data packets / packet sets expire immediately, and the less important data packets / packet sets are discarded. For less important data packets / packet sets that subsequently arrive at the relevant PDCP entity, the first communication device activates a discard timer with a duration of 0. In other words, the data packets / packet sets are discarded immediately after arriving at the PDCP entity. According to this method, network congestion can be effectively mitigated and the transmission of important data packets / packet sets can be guaranteed.
[0019] In possible implementations, the first instruction information includes the second duration.
[0020] In possible implementations, the first instruction information indicates the second of several pre-configured durations.
[0021] In possible implementations, the first instruction information includes information on target importance and the second duration.
[0022] In a possible implementation form, the first instruction information includes information regarding the target importance, and the second duration is associated with the target importance. For example, for the first communication device, the correspondence relationship between a plurality of durations and the information regarding the importance may be preconfigured. In this way, the first communication device can determine the second duration based on the information regarding the target importance.
[0023] In a possible implementation form, the step of adjusting the duration of the discard timer from the first duration to the second duration based on the first instruction information includes the step of adjusting the duration of the discard timer from the first duration to the second duration based on the PSI of the target importance and the PSI threshold.
[0024] According to this solution, the second duration can be determined based on the PSI of the target importance and the PSI threshold.
[0025] In a possible implementation form, the first instruction information further indicates a data radio bearer (DRB) associated with the first data.
[0026] According to this solution, the second communication device can indicate to adjust only the discard timer for the related data of the PDCP entity corresponding to some DRBs.
[0027] In a possible implementation form, the first data is the data that has reached the PDCP entity. The step of adjusting the duration of the discard timer from the first duration to the second duration based on the first instruction information includes the step of restarting the discard timer based on the first instruction information and the second duration, or the step of continuing the operation of the discard timer based on the first instruction information and the second duration, or the step of determining that the discard timer has expired based on the first instruction information and the second duration.
[0028] In a possible implementation form, the first data is data that has not reached the PDCP entity. The step of adjusting the duration of the discard timer from the first duration to the second duration based on the first indication information includes the step of starting the discard timer based on the first indication information and the second duration when the first data reaches the PDCP entity.
[0029] In a possible implementation form, the method further includes the step of starting a discard timer based on the first duration when a second data that has not reached the PDCP entity reaches the PDCP entity, where the second data is a second data packet or a second set of data packets of a target importance level.
[0030] In a possible implementation form, the method further includes the step of receiving second indication information from a second communication device, where the second indication information indicates adjusting the duration of the discard timer from the second duration to the first duration, and the step of adjusting the duration of the discard timer from the second duration to the first duration.
[0031] In a possible implementation form, the method includes the step of starting a first timer when the first indication information is received, where the duration of the discard timer is the second duration during the operation of the first timer, and the step of adjusting the duration of the discard timer from the second duration to the first duration when the first timer expires.
[0032] According to this solution, the first communication device can adjust the discard timer of the first data based on the first indication information during the operation of the first timer, and adjust the duration of the discard timer to return to the first duration when the first timer expires.
[0033] In possible implementations, the method further includes the step of sending a buffer status report to a second communication device when the first data is discarded, the buffer status report being used to report the amount of data currently scheduled for transmission.
[0034] According to this solution, after learning the amount of data currently scheduled to be transmitted from the first communication device based on the buffer status report, the second communication device can configure transmission resources for the first communication device that match the amount of data currently scheduled to be transmitted. This facilitates the normal transmission of data packets from the first communication device and avoids wasting network resources.
[0035] According to a second embodiment, a packet discarding method is provided. This method may be implemented by a second communication device (i.e., a data receiver), by a component of the second communication device (e.g., a processor, a chip, or a chip system), or by a logic module or software capable of implementing all or part of the functions of the second communication device.
[0036] The method includes the steps of generating first instruction information, wherein the first instruction information indicates a first communication device for adjusting the duration of a discard timer to a second duration, corresponding to first data in the Packet Data Convergence Protocol (PDCP) layer, and the first data is a first data packet or a first data packet set of target importance, and transmitting the first instruction information to the first communication device.
[0037] According to the method provided in this application, the first communication device can adapt to different communication environments, increase the effective capacity of the system, and improve the user experience by quickly and flexibly adjusting the duration of the discard timer for some data (e.g., first data) based on instructions from the second communication device. For example, in a scenario where network congestion occurs, the second communication device can instruct the first communication device to shorten the duration of the discard timer for some less important data. In this way, the first communication device can prioritize discarding less important data to alleviate pressure on network resources and ensure that important data can be transmitted successfully. For example, if the network conditions are good, the second communication device can instruct the first communication device to extend the timer for some important data. In this way, the first communication device can ensure the successful transmission of important data by providing more opportunities for transmission of the important data, and as a result ensure that other data that depends on the important data can be decoded successfully thereafter.
[0038] In possible implementations, the first data is a first data packet or set of first data packets of low importance, and the second duration is shorter than the current duration of the discard timer.
[0039] In possible implementations, the importance of any data packet is determined based on the protocol data unit (PDU) set importance PSI corresponding to the data packet and / or the remaining transmission delay budget corresponding to the data packet, and / or the importance of any set of data packets is determined based on the PSI corresponding to the set of data packets and / or the remaining transmission delay budget corresponding to the set of data packets.
[0040] In possible implementations, the first instruction information may indicate that the second duration is 0 by default, or the first instruction information may include the second duration, or the first instruction information may indicate the second duration within a set of pre-configured durations, or the first instruction information may include information about the target importance and the second duration, or the first instruction information may include information about the target importance and the second duration may be associated with the target importance.
[0041] In possible implementations, the first instruction information further indicates the data radio bearer DRB associated with the first data.
[0042] In a possible implementation, the method further includes the step of transmitting a second instruction to a first communication device, the second instruction indicating to the first communication device to adjust the duration of the discard timer from a second duration to a first duration, where the first duration is the duration of the discard timer before it is adjusted to the second duration.
[0043] In possible implementations, the method further includes the step of receiving a buffer status report from a first communication device, the buffer status report being used to report the amount of data currently scheduled to be transmitted by the first communication device.
[0044] In possible implementations, the method further includes the step of transmitting the duration of a first timer to a first communication device, wherein the duration of a discard timer is the second duration of the first timer while it is running, and the first communication device needs to adjust the duration of the discard timer from the second duration to the first duration when the first timer expires, and the first duration is , discard The current duration is the duration of the discard timer before it is adjusted to the second duration.
[0045] In possible implementations, the method further includes a step of determining that network congestion has occurred before generating the first instruction information.
[0046] For the beneficial effects of the relevant solutions in the second embodiment, please refer to the preceding description of the corresponding solutions in the first embodiment. Further details will not be provided here.
[0047] According to a third aspect, a packet discarding method is provided. This method may be implemented by a first communication device (i.e., a data sender), or by a component of the first communication device (e.g., a processor, chip, or chip system), or by a logic module or software capable of implementing all or part of the functions of the first communication device.
[0048] The method includes receiving third instruction information from a second communication device, the third instruction information indicating to adjust the discard timer of a first-priority data packet or data packet set that has reached at least one PDCP entity to 0 and / or discard a first-priority data packet or data packet set that has not reached at least one PDCP entity, or the third instruction information indicating to discard a first-priority data packet or data packet set that has reached and / or has not reached at least one PDCP entity, and / or based on the third instruction information, adjusting the discard timer of a first-priority data packet or data packet set that has reached at least one PDCP entity to 0 and / or discarding a first-priority data packet or data packet set that has not reached at least one PDCP entity, or based on the third instruction information, discarding a first-priority data packet or data packet set that has reached and / or has not reached at least one PDCP entity.
[0049] For example, the first importance level can be low.
[0050] For example, any data packet set may be a PDU set or a data burst.
[0051] According to the method provided in this application, the first communication device can adapt to different communication environments, increase the effective capacity of the system, and improve the user experience by quickly and flexibly adjusting the duration of the discard timer for some data (e.g., data packets or sets of data packets of a first importance) and / or discarding some data based on instructions from the second communication device. For example, in a scenario where network congestion occurs, the first communication device can, Second By prioritizing the discarding of less important data based on instructions from the communication device, the strain on network resources can be reduced, and it is possible to ensure that highly important data can be transmitted successfully. In addition, since data packets or sets of data packets of a first priority that have not reached at least one PDCP entity are discarded, the processing time of the first communication device can be further reduced.
[0052] In possible implementations, the importance of any data packet is determined based on the protocol data unit (PDU) set importance PSI corresponding to the data packet and / or the remaining transmission delay budget corresponding to the data packet, and / or the importance of any set of data packets is determined based on the PSI corresponding to the set of data packets and / or the remaining transmission delay budget corresponding to the set of data packets.
[0053] In a possible implementation, the method further includes receiving fourth instruction information from a second communication device, the fourth instruction information indicating to stop discarding data packets / data packet sets of first importance for at least one PDCP entity; and stopping the step of discarding data packets / data packet sets of first importance for at least one PDCP entity based on the fourth instruction information.
[0054] In a possible implementation, the method further includes the steps of activating a second timer when a second instruction is received, and ceasing the discarding of data packets / data packet sets of first severity for at least one PDCP entity when the second timer expires.
[0055] In a possible implementation, the method further includes the step of sending a buffer status report to a second communication device when a data packet / data packet set of first importance of at least one PDCP entity is discarded, the buffer status report being used to report the amount of data currently scheduled for transmission.
[0056] According to this solution, after learning the amount of data currently scheduled to be transmitted from the first communication device based on the buffer status report, the second communication device can configure transmission resources for the first communication device that match the amount of data currently scheduled to be transmitted. This facilitates the normal transmission of data packets from the first communication device and avoids wasting network resources.
[0057] A fourth aspect provides a packet discarding method. This method may be implemented by a second communication device (i.e., a data sender), or by a component of the second communication device (e.g., a processor, chip, or chip system), or by a logic module or software capable of implementing all or part of the functions of the second communication device.
[0058] The method includes the steps of generating a third instruction information and transmitting the third instruction information to a first communication device. The third instruction information indicates to the first communication device to adjust the discard timer to 0 for data packets or data packet sets of first importance that have reached at least one PDCP entity and / or discard data packets or data packet sets of first importance that have not reached at least one PDCP entity, or the third instruction information indicates to the first communication device to discard data packets or data packet sets of first importance that have reached and / or have not reached at least one PDCP entity.
[0059] According to the method provided in this application, the first communication device can quickly and flexibly adjust the duration of the discard timer for some data (e.g., data packets or sets of data packets of a first importance) and / or discard some data based on instructions from the second communication device, thereby adapting to different communication environments, increasing the effective capacity of the system, and improving the user experience. For example, in a scenario where network congestion occurs, the first communication device can reduce the strain on network resources and ensure that high-importance data can be transmitted successfully by preferentially discarding low-importance data based on instructions from the first communication device. In addition, since data packets or sets of data packets of a first importance that have not reached at least one PDCP entity are discarded, the processing time of the first communication device can be further reduced.
[0060] In possible implementations, the importance of any data packet is determined based on the protocol data unit (PDU) set importance PSI corresponding to the data packet and / or the remaining transmission delay budget corresponding to the data packet, and / or the importance of any set of data packets is determined based on the PSI corresponding to the set of data packets and / or the remaining transmission delay budget corresponding to the set of data packets.
[0061] In a possible implementation, the method further includes the step of transmitting a fourth instruction to a first communication device, the fourth instruction instructing the first communication device to stop discarding data packets / data packet sets of a first severity for at least one PDCP entity.
[0062] According to the fifth aspect, a communication device is provided which includes a module or unit configured to carry out the method in any one of the first aspect or any possible implementation of the first aspect, or a module or unit configured to carry out the method in any one of the third aspect or any possible implementation of the third aspect.
[0063] According to the sixth aspect, a communication device is provided which includes a module or unit configured to carry out the method in any one of the second aspect or any possible implementation of the second aspect, or a module or unit configured to carry out the method in any one of the fourth aspect or any possible implementation of the fourth aspect.
[0064] According to the seventh aspect, a communication device is provided which includes a processor, the processor is coupled to a memory, the memory is configured to store computer programs or instructions, and the processor is configured to execute the computer programs or instructions stored in the memory to implement the method in the first aspect or any one of the possible implementations of the first aspect, or to implement the method in the third aspect or any one of the possible implementations of the third aspect.
[0065] In possible implementations, the device further includes memory coupled to the processor.
[0066] In possible implementations, there are one or more processors and / or one or more memory locations.
[0067] In possible implementations, the memory and processor may be integrated, or they may be located separately.
[0068] In possible implementations, the device further includes a communication interface, and the processor is coupled to the communication interface.
[0069] In one implementation configuration, this device is a first communication device. For example, the communication interface may be a transceiver or an input / output interface.
[0070] In another implementation, this device is a chip within the first communication device. For example, the communication interface may be an input / output interface.
[0071] According to the eighth aspect, a communication device is provided which includes a processor, the processor is coupled to a memory, the memory is configured to store computer programs or instructions, and the processor is configured to execute the computer programs or instructions stored in the memory to carry out the method in the second aspect or any one of the possible implementations of the second aspect, or to carry out the method in the fourth aspect or any one of the possible implementations of the fourth aspect.
[0072] In possible implementations, the device further includes memory coupled to the processor.
[0073] In possible implementations, there are one or more processors and / or one or more memory locations.
[0074] In possible implementations, the memory and processor may be integrated, or they may be located separately.
[0075] In possible implementations, the device further includes a communication interface, and the processor is coupled to the communication interface.
[0076] In one implementation configuration, this device is a second communication device. For example, the communication interface may be a transceiver or an input / output interface.
[0077] In another implementation, this device is a chip within a second communication device. For example, the communication interface may be an input / output interface.
[0078] According to the ninth aspect, a processor is provided, comprising an input circuit, an output circuit, and a processing circuit. The processing circuit is configured to receive a signal through the input circuit and transmit a signal through the output circuit, so that the processor can perform the method in the aforementioned aspects or in any one of the possible implementations of any one of the aforementioned aspects.
[0079] In specific implementation configurations, the processor may be a chip, the input circuit may be an input pin, the output circuit may be an output pin, and the processing circuit may be a transistor, gate circuit, trigger, various logic circuits, etc. The input signal received by the input circuit may be received and input by a receiver, for example, but is not limited to this, and the signal output by the output circuit may be output to a transmitter and transmitted by the transmitter, for example, but is not limited to this, and the input circuit and output circuit may be the same circuit, which is used as an input circuit and an output circuit at different times. Specific implementation configurations of the processor and various circuits are not limited in this application.
[0080] According to the tenth aspect, a communication system is provided, which includes at least one of the communication device provided in the third aspect and the communication device provided in the fourth aspect, or at least one of the communication device provided in the fifth aspect and the communication device provided in the sixth aspect.
[0081] According to the eleventh aspect, a computer program product is provided. The computer program product includes a computer program (which may also be called code or instructions). When the computer program is run, the computer becomes capable of carrying out the method in any of the preceding aspects or any one of the possible implementations of any one of the preceding aspects.
[0082] According to a twelfth aspect, a computer-readable storage medium is provided. The computer-readable storage medium stores a computer program (which may also be called code or instructions). When the computer program is run on a computer, the computer becomes capable of carrying out the method in any of the preceding aspects or any one of the possible implementations of any one of the preceding aspects.
[0083] According to the 13th aspect, a chip is provided, which includes a processor configured to call a computer program from memory and run the computer program, thereby enabling a communication device on which the chip is mounted to implement the method in the foregoing aspect or in any one of the possible implementations of any one of the foregoing aspects.
[0084] According to a fourteenth aspect, a communication device is provided. The communication device includes an interface and a processor. The interface is used to transmit and / or receive signals, enabling the processor to carry out the method in the aforementioned aspects or in any one of the possible implementations of any one of the aforementioned aspects. [Brief explanation of the drawing]
[0085] [Figure 1] This diagram shows the procedure for processing data packets at each protocol layer on the user plane on the transmitter side. [Figure 2] This is a diagram of a video coding model. [Figure 3] This is a block diagram of a communication system applicable to this application. [Figure 4]This is a schematic flowchart of a packet discarding method according to one embodiment of this application. [Figure 5] This figure shows how to adjust the duration of an operational discard timer according to one embodiment of the present application. [Figure 6] This figure shows how to adjust the duration of an operational discard timer according to one embodiment of the present application. [Figure 7] This diagram shows how to adjust the duration of an inactive discard timer according to one embodiment of the present application. [Figure 8] This figure shows how to adjust the duration of a discard timer according to one embodiment of the present application. [Figure 9] This diagram shows how to adjust the duration of an inactive discard timer according to one embodiment of the present application. [Figure 10] This is a schematic flowchart of another packet discarding method according to one embodiment of this application. [Figure 11] This is a schematic flowchart of a communication method according to one embodiment of this application. [Figure 12] This diagram shows an embodiment of the present application in which a PDCP entity assigns an SN to a data packet. [Figure 13] This figure shows a PDCP entity distributing data packets to an RLC entity according to one embodiment of this application. [Figure 14] This figure shows a diagram illustrating the distribution of data packets from an RLC entity to a MAC entity according to one embodiment of this application. [Figure 15] This is a block diagram of a communication device according to one embodiment of the present application. [Figure 16] This is a block diagram of another communication device according to one embodiment of the present application. [Figure 17] This is a diagram showing the structure of a terminal device according to one embodiment of this application. [Figure 18] This is a diagram showing the structure of a network device according to one embodiment of this application. [Modes for carrying out the invention]
[0086] The following describes the technical solutions in the embodiments of this application with reference to the accompanying drawings.
[0087] In the description of this application, unless otherwise specified, " / " indicates an "or" relationship between the associated objects. For example, A / B can mean A or B. In this application, "and / or" simply describes the relationship between the associated objects and indicates that three relationships may exist. For example, A and / or B can mean the following three cases: that only A exists, that both A and B exist, and that only B exists, where A and B may be singular or plural. In addition, in the description of this application, "plural" means two or more unless otherwise specified. At least one of the following items(parts) or similar expressions refers to any combination of these items, including any combination of singular or plural items(parts). For example, at least one of a, b, or c can mean a, b, c, a and b, a and c, b and c, or a, b, and c, where a, b, and c may be singular or plural. In addition, in order to clearly describe the technical solutions of the embodiments of this application, terms such as “first” and “second” are used in the embodiments of this application to distinguish the same or similar items that essentially provide the same function or purpose. Those skilled in the art will understand that terms such as “first” and “second” do not limit the quantity or order of execution, and that terms such as “first” and “second” do not indicate a clear distinction. It should be understood that similar descriptions such as “if…”, “in the case of…”, “when…”, and “assume…” may be used interchangeably in this application.
[0088] In embodiments of this application, the terminal device may be user equipment (UE), station, access terminal, subscriber unit, subscriber station, mobile station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication device, user agent, or user equipment. Alternatively, the terminal device may be a mobile phone, cordless phone, session initiation protocol (SIP) phone, wireless local loop (WLL) station, personal digital assistant (PDA), another processing device connected to a handheld device or wireless modem with wireless communication capabilities, large screen, in-vehicle device, wearable device, terminal device in a 5G network, terminal device in a future evolved public land mobile network (PLMN), etc. This is not limited to embodiments of this application.
[0089] In embodiments of this application, the network device is a radio access network (RAN) node (or device) that connects terminal devices to a wireless network, and may also be called a base station. For example, the network device may be an evolved NodeB (eNodeB), a transmission reception point (TRP), a next-generation NodeB (gNB), a base station in a future mobile communication system, an access point (AP) in a Wi-Fi system, a radio controller in a cloud radio access network (CRAN) scenario, a relay station in another future evolved communication system, an access point, an in-vehicle device, a wearable device, or a network device.
[0090] In possible scenarios, multiple RAN nodes work together to help terminal devices achieve wireless access, with different RAN nodes independently implementing some of the base station's functions. For example, a RAN node (i.e., a network device in this application) could be a central unit (CU), a distributed unit (DU), a CU control plane (CP), a CU user plane (UP), a radio unit (RU), etc. The CU and DU may be located separately or may be included in the same network element, such as a baseband unit (BBU). The RU may be included in a radio frequency device or radio frequency unit, for example, a remote radio unit (RRU), an active antenna unit (AAU), or a remote radio head (RRH). In different systems, the CU (or CU-CP and CU-UP), DU, or RU may have alternative names, but their meanings will be understood by those skilled in the art. For example, in an open radio access network (ORAN) system, CU may be alternatively called O-CU (open CU), DU may be alternatively called O-DU, CU-CP may be alternatively called O-CU-CP, CU-UP may be alternatively called O-CU-UP, and RU may be alternatively called O-RU. Any one of the CU (or CU-CP or CU-UP), DU, and RU in this application may be implemented using a software module, a hardware module, or a combination of a software module and a hardware module. It should be understood that the specific technologies and device configurations used by the network device are not limited in this application.
[0091] In embodiments of this application, a terminal device or network device includes a hardware layer, an operating system layer running on top of the hardware layer, and an application layer running on top of the operating system layer. The hardware layer includes hardware such as a central processing unit (CPU), a memory management unit (MMU), and memory (also called main memory). The operating system may be any one or more types of computer operating systems that implement service processing by processes, for example, a Linux operating system, a Unix operating system, an Android operating system, an iOS operating system, or a Windows operating system. The application layer includes applications such as a browser, an address book, word processing software, and instant messaging software. In addition, the specific structure of the executable of the method provided in embodiments of this application is not particularly limited in embodiments of this application, as communication can be performed according to the method provided in embodiments of this application by executing a program that records the code of the method provided in embodiments of this application.
[0092] In addition, aspects or features of this application may be implemented as methods, apparatus, or products using standard programming and / or engineering techniques. As used in this application, the term “product” includes computer programs that can be accessed from any computer-readable component, carrier, or medium. For example, computer-readable medium may include, but is not limited to, magnetic storage components (e.g., hard disks, floppy disks, or magnetic tapes), optical discs (e.g., compact discs (CDs), or digital versatile discs (DVDs)), smart cards, and flash memory components (e.g., erasable programmable read-only memory (EPROM), cards, sticks, or key drives). In addition, the various storage media described herein may represent one or more devices and / or other machine-readable media configured to store information. The term “machine-readable medium” may include, but is not limited to, wireless channels, as well as various other media that can store, contain, and / or carry instructions and / or data.
[0093] In this application, the relevant concepts are first explained below.
[0094] 1. Data Packet The User Plane (UP) protocol stack of a 5th Generation (5G) system includes, from top to bottom, the Service Data Adaptation Protocol (SDAP) layer, the Packet Data Convergence Protocol (PDCP) layer, the Radio Link Control (RLC) layer, the Medium Access Control (MAC) layer, and the Physical (PHY) layer.
[0095] Figure 1 illustrates the procedure for processing data packets at each protocol layer on the transmitter-side user plane. Please refer to Figure 1. On the transmitter side, data packets first reach the SDAP layer, which distributes the data packets to the corresponding PDCP entities (each DRB corresponds to one PDCP entity) according to the QoS flow-to-DRB mapping rules. The PDCP layer performs operations such as compression and encryption on the data packets and then distributes the processed data packets to the RLC layer. The RLC layer then distributes the processed data packets to the MAC layer, regardless of whether it has performed any further processing such as segmentation on the data packets. The MAC layer assembles one or more data packets into a MAC PDU and distributes the MAC PDU to the PHY layer.
[0096] Data packets received by the SDAP layer are IP data packets, and in the SDAP layer, IP data packets are called SDAP SDUs. After obtaining an SDAP PDU by performing processing such as adding a header to the SDAP SDU, the SDAP layer delivers the SDAP PDU to the PDCP entity. In other words, the data packets delivered to the PDCP entity by the SDAP layer are SDAP PDUs.
[0097] PDCP layer Therefore, an SDAP PDU is called a PDCP SDU. After obtaining the PDCP PDU by performing related processing such as adding a header to the PDCP SDU, the PDCP layer delivers the PDCP PDU to the RLC layer. In other words, the data packets delivered to the RLC layer by the PDCP layer are PDCP PDUs.
[0098] At the RLC layer, a PDCP PDU is called an RLC SDU. The RLC layer may or may not perform segmentation on the RLC SDU. If the RLC SDU is segmented, each segment is called an RLC SDU segment. After obtaining the RLC PDU by performing related processing such as adding a header to the RLC SDU segment or RLC SDU, the RLC PDU is delivered to the MAC layer. In other words, the data packet delivered to the MAC layer by the RLC layer is an RLC PDU.
[0099] At the MAC layer, an RLC PDU is called a MAC SDU. After the MAC layer obtains a MAC subPDU by performing related processing such as adding a MAC subheader to the MAC SDU, one or more MAC subPDUs form a MAC PDU, which is then delivered to the PHY layer. In other words, the data packet delivered to the PHY layer by the MAC layer is a MAC PDU.
[0100] The PHY layer modulates and encodes the MAC PDU to generate transport blocks (TBs) and transmits these transport blocks using air interface resources.
[0101] 2. PDU set A PDU set is a set of multiple data packets at the transport layer that corresponds to the smallest granularity for data processing at the application layer. In some application scenarios, the application layer can only correctly parse the corresponding data unit after correctly receiving all data packets within the PDU set. In some other application scenarios, the application layer can parse the corresponding data unit after correctly receiving a certain percentage of data packets within the PDU set.
[0102] 3. Data burst A data burst refers to a group of data PDUs (Programmable Data Units) generated and transmitted by an application in a very short time, such as an XR service frame. A single data burst can contain one or more sets of PDUs.
[0103] 4. Data Packet Set For example, a data packet set in this application (e.g., a first data packet set or a second data packet set) may be a PDU set or a data burst.
[0104] 5. Packet delay budget (PDB) In uplink, PDB is the upper limit of the transmission delay from when a data packet reaches the access layer of the terminal device until that data packet reaches the N6 interface of the user plane function (UPF). In downlink, the reverse is true. If a data packet is not successfully transmitted within the time required by the PDB, the data packet is considered to have timed out (or expired) and is invalid.
[0105] 6. Packet set delay budget (PSDB) PSDB has a similar meaning to PDB and defines the upper limit on the transmission delay of a group of data packets (PDU set). On the uplink, PSDB is the upper limit on the transmission delay from when the first data packet in the PDU set reaches the access layer of the terminal device until the last data packet in the PDU set reaches the N6 interface of the UPF. On the downlink, the opposite is true.
[0106] 7. PDU set importance (PSI) The same QoS flow can contain PDU sets of different importance levels, and PSI is used to identify the importance level of each PDU set.
[0107] For example, in downlink communication, the PSI for each PDU set may be provided by the core network for network devices. In uplink or sidelink (SL) communication, the PSI may be identified by the terminal device.
[0108] XR is one of the currently preferred fifth-generation (5G) multimedia applications in industrial sectors. Generally, XR services generate data periodically. As an example, an AR service with a frame rate of 60 frames per second (fps) is used. 60 video images are generated per second, with one video frame appearing approximately every 16.66ms, and one video frame can be transmitted using multiple data packets. Multiple data packets form one or more PDU sets.
[0109] Video frames can be coded based on groups of pictures (GOPs), where a single GOP contains several consecutive video frames. The first frame is called an I-frame (intra-coded picture), uses intra-frame coding, contains complete picture information, and can be coded and decoded independently. The other frames are called P-frames (predictive-coded pictures), utilize predictive coding, contain only partial picture information, and can be coded and decoded using only the previous frame. In an alternative coding model, a video frame may be divided into multiple video slices. Some of the slices use intra-frame coding and are called I-slices, while some of the slices use predictive coding and are called P-slices.
[0110] For example, Figure 2 is a diagram of a video coding model. Figure 2(a) is a diagram of a GOP-based coding model. See Figure 2(a). The three P-frames of GOP#n are decodeable according to the I-frame of GOP#n, and the two P-frames of GOP#(n+1) are decodeable according to the I-frame of GOP#(n+1). Figure 2(b) is a diagram of a slice-based coding model. See Figure 2(b). P-slice#1 and P-slice#2 of video frame#n are decodeable according to the I-slice of the video frame preceding video frame#n. P-slice#1 of video frame#(n+1) is decodeable according to I-slice#1 of video frame#n, and P-slice#2 of video frame#(n+1) and P-slice#2 of video frame#n depend on the same I-slice. P-slice#1 of video frame #(n+2) can be decoded according to I-slice#1 of video frame #n, P-slice#2 of video frame #(n+2) can be decoded according to I-slice#1 of video frame #(n+1), and P-slice#1 of video frames after video frame #(n+2) depends on I-slice#2 of video frame #(n+2).
[0111] The 3GPP protocol specifies packet discard behavior at the PDCP layer. Specifically, each time a transmitting PDCP entity receives a PDCP SDU from a higher layer (e.g., the SDAP layer), the PDCP entity activates a timer on the PDCP SDU, which is referred to as the discard timer. When the discard timer expires, the PDCP entity discards the PDCP SDU corresponding to the timer and the PDCP PDU corresponding to the SDU. If the PDCP PDU is delivered to a lower layer (e.g., the RLC layer), the PDCP entity further notifies the lower layer of the packet discard instruction, and the lower layer performs the corresponding packet discard action.
[0112] The duration of the discard timer is configured by the network device. Specifically, the network device configures the duration using PDCP-config signaling. Each PDCP entity configures one duration. For all data packets processed by a PDCP entity, the discard timer has the same length. Generally, the network device can configure the discard timer based on the data's PDB or PSDB.
[0113] The current PDCP packet discard mechanism takes data timeouts into account. For different data packets being transmitted within the same QoS flow, PDCP discards the data packets after waiting for the same amount of time. This packet discard mechanism can reduce the effective network capacity in several scenarios. For example, in a PDCP entity's buffer, one I-frame data and one P-frame data are waiting to be transmitted, with the P-frame data preceding the I-frame data. In this case, congestion occurs, and it is assumed that the available transmission resources are very limited. During the process of transmitting the P-frame data, the subsequent I-frame data may be discarded due to a timeout. As a result, even if the P-frame data, which depends on the I-frame, is transmitted correctly, the subsequent P-frame data cannot be properly parsed. This results in a degraded user experience.
[0114] Therefore, according to the packet discarding method provided in this application, the discard timer of the PDCP layer is flexibly adjusted based on the importance of the data, and as a result, the first communication device (i.e., the transmitter) can increase the effective capacity of the network and improve the user experience by flexibly performing packet discarding processing in different scenarios. For example, in a congestion scenario, the first communication device can preferentially discard less important data packets (e.g., P-frame data) by shortening the duration of the discard timer for less important data packets (e.g., P-frame data) in order to ensure the transmission of high-importance data packets (e.g., I-frame data).
[0115] The technical solutions in the embodiments of this application may be used in uplink communication scenarios or in vehicle-to-everything (V2X) communication scenarios. For example, V2X may include vehicle-to-vehicle (V2V) communication, vehicle-to-pedestrian (V2P) communication, vehicle-to-network (V2N) services, vehicle-to-infrastructure (V2I) communication, and so on.
[0116] Uplink communication or V2X communication may be implemented using long-term evolution (LTE), 5th generation (5G), New Radio (NR), or other communication technologies that may emerge in the future.
[0117] Figure 3 is a block diagram of a communication system applicable to this application. Please refer to Figure 3. The system includes two types of communication interfaces: a PC5 interface and a Uu interface. The PC5 interface is a direct communication interface between two terminal devices (e.g., terminal devices 310 and 320 shown in the figure). A direct communication link between terminal devices is also defined as a sidelink or sidelink (SL). The Uu interface is an interface for communication between a terminal device (e.g., terminal device 310 or terminal device 320) and a network device 330. Please understand that the communication system shown in Figure 3 may further include more network nodes, for example, more terminal devices or network devices not shown individually in the figure in the embodiments of this application.
[0118] The method provided in this application may be applied to a scenario in which a terminal device 310 (or terminal device 320) transmits data to a network device 330. In this scenario, the first communication device in this application may be the terminal device 310 (or terminal device 320), and the second communication device may be the network device 330. The method provided in this application may alternatively be applied to an SL communication scenario. For example, in a scenario in which terminal device 310 needs to transmit data to terminal device 320, the first communication device may be terminal device 310, and the second communication device may be terminal device 320. Alternatively, in a scenario in which terminal device 320 needs to transmit data to terminal device 310, the first communication device may be terminal device 320, and the second communication device may be terminal device 310. In an SL scenario, the first and second communication devices may be of the same type or different types. For example, both communication devices may be mobile phones, or one may be a mobile phone and the other a notebook computer.
[0119] The solutions provided in this application will be described in detail below with reference to the corresponding flowcharts. In the methods described below, the first communication device is a data transmitter, and the second communication device is a data receiver. It will be understood that the schematic flowcharts provided in this application are primarily used to illustrate the method, with examples in which different communication devices are used as the implements of the interaction diagrams. However, the implements of the interaction diagrams are not limited in this application. For example, the first communication device in the schematic flowchart may alternatively be a chip, chip system, or processor that supports the first communication device when implementing the method, or a logic module or software that can implement all or part of the functions of the first communication device. Alternatively, the second communication device in the schematic flowchart may alternatively be a chip, chip system, or processor that supports the second communication device when implementing the method, or a logic module or software that can implement all or part of the functions of the second communication device.
[0120] Figure 4 is a schematic flowchart of the packet discarding method according to this application. Method 400 may include S410 to S430. Each step will be described in detail below.
[0121] S410: The second communication device generates the first instruction information.
[0122] For example, the first instruction information may be MAC CE or downlink control information (DCI). For example, the first instruction information may be MAC CE in a specific format (e.g., MAC CE whose logical channel identifier (LCID) is 35) or DCI in a specific format.
[0123] S420: The second communication device transmits the first instruction information to the first communication device. In response, the first communication device receives the first instruction information.
[0124] The first instruction information, located at the PDCP layer and corresponding to the first data, instructs the first communication device to adjust the duration of the discard timer to a second duration, and the first data is a first data packet or first data packet set of target importance.
[0125] For example, a first data packet of target importance may be a data packet of target importance that has reached the PDCP layer when the first instruction becomes effective (i.e., when the first instruction begins to become effective). Alternatively, a first data packet of target importance may be a data packet of target importance that has not reached the PDCP layer when the first instruction becomes effective. Alternatively, a first data packet of target importance may be a data packet of target importance that has reached the PDCP layer and one that has not reached the PDCP layer when the first instruction becomes effective.
[0126] Similarly, the first data packet set of target importance may be a data packet set of target importance that has reached the PDCP layer when the first instruction information becomes effective. Alternatively, the first data packet set of target importance may be a data packet set of target importance that has not reached the PDCP layer when the first instruction information becomes effective. Alternatively, the first data packet set of target importance may be a data packet set of target importance that has reached the PDCP layer and has not reached the PDCP layer when the first instruction information becomes effective.
[0127] In this example, it should be understood that the first directive is for all PDCP entities. Specifically, the first data packet / first data packet set is the data packets / data packet set of target importance that have reached and / or not reached all PDCP entities when the first directive becomes effective.
[0128] In another example, the first instruction information may further indicate at least one DRB. For example, the first instruction information may include the identifier of at least one DRB. A first data packet of target importance may be a data packet of target importance that has reached a PDCP entity corresponding to at least one DRB when the first instruction information becomes effective. Alternatively, a first data packet of target importance may be a data packet of target importance that has not reached a PDCP entity corresponding to at least one DRB when the first instruction information becomes effective. Alternatively, a first data packet of target importance may be a data packet of target importance that has reached and has not reached a PDCP entity corresponding to at least one DRB when the first instruction information becomes effective.
[0129] Similarly, a first data packet set of target importance may be a data packet set of target importance that has reached at least one PDCP entity corresponding to a DRB when the first instruction information becomes effective. Alternatively, a first data packet set of target importance may be a data packet set of target importance that has not reached at least one PDCP entity corresponding to a DRB when the first instruction information becomes effective. Alternatively, a first data packet set of target importance may be a data packet set of target importance that has reached and has not reached at least one PDCP entity corresponding to a DRB when the first instruction information becomes effective.
[0130] In this example, it should be understood that the first instruction information is for a PDCP entity corresponding to at least one DRB. Specifically, the first data packet / first data packet set is a data packet / data packet set of target severity that has reached and / or not reached a PDCP entity corresponding to at least one DRB when the first instruction information becomes effective.
[0131] For the sake of clarity in the following explanation, please note that any PDCP entity corresponding to at least one DRB will be referred to as the specified PDCP entity.
[0132] The point at which the first instruction information becomes effective may be the point at which the first instruction information reaches the first communication device, or it may be the point at which the first communication device receives (or has received) or correctly decodes the first instruction information. Alternatively, the first instruction information may indicate the point at which the first instruction information becomes effective. For example, the first instruction information may indicate that the first instruction information becomes effective 10 ms after the first communication device receives the first instruction information.
[0133] S430: The first communication device is located in the PDCP layer and adjusts the duration of a discard timer corresponding to the first data from a first duration to a second duration based on the first instruction information.
[0134] It should be understood that the first duration is the duration of the discard timer before adjustment, and the second duration is the duration of the discard timer after adjustment. When the timer expires, the first communication device discards the first data corresponding to the discard timer.
[0135] According to the method provided in this application, the first communication device can flexibly perform packet discard processing in different scenarios by quickly and flexibly adjusting the duration of the discard timer for some data (e.g., first data) based on instructions from the second communication device, thereby helping to increase the effective capacity of the network and improve the user experience.
[0136] For example, in possible implementations, the target importance is low importance (or low importance), meaning the first data is a first data packet or a first set of low-importance data packets. In addition, the second duration is shorter than the first duration. For example, if the first instruction is a MAC CE or DCI in a specific format, by default, the target importance indicated by the first instruction is considered low importance.
[0137] According to this solution, the first communication device can preferentially discard less important first data packets / packet sets by shortening the duration of the discard timer for less important first data packets / packet sets based on first instruction information, in order to provide more transmission opportunities for high-priority data packets / packet sets. In the event of network congestion, this solution helps to alleviate the strain on network resources and ensure the normal transmission of high-priority data. This helps to increase the effective capacity of the network and improve the user experience.
[0138] For example, in a scenario where the second communication device determines that network congestion has occurred, the second communication device can generate first instruction information and transmit the first instruction information to the first communication device.
[0139] For example, a second communication device can determine whether network congestion is occurring using its own algorithm. For instance, the second communication device can determine network congestion by comparing the amount of available transmission resources with the amount of data that all users in the network are scheduled to transmit. Network congestion is considered to occur when the amount of data to be transmitted exceeds the amount of available transmission resources of the second communication device over a certain period. It should be understood that this application does not particularly limit how the second communication device determines whether network congestion is occurring.
[0140] For example, the importance of a data packet may be determined based on the PSI and / or the remaining transmission delay budget corresponding to the data packet. Similarly, the importance of a data packet set may be determined based on the PSI and / or the remaining transmission delay budget corresponding to the data packet set. For example, the PSI corresponding to a data packet may be the PSI of the PDU set to which the data packet belongs. For example, the remaining transmission delay budget corresponding to a data packet may be the remaining PDB of the data packet, and the remaining transmission delay budget of a PDU set may be the remaining PSDB of the PDU set.
[0141] For example, if the PSI value can only be "high" or "low," then a PDU set with a "low" PSI is a low-priority PDU set, and all data packets belonging to that PDU set are low-priority data packets. Conversely, a PDU set with a "high" PSI is a high-priority PDU set, and all data packets belonging to that PDU set are high-priority data packets. For example, in an XR video stream, the PSI of the PDU set corresponding to an I-frame / I-slice is "high," and the PSI of the PDU set corresponding to a P-frame / P-slice is "low."
[0142] For example, if the PSI can have three or more values, a PDU set whose PSI reaches a certain threshold may be defined as a high-priority PDU set, and a PDU set whose PSI is below the threshold may be defined as a low-priority PDU set. For example, the PSI value may be 1, 2, 3, or 4, and the higher the PSI value, the higher the importance of the PDU set corresponding to the PSI, and the defined threshold is 3. In this case, PDU sets with PSIs of 3 and 4 are high-priority PDU sets, and all data packets belonging to the PDU set are high-priority data packets, while PDU sets with PSIs of 1 and 2 are low-priority PDU sets, and all data packets belonging to the PDU set are low-priority data packets. For example, when this method is applied to an uplink scenario, the threshold may be pre-specified in the protocol, pre-configured by a second communication device, or carried in the first instruction information. For example, when this method is applied to an SL communication scenario, the threshold may be pre-specified in the protocol, pre-configured by the network device or a second communication device, or carried in the first instruction information. It should be understood that an alternative definition may be that a smaller PSI value indicates a higher importance of the PDU set corresponding to the PSI.
[0143] For example, if the remaining PDB / PSDB of a data packet / data packet set is low (e.g., below a certain threshold, which may be pre-specified by the protocol, pre-configured by the network device, or carried in first directive information), in other words, if the data packet / data packet set is about to time out, the data packet / data packet set is considered low importance, while a data packet / data packet set with a high remaining PDB / PSDB is considered high importance. In a congestion scenario, transmission resources are limited, and the transmission of data packets / data packet sets with low remaining PDB / PSDB may not be completed within the transmission delay budget. In this case, the duration of the discard timer for the data packet / data packet set may be shortened, and transmission resources may be reserved for data packets / data packet sets with high remaining PDB / PSDB. This helps to ensure the transmission of data packets / data packet sets with high remaining PDB / PSDB.
[0144] For example, the importance of a data packet / data packet set can be measured based on the PSI and the remaining PDB / PSDB. For instance, a data packet / data packet set with low remaining PDB / PSDB (e.g., below a certain threshold) and a low PSI (e.g., a low PSI or below a certain threshold) may be considered of low importance.
[0145] In another possible implementation, the target importance is high importance (or high importance), meaning the first data is a first data packet or a first set of data packets of high importance. In addition, the second duration is longer than the first duration. For example, if the first instruction is a MAC CE or DCI in a specific format, by default, the target importance indicated by the first instruction is considered high importance.
[0146] For information on how to define or measure the importance of data packets and data packet sets, please refer to the previous explanation. Further details will not be provided here.
[0147] According to this solution, when network conditions are good, the second communication device can instruct the first communication device to extend the timer for some high-priority data. In this way, the first communication device can provide more transmission opportunities for high-priority data (e.g., I-frames) to ensure the successful transmission of high-priority data, and ensure that other data dependent on it (e.g., P-frames) can then be successfully decoded.
[0148] In yet another possible implementation, the first instruction information may include information about target importance. According to this solution, the first communication device, based on the first instruction information, determines that the importance is the target importance. ru de Flexible packet discarding of data packets / data packet sets is implemented by adjusting the discard timer for data packets / data packet sets. For example, if the importance indicated by target importance information is low, low-importance data may be preferentially discarded, reserving more transmission opportunities for high-importance data packets. In the event of network congestion, this solution helps alleviate the strain on network resources and ensure the smooth transmission of high-importance data. This helps increase the effective capacity of the network and improve the user experience.
[0149] For example, information regarding target importance may include one or more of the following: at least one PSI (e.g., PSI#1), at least one remaining transmission delay budget (e.g., remaining transmission delay budget #1), or at least one remaining transmission delay budget interval (e.g., remaining transmission delay budget interval #1, where remaining transmission delay budget interval #1 = [a, b]). For example, the first data packet / first data packet set whose PSI is PSI#1 is the first data. For example, the target importance information is PSI=3 (i.e., PSI#1 is 3). The first data packet / data packet set that has reached and / or not reached the PDCP layer (all PDCP entities or specified PDCP entities) when the first instruction information becomes valid is the first data. In another example, the first data packet / first data packet set whose remaining transmission delay budget is less than remaining transmission delay budget #1 is the first data. In yet another example, the first data packet / first data packet set whose remaining transmission delay budget is within interval [a, b] is the first data.
[0150] Note that for different PDCP entities, the importance of the data packets / data packet sets that need to have their discard timers adjusted may be the same or different. In other words, the target importance corresponding to (or associated with) different PDCP entities may be the same or different. The given PDCP entities are assumed to be PDCP Entity #1 and PDCP Entity #2. For example, the data packets / data packet sets that need to have their discard timers adjusted are low-importance data packets / data packet sets that have reached and / or not reached PDCP Entity #1 and PDCP Entity #2 when the first directive becomes effective. In other words, PDCP Entity #1 and PDCP Entity #2 correspond to the same target importance, i.e., low importance. In another example, the data packets / data packet sets that need to have their discard timers adjusted are data packets / data packet sets that have reached and / or not reached PDCP Entity #1 with a PSI of less than 2 when the first directive becomes effective, and data packets / data packet sets that have reached and / or not reached PDCP Entity #1 with a PSI of less than 3 when the first directive becomes effective, and PDCP Entity #2 #2 This refers to data packets / data packet sets that have been received and / or not yet received. In other words, P DCP entity #1 and PDCP entity #2 correspond to different target importance levels.
[0151] The following section explains how to determine the second duration using an example.
[0152] Example 1: The first instruction indicates that the second duration is a default value, and that the default value is 0. For example, if the first instruction is a MAC CE in a specific format or a DCI in a specific format, the second duration defaults to 0.
[0153] For example, if network congestion occurs, the second communication device expects the first communication device to discard less important data packets / packet sets. In this case, the second communication device sends first instruction information to the first communication device, instructing the first communication device to adjust the duration of the discard timer for less important data packets / packet sets to 0. After receiving the first instruction information, the first communication device adjusts the discard timers for all less important data packets / packet sets cached within the relevant PDCP entity to 0, so that the discard timers for less important data packets / packet sets expire immediately, and the less important data packets / packet sets are discarded. For less important data packets / packet sets that subsequently arrive at the relevant PDCP entity, the first communication device activates a discard timer with a duration of 0. In other words, data packets / packet sets are discarded immediately after arriving at the PDCP entity. This method can effectively mitigate network congestion and ensure the transmission of important data packets / packet sets.
[0154] Example 2: The first instruction information includes a second duration. For example, the second duration could be 0, 10ms, 20ms, etc.
[0155] For example, if network congestion occurs, the second communication device does not expect the first communication device to directly discard all low-priority data packets / packet sets, but instead instructs the first communication device to adjust the duration of the discard timer for low-priority data packets / packet sets to be shorter than the original configuration value. In this way, some transmission opportunities are still reserved for low-priority data packets / packet sets. However, because the discard timer is shorter, low-priority data packets / packet sets are more likely to be discarded by timeouts compared to high-priority data packets / packet sets. Therefore, more transmission opportunities are reserved for high-priority data packets / packet sets.
[0156] Example 3: The first instruction information may indicate a second duration within a set of pre-configured durations.
[0157] In other words, multiple durations may be pre-configured. For example, in an uplink scenario, the second communication device can configure multiple durations using a PDCP-config information element. Alternatively, in an SL scenario, the network device or the second communication device can configure multiple durations (for example, using an RRC message). For example, the multiple durations are {0ms, 5ms, 10ms, 15ms}. The second communication device then transmits first instruction information to the first communication device. The first instruction information may indicate one of the multiple pre-configured durations. For example, a 2-bit field may be used to indicate four pre-configured durations, where, for example, "01" corresponds to 5ms among the four durations. If the first instruction information further indicates at least one DRB, then multiple durations may be pre-configured for at least one DRB.
[0158] Example 4: The second duration is associated with target importance, and the second communication device can determine the second duration based on target importance.
[0159] In a sense, the correspondence between the importance of a data packet / data packet set and the duration of the discard timer may be specified by the protocol or pre-configured by the network device (the second communication device in the uplink scenario). After learning the target importance, the second communication device can determine a second duration based on the correspondence.
[0160] For example, Table 1 shows the correspondence between the importance of a data packet / data packet set and the duration of the discard timer. The first instruction is assumed to indicate that the target importance is low. In this case, the second duration may be determined to be 10 ms.
[0161] [Table 1]
[0162] For example, Table 2 shows the correspondence between the importance of a data packet / data packet set and the duration of the discard timer. A higher PSI value indicates a higher importance of the data packet / data packet set. The first instruction information includes information about the target importance, and it is assumed that the information about the target importance is PSI=1. In this case, the second duration may be determined to be 10ms.
[0163] [Table 2]
[0164] Note that for different PDCP entities, the corresponding second duration may be the same or different. The specified PDCP entities are assumed to be PDCP entity #1 and PDCP entity #2. For example, the second instruction could indicate that the second duration corresponding to PDCP entity #1 is 10ms and the second duration corresponding to PDCP entity #2 is 15ms. Specifically, the first instruction indicates that the first communication device will adjust the discard timer for the first data packet / first data packet set of target importance corresponding to PDCP entity #1 to 10ms, and that the first communication device will adjust the discard timer for the first data packet / first data packet set of target importance corresponding to PDCP entity #2 to 15ms.
[0165] For example, S430 can be implemented in several ways, specifically as follows:
[0166] Method 1 The first data is the data that has reached the PDCP entity. Specifically, the first data is the target severity data packets / data packet sets that have reached some or all of the PDCP entities (i.e., the specified PDCP entity or all PDCP entities) when the first instruction information becomes effective. In this scenario, the first communication device can restart the discard timer based on the first instruction information and the second duration. Alternatively, the first communication device can decide to keep the discard timer running or that the discard timer has expired based on the first instruction information and the second duration.
[0167] In other words, for data packets / data packet sets of target importance that have reached some or all of the PDCP entities when the first instruction information becomes effective, the first communication device adjusts the discard timer corresponding to the data packets / data packet sets when the first instruction information becomes effective.
[0168] For example, when the first instruction information becomes valid, the first communication device may restart the active discard timers for target-priority data packets / data packet sets in some or all of the PDCP entities, based on the second duration.
[0169] For example, Figure 5 illustrates the adjustment of the duration of an active discard timer. Please refer to Figure 5. Data packet #1 is a low-priority data packet, and data packet #2 is a high-priority data packet. The duration of the discard timer before adjustment is the first duration t1. The first instruction indicates that the duration of the active discard timer for the low-priority data packet should be adjusted to the second duration t2. The first communication device receives the first instruction at time T0, and the first instruction becomes effective at time T0. Based on the second duration t2, the first communication device restarts the discard timer at time T0. When the discard timer expires, i.e., at time T1, the first communication device discards data packet #1.
[0170] In another example, once the first instruction becomes valid, the first communication device can determine whether the running duration of the active discard timer for target-priority data packets / data packet sets in some or all PDCP entities is longer than a second duration. If the discard timer's running duration is greater than or equal to the second duration, the discard timer is considered expired, and the first communication device can discard the data packets / data packet sets corresponding to the discard timer. Otherwise, the first communication device can continue running the discard timer based on the second duration.
[0171] For example, Figure 6 shows how to adjust the duration of an active discard timer. Please refer to Figure 6. Data packets #1 and #2 are low-priority data packets, and data packet #3 is a high-priority data packet. The duration of the discard timer before adjustment is the first duration t1. The first instruction indicates that the duration of the active discard timer for the low-priority data packet should be adjusted to the second duration t2. The first communication device receives the first instruction at time T0, and the first instruction becomes effective at time T0. For the discard timer corresponding to data packet #1, the first communication device determines that the discard timer expired at time T0, based on the fact that the discard timer was activated at T2 and its duration is the second duration t2, and discards data packet #1. For the discard timer corresponding to data packet #2, the first communication device determines that the discard timer did not expire at time T0, based on the fact that the discard timer was activated at T3 and its duration is the second duration t2, and continues to operate the discard timer. Subsequently, at time T4, i.e., when the discard timer expires, data packet #2 is discarded.
[0172] Optionally, for second data that has not reached the PDCP entity, the first communication device activates a discard timer based on the first duration when the second data reaches the PDCP entity, and the second data is a second data packet or a second data packet set of target importance.
[0173] In other words, for data packets / data packet sets of target importance that have reached some or all of the PDCP entities when the first instruction information becomes effective, the first communication device adjusts the data packet / data packet set discard timer to the second duration. For data packets / data packet sets of target importance that have reached some or all of the PDCP entities after the first instruction information has become effective, the first communication device does not adjust the data packet / data packet set discard timer; i.e., it starts and maintains the data packet / data packet set discard timer based on the first duration.
[0174] Method 2 The first data is data that has not yet reached the PDCP entity. In this scenario, the first communication device can activate and maintain a discard timer based on the first instruction information and the second duration when the first data reaches the PDCP entity.
[0175] In other words, for data packets / data packet sets of target importance that reach some or all of the PDCP entities after the first instruction information has become effective, the first communication device may activate and maintain a discard timer for the data packets / data packet sets based on the second duration.
[0176] For example, Figure 7 illustrates the adjustment of the duration of an inactive discard timer. Please refer to Figure 7. Data packets #1 and #3 are low-priority data packets, and data packet #2 is a high-priority data packet. The duration of the discard timer before adjustment is the first duration t1. The first instruction indicates adjusting the duration of the inactive discard timer for the low-priority data packets to the second duration t2. The first communication device receives the first instruction at time T0. Data packet #1 reaches the PDCP entity at time T1, and the first communication device activates the discard timer corresponding to data packet #1 at time T1. The duration of the discard timer is the second duration t2. Data packet #2 reaches the PDCP entity at time T2, and the first communication device activates the discard timer corresponding to data packet #2 at time T2. Since data packet #2 is a high-priority data packet, the duration of the discard timer is the first duration t1. Data packet #3 reaches the PDCP entity at time T3, and the first communication device activates the discard timer corresponding to data packet #3 at time T3, with the duration of the discard timer being the second duration t2.
[0177] Optionally, for any second data reaching a PDCP entity, the first communication device activates a discard timer based on a first duration, and the second data is a second data packet or a second data packet set of target importance.
[0178] In other words, for data packets / data packet sets of target importance that have reached some or all of the PDCP entities when the first instruction information becomes effective, the first communication device does not adjust the data packet / data packet set discard timer, i.e., maintains the data packet / data packet set discard timer based on the first duration. For data packets / data packet sets of target importance that have reached some or all of the PDCP entities after the first instruction information has become effective, the first communication device adjusts the data packet / data packet set discard timer set to the second duration.
[0179] Method 3 The first data includes data that has reached and has not reached the PDCP entity. In other words, the first data includes target-severity data packets / data packet sets that have reached some or all of the PDCP entity when the first instruction information becomes effective, and target-severity data packets / data packet sets that have reached some or all of the PDCP entity after the first instruction information becomes effective.
[0180] For data packets / data packet sets of target importance that have reached some or all of the PDCP entities when the first instruction information becomes effective, the first communication device may adjust the discard timer in method 1. For data packets / data packet sets of target importance that have reached some or all of the PDCP entities after the first instruction information has become effective, the first communication device may adjust the discard timer in method 2.
[0181] For example, if network congestion occurs, the second communication device expects the first communication device to discard less important data packets / packet sets. In this case, the second communication device sends first instruction information to the first communication device, instructing the first communication device to adjust the duration of the discard timer for less important data packets / packet sets to 0. After receiving the first instruction information, the first communication device adjusts the discard timers for all less important data packets / packet sets cached within the relevant PDCP entity to 0, so that the discard timers for the less important data packets / packet sets expire immediately, and the less important data packets / packet sets are discarded. For any less important data packets / packet sets that subsequently arrive at the relevant PDCP entity, the first communication device activates a discard timer with a duration of 0; in other words, the data packets / packet sets are discarded immediately after arriving at the PDCP entity.
[0182] In possible implementations, method 400 may further include the following steps:
[0183] S440: The second communication device transmits the second instruction information to the first communication device. In response, the first communication device receives the second instruction information. The second instruction information instructs the first communication device to adjust the duration of the first data discard timer from the second duration to the first duration.
[0184] S450: The first communication device adjusts the duration of the first data discard timer from the second duration to the first duration.
[0185] For example, based on Method 2, for data packets / data packet sets of target importance that reach some or all of the PDCP entities after the first instruction information becomes effective, the first communication device activates and maintains a discard timer for the data packets / data packet sets based on the second duration. After a certain period, the second communication device transmits the second instruction information to the first communication device. For data packets / data packet sets of target importance that reach some or all of the PDCP entities after the second instruction information becomes effective, the first communication device activates and maintains a discard timer for the data packets / data packet sets set based on the first duration.
[0186] For example, the first instruction information is transmitted by the second communication device when network congestion occurs. After the network congestion is relieved, the second communication device can transmit the second instruction information to the first communication device. In this way, the first communication device adjusts the duration of the discard timer for the first data to the first duration based on the second instruction information so that the first data has a long transmission opportunity.
[0187] For example, Figure 8 is a diagram showing how to adjust the duration of the discard timer. Based on Figure 7, data packet #4 is added in Figure 8. The specific details of the discard timers for data packets #1, #2, and #3 in Figure 8 are the same as in Figure 7. For details, please refer to the above explanation of Figure 7. Please refer to Figure 8. The second communication device receives the second instruction information at time T4, and the less important data packet #4 arrives at the first communication device at time T5. Based on the second instruction information and the first duration t1, the first communication device activates and maintains the discard timer for data packet #4 at time T5.
[0188] In possible implementations, when the first instruction information becomes valid, the first communication device may further activate a timer (e.g., referred to as the first timer). The duration of the discard timer for the first data is the second duration while the first timer is running, and the first communication device may adjust the duration of the discard timer for the first data from the second duration to the first duration when the first timer expires.
[0189] For example, based on Method 2, when the first instruction information becomes valid, the first communication device can activate the first timer. For data packets / data packet sets of target importance that reach some or all of the PDCP entities while the first timer is running, the first communication device activates and maintains a data packet / data packet discard timer configured based on the second duration. For data packets / data packet sets of target importance that reach some or all of the PDCP entities after the first timer has expired, the first communication device activates and maintains a data packet / data packet discard timer configured based on the first duration.
[0190] For example, the duration of the first timer may be predefined, for example, by the 3GPP protocol, or preconfigured by the network device for the first communication device, for example, by using the RRC information element PDCP-config, or indicated in the first instruction message.
[0191] For example, Figure 9 is a diagram illustrating the adjustment of the duration of an inactive discard timer. Based on Figure 7, data packet #4 is added in Figure 9. The specific details of the discard timers for data packets #1, #2, and #3 in Figure 9 are the same as in Figure 7. For details, please refer to the above explanation of Figure 7. Please refer to Figure 9. At time T0, the first communication device activates the first timer, which expires at time T4. At time T5, the less important data packet #4 arrives at the first communication device. Based on the second instruction information and the first duration t1, the first communication device activates and maintains the discard timer for data packet #4 at time T5.
[0192] In a possible implementation, the method may further include the step of the first communication device sending a buffer status report to the second communication device when the first data is discarded, the buffer status report being used to report the amount of data currently scheduled to be transmitted.
[0193] After learning the amount of data currently scheduled to be transmitted from the first communication device based on the buffer status report, the second communication device can configure transmission resources for the first communication device that match the amount of data currently scheduled to be transmitted. This facilitates the normal transmission of data packets from the first communication device and avoids wasting network resources.
[0194] In possible implementations, the method may further include the step of the first communication device transmitting specific packet discard information, such as the signal-to-noise ratio (SN) of the first data, to the second communication device when the first data is discarded.
[0195] Based on packet discard information, after learning that the first data has been discarded, the second communication device can adjust its receive window. For example, a PDCP entity can set the SN (Notification Number) of the next data packet (variable RX_DELIV in 3GPP protocol 38.323) that is scheduled to be delivered to the upper layer to the SN after the SN of the first data. In this way, the PDCP entity of the second communication device can directly process the data with a SN after the SN of the first data, rather than waiting indefinitely for the first data, thus avoiding a situation where received data cannot be delivered to the application layer in a timely manner due to waiting for discarded data for a long time.
[0196] In a scenario where the second duration is 0 and the first data is data that has not reached the PDCP entity, the first communication device discards the first data at the SDAP layer based on the first instruction information, in an alternative way to S430.
[0197] In a scenario where the second duration is 0 and the first data includes both data that has reached the PDCP entity and data that has not reached the PDCP entity, in an alternative manner to S430, the first communication device adjusts the discard timer for data that has reached the PDCP entity to 0 based on the first instruction information and discards data that has not reached the PDCP entity at the SDAP layer.
[0198] Optionally, this method may be combined with the aforementioned solutions relating to a second instruction or a first timer.
[0199] For example, the first instruction information is transmitted by the second communication device when network congestion occurs. After the network congestion is relieved, the second communication device may transmit the second instruction information to the first communication device to instruct the first communication device to adjust the discard timer for less important data packets / data packet sets back to a first duration.
[0200] Those skilled in the art will understand, based on the solutions described above, that in downlink communication scenarios, network devices can also adjust the duration of discard timers corresponding to certain data at the PDCP layer. For example, in the event of network congestion, network devices can adjust the discard timers for all PDCP entities or for low-priority data packets that have reached and / or not reached a specific PDCP entity.
[0201] In conclusion, the packet discarding method provided in this application allows for flexible packet discarding in different scenarios by quickly and flexibly adjusting the duration of the discard timer for certain data (e.g., first data), thereby helping to increase the effective network capacity and improve the user experience. For example, in scenarios where network congestion occurs, the duration of the discard timer for less important data packets / packet sets can be adjusted, resulting in the direct or preferential discarding of less important data packets / packet sets, thereby reducing the strain on network resources and ensuring the normal transmission of important data packets / packet sets.
[0202] Figure 10 is a schematic flowchart of the packet discarding method according to this application. Method 500 may include S510 to S530. Each step will be described in detail below.
[0203] S510: The second communication device generates the third instruction information.
[0204] For example, the third instruction information could be MAC CE or DCI. For example, the third instruction information could be MAC CE in a specific format or DCI in a specific format.
[0205] For example, the second communication device can perform S510 if it determines that network congestion is occurring. For details on how to determine whether network congestion is occurring, please refer to the related explanations mentioned above. Further details will not be explained here.
[0206] S520: The second communication device transmits the third instruction information to the first communication device. In response, the first communication device receives the third instruction information.
[0207] In the first implementation, the third instruction indicates that the first communication device adjusts the discard timer to 0 for data packets or data packet sets of first importance that have reached at least one PDCP entity, and / or discards data packets or data packet sets of first importance that have not reached at least one PDCP entity.
[0208] In the second implementation, the third instruction information instructs the first communication device to discard data packets or sets of data packets of first importance that have reached and / or not reached at least one PDCP entity.
[0209] In one example, at least one PDCP entity could be all PDCP entities. In another example, at least one PDCP entity could be one or more specified PDCP entities. In this scenario, the third instruction information may further include information about at least one PDCP entity, for example, an identifier for the DRB corresponding to at least one PDCP entity.
[0210] For methods of determining or measuring the importance of data packets / data packet sets, please refer to Method 400. Further details will not be provided here.
[0211] In one example, the first importance level could be low importance. For instance, the PSI corresponding to a data packet / data packet set might be "low" or below a certain threshold.
[0212] In another example, the third instruction information may include information about the first importance level, for example, it may include the PSI corresponding to the first importance level.
[0213] It should be understood that the first indicator information in method 400, which indicates that the second duration is 0, can be considered a possible form of the third indicator information.
[0214] S530: The first communication device performs the relevant processing based on the third instruction information.
[0215] Specifically, in accordance with the first implementation described in S520, the first communication device may, based on the third instruction information, adjust the discard timer to 0 for data packets or data packet sets of first importance that have reached at least one PDCP entity, and / or discard data packets or data packet sets of first importance that have not reached at least one PDCP entity.
[0216] For example, after receiving third instruction information, the first communication device may instruct the protocol layer above the PDCP layer (e.g., the SDAP layer) to discard the first data, that is, to discard data packets / sets of data packets of a first importance that are destined to be delivered to at least one PDCP entity, instead of forwarding these data packets / sets of data packets to the PDCP layer. In this way, the processing time of the first communication device can be further reduced.
[0217] In another example, after receiving the third instruction information, the first communication device may adjust the discard timer to 0 for any data packets or sets of data packets of first importance that have reached at least one PDCP entity.
[0218] In yet another example, after receiving the third instruction information, the first communication device may adjust the discard timer to 0 for data packets or data packet sets of first severity that have reached at least one PDCP entity, and at the SDAP layer, discard data packets or data packet sets of first severity that have not reached at least one PDCP entity.
[0219] In accordance with the second implementation described in S520, after receiving the third instruction information, the first communication device may discard data packets or sets of data packets of first importance that have reached and / or not reached at least one PDCP entity.
[0220] For example, in one scenario where a third instruction indicates that a data packet or set of data packets of first severity that has reached at least one PDCP entity should be discarded, the first communication device may, after receiving the third instruction, directly discard the data packet or set of data packets of first severity that has reached at least one PDCP entity, regardless of whether the discard timer has expired.
[0221] In another example, in a scenario where a third instruction indicates that data packets or data packet sets of first importance that have not reached at least one PDCP entity should be discarded, after the first communication device receives the third instruction, the PDCP entities, upon receiving data packets or data packet sets of first importance that have reached at least one PDCP entity after the third instruction has become effective, may not activate the discard timer and, optionally, directly discard the data packets or data packet sets without performing any processing such as SN assignment on the data packets or data packet sets. Alternatively, the discard operation for data packets or data packet sets of first importance of at least one PDCP entity may be performed at the SDAP layer.
[0222] In yet another example, in a scenario where a third instruction indicates that data packets or data packet sets of first importance that have not yet reached or have reached at least one PDCP entity should be discarded, the first communication device, after receiving the third instruction, directly discards data packets or data packet sets of first importance that have reached at least one PDCP entity, regardless of whether the discard timer has expired. When a PDCP entity receives data packets or data packet sets of first importance that have reached at least one PDCP entity after the third instruction has become effective, it does not activate the discard timer and, optionally, directly discards the data packets or data packet sets without performing any processing such as assigning a number to them. Alternatively, the discard operation for data packets or data packet sets of first importance at at least one PDCP entity may be performed at the SDAP layer.
[0223] In this way, the first communication device does not need to directly discard data packets or data packet sets of a first severity level for at least one PDCP entity, nor does it need to activate and maintain a discard timer for data packets or data packet sets. This further reduces the complexity of processing for the first communication device.
[0224] The definition of the point in time when the third instruction information becomes effective is the same as the definition of the point in time when the first instruction information becomes effective in Method 400. For details, please refer to the above explanation of the point in time when the first instruction information becomes effective. Details will not be explained again here.
[0225] In conclusion, according to the packet discarding method provided in this application, the duration of the discard timer for some data (e.g., low-priority data) is adjusted to 0, or some data is discarded directly. Therefore, in the event of network congestion, the strain on network resources can be reduced, and the normal transmission of other data (e.g., high-priority data) can be ensured.
[0226] In possible implementations, method 500 may also be combined with a similar solution relating to the second instruction information or the first timer of method 400.
[0227] For example, after network congestion has been reduced, the second communication device may send a fourth instruction to the first communication device to indicate to at least one PDCP entity of the first communication device that it should stop discarding data packets / data packet sets of first importance. In another example, when the third instruction becomes effective, a timer (e.g., denoted as the second timer) may also be activated. When the second timer expires, the first communication device stops discarding data packets / data packet sets of first importance.
[0228] In possible implementations, when discarding associated data packets / sets of data packets, the first communication device may further report the amount of data currently scheduled for transmission to the second communication device. Based on the amount of data currently scheduled for transmission from the first communication device, the second communication device may configure transmission resources for the first communication device that match the amount of data currently scheduled for transmission. This facilitates the successful transmission of data packets from the first communication device.
[0229] In possible implementations, this method may further include the first communication device further transmitting specific packet discard information, such as the SN of the discarded data packet / packet set, to the second communication device when the associated data packet / packet set is discarded. Based on the packet discard information, the second communication device can learn that the associated data packet / packet set has been discarded and then adjust its receive window. For example, a PDCP entity may set the SN of the next data packet / packet set intended for delivery to the upper layer (variable RX_DELIV in 3GPP protocol 38.323) to a SN after the SN of the discarded data packet / packet set. In this way, the PDCP entity of the second communication device does not continue to wait for the discarded data packet / packet set, but instead processes the data with a SN after the SN of the discarded data packet / packet set directly, avoiding a situation where received data cannot be delivered to the application layer in a timely manner due to waiting for discarded data for a long time.
[0230] Those skilled in the art will understand, based on the aforementioned solution, that in a downlink communication scenario, the network device can also adjust the duration of the discard timer corresponding to some data at the PDCP layer, or discard some data directly.
[0231] This application further provides a communication method in which the transmission order of data packets is flexibly adjusted to match different network conditions. This helps to increase the effective capacity of the network and improve the user experience. This method is described in detail below.
[0232] Figure 11 is a schematic flowchart of the communication method according to this application. Method 600 may include S610 and S620. Each step will be described below.
[0233] S610: The first communication device generates at least one TB in order of the importance of the target data packets.
[0234] The target data packet may be a data packet associated with a specific DRB, LCH, or PDCP, or it may be a data packet associated with all DRBs, LCHs, or PDCPs.
[0235] For example, S610 can be implemented in several ways.
[0236] Method 1 When a target data packet reaches a PDCP entity, the PDCP entity sequentially assigns sequence numbers (SNs) to the target data packets in descending order of importance. In other words, the PDCP entity first assigns SNs to high-importance data packets, and then to low-importance data packets. In this way, the SNs of high-importance data packets are ranked before those of low-importance data packets. Therefore, high-importance data packets are processed first, delivered to lower layers, and then positioned first when mapped to TBs.
[0237] For example, Figure 12 illustrates how a PDCP entity assigns SNs to data packets. Please refer to Figure 12. Data packet #1 is a high-priority data packet, while data packets #2 and #3 are low-priority data packets, and data packets #2, #3, and #1 arrive at the PDCP entity in sequence. The PDCP entity first assigns SN (i.e., SN#1) to data packet #1, then SN (i.e., SN#2) to data packet #2, and finally SN (i.e., SN#3) to data packet #3. The PDCP entity delivers the data packets to the RLC entity based on the order of data packets #1, #2, and #3. The RLC entity then delivers the data packets to the MAC entity based on the order of data packets #1, #2, and #3. The MAC entity assembles the MAC PDU based on the order of data packet #1, data packet #2, and data packet #3, and then delivers the MAC PDU to the PHY layer.
[0238] Method 2 Target data packets are still processed in the order they arrive at the PDCP entity, which then sequentially delivers the target data packets to the RLC entity in descending order of importance. In other words, the PDCP entity delivers the most important data packets to the RLC entity first, and then the less important data packets to the RLC entity. In this way, the RLC entity receives and processes the most important data packets first, and as a result, the most important data packets are at the beginning when mapped to the TB.
[0239] For example, Figure 13 illustrates the distribution of data packets from a PDCP entity to an RLC entity. Please refer to Figure 13. Data packet #1 is a high-priority data packet, while data packets #2 and #3 are low-priority data packets, and data packets #2, #3, and #1 arrive at the PDCP entity in sequence. The PDCP entity assigns SNs, i.e., SN#1, SN#2, and SN#3, to data packets #2, #3, and #1, respectively. The PDCP entity then distributes data packets #1, #2, and #3 to the RLC entity in order of importance. The RLC entity then distributes the data packets to the MAC entity based on the order of data packets #1, #2, and #3. The MAC entity assembles the MAC PDU based on the order of data packets #1, #2, and #3, and then distributes the MAC PDU to the PHY layer.
[0240] Method 3 Target data packets are still processed in the order of arrival at the PDCP and RLC entities, with the RLC entities sequentially distributing the target data packets to MAC entities in descending order of importance. In other words, the RLC entities first distribute high-priority data packets to MAC entities, followed by low-priority data packets. In this way, high-priority data packets can be mapped to TB first.
[0241] For example, Figure 14 illustrates the distribution of data packets from an RLC entity to a MAC entity. Please refer to Figure 14. Data packet #1 is a high-priority data packet, while data packets #2 and #3 are low-priority data packets, and data packets #2, #3, and #1 arrive sequentially at the PDCP entity. The PDCP entity assigns SNs, i.e., SN#1, SN#2, and SN#3, to data packets #2, #3, and #1, respectively. The PDCP entity then sequentially distributes data packets #2, #3, and #1 to the RLC entity in ascending order of SNs. The RLC entity then sequentially distributes data packets #1, #2, and #3 to the MAC entity in descending order of importance. The MAC entity assembles the MAC PDU based on the order of data packets #1, #2, and #3, and then distributes the MAC PDU to the PHY layer.
[0242] Figures 12-14 merely illustrate the sequence of data packet delivery / assembly by the relevant protocol layers, or the sequence of SN assignment to data packets by the relevant protocol layers. For other processing that needs to be performed on data packets by each layer, please refer to prior art; details are not described in this application.
[0243] S620: The first communication device transmits at least one TB to the second communication device. In response, the second communication device receives at least one TB.
[0244] According to the method provided in this application, the first communication device prioritizes mapping high-priority data packets to ensure that the transmission of high-priority data packets is prioritized when resources are limited. Low-priority data packets are not directly discarded but are transmitted on a best-effort basis using remaining resources. Data packets are discarded only after the delay budget has been exhausted. In this way, the transmission of high-priority data packets is guaranteed, and a portion of low-priority data packets are reserved on a best-effort basis, thereby improving the user experience.
[0245] Method 600 can be applied to uplink communication scenarios, downlink communication scenarios, and SL communication scenarios. When the method is applied to an uplink communication scenario or an SL communication scenario, Method 600 may further include the following optional embodiments.
[0246] For example, a second communication device may indicate to the first communication device the DRB, LCH, or PDCP entity corresponding to the target data packet. For instance, the second communication device may use an RRC message, MAC CE, or DCI to indicate the DRB, LCH, or PDCP entity corresponding to the target data packet.
[0247] In one example, a second communication device may transmit first instruction information to the first communication device, which may instruct the first communication device to generate at least one TB in descending order of importance of target data packets. For example, the first instruction information may be MAC CE or DCI.
[0248] For example, when network congestion occurs, the second communication device can transmit the first instruction information to the first communication device.
[0249] Optionally, the second communication device may transmit a second instruction to the first communication device after a certain period of time, and the second instruction may instruct the first communication device to generate a TB based on the order in which the target data packets reach the protocol layer.
[0250] For example, after network congestion has been reduced or eliminated, the second communication device can transmit second instruction information to the first communication device.
[0251] Optionally, upon receiving the first instruction information, the first communication device may further activate a timer (e.g., referred to as the first timer). While the first timer is running, the first communication device generates TBs in descending order of importance of the target data packets, and after the first timer expires, generates TBs based on the order in which the target data packets arrive at the protocol layer.
[0252] The above describes embodiments of the method provided in this application, and the following describes embodiments of the apparatus provided in this application. Please understand that the description of the apparatus embodiments corresponds to the description of the method embodiments. Therefore, for details not described in detail, please refer to the method embodiments described above. For brevity, further details will not be explained here.
[0253] Figure 15 is a block diagram of a communication device according to one embodiment of the present application. As shown in Figure 15, the communication device 2000 may include a communication unit 2100 and a processing unit 2200. The communication unit 2100 may implement a corresponding communication function. The communication may be internal communication of the communication device 2000 or communication between the communication device 2000 and another device. The processing unit 2200 may implement a corresponding processing function. The communication unit 2100 may also be called a communication interface or transceiver unit. Optionally, the communication device 2000 may further include a storage unit. The storage unit may be configured to store instructions and / or data. The processing unit 2200 may read instructions and / or data from the storage unit, enabling the device to implement embodiments of the method described above.
[0254] In possible designs, the communication device 2000 may be the first communication device of Method 400, or it may be a module or chip used in the first communication device. The communication device 2000 may be configured to perform steps or procedures performed by the first communication device in the embodiments described above.
[0255] Specifically, the communication unit 2100 is configured to receive first instruction information from a second communication device, the first instruction information indicating to adjust the duration of a discard timer to a second duration, which corresponds to first data in the Packet Data Convergence Protocol (PDCP) layer, the first data being a first data packet or a first data packet set of target importance, and the processing unit 2200 is configured to adjust the duration of the discard timer from a first duration to a second duration based on the first instruction information.
[0256] Optionally, the first data is a first data packet or a set of first data packets of low importance, and the duration of the first data is longer than the duration of the second data.
[0257] Optionally, the importance of any data packet is determined based on the protocol data unit (PDU) set importance PSI corresponding to the data packet and / or the remaining transmission delay budget corresponding to the data packet, and / or the importance of any set of data packets is determined based on the PSI corresponding to the set of data packets and / or the remaining transmission delay budget corresponding to the set of data packets.
[0258] Optionally, the first instruction information may indicate that the second duration is 0 by default, or include the second duration, or indicate the second duration within a set of pre-configured durations, or include information about the target importance and the second duration, or include information about the target importance and the second duration is associated with the target importance.
[0259] Optionally, the processing unit 2200 is specifically configured to adjust the duration of the discard timer from a first duration to a second duration based on the target importance PSI and PSI threshold.
[0260] Optionally, the first instruction information further indicates the data radio bearer DRB associated with the first data.
[0261] Optionally, the first data is data that has reached the PDCP entity, and the processing unit 2200 is specifically configured to restart the discard timer based on the first instruction information and the second duration, or to continue operating the discard timer based on the first instruction information and the second duration, or to determine that the discard timer has expired based on the first instruction information and the second duration.
[0262] Optionally, the first data is data that has not reached a PDCP entity, and the processing unit 2200 is specifically configured to activate a discard timer based on the first instruction information and the second duration when the first data reaches a PDCP entity.
[0263] Optionally, the processing unit 2200 is further configured to activate a discard timer based on a first duration when the second data reaches the PDCP entity, for any second data that has not reached the PDCP entity, where the second data is a second data packet or a second data packet set of target importance.
[0264] Optionally, the communication unit 2100 is further configured to receive a second instruction from a second communication device, the second instruction indicating to adjust the duration of the discard timer from a second duration to a first duration, and the processing unit 2200 is further configured to adjust the duration of the discard timer from a second duration to a first duration.
[0265] The processing unit 2200 is optionally configured to further perform the following actions when a first instruction is received: start a first timer, the duration of which is the second duration of which the first timer is running; and adjust the duration of which is which when the first timer expires from the second duration to the first duration.
[0266] Optionally, the communication unit 2100 is further configured to send a buffer status report to a second communication device when the first data is discarded, and the buffer status report is used to report the amount of data currently scheduled for transmission.
[0267] In another possible design, the communication device 2000 may be the second communication device in the method described above, or it may be a module or chip used in the second communication device. The communication device 2000 may be configured to perform steps or procedures performed by the second communication device in the embodiment of the method described above.
[0268] Specifically, the processing unit 2200 is configured to generate first instruction information, which instructs the first communication device to adjust the duration of a discard timer corresponding to first data in the packet data convergence protocol PDCP layer to a second duration, the first data being a first data packet or a first data packet set of target importance, and the communication unit 2100 is configured to transmit the first instruction information to the first communication device.
[0269] Optionally, the first data is a first data packet or set of first data packets of low importance, and the second duration is shorter than the current duration of the discard timer.
[0270] Optionally, the importance of any data packet is determined based on the protocol data unit (PDU) set importance PSI corresponding to the data packet and / or the remaining transmission delay budget corresponding to the data packet, and / or the importance of any set of data packets is determined based on the PSI corresponding to the set of data packets and / or the remaining transmission delay budget corresponding to the set of data packets.
[0271] Optionally, the first instruction information may indicate that the second duration is 0 by default, or include the second duration, or indicate the second duration within a set of pre-configured durations, or include information about the target importance and the second duration, or include information about the target importance and the second duration is associated with the target importance.
[0272] Optionally, the first indication information further indicates a data radio bearer (DRB) associated with the first data.
[0273] Optionally, the communication unit 2100 is further configured to send second indication information to the first communication device, the second indication information indicating to the first communication device to adjust the duration of a discard timer from a second duration to a first duration, the first duration being the duration of the discard timer before the duration of the discard timer is adjusted to the second duration.
[0274] Optionally, the communication unit 2100 is further configured to receive a buffer status report from the first communication device, the buffer status report being used to report the amount of data of the current transmission schedule of the first communication device.
[0275] Optionally, the communication unit 2100 is further configured to send the duration of a first timer to the first communication device, the duration of the discard timer being a second duration during which the first timer is running, and the first communication device needs to adjust the duration of the discard timer from the second duration to the first duration when the first timer expires, the first duration being , discard the duration of the discard timer before the current duration is adjusted to the second duration.
[0276] Optionally, before generating the first indication information, the communication device determines that network congestion has occurred It is further configured to .
[0277] For details of the steps or procedures performed by the units within the communication device 2000, refer to method 400. Details will not be described again here.
[0278] It should be understood that the communication device 2000 can perform further operations performed by the first or second communication device in Method 500 or Method 600. For details of the steps or procedures performed by the units within the communication device 2000, please refer to Method 500 or Method 600. Details will not be described again here.
[0279] It should be understood that a “unit” within the communication device 2000 may be implemented by hardware, by software, or by hardware running the corresponding software. For example, a “unit” may refer to an application-specific integrated circuit (ASIC), an electronic circuit, a processor configured to run one or more software or firmware programs (e.g., a shared processor, a dedicated processor, or a group processor), memory, a combinational logic circuit, and / or another suitable component that supports the described function. As another example, the communication unit 2100 may be replaced by a transceiver or transceiver circuit (e.g., which may include a receiver circuit and a transmitter circuit), and the processing unit 2200 may be replaced by a processor or processing circuit.
[0280] Figure 16 is a block diagram of another communication device 3000 according to one embodiment of the present application. The device 3000 may be the first communication device or the second communication device, or it may be a chip, chip system, processor, etc. that supports the first communication device or the second communication device when implementing the method described above. The device may be configured to implement the method described in the embodiments of the method described above. For details, please refer to the description in the embodiments of the method described above.
[0281] The device 3000 may include one or more processors 3100. A processor 3100 may also be called a processing unit and may implement specific control functions. A processor 3100 may be a general-purpose processor, a dedicated processor, or, for example, a baseband processor or a central processing unit. A baseband processor may be configured to process communication protocols and communication data. A central processing unit may be configured to control communication equipment (e.g., a base station, baseband chip, user chip, DU, or CU), execute software programs, and process data from software programs.
[0282] In an optional design, the processor 3100 may also store instructions and / or data, which may be executed by the processor 3100 to enable the device 3000 to carry out the method described in the embodiments of the above-mentioned method.
[0283] In another optional design, the device 3000 may include a communication interface 3200 configured to implement receiving and transmitting functions. For example, the communication interface 3200 may be a transceiver circuit, interface, interface circuit, or transceiver. The transceiver circuit, interface, interface circuit, or transceiver configured to implement receiving and transmitting functions may be separate or integrated. The transceiver circuit, interface, interface circuit, or transceiver may be configured to read or write code / data, or the transceiver circuit, interface, interface circuit, or transceiver may be configured to transmit or transfer signals.
[0284] Optionally, the device 3000 may include one or more memories 3300. The memories 3300 can store instructions. Instructions can be executed on the processor 3100 to enable the device 3000 to perform the methods described in the embodiments of the above-mentioned methods. Optionally, the memories 3300 may further store data. Optionally, the processor 3100 may also store instructions and / or data. The processor 3100 and the memories 3300 may be located separately or integrated with each other.
[0285] Figure 17 shows the configuration of the terminal device 4000 according to this application. The communication device 2000 or the communication device 3000 may be configured in the terminal device 4000. Alternatively, the communication device 2000 or the communication device 3000 may be the terminal device 4000. In other words, the terminal device 4000 can perform the operations performed by the terminal device in the method embodiments described above. Optionally, for ease of explanation, Figure 17 shows only the main components of the terminal device. As shown in Figure 17, the terminal device 4000 includes a processor, memory, control circuits, an antenna, and input / output devices.
[0286] The processor is primarily configured to process communication protocols and data, control the entire terminal device, execute software programs, process data from software programs, and, for example, support the terminal device when performing the operations described in the embodiments of the above-mentioned methods. Memory is primarily configured to store software programs and data. Control circuits are primarily configured to convert baseband signals to radio frequency signals and to process radio frequency signals. Control circuits and antennas may be collectively referred to as transceivers and are primarily configured to transmit and receive radio frequency signals in the form of electromagnetic waves. Input / output devices such as touchscreens, displays, or keyboards are primarily configured to receive data entered by the user and output data to the user.
[0287] After the terminal device is powered on, the processor can read the software program in the memory unit, interpret and execute the software program's instructions, and process the software program's data. If the data needs to be transmitted wirelessly, the processor performs baseband processing on the data to be transmitted and then outputs a baseband signal to the radio frequency circuit. The radio frequency circuit performs radio frequency processing on the baseband signal and then transmits the radio frequency signal in the form of electromagnetic waves through the antenna. When data is transmitted to the terminal device, the radio frequency circuit receives the radio frequency signal through the antenna, converts the radio frequency signal back into a baseband signal, and outputs the baseband signal to the processor. The processor converts the baseband signal back into data and processes the data.
[0288] Those skilled in the art should understand that Figure 17 shows only one memory and one processor for the sake of clarity. Actual terminal devices may include multiple processors and memory. Memory may also be called a storage medium, storage device, etc. This is not limited to the embodiments of this application.
[0289] For example, a processor may include a baseband processor and a central processing unit. The baseband processor is primarily configured to process communication protocols and communication data. The central processing unit is primarily configured to control the entire terminal device, execute software programs, and process the data of the software programs. The processor in Figure 17 integrates the functions of a baseband processor and a central processing unit. Those skilled in the art will understand that the baseband processor and the central processing unit may, alternatively, be independent processors interconnected via a bus or by using another technology. Those skilled in the art will understand that a terminal device may include multiple baseband processors to adapt to different network standards, a terminal device may include multiple central processing units to enhance the processing capabilities of the terminal device, and the components of the terminal device may be connected via various buses. The baseband processor may also be referred to as a baseband processing circuit or a baseband processing chip. The central processing unit may also be referred to as a central processing circuit or a central processing chip. The functions for processing communication protocols and communication data may be built into the processor or stored in a memory unit in the form of a software program, and the processor executes that software program to implement the baseband processing functions.
[0290] For example, in this embodiment of the present application, the antenna and control circuit having receiving and transmitting functions may be considered as the transceiver unit 4100 of the terminal device 4000, and the processor having processing functions may be considered as the processing unit 4200 of the terminal device 4000. As shown in Figure 17, the terminal device 4000 includes the transceiver unit 4100 and the processing unit 4200. The transceiver unit may also be called a transceiver, transceiver machine, transceiver device, etc. Optionally, components configured to implement receiving functions in the transceiver unit 4100 may be considered as receiving units, and components configured to implement transmitting functions in the transceiver unit 4100 may be considered as transmitting units. That is, the transceiver unit 4100 includes receiving units and transmitting units. For example, the receiving unit may also be called a receiver, receiver machine, receiving circuit, etc., and the transmitting unit may also be called a transmitter, transmitter machine, transmitting circuit, etc.
[0291] Figure 18 shows the structure of a network device 5000 according to one embodiment of the present application. The communication device 2000 or the communication device 3000 may be configured in the network device 5000. Alternatively, the communication device 2000 or the communication device 3000 may be the network device 5000. Alternatively, the network device 5000 may perform operations performed by the network device (for example, when the method described above is applied to an uplink scenario, the second communication device is the network device) in embodiments of the method described above.
[0292] As shown in Figure 18, the network device 5000 may include one or more DU5010s and one or more CU5020s. The CU5020 can communicate with the NG core (next-generation core network, NC). The DU5010 may include at least one antenna 5011, at least one radio frequency unit 5012, at least one processor 5013, and at least one memory 5014. The DU5010 is mainly configured to transmit and receive radio frequency signals, convert radio frequency signals and baseband signals, and perform partial baseband processing. The CU5020 may include at least one processor 5022 and at least one memory 5021. The CU5020 and DU5010 can communicate with each other via interfaces. The control plane (CP) interface may be Fs-C, for example F1-C, and the user plane (UP) interface may be Fs-U, for example F1-U.
[0293] CU5020 is primarily configured to perform baseband processing and control the network device 5000, among other things. DU5010 and CU5020 may be physically located together or physically separated, i.e., in a distributed base station. CU5020 is the control center for the network device 5000, sometimes referred to as a processing unit, and is primarily configured to perform baseband processing functions. For example, CU5020 may be configured to control the network device 5000 to perform operating procedures related to the first or second device in the embodiments of the method described above.
[0294] Specifically, the baseband processing of the CU and DU may be divided based on the protocol layer of the wireless network. For example, the functions of the PDCP layer and the protocol layers above the PDCP layer may be set to the CU, while the functions of the protocol layers below the PDCP layer, such as the RLC layer and MAC layer, may be set to the DU. As another example, the CU implements the functions of the RRC layer and PDCP layer, and the DU implements the functions of the RLC layer, MAC layer, and PHY layer.
[0295] In addition, the network device 5000 may optionally include one or more radio frequency units (RUs), one or more DUs, and one or more CUs. The DU may include at least one processor 5013 and at least one memory 5014, the RU may include at least one antenna 5011 and at least one radio frequency unit 5012, and the CU may include at least one processor 5022 and at least one memory 5021.
[0296] In one example, CU5020 may include one or more boards. The plurality of boards may jointly support a wireless access network with a single access standard (e.g., a 5G network), or may separately support wireless access networks with different access standards (e.g., an LTE network, a 5G network, or another network). Memory 5021 and processor 5022 can provide services to one or more boards. In other words, the memory and the processor may be disposed on each board. Alternatively, the plurality of boards can share the same memory and the same processor. In addition, necessary circuits may be further disposed on each board. DU5010 may include one or more boards. The plurality of boards may jointly support a wireless access network with a single access standard (e.g., a 5G network), or may separately support wireless access networks with different access standards (e.g., an LTE network, a 5G network, or another network). Memory 5014 and processor 5013 can provide services to one or more boards. In other words, the memory and the processor may be disposed on each board. Alternatively, the plurality of boards can share the same memory and the same processor. In addition, necessary circuits may be further disposed on each board.
[0297] It should be understood that the network device 5000 shown in FIG. 18 can implement a process related to the operations performed by the second communication device in the embodiments of the foregoing method. The operations and / or functions of the modules within the network device 5000 are respectively for implementing the corresponding procedures in the embodiments of the foregoing method. For details, reference may be made to the description in the foregoing method embodiments. To avoid repetition, the detailed description is omitted herein as appropriate.
[0298] It should be understood that the network device 5000 shown in Figure 18 is merely a possible architecture for a network device and should not constitute any limitation to this application. The methods provided in this application are applicable to network devices of other architectures, such as network devices including CUs, DUs, and AAUs. The specific architecture of a network device is not limited in this application.
[0299] It should be understood that, in possible designs, the steps of embodiments of the methods provided in this application may be completed by using hardware-integrated logic circuits within a processor or by using instructions in the form of software. The steps of the methods disclosed with reference to embodiments of this application may be carried out directly by a hardware processor or by using a combination of hardware and software modules within the processor. The software modules may be located in mature storage media of the art, such as random-access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. The storage media is located in memory, and the processor reads information from memory and, together with the processor hardware, completes the steps in the aforementioned methods. To avoid repetition, further details will not be described here.
[0300] Note that the processor in the embodiments of this application may be an integrated circuit chip and has signal processing capabilities. During implementation, the steps in the embodiments of the method described above may be completed by using hardware integrated logic circuits within the processor or by using instructions in the form of software. The processor may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or another programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component. The processor may implement or carry out the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor, or the processor may be any conventional processor, etc. The steps of the methods disclosed with reference to embodiments of this application may be implemented and completed directly by a hardware decoding processor, or by using a combination of hardware and software modules within the decoding processor. The software modules may be located in mature storage media of the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. The storage medium is placed in memory, and the processor reads the information from memory and, together with the processor hardware, completes the steps in the method described above.
[0301] It will be understood that the memory in the embodiments of this application may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory may be random access memory (RAM) used as an external cache. Rather than being a restrictive description, many forms of RAM may be used as examples, such as static random access memory (static RAM, SRAM), dynamic random access memory (dynamic RAM, DRAM), synchronous dynamic random access memory (synchronous DRAM, SDRAM), double data rate synchronous dynamic random access memory (double data rate SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (enhanced SDRAM, ESDRAM), synchlink dynamic random access memory (synchlink DRAM, SLDRAM), and direct rambus random access memory (direct rambus RAM, DR RAM). Note that the memory of the systems and methods described herein includes, but is not limited to, these memories and any other suitable type of memory.
[0302] This application further provides a computer program product, which includes computer program code. When the computer program code is run on a computer, the computer becomes capable of performing steps or procedures performed by the first or second communication device in any one of the aforementioned method embodiments.
[0303] This application further provides a computer-readable storage medium for storing program code. When the program code is run on a computer, the computer is able to perform steps or procedures performed by the first or second communication device in any one of the aforementioned method embodiments.
[0304] This application further provides a communication device including a processor and an interface. The interface is configured to transmit and / or receive signals, and as a result, the processor performs steps or procedures performed by the first or second communication device in any one of the aforementioned method embodiments.
[0305] This application further provides a communication system including at least one of a first communication device and a second communication device.
[0306] The embodiments of the apparatus described above correspond in full to the embodiments of the method, and the corresponding modules or units perform the corresponding steps. For example, a communication unit or communication interface may perform the receiving step or the transmitting step in the embodiments of the method, and a processing unit or processor may perform steps other than the transmitting step and the receiving step.
[0307] In the embodiments of this application, all terms and English abbreviations are given as examples for the sake of clarity and should not constitute any limitation to this application. This application does not preclude the possibility of defining other terms that may implement the same or similar functions in existing or future protocols.
[0308] As used herein, terms such as “component,” “module,” and “system” refer to computer-related entities, hardware, firmware, combinations of hardware and software, software, or running software. For example, a component may be, but is not limited to, a process running on a processor, a processor, an object, an executable file, an execution thread, a program, and / or a computer. As shown in the figure, both a computing device and an application running on that computing device may be components. One or more components may reside within a process and / or an execution thread, and components may reside on one computer and / or be distributed across two or more computers. In addition, these components may run from various computer-readable storage media that store various data structures. For example, components may communicate via local and / or remote processes based on signals having one or more data packets (for example, data from two components interacting with a local system, a distributed system, and / or another component in a network, like the internet interacting with another system via signals).
[0309] Those skilled in the art should recognize that the illustrative logical blocks and exemplary steps described in the embodiments disclosed herein can be implemented by electronic hardware or by a combination of computer software and electronic hardware. Whether the functions are implemented by hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art may use various methods to implement the described functions for each specific application, but such implementations should not be considered to be beyond the scope of this application.
[0310] Those skilled in the art will clearly understand that, for the sake of convenience and simplicity, the detailed operating processes of the aforementioned systems, apparatus, and units will be described by referring to the corresponding processes in the method embodiments described above. Further details will not be described here.
[0311] In some embodiments provided in this application, it should be understood that the disclosed systems, devices, and methods may be implemented in other ways. For example, the described device embodiments are merely examples. For example, the division into units is merely a logical division of function, and other divisions may be used in actual implementation. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not implemented. In addition, the mutual coupling, direct coupling, or communication connection indicated or discussed may be implemented through some interfaces. Indirect coupling or communication connection between devices or units may be implemented in electronic, mechanical, or other forms.
[0312] Units described as separate parts may or may not be physically separate, and parts presented as units may or may not be physical units, or may be located in one location, or may be distributed across multiple network units. Some or all of the units may be selected based on actual requirements to achieve the objectives of the solutions of the embodiments.
[0313] In addition, the functional units in the embodiments of this application may be incorporated into a single processing unit, each unit may exist physically independently, or two or more units may be incorporated into a single unit.
[0314] In the embodiments described above, all or part of the functionality of the functional unit may be implemented using software, hardware, firmware, or any combination thereof. When software is used to implement the embodiments, all or part of the embodiments may be implemented in the form of a computer program product. A computer program product includes one or more computer instructions (programs). When the computer program instructions (programs) are loaded into a computer and executed, all or part of the procedures or functions according to the embodiments of this application are generated. The computer may be a general-purpose computer, a dedicated computer, a computer network, or another programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions may be transmitted by wired (e.g., coaxial cable, optical fiber, or digital subscriber line (DSL)) or wireless (e.g., infrared, radio, or microwave) from one website, computer, server, or data center to another website, computer, server, or data center. Computer-readable storage media may be any available medium accessible by a computer, or a data storage device incorporating one or more available media, such as a server or data center. Available media may be magnetic media (e.g., floppy disks, hard disks, or magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state disks (SSDs)).
[0315] When a function is implemented in the form of a software function unit and sold or used as an independent product, the function may be stored on a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or in part with respect to the prior art, or a part of the technical solution, may be implemented in the form of a software product. A computer software product is stored on a storage medium and includes several instructions for causing a computing device (which may be a personal computer, server, or network device) to perform all or part of the steps of the method described in embodiments of this application. The aforementioned storage medium includes any medium capable of storing program code, such as a USB flash drive, a removable hard disk, read-only memory (ROM), random access memory (RAM), a magnetic disk, or an optical disk.
[0316] The foregoing description is merely a specific implementation of the present application and is not intended to limit the scope of protection of this application. Any modifications or substitutions readily conceivable by a person skilled in the art within the scope of the art disclosed in this application shall fall within the scope of protection of this application. Accordingly, the scope of protection of this application shall be subject to the scope of protection of the claims. [Explanation of Symbols]
[0317] 310 Terminal devices 320 terminal devices 330 network devices 400 ways 500 ways 600 ways 2000 Communication equipment 2100 Communication Unit 2200 processing units 3000 Communication devices 3100 Processor 3200 Communication Interfaces 3300 memory 4000 terminal devices 4100 Transmitter / Receiver Unit 4200 processing units 5000 network devices 5010 du 5011 Antenna 5012 Radio frequency unit 5013 Processor 5014 memory 5020 CU 5021 memory 5022 Processor
Claims
1. A packet discarding method applicable to a first communication device, A step of receiving first instruction information from a second communication device, wherein the first instruction information indicates that the duration of a discard timer corresponding to first data in the Packet Data Convergence Protocol (PDCP) layer is a second duration, the second duration is one of a plurality of pre-configured durations, and the first data is a first data packet or a first data packet set of target importance. A step of starting the discard timer for the first data based on the first instruction information, the discard timer having a duration of the second duration, Methods that include...
2. The method according to claim 1, wherein the first data is a first data packet of low importance or a set of first data packets of low importance.
3. The method according to claim 1 or 2, wherein the importance of any data packet is determined based on the protocol data unit PDU set importance PSI corresponding to the data packet and / or the remaining transmission delay budget corresponding to the data packet, and / or the importance of any set of data packets is determined based on the PSI corresponding to the set of data packets and / or the remaining transmission delay budget corresponding to the set of data packets.
4. The step of starting the discard timer, which has a duration of the second duration, for the first data based on the first instruction information, The method according to any one of claims 1 to 3, comprising the step of activating the discard timer for the first data, having a duration of a second duration, based on the target importance PSI and PSI threshold.
5. The method according to any one of claims 1 to 4, wherein the first instruction information further indicates a data radio bearer DRB associated with the first data.
6. The first data is data that has not reached the PDCP entity, and the step of activating the discard timer, which has a duration of the second duration, for the first data based on the first instruction information, The method according to any one of claims 1 to 5, comprising the step of activating the discard timer, which has a duration of the second duration, for the first data when the first data reaches the PDCP entity, based on the first instruction information.
7. With respect to second data that has not reached the PDCP entity, the step of activating a discard timer for the second data, the discard timer having a duration of a first duration, when the second data reaches the PDCP entity, wherein the second data is a second data packet or a second set of data packets of other target importance, further comprising the step of activating the discard timer, The method according to any one of claims 1 to 6.
8. A step of receiving second instruction information from the second communication device, wherein the second instruction information indicates that the discard timer, whose duration is the first duration, should be activated for the first data. Based on the second instruction information, the discard timer is activated for the first data, the duration of which is the first duration. The method according to any one of claims 1 to 7, further comprising:
9. The steps include: starting a first timer when the first instruction information is received, and starting a discard timer with a duration equal to the second duration for the first data while the first timer is running; When the first timer expires, the first data is activated with respect to the discard timer, which has a duration equal to the first duration. The method according to any one of claims 1 to 7, further comprising:
10. The method according to any one of claims 7 to 9, wherein the first duration is longer than the second duration.
11. The further step includes sending a buffer status report to the second communication device when the first data is discarded, the buffer status report being used to report the amount of data currently scheduled for transmission. The method according to any one of claims 1 to 10.
12. A packet discarding method applicable to a second communication device, A step of generating first instruction information, wherein the first instruction information indicates that the duration of the discard timer corresponding to the first data in the Packet Data Convergence Protocol (PDCP) layer is a second duration, and the first data is a first data packet or a first data packet set of target importance. A method comprising the step of transmitting the first instruction information to a first communication device.
13. The method according to claim 12, wherein the first data is a first data packet or a set of first data packets of low importance, and the second duration is shorter than the current duration of the discard timer.
14. The method according to claim 12 or 13, wherein the importance of any data packet is determined based on the protocol data unit PDU set importance PSI corresponding to the data packet and / or the remaining transmission delay budget corresponding to the data packet, and / or the importance of any set of data packets is determined based on the PSI corresponding to the set of data packets and / or the remaining transmission delay budget corresponding to the set of data packets.
15. The method according to any one of claims 12 to 14, wherein the first instruction information further indicates a data radio bearer DRB associated with the first data.
16. The step further includes transmitting a second instruction information to the first communication device, wherein the second instruction information indicates that the duration of the discard timer for the first data is the first duration. The method according to any one of claims 12 to 15.
17. The process further includes the step of receiving a buffer status report from the first communication device, the buffer status report being used to report the amount of data currently scheduled to be transmitted by the first communication device. The method according to any one of claims 12 to 16.
18. The step further includes transmitting the duration of a first timer to the first communication device, wherein the duration of the discard timer for the first data is the second duration during the operation of the first timer, and the duration of the discard timer is the first duration when the first timer expires. The method according to any one of claims 12 to 17.
19. The method according to claim 16 or 18, wherein the first duration is longer than the second duration.
20. The process further includes determining that network congestion has occurred prior to the step of generating the first instruction information, The method according to claim 12.
21. A communication device comprising a unit configured to perform a step according to any one of claims 1 to 11, or a unit configured to perform a step according to any one of claims 12 to 20.
22. A communication device comprising a processor, wherein the processor is coupled to a memory, the memory is configured to store a program or instruction, and when the program or instruction is executed by the processor, the device becomes capable of carrying out the method according to any one of claims 1 to 12 or the method according to any one of claims 12 to 20.
23. A communication device comprising a processor and an interface, wherein the interface is configured to transmit and / or receive signals so that the processor implements the method according to any one of claims 1 to 11 or any one of claims 12 to 20.
24. A readable storage medium, wherein the readable storage medium stores a computer program or instruction, and when the computer program or instruction is executed, the computer is able to carry out the method according to any one of claims 1 to 11 or the method according to any one of claims 12 to 20.
25. A computer program product comprising computer program instructions, wherein the computer program instructions enable the computer to carry out the method according to any one of claims 1 to 11 or the method according to any one of claims 12 to 20.