Communication method and apparatus

By introducing tagging information into the wireless communication system, multiple subtasks are instructed to be allocated resources as a whole, which solves the problem of task delay caused by improper resource allocation and improves task processing efficiency and reliability.

WO2025246483A1PCT designated stage Publication Date: 2025-12-04HUAWEI TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/078800
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-27
Filing Date
2025-02-24
Publication Date
2025-12-04

AI Technical Summary

Technical Problem

In wireless communication systems, how to better allocate resources among multiple subtasks to optimize task processing efficiency, especially in tasks involving multiple operations or requiring a large amount of computing power and memory, is a challenge that existing technologies have failed to effectively address, as improper resource allocation can prevent tasks from being completed within the time constraints.

Method used

By introducing tagging information into subtasks, multiple subtasks are treated as a whole for resource allocation, optimizing the allocation of computing and transmission resources and ensuring that all subtasks are completed within the same time frame, thereby quickly obtaining the overall computing results of the task.

Benefits of technology

It enables dynamic adjustment of resource allocation based on the completion status of subtasks, improving the efficiency and reliability of task processing and ensuring that tasks are completed within the time constraints.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025078800_04122025_PF_FP_ABST
    Figure CN2025078800_04122025_PF_FP_ABST
Patent Text Reader

Abstract

A communication method and apparatus. The method comprises: after a network-side device receives first data corresponding to a first task, determining a plurality of sub-tasks used for completing the first task; on the basis of the plurality of sub-tasks and the first data, determining a plurality of pieces of sub-data corresponding to the plurality of sub-tasks; and finally, processing the plurality of pieces of sub-data, and sending the processed sub-data. The first data is input data for executing the first task, at least one of the plurality of pieces of sub-data comprises mark information, and the mark information is used for indicating that the plurality of sub-tasks are regarded as a whole for resource allocation, such that the resource allocation of the plurality of sub-tasks is optimized, that is, the resource allocation of the first task is optimized. In this way, the plurality of sub-tasks are regarded as a whole for calculation processing, such that the overall calculation processing result of the plurality of sub-tasks can be quickly obtained.
Need to check novelty before this filing date? Find Prior Art

Description

A communication method and apparatus

[0001] Cross-reference to Related Applications

[0002] This application claims priority to the Chinese Patent Application No. 202410669472.X, filed on May 27, 2024, and entitled "A communication method and apparatus", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD

[0003] The present application relates to the technical field of wireless communication, and in particular to a communication method and apparatus. BACKGROUND

[0004] In some application scenarios of a wireless communication system, a task or tasks can be decomposed into multiple sub-tasks due to involving multiple operations or requiring large resources such as computing power and memory, and the multiple sub-tasks are processed simultaneously by different devices or different modules of the same device in a distributed manner to achieve the purpose of quickly and efficiently generating a computing result.

[0005] However, how to better allocate resources to the multiple sub-tasks needs to be studied. SUMMARY

[0006] Embodiments of the present application provide a communication method and apparatus for indicating that the multiple sub-tasks are regarded as a whole for resource allocation, and optimizing resource allocation to the task.

[0007] In a first aspect, the present application provides a communication method, which can be applied to a network side, such as an application server of the network side, a module (such as a circuit, a chip or a chip system, etc.) in the application server, or a logic node, a logic module or software capable of realizing all or part of the functions of the application server. Taking the application server as an example, in the method, the application server receives first data corresponding to a first task, the first data being input data for executing the first task; then, determines multiple sub-tasks for completing the first task, and determines multiple sub-data corresponding to the multiple sub-tasks according to the multiple sub-tasks and the first data, and finally processes the multiple sub-data and sends the processed sub-data. At least one of the multiple sub-data includes marking information, and the marking information is used to indicate that the multiple sub-tasks are regarded as a whole for resource allocation.

[0008] According to the above method, the application server can split the first task into multiple subtasks, and then indicate, through the marking information, that the multiple subtasks are regarded as a whole for resource allocation, so as to optimize the resource allocation of the multiple subtasks. Alternatively, it can be understood that, through the marking information, the multiple subtasks are regarded as a whole for calculation processing, which helps to quickly obtain the overall calculation processing result of the multiple subtasks, and further optimize the resource allocation of the first task.

[0009] In a possible implementation, the sending the processed sub-data comprises: the application server allocates transmission resources for the first task according to the processing progress of the first task, the processing progress of the first task being determined according to the completion of the multiple subtasks; and the processed sub-data is sent according to the transmission resources allocated for the first task.

[0010] According to the above method, the application server can optimize the transmission resources allocated for the first task according to the processing progress of the first task, which helps to quickly transmit the processed sub-data.

[0011] In a second aspect, the application provides a communication method, which can be applied to a network side, such as an application server on the network side, a module (such as a circuit, a chip or a chip system, etc.) in the application server, or a logic node, a logic module or software capable of realizing all or part of the functions of the application server. Taking the application server as an example, the application server receives first data corresponding to a first task, the first data being input data for executing the first task; then, multiple subtasks for completing the first task are determined, and multiple sub-data corresponding to the multiple subtasks are determined according to the multiple subtasks and the first data; finally, the multiple sub-data are sent. At least one of the multiple sub-data includes marking information, and the marking information is used to indicate that the multiple subtasks are regarded as a whole for resource allocation.

[0012] According to the above method, the application server can split the first task into multiple subtasks, and then indicate, through the marking information, that the multiple subtasks are regarded as a whole for resource allocation, so as to optimize the resource allocation of the multiple subtasks. Alternatively, it can be understood that, through the marking information, the multiple subtasks are regarded as a whole for calculation processing, which helps to quickly obtain the overall calculation processing result of the multiple subtasks.

[0013] Based on the first aspect or the second aspect, the application includes the following possible implementation manners:

[0014] In a possible implementation, the marking information is used to indicate that the multiple subtasks are regarded as a whole for resource allocation, which comprises: the marking information is used to indicate that the multiple subtasks are regarded as a whole for calculation resource allocation and / or transmission resource allocation.

[0015] In the above manner, the plurality of sub-tasks are regarded as a whole for computing resource allocation indicated by the marking information, and the computing resource allocation for the plurality of sub-tasks is optimized; and / or the plurality of sub-tasks are regarded as a whole for transmission resource allocation indicated by the marking information, and the transmission resource allocation for the plurality of sub-tasks is optimized, which helps to quickly obtain the overall computing processing result of the plurality of sub-tasks.

