Patent Description:
The 5th-Generation (5th-Generation, <NUM>) is multi-technology fusion communication that meets a wide range of requirements for data and connection services through alternations and innovations of technologies. It is proposed in third generation partnership project (Third Generation Partnership Project, 3GPP) RAN2 that to-be-transmitted data can be preprocessed. To be specific, user equipment (User Equipment, UE) can process a service data unit (service Data Unit, SDU) at a packet data convergence protocol (Packet Data Convergence Protocol, PDCP) layer as a PDCP protocol data unit (Protocol Data Unit, PDU) by, for example, performing encryption and/or an integrity check and adding a PDCP header; and send the PDCP PDU to a cache at a lower layer, such as a radio link control (Radio Link Control, RLC) layer. The RLC layer may further process the PDCP PDU as an RLC PDU. Further, the RLC layer may transmit the RLC PDU to a lower layer, such as a medium access control (Medium Access Control, MAC) layer. A MAC PDU may be further formed at the MAC layer. According to the foregoing manner, once receiving uplink scheduling, the UE can send the processed MAC PDU to a network device by using an air interface resource, thereby reducing processing time and improving a data transmission rate on a whole link. However, in a dual-connectivity architecture, if the UE allocates preprocessed data to two transmission branches, possibly transmission on one transmission branch fails due to channel quality deterioration. Consequently, data is congested on the transmission branch for a long period, resulting in bad user experience.

<CIT> discloses a technique for retransmitting data in a dual connectivity network in which a mobile station (MS) is connected to a first base station (BS) via a first radio link and to a second BS via a second radio link, including sending, by a first protocol entity of the MS, a protocol data unit (PDU) to a first entity of a second protocol of the MS for transmission to the first BS via the first radio link, detecting a trigger condition at the MS associated with the PDU, and re-sending, by the first protocol entity of the MS, the PDU to a second entity of the second protocol of the MS for transmission to the second BS via the second radio link. The detecting a trigger condition may comprise: starting a transmission timer associated with the PDU; and determining that the timer associated with the PDU has expired before the first protocol entity receives an indication of successful delivery of the PDU to the first BS.

<CIT> discloses a user equipment having a dual connectivity function to communicate with multiple base stations simultaneously, comprising: a PDCP (Packet Data Convergence Protocol) layer processing unit configured to generate packet sequences for transmission to respective ones of the multiple base stations from to-be-transmitted uplink data; and a RLC (Radio Link Control) layer processing unit configured to transmit the generated packet sequences to the multiple base stations. The RLC layer processing unit includes: a RLC buffer configured to store packets transmitted from the PDCP layer processing unit and destined for the respective ones of the multiple base stations; RLC entities provided corresponding to respective ones of the multiple base stations, the RLC entities being configured to transmit the packets stored in the RLC buffer to the corresponding base stations; and a RLC entity control unit configured to control the RLC buffer and the RLC entities. The RLC entity control unit has a RLC discard timer configured to count a staying time of the respective packets stored in the RLC buffer, the RLC entity control unit discards a staying packet, for which the RLC discard timer has expired, from the RLC buffer, indicates the PDCP layer processing unit to retransmit the staying packet to the RLC buffer as a packet destined for a different base station, and transmits the staying packet retransmitted from the PDCP layer processing unit from a RLC entity corresponding to the different base station.

Embodiments of the present invention provide an uplink data transmission method, user equipments, a communications system and a computer program according to the attached claims. In a dual-connectivity architecture, when UE allocates preprocessed data to two transmission branches, and transmission on one transmission branch fails due to channel quality deterioration, data can be prevented from being congested on the transmission path for a long period, thereby improving user experience.

It can be learned that, according to the embodiments of the present invention, during transmission of the uplink data of the split bearer of the user equipment, when the UE allocates preprocessed data to two transmission branches, and transmission on one transmission branch fails due to channel quality deterioration, the third operation can be performed on data on the transmission branch and, after the third operation on the second data has been performed, a backup of the second data can be transmitted to the first transmission branch. This prevents the data from being congested on the transmission branch for a long period, thereby improving user experience.

To describe the technical solutions in the embodiments of the present invention or in the prior art more clearly, the following briefly describes the accompanying drawings required for describing the embodiments or the prior art.

The technical solutions according to embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings.

Subsequently, refer to <FIG> is a schematic architectural diagram of a communications system according to an example for a better understanding. As shown in <FIG>, a communications system <NUM> may include at least UE <NUM>, a master node (Master Node, MN), a secondary node (Secondary Node, SN), and a core network. In actual application, the communications system <NUM> may further include another device.

The UE may establish connections to two network nodes, that is, the MN and the SN. The MN interacts with the core network by using a first interface, the SN interacts with the core network by using a second interface, the MN interacts with SN by using a third interface, the MN interacts with the UE by using a fourth interface, and the SN interacts with the UE by using a fifth interface. Specifically, the fourth interface may be a Uu interface, and the fifth interface may be a Uu interface. In this example for a better understanding, a first node may be an MN or an SN. When the first node is an MN, a second node is an SN. Alternatively, when the first node is an SN, a second node is an MN.

The UE <NUM> may be an intelligent terminal such as a mobile phone or a smartwatch; or may be a communications device such as server, a gateway, a base station, or a controller; or may be an internet of things device such as a sensor, an electricity meter, or a water meter; or may be another device that can be accessed to a cellular network or a wired network.

