Communication method and apparatus
By dynamically adjusting the number of PDCP modules and the degree of parallelization, the problems of high resource utilization and high equipment energy consumption in the existing technology are solved, achieving a balance between business latency and resource utilization, and improving processing speed and business performance.
Patent Information
- Application Number
- PCT/CN2025/107845
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-12
- Filing Date
- 2025-07-10
- Publication Date
- 2026-01-15
AI Technical Summary
In existing technologies, the data packet processing of PDCP entities is serial, which cannot flexibly adjust the degree of parallelization of modules, resulting in high resource utilization and high equipment power consumption, making it difficult to achieve a balance between service latency and resource utilization under different service requirements.
By dynamically adjusting the number and parallelization level of PDCP modules, the number of modules can be flexibly configured according to resource availability and business needs. The number of modules can be updated using control signaling or data packets, ensuring business continuity and performance optimization.
It achieves a balance between resource utilization and equipment energy consumption under different business needs, improves processing speed and business performance, and reduces the latency of updating the number of modules.
Smart Images

Figure CN2025107845_15012026_PF_FP_ABST
Abstract
Description
Communication methods and devices
[0001] This application claims priority to Chinese Patent Application No. 202410946301.7, filed on July 12, 2024, entitled "Communication Method and Apparatus", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of communications, and more particularly to communication methods and apparatus. Background Technology
[0003] In mobile communication systems, for the packet data convergence protocol (PDCP) entity at the sending end, the data packet first enters the transmission buffer to maintain the PDCP sequence number (SN); then, header or uplink data compression, integrity protection, and encryption are performed in sequence; finally, the PDCP header is added, and the packet is delivered to the lower-layer entity through the routing / copying module.
[0004] For the PDCP entity at the receiving end, the PDCP header of the data packet is first removed, and then decryption and integrity verification are performed in sequence before entering the reception buffer. In the reception buffer, functions such as reordering and discarding duplicate packets are performed. Finally, the header or uplink data is decompressed, and the decompressed data packet is delivered to the upper-layer entity.
[0005] Typically, data packets entering a PDCP entity are processed serially at both the sending and receiving ends in the order described above. Summary of the Invention
[0006] This application provides a communication method and apparatus that can dynamically and flexibly set the degree of module parallelization.
[0007] Firstly, a communication method is provided. This method can be executed by a first communication device, or by a component of the first communication device, such as a processor, chip, or chip system of the first communication device, or by a logic module or software capable of implementing all or part of the functions of the first communication device. The first communication device can be an access network device or a terminal. The method includes: determining first information for updating the number of first modules, the first modules being used to implement data compression / decompression; and sending the first information to a second communication device.
[0008] Based on this scheme, the first communication device can send information to update the number of the first modules. Therefore, the number of the first modules can be flexibly configured. For example, when a higher processing speed is required, the first communication device can instruct an increase in the number of the first modules to meet service latency requirements; when a higher processing speed is not required, the first communication device can instruct a decrease in the number of the first modules to reduce resource utilization or equipment energy consumption. In other words, this scheme can flexibly and dynamically set the degree of parallelism of the first modules.
[0009] In one possible design, determining the first information includes: determining the first information based on the resource conditions of the sender and / or the resource conditions of the receiver.
[0010] In one possible design, the resource status of the transmitting end includes at least one of the following: the service's Quality of Service (QoS) profile, service traffic data, the transmitting end's hardware utilization, or the transmitting end's hardware load. The resource status of the receiving end includes at least one of the following: the service's QoS profile, service traffic data, the receiving end's hardware utilization, or the receiving end's hardware load.
[0011] Based on the two possible designs mentioned above, the first communication device can flexibly adjust the number of the first module based on resource conditions or the actual situation of the service, such as the QoS configuration file of the service, the service traffic situation, and the hardware utilization / load of both communicating parties. Thus, when a higher processing speed is required, the device can instruct to increase the number of the first module to meet the service latency requirements; when a higher processing speed is not required, the device can instruct to reduce the number of the first module to reduce resource occupancy or equipment energy consumption, thereby achieving a balance between service latency and resource occupancy.
[0012] In one possible design, the method further includes sending second information to a second communication device. This second information indicates the timing for updating the number of the first modules, and / or instructs a first timer to control the duration for which the number of the first modules before the update applies.
[0013] Based on this possible design, the timing of updating the quantity of the first module can be understood as the timing of the new configuration taking effect, and the timing of the end of the application of the quantity of the first module before the update can be understood as the timing of the old configuration becoming invalid. That is, it is possible to configure the timing of the new configuration taking effect and / or the timing of the old configuration becoming invalid, so that the two communicating parties can achieve the connection between the new and old configurations based on the timing, thereby ensuring the continuity of services, avoiding the impact of updating the quantity of the first module on services, and thus improving service performance.
[0014] The timing of updating the number of first modules can be indicated by a sequence number (such as a first sequence number). Specifically, if the sequence number of the acquired data packet is greater than or equal to (or greater than) the first sequence number, the acquired data packet is processed using the first module with the updated number; if the sequence number of the acquired data packet is less than or equal to (or less than or equal to) the first sequence number, the acquired data packet is processed using the first module before the update. Alternatively, the timing of updating the number of first modules can be indicated by a sequence number offset. The first and second communication devices can determine the first sequence number based on this offset, and then further determine whether to use the first module before the update or the first module with the updated number to process the acquired data packet based on the relationship between the sequence number of the acquired data packet and the first sequence number. Alternatively, the timing of updating the number of first modules can be indicated by a duration, i.e., updating the number of first modules after the duration from receiving the second information.
[0015] In one possible design, the first information is carried in control signaling, which includes Radio Resource Control (RRC) signaling, Medium Access Control (MAC) control element (CE), Downlink Control Information (DCI), or Uplink Control Information (UCI).
[0016] Based on this possible design, the number of the first module can be updated via control plane signaling, enabling control signaling to be sent at any time when the number of the first module needs to be updated, thereby reducing the update latency of the number of the first module.
[0017] In one possible design, where the first communication device is an access network device and the second communication device is a terminal, the method further includes: receiving a reconfiguration request from the second communication device, the reconfiguration request being used to request an update of the number of the first modules.
[0018] Based on this possible design, when the terminal acts as the sender, the access network device may not be able to perceive the real-time status of the service in a timely manner. Therefore, the terminal can request the access network device to reconfigure. For example, the terminal sends the reconfiguration request when it perceives a change in the service, so that the access network device can update its configuration in a timely manner and reduce the update latency of the number of the first module.
[0019] In one possible design, the reconfiguration request includes at least one of the following suggested by the second communication device: the updated number of first modules, the timing of updating the number of first modules, the update mode, or the duration of a first timer; the first timer is used to control the duration for which the number of first modules before the update applies.
[0020] Based on this possible design, since the terminal, acting as the transmitter, can perceive the service situation, the parameters suggested by the terminal to the access network device can be determined according to the service situation and its own capabilities. This allows the access network device to configure itself based on the terminal's suggestions, improving the rationality of the configuration and avoiding the impact on service performance caused by inappropriate configuration of access network device or parameters not supported by the terminal.
[0021] In one possible design, where the first communication device is an access network device and the second communication device is a terminal, the method further includes: receiving response information from the second communication device for the first information, wherein the response information indicates the timing for updating the number of the first module.
[0022] In one possible design, the initial information is carried within a data packet. Based on this design, the number of the first module can be updated via user plane indication without sending additional signaling, thus saving signaling overhead.
[0023] In one possible design, where the first communication device is a terminal and the second communication device is an access network device, the method further includes: receiving authorization information from the second communication device, the authorization information indicating a range of the number of first modules that the first communication device is allowed to configure.
[0024] Based on this possible design, access network devices can configure and authorize terminals, thereby avoiding resource waste caused by terminals arbitrarily configuring the number of first modules.
[0025] In one possible design, the method further includes: sending terminal capability information to a second communication device, the terminal capability information including the maximum number of robust header compression (ROHC) context sessions supported by the terminal, and / or the maximum number of first modules supported by the terminal, the terminal capability information being used to determine authorization information.
[0026] In one possible design, the method further includes sending a request message to a second communication device, the request message being used to request authorization information.
[0027] Secondly, a communication method is provided. This method can be executed by a second communication device, or by a component of the second communication device, such as its processor, chip, or chip system, or by a logic module or software capable of implementing all or part of the functions of the second communication device. The second communication device can be a terminal or an access network device. The method includes: receiving first information from a first communication device, the first information being used to update the number of first modules, the first modules being used to perform data compression / decompression; and configuring a first number of first modules according to the first information. The technical effects of the second aspect are analogous to those of the first aspect described above, and will not be repeated here.
[0028] In one possible design, configuring a first number of first modules based on first information includes: creating / deleting a second number of first modules based on the first information, after creating / deleting the second number of first modules, the number of first modules is the first number; or, activating / deactivating a second number of first modules based on the first information, after activating / deactivating the second number of first modules, the number of first modules is the first number.
[0029] In one possible design, the method further includes: receiving second information from a first communication device, the second information indicating the timing of updating the number of first modules, and / or a first timer for controlling the duration for which the number of first modules before the update applies.
[0030] The timing of updating the number of first modules can be indicated by a sequence number (such as a first sequence number). Specifically, if the sequence number of the acquired data packet is greater than or equal to (or greater than) the first sequence number, the acquired data packet is processed using the first module with the updated number; if the sequence number of the acquired data packet is less than or equal to (or less than or equal to) the first sequence number, the acquired data packet is processed using the first module before the update. Alternatively, the timing of updating the number of first modules can be indicated by a sequence number offset. The first and second communication devices can determine the first sequence number based on this offset, and then further determine whether to use the first module before the update or the first module with the updated number to process the acquired data packet based on the relationship between the sequence number of the acquired data packet and the first sequence number. Alternatively, the timing of updating the number of first modules can be indicated by a duration, i.e., updating the number of first modules after the duration from receiving the second information.
[0031] In one possible design, the first information is carried in control signaling, which includes Radio Resource Control (RRC) signaling, Medium Access Control (MAC) control element (CE), Downlink Control Information (DCI), or Uplink Control Information (UCI).
[0032] In one possible design, where the first communication device is an access network device and the second communication device is a terminal, the method further includes: sending a reconfiguration request to the first communication device, the reconfiguration request being used to request an update on the number of the first modules.
[0033] In one possible design, where the first communication device is an access network device and the second communication device is a terminal, the method further includes: sending a response message of the first information to the first communication device, the response message indicating the timing for updating the number of the first module.
[0034] In one possible design, the first information is carried in a data packet.
[0035] In one possible design, where the first communication device is a terminal and the second communication device is an access network device, the method further includes: sending authorization information to the first communication device, the authorization information indicating a range of the number of first modules that the first communication device is allowed to configure.
[0036] In one possible design, the method further includes: receiving terminal capability information from a first communication device, the terminal capability information including the maximum number of robust header compression (ROHC) context sessions supported by the terminal, and / or the maximum number of first modules supported by the terminal, the terminal capability information being used to determine authorization information.
[0037] In one possible design, the method further includes receiving request information from a first communication device, the request information being used to request authorization information.
[0038] The technical effects of any possible design in the second aspect can be referred to the technical effects of the corresponding design in the first aspect above, and will not be repeated here.
[0039] In conjunction with the first or second aspect, in one possible design, the first information includes at least one of the following: the updated number of first modules, the change in the number of first modules compared to the number before the update, information indicating one of a plurality of pre-configured numbers of first modules, and identification information of the updated first modules.
[0040] In conjunction with the first or second aspect, in one possible design, the first information is used to update the number of the first module, including: the first information is used to indicate the creation / deletion of the first module; or, the first information is used to indicate the activation / deactivation of the first module.
[0041] In conjunction with the first or second aspect, in one possible design, the first information also includes information indicating an update mode, which includes creating / deleting the first module or activating / deactivating the first module.
[0042] Based on the two update modes described above, when adjusting the number of first modules using the create / delete method, the resources and contexts occupied by some previously created first modules can be released when the number of first modules decreases, significantly reducing resource consumption. When adjusting the number of first modules using the activate / deactivate method, the previously deactivated first modules and their contexts are retained when the number of first modules increases, allowing for faster activation of first modules and reducing latency caused by changes in the number of first modules, thereby improving overall processing speed.
[0043] In conjunction with the first or second aspect, in one possible design, the first information is used to update the quantity of the first module, including: the first information is used to update the quantity of the first module to a first quantity.
[0044] In combination with the first or second aspect, in one possible design, the first module is the Robust Header Compression (ROHC) module in the Packet Data Convergence Protocol (PDCP) entity.
[0045] Thirdly, a communication device is provided for implementing various methods. The communication device includes modules, units, or means corresponding to the implementation of the methods, wherein the modules, units, or means can be implemented in hardware, software, or by hardware executing corresponding software. The hardware or software includes one or more modules or units corresponding to the functions.
[0046] In some possible designs, the communication device may include a processing module and a transceiver module. The processing module can be used to implement the processing functions in any of the above aspects and any possible implementations thereof. The transceiver module may include a receiving module and a transmitting module, respectively used to implement the receiving function and the transmitting function in any of the above aspects and any possible implementations thereof.
[0047] In some possible designs, the transceiver module can consist of transceiver circuits, transceivers, transceivers, or communication interfaces.
[0048] Fourthly, a communication device is provided, comprising: a processor and a memory; the memory being used to store computer instructions that, when executed by the processor, cause the communication device to perform the method described in any of the above aspects and any possible design thereof.
[0049] Fifthly, a communication device is provided, comprising: a processor and a communication interface; the communication interface being used to communicate with a module outside the communication device; the processor being used to execute computer programs or instructions to cause the communication device to perform the methods described in any of the above aspects and any possible designs thereof.
[0050] A sixth aspect provides a communication device comprising: at least one processor; said processor being configured to execute a computer program or instructions stored in a memory to cause the communication device to perform the methods described in any of the foregoing aspects and any possible designs thereof. The memory may be coupled to the processor, or may be independent of the processor.
[0051] In a seventh aspect, a communication device (e.g., a chip or chip system) is provided, the communication device including a processor for implementing the functions involved in any of the above aspects and any possible designs thereof.
[0052] In some possible designs, the communication device includes a memory for storing necessary program instructions and data.
[0053] In some possible designs, when the device is a chip system, it can be composed of chips or contain chips and other discrete components.
[0054] The communication device described in the third to seventh aspects may be the first communication device in the first aspect, or a device included in the first communication device, such as a chip or chip system; or the communication device may be the second communication device in the second aspect, or a device included in the second communication device, such as a chip or chip system.
[0055] Eighthly, a communication device is provided, which may be a first communication device, or a module or unit (e.g., a chip, a chip system, or a circuit) in the first communication device that performs the methods / operations / steps / actions described in the first aspect, or a module or unit that can be used in conjunction with the first communication device; or, the communication device may be a second communication device, or a module or unit (e.g., a chip, a chip system, or a circuit) in the second communication device that performs the methods / operations / steps / actions described in the second aspect, or a module or unit that can be used in conjunction with the second communication device.
[0056] It is understandable that when the communication device provided by any of the third to eighth aspects is a chip, the sending action / function of the communication device can be understood as outputting information, and the receiving action / function of the communication device can be understood as inputting information.
[0057] A ninth aspect provides a computer-readable storage medium storing a computer program or instructions that, when executed on a communication device, enable the communication device to perform the methods described in any of the foregoing aspects and any possible design thereof.
[0058] In a tenth aspect, a computer program product containing instructions is provided, which, when run on a communication device, enables the communication device to perform the methods described in any of the foregoing aspects and any possible design thereof.
[0059] Eleventhly, a communication system is provided, comprising a first communication device and a second communication device. The first communication device is used to implement the method described in the first aspect and any possible design thereof, and the second communication device is used to implement the method described in the second aspect and any possible design thereof.
[0060] The technical effects of any of the design methods in aspects three through eleven can be found in the technical effects of different design methods in aspects one or two, and will not be repeated here. Attached Figure Description
[0061] Figure 1 is a schematic diagram of a user plane protocol stack provided in this application;
[0062] Figure 2 is a functional diagram of each protocol stack of layer 2 provided in this application;
[0063] Figure 3 is a schematic diagram of the internal processing flow of a PDCP entity provided in this application;
[0064] Figure 4 is a schematic diagram of the structure of a communication system provided in this application;
[0065] Figure 5 is a structural comparison diagram of an O-RAN and a traditional RAN provided in this application;
[0066] Figure 6 is a schematic diagram of CU-DU separation under an O-RAN architecture provided in this application;
[0067] Figure 7 is a schematic diagram of a parallel structure of dual ROHC modules provided in this application;
[0068] Figure 8 is a schematic diagram of another parallel structure of dual ROHC modules provided in this application;
[0069] Figure 9 is a flowchart illustrating a communication method provided in this application;
[0070] Figure 10 is a schematic diagram of an update mode provided in this application;
[0071] Figures 11 and 12 are schematic flowcharts of the communication method provided in this application;
[0072] Figures 13-18 are schematic diagrams of the data packet format provided in this application;
[0073] Figures 19-22 are schematic flowcharts of the communication method provided in this application;
[0074] Figures 23-25 are schematic diagrams of the communication device provided in this application. Detailed Implementation
[0075] In the description of this application, unless otherwise stated, " / " indicates that the objects before and after are in an "or" relationship. For example, A / B can mean A or B. "And / or" in this application is merely a description of the relationship between the related objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist simultaneously, and B exists alone. A and B can be singular or plural.
[0076] In the description of this application, unless otherwise stated, "multiple" means two or more. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of a single item or a plurality of items. For example, at least one of a, b, or c can mean: a, b, c, a and b, a and c, b and c, or a and b and c, where a, b, and c can be single or multiple.
[0077] Furthermore, to facilitate a clear description of the technical solutions in the embodiments of this application, the terms "first" and "second" are used in the embodiments of this application to distinguish identical or similar items with substantially the same function and effect. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and the terms "first" and "second" are not necessarily different.
[0078] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner to facilitate understanding.
[0079] It is understood that the term "embodiment" used throughout the specification means that a specific feature, structure, or characteristic related to an embodiment is included in at least one embodiment of this application. Therefore, various embodiments throughout the specification do not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. It is understood that in the various embodiments of this application, the sequence number of each process does not imply the order of execution; the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0080] It is understood that in this application, "...when" and "if" both refer to the corresponding processing that will be carried out under certain objective circumstances, and are not limited to a specific time, nor do they require a judgment action to be performed during implementation, nor do they imply any other limitations.
[0081] It is understood that some optional features in the embodiments of this application can be implemented independently in certain scenarios without relying on other features, such as the current solution on which they are based, to solve the corresponding technical problems and achieve the corresponding effects. Alternatively, they can be combined with other features as needed in certain scenarios. Correspondingly, the apparatus given in the embodiments of this application can also implement these features or functions, which will not be elaborated here.
[0082] In this application, unless otherwise specified, the same or similar parts between the various embodiments can be referred to each other. In the various embodiments of this application, unless otherwise specified or there is a logical conflict, the terminology and / or descriptions between different embodiments are consistent and can be mutually referenced. Technical features in different embodiments can be combined to form new embodiments based on their inherent logical relationships. The following descriptions of the embodiments of this application do not constitute a limitation on the scope of protection of this application.
[0083] To facilitate understanding of the technical solutions of the embodiments of this application, a brief introduction to the relevant technologies of this application is given below.
[0084] 1. Wireless Protocol Stack:
[0085] In mobile communication systems, the wireless protocol stack is divided into two planes: the user plane (UP) and the control plane (CP). The user plane protocol stack can be understood as the protocol suite used for user data transmission, while the control plane protocol stack can be understood as the protocol suite used for system control signaling transmission.
[0086] As shown in Figure 1, taking the user plane protocol stack of 5th generation (5G) new radio (NR) as an example, the user plane protocol stack can include 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. The PHY layer belongs to Layer 1 (also known as Layer 1). The protocol layers other than the PHY layer can be collectively referred to as the Layer 2 protocol stack, which can be considered as the data link layer, mainly used to ensure the quality of service (QoS) of user data transmission.
[0087] For example, the relationship between the above protocol layers is as follows: the PHY layer provides a transmission channel for the MAC layer; the MAC layer provides a logical channel for the RLC layer; the RLC layer provides an RLC channel for the PDCP layer; the PDCP layer provides a radio bearer for the SDAP layer; and the SDAP layer provides QoS flows for the 5G core network (5GC).
[0088] Each protocol layer in the Layer 2 protocol stack corresponds to a specific function, as shown in Figure 2, for example:
[0089] SDAP layer: mainly used for mapping between QoS flows and data radio bearers (DRBs), and for identifying QoS flow identifiers (IDs) in uplink and downlink data packets.
[0090] PDCP layer: mainly used for data transmission, maintaining PDCP sequence numbers (SN), header compression and decompression (such as robust header compression (ROHC)), encryption and decryption, integrity protection, timer-based service data unit (SDU) discarding, packet copying, reordering, etc.
[0091] RLC layer: mainly used for upper-layer protocol data unit (PDU) transmission, numbering, segmentation, resegmentation, SDU reassembly, duplicate detection, RLC SDU discarding, error correction based on automatic repeat request (ARQ), RLC re-establishment, protocol error detection, etc.
[0092] MAC layer: mainly used for mapping, multiplexing, demultiplexing, reporting scheduling information, error correction based on hybrid automatic repeat request (HARQ), managing user priorities through dynamic scheduling, managing logical channel priorities, padding, etc.
[0093] Typically, the functions of each protocol layer are implemented by the corresponding multi-functional entity. For example, the functions of the PDCP layer are implemented by the corresponding PDCP layer entity. Furthermore, the upper and lower layers involved in the embodiments of this application are relative concepts. For example, taking the PDCP layer as an example, for the SDAP layer, the PDCP layer can be the lower layer of the SDAP layer, but for the RLC layer, the PDCP layer can be the upper layer of the RLC layer.
[0094] 2. PDCP layer processing flow:
[0095] For example, as shown in Figure 3, from the moment a data packet enters the PDCP entity, it first enters the transmission buffer for PDCP SN maintenance. Then, it enters the header or uplink data compression module, which, according to configuration, compresses Internet Protocol (IP) headers, Ethernet headers, or uplink data. After compression, packets associated with a PDCP SDU undergo integrity protection, ciphering, and have a PDCP header added. Packets not associated with a PDCP SDU do not require integrity protection or encryption; a PDCP header is directly added. Finally, the packets with the PDCP header added are delivered to the RLC layer via the routing / duplication module. Ultimately, they are transmitted to the receiving end via the wireless interface.
[0096] The data packets associated with a PDCP SDU can be data packets from an upper layer (i.e., the SDAP layer), such as an SDAP PDU. Data packets not associated with a PDCP SDU can be data packets generated by a PDCP entity.
[0097] As shown in Figure 3, from the moment a data packet enters the PDCP entity, the PDCP header is first removed. Then, data packets related to the PDCP SDU pass through the deciphering and integrity verification modules in sequence, followed by the reception buffer. In the reception buffer, reordering and duplicate packet discarding are performed. Finally, the packet enters the header or uplink data decompression module, where the corresponding decompression operation is completed, and the packet is delivered to the SDAP layer. Data packets unrelated to the PDCP SDU are directly processed by the header or uplink data decompression module after the PDCP header is removed.
[0098] The header or uplink data compression / decompression module can employ protocols such as robust header compression (ROHC), Ethernet header compression (EHC), or uplink data compression (UDC) for corresponding compression / decompression. For ease of description, the header or uplink data compression / decompression module will be collectively referred to as the ROHC module in the following embodiments. Of course, the header or uplink data compression / decompression module may have other names, and this application does not specifically limit it.
[0099] The technical solutions of this application embodiment can be used in various communication systems, including 3GPP communication systems such as 4th generation (4G) systems (e.g., Long Term Evolution (LTE) systems), 5G systems (e.g., NR systems), LTE and 5G hybrid networking systems, non-terrestrial networks (NTNs), device-to-device (D2D) communication systems, vehicle-to-everything (V2X) communication systems, machine-type communication (MTC) systems, Internet of Things (IoT) systems such as wireless LANs, universal mobile communication systems, or other future communication systems. The communication system can also be a non-3GPP communication system; there is no limitation on this.
[0100] The communication systems described above are merely illustrative examples, and are not limited to those described herein. The communication systems provided in this application do not impose any limitations on the solutions described herein. This will be explained uniformly here and will not be repeated below.
[0101] Figure 4 illustrates a possible, non-limiting system diagram. As shown in Figure 4, the communication system 40 includes a radio access network (RAN) 400 and a core network (CN) 500. RAN 400 includes at least one access network device (410a and 410b in Figure 4, collectively referred to as 410) and at least one terminal (420a-420j in Figure 4, collectively referred to as 420). RAN 400 may also include other access network devices, such as wireless relay devices and / or wireless backhaul devices (not shown in Figure 4). Terminal 420 is wirelessly connected to access network device 410. Access network device 410 is wirelessly or wired connected to core network 500. The core network device in core network 500 and access network device 410 in RAN 400 can be different physical devices, or they can be the same physical device integrating core network logical functions and radio access network logical functions.
[0102] RAN 400 can be a 3GPP-related cellular system, such as a 4G, 5G mobile communication system, or a future-oriented evolution system. RAN 400 can also be an open access network (O-RAN or ORAN), a cloud radio access network (CRAN), or a wireless fidelity (WiFi) system. RAN 400 can also be a communication system that integrates two or more of the above systems.
[0103] A terminal can also be referred to as a terminal device, user equipment (UE), mobile station, mobile terminal, etc. Terminals can be widely used in various scenarios, such as D2D, V2X communication, MTC, IoT, virtual reality (VR), augmented reality (AR), industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearables, smart transportation, smart cities, smart homes, or transportation safety, etc. Terminals can be mobile phones, tablets, computers with wireless transceiver capabilities, wearable devices, vehicles, drones, helicopters, airplanes, ships, robots, robotic arms, or smart home devices, etc. The embodiments of this application do not limit the device form of the terminal.
[0104] Access network equipment 410, sometimes also referred to as RAN node, RAN entity, or access node, constitutes part of the communication system and is used to help terminals achieve wireless access. Multiple access network equipment 410 in communication system 40 can be nodes of the same type or different types. In some scenarios, the roles of access network equipment 410 and terminal 420 are relative. For example, network element 420i in Figure 4 can be a helicopter or drone, which can be configured as a mobile base station. For terminal 420j accessing RAN 400 through network element 420i, network element 420i is a base station; but for base station 410a, network element 420i is a terminal. Access network equipment 410 and terminal 420 are sometimes both referred to as communication devices. For example, network elements 410a and 410b in Figure 4 can be understood as communication devices with base station functions, and network elements 420a-420j can be understood as communication devices with terminal functions.
[0105] In one possible scenario, the access network device can be a base station, an evolved NodeB (eNodeB), an access point (AP), a transmission and receiving point (TRP), a next-generation NodeB (gNB), a base station in a future mobile communication system, or an access node in a WiFi system. The access network device can be a macro base station (as shown in Figure 4, 410a), a micro base station or indoor station (as shown in Figure 4, 410b), a relay node or donor node, or a radio controller in a CRAN scenario. Optionally, the access network device can also be a server, wearable device, vehicle, or in-vehicle equipment. For example, the access network device in vehicle-to-everything (V2X) technology can be a roadside unit (RSU). All or part of the functions of the access network device in this application can also be implemented through software functions running on hardware, or through virtualization functions instantiated on a platform (e.g., a cloud platform). The access network device in this application can also be a logical node, logical module, or software capable of implementing all or part of the access network device functions.
[0106] In another possible scenario, multiple RAN nodes collaborate to assist the terminal in achieving wireless access, with each RAN node performing a portion of the base station's functions. For example, RAN nodes can be central units (CUs), distributed units (DUs), CU-control plane (CPs), CU-user plane (UPs), or radio units (RUs), etc. CUs and DUs can be separate entities or included in the same network element, such as a baseband unit (BBU). RUs can be included in radio frequency equipment or radio frequency units, such as remote radio units (RRUs), active antenna units (AAUs), or remote radio heads (RRHs).
[0107] In different systems, CU (or CU-CP and CU-UP), DU, or RU may have different names, 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, CU-CP can also be called O-CU-CP, CU-UP can also be called O-CU-UP, and RU can also be called O-RU. For ease of description, this application uses CU, CU-CP, CU-UP, DU, and RU as examples. 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.
[0108] For example, as shown in Figure 5, in a traditional RAN, the functionality of the gNB is implemented by a BBU and RU provided by a single vendor. In the O-RAN architecture, the functionality of the gNB can be implemented by the O-CU, O-DU, and O-RU. The O-CU communicates with the core network via a backhaul link, the O-CU and O-DU communicate via a midhaul link, and the O-DU and O-RU communicate via a fronthaul link. Furthermore, the O-CU, O-DU, and O-RU can be provided by multiple different vendors.
[0109] As one possible implementation, the CU and DU each implement some protocol layer functions of the access network device. For example, some protocol layer functions are implemented in the CU, while the remaining or all protocol layer functions are implemented in the DU. The CU can control one or more DUs. For instance, the CU can deploy the RRC layer, SDAP layer, and PDCP layer; or, the CU can be understood as a logical node carrying the RRC, SDAP, and PDCP layers of the access network device. Thus, the CU has the processing capabilities of the RRC, PDCP, and SDAP layers. Of course, the CU can also implement or carry other control functions. Similarly, the DU can deploy the RLC layer, MAC layer, and PHY layer; or, the DU can be understood as a logical node carrying the RLC, MAC, and PHY layers. Thus, the DU has the processing capabilities of the RLC, MAC, and PHY layers; of course, the DU can also implement or carry other functions.
[0110] In one example, as shown in Figure 6, the CU may include CU-CP and CU-UP. CU-CP and CU-UP communicate via an E1 interface. CU-CP can be understood as a logical node carrying the RRC layer and the PDCP control plane (PDCP control plane part of PDCP, PDCP-C), used to implement the CU's control plane functions. CU-CP can communicate with the DU via F1-C. CU-UP can be understood as a logical node carrying the SDAP layer and the PDCP user plane (PDCP user plane part of PDCP, PDCP-U), used to implement the CU's user plane functions. CU-UP can communicate with the DU via F1-U.
[0111] The functional division of CU and DU described above is merely an example and does not constitute a limitation on CU and DU. Furthermore, the functions of CU and DU can be configured as needed. For example, CU or DU can be configured as a node with more protocol layer functions, or as a node with partial protocol layer processing functions.
[0112] As one possible implementation, RAN400 may also include a non-real time ran intelligent controller (Non-RT RIC or NRT RIC) and / or a near-real time ran intelligent controller (Near-RT RIC or nRT RIC).
[0113] Non-RT RIC is used to implement non-real-time intelligent management of the RAN, enabling artificial intelligence (AI) / machine learning (ML) for model training and updates, and guiding applications / functions within the Near-RT RIC based on policies. Near-RT RIC is used to implement near real-time intelligent management of the RAN, achieving near real-time control and optimization of O-RAN modules and resources through data collection and related operations on the E2 interface. The E2 interface can be understood as an open interface between two nodes (or endpoints).
[0114] It should be noted that the communication system described in the embodiments of this application is for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and does 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.
[0115] The following description, using the system shown in Figure 4 as an example, illustrates the communication method provided in this application. It should be noted that the message names, parameter names, or information names between devices in the following embodiments are merely examples; other names may exist in other embodiments, and the method provided in this application does not specifically limit these.
[0116] It is understood that in the embodiments of this application, each device may perform some or all of the steps in the embodiments of this application. These steps or operations are merely examples, and the embodiments of this application may also perform other operations or variations thereof. Furthermore, the steps may be performed in different orders as presented in the embodiments of this application, and it is not necessary to perform all the operations in the embodiments of this application.
[0117] It is understood that this application uses a terminal and an access network device as examples to illustrate the execution of the interaction, but this application does not limit the execution subject of the interaction. For example, the method executed by the terminal in this application can also be executed by a module applied to the terminal (e.g., a chip, chip system, or processor), or by a logical node, logical module, or software that can implement all or part of the terminal's functions; similarly, the method executed by the access network device can also be executed by a module applied to the access network device (e.g., a chip, chip system, or processor), or by a logical node, logical module, or software that can implement all or part of the access network device's functions.
[0118] Typically, data packets entering a PDCP entity are processed serially at both the sending and receiving ends in the order described above. However, the current serial processing has a relatively high latency, which may not meet the latency requirements of low-latency services. Therefore, multiple first modules can be used for parallel processing. The first module is used to implement data compression / decompression. Data compression / decompression may include compression / decompression of the data packet header and / or compression / decompression of the data payload. For example, the first module can be the ROHC module described above.
[0119] In other words, multiple first modules can be used for parallel processing within a PDCP entity. For example, taking a PDCP entity comprising two first modules as an example, Figure 7 shows a schematic diagram of the structure of a PDCP entity provided in this application. Referring to Figure 7, the PDCP entity at the transmitting end includes an SN module (which can also be understood as a transmission buffer), two first modules, two security modules, and a header / routing module; the PDCP entity at the receiving end includes a header removal module, two security modules, a reordering module, and two first modules. The security modules at the transmitting end are used to implement integrity protection and / or encryption functions, while the security modules at the receiving end are used to implement integrity verification and / or decryption functions. The header / routing module at the transmitting end is used to add the PDCP header and can also be used to implement the functions of existing routing / copying modules. The header removal module at the receiving end is used to remove the PDCP header, and the reordering module is used to reorder the data packets processed by the security modules before submitting them to the first modules.
[0120] Figure 8 shows a schematic diagram of another PDCP entity provided in this application. The difference between this and the PDCP entity shown in Figure 7 is that: at the transmitting end, data packets processed by two first modules are concatenated in a concatenation module and then submitted to a security module for processing; at the receiving end, data packets are processed through a security module, and reordered data packets are segmented in a segmentation module and then submitted to the corresponding first module for processing.
[0121] It should be noted that Figures 7 and 8 are merely illustrative examples illustrating the structure of a PDCP entity. In practical applications, a PDCP entity including multiple first modules may also have other structures. For example, the first module at the receiving end may be located before the reordering module, and this application does not limit this.
[0122] While using a multi-module parallel processing approach can reduce processing latency, it also consumes significant hardware resources, and business data does not always require high-speed processing. Therefore, this application also provides a communication method for dynamically adjusting the number of first modules used during data transmission, thereby achieving a balance between business latency and resource consumption.
[0123] The communication method provided in the embodiments of this application is described below. As shown in FIG9, the communication method may include the following steps:
[0124] S901. The first communication device determines the first information. For example, the first communication device may be an access network device or a terminal.
[0125] The first information is used to update the number of the first module. This first module is used to implement data compression / decompression. For example, data compression / decompression may include compression / decompression of the packet header and / or compression / decompression of the data payload. For instance, the first module may be deployed in a PDCP entity, and it may be the aforementioned ROHC module, or a header or uplink data compression / decompression module.
[0126] For example, the first information is used to update the number of first modules, which can also be understood as: the first information is used to indicate the creation / deletion of the first module, or the first information is used to indicate the number of first modules created / deleted; or, the first information is used to indicate the activation / deactivation of the first module, or the first information is used to indicate the number of first modules activated / deactivated.
[0127] For ease of explanation, the following embodiments of this application use the first information to update the first module in the form of a first quantity N, where N is a positive integer greater than or equal to 1, such as N being 1, 2, 3 or 4.
[0128] In one possible implementation, before step S901, during the communication process between the first communication device and the second communication device, the number of first modules used by the first communication device and the second communication device is a second number M, where M is a positive integer greater than or equal to 1, such as M being 1, 2, 3, or 4. N and M are different; for example, N can be greater than M or N can be less than M, without limitation. Wherein, if the first communication device is an access network device, the second communication device can be a terminal; if the first communication device is a terminal, the second communication device can be an access network device or another terminal, that is, this application can also be applied to sidelink (SL) communication scenarios.
[0129] For example, the first information can be understood as the new configuration, and the information used to configure the number of the first module to be the second number before step S901 can also be understood as the old configuration.
[0130] In one possible implementation, the first information includes at least one of the following: the updated number of first modules, the change in the number of first modules compared to the number before the update, information indicating one of a plurality of pre-configured numbers of first modules, or identification information of the updated first modules.
[0131] As one possible implementation, the number of the updated first modules is the first quantity N.
[0132] As one possible implementation, the change in the number of the first module compared to before the update can be NM. In this case, if the difference is greater than 0, it means that the number of the first module needs to be increased; if the difference is less than 0, it means that the number of the first module needs to be decreased.
[0133] Alternatively, the change in the number of the first module compared to before the update can be |NM|, where || represents the absolute value. In this scenario, the number of the first module can be increased or decreased by a cell carrying this change value. For example, if the change value is carried by a first cell (such as addROHC), it indicates that the number of the first module needs to be increased; if the change value is carried by a second cell (removeROHC), it indicates that the number of the first module needs to be decreased. Alternatively, in this scenario, the first information can also include information indicating whether the number of the first module needs to be increased or decreased. For example, this information can be carried by 1 bit. If this bit is set to a first value (such as 1), it indicates that the number of the first module needs to be increased; if this bit is set to a second value (such as 0), it indicates that the number of the first module needs to be decreased.
[0134] As one possible implementation, information indicating one of a plurality of pre-configured first modules is used to indicate the first quantity. That is, a plurality of quantities can be pre-configured, and one of these quantities can be designated as the first quantity. For example, this information could be an index of the first quantity among the plurality of quantities.
[0135] For example, taking the multiple quantities of the first module pre-configured in the access network device and their corresponding indices as shown in Table 1, assuming the first quantity is 2, the information indicating the first quantity can be the index "1" of the quantity 2 among the multiple quantities, and the bit carrying this information can be set to "01".
[0136] Table 1
[0137] As one possible implementation, the updated identifier information of the first module can be the identifier information of the added or removed first module. For example, taking the use of first module 1 and first module 2 before step S901 as an example, if the updated identifier information of the first module is used to identify first module 3, it means that a first module needs to be added and first module 3 needs to be established / activated; if the updated identifier information of the first module is used to identify first module 1, it means that a first module needs to be removed and the first module deleted / deactivated is first module 1.
[0138] S902, the first communication device sends first information to the second communication device. Correspondingly, the second communication device receives the first information from the first communication device.
[0139] As one possible implementation, the first information can be transmitted through the control plane, that is, the first information can be carried in control signaling, such as RRC signaling (e.g., RRC reconfiguration message), MAC control element (CE), downlink control information (DCI), or uplink control information (UCI).
[0140] For example, when the first communication device is an access network device and the second communication device is a terminal, the first information can be carried in RRC signaling, MAC CE, or DCI. When the first communication device is a terminal and the second communication device is an access network device, the first information can be carried in RRC signaling, MAC CE, or UCI.
[0141] As another possible implementation, the first information can be transmitted via the user plane, meaning the first information can be carried in a data packet. For example, the first information can be carried in the header of the data packet, or part of the first information can be carried in the header of the data packet, and another part can be carried in the payload.
[0142] S903. The second communication device configures a first number of first modules according to the first information.
[0143] In one possible implementation, the second communication device can create / delete at least one first module based on the first information, and after creating / deleting at least one first module, the number of first modules is a first quantity. Alternatively, the second communication device can activate / deactivate at least one first module based on the first information, and after activating / deactivating at least one first module, the number of first modules is a first quantity.
[0144] As one possible implementation, creating / deleting the first module and activating / deactivating the first module can be understood as two update modes for updating the number of the first module. For ease of description, creating / deleting the first module will be referred to as Mode 1, and activating / deactivating the first module will be referred to as Mode 2. That is, in Mode 1, the number of the first module is updated by creating / deleting the first module; in Mode 2, the number of the first module is updated by activating / deactivating the first module.
[0145] As one possible implementation, deleting the first module can be understood as: releasing the resources occupied by the first module and the context included by the first module; creating the first module can be understood as: allocating resources to the first module and creating the context included by the first module. Deactivating the first module can be understood as: retaining the first module and the context included by the first module, but not using the first module; activating the first module can be understood as: resuming the use of the first module and restoring the context included by the first module.
[0146] For example, taking the scenario where the first and second communication devices can simultaneously configure or use up to four first modules, in mode 1, as shown in Figure 10(a), at time 1, the number of first modules configured is 1, and the second communication device establishes first module 1; at time 2, the number of first modules changes from 1 to 3, therefore, the second communication device establishes first module 2 and first module 3; at time 3, the number of first modules changes again from 3 to 2, then the second communication device deletes first module 3. After deleting first module 3, the resources occupied by first module 3 and its included context are released.
[0147] In Mode 2, as shown in Figure 10(b), at time 1, the number of first modules configured is 1, and the second communication device activates first module 1; at time 2, the number of first modules changes from 1 to 3, therefore the second communication device activates first modules 2 and 3; at time 3, the number of first modules changes again from 3 to 2, and the second communication device deactivates first module 3. After deactivating first module 3, first module 3 and its included context are still retained.
[0148] As one possible implementation, in Mode 1, after the number of first modules changes, the first modules can be renumbered. For example, if the number of first modules is 3, the three first modules are numbered 1, 2, and 3 respectively; if the number of first modules after the update is 2, regardless of which of the original 3 first modules is deleted, the remaining two first modules are numbered 1 and 2 respectively.
[0149] In Mode 2, the number or index of the first module does not change with the number of first modules. For example, taking the first and second communication devices as supporting a maximum of 4 first modules in parallel, these 4 first modules are numbered 1, 2, 3, and 4 respectively. If the number of first modules is configured to be 1, then the number of the first module can be 1, 2, 3, or 4; if the number of first modules is configured to be 3, then the numbers of these two first modules can be three of 1, 2, 3, and 4, for example, first module 1, first module 3, and first module 4; if it is necessary to deactivate a first module, then the first module to be deactivated is one of first module 1, first module 3, and first module 4.
[0150] In one possible implementation, the second communication device may update the number of the first module via mode 1 or via mode 2, and there are two possible implementations:
[0151] As a first possible implementation, the first communication device can indicate an update mode to the second communication device, for example, indicating whether to update the number of the first modules via mode 1 or mode 2. The second communication device can then update the number of the first modules according to the mode indicated by the first communication device.
[0152] For example, the first communication device can determine whether to use mode 1 or mode 2 based on changes in service requirements. For example, if there are significant changes in service requirements / traffic, or if the frequency of changes in service requirements / traffic is low, the first communication device can determine to use mode 1; if there are minor changes in service requirements / traffic, or if the frequency of changes in service requirements / traffic is high, the first communication device can determine to use mode 2.
[0153] It is understandable that changes in business may lead to changes in resources. Therefore, the first communication device determines the update mode to be used based on the changes in business, which can also be understood as the first communication device determining the update mode to be used based on the resource situation.
[0154] For example, the first communication device can explicitly indicate the update mode. For instance, the first information may also carry information indicating the update mode. This information could be a 1-bit mode indicator, where a first value (e.g., 1) indicates mode 1, and a second value (e.g., 0) indicates mode 2. When the update mode indicator indicates mode 1, the first information can be considered as indicating the creation / deletion of a first module, or indicating the number of first modules created / deleted. Similarly, when the update mode indicator indicates mode 2, the first information can be considered as indicating the activation / deactivation of a first module, or indicating the number of first modules activated / deactivated.
[0155] Alternatively, the first communication device may implicitly indicate the update mode. For example, if the first information includes the updated number of first modules, the change in the number of first modules compared to before the update, or information indicating one of a plurality of pre-configured first modules, the update mode is indicated as mode 1; if the first information includes identification information of the updated first modules, the update mode is indicated as mode 2. In the case of implicitly indicating mode 1, the first information may be considered as indicating the creation / deletion of first modules, or the first information may be considered as indicating the number of first modules created / deleted; in the case of implicitly indicating mode 2, the first information may be considered as indicating the activation / deactivation of first modules, or the first information may be considered as indicating the number of first modules activated / deactivated.
[0156] For example, the update mode can be implicitly indicated by the type of the message carrying the first information. For instance, if the first information is carried in message 1 (message type 1), the update mode is indicated as mode 1; if the first information is carried in message 2 (message type 2), the update mode is indicated as mode 2.
[0157] For example, the update mode can be implicitly indicated by the message cell carrying the first information. For instance, if the first information is carried in message cell 1 (such as add / removeROHC), the update mode is indicated as mode 1; if the first information is carried in message cell 2 (such as Activate / Deactivate), the update mode is indicated as mode 2.
[0158] As a second possible implementation, the second communication device can update the quantity of the first module using a default update mode. This default update mode can be predefined by the protocol or the update mode used by the second communication device when it last updated the quantity of the first module; there are no restrictions.
[0159] In one possible implementation, if the first information includes the updated number of first modules (i.e., the first number N), and the second communication device determines that the number of first modules is updated via mode 1, then if the first number is greater than the second number, the second communication device establishes a third number of first modules; if the first number is less than the second number, the second communication device deletes the third number of first modules. If the second communication device determines that the number of first modules is updated via mode 2, then if the first number is greater than the second number, the second communication device activates a third number of first modules; if the first number is less than the second number, the second communication device deactivates the third number of first modules. For example, the third number is the absolute value of the difference between the second number and the first number.
[0160] If the first information includes a change in the number of first modules compared to before the update, and this change is NM, and the second communication device determines that the number of first modules is updated via mode 1, then if the change is greater than 0, the second communication device establishes a third number of first modules; if the change is less than 0, the second communication device deletes a third number of first modules. If the second communication device determines that the number of first modules is updated via mode 2, then if the change is greater than 0, the second communication device activates a third number of first modules; if the change is less than 0, the second communication device deactivates a third number of first modules. For example, the third number is |NM|.
[0161] If the first information includes a change in the number of first modules compared to before the update, and this change is |NM|, then if the second communication device determines that the number of first modules is updated via mode 1, the second communication device establishes a third number of first modules when the change is carried through the first cell; and deletes the third number of first modules when the change is carried through the second cell. If the second communication device determines that the number of first modules is updated via mode 2, then the second communication device activates a third number of first modules when the change is carried through the first cell; and deactivates the third number of first modules when the change is carried through the second cell. For example, the third number is |NM|.
[0162] When the first information includes information indicating one of a plurality of pre-configured first modules, the second communication device can determine the first quantity N based on the information and then configure the first quantity of first modules. The relevant implementation of the second communication device when the first information includes the updated quantity of first modules can be referred to, and will not be repeated here.
[0163] If the first information includes the updated identifier information of the first module, and the second communication device determines that the number of first modules is updated via mode 1, then if the identifier of the currently used first module does not include the identifier indicated by the identifier information, the second communication device establishes the first module corresponding to that identifier; if the identifier of the currently used first module includes the identifier indicated by the identifier information, the second communication device deletes the first module corresponding to that identifier. If the second communication device determines that the number of first modules is updated via mode 2, then if the identifier of the currently used first module does not include the identifier indicated by the identifier information, the second communication device activates the first module corresponding to that identifier; if the identifier of the currently used first module includes the identifier indicated by the identifier information, the second communication device deactivates the first module corresponding to that identifier.
[0164] Based on the two update modes described above, in Mode 1, when the number of first modules decreases, some resources and their contexts previously occupied by the first modules can be released, significantly reducing resource consumption. In Mode 2, when the number of first modules increases, since the previously deactivated first modules and their contexts are still retained, the first modules can be activated more quickly, reducing the latency caused by changes in the number of first modules and thus improving the overall processing speed.
[0165] Understandably, the first communication device also needs to be configured with a first number of first modules. This application does not specify the order in which the first communication device and the second communication device are configured with the first number of first modules.
[0166] In one possible implementation, the first information in step S902 can be carried by different signaling / data depending on the update mode. For example, in update mode 1, the first information can be transmitted through the control plane, and in update mode 2, the first information can be transmitted through the user plane; or, in update mode 1, the first information can be transmitted through the user plane, and in update mode 2, the first information can be transmitted through the control plane, without limitation.
[0167] In one possible implementation, after step S903, the first communication device and the second communication device communicate using a first number of first modules.
[0168] In one possible implementation, the first communication device can update the number of the first modules multiple times. For example, after the first and second communication devices have been communicating using a first number of the first modules for a period of time, the first communication device can send a third message to update the number of the first modules to a fourth number. This fourth number can be greater than or less than the first number, without limitation. After receiving the third message, the second communication device can configure a fourth number of the first modules according to the third message, and the first communication device also configures a fourth number of the first modules. Then, the two devices communicate using the fourth number of the first modules.
[0169] Based on this scheme, the first communication device can send information to update the number of the first modules. Therefore, the number of the first modules can be flexibly configured. For example, when a higher processing speed is required, the first communication device can instruct an increase in the number of first modules to meet service latency requirements; when a higher processing speed is not required, the first communication device can instruct a decrease in the number of first modules to reduce resource utilization or equipment energy consumption. In other words, this scheme can dynamically set the parallelism level of the first modules, thereby flexibly using different numbers of first modules to achieve a balance between service latency and resource utilization.
[0170] The overall flow of the communication method provided in this application has been described above. The following section provides a detailed introduction to the implementation of this communication method.
[0171] In one possible implementation, in step S901 above, the first communication device determines the first information based on the resource status of the transmitting end and / or the resource status of the receiving end. The resource status of the transmitting end may include at least one of the following: the QoS profile of the service, the service traffic status, the hardware utilization status of the transmitting end, or the hardware load status of the transmitting end. The resource status of the receiving end may include at least one of the following: the QoS profile of the service, the service traffic status, the hardware utilization status of the receiving end, or the hardware load status of the receiving end. The aforementioned service may refer to a service mapped to the DRB corresponding to the first module, or it may refer to a service mapped to the DRB corresponding to the PDCP entity including the first module.
[0172] For example, the sending end can be a first communication device, and the receiving end can be a second communication device; or, the sending end can be a second communication device, and the receiving end can be a first communication device.
[0173] As one possible implementation, the aforementioned resources can be one or more of software resources, hardware resources, network resources, or air interface resources. Resource conditions can include any circumstances that cause changes to the resources.
[0174] As an example, the first communication device can determine the first information based on the service's QoS profile when the QoS profile of the service changes. Here, a change in the service's QoS profile can also be understood as a change in the service's QoS requirements or service specifications.
[0175] For example, when the QoS profile of a service indicates that the service latency requirement is high, the first information can be used to update the number of the first module to a first number that is greater than the second number, i.e., N is greater than M; when the QoS profile of a service indicates that the service latency requirement is low, the first information can be used to update the number of the first module to a first number that is less than the second number, i.e., N is less than M.
[0176] For example, since the first communication device and the second communication device act as the sender and receiver of a service, or as the receiver and sender of a service, it can be assumed that their service QoS profiles are the same. Therefore, it can also be assumed that the first communication device determines the first information based on the service QoS profiles of the sender and the receiver.
[0177] As an example, the first communication device can determine first information based on the service traffic or the changes in service traffic when the service traffic changes. The service traffic can be the actual measured traffic or the predicted traffic, such as traffic predicted based on a traffic prediction model.
[0178] For example, when the traffic of a service increases, the first information can be used to update the quantity of the first module to a first quantity that is greater than the second quantity, i.e., N is greater than M; when the traffic of a service decreases, the first information can be used to update the quantity of the first module to a first quantity that is less than the second quantity, i.e., N is less than M.
[0179] For example, since the first communication device and the second communication device act as the sender and receiver of a service, or as the receiver and sender of a service, their service traffic can be considered to be the same. Therefore, it can also be considered that the first communication device determines the first information based on the service traffic of the sender and the service traffic of the receiver.
[0180] As an example, the hardware utilization or hardware load of the transmitting / receiving end can be determined by the transmitting / receiving end. The first communication device can determine first information based on the changed hardware utilization or load when the hardware utilization or load of the transmitting / receiving end changes. For example, if the hardware utilization or load decreases, the first information can be used to update the number of the first modules to a first quantity greater than the second quantity, i.e., N is greater than M; if the hardware utilization or load increases, the first information can be used to update the number of the first modules to a first quantity less than the second quantity, i.e., N is less than M.
[0181] For example, the first communication device can determine the first information based on the changed hardware utilization or load at the transmitting end and the changed hardware utilization or load at the receiving end. For instance, if the hardware utilization or load at both the transmitting and receiving ends decreases, the first information can be used to update the number of the first modules to a first number greater than the second number, i.e., N greater than M; if the hardware utilization or load at both the transmitting and receiving ends increases, the first information can be used to update the number of the first modules to a first number less than the second number, i.e., N less than M.
[0182] Alternatively, if the reduction in hardware utilization or load at the transmitting end is greater than or equal to value A (e.g., 10%), and the reduction in hardware utilization or load at the receiving end is greater than or equal to value B (e.g., 5%), the first information can be used to update the number of the first module to a first quantity greater than the second quantity, i.e., N is greater than M. If the increase in hardware utilization or load at the transmitting end is greater than or equal to value C (e.g., 12%), and the increase in hardware utilization or load at the receiving end is greater than or equal to value D (e.g., 7%), the first information can be used to update the number of the first module to a first quantity less than the second quantity, i.e., N is less than M. Values A, B, C, and D are merely examples, and this application does not specifically limit their values.
[0183] For example, the aforementioned hardware can be understood as hardware that carries or runs a communication protocol stack. Hardware utilization or load can be sensed through detection tools (such as detection software) at the transmitting / receiving end; these tools can be built into the hardware during development. Alternatively, hardware utilization or load can be reflected by hardware temperature; higher temperatures indicate higher hardware utilization or load, while lower temperatures indicate lower hardware utilization or load. Hardware temperature can be sensed through temperature sensing functions at the transmitting / receiving end; these functions can be provided during hardware assembly and integration (such as terminal assembly).
[0184] Furthermore, when the first communication device acts as a transmitter or receiver, and correspondingly the second communication device acts as a receiver or transmitter, the second communication device can send its hardware utilization rate or load to the first communication device. For example, the second communication device can periodically send its hardware utilization rate or load, or send the changed hardware utilization rate or load to the first communication device when its hardware utilization rate or load changes, without limitation.
[0185] As an example, the first communication device may determine the first information based on multiple factors, including the QoS profile of the service, the service traffic situation, or the utilization rate or load of the hardware resources of the sending / receiving end.
[0186] For example, when the QoS profile of a service indicates that the service latency requirement is increasing and the service traffic is increasing, the first information can be used to update the number of the first module to a first number that is greater than the second number, i.e., N is greater than M; when the QoS profile of a service indicates that the service latency requirement is decreasing and the service traffic is decreasing, the first information can be used to update the number of the first module to a first number that is less than the second number, i.e., N is less than M.
[0187] For example, when the QoS profile of a service indicates that the service latency requirement is high and the hardware utilization or load of the sending / receiving end is reduced, the first information can be used to update the number of the first module to a first number that is greater than the second number, i.e., N is greater than M; when the QoS profile of a service indicates that the service latency requirement is low and the hardware utilization or load of the sending / receiving end is increased, the first information can be used to update the number of the first module to a first number that is less than the second number, i.e., N is less than M.
[0188] Based on this implementation, the first communication device can flexibly adjust the number of the first module based on resource conditions or the actual situation of the service, such as the QoS configuration file of the service, the service traffic situation, and the hardware utilization / load of both communicating parties. Thus, when a higher processing speed is required, the device can instruct to increase the number of the first module to meet the service latency requirements; when a higher processing speed is not required, the device can instruct to reduce the number of the first module to reduce resource occupancy or device energy consumption, thereby achieving a balance between service latency and resource occupancy.
[0189] In one possible implementation, during or before step S901, the first communication device may further indicate a mapping rule to the second communication device. This mapping rule can be understood as a mapping or correspondence between data packets and the first module, or it can be used to indicate the sequence number (e.g., PDCP SN) of each data packet processed by the first module.
[0190] As one possible implementation, the mapping rules are related to the number of first modules; that is, the mapping rules may differ depending on the number of first modules. For example, when the number of first modules is 2, the mapping rules may be: data packets with odd sequence numbers are mapped to first module 1 for processing, and data packets with even sequence numbers are mapped to first module 2 for processing; when the number of first modules is 3, the mapping rules may be: data packets with sequence numbers 0, 3, 6, 9... are mapped to first module 1 for processing, data packets with sequence numbers 1, 4, 7, 10... are mapped to first module 2 for processing, and data packets with sequence numbers 2, 5, 8, 11... are mapped to first module 3 for processing.
[0191] As one possible implementation, the first communication device may send the mapping rule associated with the first quantity to the second communication device in step S901 above. For example, the mapping rule associated with the first quantity and the first information may be carried in the same message or data packet, or in different messages or data packets, without limitation.
[0192] As another possible implementation, the first communication device can pre-configure multiple mapping rules associated with different quantities to the second communication device before step S901, such as mapping rules associated with sending 1, 2, 3, or 4 first modules respectively; or the protocol can pre-define multiple mapping rules associated with different quantities. In this scenario, in step S901, the second communication device can determine the mapping rule associated with the first quantity from the pre-configured or pre-defined multiple mapping rules based on the first quantity.
[0193] As one possible implementation, when the first communication device and the second communication device communicate using a first number of first modules, data packets are mapped to the corresponding first modules for processing according to the mapping rules associated with the first number.
[0194] In one possible implementation, in step S901 above, the first communication device may further send second information to the second communication device. Correspondingly, the second communication device receives the second information from the first communication device. This second information indicates the timing for updating the number of first modules, and / or indicates a first timer used to control the duration for which the number of first modules before the update applies. For example, the timing for updating the number of first modules can also be understood as the timing when the first information (or new configuration) takes effect.
[0195] As one possible implementation, the second information may include a first sequence number, which indicates when the quantity of the first module is updated. For example, if the sequence number of the data packet acquired by the first and second communication devices is greater than or equal to the first sequence number, the quantity of the first module is updated, or the data packet is mapped using a mapping rule associated with the first quantity; in this case, it can also be understood that the first information applies to data packets with sequence numbers greater than or equal to the first sequence number. If the sequence number of the data packet acquired by the first and second communication devices is less than the first sequence number, the data packet is mapped using a mapping rule associated with the second quantity. For example, the first sequence number may also be called a new configuration effective sequence number (new config effective SN).
[0196] As another possible implementation, the second information may include a sequence number bias, which indicates the timing for updating the number of the first modules. For example, the first and second communication devices may determine a first sequence number based on the sequence number bias, and then determine the timing for updating the number of the first modules based on the first sequence number. For instance, the first sequence number may be the sum of a second sequence number and the sequence number bias. The second sequence number may be the sequence number of the last data packet transmitted at the current moment, and the current moment may be the moment when the second communication device receives the second information, or the moment when the first communication device estimates that the second communication device will receive the second information. The timing for determining the number of the first modules based on the first sequence number is explained in the previous possible implementation and will not be repeated here.
[0197] As another possible implementation, the second information may include a first duration indicating when the number of the first modules should be updated. For example, the number of the first modules may be updated after a first duration following the receipt of the second information, or the data packet may be mapped using a mapping rule associated with the first quantity.
[0198] As one possible implementation, the first timer is used to control the duration of the application of the first module before the update. It can also be understood as: the first timer is used to control or determine the failure time of the mapping rule associated with the second quantity, or the first timer is used to control the failure time of the old configuration.
[0199] For example, during the execution of the first timer, or if the first timer has not expired, the mapping rule associated with the quantity of the first module before the update, or the quantity associated with the second quantity, is valid, or the old configuration is valid. If the first timer expires, the quantity of the first module before the update, or the mapping rule associated with the second quantity, or the old configuration is invalid.
[0200] For example, the first timer may start immediately after the second communication device receives the second information, or it may start after the second communication device receives the second information at a second interval, or it may start at a time point indicated by the first communication device. This application does not specifically limit this.
[0201] For example, the first timer may also be called the old configuration expiration timer, or the first timer may have other names, without limitation.
[0202] Optionally, the second information and the first information may be carried in the same message or data packet, or they may be carried in different messages or data packets. This application does not specifically limit this.
[0203] Based on this implementation method, the effective timing of the new configuration and / or the invalidation timing of the old configuration can be configured, enabling the two communicating parties to connect the old and new configurations based on the timing, thereby ensuring the continuity of services, avoiding the impact of updating the number of the first module on services, and thus improving service performance.
[0204] In one possible implementation, as described in step S902, the first information can be transmitted via the control plane or via the user plane. Furthermore, the first communication device can be an access network device, and the second communication device can be a terminal; or, the first communication device can be a terminal, and the second communication device can be an access network device. Additionally, the first communication device can be a data transmitter, and the second communication device can be a data receiver; or, the first communication device can be a data receiver, and the second communication device can be a data transmitter. Therefore, the communication method provided in this application can be applied to the following four scenarios:
[0205] Scenario 1: The first information is transmitted via the control plane; the first communication device is an access network device, and the second communication device is a terminal; the first communication device (i.e., the access network device) is the data transmitter, and the second communication device (i.e., the terminal) is the data receiver. That is, in a downlink communication scenario, the first information is transmitted via the control plane.
[0206] Scenario 2: The first information is transmitted via the control plane; the first communication device is an access network device, and the second communication device is a terminal; the first communication device (i.e., the access network device) is the data receiver, and the second communication device (i.e., the terminal) is the data transmitter. That is, in the uplink communication scenario, the first information is transmitted via the control plane.
[0207] Scenario 3: The first information is transmitted via the user plane; the first communication device is an access network device, and the second communication device is a terminal; the first communication device (i.e., the access network device) is the data sender, and the second communication device (i.e., the terminal) is the data receiver. That is, in the downlink communication scenario, the first information is transmitted via the user plane.
[0208] Scenario 4: The first information is transmitted via the user plane; the first communication device is a terminal, and the second communication device is an access network device; the first communication device (i.e., the terminal) is the data sender, and the second communication device (i.e., the access network device) is the data receiver. That is, in the uplink communication scenario, the first information is transmitted via the user plane.
[0209] In the scenario described above, namely, in downlink communication where the first information is transmitted via the control plane, as shown in Figure 11, the communication method provided in this application may include the following steps:
[0210] S1101. The access network device sends control signaling to the terminal. Correspondingly, the terminal receives the control signaling from the access network device.
[0211] For example, the control signaling can be RRC signaling, MAC CE, or DCI. Further, the RRC signaling can be an RRC reconfiguration message, such as RRC Reconfiguration-RadiobearerConfig.
[0212] The control signaling includes first information. The first information may include at least one of the following: the updated number of first modules, the change in the number of first modules compared to the previous number, information indicating one of a plurality of pre-configured first modules, or identification information of the updated first modules. Further, the first information may also include information indicating the update mode, as described in steps S901 and S903 above. The implementation of the access network device determining the first information can be found in the description of the first communication device determining the first information in S901 above, and will not be repeated here.
[0213] Optionally, the control signaling may also include or indicate at least one of the following: a mapping rule associated with the first quantity, the timing of updating the quantity of the first module, or a first timer. Refer to the above-mentioned descriptions; further details will not be repeated here. Furthermore, in the following embodiments of this application, the information used to indicate the timing of updating the quantity of the first module is a first sequence number, as an example.
[0214] S1102. The terminal configures a first number of first modules based on the first information.
[0215] As one possible implementation, if the first quantity is greater than the second quantity, the terminal can configure the first quantity of first modules immediately upon receiving the first information, such as immediately establishing or activating the third quantity of first modules. If the first quantity is less than the second quantity, the terminal can delete or deactivate the third quantity of first modules after all data packets with sequence numbers less than the first sequence number have been received, or after the first timer expires.
[0216] Optionally, if the control signaling in step S1101 is an RRC reconfiguration message, after step S1101, the terminal may also send an RRC reconfiguration complete message to the access network device.
[0217] For example, when the first quantity is greater than the second quantity, the terminal can send an RRC reconfiguration completion message to the access network device after configuring the first module according to the first information (i.e., after step S1102). When the first quantity is less than the second quantity, the terminal can send an RRC reconfiguration completion message to the access network device after determining the number of first modules that can be updated to the first quantity according to the first information (possibly before step S1102). In other words, when the first quantity is less than the second quantity, the terminal can send an RRC reconfiguration completion message to the access network device before configuring the first quantity of first modules, and this RRC reconfiguration completion message indicates that the terminal supports updating the first quantity of first modules.
[0218] If the first quantity is less than the second quantity, the update of the first module quantity can be performed after all data packets with sequence numbers less than the first sequence number have been received, or after the first timer expires. That is, step S1102 is executed after all data packets with sequence numbers less than the first sequence number have been received, or after the first timer expires.
[0219] S1103. The access network device sends at least one first data packet to the terminal.
[0220] In this configuration, the sequence number of the first data packet is less than the first sequence number. The access network device sends at least one first data packet to the terminal according to the old configuration. That is, the access network device maps the at least one first data packet to the corresponding first module for processing and transmission according to the mapping rule associated with the second quantity.
[0221] For example, taking a first sequence number of 100 and a second quantity of 2 as an example, the access network device can map the first data packet with an odd sequence number that is less than or equal to 100 to the first module 1 for processing, and the first data packet with an even sequence number that is less than or equal to 100 to the first module 2 for processing, according to the mapping rules associated with the quantity 2.
[0222] Alternatively, taking a first sequence number of 20 and a second quantity of 3 as an example, the access network device can map the first data packet with sequence numbers of 0, 3, 6, 9, 12, 15, 18..., 96, 99 to the first module 1 for processing, the first data packet with sequence numbers of 1, 4, 7, 10, 13, 16, 19..., 97, 100 to the first module 2 for processing, and the first data packet with sequence numbers of 2, 5, 8, 11, 14, 17, 20..., 95, 98 to the first module 3 for processing, according to the mapping rules associated with the quantity of 3.
[0223] For example, for an access network device, since the access network device can obtain the first sequence number, when the access network device is the sender, after all data packets with sequence numbers less than the first sequence number have been sent, the access network device can determine that the old configuration on the access network device side is invalid. This embodiment of the application uses the example of all data packets with sequence numbers less than the first sequence number being sent after the at least one first data packet has been sent as an example. Therefore, on the access network device side, after the at least one first data packet has been sent, the old configuration is invalid.
[0224] S1104. The access network device sends at least one second data packet to the terminal.
[0225] The sequence number of the second data packet is greater than or equal to the sequence number of the first data packet. The access network device sends at least one second data packet to the terminal according to the new configuration. That is, the access network device maps at least one second data packet to the corresponding first module for processing and transmission according to the mapping rule associated with the first quantity.
[0226] For example, taking a second quantity equal to 2, a first quantity equal to 3, and a first sequence number of 100 as an example, the access network device can map the second data packets with sequence numbers of 100, 103, 106, 109... to the first module 1 for processing according to the mapping rules associated with the quantity 3, map the second data packets with sequence numbers of 101, 104, 107, 110... to the first module 2 for processing, and map the second data packets with sequence numbers of 102, 105, 108, 111... to the first module 3 for processing.
[0227] Alternatively, taking a second quantity equal to 3, a first quantity equal to 2, and a first sequence number of 100 as an example, the access network device can map the second data packet with an odd sequence number greater than or equal to 100 to the first module 1 for processing, and the second data packet with an even sequence number greater than or equal to 100 to the first module 2 for processing, according to the mapping rules associated with quantity 2.
[0228] In steps S1103 and S1104 above, due to the influence of the channel environment, the terminal may receive a second data packet first, and then receive a first data packet. Therefore, after receiving a data packet, if the data packet is a second data packet, the terminal processes the second data packet according to the new configuration, for example, mapping the data packet to the corresponding first module for processing according to the mapping rule associated with the first quantity; if the data packet is a first data packet, the terminal processes the first data packet according to the old configuration, for example, mapping the data packet to the corresponding first module for processing according to the mapping rule associated with the second quantity.
[0229] When the terminal processes the second data packet with the new configuration, the old configuration may not become invalid, because there may still be first data packets with sequence numbers less than the first sequence number that have not been received, and the terminal still needs to process these first data packets according to the old configuration. The old configuration on the terminal side becomes invalid after all data packets with sequence numbers less than the first sequence number are successfully received, or after the first timer expires.
[0230] Therefore, for the terminal, step S1102 may be executed before or after step S1103. For example, if the first quantity is greater than the second quantity, step S1102 may be executed before, after, or simultaneously with step S1103. If the first quantity is less than the second quantity, step S1102 is executed after step S1103. For example, after steps S1103 and S1104, if the terminal determines that all data packets with sequence numbers less than the first sequence number have been successfully received, or the first timer expires, the terminal executes step S1102 to delete / deactivate a third number of the first modules.
[0231] In the second scenario described above, i.e., in uplink communication where the first information is transmitted via the control plane, as shown in Figure 12, the communication method provided in this application may include the following steps:
[0232] S1201, The terminal sends a reconfiguration request to the access network device. Correspondingly, the access network device receives the reconfiguration request from the terminal.
[0233] This reconfiguration request is used to update the number of the first module. For example, this reconfiguration request could be a DRB reconfiguration request.
[0234] As one possible implementation, the reconfiguration request may carry configuration items suggested by the terminal. For example, it may carry at least one of the following suggested by the terminal: the updated number of the first module, the timing of updating the number of the first module, the update mode, or the duration of the first timer. The meanings of each configuration item can be found in the foregoing explanations and will not be repeated here.
[0235] S1202, The access network device sends control signaling to the terminal. Correspondingly, the terminal receives the control signaling from the access network device. Refer to the description of step S1101 above; it will not be repeated here.
[0236] As one possible implementation, after step S1201, the terminal may send a response message for the first information to the access network device. Correspondingly, the access network device receives the response message for the first information from the terminal. For example, if the control signaling is an RRC reconfiguration message, the response message may be an RRC reconfiguration complete message.
[0237] Optionally, if the first information does not indicate when to update the number of the first modules, the response information may carry information indicating when to update the number of the first modules, such as carrying a first sequence number. After receiving the response information, the access network device can determine whether to process a data packet using the new configuration or the old configuration based on the first sequence number.
[0238] S1203. The terminal configures a first number of first modules based on the first information.
[0239] As one possible implementation, if the first quantity is greater than the second quantity, the terminal can configure the first quantity of first modules immediately upon receiving the first information, such as immediately establishing or activating the third quantity of first modules. If the first quantity is less than the second quantity, the terminal can delete or deactivate the third quantity of first modules after all data packets with sequence numbers less than the first sequence number have been sent.
[0240] S1204. The terminal sends at least one first data packet to the access network device.
[0241] In this configuration, the sequence number of the first data packet is less than the first sequence number. The terminal sends at least one first data packet to the access network device according to the old configuration. That is, the terminal maps the at least one first data packet to the corresponding first module for processing and transmission according to the mapping rule associated with the second quantity.
[0242] For example, for a terminal, since the terminal can know the first sequence number, when the terminal is the sender, after all data packets with sequence numbers less than the first sequence number have been sent, the terminal can determine that the old configuration on the terminal side is invalid. In this embodiment of the application, after the at least one first data packet is sent, all data packets with sequence numbers less than the first sequence number are sent. Therefore, on the terminal side, after the at least one first data packet is sent, the old configuration is invalid.
[0243] In other words, for the terminal, when the first quantity is greater than the second quantity, step S1203 can be executed before, after, or simultaneously with step S1204. When the first quantity is less than the second quantity, step S1203 is executed after step S1204. For example, after step S1204, all data packets with sequence numbers less than the first sequence number are successfully sent, and the terminal executes step S1203.
[0244] S1205, The terminal sends at least one second data packet to the access network device.
[0245] The sequence number of the second data packet is greater than or equal to the sequence number of the first data packet. The terminal sends at least one second data packet to the access network device according to the new configuration. That is, the terminal maps at least one second data packet to the corresponding first module for processing and transmission according to the mapping rule associated with the first quantity.
[0246] In steps S1204 and S1205 above, for the access network device, due to the influence of the channel environment, the access network device may receive a second data packet first, and then receive a first data packet. Therefore, after the access network device receives a data packet, if the data packet is a second data packet, the access network device processes the second data packet according to the new configuration, for example, mapping the data packet to the corresponding first module for processing according to the mapping rule associated with the first quantity; if the data packet is a first data packet, the access network device processes the first data packet according to the old configuration, for example, mapping the data packet to the corresponding first module for processing according to the mapping rule associated with the second quantity.
[0247] For example, the access network device can determine whether a data packet is a first data packet or a second data packet based on a first sequence number. For instance, if the sequence number of a data packet is less than the first sequence number, the data packet is a first data packet; if the sequence number of a data packet is greater than or equal to the first sequence number, the data packet is a second data packet. The first sequence number can be determined by the access network device itself, or it can be indicated by the response information from the terminal mentioned above.
[0248] When the access network device processes the second data packet with the new configuration, the old configuration may not be invalid, because there may still be first data packets with sequence numbers less than the first sequence number that have not been received. The access network device still needs to process these first data packets according to the old configuration. The old configuration on the access network device side becomes invalid after all data packets with sequence numbers less than the first sequence number are successfully received, or after the first timer expires.
[0249] In one possible implementation, when the first information is transmitted via the user plane, such as in scenario three or four above, the first information can be carried in a data packet. For example, the data packet format may have the following two implementations:
[0250] Method 1: The packet header indicates the number of the first module after the update. For example, the packet header may include a first field indicating the first quantity.
[0251] As a first possible implementation, the value of the first field can be the first quantity. In this case, the first field can also be called the ROHC-num field, and of course, it can have other names without restriction.
[0252] For example, taking a PDCP data PDU as an example, the format of the PDCP data PDU can be as shown in Figure 13(a). Here, D / C indicates whether the data packet is a PDCP data PDU or a PDCP control PDU; setting it to "1" indicates that the current data packet is a PDCP data PDU, and setting it to "0" indicates that the current data packet is a PDCP control PDU. R represents reserved bits. PDCP SN represents the sequence number of the current data packet. ROHC-num represents the first field. DATA is the data portion. MAC-I represents the message authentication code for integrity (MAC-I), which is an optional field.
[0253] Alternatively, taking a PDCP control PDU as an example, the format of this PDCP control PDU can be as shown in Figure 13(b). Here, the PDCP type indicates the type of PDCP control PDU, such as whether the current data packet is used to transmit a PDCP status report or a PDCP control PDU used to transmit ROHC feedback. FMC represents the first missing COUNT (FMC). For example, COUNT refers to the PDCP layer COUNT value, composed of the high-order hyperframe number (HFN) and the low-order PDCP SN. The bitmap is used to indicate lost PDCP SDUs and correctly received PDCP SDUs; it is an optional field. The descriptions of the remaining fields can be found in the descriptions of the corresponding fields in the PDCP data PDU, and will not be repeated here.
[0254] Optionally, in this first possible implementation, if multiple mapping rules for each quantity are not pre-configured or pre-defined, the packet header may also include a second field indicating the first module corresponding to the packet. For example, the second field may carry an index of the first module, and the first module corresponding to the packet is the first module identified by this index. In this case, the second field may also be called the ROHC-index field, but it can have other names without limitation.
[0255] For example, taking a PDCP data PDU as an example, the format of the PDCP data PDU can be as shown in Figure 14(a). Among them, ROHC-num represents the first field, ROHC-index represents the second field, and the description of the remaining fields can be found in Figure 13(a), and will not be repeated here.
[0256] Alternatively, taking a PDCP control PDU as an example, the format of this PDCP control PDU can be as shown in Figure 14(b). Here, ROHC-num represents the first field, ROHC-index represents the second field, and the explanations of the remaining fields can be found in Figure 13(b), and will not be repeated here.
[0257] If multiple mapping rules are pre-configured or pre-defined for each quantity, the data packet may not indicate the mapping rule for the first quantity. The first and second communication devices will then map the data packet to the corresponding first module for processing according to the pre-configured or pre-defined mapping rule for the first quantity. Alternatively, the data packet may include a second field indicating the module corresponding to the data packet.
[0258] For example, in this scenario, the module corresponding to the data packet indicated by the second field may be different from the module corresponding to the data packet indicated by the pre-configured or pre-defined mapping rules. That is, the second field can be used to update the mapping rules associated with the first quantity. At this time, the first communication device and the second communication device map the data packet to the first module indicated by the second field for processing according to the indication of the second field.
[0259] For example, suppose the pre-configured or pre-defined mapping rule associated with a quantity of 2 is: data packets with odd sequence numbers are mapped to the first module 1, and data packets with even sequence numbers are mapped to the first module 2. If a data packet has a sequence number of 20, and the data packet includes a second field indicating that the module corresponding to the data packet is the first module 1, then the first or second communication device will map the data packet to the first module 1 according to the indication of the second field, instead of mapping the data packet to the first module 2 according to the pre-configured or pre-defined mapping rule.
[0260] Optionally, in this first possible implementation, the update mode can be implicitly indicated as mode 1 through the first field. That is, if the value of the first field is a first quantity, the update mode can be considered as mode 1. Alternatively, the update mode can be explicitly indicated by adding a Mode indicator field to the packet header.
[0261] Optionally, in this first possible implementation, when the data packet is a PDCP data PDU, the PDCP SN in the packet header can be understood as the first sequence number, indicating when the number of the first modules is updated. That is, the new configuration takes effect from the current data packet.
[0262] Optionally, in this first possible implementation, the first timer can be configured in advance, or configured via control plane signaling, or configured in the packet header, without restriction.
[0263] As a second possible implementation, the first field can be a bitmap. For example, the first field may include K bits, each corresponding to one of K first modules, where K is a positive integer greater than or equal to a first quantity. K can be the maximum number of first modules supported by the second communication device. In this scenario, the first quantity can be the number of bits with a first value among the K bits. The first module corresponding to the bits with the first value is either the first module to be deleted / deactivated, or the first module to be created / activated. The first value can be, for example, 1. In this case, the first field can also be called ROHC-bitmap, but other names are not limited.
[0264] For example, taking a PDCP data PDU as an example, the format of the PDCP data PDU can be as shown in Figure 15(a) or (c); taking a PDCP control PDU as an example, the format of the PDCP control PDU can be as shown in Figure 15(b) or (d). Here, ROHC-bitmap represents the first field, and the descriptions of the other fields can be found in the relevant descriptions in Figure 13, which will not be repeated here.
[0265] Optionally, in this second possible implementation, the packet header may include a second field indicating the first module corresponding to the packet; or, the second field may not be included, as can be found in the relevant description in the first possible implementation above, which will not be repeated here.
[0266] Optionally, in this second possible implementation, the update mode can be implicitly indicated as mode 2 through the first field. That is, if the first field is a bitmap, the update mode can be considered to be mode 2. Alternatively, the update mode can be explicitly indicated by adding a Mode indicator field to the packet header.
[0267] For example, with K equal to 4, the four bits of the first field correspond to the first module 1, first module 2, first module 3, and first module 4 respectively. Taking a first value of 1 as an example, if the first field is 1101, it means that the number of first modules after the update is 3, and the first modules used after the update are first module 1, first module 3, and first module 4. If the first modules configured before S901 are first module 1, first module 2, first module 3, and first module 4, then the second communication device deactivates first module 2; if the first modules configured before S901 are first module 1 and first module 4, then the second communication device activates first module 2.
[0268] Optionally, in this second possible implementation, the first timer can be configured in advance, or configured via control plane signaling, or configured in the packet header, without restriction.
[0269] Method 2: The packet header indicates whether the configuration has changed, or whether the number of the first module has changed. If the configuration has changed or the number of the first module has changed, a field is included in the packet to indicate the updated number of the first module.
[0270] As one possible implementation, the packet header may include a third field indicating whether the configuration has changed, or whether the number of the first modules has changed, or whether the number of the first modules has been updated. For example, this third field may be 1 bit. If this bit is set to "1", it indicates a configuration change, or a change in the number of the first modules, or an update in the number of the first modules; if this bit is set to "0", it indicates that the configuration remains unchanged, or the number of the first modules remains unchanged, or the number of the first modules is not updated.
[0271] For example, the third field can be a reserved bit in the header of the current PDCP data PDU or PDCP control PDU. Alternatively, the third field can reuse a currently reserved bit.
[0272] Where the third field indicates a configuration change, or a change in the number of the first modules, or an update to the number of the first modules, the data packet also includes a first field, which indicates the first quantity. For example, the first field can be located at the end of the data packet. Of course, the first field can also be located in other positions within the data packet, such as in the data packet header; this application does not limit the position of the first field within the data packet.
[0273] As a first possible implementation, the value of the first field can be a first quantity. Refer to the explanation of the first field in the first possible implementation of Method 1 above; it will not be repeated here.
[0274] For example, in this possible implementation, taking a PDCP data PDU as an example, the format of the PDCP data PDU can be as shown in Figure 16(a); taking a PDCP control PDU as an example, the format of the PDCP control PDU can be as shown in Figure 16(b).
[0275] For example, if the data packet also includes a second field that indicates the first module corresponding to the data packet, taking a PDCP data PDU as an example, the format of the PDCP data PDU can be as shown in Figure 17(a); taking a PDCP control PDU as an example, the format of the PDCP control PDU can be as shown in Figure 17(b). Whether the data packet includes a second field and the relevant implementation of the second field can be found in the description of the second field in the first possible implementation of the above method 1, and will not be repeated here.
[0276] As a second possible implementation, the first field can be a bitmap. Refer to the explanation of the first field in the second possible implementation of Method 1 above; it will not be repeated here.
[0277] For example, taking a PDCP data PDU as an example, the format of the PDCP data PDU can be as shown in (a) or (c) of Figure 18; taking a PDCP control PDU as an example, the format of the PDCP control PDU can be as shown in (b) or (d) of Figure 18.
[0278] The format of the data packet when the first information is transmitted through the user plane has been described above. The communication method provided by this application when the first information is transmitted through the user plane will be described below.
[0279] In scenario three above, that is, in downlink communication, in the scenario where the first information is transmitted through the user plane, as shown in Figure 19, the communication method provided by this application may include the following steps:
[0280] S1901, The access network device determines the first information. Refer to the relevant explanation of step S901 above; it will not be repeated here.
[0281] S1902, The access network device sends a third data packet to the terminal. Correspondingly, the terminal receives the third data packet from the access network device.
[0282] The third data packet includes the first information. The format of the third data packet can be either the format described in Method 1 or the format described in Method 2, and is not limited thereto. Furthermore, when the format of the third data packet is the format described in Method 2, the following embodiments of this application illustrate the situation by using the example of a third field indicating a configuration change, a change in the number of the first modules, or an update to the number of the first modules.
[0283] In this process, the access network device sends a third data packet to the terminal according to the new configuration. That is, the access network device maps the third data packet to the corresponding first module for processing according to the mapping rules associated with the first quantity.
[0284] S1903. The terminal configures a first number of first modules based on the first information.
[0285] As one possible implementation, when the format of the third data packet is as described in Method 1 above, the terminal can parse the header of the third data packet, obtain the first quantity through the first field, and thus configure the first quantity of first modules. When the format of the third data packet is as described in Method 2 above, the terminal can parse the header of the third data packet, obtain whether to update the quantity of the first modules through the third field, and if the third field indicates that the quantity of the first modules should be updated, obtain the first quantity through the first field, and thus configure the first quantity of first modules.
[0286] As one possible implementation, if the first quantity is greater than the second quantity, the terminal can configure the first quantity of first modules immediately upon receiving the first information, such as immediately establishing or activating the third quantity of first modules. If the first quantity is less than the second quantity, the terminal can delete or deactivate the third quantity of first modules after the first timer expires.
[0287] S1904. The terminal maps the third data packet to its corresponding first module for processing according to the mapping rules associated with the first quantity. In other words, the terminal processes the third data packet according to the new configuration, or the new configuration takes effect from the current data packet.
[0288] In scenario four above, that is, in uplink communication, in the scenario of transmitting the first information through the user plane, as shown in Figure 20, the communication method provided by this application may include the following steps:
[0289] S2001. The access network device sends authorization information to the terminal. Correspondingly, the terminal receives the authorization information from the access network device.
[0290] The authorization information indicates the range of the number of first modules that the terminal is allowed to configure, for example, allowing the terminal to update the number of first modules within the range of 1-Q. Q is a positive integer less than or equal to K, and K is the maximum number of first modules supported by the terminal or access network device.
[0291] Furthermore, the authorization information may also indicate the allowed update mode for the terminal configuration, such as allowing only the terminal to configure update mode 1, or allowing only the terminal to configure update mode 2, or allowing the terminal to configure either update mode 1 or update mode 2.
[0292] It should be noted that step S2001 is an optional step. If step S2001 is not executed, the range of the number of first modules that the terminal can configure, the update mode, etc., can be agreed upon by the protocol or determined by the terminal's capabilities, and are not restricted.
[0293] S2002, The terminal determines the first information.
[0294] The implementation of step S2002 is similar to that of step S901, except that if step S2001 is executed, the first quantity indicated by the first information is within the range of the allowed terminal configuration quantity. The remaining implementation details can be found in the description of step S901 above, and will not be repeated here.
[0295] S2003, The terminal sends a third data packet to the access network device. Correspondingly, the access network device receives the third data packet from the terminal.
[0296] The third data packet includes the first information. The format of the third data packet can be either the format described in Method 1 or the format described in Method 2, and is not limited thereto. Furthermore, when the format of the third data packet is the format described in Method 2, the following embodiments of this application illustrate the situation by using the example of a third field indicating a configuration change, a change in the number of the first modules, or an update to the number of the first modules.
[0297] Specifically, the terminal sends a third data packet to the access network device according to the new configuration, that is, the terminal maps the third data packet to the corresponding first module for processing according to the mapping rules associated with the first quantity.
[0298] S2004. The access network device configures a first number of first modules according to the first information.
[0299] The implementation of step S2004 can be referred to the relevant description of step S1903 above, in which the terminal configures the first number of first modules according to the first information, and will not be repeated here.
[0300] S2005. The access network device maps the third data packet to its corresponding first module for processing according to the mapping rules associated with the first quantity. In other words, the access network device processes the third data packet according to the new configuration, or the new configuration takes effect from the current data packet.
[0301] In one possible implementation, in step S2001 above, the access network device may send authorization information to the terminal based on the terminal's capability information or based on the terminal's request.
[0302] As one possible implementation, when the access network device sends authorization information to the terminal based on the terminal's capability information, as shown in Figure 21, step S2001 may include the following steps:
[0303] S2101. The access network device sends a terminal capability request to the terminal. Correspondingly, the terminal receives the terminal capability request from the access network device.
[0304] The terminal capability request is used to request terminal capability information. For example, the terminal capability request can be UECapabilityEnquiry.
[0305] S2102. The terminal sends terminal capability information to the access network device. Correspondingly, the access network device receives the terminal capability information from the terminal.
[0306] The terminal capability information includes the maximum number of ROHC context sessions supported by the terminal (maxNumberROHC-contextSession), and / or the maximum number of first modules supported by the terminal. The maximum number of ROHC context sessions and / or the maximum number of first modules supported by the terminal are used to determine the authorization information.
[0307] S2103. The access network device determines the authorization information based on the terminal capability information. This authorization information indicates the range of the number of first modules that the terminal is allowed to configure.
[0308] For example, one first module can correspond to multiple ROHC context sessions. The maximum number of first modules that a terminal can configure can be the ratio of the maximum number of ROHC context sessions supported by the terminal to the number of ROHC context sessions corresponding to each first module. Alternatively, the maximum number of first modules that a terminal can configure can be less than or equal to the maximum number of first modules supported by the terminal.
[0309] S2104. The access network device sends authorization information to the terminal. Correspondingly, the terminal receives the authorization information from the access network device.
[0310] For example, an access network device can send an RRC reconfiguration message, such as RRC Reconfiguration-RadiobearerConfig, to a terminal, carrying authorization information within the RRC reconfiguration message. For instance, the authorization information can be carried in the ROHC-config information element within RRC Reconfiguration-RadiobearerConfig.
[0311] Optionally, after receiving the RRC reconfiguration message carrying authorization information, the terminal can send an RRC reconfiguration complete message to the access network device.
[0312] As another possible implementation, when the access network device sends authorization information to the terminal based on the terminal's request, as shown in Figure 22, step S2001 may include the following steps:
[0313] S2201. The terminal sends a request message to the access network device. Correspondingly, the access network device receives the request message from the terminal.
[0314] The request information is used to request authorization information, or to request the access network device to allow the terminal to update the number of the first module, or to request the access network device to allow the terminal to configure the first module, or to request the access network device to authorize the terminal to update the number of the first module or to configure the first module.
[0315] Optionally, the request information may include the maximum number of ROHC context sessions supported by the terminal, and / or the maximum number of first modules supported by the terminal.
[0316] S2202. The access network device determines the authorization information based on the request information. Refer to the relevant explanation in step S2103 above; it will not be repeated here.
[0317] S2203. The access network device sends authorization information to the terminal. Correspondingly, the terminal receives the authorization information from the access network device. Refer to the relevant explanation in step S2104 above; it will not be repeated here.
[0318] The above explanation uses the example of updating the number of first modules with first information. Furthermore, this application also provides a communication method in which first information sent by a first communication device can replace certain first modules. For example, if the first modules used at time 1 are first module 1, first module 2, and first module 3, at time 2 (time 2 is after time 1), the first communication device can send first information to replace first module 3 with first module 4, meaning the subsequently used first modules are: first module 1, first module 2, and first module 4. In this case, the first information can be considered as indicating the deletion / deactivation of first module 3 and the establishment / activation of first module 4. Correspondingly, after receiving the first information, the second communication device deletes / deactivates first module 3 and establishes / activates first module 4. The implementation details of the first information in this scenario can be found in the above description of the first information and will not be repeated here.
[0319] In one possible implementation, for the above method embodiments, in a CU-DU architecture or ORAN system, the function of interaction between the access network device and the terminal can be implemented by the DU or O-DU. The information sent by the access network device to the terminal can be generated by the DU or O-DU, or it can be generated by the CU or O-CU and sent to the DU or O-DU. When the CU is further divided into CU-CP and CU-UP, the configuration information sent by the access network device to the terminal can be determined by the CU-CP. In this case, the CU-CP also needs to send the configuration information to the CU-UP so that the terminal and the CU-UP have a unified configuration. For example, in the method shown in Figure 11 or Figure 12, the control signaling in step S1101 can be determined by the CU-CP, and the CU-CP can send the control signaling to the CU-UP, DU, and terminal.
[0320] The method provided in this application has been described above. In addition, this application also provides a communication device for implementing the functions described in the above method embodiments.
[0321] It is understood that, in order to achieve the aforementioned functions, the communication device includes hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art should readily recognize that, based on the units and algorithm steps of the examples described in conjunction with the embodiments disclosed herein, 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.
[0322] This application embodiment can divide the communication device into functional modules according to the above method embodiment. For example, each function can be divided into a separate functional module, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. It should be noted that the module division in this application embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods.
[0323] Figure 23 shows a schematic diagram of a communication device 230. The communication device 230 includes a processing module 2301 and a transceiver module 2302. The communication device 230 can be used to implement the functions of the first or second communication device described above.
[0324] In some embodiments, the communication device 230 may further include a storage module (not shown in FIG23) for storing program instructions and data.
[0325] In some embodiments, the transceiver module 2302, also referred to as a transceiver unit, is used to implement sending and / or receiving functions. The transceiver module 2302 may consist of a transceiver circuit, a transceiver, a transceiver unit, or a communication interface.
[0326] In some embodiments, the transceiver module 2302 may include a receiving module and a sending module, respectively configured to perform receiving and sending steps performed by the first communication device or the second communication device in the above method embodiments, and / or other processes to support the technology described herein; the processing module 2301 may be configured to perform processing steps performed by the first communication device or the second communication device in the above method embodiments, and / or other processes to support the technology described herein.
[0327] When the communication device 230 is used to perform the functions of the first communication device:
[0328] Processing module 2301 is used to determine first information, which is used to update the number of first modules, and the first modules are used to implement data compression / decompression; transceiver module 2302 is used to send the first information to the second communication device.
[0329] Optionally, the processing module 2301 is used to determine the first information, including: the processing module 2301 is used to determine the first information based on the resource status of the sending end and / or the resource status of the receiving end.
[0330] Optionally, the transceiver module 2302 is further configured to send second information to the second communication device. This second information indicates the timing for updating the quantity of the first module, and / or instructs a first timer to control the duration for which the quantity of the first module before the update applies.
[0331] Optionally, the first information is carried in control signaling, which includes Radio Resource Control (RRC) signaling, Medium Access Control (MAC) control element (CE), Downlink Control Information (DCI), or Uplink Control Information (UCI).
[0332] Optionally, if the first communication device is an access network device and the second communication device is a terminal, the transceiver module 2302 is further configured to receive a reconfiguration request from the second communication device, the reconfiguration request being used to request an update of the number of the first module.
[0333] Optionally, the reconfiguration request may include at least one of the following suggested by the second communication device: the updated number of first modules, the timing of updating the number of first modules, the update mode, or the duration of a first timer; the first timer is used to control the duration for which the number of first modules before the update applies.
[0334] Optionally, if the first communication device is an access network device and the second communication device is a terminal, the transceiver module 2302 is also used to receive response information from the first information of the second communication device, the response information indicating the timing of updating the number of the first module.
[0335] Optionally, the first information is carried in the data packet.
[0336] Optionally, if the first communication device is a terminal and the second communication device is an access network device, the transceiver module 2302 is also used to receive authorization information from the second communication device, the authorization information indicating the range of the number of first modules that the first communication device is allowed to configure.
[0337] Optionally, the transceiver module 2302 is further configured to send terminal capability information to the second communication device. The terminal capability information includes the maximum number of robust header compression (ROHC) context sessions supported by the terminal, and / or the maximum number of first modules supported by the terminal. The terminal capability information is used to determine authorization information.
[0338] Optionally, the transceiver module 2302 is also used to send request information to the second communication device, the request information being used to request authorization information.
[0339] When the communication device 230 is used to implement the function of the second communication device:
[0340] The transceiver module 2302 is used to receive first information from the first communication device, which is used to update the number of first modules and the first modules are used to implement data compression / decompression; the processing module 2301 is used to configure the first number of first modules according to the first information.
[0341] Optionally, the processing module 2301 is configured to configure a first number of first modules according to the first information, including: the processing module 2301 is configured to create / delete a second number of first modules according to the first information, and after creating / deleting the second number of first modules, the number of first modules is the first number; or, the processing module 2301 is configured to activate / deactivate a second number of first modules according to the first information, and after activating / deactivating the second number of first modules, the number of first modules is the first number.
[0342] Optionally, the transceiver module 2302 is also configured to receive second information from the first communication device, the second information indicating the timing for updating the number of the first module, and / or a first timer, the first timer being configured to control the duration for which the number of the first module before the update applies.
[0343] Optionally, the first information is carried in control signaling, which includes Radio Resource Control (RRC) signaling, Medium Access Control (MAC) control element (CE), Downlink Control Information (DCI), or Uplink Control Information (UCI).
[0344] Optionally, if the first communication device is an access network device and the second communication device is a terminal, the transceiver module 2302 is further configured to send a reconfiguration request to the first communication device, the reconfiguration request being used to request an update of the number of the first module.
[0345] Optionally, if the first communication device is an access network device and the second communication device is a terminal, the transceiver module 2302 is also used to send response information of the first information to the first communication device, and the response information indicates the timing of updating the number of the first module.
[0346] Optionally, the first information is carried in the data packet.
[0347] Optionally, if the first communication device is a terminal and the second communication device is an access network device, the transceiver module 2302 is further configured to send authorization information to the first communication device, the authorization information indicating the range of the number of first modules that the first communication device is allowed to configure.
[0348] Optionally, the transceiver module 2302 is further configured to receive terminal capability information from the first communication device, the terminal capability information including the maximum number of robust header compression (ROHC) context sessions supported by the terminal, and / or the maximum number of first modules supported by the terminal, the terminal capability information being used to determine authorization information.
[0349] Optionally, the transceiver module 2302 is also used to receive request information from the first communication device, the request information being used to request authorization information.
[0350] When the communication device is used to perform the functions of the first communication device or the second communication device:
[0351] Optionally, the resource information of the sending end includes at least one of the following: the service quality of service (QoS) profile, service traffic information, hardware utilization of the sending end, or hardware load of the sending end. The resource information of the receiving end includes at least one of the following: the service QoS profile, service traffic information, hardware utilization of the receiving end, or hardware load of the receiving end.
[0352] Optionally, the first information includes at least one of the following: the number of first modules after the update, the change in the number of first modules compared to before the update, information indicating one of a plurality of pre-configured first modules, and identification information of the updated first modules.
[0353] Optionally, the first information is used to update the number of first modules, including: the first information is used to indicate the creation / deletion of the first module; or, the first information is used to indicate the activation / deactivation of the first module.
[0354] Optionally, the first information may also include information indicating the update mode, which may include creating / deleting the first module or activating / deactivating the first module.
[0355] All relevant content of each step involved in the above method embodiments can be referenced from the functional description of the corresponding functional module, and will not be repeated here.
[0356] In this application, the communication device 230 can be presented in an integrated manner by dividing it into various functional modules. Here, "module" can refer to an application-specific integrated circuit (ASIC), a circuit, a processor and memory that executes one or more software or firmware programs, integrated logic circuits, and / or other devices that can provide the above functions.
[0357] In some embodiments, when the communication device 230 in FIG23 is a chip or chip system, the function / implementation process of the transceiver module 2302 can be implemented through the input / output interface (or communication interface) of the chip or chip system, and the function / implementation process of the processing module 2301 can be implemented through the processor (or processing circuit) of the chip or chip system.
[0358] Since the communication device 230 provided in this embodiment can execute the above method, the technical effects it can achieve can be referred to the above method embodiment, and will not be repeated here.
[0359] As a possible product form, the first or second communication device described in the embodiments of this application can be implemented using one or more field programmable gate arrays (FPGAs), programmable logic devices (PLDs), controllers, state machines, gate logic, discrete hardware components, any other suitable circuits, or any combination of circuits capable of performing the various functions described throughout this application.
[0360] As another possible product form, the first or second communication device described in this application embodiment can be implemented using a general bus architecture. For ease of explanation, refer to FIG24, which is a schematic diagram of the structure of a communication device 2400 provided in an embodiment of this application. The communication device 2400 includes a processor 2401 and a transceiver 2402. The communication device 2400 can be a first communication device, or a chip or chip system therein; or, the communication device 2400 can be a second communication device, or a chip or module therein. FIG24 only shows the main components of the communication device 2400. In addition to the processor 2401 and transceiver 2402, the communication device may further include a memory 2403 and input / output devices (not shown in FIG24).
[0361] Optionally, the processor 2401 is mainly used to process communication protocols and communication data, control the entire communication device, execute software programs, and process the data of the software programs, thereby implementing the methods provided in the above-described method embodiments. The memory 2403 is mainly used to store software programs and data. The transceiver 2402 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 touchscreens, displays, and keyboards, are mainly used to receive user input data and output data to the user.
[0362] Optionally, the processor 2401, transceiver 2402, and memory 2403 can be connected via a communication bus.
[0363] When the communication device is powered on, the processor 2401 can read the software program in the memory 2403, execute the instructions of the software program, and process the data of the software program. When data needs to be transmitted wirelessly, the processor 2401 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 2401. The processor 2401 converts the baseband signal into data and processes the data.
[0364] 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.
[0365] In some embodiments, those skilled in the art will recognize that the communication device 230 described above can be implemented in the form of the communication device 2400 shown in FIG. 24. As an example, the function / implementation process of the processing module 2301 in FIG. 23 can be implemented by the processor 2401 in the communication device 2400 shown in FIG. 24 calling computer execution instructions stored in the memory 2403. The function / implementation process of the transceiver module 2302 in FIG. 23 can be implemented by the transceiver 2402 in the communication device 2400 shown in FIG. 24.
[0366] As another possible product form, the first or second communication device in this application may adopt the composition structure shown in FIG25, or include the components shown in FIG25. FIG25 is a schematic diagram of the composition of a communication device 2500 provided in this application. The communication device 2500 may be the first communication device or a chip or system-on-a-chip in the first communication device; or, it may be the second communication device or a chip or system-on-a-chip in the second communication device.
[0367] As shown in Figure 25, the communication device 2500 includes at least one processor 2501 and at least one communication interface (Figure 25 is merely an example illustrating the inclusion of a communication interface 2504 and a processor 2501). Optionally, the communication device 2500 may also include a communication bus 2502 and a memory 2503.
[0368] Processor 2501 can be a general-purpose central processing unit (CPU), a general-purpose processor, a network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a PLD, or any combination thereof. Processor 2501 can also be other devices with processing functions, such as circuits, devices, or software modules, without limitation.
[0369] The communication bus 2502 is used to connect different components in the communication device 2500, enabling communication between them. The communication bus 2502 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. This bus can be divided into address bus, data bus, control bus, etc. For ease of illustration, only one thick line is used in Figure 25, but this does not indicate that there is only one bus or one type of bus.
[0370] Communication interface 2504 is used for communicating with other devices or communication networks. For example, communication interface 2504 can be a module, circuit, transceiver, or any device capable of communication. Optionally, communication interface 2504 can also be an input / output interface located within processor 2501, used to implement signal input and signal output for the processor.
[0371] The memory 2503 can be a device with storage function for storing instructions and / or data. The instructions can be computer programs. For example, the memory 2503 can be a read-only memory (ROM) or other type of static storage device capable of storing static information and / or instructions; it can also be a random access memory (RAM) or other type of dynamic storage device capable of storing information and / or instructions; it can also be an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media, or other magnetic storage devices, etc., without limitation.
[0372] It should be noted that the memory 2503 can exist independently of the processor 2501, or it can be integrated with the processor 2501. The memory 2503 can be located inside or outside the communication device 2500, without limitation. The processor 2501 can be used to execute the instructions stored in the memory 2503 to implement the methods provided in the following embodiments of this application.
[0373] Optionally, the processor 2501 and / or memory 2503 may include an artificial intelligence (AI) module, which is used to implement AI-related functions. The AI module can be implemented through software, hardware, or a combination of both. For example, the AI module may include a radio network intelligent controller (RIC) module. For example, the AI module can be a near real-time RIC or a non-real-time RIC.
[0374] As an optional implementation, the communication device 2500 may also include an output device 2505 and an input device 2506. The output device 2505 communicates with the processor 2501 and can display information in various ways. For example, the output device 2505 may be a liquid crystal display (LCD), a light-emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector, etc. The input device 2506 communicates with the processor 2501 and can receive user input in various ways. For example, the input device 2506 may be a mouse, keyboard, touchscreen device, or sensing device, etc.
[0375] In some embodiments, those skilled in the art will recognize that the communication device 230 shown in FIG. 23 can be implemented in the form of the communication device 2500 shown in FIG. 25. As an example, the function / implementation process of the processing module 2301 in FIG. 23 can be implemented by the processor 2501 in the communication device 2500 shown in FIG. 25 calling computer execution instructions stored in the memory 2503. The function / implementation process of the transceiver module 2302 in FIG. 23 can be implemented by the communication interface 2504 in the communication device 2500 shown in FIG. 25.
[0376] It should be noted that the structure shown in Figure 25 does not constitute a specific limitation on the first or second communication device. For example, in other embodiments of this application, the first or second communication device may include more or fewer components than shown in the figure, or combine some components, or split some components, or have different component arrangements. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.
[0377] In some embodiments, this application also provides a communication device, which includes a processor for implementing the methods in any of the above method embodiments.
[0378] As one possible implementation, the communication device also includes a memory. This memory stores necessary computer programs and data. The computer program may include instructions, which a processor can invoke to instruct the communication device to execute the methods described in any of the above method embodiments. Alternatively, the memory may not be present in the communication device.
[0379] As another possible implementation, the communication device also includes an interface circuit, which is a code / data read / write interface circuit, used to receive computer execution instructions (which are stored in memory and may be read directly from memory or may be transmitted through other devices) and transmit them to the processor.
[0380] As another possible implementation, the communication device also includes a communication interface for communicating with modules outside the communication device.
[0381] It is understood that the communication device can be a chip or a chip system. When the communication device is a chip system, it can be composed of chips or may include chips and other discrete devices. This application does not specifically limit this.
[0382] This application also provides a computer-readable storage medium having a computer program or instructions stored thereon, which, when executed by a computer, implements the functions of any of the above-described method embodiments.
[0383] This application also provides a computer program product that, when executed by a computer, implements the functions of any of the above method embodiments.
[0384] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0385] It is understood that the systems, apparatuses, and methods described in this application can also be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative. For instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the couplings or direct couplings or communication connections shown or discussed may be through some interfaces; indirect couplings or communication connections between devices or units may be electrical, mechanical, or other forms.
[0386] The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. The components shown as units may or may not be physical units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs. Furthermore, the functional units in the various embodiments of this application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0387] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented using software programs, implementation can be, in whole or in part, in the form of a computer program product. This computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device containing one or more servers, data centers, etc., that can be integrated with the medium. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive (SSD)). In this embodiment, the computer may include the aforementioned apparatus.
[0388] Although this application has been described herein in conjunction with various embodiments, those skilled in the art, by reviewing the accompanying drawings, disclosure, and appended claims, will understand and implement other variations of the disclosed embodiments in carrying out the claimed application. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude a plurality. A single processor or other unit can implement several functions listed in the claims. While different dependent claims may recite certain measures, this does not mean that these measures cannot be combined to produce good results.
[0389] Although this application has been described in conjunction with specific features and embodiments, it is obvious that various modifications and combinations can be made thereto without departing from the scope of this application. Accordingly, this specification and drawings are merely illustrative descriptions of the application as defined by the appended claims, and are considered to cover any and all modifications, variations, combinations, or equivalents within the scope of this application. Clearly, those skilled in the art can make various alterations and modifications to this application without departing from its scope. Thus, if such modifications and modifications fall within the scope of the claims and their equivalents, this application is also intended to include such modifications and modifications.
Claims
1. A communication method, characterized in that, The method is applied to a first communication device, and the method includes: Determine the first information, which is used to update the number of the first module, and the first module is used to implement data compression / decompression; The first information is sent to the second communication device.
2. The method according to claim 1, characterized in that, Determining the first information includes: determining the first information based on the resource status of the sending end and / or the resource status of the receiving end.
3. The method according to claim 2, characterized in that, The resource status of the sending end includes at least one of the following: the QoS configuration file of the service, the service traffic status, the hardware utilization of the sending end, or the hardware load of the sending end. The resource status of the receiving end includes at least one of the following: the QoS configuration file of the service, the service traffic status, the hardware utilization of the receiving end, or the hardware load of the receiving end.
4. The method according to any one of claims 1-3, characterized in that, The first information includes at least one of the following: the number of first modules after the update, the change in the number of first modules compared to before the update, information indicating one of a plurality of pre-configured first modules, and the identification information of the updated first modules.
5. The method according to any one of claims 1-4, characterized in that, The first information is used to update the number of first modules, including: the first information is used to indicate the creation / deletion of the first module; or, the first information is used to indicate the activation / deactivation of the first module.
6. The method according to any one of claims 1-5, characterized in that, The first information also includes information indicating an update mode, which includes creating / deleting the first module or activating / deactivating the first module.
7. The method according to any one of claims 1-6, characterized in that, The method further includes: Send a second message to the second communication device, the second message indicating the timing of updating the number of the first module, and / or a first timer, the first timer being used to control the duration for which the number of the first module before the update applies.
8. The method according to any one of claims 1-7, characterized in that, The first information is carried in control signaling, which includes Radio Resource Control (RRC) signaling, Medium Access Control (MAC) control element (CE), Downlink Control Information (DCI), or Uplink Control Information (UCI).
9. The method according to claim 8, characterized in that, The first communication device is an access network device, and the second communication device is applied to a terminal; the method further includes: A reconfiguration request is received from the second communication device, the reconfiguration request being used to request an update of the number of the first module.
10. The method according to claim 9, characterized in that, The reconfiguration request includes at least one of the following suggested by the second communication device: the updated number of first modules, the timing of updating the number of first modules, the update mode, or the duration of a first timer; the first timer is used to control the duration for which the number of first modules before the update is applied.
11. The method according to any one of claims 8-10, characterized in that, The first communication device is an access network device, and the second communication device is applied to a terminal; the method further includes: The system receives a response message from the second communication device for the first information, the response message indicating the timing for updating the number of the first module.
12. The method according to any one of claims 1-7, characterized in that, The first information is carried in the data packet.
13. The method according to claim 12, characterized in that, The first communication device is a terminal, and the second communication device is applied to access network equipment; the method further includes: Receive authorization information from the second communication device, the authorization information indicating a range of the number of first modules that the first communication device is allowed to configure.
14. The method according to claim 13, characterized in that, The method further includes: The terminal capability information is sent to the second communication device. The terminal capability information includes the maximum number of robust header compression (ROHC) context sessions supported by the terminal, and / or the maximum number of first modules supported by the terminal. The terminal capability information is used to determine the authorization information.
15. The method according to claim 13, characterized in that, The method further includes: sending a request message to the second communication device, the request message being used to request the authorization information.
16. The method according to any one of claims 1-15, characterized in that, The first module is the Robust Header Compression (ROHC) module in the Packet Data Convergence Protocol (PDCP) entity.
17. A communication method, characterized in that, The method is applied to a second communication device, and the method includes: Receive first information from a first communication device, the first information being used to update the number of first modules, the first modules being used to implement data compression / decompression; Based on the first information, configure a first number of first modules.
18. The method according to claim 17, characterized in that, The first information includes at least one of the following: the number of first modules after the update, the change in the number of first modules compared to before the update, information indicating one of a plurality of pre-configured first modules, and the identification information of the updated first modules.
19. The method according to claim 17 or 18, characterized in that, Based on the first information, configure the first number of first modules, including: Based on the first information, create / delete a second number of first modules. After creating / deleting the second number of first modules, the number of first modules is the first number; or... Based on the first information, activate / deactivate a second number of first modules. After activating / deactivating a second number of first modules, the number of first modules becomes the first number.
20. The method according to any one of claims 17-19, characterized in that, The first information also includes information indicating an update mode, which includes creating / deleting the first module or activating / deactivating the first module.
21. The method according to any one of claims 17-20, characterized in that, The method further includes: Receive second information from the first communication device, the second information indicating the timing for updating the number of the first modules, and / or, a first timer, the first timer being used to control the duration for which the number of the first modules before the update applies.
22. The method according to any one of claims 17-21, characterized in that, The first information is carried in control signaling, which includes Radio Resource Control (RRC) signaling, Medium Access Control (MAC) control element (CE), Downlink Control Information (DCI), or Uplink Control Information (UCI).
23. The method according to claim 22, characterized in that, The first communication device is used in access network equipment, and the second communication device is a terminal; the method further includes: A reconfiguration request is sent to the first communication device, the reconfiguration request being used to request an update of the number of the first modules.
24. The method according to claim 23, characterized in that, The reconfiguration request includes at least one of the following suggested by the second communication device: the updated number of first modules, the timing of updating the number of first modules, the update mode, or the duration of a first timer; the first timer is used to control the duration for which the number of first modules before the update is applied.
25. The method according to any one of claims 22-24, characterized in that, The first communication device is used in access network equipment, and the second communication device is a terminal; the method further includes: A response message is sent to the first communication device to indicate the timing for updating the number of the first module.
26. The method according to any one of claims 17-21, characterized in that, The first information is carried in the data packet.
27. The method according to claim 26, characterized in that, The first communication device is used in a terminal, and the second communication device is an access network device; the method further includes: Send authorization information to the first communication device, the authorization information indicating the range of the number of first modules that the first communication device is allowed to configure.
28. The method according to claim 26, characterized in that, The method further includes: The terminal capability information received from the first communication device includes the maximum number of robust header compression (ROHC) context sessions supported by the terminal, and / or the maximum number of first modules supported by the terminal. The terminal capability information is used to determine the authorization information.
29. The method according to claim 26, characterized in that, The method further includes: receiving request information from the first communication device, the request information being used to request the authorization information.
30. The method according to any one of claims 17-29, characterized in that, The first information is used to update the number of the first module, including: the first information is used to update the number of the first module to the first number.
31. The method according to any one of claims 17-30, characterized in that, The first module is the Robust Header Compression (ROHC) module in the Packet Data Convergence Protocol (PDCP) entity.
32. A communication device, characterized in that, The communication device includes a processor; the processor is configured to run a computer program or instructions to cause the communication device to perform the method as described in any one of claims 1-16, or to cause the communication device to perform the method as described in any one of claims 17-31.
33. A computer-readable storage medium, characterized in that, A computer-readable storage medium stores computer instructions or programs that, when executed on a computer, cause the method described in any one of claims 1-16 to be performed, or cause the method described in any one of claims 17-31 to be performed.
34. A computer program product, characterized in that, The computer program product includes computer instructions; when some or all of the computer instructions are run on a computer, they cause the method of any one of claims 1-16 to be performed, or cause the method of any one of claims 17-31 to be performed.
Citation Information
Patent Citations
Processing method and communication equipment
CN111277556A
Method and device for adjusting neural network
CN115485995A
Techniques and apparatuses for unidirectional robust header compression
US20180124639A1