Computing resource allocation method, device, electronic device and readable storage medium
By dynamically scheduling computing resources in the computing network and limiting the load on routing nodes and links, the problems of computing islands and load imbalance are solved, and full utilization of edge server resources and improved task processing efficiency are achieved.
Patent Information
- Application Number
- CN202211348979.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-31
- Publication Date
- 2025-09-26
- Estimated Expiration
- 2042-10-31
AI Technical Summary
There is a computing power island effect in the computing power network. Edge computing nodes are unable to effectively collaborate to process ultra-large computing-intensive tasks, and the unbalanced network load leads to the inability to fully utilize resources.
By receiving user service requests from terminal devices, the allocation route that meets the preset delay limit is determined, and computing resources are dynamically scheduled according to the links and nodes between the routes, the number of occurrences of routing nodes and the link/node load are limited, and the edge server of the target allocation route is used for processing.
It achieves load balancing of the computing network, ensures full utilization of edge server resources, improves overall performance, and meets the requirements of high computing and low latency tasks.
Smart Images

Figure CN115834460B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to the field of communication technology, and in particular, to a computing power resource allocation method, a computing power resource allocation device, an electronic device, and a computer-readable storage medium. Background Art
[0002] Edge computing refers to the use of a computing network integrating network, computing, storage, and application core capabilities to provide local services close to the source of objects or data. Applications initiated at the edge generate faster network service responses, meeting fundamental industry needs for real-time services, application intelligence, security, and privacy protection.
[0003] The massive deployment of edge computing nodes and terminal devices within computing networks has resolved bandwidth shortages, network congestion, and excessive latency caused by the uploading of massive amounts of data to cloud computing centers. However, this has also led to a ubiquitous deployment of computing resources, inevitably resulting in the "computing island" effect. On the one hand, edge computing nodes lack effective collaborative processing capabilities, and the computing power of a single edge computing node cannot meet the computing resource requirements of ultra-large, compute-intensive tasks such as image rendering. Furthermore, it remains unable to address the ultra-low latency requirements of emerging businesses that are both compute-intensive and latency-sensitive. On the other hand, while some edge computing nodes may become overloaded and unable to effectively process computing tasks, the uneven network load inevitably leaves some computing nodes idle, preventing the computing network's computing resources from being fully utilized. Summary of the Invention
[0004] An embodiment of the present invention provides a computing power resource allocation method, device, electronic device and computer-readable storage medium to solve the problem that the computing power resources of a computing power network cannot be fully utilized.
[0005] An embodiment of the present invention discloses a computing resource allocation method, which is applied to a computing network, wherein the computing network includes at least a terminal device and an edge server. The method includes:
[0006] Receiving user service requests sent by terminal equipment to process user services;
[0007] For each of the user services, respectively determining a distribution route that meets a preset delay limit; the distribution route includes a routing node and a link between the routing nodes;
[0008] Determining a target distribution route according to the shared links and shared routing nodes between the distribution routes;
[0009] The computing resources of the edge server corresponding to the target allocation route are used to process the user business.
[0010] Optionally, determining, for each user service, a distribution route that satisfies a preset delay constraint includes:
[0011] For each of the user services, an allocation route that meets the preset delay limit is determined respectively. If the number of occurrences of the added routing node in the allocated allocation route exceeds a preset threshold number, the allocated routing node is no longer added to the unallocated allocation route.
[0012] Optionally, determining the target distribution route according to the shared links and shared routing nodes between the distribution routes includes:
[0013] When there is no shared link and no shared routing node between the distribution routes, the distribution route is determined as the target distribution route.
[0014] Optionally, determining the target distribution route according to the shared links and shared routing nodes between the distribution routes includes:
[0015] When there is a shared link between the allocated routes, if the data storage capacity of the shared link is greater than the maximum capacity of the link, the shared link is deleted, and the routing node adjacent to the shared link is used as the starting point to return to execute the allocated routes that are respectively determined to meet the preset delay limit.
[0016] Optionally, determining the target distribution route according to the shared links and shared routing nodes between the distribution routes includes:
[0017] When there is a shared routing node between the allocated routes, if the shared routing node is larger than the maximum node capacity, the shared link routing node is deleted, and the allocated route is re-determined with the adjacent routing node of the shared link as the starting point, and the allocated route that meets the preset delay limit is returned to be executed.
[0018] Optionally, determining, for each user service, a distribution route that satisfies a preset delay constraint includes:
[0019] Determine, for each of the user services, a distribution route that satisfies a preset delay constraint according to the calculation formula, wherein the calculation formula includes:
[0020]
[0021] Wherein, P represents the assigned route, K represents the user service set, and K n represents the set of all user services dispatched to the edge server N, the T karepresents the access delay of user service k to access routing node A, where T kij Identifies the data transmission delay of user service k between routing node i and routing node j, where T kna If user service k selects edge server N, it represents the arrival delay of transmission to edge server N through the routing node.
[0022] Optionally,
[0023] The T ka Use the following calculation formula:
[0024] Among them, the O k Indicates the size of user service k, the R k,A represents the data transmission rate from user service k to the connected routing node A;
[0025] The T kij Use the following calculation formula:
[0026] Among them, the w i,j represents the data transmission rate between routing node i and routing node j, which meets the following requirements:
[0027] When i==j, w i,j =∞;
[0028] When i≠j and there is a link between i and j, w i,j =r1;
[0029] When i≠j and there is no link between i and j, w i,j =0;
[0030] The T kna Use the following calculation formula:
[0031] Among them, the R i,n R represents the data transmission rate between routing node i and edge server n. When there is a direct link between routing node i and edge server n, R i,n =∞, when there is no direct link between routing node i and edge server n, R i,n =r2.
[0032] An embodiment of the present invention further discloses a computing resource allocation device, which is applied to a computing network. The computing network includes at least a terminal device and an edge server. The device includes:
[0033] A user service receiving module is used to receive user service requests sent by terminal equipment to process user services;
[0034] an allocation route determination module, configured to determine, for each of the user services, an allocation route that satisfies a preset delay constraint; the allocation route includes a routing node and a link between the routing nodes;
[0035] a target allocation route determination module, configured to determine the target allocation route according to the shared links and shared routing nodes between the allocation routes;
[0036] The user service processing module is configured to process the user service using the computing resources of the edge server corresponding to the target allocation route.
[0037] Optionally, the allocation route determination module is specifically configured to:
[0038] For each of the user services, an allocation route that meets the preset delay limit is determined respectively. If the number of occurrences of the added routing node in the allocated allocation route exceeds a preset threshold number, the allocated routing node is no longer added to the unallocated allocation route.
[0039] Optionally, the allocation route determination module is specifically configured to:
[0040] When there is no shared link and no shared routing node between the distribution routes, the distribution route is determined as the target distribution route.
[0041] Optionally, the target allocation route determination module is specifically configured to:
[0042] When there is a shared link between the allocated routes, if the data storage capacity of the shared link is greater than the maximum capacity of the link, the shared link is deleted, and the routing node adjacent to the shared link is used as the starting point to return to execute the allocated routes that are respectively determined to meet the preset delay limit.
[0043] Optionally, the target allocation route determination module is specifically configured to:
[0044] When there is a shared routing node between the allocated routes, if the shared routing node is larger than the maximum node capacity, the shared link routing node is deleted, and the allocated route is re-determined with the adjacent routing node of the shared link as the starting point, and the allocated route that meets the preset delay limit is returned to be executed.
[0045] Optionally, the allocation route determination module 402 is specifically configured to:
[0046] Determine, for each of the user services, a distribution route that satisfies a preset delay constraint according to the calculation formula, wherein the calculation formula includes:
[0047]
[0048] Wherein, P represents the assigned route, K represents the user service set, and K n represents the set of all user services dispatched to the edge server N, the T ka represents the access delay of user service k to access routing node A, where T kij Identifies the data transmission delay of user service k between routing node i and routing node j, where T kna If user service k selects edge server N, it represents the arrival delay of transmission to edge server N through the routing node.
[0049] Optionally,
[0050] The T ka Use the following calculation formula:
[0051] Among them, the O k Indicates the size of user service k, the R k,A represents the data transmission rate from user service k to the connected routing node A;
[0052] The T kij Use the following calculation formula:
[0053] Among them, the w i,j represents the data transmission rate between routing node i and routing node j, which meets the following requirements:
[0054] When i==j, w i,j =∞;
[0055] When i≠j and there is a link between i and j, w i,j =r1;
[0056] When i≠j and there is no link between i and j, w i,j =0;
[0057] The T kna Use the following calculation formula:
[0058] Among them, the R i,n R represents the data transmission rate between routing node i and edge server n. When there is a direct link between routing node i and edge server n, R i, =∞, when there is no direct link between routing node i and edge server n, R i, =r2.
[0059] An embodiment of the present invention further discloses an electronic device, comprising a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other via the communication bus;
[0060] The memory is used to store computer programs;
[0061] The processor is configured to implement the method described in the embodiment of the present invention when executing the program stored in the memory.
[0062] An embodiment of the present invention further discloses a computer program product, which is stored in a storage medium and is executed by at least one processor to implement the method described in the embodiment of the present invention.
[0063] An embodiment of the present invention further discloses a computer-readable storage medium having instructions stored thereon. When executed by one or more processors, the processors are enabled to execute the method according to the embodiment of the present invention.
[0064] The embodiments of the present invention include the following advantages:
[0065] In an embodiment of the present invention, after receiving a user service request for processing a user service sent by a terminal device, a distribution route that meets a preset delay limit is determined for each user service, and then a target distribution route is determined based on the links and shared routing nodes shared between the distribution routes, so that the computing power resources of the edge server corresponding to the target distribution route can be used to process the user service. By applying an embodiment of the present invention, it is possible to determine whether the links or routing nodes between each user service exceed the load based on the links and shared routing nodes shared between each user service to finally confirm the final target distribution route, thereby achieving dynamic and flexible scheduling of computing power resources to provide services to users, ensuring load balancing of the computing power network, and making full use of the computing power resources of the edge servers in the computing power network, thereby improving the overall performance of the computing power network. BRIEF DESCRIPTION OF THE DRAWINGS
[0066] Figure 1 This is a flowchart of a method for allocating computing resources provided in an embodiment of the present invention;
[0067] Figure 2 This is a system block diagram of computing resource allocation provided in an embodiment of the present invention;
[0068] Figure 3 This is a schematic diagram of a specific process of a computing power resource allocation method provided in an embodiment of the present invention;
[0069] Figure 4 This is a structural block diagram of a computing resource allocation device provided in an embodiment of the present invention;
[0070] Figure 5 It is a schematic diagram of the hardware structure of an electronic device for implementing various embodiments of the present invention. DETAILED DESCRIPTION
[0071] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.
[0072] The current resource allocation methods and systems have the following main problems:
[0073] (1) Edge computing nodes do not perform effective collaborative processing tasks. The computing power resources of a single node cannot meet the needs of tasks with higher computing power requirements, and cannot meet the needs of tasks that require both high computing power and low latency.
[0074] (2) Although some edge computing nodes are overloaded and unable to effectively process computing tasks, due to the imbalance of network load, some computing nodes will inevitably remain idle, resulting in the computing power resources of the computing network not being fully utilized.
[0075] In view of this, it is necessary to propose a computing power resource allocation method and device to dynamically and flexibly schedule computing power resources to provide services to users, ensure the load balancing of the computing power network, and improve the overall performance of the computing power network.
[0076] The embodiment of the present invention improves the existing computing power resource allocation method for the computing power network, and adds node degree restrictions when generating allocation routes (also known as scheduling paths or links), that is, for any routing node in the computing power network, a constraint condition is set on the number associated with the routing node. Specifically, the constraint condition at least includes checking whether the number of times a routing node S appears has reached a threshold when adding a routing node S to the allocation route. If the number of times the routing node S appears has reached the threshold, it will no longer be added. Based on the improved existing computing power resource allocation method, the shortest delay of the user service route to each routing node and its corresponding specific allocation route are calculated, and then the computing node with the shortest delay corresponding to the allocation route is selected as the target computing node to complete the user service based on the target computing node. The embodiment of the present invention can dynamically and flexibly schedule computing power resources to provide services to users, ensure the load balancing of the computing power network, and improve the overall performance of the computing power network.
[0077] Reference Figure 1 , shows a flowchart of the steps of a computing resource allocation method provided in an embodiment of the present invention, which is applied to a computing network. The computing network includes at least a terminal device and an edge server. The method may specifically include the following steps:
[0078] Step 101: Receive a user service request sent by a terminal device to process a user service.
[0079] In a specific implementation, the computing network of the embodiments of the present invention may be composed of routing nodes such as terminal devices, base stations, edge gateways, edge servers, and central processors. Edge servers, also commonly referred to as edge computing nodes or computing nodes, can provide computing resources capable of processing user services and other services. Specifically, computing resources may include at least computing resources and storage resources.
[0080] The system terminal (terminal device) set can be expressed as M = [1, 2, ..., M]. There are N edge servers in the computing network, N = [1, 2, ..., N], n∈N represents an edge server, and the nth edge server can be expressed as Z n (A n ,X n ,C n ,R n ), where A n Indicates the connection routing label of the edge server, X n Indicates the storage resource size of the edge server, C n Indicates the computing resource size of the edge server, R n Indicates the data transmission rate from the edge server to the routing node.
[0081] The user service (computing task) set is represented as K = [1, 2, ..., K], where k∈K represents a user service and the kth service is represented as S k (A k ,X k ,C k ,D kmax ,D ka ,O k ), where A k represents the routing node accessed by user service k, X k represents the quantitative value of storage resources required by user service k, C k represents the quantitative value of computing resources required by user service k, D kmax Denotes the maximum service processing delay allowed for user service k, D ka represents the delay of user service k accessing the routing node, O k Indicates the size of user service k.
[0082] When a terminal device issues a user service request, data is transmitted between adjacent routing nodes in the computing network through dynamic communication links. Assuming that the data transmission rate of the dynamic links between routing nodes in the computing network can be perceived, the data transmission rate can be expressed as:
[0083]
[0084] Among them, w i,j represents the data transmission rate between routing node i and routing node j.
[0085] In a specific implementation, when a terminal device needs to use computing resources to process user services, such as image rendering and other user services that require computing resources, it can send a user service request to the computing network to process the user service to instruct the computing network to allocate computing resources for it to process the user service.
[0086] Step 102: For each of the user services, determine a distribution route that meets a preset delay constraint; the distribution route includes a routing node and a link between the routing nodes.
[0087] Among them, the allocation route can also be called a scheduling path, a scheduling link or a routing strategy, etc. Based on the allocation route, the terminal device can be routed to the corresponding edge server, and then the computing power resources of the edge server can be used to process the user business of the terminal device.
[0088] In an optional embodiment of the present invention, step 102 of determining, for each user service, a distribution route that satisfies a preset delay constraint includes:
[0089] For each of the user services, an allocation route that meets the preset delay limit is determined respectively. If the number of occurrences of the added routing node in the allocated allocation route exceeds a preset threshold number, the allocated routing node is no longer added to the unallocated allocation route.
[0090] In an embodiment of the present invention, a node degree is set when generating a distribution route. Specifically, a node degree restriction is added when generating a distribution route, that is, for any routing node in the computing power network, a constraint condition is set on the number of links associated with it. Specifically, when adding a routing node S to a certain distribution route, it is necessary to first determine whether the number of times the routing node S appears in the already allocated distribution routes has reached a preset threshold number of times. If the number of times the routing node S appears in the already allocated distribution routes has reached the preset threshold number of times, then the routing node S will no longer be added when generating the distribution route. By limiting the number of times each routing node appears in the distribution route, it is possible to avoid excessive load on certain routing nodes to a certain extent, thereby ensuring load balancing of the computing power network and improving the overall performance of the computing power network.
[0091] In an embodiment of the present invention, a distribution route that satisfies a preset latency constraint may be determined for each user service allocation, and a final target distribution route may be subsequently determined based on the distribution route for each user service. The distribution routes corresponding to each user service may include shared links and / or shared routing nodes. For example, assuming there are two distribution routes, where distribution route 1 and distribution route 2 share routing node 1, routing node 2, and routing node 3, the links shared by distribution route 1 and distribution route 2 may include the link between routing node 1 and routing node 2, and the link between routing node 2 and routing node 3.
[0092] Of course, in actual applications, the assigned routes corresponding to each user's business may not have shared routing nodes and shared links. In this case, it can be said that when processing each user's business, there will be no conflict due to the use of computing resources, which will affect the processing efficiency of each user's business.
[0093] In an optional embodiment of the present invention, step 102 of determining, for each user service, a distribution route that satisfies a preset delay constraint may include the following steps:
[0094] Determine, for each of the user services, a distribution route that satisfies a preset delay constraint according to the calculation formula, wherein the calculation formula may include:
[0095]
[0096] Wherein, P represents the assigned route, K represents the user service set, and K n represents the set of all user services dispatched to the edge server N, the T ka represents the access delay of user service k to access routing node A, where T kij Identifies the data transmission delay of user service k between routing node i and routing node j, where T kna If user service k selects edge server N, it represents the arrival delay of transmission to edge server N through the routing node.
[0097] In an optional embodiment of the present invention,
[0098] The T ka Use the following calculation formula:
[0099] Among them, the O k Indicates the size of user service k, the R k,A represents the data transmission rate from user service k to the connected routing node A;
[0100] The T kijUse the following calculation formula:
[0101] Among them, the w i,j represents the data transmission rate between routing node i and routing node j, which meets the following requirements:
[0102] When i==j, w i,j =∞;
[0103] When i≠j and there is a link between i and j, w i,j =r1;
[0104] When i≠j and there is no link between i and j, w i,j =0;
[0105] The T kna Use the following calculation formula:
[0106] Among them, the R i,n R represents the data transmission rate between routing node i and edge server n. When there is a direct link between routing node i and edge server n, R i,n =∞, when there is no direct link between routing node i and edge server n, R i,n =r2.
[0107] In the embodiment of the present invention, the distribution route that meets the preset delay limit can be determined according to the above formula, and then the final target distribution route can be confirmed according to the distribution route.
[0108] Step 103: Determine a target distribution route according to the shared links and shared routing nodes between the distribution routes.
[0109] In an embodiment of the present invention, after obtaining the distribution routes corresponding to each user service that meet the preset delay limit, the target distribution routes corresponding to each user service can be further determined based on the shared links and shared routing nodes between these distribution routes. Then, the terminal devices corresponding to each user service can be routed to the corresponding edge server based on the target distribution routes to use the computing power resources of the edge server to complete the processing of the user service.
[0110] In an optional embodiment of the present invention, step 103 of determining the target distribution route based on the shared links and shared routing nodes between the distribution routes may include the following steps:
[0111] When there is no shared link and no shared routing node between the distribution routes, the distribution route is determined as the target distribution route.
[0112] In an embodiment of the present invention, if the distribution routes corresponding to each user service do not have shared routing nodes and shared links, this can be explained as the use of computing resources in the computing network when processing each user service is independent of each other, and there are no identical routing nodes or links. In this case, the distribution routes corresponding to each user service can be directly used as target distribution routes, and routed to the corresponding edge server based on the target distribution routes to use the computing resources of the edge server to complete the processing of the user service.
[0113] In another optional embodiment of the present invention, step 103 of determining the target distribution route based on the shared links and shared routing nodes between the distribution routes may include the following steps:
[0114] When there is a shared link between the allocated routes, if the data storage capacity of the shared link is greater than the maximum capacity of the link, the shared link is deleted, and the routing node adjacent to the shared link is used as the starting point to return to execute the allocated routes that are respectively determined to meet the preset delay limit.
[0115] In an embodiment of the present invention, if there is a shared link in the distribution route corresponding to each user service, it can be said that the computing resources in the computing network used to process each user service are not independent of each other. Then, it is necessary to confirm whether the distribution route corresponding to each user service can be used as the target distribution route based on the situation of the shared link, or to confirm that the distribution route needs to be recalculated, and then determine whether there are shared routing nodes and shared links based on the recalculated distribution route.
[0116] Among them, the maximum link capacity is pre-set in the embodiment of the present invention. The maximum link capacity can be the sum of the maximum node capacity of all edge servers in the link or other set values. The specific value of the maximum link capacity can be set according to actual needs, and the embodiment of the present invention does not need to be limited to this.
[0117] Specifically, when there is a shared link between the distribution routes, if the data storage capacity of the shared link is greater than the maximum capacity of the link, it means that the link may have exceeded the load. In order to ensure the load balance of the computing power network and improve the overall performance of the computing power network, at this time, the embodiment of the present invention can delete the shared link in the distribution route, and use the routing node adjacent to the shared link as the starting point to redetermine the distribution route that meets the preset delay limit, until there is no shared link and shared routing node between the redetermined distribution routes, or the data storage capacity of the shared link is less than the maximum capacity of the link.
[0118] In an optional embodiment of the present invention, step 103 of determining the target distribution route based on the shared links and shared routing nodes between the distribution routes may include the following steps:
[0119] When there is a shared routing node between the allocated routes, if the shared routing node is larger than the maximum node capacity, the shared link routing node is deleted, and the allocated route is re-determined with the adjacent routing node of the shared link as the starting point, and the allocated route that meets the preset delay limit is returned to be executed.
[0120] In an embodiment of the present invention, if there is a shared routing node in the distribution routes corresponding to each user service, it can be said that the computing resources in the computing network used to process each user service are not independent of each other. In this case, it is necessary to confirm whether the distribution route corresponding to each user service can be used as the target distribution route based on the situation of the shared routing node, or to confirm that the distribution route needs to be recalculated, and then determine whether there is a shared routing node and a shared link based on the recalculated distribution route.
[0121] In the embodiment of the present invention, the maximum capacity of the node is preset. The specific value of the maximum capacity of the node can be set according to actual needs, and the embodiment of the present invention does not need to be limited to this.
[0122] Specifically, when there is a shared routing node between the distribution routes, if the data storage capacity of the shared routing node is greater than the maximum capacity of the node, it means that the routing node may have exceeded the load. In order to ensure the load balance of the computing power network and improve the overall performance of the computing power network, at this time, the embodiment of the present invention can delete the shared routing node in the distribution route, and use the routing node adjacent to the shared link as the starting point to redetermine the distribution route that meets the preset delay limit, until there is no shared link and shared routing node between the redetermined distribution routes, or the data storage capacity of the shared routing node is less than the maximum capacity of the node.
[0123] In the specific implementation of the embodiment of the present invention, when there are no shared links and shared routing nodes between the allocation routes corresponding to various user services, the allocation routes corresponding to various user services can be directly determined as the target allocation routes. When there are shared links or shared routing nodes between the allocation routes corresponding to various user services, it is necessary to determine whether the data storage quantity of the shared links of the allocation routes is greater than the maximum capacity of the nodes and / or whether the data storage quantity of the shared routing nodes is greater than the maximum capacity of the links. If the data storage quantity of the shared links is less than or equal to the maximum capacity of the nodes and / or the data storage quantity of the shared routing nodes is less than or equal to the maximum capacity of the links, the allocation routes corresponding to various user services can also be determined as the target allocation routes. If the data storage quantity of the shared links is greater than the maximum capacity of the nodes and / or the data storage quantity of the shared routing nodes is greater than the maximum capacity of the links, the shared links or shared routing nodes need to be deleted and the allocation routes recalculated until there are no shared links and shared routing nodes between the allocation routes corresponding to various user services, or the data storage quantity of the shared links is less than or equal to the maximum capacity of the nodes and / or the data storage quantity of the shared routing nodes is less than or equal to the maximum capacity of the links.
[0124] Step 104: Use the computing resources of the edge server corresponding to the target allocation route to process the user business.
[0125] In the embodiment of the present invention, after determining the target allocation route for each user service pair, the computing resources of the corresponding edge server can be scheduled according to the target allocation route to process the user service.
[0126] In the above-mentioned resource allocation method, after receiving a user service request for processing a user service from a terminal device, a distribution route that meets a preset delay limit is determined for each user service, and then a target distribution route is determined based on the links and shared routing nodes shared between the distribution routes, so that the computing power resources of the edge server corresponding to the target distribution route can be used to process the user service. By applying the embodiment of the present invention, it is possible to determine whether the links or routing nodes between each user service exceed the load based on the links and shared routing nodes shared between each user service, so as to finally confirm the final target distribution route, thereby realizing dynamic and flexible scheduling of computing power resources to provide services to users, ensuring load balancing of the computing power network, and making full use of the computing power resources of the edge servers in the computing power network, thereby improving the overall performance of the computing power network.
[0127] In order to enable those skilled in the art to better understand the embodiments of the present invention, specific examples are used below for illustration.
[0128] The Floyd algorithm, also known as the insertion point method, is an algorithm that uses dynamic programming to find the shortest path between any source-destination point pair in a given weighted graph. The computing power resource allocation method of the embodiment of the present invention can be used for scheduling path calculation in SDN (Software-defined Networking) networks, and can also be used for computing power resource allocation in fields such as vehicle networking and autonomous driving.
[0129] In an embodiment of the present invention, the Floyd algorithm is improved and used for computing power resource allocation. Specifically, an embodiment of the present invention proposes a computing power resource allocation method based on the improved Floyd algorithm. The computing power resource allocation method is used for a computing power network, which is composed of terminal devices, base stations, edge gateways, edge servers, and central processors.
[0130] The terminal device is used to initiate a service request and transmit it to the base station through the wireless network. The edge server is mainly responsible for routing control and data forwarding. The edge gateway can be deployed on the base station side. Routing nodes can transmit data through real-time dynamic links. The edge server is mainly used to provide storage resources and computing resources to process user services. Data is transmitted between the edge server and the edge gateway through a fixed link. The central processor is a large server with sufficient storage resources and computing resources at a certain distance from the user. There is a fixed link between the edge server and the central server for data transmission. For details, see Figure 2 , which is a system block diagram of computing resource allocation according to an embodiment of the present invention, and specifically includes a communication module, an optimization target determination module, and a computing resource allocation module. Figure 3 , which is a schematic diagram of a specific implementation process of a computing resource allocation method according to an embodiment of the present invention, which may specifically include:
[0131] S1 (executed by the communication module): Communicate between the terminal device and the edge server. Specifically, the terminal initiates a communication connection request, and the edge server establishes a connection with the terminal device after receiving the request.
[0132] S2 (executed by the optimization target determination module): Determine the optimization target based on the task access delay, transmission delay, and task processing delay.
[0133] Specifically, the optimization objectives are as follows:
[0134]
[0135]
[0136] In the above formula, K nRepresents the set of all user services scheduled to edge server n. The constraint C1 means that the storage resources available to all user services scheduled to the edge server are not greater than the storage resources that the edge server can provide. The constraint C2 means that the computing resources available to all user services scheduled to the edge server are not greater than the computing resources that the edge server can provide.
[0137] Specifically, T ka Refers to the access delay from user service k to access routing node A, specifically T ka The calculation process is as follows:
[0138]
[0139] In the above formula, O k Refers to the size of user service k, R k,A Refers to the data transmission rate from user service k to the accessed routing node A.
[0140] T kij Refers to the data transmission delay of user service k between routing node i and routing node j. Data is transmitted between the edge server and the routing node through a fixed link. Specifically, T kij The calculation process is as follows:
[0141]
[0142] In the above formula, w i,j represents the data transmission rate between routing node i and routing node j, which meets the following requirements: when i == j, w i,j =∞; when i≠j and there is a link between i and j, w i,j = r1; when i≠j and there is no link between i and j, w i,j =0.
[0143] T kna If user service k selects edge server n, the arrival delay of the data transmitted through the routing node to edge server n is:
[0144]
[0145] In the above formula, R i,n Refers to the data transmission rate between routing node i and edge server n. When there is a direct link between i and n, R i,n =∞, when there is no direct link between i and n, R i,n =r2.
[0146] S3 (executed by the computing power resource allocation module): Computing power resources are allocated according to the optimization target. The present invention calculates the shortest delay of the user service route to each edge server and its corresponding specific scheduling path based on the Floyd algorithm, and then selects the computing node with the shortest delay as the best edge server. The path determined by the Floyd algorithm is used as the optimal routing strategy. The Floyd algorithm is improved by adding node degree restrictions when generating links. That is, for any routing node, constraints are set on the number of links associated with it. Specifically, when adding a routing node S, if the number of times the routing node S appears reaches a threshold number, if the threshold number is reached, the routing node S will no longer be added.
[0147] The input of the improved Floyd algorithm may include: edge server status Z, number of edge servers N, link status W, computing power requirement S of user services, and number of user services K. Specifically, the execution process of the Floyd algorithm in the embodiment of the present invention is as follows:
[0148] S3.1: Identify user needs.
[0149] S3.2: For each user service request, determine the allocation route that meets the delay constraint corresponding to the user service of each user service request based on the Floyd algorithm.
[0150] S3.3: Determine whether there are shared links and shared routing nodes between any user services. If not, select the distribution route as the optimal target distribution route.
[0151] S3.4: If there is a shared link between the distribution routes of the user service, determine whether the data storage capacity of the shared link is greater than the maximum capacity of the link. If so, delete the shared link and use the adjacent switch nodes of the shared link as the source and destination nodes. Based on the Floyd algorithm, find the shortest route again (the distribution route that meets the delay constraint) and determine the distribution route by minimizing the link delay.
[0152] S3.5: If there is a shared routing node between the distribution routes of the user service, determine whether the data storage capacity of the shared routing node is greater than the maximum capacity of the node. If so, delete the shared routing node and use the two adjacent nodes of the shared routing node as the source and destination nodes. When adding a node S, determine whether the number of times S appears has reached the threshold number. If so, no more nodes will be added.
[0153] At present, in the existing technology, there is no computing power resource allocation mechanism using the Floyd algorithm or the improved Floyd algorithm. In the embodiment of the present invention, computing power resource allocation based on the Floyd algorithm can enable edge servers to effectively collaborate on processing tasks, meet the task requirements of both high computing and low latency, make full use of the computing power resources of the computing power network, effectively coordinate the management of computing power and network, and alleviate the problem of unbalanced network load.
[0154] In the embodiment of the present invention, the Floyd algorithm is improved, the optimization target is determined according to the delay, and the node degree restriction is added when the link is generated. This can not only enable the user business to allocate computing resources as quickly as possible, but also prevent the same computing node from taking on too many computing tasks, greatly reducing the computational complexity of the Floyd algorithm and effectively reducing the complexity of the algorithm.
[0155] It should be noted that for the sake of simplicity, the method embodiments are described as a series of actions. However, those skilled in the art should be aware that the embodiments of the present invention are not limited by the order of the actions described, because according to the embodiments of the present invention, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in this specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present invention.
[0156] Reference Figure 4 , shows a structural block diagram of a computing resource allocation device provided in an embodiment of the present invention, which is applied to a computing network. The computing network includes at least a terminal device and an edge server. The device may specifically include the following modules:
[0157] The user service receiving module 401 is used to receive a user service request sent by a terminal device to process a user service;
[0158] The allocation route determination module 402 is configured to determine, for each of the user services, an allocation route that satisfies a preset delay constraint; the allocation route includes a routing node and a link between the routing nodes;
[0159] The target distribution route determination module 403 is configured to determine the target distribution route according to the shared links and shared routing nodes between the distribution routes;
[0160] The user service processing module 404 is configured to process the user service using the computing resources of the edge server corresponding to the target allocation route.
[0161] In an optional embodiment of the present invention, the allocation route determination module 402 is specifically configured to:
[0162] For each of the user services, an allocation route that meets the preset delay limit is determined respectively. If the number of occurrences of the added routing node in the allocated allocation route exceeds a preset threshold number, the allocated routing node is no longer added to the unallocated allocation route.
[0163] In an optional embodiment of the present invention, the target allocation route determination module 403 is specifically configured to:
[0164] When there is no shared link and no shared routing node between the distribution routes, the distribution route is determined as the target distribution route.
[0165] In an optional embodiment of the present invention, the target allocation route determination module 403 is specifically configured to:
[0166] When there is a shared link between the allocated routes, if the data storage capacity of the shared link is greater than the maximum capacity of the link, the shared link is deleted, and the routing node adjacent to the shared link is used as the starting point to return to execute the allocated routes that are respectively determined to meet the preset delay limit.
[0167] In an optional embodiment of the present invention, the target allocation route determination module 403 is specifically configured to:
[0168] When there is a shared routing node between the allocated routes, if the shared routing node is larger than the maximum node capacity, the shared link routing node is deleted, and the allocated route is re-determined with the adjacent routing node of the shared link as the starting point, and the allocated route that meets the preset delay limit is returned to be executed.
[0169] In an optional embodiment of the present invention, the allocation route determination module 402 is specifically configured to:
[0170] Determine, for each of the user services, a distribution route that satisfies a preset delay constraint according to the calculation formula, wherein the calculation formula includes:
[0171]
[0172] Wherein, P represents the assigned route, K represents the user service set, and K n represents the set of all user services dispatched to the edge server N, the T ka represents the access delay of user service k to access routing node A, where T kij Identifies the data transmission delay of user service k between routing node i and routing node j, where T kna If user service k selects edge server N, it represents the arrival delay of transmission to edge server N through the routing node.
[0173] In an optional embodiment of the present invention,
[0174] The T ka Use the following calculation formula:
[0175] Among them, the O k Indicates the size of user service k, the R k,A represents the data transmission rate from user service k to the connected routing node A;
[0176] The T kij Use the following calculation formula:
[0177] Among them, the w i,j represents the data transmission rate between routing node i and routing node j, which meets the following requirements:
[0178] When i==j, w i,j =∞;
[0179] When i≠j and there is a link between i and j, w i,j =r1;
[0180] When i≠j and there is no link between i and j, w i,j =0;
[0181] The T kna Use the following calculation formula:
[0182] Among them, the R i,n R represents the data transmission rate between routing node i and edge server n. When there is a direct link between routing node i and edge server n, R i,n =∞, when there is no direct link between routing node i and edge server n, R i,n =r2.
[0183] In an embodiment of the present invention, after receiving a user service request for processing a user service sent by a terminal device, a distribution route that meets a preset delay limit is determined for each user service, and then a target distribution route is determined based on the links and shared routing nodes shared between the distribution routes, so that the computing power resources of the edge server corresponding to the target distribution route can be used to process the user service. By applying an embodiment of the present invention, it is possible to determine whether the links or routing nodes between each user service exceed the load based on the links and shared routing nodes shared between each user service to finally confirm the final target distribution route, thereby achieving dynamic and flexible scheduling of computing power resources to provide services to users, ensuring load balancing of the computing power network, and making full use of the computing power resources of the edge servers in the computing power network, thereby improving the overall performance of the computing power network.
[0184] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0185] In addition, an embodiment of the present invention also provides an electronic device, including: a processor, a memory, and a computer program stored in the memory and runnable on the processor. When the computer program is executed by the processor, the various processes of the above-mentioned computing power resource allocation method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
[0186] The present invention also provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the various processes of the above-described computing resource allocation method embodiment are implemented, and the same technical effects are achieved. To avoid repetition, the details are not described here. The computer-readable storage medium may be, for example, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0187] An embodiment of the present invention also provides a computer program product, which is stored in a storage medium and is executed by at least one processor to implement the various processes of the above-mentioned computing power resource allocation method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0188] Figure 5 A schematic diagram of the hardware structure of an electronic device for implementing various embodiments of the present invention.
[0189] The electronic device 500 includes but is not limited to: a radio frequency unit 501, a network module 502, an audio output unit 503, an input unit 504, a sensor 505, a display unit 506, a user input unit 507, an interface unit 508, a memory 509, a processor 510, and a power supply 511. It will be understood by those skilled in the art that Figure 5 The electronic device structure shown in the figure does not constitute a limitation on the electronic device. The electronic device may include more or fewer components than shown, or may combine certain components or arrange the components differently. In the embodiments of the present invention, the electronic device includes but is not limited to a mobile phone, a tablet computer, a laptop computer, a PDA, an in-vehicle terminal, a wearable device, and a pedometer.
[0190] It should be understood that in this embodiment of the present invention, the RF unit 501 can be used to receive and transmit signals during information transmission or calls. Specifically, it receives downlink data from the base station and transmits it to the processor 510 for processing; in addition, it transmits uplink data to the base station. Typically, the RF unit 501 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low-noise amplifier, a duplexer, and the like. Furthermore, the RF unit 501 can communicate with the network and other devices via a wireless communication system.
[0191] The electronic device provides users with wireless broadband Internet access through the network module 502, such as helping users to send and receive emails, browse web pages, and access streaming media.
[0192] The audio output unit 503 can convert audio data received by the RF unit 501 or the network module 502 or stored in the memory 509 into an audio signal and output it as sound. In addition, the audio output unit 503 can also provide audio output related to a specific function performed by the electronic device 500 (for example, a call signal reception sound, a message reception sound, etc.). The audio output unit 503 includes a speaker, a buzzer, a receiver, etc.
[0193] The input unit 504 is used to receive audio or video signals. The input unit 504 may include a graphics processing unit (GPU) 5041 and a microphone 5042. The graphics processor 5041 processes image data of a still picture or video obtained by an image capture device (such as a camera) in a video capture mode or an image capture mode. The processed image frames can be displayed on the display unit 506. The image frames processed by the graphics processor 5041 can be stored in the memory 509 (or other storage medium) or transmitted via the radio frequency unit 501 or the network module 502. The microphone 5042 can receive sound and process such sound into audio data. The processed audio data can be converted into a format that can be sent to a mobile communication base station via the radio frequency unit 501 in the case of a telephone call mode.
[0194] The electronic device 500 also includes at least one sensor 505, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor includes an ambient light sensor and a proximity sensor, wherein the ambient light sensor can adjust the brightness of the display panel 5061 according to the brightness of the ambient light, and the proximity sensor can turn off the display panel 5061 and / or the backlight when the electronic device 500 is moved to the ear. As a type of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used to identify the posture of the electronic device (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc.; the sensor 505 can also include a fingerprint sensor, a pressure sensor, an iris sensor, a molecular sensor, a gyroscope, a barometer, a hygrometer, a thermometer, an infrared sensor, etc., which will not be repeated here.
[0195] The display unit 506 is used to display information input by the user or information provided to the user. The display unit 506 may include a display panel 5061, which may be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like.
[0196] The user input unit 507 can be used to receive input digital or character information, and to generate key signal input related to the user settings and function control of the electronic device. Specifically, the user input unit 507 includes a touch panel 5071 and other input devices 5072. The touch panel 5071, also known as a touch screen, can collect user touch operations on or near it (such as operations performed by the user using any suitable object or accessory such as a finger, stylus, etc. on or near the touch panel 5071). The touch panel 5071 may include two parts: a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch direction and detects the signal caused by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device and converts it into touch point coordinates, which are then sent to the processor 510, which receives and executes the command sent by the processor 510. In addition, the touch panel 5071 can be implemented using various types such as resistive, capacitive, infrared, and surface acoustic wave. In addition to the touch panel 5071, the user input unit 507 may also include other input devices 5072. Specifically, other input devices 5072 may include but are not limited to a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick, which are not described in detail here.
[0197] Furthermore, the touch panel 5071 may be overlaid on the display panel 5061. When the touch panel 5071 detects a touch operation on or near it, it transmits the information to the processor 510 to determine the type of touch event. Subsequently, the processor 510 provides corresponding visual output on the display panel 5061 according to the type of touch event. Figure 5 In the figure, the touch panel 5071 and the display panel 5061 are two independent components to realize the input and output functions of the electronic device. However, in some embodiments, the touch panel 5071 and the display panel 5061 can be integrated to realize the input and output functions of the electronic device, which is not limited here.
[0198] The interface unit 508 is an interface for connecting external devices to the electronic device 500. For example, the external devices may include a wired or wireless headset port, an external power supply (or battery charger) port, a wired or wireless data port, a memory card port, a port for connecting a device with an identification module, an audio input / output (I / O) port, a video I / O port, a headphone port, etc. The interface unit 508 may be used to receive input (e.g., data information, power, etc.) from the external device and transmit the received input to one or more elements within the electronic device 500, or may be used to transmit data between the electronic device 500 and the external device.
[0199] Memory 509 can be used to store software programs and various data. Memory 509 may primarily include a program storage area and a data storage area. The program storage area may store an operating system and at least one application required for a function (such as a sound playback function or an image playback function); the data storage area may store data generated based on the use of the mobile phone (such as audio data, a phone book, etc.). Furthermore, memory 509 may include high-speed random access memory and non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device.
[0200] The processor 510 is the control center of the electronic device. It connects the various components of the electronic device using various interfaces and circuits. By running or executing software programs and / or modules stored in the memory 509 and accessing data stored in the memory 509, it performs various functions of the electronic device and processes data, thereby monitoring the electronic device as a whole. The processor 510 may include one or more processing units; preferably, the processor 510 may integrate an application processor and a modem processor, wherein the application processor primarily processes the operating system, user interface, and application programs, while the modem processor primarily handles wireless communications. It is understood that the modem processor may not be integrated into the processor 510.
[0201] The electronic device 500 may also include a power supply 511 (such as a battery) to supply power to each component. Preferably, the power supply 511 may be logically connected to the processor 510 through a power management system, thereby managing functions such as charging, discharging, and power consumption through the power management system.
[0202] In addition, the electronic device 500 includes some functional modules not shown, which will not be described here.
[0203] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.
[0204] Through the description of the above embodiments, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better embodiment. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for enabling a terminal (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in each embodiment of the present invention.
[0205] The embodiments of the present invention are described above in conjunction with the accompanying drawings, but the present invention is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present invention, ordinary technicians in this field can also make many forms without departing from the scope of protection of the present invention and the claims, all of which are protected by the present invention.
[0206] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed in the embodiments of the present invention can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.
[0207] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0208] In the embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0209] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0210] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0211] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program code, such as a USB flash drive, a mobile hard drive, ROM, RAM, a magnetic disk, or an optical disk.
[0212] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any modifications or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be based on the scope of protection of the claims.
Claims
1. A computing resource allocation method, characterized in that: Applied to a computing power network, the computing power network includes at least a terminal device and an edge server, and the method includes: Receiving user service requests sent by terminal equipment to process user services; For each user service, determining a distribution route that meets a preset delay limit, and if the number of occurrences of an added routing node in the allocated distribution route exceeds a preset threshold number, no longer adding the allocated routing node to the unallocated distribution route; the allocated route includes routing nodes and links between the routing nodes; Determining a target distribution route according to the shared links and shared routing nodes between the distribution routes; Processing the user business using computing resources of the edge server corresponding to the target allocation route; The determining of the target distribution route according to the shared links and shared routing nodes between the distribution routes includes: When there is a shared link between the assigned routes, if the data storage capacity of the shared link is greater than the maximum capacity of the link, the shared link is deleted, and the routing nodes adjacent to the shared link are used as the source and destination nodes, and the assigned routes determined to meet the preset delay limit are returned for execution; When there is a shared routing node between the distribution routes, if the data storage capacity of the shared routing node is greater than the maximum capacity of the node, the shared routing node is deleted, and the distribution route is re-determined with the routing nodes adjacent to the shared routing node as the source and destination nodes, and the distribution route determined to meet the preset delay limit is returned to be executed.
2. The method according to claim 1, characterized in that The determining the target distribution route according to the shared links and shared routing nodes between the distribution routes includes: When there is no shared link and no shared routing node between the distribution routes, the distribution route is determined as the target distribution route.
3. The method according to claim 1, characterized in that The step of determining, for each of the user services, a distribution route that satisfies a preset delay constraint includes: Determine, for each user service, a distribution route that satisfies a preset delay constraint according to a calculation formula, wherein the calculation formula includes: Wherein, P represents the assigned route, K represents the user service set, and T ka represents the access delay of user service k to access routing node A, where T kij represents the data transmission delay of user service k between routing node i and routing node j, where T kna If user service k selects edge server N, it represents the arrival delay of transmission to edge server N through the routing node.
4. The method according to claim 3, characterized in that The T ka Use the following calculation formula: Among them, the O k Indicates the size of user service k, the R k,A represents the data transmission rate from user service k to the connected routing node A; The T kij Use the following calculation formula: Among them, the w i,j represents the data transmission rate between routing node i and routing node j, which meets the following requirements: When i==j, w i,j =∞; When i≠j and there is a link between i and j, w i,j =r1; When i≠j and there is no link between i and j, w i,j =0; The T kna Use the following calculation formula: Among them, the R i,n R represents the data transmission rate between routing node i and edge server n. When there is a direct link between routing node i and edge server n, R i,n =∞, when there is no direct link between routing node i and edge server n, R i,n =r2.
5. A computing resource allocation device, characterized in that: Applied to a computing network, the computing network includes at least a terminal device and an edge server, and the apparatus includes: A user service receiving module is used to receive user service requests sent by terminal equipment to process user services; an allocation route determination module, configured to determine, for each user service, an allocation route that satisfies a preset delay constraint, and if the number of occurrences of an added routing node in an allocated allocation route exceeds a preset threshold, no longer adding the allocated routing node to an unallocated allocation route; the allocation route includes routing nodes and links between the routing nodes; a target allocation route determination module, configured to determine the target allocation route according to the shared links and shared routing nodes between the allocation routes; A user service processing module, configured to process the user service using the computing resources of the edge server corresponding to the target allocation route; The target allocation routing determination module is specifically used to: When there is a shared link between the assigned routes, if the data storage capacity of the shared link is greater than the maximum capacity of the link, the shared link is deleted, and the routing nodes adjacent to the shared link are used as the source and destination nodes, and the assigned routes determined to meet the preset delay limit are returned for execution; When there is a shared routing node between the distribution routes, if the data storage capacity of the shared routing node is greater than the maximum capacity of the node, the shared routing node is deleted, and the distribution route is re-determined with the routing nodes adjacent to the shared routing node as the source and destination nodes, and the distribution route determined to meet the preset delay limit is returned to be executed.
6. An electronic device, characterized in that: comprising a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus; The memory is used to store computer programs; The processor is configured to implement the method according to any one of claims 1 to 4 when executing a program stored in the memory.
7. A computer-readable storage medium having instructions stored thereon, which, when executed by one or more processors, cause the processors to perform the method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Terminal service processing method and device
CN114884862A