The foregoing two network nodes may be network devices, for example, including but not limited to an evolved NodeB (evolved Node B, eNB), a next generation NodeB (Next Generation Node B, gNB), a transmission and reception point (Transmission and Reception Point, TRP), a cell, a central unit (Central Unit, CU), a distributed unit (Distributed Unit, DU), and the like. It should be noted that the network device described in following embodiments is the first node or the second node.

Based on the communications system described in <FIG>, the following describes a schematic flowchart of a data transmission method according to an embodiment of the present invention with reference to <FIG>.

As shown in <FIG>, the data transmission method may include at least the following steps.

S201: Start a timer when a first operation is performed on first data on a first transmission branch. Specifically, according to the schematic architectural diagram of the communications system shown in <FIG>, after establishing dual connections to the first node and the second node, the UE may further establish a split bearer split bearer. A transmission branch between the UE and the first node, corresponding to protocol stack layers of the split bearer, is a first transmission branch. A transmission branch between the UE and the second node, corresponding to protocol stack layers of the split bearer, is a second transmission branch. To-be-transmitted data may be classified into first data and second data. The first data is data that has been transmitted to an RLC layer and/or a MAC layer of the first transmission branch. The first data may be transmitted to the first node through the first transmission branch. The second data is data that has been transmitted to an RLC layer and/or a MAC layer of the second transmission branch. The second data may be transmitted to the second node through the second transmission branch.

Specifically, the split bearer may be an MCG split bearer or an SCG split bearer. The split bearer includes a PDCP entity, two RLC entities respectively for the MN and the SN, and two MAC entities respectively for the first node and the second node. The PDCP entity, the RLC entities, and the MAC entities described in this example for a better understanding may be understood as function modules for implementing functions of a PDCP layer, the RLC layer, and the MAC layer; and may be deduced from or replaced with the PDCP layer, the RLC layer, and the MAC layer. The protocol stack of the split bearer is shown in <FIG>. Protocol stack layers of the first transmission branch include at least a PDCP layer, an RLC#<NUM> layer, and a MAC#<NUM> layer. Protocol stack layers of the second transmission branch include at least the PDCP layer, an RLC#<NUM> layer, and a MAC#<NUM> layer. Encryption, an integrity check, header compression, and the like are performed on the data at the PDCP layer, and then the data is transmitted to the RLC layer and the MAC layer.

The first operation, according to this application, includes at least one of the following three possible implementations.

In a first possible implementation, the first operation may be starting transmission of the first data to the first node on the first transmission branch.

Specifically, after transmission of the first data starts, the UE starts the timer, and timing begins.

