Data processing method and system, electronic equipment and storage medium
By setting up probes within the data center nodes of the CDN platform to conduct full-link coverage probing, the problem of incomplete coverage in existing CDN platform probing solutions is solved, thereby improving the platform's stability, performance, and security, and enhancing its ability to detect operator blocking and virtual addresses.
Patent Information
- Application Number
- CN202410522123.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-26
- Publication Date
- 2025-10-28
AI Technical Summary
Existing CDN platform detection solutions are not comprehensive enough when dealing with problems in the customer-to-data center link. They cannot accurately detect faults or operator blocking issues across the entire link, affecting the platform's stability, performance, and security.
Within the data center nodes of the CDN platform, a probe is set up to cover the entire link through periodic probe tasks. The target address is obtained and periodic probe tasks are generated. The network link status is analyzed and processed, including single and periodic probe tasks. Ping and Trace tasks are used to detect the link status and dynamically adapt the intermediate node addresses to achieve full link coverage.
It achieves full-link coverage detection of CDN platforms, improves platform stability, performance and security, reduces operation and maintenance costs, enhances the ability to detect operator blocking and virtual addresses, and improves user experience.
Smart Images

Figure CN120856618A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computers, and more specifically to a data processing method, system, electronic device, and storage medium. Background Technology
[0002] A CDN (Content Delivery Network) platform is a distributed network architecture designed to improve the speed, performance, and security of website access by storing content (such as web pages, images, and videos) on servers around the world and delivering it quickly to users based on the principle of proximity.
[0003] To ensure platform stability, performance, and security, and to provide higher-quality content distribution services, network probing can help platforms promptly identify and resolve various issues, maintaining high availability and reliability. These probing methods typically involve real-time or periodic monitoring of network nodes, server health status, network topology, and data transmission rates. Through probing, operations and maintenance personnel can promptly identify and resolve network faults, performance issues, or security vulnerabilities, ensuring platform stability and reliability.
[0004] However, in existing platform operation and maintenance scenarios, traditional detection solutions have some limitations. Common detection solutions have limitations in coverage when it comes to detecting problems in the link from the customer to the data center, and cannot comprehensively detect the entire link to discover problems such as faults or operator blocking. Summary of the Invention
[0005] This application provides a data processing method, system, electronic device, and storage medium that can comprehensively detect the entire link to ensure the stability, performance, and security of the platform.
[0006] This application provides a data processing method, including:
[0007] Obtain the target address, which includes the address of the accessing user of the content delivery network, the content delivery network node, and the address of the intermediate node involved when the accessing user visits. The content delivery network node of the content delivery network has a probe deployed.
[0008] Periodic probe tasks are generated based on the target address. These periodic probe tasks carry periodic information and are used to periodically probe the status of the network link from the content delivery network node through intermediate nodes to the accessing user.
[0009] After the control probe performs a periodic probe task based on periodic information, the network link is re-analyzed and processed according to the periodic probe results obtained from each execution, so as to notify the status of the network link.
[0010] This application also provides a data processing system, including a probe terminal, a heartbeat terminal, a policy terminal, and a proxy terminal. The probe terminal is deployed in a content delivery network node of the content delivery network, wherein:
[0011] The strategy end is used to obtain the target address and generate a periodic probe task based on the target address. The periodic probe task is sent to the heartbeat end. The target address includes the address of the access user of the content delivery network, the content delivery network node, and the address of the intermediate node involved when the access user accesses the network. The periodic probe task carries periodic information and is used to periodically probe the status of the network link from the content delivery network node through the intermediate node to the access user.
[0012] The heartbeat terminal is used to manage the probe terminals, receive periodic probe tasks from the policy terminal, and distribute the periodic probe tasks to each probe terminal.
[0013] The probe is used to perform periodic probe tasks based on periodic information and to report the periodic probe results obtained in each execution.
[0014] The agent is used to analyze and process network links based on periodic probe results, and to notify the network link status.
[0015] In some embodiments:
[0016] The strategy is also used to obtain access logs of the content delivery network and generate a single probe task. The access logs record the address of the accessing user, the address of the content delivery network node accessed by the accessing user, and the address of the intermediate node involved in the access by the accessing user. The single probe task is used to verify the network link from the content delivery network node through the intermediate node to the accessing user.
[0017] The heartbeat end is also used to manage the probe end to receive single probe tasks from the policy end and to distribute the single probe tasks to each probe end;
[0018] The probe is also used to perform single probe tasks and report the results of a single probe to the strategy end.
[0019] In some embodiments, a data processing apparatus is also provided for:
[0020] Obtain the target address, which includes the address of the accessing user of the content delivery network, the content delivery network node, and the address of the intermediate node involved when the accessing user visits. The content delivery network node of the content delivery network has a probe deployed.
[0021] Periodic probe tasks are generated based on the target address. These periodic probe tasks carry periodic information and are used to periodically probe the status of the network link from the content delivery network node through intermediate nodes to the accessing user.
[0022] After the control probe performs a periodic probe task based on periodic information, the network link is re-analyzed and processed according to the periodic probe results obtained from each execution, so as to notify the status of the network link.
[0023] This application also provides an electronic device, including a memory storing multiple instructions; the processor loads instructions from the memory to execute steps in any of the data processing methods provided in this application.
[0024] This application also provides a computer-readable storage medium storing a plurality of instructions adapted for loading by a processor to execute steps in any of the data processing methods provided in this application.
[0025] This application embodiment can obtain a target address, which includes the addresses of the accessing user of the content delivery network (CDN), the CDN nodes, and the intermediate nodes involved in the access by the accessing user. The CDN nodes are equipped with probes. A periodic probe task is generated based on the target address. This periodic probe task carries periodic information and is used to periodically probe the status of the network link from the CDN node through the intermediate nodes to the accessing user. After the probe executes the periodic probe task based on the periodic information, the network link is re-analyzed and processed according to the periodic probe results obtained from each execution, so as to notify the user of the network link status.
[0026] This application employs a probe system that sets up probes within the data center nodes of the CDN platform, using these nodes and accessing users as the start and end points of the link. This enables full-link coverage probes, thereby ensuring the stability, performance, and security of the CDN platform. Attached Figure Description
[0027] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0028] Figure 1a This is a schematic diagram of a scenario illustrating the data processing method provided in an embodiment of this application;
[0029] Figure 1b This is a flowchart illustrating the data processing method provided in an embodiment of this application;
[0030] Figure 1c This is a schematic diagram illustrating the address update effect of the data processing method provided in this application embodiment;
[0031] Figure 1d This is a schematic diagram of the Ping task interaction of the data processing method provided in the embodiments of this application;
[0032] Figure 1e This is a schematic diagram of the trace task flow of the data processing method provided in the embodiments of this application;
[0033] Figure 1f This is a schematic diagram of the periodic detection task flow of the data processing method provided in the embodiments of this application;
[0034] Figure 1g This is a visual page illustration of the data processing method provided in the embodiments of this application;
[0035] Figure 1h This is a schematic diagram of the probe management page of the data processing method provided in the embodiments of this application;
[0036] Figure 2a This is a schematic diagram of device interaction of the data processing system provided in the embodiments of this application;
[0037] Figure 2b This is a schematic diagram of the architecture of the data processing system provided in the embodiments of this application;
[0038] Figure 3 This is a schematic diagram of the structure of the data processing apparatus provided in the embodiments of this application;
[0039] Figure 4 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0040] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0041] This application provides a data processing method, system, electronic device, and storage medium.
[0042] Specifically, the data processing device can be integrated into an electronic device, such as a terminal or server. The terminal can be a mobile phone, tablet, smart Bluetooth device, laptop, or personal computer (PC). The server can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. The terminal can be a smartphone, tablet, laptop, desktop computer, smart speaker, smartwatch, etc., but is not limited to these. The terminal and server can be directly or indirectly connected via wired or wireless communication, which is not limited herein.
[0043] In some embodiments, the data processing apparatus may also be integrated into multiple electronic devices, such as multiple servers, with the data processing method of this application being implemented by the multiple servers.
[0044] In some embodiments, the server may also be implemented as a terminal.
[0045] For example, the electronic device can be a server that can obtain a target address, which includes the addresses of the accessing user of the content delivery network, the content delivery network nodes, and the intermediate nodes involved when the accessing user visits. The content delivery network nodes are equipped with probes. Based on the target address, a periodic probe task is generated. The periodic probe task carries periodic information and is used to periodically probe the status of the network link from the content delivery network node through the intermediate nodes to the accessing user. After the probe is controlled to execute the periodic probe task based on the periodic information, the network link is re-analyzed and processed according to the periodic probe results obtained from each execution in order to notify the status of the network link.
[0046] In some embodiments, reference Figure 1a Alternatively, a data processing system composed of terminals can be used, with the terminals divided into probe terminals, heartbeat terminals, policy terminals, and agent terminals according to their functions. The probe terminals are deployed in the content delivery network nodes of the content delivery network, wherein:
[0047] The policy end is used to obtain the target address and generate periodic probe tasks based on the target address. These periodic probe tasks are then sent to the heartbeat end. The target address includes the address of the access user of the content delivery network, the content delivery network node, and the address of the intermediate node involved in the access process. The periodic probe task carries periodic information and is used to periodically probe the status of the network link from the content delivery network node through the intermediate node to the access user. The heartbeat end is used to manage the probe ends, receive periodic probe tasks from the policy end, and distribute the periodic probe tasks to each probe end. The probe ends are used to execute the periodic probe tasks based on the periodic information and report the periodic probe results obtained from each execution. The proxy end is used to analyze and process the network link based on the periodic probe results and to notify the network link status.
[0048] By coordinating between terminals, the detection scheme can cover the entire link, thereby ensuring the stability, performance, and security of the platform.
[0049] The following sections provide detailed descriptions of each example. It should be noted that the sequence numbers of the following embodiments are not intended to limit the preferred order of the embodiments.
[0050] Cloud technology is a collective term for network technologies, information technologies, integration technologies, management platform technologies, and application technologies applied to the cloud computing business model. It can form resource pools, providing flexible and convenient on-demand access. Cloud computing technology will become a crucial support. Backend services of technical network systems require substantial computing and storage resources, such as video websites, image websites, and many portal websites. With the rapid development and application of the internet industry, every item may have its own identification mark in the future, requiring transmission to backend systems for logical processing. Data at different levels will be processed separately, and various industry data will all require robust system support, which can only be achieved through cloud computing.
[0051] Cloud security refers to the collective term for security software, hardware, users, organizations, and security cloud platforms based on cloud computing business models. Cloud security integrates emerging technologies and concepts such as parallel processing, grid computing, and unknown behavior detection. It uses a large network of clients to detect network anomalies, obtain the latest anomaly information from the internet, and send it to the server for automatic analysis and processing.
[0052] In some embodiments, this embodiment can serve as a cloud security management tool for performing full-link coverage probing of a CDN platform to ensure the platform's stability, performance, and security. For example, the probing end of the data processing system is deployed in the content delivery network node of the content delivery network, while the cloud security server may include a heartbeat end, a policy end, and a proxy end.
[0053] In this embodiment, a data processing method based on cloud security technology involving cloud technology is provided, such as... Figure 1b As shown, the specific flow of this data processing method can be as follows:
[0054] 110. Obtain the target address, which includes the address of the access user of the content delivery network, the content delivery network node, and the address of the intermediate node involved when the access user visits. The content delivery network node of the content delivery network has a probe deployed.
[0055] The detection end is used to perform detection tasks, and its details will be introduced below, so they will not be repeated here.
[0056] For a content delivery platform, a complete network link consists of content delivery network nodes, intermediate nodes, and users, which can be represented as [content delivery network node - intermediate node - user]. In some embodiments, a network link may contain one or more intermediate nodes, such as [content delivery network node A - intermediate node B - intermediate node C - user D], [content delivery network node E - intermediate node F - user G], etc.
[0057] It is important to note that the Content Delivery Network (CDN) node is referred to as "Content Delivery Network Node" throughout this article; while the node referred to as "Intermediate Node" is the node located between the user and the CDN node in the network link.
[0058] Intermediate nodes can include intermediate node ISPs, which are used for routing and transmission. For example, intermediate nodes can be the ISP's routing nodes or switches, etc.
[0059] In some embodiments, the addresses of users, intermediate nodes, and CDN nodes can all be recorded in the form of IP addresses (Internet Protocol addresses, a type of network communication protocol), such as CDN node IP address, intermediate node ISP IP address, and user real IP address.
[0060] Similarly, in some embodiments, in addition to being recorded in the form of IP address, it can also be recorded in various other forms such as MAC address (Media Access Control Address), URL address (Uniform Resource Locator Address), port number, IPv6 address (Internet Protocol version 6 Address), etc., without any restrictions here.
[0061] In this application, each node of the content delivery network can be equipped with a probe to ensure that the probe starts and ends at the probe and the user terminal, thereby ensuring that the entire link from the content delivery platform data center to the user terminal can be detected.
[0062] In some embodiments, since operators change the intermediate nodes of the existing network service daily, the probe needs to intermittently block the target address being probed to replace the intermediate node daily, thereby achieving continuous change of the intermediate node address and dynamically adapting to the existing network conditions. For example, refer to... Figure 1c This solution can update the target addresses in the address pool at 8:00 AM every day, thereby ensuring that the detection IP pool always matches the existing network and will not produce errors during long-term operation and use.
[0063] Therefore, in some embodiments, step 110 may also include:
[0064] Save the target address in the address list;
[0065] The addresses in the address list are updated periodically so that step 120 can generate a periodic probing task based on the addresses in the address list.
[0066] Therefore, in some embodiments, the addresses in the address list can be replaced daily to dynamically adapt to the current network conditions. For example, when probing ordinary addresses, a preset external network address is automatically selected to replace them, and when probing virtual addresses, a preset virtual address is automatically used to replace them. This avoids intermittent blocking by operators due to excessive traffic from a single address, improves system stability and availability, and reduces maintenance costs and difficulties.
[0067] In some embodiments, to improve detection efficiency, the target address needs to be located and verified before performing the periodic detection task. Therefore, step 110 includes:
[0068] Obtain the access logs of the content delivery network. The access logs record the address of the accessing user, the address of the content delivery network node accessed by the accessing user, and the address of the intermediate node involved in the access process.
[0069] Generate a single probe task, which is used to verify the network link from the content delivery network node through the intermediate node to the accessing user.
[0070] After a single probe is performed at the control probe end, the accessing user and intermediate node are verified based on the obtained single probe result to obtain the target address. The target address includes the accessing user and intermediate node that are consistent with the nodes in the network link detected by the single probe result.
[0071] For example, the address to be verified is retrieved from the access logs of the content delivery network, a single probe task for the address to be verified is generated, and the single probe task is executed to determine the path, latency and network problems of the network link, thereby verifying whether the address to be verified can be used as a target address in step 120.
[0072] For example, consistency checks can be performed on nodes in the network link with the accessing user and intermediate nodes. If the nodes in the network link are consistent with the accessing user and intermediate nodes, it means that the accessing user and intermediate nodes recorded in the access log are working normally, and the accessing user and intermediate nodes can be included in the detection range of the periodic probing task as target addresses.
[0073] For example, in some embodiments, the verification result includes verification normal and verification abnormal. Verification normal means that the detected nodes in the link are the same as the user address and intermediate nodes recorded in the log; verification abnormal means that the detected nodes in the link are different from the user address and intermediate nodes recorded in the log. When the verification is normal, it can be determined that the target address includes the user address and intermediate nodes.
[0074] In some embodiments, a single probe task can be a trace task; in other embodiments, a single probe task can also be a ping task.
[0075] (1) Ping task.
[0076] The Ping task is a probing scheme that measures the delay or round-trip time between the sender and receiver by sending a series of echo request messages to the receiver and waiting for a response. The echo request can be an ICMP message.
[0077] For example, refer to Figure 1d In some embodiments, a single probe task can be a Ping task, and the result of a single probe includes the round-trip latency between the content delivery network node and the accessing user. Performing a single probe task includes:
[0078] When the task storage pool triggers the start of a single probe task, the response parser generates a globally unique identifier (UUID) and a unique identifier (ID) for the single probe task.
[0079] The response data processor generates and sends request packets to the accessing user through the task manager, so that the request packets reach the accessing user through the network link. The request packets carry a globally unique identifier and a unique identifier.
[0080] When the Task Manager receives the response data packet, it uses an atomic lock to verify that the unique identifier of the response data packet is the same as the unique identifier of the request data packet. In addition, the response data processor uses a lock pointer to verify that the globally unique identifier of the response data packet is the same as the globally unique identifier of the request data packet.
[0081] If the unique identifier of the response packet is the same as the unique identifier of the request packet, and the globally unique identifier of the response packet is the same as the globally unique identifier of the request packet, then the round-trip time between the content distribution network node and the accessing user is calculated based on the request packet and the response packet; if the unique identifier of the response packet is different from the unique identifier of the request packet, or the globally unique identifier of the response packet is different from the globally unique identifier of the request packet, then no further operation can be performed, or a preset operation can be performed.
[0082] The preset operations may include discarding response data packets, recording abnormal data, regenerating and sending request data packets to the accessing user, notifying relevant personnel, etc.
[0083] In some embodiments, after the above steps are completed, the memory can be reset to make room for the next probe mission.
[0084] This task storage pool is used to store Ping tasks.
[0085] For example, the sender, i.e., the probe in this application, first sends an echo request, i.e., a request data packet, triggering the task storage pool to start executing a new word probe task. After processing by the response parser, a random UUID and ID are generated. Then, the response data processor serializes the ID and UUID and uses them as one of the parameters of the request data packet. The task manager uses the ID and UUID to register a callback function and is responsible for listening to the raw socket to receive the response data packet, and triggering the registered callback function to perform corresponding processing when the response data packet is received. After receiving the echo request, the receiver sends a response data packet. After receiving the returned response data packet, the task manager performs double-lock filtering to ensure the accuracy and consistency of the data. Upon receiving the response data packet, the system first verifies that the ID in the packet matches that in the request data packet using an atomic lock, thus ensuring that the received response data packet corresponds to the sent request data packet. Then, it retrieves and executes the callback function. Simultaneously, the response data processor deserializes the data in the response data packet and verifies the correctness of the UUID. The response data processor can also read the callback function associated with the UUID. Inside the callback function, a lock pointer is used to verify the sequence, ensuring the correct execution of the callback function and thus ensuring that multiple threads do not modify or access the ID simultaneously.
[0086] Finally, the task storage pool can also perform cleanup tasks, such as updating task status, cleaning up resources, and resetting memory, such as releasing memory space that is no longer needed, to ensure that resources can be released in a timely manner after the task is completed, improve the efficiency and reliability of the system, make the process of sending and receiving ping packets more efficient and stable, and improve the overall performance and reliability of the system.
[0087] Therefore, in some embodiments, after obtaining the single probe result based on the request packet and response packet, the following closing steps are also included:
[0088] Update the task status of a single probe task in the task storage pool;
[0089] Clean up the computing resources corresponding to a single probe mission;
[0090] Reset the memory corresponding to a single probe task in the task storage pool.
[0091] (2) trace task.
[0092] The Trace task involves sending a series of data packets, each with a different TTL (Time-To-Live) field. As the data packet passes through a routing node in the network link, the routing node decreases the TTL. When the TTL reaches 0, the routing node discards the data packet and sends a timeout message to the probe. The probe determines the routing path based on the received timeout message, which can be an ICMP (Internet Control Message Protocol) message. Finally, the probe determines the address, response time, and latency information of each routing node and the entire network link based on the timeout message.
[0093] For example, in some embodiments, the results of a single probe include round-trip latency between content delivery network nodes and intermediate nodes, round-trip latency between intermediate nodes, and round-trip latency between intermediate nodes and accessing users. Performing a single probe task includes:
[0094] Generate and send request packets to the accessing user so that the request packets reach the accessing user through the network link;
[0095] When a response data packet is received from the access user, the round-trip time between the content distribution network node and the intermediate node, the round-trip time between intermediate nodes, and the round-trip time between the intermediate node and the accessing user are calculated based on the response data packet.
[0096] In some embodiments, the process memory size can be checked periodically. If the memory size exceeds the limit, a system restart can be triggered to release the memory. Therefore, before generating and sending the request data packet to the accessing user, the process also includes:
[0097] Acquire memory information from the probe within a preset time period;
[0098] When memory information exceeds a preset threshold, a memory alarm is triggered and the memory is reset.
[0099] When the memory information does not exceed the preset threshold, close all completed periodic probe tasks in the task management pool.
[0100] The probe needs to check if any periodic probe tasks are disabled during the probe process. If any are enabled, they need to be added to the task management pool for unified management; otherwise, expired task management pools are disabled to reduce computational resource consumption. Therefore, in some embodiments, disabling all completed periodic probe tasks in the task management pool includes:
[0101] When there are active periodic probe tasks, add the active periodic probe tasks to the task management pool until the active periodic probe tasks are completed, and then close all completed periodic probe tasks in the task management pool.
[0102] If no periodic probing tasks are active, close all completed periodic probing tasks in the task management pool.
[0103] In this context, an active periodic probe task refers to a periodic probe task that is in an active state and ready to be executed. An active periodic probe task can be a periodic probe task that has already been executed or one that has not been executed. For example, in some embodiments, an active periodic probe task can be executed repeatedly until it is turned off.
[0104] For example, refer to Figure 1e Initially, the probe starts the Trace task process and periodically checks the process memory size. For example, every 6 hours, the probe process will periodically check its own memory size to determine if it exceeds the limit. If the memory exceeds the limit, it will trigger a system restart to release the memory; if the memory does not exceed the limit, it will continue to the next step. For the probe, the probe process obtains information about the corresponding Trace task, such as user address, data center, carrier and province where the data center is located, probe version, etc., in preparation for task execution.
[0105] Therefore, this application implements periodic monitoring of its own memory usage. If excessive memory usage is detected, it will automatically restart and issue an alert. Based on this robust self-healing capability, system administrators can promptly identify and resolve issues related to excessive system memory usage, reducing the impact of system malfunctions on the overall system.
[0106] Then, the probe process checks if any periodic probe tasks are in a disabled state. If there are enabled periodic probe tasks, they are added to the task pool; otherwise, expired periodic probe tasks are disabled.
[0107] The probe process then begins executing short trace tasks. In some embodiments, this includes using asynchronous coroutines to process the address pool, sending trace IP commands, and retrieving the returned information to ensure concurrent execution and efficient processing of the tasks. The execution results are then placed in a queue for subsequent processing to prevent data loss or overload. In some embodiments, the results in the queue can be reported to the appropriate notification system.
[0108] Through the above process, the Trace task can be executed on a schedule, and appropriate processing can be performed according to the task status and memory limits. After the Trace task is completed, the results can be reported to the notification system. This process design ensures the stability and accuracy of the Trace task, while allowing for the management and shutdown of periodic probing tasks.
[0109] 120. Generate periodic probe tasks based on the target address. The periodic probe tasks carry periodic information and are used to periodically probe the status of the network link from the content delivery network node through the intermediate node to the accessing user.
[0110] The periodic probing task is used to periodically probe the network status of the entire link [content delivery network node - intermediate node - user] and report the probe results.
[0111] Among them, the periodic information refers to the time information of the execution cycle of each periodic detection mission. This periodic information may include time information, duration information, etc.
[0112] In some embodiments, to reduce idle computing resources and ensure that an adequate number of periodic probing tasks are available for execution in each cycle to balance the probing load, a task management pool and a tokenizer can be used to manage the execution of periodic probing tasks. Therefore, step 120 further includes:
[0113] Every preset time interval, a task management pool is generated. The task management pool is used to manage the periodic probing tasks in it. Each task management pool corresponds to a token, which is used to control the execution speed of the periodic probing tasks in the task management pool.
[0114] When there are periodic detection tasks that have not been executed, the unexecuted periodic detection tasks are added to the task management pool so that the periodic detection tasks in the task management pool can be executed based on the periodic information, thereby ensuring that the previously unexecuted periodic detection tasks are not missed.
[0115] Based on the corresponding period of the period information, clear the task management pool and its corresponding tokenizer.
[0116] For example, to ensure the orderly execution of periodic probe tasks, a task management pool can be generated every minute, where each periodic probe task is stored as a blocking coroutine. The execution speed of these periodic probe tasks can be controlled by a tokenizer to balance the probe load; at the beginning of the next cycle, the task management pool and tokenizer can be cleared to prevent the accumulation of coroutines.
[0117] Clearing the task management pool can refer to deleting or reclaiming the old task management pool to ensure the effectiveness of task management without causing resource waste or performance degradation.
[0118] In some embodiments, if the preset duration is set to be less than the period corresponding to the periodic information, multiple task management pools that have not yet been cleared can exist simultaneously; in some embodiments, if the preset duration is set to be greater than the period corresponding to the periodic information, there are 0 or 1 task management pools at any given time; in some embodiments, if the preset duration is set to be the same as the period corresponding to the periodic information, a new task management pool is generated and an old task management pool is cleared after each preset duration, so that the total number of task management pools is always 1 at any given time.
[0119] In some embodiments, target addresses that do not need to be probed can be excluded to maintain the accuracy and stability of the probe. Therefore, before executing the periodic probe tasks in the task management pool, the following steps are also included:
[0120] Based on preset address filtering rules, the target addresses corresponding to periodic probe tasks in the task management pool are filtered to avoid probe target addresses when executing periodic probe tasks.
[0121] The preset address filtering rules can include a variety of filtering rules, such as filtering target addresses in the manually filtered list, filtering target addresses with excessively high packet loss rates, filtering target addresses marked as abnormal addresses, and so on.
[0122] For example, you can manually submit the target address to be filtered so that the preset address filtering rules can filter it, thereby manually removing the target addresses that do not need to be detected and making room for inserting new target addresses.
[0123] For example, if a target address fails to return a packet normally, that target address can be removed as an abnormal target address to avoid excessively high packet loss rate under normal circumstances.
[0124] In some embodiments, the preset address filtering rule can set the rejection ratio to 1%. For example, for 100 target addresses, one of them can be rejected according to the preset address filtering rule, and the remaining 99 can be retained.
[0125] For example, refer to Figure 1fFirst, when an unexecuted periodic probe task is detected, it is added to the task management pool. If no unexecuted periodic probe tasks are detected, no processing is performed. Next, the addresses are preprocessed, for example, manually removing addresses that do not need to be probed to make room for new addresses; addresses that failed to return packets normally are also removed to maintain the accuracy and stability of the probes. Then, the addresses to be probed are stored in files, for example, as IPS (Intrusion Prevention System) files, etc. Next, a timer is used to determine the completion of the periodic probe task. A timer trigger indicates that a periodic probe task has completed one cycle. At the start of the next cycle, the periodic probe task can be set in the task pool and tokenizer to prevent coroutine accumulation; otherwise, it indicates that the periodic probe task has been completed. Therefore, in some embodiments, the periodic probe results corresponding to the target address can be processed asynchronously by coroutine according to province for reporting. Finally, the probe results are integrated and reported for further data analysis and display.
[0126] 130. After the control probe performs a periodic probe task based on periodic information, the network link is re-analyzed and processed according to the periodic probe results obtained from each execution, so as to notify the status of the network link.
[0127] For example, periodic probing results can include network link path information, packet loss information, latency information, network problems, etc., so a series of analyses and displays can be performed on the periodic probing results.
[0128] For example, the average packet loss rate, total number of failures, total number of packets, packet loss rate, and average latency can be determined through periodic detection results.
[0129] In some embodiments, a visualization page displaying the network link status is also provided to offer comprehensive data analysis results and trends. For example, the page provides detailed data analysis conditions and metrics, supporting queries for metrics such as log count, average packet loss rate, total number of failures, total number of packets, packet loss rate, average latency, and packet loss detection error log rate.
[0130] In some embodiments, operations and maintenance personnel can selectively remove a portion of abnormal network links based on a visual interface to address problematic links in a timely manner and prevent failures. For example, if the periodic detection results include packet loss data, step 130 may include:
[0131] If the packet loss data of a network link is within a preset range, then that network link will be removed from the service links of the content delivery network.
[0132] For example, if there is a continuous packet loss of about 6% from Guangdong Telecom to the Nanchang Telecom Ruzi Road data center, this link can be removed from the existing network service, ensuring the availability of CDN services and the quality of the existing network.
[0133] For example, refer to Figure 1g The page can display metrics such as packet loss rate under different time ranges and time intensities. It can also filter the displayed metrics by country and province of CDN platform data center, network link operator, server room, server IP, whether it is faulty, and whether to only view virtual IP. Operation and maintenance personnel can intuitively view various metrics of the detection data, thereby helping them to better understand the detection process and results and optimize decision-making.
[0134] In some embodiments, a visualization page on a national map is also provided, showing the network link status, allowing operations and maintenance personnel to intuitively view the deployment status of the probes in various provinces across the country.
[0135] In some embodiments, device management is also provided to facilitate the management of the probe, such as adding a probe, enabling / disabling a probe, updating the version of the probe, etc.
[0136] For example, refer to Figure 1h New probes can be added to the maintained probe cluster, initially disabled by default. When a probe is enabled, it is checked and updated to ensure its availability. When it is disabled again, it is removed from the probe cluster and its operation is deactivated. Alternatively, a batch of probes can be updated. In some embodiments, a canary release strategy can be used to update the probes gradually, ensuring the overall service availability.
[0137] This application embodiment achieves comprehensive coverage and detection of real user links by deploying a probe terminal in the CDN data center, thereby sensing the blocking status of addresses and virtual addresses by operators, providing accurate link information and problem diagnosis capabilities, and thus improving the reliability, stability and user experience of CDN services.
[0138] As described above, this embodiment of the application can obtain the target address, which includes the addresses of the accessing user of the content delivery network, the content delivery network nodes, and the intermediate nodes involved when the accessing user visits. The content delivery network nodes are equipped with probes. A periodic probe task is generated based on the target address. This periodic probe task carries periodic information and is used to periodically probe the status of the network link from the content delivery network node through the intermediate nodes to the accessing user. After the probe executes the periodic probe task based on the periodic information, the network link is re-analyzed and processed according to the periodic probe results obtained from each execution, so as to notify the user of the network link status.
[0139] Therefore, this solution can detect the entire link to ensure the stability, performance and security of the platform.
[0140] The method described in the above embodiments will be further described in detail below.
[0141] In this embodiment, a data processing system will be used as an example to describe the system of this application embodiment in detail.
[0142] This embodiment proposes a data processing system, including a probe end, a heartbeat end, a policy end, and a proxy end. The probe end is deployed in a content delivery network node of the content delivery network, wherein:
[0143] (I) Strategy side.
[0144] The strategy end is used to obtain the target address and generate a periodic probe task based on the target address. The periodic probe task is sent to the heartbeat end. The target address includes the address of the access user of the content delivery network, the content delivery network node, and the address of the intermediate node involved when the access user accesses the network. The periodic probe task carries periodic information and is used to periodically probe the status of the network link from the content delivery network node through the intermediate node to the access user.
[0145] In some embodiments, the policy terminal is also used to obtain access logs of the content delivery network and generate a single probe task. The access logs record the address of the accessing user, the address of the content delivery network node accessed by the accessing user, and the address of the intermediate node involved when the accessing user accesses the network. The single probe task is used to verify the network link from the content delivery network node through the intermediate node to the accessing user.
[0146] (ii) Heartbeat end.
[0147] The heartbeat terminal is used to manage the probe terminals, receive periodic probe tasks from the policy terminal, and distribute the periodic probe tasks to each probe terminal.
[0148] In some embodiments, the heartbeat terminal is also used to manage the probe terminal to receive a single probe task from the policy terminal and to distribute the single probe task to each probe terminal;
[0149] (III) Detection end.
[0150] The probe is used to perform periodic probe tasks based on periodic information and report the periodic probe results obtained in each execution.
[0151] In some embodiments, the probe end is also used to perform a single probe task and report the obtained single probe result to the strategy end.
[0152] (iv) Agent end.
[0153] The agent is used to analyze and process network links based on periodic probe results, and to notify the network link status.
[0154] For example, refer to Figure 2a The interaction flow of this data processing system is as follows:
[0155] The strategy side can retrieve the user IPs of accessing users from the access logs of the content sub-platform, and then determine the probe terminal to be used to execute the probe task from the heartbeat terminal. The strategy side creates a new single probe task as needed and sends it to the heartbeat terminal.
[0156] The heartbeat client first integrates and verifies all probe endpoints available for performing probe tasks. Then, it receives a single probe task from the policy client and distributes it to the probe endpoints. The heartbeat client can also perform daily coverage checks on the probe endpoints to confirm their functionality for mission execution. Furthermore, it checks daily for IPs not covered by probes; if any are found, an alert is pushed to keep maintenance personnel informed about the status of all probe endpoints and the IPs to be probed. Additionally, the heartbeat client needs to reactivate the heartbeat information of the probe endpoints daily for management purposes.
[0157] Once deployed on nodes of the content delivery network, the probe client can obtain single probe tasks from the heartbeat endpoint based on a heartbeat mechanism. It then parses and executes these tasks, placing each task into a waiting queue for sequential execution. After completion, the result of each probe task is sent to the agent. If no probe task exists in the waiting queue, the previously expired task can be automatically repeated until a new task is added to the queue. Furthermore, if the probe client runs out of memory, it can alert the agent and automatically restart, allowing maintenance personnel to monitor its operational status.
[0158] Therefore, automatically repeating the previously expired probe task until a new probe task is restored in the waiting queue enables the probe end to maintain the expired policy. Even if the heartbeat end is lost, the previous policy can still be issued and continuously reported, ensuring the continuity of the probe, preventing blank time periods in the probe, and ensuring the reliability of the system.
[0159] The agent sends the results of a single probe task back to the strategy end.
[0160] The strategy end determines the target IP based on the detection results, creates a new periodic detection task based on the target IP, and then sends the periodic detection task to the heartbeat end.
[0161] The heartbeat terminal receives the periodic detection task and sends it to the detection terminal.
[0162] The probe receives periodic probe tasks from the heartbeat terminal and begins probing every minute. The probe reports the probe results every minute and sends them to the agent terminal so that maintenance personnel can understand the network status.
[0163] Finally, based on the summarized periodic probe results, the proxy marks abnormal IPs among the target IPs. For example, IPs with a total packet loss greater than 98% within one minute are identified as abnormal IPs. In some embodiments, if the abnormal IP's total packet loss is less than 70% in the next minute, its abnormal label is removed. Ultimately, the probe results filtered as described above can be compiled and reported to the link elimination system so that the link elimination system can identify network links containing abnormal IPs.
[0164] This application also provides a visualization page for the detection results data, offering comprehensive data analysis results and trends. It provides detailed data analysis conditions and indicators, supporting queries for metrics such as log count, average packet loss rate, total number of failures, total number of packets, packet loss rate, average latency, and packet loss detection error log rate. Operations personnel can intuitively view various indicators of the detection data, thereby helping them better understand the detection process and results and optimize decision-making.
[0165] Therefore, in the operation and maintenance of traditional content delivery platforms, packet loss issues may occur at the link level in data centers or equipment. This requires network probes to have sufficient data center coverage for detection. However, this not only requires significant resource investment, but is even more challenging in overseas markets, where achieving comprehensive coverage of every point is difficult. When faced with this situation, operations personnel need to manually aggregate and analyze IPs under the existing network data centers, increasing the difficulty of operations and maintenance. To solve these problems, this application embodiment deploys probes in the data centers of the content delivery platform, achieving comprehensive coverage and detection of real user links. By comprehensively covering the user-to-data center link, it is possible to perceive the blocking status of IPs and virtual IPs by operators, providing accurate link information and problem diagnosis capabilities, thereby improving the reliability, stability, and user experience of content delivery services, and bringing more efficient network management to enterprises.
[0166] refer to Figure 2b , Figure 2b This is the system architecture diagram. The system can be divided into an access layer, a load balancer, an interface layer, a service layer, and a storage layer, where:
[0167] The presentation layer, comprising the heartbeat endpoint and the proxy endpoint, serves as the interface between the system and external users or clients. It is responsible for receiving requests, processing input, and displaying information. In some embodiments, the presentation layer includes a visual page and various interfaces and protocols for user interaction.
[0168] A load balancer sits between the access layer and the interface layer and is used to distribute and manage request traffic from users. It can distribute requests to multiple interface layer servers to achieve load balancing and improve system performance and availability.
[0169] The API Layer includes probes, which are responsible for handling requests from users and calling the corresponding service layer functions to execute business logic.
[0170] The service layer includes a proxy and a strategy side, which are used to report results and collect and aggregate data to meet the needs of the interface layer and the storage layer.
[0171] The data storage layer is responsible for managing data storage and access in the system, including database clusters, cache clusters, log collection and analysis clusters, message bus clusters, etc., for data persistence, retrieval, and updating to support the system's business logic and functions.
[0172] The architecture of this system is modular, flexible and scalable, which helps to reduce system complexity, improve code maintainability and support horizontal scaling and performance optimization.
[0173] In the service layer, the policy side is responsible for data processing, thereby formulating and issuing probing strategies, such as trace tasks, ping tasks, and periodic probing tasks. These strategies are placed in the task storage pool of the probing end, from which the probing end's send / receive mechanism pulls new tasks for execution. This mechanism includes resetting memory, generating random IDs, registering callback functions, executing callback functions, serializing requests, double-lock filtering, receiving responses, and so on. The policy is then sent to the probing end via a heartbeat mechanism. The service layer can also specify various self-limiting mechanisms for the probing end, such as CPU limits, memory limits, and error restarts, so that the probing end can restart after insufficient CPU or memory, or in the event of an error.
[0174] Based on real-time data and requirements, the strategy team formulates the targets and frequencies for network-wide detection. It can flexibly adjust the detection strategy according to different needs to meet business and performance requirements.
[0175] The proxy can decompress, analyze, transform, organize and process data based on the aggregated detection results, perform service tracking on requests, organize and report detection results, and find and mark abnormal addresses based on the detection results to ensure the stability and performance optimization of the CDN cluster.
[0176] The main process of the periodic detection mission, as described above, includes functions such as mission storage and recovery, set reporting, address preprocessing, token generation, and mission coroutines.
[0177] The probe is deployed on various nodes of the CDN cluster. As the executor of the probe, the probe periodically executes probe tasks and reports the results. The probe has a restart mechanism. When memory is insufficient, it can restart and issue an alarm. The probe can report the policies it is executing to the heartbeat. The probe also has an expiration maintenance function. When it has completed all probe tasks in the waiting queue and lost contact with the heartbeat and cannot obtain new probe tasks, it can repeat the last probe task until it reconnects with the heartbeat.
[0178] The heartbeat endpoint, acting as a centralized management node, is responsible for monitoring and managing the status of all probe endpoints. It establishes connections with the probe endpoints, periodically receives status reports from them, and provides data query functionality. The heartbeat endpoint also receives instructions from the policy endpoint and distributes probe policies to the probe endpoints.
[0179] After performing its detection task, the probe reports the results to the heartbeat terminal. The heartbeat terminal is responsible for summarizing and processing the results and storing them in the data storage system for subsequent data analysis and decision-making.
[0180] In summary, the architecture of the CDN cluster full-network detection service enables comprehensive detection of CDN nodes, helping to discover potential faulty nodes, optimize link quality, and provide data support for decision-making and optimization. Meanwhile, the centralized management and flexible policy formulation in the architecture design give the system high scalability and flexibility, enabling it to adapt to constantly changing network environments and business needs.
[0181] This application's embodiments, in addition to focusing on the connectivity between equipment in the data center, also cover the detection scenario of the link from the user end to the backbone network. Thus, it comprehensively covers the entire link from the user to the data center of the content delivery network. Therefore, it can more comprehensively and accurately reflect the actual network situation, facilitating maintenance personnel to promptly detect and resolve faults and anomalies in the link, improving system reliability and stability, and thereby enhancing system efficiency and performance. Therefore, this application's embodiments can improve the accuracy of link detection and provide superior performance.
[0182] As can be seen from the above, the embodiments of this application can detect the entire link to ensure the stability, performance and security of the platform.
[0183] To better implement the above methods, this application also provides a data processing device, which can be integrated into an electronic device, such as a terminal or server. The terminal can be a mobile phone, tablet computer, smart Bluetooth device, laptop computer, personal computer, etc.; the server can be a single server or a server cluster composed of multiple servers.
[0184] For example, in this embodiment, the method of this application embodiment will be described in detail by taking the data processing device specifically integrated in a cloud server as an example.
[0185] For example, such as Figure 3 As shown, the data processing device may include an address unit 301, a cycle unit 302, and an analysis unit 303, as follows:
[0186] (1) Address unit 301.
[0187] Address unit 301 is used to obtain the target address, which includes the address of the access user of the content delivery network, the content delivery network node, and the address of the intermediate node involved when the access user accesses the content delivery network. The content delivery network node of the content delivery network is equipped with a probe terminal.
[0188] In some embodiments, after obtaining the target address, the address unit 301 is further configured to:
[0189] Save the target address in the address list;
[0190] The addresses in the address list are updated periodically.
[0191] In some embodiments, the address unit 301 is used for:
[0192] Obtain the access logs of the content delivery network. The access logs record the address of the accessing user, the address of the content delivery network node accessed by the accessing user, and the address of the intermediate node involved in the access process.
[0193] Generate a single probe task, which is used to verify the network link from the content delivery network node through the intermediate node to the accessing user.
[0194] After a single probe is performed at the control probe end, the accessing user and intermediate node are verified based on the obtained single probe result to obtain the target address. The target address includes the accessing user and intermediate node that are consistent with the network link nodes in the single probe result.
[0195] In some embodiments, the result of a single probe includes the round-trip latency between the content delivery network node and the accessing user. Performing a single probe task includes:
[0196] When the task storage pool triggers the start of a single probe task, a globally unique identifier and a unique identifier are generated for the single probe task.
[0197] Generate and send a request packet to the accessing user so that the request packet reaches the accessing user through the network link. The request packet carries a globally unique identifier and a unique identifier.
[0198] When a response data packet is received, an atomic lock is used to verify that the unique identifier of the response data packet is the same as the unique identifier of the request data packet, and a lock pointer is used to verify that the globally unique identifier of the response data packet is the same as the globally unique identifier of the request data packet.
[0199] The round-trip latency between the content distribution network node and the accessing user is calculated based on request and response packets.
[0200] In some embodiments, after obtaining the single probe result based on the request packet and response packet, the method further includes:
[0201] Update the task status of a single probe task in the task storage pool;
[0202] Clean up the computing resources corresponding to a single probe mission;
[0203] Reset the memory corresponding to a single probe task in the task storage pool.
[0204] In some embodiments, the results of a single probe include round-trip latency between a content delivery network node and an intermediate node, round-trip latency between intermediate nodes, and round-trip latency between an intermediate node and an accessing user. Performing a single probe task includes:
[0205] Generate and send request packets to the accessing user so that the request packets reach the accessing user through the network link;
[0206] When a response data packet is received from the access user, the round-trip time between the content distribution network node and the intermediate node, the round-trip time between intermediate nodes, and the round-trip time between the intermediate node and the accessing user are calculated based on the response data packet.
[0207] In some embodiments, before generating and sending a request packet to the accessing user, the method further includes:
[0208] Acquire memory information from the probe within a preset time period;
[0209] When memory information exceeds a preset threshold, a memory alarm is triggered and the memory is reset.
[0210] When the memory information does not exceed the preset threshold, close all completed periodic probe tasks in the task management pool.
[0211] In some embodiments, closing all completed periodic probe tasks in the task management pool includes:
[0212] When there are active periodic probe tasks, add the active periodic probe tasks to the task management pool until the active periodic probe tasks are completed, and then close all completed periodic probe tasks in the task management pool.
[0213] If no periodic probing tasks are active, close all completed periodic probing tasks in the task management pool.
[0214] (2) Periodic unit 302.
[0215] Periodic unit 302 is used to generate periodic probe tasks based on the target address. The periodic probe tasks carry periodic information and are used to periodically probe the status of the network link from the content delivery network node through the intermediate node to the accessing user.
[0216] In some embodiments, the periodic unit 302 is used for:
[0217] Address generation cycle detection task based on address list.
[0218] In some embodiments, the periodic unit 302 is further configured to:
[0219] Every preset time interval, a task management pool is generated. The task management pool is used to manage the periodic probing tasks in it. Each task management pool corresponds to a token, which is used to control the execution speed of the periodic probing tasks in the task management pool.
[0220] When there are periodic detection tasks that have not been executed, the unexecuted periodic detection tasks are added to the task management pool so that the periodic detection tasks in the task management pool can be executed based on the periodic information.
[0221] Based on the corresponding period of the period information, clear the task management pool and its corresponding tokenizer.
[0222] In some embodiments, prior to executing the periodic probe task in the task management pool, the method further includes:
[0223] Based on preset address filtering rules, the target addresses corresponding to periodic probe tasks in the task management pool are filtered to avoid probe target addresses when executing periodic probe tasks.
[0224] (3) Analysis Unit 303.
[0225] The analysis unit 303 is used to re-analyze and process the network link based on the periodic detection results obtained from each execution after the control detection end performs the periodic detection task based on the periodic information, so as to notify the status of the network link.
[0226] In some embodiments, the periodic detection results include packet loss data, and the analysis unit 303 is used for:
[0227] If the packet loss data of a network link is within a preset range, the network link will be removed from the service links of the content delivery network.
[0228] In practice, each of the above units can be implemented as an independent entity or can be arbitrarily combined to be implemented as the same or several entities. For the specific implementation of each of the above units, please refer to the previous method embodiments, which will not be repeated here.
[0229] In this application embodiment, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit.
[0230] As described above, the data processing device in this embodiment obtains the target address through the address unit. The target address includes the addresses of the accessing user of the content delivery network, the content delivery network nodes, and the intermediate nodes involved when the accessing user visits. The content delivery network nodes are equipped with probes. The periodic unit generates periodic probe tasks based on the target address. These periodic probe tasks carry periodic information and are used to periodically probe the status of the network link from the content delivery network node through the intermediate nodes to the accessing user. After controlling the probes to execute the periodic probe tasks based on the periodic information, the analysis unit re-analyzes and processes the network link based on the periodic probe results obtained from each execution, so as to notify the user of the network link status. Therefore, this embodiment can probe the entire link to ensure the stability, performance, and security of the platform.
[0231] This application also provides an electronic device, which can be a terminal, a server, or other similar device. The terminal can be a mobile phone, tablet computer, smart Bluetooth device, laptop computer, personal computer, etc.; the server can be a single server or a server cluster composed of multiple servers, etc.
[0232] In some embodiments, the data processing apparatus may also be integrated into multiple electronic devices, such as multiple servers, with the data processing method of this application being implemented by the multiple servers.
[0233] In this embodiment, a cloud server will be used as an example for detailed description. For example, ... Figure 4 As shown, it illustrates a structural schematic diagram of the electronic device involved in the embodiments of this application, specifically:
[0234] The electronic device may include components such as a processor 401 with one or more processing cores, a memory 402 with one or more computer-readable storage media, a power supply 403, an input module 404, and a communication module 405. Those skilled in the art will understand that... Figure 4 The electronic device structure shown does not constitute a limitation on the electronic device and may include more or fewer components than shown, or combine certain components, or have different component arrangements. Wherein:
[0235] The processor 401 is the control center of the electronic device. It connects various parts of the electronic device via various interfaces and lines. By running or executing software programs and / or modules stored in the memory 402, and by calling data stored in the memory 402, it performs various functions and processes data, thereby performing overall detection of the electronic device. In some embodiments, the processor 401 may include one or more processing cores; in some embodiments, the processor 401 may integrate an application processor and a modem processor, wherein the application processor mainly handles the operating system, user interface, and applications, and the modem processor mainly handles wireless communication. It is understood that the modem processor may also not be integrated into the processor 401.
[0236] The memory 402 can be used to store software programs and modules. The processor 401 executes various functional applications and data processing by running the software programs and modules stored in the memory 402. The memory 402 may mainly include a program storage area and a data storage area. The program storage area may store the operating system, application programs required for at least one function (such as sound playback function, image playback function, etc.), etc.; the data storage area may store data created according to the use of the electronic device, etc. In addition, the memory 402 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device. Accordingly, the memory 402 may also include a memory controller to provide the processor 401 with access to the memory 402.
[0237] The electronic device also includes a power supply 403 that supplies power to the various components. In some embodiments, the power supply 403 can be logically connected to the processor 401 through a power management system, thereby enabling functions such as charging, discharging, and power consumption management through the power management system. The power supply 403 may also include one or more DC or AC power supplies, recharging systems, power fault detection circuits, power converters or inverters, power status indicators, and other arbitrary components.
[0238] The electronic device may also include an input module 404, which can be used to receive input digital or character information and generate keyboard, mouse, joystick, optical or trackball signal inputs related to user settings and function control.
[0239] The electronic device may also include a communication module 405. In some embodiments, the communication module 405 may include a wireless module, through which the electronic device can perform short-range wireless transmission, thereby providing users with wireless broadband internet access. For example, the communication module 405 can be used to help users send and receive emails, browse web pages, and access streaming media.
[0240] Although not shown, the electronic device may also include a display unit, etc., which will not be described in detail here. Specifically, in this embodiment, the processor 401 in the electronic device loads the executable files corresponding to the processes of one or more applications into the memory 402 according to the following instructions, and the processor 401 runs the applications stored in the memory 402 to realize various functions, as follows:
[0241] Obtain the target address, which includes the address of the accessing user of the content delivery network, the content delivery network node, and the address of the intermediate node involved when the accessing user visits. The content delivery network node of the content delivery network has a probe deployed.
[0242] Periodic probe tasks are generated based on the target address. These periodic probe tasks carry periodic information and are used to periodically probe the status of the network link from the content delivery network node through intermediate nodes to the accessing user.
[0243] After the control probe performs a periodic probe task based on periodic information, the network link is re-analyzed and processed according to the periodic probe results obtained from each execution, so as to notify the network link status. The specific implementation of each of the above operations can be found in the previous embodiments, and will not be repeated here.
[0244] As can be seen from the above, the embodiments of this application can improve the ability to detect the entire link, so as to ensure the stability, performance and security of the platform.
[0245] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be performed by instructions, or by instructions controlling related hardware. These instructions can be stored in a computer-readable storage medium and loaded and executed by a processor.
[0246] Therefore, embodiments of this application provide a computer-readable storage medium storing a plurality of instructions that can be loaded by a processor to execute steps in any of the data processing methods provided in embodiments of this application. For example, the instructions can execute the following steps:
[0247] Obtain the target address, which includes the address of the accessing user of the content delivery network, the content delivery network node, and the address of the intermediate node involved when the accessing user visits. The content delivery network node of the content delivery network has a probe deployed.
[0248] Periodic probe tasks are generated based on the target address. These periodic probe tasks carry periodic information and are used to periodically probe the status of the network link from the content delivery network node through intermediate nodes to the accessing user.
[0249] After the control probe performs a periodic probe task based on periodic information, the network link is re-analyzed and processed according to the periodic probe results obtained from each execution, so as to notify the network link status. The storage medium may include: read-only memory (ROM), random access memory (RAM), disk, or optical disk, etc.
[0250] According to one aspect of this application, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the methods provided in various optional implementations of platform operation and maintenance or network detection methods provided in the above embodiments.
[0251] Since the instructions stored in the storage medium can execute the steps of any of the data processing methods provided in the embodiments of this application, the beneficial effects that any of the data processing methods provided in the embodiments of this application can achieve can be realized. For details, please refer to the previous embodiments, which will not be repeated here.
[0252] The foregoing has provided a detailed description of a data processing method, apparatus, electronic device, and computer-readable storage medium provided in the embodiments of this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A data processing method, characterized in that, include: Obtain the target address, which includes the address of the accessing user of the content delivery network, the content delivery network node, and the address of the intermediate node involved when the accessing user accesses the content delivery network. The content delivery network node of the content delivery network is equipped with a probe terminal. A periodic probing task is generated based on the target address. The periodic probing task carries periodic information and is used to periodically probe the status of the network link from the content delivery network node through the intermediate node to the accessing user. After the probe terminal executes the periodic probe task based on the periodic information, the network link is re-analyzed and processed according to the periodic probe results obtained from each execution, so as to notify the status of the network link.
2. The data processing method as described in claim 1, characterized in that, The process of performing the periodic detection task based on the periodic information further includes: Every preset time interval, a task management pool is generated. The task management pool is used to manage the periodic probing tasks in it. Each task management pool corresponds to a token device, which is used to control the execution speed of the periodic probing tasks in the task management pool. When there are periodic detection tasks that have not been executed, the unexecuted periodic detection tasks are added to the task management pool so that the periodic detection tasks in the task management pool can be executed based on the periodic information. Based on the period corresponding to the period information, clear the task management pool and its corresponding token generator.
3. The data processing method as described in claim 2, characterized in that, Before executing the periodic probing task in the task management pool, the method further includes: Based on preset address filtering rules, the target addresses corresponding to the periodic probing tasks in the task management pool are filtered to avoid probing the target addresses when executing the periodic probing tasks.
4. The data processing method as described in claim 1, characterized in that, The process of obtaining the target address includes: Obtain access logs of the content delivery network, the access logs containing the address of the accessing user, the address of the content delivery network node accessed by the accessing user, and the address of the intermediate node involved in the access by the accessing user. A single probe task is generated, which is used to verify the network link from the content delivery network node through the intermediate node to the accessing user; After controlling the probe to execute the single probe task, the access user and the intermediate node are verified based on the obtained single probe result to obtain the target address, which includes the access user and the intermediate node that are consistent with the nodes of the network link in the single probe result.
5. The data processing method as described in claim 4, characterized in that, The single probe result includes the round-trip latency between the content delivery network node and the accessing user, and the execution of the single probe task includes: When the task storage pool triggers the start of execution of the single probe task, a globally unique identifier and a unique identifier for the single probe task are generated; A request data packet is generated and sent to the accessing user so that the request data packet reaches the accessing user through the network link, and the request data packet carries the globally unique identifier and the unique identifier; When a response data packet is received, an atomic lock is used to verify that the unique identifier of the response data packet is the same as the unique identifier of the request data packet, and a lock pointer is used to verify that the globally unique identifier of the response data packet is the same as the globally unique identifier of the request data packet. The round-trip time between the content delivery network node and the accessing user is calculated based on the request data packet and the response data packet.
6. The data processing method as described in claim 5, characterized in that, After obtaining the single probe result based on the request data packet and the response data packet, the method further includes: The task status of the single probe task in the task storage pool is updated. Clean up the computing resources corresponding to the single detection task; Reset the memory corresponding to the single probe task in the task storage pool.
7. The data processing method as described in claim 4, characterized in that, The single probe result includes the round-trip latency between the content delivery network node and the intermediate node, the round-trip latency between the intermediate nodes, and the round-trip latency between the intermediate node and the accessing user. Executing the single probe task includes: Generate and send a request data packet to the accessing user, so that the request data packet reaches the accessing user through the network link; When the response data packet returned by the access user is received, the round-trip time between the content delivery network node and the intermediate node, the round-trip time between the intermediate nodes, and the round-trip time between the intermediate node and the accessing user are calculated based on the response data packet.
8. The data processing method as described in claim 7, characterized in that, Before generating and sending the request data packet to the accessing user, the process also includes: Acquire the memory information of the probe within a preset time period; When the memory information exceeds a preset threshold, a memory alarm is triggered and the memory is reset. When the memory information does not exceed the preset threshold, all completed periodic probe tasks in the task management pool are closed.
9. The data processing method as described in claim 8, characterized in that, The step of closing all completed periodic probe tasks in the task management pool includes: When there is an active periodic probing task, add the active periodic probing task to the task management pool until the active periodic probing task is completed, and then close all completed periodic probing tasks in the task management pool. When there are no active periodic probing tasks, close all completed periodic probing tasks in the task management pool.
10. The data processing method as described in claim 1, characterized in that, After obtaining the target address, the process also includes: The target address is saved in the address list; The addresses in the address list are updated periodically; The periodic probing task based on the target address includes: A periodic detection task is generated based on the addresses in the address list.
11. The data processing method as described in claim 1, characterized in that, The periodic detection results include packet loss data. The step of re-analyzing and processing the network link based on the periodic detection results obtained from each execution includes: If the packet loss data of the network link is within a preset range, the network link will be removed from the service links of the content delivery network.
12. A data processing system, characterized in that, It includes a probe end, a heartbeat end, a policy end, and a proxy end. The probe end is deployed in the content delivery network node of the content delivery network, wherein: The strategy terminal is used to obtain the target address and generate a periodic probe task based on the target address, and send the periodic probe task to the heartbeat terminal. The target address includes the address of the access user of the content delivery network, the content delivery network node, and the address of the intermediate node involved when the access user accesses the network. The periodic probe task carries periodic information and is used to periodically probe the status of the network link from the content delivery network node through the intermediate node to the access user. The heartbeat terminal is used to manage the detection terminals, receive periodic detection tasks from the strategy terminal, and distribute the periodic detection tasks to each detection terminal. The detection terminal is used to execute the periodic detection task based on the periodic information and report the periodic detection results obtained in each execution. The proxy is used to analyze and process the network link based on the periodic detection results, and to notify the network link of its status.
13. The data processing system as described in claim 12, characterized in that, in, The strategy terminal is also used to obtain access logs of the content delivery network and generate a single probe task. The access logs record the address of the accessing user, the address of the content delivery network node accessed by the accessing user, and the address of the intermediate node involved when the accessing user accesses the network. The single probe task is used to verify the network link from the content delivery network node through the intermediate node to the accessing user. The heartbeat terminal is also used to manage the detection terminal to receive a single detection task from the strategy terminal and to distribute the single detection task to each detection terminal; The detection end is also used to perform the single detection task and report the obtained single detection results to the strategy end.
14. An electronic device, characterized in that, The method includes a processor and a memory, the memory storing multiple instructions; the processor loads instructions from the memory to perform the steps of the data processing method as described in any one of claims 1 to 11.
15. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a plurality of instructions adapted for loading by a processor to perform the steps of the data processing method according to any one of claims 1 to 11.