Communication method, apparatus and system
By implementing RLC and PDCP functions through an aggregation protocol layer in a wireless communication system, the user plane protocol stack is simplified, the problems of user plane protocol stack complexity and invalid transmission are solved, and transmission efficiency and reliability are improved.
Patent Information
- Application Number
- PCT/CN2025/097441
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-31
- Filing Date
- 2025-05-27
- Publication Date
- 2025-12-04
AI Technical Summary
In wireless communication systems, the user plane protocol stack architecture is complex, with large packet header overhead. The ARQ function and packet dropping function are implemented by different protocol layers, resulting in invalid or useless data transmission, and the retransmission function is highly complex.
The RLC layer's segmentation/reassembly function and the PDCP layer's security processing function are implemented through an aggregated protocol layer, simplifying the user protocol stack. Sequence numbers are used for segmentation and security processing, supporting duplicate transmission or split transmission, and transmitting L2 control PDUs according to the transmission opportunity size.
It simplifies the user protocol stack architecture, reduces packet header overhead, improves transmission reliability and speed, avoids useless transmission, and reduces the risk of service interruption.
Smart Images

Figure CN2025097441_04122025_PF_FP_ABST
Abstract
Description
A communication method, apparatus and system
[0001] Cross-reference of related applications
[0002] This application claims priority to Chinese Patent Application No. 202410709697.3, filed on May 31, 2024, entitled "A Communication Method, Apparatus and System", the entire contents of which are incorporated herein by reference. Technical Field
[0003] This application relates to the field of communication technology, and in particular to a communication method, apparatus and system. Background Technology
[0004] Wireless communication systems employ a layered protocol stack design. The user plane protocol stack on both the transmitting and receiving sides includes the Service Data Adaptation Protocol (SDAP) layer, the Packet Data Convergence Protocol (PDCP) layer, the Radio Link Control (RLC) layer, the Media Access Control (MAC) layer, and the Physical (PHY) layer.
[0005] However, the architecture of the aforementioned user plane protocol stack is quite complex, and further research is needed on how to simplify it. Summary of the Invention
[0006] This application provides a communication method, apparatus, and system for implementing the segmentation / reassembly function of the RLC layer and the security processing function of the PDCP layer through an aggregated protocol layer, thereby simplifying the architecture of the user protocol stack.
[0007] In a first aspect, embodiments of this application provide a communication method, which can be applied to a first communication device, the first communication device being a network device or a component (such as a chip or circuit) within a network device; or, the first communication device may also be a terminal device or a component (such as a chip or circuit) within a terminal device. For example, in the method provided in the first aspect, a first protocol layer entity of the first communication device generates a first PDU, the first PDU including a first header and a first payload, the first payload being a first SDU or a segment of the first SDU, the first header including a first sequence number, the first sequence number being used to segment the first SDU and perform a first security processing; the first protocol layer entity delivers the first PDU to a second protocol layer entity of the first communication device.
[0008] Using the above method, the first sequence number is used to segment the first SDU and perform the first security processing. That is, the first sequence number has the functions of an RLC sequence number (used for segmentation) and a PDCP sequence number / count value (used for the first security processing), thereby enabling the functions of the RLC layer and the PDCP layer to be implemented through an aggregated protocol layer, which simplifies the architecture of the user protocol stack and reduces packet header overhead.
[0009] In one possible design, the first protocol layer entity is associated with M logical channels, where M is an integer greater than 1; the first protocol layer entity delivers the first PDU to the second protocol layer entity of the first communication device, including: the first protocol layer entity delivers the first PDU to the second protocol layer entity through a first logical channel among the M logical channels; the method further includes: the first protocol layer entity delivers a second PDU to the second protocol layer entity through a second logical channel among the M logical channels, the second PDU being the same as or different from the first PDU.
[0010] Thus, when the second PDU is the same as the first PDU, it can be replicated for transmission, which facilitates high reliability for services; or when the second PDU is different from the first PDU, it can be split for transmission, which facilitates full utilization of the capacity of multiple underlying transmission links, improves transmission rate, and ensures the transmission of high-speed services.
[0011] In one possible design, the first header may also include first information indicating that the first PDU is a data PDU.
[0012] In one possible design, the method further includes: the first protocol layer entity generating a third PDU, the third PDU including a second header and a second payload, the second header including a second sequence number and second information, the second sequence number being used to segment the second payload, and the second information being used to indicate that the third PDU is a control PDU; the first protocol layer entity delivering the third PDU to a second protocol layer entity of the first communication device.
[0013] Thus, since the third PDU includes a second sequence number, which is used to segment the second payload, it is convenient to transmit the L2 control PDU according to the size of the transmission opportunity.
[0014] In one possible design, the range of values for the second serial number does not overlap with the range of values for the first serial number.
[0015] In one possible design, the method further includes: the first protocol layer entity generating a fourth PDU, the fourth PDU being a control PDU; the first protocol layer entity submitting the fourth PDU to a third protocol layer entity of the first communication device; the third protocol layer entity generating a fifth PDU based on the fourth PDU, the fifth PDU including a third header and a third payload, the third payload being the fourth PDU or a segment of the fourth PDU, the third header including a third sequence number used to segment the fourth PDU; and the third protocol layer entity submitting the fifth PDU to a second protocol layer entity.
[0016] Thus, since the fifth PDU includes the third sequence number, which is used to segment the fourth PDU, it is convenient to transmit the L2 control PDU according to the size of the transmission opportunity.
[0017] In one possible design, the value range of the third serial number does not overlap with the value range of the first serial number.
[0018] In one possible design, the third header may also include identification information of the first protocol layer entity.
[0019] In one possible design, the third protocol layer entity is associated with N logical channels, where N is an integer greater than 1; the third protocol layer entity delivers the fifth PDU to the second protocol layer entity, including: the third protocol layer entity delivers the fifth PDU to the second protocol layer entity through the third logical channel among the N logical channels; the method further includes: the third protocol layer entity delivers a sixth PDU to the second protocol layer entity through the fourth logical channel among the N logical channels, the sixth PDU being the same as or different from the fifth PDU.
[0020] In one possible design, the method further includes: the first protocol layer entity terminating the retransmission of the first PDU when a first condition is met; wherein the first condition includes one or more of the following: the discard timer corresponding to the first SDU times out; the number of retransmissions of the first SDU or a segment of the first SDU is greater than or equal to a threshold; the first protocol layer entity receives a status report, the status report indicating that the first SDU or a segment of the first SDU has been successfully received.
[0021] Thus, terminating retransmission upon the expiration of the discard timer helps reduce useless transmissions caused by retransmissions after the discard timer expires. Terminating retransmissions when the number of retransmissions is greater than or equal to a threshold, instead of triggering an RLF (Redirecting Frequency Forecast), helps avoid service interruptions caused by frequent RLF triggers. Status reports can be sent upon the expiration of the reordering timer; therefore, terminating retransmission upon receiving a status report is equivalent to terminating retransmissions upon the expiration of the reordering timer, thereby reducing useless transmissions caused by retransmissions after the reordering timer expires.
[0022] In one possible design, the first SDU is an SDAP PDU, and the second protocol layer entity is a MAC layer entity.
[0023] Secondly, embodiments of this application provide a communication method that can be applied to a second communication device, which is a network device or a component (such as a chip or circuit) within a network device; alternatively, the second communication device can also be a terminal device or a component (such as a chip or circuit) within a terminal device. For example, in the method provided in the second aspect, a first protocol layer entity of the second communication device receives a first PDU, the first PDU including a first header and a first payload, the first payload being a first SDU or a segment of the first SDU, the first header including a first sequence number, the first sequence number being used for reassembling the first SDU and performing second security processing; the first protocol layer entity processes the first SDU according to the first sequence number.
[0024] In one possible design, the first protocol layer entity is associated with M logical channels, where M is an integer greater than 1; the first protocol layer entity receives a first PDU, including: the first protocol layer entity receives the first PDU through a first logical channel among the M logical channels; the method further includes: the first protocol layer entity receives a second PDU through a second logical channel among the M logical channels, the second PDU being the same as or different from the first PDU.
[0025] In one possible design, the first header may also include first information indicating that the first PDU is a data PDU.
[0026] In one possible design, the method further includes: the first protocol layer entity receiving a third PDU, the third PDU including a second header and a second payload, the second header including a second sequence number and second information, the second sequence number being used to reassemble the second payload, and the second information being used to indicate that the third PDU is a control PDU.
[0027] In one possible design, the range of values for the second serial number does not overlap with the range of values for the first serial number.
[0028] In one possible design, the method further includes: a third protocol layer entity of the second communication device receiving a fifth PDU, the fifth PDU including a third header and a third payload, the third payload being a fourth PDU or a segment of the fourth PDU, the fourth PDU being a control PDU, the third header including a third sequence number used to reassemble the fourth PDU; and the third protocol layer entity delivering the fourth PDU to the first protocol layer entity.
[0029] In one possible design, the value range of the third serial number does not overlap with the value range of the first serial number.
[0030] In one possible design, the third protocol layer entity submits the fourth PDU to the first protocol layer entity, comprising: the third protocol layer entity submitting the fourth PDU to the first protocol layer entity based on the identification information of the first protocol layer entity included in the third header.
[0031] It is understood that the communication method provided in the second aspect corresponds to that in the first aspect, and the beneficial effects of the relevant technical features in the second aspect can be referred to the description in the first aspect.
[0032] Thirdly, this application provides a communication device that has the functions involved in the first or second aspect above. For example, the communication device includes modules, units, or means corresponding to the operations involved in the first or second aspect above. The functions, units, or means can be implemented by software, or by hardware, or by hardware executing corresponding software.
[0033] In one possible design, the communication device includes a processing unit and a communication unit, wherein the communication unit can be used to transmit and receive signals to enable communication between the communication device and other devices; the processing unit can be used to perform some internal operations of the communication device. The functions performed by the processing unit and the communication unit can correspond to the operations involved in the first or second aspect described above.
[0034] In one possible design, the communication device includes a processor that can be coupled to a memory. The memory can store necessary computer programs or instructions for implementing the functions described in the first or second aspect above. The processor can execute the computer programs or instructions stored in the memory, causing the communication device to implement the methods in any possible design or implementation of the first or second aspect above, when executed.
[0035] In one possible design, the communication device includes a processor and a memory, the memory of which may store necessary computer programs or instructions for implementing the functions involved in the first or second aspect described above. The processor may execute the computer programs or instructions stored in the memory, and when the computer programs or instructions are executed, cause the communication device to implement the methods in any possible design or implementation of the first or second aspect described above.
[0036] In one possible design, the communication device includes a processor and an interface circuit, wherein the processor is configured to communicate with other devices via the interface circuit and execute the methods in any possible design or implementation of the first or second aspect described above.
[0037] Understandably, in the third aspect described above, the processor can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, integrated circuit, etc.; when implemented in software, the processor can be a general-purpose processor that reads software code stored in memory. Furthermore, there can be one or more processors, and one or more memories. The memory can be integrated with the processor or separated from it. In specific implementations, the memory 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 processor.
[0038] Fourthly, this application provides a communication system, which may include a first communication device and a second communication device; wherein the first communication device is used to perform the method described in the first aspect, and the second communication device is used to perform the method described in the second aspect.
[0039] Fifthly, this application provides a computer-readable storage medium storing a computer program (or computer-readable instructions) in which, when a computer reads and executes some or all of the computer-readable instructions, the method in any of the possible designs of the first or second aspect described above is executed.
[0040] For example, a computer-readable storage medium can be any available medium that a computer can access. This includes, but is not limited to, non-transient computer-readable media, random-access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), CD-ROM or other optical disc storage, magnetic disk storage media, or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer.
[0041] Sixthly, this application provides a computer program product that, when read and executed by a computer, causes the method in any of the possible designs of the first or second aspect to be performed.
[0042] In a seventh aspect, this application provides a chip (or chip system) including a processor coupled to a memory storing a computer program; the processor is configured to invoke part or all of the computer program in the memory, such that the method in any of the possible designs of the first or second aspect described above is executed. Attached Figure Description
[0043] Figure 1 is a schematic diagram of the architecture of the communication system used in the embodiments of this application;
[0044] Figure 2A is a schematic diagram of the user plane protocol stack provided in an embodiment of this application;
[0045] Figure 2B is a schematic diagram of the functions implemented by the CU and DU provided in the embodiments of this application;
[0046] Figure 3 is a schematic diagram of SDUs and PDUs of different protocol layers provided in the embodiments of this application;
[0047] Figure 4A is a schematic diagram of a useless data transmission provided in an embodiment of this application;
[0048] Figure 4B is a schematic diagram of another type of useless data transmission provided in an embodiment of this application;
[0049] Figure 5 is a schematic diagram of protocol layer 1 and protocol layer 2 provided in an embodiment of this application;
[0050] Figure 6A is a functional schematic diagram of the L2 aggregation layer provided in an embodiment of this application;
[0051] Figure 6B is a schematic diagram of the functional division of the L2 aggregation layer in the CU-DU separation architecture provided in the embodiment of this application;
[0052] Figure 7A is a flowchart of the communication method provided in Embodiment 1 of this application;
[0053] Figure 7B is a schematic diagram of copy / distribution transmission provided in an embodiment of this application;
[0054] Figure 8 is a flowchart corresponding to the communication method provided in Embodiment 2 of this application;
[0055] Figure 9 is a flowchart corresponding to the communication method provided in Embodiment 3 of this application;
[0056] Figure 10 is a schematic diagram of the L2 entity and C-L2 entity provided in the embodiments of this application;
[0057] Figure 11 is a possible exemplary block diagram of the apparatus involved in the embodiments of this application;
[0058] Figure 12 is a schematic diagram of the structure of a communication device provided in an embodiment of this application. Detailed Implementation
[0059] The technical solutions in the embodiments of this application will now be described with reference to the accompanying drawings. This application will focus on various aspects, embodiments, or features of a system that may include multiple devices, components, modules, etc. It should be understood and appreciated that each system may include additional devices, components, modules, etc., and / or may not include all the devices, components, modules, etc. discussed in conjunction with the accompanying drawings. Furthermore, combinations of these solutions may also be used.
[0060] In the embodiments of this application, words such as "exemplarily" and "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design scheme described as an "example" in this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of the term "example" is intended to present concepts in a concrete manner. In the embodiments of this application, "of," "corresponding, relevant," and "corresponding" may sometimes be used interchangeably, and it should be noted that their intended meanings are consistent unless their distinction is emphasized.
[0061] The technical solutions of this application can be applied to various wireless communication systems, such as Universal Mobile Telecommunications System (UMTS), Wireless Local Area Network (WLAN), short-range wireless communication systems (such as sidelink, wireless fidelity, Wi-Fi, Bluetooth, etc.), wired networks, vehicle-to-everything (V2X) communication systems, device-to-device (D2D) communication systems, vehicle-to-everything (V2X) communication systems, 4th generation (4G) mobile communication systems (such as Long Term Evolution (LTE) systems), LTE Frequency Division Duplex (FDD) systems, LTE Time Division Duplex (TDD) systems, Worldwide Interoperability for Microwave Access (WiMAX) communication systems, 5th generation (5G) mobile communication systems (such as New Radio (NR) systems), future communication systems, or other similar communication systems, without limitation. This application describes the communication system shown in Figure 1 as an example. When applying the technical solution of this application to other communication systems, the devices, components, modules, etc. in the embodiment can be replaced with corresponding devices, components, modules in other communication systems without limitation.
[0062] Figure 1 is a schematic diagram of the architecture of the communication system applied in the embodiments of this application. As shown in Figure 1, the communication system includes an access network 100. Optionally, the communication system may also include a core network 200 and an Internet 300. The access network 100 may include at least one network device, such as 110a and 110b in Figure 1, and may also include at least one terminal device, such as 120a-120j in Figure 1. Specifically, 110a is a base station, 110b is a micro-station, 120a, 120e, 120f, and 120j are mobile phones, 120b is a car, 120c is a fuel dispenser, 120d is a home access point (HAP) deployed indoors or outdoors, 120g is a laptop computer, 120h is a printer, and 120i is a drone. The same terminal device or network device can provide different functions in different application scenarios. For example, the mobile phones in Figure 1 are 120a, 120e, 120f and 120j. Mobile phone 120a can access base station 110a, connect to car 120b, communicate directly with mobile phone 120e and access HAP. Car 120b can access HAP and communicate directly with mobile phone 120a. Mobile phone 120f can access micro-station 110b, connect to laptop 120g and printer 120h. Mobile phone 120j can control drone 120i.
[0063] (1) Network equipment
[0064] A network device is a network-side device with wireless transceiver capabilities. A network device can be a device in a radio access network (RAN) that provides wireless communication capabilities to terminal devices; this is called RAN equipment. The RAN can be an access network within the 3rd Generation Partnership Project (3GPP), such as 4G, 5G, or future-oriented 6G networks. The RAN can also be an open access network (O-RAN or ORAN), a cloud radio access network (CRAN), or a communication network combining two or more of these.
[0065] RAN equipment can also be a base station, an evolved NodeB (eNodeB), a transmission reception point (TRP), a next-generation NodeB (gNB) in a 5G mobile communication system, a base station in a 6G mobile communication system, a base station in a future mobile communication system, or an access node in a WiFi system, etc.
[0066] RAN equipment can also be modules or units that perform some of the functions of a base station. For example, it can be a central unit (CU), a distributed unit (DU), or a radio unit (RU). CU and DU can be set up separately or included in the same network element, such as a baseband unit (BBU). RU can be included in radio frequency equipment or radio frequency units, such as a remote radio unit (RRU), an active antenna unit (AAU), or a remote radio head (RRH). CU, DU, or RU may have different names in different systems, but those skilled in the art will understand their meaning. For example, in an ORAN system, CU can also be called O-CU (open CU), DU can also be called O-DU, and RU can also be called O-RU. Any of the units among CU (or CU-CP, CU-UP), DU, and RU in this application can be implemented through software modules, hardware modules, or a combination of software and hardware modules. The RA device can be a macro base station (as shown in Figure 1, 110a), a micro base station or an indoor station (as shown in Figure 1, 110b), or a relay node or donor node, etc. The embodiments of this application do not limit the specific technology or device form used in the network equipment.
[0067] In the embodiments of this application, the functions of the network device can be executed by modules (such as chips) within the network device, or by a control subsystem that includes the functions of the network device. This control subsystem, which includes the functions of the network device, can be a control center in the aforementioned application scenarios such as smart grids, industrial control, intelligent transportation, and smart cities.
[0068] (2) Terminal equipment
[0069] A terminal device is a user-side device with wireless transceiver capabilities. Terminal devices can also be called terminals, user equipment (UE), mobile stations, mobile terminals, etc. Terminal devices can be widely used in various scenarios, such as device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), the Internet of Things (IoT), virtual reality, augmented reality, industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearables, intelligent transportation, and smart cities. Terminal devices can be mobile phones, tablets, computers with wireless transceiver capabilities, wearable devices, vehicles, drones, helicopters, airplanes, ships, robots, robotic arms, smart home devices, etc. In the embodiments of this application, the device used to implement the functions of the terminal device can be the terminal device itself, or it can be a device that supports the terminal device in implementing that function, such as a chip system or a combination of devices or components that can implement the functions of the terminal device. This device can be installed in the terminal device. The embodiments of this application do not limit the specific technology or specific device form used in the terminal device.
[0070] In this embodiment of the application, the functions of the terminal device can also be performed by modules (such as chips or modems) in the terminal device, or by a device that includes the functions of the terminal device.
[0071] Network devices and terminal devices can be fixed in location or mobile. They can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; they can also be deployed on water; and they can also be deployed in the air on airplanes, balloons, and artificial satellites. The embodiments of this application do not limit the application scenarios of the network devices and terminal devices.
[0072] The roles of network devices and terminal devices can be relative. For example, the helicopter or drone 120i in Figure 1 can be configured as a mobile network device. For terminal devices 120j that access the wireless access network 100 via 120i, terminal device 120i is a network device; however, for network device 110a, 120i is a terminal device. That is, 110a and 120i communicate via a wireless air interface protocol. Of course, 110a and 120i can also communicate via a network device-to-network device interface protocol. In this case, relative to 110a, 120i is also a network device. Therefore, both network devices and terminal devices can be collectively referred to as communication devices. 110a and 110b in Figure 1 can be called communication devices with network device functions, and 120a-120j in Figure 1 can be called communication devices with terminal device functions.
[0073] Network devices and terminal devices, network devices and network devices, and terminal devices and terminal devices can communicate through licensed spectrum, unlicensed spectrum, or both simultaneously, without limitation.
[0074] The network architecture and business scenarios described in this application are intended to more clearly illustrate the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.
[0075] In the communication system shown in Figure 1, the communication between the terminal device and the network device follows a certain protocol layer structure. For example, the protocol layer structure used for data transmission between the terminal device and the network device is called the user plane protocol stack, and the protocol layer structure used for control signaling transmission between the terminal device and the network device is called the control plane protocol stack. In this embodiment, the user plane protocol stack will be mainly used as an example for description, and the control plane protocol stack can be described with reference to the user plane protocol stack.
[0076] (1) User plane protocol stack
[0077] Taking an NR communication system as an example, Figure 2A is a schematic diagram of the NR user plane protocol stack. As shown in Figure 2A, the NR user plane protocol stack includes the SDAP layer, PDC layer, RLC layer, MAC layer, and PHY.
[0078] The SDAP layer's primary function is to map Quality of Service (QoS) flows to the Data Radio Bearer (DRB). Each DRB can correspond to a set of functional entities, which may include a PDCP layer entity, at least one RLC layer entity corresponding to the PDCP layer entity, at least one MAC layer entity corresponding to the at least one RLC layer entity, and at least one physical layer entity corresponding to the at least one MAC layer entity. Data can be transmitted between RLC layer entities and their corresponding MAC layer entities via a logical channel (LCH).
[0079] PDCP layer: Located between SDAP layer and RLC layer, it provides message forwarding functions for user plane / control plane, security processing functions (encryption / decryption, integrity protection / verification), header compression / data compression, timed discarding, reordering, and in-order delivery.
[0080] The RLC layer, located between the PDCP and MAC layers, provides functions such as data transmission, segmentation / reassembly, automatic repeat-request (ARQ), and repeatability detection. The RLC layer has three modes: transparent mode (TM), unacknowledged mode (UM), and acknowledged mode (AM). TM mode is used to transmit data from the signal radio bearer (SRB) 0, paging data, and broadcast system messages. These messages cannot be segmented, and the data is transparently transmitted through the RLC layer. UM mode is suitable for real-time services with high latency requirements and high tolerance for errors. Once a data packet is transmitted through the UM RLC entity, the transmission is considered complete; even if the data packet is lost during air interface transmission, the RLC layer will not retransmit it. AM mode is suitable for non-real-time services with high reliability requirements, such as web browsing, file downloads, and signaling transmission; these services need to minimize data transmission loss. The AM RLC layer entity uses the ARQ mechanism to ensure lossless data transmission. The basic idea of ARQ is that the receiving RLC layer entity can send an RLC status report (through the RLC control PDU) to the sending side, indicating which data packets were successfully received and which data packets failed to be received. The sending RLC layer entity can retransmit the failed data packets based on the RLC status report.
[0081] MAC layer: Its main functions include resource selection, scheduling information reporting, MAC service data unit (SDU) multiplexing and demultiplexing, and hybrid automatic repeat request (HARQ) transmission of data packets.
[0082] PHY layer: Located at the bottom of the air interface protocol stack, it is mainly responsible for encoding, modulation, multi-antenna processing, and time-frequency resource mapping.
[0083] Furthermore, based on the user plane protocol stack shown in Figure 2A, in the CU-DU separation architecture, as shown in Figure 2B, the CU can implement the functions of the SDAP layer and PDCP layer, the DU can implement the functions of the RLC layer and MAC layer, and can also implement some or all of the physical layer functions.
[0084] (2) Protocol layer processing
[0085] Based on the user plane protocol stack shown in Figure 2A, taking downlink data transmission as an example, from the perspective of network devices, downlink data can be processed in various layers of the network device. Data received by a certain layer from the upper layer is regarded as the SDU of that layer. After processing, it becomes a protocol data unit (PDU) and is then passed to the next layer.
[0086] For example, as shown in Figure 3, the data received by the PDCP layer entity from the upper layer (such as the SDAP layer) can be called a PDCP SDU. After processing the PDCP SDU, the PDCP layer entity obtains a PDCP PDU and submits it to the RLC layer entity. For example, the processing of the PDCP SDU by the PDCP layer entity can refer to: the PDCP layer entity associating a PDCP count value (COUNT) with the PDCP SDU, and performing a first security processing on the PDCP SDU according to the PDCP COUNT (for example, using the PDCP COUNT as the input parameter of the security algorithm corresponding to the first security processing, which can be encryption and / or integrity protection), and then adding a PDCP header to encapsulate it into a PDCP PDU; correspondingly, the PDPC entity on the receiving side performs a second security processing on the PDCP SDU according to the PDCP COUNT (for example, using the PDCP COUNT as the input parameter of the security algorithm corresponding to the second security processing, which can be decryption and / or integrity verification). In other words, the PDCP COUNT is used for the secure processing of PDCP SDUs. The specific implementation of the PDCP layer entity's secure processing of PDCP SDUs based on the PDCP COUNT refers to existing technologies and will not be elaborated further. The PDCP header includes the PDCP sequence number (SN), and may also include other possible information, which is not specifically limited. The PDCP SN is a subset of the bits in the PDCP COUNT, such as the lower 12 bits or the lower 18 bits.
[0087] The PDCP PDU received by the RLC layer entity from the PDCP layer can be called an RLC SDU. After processing the RLC SDU, the RLC layer entity obtains an RLC PDU and submits it to the MAC layer through a logical channel. For example, the RLC layer entity processing the RLC SDU can mean that: the RLC layer entity associates an RLC SN with the RLC SDU, and then adds an RLC header to encapsulate it into an RLC PDU. The RLC header includes the RLC SN. If the RLC SDU needs to be segmented, the multiple RLC PDUs formed after segmentation will have the same RLC SN. For example, RLC PDU1 includes one segment of the RLC SDU, and RLC PDU2 includes another segment of the RLC SDU. RLC PDU1 and RLC PDU2 have the same RLC SN. Accordingly, the RLC layer entity on the receiving side can reassemble the segments of the RLC SDU in RLC PDU1 and the RLC SDU in RLC PDU2 into an RLC SDU based on the RLC SN. In other words, the RLC SN is used for RLC SDU segmentation / reassembly.
[0088] After receiving the RLC PDU from the RLC layer, the MAC layer entity can generate a MAC PDU and submit it to the physical layer. The physical layer can then pass the MAC PDU to the physical layer of the terminal device through a transport block.
[0089] From the perspective of the terminal device, after the physical layer of the terminal device receives the transport block from the network device, it can sequentially pass it up the layers, where corresponding decapsulation and encapsulation can be performed. In other words, the processing performed by each layer in the terminal device is the reverse process of the processing performed by each layer in the network device.
[0090] (3) Timed discard function on the sending side
[0091] Based on the user plane protocol stack shown in Figure 2A, the PDCP layer on the sending side can perform packet loss operations; for downlink, the sending side is the network device, and for uplink, the sending side is the terminal device. Specifically, when the PDCP layer receives a PDCP SDU from the upper layer, it starts the discard timer associated with that PDCP SDU. When the discard timer expires, the PDCP layer discards the PDCP SDU and its corresponding PDCP PDU. If the PDCP PDU has already been delivered to the lower layer (such as the RLC layer) for processing, it will instruct the RLC layer to discard it.
[0092] After receiving the instruction from the PDCP layer to discard an RLC SDU (i.e., a PDCP PDU), if the corresponding RLC SDU or its segment has not been delivered to the lower layer for transmission, the RLC layer will discard the RLC SDU; otherwise, the RLC layer cannot discard the RLC SDU and must continue the transmission / retransmission of the RLC SDU.
[0093] (4) Reordering function on the receiving side
[0094] When the PDCP layer on the sending side discards a data packet, the PDCP layer on the receiving side may experience a reception gap because it did not receive the data packet. Specifically, for downlink, the receiving side is the terminal device, and for uplink, the receiving side is the network device.
[0095] For example, the receiving PDCP layer receives data packets 1 and 2 and normally forwards them to the upper layer. Then, the receiving PDCP layer receives data packets 4 and 5. Since data packet 3 was not received, a gap is created. At this point, the receiving PDCP layer will not immediately forward data packet 4. Instead, it will start a reordering timer (T-Reordering). During the timer's operation, if the receiving PDCP layer receives data packet 3, it can forward data packets 3, 4, and 5. Otherwise, it will only forward data packets 4 and 5 after the timer expires. Furthermore, even if the receiving PDCP layer receives data packet 3 after the reordering timer expires, it will discard data packet 3.
[0096] (5) ARQ function of AM RLC
[0097] For highly reliable but latency-insensitive services, network devices can be configured to use AM RLC for data transmission and configure the maximum number of AM ARQ retransmissions. If the ARQ retransmission count of an RLC SDU (or a segment of an RLC SDU) reaches the pre-configured maximum number of retransmissions, a radio link failure (RLF) will be triggered. Further, the terminal device will trigger a radio resource control (RRC) connection re-establishment process.
[0098] Regarding the NR user plane protocol stack described above, research has revealed that the NR user plane protocol stack may have the following problems.
[0099] Question 1: The user plane protocol stack includes multiple protocol layers, and data needs to be processed in multiple protocol layers. Each protocol layer adds a corresponding header, which results in a large overhead for the header.
[0100] Question 2: The ARQ function, packet dropping function, and reordering function are implemented by different protocol layers and are decoupled from each other. This makes it difficult for the RLC layer to control the number of ARQ retransmissions according to the actual packet delay budget (PDB) of the service data. Therefore, when facing immersive communication services with high throughput and high reliability requirements, there may be invalid or useless data transmission.
[0101] For example, as shown in Figure 4A, the discard timer associated with the data packet X (e.g., data packet X is a PDCP SDU) of the PDCP layer entity on the sending side times out, triggering PDCP layer packet loss. However, since the lower-layer data packet has already been sent out, the air interface transmission of the data packet cannot be terminated. As a result, the data packet may continue to undergo RLC ARQ transmission (and HARQ transmission) on the air interface. However, the air interface transmission at this time is useless, which not only wastes air interface resources, but also causes the receiving side to submit the timed-out data packet to the upper layer.
[0102] For example, as shown in Figure 4B, when the reordering timer of the PDCP layer entity on the receiving side times out, it triggers the PDCP layer entity on the receiving side to update the receiving window. Data packets that fall outside the receiving window (such as data packet X) have timed out and are useless. However, the lower-level RLC ARQ (and HARQ) cannot terminate the retransmission of data packets, which will lead to the transmission of useless data, waste resources, and hinder the timely transmission of subsequent data packets.
[0103] Question 3: The PDCP layer supports retransmission based on the PDCP SN, mainly used to retransmit data packets that failed to be transmitted successfully over the air interface during handover scenarios; the RLC layer supports retransmission based on the RLC SN (i.e., ARQ), mainly used to retransmit data packets that failed to be transmitted successfully under the underlying HARQ. Both PDCP and RLC layer retransmissions are triggered by status reports to retransmit SDUs. Although PDCP and RLC layer retransmissions are used in different scenarios, retransmission functionality needs to be implemented separately in both layers during terminal development, which increases implementation complexity.
[0104] Based on this, this application embodiment will study the architecture design of the user plane protocol stack. For example, this application embodiment merges the RLC layer and the PDCP layer, that is, implements the functions of the RLC layer and the PDCP layer through an aggregated protocol layer, thereby simplifying the architecture design of the user plane protocol stack, achieving tight coupling between the RLC layer and the PDCP layer, and facilitating more efficient support for immersive communication services.
[0105] The relevant terms or technical features involved in the embodiments of this application are explained herein in order to make the embodiments of this application easier to understand, and should not be regarded as a strict limitation of the terms in the scope of protection claimed by this application.
[0106] (1) First communication device and second communication device
[0107] The communication method provided in this application relates to a first communication device, and optionally, also to a second communication device. The first communication device is the sending side of data packets, which can be SDUs or SDU segments, or PDUs, without limitation. For example, the first communication device can be a network device or a component of a network device, such as a chip or chip system disposed in the network device, or it can be a terminal device or a component of a terminal device, such as a chip or chip system disposed in the terminal device. The second communication device is the receiving side of data packets. For example, the second communication device can be a network device or a component of a network device, or it can be a terminal device or a component of a terminal device.
[0108] For example, the first communication device is a terminal device or a component of a terminal device, and the second communication device is a network device or a component of a network device; or, the first communication device is a network device or a component of a network device, and the second communication device is a terminal device or a component of a terminal device.
[0109] (2) First protocol layer entity, second protocol layer entity and third protocol layer entity
[0110] The communication method provided in this application involves at least one protocol layer entity, such as a first protocol layer entity, a second protocol layer entity, and / or a third protocol layer entity. The first and third protocol layer entities can be located at protocol layer 1, and the second protocol layer entity can be located at protocol layer 2. Protocol layer 1 is located above protocol layer 2. Protocol layer 1 is located between the SDAP layer and the MAC layer, as shown in Figure 5. Protocol layer 1 can be called an aggregation layer, a layer 2 (L2) aggregation layer, or a combined layer, etc. For example, protocol layer 1 is an aggregation layer of the PDCP layer and the RLC layer, possessing all or part of the functions of the PDCP layer and the RLC layer. Data received by protocol layer 1 from the upper layer can be called an L2 SDU, and the processed PDU can be called an L2 PDU. Protocol layer 2 can possess all or part of the functions of the MAC layer; for example, protocol layer 2 can be a MAC layer. In this application embodiment, "protocol layer 1 is an L2 aggregation layer, and protocol layer 2 is a MAC layer" will be used as an example for description. In future communication systems, protocol layer 1 and protocol layer 2 can also have other possible names, and are not specifically limited.
[0111] For example, the L2 aggregation layer may include at least one L2 entity, and optionally, a control-L2 entity (C-L2 entity). The first protocol layer entity may be one of the at least one L2 entity, and the third protocol layer entity may be a C-L2 entity. Each L2 entity may correspond to a DRB, for example, the first protocol layer entity may correspond to a first DRB. The MAC layer may include at least one MAC layer entity, and the second protocol layer entity may be one of the at least one MAC layer entities.
[0112] In this context, L2 entities (or C-L2 entities) and their corresponding MAC layer entities can transmit data through logical channels. Optionally, each L2 entity (or C-L2 entity) can be associated with one or more logical channels; when an L2 entity (or C-L2 entity) is associated with multiple logical channels, these multiple logical channels can be used to transmit the same data packets, i.e., duplicate transmission, or they can be used to transmit different data packets, i.e., split transmission.
[0113] (3) Function of L2 aggregation layer
[0114] The following section, with reference to Figure 6A, introduces some possible functions of the L2 aggregation layer when it is used as a transmitting or receiving side.
[0115] For example, when acting as the transmitting side, the L2 aggregation layer may have one or more of the following functions:
[0116] a1. Assign L2 SN or L2 COUNT: Assign the corresponding L2 SN or L2 COUNT to each L2 SDU submitted from the upper layer, and start a discard timer for the L2 SDU. When the discard timer of the L2 SDU expires, the L2 SDU and its associated PDU are discarded.
[0117] a2, Compression: Compression includes header compression and data compression. For example, L2 data PDUs can be compressed, as can L2 control PDUs. Specific details can be found in existing technologies. L2 data PDUs include L2 SDUs received from the upper layer, while L2 control PDUs are generated by the L2 control function unit.
[0118] a3, Security processing: Security processing may include encryption and / or integrity protection, as detailed in existing technologies.
[0119] a4, Flexible ARQ Control: Can achieve at least one of the following operations: Terminate L2 retransmission of the L2 SDU / SDU segment when the L2 SDU discard timer times out; The transmitting side is configured with a maximum L2 retransmission count X for each L2 SDU / SDU segment, and terminates L2 retransmission of the L2 SDU / SDU segment when the retransmission count of an L2 SDU / SDU segment at the L2 aggregation layer reaches X times; Terminate L2 retransmission of the L2 SDU / SDU segment when an L2 status report is received from the receiving side's L2 aggregation layer, indicating that the L2 SDU / SDU segment has been successfully received.
[0120] a5, Send Window Management: Used to control which L2 SDUs can be transmitted. When the elastic ARQ control function is configured, if an L2 SDU is submitted to the send queue, it can also be placed in the retransmission buffer.
[0121] a6, Send queue management: The send queue is a buffer queue used to store L2 SDUs to be transmitted.
[0122] a7, Retransmission Buffer: The retransmission buffer is a buffer queue used to store L2 SDUs to be retransmitted.
[0123] a8, L2 control: Generates L2 control PDUs based on the requirements of the L2 aggregation layer. If robust header compression (ROHC) is configured, RoHC feedback control messages can be generated.
[0124] a9, Segmentation: Segment the L2 SDU as needed and combine it into an L2 PDU for transmission to the lower layer.
[0125] It is understood that the functions a1 to a9 listed above are only some possible examples. When used as the sending side, the L2 aggregation layer may also have other possible functions, which are not limited in this application embodiment.
[0126] For example, when acting as the receiving side, the L2 aggregation layer can have one or more of the following functions:
[0127] b1, Routing: Based on the type of the L2 PDU submitted by the MAC layer, the corresponding L2 PDU is handed over to the appropriate functional unit for processing. For example, if the type of L2 PDU is L2 control PDU, it can be handed over to the L2 control functional unit for processing; or, if the type of L2 PDU is L2 data PDU, it can be handed over to the receive buffer functional unit (or the reassembly / deduplication functional unit) for processing.
[0128] b2, L2 control: Processes the received L2 control PDU.
[0129] b3, Receive Buffer: Buffers the received L2 SDU segments.
[0130] b4, Reassembly / Deduplication: Reassembly or deduplication function for received L2 SDU segments.
[0131] b5, Decompression: The decompression function can include header decompression / data decompression, and the specifics can be found in existing technologies.
[0132] b6, Security processing: Security processing may include decryption and / or integrity verification, as detailed in existing technologies.
[0133] b7, Reordering: Reorders out-of-order received L2 SDUs and delivers them to the upper layer in sequence. As one possible implementation, the receiving L2 aggregation layer can start a reordering timer after detecting an out-of-order L2 SDU. After the reordering timer expires, it triggers an L2 status report to the sending side. The L2 status report indicates the reception status of the L2 SDU, such as using a negative acknowledgement (NACK) field to indicate the sequence number of an unsuccessfully received L2 SDU. As another possible implementation, the network device can be configured to consider an L2 SDU or L2 SDU segment successfully received after a specified number of NACK messages have been sent, and thus no longer wait to receive the data packet.
[0134] It is understood that the functions b1 to b7 listed above are only some possible examples. When acting as the receiving side, the L2 aggregation layer may also have other possible functions, which are not limited in this application embodiment.
[0135] Furthermore, the embodiments of this application do not limit the execution order of various functions. For example, when acting as a receiving side, the reorganization or deduplication function of the L2 aggregation layer can be executed before or after the receiving buffer function; the security processing function can be executed before or after the reordering function.
[0136] (4) Implementation of the L2 aggregation layer function in the CU-DU separation architecture
[0137] For the CU-DU separation architecture, when acting as the transmitting side, some functions of the L2 aggregation layer can be implemented on the CU, while other functions can be implemented on the DU, for example, by using any of the following splitting methods a1 or a2.
[0138] Mode a1: Send queue management and segmentation functions (i.e., functions a6 and a9) are implemented in DU, while other functions (such as functions a1 to a5, a7 and a8) are implemented in CU.
[0139] In this implementation, the L2 aggregation layer functions on the CU can be collectively referred to as L2-high layer (HL) functions, and the L2 aggregation layer functions on the DU can be collectively referred to as L2-low layer (LL) functions. The L2-HL function entity can generate L2-HL PDUs without segmentation and submit them to the DU; the L2-LL function entity on the DU can modify the header of the L2-PDU as needed. For example, when segmentation is required, the L2PDU is segmented, and segmentation information and other fields are added to the header of the L2-PDU to generate the final L2-PDU.
[0140] Optionally, when the L2-HL functional entity delivers the compressed / secured L2 PDU to the L2-LL functional entity, a data / control (D / C) field (or priority field) can be carried on the CU-DU interface. The L2-LL functional entity will prioritize the L2-PDU delivered by the L2-HL functional entity based on this field, such as managing the position of the L2-PDU in the transmission queue.
[0141] Method a2: The allocation of L2 SN or L2 COUNT, compression, security processing, and some L2 control functions are implemented in CU, while other functions are implemented in DU.
[0142] For the CU-DU separation architecture, when acting as the receiving side, some or all of the functions of the L2 aggregation layer can be implemented on the CU, while other functions can be implemented on the DU, for example, by using any of the following partitioning methods b1 to b3.
[0143] Method b1: All functions are implemented in the CU.
[0144] Method b2: Decompression and / or security processing, as well as some L2 control functions, are implemented in the CU, while other functions are implemented in the DU.
[0145] Method b3: Decompression, reordering, security processing, and some L2 control functions are implemented in the CU, while other functions are implemented in the DU.
[0146] In this embodiment of the application, after introducing the L2 aggregation layer, the L2 aggregation layers on the transmitting and receiving sides can be flexibly partitioned under the CU-DU separation architecture. For example, the L2 aggregation layers on the transmitting and receiving sides can be partitioned asymmetrically. When the transmitting side is used, the functional partitioning method of the L2 aggregation layer is method a1, and when the receiving side is used, the functional partitioning method of the L2 aggregation layer is method b1, as shown in Figure 6B.
[0147] The communication method provided in the embodiments of this application will be described in detail below with reference to Embodiments 1 to 3.
[0148] Example 1
[0149] Figure 7A is a flowchart illustrating the communication method provided in Embodiment 1 of this application. As shown in Figure 7A, the process may include:
[0150] S701, the first protocol layer entity of the first communication device generates the first PDU.
[0151] The first PDU includes a first header and a first payload. The first payload is the first SDU or a segment of the first SDU. The first header includes a first sequence number, which is either L2 SN or L2 COUNT. The L2 SN is associated with the L2 COUNT; for example, the L2 SN is a subset of the bits of the L2 COUNT, such as the lower 12 bits or the lower 18 bits. The first sequence number can also be replaced with other possible names, such as first numerical value, first value, or first sequence value. There is no specific limitation. Other sequence numbers mentioned below can refer to the description of the first sequence number.
[0152] From the perspective of the first communication device, the first serial number is used to segment the first SDU and perform first security processing, such as encryption and / or integrity protection. That is, the first communication device can segment the first SDU and perform first security processing based on the first serial number. For example, regarding segmentation: if the first communication device divides the first SDU into segment 1 and segment 2, then segment 1 and segment 2 of the first SDU can be associated with the same serial number (e.g., associated with the first serial number). When the first PDU includes segment 1 of the first SDU and the second PDU includes segment 2 of the first SDU, the serial numbers of both the first PDU and the second PDU are the first serial number. Furthermore, regarding first security processing: the first communication device can perform encryption and / or integrity protection on the first SDU based on the first serial number (e.g., using the first serial number as an input parameter for the security algorithm corresponding to encryption and / or integrity protection). Specific implementations can refer to existing technologies.
[0153] The first serial number is used to segment and perform first security processing on the first SDU, including: the first serial number itself is used to segment and perform first security processing on the first SDU, or the information associated with the first serial number is used to segment and perform first security processing on the first SDU.
[0154] As one possible implementation, the first packet header includes an L2 SN and a first sequence number used for segmenting the first SDU and performing first security processing. This could mean that the L2 SN is used for segmenting the first SDU and performing first security processing.
[0155] As another possible implementation, the first packet header includes an L2 COUNT and a first sequence number used for segmenting the first SDU and performing first security processing. This could mean that the L2 COUNT is used for segmenting the first SDU and performing first security processing.
[0156] As another possible implementation, the first packet header includes an L2 SN and a first sequence number used for segmenting the first SDU and performing first security processing. This could mean that the L2 SN is used for segmenting the first SDU and the L2 COUNT associated with the L2 SN is used for performing first security processing on the first SDU.
[0157] As another possible implementation, the first packet header includes an L2 COUNT and a first sequence number used for segmenting the first SDU and performing first security processing. This could mean that the L2 SN associated with the L2 COUNT is used for segmenting the first SDU, and the L2 COUNT is used for performing first security processing on the first SDU.
[0158] It is understandable that the first sequence number is used for segmentation and first security processing of the first SDU, indicating that the first sequence number can be used for segmentation and first security processing of the first SDU. Whether the first communication device uses the first sequence number to segment and process the first SDU depends on the specific implementation. For example, if the first communication device determines that segmentation of the first SDU is not required, then segmentation of the first SDU may not be performed, and / or, the first communication device may also choose not to perform the first security processing on the first SDU.
[0159] For example, the first SDU may be submitted to the first protocol layer entity by an upper layer (such as the SDAP layer). The first protocol layer entity corresponds to the first DRB. After the SDAP layer determines that the first SDU is mapped to the first DRB, it can submit the first SDU to the first protocol layer entity, and then the first protocol layer entity generates the first PDU based on the first SDU.
[0160] Optionally, in addition to the segmentation and first security processing mentioned above, the first protocol layer entity of the first communication device may also perform other possible processing on the first PDU, such as compression, etc. For specific implementation, please refer to the prior art. Furthermore, in addition to the segmentation and first security processing mentioned above, from the perspective of the first communication device, the first serial number may also have other possible functions, which are not specifically limited.
[0161] S702, the first protocol layer entity of the first communication device delivers the first PDU to the second protocol layer entity of the first communication device.
[0162] For example, a first protocol layer entity is associated with M logical channels, where M is an integer greater than 1. The first protocol layer entity can submit a first PDU to a second protocol layer entity through a first logical channel among the M logical channels. Optionally, the first protocol layer entity can submit a second PDU to the second protocol layer entity through a second logical channel among the M logical channels. The second PDU can be the same as the first PDU; in this case, the first protocol layer entity performs duplicate transmission through the first and second logical channels. Alternatively, the second PDU can be different from the first PDU; in this case, the first protocol layer entity performs split transmission through the first and second logical channels.
[0163] In other words, when the first communication device is configured with the copy / splitting function, the first protocol layer entity of the first communication device can, according to the configuration, perform data packet copying (i.e., copying the data packet at least twice and then submitting the copied data packet to different sending queues) or splitting (i.e., selecting a sending queue to submit the data packet).
[0164] For example, if the first communication device is a network device, then under the CU-DU separation architecture, the first protocol layer entity includes an L2-HL functional entity and M L2-LL functional entities associated with the L2-HL functional entity. Each L2-LL functional entity is configured with a transmission queue, corresponding to a segmentation function and a logical channel. Referring to Figure 7B, Figure 7B illustrates an example where the first protocol layer entity includes an L2-HL functional entity and two L2-LL functional entities associated with it. The L2-HL functional entity performs copy transmission or split transmission of data packets and delivers them to the corresponding L2-LL functional entity for processing (such as segmentation). The L2-LL functional entity then delivers the data packets to the second protocol layer entity of the first communication device through the corresponding logical channel.
[0165] S703, the first communication device sends a first PDU to the second communication device; correspondingly, the second communication device receives the first PDU.
[0166] For example, the second protocol layer entity of the first communication device encapsulates the first PDU into a MAC PDU and delivers the MAC PDU to the lower layer (such as the physical layer of the first communication device). Then, the physical layer of the first communication device sends the MAC PDU through a transport block. Correspondingly, after receiving the transport block, the physical layer of the second communication device parses the MAC PDU and delivers the MAC PDU to the second protocol layer of the second communication device. Then, the second protocol layer of the second communication device parses the MAC PDU to obtain the first PDU and delivers the first PDU to the first protocol layer of the second communication device.
[0167] For example, when the first communication device is configured with a copy / splitter function, the first protocol layer entity of the second communication device is configured to associate with multiple logical channels. After the MAC layer entity of the second communication device parses the MAC PDU to obtain the first PDU, it can deliver the first PDU to the first protocol layer entity through the corresponding logical channel.
[0168] S704, the first protocol layer entity of the second communication device processes the first SDU according to the first serial number.
[0169] As described above, the first header of the first PDU includes a first serial number. From the perspective of the second communication device, the first serial number is used for reassembly and second security processing of the first SDU, such as decryption and / or integrity verification; that is, the second communication device can reassemble the first SDU and perform second security processing based on the first serial number. For example, regarding reassembly: the first PDU includes segment 1, and the second PDU includes segment 2. If the serial numbers of the first PDU and the second PDU are both the first serial number, then the second communication device can reassemble segment 1 contained in the first PDU and segment 2 contained in the second PDU into the first SDU; and regarding second security processing: the second communication device can perform decryption and / or integrity verification of the first SDU based on the first serial number (for example, using the first serial number as the input parameter of the security algorithm corresponding to decryption and / or integrity verification). Specific implementations can refer to existing technologies.
[0170] The first serial number is used for reassembly and second security processing of the first SDU, including: the first serial number itself is used for reassembly and second security processing of the first SDU, or the information associated with the first serial number is used for reassembly and second security processing of the first SDU.
[0171] As one possible implementation, the first header includes an L2 SN and a first sequence number used for reassembling the first SDU and performing second security processing. This could mean that the L2 SN is used for reassembling the first SDU and performing second security processing.
[0172] As another possible implementation, the first header includes an L2 COUNT and a first sequence number used for reassembling the first SDU and performing second security processing. This could mean that the L2 COUNT is used for reassembling the first SDU and performing second security processing.
[0173] As another possible implementation, the first header includes an L2 SN and a first sequence number used for reassembling the first SDU and performing second security processing. This could mean that the L2 SN is used for reassembling the first SDU and the L2 COUNT associated with the L2 SN is used for performing second security processing on the first SDU.
[0174] As another possible implementation, the first packet header includes an L2 COUNT, and the first sequence number is used for reassembling the first SDU and for second security processing. This could mean that the L2 SN associated with the L2 COUNT is used for reassembling the first SDU, and the L2 COUNT is used for second security processing of the first SDU.
[0175] It is understandable that the first serial number is used for reassembly and second security processing of the first SDU, indicating that the first serial number can be used for reassembly and second security processing of the first SDU. Whether the second communication device uses the first serial number for reassembly and second security processing of the first SDU depends on the specific implementation. For example, if the second communication device determines that the first PDU includes the complete first SDU, then there is no need to reassemble the first SDU, and / or the second communication device may not perform the second security processing on the first SDU. Therefore, the above-mentioned "processing the first SDU" can mean: after reassembling and / or performing the second security processing on the first SDU, submitting the first SDU to the upper layer; or, directly submitting the first SDU to the upper layer.
[0176] For example, if the second communication device is a network device, taking the second communication device using the first serial number to reassemble the first SDU and perform the second security processing as an example, under the CU-DU separation architecture, the first protocol layer entity includes an L2-HL functional entity and M L2-LL functional entities associated with the L2-HL functional entity. The L2-LL functional entity can reassemble the first SDU according to the first serial number, and after the reassembly is completed, the first SDU is submitted to the L2-HL functional entity, and then the L2-HL functional entity performs the second security processing on the first SDU according to the first serial number.
[0177] Optionally, in addition to the reassembly and second security processing mentioned above, the first protocol layer entity of the second communication device may also perform other possible processing on the first PDU, such as decompression, etc. For specific implementation, please refer to the prior art. Furthermore, in addition to the reassembly and second security processing mentioned above, from the perspective of the second communication device, the first serial number may also have other possible functions, such as being used for reordering, without any specific limitation.
[0178] Using the method in Embodiment 1 above, the first sequence number is used to segment / reassemble and perform security processing (first security processing / second security processing) on the first SDU. That is, the first sequence number has the functions of an RLC sequence number (for segmentation / reassembly) and a PDCP sequence number / count value (for security processing), thereby enabling the functions of the RLC layer and the PDCP layer to be implemented through an aggregated protocol layer, which simplifies the architecture of the user protocol stack and reduces packet header overhead.
[0179] When the functions of the RLC layer and the PDCP layer are implemented through an aggregated protocol layer, the ARQ function, packet dropping function, and reordering function can all be executed by the aggregated protocol layer. This facilitates tight coupling between different functions and reduces invalid or useless data transmission. For example, the first protocol layer entity of the first communication device can terminate the retransmission of the first PDU under the condition that a first condition is met. The first condition includes one or more of the following: the dropping timer corresponding to the first SDU times out (i.e., retransmission is terminated when the dropping timer times out, thereby reducing useless transmission as shown in Figure 4A); the number of retransmissions of the first SDU or its segments is greater than or equal to a threshold (i.e., retransmission can be terminated when the number of retransmissions exceeds the threshold, instead of triggering RLF, thereby avoiding frequent RLF triggering and service interruption); the first protocol layer entity receives a status report, which indicates that the first SDU or its segments have been successfully received. For example, the status report can be sent by the second communication device when the reordering timer times out (i.e., retransmission is terminated when the reordering timer times out, thereby reducing useless transmission as shown in Figure 4B).
[0180] When the functions of the RLC layer and the PDCP layer are implemented through an aggregated protocol layer, there is no need to implement retransmission functions separately in the PDCP layer and the RLC layer, which makes it easier to reduce the complexity of implementation.
[0181] When the functions of the RLC layer and the PDCP layer are implemented through an aggregated protocol layer, the aggregated protocol layer can associate multiple logical channels, thereby enabling duplicate transmission, which facilitates providing high reliability for services, or offloading transmission, making full use of the capacity of multiple underlying transmission links, improving transmission rate, and ensuring the transmission of high-speed services.
[0182] In the NR user plane protocol stack described above, the size of RLC control PDUs (such as RLC status reports) is variable. The RLC layer can flexibly generate RLC control PDUs based on the transmission opportunity size indicated by the MAC layer. Therefore, RLC control PDUs do not require segmentation and are not assigned sequence numbers. In the L2 aggregation layer architecture proposed in this application, L2 control PDUs may include RLC control PDUs and PDCP control PDUs. However, the size of the PDCP control PDU is immutable. Therefore, a mismatch between the size of the L2 control PDU and the transmission opportunity size will occur. Embodiments two and three will investigate how to transmit L2 control PDUs.
[0183] Example 2
[0184] Figure 8 is a flowchart illustrating the communication method provided in Embodiment 2 of this application. As shown in Figure 8, the process may include:
[0185] S801, the first protocol layer entity of the first communication device generates the third PDU.
[0186] The third PDU includes a second header and a second payload. The second header includes a second serial number and second information, with the second information indicating that the third PDU is a control PDU.
[0187] Furthermore, from the perspective of the first communication device, the second serial number is used to segment the second payload, which can be referred to in the description of "the first serial number is used to segment the first SDU".
[0188] Optionally, in addition to the segmentation mentioned above, the first protocol layer entity of the first communication device may also perform other possible processing on the first PDU, such as compression, etc. For specific implementation, please refer to the prior art. Furthermore, in addition to the segmentation mentioned above, from the perspective of the first communication device, the second serial number may also have other possible functions, which are not specifically limited.
[0189] S802, the first protocol layer entity of the first communication device delivers the third PDU to the second protocol layer entity of the first communication device.
[0190] For example, the first protocol layer entity of the first communication device is associated with M logical channels, and the first protocol layer entity of the first communication device can deliver a third PDU to the second protocol layer entity through one of the M logical channels.
[0191] Furthermore, the first protocol layer entity of the first communication device can be transmitted in duplicate or in split streams through M logical channels.
[0192] S803, the first communication device sends a third PDU to the second communication device; correspondingly, the second communication device receives the third PDU.
[0193] For example, the specific implementation of "the first communication device sending a third PDU to the second communication device" can refer to the description of "the first communication device sending a first PDU to the second communication device".
[0194] S804, the first protocol layer entity of the second communication device processes the second payload according to the second sequence number.
[0195] As described above, the third PDU includes a second serial number. From the perspective of the second communication device, the second serial number is used to reassemble the second payload.
[0196] It is understandable that the second serial number is used to reassemble the second payload, indicating that the second serial number can be used to reassemble the second payload. Whether the second communication device uses the second serial number to reassemble the second payload depends on the specific implementation. For example, if the second communication device determines that the second payload has not been segmented, then there is no need to reassemble the second payload. Therefore, the aforementioned "processing the second payload" can refer to: after reassembling the second payload, performing corresponding operations based on the control information in the second payload; or, directly performing corresponding operations based on the control information in the second payload.
[0197] Optionally, in addition to the reassembly mentioned above, the first protocol layer entity of the second communication device may also perform other possible processing on the third PDU, such as decompression, etc., and specific implementations can be found in the prior art. Furthermore, from the perspective of the second communication device, the second serial number may also have other possible functions besides the reassembly mentioned above, without any specific limitations.
[0198] By using the method in Embodiment 2 above, since the third PDU includes a second sequence number, which is used to segment the second payload, the L2 control PDU can be segmented and transmitted according to the size of the transmission opportunity, which helps to solve the problem of mismatch between the size of the L2 control PDU and the size of the transmission opportunity.
[0199] Furthermore, Embodiment 1 and Embodiment 2 can be implemented separately or in combination.
[0200] When Embodiment 1 and Embodiment 2 are implemented in combination, the first header of the first PDU mentioned above also includes first information, which is used to indicate that the first PDU is a data PDU. That is, when the first protocol layer entity of the first communication device generates a PDU, it can add a field (such as a D / C field) to the header of the PDU. The D / C field is used to indicate whether the PDU is a control PDU or a data PDU; the aforementioned first or second information can be carried in the D / C field. Furthermore, the transmission priority of the control PDU is higher than that of the data PDU. For example, after the first protocol layer entity generates a third PDU, it can insert the third PDU into the queue before the data PDUs in the transmission queue to wait for transmission.
[0201] When Embodiment 1 and Embodiment 2 are implemented in combination, the first protocol layer entity of the first communication device may allocate the sequence numbers of the data PDU and the control PDU in various ways.
[0202] As one possible implementation, the first protocol layer of the first communication device can assign sequence numbers independently based on the type of PDU. For example, the sequence number of a data PDU (such as the first sequence number) can range from 0 to X, and the sequence number of a control PDU (such as the second sequence number) can range from 0 to X. If the first protocol layer entity of the first communication device receives an SDU, it assigns sequence number 0 and generates data PDU0; if it receives another SDU, it assigns sequence number 1 and generates data PDU1, and so on. If the first protocol layer entity of the first communication device generates a control PDU, the sequence number of that control PDU is 0; if it generates another control PDU, the sequence number of that control PDU is 1, and so on.
[0203] In this implementation, the value ranges of the first sequence number and the second sequence number may overlap or not. When the value ranges of the first sequence number and the second sequence number do not overlap, the D / C field may not be included in the first PDU and the third PDU (i.e., the first PDU does not include the first information, and the third PDU does not include the second information). The first protocol layer entity of the second communication device can determine whether the PDU is a data PDU or a control PDU based on the received PDU sequence number.
[0204] As another possible implementation, the first protocol layer of the first communication device can uniformly assign sequence numbers to the generated PDUs. For example, the sequence number can range from 0 to X. If the first protocol layer entity of the first communication device receives an SDU, it assigns sequence number 0 and generates data PDU0. Next, if the first protocol layer entity of the first communication device generates a control PDU, the sequence number of the control PDU is 1. Then, if the first protocol layer entity of the first communication device receives an SDU, it assigns sequence number 2 and generates data PDU2, and so on.
[0205] In this implementation, the first protocol layer entity of the first communication device skips the sequence number of the control PDU when updating the sending window; the first protocol layer entity of the second communication device skips the sequence number of the control PDU when updating the receiving window.
[0206] Example 3
[0207] Figure 9 is a flowchart illustrating the communication method provided in Embodiment 3 of this application. As shown in Figure 9, the process may include:
[0208] S901, the first protocol layer entity of the first communication device generates a fourth PDU, which is a control PDU.
[0209] The fourth PDU includes a header and a payload. The header of the fourth PDU may not include a serial number (such as L2 SN or L2 COUNT), which distinguishes it from the third PDU mentioned above.
[0210] S902, the first protocol layer entity of the first communication device delivers the fourth PDU to the third protocol layer entity of the first communication device.
[0211] In other words, after the first protocol layer entity of the first communication device generates the control PDU, it delivers the control PDU to the third protocol layer entity of the first communication device, which is different from S802.
[0212] S903, the third protocol layer entity of the first communication device generates the fifth PDU based on the fourth PDU.
[0213] The fifth PDU includes a third header and a third payload. The third payload is either the fourth PDU or a segment of the fourth PDU. The third header includes a third sequence number. From the perspective of the first communication device, the third sequence number is used to segment the fourth PDU, which can be referred to in the description "the first sequence number is used to segment the first SDU".
[0214] In other words, the third protocol layer of the first communication device can use the fourth PDU as the third payload and then add a third header to generate the fifth PDU; or, the third protocol layer of the first communication device can also segment the fourth PDU and use the segments of the fourth PDU as the third payload, and then add a third header to generate the fifth PDU. For example, the third header may also include the identification information of the first protocol layer entity, that is, the identification information of the L2 entity that generates the fourth PDU.
[0215] Optionally, in addition to the segmentation mentioned above, the third protocol layer entity of the first communication device may also perform other possible processing on the fourth PDU, such as compression, etc. For specific implementation, please refer to the prior art. Furthermore, from the perspective of the first communication device, the third serial number may also have other possible functions besides the segmentation mentioned above, without any specific limitations.
[0216] S904, the third protocol layer entity of the first communication device delivers the fifth PDU to the second protocol layer entity of the first communication device.
[0217] For example, the third protocol layer entity is associated with N logical channels, where N is an integer greater than 1. The third protocol layer entity can deliver the fifth PDU to the second protocol layer entity through the third logical channel among the N logical channels. Optionally, the third protocol layer entity can deliver the sixth PDU to the second protocol layer entity through the fourth logical channel among the N logical channels. The sixth PDU and the fifth PDU can be the same; in this case, the third protocol layer entity performs duplicate transmission through the third and fourth logical channels. Alternatively, the sixth PDU and the fifth PDU can be different; in this case, the third protocol layer entity performs split transmission through the third and fourth logical channels.
[0218] S905, the first communication device sends the fifth PDU to the second communication device; correspondingly, the second communication device receives the fifth PDU.
[0219] For example, the second protocol layer entity of the first communication device encapsulates the fifth PDU into a MAC PDU and delivers the MAC PDU to the lower layer (such as the physical layer of the first communication device). Then, the physical layer of the first communication device sends the MAC PDU through a transport block. Correspondingly, after receiving the transport block, the physical layer of the second communication device parses the MAC PDU and delivers the MAC PDU to the second protocol layer entity of the second communication device. Then, the second protocol layer entity of the second communication device parses the MAC PDU to obtain the fifth PDU and delivers the fifth PDU to the third protocol layer entity of the second communication device.
[0220] S906, the third protocol layer entity of the second communication device processes the fourth PDU according to the third sequence number.
[0221] As described above, the fifth PDU includes a third serial number. From the perspective of the second communication device, the third serial number is used to reassemble the fourth PDU.
[0222] It is understandable that the third sequence number is used to reassemble the fourth PDU, indicating that the third sequence number can be used to reassemble the fourth PDU. Whether the second communication device uses the third sequence number to reassemble the fourth PDU depends on the specific implementation. For example, if the second communication device determines that the fourth PDU has not been segmented, then there is no need to reassemble the fourth PDU. Therefore, the aforementioned "processing the fourth PDU" could mean: after reassembling the fourth PDU, delivering the fourth PDU to the first protocol layer entity of the second communication device; or, directly delivering the fourth PDU to the first protocol layer entity of the second communication device. For example, the third packet header includes the identification information of the first protocol layer entity, and thus the third protocol layer entity of the second communication device can deliver the fourth PDU to the first protocol layer entity of the second communication device based on the identification information of the first protocol layer entity in the third packet header.
[0223] Optionally, in addition to the reassembly mentioned above, the third protocol layer entity of the second communication device may also perform other possible processing on the fourth PDU, such as decompression, etc. For specific implementation, please refer to the prior art. Furthermore, from the perspective of the second communication device, the third serial number may also have other possible functions besides the reassembly mentioned above, without any specific limitations.
[0224] Using the method in Embodiment 3 above, since the fifth PDU includes a third sequence number, which is used to segment the fourth PDU, the L2 control PDU can be segmented and transmitted according to the size of the transmission opportunity, which helps to solve the problem of mismatch between the size of the L2 control PDU and the size of the transmission opportunity.
[0225] Furthermore, Embodiment 1 and Embodiment 3 can be implemented separately or in combination.
[0226] When Embodiment 1 and Embodiment 3 are implemented in combination, the value range of the third serial number and the value range of the first serial number may or may not overlap.
[0227] When Embodiments 1 and 3 are implemented in combination, the L2 aggregation layer includes at least one L2 entity and one C-L2 entity. The first protocol layer entity is one of the at least one L2 entities, and the third protocol layer entity is the C-L2 entity. Referring to Figure 10, the L2 aggregation layer on the transmitting side includes L2 entity 1, L2 entity 2, and C-L2 entity. Taking L2 entity 1 as an example (L2 entity 2 is understood with reference to L2 entity 1), the data PDU generated by L2 entity 1 can be delivered to the MAC layer entity on the transmitting side through the logical channel associated with L2 entity 1. The control PDU generated by L2 entity 1 can be delivered to the C-L2 entity, which then processes it (e.g., adds a header, which includes L2 SN or L2 COUNT) before delivering it to the MAC layer entity on the transmitting side. The C-L2 entity can process and transmit the received control PDU according to the first-in-first-out principle. Similarly, the L2 aggregation layer on the receiving side includes L2 entity 1, L2 entity 2 and C-L2 entity. The operation on the receiving side is the inverse operation of the operation on the sending side, as described above.
[0228] Regarding the above embodiments, it is understood that:
[0229] (1) In the embodiments of this application, unless otherwise specified or logically conflicting, the terms and / or descriptions between different embodiments are consistent and can be referenced by each other. The technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationships. In addition, different implementations or different examples in the same embodiment can also be referenced or referenced by each other.
[0230] (2) The various numerical designations used in this application are merely for descriptive convenience and are not intended to limit the scope of this application. The step numbers in the above flowcharts are only examples of the execution process and do not constitute a restriction on the order of execution of the steps. That is, the size of each step number does not imply the order of execution; the execution order of each step should be determined by its function and internal logic. Furthermore, not all steps shown in the flowcharts are mandatory steps; some steps may be added or deleted based on actual needs.
[0231] The above mainly describes the solution provided by the embodiments of this application from the perspective of the interaction between the first communication device and the second communication device. It is understood that, in order to achieve the above functions, the first communication device and the second communication device may include hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art should readily recognize that, in conjunction with the units and algorithm steps of the various examples described in the embodiments disclosed herein, the embodiments of this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0232] In this application embodiment, the first communication device can be divided into functional units according to the above method example. For example, each function can be divided into a separate functional unit, or two or more functions can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0233] In the case of using integrated units, FIG11 shows a possible exemplary block diagram of the device involved in the embodiments of this application. As shown in FIG11, the device 1100 may include a processing unit 1102 and a communication unit 1103. The processing unit 1102 is used to control and manage the operation of the device 1100. The communication unit 1103 is used to support communication between the device 1100 and other devices. Optionally, the communication unit 1103 is also called a transceiver unit, and may include a receiving unit and / or a sending unit, respectively used to perform receiving and sending operations. The device 1100 may also include a storage unit 1101 for storing the program code and / or data of the device 1100.
[0234] (1) The device 1100 can be the first communication device in the above embodiments. The processing unit 1102 can support the device 1100 in performing the actions of the first communication device in the above embodiments. Alternatively, the processing unit 1102 mainly performs the internal actions of the first communication device in the embodiments, and the communication unit 1103 can support communication between the device 1100 and other devices.
[0235] For example, in one embodiment, the processing unit 1102 is configured to: control a first protocol layer entity to generate a first PDU, the first PDU including a first header and a first payload, the first payload being a first SDU or a segment of the first SDU, the first header including a first sequence number, the first sequence number being used to segment the first SDU and perform a first security processing; and control the first protocol layer entity to deliver the first PDU to a second protocol layer entity of the first communication device.
[0236] In one possible design, the first protocol layer entity is associated with M logical channels, where M is an integer greater than 1; the processing unit 1102 is further configured to: control the first protocol layer entity to submit the first PDU to the second protocol layer entity through the first logical channel among the M logical channels; and control the first protocol layer entity to submit the second PDU to the second protocol layer entity through the second logical channel among the M logical channels, wherein the second PDU is the same as or different from the first PDU.
[0237] In one possible design, the first header may also include first information indicating that the first PDU is a data PDU.
[0238] In one possible design, the processing unit 1102 is further configured to: control the first protocol layer entity to generate a third PDU, the third PDU including a second header and a second payload, the second header including a second sequence number and second information, the second sequence number being used to segment the second payload, and the second information being used to indicate that the third PDU is a control PDU; and control the first protocol layer entity to deliver the third PDU to a second protocol layer entity of the first communication device.
[0239] In one possible design, the processing unit 1102 is further configured to: control the first protocol layer entity to generate a fourth PDU, the fourth PDU being a control PDU; control the first protocol layer entity to submit the fourth PDU to a third protocol layer entity of the first communication device; control the third protocol layer entity to generate a fifth PDU based on the fourth PDU, the fifth PDU including a third header and a third payload, the third payload being the fourth PDU or a segment of the fourth PDU, the third header including a third sequence number used to segment the fourth PDU; and control the third protocol layer entity to submit the fifth PDU to the second protocol layer entity.
[0240] In one possible design, the third protocol layer entity is associated with N logical channels, where N is an integer greater than 1; the processing unit 1102 is further configured to: control the third protocol layer entity to deliver the fifth PDU to the second protocol layer entity through the third logical channel among the N logical channels; and control the third protocol layer entity to deliver a sixth PDU to the second protocol layer entity through the fourth logical channel among the N logical channels, wherein the sixth PDU may be the same as or different from the fifth PDU.
[0241] In one possible design, the processing unit 1102 is further configured to: control the first protocol layer entity to terminate the retransmission of the first PDU when a first condition is met; wherein the first condition includes one or more of the following: the discard timer corresponding to the first SDU times out; the number of retransmissions of the first SDU or a segment of the first SDU is greater than or equal to a threshold; the first protocol layer entity receives a status report, the status report being used to indicate that the first SDU or a segment of the first SDU has been successfully received.
[0242] (2) The device 1100 can be the second communication device in the above embodiments. The processing unit 1102 can support the device 1100 in performing the actions of the second communication device in the above embodiments. Alternatively, the processing unit 1102 mainly performs the internal actions of the second communication device in the embodiments, and the communication unit 1103 can support communication between the device 1100 and other devices.
[0243] For example, in one embodiment, the processing unit 1102 is configured to: control a first protocol layer entity to receive a first PDU, the first PDU including a first header and a first payload, the first payload being a first SDU or a segment of the first SDU, the first header including a first sequence number, the first sequence number being used to reassemble the first SDU and perform second security processing; and control the first protocol layer entity to process the first SDU according to the first sequence number.
[0244] In one possible design, the first protocol layer entity is associated with M logical channels, where M is an integer greater than 1; the processing unit 1102 is further configured to: control the first protocol layer entity to receive the first PDU through a first logical channel among the M logical channels; and control the first protocol layer entity to receive a second PDU through a second logical channel among the M logical channels, wherein the second PDU is the same as or different from the first PDU.
[0245] In one possible design, the first header may also include first information indicating that the first PDU is a data PDU.
[0246] In one possible design, the processing unit 1102 is further configured to: control the first protocol layer entity to receive a third PDU, the third PDU including a second header and a second payload, the second header including a second sequence number and second information, the second sequence number being used to reassemble the second payload, and the second information being used to indicate that the third PDU is a control PDU.
[0247] In one possible design, the processing unit 1102 is further configured to: control a third protocol layer entity of the second communication device to receive a fifth PDU, the fifth PDU including a third header and a third payload, the third payload being a fourth PDU or a segment of the fourth PDU, the fourth PDU being a control PDU, the third header including a third sequence number, the third sequence number being used to reassemble the fourth PDU; and control the third protocol layer entity to deliver the fourth PDU to the first protocol layer entity.
[0248] In one possible design, the processing unit 1102 is further configured to: control the third protocol layer entity to submit the fourth PDU to the first protocol layer entity according to the identification information of the first protocol layer entity included in the third header.
[0249] It should be understood that the division of units in the above device is merely a logical functional division. In actual implementation, they can be fully or partially integrated into a single physical entity, or they can be physically separated. Furthermore, all units in the device can be implemented entirely through software calls from processing elements; all units can be implemented entirely in hardware; or some units can be implemented through software calls from processing elements, and some units can be implemented in hardware. For example, each unit can be a separate processing element, or it can be integrated into a chip within the device. Alternatively, it can be stored as a program in memory, called and executed by a processing element of the device. Moreover, these units can be fully or partially integrated together, or implemented independently. The processing element mentioned here can also be called a processor, which can be an integrated circuit with signal processing capabilities. In the implementation process, the operations of the above methods or the various units mentioned above can be implemented through integrated logic circuits in the processor element or through software calls from processing elements.
[0250] In one example, a unit in any of the above devices can be one or more integrated circuits configured to implement the methods described above, such as: one or more application-specific integrated circuits (ASICs), or one or more digital signal processors (DSPs), or one or more field-programmable gate arrays (FPGAs), or a combination of at least two of these forms of integrated circuits. As another example, when a unit in the device can be implemented in the form of a processing element scheduler, the processing element can be a processor, such as a general-purpose central processing unit (CPU), or other processor capable of calling programs. Furthermore, these units can be integrated together and implemented as a System-on-a-Chip (SoC).
[0251] The receiving unit described above is an interface circuit of the device, used to receive signals from other devices. For example, when the device is implemented as a chip, the receiving unit is an interface circuit for the chip to receive signals from other chips or devices. The transmitting unit described above is an interface circuit of the device, used to transmit signals to other devices. For example, when the device is implemented as a chip, the transmitting unit is an interface circuit for the chip to transmit signals to other chips or devices.
[0252] Based on the same technical concept, this application also provides a communication device for implementing the functions of the first or second communication device described above. As shown in FIG12, the device may be a communication equipment or a chip within a communication equipment. The device includes a processor 1201 and a communication interface 1202, and optionally, a memory 1203. FIG12 only shows the main components of the communication device. In addition to the processor 1201 and the communication interface 1202, the communication device may further include a memory 1203 and an input / output device (not shown in the figure).
[0253] The processor 1201 is used to execute the program code stored in the memory 1203, specifically to perform the actions of the aforementioned processing unit 1102, which will not be described in detail here. The communication interface 1202 is specifically used to perform the actions of the aforementioned communication unit 1103, which will not be described in detail here.
[0254] Processor 1201 can be a CPU, a digital processing unit, etc. Processor 1201 can be used to process communication protocols and communication data, control the entire communication device, execute software programs, and process software program data, such as, but not limited to, baseband-related processing. Communication interface 1202 can be used for transmitting and receiving signals, such as, but not limited to, radio frequency transceiver. The above-mentioned devices can be disposed on separate chips, or at least partially or entirely on the same chip. For example, processor 1201 can be further divided into an analog baseband processor and a digital baseband processor. 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 (such as, 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 to dispose of individual devices independently on different chips or integrate them on one or more chips often depends on the specific needs of the product design. The embodiments of the present invention do not limit the specific implementation of the above-mentioned devices.
[0255] The communication interface 1202 can be a transceiver, an interface circuit such as a transceiver circuit, or a transceiver chip, etc. Optionally, the communication interface 1202 may include radio frequency (RF) circuitry and an antenna. The RF circuitry is mainly used for converting baseband signals to RF signals and processing RF signals. The antenna is mainly used for transmitting and receiving RF signals in the form of electromagnetic waves. Input / output devices, such as touch screens, displays, and keyboards, are mainly used for receiving user input data and outputting data to the user.
[0256] Memory 1203 is used to store programs executed by processor 1201. Memory 1203 can be non-volatile memory, such as a hard disk drive (HDD) or solid-state drive (SSD), or it can be volatile memory, such as random-access memory (RAM). Memory 1203 can be any other medium capable of carrying or storing desired program code in the form of instructions or data structures that can be accessed by a computer, but is not limited to this.
[0257] When the communication device is powered on, the processor 1201 can read the software program in the memory 1203, interpret and execute the instructions of the software program, and process the data of the software program. When data needs to be transmitted wirelessly, the processor 1201 performs baseband processing on the data to be transmitted and outputs the baseband signal to the radio frequency (RF) circuit. The RF circuit processes the baseband signal and transmits the RF signal outward in the form of electromagnetic waves through the antenna. When data is sent to the communication device, the RF circuit receives the RF signal through the antenna, converts the RF signal into a baseband signal, and outputs the baseband signal to the processor 1201. The processor 1201 converts the baseband signal into data and processes the data.
[0258] In another implementation, the radio frequency circuitry and antenna can be set up independently of the processor performing baseband processing. For example, in a distributed scenario, the radio frequency circuitry and antenna can be arranged remotely, independent of the communication device.
[0259] This embodiment does not limit the specific connection medium between the communication interface 1202, processor 1201, and memory 1203. In Figure 12, the memory 1203, processor 1201, and communication interface 1202 are connected via a bus 1204, which is represented by a thick line. The connection methods between other components are only illustrative and not intended to be limiting. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, only one thick line is used in Figure 12, but this does not indicate that there is only one bus or one type of bus.
[0260] In this application embodiment, "multiple" can refer to two or more. Therefore, in this application embodiment, "multiple" can also be understood as "at least two". "At least one" can be understood as one or more, such as one, two, or more. For example, "including at least one" means including one, two, or more. For example, including at least one of A, B, and C, then it could include A, B, C, A and B, A and C, B and C, or A, B, and C. "And / or" describes the association relationship between related objects. Specifically, there can be three relationships. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / ", unless otherwise specified, generally indicates that the preceding and following related objects have an "or" relationship.
[0261] Furthermore, the terms "system" and "network" in the embodiments of this application can be used interchangeably, as can "according to" and "based on". The ordinal numbers such as "first" and "second" mentioned in the embodiments of this application are generally used to distinguish different objects and are not used to limit the order, sequence, priority, or importance of multiple objects. For example, the first communication device and the second communication device in the embodiments of this application are used to distinguish between two communication devices, and do not limit the priority or importance of these two communication devices.
[0262] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0263] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in one or more blocks of the flowchart illustrations and / or one or more blocks of the block diagrams.
[0264] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means that implement the functions specified in one or more flowcharts and / or one or more block diagrams.
[0265] These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, such that the instructions, which execute on the computer or other programmable apparatus, provide steps for implementing the functions specified in one or more flowcharts and / or one or more block diagrams.
[0266] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.
Claims
1. A communication method characterized by comprising: The method is applied to a first communication device, and the method includes: The first protocol layer entity of the first communication device generates a first protocol data unit (PDU). The first PDU includes a first header and a first payload. The first payload is a first service data unit (SDU) or a segment of the first SDU. The first header includes a first sequence number, which is used to segment the first SDU and perform a first security processing. The first protocol layer entity delivers the first PDU to the second protocol layer entity of the first communication device.
2. The method of claim 1, wherein, The first protocol layer entity is associated with M logical channels, where M is an integer greater than 1; The first protocol layer entity delivers the first PDU to the second protocol layer entity of the first communication device, including: the first protocol layer entity delivers the first PDU to the second protocol layer entity through the first logical channel among the M logical channels; The method further includes: the first protocol layer entity submitting a second PDU to the second protocol layer entity through a second logical channel among the M logical channels, wherein the second PDU is the same as or different from the first PDU.
3. The method according to claim 1 or 2, characterized in that, The first header also includes first information, which indicates that the first PDU is a data PDU.
4. The method according to any one of claims 1 to 3, characterized in that, The method further includes: The first protocol layer entity generates a third PDU, which includes a second header and a second payload. The second header includes a second sequence number and second information. The second sequence number is used to segment the second payload, and the second information is used to indicate that the third PDU is a control PDU. The first protocol layer entity delivers the third PDU to the second protocol layer entity of the first communication device.
5. The method according to claim 4, characterized in that, The range of values for the second serial number does not overlap with the range of values for the first serial number.
6. The method according to claim 1 or 2, characterized in that, The method further includes: The first protocol layer entity generates a fourth PDU, which is a control PDU; The first protocol layer entity delivers the fourth PDU to the third protocol layer entity of the first communication device; The third protocol layer entity generates a fifth PDU based on the fourth PDU. The fifth PDU includes a third header and a third payload. The third payload is the fourth PDU or a segment of the fourth PDU. The third header includes a third sequence number, which is used to segment the fourth PDU. The third protocol layer entity delivers the fifth PDU to the second protocol layer entity.
7. The method according to claim 6, characterized in that, The value range of the third serial number does not overlap with the value range of the first serial number.
8. The method according to claim 6 or 7, characterized in that, The third header also includes the identification information of the first protocol layer entity.
9. The method according to any one of claims 1 to 8, characterized in that, The method further includes: If the first protocol layer entity meets the first condition, it terminates the retransmission of the first PDU. The first condition includes one or more of the following: The discard timer corresponding to the first SDU timed out; The number of retransmissions of the first SDU or a segment of the first SDU is greater than or equal to the threshold. The first protocol layer entity receives a status report, which indicates that the first SDU or a segment of the first SDU has been successfully received.
10. A communication method, characterized in that, The method is applied to a second communication device, and the method includes: The first protocol layer entity of the second communication device receives a first PDU, the first PDU including a first header and a first payload, the first payload being a first SDU or a segment of the first SDU, the first header including a first sequence number, the first sequence number being used to reassemble the first SDU and perform second security processing; The first protocol layer entity processes the first SDU according to the first sequence number.
11. The method according to claim 10, characterized in that, The first protocol layer entity is associated with M logical channels, where M is an integer greater than 1; The first protocol layer entity receives the first PDU, including: the first protocol layer entity receives the first PDU through a first logical channel among the M logical channels; The method further includes: the first protocol layer entity receiving a second PDU through a second logical channel among the M logical channels, wherein the second PDU is the same as or different from the first PDU.
12. The method according to claim 10 or 11, characterized in that, The first header also includes first information, which indicates that the first PDU is a data PDU.
13. The method according to any one of claims 10 to 12, characterized in that, The method further includes: The first protocol layer entity receives a third PDU, which includes a second header and a second payload. The second header includes a second sequence number and second information. The second sequence number is used to reassemble the second payload, and the second information is used to indicate that the third PDU is a control PDU.
14. The method according to claim 13, characterized in that, The range of values for the second serial number does not overlap with the range of values for the first serial number.
15. The method according to claim 10 or 11, characterized in that, The method further includes: The third protocol layer entity of the second communication device receives a fifth PDU, the fifth PDU including a third header and a third payload, the third payload being a fourth PDU or a segment of the fourth PDU, the fourth PDU being a control PDU, the third header including a third sequence number, the third sequence number being used to reassemble the fourth PDU; The third protocol layer entity delivers the fourth PDU to the first protocol layer entity.
16. The method according to claim 15, characterized in that, The value range of the third serial number does not overlap with the value range of the first serial number.
17. The method according to claim 15 or 16, characterized in that, The third protocol layer entity delivers the fourth PDU to the first protocol layer entity, including: The third protocol layer entity submits the fourth PDU to the first protocol layer entity based on the identification information of the first protocol layer entity included in the third header.
18. A communication device, characterized in that, It includes a unit for performing the method as described in any one of claims 1 to 9, or a unit for performing the method as described in any one of claims 10 to 17.
19. A communication device, characterized in that, The device includes a processor coupled to a memory storing a computer program; the processor is configured to invoke part or all of the computer program in the memory such that the method as claimed in any one of claims 1 to 9 is executed, or the method as claimed in any one of claims 10 to 17 is executed.
20. A communication system, characterized in that, The communication system includes a first communication device and a second communication device, wherein the first communication device is used to perform the method as described in any one of claims 1 to 9, and the second communication device is used to perform the method as described in any one of claims 10 to 17.
21. A computer-readable storage medium, characterized in that, The storage medium stores a computer program that, when some or all of the computer program is executed by a computer, causes the method as described in any one of claims 1 to 9 to be executed, or the method as described in any one of claims 10 to 17 to be executed.
22. A computer program product, characterized in that, When the computer reads and executes the computer program product, the method as described in any one of claims 1 to 9 is performed, or the method as described in any one of claims 10 to 17 is performed.
Citation Information
Patent Citations
Data processing method and device
CN108307437A
Message processing method and device applied to 5G mobile communication
CN116366733A
User equipment (UE), evolved node-b (ENB) and methods for a packet convergence and link control (PCLC) layer
US20200305225A1
User data processing method and device
WO2023231599A1
Method and apparatus for processing data, and communication device
WO2024011463A1