Specifically, the UE may determine whether indication information indicating that transmission of any PDCP PDU in the first data succeeds and/or fails, for example, a PDCP status report PDCP STATUS report, is received. Alternatively, the UE may determine whether indication information of a lower protocol stack layer (for example, the RLC#<NUM> or the MAC#<NUM>) indicating that transmission of any data in the first data has been started, is received. If the indication information is received, the UE determines that transmission of the first data to the first node on the first transmission branch has been started.

In a second possible implementation, the first operation may be completing transmission of the first data to the first node on the first transmission branch.

Specifically, after the transmission of the first data is completed, the UE starts the timer, and timing begins.

Specifically, determining, by the UE, that the transmission of the first data is completed may be receiving, by the UE, indication information, for example, a PDCP status report PDCP STATUS Report, that is returned by a peer end; and determining, based on the indication information, that PDCP PDUs associated with PDCP serial numbers (serial number, SN) in the first data are all successfully received. Alternatively, the transmission of the first data is completed may be that the PDCP layer of the UE receives response information of a lower protocol stack layer, where the response information indicates that the transmission of the first data is completed. For example, the PDCP layer receives first indication information of the RLC#<NUM> layer, where the first indication information indicates that the transmission of the first data has been completed. Specifically, the RLC layer determines the first indication information based on second indication information of the MAC#<NUM> layer, where the second indication information indicates that the first data has been transmitted on a wireless air interface, and hybrid automatic repeat request (Hybrid Automatic Repeat request, HARQ) information indicating successful transmission has been received. It should be noted that some of the PDCP PDUs may fail to be transmitted, but the UE may still consider that the first data is all transmitted. For example, when the PDCP PDU is mapped in an RLC unacknowledged mode (Unacknowledged Mode, UM), unsuccessful transmission of a part of the data does not affect user experience, and in this case, the UE can still determine that the transmission of the first data is completed.

In a third possible implementation, the first operation may be completing transmission of a part of the first data to the first node on the first transmission branch.

Specifically, after the transmission of a part of the first data is completed, the UE starts the timer, and timing begins. The part of the first data may be data of a particular data amount, or may be data associated with a particular PDCP SN number.

Specifically, the UE may determine whether indication information indicating that a particular quantity of PDCP PDUs in the first data are successfully transmitted, for example, a PDCP STATUS report, is received. Alternatively, the UE may determine whether indication information indicating that a PDCP PDU associated with the particular PDCP SN number in the first data is successfully transmitted, for example, a PDCP STATUS report, is received. Alternatively, the UE may determine whether indication information of a lower protocol stack layer (for example, the RLC#<NUM> or the MAC#<NUM>), indicating that transmission of a particular quantity of PDCP PDUs in the first data is completed, is received. Alternatively, the UE may determine whether indication information of a lower protocol stack layer (for example, the RLC#<NUM> or the MAC#<NUM>), indicating that transmission of the PDCP PDU associated with the particular PDCP SN number in a first data portion is completed, is received. If the indication information is received, the UE determines that transmission of a part of the data is completed on the first transmission branch. For example, if a part of the first data is <NUM>% of the first data, when transmission of <NUM>% of the first data is completed, the UE determines that transmission of a part of the data is completed on the first transmission branch. Alternatively, if a part of the first data is PDCP PDUs corresponding to <NUM>% of PDCP SN numbers in an associated PDCP SN number set in the first data, when a quantity of SN numbers associated with PDCP PDUs in the first data that have been transmitted reaches <NUM>% of total SN numbers associated with all PDCP PDUs in the first data, the UE determines that transmission of a part of the data is completed on the first transmission branch. Alternatively, when SN numbers associated with the PDCP PDUs in the first data that have been transmitted include a particular PDCP SN number, the UE determines that transmission of a part of the data is completed on the first transmission branch.

S203: When timing of the timer ends, if a second operation is not performed on second data on a second transmission branch, perform a third operation on the second data.

The second operation, according to this application, includes at least one of the following three possible implementations.

In a first possible implementation, the second operation may be starting transmission of the second data to the second node on the second transmission branch.

Specifically, the UE may determine whether indication information indicating that transmission of any PDCP PDU in the second data succeeds and/or fails, for example, a PDCP STATUS report, is received. Alternatively, the UE may determine whether indication information of a lower protocol stack layer (for example, the RLC#<NUM> or the MAC#<NUM>), indicating that transmission of any data portion in the second data has been started, is received. If the indication information is received, the UE determines that transmission of the second data is started on the first transmission branch. In a second possible implementation, the second operation may be completing transmission of the second data to the second node on the second transmission branch.

Specifically, the UE may determine whether indication information, for example, a PDCP status report PDCP STATUS Report, that is returned by a peer end is received; and determine, based on the indication information, that PDCP PDUs associated with PDCP SN numbers in the second data are all successfully received. Alternatively, the PDCP layer of the UE may receive response information of a lower protocol stack layer (for example, the RLC#<NUM> or the MAC#<NUM>), where the response information indicates that the transmission of the second data is completed. For example, the PDCP layer receives third indication information of the RLC#<NUM> layer, where the third indication information indicates that the transmission of the second data has been completed. Specifically, the RLC#<NUM> layer determines the third indication information based on fourth indication information of the MAC#<NUM> layer, where the fourth indication information indicates that the second data has been transmitted on a wireless air interface, and HARQ information indicating successful transmission has been received. It should be noted that some of the PDCP PDUs may fail to be transmitted, but the UE may still consider that the second data is all transmitted. For example, when the PDCP PDU is mapped in an RLC UM (unacknowledged mode, unacknowledged mode) mode, unsuccessful transmission of a part of the data does not affect user experience, and in this case, the UE can still determine that the transmission of the second data is completed.

In a third possible implementation, the second operation may be completing transmission of a part of the second data to the second node on the second transmission branch.

Specifically, a part of the second data may be data of a particular data amount, or may be data associated with a particular PDCP SN number. Specifically, the UE may determine whether indication information indicating that a particular quantity of PDCP PDUs in the second data are successfully transmitted, for example, a PDCP STATUS report, is received. Alternatively, the UE may determine whether indication information indicating that a PDCP PDU associated with the particular PDCP SN number in the second data is successfully transmitted, for example, a PDCP STATUS report, is received. Alternatively, the UE may determine whether indication information of a lower protocol stack layer (for example, the RLC#<NUM> or the MAC#<NUM>), indicating that transmission of a particular quantity of PDCP PDUs in the second data is completed, is received. Alternatively, the UE may determine whether indication information of a lower protocol stack layer (for example, the RLC#<NUM> or the MAC#<NUM>), indicating that transmission of the PDCP PDU associated with the particular PDCP SN number in the second data is completed, is received. If the indication information is received, the UE determines that transmission of a part of the data is completed on the second transmission branch. For example, when a part of the second data is <NUM>% of a second data portion, the UE determines that transmission of a part of the second data is completed on the second transmission branch. Alternatively, if a part of the second data is PDCP PDUs corresponding to <NUM>% of PDCP SN numbers in an associated PDCP SN number set in the second data, when a quantity of SN numbers associated with PDCP PDUs in the second data that have been transmitted reaches <NUM>% of total SN numbers associated with all PDCP PDUs in the second data, the UE determines that transmission of a part of the second data is completed on the second transmission branch. Alternatively, when SN numbers associated with the PDCP PDUs in the second data that have been transmitted include a particular PDCP SN number, the UE determines that transmission of a part of the second data is completed on the second transmission branch.

Specifically, when the timing of the timer ends, if the second operation is not performed on the second data on the second transmission branch, the third operation is performed on the second data. The third operation, according to this application, includes at least one of the following four cases. In a first case, the third operation may be canceling transmission of the second data to the second node.

Specifically, the UE may instruct a lower protocol stack layer of the second transmission branch to cancel the transmission of the second data.

In a second case, the third operation may be deleting the second data.

Specifically, the UE may instruct a lower protocol stack layer of the second transmission branch to delete the second data.

It may be learned that the third operation may be alternatively canceling the transmission of the second data to the second node and deleting the second data.

In a third case, the third operation may be canceling transmission of a part of the second data that has not yet been transmitted.

Specifically, the UE may instruct a lower protocol stack layer of the second transmission branch to cancel the transmission of a part of the second data that has not yet been transmitted. The part of the second data may be data of a particular data amount, or may be data associated with a particular PDCP SN number.

In a fourth case, the third operation may be deleting a part of the second data that has not yet been transmitted.

Specifically, the UE may instruct a lower protocol stack layer of the second transmission branch to delete a part of the second data that has not yet been transmitted. The part of the second data may be data of a particular data amount, or may be data associated with a particular PDCP SN number.

It may be learned that the third operation may be alternatively canceling transmission of a part of the second data that has not yet been transmitted and deleting the part of the second data.

Specifically, performing, by the UE, the third operation on the second data may be instructing, by the UE by using the PDCP layer, a lower protocol stack layer of the second transmission branch to perform the third operation on the second data. For example, the PDCP layer instructs the RLC#<NUM>; or the PDCP layer instructs the RLC#<NUM>, and then the RLC#<NUM> instructs the MAC#<NUM>; or the PDCP layer instructs the MAC#<NUM>, where the protocol stack layer instructed by the PDCP layer of the UE may be a protocol stack layer at which preprocessed data is located.

According to this example, during transmission of the uplink data of the split bearer of the user equipment, when the UE allocates preprocessed data to two transmission branches, and transmission on one transmission branch fails due to channel quality deterioration, a transmission time difference between the two transmission branches can be controlled by the timer, and the third operation is performed on data on the transmission branch. This prevents data from being congested on the transmission branch for a long period, thereby improving user experience.

It may be understood that in this embodiment of the present invention, alternatively, the timer may be started when the first operation is performed on the second data on the second transmission branch; and when the timing of the timer ends, if the second operation is not performed on the first data on the first transmission branch, the third operation is performed on the first data.

Subsequently, refer to <FIG> is a schematic flowchart of another uplink data transmission method according to an embodiment of the present invention. As shown in <FIG>, the uplink data transmission method may include the following steps.

S401: Establish protocol stack layers of a first transmission branch and a second transmission branch of a split bearer.

Specifically, according to the schematic architectural diagram of the communications system shown in <FIG>, after establishing dual connections to the first node and the second node, the UE may further establish a split bearer split bearer. A transmission branch between the UE and the first node, corresponding to protocol stack layers of the split bearer, is a first transmission branch. A transmission branch between the UE and the second node, corresponding to protocol stack layers of the split bearer, is a second transmission branch. To-be-transmitted data may be classified into first data and second data. The first data is data that has been transmitted to an RLC layer and/or a MAC layer of the first transmission branch. The first data may be transmitted to the first node through the first transmission branch. The second data is data that has been transmitted to an RLC layer and/or a MAC layer of the second transmission branch. The second data may be transmitted to the second node through the second transmission branch.

Specifically, the split bearer may be a master cell group (Master Cell Group, MCG) split bearer or a secondary cell group (Secondary Cell Group, SCG) split bearer. The split bearer includes a PDCP entity, two RLC entities respectively for the MN and the SN, and two MAC entities respectively for the first node and the second node. The PDCP entity, the RLC entities, and the MAC entities described in this embodiment of the present invention may be understood as function modules for implementing functions of a PDCP layer, the RLC layer, and the MAC layer; and may be deduced from or replaced with the PDCP layer, the RLC layer, and the MAC layer. The protocol stack of the split bearer is shown in <FIG>. Protocol stack layers of the first transmission branch include at least a PDCP layer, an RLC#<NUM> layer, and a MAC#<NUM> layer. Protocol stack layers of the second transmission branch include at least the PDCP layer, an RLC#<NUM> layer, and a MAC#<NUM> layer. Encryption, an integrity check, header compression, reordering, and the like are performed on the data at the PDCP layer, and then the data is transmitted to the RLC layer and the MAC layer. S402: Respectively transmit first data and second data to lower protocol stack layers of the first transmission branch and the second transmission branch.

S403: Preprocess the first data and the second data separately.

It should be noted that an implementation order of S402 and S403 is not strictly limited, and possibly S402 and S403 are implemented alternately. Specifically, the first data and the second data may be data in a transmission path or in a first data flow, or may be PDCP SDUs or PDCP PDUs. When the first data and the second data are DCP SDUs, preprocessing the first data and the second data may at least include adding the PDCP SDUs to PDCP PDUs; and specifically, may at least include allocating corresponding PDCP SN numbers to the PDCP SDUs, and adding PDCP headers. The PDCP SN numbers of the first data and the second data may be different, or may be the same (for example, in a scenario in which PDCPs are repeated), or may be partly the same. This is not limited in the present invention. Respectively transmitting the first data and the second data to the lower protocol stack layers of the first transmission branch and the second transmission branch may be transmitting the first data to the RLC layer or the MAC layer of the first transmission branch, and transmitting the second data to the RLC layer or the MAC layer of the second transmission branch. In this case, preprocessing the first data and the second data may further include adding the first data and the second data to an RLC PDU or a MAC PDU. In actual application, extents for preprocessing the first data and the second data are not limited.

S404: Receive timer information sent by a network device.

Specifically, the network device may be the first node or the second node.

Subsequently, a method for configuring a timer for the user equipment by the network device is described in detail. Descriptions are made by using an example in which the network device is the first node. As shown in <FIG>, the timer configuration method may include the following steps.

Specifically, the duration of the timer may be determined according to the following methods.

In a first method, the duration of the timer is determined based on a quality of service parameter of uplink data.

In a second method, the duration of the timer is determined based on a quality of service parameter of a transmission path in which the uplink data is transmitted.

Specific implementation processes of the foregoing two methods for determining the duration of the timer are as follows.

First, a transmission path of the first data flow is established between the UE and the core network. The first data flow may be, but is not limited to one or more of a service data flow (Service data flow, SDF), an SDF aggregate (SDF Aggregate), a data flow (data flow), a service data flow (service data flow), a quality of service flow (QoS flow), a packet flow (packet flow), and the like. Correspondingly, the transmission path of the first data flow may be, but is not limited to an evolved packet system bearer (Evolved Packet System Bearer, EPS Bearer), an evolved radio access bearer (Evolved Radio Access Bearer, E-RAB), a PDU session (PDU Session), or the like. For a specific process, refer to relevant standards such as the 3GPP TS <NUM> standard, the 3GPP TS <NUM> standard, and the 3GPP TS <NUM> standard. Details are not described in the present invention.

Second, the first node receives a first message and determines first timer duration based on the first message.

In a first possible implementation, the first message carries feature information of the transmission path of the first data flow. The feature information of the transmission path of the first data flow may include, but is not limited to identification information of the transmission path and quality of service (Quality of Service, QoS) parameter information of the transmission path. Further, the first message may further carry feature information of the first data flow, such as identification information of the first data flow and QoS parameter information of the first data flow. The identification information of the first data flow may be, but is not limited to a service identifier (service identifier, service ID), an SDF ID, an SDF Aggregate ID, a data flow ID, a service data flow ID, a QoS flow ID, a packet flow ID, or the like. Correspondingly, the identification information of the transmission path of the first data flow may be, but is not limited to an EPS bearer ID, an E-RAB ID, a PDU Session ID, or the like. The QoS parameter information of the first data flow may include, but is not limited to one or more of a scale value (QoS Class Identifier, QCI), an allocation and retention priority (Allocation and Retention Priority, ARP), a guaranteed bit rate (Guaranteed Bit Rate, GBR), a maximum bit rate (Maximum Bit Rate, MBR), a <NUM> QoS class indicator (<NUM> QoS Indicator, 5QI), a guaranteed flow bit rate (Guaranteed Flow Bit Rate, GFBR), a maximum flow bit rate (Maximum Flow Bit Rate, MFBR), notification control notification control, and the like of the first data flow. For specific definitions, refer to the 3GPP TS <NUM> standard and the 3GPP TS <NUM> standard. The QoS parameter information of the transmission path may include, but is not limited to one or more of a QCI, an ARP, a GBR, an MBR, a 5QI, a GFBR, an MFBR, notification control, and the like of the transmission path. For specific definitions, refer to the 3GPP TS <NUM> standard and the 3GPP TS <NUM> standard. It should be noted that the QoS parameter information of the transmission path of the first data flow may further include the QoS parameter information of the first data flow. Persons skilled in the art may understand that in some scenarios, QoS feature information of the first data flow may be substantially deduced from QoS feature information of the transmission path of the first data flow. Specifically, when applied to an EN-DC scenario, the transmission path of the first data flow may be an E-RAB, a plurality of SDFs may be transmitted in the transmission path, and QoS parameters of the SDFs in the E-RAB may be substantially similar or the same. Specifically, when applied to an MR-DC with NGC, the transmission path of the first data flow may be a PDU session, and a plurality of QoS flows may be transmitted in the transmission path. In this scenario, a QoS parameter of the QoS flow may be different from a QoS parameter at a PDU session level. The duration of the timer may be determined by the second node based on the QoS parameter information of the transmission path of the first data flow. For example, the duration of the timer is determined based on one or more of the following parameters indicated by the QoS parameter information: a packet delay budget Packet Delay Budget, a resource type, a priority level, a packet error loss rate, an ARP, an MBR, an AMBR, a GFBR, an MFBR, and the like.

In a second possible implementation, the first node may obtain the feature information of the transmission path and/or the first data flow. The feature information of the transmission path and/or the first data flow may include, but is not limited to the identification information of the transmission path and preprocessing rule information of the transmission path. The preprocessing rule information includes at least timer information. In other words, the timer information is determined by the core network and is indicated to the first node. The first node directly determines the duration of the timer based on the preprocessing rule information.

In a third method, the duration of the timer is determined based on feature information of the split bearer.

A specific implementation process of the foregoing method for determining the duration of the timer is as follows.

Specifically, the UE establishes dual connections to the first node and the second node, and establishes a first radio bearer. The first radio bearer may be an MCG split bearer or an SCG split bearer. The first node determines the first timer duration that is applied to the first radio bearer, for example, determines the first timer duration based on a packet forwarding processing manner, a QoS feature, or the like of the first radio bearer.

S502: Send the duration of the timer to user equipment.

Specifically, the first node sends a message that carries duration information of the timer to the user equipment.

Moreover, in addition to sending the duration information of the timer to the user equipment, the first node may send a triggering condition for starting and/or stopping the timer to the user equipment.

S405: Start a timer if a first operation is performed on the first data on the first transmission branch. Specifically, performing the first operation on the first data on the first transmission branch is the triggering condition of the timer. The triggering condition may be sent to the user equipment by the first node, or may be locally stored by the user equipment.

Specifically, the first operation, according to this application, includes three possible implementations. For the specific implementations, refer to the description in the previous embodiment.

S406: When timing of the timer ends, determine whether a second operation is performed on the second data on the second transmission branch, and if yes, perform S407; or if no, perform S408. Specifically, the second operation, according to this application, includes three possible implementations. For the specific implementations, refer to the description in the previous embodiment.

Specifically, when the timing of the timer ends, if the second operation has been performed on a second data portion on the second transmission branch, the timer is stopped. This is the triggering condition for stopping the timer. The triggering condition may be sent to the user equipment by the first node, or may be locally stored by the user equipment.

S408: Instruct a lower protocol stack layer of the second transmission branch to perform a third operation on the second data.

Specifically, the third operation may include two possible implementations. For the specific implementations, refer to the description in the previous embodiment.

S409: Instruct a lower protocol stack layer of the second transmission branch to perform a fourth operation on the second data.

Specifically, the fourth operation may include, but is not limited to the following two implementations.

In a first implementation, the fourth operation may be transmitting a backup of the second data to the first transmission branch.

According to this application, the UE allocates the backup of the second data to the first transmission branch for transmission. The backup of the second data is transmitted to a lower protocol stack layer of the first transmission branch. The backup of the second data is second data stored in a cache at the PDCP layer.

In a second implementation, the fourth operation may be further transmitting the backup of the second data to a third transmission branch.

Specifically, the UE may establish protocol stack layers corresponding to a third transmission branch of the split bearer, where the protocol stack layers include at least a PDCP layer, an RLC layer, and a MAC layer; and allocates the backup of the second data to a lower protocol stack layer of the third transmission branch for transmission, where the lower protocol stack layer includes the RLC layer and/or the MAC layer of the third transmission branch. For example, the second data is transmitted to a lower protocol stack layer of the third transmission branch. Specifically, the backup of the second data may be second data stored in the cache at the PDCP layer. A third node may be a network device, for example, including but not limited to an eNB, a gNB, a TRP, a cell, a CU, or a DU.

According to this embodiment of the present invention, during transmission of the uplink data of the split bearer of the user equipment, when the UE allocates preprocessed data to two transmission branches, and transmission on one transmission branch fails due to channel quality deterioration, the UE can adjust a transmission policy in a timely manner, a transmission time difference between the two transmission branches is controlled by the timer, and the third operation is performed on data on the transmission path. This prevents data from being congested on the transmission branch with worse transmission quality for a long period, thereby improving user experience. Further, after the third operation is performed, the fourth operation may be further performed on the second data, to transmit the backup of the second data to another transmission branch that can transmit data, thereby ensuring that data is normally transmitted to a peer end.

To better understand the uplink data transmission method described in the foregoing embodiments, an embodiment of the present invention correspondingly provides user equipment. As shown in <FIG>, user equipment <NUM> establishes protocol stack layers corresponding to a first transmission branch and a second transmission branch of a split bearer, where the protocol stack layers include at least a PDCP layer, an RLC layer, and a MAC layer. The user equipment <NUM> may include at least a starting unit <NUM> and an execution unit <NUM>.

The starting unit <NUM> is configured to start a timer when a first operation is performed on first data on the first transmission branch, where the first data is data that has been transmitted to the RLC layer and/or the MAC layer of the first transmission branch.

The first execution unit <NUM> is configured to: when timing of the timer ends, if a second operation is not performed on second data on the second transmission branch, perform a third operation on the second data, where the second data is data that has been transmitted to the RLC layer and/or the MAC layer of the second transmission branch.

According to this application, performing the first operation on the first data on the first transmission branch includes:.

According to this application, if the second operation is not performed on the second data on the second transmission branch includes:.

In a possible embodiment, the first execution unit <NUM> is configured to transmit a backup of the second data to the first transmission branch.

In a possible embodiment, the first execution unit <NUM> is specifically configured to transmit a backup of the second data to a third transmission branch.

In a possible embodiment, the user equipment <NUM> further includes a second execution unit <NUM>, configured to cancel transmission of the second data before the first execution unit <NUM> performs the third operation on the second data; or.

In a possible embodiment, the user equipment <NUM> further includes a resetting unit <NUM>, configured to: when the timing of the timer ends, if the second operation is performed on the second data on the second transmission branch, reset the timer.

In a possible embodiment, the user equipment <NUM> further includes a receiving unit <NUM>, configured to receive, before the starting unit starts the timer, timer information sent by a network device, where the timer information includes duration information of the timer.

It may be understood that functions of various function modules of the user equipment <NUM> in this embodiment may be specifically implemented according to the method in the foregoing method embodiments, and details are not described herein again.

An example for a better understanding further provides a network device. As shown in <FIG>, a network device <NUM> may include at least a determining unit <NUM> and a first sending unit <NUM>.

The determining unit <NUM> is configured to determine duration of a timer, where the timer is used for transmission of uplink data of the split bearer of the user equipment <NUM>.

The first sending unit <NUM> is configured to send the duration of the timer to the user equipment <NUM>, so that the user equipment <NUM> performs a first operation on first data on a first transmission branch; and after the timer is started, if a second operation is not performed on second data on a second transmission branch before timing of the timer ends, performs a third operation on the second data, where the user equipment <NUM> establishes protocol stack layers corresponding to the first transmission branch and the second transmission branch of the split bearer; the protocol stack layers include at least a PDCP layer, an RLC layer, and a MAC layer; the first data is data that has been transmitted to a lower protocol stack layer of the first transmission branch; the second data is data that has been transmitted to a lower protocol stack layer of the second transmission branch; and the lower protocol stack layer is the RLC layer and/or the MAC layer.

In a possible example, the determining unit <NUM> is configured to determine the duration of the timer based on a quality of service parameter of the uplink data; or.

In a possible example, the network device <NUM> further includes a second sending unit <NUM>, configured to send a triggering condition for starting and/or stopping the timer to the user equipment <NUM>.

According to this application, performing the third operation on the second data includes:.

It may be understood that functions of various function modules of the network device <NUM> in this examplemay be specifically implemented according to the method in the foregoing method embodiments, and details are not described herein again.

<FIG> is a schematic structural diagram of another user equipment according to an embodiment of the present invention. User equipment <NUM> establishes protocol stack layers corresponding to a first transmission branch and a second transmission branch of a split bearer, where the protocol stack layers include at least a PDCP layer, an RLC layer, and a MAC layer. The user equipment <NUM> may include at least a processor <NUM>, a memory <NUM>, and a transceiver <NUM>. The processor <NUM>, the memory <NUM>, and the transceiver <NUM> are connected to each other through a bus <NUM>.

The memory <NUM> includes, but is not limited to a random access memory, a read-only memory, an erasable programmable read only memory, or a portable read only memory. The memory <NUM> is configured to store related instructions and data.

The transceiver <NUM> may include a receiver and a transmitter, such as a radio frequency module. In the following description, that the processor <NUM> receives or sends a message may be specifically understood as that the processor <NUM> receives or sends the message by using the transceiver.

The processor <NUM> may be one or more central processing units (Central Processing Unit, CPU). When the processor <NUM> is one CPU, the CPU may be a single-core CPU, or may be a multi-core CPU.

The processor <NUM> in the user equipment <NUM> is configured to read program code stored in the memory <NUM>, and perform the following operations:.

According to this application, performing, by the processor <NUM>, the first operation on the first data on the first transmission branch includes:.

According to this application, if the processor <NUM> does not perform the second operation on the second data on the second transmission branch includes:.

In a possible embodiment, performing, by the processor <NUM>, the third operation on the second data includes: transmitting a backup of the second data to the first transmission branch.

In a possible embodiment, performing, by the processor <NUM>, the third operation on the second data includes: transmitting a backup of the second data to a third transmission branch.

In a possible embodiment, before the processor <NUM> performs the third operation on the second data, the processor <NUM> is further configured to:.

In a possible embodiment, the processor <NUM> is further configured to: when the timing of the timer ends, if the second operation is performed on the second data on the second transmission branch, reset the timer.

In a possible embodiment, before the processor <NUM> starts the timer when the first operation is performed on the first data on the first transmission branch, the processor <NUM> is further configured to:
receive timer information sent by a network device, where the timer information includes duration information of the timer.

It should be noted that for specific implementations of the operations, reference may be correspondingly made to corresponding descriptions in the method embodiments shown in <FIG>, <FIG>, and <FIG>.

An embodiment of the present invention further provides a chip, including a storage module, a processing module, and a communications interface. The storage module is configured to store an instruction. The processing module is configured to invoke the instruction stored in the storage module, and perform the following operations: starting a timer when a first operation is performed on first data on a first transmission branch; and when timing of the timer ends, if a second operation is not performed on second data on a second transmission branch, performing a third operation on the second data.

An embodiment of the present invention further provides a computer-readable storage medium.

The computer-readable storage medium stores a computer program, and the computer program includes a program instruction. When the program instruction is executed by a processor, the following operations are implemented:
starting a timer when a first operation is performed on first data on a first transmission branch; and when timing of the timer ends, if a second operation is not performed on second data on a second transmission branch, performing a third operation on the second data.

The foregoing computer-readable storage medium may be an internal storage unit of the user equipment according to any of the foregoing embodiments, for example, a hard disk or a memory of the user equipment. The foregoing computer-readable storage medium may be alternatively an external storage device of the foregoing user equipment, for example, a plug-connected hard disk, a smart media card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card (Flash Card), or the like equipped on the user equipment. Further, the foregoing computer-readable storage medium may include both the internal storage unit and the external storage device of the user equipment. The foregoing computer-readable storage medium is configured to store the computer program and other programs and data that are necessary for the foregoing user equipment. The foregoing computer-readable storage medium may be further configured to temporarily store output or to-be-output data.

An embodiment of the present invention further provides a computer program. The computer program includes an instruction. When the computer program is executed on a computer, the instruction is used to perform the following operations: starting a timer when a first operation is performed on first data on a first transmission branch; and when timing of the timer ends, if a second operation is not performed on second data on a second transmission branch, performing a third operation on the second data.

An embodiment of the present invention further provides a computer program product that includes a computer program. When the computer program is executed on a computer, the computer is enabled to perform the following operations: starting a timer when a first operation is performed on first data on a first transmission branch; and when timing of the timer ends, if a second operation is not performed on second data on a second transmission branch, performing a third operation on the second data.

<FIG> is a schematic structural diagram of another network device according to an example for a better understanding. A network device <NUM> may include at least a processor <NUM>, a memory <NUM>, and a transceiver <NUM>. The processor <NUM>, the memory <NUM>, and the transceiver <NUM> are connected to each other through a bus <NUM>.

The processor <NUM> in the network device <NUM> is configured to read program code stored in the memory <NUM>, and perform the following operations:.

In a possible example, that the processor <NUM> is configured to determine duration of a timer includes:.

An example for a better understanding further provides a chip, including a storage module, a processing module, and a communications interface. The storage module is configured to store an instruction. The processing module is configured to invoke the instruction stored in the storage module, and perform the following operations: determining duration of a timer, where the timer is used for transmission of uplink data of a split bearer of user equipment; and sending the duration of the timer to the user equipment, so that after the timer is started, if a second operation is not performed on second data on a second transmission branch before timing of the timer ends, the user equipment performs a third operation on the second data.

An embodiment of the present invention further provides a computer-readable storage medium. The computer-readable storage medium stores a computer program, and the computer program includes a program instruction. When the program instruction is executed by a processor, the following operations are implemented:
determining duration of a timer, where the timer is used for transmission of uplink data of a split bearer of user equipment; and sending the duration of the timer to the user equipment, so that after the timer is started, if a second operation is not performed on second data on a second transmission branch before timing of the timer ends, the user equipment performs a third operation on the second data.

An embodiment of the present invention further provides a computer program. The computer program includes an instruction. When the computer program is executed on a computer, the instruction is used to perform the following operations: determining duration of a timer, where the timer is used for transmission of uplink data of a split bearer of user equipment; and sending the duration of the timer to the user equipment, so that after the timer is started, if a second operation is not performed on second data on a second transmission branch before timing of the timer ends, the user equipment performs a third operation on the second data.

An embodiment of the present invention further provides a computer program product that includes a computer program. When the computer program is executed on a computer, the computer is enabled to perform the following operations: determining duration of a timer, where the timer is used for transmission of uplink data of a split bearer of user equipment; and sending the duration of the timer to the user equipment, so that after the timer is started, if a second operation is not performed on second data on a second transmission branch before timing of the timer ends, the user equipment performs a third operation on the second data.

It should be understood that the numbers such as "first" and "second" used in the present invention are merely for distinguishing for ease of description, and are not intended to limit the scope of this application.

It should be understood that the term "and/or" in the present invention describes only an association relationship for describing associated objects and represents that three relationships may exist.

It should be understood that sequence numbers of the foregoing processes do not mean execution sequences in various embodiments of the present invention.

Persons of ordinary skill in the art may be aware that, in combination with the examples described in the embodiments disclosed in this specification, units and algorithm steps may be implemented by electronic hardware or a combination of computer software and electronic hardware.

A sequence of the steps of the methods in the embodiments of the present invention may be adjusted, combined, or deleted based on an actual requirement.

Claim 1:
An uplink data transmission method, applied to a user equipment, wherein the user equipment establishes protocol stack layers corresponding to a first transmission branch and a second transmission branch of a split bearer, the protocol stack layers comprise at least a PDCP layer, an RLC layer, and a MAC layer, and the method comprises:
starting (<NUM>) a timer when a first operation is performed on first data on the first transmission branch, wherein the first data is data that has been transmitted to the RLC layer and/or the MAC layer of the first transmission branch and wherein the performing the first operation on the first data on the first transmission branch comprises: starting transmission of the first data on the first transmission branch, or completing transmission of the first data on the first transmission branch, or completing transmission of a part of the first data on the first transmission branch; and
when timing of the timer ends, if a second operation is not performed on second data on the second transmission branch, performing (<NUM>) a third operation on the second data, wherein the second data is data that has been transmitted to the RLC layer and/or the MAC layer of the second transmission branch, wherein if the second operation is not performed on the second data on the second transmission branch comprises: transmission of the second data is not completed on the second transmission branch, or transmission of the second data is not started on the second transmission branch, or transmission of a part of the second data is not completed on the second transmission branch, and wherein the performing (<NUM>) a third operation on the second data comprises:
canceling transmission of the second data; or
deleting the second data; or
canceling transmission of a part of the second data that has not yet been transmitted; or
deleting the part of the second data that has not yet been transmitted;
wherein after the performing (<NUM>) the third operation on the second data, the method further comprises: transmitting a backup of the second data to the first transmission branch, wherein the backup of the second data is transmitted to a lower protocol stack layer of the first transmission branch and the backup of the second data is second data stored in a cache at the PDCP layer.