[0016] In a possible implementation, the marking information includes one or more of the following: identification information of the first task; or importance information of the first task; or quantity information of the plurality of sub-tasks; or execution sequence information of a sub-task corresponding to the marking information in the plurality of sub-tasks.

[0017] In a possible implementation, the plurality of sub-data includes first sub-data, and the first sub-data includes first marking information; the first sub-data is a transmission control protocol (TCP) data packet, and the first marking information is set in a packet header of the TCP data packet; or the first sub-data is a user datagram protocol (UDP) data packet, and the first marking information is set in a packet header of the UDP data packet; or the first sub-data is a real-time transport protocol (RTP) data packet, and the first marking information is set in a packet header of the RTP data packet.

[0018] In a third aspect, the present application provides a communication method, which can be applied to a network side, such as an access network device on the network side, a module (such as a circuit, a chip or a chip system, etc.) in the access network device, or a logic node, a logic module or software capable of realizing all or part of the functions of the access network device. For example, a core network device on the network side, a module (such as a circuit, a chip or a chip system, etc.) in the core network device, or a logic node, a logic module or software capable of realizing all or part of the functions of the core network device. In the method, a first sub-data is received, and the first sub-data includes first marking information; then, the completion of a plurality of sub-tasks included in a first task is obtained according to the first marking information, and the calculation resources are allocated to the first task according to the processing progress of the first task; wherein the plurality of sub-tasks include a first sub-task, the first sub-data is the sub-data corresponding to the first sub-task, the sub-data corresponding to each sub-task in the plurality of sub-tasks includes marking information, the marking information is used to indicate that the plurality of sub-tasks are regarded as a whole for resource allocation, and the processing progress of the first task is determined according to the completion of the plurality of sub-tasks; further, the first sub-data is processed according to the calculation resources allocated to the first task to obtain a first processing result, and the first processing result is sent.

[0019] By using the above method, when the core network device or the access network device receives the first sub-data corresponding to the first sub-task belonging to the first task, the plurality of sub-tasks belonging to the first task can be determined according to the first marking information of the first sub-data. According to the indication of the marking information, the plurality of sub-tasks are regarded as a whole for resource allocation, that is, the processing progress of the first task is determined according to the completion of the plurality of sub-tasks, and then the calculation resources are allocated to the first task according to the processing progress of the first task, so as to optimize the allocation of calculation resources to the plurality of sub-tasks, which is helpful to quickly obtain the overall calculation processing result of the plurality of sub-tasks.

[0020] In a possible implementation manner, the sending of the first processing result comprises: allocating transmission resources to the first task according to the processing progress of the first task; and then sending the first processing result according to the transmission resources allocated to the first task.

[0021] By using the above method, the core network device or the access network device can optimize the allocation of transmission resources to the first task according to the processing progress of the first task, which is helpful to quickly transmit the first processing result.

[0022] In a possible implementation manner, the marking information includes one or more of the following: identification information of the first task; or importance information of the first task; or quantity information of the plurality of sub-tasks; or execution order information of the sub-task corresponding to the marking information in the plurality of sub-tasks.

[0023] In a fourth aspect, the present application provides a communication apparatus, which has the functions of the first aspect. For example, the communication apparatus includes modules or units or means corresponding to the operations of the first aspect, which can be implemented by software or by hardware, or by a combination of software and hardware.

[0024] In a fifth aspect, the present application provides a communication apparatus, which has the functions of the second aspect. For example, the communication apparatus includes modules or units or means corresponding to the operations of the second aspect, which can be implemented by software or by hardware, or by a combination of software and hardware.

[0025] In a sixth aspect, the present application provides a communication apparatus, which has the functions of the third aspect. For example, the communication apparatus includes modules or units or means corresponding to the operations of the second aspect, which can be implemented by software or by hardware, or by a combination of software and hardware.

[0026] In a seventh aspect, the present application provides a communication apparatus, which includes an interface circuit and one or more processors. The one or more processors are coupled to a memory. The memory is used to store part or all of the computer programs or instructions necessary for implementing the functions related to the first aspect to the third aspect. The one or more processors can execute the computer programs or instructions, which, when executed, cause the communication apparatus to implement the method in any possible design or implementation manner of the first aspect to the third aspect. The interface circuit is used to implement the communication function within the communication apparatus and / or the communication function of the communication apparatus with other devices or components.

[0027] The communication apparatus can be an access network device, a module (for example, a circuit, a chip or a chip system, etc.) in the access network device, or a logic node, a logic module or software capable of realizing all or part of the functions of the access network device. The access network device, the module (for example, a circuit, a chip or a chip system, etc.) in the access network device, or a logic node, a logic module or software capable of realizing all or part of the functions of the access network device. Or the communication apparatus can also be a core network device, a module (for example, a circuit, a chip or a chip system, etc.) in the core network device, or a logic node, a logic module or software capable of realizing all or part of the functions of the core network device. Or the communication apparatus can also be an application server, a module (for example, a circuit, a chip or a chip system, etc.) in the application server, or a logic node, a logic module or software capable of realizing all or part of the functions of the application server.

[0028] In an eighth aspect, the present application provides a communication system, comprising a communication device for performing the method in any possible design of the first aspect, a communication device for performing the method in any possible design of the second aspect, and a communication device for performing the method in any possible design of the third aspect.

[0029] In a ninth aspect, the present application provides a computer readable storage medium, which stores computer readable instructions, when a computer reads and executes the computer readable instructions, the computer executes the method in any possible design of the first aspect to the third aspect.

[0030] In a tenth aspect, the present application provides a computer program product, when a computer reads and executes the computer program product, the computer executes the method in any possible design of the first aspect to the third aspect.

[0031] The technical effects achieved in any of the fourth aspect to the tenth aspect can be described with reference to the technical effects achieved in the first aspect, the second aspect and / or the third aspect, and the repeated parts will not be discussed. BRIEF DESCRIPTION OF DRAWINGS

[0032] FIG. 1 is a possible, non-limiting system schematic diagram;

[0033] FIG. 2 is a possible application framework schematic diagram in a communication system;

[0034] FIG. 3 is another possible application framework schematic diagram in a communication system;

[0035] FIG. 4A is a schematic diagram of an application scenario provided by the present application;

[0036] FIG. 4B is a schematic diagram of an application scenario provided by the present application;

