Service Function Chain Invocation Method and System Based on Deviceless Edge Computing Environment
By deploying service function chains in a deviceless edge computing environment and using lightweight virtualization technology, the deployment of virtual functions is optimized, solving the network complexity and latency problems caused by device heterogeneity, and achieving efficient resource utilization and low-latency services.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN UNIV
- Filing Date
- 2024-09-27
- Publication Date
- 2026-05-26
AI Technical Summary
In deviceless edge computing environments, existing technologies require more computing and communication resources to achieve dynamic flow migration, resulting in increased network complexity and higher service latency, and lack of real-world scenario verification.
By deploying a service function chain, using lightweight virtualization technology to manage resources, taking into account device heterogeneity, and adopting a quasi-convex binary optimization model to optimize the deployment of virtual functions, service latency is reduced and resource utilization is improved.
Effectively manage and optimize the service function chain, reduce service latency, improve the resource utilization of edge devices, and support complex tasks and low-latency services.
Smart Images

Figure CN119363797B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, and in particular to a service function chain invocation method and system based on a deviceless edge computing environment. Background Technology
[0002] In deviceless edge computing environments, a variety of devices with different functionalities are being introduced to meet the growing and diverse needs of end users. However, deploying and managing these heterogeneous devices in edge computing environments presents numerous challenges. These edge devices may come from different vendors and have different characteristics and attributes. When performing connectivity and task scheduling, developers must consider the capabilities and location of each device.
[0003] In deviceless edge computing, lightweight virtualization technologies such as containers are used to deploy applications and services, along with their required configuration files. These applications and services can be deployed on different types of devices with a consistent experience. Deviceless edge computing allows feature developers to leverage edge device resources without having to consider the capabilities of specific devices, connectivity between devices, or deployment locations. This approach provides developers and users with a transparent resource allocation and deployment process, thereby increasing feature resilience, efficiency, and higher quality services.
[0004] To further leverage the diverse heterogeneous devices in deviceless edge computing, a Service Function Chain (SFC) is introduced to distribute tasks across different devices. SFCs sequentially link related functions to provide services and coordinate the management of various service function frameworks across different devices in edge computing. SFCs manage multiple virtual functions located on different devices. First, they can increase data throughput by deploying specific functions on the most suitable devices. This approach fully utilizes the data processing capabilities of devices to reduce processing time. Second, they can increase the number of users served simultaneously. Because SFCs can be organized as a pipelined process, multiple users can be served concurrently.
[0005] However, existing technologies have studied the dynamic migration of embedded services in 5G core networks and software-defined networks, and designed algorithms to meet the end-to-end latency requirements of services in 5G networks. The solutions proposed in existing technologies may require more computational and communication resources to achieve dynamic flow migration, which could increase network complexity and overhead. Furthermore, these methods have not been tested in real-world scenarios, and their feasibility and efficiency in practical systems and real-world edge applications cannot be guaranteed.
[0006] Therefore, existing technologies still need to be improved and developed. Summary of the Invention
[0007] The main purpose of this application is to provide a service function chain invocation method and system based on a deviceless edge computing environment, which aims to solve the problems in the prior art where deviceless edge computing requires more computing and communication resources to achieve dynamic flow migration and the network is more complex, resulting in higher service latency.
[0008] The first aspect of this application provides a service function chain invocation method based on a deviceless edge computing environment. The service function chain invocation method based on a deviceless edge computing environment includes the following steps: deploying a service function chain corresponding to a user; sending the service function chain to multiple corresponding working nodes, wherein the working nodes include devices carrying virtual functions; obtaining the user's request service and obtaining the user's input data based on the request service; controlling the multiple working nodes to process the input data and obtain processing results.
[0009] Optionally, in one embodiment of this application, the deployment of the service function chain corresponding to the user specifically includes: obtaining user needs and network information for the user; evaluating multiple virtual functions based on the user needs and the network information to obtain evaluation results for each virtual function; and determining the service function chain corresponding to the user based on the evaluation results for each virtual function.
[0010] Optionally, in one embodiment of this application, the step of evaluating multiple virtual functions based on the user requirements and the network information to obtain evaluation results for each virtual function specifically includes: obtaining the performance of each of the multiple virtual functions on each device; evaluating the performance of each virtual function based on the user requirements and the network information to obtain evaluation results for each virtual function.
[0011] Optionally, in one embodiment of this application, determining the service function chain corresponding to the user based on the evaluation results of each virtual function specifically includes: constructing a quasi-convex binary optimization model based on the evaluation results of each virtual function; solving the quasi-convex binary optimization model using a convex optimization method to obtain the deployment probability of each virtual function on each device; for each virtual function, determining the target device with the highest deployment probability from multiple devices; and deploying multiple virtual functions on the corresponding target devices to obtain the service function chain.
[0012] Optionally, in one embodiment of this application, the quasi-convex binary optimization model is expressed as:
[0013]
[0014] Where u represents the user, d and e represent the server, f represents the virtual function, and x represents the virtual function.fdu Indicates whether the virtual function f is requested by user u to run on server d. If x fdu =1 means that if x fdu =0 indicates no, c fdu Indicates processing delay, g fedu Indicates transmission delay, s d This represents the capacity limit of device d, where D represents the set of devices, F represents the set of virtual functions, and U represents the set of users; x (f-1)eu This indicates that the virtual function f-1 will be deployed to device e.
[0015] Optionally, in one embodiment of this application, obtaining the user's input data according to the request service specifically involves: generating corresponding input data according to the request service; or performing a data query according to the request service to obtain the user's input data.
[0016] Optionally, in one embodiment of this application, the plurality of working nodes include a first node, a second node, and a third node; controlling the plurality of working nodes to process the input data to obtain a processing result specifically includes: controlling the first node to preprocess the input data to obtain first data; controlling the second node to perform inference or transcoding processing on the first data to obtain second data; and controlling the third node to perform final processing on the second data to obtain a processing result.
[0017] A second aspect of this application also provides a service function chain invocation system based on a deviceless edge computing environment, wherein the service function chain invocation system based on a deviceless edge computing environment includes:
[0018] The service chain deployment module is used to deploy the service function chain corresponding to the user;
[0019] A node notification module is used to send the service function chain to multiple corresponding working nodes, wherein the working nodes include devices that carry virtual functions;
[0020] The data acquisition module is used to acquire the user's requested service and obtain the user's input data based on the requested service;
[0021] The data processing module is used to control multiple working nodes to process the input data and obtain the processing results.
[0022] A third aspect of this application also provides a terminal, wherein the terminal includes: a memory, a processor, and a service function chain invocation program based on a deviceless edge computing environment stored on the memory and executable on the processor, wherein when the service function chain invocation program based on a deviceless edge computing environment is executed by the processor, it implements the steps of the service function chain invocation method based on a deviceless edge computing environment as described above.
[0023] A fourth aspect of this application also provides a computer-readable storage medium, wherein the computer-readable storage medium stores a service function chain invocation program based on a deviceless edge computing environment, and the service function chain invocation program based on a deviceless edge computing environment, when executed by a processor, implements the steps of the service function chain invocation method based on a deviceless edge computing environment as described above.
[0024] Beneficial effects: This application provides a service function chain invocation method and system based on a deviceless edge computing environment. This application deploys service function chains for users and uses lightweight virtualization technology to manage resources, thereby reducing service latency and improving the resource utilization of edge devices. Attached Figure Description
[0025] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0026] Figure 1 This is the main system design diagram used in a preferred embodiment of the service function chain invocation method based on a deviceless edge computing environment in this application;
[0027] Figure 2 This is a flowchart of a preferred embodiment of the service function chain invocation method based on a deviceless edge computing environment in this application;
[0028] Figure 3 This is a schematic diagram of the data packet sending and receiving flow in the service process in a preferred embodiment of the service function chain invocation method based on a deviceless edge computing environment in this application;
[0029] Figure 4 This is a structural diagram of a preferred embodiment of the service function chain invocation system based on a deviceless edge computing environment according to this application;
[0030] Figure 5 This is a structural diagram of a preferred embodiment of the terminal of this application.
[0031] Explanation of reference numerals in the attached figures:
[0032] 10. Service function chain invocation system based on deviceless edge computing environment; 100. Service chain deployment module; 200. Node notification module; 300. Data acquisition module; 400. Data processing module.
[0033] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0034] To make the objectives, technical solutions, and effects of this application clearer and more explicit, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. The described embodiments are only possible technical implementations of this application and not all possible implementations. Based on the embodiments in this application, those skilled in the art can obtain other embodiments without creative effort, and these embodiments are also within the protection scope of this application.
[0035] In related technologies, there are several drawbacks: Low resource utilization: Due to insufficient consideration of device heterogeneity, existing solutions may lead to some devices being overloaded while others remain idle, thus reducing overall resource utilization. High latency: The lack of optimized service function chain placement strategies results in excessively long data transmission paths, increasing service latency. High complexity and overhead: Some solutions require more computing and communication resources to implement dynamic flow migration, increasing network complexity and overhead. Lack of real-world scenario validation: Many methods have not been tested in actual systems and real edge applications, making it impossible to guarantee their feasibility and efficiency.
[0036] First, the terms used in the embodiments of this application will be introduced:
[0037] The Raspberry Pi is a microcomputer motherboard developed by the Raspberry Pi Foundation. It is widely used in education, electronic prototyping, and small-scale production projects due to its high cost-effectiveness and flexibility.
[0038] Jetson Xavier NX is a high-performance edge computing platform launched by NVIDIA, designed for applications that require real-time processing and artificial intelligence inference.
[0039] SFC, or Service Function Chain, refers to a set of virtual functions that provide services by sequentially linking related functions in a deviceless edge computing environment.
[0040] SFCs is the plural form of Service Function Chains, representing multiple Service Function Chains.
[0041] Secondly, the following will be combined with the appendix Figure 1 The system architecture of the embodiments of this application will be described.
[0042] Figure 1 This is the main system design of the technical solution of this invention. The system aims to provide users with a platform to run and organize different functions, thereby providing services to users. The system manages devices and functions without the involvement of developers or users. Different devices, due to their heterogeneity, have different computing and communication capabilities, and therefore may be suitable for different functions and tasks in edge scenarios. The system deployment is as follows... Figure 1 As shown, the system has multiple users requesting services, each service consisting of different virtual functions deployed on different devices in an orderly manner. For example, the SFC serving user 1 sequentially calls multiple virtual functions, which are deployed on different devices. Virtual functions serving different users or different virtual functions serving the same user are independent of each other. For different devices, due to the differences in hardware, the capabilities and runtime of virtual functions also differ. For the same device, the capabilities and runtime of different virtual functions also differ.
[0043] The following description, with reference to the accompanying drawings, describes a service function chain invocation method and system based on a deviceless edge computing environment according to embodiments of this application. Addressing the issues mentioned above regarding the need for more computing and communication resources for dynamic flow migration in deviceless edge computing, and the resulting high service latency due to network complexity, this application provides a service function chain invocation method based on a deviceless edge computing environment. In this method, service function chains are deployed for users, and lightweight virtualization technology is used to manage resources, thereby reducing service latency and improving the resource utilization of edge devices. This solves the technical problems of higher service latency caused by the need for more computing and communication resources for dynamic flow migration and the resulting network complexity in deviceless edge computing in related technologies.
[0044] This application proposes a service function chain placement strategy that considers device heterogeneity in deviceless edge computing to reduce service latency and improve the resource utilization of edge devices. The method proposes a system employing service function chains, using lightweight virtualization technology to manage resources and provide low-latency services to user requests. This system takes into account device heterogeneity and supports various complex tasks. To this end, an optimal service function chain placement problem is proposed and formulated as a quasi-convex problem. Finally, to verify the effectiveness of the invention, three edge applications with different functions, which can be served by function chains, were implemented on six Raspberry Pis and one Jetson XavierNX. Therefore, this paper aims to address the challenges posed by device heterogeneity and provide an effective solution to support complex tasks and low-latency services, thereby demonstrating the practicality and robustness of the invention.
[0045] The technical solutions of this application will be described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments.
[0046] The preferred embodiment of this application describes a service function chain invocation method based on a deviceless edge computing environment, such as... Figure 1 As shown, the service function chain invocation method based on a deviceless edge computing environment includes the following steps:
[0047] In step S101, the service function chain corresponding to the user is deployed.
[0048] In one possible implementation, for the user, user needs and network information are obtained; based on the user needs and network information, multiple virtual functions are evaluated to obtain evaluation results for each virtual function; based on the evaluation results of each virtual function, the service function chain corresponding to the user is determined.
[0049] It should be noted that this application supports device heterogeneity in edge computing environments without devices. Service Function Chain (SFC) deploys tasks to different devices. The SFC system links related functions sequentially to provide services and provides a framework for coordinating the management of various service functions across different devices in edge computing. SFC manages different virtual functions across different devices, thereby improving service quality and resource utilization. First, it can increase data throughput by segmenting specific functions and placing them on the most suitable devices. Such placement can reduce processing time and increase data processing capacity within time intervals. Second, it can enhance the number of users that can be served simultaneously. Because SFC can be organized into a pipeline process, different functions can be provided to multiple users at different stages within the same time period, resulting in a larger total number of users.
[0050] In one possible implementation, the performance of each of the virtual functions on each device is obtained; based on the user requirements and the network information, the performance of each virtual function is evaluated to obtain the evaluation result of each virtual function.
[0051] In one possible implementation, a quasi-convex binary optimization model is constructed based on the evaluation results of each virtual function; the convex optimization method is used to solve the quasi-convex binary optimization model to obtain the deployment probability of each virtual function on each device; for each virtual function, the target device with the highest deployment probability is determined from the multiple devices; the multiple virtual functions are deployed on the corresponding target devices to obtain the service function chain.
[0052] The specific logical steps for calculating the optimal service function link flow are as follows: **Gathering Network Information:** Administrators collect current network information from worker nodes, including connection status between devices, bandwidth, latency, etc. This information helps administrators understand the current network status and resource allocation. **Analyzing User Needs:** Administrators also need to understand user needs, including required service types, data volumes, processing time requirements, etc. This can be obtained through user requests or historical data. **Identifying Available Virtual Functions:** Administrators need to know which virtual functions are available, and their capabilities and runtime on various devices. This can be obtained through communication with worker nodes. **Evaluating Virtual Function Performance:** Based on the collected network information and user needs, administrators need to evaluate the performance of each virtual function on different devices. This may include factors such as computational processing speed, resource consumption, and latency. **Constructing Candidate Link Flows:** Based on the evaluation results of virtual functions, administrators can construct multiple candidate service function link flows. Each link flow contains a series of virtual functions and their order to meet user needs. **Optimizing Link Flows:** Administrators can use optimization algorithms to select the optimal service function link flow. These algorithms can evaluate and compare different link flows based on specific objective functions (such as minimizing latency, maximizing throughput, etc.). Returning the optimal service flow: Once the optimal service flow is found, the administrator returns it to the requesting user. Simultaneously, the administrator also notifies the relevant worker nodes so they can operate according to the flow's instructions.
[0053] Understandably, the process of determining the optimal service function flow is usually completed before a user requests a service. This is because administrators need to know the current network status and resource allocation in advance to optimize the deployment and execution sequence of virtual functions. When a user requests a service, the administrator guides data transmission and processing based on the pre-calculated service function flow. This avoids complex calculations and decisions when processing user requests in real time, thereby improving system response speed and efficiency. Of course, in practical applications, network conditions may change, so administrators may need to periodically update the service function flow to adapt to new network environments. However, such updates are usually performed in the background and do not directly affect user requests being processed.
[0054] Specifically, the process involves: Initialization: Collecting all necessary input data, including the processing power of each server (i.e., device), the resource requirements of each virtual function, and the network topology. Building an optimization model: Constructing a quasi-convex binary optimization model based on the above information, where the objective function is to minimize total service latency, and constraints ensure that all virtual functions can be reasonably deployed on the servers. Solving the optimization problem: Solving the model using a convex optimization algorithm to obtain the deployment probability of each virtual function on each server. Deployment decision: Based on the solution results, deploying each user's three virtual functions on the server with the highest probability, forming Service Function Chains (SFCs). Execution and monitoring: Implementing the deployment strategy and continuously monitoring system performance and service latency, adjusting the strategy as needed to address changes in network or server status.
[0055] This application can effectively manage and optimize the service function chain in deviceless edge environments, ensuring high efficiency and low latency of services.
[0056] Furthermore, in order to solve the service function chain placement problem, it is represented as a quasi-convex binary problem with the goal of minimizing the total service latency.
[0057]
[0058] Where, x fdu It is a binary variable representing whether virtual function f has been requested by user u to run on server d. If x fdu =1, then it means yes; if x = 1, then it means yes; fdu =0 indicates no. (f-1)eu This indicates whether to deploy virtual function f-1 to device e and transfer data to the next server d for further processing, which involves the transmission latency from server e to server d. fdu This represents the processing latency of virtual function f on server d for user u. Processing latency refers to the time required for data to be processed on the server.fedu This represents the transmission delay between transfer functions f-1 and f from server e to server d. Transmission delay refers to the time required for data to move from one server to another in the network. In other words, it's service latency, primarily considering two parts: the processing delay of virtual function f on server d for user u, and the transmission delay between transfer functions f-1 and f from server e to d, denoted as c. fdu and g fedu . st is an abbreviation for "subject to", used to introduce constraints.
[0059] The objective function consists of three parts. The first part is the processing latency. Since the deterministic variable represents the processing latency time calculated when a virtual function f runs on server s, the second and third parts are the transmission latency, in which case g... fedu Let f be the transmission delay between function f running on d and e, and d be the transmission delay between e and d. If the preceding function is placed on server e, it is denoted as f-1. Therefore, in this case, x (f-1)eu The sum will be 1. Before the first virtual function, there is no transmission delay, so the sum must start from f = 2. The third part is the same as the second part, the only difference being the transmission target. fdu This represents the function f currently running on server d and its corresponding transfer. Since the last step has no successor, the summation is limited to |F|-1.
[0060] Constraints This means that any function must be deployed on one and only one server. (Constraint) This means that all functions for all users must be deployed on a single server, and if the server's resources are limited, its capacity must be less than the server's capacity. The constant x∈{0,1} is the variable field, indicating whether user u calls function f provided by server d.
[0061] We used a convex optimization algorithm to solve the problem and obtained the optimal probability of deploying each function for each user on each server. Then, we deployed the three functions for each user to the server with the highest probability, and organized them in order to form SFCs for each user.
[0062] In step S102, the service function chain is sent to the corresponding multiple working nodes, wherein the working nodes include devices that carry virtual functions.
[0063] Specifically, the administrator sends the calculated optimal service function link flow to all relevant worker nodes. These worker nodes include servers that host virtual functions and user devices that perform tasks.
[0064] When a user initiates a service request, the request is routed to the first worker node, which preprocesses the data according to the link flow instructions. After preprocessing, the data is passed to the next worker node, which handles further processing, such as machine learning inference or video editing transcoding. Once the second worker node has completed its processing, the data is passed to the third worker node, which performs final processing, such as cropping or indexing the video. After the third worker node finishes processing, the result is automatically sent back to the user. Users can send requests to the appropriate node to obtain the results. After each worker node completes its task, it sends the processing results back to the administrator to update network information. When a new user request arrives, the entire process restarts, returning to the first step. Throughout this process, the administrator recalculates and optimizes the service function link flow based on changes in network conditions and the continuous emergence of new user demands. This ensures that virtual functions in the service chain can be deployed and run efficiently to meet user service needs.
[0065] In step S103, the user's request service is obtained, and the user's input data is obtained based on the request service.
[0066] In one possible implementation, corresponding input data is generated based on the requested service.
[0067] Specifically, data can be generated directly: when a user initiates a service request, the system can directly generate the required data based on the content of the request. For example, if a user requests a webpage, the server can generate the corresponding HTML page based on the requested URL. In this case, the service request directly triggers the data generation process.
[0068] In another possible implementation, a data query is performed based on the requested service to obtain the input data input by the user.
[0069] Specifically, retrieving and processing existing data: In other cases, service requests may involve processing existing data. For example, a user might request to query, filter, or analyze data in a database. In this scenario, the service request triggers the system to retrieve data from the database or other data sources, and then process it to generate results.
[0070] In step S104, multiple working nodes are controlled to process the input data to obtain processing results.
[0071] In one possible implementation, the first node is controlled to preprocess the input data to obtain first data; the second node is controlled to perform inference or transcoding on the first data to obtain second data; and the third node is controlled to perform final processing on the second data to obtain a processing result.
[0072] Specifically, this application integrates several application scenarios, simplifying the service function chain process into three virtual functions. First, the first virtual function is responsible for collecting user data and preprocessing it. Then, the data is transferred to a second virtual function for further processing, such as machine learning inference or demand-based video editing transcoding. The second virtual function performs the specified processing on the data. Next, the third virtual function receives the data and performs final processing, such as cropping or indexing the video. Finally, the third virtual function sends the results to the user upon request. Note that this application allows the service function chain to consist of a variable number of virtual functions, tailored to the needs of different scenarios.
[0073] This application implements a real-world edge service using a service function chain to provide services to users, demonstrating the system's applicability in edge environments. This application deploys different virtual functions based on device capabilities and task characteristics. The connections between these different functions and between devices improve the quality of user services, reduce overall service latency, and lower device power consumption. A lightweight virtualization scheme is used to deploy these functions on different heterogeneous devices in an edge environment. Three applications—location services, font recognition, and video transcoding—are implemented using multiple Raspberry Pis and Jetson XavierNX, running in an edge environment using a service function chain scheme. This scheme divides the entire service into different stages and links them together to provide users with a complete service. Experiments with different applications and different SFC placement schemes show that the proposed system can efficiently support different services, reducing overall user latency by 86.1% and device power consumption by 33.3%.
[0074] like Figure 3 As shown, the service function chain invocation method based on a deviceless edge computing environment described above will be further explained below through specific embodiments:
[0075] The application includes an administrator, several worker nodes, and users. The administrator collects network information from the worker nodes, calculates the optimal service function link flow, and organizes it into different function chains. It then sends the SFC (Service Function Chain) as a process to all worker nodes providing that service. When a worker node receives the service flow, it obtains the following information: 1) the service request to which the user belongs, 2) what operation it should perform, and 3) which node the processed data should be sent to next. Users also receive information about which node their data should be sent to and from which node they should retrieve the results. Users request services from the system by sending requests and collecting results.
[0076] The detailed service flow is as follows:
[0077] 1) First, when a user requests a service, the administrator calculates the optimal solution based on the current network conditions and returns the best service function link flow. At the same time, the administrator notifies all worker nodes in this service flow.
[0078] 2) After receiving notification from the administrator, the user sends the data to the first worker node according to the service flow. The worker node preprocesses the data and delivers it to the next node in sequence.
[0079] 3) After preprocessing, the worker nodes need to perform inference or transcoding. When inference or transcoding is complete, the node passes the data to the third worker node for post-processing. When the third worker node finishes post-processing, the user sends a request to that node and retrieves the result.
[0080] 4) The results are automatically sent to the administrator to update network information.
[0081] 5) Finally, return to step one when a new user request arrives.
[0082] Next, referring to the accompanying drawings, a service function chain invocation system based on a deviceless edge computing environment, according to an embodiment of this application, is described.
[0083] Figure 4 This is a block diagram of a service function chain invocation system based on a deviceless edge computing environment, according to an embodiment of this application.
[0084] like Figure 4 As shown, the service function chain invocation system 10 based on a deviceless edge computing environment includes: a service chain deployment module 100, a node notification module 200, a data acquisition module 300, and a data processing module 400.
[0085] Specifically, the service chain deployment module 100 is used to deploy the service function chain corresponding to the user;
[0086] The node notification module 200 is used to send the service function chain to multiple corresponding working nodes, wherein the working nodes include devices that carry virtual functions;
[0087] The data acquisition module 300 is used to acquire the user's request service and obtain the user's input data based on the request service;
[0088] The data processing module 400 is used to control multiple working nodes to process the input data and obtain processing results.
[0089] Figure 5 A schematic diagram of the structure of a terminal provided in an embodiment of this application. The terminal may include:
[0090] The memory 501, the processor 502, and the computer program stored on the memory 501 and capable of running on the processor 502.
[0091] When the processor 502 executes the program, it implements the service function chain invocation method based on the deviceless edge computing environment provided in the above embodiments.
[0092] Furthermore, the terminal also includes:
[0093] Communication interface 503 is used for communication between memory 501 and processor 502.
[0094] The memory 501 is used to store computer programs that can run on the processor 502.
[0095] The memory 501 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.
[0096] If the memory 501, processor 502, and communication interface 503 are implemented independently, they can be interconnected via a bus to communicate with each other. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EIS) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of representation, only one thick line is used in the diagram, but this does not indicate that there is only one bus or one type of bus.
[0097] Optionally, in a specific implementation, if the memory 501, processor 502, and communication interface 503 are integrated on a single chip, then the memory 501, processor 502, and communication interface 503 can communicate with each other through an internal interface.
[0098] Processor 502 may be a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of this application.
[0099] This embodiment also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described service function chain invocation method based on a deviceless edge computing environment.
[0100] One embodiment of this application provides a computer program product, including a computer program that, when executed by a processor, implements the features described in this application. Figure 1 The service function chain invocation method based on a deviceless edge computing environment provided in any of the corresponding embodiments.
[0101] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.
[0102] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "N" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0103] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or N executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.
[0104] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable storage medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable storage medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable storage media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable storage medium could be paper or other suitable media on which the program can be printed, since the program can be obtained electronically by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.
[0105] It should be understood that the various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, the N steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.
[0106] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.
[0107] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.
[0108] The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc. Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of this application.
[0109] It should be understood that the application of this application is not limited to the examples above. Those skilled in the art can make improvements or modifications based on the above description, and all such improvements and modifications should fall within the protection scope of the appended claims.
[0110] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features therein. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
1. A method for service function chaining invocation based on deviceless edge computing environment, characterized in that, The service function chain invocation method based on a device - free edge computing environment includes: Deploying a service function chain corresponding to a user; Sending the service function chain to a corresponding plurality of working nodes, where the working nodes include devices carrying virtual functions; different devices have different computing and communication capabilities due to their heterogeneity; Obtaining the requested service of the user and obtaining the input data of the user according to the requested service; Controlling the plurality of working nodes to process the input data to obtain a processing result; The deployment of the service function chain corresponding to the user specifically includes: For the user, obtaining user requirements and network information; Evaluating a plurality of virtual functions according to the user requirements and the network information to obtain evaluation results of each virtual function; Determining the service function chain corresponding to the user according to the evaluation results of each virtual function; The determination of the service function chain corresponding to the user according to the evaluation results of each virtual function specifically includes: Constructing a quasiconvex binary optimization model according to the evaluation results of each virtual function; Solving the quasiconvex binary optimization model by a convex optimization method to obtain the deployment probability of each virtual function on each device; For each virtual function, determining a target device with the highest deployment probability from the plurality of devices; Deploying the plurality of virtual functions on the corresponding target devices respectively to obtain the service function chain. 2.The service function chaining invocation method based on deviceless edge computing environment according to claim 1, characterized in that, The evaluation of a plurality of virtual functions according to the user requirements and the network information to obtain evaluation results of each virtual function specifically includes: Obtaining the performance of each of the plurality of virtual functions on each device; Evaluating the performance of each virtual function according to the user requirements and the network information to obtain evaluation results of each virtual function. 3.The service function chaining invocation method based on deviceless edge computing environment according to claim 1, characterized in that, The quasiconvex binary optimization model is expressed as: , ; Among them, represents the user, 、 represents the server, represents the virtual function, represents whether the virtual function running on the server is requested by the user . If , it indicates yes. If , it indicates no. represents the processing delay, represents the transmission delay, represents the capacity limit of the server . represents the set of servers, represents the set of virtual functions, represents the set of users; represents deploying the virtual function to the server . 4. The method for invoking a service function chain based on a device-free edge computing environment according to claim 1, wherein The obtaining of the input data of the user according to the requested service is specifically: Generating corresponding input data according to the requested service; or Performing a data query according to the requested service to obtain the input data input by the user.
5. The service function chain invocation method based on a device-free edge computing environment according to claim 1, wherein The plurality of working nodes include a first node, a second node, and a third node; The control of the plurality of working nodes to process the input data to obtain a processing result specifically includes: Controlling the first node to pre - process the input data to obtain first data; Controlling the second node to perform inference or transcoding processing on the first data to obtain second data; Controlling the third node to perform final processing on the second data to obtain a processing result.
6. A service function chain invocation system based on a device-free edge computing environment, characterized in that The service function chain invocation system based on a device - free edge computing environment is applied to the service function chain invocation method based on a device - free edge computing environment according to any one of claims 1 - 5; The service function chain invocation system based on a device - free edge computing environment includes: A service chain deployment module for deploying a service function chain corresponding to a user; A node notification module for sending the service function chain to a corresponding plurality of working nodes, where the working nodes include devices carrying virtual functions; A data acquisition module, configured to acquire the requested service of the user and obtain the input data of the user according to the requested service; A data processing module, configured to control a plurality of the working nodes to process the input data and obtain a processing result.
7. A terminal, characterized in that, The terminal includes: a memory, a processor, and a service function chain invocation program based on a device-free edge computing environment stored on the memory and executable on the processor. When the service function chain invocation program based on the device-free edge computing environment is executed by the processor, the steps of the service function chain invocation method based on the device-free edge computing environment according to any one of claims 1-5 are implemented.
8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a service function chain invocation program based on a device-free edge computing environment. When the service function chain invocation program based on the device-free edge computing environment is executed by a processor, the steps of the service function chain invocation method based on the device-free edge computing environment according to any one of claims 1-5 are implemented.