A method for monitoring and announcing edge computing power network node resources
By using edge computing power network node resource monitoring and notification methods, the problems of low edge computing power resource monitoring and utilization are solved, achieving efficient resource management and performance improvement, which is suitable for cloud-native computing platforms.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-19
- Publication Date
- 2026-03-13
AI Technical Summary
Existing technologies struggle to efficiently monitor and utilize ubiquitous, resource-constrained, and heterogeneous edge computing resources, resulting in low utilization rates of edge computing power.
A method for monitoring and announcing edge computing network node resources is adopted, including a perception module, a computing resource database, an announcement module, and a monitoring platform. By monitoring container resources, detecting link quality, distributing announcements, and announcing network layer resources, the method reduces kernel-mode and user-mode switching and lowers resource synchronization overhead, making it suitable for cloud-native computing platforms.
It improves the overall performance and resource utilization of edge computing networks, reduces the resource synchronization overhead of devices, and is suitable for mainstream cloud-native computing platforms.
Smart Images

Figure CN116800641B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of computer technology, specifically relating to a method for monitoring and announcing the resources of edge computing network nodes. Background Technology
[0002] In recent years, with continuous technological advancements, chip manufacturing and design processes have been constantly improving, leading to increased chip performance while simultaneously decreasing costs. Against this backdrop, various smart terminals are ubiquitous in our lives. However, according to the "Edge-Side Computing Power Network White Paper 2022," the current utilization rate of edge-side computing power is less than 15%, highlighting the growing contradiction between people's increasing demand for computing power and its low utilization rate. How to efficiently utilize edge-side computing power resources, accumulating small gains into a large sum, and reducing the cost of using computing power has attracted widespread attention from researchers.
[0003] To efficiently utilize edge computing resources, the first problem to solve is how to perceive and monitor ubiquitous edge computing resources. Edge computing resources have the following key characteristics:
[0004] (1) Ubiquitous distribution. Edge computing devices include smartwatches, webcams, various sensors, mobile phones, and computers. The deployment of these computing devices is characterized by distribution and ubiquity.
[0005] (2) Resource Constraints. The resources of edge computing devices are constrained, which is reflected in three aspects. First, computing power resources are limited. To reduce power consumption, edge devices use low-voltage chips, which significantly reduces computing performance. Second, communication resources are limited. Edge devices mainly use wireless access methods such as LoRa, ZigBee, WIFI, Bluetooth, and cellular networks, which limit spectrum and bandwidth resources. Third, edge devices use batteries as power sources for easy deployment, which limits energy. The solution for using the application layer ZMQ protocol to announce computing resources mentioned in patent publication number CN115118647 A has significant communication overhead and is not suitable for edge computing networks.
[0006] (3) Heterogeneity. The heterogeneity of edge computing devices includes two aspects: network heterogeneity and platform heterogeneity. Network heterogeneity is reflected in the fact that devices use a variety of communication methods and different communication protocols cannot communicate directly; platform heterogeneity is reflected in the fact that edge devices use a variety of operating systems, such as iOS, Android, HarmonyOS, Linux, and Windows, and there are compatibility issues between different systems.
[0007] In view of the above characteristics of edge computing power, there is an urgent need for a lightweight edge computing power node resource monitoring mechanism to perceive the distributed, resource-constrained, and platform-heterogeneous edge computing power resources, and to provide a foundation for the efficient utilization of edge computing power. Summary of the Invention
[0008] To address the shortcomings of existing edge computing resource monitoring schemes, this invention proposes an edge computing network node resource monitoring and notification method.
[0009] The method of the present invention includes the following steps:
[0010] Step 1: Establish a resource monitoring and notification system for computing power nodes in an edge computing power network, including:
[0011] The perception module is used to collect multi-dimensional resource information of the local computing nodes and periodically write the collected information into the computing resource database.
[0012] Computing resource database: It uses a time-series database to store resource information collected by computing nodes and provides query interfaces for other modules;
[0013] Notification module: Periodically queries the latest resource information from the computing power resource database and notifies other edge computing power nodes. At the same time, it receives resource information sent by other edge computing power nodes and stores it in the computing power resource database.
[0014] Monitoring platform: Regularly retrieves data from the computing resource database and displays it to the outside world;
[0015] The perception module includes a container resource monitoring module and a link quality detection module, wherein:
[0016] The container resource monitoring module is responsible for monitoring the computing resource information of containers on this node, including CPU utilization, memory utilization, and disk I / O.
[0017] The link quality detection module is responsible for periodically detecting the link quality between this node and other end-side computing power nodes, including link latency, packet loss rate, and bandwidth.
[0018] The notification module includes a computing resource collection module, a distributed notification module, a notification message forwarding module, and a computing resource service module, among which:
[0019] The computing resource collection module is responsible for periodically retrieving the latest resource data from the computing resource database, including the resource information of this node and the resource information of other nodes perceived by this node, generating resource data packets and sending them to the distributed announcement module.
[0020] Based on the resource information perceived by this node, the distributed notification module runs a notification routing algorithm to obtain the synchronization path of the resource data packet and writes the above information into a shared file;
[0021] The notification message forwarding module forwards the resource data packets of this node to the next end-side computing power node according to the synchronization path. At the same time, the notification message forwarding module listens for the resource data packets sent by other nodes and sends them to the computing power resource service module.
[0022] After discarding expired resource data in the resource data package, the computing power resource service module writes the remaining resource data into the computing power resource database;
[0023] Step 2: The perception module uses Telegraf and cAdvisor to monitor the resource usage information of each container on this node, and uses the distributed inter-node link detection algorithm described in this invention to detect the quality information of inter-node links, which is periodically stored in the computing power resource database.
[0024] Distributed inter-node link detection algorithm: During initialization, the edge computing nodes randomly sleep for a certain period of time and listen to the speed test request port. When a speed test request is received, it is determined whether the current node is waiting for a speed test response from another node. If it is in a waiting state, the speed test request is rejected; if it is not in a waiting state, a success confirmation message is returned, and the speed test server program is run. If no speed test request is received after the sleep ends, a destination node is selected to send a speed test request. If a success confirmation message is received, the node runs the speed test client program; if no success confirmation message is received, the node re-enters the sleep state. When selecting a destination node to send a speed test request, the node with the longest interval since the last speed test is selected first. If the intervals are the same, a random node is selected.
[0025] The speed test server program uses a Tomcat server to provide a speed test service interface. The process includes the following steps:
[0026] (1) After receiving the speed test request message, extract the content-length field from the request body header and encapsulate it into the response message;
[0027] (2) Encapsulate the timestamps of the received message and the sent response message into the response message. The speed test client program then sends a request to the speed test server. The process includes the following steps:
[0028] (2.1) Generate a fixed-length byte array as a data packet and add it to the request body;
[0029] (2.2) The client adds the timestamp of the current node to the request body;
[0030] (2.3) Send a request message to the server using an HTTP POST request;
[0031] (2.4) Obtain the content-length, server-received and responded timestamps from the response message, and calculate the upload bandwidth;
[0032] Step 3: The computing resource collection module periodically retrieves the latest resource data from the computing resource database, including the time-series databases of InfluxDB and TimescaleDB, and sends it to the distributed notification module.
[0033] Step 4: The distributed announcement module calculates the synchronization path based on the link quality information between nodes and the routing algorithm, and writes the path and resource data packets into the shared file;
[0034] Step 5: The notification message forwarding module runs in kernel mode and implements resource information notification with other computing power nodes at the network layer.
[0035] Step 5.1: The network layer sends an announcement message.
[0036] Step 5.1.1: Write a kernel module and register it in the system kernel;
[0037] Step 5.1.2: The kernel module sleeps for a certain period of time;
[0038] Step 5.1.3: The kernel module retrieves resource data from the user-space shared file, encapsulates it into the data part of the IPv4 packet, and sets the flag field in the packet header to DF=1, the Protocol field to 254, and the destination IP address field to the next address in the synchronization path.
[0039] Step 5.1.4: The kernel module queries the MAC address of the destination IP address based on the local ARP cache, writes it into the destination MAC address field of the data packet, and calls the kernel dev_queue_xmit() function to send the data packet;
[0040] Step 5.2: The network layer receives the announcement message.
[0041] Step 5.2.1: Write a kernel module, register it in the system kernel, and mount it to the PREROUTING mount point of the Netfilter framework;
[0042] Step 5.2.2: When the Netfilter framework receives a packet, it determines whether it is an IPv4 packet and whether the Protocol field is 254. If it is not an IPv4 packet, it returns "NF_ACCEPT"; if it is an IPv4 packet, it proceeds to step 5.2.3.
[0043] Step 5.2.3: Parse the data part of the message, extract the resource information of other nodes, write it to the shared file, and at the same time update the latest resource data of this node into the message;
[0044] Step 5.2.4: Set the destination IP address of the packet to the next address in the synchronization path, exchange the source MAC address and destination MAC address, and call the dev_queue_xmit() function to send the packet;
[0045] Step 5.2.5: Return to "NF_DROP";
[0046] Step 6: The computing resource service module deletes expired data from the shared files, extracts the latest resource data, and writes it into the computing resource database.
[0047] The superior effects of the method described in this invention are as follows:
[0048] 1. The method described in this invention adopts a network layer resource announcement strategy, which reduces the frequent switching between kernel mode and user mode, omits the complex processing of the standard TCP / IP protocol stack, effectively reduces the resource synchronization overhead of the end-side device, and frees up more performance for the end-side device;
[0049] 2. The method described in this invention adopts a container-level computing resource monitoring mechanism, which can be applied to the current mainstream cloud-native computing platform architecture;
[0050] 3. The distributed inter-node link detection algorithm proposed in this invention can autonomously detect link quality information between distributed nodes, promptly identify offline nodes, and improve the overall performance of the end-side computing network. Attached Figure Description
[0051] Figure 1 This is a diagram of the multi-dimensional resource monitoring system architecture for edge computing nodes in an embodiment of the method described in this invention.
[0052] Figure 2 This is a flowchart of the edge computing node resource monitoring and notification mechanism in an embodiment of the method described in this invention;
[0053] Figure 3 This is a schematic diagram of the end-side computing node notification message transmission process in an embodiment of the method described in this invention;
[0054] Figure 4 This is a flowchart of the distributed inter-node link detection algorithm in the method embodiment of the present invention;
[0055] Figure 5 This is a flowchart illustrating the process of sending an announcement message at the network layer in an embodiment of the method described in this invention.
[0056] Figure 6 This is a flowchart illustrating the network layer receiving notification messages in an embodiment of the method described in this invention. Detailed Implementation
[0057] To better understand the above-mentioned objectives, features and advantages of the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be noted that, unless otherwise specified, the embodiments and features in the embodiments of this application can be combined with each other.
[0058] The method of the present invention includes the following steps:
[0059] Step 1: Establish a resource monitoring and notification system for computing power nodes in an edge computing power network, such as... Figure 1 , 4 As shown, it includes:
[0060] The perception module is used to collect multi-dimensional resource information of the local computing nodes and periodically write the collected information into the computing resource database.
[0061] Computing resource database: It uses a time-series database to store resource information collected by computing nodes and provides query interfaces for other modules;
[0062] Notification module: Periodically queries the latest resource information from the computing power resource database and notifies other edge computing power nodes. At the same time, it receives resource information sent by other edge computing power nodes and stores it in the computing power resource database.
[0063] Monitoring platform: Regularly retrieves data from the computing resource database and displays it to the outside world;
[0064] The perception module includes a container resource monitoring module and a link quality detection module, wherein:
[0065] The container resource monitoring module is responsible for monitoring the computing resource information of containers on this node, including CPU utilization, memory utilization, and disk I / O.
[0066] The link quality detection module is responsible for periodically detecting the link quality between this node and other end-side computing power nodes, including link latency, packet loss rate, and bandwidth.
[0067] The notification module includes a computing resource collection module, a distributed notification module, a notification message forwarding module, and a computing resource service module, among which:
[0068] The computing resource collection module is responsible for periodically retrieving the latest resource data from the computing resource database, including the resource information of this node and the resource information of other nodes perceived by this node, generating resource data packets and sending them to the distributed announcement module.
[0069] Based on the resource information perceived by this node, the distributed notification module runs a notification routing algorithm to obtain the synchronization path of the resource data packet and writes the above information into a shared file;
[0070] The notification message forwarding module forwards the resource data packets of this node to the next end-side computing power node according to the synchronization path. At the same time, the notification message forwarding module listens for the resource data packets sent by other nodes and sends them to the computing power resource service module.
[0071] After discarding expired resource data in the resource data package, the computing power resource service module writes the remaining resource data into the computing power resource database;
[0072] Step 2, as follows Figures 2 to 6 As shown, the perception module uses Telegraf and cAdvisor to monitor the resource usage information of each container on this node, and uses the distributed inter-node link detection algorithm described in this invention to detect the quality information of inter-node links, which is periodically stored in the computing power resource database.
[0073] Distributed inter-node link detection algorithm: During initialization, the edge computing nodes randomly sleep for a certain period of time and listen to the speed test request port. When a speed test request is received, it is determined whether the current node is waiting for a speed test response from another node. If it is in a waiting state, the speed test request is rejected; if it is not in a waiting state, a success confirmation message is returned, and the speed test server program is run. If no speed test request is received after the sleep ends, a destination node is selected to send a speed test request. If a success confirmation message is received, the node runs the speed test client program; if no success confirmation message is received, the node re-enters the sleep state. When selecting a destination node to send a speed test request, the node with the longest interval since the last speed test is selected first. If the intervals are the same, a random node is selected.
[0074] The speed test server program uses a Tomcat server to provide a speed test service interface, including the following steps:
[0075] (1) After receiving the speed test request message, extract the content-length field from the request body header and encapsulate it into the response message;
[0076] (2) Encapsulate the timestamps of the received message and the sent response message into the response message. The speed test client program then sends a request to the speed test server. The process includes the following steps:
[0077] (2.1) Generate a fixed-length byte array as a data packet and add it to the request body;
[0078] (2.2) The client adds the timestamp of the current node to the request body;
[0079] (2.3) Send a request message to the server using an HTTP POST request;
[0080] (2.4) Obtain the content-length, server-received and responded timestamps from the response message, and calculate the upload bandwidth;
[0081] Step 3: The computing resource collection module periodically retrieves the latest resource data from the computing resource database, including the time-series databases of InfluxDB and TimescaleDB, and sends it to the distributed notification module.
[0082] Step 4: The distributed announcement module calculates the synchronization path based on the link quality information between nodes and the routing algorithm, and writes the path and resource data packets into the shared file;
[0083] Step 5: The notification message forwarding module runs in kernel mode and implements resource information notification with other computing power nodes at the network layer.
[0084] Step 5.1, as follows Figure 5 As shown, the network layer sends an announcement message:
[0085] Step 5.1.1: Write a kernel module and register it in the system kernel;
[0086] Step 5.1.2: The kernel module sleeps for a certain period of time;
[0087] Step 5.1.3: The kernel module retrieves resource data from the user-space shared file, encapsulates it into the data part of the IPv4 packet, and sets the flag field in the packet header to DF=1, the Protocol field to 254, and the destination IP address field to the next address in the synchronization path.
[0088] Step 5.1.4: The kernel module queries the MAC address of the destination IP address based on the local ARP cache, writes it into the destination MAC address field of the data packet, and calls the kernel dev_queue_xmit() function to send the data packet;
[0089] Step 5.2, as follows Figure 6 As shown, the network layer receives the announcement message:
[0090] Step 5.2.1: Write a kernel module, register it in the system kernel, and mount it to the PREROUTING mount point of the Netfilter framework;
[0091] Step 5.2.2: When the Netfilter framework receives a packet, it determines whether it is an IPv4 packet and whether the Protocol field is 254. If it is not an IPv4 packet, it returns "NF_ACCEPT"; if it is an IPv4 packet, it proceeds to step 5.2.3.
[0092] Step 5.2.3: Parse the data part of the message, extract the resource information of other nodes, write it to the shared file, and at the same time update the latest resource data of this node into the message;
[0093] Step 5.2.4: Set the destination IP address of the packet to the next address in the synchronization path, exchange the source MAC address and destination MAC address, and call the dev_queue_xmit() function to send the packet;
[0094] Step 5.2.5: Return to "NF_DROP";
[0095] Step 6: The computing resource service module deletes expired data from the shared files, extracts the latest resource data, and writes it into the computing resource database.
[0096] This invention is not limited to the above embodiments. The embodiments and descriptions in the specification are merely illustrative of the principles of the invention. Various changes and modifications can be made to the invention without departing from its spirit and scope, and all such changes and modifications fall within the scope of the invention as claimed. The scope of protection of this invention is defined by the appended claims.
Claims
1. A method for monitoring and announcing resource usage of edge computing power network nodes, characterized in that, Includes the following steps: Step 1: Establish a resource monitoring and notification system for computing power nodes in an edge computing power network, including: The perception module is used to collect multi-dimensional resource information of the local computing nodes and periodically write the collected information into the computing resource database. Computing resource database: It uses a time-series database to store resource information collected by computing nodes and provides query interfaces for other modules; Notification module: Periodically queries the latest resource information from the computing power resource database and notifies other edge computing power nodes. At the same time, it receives resource information sent by other edge computing power nodes and stores it in the computing power resource database. Monitoring platform: Regularly retrieves data from the computing resource database and displays it to the outside world; The perception module includes a container resource monitoring module and a link quality detection module, wherein: The container resource monitoring module is responsible for monitoring the computing resource information of containers on this node, including CPU utilization, memory utilization, and disk I / O. The link quality detection module is responsible for periodically detecting the link quality between this node and other end-side computing power nodes, including link latency, packet loss rate, and bandwidth. The notification module includes a computing resource collection module, a distributed notification module, a notification message forwarding module, and a computing resource service module, among which: The computing resource collection module is responsible for periodically retrieving the latest resource data from the computing resource database, including the resource information of this node and the resource information of other nodes perceived by this node, generating resource data packets and sending them to the distributed announcement module. Based on the resource information perceived by this node, the distributed notification module runs a notification routing algorithm to obtain the synchronization path of the resource data packet and writes the above information into a shared file; The notification message forwarding module forwards the resource data packets of this node to the next end-side computing power node according to the synchronization path. At the same time, the notification message forwarding module listens for the resource data packets sent by other nodes and sends them to the computing power resource service module. After discarding expired resource data in the resource data package, the computing power resource service module writes the remaining resource data into the computing power resource database; Step 2: The perception module uses Telegraf and cAdvisor to monitor the resource usage information of each container on this node, and uses a distributed inter-node link detection algorithm to detect the quality information of inter-node links, which is periodically stored in the computing resource database. Distributed inter-node link detection algorithm: During initialization, the edge computing nodes randomly sleep for a certain period of time and listen to the speed test request port. When a speed test request is received, it is determined whether the current node is waiting for a speed test response from another node. If it is in a waiting state, the speed test request is rejected; if it is not in a waiting state, a success confirmation message is returned, and the speed test server program is run. If no speed test request is received after the sleep ends, a destination node is selected to send a speed test request. If a success confirmation message is received, the node runs the speed test client program; if no success confirmation message is received, the node re-enters the sleep state. When selecting a destination node to send a speed test request, the node with the longest interval since the last speed test is selected first. If the intervals are the same, a random node is selected. Step 3: The computing resource collection module periodically retrieves the latest resource data from the computing resource database, including the time-series databases of InfluxDB and TimescaleDB, and sends it to the distributed notification module. Step 4: The distributed announcement module calculates the synchronization path based on the link quality information between nodes and the routing algorithm, and writes the path and resource data packets into the shared file; Step 5: The notification message forwarding module runs in kernel mode and communicates resource information with other computing power nodes at the network layer; Step 6: The computing resource service module deletes expired data from the shared files, extracts the latest resource data, and writes it into the computing resource database.
2. The method for monitoring and announcing edge computing power network node resources according to claim 1, characterized in that, In step 2, the speed test server program uses a Tomcat server to provide a speed test service interface. The process includes the following steps: (1) After receiving the speed test request message, extract the content-length field from the request body header and encapsulate it into the response message; (2) Encapsulate the timestamps of the received message and the sent response message into the response message. The speed test client program then sends a request to the speed test server. The process includes the following steps: (2.1) Generate a fixed-length byte array as a data packet and add it to the request body; (2.2) The client adds the timestamp of the current node to the request body; (2.3) Send a request message to the server using an HTTP POST request; (2.4) Obtain the content-length, server receiving and response timestamps from the response message, and calculate the upload bandwidth.
3. The method for monitoring and announcing edge computing power network node resources according to claim 1, characterized in that, Step 5 includes the following steps: Step 5.1: The network layer sends an announcement message. Step 5.2: The network layer receives the announcement message.
4. The method for monitoring and announcing edge computing power network node resources according to claim 3, characterized in that, Step 5.1 includes the following steps: Step 5.1.1: Write a kernel module and register it in the system kernel; Step 5.1.2: The kernel module sleeps for a certain period of time; Step 5.1.3: The kernel module retrieves resource data from the user-space shared file, encapsulates it into the data part of the IPv4 packet, and sets the flag field in the packet header to DF=1, the Protocol field to 254, and the destination IP address field to the next address in the synchronization path. Step 5.1.4: The kernel module queries the MAC address of the destination IP address based on the local ARP cache, writes it into the destination MAC address field of the data packet, and calls the kernel dev_queue_xmit() function to send the data packet.
5. The method for monitoring and announcing edge computing power network node resources according to claim 3, characterized in that, Step 5.2 includes the following steps: Step 5.2.1: Write a kernel module, register it in the system kernel, and mount it to the PREROUTING mount point of the Netfilter framework; Step 5.2.2: When the Netfilter framework receives a packet, it determines whether it is an IPv4 packet and whether the Protocol field is 254. If it is not an IPv4 packet, it returns "NF_ACCEPT"; if it is an IPv4 packet, it proceeds to step 5.2.
3. Step 5.2.3: Parse the data part of the message, extract the resource information of other nodes, write it to the shared file, and at the same time update the latest resource data of this node into the message; Step 5.2.4: Set the destination IP address of the packet to the next address in the synchronization path, exchange the source MAC address and destination MAC address, and call the dev_queue_xmit() function to send the packet; Step 5.2.5: Return to "NF_DROP".
Citation Information
Patent Citations
Service-oriented computing power network system, working method and storage medium
CN113079218A
System and method for sensing and announcing computing power information in computing power network
CN115118647A