Data processing method and apparatus
By cascading multiple data streams in a 5G system to generate the first data stream and then further cascading it, the problem of high data processing complexity at the sending end is solved, and data transmission efficiency is improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2021-01-08
- Publication Date
- 2026-06-23
AI Technical Summary
In 5G systems, the complexity of data processing at different protocol layers at the transmitting end is high, leading to increased CPU overhead.
When certain conditions are met, the sending end concatenates multiple data sets to generate the first set of data, and then performs further concatenation processing when transmission resources become available, thereby reducing the complexity of data processing.
By using cascading processing, the complexity of data processing at the sending end is reduced, and data transmission efficiency is improved.
Smart Images

Figure CN116636196B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a data processing method and apparatus. Background Technology
[0002] Fifth generation mobile communication (5G) th In a Generation 5G system, the wireless protocol stack includes the following protocol layers: Service Data Adaptation Protocol (SDAP) layer, Packet Data Convergence Protocol (PDCP) layer, Radio Link Control (RLC) layer, Medium Access Control (MAC) layer, and Physical (PHY) layer.
[0003] The transmitting end processes data differently at different protocol layers. For example, the main processing of data at the SDAP layer includes mapping the Quality of Service (QoS) stream to the Data Radio Bearer (DRB); the main processing of data at the PDCP layer includes encryption, integrity protection, header compression, and adding a Packet Data Convergence Protocol Sequence Number (PDCP SN); at the RLC layer, the main processing in acknowledged mode (AM) includes Automatic Repeat Request (ARQ), segmentation, reassembly, and adding a Radio Link Control Sequence Number (RLC SN), while the main processing in unacknowledged mode (UM) includes segmentation, reassembly, and adding an RLC SN; and the main processing of data at the MAC layer includes logical channel multiplexing and Hybrid Automatic Repeat Request (HARQ).
[0004] The sending end processes the data in the order of SDAP->PDCP->RLC->MAC->PHY, and finally the PHY layer sends it to the receiving end. It is evident that the sending end performs the above processing on each piece of data separately at each protocol layer, resulting in high processing complexity. Summary of the Invention
[0005] This application provides a data processing method and apparatus that can reduce the complexity of data processing.
[0006] Firstly, this application provides a data processing method. In this method, when a first condition is met, the transmitting end performs a first concatenation process on multiple data sets to obtain first data and then transmits the first data. The multiple data sets belong to a Data Radio Bearer (DRB) of the transmitting end. The first condition includes one or more of the following: a timer timeout, the timer being used to control the first concatenation process, the timer being started after the completion of the previous concatenation process; the number of multiple data sets being greater than or equal to a first threshold, the first threshold being greater than or equal to 2; the bit size of the multiple data sets being greater than or equal to a second threshold, the second threshold being greater than or equal to 2.
[0007] As can be seen, in this embodiment of the application, when the first condition is met, the sending end concatenates multiple data from the same DRB into the first data, which is beneficial for the sending end to directly process the first data when the first data is transmitted to other protocol layers, instead of processing each data separately, thereby reducing the complexity of data processing for the sending end.
[0008] In one implementation, the first data includes a header and a payload. The header includes the number of multiple data items and a common sequence number used to identify the multiple data items. The payload includes multiple data items. Therefore, the header of the first data includes relevant information about the multiple data items, which helps the sending or receiving end obtain the aforementioned multiple data items based on the header.
[0009] In one implementation, the header also includes first indication information corresponding to each of the multiple data, the first indication information being used to indicate the bit size of the corresponding data.
[0010] In another implementation, the header also includes second indication information corresponding to the first indication information, the second indication information being used to indicate the bit length of the corresponding first indication information.
[0011] In one implementation, multiple data points belong to the same QoS (Quality of Service) flow within the DRB (Device Request Block). This approach facilitates the sending end in performing initial concatenation processing on data from the same QoS flow.
[0012] In one implementation, when a first condition is met, the sending end performs a first concatenation process on multiple data sets to obtain first data. This includes: when the first condition is met, the sending end concatenates the multiple data sets end-to-end to obtain a payload, and adds a header to the payload to obtain the first data. In other words, the sending end first concatenates the multiple data sets end-to-end, and then adds a header to the entire dataset, so that the added header can include information from the multiple data sets.
[0013] In one implementation, the sending end transmits first data, including: when the sending end obtains transmission resources, it performs a second concatenation process on the first data and second data, and then transmits the data after the second concatenation process. The second data is obtained by the sending end based on the first concatenation process and is different from the first data. The first data and the second data can belong to the same DRB or different DRBs. Therefore, after performing the first concatenation process, the sending end can further perform a second concatenation process on the first data and the second data after the first concatenation process. This method is advantageous for the sending end to transmit first data and second data from different DRBs and / or the same DRB as a whole.
[0014] In one implementation, when the sending end obtains transmission resources, it performs a second concatenation process on the first and second data. This includes: when the sending end obtains transmission resources, it adds headers to the first and second data respectively, and then concatenates the headers together to obtain the data after the second concatenation process. In other words, the difference between the second concatenation process and the first concatenation process is that the second concatenation process first adds headers to each data item, and then concatenates the header-added data items together.
[0015] In one implementation, one or more of the timer duration, the first threshold, and the second threshold are configured in the configuration information corresponding to the first condition according to a DRB or a quality of service flow.
[0016] In one implementation, when the sending end is a terminal device, the sending end can also receive configuration information corresponding to multiple first conditions, and determine the first condition based on one of the multiple configuration information. Therefore, the sending end can select appropriate configuration information from the multiple configuration information corresponding to the first condition to determine the aforementioned first condition.
[0017] In one implementation, the above configuration information is configured according to a DRB or a QoS flow.
[0018] In one implementation, when the sending end is a terminal device, the sending end determines a first condition based on one of a plurality of configuration information, including: the sending end determines the first condition from one of the plurality of configuration information based on third indication information, wherein the third indication information is used to indicate one of the configuration information. It is evident that the configuration information used by the sending end to determine the first condition is indicated by the third indication information.
[0019] In one implementation, the sending end determines the first condition based on one of a plurality of configuration information, including: the sending end determines the first condition from one of the plurality of configuration information based on the size of the transmission resource. That is, the sending end can also reasonably determine the configuration information used to determine the first condition from a plurality of configuration information based on the size of the transmission resource.
[0020] In one implementation, the sending end can also start a timer when it receives the first data, and discard the first data after the timer expires.
[0021] In one implementation, when the sending end is a terminal device, it can also report the cascading processing capability of the first cascading process and receive configuration information corresponding to the first condition determined based on the cascading processing capability. This approach allows network devices to appropriately configure the configuration information corresponding to the first condition for the sending end based on the cascading processing capability reported by the sending end.
[0022] In one implementation, the cascading processing capability of the first cascading process includes one or more of the following: the minimum number of data items processed by the sending end in the first cascading process; the maximum number of data items processed by the sending end in the first cascading process; the minimum bit size of the data items processed by the sending end in the first cascading process; and the maximum bit size of the data items processed by the sending end in the first cascading process.
[0023] In one implementation, when the sending end is a terminal device, the sending end can further send fourth indication information. This fourth indication information indicates the number of data items and / or the bit size of the data items in the first concatenation process determined by the sending end, and the sending end receives configuration information corresponding to the first condition determined according to the fourth indication information. This approach facilitates network devices in configuring the terminal device with the configuration information corresponding to the first condition desired by the terminal device.
[0024] Secondly, this application provides a data processing method. This data processing method corresponds to the data processing method described in the first aspect, and is explained from the perspective of the receiving end. In this method, the receiving end receives first data from the transmitting end. The first data includes a header and a payload. The header includes a number of multiple data items and a common sequence number used to identify the multiple data items. The payload includes multiple data items. Therefore, the receiving end obtains the multiple data items based on the header.
[0025] As can be seen, when the receiving end receives the first data, it can obtain multiple data based on the header of the first data, rather than obtaining the multiple data based on the header of each of the multiple data, thereby reducing the complexity of data processing for the receiving end.
[0026] In one implementation, the header also includes first indication information corresponding to each of the multiple data; the first indication information is used to indicate the bit size of the corresponding data.
[0027] In one implementation, the header further includes second indication information corresponding to the first indication information, the second indication information being used to indicate the bit length of the corresponding first indication information.
[0028] In one implementation, multiple data streams belong to the same Quality of Service (QoS) flow within the DRB.
[0029] In one implementation, the receiving end receives first data from the sending end, including: the receiving end receiving data after a second concatenation process, and obtaining first data and second data based on the second concatenation process. The first data and second data are both obtained based on the first concatenation process, but they are not the same.
[0030] In one implementation, when the receiving end is a network device, the receiving end may also send configuration information corresponding to a first condition configured according to a data radio bearer (DRB) or a quality of service flow to the sending end. The configuration information includes one or more of the following for determining the first condition: timer duration, first threshold, and second threshold.
[0031] In one implementation, when the receiving end is a network device, the receiving end can also send multiple configuration information corresponding to the first condition to the sending end. The multiple configuration information includes one or more of the following for determining the first condition: the duration of the timer, the first threshold, and the second threshold.
[0032] In one implementation, the above configuration information is configured according to a DRB or a quality of service flow.
[0033] In one implementation, when the receiving end is a network device, the receiving end can also send third indication information to the sending end; the third indication information is used to indicate one of the above multiple configuration information.
[0034] In one implementation, when the receiving end is a network device, the receiving end sends one or more configuration information corresponding to the first condition to the sending end. This includes: the receiving end receiving the cascading processing capability of the first cascading process from the sending end, and sending one or more configuration information corresponding to the first condition determined based on the cascading processing capability to the sending end. This approach allows the network device to reasonably configure the configuration information corresponding to the first condition for the terminal device based on the cascading processing capability of the first cascading process reported by the terminal device.
[0035] In one implementation, the cascading processing capability of the first cascading process includes one or more of the following: the minimum number of data items processed by the sending end in the first cascading process; the maximum number of data items processed by the sending end in the first cascading process; the minimum bit size of the data items processed by the sending end in the first cascading process; and the maximum bit size of the data items processed by the sending end in the first cascading process.
[0036] In one implementation, when the receiving end is a network device, the receiving end sends one or more configuration information corresponding to the first condition to the sending end. This includes: the receiving end receiving fourth indication information from the sending end, and sending one or more configuration information corresponding to the first condition determined according to the fourth indication information to the sending end. The fourth indication information is used to indicate the number of data items in the first concatenation process and / or the bit size of the data items in the first concatenation process determined by the sending end. This method allows the network device to reasonably configure the configuration information corresponding to the first condition according to the needs of the terminal device.
[0037] Thirdly, this application also provides a communication device. This communication device has some or all of the functions of the transmitting end described in the first aspect, or it has some or all of the functions of the receiving end described in the second aspect. For example, the communication device may have some or all of the functions of the transmitting end in the embodiments of this application, or it may have the functions of any one embodiment of this application implemented individually. The functions can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more units or modules corresponding to the above functions.
[0038] In one possible design, the communication device may include a processing unit and a communication unit. The processing unit is configured to support the communication device in performing the corresponding functions described in the above method. The communication unit supports communication between the communication device and other communication devices. The communication device may also include a storage unit coupled to the processing unit and the communication unit, which stores necessary program instructions and data for the communication device.
[0039] In one implementation, the communication device includes:
[0040] The processing unit is configured to perform a first concatenation process on multiple data when a first condition is met, to obtain the first data;
[0041] The communication unit is used to send the first data.
[0042] Among them, multiple data belong to a single Data Radio Bearer (DRB) at the transmitting end. The first condition includes one or more of the following: timer timeout, the timer is used to control the first cascade process; the timer is started after the previous cascade process is completed; the number of multiple data is greater than or equal to a first threshold; the first threshold is greater than or equal to 2; the bit size of the multiple data is greater than or equal to a second threshold; the second threshold is greater than or equal to 2.
[0043] In addition, other alternative implementations of the communication device in this regard can be found in the relevant content of the first aspect above, and will not be described in detail here.
[0044] In one implementation, the communication device includes:
[0045] A communication unit is used to receive first data from a transmitter. The first data includes a header and a payload. The header includes a number of multiple data items and a common sequence number used to identify the multiple data items. The payload includes multiple data items.
[0046] The processing unit is used to obtain multiple data based on the header.
[0047] In addition, other alternative implementations of the communication device in this regard can be found in the relevant content of the second aspect above, and will not be described in detail here.
[0048] As an example, the communication unit can be a transceiver or interface, the storage unit can be a memory, and the processing unit can be a processor.
[0049] In one implementation, the communication device includes:
[0050] The processor is configured to perform a first concatenation process on multiple data sets to obtain the first data set when a first condition is met;
[0051] A transceiver is used to send the first data.
[0052] Among them, multiple data belong to a single Data Radio Bearer (DRB) at the transmitting end. The first condition includes one or more of the following: timer timeout, the timer is used to control the first cascade process; the timer is started after the previous cascade process is completed; the number of multiple data is greater than or equal to a first threshold; the first threshold is greater than or equal to 2; the bit size of the multiple data is greater than or equal to a second threshold; the second threshold is greater than or equal to 2.
[0053] In addition, other alternative implementations of the communication device in this regard can be found in the relevant content of the first aspect above, and will not be described in detail here.
[0054] In another implementation, the communication device includes:
[0055] A transceiver is used to receive first data from a transmitter. The first data includes a header and a payload. The header includes the number of multiple data items and the same sequence number used to identify the multiple data items. The payload includes multiple data items.
[0056] The processor is used to obtain multiple data points based on the header.
[0057] In implementation, the processor can be used for, but is not limited to, baseband-related processing, and the transceiver can be used for, but is not limited to, radio frequency (RF) transceiver. These devices can be disposed on separate chips, or at least partially or entirely on the same chip. For example, the processor can be further divided into analog baseband processors and digital baseband processors. The analog baseband processor can be integrated with the transceiver on the same chip, while the digital baseband processor can be disposed on a separate chip. With the continuous development of integrated circuit technology, more and more devices can be integrated on the same chip. For example, a digital baseband processor can be integrated with multiple application processors (e.g., but not limited to graphics processors, multimedia processors, etc.) on the same chip. Such a chip can be called a system-on-a-chip (SoC). Whether the devices are disposed independently on different chips or integrated on one or more chips often depends on the needs of the product design. This application does not limit the implementation form of the above-mentioned devices.
[0058] Fourthly, this application also provides a processor for executing the various methods described above. In executing these methods, the processes of sending and receiving the aforementioned information can be understood as the processor outputting the aforementioned information and the processor receiving the input information. When outputting the aforementioned information, the processor outputs the information to a transceiver for transmission. After being output by the processor, the information may require further processing before reaching the transceiver. Similarly, when the processor receives the input information, the transceiver receives the information and inputs it to the processor. Furthermore, after the transceiver receives the information, the information may require further processing before being input to the processor.
[0059] Based on the above principles, for example, the configuration information corresponding to the first condition mentioned in the aforementioned method can be understood as the configuration information corresponding to the first condition input by the processor.
[0060] Unless otherwise specified, or unless it contradicts its actual function or internal logic in the relevant description, the transmission, receiving, and receiving operations involved in the processor can be more generally understood as processor output and receiving, input, and other operations, rather than transmission, receiving, and receiving operations directly performed by radio frequency circuits and antennas.
[0061] In implementation, the processor can be a dedicated processor for executing these methods, or it can be a processor that executes computer instructions stored in memory to execute these methods, such as a general-purpose processor. The memory can be a non-transitory memory, such as read-only memory (ROM), which can be integrated with the processor on the same chip or disposed on different chips. This application does not limit the type of memory or the arrangement of the memory and the processor.
[0062] Fifthly, this application also provides a communication system comprising at least one network device and at least one terminal device as described above. In another possible design, the system may further include other devices that interact with the network device or terminal device as provided in this application.
[0063] In a sixth aspect, this application provides a computer-readable storage medium for storing computer software instructions that, when executed by a communication device, implement the method described in the first aspect above.
[0064] In a seventh aspect, this application provides a computer-readable storage medium for storing computer software instructions that, when executed by a communication device, implement the method described in the second aspect above.
[0065] Eighthly, this application also provides a computer program product including instructions that, when run on a communication device, cause the communication device to perform the method described in the first aspect.
[0066] Ninthly, this application also provides a computer program product including instructions that, when run on a communication device, cause the communication device to perform the method described in the second aspect above.
[0067] In a tenth aspect, this application provides a chip system including a processor and an interface. The interface is used to acquire programs or instructions, and the processor is used to invoke the programs or instructions to implement or support the transmitting end in implementing the functions involved in the first aspect, such as determining or processing at least one of the data and information involved in the above methods. In one possible design, the chip system further includes a memory for storing program instructions and data necessary for the terminal. The chip system may be composed of chips or may include chips and other discrete devices.
[0068] Eleventhly, this application provides a chip system including a processor and an interface. The interface is used to acquire programs or instructions, and the processor is used to invoke the programs or instructions to implement or support the receiving end in implementing the functions involved in the second aspect, such as determining or processing at least one of the data and information involved in the above methods. In one possible design, the chip system further includes a memory for storing necessary program instructions and data for the terminal. The chip system may be composed of chips or may include chips and other discrete devices. Attached Figure Description
[0069] Figure 1 This is a schematic diagram of a communication system provided in an embodiment of this application;
[0070] Figure 2 This is a schematic diagram of the structure of a 5G system provided in an embodiment of this application;
[0071] Figure 3 This is a schematic diagram of the protocol stack structure in a 5G system provided in an embodiment of this application;
[0072] Figure 4 This is a schematic diagram illustrating how a protocol stack processes data in a 5G system, as provided in an embodiment of this application.
[0073] Figure 5 This is a flowchart illustrating a data processing method provided in an embodiment of this application;
[0074] Figure 6 This is a schematic diagram of the structure of a first type of data provided in an embodiment of this application;
[0075] Figure 7 This is a flowchart illustrating another data processing method provided in an embodiment of this application;
[0076] Figure 8 This is a schematic diagram of another structure of first data provided in an embodiment of this application;
[0077] Figure 9 This is a schematic diagram of another type of first data structure provided in the embodiments of this application;
[0078] Figure 10 This is a schematic diagram of the structure of data after a second cascaded processing, provided in an embodiment of this application;
[0079] Figure 11 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0080] Figure 12 This is a schematic diagram of another communication device provided in an embodiment of this application;
[0081] Figure 13 This is a schematic diagram of the structure of a chip provided in an embodiment of this application. Detailed Implementation
[0082] The embodiments of this application will now be clearly and completely described with reference to the accompanying drawings.
[0083] First, in order to better understand the data processing method disclosed in the embodiments of this application, the communication system applicable to the embodiments of this application will be described.
[0084] The technical solutions of the embodiments of this application can be applied to various communication systems. For example, Global System for Mobile Communications (GSMA), Long Term Evolution (LTE) frequency division duplex system, LTE time division duplex system, Universal Mobile Communications System (UMS), 5th Generation (5G) system, and with the continuous development of communication technology, the technical solutions of the embodiments of this application can also be used in subsequent evolved communication systems, such as 6th Generation (6G) system, etc.
[0085] Please see Figure 1 , Figure 1 This is a schematic diagram of a communication system provided in an embodiment of this application. The communication system may include, but is not limited to, a network device and a terminal device. Figure 1 The number and form of devices shown are for illustrative purposes and do not constitute a limitation on the embodiments of this application. In actual applications, it may include two or more network devices and two or more terminal devices. Figure 1 The communication system illustrated uses a network device and a terminal device as an example, where the network device is capable of providing services to the terminal device. Figure 1 The network equipment in this example is a base station, and the terminal equipment is a mobile phone.
[0086] The following is a description of the 5G system architecture using examples. For instance... Figure 2 The 5G system architecture consists of a 5G core network (5G core network). thThe 5G core network (5GC) and the 5G radio access network (NG-RAN) are interconnected. The NG-RAN allows for network communication between itself and the 5G core network. Nodes in the NG-RAN include gNBs and ng-eNBs. gNBs are the endpoints providing the user plane and control plane protocols for the New Radio (NR) system, while ng-eNBs are the endpoints providing the E-UTRAN user plane and control plane protocol stacks. Furthermore, gNBs connect to each other, gNBs connect to ng-eNBs, and ng-eNBs connect to each other via the Xn interface. gNBs and ng-eNBs connect to the 5GC via the NG interface. Specifically, gNBs and ng-eNBs connect to the access and mobility management function (AMF) module via the NG-C interface, and gNBs and ng-eNBs connect to the user plane management function (UPF) module via the NG-U interface.
[0087] In this embodiment, the network device may be a device with wireless transceiver functionality or a chip that can be configured in the device. The network device includes, but is not limited to: evolved node B (eNB), radio network controller (RNC), node B (NB), base station controller (BSC), base transceiver station (BTS), home network device (e.g., home evolved Node B, or home Node B, HNB), baseband unit (BBU), access point (AP), wireless relay node, wireless backhaul node, and transmission and reception point (TRP or transmission...) in a Wi-Fi system. It can also refer to devices used in 4G, 5G, or even 6G systems, such as gNB in NR systems, or transmission points (TRP or TP), one or a group of antenna panels (including multiple antenna panels) of network devices in 4G systems, or network nodes that constitute gNB or transmission points, such as baseband unit (BBU), or distributed unit (DU), or picocell, or femtocell, or roadside unit (RSU) in intelligent driving scenarios.
[0088] In some deployments, a gNB may include a centralized unit (CU) and a distributed unit (DU). The gNB may also include an active antenna unit (AAU). The CU implements some of the gNB's functions, and the DU implements others. For example, the CU handles non-real-time protocols and services, implementing the functions of the radio resource control (RRC) and packet data convergence protocol (PDCP) layers. The DU handles physical layer protocols and real-time services, implementing the functions of the radio link control (RLC), medium access control (MAC), and physical (PHY) layers. The AAU implements some physical layer processing functions, radio frequency processing, and related functions of the active antenna. Since RRC layer information ultimately becomes PHY layer information, or is derived from PHY layer information, in this architecture, higher-layer signaling, such as RRC layer signaling, can also be considered as being sent by the DU, or by both the DU and AAU. It is understood that network devices can be one or more of the following: CU nodes, DU nodes, and AAU nodes. Furthermore, a CU can be classified as a network device in the radio access network (RAN) or as a network device in the core network (CN); this application does not impose any limitations on this.
[0089] In this application embodiment, the terminal device may include, but is not limited to: user equipment (UE), access terminal device, user unit, user station, mobile station, mobile station, remote station, remote terminal device, mobile device, user terminal device, user agent, or user device. For example, the terminal device may be a mobile phone, tablet computer, computer with wireless transceiver capabilities, virtual reality (VR) terminal device, augmented reality (AR) terminal device, wireless terminal in industrial control, wireless terminal in self-driving, wireless terminal in remote medical care, wireless terminal in smart grid, wireless terminal in transportation safety, wireless terminal in smart city, wireless terminal in smart home, wireless terminal in the aforementioned V2X vehicle-to-everything (V2X) network, or a wireless terminal type RSU, etc.
[0090] In this embodiment, the sending end can be either a terminal device or a network device. Accordingly, when the sending end is a terminal device, the receiving end is a network device; and when the sending end is a network device, the receiving end is a terminal device.
[0091] To facilitate understanding of the embodiments disclosed in this application, the following two points are explained.
[0092] (1) The scenarios in the embodiments disclosed in this application are illustrated using the scenario of an NR network in a wireless communication network. It should be noted that the solutions in the embodiments disclosed in this application can also be applied to other wireless communication networks, and the corresponding names can be replaced by the names of the corresponding functions in other wireless communication networks.
[0093] (2) The embodiments disclosed in this application will be presented in relation to systems including multiple devices, components, modules, etc. It should be understood and appreciated that individual systems may include additional devices, components, modules, etc., and / or may not include all devices, components, modules, etc. discussed in conjunction with the accompanying drawings. Furthermore, combinations of these approaches may also be used.
[0094] The technical problem to be solved by this application is briefly described below.
[0095] like Figure 3As shown, in a 5G system, the protocol stack includes: SDAP layer, PDCP layer, RLC layer, MAC layer, and PHY layer. The transmitting end processes each data layer separately in the order of SDAP->PDCP->RLC->MAC->PHY. For example, as... Figure 4 As shown, the transmitting end processes data n, data n+1, and data m at the SDAP, PDCP, and RLC layers, respectively, according to the protocol layer. Data n and data n+1 belong to data radio bearer (DRB)-x, and data m belongs to DRB-y. DRB refers to the radio bearer of user data, used to transmit user data. At the SDAP layer, data from different QoS streams is mapped to their corresponding bearers. At the PDCP layer, one bearer corresponds to one PDCP entity, and the data from one bearer, after being processed by the PDCP entity, is sequentially passed to the RLC entity and MAC entity for further processing.
[0096] Additionally, at the RLC layer, the sending end segments data m according to the data transmission capacity of the MAC layer, obtaining data a1 and data a2. When data n, data n+1, and data m are transmitted to the MAC layer, the sending end, upon receiving authorized transmission resources from the network device, concatenates data n, data n+1, and data a1 according to the size of the transmission resources, obtaining concatenated data b, and then sends data b to the receiving end through the PHY layer.
[0097] It is evident that the sending end only concatenates multiple data into one data at the MAC layer according to the size of the transmission resources. However, at other protocol layers, the sending end processes each data separately. This processing method leads to higher complexity in data processing for the sending end, resulting in higher central processing unit (CPU) overhead.
[0098] This application provides a data processing method 100. In this method, when a first condition is met, the sending end performs a first concatenation process on multiple data sets to obtain first data and then sends the first data. The multiple data sets belong to a DRB (Data Buffer) of the sending end. The first condition includes one or more of the following: a timer expires, the timer is used to control the first concatenation process, and the timer is started after the previous concatenation process is completed; the number of multiple data sets is greater than or equal to a first threshold, and the first threshold is greater than or equal to 2; the bit size of the multiple data sets is greater than or equal to a second threshold, and the second threshold is greater than or equal to 2. Therefore, when the sending end meets the first condition, it performs a first concatenation process on multiple data sets within the same DRB to obtain the first data. This facilitates the sending end's ability to directly process the first data when it is transmitted to other protocol layers, rather than processing each data set separately, thereby reducing the complexity of data processing for the sending end.
[0099] Furthermore, when the sending end is a terminal device and the receiving end is a network device, the network device can reasonably configure the configuration information corresponding to the first condition for the terminal device. The terminal device then determines the first condition based on this configuration information, and when the first condition is met, performs a first concatenation process on multiple data within the same DRB, thereby reducing the complexity of data processing for the terminal device. Specifically, this application uses data processing method 200 as an example to illustrate this implementation.
[0100] The embodiments of this application and their related implementation methods are described below with reference to the accompanying drawings.
[0101] Please see Figure 5 , Figure 5 This is a flowchart illustrating a data processing method 100 provided in an embodiment of this application. The data processing method 100 is described from the perspective of the interaction between the sending end and the receiving end. The data processing method 100 includes, but is not limited to, the following steps:
[0102] S101. When the first condition is met, the transmitting end performs a first concatenation process on multiple data to obtain the first data; the multiple data belong to a data radio bearer (DRB) of the transmitting end.
[0103] The first condition includes one or more of the following: timer timeout, the timer is used to control the first cascaded process; the timer is started after the previous cascaded process is completed; the number of multiple data is greater than or equal to the first threshold; the first threshold is greater than or equal to 2; the bit size of the multiple data is greater than or equal to the second threshold; the second threshold is greater than or equal to 2.
[0104] S102, The sending end sends the first data;
[0105] S103. The receiving end receives first data from the transmitting end. The first data includes a header and a payload. The payload includes multiple data items.
[0106] The header includes the number of data items and a common sequence number used to identify the data items. This sequence number is the sequence number of the protocol layer added by the sending end after processing the data at a certain protocol layer. For example, if the sending end performs a first concatenation process on multiple data items at the PDCP layer, then the common sequence number identifying the multiple data items is the PDCP SN.
[0107] S104. The receiving end obtains multiple data based on the header of the first data.
[0108] In S101, the timer is started after the previous cascade processing is completed. This can be understood as follows: after the sending end performs the previous first cascade processing, the timer is started. Then, after the timer expires, the sending end starts the first cascade processing again, that is, the first cascade processing is performed on multiple data of a DRB.
[0109] Optionally, the timer can be started by the sending end when any data arrives, meaning the start time of the timer is determined by the sending end itself. For example, the sending end can start the timer used to control the first cascaded processing when the fourth data arrives. In this embodiment, data arrival refers to the arrival of application layer data at the sending end's access stratum (AS) layer, which includes any of the above-mentioned protocol layers; that is, data arrival means that the data arrives at any of the above-mentioned protocol layers.
[0110] In one implementation, multiple data items belong to the same Quality of Service (QoS) stream within the aforementioned DRB. This approach facilitates the sending end performing the same first-level concatenation processing on multiple data items belonging to the same QoS stream.
[0111] In this embodiment, when the first condition is met, the sending end can perform a first concatenation process on multiple data points of the same DRB in any of the aforementioned protocol layers. For example, when the first condition is met, the sending end can perform a first concatenation process on multiple data points of the same DRB in the SDAP layer, or on multiple data points of the same DRB in the PDCP layer, and so on. This embodiment does not limit the protocol layer on which the sending end performs the first concatenation process.
[0112] The following describes various implementation methods for the first condition corresponding to the first cascaded process:
[0113] In one implementation, the first condition for the sending end to perform the first concatenation process is as follows: after the previous first concatenation process is completed, the sending end starts a timer to control the first concatenation process, and after the timer expires, multiple data belonging to the same DRB are processed in the first concatenation process. For example: after the sending end performs the first concatenation process on DRB-1 including data a and data b at the SDAP layer, it starts timer a to control the first concatenation process. After timer a expires, if the sending end still has data b, data c, and data d in DRB-2 at the SDAP layer, then the first concatenation process is performed on data b, data c, and data d belonging to DRB-2 at the SDAP layer.
[0114] In another implementation, the first condition for the sender to perform the first concatenation process is: when the number of multiple data points is greater than or equal to a first threshold, the sender performs the first concatenation process on multiple data points belonging to the same DRB. This can be performing the first concatenation process on the first threshold number of data points within the same DRB, or performing the first concatenation process on the number of data points within the same DRB that is less than the first threshold. In other words, the first threshold is the maximum number of data points for which the sender performs the first concatenation process, and the number of data points for which the sender performs the first concatenation process must be less than or equal to the first threshold. For example, if the first threshold is 3, and the terminal device receives data a, data b, data c, and data d within DRB-1 at the SDAP layer, and the number of data points in DRB-1 is greater than the first threshold, then the sender determines that the first condition is met and can perform the first concatenation process on any two or any three data points from data a, data b, data c, and data d. For example, the sender performs the first concatenation process on data b and data c.
[0115] In another implementation, the first condition for the sender to perform the first concatenation process is: the sender performs the first concatenation process on multiple data belonging to the same DRB when the bit size of the data is greater than or equal to a second threshold. Here, the bit size of the data refers to the total bit size of the multiple data. The sender can perform the first concatenation process on multiple data within the same DRB whose bit size is less than or equal to the second threshold. In other words, the second threshold is the maximum bit size of the data for which the sender performs the first concatenation process.
[0116] For example, if the second threshold is 5, and the data received by the transmitter in the DRB-2 at the PDCP layer includes data a, data b, and data c, with bit sizes of 2 bits, 1 bit, and 3 bits respectively, and the transmitter determines that the bit sizes of data a, data b, and data c are greater than the second threshold, i.e., satisfying the first condition, then the transmitter can perform the first concatenation process on data a and data b; or, the transmitter can perform the first concatenation process on data a and data c; or, the transmitter can perform the first concatenation process on data b and data c.
[0117] In another implementation, the first condition for the sending end to perform the first concatenation process is: after the previous first concatenation process is completed, the sending end starts a timer to control the first concatenation process, and after the timer expires, if the number of multiple data belonging to the same DRB is greater than or equal to a first threshold, then the sending end performs the first concatenation process on the multiple data, which can be the first concatenation process on the data among the multiple data that is less than or equal to the first threshold.
[0118] For example, if the first threshold is 2, after the transmitter performs the first concatenation processing on data a and b in DRB-1 at the SDAP layer, it starts a timer to control the first concatenation processing. After the timer expires, if data b, c, and d are still included in DRB-1 at the SDAP layer, and the transmitter determines that the number of data in DRB-1 is greater than the first threshold, then the transmitter can perform the first concatenation processing on any two of data b, c, and d. For example, the transmitter can perform the first concatenation processing on data c and d.
[0119] In another implementation, the first condition for the sending end to perform the first concatenation process is: after the previous first concatenation process is completed, the sending end starts a timer to control the first concatenation process, and after the timer expires, if the bit size of multiple data belonging to the same DRB is greater than or equal to the second threshold, then the sending end performs the first concatenation process on the multiple data. This can be done on the data whose bit size is less than or equal to the second threshold.
[0120] For example, if the second threshold is 10, after the transmitter performs the first concatenation processing on data a and data b in DRB-1 at the SDAP layer, it starts a timer to control the first concatenation processing. After the timer expires, the remaining data in DRB-1 at the SDAP layer are data c, data d, and data e. The bit sizes of data c, data d, and data e are 4 bits, 5 bits, and 6 bits, respectively. The transmitter determines that the bit sizes of data c, data d, and data e are greater than the second threshold, i.e., it determines that the first condition is met. Therefore, the transmitter can perform the first concatenation processing on data c and data d, or the transmitter can perform the first concatenation processing on data c and data e.
[0121] In another implementation, the first condition for the sender to perform the first concatenation process is as follows: after the previous concatenation process is completed, the sender starts a timer to control the first concatenation process. If, after the timer expires, the number of multiple data items belonging to the same DRB is greater than or equal to a first threshold, and the bit size of these multiple data items is greater than or equal to a second threshold, then the sender performs the first concatenation process on these multiple data items. Alternatively, the sender may perform the first concatenation process on data items whose number is less than or equal to the first threshold and whose bit size is less than or equal to the second threshold.
[0122] For example, if the first threshold is 3 and the second threshold is 8, after the transmitter performs the first concatenation processing on data a and data b in DRB-1 at the PDCP layer, it starts a timer to control the first concatenation processing. After the timer expires, the remaining data in DRB-1 at the PDCP layer are data c, data d, and data e. The lengths of data c, data d, and data e are 4 bits, 5 bits, and 6 bits, respectively. The number of these multiple data items equals the first threshold, and the total bit size of data c, data d, and data e is greater than the second threshold. Therefore, the transmitter can perform the first concatenation processing on data c, data d, and data e, or the transmitter can perform the first concatenation processing on data c and data e.
[0123] In one implementation, the first data includes a header and a payload. The header includes the total number of data items and a common sequence number used to identify the multiple data items. The payload includes the multiple data items. The common sequence number used to identify the multiple data items refers to a sequence number (SN) added at this protocol layer. For example, when the sender performs a first concatenation process on multiple data items at the PDCP layer, the common sequence number used to identify the multiple data items refers to the PDCP CN. In this method, the sequence number is a common sequence number used to identify multiple data items, indicating that the sender adds a sequence number uniformly to the first data items, rather than adding a sequence number separately for each data item, thereby reducing the complexity of data processing at the sender.
[0124] For example, after the sending end performs the first concatenation process on data a and data b at the PDCP layer, the format of the first data is as follows: Figure 6 As shown. The first data includes a header and a payload. The header includes the number n of multiple data items, used to identify the same PDCP SN for the multiple data items. The payload includes data a and data b. Additionally, the header may include the type of the first data, denoted by D / C, indicating whether the first data is data or signaling.
[0125] In another implementation, the header also includes first indication information corresponding to each of the multiple data items, which indicates the bit size of the corresponding data. For example, Figure 6 L1 in the header indicates the bit size of data a, and L2 indicates the bit size of data b. Optionally, the header may also include an optional length for indicating the bit size of data a, for example... Figure 6 L1 (optional) in the context of this.
[0126] In another implementation, the header also includes second indication information corresponding to the aforementioned first indication information. This second indication information indicates the bit length of the corresponding first indication information. For example, Figure 6 F1 is used to indicate the bit length of L1, and F2 is used to indicate the bit length of L2.
[0127] In one implementation, when the sender is mobile, after the sender transmits data to the receiver, the receiver forwards the data to the sender's target network device. Similarly, after receiving the first data from the sender, the receiver can also forward that first data to the target network device.
[0128] In this embodiment, the first concatenation process performed by the sending end on multiple data points can also be referred to as the multiplexing of multiple data points, which is not limited in this embodiment.
[0129] As can be seen, in this embodiment of the application, when the first condition is met, the terminal device performs a first concatenation process on multiple data to obtain the first data and then sends the first data. This method is beneficial because when the first data is transmitted to other protocol layers, only the first data is processed, rather than processing each data separately, thereby reducing the complexity of data processing at the sending end and reducing the overhead of the central processing unit.
[0130] For example, if the CPU at the transmitting end meets the first condition at the PDCP layer, it performs a first concatenation process on 100 data points. Table 1 shows the number of times the CPU at the transmitting end processes these 100 data points at each protocol layer under the methods of the prior art and the embodiments of this application. As shown in Table 1, in the embodiments of this application, after the transmitting end performs the first concatenation process on the 100 data points at the PDCP layer to obtain the first data, the transmitting end only needs to process the first data once at both the RLC layer and the MAC layer. Therefore, compared with the number of times the prior art processes these 100 data points, the embodiments of this application can significantly reduce the complexity of processing these 100 data points.
[0131] Table 1
[0132] Number of times the CPU processes 100 data points Current technology Examples of this application SDAP 100 100 PDCP 100 100 (Concatenate 100 data points into the first data point) RLC 100 1 (Only the first data is processed) MAC 100 1 (Only the first data is processed) Total number of times 400 202
[0133] Please see Figure 7 , Figure 7 This is a flowchart illustrating another data processing method 200 provided in this application embodiment. This data processing method 200 is described from the perspective of the interaction between the sending end and the receiving end, taking the sending end as a terminal device and the receiving end as a network device as an example. This data processing method 200 includes, but is not limited to, the following steps:
[0134] S201. The terminal device receives configuration information corresponding to the first condition. The configuration information of the first condition is used to determine one or more of the following in the first condition: the duration of the timer, the first threshold, and the second threshold.
[0135] S202, The terminal device determines a first condition based on the configuration information; the first condition includes one or more of the following: timer timeout, the timer is used to control the first cascaded process; the timer is started after the previous cascaded process of the first cascaded process is completed; the number of multiple data is greater than or equal to a first threshold; the first threshold is greater than or equal to 2; the bit size of multiple data is greater than or equal to a second threshold; the second threshold is greater than or equal to 2.
[0136] S203. When the first condition is met, the terminal device performs a first concatenation process on multiple data to obtain first data, which includes a header and a payload.
[0137] S204, The terminal device sends the first data;
[0138] S205. The network device receives the first data from the terminal device;
[0139] S206. The network device obtains multiple data based on the header of the first data.
[0140] In one implementation, the terminal device receives configuration information corresponding to a first condition from the network device; that is, the network device configures the configuration information corresponding to the first condition to the terminal device. After receiving the configuration information, the terminal device can determine the first condition based on the parameters in the configuration information.
[0141] In another implementation, the terminal device receives configuration information corresponding to multiple first conditions from the network device; that is, the network device configures multiple configuration information corresponding to the first conditions to the terminal device. After receiving these multiple configuration information, the terminal device determines the first condition based on one of the multiple configuration information; that is, the terminal device selects one configuration information from multiple configuration information to determine the first condition. The following are two implementation methods for the terminal device to select one configuration information from multiple configuration information to determine the first condition:
[0142] In one implementation, the network device sends third indication information to the terminal device. This third indication information indicates one of a plurality of configuration information. The terminal device then receives the third indication information from the network device and, based on it, determines a first condition from one of the multiple configuration information. In other words, the configuration information used by the terminal device to determine the first condition is indicated by the network device through the third indication information.
[0143] In another implementation, the terminal device determines the first condition from one of the multiple configuration information options based on the amount of uplink resources authorized by the network device. This approach allows the terminal device to rationally select the configuration information used to determine the first condition from multiple configuration options.
[0144] In one implementation, the configuration information corresponding to the aforementioned multiple first conditions is configured by the network device according to a DRB. That is, the first condition determined by the terminal device based on one of the aforementioned configuration information applies to multiple data items included in the DRB corresponding to that configuration information. This implementation facilitates the terminal device in performing first-level concatenation processing on multiple data items included in the same DRB.
[0145] For example, the configuration information corresponding to the first condition includes configuration information A, configuration information B, and configuration information C. Configuration information A, B, and C are all configured by the network device according to DRB-1. If the terminal device determines to use configuration information A to determine the first condition, and the parameter in configuration information A has a first preset value of 3, then the network device determines the first condition a according to configuration information A as follows: when the number of multiple data items included in DRB-1 is greater than or equal to 3, the multiple data items included in DRB-1 undergo the first concatenation process. In other words, the first condition a determined by the terminal device according to configuration information A only applies to the multiple data items included in DRB-1.
[0146] For example, if the configuration information D corresponding to the first condition is configured by the network device according to DRB-2, and the parameter in the configuration information D is the second preset value equal to 5, then the first condition b determined by the terminal device according to the configuration information B is: when the bit size of the multiple data included in DRB-2 is greater than or equal to 5 bits, the multiple data included in DRB-2 shall be subjected to the first concatenation process. That is, the first condition b determined by the terminal device only applies to the multiple data included in DRB-2.
[0147] In another implementation, the configuration information corresponding to the aforementioned multiple first conditions is configured by the network device according to a QoS flow. That is, the first condition determined by the terminal device based on one of the aforementioned configuration information applies to multiple data items included in the QoS flow corresponding to that configuration information. This implementation facilitates the terminal device in performing first-level concatenation processing on multiple data items included in the same QoS flow.
[0148] For example, if the configuration information corresponding to the first condition determined by the network device is the configuration information for the terminal device to perform the first cascading processing at the Service Data Adaptation Protocol (SDAP) layer, then the network device configures multiple configuration information corresponding to the first condition according to a QoS flow.
[0149] In S203, when the first condition is met, the terminal device performs a first concatenation process on multiple data sets to obtain the first data set. This includes: concatenating the multiple data sets end-to-end to obtain a payload, and adding a header to the payload to obtain the first data set. In other words, when the first condition is met, the terminal device first concatenates the multiple data sets end-to-end, then adds a header to the concatenated data to obtain the first data set. The added header contains information about the multiple data sets. This implementation also applies when the sending end is a network device, meaning the network device also performs the first concatenation process on the multiple data sets according to this implementation.
[0150] For example, the first condition for the terminal device to perform the first concatenation process is: if the number of data items in DRB-1 is greater than or equal to 3, then the terminal device will perform the first concatenation process on data items with 3 or fewer data items in DRB-1. The multiple data items in DRB-1 transmitted from the SDAP layer to the PDCP layer by the terminal device are: data a, data b, and data c. It can be seen that the number of data items in DRB-1 is equal to 3, and the terminal device meets the first condition, selecting to perform the first concatenation process on data a, data b, and data c. Therefore, the terminal device concatenates data a, data b, and data c end-to-end to obtain the following... Figure 8 The load section a is shown, and then a header a is added to the load section a to obtain the first data a. From Figure 8 As can be seen, the load section a is obtained by concatenating data a, data b, and data c end to end. The format of header a is as described in data processing method 100, and will not be repeated here.
[0151] For example, such as Figure 9The terminal device receives four data packets from the DRB-2 of the PDCP layer. Each data packet includes an Internet Protocol header (IP header) and an Internet Protocol payload (IP payload). The first condition for the terminal device to perform the first concatenation process is that if the number of data packets included in DRB-2 is greater than two, then two data packets from DRB-2 are concatenated. Therefore, the terminal device concatenates every two data packets to obtain payload a and payload b. Furthermore, the terminal device determines that payload a and payload b satisfy the first condition, and that the bit size of payload a and payload b is within the capability of the sending end to perform the first concatenation process. Then, the terminal device concatenates payload a and payload b to obtain payload c, and adds a PDCP header to payload c to obtain first data m. Payload c includes a Packet Data Convergence Layer Protocol Sequence Service Data Unit-1 (PDCP Service Data Unit, PDCP SDU 1) and a PDCP SDU 2. First data m includes a PDCP header and a PDCP SDU. The header 'c' is added for the four data items and contains information about each data item. See the specific format below. Figure 9 As shown, no further details will be provided.
[0152] In one implementation, after obtaining the payload, the terminal device can perform protocol-layer processing on the payload to obtain the processed payload, and then add a header to the processed payload to obtain the first data. For example, at the PDCP layer, the terminal device's processing of the payload includes encryption and integrity protection. As another example, in the AM mode of the RLC layer, the processing of the payload includes automatic repeat request, segmentation, and reassembly. This implementation is also applicable when the sending end is a network device, meaning the network device can also perform protocol-layer processing on the payload to obtain the processed payload, and then add a header to the processed payload to obtain the first data.
[0153] In one implementation, before receiving configuration information corresponding to the first condition from the network device, the terminal device may also report its cascading processing capability for performing the first cascading process to the network device. This allows the network device to configure appropriate configuration information for the terminal device based on the cascading processing capability of the first cascading process, thereby enabling the terminal device to receive the configuration information corresponding to the first condition determined by the network device based on the cascading processing capability. This implementation helps the terminal device obtain configuration information suitable for its own needs, thus ensuring that the first cascading process is performed within the cascading processing capability of the terminal device.
[0154] The cascading processing capability of the first cascading process includes one or more of the following: the minimum number of data items processed by the terminal device in the first cascading process; the maximum number of data items processed by the terminal device in the first cascading process; the minimum bit size of the data items processed by the terminal device in the first cascading process; and the maximum bit size of the data items processed by the terminal device in the first cascading process.
[0155] The following describes several implementation methods for network devices to determine configuration information based on the cascading processing capabilities corresponding to different first conditions reported by terminal devices:
[0156] In one implementation, if the cascading processing capability of the first cascading process reported by the terminal device is the minimum number of data items to be processed in the first cascading process, then the first threshold in the configuration information determined by the network device should be greater than or equal to this minimum value. This implementation can fully utilize the terminal device's first cascading processing capability, enabling the terminal device to perform first cascading processing on as many data items as possible within the same DRB. For example, if the minimum number of data items to be processed in the first cascading process reported by the terminal device is 3, then the first threshold in the configuration information determined by the network device should be greater than or equal to 3. Therefore, the terminal device can perform first cascading processing on data items within the same DRB that are less than or equal to 3 when there are 3 or more data items within that DRB.
[0157] In another implementation, if the cascading processing capability of the first cascading process reported by the terminal device is the maximum number of data items to be processed in the first cascading process, then the first threshold in the configuration information determined by the network device should be less than or equal to this maximum value. Only in this way can it be ensured that the terminal device performs first cascading processing on multiple data items within the maximum number of data items to be processed in the first cascading process. For example, if the maximum number of data items to be processed in the first cascading process reported by the terminal device is 5, then the first threshold in the configuration information determined by the network device should be less than or equal to 5.
[0158] In another implementation, the cascading processing capability of the first cascading process reported by the terminal device is the minimum and maximum value of the number of data to be processed in the first cascading process. Therefore, the first threshold in the configuration information determined by the network device should be greater than or equal to the minimum value and less than or equal to the maximum value. This implementation ensures that the terminal device can fully utilize its own first cascading processing capability while also ensuring that multiple data items are processed in the first cascading process within its capability range. For example, if the minimum number of data items to be processed in the first cascading process reported by the terminal device is 3, and the maximum number is 8, then the first threshold in the configuration information determined by the network device should be greater than or equal to 3 and less than or equal to 8; for example, the first threshold could be 6.
[0159] In another implementation, if the first concatenation processing capability reported by the terminal device is the minimum bit size of the data to be processed in the first concatenation, then the second threshold in the configuration information determined by the network device should be greater than or equal to this minimum value. This implementation allows the terminal device to perform first concatenation processing on data of as many bit sizes as possible.
[0160] In another implementation, the first concatenation processing capability reported by the terminal device is the maximum value of the data bit size for performing the first concatenation processing. Therefore, the second threshold in the configuration information determined by the network device should be less than or equal to this maximum value. This implementation also allows the terminal device to perform first concatenation processing on multiple data sets within its capability range.
[0161] In another implementation, the first concatenation processing capability reported by the terminal device is the minimum and maximum bit size of the data to be processed in the first concatenation. Therefore, the second threshold in the configuration information determined by the network device should be greater than or equal to the minimum value and less than or equal to the maximum value. This implementation also allows the terminal device to perform first concatenation processing on multiple data sets within its first concatenation processing capability, while also maximizing the utilization of that capability. For example, if the first concatenation processing capability reported by the terminal device is a minimum bit size of 7 and a maximum bit size of 20 for the data to be processed in the first concatenation, then the second threshold in the configuration information determined by the network device should be greater than or equal to 7 and less than or equal to 20; for instance, the second threshold could be 15.
[0162] In the above implementation, the terminal device reports the number of data items to be processed in the first concatenation and the data bit size. Any two of these can be combined. The network device also determines the first and second thresholds in the configuration information based on the concatenation processing capability reported by the terminal device. For example, if the terminal device reports the minimum number of data items to be processed in the first concatenation and the maximum data bit size, then in the configuration information corresponding to the first condition determined by the network device, the first threshold should be greater than or equal to the minimum number of data items, and the second threshold should be less than or equal to the maximum data bit size.
[0163] In another implementation, before receiving the configuration information corresponding to the first condition from the network device, the terminal device may send fourth indication information to the network device. This fourth indication information indicates the number of data items and / or the bit size of the first concatenated processing determined by the sending end. Upon receiving the fourth indication information, the network device determines the configuration information corresponding to the first condition based on the number of data items and / or the bit size of the first concatenated processing determined by the sending end. For example, if the fourth indication information indicates that the number of data items in the first concatenated processing determined by the terminal device is 10, then the network device determines that the first threshold in the configuration information corresponding to the first condition is 10. As another example, if the fourth indication information indicates that the bit size of the first concatenated processing determined by the terminal device is 20, then the network device determines that the second threshold in the configuration information corresponding to the first condition is 20.
[0164] As described above, the header of the first data includes information about each piece of data, such as the number of data items and their lengths. Therefore, in S206, the receiving end can obtain multiple data items based on the information in the header of the first data.
[0165] As can be seen, in this embodiment, the terminal device determines the first condition based on the configuration information corresponding to the first condition from the network device. Then, when the first condition is met, it performs a first concatenation process on multiple data within the same DRB to obtain the first data and sends it. This method is advantageous because the terminal device can perform a first concatenation process on multiple data within the same DRB based on the first condition within the capability of the first concatenation process. This is beneficial because when the first data is transmitted to other protocol layers, the terminal device only needs to process the first data, instead of processing each individual data, thus reducing the complexity of data processing for the terminal device.
[0166] The data processing method 100 and data processing method 200 described above may also include the following implementation methods:
[0167] In one implementation, the sending end transmits the aforementioned first data, including: when the sending end obtains transmission resources, performing a second concatenation process on the first data and the second data, and then transmitting the data after the second concatenation process. The second data is data obtained by the sending end based on the first concatenation process and is different from the first data. That is, after obtaining the first data and the second data through the first concatenation process, the sending end can also perform a second concatenation process on the first data and the second data, and the sending end can only perform the second concatenation process on the first data and the second data when it obtains transmission resources. Specifically, when the sending end is a terminal device, the terminal device can perform the second concatenation process on the first data and the second data when it obtains uplink resources authorized by the network device; when the sending end is a network device, the network device can perform the second concatenation process on the first data and the second data when it determines downlink transmission resources. The second data and the first data can be data from the same DRB or the same QoS stream, or data from different DRBs or different QoS streams.
[0168] In one implementation, when the sending end obtains transmission resources, it performs a second concatenation process on the first and second data. This includes adding headers to both the first and second data, concatenating them end-to-end to obtain the second-concatenated data. It is evident that the second concatenation process involves adding headers to each data item before concatenating them end-to-end, whereas the first concatenation process involves concatenating the data items end-to-end before adding headers. Therefore, the first concatenation process reduces the processing complexity at the sending end.
[0169] For example, such as Figure 10 As shown, when a terminal device obtains uplink resources authorized by a network device, there are first data 'a' and second data 'a' after the first concatenation processing. The terminal device chooses to perform a second concatenation processing on the first data 'a' and the second data 'b', that is, first add a header 'a' to the first data 'a', add a header 'b' to the second data 'b', and then concatenate the first data 'a' and the second data 'b' after adding the headers to obtain the data 'n' after the second concatenation processing.
[0170] In one implementation, after receiving the first data, the sending end can restart the timer for performing the first cascaded processing, and discard the first data after the timer expires.
[0171] In one implementation, after the sending end performs a first concatenation process on multiple data and obtains the first data, it stores the first data locally. If the timer mentioned above times out after being restarted, it indicates that the sending end has sent out the first data packet. Therefore, the sending end can discard the first data packet stored locally.
[0172] In another implementation, if the timer expires after being restarted, it indicates that the sending end has not sent the first data, but the timer duration has been exceeded, and the locally stored first data also needs to be discarded.
[0173] In another implementation, the sending end stores multiple data points locally after receiving them. In this case, the aforementioned timer can also be used to control the discarding of these multiple data points. That is, after receiving the first data point, the sending end restarts the timer, and after the timer expires, the multiple data points are discarded.
[0174] To achieve the functions of the methods provided in the embodiments of this application, the sending end or receiving end may include hardware structures and / or software modules, implementing the above functions in the form of hardware structures, software modules, or a combination of hardware structures and software modules. Whether a particular function is executed in the form of hardware structures, software modules, or a combination of hardware structures and software modules depends on the specific application and design constraints of the technical solution.
[0175] like Figure 11 As shown, this application embodiment provides a communication device 1100. The communication device 1100 can be a component of the transmitting end (e.g., an integrated circuit, a chip, etc.) or a component of the receiving end (e.g., an integrated circuit, a chip, etc.). The communication device 1100 can also be other communication units used to implement the methods in the method embodiments of this application. The communication device 1100 may include a processing unit 1101. Optionally, it may also include a communication unit 1102 and a storage unit 1103.
[0176] In one possible design, such as Figure 11 One or more units may be implemented by one or more processors, or by one or more processors and memory; or by one or more processors and transceivers; or by one or more processors, memory, and transceivers. This application does not limit the implementation in this way. The processors, memory, and transceivers can be configured individually or integrated.
[0177] The communication device 1100 has the functions of a transmitting end as described in the embodiments of this application. Optionally, the communication device 1100 also has the functions of a receiving end as described in the embodiments of this application. For example, the communication device 1100 includes modules, units, or means corresponding to the steps involved in the transmitting end as described in the embodiments of this application. The functions, units, or means can be implemented by software, hardware, or hardware executing corresponding software, or a combination of software and hardware. Further details can be found in the corresponding descriptions in the foregoing method embodiments.
[0178] In one possible design, a communication device 1100 may include:
[0179] Processing unit 1101 is configured to perform a first concatenation process on multiple data when a first condition is met to obtain first data, wherein the multiple data belong to a data radio bearer (DRB) of the transmitting end;
[0180] The communication unit 1102 is used to send the first data.
[0181] The first condition includes one or more of the following: timer timeout, the timer being used to control the first cascaded process; the timer being started after the previous cascaded process of the first cascaded process is completed; the number of the plurality of data is greater than or equal to a first threshold; the first threshold is greater than or equal to 2; the bit size of the plurality of data is greater than or equal to a second threshold; the second threshold is greater than or equal to 2.
[0182] The communication unit 1102 is also used to execute S101 and S103 in the data processing method 100, and S201 in the data processing method 200; the processing unit 1101 is also used to execute S105 in the data processing method 100.
[0183] The embodiments of this application and the method embodiments shown in the above data processing methods 100 and 200 are based on the same concept and have the same technical effects. For the specific principles, please refer to the description of the embodiments shown in the above data processing methods 100 and 200, which will not be repeated here.
[0184] In another possible design, a communication device 1100 may include:
[0185] Communication unit 1102 is configured to receive first data from a transmitter, the first data including a header and a payload, the header including the number of the plurality of data and a common sequence number for identifying the plurality of data, the payload including the plurality of data;
[0186] Processing unit 1101 is used to obtain the plurality of data based on the header.
[0187] The communication unit 1102 is also used to execute S102 and S104 in the data processing method 100, and S202 in the data processing method 200; the processing unit 1101 is also used to execute S203 in the data processing method 200.
[0188] The embodiments of this application and the method embodiments shown in the above data processing methods 100 and 200 are based on the same concept and have the same technical effects. For the specific principles, please refer to the description of the embodiments shown in the above data processing methods 100 and 200, which will not be repeated here.
[0189] Figure 12 A schematic diagram of a communication device is provided. The communication device 1200 can be a transmitting end or a receiving end, or it can be a chip, chip system, or processor that supports the transmitting end in implementing the above-described methods, or it can be a chip, chip system, or processor that supports the receiving end in implementing the above-described methods. This device can be used to implement the methods described in the above-described method embodiments; for details, please refer to the descriptions in the above-described method embodiments.
[0190] The communication device 1200 may include one or more processors 1201. The processor 1201 may be a general-purpose processor or a dedicated processor, such as a baseband processor or a central processing unit (CPU). The baseband processor can be used to process communication protocols and communication data, while the CPU can be used to control the communication device (e.g., base station, baseband chip, terminal, terminal chip, DU or CU, etc.), execute software programs, and process data from the software programs.
[0191] Optionally, the communication device 1200 may include one or more memories 1202, which may store instructions 1204. These instructions can be executed on the processor 1201, causing the communication device 1200 to perform the methods described in the above method embodiments. Optionally, the memory 1202 may also store data. The processor 1201 and the memory 1202 may be configured separately or integrated together.
[0192] Optionally, the communication device 1200 may further include a transceiver 1205 and an antenna 1206. The transceiver 1205 may be referred to as a transceiver unit, transceiver, or transceiver circuit, etc., and is used to implement the transmission and reception functions. The transceiver 1205 may include a receiver and a transmitter. The receiver may be referred to as a receiver or receiving circuit, etc., and is used to implement the receiving function; the transmitter may be referred to as a transmitter or transmitting circuit, etc., and is used to implement the transmitting function.
[0193] The communication device 1200 is a transmitting end: the transceiver 1205 is used to execute S101 and S103 in data processing method 100 and S201 in data processing method 200; the processor 1201 is used to execute S105 in data processing method 100.
[0194] The communication device 1200 is a receiving end: the transceiver 1205 is used to execute S102 and S104 in data processing method 100 and S202 in data processing method 200; the processor 1201 is used to execute S203 in data processing method 200.
[0195] In another possible design, the processor 1201 may include a transceiver for implementing receive and transmit functions. For example, the transceiver may be a transceiver circuit, an interface, or an interface circuit. The transceiver circuit, interface, or interface circuit for implementing receive and transmit functions may be separate or integrated. The aforementioned transceiver circuit, interface, or interface circuit may be used for reading and writing code / data, or it may be used for transmitting or relaying signals.
[0196] In another possible design, the processor 1201 may optionally store instructions 1203, which, when executed on the processor 1201, cause the communication device 1200 to perform the methods described in the above method embodiments. Instructions 1203 may be embedded in the processor 1201; in this case, the processor 1201 may be implemented in hardware.
[0197] In another possible design, the communication device 1200 may include circuitry that can perform the functions of sending, receiving, or communicating as described in the foregoing method embodiments. The processors and transceivers described in this application can be implemented on integrated circuits (ICs), analog ICs, radio frequency integrated circuits (RFICs), mixed-signal ICs, application-specific integrated circuits (ASICs), printed circuit boards (PCBs), electronic devices, etc.
[0198] The communication device described in the above embodiments can be either a transmitter or a receiver, but the scope of the communication device described in the embodiments of this application is not limited thereto, and the structure of the communication device can be unrestricted. Figure 12 The communication device may be a standalone device or part of a larger device. For example, the communication device may be:
[0199] (1) Independent integrated circuit IC, or chip, or chip system or subsystem;
[0200] (2) A collection of one or more ICs, optionally including a storage component for storing data and instructions;
[0201] (3) ASIC, such as modem (MSM);
[0202] (4) Modules that can be embedded in other devices;
[0203] (5) Receivers, terminals, smart terminals, cellular phones, wireless devices, handheld devices, mobile units, vehicle-mounted devices, network devices, cloud devices, artificial intelligence devices, etc.
[0204] (6) Others, etc.
[0205] For cases where the communication device can be a chip or a chip system, please refer to [link / reference]. Figure 13 The diagram shows the structure of the chip. Figure 13 The chip 1300 shown includes a processor 1301 and an interface 1302. The number of processors 1301 can be one or more, and the number of interfaces 1302 can be multiple.
[0206] In one design, the chip is used to implement the function of the transmitting end in the embodiments of this application:
[0207] The processor 1301 is configured to perform a first concatenation process on multiple data sets to obtain first data sets when a first condition is met; the multiple data sets belong to a data radio bearer (DRB) of the transmitting end.
[0208] The interface 1302 is used to send the first data;
[0209] The first condition includes one or more of the following: timer timeout, the timer being used to control the first cascaded process; the timer being started after the previous cascaded process of the first cascaded process is completed; the number of the plurality of data is greater than or equal to a first threshold; the first threshold is greater than or equal to 2; the bit size of the plurality of data is greater than or equal to a second threshold; the second threshold is greater than or equal to 2.
[0210] In another design, for the chip used to implement the function of the receiving end in the embodiments of this application:
[0211] The interface 1302 is used to receive first data from the sending end; the first data includes a header and a payload; the header includes the number of the plurality of data and a common sequence number for identifying the plurality of data; the payload includes the plurality of data; the processor 1301 is used to obtain the plurality of data according to the header.
[0212] In this embodiment, the communication device 1200 and the chip 1300 can also execute the implementation method described in the communication device 1100 above.
[0213] Those skilled in the art will also understand that the various illustrative logical blocks and steps listed in the embodiments of this application can be implemented by electronic hardware, computer software, or a combination of both. Whether such functionality is implemented through hardware or software depends on the specific application and the overall system design requirements. Those skilled in the art can implement the described functionality using various methods for each specific application, but such implementation should not be construed as exceeding the scope of protection of the embodiments of this application.
[0214] This application also provides a computer-readable medium for storing computer software instructions that, when executed by a communication device, implement the functions of any of the above method embodiments.
[0215] This application also provides a computer program product for storing computer software instructions, which, when executed by a communication device, implement the functions of any of the above method embodiments.
[0216] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., high-density digital video discs (DVDs)), or semiconductor media (e.g., solid-state disks (SSDs)).
[0217] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A data processing method, characterized in that, The method includes: The sending end reports the cascading processing capability of the first cascading process, which includes one or more of the following: the minimum number of data items processed by the sending end in the first cascading process; the maximum number of data items processed by the sending end in the first cascading process; the minimum bit size of the data items processed by the sending end in the first cascading process; and the maximum bit size of the data items processed by the sending end in the first cascading process. The sending end receives configuration information, which corresponds to a first condition. The configuration information includes one or more of the following: timer duration, a first threshold, and a second threshold; the first threshold is greater than or equal to the minimum number of data items for which the sending end performs the first concatenation process, and / or the first threshold is less than or equal to the maximum number of data items for which the sending end performs the first concatenation process; the second threshold is greater than or equal to the minimum bit size of the data items for which the sending end performs the first concatenation process, and / or the second threshold is less than or equal to the maximum bit size of the data items for which the sending end performs the first concatenation process. When the first condition is met, the transmitting end performs the first concatenation process on multiple data to obtain first data; the multiple data belong to a Data Radio Bearer (DRB) of the transmitting end, and the multiple data are data of the next protocol layer: Serving Data Adaptation Protocol (SDAP), Packet Data Convergence Protocol (PDCP), Radio Link Control (RLC), and Medium Access Control (MAC). The first data includes a header and a payload; the header includes the number of the multiple data and a common sequence number used to identify the multiple data; the payload includes the multiple data. The sending end sends the first data; The first condition includes one or more of the following: The timer times out; the timer is used to control the first cascaded process; the timer is started after the previous cascaded process is completed. The number of the plurality of data is greater than or equal to the first threshold; the first threshold is greater than or equal to 2; The bit size of the plurality of data is greater than or equal to the second threshold; the second threshold is greater than or equal to 2.
2. The method according to claim 1, characterized in that, The header also includes first indication information corresponding to each of the plurality of data; the first indication information is used to indicate the bit size of the corresponding data.
3. The method according to claim 2, characterized in that, The header also includes second indication information corresponding to the first indication information, the second indication information being used to indicate the bit length of the corresponding first indication information.
4. The method according to any one of claims 1 to 3, characterized in that, The multiple data points belong to the same Quality of Service (QoS) flow of the DRB.
5. The method according to any one of claims 1 to 4, characterized in that, When the first condition is met, the sending end performs a first concatenation process on multiple data sets to obtain the first data set, including: When the first condition is met, the transmitting end concatenates multiple data sets end to end to obtain the payload. The transmitting end adds a header to the payload to obtain the first data.
6. The method according to any one of claims 1 to 5, characterized in that, The sending end sends the first data, including: When the sending end obtains transmission resources, it performs a second concatenation process on the first data and the second data, and then sends the data after the second concatenation process. The second data is obtained by the sending end based on the first concatenation process, and is different from the first data.
7. The method according to claim 6, characterized in that, When the sending end obtains transmission resources, it performs a second concatenation process on the first data and the second data, including: When the sending end obtains transmission resources, it adds headers to the first data and the second data respectively, and concatenates them to obtain the data after the second concatenation process.
8. The method according to any one of claims 1 to 7, characterized in that, The duration of the timer, the first threshold, and the second threshold, or one or more of them, are configured in the configuration information according to the DRB or the quality of service flow.
9. The method according to any one of claims 1 to 8, characterized in that, The configuration information is configured according to a DRB or a quality of service flow.
10. The method according to any one of claims 1 to 9, characterized in that, The method further includes: When the sending end receives the first data, it starts the timer; The sending end discards the first data after the timer expires.
11. A data processing method, characterized in that, The method includes: The receiving end receives the cascading processing capability of the first cascading process, which includes one or more of the following: the minimum number of data items processed by the sending end in the first cascading process; the maximum number of data items processed by the sending end in the first cascading process; the minimum bit size of the data items processed by the sending end in the first cascading process; and the maximum bit size of the data items processed by the sending end in the first cascading process. The receiving end sends configuration information, which corresponds to a first condition. The configuration information includes one or more of the following: timer duration, a first threshold, and a second threshold; the first threshold is greater than or equal to the minimum number of data items processed by the sending end in the first concatenation process, and / or the first threshold is less than or equal to the maximum number of data items processed by the sending end in the first concatenation process; the second threshold is greater than or equal to the minimum bit size of the data items processed by the sending end in the first concatenation process, and / or the second threshold is less than or equal to the maximum bit size of the data items processed by the sending end in the first concatenation process. The receiving end receives first data from the sending end; the first data includes a header and a payload; the header includes a number of multiple data items and a common sequence number used to identify the multiple data items; the payload includes multiple data items. The receiving end obtains the plurality of data based on the header; Wherein, the first data is obtained by the transmitting end performing the first concatenation process on the plurality of data when the first condition is met; the plurality of data belongs to a data radio bearer (DRB) of the transmitting end, and the plurality of data is data of the next protocol layer: Serving Data Adaptation Protocol (SDAP) layer, Packet Data Convergence Protocol (PDCP) layer, Radio Link Control (RLC) layer, and Medium Access Control (MAC) layer. The first condition includes one or more of the following: The timer times out; the timer is used to control the first cascaded process; the timer is started after the previous cascaded process is completed. The number of the plurality of data is greater than or equal to the first threshold; the first threshold is greater than or equal to 2; The bit size of the plurality of data is greater than or equal to the second threshold; the second threshold is greater than or equal to 2.
12. The method according to claim 11, characterized in that, The header also includes first indication information corresponding to each of the plurality of data; the first indication information is used to indicate the bit size of the corresponding data.
13. The method according to claim 12, characterized in that, The header also includes second indication information corresponding to the first indication information, the second indication information being used to indicate the bit length of the corresponding first indication information.
14. The method according to any one of claims 11 to 13, characterized in that, The multiple data points belong to the same Quality of Service (QoS) flow of the DRB.
15. The method according to any one of claims 11 to 14, characterized in that, The receiving end receives first data from the sending end, including: The receiving end receives the data after the second cascade processing; The receiving end obtains first data and second data based on the data after the second concatenation processing; both the first data and the second data are obtained based on the first concatenation processing, and the first data and the second data are different.
16. The method according to any one of claims 11 to 15, characterized in that, The configuration information is configured according to a DRB or a quality of service flow.
17. A communication device, characterized in that, The device includes a processor and a communication interface for communicating with other communication devices; the processor is configured to run a program that causes the communication device to implement the method of any one of claims 1 to 10, or to cause the communication device to implement the method of any one of claims 11 to 16.
18. A communication device, characterized in that, include: Processors and interfaces; The interface is used to receive code instructions and transmit them to the processor; The processor is configured to execute the code instructions to perform the method as described in any one of claims 1 to 10, or to execute the code instructions to perform the method as described in any one of claims 11 to 16.