Business collaborative scheduling method and device suitable for decentralized multi-cluster Internet of Things
By deploying the control management scheduling function module on the cluster head node of the decentralized multi-cluster IoT, and using the fast-hierarchical decentralized collaborative scheduling algorithm (DCS-FL) for business collaborative scheduling, multiple problems in IoT resource scheduling are solved, and more efficient and secure resource utilization and deployment are achieved.
Patent Information
- Application Number
- CN202510180129.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-19
- Publication Date
- 2025-04-22
- Estimated Expiration
- 2045-02-19
AI Technical Summary
The existing IoT resource scheduling scheme has failed to effectively solve the problem of "energy holes" of nodes near the base station, resource recycling and reuse when nodes fail, dynamic setting of data priority, low time slot reuse rate of heterogeneous IoT resources, and Internet of Things security risks.
A service collaborative scheduling method suitable for decentralized multi-cluster IoT is proposed. By deploying the control management scheduling function module on the cluster head node of each cluster, and calling the fast-hierarchical decentralized collaborative scheduling algorithm (DCS-FL) to realize online processing and dynamic deployment between multiple service requests.
It effectively reduces the risk of information leakage, improves deployment speed and efficiency, and improves the utilization and security of IoT resources.
Smart Images

Figure CN119676184B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of Internet of Things scheduling, and more specifically, to a service collaborative scheduling method and device suitable for a decentralized multi-cluster Internet of Things. Background Art
[0002] With the continuous development of computer network technology, the application of the Internet of Things has penetrated into all aspects of our lives. As an extension and expansion of the Internet, the Internet of Things combines various sensor technologies and communication methods to connect objects with the Internet and is applied to all aspects of real life, including food traceability, smart medical care, safe homes, etc., setting off another wave of development of the world's information industry.
[0003] Resource scheduling, as the premise and foundation of data transmission and management in IoT systems, plays an important role in ensuring IoT performance and effectively avoiding transmission interference. However, many IoT resource scheduling schemes do not consider the "energy hole" problem of nodes near base stations, and ignore the problem of timely recovery and reuse of network resources when nodes fail; generally, priority-based resource scheduling pre-sets the priority of data, and cannot detect multiple types of emergency data at the same time, and in some data monitoring applications, data priority is difficult to set in advance; in some heterogeneous IoT resource scheduling, the time slot reuse rate is difficult to improve, and the network resource utilization rate is low. In addition, with the in-depth promotion and application of IoT technology, security risks are also increasing. As a heterogeneous multi-network converged network, IoT has the characteristics of different computing capabilities of network nodes and limited energy, which makes information easy to be leaked. At the same time, the number of terminal nodes is huge, the coverage is wide, and the deployment environment is complex and changeable, which is also easy to cause data congestion during transmission, leading to denial of service problems. Therefore, how to effectively ensure the security of IoT has become a new round of hot research. Summary of the invention
[0004] The purpose of the present invention is to overcome the shortcomings of the prior art and provide a service collaborative scheduling method and device suitable for a decentralized multi-cluster Internet of Things, which can reduce information leakage and quickly complete deployment.
[0005] The object of the present invention is achieved through the following solutions:
[0006] A service collaborative scheduling method applicable to a decentralized multi-cluster Internet of Things, wherein an algorithm is deployed in a control management scheduling function module on a cluster head node of each cluster of the multi-cluster Internet of Things, and the control management scheduling function module on each cluster head node calls the algorithm to complete an online processing process between multiple service requests, thereby deploying dynamically arriving service requests; wherein the calling algorithm completes the online processing process between multiple service requests, specifically comprising the following steps:
[0007] Assume that business requests based on the directed acyclic graph (DAG) arrive dynamically according to the Poisson process, and these DAG-based business requests are stored in the queue ArrivedT In this ArrivedT In the process, each business request is deployed one by one. ExpiredT For a collection of outgoing business requests, T blo A set of business requests that are blocked due to insufficient physical network resources; , Resource Constraints And DAG-based business request queue ArrivedT back, Represents a collection of physical nodes, Represents a collection of physical links, | NP | and | EP | respectively represent the number of physical nodes and physical links, Represents a collection of physical network node attributes, Represents a collection of physical network link attributes, Represents a collection of physical network node locations and performs the following process:
[0008] Step 1: Initialize the blocked service request set in the control management scheduling function module on the cluster head node of each cluster of the Internet of Things T blo = , represents the empty set;
[0009] Step 2: If the service request queue in the control management scheduling function module on the cluster head node of each cluster of the Internet of Things ArrivedT ≠ , proceed to the next step; otherwise, go to step 9;
[0010] Step 3: According to the outgoing service request set in the control management scheduling function module on the cluster head node of each cluster of the Internet of Things ExpiredT Update IoT resources and make ExpiredT= ;
[0011] Step 4: Determine the main computing cluster that provides services from multiple IoT clusters based on the user's location and set the number of tiers m ;
[0012] Step 5: Deploy in a queue ArrivedT The first DAG-based business G T ;
[0013] Step 6: If you find a business G TDeployment plan M T , proceed to the next step; otherwise, go to step 8;
[0014] Step 7: According to the business G T Deployment plan M T Update IoT, Update ArrivedT = ArrivedT { G T}, where "=" indicates assignment operation, then go to step 2;
[0015] Step 8: Update T blo = T blo ∪{ G T}and ArrivedT = ArrivedT { G T}, where "=" indicates assignment operation, then go to step 2;
[0016] Step 9: Return to the deployment plan M and a set of blocked business requests T blo .
[0017] Further, in step 5, the deployment in the queue ArrivedT The first DAG-based business G T , specifically including the following sub-steps:
[0018] Enter the physical network , Resource Constraints , the scheduling node of the main computing cluster n 0. Number of layers to be divided m , DAG-based business G T = ( N T , E T ) and deployment constraints PC = ( C N , C E , C D ), where N T ={ t 1, t 2,…, t |NT|} represents the sub-service set of DAG-based service requests, | NT | indicates the number of sub-services in the DAG-based service request, E T = { e 1, e 2,…, e |ET|} represents the set of links for service requests, | ET | Indicates a business request The number of links , perform the following process:
[0019] Step 5.1: Initial T blo = ;
[0020] Step 5.2: Scheduling nodes based on the main computing cluster n 0 and the number of layers to be divided m Perform network stratification and obtain stratification results NL k ∈ NL , k =1, 2, …, m ;
[0021] Step 5.3: All sub-businesses t i ∈ N T Place the scheduling node in the main computing cluster n 0 task queue, waiting for the main computing cluster's working node to complete each sub-business t i Conduct a bid auction;
[0022] Step 5.4: Traverse each sub-business t i ∈ N T , proceed to the next step, if N T The sub-businesses in have been traversed, so go to step 5.16;
[0023] Step 5.5: Traverse each working node of the main computing cluster in the physical network n x of n x ∈ N P , proceed to the next step. If the working nodes of the main computing cluster in the physical network have been traversed, go to step 5.10;
[0024] Step 5.6: If the worker node nx For sub-business t i Give a quote and calculate the latency, and satisfy the sub-business t i If yes, proceed to the next step; otherwise, go to step 5.5;
[0025] Step 5.7: Try to establish a link between sub-services;
[0026] Step 5.8: If with sub-business t i If the relevant link is established successfully, proceed to the next step; otherwise, go to step 5.5;
[0027] Step 5.9: Record sub-business t i The deployment record is calculated according to formula (1) t i Deploy to nodes n x cost, go to step 5.5;
[0028] (1);
[0029] in, Representation Node n x The quoted cost, Representation and sub-business t i The sum of the relevant link costs, Representation Node n x Estimated computational latency, Indicates the adjustment factor of the calculation delay, t i Indicates i Sub-business, n x Indicates x physical nodes, E i Deployment i The set of all links that need to be deployed for each sub-service. e j Represents a link set E i A link in -> indicates deployment or mapping;
[0030] Step 5.10: From the sub-business t i Select the deployment plan with the lowest cost among all deployment plans;
[0031] Step 5.11: If a sub-business is foundt i Deployment solutions that meet your needs M ( t i ), proceed to the next step; otherwise, go to step 5.13;
[0032] Step 5.12: Update N T = N T { t i}, and go to step 5.4;
[0033] Step 5.13: Deploy sub-services t i ;
[0034] Step 5.14: If a sub-business is found t i Deployment solutions that meet your needs M ( t i ), then execute the next step; otherwise, return error flase;
[0035] Step 5.15: Update N T = N T { t i}, and go to step 5.4;
[0036] Step 5.16: Return M ( G T ).
[0037] Further, in step 5.2, the scheduling node according to the main computing cluster n 0 and the number of layers to be divided m The network layering includes the following sub-steps:
[0038] Enter the physical network , the scheduling node of the main computing cluster n 0. Number of layers to be divided m Then, perform the following process:
[0039] Step 5.2.1: Check the registration status of all working nodes of the main computing cluster. If the working node is registered to multiple computing clusters, store the scheduling nodes of these computing clusters into the collection NL 1 in;
[0040] Step 5.2.2: Check the adjacent computing clusters of the main computing cluster and store the scheduling nodes of the computing clusters that are 1 hop away from the border router of the main computing cluster into the set NL 1 in;
[0041] Step 5.2.3: Check the adjacent computing clusters of the main computing cluster and store the scheduling nodes of the computing clusters that are 2 hops away from the border router of the main computing cluster into the set NL 2 in;
[0042] Step 5.2.4: Check the adjacent computing clusters of the main computing cluster and store the scheduling nodes of the computing clusters that are 3 hops away from the border router of the main computing cluster into the set NL 3 in;
[0043] Step 5.2.5: Continue to follow the steps 5.2.2 to 5.2.4 to set the distance from the primary computing cluster border router to m The scheduling nodes of the computing cluster to be jumped are stored in the set NL m middle;
[0044] Step 5.2.6: Output the set of all layers NL k ∈ NL , k =1, 2, …, m .
[0045] Furthermore, in step 5.13, the deployment sub-service t i , specifically including the following sub-steps:
[0046] Enter the physical network , Resource Constraints , all standby computing cluster hierarchical sets NL k ∈ NL , Undeployed sub-services t i and deployment constraints PC = ( C N , C E , C D )back, C N Represents the computing resource requirements of all sub-businesses. C E Represents the bandwidth resource requirements of all links of the service request, C D Represents the calculation delay constraint set of all sub-services, and performs the following process:
[0047] Step 5.13.1: Iterate through each hierarchical collection NL k ∈ NL , k =1, 2, …, m , proceed to the next step, if NL The layers in have been traversed, so go to step 5.13.12;
[0048] Step 5.13.2: Tier the set of standby compute clusters NL k Each standby computing cluster in C j Sort by the total amount of currently available resources in descending order;
[0049] Step 5.13.3: Traverse the Hierarchical Collection NL k Each standby computing cluster in C j ∈ NL k , proceed to the next step, if NL k Backup computing cluster in C j After the traversal is completed, go to step 5.13.10;
[0050] Step 5.13.4: The scheduling node of the main computing cluster will execute the unexecuted sub-business t i Broadcast to the standby computing cluster C j Scheduling nodes, standby computing clusters C j The scheduling node puts it into its own task queue, marks it as an external collaborative task, and auctions the sub-business t i ;
[0051] Step 5.13.5: Traverse the spare computing clusters in the physical network C j Each working node n x ∈ N P , proceed to the next step. If the physical network has a spare computing cluster C j The working nodes have been traversed, so go to step 5.13.3;
[0052] Step 5.13.6: If the working node n x For sub-business t i Give a quote and calculate the latency, and satisfy the sub-businesst i If yes, proceed to the next step; otherwise, go to step 5.13.5;
[0053] Step 5.13.7: Try to establish a link between sub-services;
[0054] Step 5.13.8: If with sub-business t i If the relevant link is established successfully, proceed to the next step; otherwise, go to step 5.13.5;
[0055] Step 5.13.9: Record sub-business t i The deployment record is obtained and the cost is calculated according to formula (1), and then go to step 5.13.5;
[0056] Step 5.13.10: From the sub-business t i Select the deployment plan with the lowest cost among all deployment plans;
[0057] Step 5.13.11: If a sub-business is found t i Deployment solutions that meet your needs M ( t i ), proceed to the next step; otherwise, go to step 5.13.1;
[0058] Step 5.13.12: Return to the deployment plan M ( t i ).
[0059] Furthermore, the multi-cluster Internet of Things is a multi-cluster Internet of Things based on SDN.
[0060] A service collaborative scheduling device suitable for a decentralized multi-cluster Internet of Things comprises a processor and a memory, wherein a computer program is stored in the memory, and when the computer program is loaded by the processor, any of the methods described above is executed.
[0061] The beneficial effects of the present invention include:
[0062] (1) The present invention can effectively prevent privacy leakage. Most traditional service deployment algorithms are proposed for centralized Internet of Things. The centralized scheduling method makes it easy for information to be leaked, and security risks also increase. The decentralized collaborative scheduling method proposed in the present invention can reduce information leakage.
[0063] (2) The present invention has a fast deployment speed. Most traditional service deployment algorithms are proposed for centralized Internet of Things. When facing large-scale networks, the delay of centralized scheduling will greatly affect user services. The decentralized multi-cluster collaborative scheduling algorithm based on fast layering proposed in the present invention can quickly complete deployment. BRIEF DESCRIPTION OF THE DRAWINGS
[0064] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.
[0065] Figure 1 Schematic diagram of a multi-cluster Internet of Things in an embodiment of the present invention;
[0066] Figure 2 The figure is a schematic diagram of a DAG-based service in an embodiment of the present invention. DETAILED DESCRIPTION
[0067] All features disclosed in all embodiments in this specification, or steps in all methods or processes implicitly disclosed, except for mutually exclusive features and / or steps, can be combined and / or expanded or replaced in any manner.
[0068] In view of the current situation in the background, the inventor of this application discovered the following technical problems after creative thinking:
[0069] The IoT clustering technology divides the network into different clusters. By managing other member nodes through cluster head nodes, the IoT energy consumption can be effectively reduced and its life cycle can be extended. The IoT clustering technology distinguishes high-intelligence nodes from low-energy nodes to avoid wasting network resources and energy. Clustering is performed based on node geographic location information. The first round of cluster head election selects the best node in the cluster as the cluster head based on the computing power, remaining energy and topological connectivity of the node in the network. A trust mechanism is added to the cluster head update phase. The clustering structure can reasonably allocate network resources while improving network security. High-intelligence nodes are used as cluster heads to collect and forward security information, which improves network stability and life. In this method, each cluster has a local scheduler and assigns jobs to the cluster, which has the ability to perform the task. Due to the small size of a single cluster, a single cluster cannot schedule large tasks. Therefore, we need to study the IoT resource scheduling method based on multiple clusters to meet large-scale tasks.
[0070] At present, there are some algorithms for collaborative resource scheduling in multi-cluster IoT. The main idea is to schedule the resources of multi-cluster IoT through the upper-layer centralized scheduler to meet the needs of the business and coordinate the scheduling of computing resources of different clusters. Although the above method can realize the collaborative scheduling of multi-cluster IoT resources, it is based on the centralized scheduler. The centralized scheduling method makes information easy to be leaked, and the security risks also increase. In addition, when facing large-scale networks, the delay of centralized scheduling will greatly affect the user's service.
[0071] The present invention conceives the following technical solution: Under the premise of providing a known multi-cluster Internet of Things (physical network) and online service requests based on directed acyclic graphs (DAGs), a solution for deploying services in multi-cluster Internet of Things and effectively scheduling the computing resources of multi-cluster Internet of Things is found. Taking into account the connection of each sub-service and link in each service request, and satisfying relevant constraints, the online service request based on DAG is deployed with the goal of consuming the least computing resources, bandwidth resources and reducing the blocking rate. In addition to optimizing the configuration of common bandwidth resource requirements and computing resource requirements, the method also comprehensively considers the particularity of online service requests based on DAG. The present invention is to solve the following technical problem: considering the link connection of each sub-service in the online service request based on DAG and satisfying relevant constraints, how to allocate the computing resources and bandwidth resources of the multi-cluster Internet of Things to each online service request based on DAG, so as to quickly process each online service request based on DAG in the multi-cluster Internet of Things, and finally minimize the total mapping cost while improving the deployment success rate of service requests and the resource utilization rate of multi-cluster Internet of Things.
[0072] Since the problem of deploying DAG-based service requests in a multi-cluster IoT is an NP-hard problem, in order to obtain an effective deployment solution, the present invention proposes a decentralized collaborative scheduling algorithm DCS-FL based on fast layering, where DCS-FL is a self-named term to solve the deployment problem of DAG-based service requests.
[0073] The physical network in the present invention is composed of multiple clusters of Internet of Things, such as Figure 1 As shown. In the present invention, the physical network is modeled as an undirected weighted graph. Among them, Represents a collection of physical nodes, Represents a collection of physical links. | NP | and | EP |Represent the number of physical nodes and physical links respectively.
[0074] Physical network resource constraints: defined in this invention It is constrained by physical network resources.
[0075] Physical network node resource properties: Represents a collection of physical network node attributes. Typical attributes of a physical network server include node type (e.g., cluster head node, member node, and gateway), node resource capacity, c ( n i ) and the unit cost of node resources p ( n i ).
[0076] Cluster head node: It is a management and scheduling node in the cluster, and it has its own control, management and scheduling function module. The cluster head node collects network information in the cluster through its own control, management and scheduling function module, and obtains information such as the resource status of all nodes in the cluster network, the resource status of the links, and the delay. Through this control method, the cluster head node can obtain the topology of the network in the cluster and the corresponding resource information. At the same time, it is responsible for managing the topology of the network in the cluster and the member nodes in the cluster; managing and deploying the services being executed or to be executed, and auctioning the services to be executed; collecting the bidding information of member nodes for the services to be executed, so as to deploy the services while meeting user needs. Member nodes are responsible for participating in the auction of services and executing the services deployed by the cluster head node.
[0077] Physical network link resource attributes: Represents a collection of physical network link attributes. Typical attributes of a physical network link include the bandwidth capacity of the link. c ( l i ) and the unit cost of link resources p ( l i ).
[0078] Physical network node location constraints: Represents the set of all physical network node locations.
[0079] An example of a DAG-based business request is Figure 2 As shown, in the present invention, a DAG-based service request is modeled as a directed acyclic weighted graph. G T = ( N T , E T ),in N T ={ t 1, t 2,…, t |NT|} represents the sub-business set of this DAG-based business request, | NT |Indicates the number of sub-services in this DAG-based service request. E T= { e 1, e 2,…, e |ET|} represents the set of links requested by this service, | ET | Indicates the number of links for service requests . Business requests are usually generated by users within the coverage of each IoT cluster, and are usually deployed in the computing cluster (this computing cluster is called the main computing cluster). Due to the small size of a single cluster, a single computing cluster cannot schedule large tasks. Therefore, sometimes other clusters are needed to coordinate the execution of some sub-businesses (these computing clusters are called standby collaborative computing clusters) to meet tasks that require large-scale computing resources.
[0080] Deployment constraints: PC = ( C N , C E , C D ) represents the deployment constraint set of the business request.
[0081] Resource constraints of business requests: C N ={ ε ( t 1), ε ( t 2),…, ε ( t |NT| )} represents the computing resource requirements of all sub-businesses.
[0082] Link resource constraints for service requests: C E ={ ε ( e 1), ε ( e 2),…, ε ( e |ET| )} represents the bandwidth resource requirement set of all links of the service request.
[0083] Computational latency constraints for service requests: C D ={ d ( t 1), d ( t 2),…, d ( t |NT| )} represents the calculation delay constraint set of all sub-services.
[0084] The DCS-FL algorithm of the present invention is deployed in the control management scheduling function module on the cluster head node of each cluster of the multi-cluster Internet of Things. The control management scheduling function module on each cluster head node calls the decentralized collaborative scheduling algorithm DCS-FL based on fast layering proposed by the present invention, so as to deploy the dynamically arriving service requests, which specifically includes the following steps:
[0085] In the deployment algorithm of DAG-based business requests, define ExpiredT is a set of outgoing service requests. The present invention assumes that DAG-based service requests arrive dynamically according to a Poisson process, and these DAG-based service requests are stored in a queue. ArrivedT In this ArrivedT In the present invention, each service request is deployed one by one. T blo As a set of service requests that are blocked due to insufficient physical network resources. The present invention uses the DCS-FL algorithm to complete the online processing between multiple service requests. The algorithm input is: physical network , Resource Constraints DAG-based business request queue ArrivedT The output is: Deployment plan M and blocked business set T blo The online processing process between multiple business requests is further described in detail, including the following steps:
[0086] Step 1: Initialize the blocked service set in the control management scheduling function module on the cluster head node of each cluster of the Internet of Things T blo = .
[0087] Step 2: If the service request queue in the control management scheduling function module on the cluster head node of each cluster of the Internet of Things ArrivedT ≠ , proceed to the next step; otherwise, go to step 9.
[0088] Step 3: According to the outgoing service queue in the control management scheduling function module on the cluster head node of each cluster of the Internet of Things ExpiredT Update IoT resources and make ExpiredT= .
[0089] Step 4: Determine the main computing cluster that provides services from multiple IoT clusters based on the user's location and set the number of tiers m .
[0090] Step 5: Call the DCSS-FL algorithm and deploy it in the queue ArrivedTThe first DAG-based business G T .
[0091] Step 6: If you find a business G T Deployment plan M T , proceed to the next step; otherwise, go to step 8.
[0092] Step 7: According to the business G T Deployment plan M T Update IoT, Update ArrivedT = ArrivedT { G T}, then go to step 2.
[0093] Step 8: Update T blo = T blo ∪{ G T}and ArrivedT = ArrivedT { G T}, then go to step 2.
[0094] Step 9: Return to the deployment plan M and blocked business set T blo .
[0095] Further, in other embodiments of the present invention, the DCSS-FL algorithm is a decentralized multi-cluster collaborative scheduling sub-algorithm based on fast stratification proposed by the present invention, which is used to realize the collaborative scheduling deployment of a single service in a decentralized multi-cluster Internet of Things. DCSS-FL is a self-named term. First, the stratified set is obtained by calling the multi-cluster network fast stratification algorithm FL-MCN NL k ∈ NL ( k =1, 2, …, m ), FL-MCN is a self-named term; then, deploy services in the main computing cluster. When the main computing cluster cannot meet the needs of the sub-services t i When the resource demand is met, the backup cluster collaborative scheduling algorithm BCCSA is called to deploy the sub-businesses that have not been successfully deployed in the main computing cluster. t i , thereby realizing the coordinated deployment of services in a decentralized multi-cluster IoT, DCSS-FL is shown below. Among them, the present invention defines sub-services ti Deploy to nodes n x The cost is as shown in formula (1).
[0096] (1)
[0097] in, Representation Node n x The quoted cost, Representation and sub-business t i The sum of the relevant link costs, Representation Node n x Estimated computational latency, Indicates the adjustment factor of the calculation delay, t i Indicates i Sub-business, n x Indicates x physical nodes, E i Deployment i The set of all links that need to be deployed for each sub-service. e j Represents a link set E i A link in -> indicates deployment or mapping.
[0098] Input: Physical network , Resource Constraints , the scheduling node of the main computing cluster n 0. Number of layers to be divided m , DAG-based business G T = ( N T , E T ) and deployment constraints The output is: Deployment plan M ( G T ). When the algorithm is deployed and applied in the present invention, it specifically includes the following steps:
[0099] Step 5.1: Initial T blo = .
[0100] Step 5.2: Scheduling nodes based on the main computing cluster n 0 and the number of layers to be divided m, call the multi-cluster network fast stratification algorithm FL-MCN to obtain the stratification result NL k ∈ NL ( k =1, 2, …, m ).
[0101] Step 5.3: All sub-businesses t i ∈ N T Place the scheduling node in the main computing cluster n 0 task queue, waiting for the main computing cluster's working node to complete each sub-business t i Conduct a bid auction.
[0102] Step 5.4: Traverse each sub-business t i ∈ N T , proceed to the next step, if N T The sub-businesses in have been traversed, so go to step 5.16.
[0103] Step 5.5: Traverse each working node of the main computing cluster in the physical network n x of n x ∈ N P , proceed to the next step. If the working nodes of the main computing cluster in the physical network have been traversed, go to step 5.10.
[0104] Step 5.6: If the worker node n x For sub-business t i Give a quote and calculate the latency, and satisfy the sub-business t i If yes, proceed to the next step; otherwise, go to step 5.5.
[0105] Step 5.7: Try to establish links between sub-services.
[0106] Step 5.8: If with sub-business t i If the relevant link is established successfully, proceed to the next step; otherwise, go to step 5.5.
[0107] Step 5.9: Record sub-business t i The deployment records are collected and the cost is calculated according to formula (1), and then go to step 5.5.
[0108] Step 5.10: From the sub-business t i Select the deployment plan with the lowest cost among all deployment plans.
[0109] Step 11: If a sub-business is found t i Deployment solutions that meet your needs M ( t i ), proceed to the next step; otherwise, go to step 5.13.
[0110] Step 5.12: Update N T = N T { t i} and go to step 5.4.
[0111] Step 5.13: Call the backup cluster collaborative scheduling algorithm BCCSA ( t i , NL ) Deployment of sub-services t i .
[0112] Step 5.14: If a sub-business is found t i Deployment solutions that meet your needs M ( t i ), execute the next step; otherwise, return false.
[0113] Step 5.15: Update N T = N T { t i} and go to step 5.4.
[0114] Step 5.16: Return M ( G T ).
[0115] The FL-MCN algorithm is used for rapid network stratification, thereby assisting in the rapid collaborative deployment of services in a decentralized multi-cluster Internet of Things. When the algorithm is deployed and applied in the present invention, it specifically includes the following steps:
[0116] Input: Physical network , the scheduling node of the main computing cluster n 0. Number of layers to be divided m The output is: the set of all layers NL k∈ NL ( k =1, 2, …, m ). When the algorithm is deployed and applied in the present invention, it specifically includes the following steps:
[0117] Step 5.2.1: Check the registration status of all working nodes of the main computing cluster. If the working node is registered to multiple computing clusters, store the scheduling nodes of these computing clusters into the collection NL 1 in.
[0118] Step 5.2.2: Check the adjacent computing clusters of the main computing cluster and store the scheduling nodes of the computing clusters that are 1 hop away from the border router of the main computing cluster into the set NL 1 in.
[0119] Step 5.2.3: Check the adjacent computing clusters of the main computing cluster and store the scheduling nodes of the computing clusters that are 2 hops away from the border router of the main computing cluster into the set NL 2 in.
[0120] Step 5.2.4: Check the adjacent computing clusters of the main computing cluster and store the scheduling nodes of the computing clusters that are 3 hops away from the border router of the main computing cluster into the set NL 3 in.
[0121] Step 5.2.5: Continue to follow the steps 5.2.2 to 5.2.4 to set the distance from the primary computing cluster border router to m The scheduling nodes of the computing cluster to be jumped are stored in the set NL m middle.
[0122] Step 5.2.6: Output the set of all layers NL k ∈ NL ( k =1, 2, …, m ).
[0123] Further, in other embodiments of the present invention, the BCCSA algorithm is used to coordinate the deployment of sub-services that are not successfully deployed in the main computing cluster using the backup cluster in a multi-cluster Internet of Things. t i , thereby realizing collaborative deployment of services in a decentralized multi-cluster Internet of Things, thereby realizing collaborative deployment of services in a decentralized multi-cluster Internet of Things, BCCSA is a self-named term, and when the algorithm is deployed and applied in the present invention, it specifically includes the following steps:
[0124] Input: Physical network , Resource Constraints , all standby computing cluster hierarchical sets NL k ∈ NL, Undeployed sub-services t i and deployment constraints PC = ( C N , C E , C D ). The output is: Deployment plan M ( t i ). When the algorithm is deployed and applied in the present invention, it specifically includes the following steps:
[0125] Step 5.13.1: Iterate through each hierarchical collection NL k ∈ NL ( k =1, 2, …, m ), proceed to the next step, if NL The layers in have been traversed, so go to step 5.13.12.
[0126] Step 5.13.2: Tier the set of standby compute clusters NL k Each standby computing cluster in C j Sort by total current available resources in descending order.
[0127] Step 5.13.3: Traverse the Hierarchical Collection NL k Each standby computing cluster in C j ∈ NL k , proceed to the next step, if NL k Backup computing cluster in C j Now that the traversal is complete, go to step 5.13.10.
[0128] Step 5.13.4: The scheduling node of the main computing cluster will execute the unexecuted sub-business t i Broadcast to the standby computing cluster C j Scheduling nodes, standby computing clusters C j The scheduling node puts it into its own task queue, marks it as an external collaborative task, and auctions the sub-business t i .
[0129] Step 5.13.5: Traverse the spare computing clusters in the physical network C j Each working noden x of , proceed to the next step. If the physical network has a spare computing cluster C j The working nodes have been traversed, so go to step 5.13.3.
[0130] Step 5.13.6: If the working node n x For sub-business t i Give a quote and calculate the latency, and satisfy the sub-business t i If required, proceed to the next step; otherwise, go to step 5.13.5.
[0131] Step 5.13.7: Try to establish links between sub-services.
[0132] Step 5.13.8: If with sub-business t i If the relevant link is established successfully, proceed to the next step; otherwise, go to step 5.13.5.
[0133] Step 5.13.9: Record sub-business t i Record the deployment and calculate the cost according to formula (1), and go to step 5.13.5.
[0134] Step 5.13.10: From the sub-business t i Select the deployment plan with the lowest cost among all deployment plans.
[0135] Step 5.13.11: If a sub-business is found t i Deployment solutions that meet your needs M ( t i ), proceed to the next step; otherwise, go to step 5.13.1.
[0136] Step 5.13.12: Return to the deployment plan M ( t i ).
[0137] The above technical solution of the present invention can be deployed in a multi-cluster Internet of Things based on SDN to realize the deployment of the service industry. Compared with the traditional network architecture, SDN is a revolutionary change for the multi-cluster Internet of Things based on SDN. It separates the control function from the network switching device and moves it into a logically independent control environment, namely the network control system, and the SDN network transmits messages based on the OpenFlow protocol. The system can run on a general server, and any user can program the control function directly at any time. Therefore, the control function is no longer limited to the router, nor is it limited to the programming and definition of only the manufacturer of the equipment. The essence of SDN is the programmability of the logical centralized control layer.
[0138] SDN helps to realize network virtualization, thereby realizing the integration of network computing and storage resources, and ultimately making it possible to control and manage the entire network through a simple combination of software tools. This is one of the many advantages of SDN-based multi-cluster IoT, and is also a key factor in determining whether it can be used to implement services in multi-cluster IoT.
[0139] The deployment scheme of DAG-based service requests in SDN-based multi-cluster IoT is as follows: Network operators can deploy the method of deploying service requests based on SDN in the multi-cluster IoT proposed by the present invention on the control layer of the SDN control router. The SDN control router can schedule its own control management function to collect intra-cluster network information, obtain the resource status of all nodes in the intra-cluster network, as well as the resources of the links, delay and other information. Through this control method, the router can obtain the topology of the intra-cluster network and the corresponding resource information. When a service request arrives, the SDN control router can schedule the service-based deployment method deployed on its control layer according to the intra-cluster network information it has, calculate the deployment cost, rejection rate and other key parameters, and feedback to the operator.
[0140] The units involved in the embodiments of the present invention may be implemented by software or hardware, and the units described may also be arranged in a processor. The names of these units do not, in some cases, limit the units themselves.
[0141] According to one aspect of an embodiment of the present invention, a computer program product or a computer program is provided, the computer program product or the computer program includes a computer instruction, and the computer instruction is stored in a computer-readable storage medium. A processor of a computer device reads the computer instruction from the computer-readable storage medium, and the processor executes the computer instruction, so that the computer device executes the method provided in the above various optional implementations.
[0142] As another aspect, an embodiment of the present invention further provides a computer-readable medium, which may be included in the electronic device described in the above embodiment; or may exist independently without being assembled into the electronic device. The above computer-readable medium carries one or more programs, and when the above one or more programs are executed by an electronic device, the electronic device implements the method described in the above embodiment.
Claims
1. A service collaborative scheduling method applicable to a decentralized multi-cluster Internet of Things, characterized in that: The algorithm is deployed in the control management scheduling function module on the cluster head node of each cluster of the multi-cluster Internet of Things. The control management scheduling function module on each cluster head node calls the algorithm to complete the online processing process between multiple service requests, thereby deploying the dynamically arriving service requests; wherein, the calling algorithm completes the online processing process between multiple service requests, specifically including the following steps: Assume that business requests based on the directed acyclic graph (DAG) arrive dynamically according to the Poisson process, and these DAG-based business requests are stored in the queue ArrivedT In this ArrivedT In the process, each business request is deployed one by one. ExpiredT For a collection of outgoing business requests, T blo A set of business requests that are blocked due to insufficient physical network resources; , Resource Constraints And DAG-based business request queue ArrivedT back, Represents a collection of physical nodes, Represents a collection of physical links, | NP | and | EP | respectively represent the number of physical nodes and physical links, Represents a collection of physical network node attributes, Represents a collection of physical network link attributes, Represents a collection of physical network node locations and performs the following process: Step 1: Initialize the blocked service request set in the control management scheduling function module on the cluster head node of each cluster of the Internet of Things T blo = , represents the empty set; Step 2: If the service request queue in the control management scheduling function module on the cluster head node of each cluster of the Internet of Things ArrivedT ≠ , proceed to the next step; otherwise, go to step 9; Step 3: According to the outgoing service request set in the control management scheduling function module on the cluster head node of each cluster of the Internet of Things ExpiredT Update IoT resources and make ExpiredT= ; Step 4: Determine the main computing cluster that provides services from multiple IoT clusters based on the user's location and set the number of tiers m ; Step 5: Deploy in a queue ArrivedT The first DAG-based business G T ; Step 6: If you find a business G T Deployment plan M T , proceed to the next step; otherwise, go to step 8; Step 7: According to the business G T Deployment plan M T Update IoT, Update ArrivedT = ArrivedT { G T }, where "=" indicates assignment operation, then go to step 2; Step 8: Update T blo = T blo ∪{ G T }and ArrivedT = ArrivedT { G T }, where "=" indicates assignment operation, then go to step 2; Step 9: Return to the deployment plan M and a set of blocked business requests T blo .
2. The service collaborative scheduling method applicable to decentralized multi-cluster Internet of Things according to claim 1 is characterized in that: In step 5, the deployment is in the queue ArrivedT The first DAG-based business G T , specifically including the following sub-steps: Enter the physical network , Resource Constraints , the scheduling node of the main computing cluster n 0. Number of layers to be divided m , DAG-based business G T = ( N T , E T ) and deployment constraints PC = ( C N , C E , C D ), where N T ={ t 1, t 2,…, t |NT| } represents the sub-service set of DAG-based service requests, | NT | indicates the number of sub-services in the DAG-based service request, E T = { e 1, e 2,…, e |ET| } represents the set of links for service requests, | ET | Please indicate business The number of links requested , perform the following process: Step 5.1: Initial T blo = ; Step 5.2: Scheduling nodes based on the main computing cluster n 0 and the number of layers to be divided m Perform network stratification and obtain stratification results NL k ∈ NL , k =1, 2, …, m ; Step 5.3: All sub-businesses t i ∈ N T Place the scheduling node in the main computing cluster n 0 task queue, waiting for the main computing cluster's working nodes to complete each sub-business t i Conduct a bid auction; Step 5.4: Traverse each sub-business t i ∈ N T , proceed to the next step, if N T The sub-businesses in have been traversed, so go to step 5.16; Step 5.5: Traverse each working node of the main computing cluster in the physical network n x of n x ∈ N P , proceed to the next step. If the working nodes of the main computing cluster in the physical network have been traversed, go to step 5.10; Step 5.6: If the worker node n x For sub-business t i Give a quote and calculate the latency, and satisfy the sub-business t i If yes, proceed to the next step; otherwise, go to step 5.5; Step 5.7: Try to establish a link between sub-services; Step 5.8: If with sub-business t i If the relevant link is established successfully, proceed to the next step; otherwise, go to step 5.5; Step 5.9: Record sub-business t i The deployment record is calculated according to formula (1) t i Deploy to nodes n x cost, go to step 5.5; (1); in, Representation Node n x The quoted cost, Representation and sub-business t i The sum of the relevant link costs, Representation Node n x Estimated computational latency, Indicates the adjustment factor of the calculation delay, t i Indicates i Sub-business, n x Indicates x physical nodes, E i Deployment i The set of all links that need to be deployed for each sub-service. e j Represents a link set E i A link in -> indicates deployment or mapping; Step 5.10: From the sub-business t i Select the deployment plan with the lowest cost among all deployment plans; Step 5.11: If a sub-business is found t i Deployment solutions that meet your needs M ( t i ), proceed to the next step; otherwise, go to step 5.13; Step 5.12: Update N T = N T { t i }, and go to step 5.4; Step 5.13: Deploy sub-services t i ; Step 5.14: If a sub-business is found t i Deployment solutions that meet your needs M ( t i ), then execute the next step; otherwise, return error flase; Step 5.15: Update N T = N T { t i }, and go to step 5.4; Step 5.16: Return M ( G T ).
3. The service collaborative scheduling method applicable to decentralized multi-cluster Internet of Things according to claim 2 is characterized in that: In step 5.2, the scheduling node according to the main computing cluster n 0 and the number of layers to be divided m The network layering includes the following sub-steps: Enter the physical network , the scheduling node of the main computing cluster n 0. Number of layers to be divided m Then, perform the following process: Step 5.2.1: Check the registration status of all working nodes of the main computing cluster. If the working node is registered to multiple computing clusters, store the scheduling nodes of these computing clusters into the collection NL 1 in; Step 5.2.2: Check the adjacent computing clusters of the main computing cluster and store the scheduling nodes of the computing clusters that are 1 hop away from the border router of the main computing cluster into the set NL 1 in; Step 5.2.3: Check the adjacent computing clusters of the main computing cluster and store the scheduling nodes of the computing clusters that are 2 hops away from the border router of the main computing cluster into the set NL 2 in; Step 5.2.4: Check the adjacent computing clusters of the main computing cluster and store the scheduling nodes of the computing clusters that are 3 hops away from the border router of the main computing cluster into the set NL 3 in; Step 5.2.5: Continue to follow the steps 5.2.2 to 5.2.4 to set the distance from the primary computing cluster border router to m The scheduling nodes of the computing cluster to be jumped are stored in the set NL m middle; Step 5.2.6: Output the set of all layers NL k ∈ NL , k =1, 2, …, m .
4. The service collaborative scheduling method applicable to decentralized multi-cluster Internet of Things according to claim 2 is characterized in that: In step 5.13, the deployment sub-service t i , specifically including the following sub-steps: Enter the physical network , Resource Constraints , all standby computing cluster hierarchical sets NL k ∈ NL , Undeployed sub-services t i and deployment constraints PC = ( C N , C E , C D )back, C N Represents the computing resource requirements of all sub-businesses. C E Represents the bandwidth resource requirements of all links of the service request, C D Represents the calculation delay constraint set of all sub-services, and performs the following process: Step 5.13.1: Iterate through each hierarchical collection NL k ∈ NL , k =1, 2, …, m , proceed to the next step, if NL The layers in have been traversed, so go to step 5.13.12; Step 5.13.2: Tier the set of standby compute clusters NL k Each standby computing cluster in C j Sort by the total amount of currently available resources in descending order; Step 5.13.3: Traverse the Hierarchical Collection NL k Each standby computing cluster in C j ∈ NL k , proceed to the next step, if NL k Backup computing cluster in C j After the traversal is completed, go to step 5.13.10; Step 5.13.4: The scheduling node of the main computing cluster will execute the unexecuted sub-business t i Broadcast to the standby computing cluster C j Scheduling nodes, standby computing clusters C j The scheduling node puts it into its own task queue, marks it as an external collaborative task, and auctions the sub-business t i ; Step 5.13.5: Traverse the spare computing clusters in the physical network C j Each working node n x ∈ N P , proceed to the next step. If the physical network has a spare computing cluster C j The working nodes have been traversed, so go to step 5.13.3; Step 5.13.6: If the working node n x For sub-business t i Give a quote and calculate the latency, and satisfy the sub-business t i If yes, proceed to the next step; otherwise, go to step 5.13.5; Step 5.13.7: Try to establish a link between sub-services; Step 5.13.8: If with sub-business t i If the relevant link is established successfully, proceed to the next step; otherwise, go to step 5.13.5; Step 5.13.9: Record sub-business t i The deployment record is obtained and the cost is calculated according to formula (1), and then go to step 5.13.5; Step 5.13.10: From the sub-business t i Select the deployment plan with the lowest cost among all deployment plans; Step 5.13.11: If a sub-business is found t i Deployment solutions that meet your needs M ( t i ), proceed to the next step; otherwise, go to step 5.13.1; Step 5.13.12: Return to the deployment plan M ( t i ).
5. The service collaborative scheduling method applicable to decentralized multi-cluster Internet of Things according to claim 1 is characterized in that: The multi-cluster Internet of Things is a multi-cluster Internet of Things based on SDN.
6. A service collaborative scheduling device suitable for decentralized multi-cluster Internet of Things, characterized in that: The method comprises a processor and a memory, wherein a computer program is stored in the memory, and when the computer program is loaded by the processor, the method according to any one of claims 1 to 5 is executed.
Citation Information
Patent Citations
Decentralized task scheduling system and method
CN118656183A
Decentralized distributed scheduling method and device
CN119025238A