[0037] FIG. 4C is a schematic diagram of an application scenario provided by the present application;

[0038] FIG. 5 is a flow schematic diagram of a communication method provided by the present application;

[0039] FIG. 6 is a flow schematic diagram of another communication method provided by the present application;

[0040] FIG. 7 is a structure schematic diagram of a communication device provided by an embodiment of the present application;

[0041] FIG. 8 is a structure schematic diagram of another communication device provided by an embodiment of the present application. DETAILED DESCRIPTION

[0042] Figure 1 is a possible, non-limiting system schematic diagram. As shown in Figure 1, the communication system 10 includes a radio access network (RAN) 100 and a core network (CN) 200. Optionally, the communication system also includes an Internet 300. RAN 100 includes at least one RAN node (110a and 110b in Figure 1, collectively referred to as 110) and at least one terminal (120a-120j in Figure 1, collectively referred to as 120). RAN 100 may also include other RAN nodes, such as wireless relay devices and / or wireless backhaul devices (not shown in Figure 1). Terminal 120 is wirelessly connected to RAN node 110. RAN node 110 is wirelessly or wired connected to core network 200. 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.

[0043] RAN 100 can be a cellular system related to the 3rd Generation Partnership Project (3GPP), such as a 4th generation (4G), 5th generation (5G) mobile communication system, or a future-oriented evolution system. RAN 100 can also be an open RAN (O-RAN or ORAN), a cloud radio access network (CRAN), or a wireless fidelity (WiFi) system. RAN 100 can also be a communication system that integrates two or more of the above systems.

[0044] RAN node 110, sometimes also referred to as access network equipment, RAN entity, or access node, constitutes part of the communication system and is used to help terminals achieve wireless access. Multiple RAN nodes 110 in communication system 10 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, network element 120i in Figure 1 can be a helicopter or drone, which can be configured as a mobile base station. For terminals 120j accessing RAN 100 through network element 120i, network element 120i is a base station; but for base station 110a, network element 120i is a terminal. RAN node 110 and terminal 120 are sometimes both referred to as communication devices. For example, network elements 110a and 110b in Figure 1 can be understood as communication devices with base station functions, and network elements 120a-120j can be understood as communication devices with terminal functions.

[0045] In one possible scenario, the 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. The RAN node can be a macro base station (as shown in Figure 1, 110a), a micro base station or indoor station (as shown in Figure 1, 110b), a relay node or donor node, or a radio 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, as well as 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's functions.

[0046] In another possible scenario, multiple RAN nodes collaborate to assist the terminal in achieving wireless access, with each RAN node performing a portion of the base station's functions. For example, RAN nodes can be central units (CUs), distributed units (DUs), CU-control plane (CPs), CU-user plane (UPs), or radio units (RUs), etc. CUs and DUs can be separate entities or included in the same network element, such as a baseband unit (BBU). RUs can be included in radio frequency equipment or radio frequency units, such as remote radio units (RRUs), active antenna units (AAUs), or remote radio heads (RRHs).

[0047] 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.

[0048] 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.

[0049] To support artificial intelligence (AI) technology in wireless networks, AI nodes may be introduced. AI nodes can be deployed in one or more of the following locations within the communication system: access network nodes (RAN nodes), terminals, or core network equipment. Alternatively, AI nodes can be deployed independently, for example, in locations other than those mentioned above, such as in the host of an over-the-top (OTT) system or a cloud server. AI nodes can communicate with other devices in the communication system, which may be one or more of the following: access network nodes, terminals, or core network elements.

[0050] 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.

[0051] 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.

[0052] AI nodes can be AI network elements or AI modules.

[0053] Figure 2 illustrates a possible application framework in a communication system. As shown in Figure 2, network elements in the 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 (RAN nodes), terminals, or one or more devices in operations administration and maintenance (OAM), are equipped with one or more AI modules (only one is shown in Figure 2 for clarity). An access network node can be a single RAN node or can include multiple RAN nodes, for example, including CU and DU. The CU and / or DU can also be equipped with one or more AI modules. A CU can also be split into CU-CP and CU-UP, with one or more AI modules configured in the CU-CP and / or CU-UP.

[0054] 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.

[0055] In one example, the neural network mentioned above can be a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), or a generative adversarial network (GAN).

[0056] 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.

[0057] 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.

[0058] 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.

[0059] 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.

[0060] 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.

[0061] Figure 3 illustrates another possible application framework in a communication system. As shown in Figure 3, the communication system includes a RAN intelligent controller (RIC). For example, the RIC can be the AI ​​module shown in Figure 2, used to implement AI-related functions. RICs include near-real-time RICs (near-RT RICs) and non-real-time RICs (non-RT RICs). Near-real-time RICs primarily process near-real-time information, such as data that is relatively sensitive to latency, with latency in the tens of milliseconds range. Non-real-time RICs primarily process non-real-time information, such as data that is not sensitive to latency, with latency in the seconds range.

[0062] 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.

[0063] 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.

[0064] 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.

[0065] With the continuous development of wireless communication systems, these systems are gradually being integrated into services that require high real-time performance and large data volumes, such as Artificial Intelligence (AI), cloud gaming (CG), and extended reality (XR). XR refers to a computer-generated environment that combines real and virtual elements, allowing for human-computer interaction. It is a collective term for various forms including augmented reality (AR), virtual reality (VR), and mixed reality (MR).

[0066] In some wireless communication system applications, tasks may involve multiple operations or require significant computing power and memory. Therefore, these tasks need to be decomposed into multiple subtasks and processed simultaneously by different devices or different modules of the same device in a distributed manner to achieve rapid and efficient generation of computational results. Taking XR services as an example, a task in an XR service is decomposed into multiple subtasks, and computing resources (such as multiple identical or different computing nodes) are allocated to these subtasks for processing. This results in the task being considered complete only when the last subtask is finished. Therefore, if the computing resources allocated to these subtasks are inappropriate, the task may not be completed within the time constraint, affecting processing efficiency. To address this, this application provides a communication method to optimize task resource allocation.

