Data transmission method, terminal, network device, apparatus, medium and program product
By updating the status variables of the sending and receiving ends in the 5G system and obtaining status reports in a timely manner to synchronize the transmission window, the problem of data packet loss is solved, and the reliability and synchronization of data transmission are achieved.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-06-05
- Publication Date
- 2026-04-02
AI Technical Summary
The existing status report triggering mechanism cannot synchronize the transmission windows of the sending and receiving ends in a timely manner in 5G systems, resulting in data packet loss.
By updating the status variables of the sender and receiver when trigger conditions are met, status reports are obtained in a timely manner to synchronize the transmission window, including operations such as dropping data packets, sending sequence number interval information, and receiving status reports.
This effectively avoids data packet loss due to window asynchrony, ensuring the reliability and synchronization of data transmission.
Smart Images

Figure CN2025099294_02042026_PF_FP_ABST
Abstract
Description
Data transmission method, terminal, network device, apparatus, medium and program product
[0001] Cross-reference
[0002] This application is based on the Chinese Patent Application No. 2024113855035 entitled "Data transmission method, terminal, network device, apparatus, medium and program product" filed on September 30, 2024, which is incorporated by reference in its entirety. TECHNICAL FIELD
[0003] The present application relates to the technical field of wireless communication, in particular to a data transmission method, terminal, network device, apparatus, medium and program product. BACKGROUND
[0004] With the development of the 5th Generation Mobile Communication Technology (5G), the eXtended Reality (XR) service is introduced in the 3GPP 5G system. For the XR service, in order to avoid repeated transmission of expired data packets, a mechanism for avoiding repeated transmission is introduced, that is, when the sending end and / or the receiving end judges that the data packet is expired, the corresponding expired data packet is discarded at the Radio Link Control (RLC) layer.
[0005] In the case that the sending end and the receiving end discard the data packet based on their respective timers or indication information, a status report triggering mechanism is used to synchronize the transmission windows of the sending end and the receiving end. However, the existing status report triggering mechanism has low real-time performance and cannot meet the demand of sending the status report as soon as the data packet is discarded, resulting in the transmission windows of the sending end and the receiving end being out of synchronization and causing the loss of data packets. SUMMARY
[0006] Based on this, the present application provides a data transmission method, terminal, network device, apparatus, medium and program product capable of timely synchronizing the transmission windows between the sending end and the receiving end and avoiding the loss of data packets.
[0007] In a first aspect, the present application provides a data transmission method applied to a sending end, the sending end comprising a terminal or a network device, the method comprising:
[0008] In the case that a first trigger condition is met, updating a state variable of the sending end;
[0009] According to the sending window indicated by the updated state variable, sending an RLC PDU data packet to a receiving end, the RLC PDU being a Radio Link Control layer packet data unit.
[0010] In some embodiments, the first trigger condition comprises at least one of:
[0011] the sending end determines to discard the data packet;
[0012] the sending end sends the receiving end the sequence number interval related information;
[0013] the sending end receives the status report from the receiving end.
[0014] In some embodiments, the status variable of the sending end is used to indicate the upper bound and / or lower bound of the sending window of the sending end.
[0015] In some embodiments, the condition under which the sending end determines to discard the data packet comprises at least one of:
[0016] the sending end receives the expiration indication information from the PDCP layer, the PDCP layer being the packet data convergence layer;
[0017] the sending end receives the timer expiration indication information from the RLC layer, the RLC layer being the radio link control layer;
[0018] the number of retransmissions of the data packet reaches a preset value.
[0019] In some embodiments, the generation condition of the timer expiration indication information of the RLC layer comprises at least one of:
[0020] the timer of the RLC layer starts timing after the RLC layer obtains the data packet for the RLC SDU from the PDCP layer, until the timer of the RLC layer reaches a preset time threshold, the RLC SDU being the radio link control layer service data unit;
[0021] the timer of the RLC layer starts timing after the RLC layer obtains the start timing indication information from the PDCP layer, until the timer of the RLC layer reaches a preset time threshold.
[0022] In some embodiments, in the case where the sending end determines to discard the data packet or the sending end has sent the receiving end the sequence number interval related information, the method further comprises:
[0023] sending the receiving end the polling related information, the polling related information comprising polling indication information; the polling indication information being used to trigger the receiving end to send the sending end the status report.
[0024] In some embodiments, the polling-related information is included in a control PDU for transmitting the sequence number interval-related information, the PDU being a packet data unit; and / or, the polling-related information is included in an RLC layer data PDU, the RLC layer being a radio link control layer.
[0025] In some embodiments, the polling-related information further comprises: polling transmission state variable information, the polling transmission state variable information being information of a highest sequence number among all AMD PDU sequence numbers submitted to the underlying layer when setting the polling transmission state variable, the AMD PDU being an acknowledged mode data protocol data unit.
[0026] In some embodiments, the sending end determines the data packet to be discarded as an expired data packet.
[0027] In some embodiments, the updating of the state variable of the sending end comprises: updating a lower boundary state variable of a sending window according to the discarded data packet, the updated lower boundary state variable of the sending window being a sequence number of a next RLC SDU after performing the discarding of the data packet; the next RLC SDU being a RLC SDU that is ready to be received in sequence and for which the receiving end sends an acknowledgement of successful reception, the RLC SDU being a radio link control layer service data unit.
[0028] In some embodiments, the updating of the state variable of the sending end comprises: updating a sending end state variable TX_Next to be a sequence number assigned to a next newly generated and not discarded AMD PDU; the AMD PDU being an acknowledged mode data protocol data unit.
[0029] In some embodiments, the updating of the state variable of the sending end comprises: in a case where the sending end receives a status report from the receiving end, updating a lower boundary state variable of a sending window to be a sequence number of a next RLC SDU that is ready to be received in sequence and for which the receiving end sends an acknowledgement of successful reception, the RLC SDU being a radio link control layer service data unit.
[0030] In some embodiments, the status report from the receiving end comprises: first indication information, the first indication information being used to indicate any of the following information:
[0031] The sequence number interval indication information sent by the sending end has been successfully received by the receiving end;
[0032] The status report is generated by the sending end based on the obtained sequence number interval indication information;
[0033] The status report is generated by the sending end after obtaining the sequence number interval indication information.
[0034] In some embodiments, after the receiving end discards the data packet, the status report from the receiving end further comprises: confirmation indication information set according to the sequence number of the RLC SDU corresponding to the data packet discarded by the receiving end, and / or confirmation indication information set according to the sequence number of the RLC SDU segment corresponding to the data packet discarded by the receiving end, the RLC SDU being a radio link control layer service data unit.
[0035] In some embodiments, the status report from the receiving end comprises: second indication information, the second indication information being used to indicate that the status report is a status report triggered after the receiving end discards the data packet, or the second indication information being used to indicate that the status report is a status report triggered after a timer for instructing the receiving end to discard the data packet expires.
[0036] In some embodiments, the status report from the receiving end is a status report triggered after the receiving end discards the data packet, or the status report from the receiving end is a status report triggered after a timer for instructing the receiving end to discard the data packet expires.
[0037] In some embodiments, the status report is a status report received after a timer started after the sending end sends the sequence number interval related information expires; or, the status report is a status report sent by the receiving end after the receiving end receives the sequence number interval related information.
[0038] In some embodiments, the status report from the receiving end is sent by the receiving end in the case that a prohibit status report transmission timer is not running or expires.
[0039] In a second aspect, the present application provides a data transmission method applied to a receiving end, the receiving end being a network device when the sending end is a terminal, or the receiving end being a terminal when the sending end is a network device; the method comprising: receiving an RLC PDU data packet sent by the sending end, the RLC PDU being a radio link control layer packet data unit;
[0040] The method further comprises at least one of the following:
[0041] discarding the data packet;
[0042] sending a status report to the sending end;
[0043] updating a state variable of the receiving end.
[0044] In some embodiments, the condition under which the receiving end discards the data packet comprises at least one of the following:
[0045] The receiving end receives expired indication information from a PDCP layer, the PDCP layer being a packet data convergence layer.
[0046] The receiving end receives timer expiration indication information from an RLC layer, the RLC layer being a radio link control layer.
[0047] The receiving end receives sequence number interval related information sent by the sending end.
[0048] In some embodiments, the conditions under which the receiving end sends the status report to the sending end include at least one of the following:
[0049] The receiving end receives sequence number interval related information sent by the sending end.
[0050] The receiving end determines to discard the data packet.
[0051] The receiving end discards the data packet.
[0052] The receiving end receives expiration indication information from a PDCP layer, the PDCP layer being a packet data convergence layer.
[0053] The receiving end receives timer expiration indication information from an RLC layer.
[0054] The receiving end receives polling related information sent by the sending end, the RLC layer being a radio link control layer.
[0055] In some embodiments, the state variable of the receiving end is used to indicate the upper boundary and / or the lower boundary of the receiving window of the receiving end.
[0056] In some embodiments, the method further includes receiving polling related information sent by the sending end, the polling related information including polling indication information; the polling indication information being used to trigger the receiving end to send a status report to the sending end.
[0057] In some embodiments, the polling related information is contained in a control PDU used to transmit sequence number interval related information, the PDU being a packet data unit; and / or, the polling related information is contained in an RLC layer data PDU, the RLC layer being a radio link control layer.
[0058] In some embodiments, the polling related information further includes polling sending state variable information, the polling sending state variable information being information of the highest sequence number among all AMD PDU sequence numbers submitted to the underlying layer when setting the polling sending state variable, the AMD PDU being an acknowledged mode data protocol data unit.
[0059] In some embodiments, the receiving end sends a status report to the sending end in the case that the prohibit status report transmission timer is not running or in the case that the prohibit status report transmission timer expires.
[0060] In some embodiments, the updating the state variable of the receiving end comprises: updating a lower boundary state variable of a receiving window according to the discarded data packet, wherein the updated lower boundary state variable of the receiving window is a sequence number next to a sequence number of a last sequentially completely received RLC SDU, wherein the RLC SDU is a radio link control layer service data unit.
[0061] In some embodiments, the status report comprises: first indication information, wherein the first indication information is used to indicate any of the following information:
[0062] The sequence number interval indication information sent by the sending end has been successfully received by the receiving end;
[0063] The status report is generated by the sending end based on the obtained sequence number interval indication information;
[0064] The status report is generated by the sending end after obtaining the sequence number interval indication information.
[0065] In some embodiments, the status report generated by the receiving end further comprises: confirmation indication information set according to a sequence number of a RLC SDU corresponding to the discarded data packet of the receiving end, and / or confirmation indication information set according to a sequence number of a RLC SDU segment corresponding to the discarded data packet of the receiving end, wherein the RLC SDU is a radio link control layer service data unit.
[0066] In some embodiments, the status report comprises: second indication information, wherein the second indication information is used to indicate that the status report is a status report triggered after the receiving end discards data packets, or the second indication information is used to indicate that the status report is a status report triggered after a timer for instructing the receiving end to discard data packets expires.
[0067] In some embodiments, the status report is a status report triggered after the receiving end discards data packets, or the status report is a status report triggered after a timer for instructing the receiving end to discard data packets expires.
[0068] In a third aspect, the present application provides a terminal, which serves as a sending end, comprising: a memory, a transceiver and a processor:
[0069] The memory is configured to store a computer program.
[0070] The transceiver is configured to transceive data under the control of the processor.
[0071] The processor is configured to read the computer program in the memory and perform the following operations:
[0072] update a state variable of the sending end when a first trigger condition is met;
[0073] send an RLC PDU data packet to the receiving end according to a sending window indicated by the updated state variable, the RLC PDU being a radio link control layer packet data unit.
[0074] In a fourth aspect, the present application provides a network device, which serves as a sending end, comprising a memory, a transceiver and a processor:
[0075] The memory is configured to store a computer program.
[0076] The transceiver is configured to transceive data under control of the processor.
[0077] The processor is configured to read the computer program in the memory and perform the following operations:
[0078] update a state variable of the sending end when a first trigger condition is met;
[0079] send an RLC PDU data packet to the receiving end according to a sending window indicated by the updated state variable, the RLC PDU being a radio link control layer packet data unit.
[0080] In a fifth aspect, the present application provides a terminal, which serves as a receiving end, comprising a memory, a transceiver and a processor:
[0081] The memory is configured to store a computer program.
[0082] The transceiver is configured to transceive data under control of the processor.
[0083] The processor is configured to read the computer program in the memory and perform the following operations:
[0084] receive an RLC PDU data packet sent by the sending end, the RLC PDU being a radio link control layer packet data unit;
[0085] The processor is further configured to read the computer program in the memory and perform at least one of the following operations:
[0086] discard the data packet;
[0087] send a status report to the sending end;
[0088] update a state variable of the receiving end.
[0089] In a sixth aspect, the present application provides a network device, which serves as a receiving end, comprising:
[0090] The memory, the transceiver and the processor:
[0091] The memory is configured to store a computer program.
[0092] The transceiver is configured to transceive data under the control of the processor.
[0093] The processor is configured to read the computer program in the memory and perform the following operations:
[0094] receiving an RLC PDU data packet sent by a sending end, the RLC PDU being a radio link control layer packet data unit;
[0095] The processor is further configured to read the computer program in the memory and perform at least one of the following operations:
[0096] discarding the data packet;
[0097] sending a status report to the sending end;
[0098] updating a state variable of the receiving end.
[0099] In a seventh aspect, the present application provides a data transmission device applied to a sending end, the device comprising:
[0100] A first processing module is configured to update a state variable of the sending end if a first trigger condition is met.
[0101] A first sending module is configured to send an RLC PDU data packet to a receiving end according to a sending window indicated by the updated state variable, the RLC PDU being a radio link control layer packet data unit.
[0102] In an eighth aspect, the present application provides a data transmission device applied to a receiving end, the device comprising:
[0103] A second receiving module is configured to receive an RLC PDU data packet sent by a sending end, the RLC PDU being a radio link control layer packet data unit.
[0104] A second processing module is configured to perform at least one of the following operations:
[0105] discarding the data packet;
[0106] sending a status report to the sending end;
[0107] updating a state variable of the receiving end.
[0108] In a ninth aspect, the present application provides a computer readable storage medium having a computer program stored thereon, the computer program being executed by a processor to implement the steps of the method of any one of the first aspect or the second aspect.
[0109] In a tenth aspect, the present application provides a computer program product comprising a computer program, wherein the computer program, when executed by a processor, implements the steps of the method of any one of the first aspect or the second aspect.
[0110] The data transmission method, terminal, network device, apparatus, medium and program product described above set the trigger condition for updating the state variable of the sending end and / or the receiving end, so that in the case of packet discard performed by the sending end and / or the receiving end, the sending end can obtain the status report in time to update the relevant state variable, and the transmission window of the sending end and the receiving end can be kept synchronized, effectively avoiding the problem of packet loss due to window asynchronization.
[0111] The above description is only a summary of the technical solutions of the present application. In order to enable the technical means of the present application to be more clearly understood, and to be implemented according to the content of the description, and in order to enable the above and other purposes, characteristics and advantages of the present application to be more apparent and easy to understand, the following specific embodiments of the present application are described in detail. BRIEF DESCRIPTION OF DRAWINGS
[0112] Various other advantages and benefits will become apparent to those of ordinary skill in the art upon reading the following detailed description of the embodiments. The accompanying drawings are included to provide a description of the embodiments and are not meant to limit the scope of the present application. Moreover, the same reference numerals in different drawings represent the same or similar elements. In the drawings:
[0113] FIG. 1 is a schematic diagram of a system architecture applicable to an embodiment of the present application;
[0114] FIG. 2 is a schematic diagram of a user plane protocol stack of a 5G system access network protocol layer in an embodiment of the present application;
[0115] FIG. 3 is a schematic diagram of a frame structure applicable to an embodiment of the present application;
[0116] FIG. 4 is a schematic diagram of a transmission window applicable to an embodiment of the present application;
[0117] FIG. 5 is a flowchart of a data transmission method provided in Example 1 of the present application;
[0118] FIG. 6 is a flowchart of a data transmission method provided in Example 2 of the present application;
[0119] FIG. 7 is a flowchart of a data transmission method provided in Example 3 of the present application;
[0120] FIG. 8 is a flowchart of a data transmission method provided in Example 4 of the present application;
[0121] FIG. 9 is a flowchart of Example 1 of the present application;
[0122] FIG. 10 is a flowchart of an example two of the present application;
[0123] FIG. 11 is a flowchart of an example three of the present application;
[0124] FIG. 12 is a structural block diagram of a data transmission device according to an embodiment of the present application;
[0125] FIG. 13 is a structural block diagram of another data transmission device according to an embodiment of the present application;
[0126] FIG. 14 is a structural diagram of a network device according to an embodiment of the present application;
[0127] FIG. 15 is a structural diagram of a terminal according to an embodiment of the present application. DETAILED DESCRIPTION
[0128] The embodiments of the present application will be described in detail with reference to the drawings. The following examples are only used to more clearly illustrate the technical scheme of the present application, and therefore only serve as examples, and cannot be used to limit the protection scope of the present application.
[0129] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs; the terminology used in the specification herein is for describing particular embodiments only and is not intended to be limiting of the application; the use of the terms "include," "have," or "comprise" and variations thereof herein are intended to be inclusive, not exclusive.
[0130] In the description of the embodiments of the present application, the technical terms "first", "second", etc. are only used to distinguish different objects, and cannot be understood as indicating or implying relative importance or implicitly indicating the number, specific order or primary and secondary relationship of the indicated technical features. In the description of the embodiments of the present application, the meaning of "a plurality of" is two or more, unless otherwise explicitly and specifically limited.
[0131] Reference herein to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the application. The appearance of the phrase in various places in the specification does not necessarily all refer to the same embodiment, nor is it necessarily independent or alternative embodiments to other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0132] In the description of the embodiments of the present application, the term "and / or" is only used to describe an associated relationship with associated objects, which means that there can be three relationships, for example, A and / or B, which can represent the three cases of A alone, A and B together, and B alone. In addition, the character " / " in this paper generally represents an "or" relationship between the front and rear associated objects.
[0133] The following explains some terms in the embodiments of the present application to facilitate understanding by those skilled in the art.
[0134] (1) In the embodiments of the present application, the nouns "network" and "system" are often used interchangeably, but those skilled in the art can understand their meanings.
[0135] (2) In the embodiments of the present application, the term "multiple" means two or more, and other quantifiers are similar.
[0136] Figure 1 illustrates a system architecture to which the embodiments of the present application are applicable. The system architecture shown in Figure 1 includes a network device 101 and a terminal 102. Data transmission in the uplink direction and / or the downlink direction can be performed between the network device 101 and the terminal 102, wherein the uplink direction refers to the transmission direction from the terminal to the network device, and the downlink direction refers to the transmission direction from the network device to the terminal. For example, when the network device 101 is the sending end and the terminal 102 is the receiving end, the network device 101 updates the state variable of the network device 101 when the first trigger condition is met, and then the network device 101 sends the RLC PDU data packet to the terminal 102 according to the sending window indicated by the updated state variable. The RLC PDU is the Radio Link Control Packet Data Unit. In addition to receiving the RLC PDU data packet sent by the network device 101, the terminal 102 can also perform operations including discarding the data packet, sending a status report to the network device 101, updating the state variable of the terminal 102, and the like.
[0137] For example, referring to the system architecture shown in Figure 1, when the terminal 102 is the sending end and the network device 101 is the receiving end, the terminal 102 updates the state variable of the terminal 102 when the first trigger condition is met, and then the terminal 102 sends the RLC PDU data packet to the network device 101 according to the sending window indicated by the updated state variable. At this time, in addition to receiving the RLC PDU data packet sent by the terminal 102, the network device 101 can also perform operations including discarding the data packet, sending a status report to the terminal 102, updating the state variable of the network device 101, and the like.
[0138] The network device in FIG. 1 is a device that provides a terminal with a wireless communication function, and is configured to receive an uplink signal from the terminal or transmit a downlink signal to the terminal. The network device includes, but is not limited to, a gNB in 5G, a radio network controller (RNC), a node B (NB), a base station controller (BSC), a base transceiver station (BTS), a home base station (e.g., home evolved node B or home node B, HNB), a baseband unit (BBU), a transmitting and receiving point (TRP), a transmitting point (TP), a mobile switching center, and the like. The base station in the present application can also be a device that provides a terminal with a wireless communication function in other communication systems that may appear in the future.
[0139] The terminal in FIG. 1 is an entity for receiving or transmitting a signal on the user side, and is configured to transmit an uplink signal to the network device or receive a downlink signal from the network device. The terminal can also be referred to as a UE (user equipment). The terminal can be a device that provides a user with voice and / or data connectivity. For example, the terminal can include a handheld device having a wireless connection function, a vehicle-mounted device, and the like. Currently, the terminal can be a mobile phone, a tablet computer, a notebook computer, a palm computer, a mobile internet device (MID), a wearable device, a virtual reality (VR) device, an augmented reality (AR) device, a wireless terminal in industrial control, a wireless terminal in self-driving, a wireless terminal in a smart grid, a wireless terminal in transportation safety, a wireless terminal in a smart city, or a wireless terminal in a smart home, and the like.
[0140] FIG. 1 is merely an example and does not limit the type of communication system or the number or type of devices included in the communication system. The network architecture and service scenarios described in the embodiments of the present application are used to illustrate the technical solutions of the embodiments of the present application, and do not limit the technical solutions provided by the embodiments of the present application. It is known to those skilled in the art that, as the network architecture evolves and new service scenarios appear, the technical solutions provided by the embodiments of the present application are also applicable to similar technical problems.
[0141] FIG. 2 exemplarily shows a user plane protocol stack of a 5G system access network protocol layer. As shown in FIG. 2, the 5G user plane air interface protocol layer includes a service data adaptation protocol (SDAP) layer, a packet data convergence protocol (PDCP) layer, a radio link control (RLC) layer, a media access control (MAC) layer, and a physical layer (PHY).
[0142] After a QoS Flow (Quality of Service Flow) arrives at the SDAP layer, the SDAP layer performs mapping of the QoS Flow to a DRB (Data Radio Bearer), and forms an SDAP protocol data unit (PDU) after mapping, and the SDAP PDU is delivered to the PDCP layer. From the perspective of the PDCP layer, the SDAP PDU is a PDCP service data unit (SDU). The PDCP layer performs header compression, encryption, and other operations on the PDCP SDU and delivers it to the RLC layer. The RLC layer encapsulates an RLC PDU according to MAC layer scheduling information and delivers it to the MAC layer. The MAC layer encapsulates the received RLC PDU into a MAC PDU, and then delivers it to the physical layer for transmission.
[0143] Extended Reality (XR) services are introduced in the 3GPP 5G system. XR services are divided into the following categories:
[0144] Augmented Reality (AR) services: seamlessly integrate the real world and the virtual world;
[0145] Virtual Reality (VR) services: simulate a virtual world using devices;
[0146] Mixed Reality (MR) service: contains both real physical entities and virtual information.
[0147] Figure 3 shows a frame mechanism, as shown in Figure 3, an XR service is modeled as data frames, and each data frame can be divided into multiple Packet Data Units (PDUs). Wherein, the definition of PDU set is that one or more PDUs corresponding to one information unit, and constituting a PDU set. The XR service supports multi-modal, under the multi-modal, multiple high-layer service streams of one user terminal need to be coordinated when transmitted over the air, and there is a certain synchronization requirement. As shown in Figure 3, one data frame can be divided into one or more slices (slices or strips), and the slice can be divided into I, P, and B three types, which are used for intra-frame / inter-frame prediction. Tile is a rectangular partitioning area of an image, which aims to improve parallel processing capability.
[0148] For XR services, in order to avoid repeated transmission of expired data, a mechanism for avoiding repeated transmission is introduced, that is, the sending end and / or the receiving end discards the corresponding expired data packet at the RLC layer in the case of judging that the data packet is expired.
[0149] In the case of RLC layer discarding data packets, the transmission window between the sending end and the receiving end needs to be synchronized, if the sending end sends data packets too fast, the sequence number (SN) of the data packet may fall outside the receiving window, then the data packet may be discarded. In order to ensure synchronization, the sending end carries a pollen indication in the control PDU, and the receiving end triggers a status report when it obtains the indication or a local timer t-Reassembly expires. After the sending end obtains the status report, it updates the state variables of the sending window, and then ensures the synchronization of the window, that is, ensures that all variables are within a reasonable range. Wherein, the sequence number (SN) of all transmitted variables needs to satisfy TX_Next_Ack<=SN<TX_Next_Ack+AM_Window_Size, and the sequence number (SN) of the received variable needs to satisfy RX_Next<=SN<RX_Next+AM_Window_Size. TX_Next_Ack is the lower boundary state variable of the sending window, SN is the sequence number, AM_Window_Size is the size of the transmission window, and RX_Next is the receiving state variable. RX_Next stores the SN value of the last completely received RLC session unit, and is used as the lower boundary of the receiving window.
[0150] Figure 4 shows a transmission window, as shown in Figure 4, the transmission window of the sending end takes TX_Next_Ack as the lower boundary and TX_Next_Ack+AM_Window_Size as the upper boundary.
[0151] A conventional window synchronization method: when the RLC layer or the PDCP layer of a terminal (user side) indicates that a data packet is discarded, the terminal needs to send sequence number gap information (SN gap) in order to keep the two sides synchronized, so that the receiving end updates the receiving end state variable, thereby pushing the receiving end window forward. The receiving end RLC layer sends a status report to the sending end RLC layer using the existing status report triggering mechanism, and the sending end updates the window based on the received status report to ensure that the sending end window is synchronized with the receiving end window.
[0152] Another conventional window synchronization method: a local timer is introduced at the receiving end, and when the local timer expires, expiration indication information is generated, and the related data packet is discarded. The receiving end sends a status report to the sending end. The sending end updates the window based on the received status report to ensure that the sending end window is synchronized with the receiving end window.
[0153] Based on this, the embodiments of the present application provide a data transmission method and related device, which can synchronize the transmission windows between the sending end and the receiving end as soon as possible in the case of data packet discard, thereby avoiding data packet loss.
[0154] The data transmission method provided by the embodiments of the present application will be described in detail below with reference to the accompanying drawings.
[0155] Referring to FIG. 5, it is a flowchart of the data transmission method provided by Example One of the present application, which is executed by a sending end device. Referring to FIG. 1, the sending end device can be a terminal (such as a mobile phone) or a network device (such as a base station).
[0156] For example, as shown in FIG. 5, the method can include the following steps:
[0157] S501: updating the state variable of the sending end when a first trigger condition is met.
[0158] The state variable of the sending end is used to indicate the upper boundary and / or lower boundary of the sending window of the sending end. That is, when the first trigger condition is met, the upper boundary and / or lower boundary of the sending window of the sending end is updated, thereby pushing the sending window of the sending end forward.
[0159] For example, the first trigger condition in the present embodiment can include the following cases:
[0160] Case 1: the sending end determines to discard a data packet.
[0161] Case 2: the sending end sends sequence number gap information to the receiving end.
[0162] Case 3: the sending end receives a status report from the receiving end.
[0163] It should be noted that the first trigger condition in the embodiment can be a pre-set condition, which can include any one of the above three cases, or can be combined with two or more of the three cases.
[0164] In the above case 1, generally, when the data packet expires, the sending end determines to discard the data packet (i.e., the sending end determines to discard the expired data packet), so it can be determined by at least one of the following ways:
[0165] Method 1: The sending end receives expiration indication information from the PDCP layer, and the PDCP layer is the packet data convergence layer.
[0166] In method 1, when the data packet expires, the PDPC layer generates expiration indication information and sends it to the sending end.
[0167] Method 2: The sending end receives timer expiration indication information from the RLC layer, and the RLC layer is the radio link control layer.
[0168] In method 2, the timer of the RLC layer can include at least one of the following timing methods:
[0169] First, the timer of the RLC layer starts timing after obtaining the data packet for the RLC SDU from the PDCP layer, and stops timing when the timer of the RLC layer reaches the preset time threshold, and the RLC SDU is the radio link control layer service data unit.
[0170] Second, the timer of the RLC layer starts timing after obtaining the start timing indication information from the PDCP layer, and stops timing when the timer of the RLC layer reaches the preset time threshold.
[0171] Method 3: The number of retransmissions of the data packet reaches a preset value.
[0172] In method 3, the number of retransmissions can be determined according to the number of retransmissions fed back by the MAC layer, and if the preset value is reached, it means that the data includes expiration.
[0173] S502: According to the sending window indicated by the updated state variable, send the RLC PDU data packet to the receiving end.
[0174] RLC PDU is the radio link control layer packet data unit.
[0175] In the first possible case, the lower boundary state variable of the sending window is updated according to the discarded data packet, and the updated lower boundary state variable of the sending window is the sequence number of the next RLC SDU after the discarded data packet is executed; the next RLC SDU is a RLC SDU that is ready to be received in sequence and is sent by the receiving end to send an acknowledgement of successful reception. That is, the next RLC SDU is a RLC SDU that is sent by the receiving end and is successfully received and is ready to be received in sequence.
[0176] The SN value of the next RLC SDU that needs to be received in sequence and positively acknowledged is stored by a state variable, and the state variable is used as the lower boundary of the transmission window. The state variable is initially set to 0, and each time the AM RLC entity receives a positive acknowledgement of an RLC SDU with SN = TX_Next_Ack, the state variable is updated.
[0177] In the second possible case, the sending end state variable TX_Next is updated to the sequence number assigned to the next newly generated and not discarded acknowledged mode data protocol data unit (AMD PDU). The TX_Next is a state variable of the sending end, which is used to mark the sequence number of the newly generated AMD PDU that is ready to be sent to the opposite end.
[0178] In the third possible case, when the sending end receives a status report from the receiving end, the lower boundary state variable of the sending window is updated to the sequence number of the next RLC SDU that is ready to be received in sequence and is sent by the receiving end to send an acknowledgement of successful reception. That is, the lower boundary state variable of the sending window is updated to the sequence number of the next RLC SDU that is sent by the receiving end and is successfully received and is ready to be received in sequence.
[0179] For example, the status report from the receiving end includes first indication information, and the first indication information is used to indicate any of the following information:
[0180] The sequence number interval indication information sent by the sending end has been successfully received by the receiving end;
[0181] The status report is generated by the sending end based on the obtained sequence number interval indication information;
[0182] The status report is generated by the sending end after obtaining the sequence number interval indication information.
[0183] In addition, it needs to be explained that after the receiving end discards the data packet, the status report from the receiving end also includes: the confirmation indication (i.e. ACK indication) information set according to the sequence number of the RLC SDU corresponding to the data packet discarded by the receiving end, and / or the confirmation indication information set according to the sequence number of the RLC SDU segment corresponding to the data packet discarded by the receiving end. The RLC SDU is a radio link control layer service data unit.
[0184] For example, the status report from the receiving end includes: second indication information, which is used to indicate that the status report is a status report triggered after the receiving end discards the data packet, or the second indication information is used to indicate that the status report is a status report triggered after the timer for instructing the receiving end to discard the data packet expires.
[0185] It needs to be explained that the status report from the receiving end is a status report triggered after the receiving end discards the data packet, or the status report from the receiving end is a status report triggered after the timer for instructing the receiving end to discard the data packet expires.
[0186] It needs to be explained that the status report is a status report received after the timer started by the sending end after sending the sequence number interval related information expires; or the status report is a status report sent by the receiving end after receiving the sequence number interval related information. For example, the following possible cases can be included:
[0187] Case 1: When the sending end state variable is updated based on the status report, the sending end sends the data packet to the receiving end.
[0188] Case 2: The sending end sends the data packet to the receiving end which meets a certain SN number characteristic, wherein the characteristic of the SN number is a predefined or configured value which is not less than the current TX_Next.
[0189] Case 3: Before the sending end state variable is updated, the sending end cannot send the data packet to the receiving end which meets a certain SN number characteristic, wherein the characteristic of the SN number is a predefined or configured value which is not less than the current TX_Next.
[0190] Case 4: The sending end can only send the data packet to the receiving end which meets a certain SN number characteristic, wherein the characteristic of the SN number is a predefined or configured value which is not greater than the sum of the current TX_Next and the predefined or configured value.
[0191] It needs to be explained that the status report from the receiving end is sent by the receiving end when the prohibit status report transmission timer is not running or expires.
[0192] In the above embodiments of the present application, by setting the trigger condition for updating the state variable at the sending end and / or the receiving end, the sending end can obtain the state report in time to update the relevant state variable in the case that the sending end and / or the receiving end performs the packet discarding, so as to keep the transmission windows of the sending end and the receiving end in synchronization, and effectively avoid the problem of packet loss due to the window asynchronization.
[0193] Referring to FIG. 6, a flowchart of a data transmission method provided in Example Two of the present application is shown, which is executed by the sending end device. Referring to FIG. 1, the sending end device can be a terminal (for example, a mobile phone) or a network device (for example, a base station).
[0194] For example, as shown in FIG. 6, the method can include the following steps:
[0195] S601: updating the state variable of the sending end when the first trigger condition is met.
[0196] S602: sending the RLC PDU packet to the receiving end according to the sending window indicated by the updated state variable.
[0197] The implementation manners and technical effects of steps S601-S602 in the present embodiment can refer to the related descriptions of steps S501-S502 in the method embodiment shown in FIG. 3, which will not be repeated here.
[0198] S603: sending the polling related information to the receiving end when the sending end determines to discard the packet or the sending end has sent the sequence number interval related information to the receiving end.
[0199] The polling related information includes polling indication information; the polling indication information is used to trigger the receiving end to send the state report to the sending end.
[0200] For example, the polling related information is contained in the control PDU used to transmit the sequence number interval related information, the PDU is a packet data unit; and / or, the polling related information is contained in the RLC layer data PDU, the RLC layer is a wireless link control layer.
[0201] For example, the polling related information further includes polling sending state variable information, the polling sending state variable information is the information of the highest sequence number of all AMD PDU sequence numbers submitted to the lower layer when the polling sending state variable is set, the AMD PDU is an acknowledged mode data protocol data unit.
[0202] In this embodiment, the sending end can send the polling related information to the receiving end to trigger the update of the state variable, i.e. the update information related to the state variable is passed in the polling related information, so that the state variable of the transmission window can be updated in time in the case that the sending end determines to discard the data packet or the sending end has sent the sequence number interval related information to the receiving end, the synchronization of the transmission windows of the two sides is maintained, and the data packet loss is avoided.
[0203] Referring to FIG. 7, a flowchart of a data transmission method provided in Example Three of the present application is shown, which is executed by the receiving end device. Referring to FIG. 1, the receiving end device can be a terminal (e.g. a mobile phone) or a network device (e.g. a base station). It should be noted that the receiving end is the transmission opposite end of the sending end, when the sending end is a terminal, the receiving end is a network device; when the sending end is a network device, the receiving end is a terminal.
[0204] For example, as shown in FIG. 7, the method can include the following steps:
[0205] S701: receiving the RLC PDU data packet sent by the sending end, the RLC PDU being a radio link control layer packet data unit.
[0206] S702: at least one of discarding the data packet, sending the status report to the sending end, and updating the state variable of the receiving end.
[0207] The conditions under which the receiving end discards the data packet include at least one of the following:
[0208] Condition 1: the receiving end receives the expiration indication information from the PDCP layer, the PDCP layer being a packet data convergence layer.
[0209] Condition 2: the receiving end receives the timer expiration indication information from the RLC layer, the RLC layer being a radio link control layer.
[0210] Condition 3: the receiving end receives the sequence number interval related information from the sending end.
[0211] The conditions under which the receiving end sends the status report to the sending end include at least one of the following:
[0212] Condition 1: the receiving end receives the sequence number interval related information sent by the sending end.
[0213] Condition 2: the receiving end determines to discard the data packet.
[0214] Condition 3: the receiving end discards the data packet.
[0215] Condition 4: the receiving end receives the expiration indication information from the PDCP layer, the PDCP layer being a packet data convergence layer.
[0216] Condition 5: the receiving end receives timer expiration indication information from the RLC layer.
[0217] Condition 6: the receiving end receives polling related information sent by the sending end, and the RLC layer is a radio link control layer.
[0218] The state variable of the receiving end is used to indicate the upper boundary and / or lower boundary of the receiving window of the receiving end.
[0219] For example, the lower boundary state variable of the receiving window can be updated according to the discarded data packet, and the updated lower boundary state variable of the receiving window is the next sequence number following the sequence number of the last sequentially completely received RLC SDU except the discarded data packet.
[0220] It should be noted that the receiving end sends a status report to the sending end when the prohibit status report transmission timer is not running or expires.
[0221] For example, the status report includes first indication information, and the first indication information is used to indicate any of the following information:
[0222] The sequence number interval indication information sent by the sending end has been successfully received by the receiving end;
[0223] The status report is generated by the sending end based on the obtained sequence number interval indication information;
[0224] The status report is generated by the sending end after obtaining the sequence number interval indication information.
[0225] For example, the status report includes second indication information, and the second indication information is used to indicate that the status report is a status report triggered after the receiving end discards a data packet, or the second indication information is used to indicate that the status report is a status report triggered after the receiving end indicates that the timer for discarding the data packet expires.
[0226] For example, the status report is a status report triggered after the receiving end discards a data packet, or a status report triggered after the receiving end indicates that the timer for discarding the data packet expires.
[0227] Exemplarily, the status report generated by the receiving end further comprises: confirmation indication information set according to the sequence number of the RLC SDU (Radio Link Control Service Data Unit) corresponding to the data packet discarded by the receiving end, and / or confirmation indication information set according to the sequence number of the RLC SDU segment corresponding to the data packet discarded by the receiving end. In the above embodiments of the present application, by setting the trigger condition for the sending end and / or the receiving end to update the state variable, the sending end can obtain the status report in time to update the relevant state variable in the case that the sending end and / or the receiving end execute the data packet discard, so as to keep the transmission window of the sending end and the receiving end in synchronization, and effectively avoid the problem that the data packet is lost due to the window asynchronization.
[0228] Referring to FIG. 8, a flowchart of a data transmission method provided in Example Four of the present application is shown, which is executed by a receiving end device. Referring to FIG. 1, the receiving end device can be a terminal (for example, a mobile phone) or a network device (for example, a base station). It should be noted that the receiving end is the transmission counterpart of the sending end, and when the sending end is a terminal, the receiving end is a network device; when the sending end is a network device, the receiving end is a terminal.
[0229] Exemplarily, as shown in FIG. 8, the method can comprise the following steps:
[0230] S801: receiving the RLC PDU (Radio Link Control Packet Data Unit) data packet sent by the sending end.
[0231] S802: discarding the data packet, sending the status report to the sending end, and updating at least one of the three items of the state variable of the receiving end.
[0232] The implementation mode and technical effect of steps S801-S802 in the present embodiment are described in the related description of steps S701-S702 in the method embodiment shown in FIG. 7, which will not be repeated here.
[0233] S803: receiving the polling related information sent by the sending end.
[0234] The polling related information comprises polling indication information; the polling indication information is used to trigger the receiving end to send the status report to the sending end.
[0235] Exemplarily, the polling related information is contained in the control PDU (Packet Data Unit) used to transmit the sequence number interval related information; and / or the polling related information is contained in the RLC layer data PDU (Radio Link Control layer).
[0236] Exemplarily, the polling related information further comprises polling sending state variable information, the polling sending state variable information being information of a highest sequence number in all AMD PDU sequence numbers submitted to the underlying layer when setting the polling sending state variable, and the AMD PDU being an acknowledgement mode data protocol data unit.
[0237] In the embodiment, the receiving end receives the polling related information sent by the sending end, and triggers generation of the status report based on the polling indication information therein. When receiving the status report, the sending end can update the state variable of the transmission window in time, keep synchronization of the transmission windows on both sides, and avoid data packet loss.
[0238] The above embodiment of the application will be described below in combination with several examples.
[0239] Example One
[0240] Example One describes a window state variable updating process triggered by the sending end in the case of discarding data packets, as shown in FIG. 9. The process can include the following steps:
[0241] Step 1: The sending end determines to discard data packets.
[0242] In this step, the sending end determines to discard expired RLC SDUs or segments based on indication information of the PDCP layer, expiration indication information of a timer of the RLC layer, and the number of data packet retransmissions reaching a preset value.
[0243] Step 2: The sending end sends sequence number interval related information to the receiving end.
[0244] In this step, in the case of discarding expired RLC SDUs or segments by the sending end, the sending end can send sequence number interval related information (SN gap) to the receiving end. The SN gap includes information of the discarded data packets, and the discarded data packets are the expired data packets. The SN gap can be in the form of a bit map, used to indicate sequence numbers (SNs) of the discarded data packets.
[0245] Exemplarily, the SN gap can further include polling related information (Poll and / or POLL_SN), used to indicate the receiving end to send a status report after obtaining the SN gap.
[0246] Optionally, step 2.a can be performed to replace the above step 2.
[0247] Step 2.a: Update the lower boundary state variable of the sending window.
[0248] In this step, the transmitter updates the lower boundary state variable TX_Next_Ack of the transmission window before or after discarding the data packet or sending the SN gap (the process can or can not be performed, and is performed after the status PDU is acquired). TX_Next_Ack <= SN < TX_Next_Ack + AM_Window_Size
[0249] For example, the updated lower boundary state variable of the transmission window is the sequence number of the next RLC SDU after the discarded data packet or excluding the discarded data packet; the next RLC SDU is a successfully received RLC SDU sent by the receiver and ready to be received in sequence, and the RLC SDU is a radio link control layer service data unit.
[0250] For example, the updated lower boundary state variable of the transmission window is the next RLC SDU, which is a RLC SDU sent by the receiver and ready to be received in sequence after the discarded data packet or excluding the discarded data packet. The sequence number of the next RLC SDU is updated to be the sequence number of the next RLC SDU after the discarded data packet or excluding the discarded data packet, and the next RLC SDU is a RLC SDU that is indicated to be successfully received and is waiting to be received in sequence.
[0251] Step 3: The receiver updates the relevant state variables according to the sequence number interval related information.
[0252] In this step, updating the relevant state variables can be understood as dragging the receiving window of the receiver, and updating the variable at the low end of the receiving window (RX_Next), the reassembly state variable (RX_Next_Status_Trigger), the maximum transmission state variable (RX_Highest_Status), and the highest reception state variable (RX_Next_Highest). After acquiring the SN gap information, the receiver updates RX_Next to be the state variable after the last successfully received RLC SDU in sequence and not discarded. The RX_Highest_Status used to record the parameters in the status report is updated to be the sequence number of the first RLC SDU with a SN greater than the current RX_Highest_Status and not discarded by the transmitter.
[0253] Step 4: The receiver sends a status report to the transmitter.
[0254] In this step, after the receiver acquires the SN gap information sent by the transmitter, the status report (status PDU) is triggered based on the event of acquiring the SN gap. The SN gap received by the receiver also includes polling related information (Poll and / or POLL_SN), indicating that the receiver sends a status report.
[0255] It should be noted that the receiving end also needs to meet the condition of t-StatusProhibit not allowing in the case of sending the status report. The condition of t-StatusProhibit not allowing refers to that the status report is sent by the receiving end in the case that the prohibit status report transmission timer is not running or expires.
[0256] In addition, the status report can include an indication information for indicating that the status report is the status report responding to the SN gap.
[0257] Step 5: The sending end updates the status variable.
[0258] In this step, the sending end updates the variable TX_Next_AKC at the low end of the transmission window after obtaining the status report related information. The variable TX_Next_AKC is updated to the sequence number of the next RLC SDU (Radio Link Control Service Data Unit) successfully received by the receiving end and ready to be received in sequence, or the sequence number of the next RLC SDU after the discarded data packet.
[0259] In this step, the upper boundary status variable TX_Next of the transmission window can also be updated to the sequence number of the newly generated and non-discarded AMD PDU (Application Data Unit PDU).
[0260] Step 6: The sending end sends the RLC PDU to the receiving end.
[0261] Example Two:
[0262] Example Two describes the window status variable update process triggered by the receiving end to discard the data packet, as shown in FIG. 10, which can include the following steps:
[0263] Step 1: The receiving end performs the data packet discarding operation based on the new timer and updates the variable RX_Next.
[0264] In this step, the discarded data packet is the outdated data packet. The variable RX_Next at the low end of the transmission window is updated to the status variable of the RLC SDU after the last successfully received RLC SDU in sequence and not discarded.
[0265] Step 2: The receiving end sends the status report to the sending end.
[0266] In this step, the receiver sends a status report (Status PDU) to the transmitter in the case that the timer for discarding the data packet expires. The data packet discarded by the receiver is considered as ACK in the status report, or is given an explicit discard indication in the status report.
[0267] In this step, the discarded data packet can be an expired data packet. In the case that the status report is sent, the receiver further needs to satisfy the condition of t-StatusProhibit. The condition of t-StatusProhibit means that the status report is sent by the receiver in the case that the prohibit timer for transmitting the status report is not running or expires. The status report can further include an indication indicating that the status report is sent by the receiver after the discarding of the data packet or the expiration of the timer for triggering the discarding of the data packet.
[0268] Step 3: The transmitter updates TX_Next_AKC.
[0269] In this step, the transmitter updates the variable TX_Next_AKC at the low end of the transmission window to the sequence number of the next RLC SDU (Radio Link Control Service Data Unit) to be successfully received by the receiver after the status report of the receiver is obtained, after which the transmitter sends the status report.
[0270] Step 4: The transmitter sends an RLC PDU to the receiver.
[0271] In this step, the transmitter sends an RLC PDU to the receiver based on the updated transmission window.
[0272] Example Three:
[0273] Example Three describes the updating process of the state variables of the window in the case that the discarding of the data packet is triggered by the transmitter and the receiver respectively, as shown in FIG. 11, which can include the following steps:
[0274] Step A.1: The transmitter determines to discard the data packet.
[0275] In this step, the transmitter determines to discard the expired RLC SDU or segment based on the indication of the PDCP layer, the expiration indication of the timer of the RLC layer, the number of retransmissions of the data packet reaching a preset value, etc.
[0276] Optionally, step A.2 can be performed instead of the above step A.1.
[0277] Step A.2: The transmitter updates TX_Next_ACK.
[0278] In this step, the transmitter updates the lower boundary state variable TX_Next_ACK of the sending window according to the state report obtained from the receiver, and updates TX_Next_ACK to the sequence number of the next RLC SDU successfully received by the receiver in the order of preparation. Wherein, TX_Next_Ack <= SN < TX_Next_Ack + AM_Window_Size.
[0279] Step B.1: The receiver performs the operation of discarding data packets based on the new timer, and updates the variable RX_Next.
[0280] In this step, the outdated data packets are discarded based on the new timer, and the process is similar to t-Reordering (reordering timer).
[0281] Step B.2: The receiver updates the related state variables.
[0282] In this step, updating the related state variables can be understood as dragging the receiving window of the receiver, updating the variables at the low end of the receiving window (RX_Next), the t-reordering state variable (RX_Next_Status_Trigger), the maximum transmission state variable (RX_Highest_Status), and the highest receiving state variable (RX_Next_Highest). After obtaining the SN gap information, the receiver updates RX_Next to the state variable of the last successfully received RLC SDU in order and not discarded. The RX_Highest_Status used to record the parameters in the status report is updated to the sequence number of the first RLC SDU whose SN is greater than the current RX_Highest_Status and not discarded by the transmitter. The receiver updates the variable RX_Next at the low end of the transmission window, and RX_Next is updated to the state variable of the RLC SDU after the last successfully received RLC SDU in order and not discarded.
[0283] Step 1: The receiver sends a status report to the transmitter.
[0284] In this step, the receiver can trigger the transmitter to send a status report (Status PDU) to the transmitter when the timer for discarding data packets expires, or the receiver triggers the transmitter to send a status report to the transmitter based on the existing trigger mechanism. The discarded data packets can be outdated data packets.
[0285] It should be noted that when sending a status report, the t-StatusProhibit condition must also be met. The t-StatusProhibit condition means that the status report is sent by the receiving end when the status report transmission prohibition timer is not running or when the status report transmission prohibition timer has expired. The status report may also include indication information to indicate that the status report is sent after the receiving end performs packet dropping or after the timer that triggered packet dropping has expired.
[0286] Step 2: The sending end updates the variable TX_Next_ACK based on the status report.
[0287] In this step, TX_Next_ACK is updated to the sequence number of the next RLC SDU, which is the RLC SDU that is waiting in sequence to receive the indication of successful reception.
[0288] Step 3: The sending end sends RLC PDU data packets to the receiving end.
[0289] It should be noted that the expired data packets mentioned in this application may also include data packets that are about to expire. Expired data packets may also be replaced by data packets that are avoided from transmission or that do not need to be transmitted, or by data packets that do not need to be retransmitted. Expired data packets may also be replaced by combinations of various types of data packets mentioned above. The data packets mentioned here may include data packets of RLC SDU or RLC SDU segment type.
[0290] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0291] Based on the same inventive concept, this application also provides a data transmission apparatus for implementing the output transmission method described above. The solution provided by this apparatus is similar to the implementation described in the above method; therefore, the limitations in one or more data transmission apparatus embodiments provided below can be found in the limitations of the data transmission method described above, and will not be repeated here.
[0292] The data transmission device can be a sending device in the above embodiments, such as a terminal or a network device (e.g., a base station).
[0293] In one embodiment, as shown in FIG. 12, a data transmission device 1200 is provided, which is applied to a sending device, and the data transmission device 1200 includes:
[0294] A first processing module 1201 is configured to update a state variable of the sending device when a first trigger condition is met.
[0295] A first sending module 1202 is configured to send an RLC PDU data packet to a receiving device according to a sending window indicated by the updated state variable, where RLC PDU is a radio link control layer packet data unit.
[0296] For example, the first trigger condition includes at least one of the following:
[0297] The sending device determines to discard the data packet.
[0298] The sending device sends sequence number interval related information to the receiving device.
[0299] The sending device receives a status report from the receiving device.
[0300] For example, the state variable of the sending device is used to indicate an upper boundary and / or a lower boundary of a sending window of the sending device.
[0301] For example, the condition under which the sending device determines to discard the data packet includes at least one of the following:
[0302] The sending device receives expiration indication information from a PDCP layer, where PDCP layer is a packet data convergence layer.
[0303] The sending device receives timer expiration indication information from an RLC layer, where RLC layer is a radio link control layer.
[0304] The number of retransmissions of the data packet reaches a preset value.
[0305] For example, the generation condition of the timer expiration indication information of the RLC layer includes at least one of the following:
[0306] The timer of the RLC layer starts timing after the RLC layer obtains a data packet for an RLC SDU from a PDCP layer, until the timer of the RLC layer reaches a preset time threshold, where RLC SDU is a radio link control layer service data unit.
[0307] The timer of the RLC layer starts timing after the RLC layer obtains a start timing indication information from a PDCP layer, until the timer of the RLC layer reaches a preset time threshold.
[0308] Exemplarily, the apparatus further comprises a first receiving module 1203 configured to send, to the receiving end, polling related information including polling indication information, in the case that the sending end determines to discard the data packet or the sending end has sent the sequence number interval related information to the receiving end.
[0309] Exemplarily, the polling related information is contained in a control PDU used for transmitting the sequence number interval related information, and the PDU is a packet data unit; and / or, the polling related information is contained in an RLC layer data PDU, and the RLC layer is a wireless link control layer.
[0310] Exemplarily, the polling related information further comprises polling sending state variable information, which is information of the highest sequence number among all AMD PDU sequence numbers submitted to the underlying layer when the polling sending state variable is set, and the AMD PDU is an acknowledged mode data protocol data unit.
[0311] Exemplarily, the sending end determines the data packet to be discarded as an expired data packet.
[0312] Exemplarily, the first processing module 1201 is configured to update the lower boundary state variable of the sending window according to the discarded data packet, and the updated lower boundary state variable of the sending window is the sequence number of the next RLC SDU after the discarded data packet is executed; the next RLC SDU is a RLC SDU to be received in sequence and is sent by the receiving end to send an acknowledgement of successful reception.
[0313] Exemplarily, the first processing module 1201 is configured to update the sending end state variable TX_Next to be the sequence number of the next newly generated and not discarded AMD PDU; the AMD PDU is an acknowledged mode data protocol data unit.
[0314] Exemplarily, the first processing module 1201 is configured to, in the case that the sending end receives the status report from the receiving end, update the lower boundary state variable of the sending window to be the sequence number of the next RLC SDU to be received in sequence and sent by the receiving end to send an acknowledgement of successful reception.
[0315] Exemplarily, the status report from the receiving end comprises first indication information, and the first indication information is used to indicate any of the following information:
[0316] The sequence number interval indication information sent by the sending end has been successfully received by the receiving end;
[0317] The status report is generated by the sending end based on the obtained sequence number interval indication information;
[0318] The status report is generated by the sending end after obtaining the sequence number interval indication information.
[0319] For example, after the receiving end discards the data packet, the status report from the receiving end further includes: confirmation indication information set according to the sequence number of the RLC SDU corresponding to the discarded data packet of the receiving end, and / or confirmation indication information set according to the sequence number of the RLC SDU segment corresponding to the discarded data packet of the receiving end, the RLC SDU being a radio link control layer service data unit.
[0320] For example, the status report from the receiving end includes: second indication information, the second indication information being used to indicate that the status report is a status report triggered after the receiving end discards the data packet, or the second indication information being used to indicate that the status report is a status report triggered after a timer for instructing the receiving end to discard the data packet expires.
[0321] For example, the status report from the receiving end is a status report triggered after the receiving end discards the data packet, or the status report from the receiving end is a status report triggered after a timer for instructing the receiving end to discard the data packet expires.
[0322] For example, the status report is a status report received after a timer started by the sending end after the sending end sends the sequence number interval related information expires, or the status report is a status report sent by the receiving end after the receiving end receives the sequence number interval related information.
[0323] For example, the status report from the receiving end is sent by the receiving end in a case that a prohibit status report transmission timer does not run or in a case that the prohibit status report transmission timer expires.
[0324] In addition, the data transmission device can also be the receiving end device in the above embodiments, such as a terminal or a network device (such as a base station).
[0325] In another embodiment, as shown in FIG. 13, a data transmission device 1300 is provided, which is applied to a receiving end, and the data transmission device 1300 includes:
[0326] A second receiving module 1301 is configured to receive an RLC PDU data packet sent by a sending end, the RLC PDU being a radio link control layer packet data unit.
[0327] A second processing module 1302 is configured to perform at least one of the following operations:
[0328] Discarding the data packet;
[0329] Controlling a second sending module 1303 to send a status report to the sending end;
[0330] Updating a state variable of the receiving end.
[0331] Exemplarily, the condition for the receiving end to discard the data packet comprises at least one of the following:
[0332] The receiving end receives the expiration indication information from the PDCP layer, and the PDCP layer is a packet data convergence layer.
[0333] The receiving end receives the timer expiration indication information from the RLC layer, and the RLC layer is a radio link control layer.
[0334] The receiving end receives the sequence number interval related information sent by the sending end.
[0335] Exemplarily, the condition for the receiving end to send the status report to the sending end comprises at least one of the following:
[0336] The receiving end receives the sequence number interval related information sent by the sending end.
[0337] The receiving end determines to discard the data packet.
[0338] The receiving end discards the data packet.
[0339] The receiving end receives the expiration indication information from the PDCP layer, and the PDCP layer is a packet data convergence layer.
[0340] The receiving end receives the timer expiration indication information from the RLC layer.
[0341] The receiving end receives the polling related information sent by the sending end, and the RLC layer is a radio link control layer.
[0342] Exemplarily, the state variable of the receiving end is used to indicate the upper boundary and / or the lower boundary of the receiving window of the receiving end.
[0343] Exemplarily, the second receiving module 1301 is further configured to receive the polling related information sent by the sending end, and the polling related information comprises polling indication information; the polling indication information is used to trigger the receiving end to send the status report to the sending end.
[0344] Exemplarily, the polling related information is contained in the control PDU used to transmit the sequence number interval related information, the PDU is a packet data unit; and / or, the polling related information is contained in the RLC layer data PDU, and the RLC layer is a radio link control layer.
[0345] Exemplarily, the polling related information further comprises polling sending state variable information, and the polling sending state variable information is information of the highest sequence number in all AMD PDU sequence numbers submitted to the underlying layer when the polling sending state variable is set, and the AMD PDU is an acknowledged mode data protocol data unit.
[0346] Exemplarily, the receiving end sends the status report to the sending end in the case that the prohibit status report transmission timer is not running or expires.
[0347] Exemplarily, the second processing module 1302 is configured to update the lower boundary state variable of the receiving window according to the discarded data packet, and the updated lower boundary state variable of the receiving window is the next sequence number following the sequence number of the last sequentially complete received RLC SDU except the discarded data packet.
[0348] Exemplarily, the status report comprises first indication information, and the first indication information is used to indicate any of the following information:
[0349] The sequence number interval indication information sent by the sending end has been successfully received by the receiving end;
[0350] The status report is generated by the sending end based on the obtained sequence number interval indication information;
[0351] The status report is generated by the sending end after obtaining the sequence number interval indication information.
[0352] Exemplarily, the status report generated by the receiving end further comprises confirmation indication information set according to the sequence number of the RLC SDU corresponding to the discarded data packet of the receiving end, and / or confirmation indication information set according to the sequence number of the RLC SDU segment corresponding to the discarded data packet of the receiving end, wherein the RLC SDU is a radio link control layer service data unit.
[0353] Exemplarily, the status report comprises second indication information, and the second indication information is used to indicate that the status report is a status report triggered after the receiving end discards data packets, or the second indication information is used to indicate that the status report is a status report triggered after the timer for instructing the receiving end to discard data packets expires.
[0354] Exemplarily, the status report is a status report triggered after the receiving end discards data packets, or the status report is a status report triggered after the timer for instructing the receiving end to discard data packets expires. It should be noted that the above apparatus provided by the embodiments of the present disclosure can realize all the method steps achieved by the method embodiments shown in FIGS. 5-11, and can achieve the same technical effects. Therefore, the same parts and beneficial effects of the method embodiments will not be described here again.
[0355] It should be noted that the division of the unit in the embodiments of the present application is illustrative, and is only a logical function division. In actual implementation, another division manner can be used. In addition, each functional unit in each embodiment of the present application can be integrated in one processing unit, or each unit can be physically present separately, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software functional unit.
[0356] If the integrated module is realized in the form of a software functional unit and sold or used as an independent product, it can be stored in a processor-readable storage medium. Based on this understanding, the technical solutions of the present application or the part that essentially contributes to the related art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the steps of the embodiments of the present application.
[0357] For example, as shown in FIG. 14, the embodiments of the present application also provide a network device to implement the data transmission method of the sending end or the receiving end, which includes a processor 1401, a memory 1402 and a transceiver 1403.
[0358] The transceiver 1403 is configured to receive and send data under the control of the processor 1401.
[0359] In FIG. 14, the bus architecture can include any number of interconnected buses and bridges, which link various circuits represented by the processor and the memory. The bus architecture can also link various other circuits such as peripheral devices, voltage stabilizers and power management circuits, which are well known in the art, and thus, are not further described herein. The bus interface provides an interface. The transceiver can be a plurality of elements, i.e., including a transmitter and a receiver, which provides a unit for communicating with various other devices on a transmission medium, including a wireless channel, a wired channel, an optical cable and other transmission media. The processor is responsible for managing the bus architecture and general processing, and the memory can store data used by the processor 1401 in performing operations.
[0360] The processor can be a central processing unit (CPU), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or a complex programmable logic device (CPLD), and can also be a multi-core architecture.
[0361] As shown in FIG. 15, the terminal according to an embodiment of the present application includes a processor 1501, a memory 1502, a transceiver 1503 and a user interface 1504.
[0362] The transceiver 1503 is configured to receive and transmit data under the control of the processor.
[0363] In FIG. 15, the bus architecture can include any number of interconnecting buses and bridges, allowing the various circuits of the processor(s) and memory to communicate with one another. The bus architecture can also include a plurality of different bus configurations, including a memory bus and a peripheral bus, which can be implemented using various bus standards, such as PCI and ISA buses. Such communication can occur via the bus interface. The transceiver can be a plurality of elements, including a transmitter and a receiver, which are used to communicate with various other apparatus over a transmission medium, which can include a wireless channel, a wired channel, optical fiber cable, or other transmission media. The user interface 1504 can also be an interface to other input / output devices, such as a keyboard, a mouse, a display, a speaker, a microphone, a joystick, etc.
[0364] The processor 1501 is responsible for managing the bus architecture and general processing, while the memory 1502 can store data used by the processor 1501 in executing operations.
[0365] Optionally, the processor can be a CPU (central processing unit), an ASIC (application specific integrated circuit), an FPGA (field-programmable gate array) or a CPLD (complex programmable logic device), and can also be a multi-core architecture.
[0366] The processor executes any method provided by the embodiments of the present application by calling a program stored in the memory according to obtained executable instructions. The processor and the memory can also be arranged physically separately.
[0367] It should be noted that the above device provided by the embodiments of the present application can realize all the method steps achieved by the method embodiments and achieve the same technical effects. Therefore, the same parts and beneficial effects of the method embodiments will not be described herein again.
[0368] The present application also provides a processor-readable storage medium. The processor-readable storage medium can be any available medium or data storage device that can be accessed by a processor, including but not limited to a magnetic storage (such as a floppy disk, a hard disk, a magnetic tape, a magneto-optical disk (MO), etc.), an optical storage (such as a CD, a DVD, a BD, a HVD, etc.), and a semiconductor storage (such as a ROM, an EPROM, an EEPROM, a non-volatile memory (NAND FLASH), a solid-state disk (SSD), etc.).
[0369] In one embodiment, the embodiments of the present application also provide a computer program product, including a computer program which, when executed by a processor, implements the above-mentioned method for determining a transmission resource.
[0370] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer readable storage medium, and when executed, can include the processes of the above-mentioned embodiment methods. Any reference to memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memory. The non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical storage, high-density embedded non-volatile memory, resistive memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric memory (FRAM), phase change memory (PCM), graphene memory, etc. The volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration but not limitation, the RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The database involved in the embodiments provided in the present application can include at least one of a relational database and a non-relational database. The non-relational database can include a distributed database based on a block chain, etc., without being limited thereto. The processor involved in the embodiments provided in the present application can be a general-purpose processor, a central processing unit, a graphics processing unit, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., without being limited thereto.
[0371] Those skilled in the art will appreciate that embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage and optical storage, etc.) containing computer-usable program code.
[0372] The computer executable instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operations to be performed on the computer or other programmable data processing apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable data processing apparatus implement the functions specified in the flowchart block or blocks.
[0373] These processor executable instructions can also be stored in a processor readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the processor readable memory produce an article of manufacture including instructions which implement the function specified in the flowchart block or blocks.
[0374] The technical features of the above embodiments can be combined in any manner, and for the sake of brevity, not all possible combinations are described, however, as long as there is no conflict, any combination of the technical features should be considered within the scope of the present disclosure.
[0375] Obviously, persons having ordinary skill in the art can make various modifications and variations to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the present claims and their equivalents, they should be considered to be within the scope of the present application.
[0376] The technical features of the above embodiments can be combined in any manner, and for the sake of brevity, not all possible combinations are described, however, as long as there is no conflict, any combination of the technical features should be considered within the scope of the present disclosure.
[0377] It should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than limit them. Although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those skilled in the art that the technical solutions recorded in the foregoing embodiments can be modified, or some or all of the technical features can be replaced equivalently. Such modifications or replacements do not change the essence of the corresponding technical solutions, which should be covered in the scope of the present application. In particular, the technical features mentioned in each embodiment can be combined in any manner as long as there is no structural conflict. The present application is not limited to the specific embodiments disclosed herein, but includes all technical solutions falling within the scope of the claims.
Claims
1. A method of data transmission, wherein, The method is applied to a sending end, and the sending end comprises a terminal or a network device, and the method comprises the following steps: In a case where a first trigger condition is met, a state variable of the sending end is updated; RLC PDU data packets are sent to a receiving end according to a sending window indicated by the updated state variable, wherein the RLC PDU is a radio link control layer packet data unit.
2. The method of claim 1, wherein, The first trigger condition comprises at least one of the following: The sending end determines that the data packets are to be discarded; The sending end sends sequence number interval related information to the receiving end; The sending end receives a status report from the receiving end.
3. The method of claim 1, wherein, The state variable of the sending end is used to indicate an upper boundary and / or a lower boundary of the sending window of the sending end.
4. The method of claim 2, wherein, The condition under which the sending end determines that the data packets are to be discarded comprises at least one of the following: The sending end receives expired indication information from a PDCP layer, wherein the PDCP layer is a packet data convergence layer; The sending end receives timer expiration indication information from an RLC layer, wherein the RLC layer is a radio link control layer; The number of retransmissions of the data packets reaches a preset value.
5. The method of claim 4, wherein, The generation condition of the timer expiration indication information of the RLC layer comprises at least one of the following: The timer of the RLC layer starts timing after the RLC layer obtains the data packets for an RLC SDU from the PDCP layer, and the timer of the RLC layer reaches a preset time threshold value; The timer of the RLC layer starts timing after the RLC layer obtains start timing indication information from the PDCP layer, and the timer of the RLC layer reaches a preset time threshold value.
6. The method of claim 1, wherein, In a case where the sending end determines that the data packets are to be discarded or the sending end has sent sequence number interval related information to the receiving end, the method further comprises the following steps: Polling related information is sent to the receiving end, wherein the polling related information comprises polling indication information; and the polling indication information is used to trigger the receiving end to send a status report to the sending end.
7. The method of claim 6, wherein, The polling related information is contained in a control PDU used to transmit the sequence number interval related information, wherein the PDU is a packet data unit; and / or The polling related information is contained in an RLC layer data PDU, wherein the RLC layer is a radio link control layer.
8. The method of claim 6 or 7, wherein, The polling related information further comprises polling sending state variable information, wherein the polling sending state variable information is information of a highest sequence number of all AMD PDU sequence numbers submitted to a lower layer when a polling sending state variable is set, and the AMD PDU is an acknowledged mode data protocol data unit.
9. The method of claim 1, wherein, The data packets determined by the sending end to be discarded are expired data packets.
10. The method of claim 1, wherein, The state variable of the sending end is updated, and the updating comprises the following steps: A lower boundary state variable of the sending window is updated according to the discarded data packets, wherein the updated lower boundary state variable of the sending window is a sequence number of a next RLC SDU after the discarded data packets are executed; the next RLC SDU is an RLC SDU that is ready to be received in sequence and is sent by the receiving end to indicate that the RLC SDU is successfully received, wherein the RLC SDU is a radio link control layer service data unit.
11. The method according to any one of claims 1 to 10, wherein, The state variable of the sending end is updated, and the updating comprises the following steps: updating a state variable TX_Next of the sending end to a sequence number assigned to a next newly generated and not discarded AMD PDU; the AMD PDU is an acknowledgement mode data protocol data unit.
12. The method according to any one of claims 1 to 10, wherein, The method comprises updating a state variable of the sending end, comprising: In a case where the sending end receives a status report from the receiving end, updating a lower boundary state variable of the sending window to a sequence number of a next RLC SDU successfully received and sent by the receiving end to send an acknowledgement, the RLC SDU being a radio link control layer service data unit.
13. The method of claim 2, wherein, The status report from the receiving end comprises first indication information, the first indication information being used to indicate any of the following information: The sending end has successfully received sequence number interval indication information sent by the sending end; The status report is generated by the sending end based on the obtained sequence number interval indication information; The status report is generated by the sending end after obtaining the sequence number interval indication information.
14. The method of claim 2, wherein, After the receiving end discards a data packet, the status report from the receiving end further comprises acknowledgement indication information set according to a sequence number of a RLC SDU corresponding to the discarded data packet of the receiving end, and / or acknowledgement indication information set according to a sequence number of a RLC SDU segment corresponding to the discarded data packet of the receiving end, the RLC SDU being a radio link control layer service data unit.
15. The method of claim 2, wherein, The status report from the receiving end comprises second indication information, the second indication information being used to indicate that the status report is a status report triggered after the receiving end discards a data packet, or the second indication information being used to indicate that the status report is a status report triggered after a timer of the receiving end indicating discarding of a data packet expires.
16. The method of claim 2, wherein, The status report from the receiving end is a status report triggered after the receiving end discards a data packet, or the status report from the receiving end is a status report triggered after a timer of the receiving end indicating discarding of a data packet expires.
17. The method of claim 2, wherein, The status report is a status report received after a timer started after the sending end sends sequence number interval related information expires; or the status report is a status report sent by the receiving end after the receiving end receives sequence number interval related information.
18. The method of claim 2, wherein, The status report from the receiving end is sent by the receiving end in a case where a prohibit status report transmission timer is not running or expires.
19. A data transmission method, wherein, The receiving end is a network device when the sending end is a terminal; The receiving end is a terminal when the sending end is a network device; the method comprises: Receiving an RLC PDU data packet sent by the sending end, the RLC PDU being a radio link control layer packet data unit; The method further comprises at least one of the following: Discarding a data packet; Sending a status report to the sending end; Updating a state variable of the receiving end.
20. The method of claim 19, wherein, The condition under which the receiving end discards a data packet comprises at least one of the following: The receiving end receives expired indication information from a PDCP layer, the PDCP layer being a packet data convergence layer; The receiving end receives timer expiration indication information from an RLC layer, the RLC layer being a radio link control layer; The receiving end receives the sequence number interval related information sent by the sending end.
21. The method of claim 19, wherein, The condition under which the receiving end sends the status report to the sending end comprises at least one of the following: The receiving end receives the sequence number interval related information sent by the sending end. The receiving end determines to discard the data packet. The receiving end discards the data packet. The receiving end receives the expiration indication information from the PDCP layer, which is the packet data convergence layer. The receiving end receives the timer expiration indication information from the RLC layer. The receiving end receives the polling related information sent by the sending end, and the RLC layer is the radio link control layer.
22. The method of claim 19, wherein, The state variable of the receiving end is used to indicate the upper boundary and / or lower boundary of the receiving window of the receiving end.
23. The method of claim 19, wherein, The method further comprises: The receiving end receives the polling related information sent by the sending end, and the polling related information comprises polling indication information; the polling indication information is used to trigger the receiving end to send the status report to the sending end.
24. The method of claim 23, wherein, The polling related information is contained in the control PDU used to transmit the sequence number interval related information, and the PDU is the packet data unit; and / or, The polling related information is contained in the RLC layer data PDU, and the RLC layer is the radio link control layer.
25. The method of claim 23, wherein, The polling related information further comprises polling sending state variable information, and the polling sending state variable information is the information of the highest sequence number among all AMD PDU sequence numbers submitted to the underlying layer when the polling sending state variable is set, and the AMD PDU is the acknowledged mode data protocol data unit.
26. The method of any one of claims 19 to 25, wherein, The receiving end sends the status report to the sending end in the case that the prohibit status report transmission timer is not running or expires.
27. The method of any one of claims 19 to 25, wherein, The method of updating the state variable of the receiving end comprises: The lower boundary state variable of the receiving window is updated according to the discarded data packet, and the updated lower boundary state variable of the receiving window is the next sequence number following the sequence number of the last sequentially completely received RLC SDU, and the RLC SDU is the radio link control layer service data unit.
28. The method of any one of claims 19 to 25, wherein, The status report comprises first indication information, and the first indication information is used to indicate any of the following information: The sequence number interval indication information sent by the sending end has been successfully received by the receiving end. The status report is generated by the sending end based on the obtained sequence number interval indication information. The status report is generated by the sending end after obtaining the sequence number interval indication information.
29. The method of any one of claims 19 to 25, wherein, The status report generated by the receiving end further comprises acknowledgement indication information set according to the sequence number of the RLC SDU corresponding to the discarded data packet, and / or acknowledgement indication information set according to the sequence number of the RLC SDU segment corresponding to the discarded data packet, and the RLC SDU is the radio link control layer service data unit.
30. The method of any one of claims 19 to 25, wherein, The state report comprises second indication information, and the second indication information is used to indicate that the state report is triggered after the receiving end discards the data packet, or the second indication information is used to indicate that the state report is triggered after a timer for instructing the receiving end to discard the data packet expires.
31. The method of any one of claims 19 to 25, wherein, The state report is triggered after the receiving end discards the data packet, or the state report is triggered after a timer for instructing the receiving end to discard the data packet expires.
32. A terminal, wherein, The terminal as a sending end comprises a memory, a transceiver and a processor. The memory is used to store a computer program. The transceiver is used to transceive data under the control of the processor. The processor is used to read the computer program in the memory and perform the following operations: In the case where the first trigger condition is met, update the state variable of the sending end; According to the sending window indicated by the updated state variable, send an RLC PDU data packet to the receiving end, wherein the RLC PDU is a radio link control layer packet data unit.
33. A network device, wherein, The network device as a sending end comprises a memory, a transceiver and a processor. The memory is used to store a computer program. The transceiver is used to transceive data under the control of the processor. The processor is used to read the computer program in the memory and perform the following operations: In the case where the first trigger condition is met, update the state variable of the sending end; According to the sending window indicated by the updated state variable, send an RLC PDU data packet to the receiving end, wherein the RLC PDU is a radio link control layer packet data unit.
34. A terminal, wherein, The terminal as a receiving end comprises a memory, a transceiver and a processor. The memory is used to store a computer program. The transceiver is used to transceive data under the control of the processor. The processor is used to read the computer program in the memory and perform the following operations: Receive an RLC PDU data packet sent by a sending end, wherein the RLC PDU is a radio link control layer packet data unit. The processor is further used to read the computer program in the memory and perform at least one of the following operations: Discard the data packet; Send a state report to the sending end; Update the state variable of the receiving end.
35. A network device, wherein, The network device as a receiving end comprises: A memory, a transceiver and a processor. The memory is used to store a computer program. The transceiver is used to transceive data under the control of the processor. The processor is used to read the computer program in the memory and perform the following operations: Receive an RLC PDU data packet sent by a sending end, wherein the RLC PDU is a radio link control layer packet data unit. The processor is further used to read the computer program in the memory and perform at least one of the following operations: Discard the data packet; Send a state report to the sending end; Update the state variable of the receiving end.
36. A data transmission apparatus, comprising: The apparatus is applied to a sending end, and the apparatus comprises: A first processing module, which is used to update a state variable of the sending end in the case where a first trigger condition is met. The first sending module is configured to send, to the receiving end, an RLC PDU data packet according to a sending window indicated by the updated state variable, wherein the RLC PDU is a radio link control layer packet data unit.
37. A data transmission apparatus, wherein, The application is applied to a receiving end, and the device comprises: The second receiving module is configured to receive an RLC PDU data packet sent by the sending end, wherein the RLC PDU is a radio link control layer packet data unit. The second processing module is configured to perform at least one of the following operations: Discarding the data packet; Sending a status report to the sending end; Updating a state variable of the receiving end.
38. A computer readable storage medium having stored thereon a computer program, wherein, The computer program, when executed by a processor, implements the steps of the method in any one of claims 1 to 31.
39. A computer program product comprising a computer program, wherein, The computer program, when executed by a processor, implements the steps of the method in any one of claims 1 to 31.
Citation Information
Patent Citations
Data receiving method, data transmission method, data receiving device, data transmission device and communication equipment
CN118694486A
Data receiving method and apparatus, and a network-side device and terminal device
WO2024114536A1
Radio link control packet discarding
WO2024168470A1