Communication method, apparatus and system
By obtaining the function code in advance on the calculation node, the problem of long code download time during cold start in function calculation is solved, and the effect of reducing latency and improving efficiency is achieved.
Patent Information
- Application Number
- PCT/CN2024/108160
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-08-31
- Filing Date
- 2024-07-29
- Publication Date
- 2025-03-06
AI Technical Summary
In function calculation, the code download time during cold start process is long, resulting in a longer delay in function calculation, affecting efficiency.
Before receiving the request from the terminal device, the calculation node obtains the code of the function in advance, so as to directly execute subsequent processing after receiving the request, avoiding the code download process.
It significantly reduces the delay of function calculation, improves the efficiency of function calculation, and reduces the signaling transmission process during the session establishment of the terminal device.
Smart Images

Figure CN2024108160_06032025_PF_FP_ABST
Abstract
Description
Communication method, device and system
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on August 31, 2023, with application number 202311129187.0 and application name “A Communication Method, Device and System”, the entire contents of which are incorporated by reference into this application. Technical Field
[0003] The present application relates to the field of communication technology, and in particular to a communication method, device, and system. Background Art
[0004] Function Compute, also known as serverless computing, is an emerging cloud computing programming model. It aims to significantly simplify the cloud business development process, freeing application developers from the tedious tasks of server operations and maintenance. With Function Compute, developers simply upload function code and perform simple resource configuration to quickly build and deploy services. Cloud service providers charge based on the number of function service calls and actual resource usage, helping users achieve rapid business delivery and low-cost operations.
[0005] Function Compute currently supports two types of functions: event functions and Hypertext Transfer Protocol (HTTP) functions. HTTP functions are primarily suitable for scenarios such as quickly building web applications. An HTTP function can be thought of as a web server that processes HTTP requests and returns the results to the caller.
[0006] Since functions are typically released after executing a request, for example, when an HTTP request arrives and no function instance is available, a new function instance must be started from scratch to handle the HTTP request. This is called a cold start. A cold start involves code downloading, launching the function instance container, runtime initialization, and code initialization, all part of the function call chain. (See Figure 1.) Once the cold start is complete and the function instance is ready, HTTP requests can begin to execute. As you can see, the cold start process first requires code downloading, which takes a long time, resulting in longer function computation latency.
[0007] Summary of the Invention
[0008] Embodiments of the present application provide a communication method, device, and system for reducing the latency of function calculations.
[0009] In a first aspect, a first communication method is provided. The method can be executed by a computing node or a chip system capable of implementing the functions of a computing node. The computing node may be, for example, a UPF or a server. The method includes: obtaining code for a first function based on a session establishment request from a terminal device, the session establishment request being used to request establishment of a first session; after obtaining the code for the first function, receiving a first request from the terminal device via the first session for accessing the first function; and executing the code for the first function based on first indication information to process the first request.
[0010] In an embodiment of the present application, the computing node may obtain the code of the first function before receiving the first request from the terminal device, which is equivalent to obtaining the code of the first function before receiving the request for accessing the first function. Therefore, after receiving the first request, there is no need to perform the code download process, such as the process after the code download included in the cold start, thereby greatly reducing the delay of function calculation and improving the efficiency of function calculation.
[0011] In an optional embodiment, the first request includes first indication information, and the first indication information is used to determine the code of the first function. The first indication information may be, for example, an index of the code of the first function or a URL corresponding to the code of the first function. The code of the first function can be determined based on the first indication information.
[0012] In an optional embodiment, obtaining the code of the first function based on the session establishment request of the terminal device includes: receiving second indication information from a first network element, the second indication information being used to determine the code of the first function, the second indication information being received during the establishment process of the first session; sending a second request to a second network element, the second request including the second indication information, the second request being used to request the code of the first function, the second indication information being used by the second network element to determine the code of the first function; and receiving the code of the first function from the second network element. The code of the first function may be stored in the second network element, and the computing node may obtain the code of the first function from the second network element based on the second indication information. The second network element may be, for example, an application server, such as an AF, and the computing node may request the code of the first function from the AF; or the second network element may be, for example, a database, such as located in the core network, and the AF may have pre-stored the code of the first function in the database. The computing node requesting the code of the first function from the database can reduce latency compared to requesting the code from the AF.
[0013] In an optional embodiment, obtaining the code of the first function based on the session establishment request of the terminal device includes: receiving second indication information and the code of the first function from a first network element, where the second indication information is used to determine the code of the first function, and the second indication information and the code of the first function are sent by the first network element during the establishment process of the first session. In this embodiment, the first network element can directly send the code of the first function to the computing node, so the computing node does not need to request the code of the first function from other network elements, which can reduce the interaction process between network elements.
[0014] In an optional implementation, the first network element includes a CMF or a UPF, and may also include other network elements, without limitation.
[0015] In an optional embodiment, the method further includes: receiving a first release indication, the first release indication being used to instruct the release of the first session; and deleting (or releasing) the code of the first function. The terminal device session may be released after it is established. In this case, when the terminal device session is released, the code of the first function may also be released, thereby saving storage space on the computing node.
[0016] In an optional embodiment, deleting the code of the first function includes: deleting the code of the first function when no session for accessing the first function exists. One or more sessions (corresponding to one or more terminal devices, one of which may correspond to at least one session) may request access to the first function. In this case, as long as at least one session is still requesting access to the first function, the code of the first function should not be deleted. Therefore, the computing node can delete the code of the first function when it determines that there is no session requesting access to the first function, thereby not affecting the terminal device's access speed to the first function and saving storage space on the computing node.
[0017] In an optional embodiment, after obtaining the code of the first function based on the session establishment request of the terminal device, the method further includes: storing the correspondence between the information of the terminal device and the code of the first function, the correspondence being used to indicate the existence of a session for the terminal device to access the first function. As described above, the computing node can delete the code of the first function when it determines that there is no session for requesting access to the first function. For the computing node to determine whether there is a session for requesting access to the first function, one method includes the computing node determining whether there is a terminal device information corresponding to the code of the first function. If there is a terminal device information corresponding to the code of the first function, it is determined that there is a session for accessing the first function; if there is no terminal device information corresponding to the code of the first function, it is determined that there is no session for accessing the first function. In this way, the computing node can delete the code of the first function at an appropriate time.
[0018] In an optional embodiment, the terminal device information includes one or more of an identifier of a session corresponding to the terminal device, an identifier of the terminal device, or address information of the terminal device. The session corresponding to the terminal device is, for example, an N4 session; and the address of the terminal device is, for example, an IP address.
[0019] In an optional implementation, the computing node includes a UPF or a server.
[0020] In a second aspect, a second communication method is provided. The method can be executed by a first network element, or by a chip system that can implement the functions of the first network element. The first network element, for example, includes a CMF, or includes other network elements. The method includes: receiving a session establishment request from a terminal device, the session establishment request is used to request establishment of a first session, the first session being used for the terminal device to access a first function; determining a first DNAI corresponding to the location information of the terminal device; determining a first computing node corresponding to the first DNAI, wherein the first computing node supports the first function; sending second indication information to the first computing node, the second indication information being used to determine the code of the first function; and sending a session establishment accept message to the terminal device, the session establishment accept message being used to indicate that the establishment of the first session is complete, wherein the code of the first function is used to process the request from the terminal device for accessing the first function, the request for accessing the first function being sent by the terminal device after receiving the session establishment accept message.
[0021] In an optional implementation, the method further includes: receiving policy information from a PCF, where the policy information includes a correspondence between the first DNAI and the second indication information.
[0022] In an optional embodiment, the method further includes: when the terminal device moves from the first access network device to the second access network device, determining the second DNAI corresponding to the current location information of the terminal device; determining the second computing node corresponding to the second DNAI, wherein the second computing node supports the first function; and sending the second indication information to the second computing node, wherein the policy information also includes the correspondence between the second DNAI and the second indication information. If a cell handover occurs to the terminal device, the first network element may reselect a computing node for the terminal device, for example, if the second computing node is selected, the first network element may send the second indication information to the second computing node, and the second computing node may obtain the code of the first function before receiving a request from the terminal device for accessing the first function, thereby greatly reducing the delay of function calculation and improving the efficiency of function calculation.
[0023] In an optional embodiment, the method further includes: sending a second release indication to the first computing node, where the second release indication is used to indicate the release of the first session. Because the terminal device has moved and is now served by a new computing node, the first computing node no longer needs to maintain the session with the terminal device and can instead release the session. Furthermore, after receiving the second release indication, the first computing node can also delete the code for the first function, or can delete the code for the first function when it determines that no terminal device is accessing the first function, thereby conserving storage space on the first computing node.
[0024] In an optional embodiment, the method further includes: sending a first release indication to a second computing node, the first release indication being used to indicate the release of a session between the second computing node and the terminal device, the second computing node being a computing node serving the terminal device after performing path switching for the terminal device. Optionally, after receiving the first release indication, the second computing node may further delete the code of the first function, or may delete the code of the first function when it is determined that no terminal device is accessing the first function, thereby saving storage space on the second computing node.
[0025] In an optional implementation, the first network element includes a CMF.
[0026] Regarding the technical effects brought about by the second aspect or some optional implementation methods, reference may be made to the introduction to the technical effects of the first aspect or corresponding implementation methods.
[0027] In a third aspect, a third communication method is provided. The method can be executed by a first network element, or by a chip system that can implement the functions of the first network element. The first network element, for example, includes a CMF, or includes other network elements. The method includes: receiving a session establishment request from a terminal device, the session establishment request being used to request establishment of a first session, the first session being used for the terminal device to access a first function; determining a first DNAI corresponding to the location information of the terminal device; determining a first computing node corresponding to the first DNAI, wherein the first computing node supports the first function; sending second indication information and a code of the first function to the first computing node, the second indication information being used to determine the code of the first function; and sending a session establishment accept message to the terminal device, the session establishment accept message being used to indicate completion of establishment of the first session with the terminal device, wherein the code of the first function is used to process a request from the terminal device for accessing the first function, the request for accessing the first function being received after sending the session establishment accept message.
[0028] In an optional implementation, the method further includes: receiving policy information from the PCF, where the policy information includes a correspondence between the code of the first function, the first DNAI, and the second indication information.
[0029] In an optional embodiment, the method also includes: when the terminal device moves from the first access network device to the second access network device, determining the second DNAI corresponding to the current location information of the terminal device; determining the second computing node corresponding to the second DNAI, wherein the second computing node supports the first function; sending the second indication information and the code of the first function to the second computing node, wherein the policy information also includes the correspondence between the code of the first function, the second DNAI and the second indication information.
[0030] In an optional implementation, the method further includes: sending a second release indication to the first computing node, where the second release indication is used to indicate the release of the first session.
[0031] In an optional embodiment, the method further includes: sending a first release indication to a second computing node, the first release indication being used to indicate the release of a session between the second computing node and the terminal device, the second computing node being a computing node that serves the terminal device after performing path switching for the terminal device.
[0032] In an optional implementation, the first network element includes a CMF.
[0033] Regarding the technical effects brought about by the third aspect or various optional implementations, reference may be made to the introduction to the technical effects of the first aspect or the corresponding implementations, and / or reference may be made to the introduction to the technical effects of the second aspect or the corresponding implementations.
[0034] In a fourth aspect, a fourth communication method is provided, which can be executed by an application server or by a chip system that can implement the functions of an application server. The application server is, for example, an AF. The method includes: sending a third request to a second network element, the third request including a correspondence between a code of a first function and second indication information, the second indication information being used to determine the code of the first function, wherein the code of the first function is used by a computing node to process a request from a terminal device for accessing the first function, and the code of the first function is obtained by the computing node before receiving the request for accessing the first function.
[0035] In an optional implementation, the second network element includes a database, a PCF, or a NEF.
[0036] In an optional implementation, when the second network element includes the database, the method further includes: sending a fourth request to the PCF or NEF, where the fourth request includes the correspondence between the first DNAI and the second indication information.
[0037] In an optional embodiment, when the second network element includes the PCF or the NEF, the third request includes the correspondence between the code of the first function and the second indication information, including: the third request includes the code of the first function, the first DNAI and the correspondence between the second indication information.
[0038] Regarding the technical effects brought about by the fourth aspect or various optional implementations, you may refer to one or more of the following: an introduction to the technical effects of the first aspect or the corresponding implementation, an introduction to the technical effects of the second aspect or the corresponding implementation, or an introduction to the technical effects of the third aspect or the corresponding implementation.
[0039] In a fifth aspect, a fifth communication method is provided. This method can be executed by a computing node or a chip system capable of implementing the functions of a computing node. The computing node may be, for example, a UPF or a server. The method includes: obtaining the code of a first function based on an instruction from an NEF; receiving a first request from the terminal device for accessing the first function, the first request including first instruction information including information for determining the code of the first function; and executing the code of the first function according to the first instruction information to process the first request.
[0040] In an optional embodiment, obtaining the code of the first function based on an indication from the NEF includes: receiving second indication information from the NEF, the second indication information being used to determine the code of the first function; sending a second request to a second network element, the second request including the second indication information, the second request being used to request the code of the first function, the second indication information being used by the second network element to determine the code of the first function; and receiving the code of the first function from the second network element.
[0041] In an optional implementation, obtaining the code of the first function based on an indication from the NEF includes: receiving second indication information from the NEF and information about the code of the first function, where the second indication information is used to determine the code of the first function.
[0042] Regarding the technical effects brought about by the fifth aspect or various optional implementations, you may refer to one or more of the following: an introduction to the technical effects of the first aspect or the corresponding implementation, an introduction to the technical effects of the second aspect or the corresponding implementation, or an introduction to the technical effects of the third aspect or the corresponding implementation.
[0043] In a sixth aspect, a sixth communication method is provided, which can be executed by a second network element, or by a chip system that can implement the functions of the second network element. The second network element includes, for example, an NEF. The method includes: receiving a third request from an application server, the third request including the code of the first function, the correspondence between the first DNAI and the second indication information, the second indication information being used to determine the code of the first function; sending a fifth request to at least one computing node, the fifth request including the code of the first function and the second indication information, the at least one computing node being a computing node corresponding to the first DNAI, wherein the code of the first function is used by the at least one computing node to process a request from a terminal device for accessing the first function, and the fifth request is sent before the at least one computing node receives the request for accessing the first function.
[0044] In an optional implementation, the method further includes: sending the first DNAI to an NRF, where the first DNAI is used by the NRF to determine a computing node corresponding to the first DNAI; and receiving information about the at least one computing node from the NRF.
[0045] In an optional implementation, the second network element includes a NEF.
[0046] In the sixth communication method, the computing node can obtain the function code before receiving a request to access the function. Thus, after receiving the request, there is no need to perform the code download process, such as the process after the code download included in the cold start. This greatly reduces the latency of function calculation and improves the efficiency of function calculation. Furthermore, the embodiments of the present application decouple the process of obtaining the function code in advance from the behavior of the terminal device, thereby enabling the function code to be obtained earlier, which helps to reduce the signaling transmission process during the terminal device's session establishment process and improve the efficiency of the terminal device in establishing the session.
[0047] In the seventh aspect, a seventh communication method is provided, which can be executed by a second network element, or by a chip system that can implement the functions of the second network element. The second network element includes, for example, an NEF. The method includes: receiving a third request from an application server, the third request including a correspondence between a first DNAI and second indication information, the second indication information being used to determine the code of a first function; sending a fifth request to at least one computing node, the fifth request including the second indication information, the at least one computing node being a computing node corresponding to the first DNAI, wherein the code of the first function is used by the at least one computing node to process a request from a terminal device for accessing the first function, and the fifth request is sent before the at least one computing node receives the request for accessing the first function.
[0048] In an optional implementation, the method further includes: sending the first DNAI to an NRF, where the first DNAI is used by the NRF to determine a computing node corresponding to the first DNAI; and receiving information about the at least one computing node from the NRF.
[0049] In an optional implementation, the second network element includes a NEF.
[0050] Regarding the technical effects brought about by the seventh aspect or various optional implementations, reference may be made to the introduction to the technical effects of the sixth aspect or corresponding implementations.
[0051] In an eighth aspect, an eighth communication method is provided. The method can be executed by a second network element, or by a chip system capable of implementing the functions of the second network element. The second network element, for example, includes a database. The method includes: receiving a second request from a computing node, the second request including second indication information, the second request being used to request code for a first function, the second request being sent by the computing node during a process in which a terminal device requests to establish a session; determining the code for the first function based on the second indication information; and sending the code for the first function to the computing node.
[0052] In an optional implementation, the method further includes: receiving a third request from an application server, where the third request includes a correspondence between the code of the first function and the second indication information.
[0053] In an optional implementation, the method further includes: sending a response to the third request to the application server, where the response is used to indicate that the corresponding relationship has been successfully received.
[0054] Regarding the technical effects brought about by the eighth aspect or various optional implementations, reference may be made to one or more of the introductions to the technical effects of the first aspect or the corresponding implementations to the introductions to the technical effects of the seventh aspect or the corresponding implementations.
[0055] In a ninth aspect, a communication device is provided. The communication device has the function of implementing the behavior of the method embodiment described in any one of the first to eighth aspects. The beneficial effects can be found in the above description and will not be repeated here.
[0056] The communication device may implement the functions of the computing node described in any of the first to eighth aspects above. For example, the communication device is the computing node described in any of the first to eighth aspects above, or is an electronic device (e.g., a chip system) configured in the computing node, or is a larger device including the computing node. The computing node includes corresponding means or modules for performing the above-mentioned method. Alternatively, the communication device may implement the functions of the first network element described in any of the first to eighth aspects above. For example, the communication device may be the first network element described in any of the first to eighth aspects above, or is an electronic device (e.g., a chip system) configured in the first network element, or is a larger device including the first network element. The first network element includes corresponding means or modules for performing the above-mentioned method. Alternatively, the communication device may implement the functions of the second network element described in any of the first to eighth aspects above. For example, the communication device may be the second network element described in any of the first to eighth aspects above, or is an electronic device (e.g., a chip system) configured in the second network element, or is a larger device including the second network element. The second network element includes corresponding means or modules for performing the above-mentioned method. Alternatively, the communication device can implement the functions of the application server described in any one of the first to eighth aspects above, and the communication device can be the application server described in any one of the first to eighth aspects above, or an electronic device configured in the application server (for example, a chip system), or a larger device including the application server. The application server includes corresponding means or modules for executing the above method. For example, the communication device includes a processing unit (sometimes also referred to as a processing module) and a transceiver unit (sometimes also referred to as a transceiver module).
[0057] When the communication device is capable of implementing the functions of the computing node described in any one of the first to eighth aspects above, in one example, the transceiver unit is used to obtain the code of the first function based on a session establishment request of the terminal device; the transceiver unit is also used to receive a first request for accessing the first function from the terminal device through a first session after obtaining the code of the first function; the processing unit is used to run the code of the first function according to the first indication information to process the first request.
[0058] Alternatively, when the communication device is capable of implementing the functions of the computing node described in any one of the first to eighth aspects above, in another example, the transceiver unit is used to obtain the code of the first function based on an indication from the NEF; the transceiver unit is also used to receive a first request from the terminal device for accessing the first function, the first request including first indication information, and the first indication information including information for determining the code of the first function; the processing unit is used to run the code of the first function according to the first indication information to process the first request.
[0059] When the communication device is capable of implementing the functions of the first network element described in any one of the first to eighth aspects above, in an example, the transceiver unit is used to receive a session establishment request from a terminal device, the session establishment request is used to request the establishment of a first session, and the first session is used for the terminal device to access a first function; the processing unit is used to determine the first DNAI corresponding to the location information of the terminal device; the processing unit is also used to determine the first computing node corresponding to the first DNAI, wherein the first computing node supports the first function; the transceiver unit is also used to send second indication information to the first computing node, and the second indication information is used to determine the code of the first function; the transceiver unit is also used to send a session establishment acceptance message to the terminal device, and the session establishment acceptance message is used to indicate that the establishment of the first session with the terminal device is completed, wherein the code of the first function is used to process the request from the terminal device for accessing the first function, and the request for accessing the first function is sent by the terminal device after receiving the session establishment acceptance message.
[0060] Alternatively, when the communication device is capable of implementing the functions of the first network element described in any one of the first to eighth aspects above, in another example, the transceiver unit is used to receive a session establishment request from a terminal device, the session establishment request is used to request the establishment of a first session, and the first session is used for the terminal device to access a first function; the processing unit is used to determine the first DNAI corresponding to the location information of the terminal device; the processing unit is also used to determine the first computing node corresponding to the first DNAI, wherein the first computing node supports the first function; the transceiver unit is also used to send second indication information and the code of the first function to the first computing node, and the second indication information is used to determine the code of the first function; the transceiver unit is also used to send a session establishment acceptance message to the terminal device, and the session establishment acceptance message is used to indicate that the establishment of the first session with the terminal device is completed, wherein the code of the first function is used to process the request from the terminal device for accessing the first function, and the request for accessing the first function is received after sending the session establishment acceptance message.
[0061] When the communication device is capable of implementing the function of the second network element described in any one of the first to eighth aspects above, in an example, the transceiver unit is used to receive a second request from a computing node, the second request includes second indication information, the second request is used to request the code of the first function, and the second request is sent by the computing node based on a session establishment request of the terminal device; the processing unit is used to determine the code of the first function based on the second indication information; the transceiver unit is also used to send the code of the first function to the computing node.
[0062] Alternatively, when the communication device is capable of implementing the function of the second network element described in any one of the first to eighth aspects above, in another example, the transceiver unit is used to receive a third request from the application server, and the third request includes the code of the first function, the correspondence between the first DNAI and the second indication information, and the second indication information is used to determine the code of the first function; the transceiver unit is also used to send a fifth request to at least one computing node, and the fifth request includes the code of the first function and the second indication information, and the at least one computing node is a computing node corresponding to the first DNAI, wherein the code of the first function is used by the at least one computing node to process a request from a terminal device for accessing the first function, and the fifth request is sent before the at least one computing node receives the request for accessing the first function.
[0063] Alternatively, when the communication device is capable of implementing the function of the second network element described in any one of the first to eighth aspects above, in another example, the transceiver unit is used to receive a third request from an application server, and the third request includes a correspondence between the first DNAI and the second indication information, and the second indication information is used to determine the code of the first function; the transceiver unit is also used to send a fifth request to at least one computing node, and the fifth request includes the second indication information, and the at least one computing node is a computing node corresponding to the first DNAI, wherein the code of the first function is used by the at least one computing node to process a request from a terminal device for accessing the first function, and the fifth request is sent before the at least one computing node receives the request for accessing the first function.
[0064] When the communication device is capable of implementing the functions of the application server described in any one of the first to eighth aspects above, in an example, the transceiver unit is used to send a third request to the second network element, and the third request includes a correspondence between the code of the first function and the second indication information, and the second indication information is used to determine the code of the first function, wherein the code of the first function is used by the computing node to process a request from a terminal device for accessing the first function, and the code of the first function is obtained by the computing node before receiving the request for accessing the first function.
[0065] In an optional implementation, the communication device includes a storage unit, the processing unit can be coupled to the storage unit, and execute the program or instructions in the storage unit, enabling the communication device to perform the functions of the above-mentioned computing node, first network element, second network element or application server.
[0066] In an optional embodiment, the communication device includes: a processor coupled to a memory, configured to execute instructions in the memory to implement the method performed by the computing node, first network element, second network element, or application server described in any of aspects 1 to 8 above. Optionally, the communication device also includes other components, such as an antenna, input / output modules, interfaces, etc. These components may be hardware, software, or a combination of software and hardware.
[0067] In a tenth aspect, a communication device is provided, which may be a computing node, or a chip or chip system used in a computing node. Alternatively, the communication device may be a first network element, or a chip or chip system used in a first network element. Alternatively, the communication device may be a second network element, or a chip or chip system used in a second network element. Alternatively, the communication device may be an application server, or a chip or chip system used in an application server. The communication device includes a communication interface and a processor, and optionally, a memory. The memory is used to store a computer program, and the processor is coupled to the memory and the communication interface. When the processor reads the computer program or instruction, the communication device executes the method performed by the computing node, the first network element, the second network element, or the application server in any of the first to eighth aspects.
[0068] In the eleventh aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium is used to store a computer program, and when the computer program is run on a computer, the computer is caused to execute the method described in any one of the first to eighth aspects.
[0069] In a twelfth aspect, a computer program product is provided, comprising a computer program, which, when executed on a computer, enables the computer to execute the method described in any one of aspects 1 to 8.
[0070] In the thirteenth aspect, a chip system is provided, comprising a processor and an interface, wherein the processor is used to call and run instructions from the interface, and when the processor executes the instructions, the method described in any one of the first to eighth aspects is implemented. BRIEF DESCRIPTION OF THE DRAWINGS
[0071] FIG1 is a schematic diagram of a cold start process;
[0072] 2A and 2B are schematic diagrams of two network architectures used in embodiments of the present application;
[0073] 3A and 3B are flowcharts of a communication method provided in an embodiment of the present application;
[0074] FIG4 is a schematic diagram showing that the same computing task can be deployed on multiple computing nodes in an embodiment of the present application;
[0075] Figures 5A, 5B, 6A, 6B, 7A, 7B, 8A, and 8B are flowcharts of several communication methods provided in embodiments of the present application;
[0076] FIG9 is a schematic diagram of a device provided in an embodiment of the present application;
[0077] FIG10 is a schematic diagram of another device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0078] In order to make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the embodiments of the present application will be further described in detail below with reference to the accompanying drawings.
[0079] In the embodiments of the present application, the number of nouns, unless otherwise specified, means "singular noun or plural noun", that is, "one or more". "At least one" means one or more, and "plural" means two or more. "And / or" describes the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A or B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. For example, A / B means: A or B. "At least one of the following items" or "one or more of them" and other similar expressions refer to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b, or c, or one or more of a, b, or c, means: a, b, c, a and b, a and c, b and c, or a and b and c. Each of a, b, and c can be single or multiple.
[0080] The ordinal numbers "first" and "second" mentioned in the embodiments of this application are used to distinguish multiple objects and are not used to limit the size, content, order, timing, priority, or importance of multiple objects. In addition, the numbering of the steps in the various embodiments introduced in the embodiments of this application is only to distinguish different steps and is not used to define the order between the steps. For example, S501 can occur before S502, or after S502, or at the same time as S502.
[0081] Below, some terms or concepts in the embodiments of the present application are explained to facilitate understanding by those skilled in the art.
[0082] (1) In the embodiments of the present application, a terminal device is a device with wireless transceiver functions, which can be a fixed device, a mobile device, a handheld device (such as a mobile phone), a wearable device, a vehicle-mounted device, or a wireless device built into the above-mentioned device (such as a communication module, a modem, or a chip system, etc.). The terminal device is used to connect people, objects, machines, etc., and can be widely used in various scenarios, such as but not limited to the following scenarios: cellular communication, device-to-device communication (D2D), V2X, machine-to-machine / machine-type communication (M2M / MTC), Internet of Things (IoT), virtual reality (VR), augmented reality (AR), industrial control, self-driving, remote medical, smart grid, smart furniture, smart office, smart wearable, smart transportation, smart city, drone, robot and other scenarios. The terminal device can sometimes be referred to as UE, terminal, access station, UE station, remote station, wireless communication equipment, or user device, etc.
[0083] In the embodiments of the present application, the communication device for implementing the terminal device function may be a terminal device, or may be a device capable of supporting the terminal device to implement the function, such as a chip system, which may be installed in the terminal device. In the technical solutions provided in the embodiments of the present application, the technical solutions provided in the embodiments of the present application are described by taking the terminal device as an example in which the device for implementing the terminal device function is a terminal device. In addition, for ease of description, the terminal device in the embodiments of the present application is described by taking a UE as an example.
[0084] (2) The network devices in the embodiments of the present application include, for example, access network devices and / or core network devices. The access network device is a device with wireless transceiver functions, which is used to communicate with the terminal device. The access network device includes but is not limited to base stations (base transceiver station (BTS), Node B, eNodeB / eNB, or gNodeB / gNB), transmission reception points (TRP), base stations subsequently evolved from the third generation partnership project (3GPP), access nodes in wireless fidelity (Wi-Fi) systems, wireless relay nodes, wireless backhaul nodes, etc. The base station can be: a macro base station, a micro base station, a pico base station, a small station, a relay station, etc. Multiple base stations can support networks with the same access technology, or they can support networks with different access technologies. The base station can include one or more co-station or non-co-station transmission and reception points. The access network device may also be a wireless controller, a centralized unit (CU), and / or a distributed unit (DU) in a cloud radio access network (CRAN) scenario. The access network device may also be a server, etc. For example, the network device in the vehicle to everything (V2X) technology may be a road side unit (RSU). The following describes the access network device using a base station as an example. The base station can communicate with the terminal device, or it can communicate with the terminal device through a relay station. The terminal device can communicate with multiple base stations in different access technologies. The core network device is used to implement functions such as mobility management, data processing, session management, policy and billing. The names of the devices that implement core network functions in systems with different access technologies may be different, and the embodiments of the present application are not limited to this. Taking the 5th generation (5G) mobile communication system as an example, the core network equipment includes: access and mobility management function (AMF), session management function (SMF), policy control function (PCF) or user plane function (UPF), etc.
[0085] In the embodiments of the present application, the communication device for implementing the network device function may be a network device, or may be a device capable of supporting the network device to implement the function, such as a chip system, which may be installed in the network device. In the technical solutions provided in the embodiments of the present application, the technical solutions provided in the embodiments of the present application are described by taking the network device as an example of the device for implementing the network device function being a network device.
[0086] Please refer to Figure 2A, which is a schematic diagram of a 5G network architecture based on a service-oriented architecture, which is also a network architecture used in the embodiments of this application. The 5G network architecture shown in Figure 2A may include three parts: the UE part, the DN, and the operator network part.
[0087] Among them, the operator network may include one or more of the following network elements: authentication server function (AUSF) network element, network exposure function (NEF) network element, policy control function (PCF) network element, unified data management (UDM) network element, unified data repository (UDR), network storage function (NRF) network element, application function (AF) network element, access and mobility management function (AMF) network element, SMF network element, (radio) access network (R)AN) or user plane function (UPF) network element, etc.
[0088] The operator network includes a radio access network and a core network. The UE accesses the core network through the (R)AN. The core network includes user plane network elements and control plane network elements. The user plane network elements of the core network include the UPF; the control plane network elements of the core network include at least one of the following network elements: AUSF, AMF, SMF, NSSF, NEF, NRF, UDM, PCF, or AF.
[0089] User plane network elements (e.g., UPF) are primarily responsible for packet forwarding, quality of service (QoS) control, and billing information statistics. Control plane network elements are primarily responsible for business process interaction, issuing packet forwarding policies and QoS control policies to the user plane, etc. In the embodiments of the present application, it is considered that devices such as sensors can access the core network through devices such as UE and (R)AN. Therefore, controllers connected to sensors and other devices in industrial Ethernet can perform industrial data communication on the user plane through UPF.
[0090] The core network control plane can adopt a service-based architecture. That is, the interaction between control plane network elements uses service calls, replacing the point-to-point communication method in the traditional architecture. In a service-based architecture, one control plane network element will open services to other control plane network elements for them to call. In point-to-point communication, the communication interface between control plane network elements will have a specific set of messages that can only be used by the control plane network elements at both ends of the interface during communication.
[0091] The functions of network elements in the core network are described as follows:
[0092] UPF supports all or part of the following functions: interconnecting protocol data unit (PDU) sessions with data networks, packet routing and forwarding (for example, supporting uplink classifier for forwarding traffic to the data network, supporting branching points to support multi-homed PDU sessions), or packet inspection.
[0093] The AMF manages UE access and mobility. It is responsible for maintaining UE status, managing UE reachability, forwarding non-mobility management (MM) and non-access-stratum (NAS) messages, and forwarding session management (SM) N2 messages.
[0094] The SMF, or UE Session Management, allocates and releases resources for UE sessions. These resources include session quality of service (QoS), session paths, and forwarding rules. The SMF is responsible for selecting or reselecting UPFs, allocating Internet Protocol (IP) addresses, and establishing, modifying, and releasing bearers.
[0095] NEF opens network functions to third parties in the form of northbound application programming interfaces (APIs).
[0096] NRF provides storage and selection functions for network function entity information for other network elements.
[0097] UDM, User Context Management, is responsible for managing the UE's subscription data and notifying the corresponding network elements when the subscription data is modified.
[0098] The UDR, a unified data repository, is responsible for storing and retrieving contract data, policy data, and public architecture data, enabling network elements such as the UDM, PCF, or NEF to access relevant data. The UDR can implement different data access authentication mechanisms for different types of data (such as contract data and policy data) to ensure data access security. The UDR should be able to return a failure response with an appropriate cause value for illegal service-based operations or data access requests.
[0099] PCF, User Policy Management, is used to generate and manage user, session, and QoS flow processing policies.
[0100] AF (Application Management) provides application layer services to the UE. When providing services to the UE, AF has requirements for QoS (policy) and charging policies, and needs to notify the network. In addition, AF also needs to feedback application-related information from the core network.
[0101] The relevant interfaces between network element functions involved in the embodiments of this application include:
[0102] N1: Interface between UE and core network control plane.
[0103] N2: Communication interface between (R)AN and core network control plane.
[0104] N3: Communication interface between (R)AN and UPF, used to transmit user plane data.
[0105] N4: Communication interface between SMF and UPF, used by SMF to configure policies for UPF, etc.
[0106] N6: Communication port between UPF and DN.
[0107] Please refer to Figure 2B again, which is a schematic diagram of a 5G network architecture based on a point-to-point interface. This network architecture is another network architecture used in the embodiments of this application. For the network elements in Figure 2B, please refer to the introduction of the relevant network elements in Figure 2A. The main difference between Figure 2B and Figure 2A is that the interfaces between the network elements in Figure 2B are point-to-point interfaces, rather than service-based interfaces.
[0108] The following describes the method provided in the embodiments of the present application in conjunction with the accompanying drawings. In the various embodiments of this document, a computing task may correspond to one or more functions, or it can be understood that to execute the computing task, one or more functions corresponding to the computing task must be executed. A function may correspond to a set of codes, which may also be understood as a code package, and a set of codes corresponding to a function may be referred to as the code of the function. In the various embodiments of this document, the computing management function (CMF) is, for example, a newly added network element in the core network (not shown in Figures 2A and 2B), responsible for selecting or reselecting UPF, etc.; alternatively, the CMF may also be the SMF or AMF with the computing function added; alternatively, the CMF may also be a module in the SMF or AMF; alternatively, the CMF may also have the functions of both SMF and AMF, and it can be understood that the CMF can be used to replace the SMF and AMF.
[0109] The various embodiments of this document can be applied to the network architecture shown in Figure 2A or Figure 2B. For example, the computing node described in the various embodiments of this document can be the UPF in Figure 2A or Figure 2B, or it can also be a server not shown in Figure 2A and Figure 2B; the first network element described in the various embodiments of this document can be the UPF or NEF in Figure 2A or Figure 2B, or it can also be a CMF not shown in Figure 2A and Figure 2B; the second network element described in the various embodiments of this document can be the PCF or NEF in Figure 2A or Figure 2B, or it can also be a database not shown in Figure 2A and Figure 2B. Optionally, the database can also be called a computing function code hosting database or a function code database, etc., for example, a newly added network element in the core network, or it can also be implemented through a UDR; the AF described in the various embodiments of this document can be the AF in Figure 2A or Figure 2B. In the drawings corresponding to the various embodiments of this application, all steps represented by dotted lines are optional steps.
[0110] The present application provides a first communication method. FIG3A or FIG3B is a flowchart of the method. In the embodiment shown in FIG3A or FIG3B , the computing node is a UPF, the second network element is a database or PCF, and the first network element is a CMF.
[0111] S301: The AF sends a request 1 to the second network element. Correspondingly, the second network element receives the request 1 from the AF. The request 1 may also be referred to as a third request. For example, the request 1 is an AF request, or the request 1 is included in an AF request.
[0112] Request 1 may include a correspondence (or association) between at least one function code and at least one indication information, where the function (or function code) and the indication information may correspond one-to-one, and one indication information may be used to determine the corresponding function code. For example, if the indication information corresponding to the first function (or the first function code) is the second indication information, and Request 1 may include a correspondence between the first function code and the second indication information (i.e., the at least one function code includes the first function code, and the at least one indication information includes the second indication information), then the second indication information may be used to determine the first function code. For example, if the code of the first function is to be queried, the second indication information may be used to query. Alternatively, for example, if the function is an HTTP function, the indication information corresponding to the HTTP function (or the function code) may be a uniform resource locator (URL) for calling the function. This indication information may also be referred to as a trigger. Alternatively, the second network element may obtain the correspondence between the at least one function code and the at least one indication information through other means, so S301 is an optional step.
[0113] Optionally, if the second network element is a database ( FIG3A takes this as an example), Request 1 may be used to store the correspondence between the code of at least one function and at least one indication information in the database. After receiving Request 1, the database may reply to the AF with response information, such as Response 1. Response 1 may also be referred to as computing power function hosting response information, which may be used to indicate that Request 1 was successfully received or that the correspondence was successfully stored. The AF may send Request 1 directly to the database, or may send Request 1 to the database through the NEF.
[0114] Alternatively, if the second network element is a PCF ( FIG. 3B takes this as an example), the correspondence included in request 1 may specifically include a correspondence between the code of at least one function, at least one indication information, and at least one location information. The location information may be the deployment location of the function corresponding to the code of at least one function. For example, one location information may be represented by a data network access identifier (DNAI), that is, the correspondence may be a correspondence between the code of at least one function, at least one indication information, and at least one DNAI. The code of at least one function includes the code of a first function, the at least one indication information includes the second indication information, and the at least one DNAI includes the code of the first function and one or more DNAIs corresponding to the second indication information. The correspondence between the code of a function and a DNAI means that the function (or the computing task to which the function belongs) is deployed on the DNAI, or on the computing node corresponding to the DNAI, or on the area (or network) indicated by the DNAI, or on the computing node within the area (or network) indicated by the DNAI. When the second network element is a PCF, the AF does not need to store the function code in the database, thereby eliminating the need to use the database network element, which can reduce the interaction process between network elements.
[0115] Among them, for the future integration of computing and network, there are a large number of distributed computing nodes, and the number of computing tasks in the future is huge. There is randomness in the triggering of computing tasks by UEs. In addition, considering the mobility of UEs, when UEs requesting the same computing task are in different locations, the network may select different computing nodes, that is, the same computing task may be deployed in multiple computing nodes. For example, referring to Figure 4, computing node 1 and computing node 2 are both deployed with computing task #1. When the UE is in position 1, the network can select computing node 1 for the UE; when the UE moves from position 1 to position 2, the network may reselect computing node 2 for the UE. Therefore, in request 1, the number of DNAIs corresponding to the code of a function (or the code of a function and an indication information) can be one or more, that is, a function (or the computing task to which the function belongs) may be deployed in the computing nodes corresponding to the areas indicated by one or more DNAIs. For example, in this correspondence, the DNAI corresponding to the code of the first function and the second indication information is the first DNAI, and the first DNAI may include one or more DNAIs. In various embodiments of the present application, "selecting" a computing node can also be replaced by "determining" a computing node.
[0116] Optionally, if the second network element is PCF, request 1 may also include data network name (DNN) or single network slice selection assistance information (S-NSSAI), etc., without any restriction.
[0117] If the second network element is a database, the method may optionally further include S302 as shown in FIG3A , where the AF sends Request 2 to the PCF, and the PCF accordingly receives Request 2 from the AF. Request 2 may also be referred to as a fourth request. Request 2 may include a correspondence between at least one indication information and at least one piece of location information, wherein the at least one indication information includes second indication information, and the at least one piece of location information includes one or more DNAIs corresponding to the second indication information. For details about this correspondence, please refer to the above description.
[0118] Regardless of whether the second network element is a database or a PCF, optionally, the method may further include S303 shown in FIG3A or FIG3B, and S303 may occur after S301, or after S302. In S303, the UE initiates a session establishment process. One implementation method includes, the UE directly sends a session establishment request message to the CMF through the access network device, indicating that the UE initiates the session establishment process. Alternatively, another implementation method includes, the UE sends a session establishment request message to the SMF through the access network device, indicating that the UE initiates the session establishment process; the SMF determines that the first session requires CMF processing based on the DNN or S-NSSAI and other information included in the session establishment request message, and further, the SMF sends the session establishment request message to the CMF. The session requested by the UE to establish is, for example, called a first session, and the first session is, for example, a PDU session, or may be another type of session. Optionally, the session establishment request message may carry the DNN or S-NSSAI associated with the PDU session.
[0119] Optionally, the method may further include S304 shown in FIG3A or FIG3B , in which the CMF receives policy information from the PCF. For example, S304 may include S304a and S304b. In S304a, the CMF may send a request to the PCF, such as Request 3, which may be used to request policy information. After the PCF receives Request 3, it may send the policy information to the CMF in S304b. For example, Request 3 is a service-based message, such as Npcf_Session Management Policy Control (SMPolicyControl)_Create Request. The PCF may send the policy information to the CMF via Npcf_SMPolicyControl_Create Response. If the second network element is a database, the policy information may include a correspondence between at least one indication information received by the PCF from the AF and at least one DNAI. Alternatively, if the second network element is a PCF, the policy information may include a correspondence between the code of at least one function, at least one indication information, and at least one DNAI received by the PCF from the AF.
[0120] Optionally, after receiving the policy information, the CMF may execute S305 shown in FIG3A or FIG3B. In S305, the CMF determines the UPF for the UE. For example, the CMF may determine the DNAI that the UE can access based on the current location information of the UE. Based on the policy information, the CMF can determine whether the computing node corresponding to the area indicated by the DNAI has deployed the computing task, so that the CMF can select a suitable UPF for the UE accordingly. In an embodiment of the present application, the UPF is the computing node on which the computing task is deployed. For example, if the CMF determines that the current location information of the UE corresponds to the first DNAI (or, the CMF determines that the UE can access the first DNAI in the current location information), and the CMF determines that the area indicated by the first DNAI has deployed the computing task, the CMF may select the computing node corresponding to the first DNAI on which the computing task is deployed, for example, the CMF determines the first computing node, for example, the first computing node supports the first function, or the first computing node deploys the computing task to which the first function belongs. In an embodiment of the present application, the first computing node is, for example, the first UPF.
[0121] If the policy information includes at least one indication information received by the PCF from the AF and a correspondence between at least one DNAI, the at least one indication information may include second indication information, and the at least one DNAI may include a first DNAI corresponding to the second indication information; or, if the policy information may include the code of at least one function received by the PCF from the AF, at least one indication information, and a correspondence between at least one DNAI, the at least one indication information may include second indication information, the at least one DNAI may include a first DNAI corresponding to the second indication information, and the code of the at least one function may include a code of the first function corresponding to the second indication information. After determining the first UPF, optionally, the method may further include S306 shown in Figure 3A or Figure 3B. In S306, the CMF sends the second indication information to the first UPF, and accordingly, the first UPF receives the second indication information from the CMF, as shown in Figure 3A. Alternatively, in S306, the CMF sends the second indication information and the code of the first function to the first UPF. Accordingly, the first UPF receives the second indication information and the code of the first function from the CMF. As shown in Figure 3B , this approach can be understood as the first UPF obtaining the code of the first function based on the UE's session establishment request message (or, based on the first session establishment process). S306 in either Figure 3A or Figure 3B can be understood as being executed during the first session establishment process. The second indication information and the code of the first function are both obtained by the CMF from policy information. Because the first UPF supports the first function, the CMF may send the second indication information corresponding to the code of the first function to the first UPF. If the policy information obtained by the CMF includes a correspondence between at least one indication information and at least one DNAI, then in S306, the CMF may send the second indication information to the first UPF without sending the code of the first function. Alternatively, if the policy information obtained by the CMF includes a correspondence between at least one function code, at least one indication information, and at least one DNAI, then in S306, the CMF may send the second indication information and the code of the first function to the first UPF. Optionally, the CMF may execute S306 during the process of establishing an N4 session (N4session) with the first UPF. For example, in S306, the CMF may send a message to the first UPF requesting to establish an N4 session. The message may include the second indication information, or the second indication information and the code of the first function.
[0122] If the CMF sends the second indication information and the code of the first function to the first UPF in S306, the first UPF has already obtained the code of the first function, and the first UPF can store the second indication information and the code of the first function. Alternatively, if the CMF sends the second indication information to the first UPF in S306 but does not send the code of the first function, the first UPF can further obtain the code of the first function based on the second indication information. At this time, the second indication information from the CMF can be regarded as triggering the acquisition of the code of the first function. This method can also be understood as the first UPF obtaining the code of the first function based on the UE's session establishment request message (or, based on the establishment process of the first session). If the CMF sends the second indication information to the first UPF in S306 but does not send the code of the first function, the method can also include S307 as shown in Figure 3A, where the first UPF obtains the code of the first function from the database, wherein S307 is also executed in the process of the UE requesting to establish a session, or in the process of establishing the first session. Wherein, after the first UPF receives the second indication information, if the first UPF has already stored the code of the first function (for example, the first UPF has already obtained the code of the first function during the session establishment process of other UEs), it is not necessary to execute S307; alternatively, if the first UPF has not yet stored the code of the first function, S307 may be executed. For example, in S307, the first UPF may send request 4 to the database, and accordingly, the database receives request 4 from the first UPF, which may also be referred to as a second request. Request 4 may be used to request the code of the first function. For example, request 4 includes the second indication information, and the database may determine the code of the first function based on the second indication information. In addition, in S307, the database may send the code of the first function to the first UPF, so that the first UPF obtains the code of the first function.
[0123] Optionally, after obtaining the code of the first function through S306 or S307, the first UPF may store the correspondence (or association) between the code of the first function and the information of the UE. For example, for the first UPF, the code of the first function is obtained during the session establishment process of the UE. Then, as long as the first UPF receives the second indication information during the session establishment process of a UE, it can establish the correspondence between the information of the UE and the code of the first function. For example, the code of the first function may have a correspondence with the information of one or more UEs. Optionally, the information of a UE may include one or more of the following: the identifier of the UE (for example, the identity number (ID) of the UE), the address information of the UE (for example, the IP address of the UE), or the identifier of the session corresponding to the UE (for example, the ID of the N4 session corresponding to the UE). Among them, the correspondence between the code of a function and the information of a UE may indicate the existence of a session for the UE to access the function. Therefore, by establishing the correspondence between the UE information and the code of the first function, the first UPF can know how many UEs have requested to access the first function, or the first UPF can know whether there is a UE currently requesting to access the first function.
[0124] Optionally, the method may further include S308 shown in Figure 3A or Figure 3B, where the CMF sends a session establishment accept message to the UE. After the first session of the UE is established, the CMF may send a session establishment accept message to the UE.
[0125] After S308, the method may further include S309 shown in FIG3A or 3B, in which the UE sends a request 5 to the first UPF, and accordingly, the first UPF receives the request 5 from the UE. The UE may send the request 5 to the first UPF through the established first session, and the first UPF may also receive the request 5 through the first session. For example, it is understood that after obtaining the code of the first function, the first UPF receives the request 5 through the first session. In the embodiment of the present application, because the first UPF is a computing node, the request 5 can be sent to the first UPF. The request 5 may also be referred to as a first request, which may be used to access the first function or to request the execution of a computing task to which the first function belongs. For example, the request 5 is an HTTP request. The request 5 includes, for example, first indication information, which may be used to determine the code of the first function. Optionally, the first indication information and the second indication information may be the same information, for example, both are URLs corresponding to the code of the first function, but the two indication information come from different sources (the first indication information comes from the UE, and the second indication information comes from the AF), and are therefore named separately.
[0126] After receiving request 5, the first UPF may execute S310 shown in FIG3A or FIG3B , run the code of the first function according to the first indication information, and process request 5. After receiving request 5, the first UPF may call the code of the first function according to the first indication information, thereby executing the first function, or executing the computing task to which the first function belongs. For example, after receiving request 5, the first UPF may execute the cold start process shown in FIG1 , including the steps of starting the function instance container, runtime initialization, and code initialization (the code download step included in the cold start process shown in FIG1 has been completed). When the cold start is completed and the function instance is ready, the first UPF may start executing request 5.
[0127] Optionally, the method may further include S311 shown in FIG. 3A or 3B , in which the first UPF sends response information to the UE, for example, response 2, and the UE receives response 2 from the first UPF. Response 2 may be, for example, HTTP response information, which may be a response to request 5. For example, response 2 includes a processing result of the first UPF for the first function (or for the computing task to which the first function belongs).
[0128] Through the method described above, the first UPF stores the code of the first function. If no UE requests access to the first function, the first UPF may also release the code of the first function to save the storage space of the first UPF. Optionally, the method may also include S312 and S313 shown in Figure 3A or Figure 3B. In S312, the first session of the UE is released. For example, the release of the first session of the UE may be triggered by the UE or the network side. In S313, the CMF sends a first release indication to the first UPF, and accordingly, the first UPF receives the first release indication from the CMF. The first release indication may indicate the release of the first session of the UE.
[0129] Optionally, the method may further include S314, as shown in FIG. 3A or 3B , in which the first UPF releases the code for the first function. S314 may occur, for example, after S313. For example, after receiving the first release indication, the first UPF may determine whether a session for accessing the first function still exists. If a session for accessing the first function still exists, the first UPF does not need to release the code for the first function and may continue to store the code. If a session for accessing the first function no longer exists, the first UPF may release the code for the first function. If a UE's session for accessing the first function has not been released, this indicates that the UE intends to access the first function or that a session for accessing the first function still exists. If a UE's session for accessing the first function is released, this indicates that the UE no longer intends to access the first function or that a session for accessing the first function no longer exists. One or more UEs may have established sessions for accessing the first function. Therefore, only when all of these UEs' sessions for accessing the first function are the sessions for accessing the first function considered to no longer exist is the session considered to no longer exist.
[0130] For example, after receiving the first release indication, the first UPF may delete the correspondence between the first function code and the UE information from the correspondence between the first function code and the UE information. After the deletion, the first UPF may determine whether any UE information still corresponds to the first function code. If any other UE information still corresponds to the first function code, it indicates that a session for accessing the first function still exists, and the first UPF will not release the first function code. Alternatively, if no other UE information corresponds to the first function code, it indicates that no session for accessing the first function exists, and the first UPF may release the first function code. Thus, by establishing a correspondence between the function code and the UE information, the first UPF can determine whether it is still necessary to store the first function code, allowing it to release the first function code at an appropriate time. This does not affect the UE's access to the first function, but also allows for the timely release of the information stored by the first UPF, thus conserving storage space within the first UPF. In various embodiments of the present application, the phrase "releasing" the function code can be replaced with "deleting" the function code. For example, the phrases "releasing" and "deleting" can be considered equivalent and interchangeable.
[0131] In an embodiment of the present application, the first UPF can obtain the code of the first function before receiving the first request from the UE, which is equivalent to obtaining the code of the first function before receiving the request for accessing the first function. Therefore, there is no need to perform the code download process after receiving the first request, such as executing the process after the code download included in the cold start, thereby greatly reducing the delay of function calculation and improving the efficiency of function calculation.
[0132] The embodiment shown in Figure 3A or Figure 3B involves a scenario where the UE has not moved. In addition, the UE may also move. When the UE moves from its original location to a new location, if the computing node corresponding to the new location does not store the code of the first function, the computing node still needs to download the code of the first function, which takes a long time. To this end, an embodiment of the present application provides a second communication method, through which the delay of function calculation can be reduced even if the UE moves. Please refer to Figure 5A or Figure 5B for a flowchart of the method. In the embodiment shown in Figure 5A or Figure 5B, the example in which the computing node is a UPF, the second network element is a database or PCF, and the first network element is a CMF is continued. Among them, the first UPF represents the UPF that provides services to the UE before the UE moves, and the second UPF represents the UPF that provides services to the UE after the UE moves.
[0133] S501. A first network device sends a path switching request to a CMF. Accordingly, the CMF receives the path switching request from the first network device. The first network device is, for example, an access network device, referred to as the first access network device, and may be the target access network device after the UE moves. In addition, there is a second network device, which is the network device that served the UE before the UE moved. For example, the second network device is an access network device, referred to as the second access network device. The path switching request may be used to request that the transmission path of the UE be switched to the first network device. That is, after the UE moves, the target access network device of the UE may send the path switching request to the CMF.
[0134] Before S501 , S301 to S311 in the embodiment shown in FIG. 3A or FIG. 3B may be executed, and details thereof will not be repeated.
[0135] S502, CMF determines the second UPF for the UE. For example, when the UE moves from the second network device to the first network device (for example, when the CMF receives a path switching request from the first network device), the CMF can determine the DNAI that the UE can access based on the current location information of the UE, such as the second DNAI. According to the policy information, the CMF can determine whether the computing node corresponding to the area indicated by the second DNAI has deployed the computing task, so that the CMF can select a suitable UPF for the UE accordingly, for example, the CMF selects the second UPF. In the embodiment of the present application, the second UPF is a new computing node that deploys the first function (or the computing task to which the first function belongs). For the selection (or determination) process of the second UPF, please refer to S305 in the embodiment shown in Figure 3A or Figure 3B.
[0136] S503: The CMF sends a second indication to the second UPF. Accordingly, the second UPF receives the second indication from the CMF. (See Figure 5A.) Alternatively, S503 may be replaced by the CMF sending the second indication and the code of the first function to the second UPF. Accordingly, the second UPF receives the second indication and the code of the first function from the CMF. (See Figure 5B.)
[0137] Because the second UPF supports the first function, the CMF may send the second indication information corresponding to the code of the first function to the second UPF. If the CMF implements the embodiment shown in FIG3A , and the policy information obtained by the CMF includes a correspondence between at least one indication information and at least one DNAI, for example, the at least one indication information includes second indication information, and the at least one DNAI includes a second DNAI corresponding to the second indication information, then in S503, the CMF may send the second indication information to the second UPF instead of sending the code of the first function.
[0138] Alternatively, if the CMF executes the embodiment shown in FIG3B , the policy information obtained by the CMF includes a correspondence between the code of at least one function, at least one indication information, and at least one DNAI. For example, the at least one indication information includes second indication information, the at least one DNAI includes a second DNAI corresponding to the second indication information, and the code of the at least one function includes the code of the first function corresponding to the second indication information. In S503, the CMF may send the second indication information and the code of the first function to the second UPF. For details about these correspondences and other matters, please refer to the description of the embodiment shown in FIG3A or FIG3B .
[0139] Optionally, the CMF may execute S503 during the process of establishing an N4 session with the second UPF. For example, in S503 of Figure 5A or 5B, the CMF may send a message to the second UPF requesting to establish an N4 session. The message may include second indication information, or include the second indication information and the code of the first function.
[0140] If the CMF sends the second indication information and the code of the first function to the second UPF in S503 (refer to Figure 5B), the second UPF has already obtained the code of the first function, and the second UPF can store the second indication information and the code of the first function. Alternatively, if the CMF sends the second indication information to the second UPF in S503 but does not send the code of the first function (refer to Figure 5A), the second UPF can further obtain the code of the first function based on the second indication information (for example, the code of the first function can be obtained according to S504 in Figure 5A, and for S504, refer to S307 of the embodiment shown in Figure 3A). At this time, the second indication information from the CMF can be regarded as triggering the acquisition of the code of the first function. For more information about this part, refer to S306 and S307 in the embodiment shown in Figure 3A.
[0141] Optionally, after obtaining the code of the first function through S503 or S504, the second UPF can store the correspondence (or association) between the code of the first function and the information of the UE. For this part of the content, please refer to the embodiment shown in Figure 3A or Figure 3B.
[0142] In addition, when the CMF selects the second UPF as the new computing node for the UE, the CMF may further trigger the first UPF to migrate the UE's context information to the second UPF. For example, the CMF sends a context migration request to the first UPF. The context migration request may carry the IP address of the UE and the IP address of the second UPF. After receiving the context migration request, the first UPF may send the status information of the UE's computing task to the second UPF. For example, the first UPF may send the UE's context information to the second UPF. The UE's context information may include the status information of the UE's computing task.
[0143] Optionally, the method may further include S505 shown in Figure 5A or Figure 5B, where the CMF sends a path switching response to the first network device, and accordingly, the first network device receives the path switching response from the CMF. The path switching response may be used to indicate that the path switching is successful.
[0144] The method may also include S506 shown in Figure 5A or Figure 5B, in which the UE sends a request 6 to the second UPF, and accordingly, the second UPF receives the request 6 from the UE. In the embodiment of the present application, because the second UPF is a computing node, the request 6 can be sent to the second UPF. The request 6 can be used to access the first function, or to request the execution of the computing task to which the first function belongs. For example, the request 6 is an HTTP request. The request 6, for example, includes first indication information, and the first indication information can be used to determine the code of the first function. Optionally, the first indication information and the second indication information can be the same information, for example, both are URLs corresponding to the code of the first function.
[0145] After receiving request 6, the second UPF can execute S507 shown in Figure 5A or Figure 5B, run the code of the first function according to the first indication information, and process request 6. After receiving request 6, the second UPF can call the code of the first function according to the first indication information, thereby executing the first function, or executing the computing task to which the first function belongs. For example, after receiving request 6, the second UPF can execute the cold start process shown in Figure 1, including the steps of starting the function instance container, runtime initialization, and code initialization (the code download step included in the cold start process shown in Figure 1 has been completed). When the cold start is completed, the function instance is ready, and the second UPF can start executing request 6.
[0146] Optionally, the method may further include S508 shown in FIG. 5A or FIG. 5B , where the second UPF sends response information to the UE, for example, response 3, and the UE receives response 3 from the second UPF. Response 3 may be, for example, HTTP response information, which may be a response to request 6. For example, response 3 includes a processing result of the second UPF for the first function (or for the computing task to which the first function belongs).
[0147] Through the method described above, the second UPF stores the code of the first function. If no UE requests access to the first function, the first UPF may also release the code of the first function to save storage space of the second UPF. Optionally, the method may also include S509 and S510 shown in Figure 5A or Figure 5B. In S509, the first session of the UE is released. For example, the release of the first session of the UE may be triggered by the UE or the network side. In S510, the CMF sends a first release indication to the first UPF, and accordingly, the first UPF receives the first release indication from the CMF. The first release indication may indicate the release of the first session of the UE.
[0148] Optionally, the method may further include S511 shown in FIG5A or FIG5B , where the second UPF releases the code of the first function. S511 occurs, for example, after S510. For more details about S511, please refer to S314 of the embodiment shown in FIG3A or FIG3B .
[0149] In addition, since the session of the UE has been switched to the second UPF, the first UPF no longer maintains the session of the UE. Therefore, optionally, the method may also include S512 shown in Figure 5A or Figure 5B, in which the CMF sends a second release indication to the first UPF, and accordingly, the first UPF receives the second release indication from the CMF. S512 occurs, for example, after S505. The second release indication can be used to indicate the release of the N4 session with the UE, for example, the second release indication carries the identifier of the N4 session. After receiving the second release indication, the first UPF can release the N4 session. In addition, optionally, the method may also include S513 shown in Figure 5A or Figure 5B, in which the first UPF releases the code of the first function. For example, the first UPF may release the code of the first function when there is no session for accessing the first function. For this process, please refer to S314 in the embodiment shown in Figure 3A or Figure 3B.
[0150] In an embodiment of the present application, even in the scenario where the UE is moving, the new UPF can first obtain the code of the first function before receiving the request for accessing the first function, so that there is no need to perform the code download process after receiving the request, such as executing the process after the code download included in the cold start, thereby greatly reducing the delay of function calculation and improving the efficiency of function calculation.
[0151] In the embodiment shown in any of Figures 3A, 3B, 5A, or 5B, the computing node is a UPF. In addition, the computing node may not be a UPF, but a server used for computing, for example, the computing node and the UPF are connected via an N6 interface. In this scenario, the computing node and the UPF are decoupled, or it can be understood that the computing node and the UPF are loosely coupled. For this reason, the embodiment of the present application provides a third communication method, in which the computing node is not a UPF, but it can also reduce the latency of function calculation. Please refer to Figure 6A or Figure 6B for a flowchart of this method. In the embodiment shown in Figure 6A or Figure 6B, take the example of a computing node that is not a UPF, a second network element that is a database or PCF, and a first network element that is a CMF.
[0152] S601: AF sends request 1 to the second network element. Correspondingly, the second network element receives request 1 from AF. This request 1 may also be referred to as a third request.
[0153] Request 1 may include a correspondence (or association) between at least one function code and at least one indication information, where the function (or function code) and the indication information may correspond one-to-one, and one indication information may be used to determine the corresponding function code. For example, if the indication information corresponding to the first function (or the first function code) is the second indication information, and Request 1 may include a correspondence between the first function code and the second indication information (i.e., the at least one function code includes the first function code, and the at least one indication information includes the second indication information), then the second indication information may be used to determine the first function code.
[0154] Optionally, if the second network element is a database (see FIG6A ), Request 1 may be used to store a correspondence between the code of at least one function and at least one indication information in the database. After receiving Request 1, the database may reply to the AF with response information, such as Response 1. Response 1 may be used to indicate that Request 1 was successfully received, or that the correspondence was successfully stored.
[0155] Alternatively, if the second network element is a PCF (see Figure 6B), the correspondence included in request 1 may specifically include the correspondence between the code of at least one function, at least one indication information, and at least one location information. The location information may be the deployment location of the function corresponding to the code of at least one function. For example, one location information can be represented by a DNAI, that is, the correspondence may be the correspondence between the code of at least one function, at least one indication information, and at least one DNAI. The code of at least one function includes the code of the first function, the at least one indication information includes the second indication information, and the at least one DNAI includes the code of the first function and one or more DNAIs corresponding to the second indication information.
[0156] Optionally, if the second network element is a PCF, request 1 may also include DNN or S-NSSAI, etc., without limitation.
[0157] For more details about S601 , please refer to S301 in the embodiment shown in FIG. 3A or FIG. 3B .
[0158] If the second network element is a database, the method may optionally further include S602 shown in FIG6A , where the AF sends Request 2 to the PCF, and the PCF accordingly receives Request 2 from the AF. Request 2 may also be referred to as a fourth request. Request 2 may include a correspondence between at least one indication information and at least one piece of location information, wherein the at least one indication information includes second indication information, and the at least one piece of location information includes one or more DNAIs corresponding to the second indication information. For details about this correspondence, please refer to the above description.
[0159] Regardless of whether the second network element is a database or a PCF, the method may optionally further include S603 shown in FIG. 6A or FIG. 6B . S603 may occur after S601 or after S602. In S603, the UE initiates a session establishment process. For example, the UE sends a session establishment request message to the CMF, indicating that the UE initiates the session establishment process. This session is, for example, referred to as a first session, which may be, for example, a PDU session, or may be another type of session. Optionally, the session establishment request message may carry, for example, a DNN or S-NSSAI corresponding to the location of the UE.
[0160] Optionally, the method may further include S604, as shown in FIG6A or FIG6B , in which the CMF receives policy information from the PCF. For example, S604 may include S604a and S604b. In S604a, the CMF may send a request, such as Request 3, to the PCF, requesting policy information. After receiving Request 3, the PCF may send the policy information to the CMF in S604b. For more information about S604, please refer to S304 in the embodiment shown in FIG3A or FIG3B .
[0161] After the CMF receives the policy information, it may optionally execute S605 shown in FIG6A or FIG6B. In S605, the CMF determines the UPF for the UE. For example, if the CMF determines that the current location information of the UE corresponds to the first DNAI (or, the CMF determines that the UE can access the first DNAI in the current location information), and the CMF determines that the computing task is deployed in the area indicated by the first DNAI, the CMF may select the UPF corresponding to the first DNAI, such as the first UPF, and the first UPF is, for example, the UPF corresponding to the area indicated by the first DNAI. Alternatively, S605 may be replaced by the CMF determining a computing node for the UE. For example, if the CMF determines that the current location information of the UE corresponds to the first DNAI (or, the CMF determines that the UE can access the first DNAI in the current location information), and the CMF determines that the computing task is deployed in the area indicated by the first DNAI, the CMF may select the computing node corresponding to the first DNAI where the computing task is deployed, for example, the CMF selects the first computing node. The first computing node, for example, supports the first function, or the first computing node deploys the computing task to which the first function belongs. Alternatively, S605 may be replaced by the CMF determining a UPF and a computing node for the UE, for example, selecting the first UPF and the first computing node. For more details about S605, please refer to S305 in the embodiment shown in FIG3A or FIG3B.
[0162] If the policy information includes a correspondence between at least one indication information received by the PCF from the AF and at least one DNAI, the at least one indication information may include second indication information, and the at least one DNAI may include a first DNAI corresponding to the second indication information; or, if the policy information includes a correspondence between at least one function code received by the PCF from the AF, at least one indication information, and at least one DNAI, the at least one indication information may include second indication information, the at least one DNAI may include a first DNAI corresponding to the second indication information, and the at least one function code may include a code of the first function corresponding to the second indication information. After determining the first UPF, the method may optionally further include S606 as shown in FIG. 6A or FIG. 6B . In S606, the CMF sends the second indication information to the first UPF, and accordingly, the first UPF receives the second indication information from the CMF. See FIG. 6A . Alternatively, in S606, the CMF sends the second indication information and the code of the first function to the first UPF, and accordingly, the first UPF receives the second indication information and the code of the first function from the CMF. See FIG. 6B . Alternatively, if the CMF selects a first computing node for the UE, S606 in Figure 6A can be replaced by the CMF sending a second indication message to the first computing node, and accordingly, the first computing node receives the second indication message from the CMF; or S606 in Figure 6B can be replaced by the CMF sending a second indication message and the code of the first function to the first computing node, and accordingly, the first computing node receives the second indication message and the code of the first function from the CMF. This method can be understood as the first computing node obtaining the code of the first function based on the UE's session establishment request message (or, based on the establishment process of the first session). S606 in Figure 6A or Figure 6B can be understood as being executed in the establishment process of the first session.
[0163] If the CMF sends the second indication information to the first UPF, then optionally, the method may also include S607 shown in Figure 6A, where the first UPF sends the second indication information to the first computing node. Alternatively, if the CMF sends the second indication information and the code of the first function to the first UPF, then optionally, the method may also include S607 shown in Figure 6B, where S607 includes the first UPF sending the second indication information and the code of the first function to the first computing node. This method can be understood as the first computing node obtaining the code of the first function based on the UE's session establishment request message (or based on the establishment process of the first session). Alternatively, if the CMF sends the second indication information to the first computing node, or sends the second indication information and the code of the first function, it is not necessary to execute S607.
[0164] Optionally, the first computing node may initiate a subscription process to the first UPF in advance, for example, the first computing node sends a subscription request to the first UPF, and the subscription request may be used to indicate that when a session establishment event and / or release event for accessing the first computing task (or, the first function) occurs, the first UPF should notify the first computing node. The subscription process occurs, for example, before S607, and there is no limit on the specific time of occurrence, for example, it occurs before S601, etc. If the first computing node subscribes, then in S607, the first UPF may send a subscription notification message to the first computing node, and the subscription notification message includes the second indication information, or includes the second indication information and the code of the first function. Alternatively, the first computing node does not need to subscribe, and the first UPF may actively execute S607.
[0165] If the CMF sends the second indication information and the code of the first function to the first computing node in S606, or if the first UPF sends the second indication information and the code of the first function to the first computing node in S607, the first computing node has already obtained the code of the first function, and the first computing node can store the second indication information and the code of the first function. Alternatively, if the CMF sends the second indication information to the first computing node in S606 but does not send the code of the first function, or if the first UPF sends the second indication information to the first computing node in S607 but does not send the code of the first function, the first computing node can further obtain the code of the first function based on the second indication information, for example, by obtaining the code of the first function through S608 shown in Figure 6A. In this case, the second indication information from the CMF can be regarded as triggering the acquisition of the code of the first function. This method can also be understood as the first computing node obtaining the code of the first function based on the UE's session establishment request message (or based on the establishment process of the first session). For more information about S608, please refer to S307 in the embodiment shown in Figure 3A.
[0166] Optionally, after obtaining the code of the first function through S606 or S607 or S608, the first computing node can store the correspondence (or association) between the code of the first function and the information of the UE. For more information about this step, please refer to the introduction of storing the correspondence in the first UPF in the embodiment shown in Figure 3A or Figure 3B.
[0167] Optionally, the method may further include S609 shown in Figure 6A or Figure 6B, where the CMF sends a session establishment accept message to the UE. After the first session of the UE is established, the CMF may send a session establishment accept message to the UE.
[0168] After S609, the method may further include S610 shown in FIG6A or 6B, in which the UE sends a request 5 to the first computing node, and accordingly, the first computing node receives the request 5 from the UE. The UE may send the request 5 to the first UPF through the established first session, and the first UPF may also receive the request 5 through the first session. For example, it is understood that after obtaining the code of the first function, the first computing node receives the request 5 through the first session. The request 5 may also be referred to as a first request, which may be used to access the first function or to request the execution of the computing task to which the first function belongs. For example, the request 5 is an HTTP request. The request 5, for example, includes first indication information, which may be used to determine the code of the first function. Optionally, the first indication information and the second indication information may be the same information, for example, both may be URLs corresponding to the code of the first function.
[0169] After receiving request 5, the first computing node can execute S611 shown in Figure 6A or Figure 6B, run the code of the first function according to the first indication information, and process request 5. After receiving request 5, the first UPF can call the code of the first function according to the first indication information, thereby executing the first function, or executing the computing task to which the first function belongs. For example, after receiving request 5, the first computing node can execute the cold start process shown in Figure 1, including the steps of starting the function instance container, runtime initialization, and code initialization (the code download step included in the cold start process shown in Figure 1 has been completed). When the cold start is completed, the function instance is ready, and the first computing node can start executing request 5.
[0170] Optionally, the method may further include S612 shown in FIG6A or FIG6B , in which the first computing node sends response information to the UE, for example, referred to as response 2, and the UE receives response 2 from the first computing node. Response 2 is, for example, HTTP response information, which may be a response to request 5. For example, response 2 includes a processing result of the first computing node for the first function (or for the computing task to which the first function belongs).
[0171] Through the method described above, the first computing node stores the code of the first function. If no UE requests access to the first function, the first computing node may also release the code of the first function to save the storage space of the first computing node. Optionally, the method may also include S613 and S614 shown in Figure 6A or Figure 6B. In S613, the first session of the UE is released. For example, the release of the first session of the UE may be triggered by the UE or the network side. In S614, the CMF may directly send a first release indication to the first computing node. Accordingly, the first computing node receives the first release indication from the CMF. The first release indication may indicate the release of the first session of the UE. Alternatively, the CMF may also send a third release indication to the first UPF. After receiving the third release indication, the first UPF may send the first release indication to the first computing node. The third release indication may indicate the release of the first session of the UE.
[0172] Optionally, the method may further include S615 shown in FIG6A or FIG6B , in which the first computing node releases the code of the first function. S615, for example, occurs after S614. For example, after receiving the first release indication, the first computing node may determine whether a session for accessing the first function still exists. If a session for accessing the first function still exists, the first computing node does not need to release the code of the first function, but may continue to store the code of the first function. If a session for accessing the first function does not exist, the first computing node may release the code of the first function. For more information about this step, please refer to S314 in the embodiment shown in FIG3A or FIG3B .
[0173] In an embodiment of the present application, the first computing node may obtain the code of the first function before receiving the first request from the UE, which is equivalent to obtaining the code of the first function before receiving the request for accessing the first function. Therefore, after receiving the first request, there is no need to perform the code download process, such as the process after the code download included in the cold start, thereby greatly reducing the delay of function calculation and improving the efficiency of function calculation.
[0174] The embodiment shown in Figure 6A or Figure 6B involves a scenario where the UE has not moved. In addition, under the loosely coupled architecture of the UPF and the computing node, the UE may also move. When the UE moves from its original location to a new location, if the computing node corresponding to the new location does not store the code of the first function, the computing node still needs to download the code of the first function, which consumes a lot of time. To this end, the embodiment of the present application provides a fourth communication method, through which the delay of function calculation can be reduced even if the UE moves. Please refer to Figure 7A or Figure 7B for a flowchart of this method. In the embodiment shown in Figure 7A or Figure 7B, the example in which the computing node is not a UPF, the second network element is a database or PCF, and the first network element is a CMF is continued. Among them, the first UPF represents the UPF that provides services to the UE before the UE moves, and the second UPF represents the UPF that provides services to the UE after the UE moves.
[0175] S701. A first network device sends a path switching request to a CMF. Accordingly, the CMF receives the path switching request from the first network device. The first network device is, for example, an access network device, referred to as the first access network device, and may be the target access network device after the UE moves. In addition, there is a second network device, which is the network device that served the UE before the UE moved. For example, the second network device is an access network device, referred to as the second access network device. The path switching request may be used to request that the transmission path of the UE be switched to the first network device. That is, after the UE moves, the target access network device of the UE may send the path switching request to the CMF.
[0176] Before S701 , S601 to S612 in the embodiment shown in FIG. 6A or FIG. 6B may be executed, and details thereof will not be repeated.
[0177] S702, CMF determines a second UPF for the UE. For example, when the UE moves from the second network device to the first network device (for example, when the CMF receives a path switching request from the first network device), the CMF determines that the current location information of the UE corresponds to the second DNAI (or, the CMF determines that the UE can access the second DNAI in the current location information), and the CMF determines that the computing task is deployed in the area indicated by the second DNAI, then the CMF can select the UPF corresponding to the second DNAI, such as the second UPF, and the second UPF is, for example, the UPF corresponding to the area indicated by the second DNAI. Or S702 can be replaced by, the CMF determines a computing node for the UE. For example, the CMF determines that the current location information of the UE corresponds to the second DNAI (or, the CMF determines that the UE can access the second DNAI in the current location information), and the CMF determines that the computing task is deployed in the area indicated by the second DNAI, then the CMF can select the computing node corresponding to the second DNAI with the computing task deployed, for example, the second computing node. The second computing node, for example, supports the first function, or deploys the computing task to which the first function belongs. Or S702 can be replaced by, the CMF determines the second UPF and the second computing node for the UE. For more details about S702 , please refer to S305 in the embodiment shown in FIG. 3A or FIG. 3B .
[0178] S703: The CMF sends second indication information to the second UPF. Accordingly, the second UPF receives the second indication information from the CMF. See Figure 7A. Alternatively, S703 may be replaced by the CMF sending the second indication information and the code of the first function to the second UPF. Accordingly, the second UPF receives the second indication information and the code of the first function from the CMF. See Figure 7B. Alternatively, if the CMF selects a second computing node for the UE, S703 may be replaced by the CMF sending the second indication information to the second computing node, or sending the second indication information and the code of the first function.
[0179] If the CMF sends the second indication information to the second UPF (for example, the policy information obtained by the CMF includes a correspondence between at least one indication information and at least one DNAI, for example, the at least one indication information includes the second indication information, and the at least one DNAI includes a second DNAI corresponding to the second indication information), then optionally, the method may further include S704 shown in FIG7A , where the second UPF sends the second indication information to the second computing node. Alternatively, if the CMF sends the second indication information and the code of the first function to the second UPF (for example, the policy information obtained by the CMF includes a correspondence between the code of at least one function, at least one indication information, and at least one DNAI, for example, the at least one indication information includes the second indication information, the at least one DNAI includes the second DNAI corresponding to the second indication information, and the code of the at least one function includes the code of the first function corresponding to the second indication information), then optionally, the method may also include S704 shown in FIG7B , where S704 includes the second UPF sending the second indication information and the code of the first function to the second computing node. Alternatively, if the CMF sends the second indication information or the second indication information and the code of the first function to the second computing node, S704 does not need to be executed.
[0180] Optionally, the second computing node may initiate a subscription process to the second UPF in advance. In S704, the second UPF may send a second indication message to the second computing node based on the subscription, or include the second indication message and the code of the first function. For this process, please refer to the relevant introduction of the embodiment shown in Figure 6A or Figure 6B.
[0181] If the CMF sends the second indication information and the code of the first function to the second computing node in S703 (see Figure 7B), or if the second UPF sends the second indication information and the code of the first function to the second computing node in S704 (see Figure 7B), then the second computing node has already obtained the code of the first function, and the second computing node can store the second indication information and the code of the first function. Alternatively, if the CMF sends the second indication information to the second computing node in S703 but does not send the code of the first function (see Figure 7A), or if the second UPF sends the second indication information to the second computing node in S704 but does not send the code of the first function (see Figure 7A), then the second computing node can further obtain the code of the first function based on the second indication information, for example, by obtaining the code of the first function through S705 shown in Figure 7A. At this time, the second indication information from the CMF can be regarded as triggering the acquisition of the code of the first function. For more information about S705, please refer to S307 in the embodiment shown in Figure 3A.
[0182] Optionally, after obtaining the code of the first function through S703 or S704 or S705, the second computing node can store the correspondence (or association) between the code of the first function and the information of the UE. For more information about this step, please refer to the introduction of storing the correspondence in the first UPF in the embodiment shown in Figure 3A or Figure 3B.
[0183] Optionally, the method may further include S706 shown in Figure 7A or Figure 7B, where the CMF sends a path switching response to the first network device, and accordingly, the first network device receives the path switching response from the CMF. The path switching response may be used to indicate that the path switching is successful.
[0184] The method may also include S707 shown in Figure 7A or Figure 7B, in which the UE sends a request 7 to the second computing node, and accordingly, the second computing node receives the request 7 from the UE. The request 7 may also be referred to as a first request. The request 7 may be used to access the first function, or to request execution of a computing task to which the first function belongs. For example, the request 7 is an HTTP request. The request 7, for example, includes first indication information, and the first indication information may be used to determine the code of the first function, for example, the first indication information includes information for determining the code of the first function. Optionally, the first indication information and the second indication information may be the same information, for example, both being URLs corresponding to the code of the first function.
[0185] After receiving request 7, the second computing node can execute S708 shown in Figure 7A or Figure 7B, run the code of the first function according to the first indication information, and process request 7. After receiving request 7, the first UPF can call the code of the first function according to the first indication information, thereby executing the first function, or executing the computing task to which the first function belongs. For example, after receiving request 7, the second computing node can execute the cold start process shown in Figure 1, including the steps of starting the function instance container, runtime initialization, and code initialization (the code download step included in the cold start process shown in Figure 1 has been completed). When the cold start is completed, the function instance is ready, and the second computing node can start executing request 7.
[0186] Optionally, the method may further include S709 shown in FIG. 7A or FIG. 7B , in which the second computing node sends response information to the UE, for example, response 4, and the UE receives response 4 from the second computing node. Response 4 may be, for example, HTTP response information, which may be a response to request 7. For example, response 4 includes a processing result of the second computing node for the first function (or for the computing task to which the first function belongs).
[0187] Through the method described above, the second computing node stores the code of the first function. If no UE requests access to the first function, the second computing node may also release the code of the first function to save storage space of the second computing node. Optionally, the method may also include S710 and S711 shown in Figure 7A or Figure 7B. In S710, the first session of the UE is released. For example, the release of the first session of the UE may be triggered by the UE or the network side. In S711, the CMF may directly send a first release indication to the second computing node, and accordingly, the second computing node receives the first release indication from the CMF. The first release indication may indicate the release of the first session of the UE. Alternatively, the CMF may also send a third release indication to the second UPF. After receiving the third release indication, the second UPF may send the first release indication to the second computing node. The third release indication may indicate the release of the first session.
[0188] Optionally, the method may further include S712 shown in FIG7A or FIG7B , where the second computing node releases the code of the first function. S712 occurs, for example, after S711. For more details about S712, please refer to S314 of the embodiment shown in FIG3A or FIG3B .
[0189] In addition, since the session of the UE has been switched to the second UPF, the first UPF no longer maintains the session of the UE. Therefore, optionally, the method may also include S713 shown in Figure 7A or Figure 7B, where the CMF sends a second release indication to the first UPF, and accordingly, the first UPF receives the second release indication from the CMF. The second release indication can be used to indicate the release of the N4 session between the UE, for example, the second release indication carries the identifier of the N4 session. After receiving the second release indication, the first UPF can release the N4 session. In addition, optionally, after receiving the second release indication, the first UPF can also execute S714 shown in Figure 7A or Figure 7B, where the first UPF sends an indication message to the first computing node, for example, referred to as indication message 1, which may indicate that the session used by the UE to access the first function has been released. The indication message 1 may be a second release indication, or it may be an indication message generated based on the second release indication. After the first computing node receives indication information 1, if it determines that there is no session for accessing the first function, it can execute S715 shown in Figure 7A or Figure 7B to release the code of the first function. For this process, please refer to S314 in the embodiment shown in Figure 3A or Figure 3B. Alternatively, S713 can be replaced by the CMF sending a second release indication to the first computing node, or in S713, the CMF sends a second release indication to the first computing node and the first UPF respectively, then S714 does not need to be executed. After the first computing node receives the second release indication, if it determines that there is no session for accessing the first function, it can execute S715. Alternatively, S714 can be replaced by the CMF sending indication information 1 to the first computing node. After the first computing node receives the second release indication, if it determines that there is no session for accessing the first function, it can execute S715.
[0190] In an embodiment of the present application, under the loosely coupled architecture of the computing node and the UPF, even in the scenario where the UE moves, the new computing node can first obtain the code of the first function before receiving the request for accessing the first function, so that after receiving the request, there is no need to perform the code download process, such as the process after the code download included in the cold start, thereby greatly reducing the delay of function calculation and improving the efficiency of function calculation.
[0191] In the aforementioned embodiments, the storage and release of function codes are both related to the UE. For example, the function codes are stored in the computing node during the UE session establishment process, and the corresponding function codes are released when the UE session is released. In addition, embodiments of the present application provide a fifth communication method in which the storage and release processes of function codes are independent of the UE. Please refer to Figure 8A or Figure 8B for a flowchart of this method. In the embodiments shown in Figure 8A or Figure 8B, for example, the second network element is a database or NEF.
[0192] S801. AF sends request 1 to the second network element. Correspondingly, the second network element receives request 1 from AF. Request 1 may also be referred to as a third request.
[0193] Request 1 may include a correspondence (or association) between the code of at least one function and at least one indication information, where the function (or function code) and the indication information may correspond one-to-one, and one indication information may be used to determine the corresponding function code. For example, if the indication information corresponding to the first function (or the code of the first function) is the second indication information, and Request 1 includes a correspondence between the code of the first function and the second indication information (i.e., the code of the at least one function includes the code of the first function, and the at least one indication information includes the second indication information), then the second indication information may be used to determine the code of the first function.
[0194] Optionally, if the second network element is a database (see FIG8A ), Request 1 may be used to store a correspondence between the code of at least one function and at least one indication information in the database. After receiving Request 1, the database may reply to the AF with response information, such as Response 1. Response 1 may be used to indicate that Request 1 was successfully received, or that the correspondence was successfully stored.
[0195] Alternatively, if the second network element is an NEF (see Figure 8B), the correspondence included in request 1 may specifically include a correspondence between the code of at least one function, at least one indication information, and at least one location information. The location information may be the deployment location of the function corresponding to the code of at least one function. For example, one location information can be represented by a DNAI, that is, the correspondence may be a correspondence between the code of at least one function, at least one indication information, and at least one DNAI. The code of at least one function includes the code of the first function, the at least one indication information includes the second indication information, and the at least one DNAI includes the code of the first function and one or more DNAIs corresponding to the second indication information.
[0196] For more details about S801 , please refer to S301 in the embodiment shown in FIG. 3A or FIG. 3B .
[0197] If the second network element is a database, the method may optionally further include S802 shown in Figure 8A , where the AF sends Request 2 to the NEF, and the NEF receives Request 2 from the AF. Request 2 may also be referred to as a fourth request. Request 2 may include a correspondence between at least one indication information and at least one piece of location information, where the at least one indication information includes second indication information, and the at least one piece of location information includes one or more DNAIs corresponding to the second indication information. For details about this correspondence, refer to the above description.
[0198] Regardless of whether the second network element is an NEF or a database, the method optionally further includes S803 shown in FIG8A or FIG8B , in which the NEF sends a discovery request to the NRF. Accordingly, the NRF receives the discovery request from the NEF. The discovery request may be used to discover the computing node corresponding to the location information where the computing task is deployed. Optionally, the discovery request may include the location information where the computing task is deployed, such as represented by a DNAI. Optionally, the discovery request may include a DNN or S-NSSAI.
[0199] Optionally, the method further includes S804 shown in FIG8A or FIG8B , in which the NRF sends information about at least one computing node to the NEF. Accordingly, the NEF receives the information about the at least one computing node from the NRF. For example, after receiving the discovery request, the NRF can determine which computing nodes corresponding to the DNAI have computing tasks (which may include any computing tasks) deployed therein, and the NRF can then send the information about these computing nodes to the NEF. Optionally, the information about a computing node includes, for example, an identifier of the computing node and / or address information of the computing node. The at least one computing node includes, for example, a computing node such as a UPF and / or a server.
[0200] Optionally, the method may further include S805 shown in FIG8A or FIG8B . After receiving information about at least one computing node, the NEF may send a request 8 to some or all of the at least one computing node. Accordingly, each of the at least one computing node receives request 8. Request 8 may also be referred to as a fifth request. Request 8 sent by the NEF to a computing node may include indication information corresponding to all or some of the functions corresponding to the computing tasks deployed within the computing node. Requests 8 received by different computing nodes may include the same or different content. For example, if at least one computing node includes computing node 1, computing task 1 is deployed within computing node 1, and computing task 1 corresponds to a first function, then request 8 sent by the NEF to computing node 1 may include second indication information corresponding to the code of the first function. For another example, if at least one computing node includes computing node 2, computing task 1 is not deployed within computing node 2, and the functions corresponding to the computing tasks deployed within computing node 2 do not include the first function, then request 8 sent by the NEF to computing node 2 may not include the second indication information corresponding to the code of the first function. If the NEF obtains a correspondence between at least one indication information and at least one location information through S802 (see FIG8A ), the request 8 sent by the NEF may include the indication information but not the function code; or if the NEF obtains a correspondence between at least one indication information, at least one function code, and at least one location information through S801 (see FIG8B ), the request 8 sent by the NEF may include the indication information and the function code. For example, at least one computing node includes computing node 1, computing node 1 has computing task 1 deployed therein, and computing task 1 corresponds to a first function. If the NEF obtains a correspondence between at least one indication information and at least one location information through S802 shown in FIG8A (the at least one indication information includes second indication information), the request 8 sent by the NEF to computing node 1 may include second indication information corresponding to the first function code; or if the NEF obtains a correspondence between at least one indication information, at least one function code, and at least one location information through S801 shown in FIG8B (the at least one indication information includes second indication information), the request 8 sent by the NEF to computing node 1 may include the second indication information and the first function code.
[0201] Optionally, after receiving the indication information from the NEF, or receiving the indication information and the function code, the computing node may send a response message to the NEF to indicate successful information reception.
[0202] If the NEF sends the instruction information and the function code to the computing node in S805, the corresponding computing node has already obtained the function code corresponding to the computing task deployed by the computing node, and the computing node can store the instruction information corresponding to the function code and the function code. Alternatively, if the NEF sends the instruction information to the computing node in S805 but does not send the function code, the corresponding computing node can further obtain the function code based on the instruction information (for example, the function code can be obtained according to S806 shown in Figure 8A, and S806 can refer to S307 of the embodiment shown in Figure 3A). In this case, the instruction information from the NEF can be regarded as triggering the acquisition of the function code. For more information on this part, please refer to S306 and S307 in the embodiment shown in Figure 3A.
[0203] After obtaining the code of the corresponding function, the computing node can store it. If the computing task or function deployed by the computing node is called, the code of the function can be directly called to execute the function, or execute the computing task to which the function belongs. For example, after a computing node receives a request for access to a function or a computing task, it can execute the cold start process shown in Figure 1, including the steps of starting the function instance container, runtime initialization, and code initialization (the code download step included in the cold start process shown in Figure 1 has been completed). When the cold start is completed, the function instance is ready, and the computing node can start executing the request.
[0204] In an embodiment of the present application, a computing node can obtain the code of a function before receiving a request to access the function. Thus, after receiving the request, it is not necessary to perform the code download process again. For example, the process after the code download included in the cold start can be performed. This greatly reduces the delay of function calculation and improves the efficiency of function calculation. In addition, the embodiment of the present application decouples the process of obtaining the function code in advance from the behavior of the UE, so that the function code can be obtained earlier, which is conducive to reducing the signaling transmission process during the UE session establishment process and improving the efficiency of the UE in establishing the session.
[0205] FIG9 shows a schematic diagram of the structure of a communication device provided in an embodiment of the present application. The communication device 900 may be the first UPF or the circuit system of the first UPF described in any of the embodiments shown in FIG3A, FIG3B, FIG5A, or FIG5B, for implementing the method corresponding to the first UPF in the above method embodiment. Alternatively, the communication device 900 may be the second UPF or the circuit system of the second UPF described in any of the embodiments shown in FIG5A or FIG5B, for implementing the method corresponding to the second UPF in the above method embodiment. Alternatively, the communication device 900 may be the first computing node or the circuit system of the first computing node described in any of the embodiments shown in FIG6A, FIG6B, FIG7A, or FIG7B, for implementing the method corresponding to the first computing node in the above method embodiment. Alternatively, the communication device 900 may be the second computing node or the circuit system of the second computing node described in any of the embodiments shown in FIG7A or FIG7B, for implementing the method corresponding to the second computing node in the above method embodiment. Alternatively, the communication device 900 may be the CMF or the circuit system of the CMF as described in any of the embodiments shown in Figures 3A, 3B, 5A, 5B, 6A, 6B, 7A, or 7B, for implementing the method corresponding to the CMF in the above-mentioned method embodiments. Alternatively, the communication device 900 may be the database or the circuit system of the database as described in any of the embodiments shown in Figures 3A, 5A, 6A, or 7A, for implementing the method corresponding to the database in the above-mentioned method embodiments. Alternatively, the communication device 900 may be the AF or the circuit system of the AF as described in any of the embodiments shown in Figures 3A, 3B, 5A, 5B, 6A, 6B, 7A, 7B, 8A, or 8B, for implementing the method corresponding to the AF in the above-mentioned method embodiments. Alternatively, the communication device 900 may be the NEF or the circuit system of the NEF as described in any of the embodiments shown in Figures 8A or 8B, for implementing the method corresponding to the NEF in the above-mentioned method embodiments. For example, one circuit system is a chip system.
[0206] The communication device 900 includes at least one processor 901. Processor 901 can be used for internal processing of the device to implement certain control processing functions. Optionally, processor 901 includes instructions. Optionally, processor 901 can store data. Optionally, different processors can be independent devices, located in different physical locations, or on different integrated circuits. Optionally, different processors can be integrated into one or more processors, for example, on one or more integrated circuits.
[0207] Optionally, the communication device 900 includes one or more memories 903 for storing instructions. Optionally, data may also be stored in the memories 903. The processor and memory may be provided separately or integrated together.
[0208] Optionally, the communication device 900 includes a communication line 902 and at least one communication interface 904. Since the memory 903, the communication line 902 and the communication interface 904 are all optional, they are indicated by dotted lines in FIG9 .
[0209] Optionally, the communication device 900 may further include a transceiver and / or an antenna. The transceiver may be used to send information to or receive information from other devices. The transceiver may be referred to as a transceiver, a transceiver circuit, an input / output interface, etc., and is used to implement the transceiver function of the communication device 900 through the antenna. Optionally, the transceiver includes a transmitter and a receiver. For example, the transmitter may be used to generate a radio frequency signal from a baseband signal, and the receiver may be used to convert the radio frequency signal into a baseband signal.
[0210] The processor 901 may include a general-purpose central processing unit (CPU), a microprocessor, an application specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of the program of the present application.
[0211] Communication link 902 may include a pathway for transmitting information between the aforementioned components.
[0212] The communication interface 904 uses any transceiver or other device for communicating with other devices or communication networks, such as Ethernet, radio access network (RAN), wireless local area network (WLAN), wired access network, etc.
[0213] The memory 903 may be a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a random access memory (RAM) or other type of dynamic storage device that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, an optical disc storage (including a compact disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 903 may exist independently and be connected to the processor 901 via the communication line 902. Alternatively, the memory 903 may be integrated with the processor 901.
[0214] The memory 903 is used to store computer-executable instructions for executing the solution of the present application, and the execution is controlled by the processor 901. The processor 901 is used to execute the computer-executable instructions stored in the memory 903, thereby implementing the steps performed by the computing node, the first computing node, the second computing node, the CMF, the AF, the database, or the NEF in the embodiments shown in any one of Figures 3A, 3B, 5A, 5B, 6A, 6B, 7A, 7B, 8A, or 8B.
[0215] Optionally, the computer-executable instructions in the embodiments of the present application may also be referred to as application code, which is not specifically limited in the embodiments of the present application.
[0216] In a specific implementation, as an embodiment, the processor 901 may include one or more CPUs, such as CPU0 and CPU1 in FIG. 9 .
[0217] In a specific implementation, as an embodiment, the communication device 900 may include multiple processors, such as the processor 901 and the processor 905 in FIG9 . Each of these processors may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. The processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).
[0218] When the device shown in FIG9 is a chip, such as a chip for a computing node, a chip for a first computing node, a chip for a second computing node, a chip for a CMF, a chip for an AF, a chip for a database, or a chip for an NEF, the chip includes a processor 901 (and may also include a processor 905), a communication circuit 902, and a communication interface 904. Optionally, the chip may include a memory 903. Specifically, the communication interface 904 may be an input interface, a pin, or a circuit. The memory 903 may be a register, a cache, or the like. The processor 901 and the processor 905 may be a general-purpose CPU, a microprocessor, an ASIC, or one or more integrated circuits for controlling the execution of a program of the communication method of any of the above embodiments.
[0219] In the embodiment of the present application, the functional modules of the device can be divided according to the above method examples. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present application is schematic and is only a logical functional division. There may be other division methods in actual implementation. For example, in the case of dividing each functional module according to each function, Figure 10 shows a schematic diagram of a device. The device 1000 can be a computing node, a first computing node, a second computing node, a CMF, an AF, a database, or a NEF involved in the above method embodiments, or the device 1000 can be a chip in a computing node, a chip in a first computing node, a chip in a second computing node, a chip in a CMF, a chip in an AF, a chip in a database, or a chip in a NEF involved in the above method embodiments. The device 1000 includes a sending unit 1001, a processing unit 1002, and a receiving unit 1003.
[0220] It should be understood that the device 1000 can be used to implement the steps performed by the computing node, the first computing node, the second computing node, the CMF, the AF, the database, or the NEF in the communication method of the embodiment of the present application. The relevant features can refer to the embodiments shown in any of Figures 3A, 3B, 5A, 5B, 6A, 6B, 7A, 7B, 8A or 8B above, and will not be repeated here.
[0221] Optionally, the functions / implementation processes of the sending unit 1001, the receiving unit 1003, and the processing unit 1002 in FIG10 may be implemented by the processor 901 in FIG9 calling computer-executable instructions stored in the memory 903. Alternatively, the functions / implementation processes of the processing unit 1002 in FIG10 may be implemented by the processor 901 in FIG9 calling computer-executable instructions stored in the memory 903, and the functions / implementation processes of the sending unit 1001 and the receiving unit 1003 in FIG10 may be implemented by the communication interface 904 in FIG9.
[0222] Optionally, when the device 1000 is a chip or a circuit, the functions / implementation processes of the sending unit 1001 and the receiving unit 1003 can also be implemented through pins or circuits.
[0223] The present application also provides a computer-readable storage medium, which stores a computer program or instruction. When the computer program or instruction is executed, the method performed by the computing node, the first computing node, the second computing node, the CMF, the AF, the database, or the NEF in the above-mentioned method embodiment is implemented. In this way, the functions described in the above embodiments can be implemented in the form of software functional units and sold or used as independent products. Based on this understanding, the technical solution of the present application can be essentially or in other words, the part that contributes or the part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a ROM, a RAM, a magnetic disk, or an optical disk.
[0224] The present application also provides a computer program product, which includes: computer program code, which, when executed on a computer, enables the computer to execute the method performed by the computing node, the first computing node, the second computing node, the CMF, the AF, the database, or the NEF in any of the aforementioned method embodiments.
[0225] An embodiment of the present application also provides a processing device, including a processor and an interface; the processor is used to execute the method performed by the computing node, first computing node, second computing node, CMF, AF, database, or NEF involved in any of the above method embodiments.
[0226] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. 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 includes one or more available media integrations. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)).
[0227] The various illustrative logic units and circuits described in the embodiments of the present application can be implemented or operated by a general-purpose processor, a digital signal processor (DSP), an ASIC, a field-programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof. The general-purpose processor can be a microprocessor, and optionally, the general-purpose processor can also be any conventional processor, controller, microcontroller or state machine. The processor can also be implemented by a combination of computing devices, such as a digital signal processor and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a digital signal processor core, or any other similar configuration.
[0228] The steps of the methods or algorithms described in the embodiments of the present application can be directly embedded in hardware, software units executed by a processor, or a combination of the two. The software unit can be stored in RAM, flash memory, ROM, erasable programmable read-only memory (EPROM), EEPROM, registers, hard disks, removable disks, CD-ROMs, or other storage media in any form known in the art. Exemplarily, the storage medium can be connected to the processor so that the processor can read information from the storage medium and write information to the storage medium. Alternatively, the storage medium can also be integrated into the processor. The processor and storage medium can be provided in an ASIC, which can be provided in a terminal device. Alternatively, the processor and storage medium can also be provided in different components in the terminal device.
[0229] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.
[0230] The contents of the various embodiments of this application can refer to each other. If there is no special explanation and logical conflict, the terms and / or descriptions between different embodiments are consistent and can be referenced to each other. The technical features in different embodiments can be combined to form new embodiments according to their internal logical relationships.
[0231] It is understood that in the embodiments of the present application, the computing node, the first computing node, the second computing node, the CMF, the AF, the database, or the NEF may perform some or all of the steps in the embodiments of the present application. These steps or operations are merely examples. In the embodiments of the present application, other operations or variations of various operations may also be performed. In addition, the various steps may be performed in a different order than those presented in the embodiments of the present application, and it is possible that not all operations in the embodiments of the present application need to be performed.
Claims
1. A communication method, characterized in that: Applied to a computing node, the method comprises: Acquire a code of a first function based on a session establishment request of a terminal device, wherein the session establishment request is used to request establishment of a first session; After acquiring the code of the first function, receiving a first request for accessing the first function from the terminal device through the first session; The code of the first function is run according to the first request to process the first request.
2. The method according to claim 1, characterized in that The first request includes first indication information, and the first indication information is used to determine the code of the first function.
3. The method according to claim 1 or 2, characterized in that: The code for obtaining the first function based on the session establishment request of the terminal device includes: receiving second indication information from a first network element, where the second indication information is used to determine a code of the first function, and the second indication information is received during a process of establishing the first session; Sending a second request to a second network element, where the second request includes the second indication information, where the second request is used to request a code for the first function, and where the second indication information is used by the second network element to determine the code for the first function; Receive code of the first function from the second network element.
4. The method according to claim 1 or 2, characterized in that: The code for obtaining the first function based on the session establishment request of the terminal device includes: Receive second indication information and the code of the first function from a first network element, where the second indication information is used to determine the code of the first function, and the second indication information and the code of the first function are sent by the first network element during the establishment process of the first session.
5. The method according to claim 3 or 4, characterized in that: The first network element includes a computing power management function CMF or a user plane function UPF.
6. The method according to any one of claims 1 to 5, characterized in that: The method further comprises: receiving a first release indication, where the first release indication is used to indicate the release of the first session; Delete the code of the first function.
7. The method according to claim 6, characterized in that Delete the code of the first function, including: When there is no session for accessing the first function, the code of the first function is deleted.
8. The method according to any one of claims 1 to 7, characterized in that: After obtaining the code of the first function based on the session establishment request of the terminal device, the method further includes: A correspondence between the information of the terminal device and the code of the first function is stored, wherein the correspondence is used to indicate that there is a session for the terminal device to access the first function.
9. The method according to claim 8, characterized in that The information of the terminal device includes one or more of an identifier of a session corresponding to the terminal device, an identifier of the terminal device, or address information of the terminal device.
10. The method according to any one of claims 1 to 9, characterized in that: The computing node includes a UPF or a server.
11. A communication method, characterized in that: Applied to a first network element, the method includes: Receiving a session establishment request from a terminal device, wherein the session establishment request is used to request to establish a first session, and the first session is used for the terminal device to access a first function; Determine a first data network access identifier DNAI corresponding to the location information of the terminal device; Determining a first computing node corresponding to the first DNAI, wherein the first computing node supports the first function; Sending second indication information to the first computing node, where the second indication information is used to determine a code of the first function; A session establishment acceptance message is sent to the terminal device, wherein the session establishment acceptance message is used to indicate that the first session establishment is completed, wherein the code of the first function is used to process a request from the terminal device for accessing the first function, and the request for accessing the first function is sent by the terminal device after receiving the session establishment acceptance message.
12. The method according to claim 11, characterized in that The method further comprises: Receive policy information from a policy control function PCF, where the policy information includes a correspondence between the first DNAI and the second indication information.
13. The method according to claim 12, characterized in that The method further comprises: When the terminal device moves from the first access network device to the second access network device, determining the current location of the terminal device The second DNAI corresponding to the information; Determining a second computing node corresponding to the second DNAI, wherein the second computing node supports the first function; The second indication information is sent to the second computing node, wherein the policy information also includes a correspondence between the second DNAI and the second indication information.
14. The method according to claim 11, characterized in that Sending second indication information to the first computing node includes: Send the second indication information and the code of the first function to the first computing node.
15. The method according to claim 14, characterized in that The method further comprises: Receive policy information from PCF, where the policy information includes a correspondence between the code of the first function, the first DNAI, and the second indication information.
16. The method according to claim 15, characterized in that The method further comprises: When the terminal device moves from the first access network device to the second access network device, determining a second DNAI corresponding to the current location information of the terminal device; Determining a second computing node corresponding to the second DNAI, wherein the second computing node supports the first function; Send the second indication information and the code of the first function to the second computing node, wherein the policy information also includes a correspondence between the code of the first function, the second DNAI and the second indication information.
17. The method according to claim 13 or 16, characterized in that The method further comprises: A second release indication is sent to the first computing node, where the second release indication is used to indicate the release of the first session.
18. The method according to any one of claims 11 to 17, characterized in that: The method further comprises: A first release indication is sent to a second computing node, where the first release indication is used to indicate the release of a session between the second computing node and the terminal device, and the second computing node is a computing node that serves the terminal device after the terminal device moves.
19. The method according to any one of claims 11 to 18, characterized in that: The first network element includes a CMF.
20. A communication device, characterized in that: The communication device comprises a processing unit and a transceiver unit, wherein the processing unit is coupled to the transceiver unit to execute the method according to any one of claims 1 to 10, or execute the method according to any one of claims 11 to 19.
21. A communication device, characterized in that: The communication device includes a processor and a memory, the memory is used to store a computer program, and the processor is used to execute the computer program stored in the memory, so that the communication device performs the method as described in any one of claims 1 to 10, or the communication device performs the method as described in any one of claims 11 to 19.
22. A computer-readable storage medium, characterized in that: The computer-readable storage medium is used to store a computer program, and when the computer program is executed on a computer, the computer is caused to execute the method according to any one of claims 1 to 10, or the computer is caused to execute the method according to any one of claims 11 to 19.
23. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is run on a computer, the computer is caused to execute the method according to any one of claims 1 to 10, or the computer is caused to execute the method according to any one of claims 11 to 19.
24. A chip system, characterized in that: The chip system comprises: A processor and an interface, wherein the processor is used to call and run instructions from the interface, and when the processor executes the instructions, the method according to any one of claims 1 to 10 is implemented, or the method according to any one of claims 11 to 19 is implemented.
25. A communication system, characterized in that: The communication system comprises a computing node and a first network element, wherein: The computing node is used to execute the method according to any one of claims 1 to 10; The first network element is used to execute the method according to any one of claims 11 to 19.
Citation Information
Patent Citations
Communication method, device and system
CN119544767A
UPF selection method and device
CN113986520A
Function service management method and device
CN115766067A
Serverless computing architecture
US20190324813A1
Method, device and system for activating session
WO2019020117A1