[0067] The communication method and communication device will be further described below with reference to the accompanying drawings. It is understood that this application uses a first device and a second device as examples to illustrate the execution of the interaction, but this application does not limit the execution subject of the interaction. For example, the method executed by the first device in this application can also be implemented by a module (e.g., a circuit, chip, or chip system) in the first device, or a logic node, logic module, or software that can implement all or part of the functions of the first device. Similarly, the method executed by the second device in this application can also be implemented by a module (e.g., a circuit, chip, or chip system) in the second device, or a logic node, logic module, or software that can implement all or part of the functions of the second device. Specifically, depending on the application scenario, the first device can be an application server, core network equipment, or access network equipment, etc.; the second device can be a core network equipment, access network equipment, etc. Examples include the following application scenarios:

[0068] In application scenario a, as shown in Figure 4A, the terminal sends information (i.e., initiates a task, which includes, but is not limited to, the data required to execute the task, as well as other data; for ease of description, this application uses "task" to refer to it only). The access network device (such as a base station) receives the task and uploads it to the core network device (such as a User Plane Function (UPF) network element device). The core network device then uploads the task to the application server. After receiving the task, the application server determines multiple sub-tasks to complete it and distributes these sub-tasks to the core network device and the access network device for processing. Finally, the access network device sends the processing result (such as the execution instruction to complete the task) to the terminal. In this application scenario, the first device is the application server, and the second device is the core network device.

[0069] In application scenario b, as shown in Figure 4B, the terminal initiates a task. The access network device receives the task and uploads it to the core network device (i.e., the core network device serves the terminal). The core network device then determines multiple sub-tasks to complete the task and distributes these sub-tasks to the access network device or other core network devices for processing. Finally, the core network device sends the processing result back to the terminal. In this application scenario, the first device is the core network device, and the second device is the access network device or other core network device.

[0070] In application scenario c, as shown in Figure 4C, the terminal initiates a task. The access network device (i.e., the access network device serving the terminal) receives the task, then determines multiple sub-tasks to complete it, and distributes these sub-tasks to other access network devices for processing. Finally, the access network device sends the processing results back to the terminal. In this application scenario, the first device is the access network device, and the second device is one of the other access network devices.

[0071] In this application, "sending information" can be understood as one device sending information to another device, or it can also be understood as one logic module within a device sending information to another logic module. For example, "the first device sending information" can be understood as the first device sending information to the second device, or it can be understood as logic module 1 in the first device sending information to logic module 2 in the first device. Similarly, "receiving information" in this application can be understood as one device receiving information from another device, or it can also be understood as one logic module within a device receiving information from another logic module. For example, "the first device receiving information" can be understood as the first device receiving information from the second device, or it can be understood as logic module 1 in the first device receiving information from logic module 2 in the first device.

[0072] In this application, phrases such as "sending information to... (e.g., a second device)" or related illustrations in the accompanying drawings can be understood as the destination of the information being the second device. Optionally, this includes sending information directly or indirectly to the second device. Similarly, phrases such as "receiving information from... (e.g., a second device)," "receiving information from... (e.g., a second device)," or "receiving information sent by... (e.g., a second device)," or related illustrations in the accompanying drawings, can be understood as the source of the information being the second device. Optionally, this includes receiving information directly or indirectly from the second device. 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.

[0073] Based on the above application scenarios, Figure 5 is a flowchart illustrating a communication method provided in this application. The method includes the following steps:

[0074] Step 501: The first device receives the first data corresponding to the first task, whereby the first data is the input data for executing the first task.

[0075] In this step, the first task can be understood as the task to be executed, and the first data can be understood as the data needed to complete the first task (such as data describing the first task). Referring to the above application scenario as an example, the first task can be initiated by the terminal, and then the terminal uploads the first data corresponding to the first task to the access network device, and then the access network device uploads the first data corresponding to the first task to the second device (i.e., the core network device), and then the second device uploads the first data corresponding to the first task to the first device (i.e., the application server).

[0076] In one possible implementation, the first data may include task description information and information such as voice, text, images, video, and point clouds required to perform the first task. Based on this, the first task may include the following scenarios:

[0077] Scenario 1: The first task can be an application-layer task. For example, the robot receives a user's voice message (such as "get water from the refrigerator"), and then the robot initiates the first task (such as the "get water from the refrigerator" task). The first data corresponding to this first task includes the robot's current visual image, an image of the refrigerator's location, and the text information corresponding to the voice message.

[0078] Scenario 2: The first task can be a large AI model task. For example, the first task is a federated learning task, and the first data corresponding to the first task includes model description information as well as the initial gradient values, weights, learning rate, etc. of the pre-trained model.

[0079] Scenario 3: The first task can be a distributed computing task. For example, the first task is to aggregate data from multiple servers, and the first data corresponding to the first task includes task description information and the address information of the multiple servers, etc.

[0080] Scenario 4: The first task can be a parallel computing task. For example, the first task is a task where multiple threads process the results. The first data corresponding to the first task includes task description information and identification information corresponding to the multiple threads, etc.

[0081] Step 502: The first device determines multiple sub-tasks to complete the first task.

[0082] In this step, the multiple sub-tasks of the first task are determined by the first device based on some or all of the data in the first data (such as task description information). Based on scenarios 1-4 in step 501 above, determining multiple sub-tasks may include the following:

[0083] Scenario 1: The first device can determine multiple subtasks of the first task based on "get water from the refrigerator," including: subtask a, moving from the current location to the refrigerator; subtask b, opening the refrigerator door; subtask c, getting water; subtask d, closing the refrigerator door; and subtask e, moving from the refrigerator to the user. It is understood that the first device can also determine other subtasks, such as voice understanding subtasks, visual analysis subtasks, and motion planning subtasks. This application does not limit the method of determining subtasks.

[0084] Scenario 2: The first device can determine multiple sub-tasks based on the pre-trained model architecture (such as hidden layers, convolutional layers, etc.). For example, three hidden layers can be considered as one sub-task. Alternatively, it can be understood that the first task is the large AI model, and the sub-tasks are the sub-models that make up the large AI model. Each sub-model corresponds to a function, such as speech processing or visual processing.

[0085] Scenario 3: The first device treats the first task as a large task, then breaks it down into multiple smaller tasks. These smaller tasks need to be processed separately by different computing nodes or computing devices. Finally, the processing results of these smaller tasks are summarized to obtain the overall processing result of the large task.

[0086] Scenario 4: The first device treats the first task as a large task, and then breaks it down into multiple smaller tasks. These smaller tasks need to be processed separately by different threads, which can be run in parallel by multiple CPU / GPU cores.

[0087] In one possible implementation, the multiple sub-tasks of the first task may be determined by the first device based on some or all of the data in the first data, as well as the calculation model and calculation strategy, etc. This application does not make specific limitations in this regard.

