Artificial intelligence priority notification method and related device
By generating and sending processing priority information at the terminal, the network side allocates resources according to the priority, which solves the problem of computing power shortage between the terminal and the server and realizes efficient allocation and improved utilization of computing resources.
Patent Information
- Application Number
- CN202410602027.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-05-14
- Publication Date
- 2025-11-14
AI Technical Summary
In terminal devices and servers, how to effectively allocate computing resources to alleviate computing power shortages, especially in distributed computing environments, and how to optimize network resource utilization to support the partitioning of computing tasks between terminals and servers.
By generating and sending information indicating the processing priority of data units at the terminal, the network side allocates corresponding resources according to the processing priority, including carrying processing priority information in control information and data packets, and allocating resources in access network equipment and core network elements.
It improved the utilization rate of network processing resources, alleviated the problem of computing power shortage on terminals and servers, and improved the allocation efficiency of computing resources.
Smart Images

Figure CN120950194A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to an artificial intelligence priority notification method and related apparatus in a communication system. Background Technology
[0002] With the rise of large-scale artificial intelligence generated content (AIGC) applications, the massive growth in user traffic poses a severe computing challenge to central servers. Wireless networks, naturally located close to the terminals, offer significant value for distributed learning based on wireless transmission in areas such as perceptual data acquisition, assisted training, and assisted inference. Considering the continued growth trend of wireless network computing resources in the future, the computing power and real-time computing resource status of wireless networks can fully support the massive number of end users and the strain on central servers.
[0003] With the continuous development of terminal devices, terminals themselves have acquired certain computing capabilities and can handle some neural network computations. For example, application servers can segment the computational tasks of deep neural network (DNN) models, performing the preprocessing computations on the terminal and uploading the complex computations to the application server in the cloud for processing. Alternatively, the terminal can perform the computations on lower-level, less computationally demanding parts, while uploading the higher-level, more computationally demanding parts to the cloud server for processing. Compared to the traditional method of directly uploading the raw image data for processing, the aforementioned method of segmenting the DNN model computational tasks, such as uploading the extracted intermediate feature information to the network after the terminal extracts image information, reduces the amount of data uploaded.
[0004] Therefore, in the process of dividing computing tasks, how the network can provide computing power support to terminals and servers to alleviate the problem of computing power shortage is an issue that needs to be addressed. Summary of the Invention
[0005] This application provides an artificial intelligence priority notification method and related apparatus, which can improve the utilization rate of network processing resources and alleviate the problem of computing power shortage.
[0006] Firstly, this application provides an artificial intelligence priority notification method. This method is applied to the terminal side, for example, a terminal or a communication / processing module within a terminal, or a circuit or chip in the terminal responsible for communication functions (such as a modem chip, also known as a baseband chip, or a system-on-chip (SoC) chip or system-in-package (SIP) chip containing a modem core), or a circuit or chip in the terminal responsible for processing functions (such as a graphics processing unit (GPU)). This method is also applied to the server side, for example, a server or a communication / processing module within a server, or a circuit or chip in the server responsible for communication functions (such as a modem chip, also known as a baseband chip, or a system-on-chip (SoC) chip or system-in-package (SIP) chip containing a modem core), or a circuit or chip in the server responsible for processing functions (such as a graphics processing unit (GPU)).
[0007] Taking the application of this method to a terminal as an example, in this method, the terminal generates first information, which is used to indicate the processing priority of the data unit. The processing priority is used to allocate processing resources for the data unit. The data unit is used for inference and / or training tasks in artificial intelligence (AI). The terminal sends the first information. It can be seen that in this method, the terminal or server can mark the processing priority of the data unit of the AI task, enabling the network side to allocate processing resources, such as communication resources and / or computing resources, according to the processing priority, thereby improving the utilization rate of network processing resources and alleviating the problem of computing power shortage.
[0008] Optionally, the inference task refers to adjusting the input to the AI model to obtain the desired output without modifying the AI model. The training task involves adjusting the input to the AI model and its parameters or weights to improve the model's performance.
[0009] In one optional implementation, the first information is carried in uplink control information, media access control-control elements, or radio resource control signaling. Therefore, this implementation, by transmitting the first information through control information or signaling, can improve the reliability of priority transmission.
[0010] In another alternative implementation, the first information is carried in a data packet, such as in the packet header, whereby the data packet carries the data unit. Thus, this implementation transmits the first information via data packets, and the data unit and processing priority are transmitted together in the form of data packets, which improves the real-time performance and flexibility of setting processing priorities.
[0011] In one optional implementation, the first information is further used to indicate the number of data units corresponding to the processing priority. This allows multiple data units to be individually labeled with their respective processing priorities, enabling the network side to allocate processing resources to the data units based on their corresponding processing priorities.
[0012] In another optional implementation, the terminal further generates and sends second information, which indicates the number of data units, and the processing priority of each data unit is indicated by the first information corresponding to that data unit. Thus, for N data units, N pieces of first information can be generated and sent, corresponding one-to-one with each of the N data units; or, for N data units, M pieces of first information can be generated and sent, with a many-to-one correspondence between the N data units and the M pieces of first information, wherein data units with the same processing priority correspond to the same piece of first information.
[0013] In one optional implementation, the second information is carried in uplink control information, media access control-control elements, or radio resource control signaling. Therefore, this implementation, by transmitting the second information through control information or signaling, can improve the reliability of data unit transmission. The first and second information can be carried in the same information or the same signaling and transmitted together; alternatively, the first and second information can be carried in different information or signaling and transmitted separately.
[0014] In another optional implementation, the second information is carried in the data packet, such as in the packet header. In this way, both the first and second information are sent as data packets, which improves the flexibility of setting processing priorities and the timeliness of information transmission. In another optional implementation, the terminal also sends third information, such as sending third information to the network side, which requests the network side to detect the processing priority. The network side can be access network equipment such as base stations or core network equipment such as user plane function network elements. Therefore, in this implementation, the terminal can inform the network side of the processing priority detection through the third information, avoiding the processing load caused by the network side's default continuous detection.
[0015] In one optional real-time mode, the terminal also receives fourth information; correspondingly, the terminal generates first information, including: the terminal generating first information based on the fourth information. That is, the fourth information is used to notify the terminal or server to generate the first information. Therefore, in this embodiment, the network side notifies the terminal to generate the first information, i.e., sets the processing priority of the data unit, which is beneficial for the network side to allocate processing resources to the data unit based on the processing priority.
[0016] Secondly, this application also provides an artificial intelligence priority notification method. This method is applied to access network equipment on the network side, modules (e.g., circuits, chips, or chip systems) within the access network equipment, or logical nodes, modules, or software capable of implementing all or part of the functions of the access network equipment. For example, this method can be applied to core network elements on the network side, such as user plane function network elements, modules (e.g., circuits, chips, or chip systems) within the user plane function network elements, or logical nodes, modules, or software capable of implementing all or part of the functions of the user plane function network elements. Taking the application of this method to an access network equipment as an example, the access network equipment receives first information, which indicates the processing priority of a data unit; this data unit is used for inference and / or training tasks in artificial intelligence (AI); the access network equipment allocates processing resources to the data unit according to the processing priority indicated by the first information, that is, it allocates corresponding processing resources to the data unit.
[0017] As can be seen, in this method, the access network device detects the processing priority of the data units of the AI task, and allocates processing resources, such as communication resources and / or computing resources, to the data units according to the processing priority, thereby improving the utilization rate of processing resources and alleviating the problem of computing power shortage.
[0018] In one optional implementation, the first information is further used to indicate the number of data units corresponding to the processing priority. In this way, the terminal or server marks the corresponding processing priority for each of the multiple data units, and the access network device can allocate processing resources to the data units based on their respective processing priorities.
[0019] In another optional implementation, the access network device further receives second information, which indicates the number of data units, and the processing priority of each data unit is indicated by the first information corresponding to that data unit. Thus, for N data units, there is a one-to-one correspondence between the N pieces of first information and the N data units; or, for N data units, there is a many-to-one correspondence between the N data units and the M pieces of first information, wherein data units with the same processing priority correspond to the same piece of first information.
[0020] The methods for sending the first and second information can be found in the relevant content described in the first aspect, and will not be detailed here.
[0021] In one optional implementation, the access network device further receives third information, which is used to request the network side to detect the processing priority. In this way, access network devices such as base stations or core network devices such as user plane function network elements can detect the processing priority of data units and allocate processing resources to the data units according to the processing priority.
[0022] In an optional real-time mode, the access network device further sends a fourth message; this fourth message is used to notify the terminal or server to generate the first message. In this way, the access network device can receive the processing priority of the data unit and thus allocate processing resources to the data unit according to the processing priority.
[0023] In an optional implementation, if the processing resources allocated by the access network device to the data unit do not meet preset conditions, the method further includes: the access network device sending a GTP-U protocol data unit to the core network element. The GTP-U protocol data unit includes the data unit of the AI task carried by the GTP-U protocol data unit and the processing priority of the data unit. Here, GTP-U is an abbreviation for General Packet Radio Service Tunneling Protocol-User Plane. The GTP-U protocol is a user data transmission protocol used in General Packet Radio Service (GPRS) networks, and it is a protocol for establishing tunnels in the user plane. Therefore, this implementation can also allow the core network to assist the access network device in completing the AI task processing, improving the utilization rate of processing resources and alleviating the computing power shortage problem of the access network device.
[0024] In another optional implementation, the method is applied to core network elements. If the processing resources allocated by the core network element to the data unit do not meet preset conditions, the method further includes: the core network element sending the data unit of the AI task and the processing priority of the data unit to the access network device. Therefore, this implementation can also allow the access network device to assist the core network element in completing the AI task processing, improving the utilization rate of processing resources and alleviating the computing power shortage problem of the core network element.
[0025] Further elaboration on the optional implementation methods and their beneficial effects in the second aspect can be found in the relevant content described in the first aspect, and will not be elaborated here.
[0026] Thirdly, this application provides a communication device that has the functions of the first aspect described above. For example, the communication device includes modules, units, or means that perform the operations involved in the first aspect. These modules, units, or means can be implemented by software, hardware, or a combination of software and hardware.
[0027] Fourthly, this application provides a communication device that has the functions of the second aspect above. For example, the communication device includes modules, units, or means that perform the operations involved in the second aspect above. These modules, units, or means can be implemented by software, hardware, or a combination of software and hardware.
[0028] Fifthly, this application provides a communication device including an interface circuit and one or more processors. The one or more processors are coupled to a memory. The memory stores part or all of the necessary computer program or instructions for implementing the functions described in the first aspect. The one or more processors can execute the computer program or instructions, causing the communication device to implement the methods in any possible design or implementation of the first aspect. The interface circuit is used to implement the communication functions within the communication device and / or the communication functions between the communication device and other devices or components.
[0029] In one possible design, the processor is used to communicate with other devices or components through the interface circuit.
[0030] In one possible design, the communication device may also include the memory.
[0031] The aforementioned communication device may be a terminal, or a communication / processing module within a terminal, or a chip within a terminal responsible for communication functions such as a modem chip (also known as a baseband chip), or a SoC or SIP chip containing a modem module, or a circuit or chip within a terminal responsible for processing functions (such as a GPU). The aforementioned communication device may also be a server, or a communication / processing module within a server, or a chip within a server responsible for communication functions such as a modem chip (also known as a baseband chip), or a SoC or SIP chip containing a modem module, or a circuit or chip within a server responsible for processing functions (such as a GPU).
[0032] Sixthly, this application provides a communication device including an interface circuit and one or more processors. The one or more processors are coupled to a memory. The memory stores part or all of the necessary computer program or instructions for implementing the functions described in the second aspect above. The one or more processors are executable to carry out the computer program or instructions, causing the communication device to implement the methods in any possible design or implementation of the second aspect above. The interface circuit is used to implement the communication functions within the communication device and / or the communication functions between the communication device and other devices or components.
[0033] In one possible design, the processor is used to communicate with other devices or components through the interface circuit.
[0034] In one possible design, the communication device may also include the memory.
[0035] The aforementioned communication device may be a network-side device, or a communication / processing module within a network-side device, or a chip within a network-side device responsible for communication functions, such as a modem chip (also known as a baseband chip) or a SoC or SIP chip containing a modem module, or a circuit or chip within a network-side device responsible for processing functions (such as a GPU). Optionally, the network-side device may be an access network device or a core network device.
[0036] In a seventh aspect, this application provides a communication system, which includes a first communication device and a second communication device; the first communication device is used to perform the method described in the first aspect or any possible implementation thereof, and the second communication device is used to perform the method described in the second aspect or any possible implementation thereof.
[0037] Eighthly, this application provides a computer-readable storage medium storing computer-readable instructions that, when read and executed by a computer, cause the computer to perform any of the possible designs in the first to second aspects described above.
[0038] Ninthly, this application provides a computer program product that, when read and executed by a computer, causes the computer to perform any of the possible designs in the first to second aspects described above. Attached Figure Description
[0039] Figure 1 This is a simplified schematic diagram of a communication system;
[0040] Figure 2 This is a schematic diagram of a possible application framework in a communication system.
[0041] Figure 3 This is a schematic diagram of another possible application framework in a communication system.
[0042] Figures 4-6 This is a schematic diagram of the architectural scenarios to which this application may be applicable;
[0043] Figure 7 This is a flowchart illustrating the communication method provided in an embodiment of this application;
[0044] Figures 8-10 This is a schematic diagram of the communication method provided in an embodiment of this application;
[0045] Figure 11 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0046] Figure 12 This is a schematic diagram of the structure of a terminal provided in an embodiment of this application. Detailed Implementation
[0047] This application can be applied to various communication systems, including but not limited to: Long Term Evolution (LTE) systems, 4th generation (4G) systems, 5th generation (5G) systems, such as new radio access technology (NR), networks integrating multiple systems, Internet of Things (IoT) systems, vehicle-to-everything (V2X) systems, open-radio access network (O-RAN) systems, and future communication systems.
[0048] See Figure 1 , Figure 1 This is a simplified diagram of a communication system. (Example) Figure 1 As shown, the communication system includes a radio access network (RAN) 100 and a core network (CN) 200. RAN 100 includes at least one RAN node (e.g., Figure 1 110a and 110b, collectively referred to as RAN node 110) and at least one terminal (such as Figure 1 120a-120j, collectively referred to as 120, are included in the RAN. The RAN may also include other RAN nodes, such as wireless relay devices and / or wireless backhaul devices. Figure 1 (Not shown in the image). Terminal 120 is connected to RAN node 110 wirelessly. RAN node 110 is connected to core network 200 wirelessly or via wired connection. The core network equipment in core network 200 and RAN node 110 in RAN 100 can be different physical devices, or they can be the same physical device integrating core network logical functions and radio access network logical functions.
[0049] RAN100 can be a cellular system related to the 3rd Generation Partnership Project (3GPP), such as LTE systems, 4G, 5G mobile communication systems, or future-oriented communication systems. RAN100 can also be an open access network (O-RAN or ORAN), a cloud radioaccess network (CRAN), or a wireless fidelity (WiFi) system. RAN100 can also be a communication system that integrates two or more of the above systems.
[0050] RAN node 110, sometimes also referred to as access network equipment, RAN entity, or access node, constitutes part of the communication system and assists terminals in achieving wireless access. Multiple RAN nodes 110 in the communication system can be of the same type or different types. In some scenarios, the roles of RAN node 110 and terminal 120 are relative, for example... Figure 1 Network element 120i can be a helicopter or a drone, and it can be configured as a mobile base station. For terminals 120j that access RAN 100 through network element 120i, network element 120i is a base station; however, for base station 110a, network element 120i is a terminal. RAN node 110 and terminal 120 are sometimes referred to as communication devices, for example... Figure 1 Network elements 110a and 110b can be understood as communication devices with base station functions, while network elements 120a-120j can be understood as communication devices with terminal functions.
[0051] In one possible scenario, a RAN node can be a base station, an evolved NodeB (eNodeB), an access point (AP), a transmission reception point (TRP), a next-generation NodeB (gNB), a base station in a future mobile communication system, or an access node in a WiFi system, etc. Figure 1 110a), micro base stations or indoor stations (such as Figure 1The RAN node can be a relay node or donor node (as described in section 110b), or a wireless controller in a CRAN scenario. Optionally, the RAN node can also be a server, wearable device, vehicle, or in-vehicle equipment. For example, the access network equipment in vehicle-to-everything (V2X) technology can be a roadside unit (RSU). All or part of the functions of the RAN node 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 RAN node can also be equipped with communication modules, circuits, or chips that perform corresponding communication functions. The RAN node can also be configured with program instructions for performing corresponding communication functions and corresponding program instructions. The RAN node in this application can also be a logical node, logical module, or software capable of implementing all or part of the RAN node functions.
[0052] In another possible scenario, multiple RAN nodes collaborate to assist the terminal in achieving wireless access, with different RAN nodes each implementing 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 set up separately 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).
[0053] 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.
[0054] A terminal can be a device or module that accesses the aforementioned communication system and has corresponding communication functions. A terminal can also be called a terminal device, user equipment (UE), mobile station, mobile terminal, etc. Terminals can be widely used in various scenarios, such as device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), Internet of Things (IoT), virtual reality, augmented reality, industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearables, smart transportation, smart cities, etc. Terminals can be mobile phones, tablets, computers with wireless transceiver capabilities, wearable devices, vehicles, drones, helicopters, airplanes, ships, robots, robotic arms, smart home devices, transportation vehicles with wireless communication capabilities, communication modules, etc. The embodiments of this application do not limit the device form of the terminal. A terminal typically contains a communication module, circuit, or chip that performs the corresponding communication function. The terminal can also be configured with program instructions for performing the corresponding communication function.
[0055] To support AI technology in wireless networks, AI nodes may also be introduced into the network.
[0056] AI nodes can be deployed in one or more of the following locations within the communication system: access network nodes (RAN nodes), terminal devices, or core network devices. Alternatively, AI nodes can be deployed independently, for example, in a location other than any of the aforementioned devices, such as in the host or cloud server of an over-the-top (OTT) system. AI nodes can communicate with other devices in the communication system, which can be one or more of the following: network devices, terminal devices, or core network elements.
[0057] It is understood that this application does not limit the number of AI nodes. For example, when there are multiple AI nodes, these nodes can be divided based on function, such as different AI nodes being responsible for different functions.
[0058] It can also be understood that AI nodes can be independent devices, or they can be integrated into the same device to achieve different functions. Alternatively, they can be network elements in hardware devices, software functions running on dedicated hardware, or virtualization functions instantiated on a platform (e.g., a cloud platform). This application does not limit the specific form of the aforementioned AI nodes.
[0059] AI nodes can be AI network elements or AI modules.
[0060] Figure 2 This is a schematic diagram of a possible application framework in a communication system. For example... Figure 2 As shown, network elements in a communication system are connected via interfaces (e.g., NG, Xn) or air interfaces. These network element nodes, such as core network equipment, access network nodes, terminals, or one or more devices in operations administration and maintenance (OAM), are equipped with one or more AI modules (for clarity, ...). Figure 2 (One is shown in the image). An access network node can be a single RAN node or can include multiple RAN nodes, such as a CU and a DU. The CU and / or DU can also be equipped with one or more AI modules. The CU can also be split into CU-CP and CU-UP, and one or more AI modules are set in the CU-CP and / or CU-UP.
[0061] AI modules are used to implement corresponding AI functions. AI modules deployed in different network elements can be the same or different. The models of AI modules can achieve different functions depending on the parameter configurations. The models of AI modules can be configured based on one or more of the following parameters: structural parameters (e.g., at least one of the following: number of neural network layers, neural network width, inter-layer connections, neuron weights, neuron activation function, or biases in the activation function), input parameters (e.g., the type and / or dimension of the input parameters), or output parameters (e.g., the type and / or dimension of the output parameters). The biases in the activation function can also be referred to as the biases of the neural network.
[0062] In one example, the neural network mentioned above could be a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), or a generative adversarial network (GAN).
[0063] Deep Neural Networks (DNNs) are artificial neural network architectures with multiple layers of nonlinear transformation units stacked in a hierarchical structure to form deep computational models. Compared to shallow neural networks, deep neural networks have more hidden layers, allowing the network model to capture more complex data structures and higher-level abstract features.
[0064] A CNN is a deep neural network with a convolutional structure. A CNN contains a feature extractor consisting of convolutional layers and subsampling layers. This feature extractor can be viewed as a filter, and the convolution process can be seen as performing convolution between a trainable filter and an input image or a convolutional feature map.
[0065] RNN is a type of recursive neural network that takes sequence data as input, recursively moves along the direction of sequence evolution, and connects all nodes (recurrent units) in a chain-like manner.
[0066] GAN is a deep learning model. It consists of a generator and a discriminator, and is trained through adversarial learning. Its purpose is to estimate the potential distribution of data samples and generate new data samples.
[0067] An AI module can have one or more models. A model can infer an output, which includes one or more parameters. The learning, training, or inference processes of different models can be deployed on different nodes or devices, or they can be deployed on the same node or device.
[0068] Figure 3 This is a schematic diagram illustrating another possible application framework in a communication system. For example... Figure 3 As shown, the communication system includes a RAN intelligent controller (RIC). For example, the RIC could be... Figure 2 The AI modules 117 and 118 shown are used to implement AI-related functions. RICs include near-real-time RICs (near-RT RICs) and non-real-time RICs (non-RT RICs). Non-real-time RICs primarily process non-real-time information, such as data that is not sensitive to latency, with latency in the order of seconds. Real-time RICs primarily process near-real-time information, such as data that is relatively sensitive to latency, with latency in the order of tens of milliseconds.
[0069] Near real-time (NRT) RICs are used for model training and inference. For example, they are used to train AI models and then use those models for inference. NRT RICs can obtain network-side and / or terminal-side information from RAN nodes (e.g., CUs, CU-CPs, CU-UPs, DUs, and / or RUs) and / or terminals. This information can be used as training data or inference data. NRT RICs can deliver inference results to RAN nodes and / or terminals. Inference results can be exchanged between CUs and DUs, and / or between DUs and RUs. For example, a NRT RIC delivers an inference result to a DU, which then forwards it to an RU.
[0070] Non-real-time RICs are also used for model training and inference. For example, they are used to train AI models and then use those models for inference. Non-real-time RICs can obtain network-side and / or terminal-side information from RAN nodes (e.g., CUs, CU-CPs, CU-UPs, DUs, and / or RUs) and / or terminals. This information can be used as training data or inference data, and the inference results can be delivered to RAN nodes and / or terminals. Inference results can be exchanged between CUs and DUs, and / or between DUs and RUs; for example, a non-real-time RIC delivers inference results to a DU, which then forwards them to an RU.
[0071] Near real-time RICs and non-real-time RICs can also be configured as separate network elements. Near real-time RICs and non-real-time RICs can also be part of other devices. For example, near real-time RICs can be set in RAN nodes (e.g., CU, DU), while non-real-time RICs can be set in OAM, cloud servers, core network devices, or other network devices.
[0072] In this application, "sending information" can be understood as one device sending information to another device, or it can also be understood as one logical module within a device sending information to another logical module. For example, "terminal sending information" can be understood as a terminal sending information to another device (such as an access network device), or it can be understood as logical module 1 in the terminal sending information to logical module 2 in the terminal.
[0073] In this application, "receiving information" can be understood as one device receiving information from another device, or it can also be understood as a logical module within a device receiving information from another logical module. For example, "access network device receiving information" can be understood as the access network device receiving information from another device (such as a terminal), or it can be understood as logical module 1 in the access network device receiving information from logical module 2 in the access network device.
[0074] In this application, the phrase "sending information to... (e.g., access network equipment)" or the related illustrations in the accompanying drawings can be understood as the destination of the information being the access network equipment. This can include sending information directly or indirectly to the access network equipment. Similarly, the phrases "receiving information from... (e.g., a terminal)," "receiving information from... (e.g., a terminal)," or "receiving information sent by (e.g., a terminal)," or the related illustrations in the accompanying drawings, can be understood as the source of the information being the terminal. This can include receiving information directly or indirectly from the terminal. Information may undergo necessary processing between the source and destination, such as format changes, but the destination can understand the valid information from the source. Similar expressions in this application can be interpreted similarly, and will not be elaborated further here.
[0075] This application provides a communication method, which, in addition to being applied to the communication system described above, can also be applied to, but is not limited to, other applications. Figures 4 to 6 The architecture scenario shown. Figure 4 The diagram illustrates a server-network-terminal architecture, applicable to video transmission or AI service scenarios. AI service scenarios can include distributed network training and distributed model inference. The network includes data networks (DN) (e.g., fixed-line networks), and the core and access networks (AN) of mobile communication systems such as LTE and 5G. Terminals can be various types of devices described above, such as extended reality (XR) headsets, video players, holographic projectors, mobile phones, computers, and robots, which will not be detailed here. The DN provides services such as carrier services, internet access, or third-party services, and includes a server. The server is used for video source encoding and rendering.
[0076] The core network is used to perform three main functions: registration, connection, and session management. Figure 4As shown, it mainly includes network exposure function (NEF) network elements, policy control function (PCF) network elements, application function (AF) network elements, access and mobility management function (AMF) network elements, session management function (SMF) network elements, and user plane function (UPF) network elements. The NEF network element exposes 3GPP network functions and capabilities to the AF network element, and also allows the AF network element to provide information to the 3GPP network functions. The corresponding interface between the NEF and AF network elements is the N33 interface. The PCF network element manages charging and QoS policies. The AF network element mainly transmits application-side requirements to the network side. The AMF network element mainly performs mobility management, access authentication / authorization, and other functions. In addition, it is responsible for transmitting user policies between the terminal and the PCF network element. The N1 interface is the signaling plane interface between the terminal and the AMF network element. Since the terminal cannot directly interact with the core network, it needs to pass NAS (non-access stratum) information through the RAN. The N2 interface is the signaling plane interface for the AMF network element to request the RAN to allocate resources for Protocol Data Unit (PDU) sessions. The SMF network element is used to complete the terminal's Internet Protocol (IP) address allocation, UPF selection, and charging and quality of service (QoS) management. Session management functions such as service (QoS) policy control; the UPF network element, as the interface with the DN, completes functions such as user plane data forwarding, session / flow-level billing statistics, and bandwidth limiting; the N3 interface is the interface between the RAN node and the UPF network element, mainly used to transmit uplink and downlink user plane data between the RAN node and the UPF network element.
[0077] Figure 5 The diagram illustrates a terminal-network-terminal architecture scenario, applicable to the tactile internet. In this scenario, one terminal serves as the primary tactile user, while another terminal serves as a controlled user, such as a remotely controlled robot or operator. The network is as follows: Figure 5 The relevant details will not be elaborated here. The master domain haptic user receives audio / video feedback signals from the controlled domain user. With the help of various commands and feedback signals, the master domain haptic user and the controlled domain user are connected through a two-way communication link on the network, thus forming a global control loop. Figure 6The diagram illustrates a WiFi architecture scenario where a cloud server transmits XR media data or regular video to a terminal (such as an XR device) via a fixed network, WiFi router, WiFi access point (AP), or set-top box. The WiFi router and WiFi AP can transmit information between the server and the terminal via a WiFi link.
[0078] With the rise of large-scale AIGC applications, the massive growth in user services poses a severe computing challenge to central servers. Wireless networks, naturally located close to terminals, offer significant value for distributed learning based on wireless transmission in areas such as perceptual data acquisition, assisted training, and assisted inference. According to relevant calculations, the total computing power of current base stations exceeds 2.2 ETOPS. Considering the continued growth trend of wireless network computing resources in the future, the computing power and real-time computing resource status of wireless networks can fully support the massive number of terminal users and the strain on central servers. ETOPS is an abbreviation for exa tera operations per second, a unit for measuring computing performance; TOPS is an abbreviation for tera operations per second, representing the number of floating-point operations that can be performed per second. ETOPS = 10 18 TOPS.
[0079] In distributed computing, tasks at different levels (such as high-level and low-level tasks) are decomposed into multiple computational subtasks, which are completed by the same or different computing nodes. The completion time of this task depends on the completion time of the last computational subtask among the multiple computational subtasks. Taking the segmentation of DNN model computation tasks as an example, with the continuous development of terminal devices, the terminals themselves also have certain computing capabilities and can handle a certain amount of neural network computation. Application servers can segment the computation tasks of deep neural network (DNN) models, performing the front-end preprocessing computation on the terminal and uploading the complex computation part to the application server in the cloud for computation processing. Alternatively, the lower-level and less computationally demanding parts can be computed by the terminal, while the higher-level and more computationally demanding parts can be uploaded to the cloud server for processing. Compared to the traditional method of directly uploading the original image for processing, the proposed method of segmenting the DNN model computation tasks, such as the terminal extracting image information and uploading the extracted intermediate feature information to the network, reduces the amount of data uploaded.
[0080] Therefore, in the process of dividing computing tasks, how the network can provide computing power support to terminals and servers to alleviate the problem of computing power shortage is an issue that needs to be addressed.
[0081] The communication method provided in this application includes an AI priority notification method and related apparatus. By setting the processing priority of data units of AI tasks by the terminal or server, the network side allocates processing resources to the data units according to the processing priority of the data units, which can improve the utilization rate of network processing resources and alleviate the problem of computing power pressure on terminals or servers.
[0082] To facilitate understanding, some concepts involved in this application are introduced. In this application, data units are used for inference and / or training tasks in artificial intelligence (AI). An inference task refers to adjusting the input to an AI model to obtain the desired output without modifying the AI model. A training task involves adjusting the input to the AI model and its parameters or weights to improve the model's performance. Optionally, processing priorities may include, but are not limited to, computational priorities and / or transmission priorities. The processing priority is used to allocate processing resources for the data units.
[0083] The embodiments of this application are described below with reference to the accompanying drawings.
[0084] The communication method and related apparatus will be further described below with reference to the accompanying drawings. It is understood that this application uses access network equipment and terminals as examples of the execution subjects in the interactive illustration, but this application does not limit the execution subjects of the interactive illustration. For example, the method executed by the access network equipment in this application can also be implemented by modules (e.g., circuits, chips, or chip systems) in the access network equipment, or by logical nodes, logical modules, or software that can implement all or part of the functions of the access network equipment; the method executed by the terminal in this application can also be implemented by the communication / processing module in the terminal or by circuits or chips (such as modem chips (also known as baseband chips), or SoC chips containing modem cores, or SIP chips, or GPUs) in the terminal responsible for communication / processing functions; the method executed by core network elements in this application, such as the method executed by UPF network elements, can also be implemented by the communication / processing module in the UPF network element or by circuits or chips (such as modem chips (also known as baseband chips), or SoC chips containing modem cores, or SIP chips, or GPUs) in the UPF network element responsible for communication / processing functions.
[0085] Figure 7 This is a flowchart illustrating a communication method provided in an embodiment of this application. Figure 7 The communication method shown is Figure 4 Taking the illustrated architecture scenario as an example, the network is described using an access network device-core network structure. In this communication method, the terminal sets the processing priority of the data unit, and the access network device allocates processing resources to the data unit according to the processing priority. Specifically, this communication method includes, but is not limited to, the following steps:
[0086] S101. The terminal generates first information, which is used to indicate the processing priority of the data unit.
[0087] S102. The terminal sends first information to the access network device, and the access network device receives the first information accordingly.
[0088] In one optional implementation, the first information is carried in uplink control information (UCI), medium access control-control element (MAC-CE), or radio resource control (RRC) signaling. Therefore, this implementation improves the reliability of priority transmission by transmitting the first information through control information or signaling.
[0089] In another alternative implementation, the first information is carried in a data packet, such as in the packet header, and the data packet is used to carry the data unit. As can be seen, this implementation transmits the first information via data packets. In this way, the data unit and processing priority are transmitted together in the form of data packets, which improves the real-time performance and flexibility of setting the processing priority.
[0090] S103. The access network device allocates processing resources to the data unit according to the processing priority indicated by the first information.
[0091] Optionally, the processing priority of data units can be defined between the terminal and the access network device. The corresponding processing priority is indicated by setting the value of the first information. As shown in Table 1, the correspondence between the value of the first information and the processing priority is as follows: processing priorities 0 to 3 are indicated by 2 bits. If the value of the first information is 00, it means that the processing priority indicated by the first information is 0; if the value of the first information is 01, it means that the processing priority indicated by the first information is 1; if the value of the first information is 10, it means that the processing priority indicated by the first information is 2; and if the value of the first information is 11, it means that the processing priority indicated by the first information is 3.
[0092] Table 1. Correspondence between the values of the first piece of information and the processing priority.
[0093] First Information 00 01 10 11 Processing priority 0 1 2 3
[0094] In one optional implementation, the first information is further used to indicate the number of data units corresponding to the processing priority. This allows multiple data units to be individually labeled with their corresponding processing priorities, enabling the network side to allocate processing resources to the data units based on their respective processing priorities. For example, but not limited to, the terminal and the access network device agree that the first portion of the bits in the first information is used to indicate the number of data units, and the second portion of the bits in the first information is used to indicate the processing priority corresponding to that number of data units. The correspondence between the second portion of the bits and the processing priorities is shown in Table 1, and will not be detailed here. As shown in Table 2, there is a correspondence between the values of the first part of the first information bits and the number of data units. The number of data units 1 to 4 is indicated by 2 bits, that is, the first part of the bits is 2 bits. If the value of the first part of the bits is 00, it means that the number of data units corresponding to the processing priority indicated by the second part of the bits is 1; if the value of the first part of the bits is 01, it means that the number of data units corresponding to the processing priority indicated by the second part of the bits is 2; if the value of the first part of the bits is 10, it means that the number of data units corresponding to the processing priority indicated by the second part of the bits is 3; if the value of the first part of the bits is 11, it means that the number of data units corresponding to the processing priority indicated by the second part of the bits is 4.
[0095] Table 2 shows the correspondence between the values of the first part of the first information bits and the number of data units.
[0096] First part of bits 00 01 10 11 Number of data units 1 2 3 4
[0097] In another optional implementation, the terminal further generates and sends second information, which indicates the number of data units. The processing priority of each data unit is indicated by the first information corresponding to that data unit. Thus, for N data units, N pieces of first information can be generated and sent, corresponding one-to-one with each of the N data units; or, for N data units, M pieces of first information can be generated and sent, with a many-to-one correspondence between the N data units and the M pieces of first information, where data units with the same processing priority correspond to the same piece of first information. Optionally, the correspondence between the value of the first information and the processing priority can be seen in Table 1. The value of the second information is equivalent to the first part of the bits in the above implementation, that is, the second information uses 2 bits to represent the number of data units from 1 to 4. It should be noted that in this implementation, the number of data units indicated by the second information is the number of data units, and one data unit corresponds to one piece of first information; therefore, the number of data units indicated by the second information is equal to the number of pieces of first information. For example, suppose the second information sent by the terminal to the access network device is 10 and the first information is 000110. Then, the access network device receives the first and second information and determines that the number of data units of the transmitted AI task is 3. The processing priority of the first data unit is 0, the processing priority of the second data unit is 1, and the processing priority of the third data unit is 2.
[0098] In an optional implementation, the second information may also be carried in UCI, MAC-CE, or RRC signaling. Therefore, this implementation improves the reliability of data unit transmission by transmitting the second information through control information or signaling.
[0099] The first and second information can be carried in the same information or the same signaling and sent together; or the first and second information can be carried in different information or signaling and sent separately.
[0100] In another alternative implementation, the second information is carried within a data packet, such as in the packet header, and the data packet is used to carry the AI's data units. In this way, both the first and second information are sent as data packets, which improves the flexibility of setting processing priorities and the timeliness of information transmission.
[0101] In one alternative implementation, such as Figure 7 As shown, the terminal also sends third information to the access network device, which is used to request the access network device to detect the processing priority. Therefore, in this embodiment, the terminal can inform the access network device of the processing priority through the third information, avoiding the processing load caused by the access network device's default continuous detection.
[0102] Optionally, the access network device is a base station, and the third information can be carried in UCI, MAC-CE or RRC signaling to notify the base station of the detection of processing priority. For example, the third information can occupy 1 bit.
[0103] In another optional implementation, the SMF network element sends third information to the AMF network element, which then notifies the access network device to detect the processing priority. These implementations avoid the access network device or core network continuously monitoring whether data units have processing priority markers, thereby reducing the detection load on the access network device or core network element.
[0104] Another alternative implementation, such as Figure 7 As shown, the access network device sends fourth information to the terminal. This fourth information is used to notify the terminal to generate first information. The terminal then generates first information based on this fourth information to indicate the processing priority of the data unit. Therefore, in this embodiment, the access network device notifies the terminal to generate the first information, which sets the processing priority of the data unit. This facilitates the access network device in allocating processing resources to the data unit based on the processing priority.
[0105] Optionally, the access network device is a base station, and the fourth information can be carried in downlink control information (DCI), MAC-CE, or RRC signaling to notify the terminal to generate the first information, that is, to mark the processing priority of the data unit.
[0106] In one optional implementation, the access network device allocates processing resources to the data unit according to the processing priority indicated by the first information. If the processing resources of the access network device meet the processing resources required by the data unit, then processing resources are allocated to the data unit, the data unit is processed using the processing resources to obtain a processing result, and the processing result is returned to the terminal. If the processing resources of the access network device do not meet the processing resources required by the data unit, then... Figure 7As shown, the access network device sends the data unit and its processing priority to the core network. For example, it can send a GTP-U protocol data unit, which includes the data unit and its processing priority. GTP-U stands for General Packet Radio Service Tunneling Protocol-User Plane, a user data transmission protocol used in GPRS networks to establish tunnels in the user plane. Core network elements assist the access network device or process the data unit independently according to its processing priority to obtain the processing result. Optionally, the core network element also returns the processing result to the terminal. Therefore, this implementation also allows the core network to assist the access network device in completing AI task processing, improving the utilization of processing resources and alleviating the computing power constraints of the access network device.
[0107] In another embodiment, Figure 7 In the described embodiment, the operation of allocating processing resources to data units based on processing priority by the access network device is executed by the core network element. For example, in this embodiment, after determining the processing priority of a data unit, the access network device can send information indicating the processing priority to the UPF network element, which then allocates processing resources to the data unit according to the processing priority. This embodiment, with the core network scheduling processing resources, can fully utilize the network's processing resources and improve the AI service satisfaction on the terminal side.
[0108] In yet another embodiment, in an optional implementation, Figure 7 Before step S101, the terminal sends third information to the access network device (such as a base station). This third information is used to request the access network device to monitor the processing priority. Alternatively, in another optional implementation... Figure 7 Before step S101, the access network device (such as a base station) sends fourth information to the terminal. This fourth information is used to notify the terminal to generate first information, that is, to notify the terminal to mark the processing priority of the data unit. This embodiment enables the access network device or core network to allocate processing resources to the data unit according to the processing priority, thereby improving the utilization rate of network-side processing resources.
[0109] In another embodiment, Figure 7 In the described embodiment, the operations performed by the terminal are executed by the server, and the operations performed by the access network devices are executed by the UPF network element. That is, in this embodiment, the server sets the processing priority, and the core network schedules processing resources for data units according to the processing priority, thereby alleviating the server's computing power pressure and improving the network's computing power service capability.
[0110] The embodiments of this application will be further described below in conjunction with the communication system architecture.
[0111] Figure 8 This is a schematic diagram of another communication method provided in an embodiment of this application. Figure 8 The described embodiment transmits instructions from the control plane to the user plane, such as to notify the network side to detect processing priorities. Figure 8 As shown, dashed lines indicate that network elements transmit information through the control plane, while solid lines indicate that they transmit information through the user plane. This embodiment uses a core network including UPF, NEF, PCF, AMF, SMF, and AF elements as examples. Terminals and AMF elements can interact via the N1 interface. Interactions between other network function elements are similar; for example, access network devices and AMF elements can interact via the N2 interface. The N3 interface supports selective activation / deactivation of user plane connections, so access network devices and UPF elements can interact via the N3 interface. SMF elements and UPF elements interact via the N4 interface, and UPF elements and DNs (such as Enterprise Application Servers (EAS)) interact via the N6 interface. All NFs in the control plane can interact using service-oriented interfaces. For example, NEF elements can interact with other network function elements via the service-oriented interface Nnef. PCF network elements can interact with other network function network elements through the service interface Npcf. AF network elements can interact with other network function network elements through the service interface Naf. AMF network elements can interact with other network function network elements through the service interface Namf. SMF network elements can interact with other network function network elements through the service interface Nsmf.
[0112] The communication method may include, but is not limited to, the following steps:
[0113] S201. The terminal sends information to the AMF network element to notify the core network element to detect the processing priority.
[0114] Another possible interpretation is that the information sent in step S201 can also be used to notify the core network element to enable the processing priority mode, where the processing priority mode is a mode in which the core network element detects the processing priority of data units. Step S201 is optional; without it, the core network element can continuously detect the processing priority markers of data units.
[0115] S202. The SMF network element sends information to the access network device through the AMF network element to notify the access network device to detect the processing priority.
[0116] In step S201, the core network element that notifies the core network element to detect the processing priority can be an SMF network element.
[0117] Optionally, the information sent in step S202 can also be used to notify the access network device to enable the processing priority mode, wherein the processing priority mode is a mode in which the access network device detects the processing priority of data units. Step S202 is optional; if step S202 is omitted, the access network device can continuously detect the processing priority markers of data units.
[0118] S203. The terminal sends information to the access network equipment to indicate the processing priority of the data unit.
[0119] This embodiment illustrates the example of information sent in S203 being carried in a data packet. S203 may include: the terminal sending a data packet to the access network device, the data packet carrying data units for AI inference and / or training tasks, and the header of the data packet also including information indicating the processing priority of the data units. Optionally, the terminal may mark the processing priority in the header of upper-layer data packets such as application or transport layers, for example, by adding information indicating the processing priority to the header of IP data packets, or by marking the priority in the header of a frame, a video frame, or an input data slice of an AI task.
[0120] The processing priorities carried in different data packets may vary. For example, if there are data units of a sequence of AI tasks (i.e., AI inference tasks and / or training tasks) and the processing priorities of data units (such as input data) of different AI tasks are different, then the processing priority is marked in the header of the data packet of the AI task data unit. For example, if the data unit is a video frame and the third video frame has a higher processing priority than the second video frame, then based on the processing priorities shown in Table 1, a higher processing priority (such as 00) is added to the header of the data packet of the third video frame. The processing priority added to the header of the data packet of the second video frame can be set to 11. Then, when the access network device receives the AI task execution sequence corresponding to the second and third video frames, it will prioritize executing the AI task corresponding to the third video frame.
[0121] In another alternative implementation, the data packet includes data units for multiple AI tasks, such as... Figure 7In the described embodiment, the information sent by the terminal in S103 is also used to indicate the number of data units corresponding to the processing priority; alternatively, in addition to sending information indicating the processing priority, the terminal also sends information indicating the number of data units to the access network device. Optionally, the number of data units may also be referred to as the number of data units or data frames of the AI task. Optionally, if the data packet or other information sent by the terminal does not indicate the number of data units, it can be assumed that all data units of the terminal's AI tasks belong to the same processing priority. Optionally, the information in the data packet header used to indicate the processing priority may be a processing priority field, and the information used to indicate the number of data units in the data packet may be the data unit number field of the AI task.
[0122] S204. The access network device determines the processing priority of the data unit and allocates processing resources to the data unit according to the processing priority.
[0123] For example, access network devices can detect the processing priority information carried in the packet header of data packets containing AI tasks, and then determine the processing priority of the data units.
[0124] Optionally, if the access network device has sufficient processing resources, it can return the processing result to the terminal after completing the AI task using the data unit. If the access network device has insufficient processing resources, the method may further include: the access network device sending the processing priority of the data unit and the data unit to the core network element through the GTP-U header in the PDU set; the core network element can assist the access network device in completing the AI task, or the core network element can complete the AI task independently and then return the processing result to the terminal.
[0125] As can be seen, in this communication method, the terminal can mark the processing priority of data units of the AI task in data packets or other messages (such as UCI, MAC-CE, or RRC signaling). Optionally, the terminal can also send information to core network elements or access network devices to notify of the detection of processing priorities. Optionally, the access network devices or core network elements can independently or collaboratively process the data units of the AI task according to the determined processing priorities, thereby realizing the orchestration of overall network computing resources and / or transmission resources.
[0126] Figure 9 This is a schematic diagram of yet another communication method provided in an embodiment of this application. Figure 9 The example of the communication system architecture shown is similar to Figure 8 Similarly, the architecture of the communication system will not be described in detail here. Figure 9 In the communication method described above, steps S301 to S302 are... Figure 8 Steps S201 to S202 in the communication method are the same and will not be described in detail here. Optionally, Figure 9 In the aforementioned communication method, after the SMF network element notifies the access network device through the AMF network element to detect the processing priority of the data units of the AI task, the method further includes:
[0127] S303.SMF network element sends information to UPF network element to notify UPF network element to detect processing priority.
[0128] in addition, Figure 9 In the communication method described above, step S304 and Figure 8 The same applies to step S203, so it will not be described in detail here.
[0129] and Figure 8 The difference in the communication method is that... Figure 9 In the aforementioned communication method, the access network device does not need to determine whether processing resources are sufficient. After determining the processing priority of a data unit, the access network device also sends the processing priority of that data unit to the UPF network element. Figure 9 S305. The access network device sends the processing priority of the data unit to the UPF network element. For example, the access network device sends the processing priority of the data unit to the UPF network element through the GTP-U header in the PDU set; or, the access network device sends the processing priority to the UPF network element through other messages.
[0130] Figure 9 The communication method further includes the following steps:
[0131] The S306.UPF network element determines the processing priority of the data unit, allocates processing resources to the data unit according to the processing priority, and returns the processing result to the terminal after completing the processing.
[0132] Among them, the UPF network element determines the processing priority of the data unit based on the received data packet or information.
[0133] In other words, Figure 9 The communication method described above and Figure 8 The difference in the communication method is that, Figure 9 The communication method described herein involves core network elements, such as UPF elements, allocating processing resources to data units based on processing priorities and scheduling these resources. This enables full utilization of network processing resources and improves terminal AI service satisfaction.
[0134] Figure 10 This is a schematic diagram of yet another communication method provided in an embodiment of this application. Figure 10 In the communication system shown, the core network is illustrated using NEF, PCF, SMF, AMF, and UPF network elements as examples. Additionally, Figure 10In the aforementioned communication method, the server marks the processing priority of data units and sends this information to the access network devices and core network for allocation of processing resources. This communication method may include, but is not limited to, the following steps:
[0135] S401. The server sends information to the UPF network element via N4 to notify the UPF network element to detect the processing priority.
[0136] Step S401 is optional. If the server does not send this information to the UPF network element, the UPF network element can continuously detect the processing priority of the data units of the AI task. In another optional implementation, in step S401, the server sends information to the UPF network element via N2 to notify the UPF network element to detect the processing priority, such as... Figure 10 As shown, the server first sends the information to the access network device via N2, and then the access network device sends the information to the UPF network element.
[0137] S402. The server sends information to the UPF network element to indicate the processing priority of the data unit.
[0138] This embodiment uses the example of the information sent in step S402 being carried in a data packet, similar to... Figure 8 The difference between step S203 described above and step S402 in this embodiment is that step S402 may include: the server sending a data packet to the UPF network element, the data packet carrying data units for AI inference and / or training tasks, and the header of the data packet also including information indicating the processing priority of the data units. Optionally, the server may mark the processing priority in the header of upper-layer data packets such as application or transport layer data packets, such as adding information indicating the processing priority to the header of Real-Time Transport Protocol (RTP) or Secure Real-Time Transport Protocol (SRTP) data packets.
[0139] The S403.UPF network element determines the processing priority of data units, allocates processing resources to data units according to the processing priority, and returns the processing result to the server after completing the processing.
[0140] Optionally, if the UPF network element has sufficient processing resources, then proceed to step S403; if the UPF network element has insufficient processing resources, then proceed to step S404.
[0141] The S404.UPF network element sends the processing priority of the data unit and the data unit information to the access network device.
[0142] Accordingly, after determining the processing priority of the data unit, the access network device returns the processing result to the UPF network element. The UPF network element then returns the processing result to the server.
[0143] visible, Figure 10 The communication method described herein differs from the embodiments described above in that the server sets the processing priority of the data unit, and the core network allocates processing resources to the data unit according to the processing priority, thereby making full use of the network's processing resources, alleviating the problem of server processing resource shortage, and improving the network's resource service capabilities.
[0144] Figure 11 A possible exemplary block diagram of the communication device involved in an embodiment of this application is shown. For example... Figure 11 As shown, the communication device may include modules or units for implementing the methods described in the embodiments above. In one possible design, the communication device includes a processing unit 501 and a communication unit 502. Optionally, the communication device may further include a storage unit 503 for storing device program code and / or data.
[0145] The communication device can be the terminal-side device in the above embodiments, such as a terminal or a communication module in a terminal, or a circuit or chip in a terminal that is responsible for communication functions.
[0146] For example, in one embodiment, the processing unit 501 is configured to: generate first information, the first information being used to indicate the processing priority of the data unit, the processing priority being used to allocate processing resources of the data unit; the data unit being used for inference tasks and / or training tasks of artificial intelligence (AI); and the communication unit 502 being configured to: send the first information.
[0147] In one possible design, the first information is also used to indicate the number of data units corresponding to the processing priority.
[0148] In one possible design, the first information is carried in a data packet, which is used to carry data units.
[0149] In one possible design, the communication unit 502 is further configured to: send third information, the third information being used to request the network side to detect the processing priority.
[0150] In one possible design, the communication unit 502 is further configured to receive fourth information. Correspondingly, the processing unit 501 is configured to generate first information, specifically, to generate first information based on the fourth information.
[0151] In one possible design, when the communication device is a terminal or a communication module within a terminal, the functionality of the processing unit 501 can be implemented by one or more processors. Specifically, the processor may include a modem chip, or a system-on-a-chip (SoC) or SIP chip containing a modem core. The functionality of the communication unit 502 can be implemented by transceiver circuitry.
[0152] In one possible design, when the communication device is a circuit or chip in a terminal responsible for communication functions, such as a modem chip or a system-on-a-chip (SoC) or SIP chip containing a modem core, the function of the processing unit 501 can be implemented by a circuit system in the aforementioned chip that includes one or more processors or processor cores. The function of the communication unit 502 can be implemented by an interface circuit or data transceiver circuit on the aforementioned chip.
[0153] In one possible design, when the communication device is a terminal or a processing module within a terminal, the functionality of the processing unit 501 can be implemented by one or more processors. Specifically, the processor may include a GPU, or a system-on-a-chip (SoC) or SIP chip containing a GPU. The functionality of the communication unit 502 can be implemented by transceiver circuitry.
[0154] In one possible design, when the communication device is a circuit or chip in the terminal responsible for processing functions, such as a GPU or a system-on-a-chip (SoC) or SIP chip containing a GPU, the function of the processing unit 501 can be implemented by a circuit system in the aforementioned chip that includes one or more processors or processor cores. The function of the communication unit 502 can be implemented by interface circuitry or data transceiver circuitry on the aforementioned chip.
[0155] The communication device can be a network-side device as described in the above embodiments, such as a core network element (e.g., a UPF network element) or an access network device.
[0156] For example, in one embodiment, the communication device may be the access network device described in the above embodiments.
[0157] Communication unit 502 is used to: receive and detect the processing priority of the data unit of the AI task;
[0158] Processing unit 501 is also used to: allocate processing resources to data units according to processing priority.
[0159] In one possible design, the first information is also used to indicate the number of data units corresponding to the processing priority.
[0160] In one possible design, the communication unit 502 is further configured to: receive second information, the second information being used to indicate the number of data units, the processing priority of the data units being indicated by the first information corresponding to the data unit.
[0161] In one possible design, the communication unit 502 is also used to: receive third information, which is used to request the network side to detect the processing priority.
[0162] In one possible design, the communication unit 502 is also used to: send a fourth message; the fourth message is used to notify the terminal or server to generate the first message.
[0163] In one possible design, if the processing resources allocated to the data unit do not meet the preset conditions, the communication unit 502 is also used to: send GTP-U protocol data units to the core network elements, wherein the GTP-U protocol data unit includes the data unit of the AI task carried by the GTP-U protocol data unit and the processing priority of the data unit.
[0164] It is understood that the division of units in the above-described device is a logical functional division. One function can correspond to one functional unit, or two or more functions can be integrated into one functional unit. In actual implementation, all or some units can be integrated into one physical entity, or distributed across different physical entities. Furthermore, the aforementioned functional units can be implemented in hardware, software, or a combination of both. Whether a function is executed in hardware or software 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 specific applications, but such implementations should not be considered beyond the scope of this application.
[0165] In one example, the functional unit in any of the above devices may be one or more integrated circuits configured to implement the above methods, such as: one or more application-specific integrated circuits (ASICs), or one or more central processing units (CPUs), one or more microcontroller units (MCUs), one or more digital signal processors (DSPs), or one or more field-programmable gate arrays (FPGAs), or a combination of at least two of these integrated circuit forms.
[0166] In one example, storage unit 503 may include random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory and / or registers, etc.
[0167] Figure 12 This is a schematic diagram of the structure of a terminal provided in an embodiment of this application. The terminal can correspond to... Figures 1 to 10 The terminal shown is used to implement the operations of the terminal in the above embodiments. Figure 12 As shown, the terminal includes: one or more antennas 610, a radio frequency processing system 620, and a processor system 630.
[0168] In the downlink or sidelink direction, the RF processing system 620 receives RF signals through the antenna 610 and sends the RF-processed signals to the processor system 630 for further processing. In the uplink or sidelink direction, the processor system 630 processes the terminal-side information and sends it to the RF processing system 620, which then processes the signal and transmits it through the antenna 610.
[0169] In one example, the radio frequency (RF) processing system 620 serves as the communication interface for external communication of the terminal and may include a radio frequency front end (RFFE) 621 and a radio frequency transceiver 622. The RFFE 621 is primarily used for one or more processing operations, such as shaping, passband selection, or gain adjustment, on the RF signals received by the antenna or the RF signals to be transmitted through the antenna. It may include one or more components such as RF switches, duplexers, filters, power amplifiers, antenna tuners, and low-noise amplifiers. The RFFE 621 can be a circuit system composed of multiple discrete components or integrated into one or more chips. The RF transceiver 622 processes the RF signals received by the RFFE 621 into baseband / IF signals for further processing by the processor system 630, and processes the baseband / IF signals provided by the processor system 630 into RF signals for transmission to the RFFE 621. The baseband / IF signals transmitted between the RF transceiver 622 and the processor system 630 can be digital or analog signals. The radio frequency transceiver 622 can be implemented by one or more chips, which are usually referred to as radio frequency integrated circuits (RFICs).
[0170] In one example, processor system 630 may include one or more processors for processing signals and executing one or more communication protocols. Optionally, processor system 630 may also include memory 636. In one example, the one or more processors include at least one baseband processor 631 (also known as a modem processor). Memory 636 is used to store data and / or computer program instructions. Optionally, processor system 630 may also include one or more application processors 632 for implementing processing of the terminal operating system and application layer. Application processor 632 may include, for example, a GPU. Optionally, processor system 630 may also include one or more of a voice subsystem 633, a multimedia subsystem 634, or an interface circuit 635. The voice subsystem 633 is used to process voice signals, the multimedia subsystem 634 is used to handle multimedia-related operations, such as video encoding / decoding, image processing, etc., and the interface circuit 635 is used to enable communication with other terminal components, such as display 640, input device 650, memory 660, etc. The above-mentioned components in processor system 630 can communicate with each other via a bus or communication interface circuit.
[0171] In one example, the processor system 630 can be packaged as a single processor chip, such as a SoC chip or a SIP chip. In another example, the processor system 630 can be a system composed of multiple chips; for example, the baseband processor 631 can be packaged as a single chip, or packaged with part or all of the circuitry of the radio frequency processing system into a single chip.
[0172] In one example, memory 636 can be on-chip memory, i.e., located on the processor system 630 chip. In another example, memory 660 can be off-chip memory, i.e. located outside the processor system 630 chip.
[0173] In one example, the baseband processor 631 may include one or more processor cores 6311 and interface circuitry 6314. The one or more processor cores 6311 are used to process signals and execute one or more communication protocols. Optionally, the baseband processor 631 may also include a memory 6312 for storing at least a portion of the corresponding computer program instructions and / or data. In one example, the one or more processor cores 6311 execute the computer program instructions stored in the memory 6312 to implement the relevant operations (such as generating and sending first information) in the above method embodiments. In this application, the memory 6312 storing the corresponding computer program instructions and / or data may mean that the memory 6312 stores all the corresponding computer program instructions and / or data for the processor core 6311 to execute; or it may mean that the memory 6312 stores a portion of the corresponding computer program instructions and / or data, which includes the computer program instructions and / or data that the processor core 6311 currently needs to execute. The memory 6312 can store different portions of computer program instructions and / or data multiple times for the processor core 6311 to execute in order to implement the relevant operations in the above method embodiments. Interface circuit 6314 serves as a communication interface for communication with other components, such as transmitting signals with RF processing system 620, communicating with other subsystems and related components of processor system 630 via bus, such as transmitting data control signals with application processor 632, and transmitting data or computer program instructions with memory 636 or memory 660. Optionally, to reduce the load on the processor core, baseband signal processing circuit 6313 can also be provided to perform at least some baseband signal processing, including one or more of signal demodulation, modulation, encoding, or decoding.
[0174] The processor, processor system, application processor, baseband processor, processor circuit, or processor core mentioned above can be collectively referred to as a processor. The processor may include one or more of the following: central processing unit (CPU), digital signal processor (DSP), microprocessor unit (MPU), microcontroller unit (MCU), graphics processing unit (GPU), field programmable gate array (FPGA), artificial intelligence processor (AI processor), or neural processing unit (NPU).
[0175] The aforementioned memory may include one or more of the following storage media: random access memory (RAM), static random access memory (SRAM), dynamic random access memory (DRAM), phase-change memory (PCM), resistive random access memory (RERAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), cache, register, read-only memory (ROM), flash memory, erasable programmable read-only memory (EPROM), hard disk, etc. In one example, computer program instructions for executing the above embodiments may be stored in non-volatile memory, such as at least a portion of the aforementioned memory 660 (e.g., one or more of ROM, flash memory, EPROM, or hard disk). When the terminal is running, the corresponding computer program instructions may be partially or wholly loaded onto a memory with a faster transfer speed than the processor, such as at least a portion of memory 636 and / or memory 6312 (e.g., one or more of RAM, SRAM, DRAM, PCM, RERAM, MRAM, FRAM, cache, or register), for the processor to execute in order to implement the steps in the above method embodiments.
[0176] In one example, the RF transceiver 622 and the RF front-end 621 can also be packaged in a single chip. In another example, the RF transceiver 622, the RF front-end 621, and the baseband processor 631 can also be packaged in a single chip.
[0177] The terms "system" and "network" in this application embodiment are used interchangeably. "At least one" refers to one or more, and "multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, "at least one of A, B, or C" includes A, B, C, AB, AC, BC, or ABC; "at least one of A, B, and C" can also be understood as including A, B, C, AB, AC, BC, or ABC. Furthermore, unless otherwise specified, the ordinal numbers such as "first" and "second" mentioned in this application embodiment are used to distinguish multiple objects and are not used to limit the order, sequence, priority, or importance of multiple objects.
[0178] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, optical storage, etc.) containing computer-usable program code.
[0179] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0180] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0181] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0182] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.
Claims
1. A communication method, characterized in that, The method includes: Generate first information, which is used to indicate the processing priority of the data unit, and the processing priority is used to allocate processing resources for the data unit; the data unit is used for inference tasks and / or training tasks of artificial intelligence (AI). Send the first message.
2. The method according to claim 1, characterized in that, The first information is also used to indicate the number of data units corresponding to the processing priority.
3. The method according to claim 1 or 2, characterized in that, The first information is carried in a data packet, which is used to carry the data unit.
4. The method according to any one of claims 1 to 3, characterized in that, The method further includes: Send a third message, which is used to request the network side to detect the processing priority.
5. The method according to any one of claims 1 to 4, characterized in that, The method further includes: Receive the fourth message; The generation of the first information includes: The first information is generated based on the fourth information.
6. A communication device, characterized in that, include: A processing unit is configured to generate first information, which indicates the processing priority of a data unit and is used to allocate processing resources to the data unit; the data unit is used for inference and / or training tasks of artificial intelligence (AI). A communication unit is used to send the first information.
7. The apparatus according to claim 6, characterized in that, The first information is also used to indicate the number of data units corresponding to the processing priority.
8. The apparatus according to claim 6 or 7, characterized in that, The first information is carried in a data packet, which includes data units for carrying the data.
9. The apparatus according to any one of claims 6 to 8, characterized in that, The communication unit is also used to send third information, which is used to request the network side to detect the processing priority.
10. The apparatus according to any one of claims 6 to 9, characterized in that, The communication unit is also used to receive fourth information; The processing unit generates the first information, specifically: The first information is generated based on the fourth information.
11. A communication device, characterized in that, The device includes one or more processors coupled to one or more memories, the memories being used to store instructions that, when executed by the processors, cause the device to perform the method as described in any one of claims 1 to 5.
12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when invoked, cause the method of any one of claims 1 to 5 to be executed.
13. A computer program product, characterized in that, The computer program product includes computer program code, which, when executed, causes the method as described in any one of claims 1 to 5 to be performed.