[0088] Step 503: Based on the multiple subtasks and the first data, determine multiple sub-data corresponding to the multiple subtasks, wherein at least one of the multiple sub-data includes tagging information, which is used to indicate that the multiple subtasks are treated as a whole for resource allocation.

[0089] In this step, after the first device identifies multiple sub-tasks, it determines the corresponding sub-data for each sub-task based on the first data. Taking scenario 1 above as an example, a sub-task may include the following sub-data:

[0090] The sub-data of subtask a includes: the image frame from the current position to the refrigerator, and the instruction information corresponding to subtask a (such as 01***001, indicating that subtask a needs to complete the action of moving to the refrigerator).

[0091] The sub-data of subtask b includes: refrigerator image frames, and instruction information corresponding to subtask b (such as 00***001, indicating that subtask b needs to complete the action of opening the refrigerator door).

[0092] The sub-data of subtask c includes: the instruction information corresponding to subtask c (such as 10***100, which means that subtask c needs to complete the action of taking water from the refrigerator).

[0093] The sub-data of subtask d includes: refrigerator image frames, and instruction information corresponding to subtask d (such as 10***101, indicating that subtask d needs to complete the action of closing the refrigerator door).

[0094] The sub-data of subtask e includes: the image frame from the location of the refrigerator to the user, and the instruction information corresponding to subtask e (such as 01***011, indicating that subtask e needs to complete the action of moving to the user).

[0095] After the first device identifies multiple sub-data items, it sets tag information for at least one of these sub-data items. It can be understood that each of the multiple sub-data items can be tagged. This tag information is used to indicate that the multiple sub-tasks are treated as a whole for resource allocation.

[0096] In one possible implementation, the marking information is used to indicate that multiple subtasks are treated as a whole when allocating computing resources. That is, the multiple subtasks are treated as a single entity for computing resource allocation, rather than allocating computing resources only to a subset of the subtasks, i.e., allocating computing resources only to the first task. Therefore, with the allocated computing resources, the multiple subtasks can be processed simultaneously or within the same timeframe, thereby quickly obtaining the processing results of each subtask.

[0097] In one possible implementation, after the first device determines multiple sub-data, it sends the multiple sub-data to the second device, which then processes multiple sub-tasks based on the multiple sub-data.

[0098] In one possible implementation, the marking information includes one or more of the following: identification information of the first task; or importance information of the first task; or quantity information of multiple subtasks; or execution order information of the subtask corresponding to the marking information among multiple subtasks. Specifically, the identification information of the first task is used to uniquely identify the first task; the importance information of the first task is used to indicate the degree of importance of the first task (or can be understood as processing priority) so that the first device can allocate resources for the first task; and the execution order information of the subtask corresponding to the marking information among multiple subtasks is used to indicate the execution order of the subtask when completing the first task.

[0099] Optionally, the tagging information may also include information indicating the last subtask among multiple subtasks, specifically the last subtask executed. Optionally, the tagging information may also include subtask identification information to uniquely identify each subtask.

[0100] In one possible implementation, the marking information is set in the header or payload of a data packet. Taking one of multiple sub-data packets (hereinafter referred to as the first sub-data packet for ease of description) as an example, the first sub-data packet includes the first marking information. Optionally, the first sub-data packet can be a Transmission Control Protocol (TCP) packet, for which the first marking information is set in the header of the TCP packet. Optionally, the first sub-data packet can be a User Datagram Protocol (UDP) packet, for which the first marking information is set in the header of the UDP packet. Optionally, the first sub-data packet can be a Real-Time Transport Protocol (RTP) packet, for which the first marking information is set in the header of the RTP packet. Optionally, the first sub-data packet can be a newly added protocol (applied to a new protocol layer, or can be understood as a newly defined protocol applied to a newly defined layer), for which the first marking information is set in the header of the newly added protocol packet. It is understood that the first sub-data may also be other data packets related to the above-mentioned protocols, such as the Secure Real-time Transport Protocol (STRP), which is not limited in this application.

[0101] Step 504: The first device processes multiple sub-data.

[0102] In one possible implementation, the first device processes all of the multiple sub-data sets to obtain multiple processed sub-data sets corresponding to the multiple sub-data sets; alternatively, the first device processes a portion of the multiple sub-data sets to obtain processed sub-data sets corresponding to that portion of the sub-data sets. It should be noted that "processing" here refers to preprocessing (such as data cleaning) or preliminary processing (such as feature extraction) of the sub-data sets, rather than final processing. This application does not specifically limit the specific processing method. It is understood that the processed sub-data sets include labeling information.

[0103] Step 505: The first device sends the processed sub-data to the second device.

[0104] Based on step 504 above, the first device can send multiple processed sub-data corresponding to multiple sub-data, or send processed sub-data corresponding to the processed part of sub-data and another part of unprocessed sub-data.

[0105] In one possible implementation, the marking information is used to indicate that multiple subtasks are treated as a whole for transmission resource allocation. That is, the multiple subtasks are treated as a single entity for transmission resource allocation, rather than allocating transmission resources only for a portion of the subtasks; specifically, transmission resources are allocated only for the first task. Therefore, through the allocated transmission resources, the multiple processed sub-data corresponding to the multiple subtasks can be transmitted simultaneously or within a short timeframe, avoiding situations where multiple subtasks of the first task are transmitted with long intervals.

[0106] Taking the sending of multiple processed sub-data corresponding to multiple sub-data as an example, the first device determines the processing progress of the first task based on the completion status of multiple sub-tasks. It should be noted that the completion status of the sub-task here refers to the processing completion status of the sub-data corresponding to the sub-task (or the intermediate processing completion status of the sub-task in the first device), not the final processing completion status of the sub-task.

[0107] For example, if there are five sub-data items, three of which have been processed and the other two have not, then the processing progress of the first task can be said to be 60%. After determining the processing progress of the first task, the first device allocates transmission resources for the first task.

[0108] Optionally, the first device can determine whether the processing progress of the first task is greater than a first threshold, thereby allocating relatively large or small transmission resources to the first task.

[0109] Optionally, the first device can allocate relatively large or small transmission resources to the first task by comparing its processing progress with that of other tasks. For example, if the processing progress of other tasks is much slower than that of the first task, the first device can allocate larger transmission resources to the first task (or prioritize resource allocation). Finally, the first device sends the processed sub-data according to the transmission resources allocated to the first task.

[0110] Optionally, the first device can allocate transmission resources to the first task based on the remaining delay of the first task. For example, the delay from when the terminal initiates the first task to when it receives the final processing result of the first task is t1 (this delay can be set according to the type of the first task, which is not specifically limited here). If the remaining delay t1 is smaller, the transmission resources allocated to the first task can be larger. In other words, the first device can allocate transmission resources to the first task based on the processing time of the first task. For example, the longer the processing time of the first task, the larger the transmission resources allocated to the first task can be.

[0111] In the method shown in Figure 5, multiple devices collaborate to complete the processing of multiple sub-tasks. For example, the core network device performs preliminary processing on multiple sub-tasks to obtain intermediate processing results. Then, the access network device further calculates the overall processing result of the multiple sub-tasks based on the intermediate processing results, and sends the overall processing result of the multiple sub-tasks to the terminal. Through this method, the first device can break down the first task into multiple sub-tasks, and then use marking information to indicate that these multiple sub-tasks are treated as a whole for computational resource allocation, thus optimizing the computational resource allocation for the multiple sub-tasks, i.e., optimizing the computational resource allocation for the first task. Furthermore, the marking information also indicates that these multiple sub-tasks are treated as a whole for transmission resource allocation, thus optimizing the transmission resource allocation for the multiple sub-tasks, i.e., optimizing the transmission resource allocation for the first task.

[0112] In one possible implementation, the first device can also be an application server deployed on a core network device or an access network device. Optionally, the above method can also be implemented by an application deployed on a core network device or an access network device.

[0113] In one possible implementation, a subtask can also be called a subcomputation (e.g., a subcomputation in a network layer). Similarly, the first task can also be called the first computation.

[0114] Figure 6 is a flowchart illustrating a communication method provided in this application. The method includes the following steps:

[0115] Step 601: The second device receives the first sub-data, which includes the first tag information.

[0116] In this step, the first sub-data is the sub-data corresponding to the first subtask. The first subtask is one of multiple subtasks used to complete the first task. Referring to step 505 above, the first sub-data can be sub-data processed by the first device or sub-data not processed by the first device.

[0117] The first tagging information is the tagging information included in the first sub-data. Referring to step 503 above, the tagging information will not be described in detail here.

[0118] Step 602: Obtain the completion status of multiple subtasks included in the first task based on the first tag information. Each subtask in the multiple subtasks includes tag information in its corresponding sub-data. The tag information is used to indicate that the multiple subtasks are treated as a whole for resource allocation.

[0119] In this step, the completion status of a subtask can be understood as the processing status of the sub-data corresponding to that subtask. For example, the second device can determine the first task to which the first sub-data belongs, as well as the subtask information belonging to that first task (such as the number of multiple subtasks, the tagging information of multiple subtasks, etc.) based on the first tagging information. Then, it can query the number of subtasks that have been processed among the multiple subtasks, and determine through the tagging information of these subtasks that multiple subtasks need to be treated as a whole for resource allocation.

[0120] Step 603: The second device allocates computing resources to the first task according to the processing progress of the first task. The processing progress of the first task is determined based on the completion status of multiple sub-tasks.

[0121] In one possible implementation, the second device can determine the processing priority of the first task based on its processing progress and that of other tasks, and then allocate computing resources to the first task according to its processing priority. For example, the second device receives the first sub-data of the first task and sub-data of another task (hereinafter referred to as the second task for ease of description), determines that the first task has only the first sub-data left to be processed, and the sub-data of the second task is the first sub-data, that is, the processing progress of the first task is greater than that of the second task (or the processing priority of the first task is greater than that of the second task), and thus the second device allocates more computing resources to the first task.

[0122] In one possible implementation, the second device can also allocate computing resources to the first task based on the remaining processing time of the first task. For example, if the unprocessed subtasks among the multiple subtasks corresponding to the first task have shorter processing times, the second device can allocate more computing resources to the first task (or prioritize resource allocation).

[0123] In one possible implementation, the first device can allocate computing resources to the first task based on the remaining latency of the first task. For example, if the latency from when the terminal initiates the first task to when it receives the final processing result of the first task is t1, the smaller the remaining latency of t1, the larger the computing resources can be allocated to the first task. In other words, the first device can allocate computing resources to the first task based on the processing time of the first task. For example, the longer the processing time of the first task, the larger the computing resources can be allocated to the first task.

[0124] In one possible implementation, the second device may also allocate computing resources to the first task based on other factors (such as end-to-end computing), which is not specifically limited in this application.

[0125] Step 604: The second device processes the first sub-data according to the computing resources allocated to the first task to obtain the first processing result.

[0126] In this step, processing the first sub-data refers to completing the calculation and processing of the first sub-task based on the first sub-data. The specific processing content is not limited in the application. It can be understood that the first processing result can be the intermediate processing result of the first sub-task, rather than the final processing result.

[0127] Step 605: The second device sends the first processing result.

[0128] Optionally, referring to step 504 above, the marking information is used to indicate that multiple subtasks are treated as a whole for transmission resource allocation. That is, the first device can allocate transmission resources to the first task according to the processing progress of the first task, and then send the first processing result according to the transmission resources allocated to the first task.

[0129] In one possible implementation, as shown in Figure 6, the first device can be an application server, and the second device can be a core network device. In this case, in step 605, the second device sends the first processing result to the access network device, and the first processing result includes indication information to instruct the access network device to treat the multiple subtasks as a whole for resource allocation. The specific resource allocation method is described in Figure 6 above and will not be repeated here. Optionally, the first processing result is a GPRS Tunneling Protocol (GTP) data packet, and this indication information is set in the header of the GTP data packet.

[0130] In one possible implementation, as shown in Figure 6, the first device can be a core network device, and the second device can be an access network device. In this case, in step 605, the second device sends the first processing result to the terminal, thereby enabling the terminal to complete the first task based on the first processing result.

[0131] Using the above method, the second device can use the marking information to indicate that the multiple subtasks are treated as a whole for computing resource allocation, thereby optimizing the computing resource allocation of the first task. It can also use the marking information to indicate that the multiple subtasks are treated as a whole for transmission resource allocation, thereby optimizing the transmission resource allocation of the first task.

[0132] To better illustrate the above technical solution, an example is given below with reference to Figure 4A, including the following steps:

[0133] S1: The terminal uploads the first data corresponding to the first task to the access network device.

[0134] S2: The access network device uploads the first data corresponding to the first task.

[0135] S3: The core network device uploads the first data corresponding to the first task.

[0136] Referring to step 501 above, the first task and the first data will not be described in detail here.

[0137] When the application server receives the first data corresponding to the first task, it executes the above steps 502-503 to obtain multiple sub-data corresponding to multiple sub-tasks used to complete the first task. Each of the multiple sub-data is set with tag information, which is used to indicate that the multiple sub-tasks are treated as a whole for resource allocation.

[0138] S4: The application server sends out multiple sub-data corresponding to multiple sub-tasks, and each sub-data includes tagging information.

[0139] When the core network device receives one of the multiple sub-data items, it executes steps 602-605 above to obtain the first processing result of the sub-data item. It should be noted that the first processing result at this time is the intermediate processing result of the subtask corresponding to the sub-data item.

[0140] S5: The core network device issues the intermediate processing results of the subtasks, which include tagging information. It is understood that the content of this tagging information may differ depending on the transmission protocol, but it is still used to indicate that the multiple subtasks should be treated as a whole for resource allocation.

[0141] When the access network device receives the intermediate processing result of a subtask, it uses this intermediate processing result as the sub-data of the subtask. That is, the access network device also executes steps 602-605 as described above to obtain the first processing result of the intermediate processing result. It should be noted that the first processing result at this time is the final processing result of the subtask corresponding to the sub-data.

[0142] S6: The first processing result of the subtask issued by the access network device.

[0143] Using this method, the terminal can complete the first task based on the first processing results of multiple subtasks.

[0144] Figure 7 is a possible exemplary block diagram of the communication device involved in the embodiments of this application. As shown in Figure 7, the communication device 700 may include modules or units for implementing the method embodiments described above. In one possible design, the communication device 700 includes a processing unit 702 and a communication unit 703. Optionally, the communication device 700 may further include a storage unit 701 for storing device program code and / or data.

[0145] The communication device 700 can be a network-side device in the above embodiments, such as an application server, a module (e.g., a circuit, chip, or chip system) in the application server, or a logical node, logical module, or software that can implement all or part of the application server functions.

[0146] For example, in one embodiment, the communication unit 703 is configured to receive first data corresponding to a first task, the first data being input data for executing the first task; the processing unit 702 is configured to determine multiple sub-tasks for completing the first task; determine multiple sub-data corresponding to the multiple sub-tasks based on the multiple sub-tasks and the first data, at least one of the multiple sub-data including marking information, the marking information being used to indicate that the multiple sub-tasks are treated as a whole for resource allocation; process the multiple sub-data; and the communication unit 703 is further configured to send the processed sub-data.

[0147] In one possible implementation, the tagging information is used to indicate that the plurality of subtasks are treated as a whole for computational resource allocation and / or transmission resource allocation.

[0148] In one possible implementation, the processing unit 702 is further configured to allocate transmission resources to the first task according to the processing progress of the first task, the processing progress of the first task being determined based on the completion status of the plurality of sub-tasks; and to send the processed sub-data according to the transmission resources allocated to the first task.

[0149] In one possible implementation, the marking information includes one or more of the following: identification information of the first task; importance information of the first task; quantity information of the plurality of subtasks; or execution order information of the subtasks corresponding to the marking information among the plurality of subtasks.

[0150] In one possible implementation, the plurality of sub-data includes a first sub-data, which includes first tag information; the first sub-data is a TCP data packet, and the first tag information is set in the header of the TCP data packet; or, the first sub-data is a UDP data packet, and the first tag information is set in the header of the UDP data packet.

[0151] The communication device 700 can be a network-side device as described in the above embodiments. For example, it can be an access network device, a module (e.g., a circuit, chip, or chip system) within the access network device, or a logical node, logical module, or software that can implement all or part of the functions of the access network device; or, it can be a core network device, a module (e.g., a circuit, chip, or chip system) within the core network device, or a logical node, logical module, or software that can implement all or part of the functions of the core network device.

[0152] For example, in one embodiment, the communication unit 703 is configured to receive first sub-data, the first sub-data including first marker information; the processing unit 702 is configured to obtain the completion status of multiple sub-tasks included in the first task according to the first marker information, the multiple sub-tasks including the first sub-task, the first sub-data being the sub-data corresponding to the first sub-task, and the sub-data corresponding to each sub-task including marker information, the marker information being used to indicate that the multiple sub-tasks are treated as a whole for resource allocation; allocate computing resources to the first task according to the processing progress of the first task, the processing progress of the first task being determined based on the completion status of the multiple sub-tasks; process the first sub-data according to the computing resources allocated to the first task to obtain a first processing result; the communication unit 703 is further configured to send the first processing result.

[0153] In one possible implementation, the processing unit 702 is configured to allocate transmission resources to the first task according to the processing progress of the first task; and to send the first processing result through the communication unit 703 according to the transmission resources allocated to the first task.

[0154] In one possible implementation, the marking information includes one or more of the following: identification information of the first task; importance information of the first task; quantity information of the plurality of subtasks; or execution order information of the subtasks corresponding to the marking information among the plurality of subtasks.

[0155] It is understood that the division of units in the above-described device is merely 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 onto a single 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.

[0156] 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.

[0157] In one example, storage unit 701 may include random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory and / or registers, etc.

[0158] As shown in Figure 8, the communication device 800 includes a processor 810 and an interface circuit 820. The processor 810 and the interface circuit 820 are coupled to each other. It is understood that the interface circuit 820 can be a transceiver or an input / output interface. Optionally, the communication device 800 may also include a memory 830 for storing instructions executed by the processor 810, or storing input data required by the processor 810 to execute instructions, or storing data generated after the processor 810 executes instructions.

[0159] When the communication device 800 is used to implement the method shown in FIG5 or FIG6, the processor 810 is used to implement the function of the processing unit 702, and the interface circuit 820 is used to implement the function of the communication unit 703.

[0160] When the aforementioned communication device is a chip applied to a terminal device, the terminal chip implements the functions of the terminal device in the above method embodiments. The terminal chip receives information from other modules (such as an RF module or antenna) in the terminal device, which is information sent to the terminal by the network device; or, the terminal chip sends information to other modules (such as an RF module or antenna) in the terminal device, which is information sent to the network device by the terminal device.

[0161] When the aforementioned communication device is a module applied to a network device, the network device module implements the functions of the network device in the above method embodiments. The network device module receives information from other modules (such as a radio frequency module or antenna) in the network device, which is information sent by the terminal to the network device; or, the network device module sends information to other modules (such as a radio frequency module or antenna) in the network device, which is information sent by the network device to the terminal. Here, the network device module can be the baseband chip of the network device, or a DU (Digital Unit) or other modules. The DU can be a DU under an Open Radio Access Network (O-RAN) architecture.

[0162] It is understood that the processor in the embodiments of this application may be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor may be a microprocessor or any conventional processor.

[0163] This application provides another example of a communication device, which includes at least one processor and at least one memory coupled together. The at least one processor and the at least one memory are used to store instructions. When the instructions are executed by the at least one processor, the communication device performs the method described in the above embodiments. Taking a communication device including a processor and a memory as an example, as shown in FIG8, the communication device 800 includes a processor 810 and a memory 830. The processor 810 and the memory 830 are coupled together. The memory 830 stores instructions. When the instructions stored in the memory 830 are executed by the processor 810, the communication device 800 performs the method performed by the first device or the second device described in the above embodiments.

[0164] The method steps in the embodiments of this application can be implemented in hardware or in software instructions executable by a processor. The software instructions can consist of corresponding software modules, which can be stored in random access memory, flash memory, read-only memory, programmable read-only memory, erasable programmable read-only memory, electrically erasable programmable read-only memory, registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. The storage medium can also be a component of the processor. The processor and storage medium can reside in an ASIC. Alternatively, the ASIC can reside in a network device or terminal. The processor and storage medium can also exist as discrete components in a network device or terminal.

[0165] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are performed entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a network device, a user equipment, or other programmable device. The computer program or instructions can be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another. For example, the computer program or instructions can be transferred from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a digital video optical disc; or it can be a semiconductor medium, such as a solid-state drive. The computer-readable storage medium may be a volatile or non-volatile storage medium, or may include both types of storage media.

[0166] In the various embodiments of this application, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions of different embodiments are consistent and can be referenced by each other. The technical features of different embodiments can be combined to form new embodiments according to their inherent logical relationship.

[0167] In this application, "at least one" means one or more, and "more than one" means 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. In the textual description of this application, the character " / " generally indicates an "or" relationship between the preceding and following related objects; in the formulas of this application, the character " / " indicates a "division" relationship between the preceding and following related objects. "Including at least one of A, B, and C" can mean: including A; including B; including C; including A and B; including A and C; including B and C; including A, B, and C.

[0168] It is understood that the various numerical designations used in the embodiments of this application are merely for descriptive convenience and are not intended to limit the scope of the embodiments of this application. The order of the process numbers described above does not imply the order of execution; the execution order of each process should be determined by its function and internal logic.

Claims

1. A communication method, characterized in that, include: Receive the first data corresponding to the first task, where the first data is the input data for executing the first task; Identify multiple subtasks for completing the first task; Based on the plurality of subtasks and the first data, a plurality of sub-data corresponding to the plurality of subtasks are determined. At least one of the plurality of sub-data includes tagging information, which is used to indicate that the plurality of subtasks are treated as a whole for resource allocation. The multiple sub-data are processed, and the processed sub-data is sent.

2. The method according to claim 1, characterized in that, The marking information is used to indicate that the multiple subtasks are treated as a whole for resource allocation, including: The tagging information is used to indicate that the multiple subtasks are treated as a whole for computational resource allocation and / or transmission resource allocation.

3. The method as described in claim 1 or 2, characterized in that, The processed sub-data includes: Transmission resources are allocated to the first task based on its processing progress, and the processing progress of the first task is determined based on the completion status of the plurality of sub-tasks. The processed sub-data is sent according to the transmission resources allocated for the first task.

4. The method according to any one of claims 1-3, characterized in that, The tagging information includes one or more of the following: The identification information of the first task; or Importance information of the first task; or The quantity information of the multiple subtasks; or The execution order information of the subtasks corresponding to the marker information among the multiple subtasks.

5. The method according to any one of claims 1-4, characterized in that, The plurality of sub-data includes a first sub-data, and the first sub-data includes first tag information; The first sub-data is a TCP data packet, and the first tagging information is set in the header of the TCP data packet; or, The first sub-data is a UDP data packet, and the first tag information is set in the header of the UDP data packet; or, The first sub-data is an RTP data packet, and the first tag information is set in the header of the RTP data packet.

6. A communication method, characterized in that, include: Receive first sub-data, which includes first tag information; The completion status of multiple sub-tasks included in the first task is obtained according to the first marking information. The multiple sub-tasks include the first sub-task. The first sub-data is the sub-data corresponding to the first sub-task. The sub-data corresponding to each sub-task in the multiple sub-tasks includes marking information. The marking information is used to indicate that the multiple sub-tasks are treated as a whole for resource allocation. Computing resources are allocated to the first task based on its processing progress, and the processing progress of the first task is determined based on the completion status of the plurality of sub-tasks. Based on the computing resources allocated to the first task, the first sub-data is processed to obtain a first processing result; Send the first processing result.

7. The method as described in claim 6, characterized in that, Sending the first processing result includes: Allocate transmission resources to the first task based on its processing progress; The first processing result is sent according to the transmission resources allocated for the first task.

8. The method as described in claim 6 or 7, characterized in that, The tagging information includes one or more of the following: The identification information of the first task; or Importance information of the first task; or The quantity information of the multiple subtasks; or The execution order information of the subtasks corresponding to the marker information among the multiple subtasks.

9. A communication device, characterized in that, Includes a module for performing the method according to any one of claims 1 to 5.

10. A communication device, characterized in that, Includes a module for performing the method according to any one of claims 6 to 8.

11. A computer program product, characterized in that, The computer program product includes instructions that, when executed, cause the method as claimed in any one of claims 1 to 5 or 6 to 8 to be performed.

12. A computer-readable storage medium, characterized in that, The storage medium stores a computer program or instructions, which, when executed, implement the method described in any one of claims 1 to 5 or claims 6 to 8.

Citation Information

Patent Citations

  • Task allocation method and device and electronic equipment

    CN114970834A

  • Communication method and device

    CN115087037A

  • Task processing method and device

    CN116208975A

  • Method, electronic device, and computer program product for distributed data processing

    US20240028384A1