Method and related device for optimizing an edge node
Patent Information
- Application Number
- CN202310262304.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-10
- Publication Date
- 2026-10-09
- Estimated Expiration
- 2043-03-10
AI Technical Summary
但是,在实际应用中,由于边缘节点的建设选址不理想,布局不合理等因素,极易导致边缘节点的网络覆盖质量受到影响,进而导致网络时延异常,无法保障用户的正常上网体验
[0015] In summary, this application obtains a large amount of network probe data by conducting network probing on multiple edge nodes within the test area. Based on this extensive network probe data, a thorough and accurate analysis of the network topology within the test area can be performed. Then, based on the analyzed network topology, this application can further identify sub-regions within the entire test area that require optimization and optimize the layout of edge nodes within those sub-regions. Thus, by collecting a large amount of network probe data, this application provides effective quantitative data support for network topology analysis and edge node layout optimization, thereby achieving targeted edge node layout optimization. This can efficiently and accurately improve the network coverage quality of edge nodes, providing users with better proximity response and ensuring a better internet experience.
Smart Images

Figure CN116418685B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to one or more embodiments in the field of network technology, and more particularly to an optimization method and related equipment for edge nodes. Background Technology
[0002] Edge nodes, such as Content Delivery Network (CDN) nodes, are deployed in various locations to allow users to access content from the nearest location, reducing network congestion and improving response speed and hit rate. However, in practical applications, factors such as suboptimal site selection and unreasonable layout of edge nodes can easily affect network coverage quality, leading to abnormal network latency and compromising the user's normal internet experience.
[0003] Therefore, how to effectively and accurately optimize edge nodes and improve their network coverage quality to ensure user experience is an urgent problem to be solved. Summary of the Invention
[0004] In view of this, one or more embodiments of this specification provide an optimization method and related equipment for edge nodes.
[0005] Firstly, this specification provides an optimization method for edge nodes, the method comprising:
[0006] Obtain network detection data of multiple edge nodes distributed within the area to be tested; the area to be tested includes multiple sub-regions;
[0007] Based on the network detection data, network topology analysis is performed on the multiple sub-regions contained in the area to be tested to obtain the network topology structure of the area to be tested.
[0008] Based on the network topology, at least one target sub-region to be optimized is determined among the multiple sub-regions included in the region to be tested, and the layout of edge nodes in the at least one target sub-region is optimized.
[0009] Secondly, this specification provides an edge node optimization device, the device comprising:
[0010] A network detection unit is used to acquire network detection data of multiple edge nodes distributed within a test area; the test area includes multiple sub-regions.
[0011] The topology analysis unit is used to perform network topology analysis on each sub-region within the area to be tested based on the network detection data, so as to obtain the network topology structure of the area to be tested.
[0012] An optimization unit is configured to, based on the network topology, determine at least one target sub-region to be optimized among the plurality of sub-regions contained in the region to be tested, and optimize at least one edge node distributed in the at least one target sub-region.
[0013] Accordingly, this specification also provides a computing device, including: a memory and a processor; the memory stores a computer program that can be executed by the processor; when the processor runs the computer program, it performs the edge node optimization method as described in the above embodiments.
[0014] Accordingly, this specification also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, performs the edge node optimization method as described in the above embodiments.
[0015] In summary, this application obtains a large amount of network probe data by conducting network probing on multiple edge nodes within the test area. Based on this extensive network probe data, a thorough and accurate analysis of the network topology within the test area can be performed. Then, based on the analyzed network topology, this application can further identify sub-regions within the entire test area that require optimization and optimize the layout of edge nodes within those sub-regions. Thus, by collecting a large amount of network probe data, this application provides effective quantitative data support for network topology analysis and edge node layout optimization, thereby achieving targeted edge node layout optimization. This can efficiently and accurately improve the network coverage quality of edge nodes, providing users with better proximity response and ensuring a better internet experience. Attached Figure Description
[0016] Figure 1 This is a schematic diagram of a system architecture provided in an exemplary embodiment;
[0017] Figure 2 This is a flowchart illustrating an edge node optimization method provided in an exemplary embodiment;
[0018] Figure 3 This is a flowchart illustrating a delay anomaly analysis method provided in an exemplary embodiment;
[0019] Figure 4 This is an exemplary embodiment providing a statistical chart of urban time delay;
[0020] Figure 5 This is a flowchart illustrating a network error rate anomaly analysis method provided in an exemplary embodiment;
[0021] Figure 6This is a schematic diagram of the structure of an edge node optimization device provided in an exemplary embodiment;
[0022] Figure 7 This is a schematic diagram of the structure of a computing device provided in an exemplary embodiment. Detailed Implementation
[0023] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with one or more embodiments of this specification. Rather, they are merely examples of apparatuses and methods consistent with some aspects of one or more embodiments of this specification as detailed in the appended claims.
[0024] It should be noted that the steps of the corresponding methods are not necessarily performed in the order shown and described in this specification in other embodiments. In some other embodiments, the methods may include more or fewer steps than described in this specification. Furthermore, a single step described in this specification may be broken down into multiple steps in other embodiments; and multiple steps described in this specification may be combined into a single step in other embodiments.
[0025] The user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse.
[0026] First, some terms used in this specification will be explained to facilitate understanding by those skilled in the art.
[0027] (1) Edge nodes refer to service platforms built at the network edge close to users, providing storage, computing, network and other resources to process data at the network edge, thereby reducing the bandwidth and latency losses caused by network transmission and multi-level forwarding, and reducing the response time of user requests.
[0028] (2) Content Delivery Network (CDN) nodes are a type of edge node. Widely distributed CDN nodes can provide internet users with localized responses. With the development of edge computing technology, CDN nodes can provide not only traditional network acceleration (both static and dynamic), but also edge computing and edge storage services. It should be noted that CDN nodes and other edge nodes are typically server clusters composed of multiple servers.
[0029] (3) Network measurement, also known as network probing, refers to the process of sensing network status and traffic characteristics supported by specific measurement tools or systems. It is used to obtain relevant network measurement data to support network administrators or users in assessing network availability and diagnosing network faults or other existing problems.
[0030] Network probing can be divided into active probing and passive probing. Active probing generally employs traditional scanning methods, obtaining relevant information by sending pending packets to the target server and collecting response packets. Active probing has the advantages of fast and accurate information acquisition. This application primarily uses active probing to obtain relevant network measurement data. In some possible implementations, the network probing modes initiated by this application to the target server (e.g., CDN nodes) using active probing include, but are not limited to: Internet Control Message Protocol (ICMP) probing, Transmission Control Protocol (TCP) probing, Hypertext Transfer Protocol (HTTP) probing, HTTPS probing, traceroute probing, etc., which are not specifically limited in this specification.
[0031] (4) Graph computing refers to modeling data in a graph-like manner to obtain results that were previously difficult to achieve using a flat perspective. A graph is an abstract data structure used to represent the relationships between objects, described using vertices and edges. Vertices represent objects, and edges between vertices represent the relationships between objects.
[0032] (5) Round-Trip Time (RTT): In computer networks, RTT represents the total time delay from when the sender starts sending data until the sender receives an acknowledgment from the receiver. Generally, the receiver will return an acknowledgment immediately after receiving the data.
[0033] As mentioned above, while deploying a large number of edge nodes close to users can significantly improve their online experience, improper site selection and layout during construction can easily lead to poor network coverage quality, thus failing to guarantee a normal online experience for users. Furthermore, as CDN services expand into overseas markets, the complex and diverse network topologies of different countries and regions make it difficult to effectively deploy edge nodes. Therefore, understanding the network topology of each region to optimize the deployment of edge nodes, thereby ensuring network coverage quality and providing reliable network services to users, is a pressing issue that needs to be addressed.
[0034] Based on this, this specification provides a technical solution that involves acquiring a large amount of network probing data for multiple edge nodes, analyzing the network topology of the area where these edge nodes are located, and then optimizing the layout of the edge nodes accurately and efficiently based on the network topology.
[0035] In implementation, this application performs network probing on multiple edge nodes distributed in each sub-region of the area to be tested, acquiring network probing data for these edge nodes. Then, based on this network probing data, this application can perform network topology analysis on each sub-region of the area to be tested, obtaining the network topology structure of the area to be tested. Finally, based on this network topology structure, this application can determine at least one target sub-region to be optimized among the multiple sub-regions of the area to be tested, and optimize at least one edge node distributed in that at least one target sub-region.
[0036] In the above technical solution, this application conducts network probing on multiple edge nodes within the test area to obtain a large amount of network probing data for these edge nodes. Based on this large amount of network probing data, the network topology structure within the test area can be fully and accurately analyzed. Then, based on the analyzed network topology structure, this application can further determine the sub-regions within the entire test area that need optimization and optimize the layout of edge nodes in those sub-regions. Thus, by collecting a large amount of network probing data, this application provides effective quantitative data support for network topology analysis and edge node layout optimization, thereby achieving targeted edge node layout optimization. This can efficiently and accurately improve the network coverage quality of edge nodes, providing users with better proximity response and ensuring a better internet experience.
[0037] Please see Figure 1 , Figure 1 This is a schematic diagram of a system architecture provided in an exemplary embodiment. The technical solutions of the embodiments in this specification can be... Figure 1The specific implementation is within the system architecture shown or a similar system architecture. For example... Figure 1 As shown, the system architecture may include a network detection subsystem, a data aggregation subsystem, and a data analysis subsystem. These subsystems are used to perform network detection on multiple edge nodes distributed within the area under test, and to analyze the network topology of the area under test based on the collected network detection data, thereby further optimizing the layout of edge nodes within the area under test. In one illustrated embodiment, the network detection subsystem, data aggregation subsystem, and data analysis subsystem can establish communication connections via wired or wireless means.
[0038] like Figure 1 As shown, multiple edge nodes are deployed in the area to be tested, such as edge node 1 and edge node 2, etc. In one illustrated embodiment, the edge node may include a CDN node, specifically a single server, a server cluster consisting of multiple servers, or a cloud computing service center. In one illustrated embodiment, edge node 1 and edge node 2 may be nodes deployed by the same Internet Service Provider (ISP), or nodes deployed by different ISPs; this specification does not specifically limit this.
[0039] In one illustrated embodiment, the area to be tested may include multiple sub-regions, and multiple edge nodes may be distributed within these sub-regions. For example, the area to be tested may include sub-region A and sub-region B. Edge node 1 may be deployed in sub-region A, and edge node 2 may be deployed in sub-region B. Alternatively, edge node 1 and edge node 2 may both be deployed in sub-region A, and no edge nodes may be deployed (or constructed) in sub-region B, etc. This specification does not specifically limit the scope of the invention.
[0040] In one illustrated embodiment, the network probing subsystem can be used to perform network probing on multiple edge nodes distributed within multiple sub-regions encompassing the region to be probed. For example... Figure 1As shown, the network probing subsystem may include multiple network probes, such as network probe 1, network probe 2, and network probe 3, etc. In one illustrated embodiment, the multiple network probes may be distributed across multiple sub-regions included in the area to be tested. For example, taking the area to be tested as including sub-region A and sub-region B, network probe 1 may be deployed in sub-region A, and network probe 2 and network probe 3 may be deployed in sub-region B; alternatively, network probe 1 and network probe 2 may both be deployed in sub-region A, and network probe 3 may be deployed in sub-region B; or, network probe 1, network probe 2, and network probe 3 may all be deployed in sub-region A, etc. This specification does not specifically limit the specific deployments. In one illustrated embodiment, the multiple network probes may belong to the same or different ISPs. Generally, each network probe can support network probing to edge nodes under different ISPs.
[0041] In one illustrated embodiment, multiple network probes can actively probe multiple edge nodes to obtain network probe data for those edge nodes. For example, network probe 1 can probe edge node 1 and edge node 2 respectively, thereby obtaining network probe data for edge node 1 and edge node 2 respectively; network probe 2 can also probe edge node 1 and edge node 2 respectively, thereby obtaining network probe data for edge node 1 and edge node 2 respectively; network probe 3 can also probe edge node 1 and edge node 2 respectively, thereby obtaining network probe data for edge node 1 and edge node 2 respectively.
[0042] In one illustrated implementation, the network probe can actively probe edge nodes using various probing modes such as TCP probing and HTTP probing. Correspondingly, the network probe data collected can include data corresponding to the multi-layered structure defined by the TCP / IP protocol. For example, it can include data corresponding to TCP / IP layer 3, such as network layer packet loss rate, RTT, and routing path; it can also include data corresponding to TCP / IP layer 4, such as TCP connection establishment time; and it can even include data corresponding to TCP / IP layer 7, such as the HTTP GET first byte time, etc. This specification does not specifically limit these aspects; please refer to the description of the subsequent embodiments for details, which will not be elaborated upon here.
[0043] It should be noted that a network probe can actually be a program running on a network detection device. For example, the network detection device can be a smartphone, tablet, laptop, desktop computer, server, or server cluster, etc., and this specification does not specifically limit it. For example, the network detection device can also be an edge node deployed under an ISP. In one illustrated embodiment, the various network detection devices can establish communication connections via wired or wireless means.
[0044] In one illustrated embodiment, the data aggregation subsystem is primarily used to collect and summarize network probe data obtained from various network probes. In this embodiment, each network probe is deployed with a corresponding agent, and similarly, the data aggregation subsystem can also deploy a corresponding agent. In this embodiment, after a network probe initiates a probe to an edge node, it can send the obtained network probe data to the data aggregation subsystem via the agent. The data aggregation subsystem then receives the network probe data from each network probe through its agent and performs preprocessing, cleaning, and classification aggregation of the data. For example, preprocessing mainly unifies the data format of network probes from different ISPs; cleaning mainly removes network probe data with missing fields or no reference value; and classification aggregation mainly categorizes and aggregates the network probe data based on the ISP and sub-region to which the edge node belongs.
[0045] In one illustrated embodiment, the data aggregation subsystem can further store the network probe data received from each network probe into a corresponding database. In another illustrated embodiment, the data aggregation subsystem can store different data into corresponding databases according to different data processing methods and data real-time requirements. For example, for offline processing tasks with low real-time requirements but large data volume, such as network topology analysis, the data used for network topology analysis (e.g., routing paths) from the network probe data can be saved to an offline batch computing database. For example, this offline batch computing database (or offline batch computing server) can be an Open Data Processing Service (ODPS) database, etc., and this specification does not specifically limit it. For example, for scenarios with high real-time requirements but small data volume, such as network anomaly detection, the data used for network anomaly detection (e.g., RTT) from the network probe data can be saved to a real-time streaming computing database. For example, this real-time streaming computing database (or real-time streaming computing server) can be any possible real-time streaming computing database, etc., and this specification does not specifically limit it.
[0046] In one of the illustrated embodiments, the data aggregation subsystem can be a server with the above-mentioned functions. Specifically, it can be a single server, a server cluster consisting of multiple servers, or a cloud computing service center, etc. This specification does not make any specific limitations on this.
[0047] In one illustrated embodiment, the data aggregation subsystem can send the collected network probe data to the data analysis subsystem (which includes, for example, the aforementioned offline batch computing server and real-time stream computing server). The data analysis subsystem can perform various offline / real-time data processing based on the network probe data. For example, the data analysis subsystem can analyze the network topology of the area under test based on the network probe data to obtain the network topology structure of the area under test. Further, the data analysis subsystem can output and display the analyzed network topology structure through a preset interface, allowing staff to optimize the layout of edge nodes within the corresponding area based on the network topology structure, such as selecting suitable addresses for newly built edge nodes or changing the addresses of existing edge nodes, etc. For example, the data analysis subsystem can also perform network latency anomaly analysis, error rate analysis, route change detection, etc., based on the aforementioned network probe data for the area under test. This specification does not specifically limit these actions; please refer to the descriptions of subsequent embodiments for details, which will not be elaborated upon here.
[0048] In one of the illustrated embodiments, the data analysis subsystem can be a server with the above-mentioned functions. Specifically, it can be a single server, a server cluster consisting of multiple servers, or a cloud computing service center, etc. This specification does not make any specific limitations in this regard.
[0049] In one of the illustrated embodiments, the system architecture may also include other possible subsystems, such as a data push subsystem and a task control subsystem, etc., which are not specifically limited in this specification.
[0050] In one illustrated implementation, after the data analysis subsystem completes the analysis and processing of various types of network probe data to obtain analysis results such as network topology, latency anomalies, and network error rates of the area under test, the data push subsystem can push these analysis results to downstream subsystems that need to consume them, thereby driving further processing. For example, the data push subsystem can push the network topology analysis results to the subsystems of relevant departments involved in building edge nodes. For example, the data push subsystem can push the latency anomaly and network error rate analysis results to the real-time alarm subsystem or the offline anomaly registration subsystem, etc., to assist suppliers in reporting faults and scheduling escapes, etc., etc., which are not specifically limited in this specification.
[0051] In one illustrated embodiment, the task control subsystem can be used to control the various subsystems described above, such as controlling the detection frequency of each network probe in the network detection subsystem, for example, controlling each network probe to detect multiple edge nodes in the area to be tested every 30 seconds, 1 minute, 2 minutes or 5 minutes, etc. This specification does not specifically limit this.
[0052] For example, the area to be tested can be a region consisting of one or more countries, a province or city, or even the entire world, etc., and this specification does not specifically limit it in this way. For example, if the area to be tested is province A, then the multiple cities included in province A can be the multiple sub-regions mentioned above. For example, if the area to be tested is country Z, then the multiple provinces included in country Z can be the multiple sub-regions mentioned above, or, the multiple provinces included in country Z can be a portion of the area to be tested, and the cities included in each portion of the area can be the sub-regions mentioned above, etc., and this specification does not specifically limit it in this way. As mentioned above, it should be noted that a sub-region does not necessarily represent the next level region of the area to be tested; the sub-region is mainly used to indicate the scope of the edge node layout optimization specifically performed in this application.
[0053] It should be understood that Figure 1 The system architecture shown is for illustrative purposes only. In some possible implementations, the system architecture may include fewer subsystems, or may include other subsystems besides those described above, etc. This specification does not specifically limit this.
[0054] Please see Figure 2 , Figure 2 This is a flowchart illustrating an edge node optimization method provided in an exemplary embodiment. This method can be applied to the above... Figure 1 The system shown can be a single server, a server cluster consisting of multiple servers, or a cloud computing service center, etc., and this specification does not specify a particular one. Figure 2 As shown, the method may specifically include the following steps S101-S103.
[0055] Step S101: Obtain network probe data of multiple edge nodes distributed in the area to be tested.
[0056] In one illustrated embodiment, as described above, the area to be tested may include multiple sub-regions, and multiple edge nodes may be deployed within these sub-regions. This application can perform network probing on each of the multiple edge nodes distributed within the multiple sub-regions of the area to be tested, thereby obtaining network probing data from the multiple edge nodes.
[0057] In one illustrated embodiment, the aforementioned edge node may include a CDN node.
[0058] In one illustrated embodiment, at least one network probe can be deployed in multiple sub-regions encompassed by the region to be tested. Thus, at least one network probe distributed across the multiple sub-regions within the region to be tested can be used to initiate probes against multiple CDN nodes distributed in each of the sub-regions to obtain network probe data from the multiple CDN nodes. In another illustrated embodiment, at least one network probe can also be deployed outside the region to be tested. Thus, this application can also use at least one network probe outside the region to initiate probes against the multiple CDN nodes to obtain network probe data from the multiple CDN nodes.
[0059] In one illustrated implementation, each network probe can initiate probes to multiple CDN nodes distributed in multiple sub-regions within the region to be tested, based on a target detection mode, in order to obtain network detection data from the multiple CDN nodes.
[0060] For example, the target probing mode may include ICMP probing, TCP probing, HTTP probing, HTTPS probing, traceroute probing, etc., and this specification does not specifically limit it. For example, network probing data may include data corresponding to the multi-layer structure defined by the TCP / IP protocol, such as TCP / IP layer 3, layer 4, or even layer 7 data, such as network layer packet loss rate, RTT, routing path, TCP connection establishment time, HTTP GET first byte time, etc., and this specification does not specifically limit it.
[0061] For example, the specific implementations of various network detection modes can be shown below.
[0062] (1) ICMP detection
[0063] Implementation: The network probe executes a Ping command to the target server (i.e., any one of the multiple edge nodes in the area to be tested), specifying parameters such as packet size and number of probes. The Ping command is a query message, an active request, and an ICMP protocol that receives an active response.
[0064] Detection data: Record various statistical indicators of packet loss rate and RTT, such as the mean, standard deviation, maximum / minimum RTT, etc., as well as the number of detection errors and error rate.
[0065] (2) TCP probe
[0066] Implementation method: The network probe initiates a TCP connection establishment (synchronous, SYN) request to the target server, and sets parameters such as the timeout period for the peer's acknowledgment (ACK) message and the number of probes.
[0067] Detection data: Record the connection establishment success rate (including the success rate of 1 connection establishment, 2 connection establishment, and even multiple connection establishment success rates) and various statistical indicators of connection establishment time, such as the mean, standard deviation, maximum / minimum value of connection establishment time, etc., as well as record the number of detection errors and error rate, etc.
[0068] (3) HTTP detection
[0069] Implementation method: The network probe sends an HTTP GET request to the target server, setting parameters such as the HTTP object range (e.g., 1K), HTTP timeout, and number of probes.
[0070] Detection data: Record various statistical indicators of the first packet time, such as the mean, standard deviation, maximum / minimum value of the first packet time, as well as the number of detection errors and error rate.
[0071] (4) HTTPS detection
[0072] Implementation method: The network probe sends an HTTPS GET request to the target server, setting parameters such as the HTTP range (e.g., 1K), HTTPS handshake timeout, and number of probes.
[0073] Probe data: Records various statistical indicators of HTTPS handshake time, including the mean, standard deviation, maximum / minimum values, etc., as well as the number of probe errors and error rate. Among these, the handshake time of the SSL (Handshake Protocol) is a comprehensive quality indicator covering all layers of TCP / IP.
[0074] (5) traceroute detection
[0075] Implementation method: The network probe initiates a traceroute probe to the target server, setting parameters such as the number of probes.
[0076] Probe data: Records traceroute probe results, including probe data for each hop (i.e., each router) on the routing path between the network probe and the target server, including the IP addresses of intermediate hops, packet loss rate, and various RTT statistics. These RTT statistics include, for example, the mean, standard deviation, maximum / minimum RTT values.
[0077] Step S102: Based on the network detection data, perform network topology analysis on the multiple sub-regions included in the area to be tested to obtain the network topology structure of the area to be tested.
[0078] In one illustrated embodiment, after obtaining network probe data from multiple edge nodes (e.g., CDN nodes), this application can perform network topology analysis on the area under test based on the network probe data from the multiple edge nodes to obtain the network topology structure of the area under test.
[0079] In one illustrated embodiment, this application can perform network topology analysis on multiple sub-regions contained in the area under test based on the network probing data of the multiple edge nodes, so as to obtain the network topology structure of the area under test.
[0080] In one illustrated embodiment, the network probe data may include multiple routing paths between at least one network probe and multiple edge nodes, obtained through traceroute probing. Each routing path may include at least one router (or at least one-hop route).
[0081] For example, as described above Figure 1 Using the network probes and edge nodes shown as examples, the detected routing paths will be explained.
[0082] For example, network probe 1 probes edge node 1 and obtains the routing path 11 between network probe 1 and edge node 1. The routing path 11 includes: network probe 1 → router 11a → router 11b → router 11c → edge node 1.
[0083] For example, network probe 1 probes edge node 2 and obtains the routing path 12 between network probe 1 and edge node 2. The routing path 12 includes: network probe 1 → router 12a → router 12b → edge node 2.
[0084] For example, network probe 2 probes edge node 1 and obtains the routing path 21 between network probe 2 and edge node 1. The routing path 21 includes: network probe 2 → router 21a → router 21b → router 21c → router 21d → router 21e → edge node 1.
[0085] For example, network probe 2 probes edge node 2 and obtains the routing path 22 between network probe 2 and edge node 2. The routing path 22 includes: network probe 2 → router 22a → router 22b → router 22c → edge node 2.
[0086] For example, network probe 3 probes edge node 1 and obtains the routing path 31 between network probe 3 and edge node 1. The routing path 31 includes: network probe 3 → router 31a → router 31b → router 31c → router 31d → edge node 1.
[0087] For example, network probe 3 probes edge node 2 and obtains the routing path 32 between network probe 3 and edge node 2. The routing path 32 includes: network probe 3 → router 32a → edge node 2.
[0088] As mentioned above, each routing path is directional. For example, in routing path 11, router 11c is the next-hop route of router 11b, router 11b is the next-hop route of router 11a, and correspondingly, router 11a is the previous-hop route of router 11b, and router 11b is the previous-hop route of router 11c.
[0089] Furthermore, in one illustrated embodiment, this application can obtain the attribution information of at least one router included in each of the multiple routing paths between at least one network probe and multiple edge nodes.
[0090] In one illustrated implementation, if the edge node is a CDN node, this application can obtain the attribution information of each hop router on the routing path by calling the CDN IP library.
[0091] In one illustrated embodiment, the attribution information of each router may include the geographical location of each router, which may include the sub-region to which each router belongs (e.g., country, province, city, etc.). This specification does not specifically limit this. For example, if the area to be tested is province A, then the sub-region to which each router belongs may be, for example, city A or city B, and so on.
[0092] In one of the illustrated embodiments, the attribution information of each router may also include the ISP to which each router belongs, the Autonomous System Number (ASN), etc., which are not specifically limited in this specification.
[0093] Furthermore, in one illustrated embodiment, this application can construct a network topology diagram corresponding to the area under test based on the attribution information of at least one router included in each of the aforementioned multiple routing paths. This network topology diagram includes multiple vertices, each vertex representing a sub-region within the area under test, and edges between vertices representing routing connections between sub-regions.
[0094] In one illustrated embodiment, the vertices and edges in the network topology graph can store various calculated information, such as: the in-degree (i.e., the number of previous-hop sub-regions of the current sub-region), the out-degree (i.e., the number of next-hop sub-regions of the current sub-region), the weight of each sub-region, the IP list of the main routers in each sub-region, etc., which are not specifically limited in this specification. In one illustrated embodiment, the weight of each sub-region can be related to the request volume corresponding to each sub-region.
[0095] For example, as described above Figure 1 The following example illustrates network probes and edge nodes. For instance, network probe 1 and network probe 2 belong to city A (i.e., deployed in city A), network probe 3 belongs to city B, edge node 1 belongs to city C, and edge node 2 belongs to city D.
[0096] For example, in the above routing path 11, router 11a belongs to city A, router 11b belongs to city C, and router 11c belongs to city C.
[0097] For example, in the above routing path 12, router 12a belongs to city C, and router 12b belongs to city D.
[0098] For example, in the above routing path 21, router 21a belongs to city A, router 21b belongs to city B, router 21c belongs to city E, router 21d belongs to city F, and router 21e belongs to city C. Among them, city E and city F are also two sub-regions within the area to be tested.
[0099] For example, in the above routing path 22, router 22a belongs to city A, router 22b belongs to city B, and router 22c belongs to city D.
[0100] For example, in the above routing path 31, router 31a belongs to city B, router 31b belongs to city E, router 31c belongs to city F, and router 31d belongs to city C.
[0101] For example, router 32a in the above routing path 32 belongs to city D.
[0102] In summary, among the above 6 routing paths, the in-degree of city A in the test area is 0, the out-degree of city A is 3, the in-degree of city B is 2, the out-degree of city B is 2, the in-degree of city C is 3, the out-degree of city C is 1, and so on. These details will not be elaborated here.
[0103] In one of the illustrated embodiments, given the large number of edge nodes in the area to be tested, the number of network probes may even reach tens of thousands, resulting in a huge amount of network probe data. In order to improve the efficiency of subsequent processing, this application can perform a pruning algorithm on the network topology graph to remove vertices and edges with weights lower than a preset threshold. For example, in the network topology graph, sub-regions with a request volume of less than 1,000 or 5,000 can be removed, etc. This specification does not make specific limitations on this.
[0104] Step S103: Based on the network topology, determine at least one target sub-region to be optimized among the multiple sub-regions included in the test area, and optimize the layout of edge nodes in the at least one target sub-region.
[0105] Furthermore, in one illustrated embodiment, this application can determine at least one target sub-region to be optimized among the multiple sub-regions contained in the test area based on the analyzed network topology of the test area, and optimize the layout of edge nodes in the at least one target sub-region.
[0106] In one illustrated embodiment, this application can determine at least one target sub-region to be optimized among the plurality of sub-regions based on the request volume corresponding to each sub-region in the above-described network topology diagram. In one illustrated embodiment, the request volume corresponding to each sub-region can be equal to the number of routing paths in the above-described plurality of routing paths that include routers belonging to that sub-region.
[0107] In one illustrated embodiment, this application can determine at least one target sub-region to be optimized among the plurality of sub-regions based on the request volume corresponding to each sub-region in the above-described network topology diagram and a preset ratio. In one illustrated embodiment, the request volume corresponding to each of the at least one target sub-region to be optimized can be greater than the request volume corresponding to a preset ratio of the sub-regions among the plurality of sub-regions. For example, the preset ratio can be 80%. Taking a test area comprising 20 sub-regions as an example, the 20 sub-regions are sorted according to their respective request volumes from largest to smallest, and the top 4 (i.e., the top 20%) sub-regions in terms of request volume can be the target sub-regions to be optimized.
[0108] It should be noted that this application does not specifically limit the method for selecting at least one target sub-region to be optimized from multiple sub-regions. In one illustrated embodiment, this application may also first select a portion of the multiple sub-regions whose request volume ratio is greater than a preset threshold (e.g., 5%, 10%, or 20%), and then select a certain number (e.g., the top 5 or top 3) of the sub-regions with the highest request volume ratio as the target sub-regions to be optimized, etc., and this specification does not specifically limit this. In some possible embodiments, this application may also select the target sub-regions to be optimized based on the in-degree, out-degree, and other information corresponding to each sub-region, etc., and this specification does not specifically limit this.
[0109] In one illustrated embodiment, this application can traverse every vertex and edge in the network topology graph based on a depth-first search algorithm or a breadth-first search algorithm, thereby selecting at least one target sub-region to be optimized.
[0110] Furthermore, in one of the illustrated embodiments, this application can also output and display the above-mentioned network topology diagram, as well as at least one target sub-region to be optimized and its related information obtained from the analysis (i.e., front-end visualization), thereby providing data support for staff to reasonably construct new edge nodes and optimize the layout of existing edge nodes.
[0111] For example, the relevant information of the target sub-region may include the request volume corresponding to the target sub-region, the percentage of the request volume, the 1-hop or multi-hop sub-regions adjacent to the target sub-region, and the IP of the main router in the target sub-region (e.g., a router participating in many routing paths), etc. This specification does not make specific limitations on this.
[0112] For example, taking the above 6 routing paths as an example, 3 routing paths pass through the router in city A, 3 routing paths pass through the router in city B, 4 routing paths pass through the router in city C, 3 routing paths pass through the router in city D, 2 routing paths pass through the router in city E, and 2 routing paths pass through the router in city F.
[0113] Correspondingly, city A has 3 requests, accounting for 50% of the total requests in the entire testing area; city B has 3 requests, accounting for 50% of the total requests in the entire testing area; city C has 4 requests, accounting for 67% of the total requests in the entire testing area; city D can have 3 requests, accounting for 50% of the total requests in the entire testing area; city E can have 2 requests, accounting for 33% of the total requests in the entire testing area; and city F can have 2 requests, accounting for 33% of the total requests in the entire testing area.
[0114] As mentioned above, city C experiences the highest request volume, and the vast majority of routing paths pass through city C. Therefore, city C can be considered the routing and switching center of the entire test area (e.g., country Z), which is the target sub-area to be optimized in this application. Subsequently, this application can optimize the layout of edge nodes in city C, for example, by creating a certain number of new edge nodes in city C. In this way, through network topology analysis based on a large amount of comprehensive network probing data, this application accurately locates the target sub-area to be optimized, enabling targeted optimization of the current edge node layout. This allows users to be closer to the edge nodes, thereby improving the response speed of user access and ensuring the user's online experience.
[0115] Furthermore, after the edge nodes are built, this application can also monitor the current network coverage quality in real time through network detection, analyze possible latency anomalies and network error rate anomalies, and promptly report and maintain faults, thereby ensuring the user's online experience in a real-time and effective manner.
[0116] Please see Figure 3 , Figure 3 This is a flowchart illustrating a latency anomaly analysis method provided in an exemplary embodiment. This method can be applied to the above-mentioned... Figure 1 The system shown can be a single server, a server cluster consisting of multiple servers, or a cloud computing service center, etc., and this specification does not specify a particular one. Figure 3 As shown, the method may specifically include the following steps S21-S26.
[0117] Step S21: Obtain network probe data.
[0118] In one illustrated embodiment, this application can acquire network probe data detected by various network probes. This network probe data primarily represents the round-trip latency corresponding to each of multiple edge nodes (e.g., CDN nodes). In one illustrated embodiment, the network probe data may further include network layer packet loss rate, TCP connection establishment time, HTTP GET first byte time, etc., corresponding to each of the multiple edge nodes. In one illustrated embodiment, step S21 can be specifically referred to the above. Figure 2 The description of step S101 in the corresponding embodiment will not be repeated here.
[0119] Step S22: Obtain the attribution information of at least one network probe. The attribution information of each network probe includes the IP address, sub-region, and ISP to which each network probe belongs.
[0120] Furthermore, this application can obtain the attribution information of each of the aforementioned network probes. The attribution information of the network probes may include the IP address to which the network probe belongs, the sub-region (e.g., country, province, city), and the ISP. In one illustrated embodiment, the attribution information of the probe may specifically include the C segment of the IP address to which the network probe belongs. For example, the IP address is 83.11.131.17, where 83 is a number in the A segment, 11 is a number in the B segment, 131 is a number in the C segment, and 17 is a number in the D segment.
[0121] In one illustrated implementation, if the edge node is a CDN node, this application can obtain the attribution information of each network probe by calling the CDN IP library.
[0122] Step S23: Identify the target ISP with latency anomalies among the multiple ISPs included in the area to be tested.
[0123] In one illustrated embodiment, this application can aggregate information such as the IP address (specifically, the C segment of the IP address), city, province, and ISP of the network probe step by step to form time-series streaming data. It should be noted that when the same network probe probes different edge nodes, the round-trip latency detected is mostly different. Correspondingly, when different network probes probe the same edge node, the round-trip latency detected will also be different. Based on this, this application can obtain the round-trip latency detected by multiple network probes for any target edge node among multiple edge nodes in the area to be tested, thereby progressively obtaining the latency corresponding to each sub-region (e.g., country, province, city), the latency corresponding to each ISP, etc., for that any target edge node. In one illustrated embodiment, the latency corresponding to each sub-region can be the average latency of multiple network probes within that sub-region, and the latency corresponding to each ISP can be the average latency of multiple sub-regions covered by that ISP, etc., which are not specifically limited in this specification.
[0124] Furthermore, in one illustrated embodiment, this application can perform anomaly detection layer by layer from ISP, province, city to the IP address of the network probe, based on the aforementioned network detection data and the attribution information of each network probe. First, this application can identify the target ISP with latency anomalies among the multiple ISPs included in the area to be tested. For example, the latency corresponding to the target ISP with latency anomalies can be greater than a preset threshold, such as a latency greater than 100ms, or a latency greater than 90ms, etc., and this specification does not specifically limit this.
[0125] Step S24: Identify at least one sub-region in the region to be tested that is associated with the latency anomaly of the target ISP.
[0126] Furthermore, in one of the illustrated embodiments, after detecting a target ISP with latency anomalies among multiple ISPs, this application can also determine at least one sub-region in the area to be tested that is related to the latency anomalies of the target ISP, that is, locate at least one sub-region that has a greater impact on the latency anomalies of the target ISP, such as a province, city or district, etc.
[0127] In one illustrated embodiment, this application can determine at least one sub-region in the region to be tested that has a significant impact on the latency anomaly of the target ISP, based on the number of network probes distributed in each sub-region and the difference between the latency corresponding to each sub-region and the latency corresponding to the target ISP.
[0128] In one of the illustrated embodiments, the impact weight of each sub-region on the target ISP latency anomaly can be calculated using the following formula (1).
[0129] Weight m =(Latency m -Latency isp )×Query m (1)
[0130] Among them, Weight m The weighting of the impact of a sub-region m (e.g., province m) on the latency anomalies of the target ISP within multiple sub-regions; Latency m Latency is the time delay corresponding to sub-region m. isp For the latency corresponding to the target ISP; Query m The number of network probes distributed in subregion m is, to some extent, equivalent to the number of probes in subregion m, or the number of internet users.
[0131] As shown in formula (1) above, the greater the difference between the latency of a sub-region m and the latency of the target ISP, the greater the impact of sub-region m on the latency anomaly of the target ISP. In short, a major reason for the latency anomaly of the entire target ISP is the sub-region m covered by the target ISP. In addition, the greater the number of internet users in sub-region m, the greater the impact on the latency anomaly of the target ISP.
[0132] Furthermore, in one of the illustrated embodiments, if the area to be tested is a country, after locating at least one province that has a significant impact on the latency of the target ISP, at least one city that has a significant impact on the latency of the province can be located within that province. Furthermore, at least one district that has a significant impact on the latency of the city can be located within that city, and so on. This specification does not make any specific limitations on this.
[0133] Step S25: In at least one sub-region, determine the IP address of at least one network probe that is related to the latency of the sub-region.
[0134] Furthermore, in one illustrated embodiment, after detecting at least one sub-region that significantly impacts the latency anomaly of the target ISP, this application can further determine the IP address of at least one network probe related to the latency of that sub-region, i.e., locate at least one network probe that significantly impacts the latency of that sub-region and determine its IP address. The specific calculation method can be found in the above formula (1), and will not be elaborated further here.
[0135] Step S26: Output the latency statistics for the target ISP, at least one sub-region, and at least one network probe.
[0136] In one illustrated embodiment, after detecting the current latency anomaly layer by layer from top to bottom, this application can output and display the latency statistics of the target ISP, at least one sub-region, and at least one network probe with the latency anomaly in the form of a chart through a preset interface. These statistics may include, for example, the average latency, median latency, latency variance, and influence weights, etc. In one illustrated embodiment, this application can also output and display the latency statistics of all ISPs and all sub-regions in the form of a chart through a preset interface, etc., but this specification does not specifically limit this.
[0137] For example, please refer to Figure 4 , Figure 4 This is an exemplary embodiment providing a statistical graph of urban latency. The latency from each sub-region (including city A, city B, city C, city D, city E, and city F) covered by the target ISP to the target edge node among multiple edge nodes can be shown as follows: Figure 4 As shown.
[0138] like Figure 4 As shown, the overall latency of city A is greater than that of any other city. Therefore, city A has the greatest impact on the latency of its ISP. Subsequently, the provider can schedule traffic to city A to mitigate its latency. For example, the overall latency of each city can be calculated based on the average latency, median latency, and latency variance of each city. This specification does not impose specific limitations on this calculation.
[0139] Accordingly, please refer to Figure 5 , Figure 5 This is a flowchart illustrating a network error rate anomaly analysis method provided in an exemplary embodiment. This method can be applied to the above-mentioned... Figure 1The system shown may be a single server, a server cluster consisting of multiple servers, or a cloud computing service center, etc. This manual does not make any specific limitations on it.
[0140] It should be noted that network error rate can be regarded as a relatively serious latency anomaly (for example, latency of 3 seconds, 5 seconds or even more than 10 seconds). When the network probe performs network probing on any edge node, if its round-trip latency exceeds the preset timeout, the network probe will generally count the error once and record the current network error rate.
[0141] like Figure 5 As shown, the method may specifically include the following steps S31-S36.
[0142] Step S31: Obtain network probe data.
[0143] In one illustrated embodiment, this application can acquire network probe data detected by various network probes. This network probe data can primarily include round-trip latency, network layer packet loss rate, TCP connection establishment time, HTTP GET first byte time, etc., corresponding to multiple edge nodes (e.g., CDN nodes). In one illustrated embodiment, step S31 can be specifically referred to the above. Figure 2 The description of step S101 in the corresponding embodiment will not be repeated here.
[0144] Step S32: Obtain the attribution information of at least one network probe. The attribution information of each network probe includes the IP address, sub-region, and ISP to which each network probe belongs.
[0145] Furthermore, this application can obtain the attribution information of each of the above-mentioned network probes. The attribution information of the network probes may include the IP address, sub-region (e.g., country, province, city) and ISP to which the network probe belongs.
[0146] In one illustrated implementation, if the edge node is a CDN node, this application can obtain the attribution information of each network probe by calling the CDN IP library.
[0147] Step S33: Identify the target ISP with an abnormal network error rate among the multiple ISPs included in the area to be tested.
[0148] In one illustrated embodiment, this application can aggregate information such as the IP address (specifically, the C segment of the IP address), city, province, and ISP of the network probes step by step to form time-series streaming data. As described above, this application can obtain the network error rate detected by each of the multiple network probes for any target edge node among multiple edge nodes in the area to be tested, thereby obtaining the network error rate corresponding to each sub-region (e.g., country, province, city), the network error rate corresponding to each ISP, etc., for any target edge node step by step. In one illustrated embodiment, the network error rate corresponding to each sub-region can be the average of the network error rates corresponding to multiple network probes in that sub-region, and the latency corresponding to each ISP can be the average of the network error rates of multiple sub-regions covered by that ISP, etc., which are not specifically limited in this specification.
[0149] Furthermore, in one illustrated embodiment, this application can perform anomaly detection layer by layer from ISP, province, city to the IP address of the network probe, based on the aforementioned network detection data and the attribution information of each network probe. First, this application can identify the target ISP with an abnormal network error rate among the multiple ISPs included in the area to be tested. For example, the network error rate corresponding to the target ISP with the abnormal network error rate can be greater than a preset threshold, such as an error rate greater than 10%, or an error rate greater than 20%, etc., and this specification does not specifically limit this.
[0150] Step S34: Identify at least one sub-region in the region to be tested that is associated with an abnormal network error rate of the target ISP.
[0151] Furthermore, in one of the illustrated embodiments, after detecting a target ISP with an abnormal network error rate among multiple ISPs, this application can also determine at least one sub-region in the area to be tested that is related to the abnormal network error rate of the target ISP, that is, locate at least one sub-region that has a greater impact on the abnormal network error rate of the target ISP, such as a province, city or district, etc.
[0152] In one illustrated embodiment, this application can determine at least one sub-region in the region to be tested that has a significant impact on the abnormal network error rate of the target ISP, based on the number of network probes distributed in each sub-region and the difference between the network error rate corresponding to each sub-region and the network error rate corresponding to the target ISP.
[0153] In one of the illustrated embodiments, the weight of each sub-region's impact on the target ISP network error rate anomaly can be calculated using the following formula (2).
[0154] Weight n=(ErrorRatio n -ErrorRatio isp )×Query n (2)
[0155] Among them, Weight n ErrorRatio is the weight of the impact of a sub-region n (e.g., n provinces) on the error rate anomalies of the target ISP network. n ErrorRatio represents the network error rate corresponding to sub-region n. isp The network error rate corresponding to the target ISP; Query m The number of network probes distributed in subregion n is, to some extent, equivalent to the number of probes in subregion n, or the number of internet users.
[0156] As shown in formula (2) above, the greater the difference between the network error rate of a sub-region n and the network error rate of the target ISP, the greater the impact of sub-region n on the abnormal network error rate of the target ISP. In short, a major reason for the abnormal network error rate of the entire target ISP is the sub-region n covered by the target ISP. In addition, the larger the number of internet users in sub-region n, the greater the impact on the abnormal network error rate of the target ISP.
[0157] Furthermore, in one of the illustrated embodiments, if the area to be tested is a country, after locating at least one province that has a significant impact on the network error rate of the target ISP, at least one city that has a significant impact on the network error rate of that province can also be located within that province. Furthermore, at least one district that has a significant impact on the network error rate of that city can also be located within that city, and so on. This specification does not make any specific limitations on this.
[0158] Step S35: In at least one sub-region, determine the IP address of at least one network probe that is related to the network error rate corresponding to the sub-region.
[0159] Furthermore, in one illustrated embodiment, after detecting at least one sub-region that significantly impacts the network error rate of the target ISP, this application can further determine the IP address of at least one network probe related to the network error rate of that sub-region, i.e., locate at least one network probe that significantly impacts the network error rate of that sub-region and determine its IP address. The specific calculation method can be found in the above formula (2), and will not be elaborated further here.
[0160] Step S36: Output the network error rate statistics for the target ISP, at least one sub-region, and at least one network probe.
[0161] In one illustrated embodiment, after detecting the current network error rate anomalies layer by layer from top to bottom, this application can output and display, through a preset interface, the network error rate statistics corresponding to the target ISP, at least one sub-region, and at least one network probe with the network error rate anomalies in the form of a chart. These statistics may include, for example, the average network error rate, the median network error rate, the network error rate variance, and the influence weights, etc. In one illustrated embodiment, this application can also output and display, through a preset interface, the network error rate statistics of all ISPs and all sub-regions in the form of a chart, etc., and this specification does not specifically limit this.
[0162] In summary, this application obtains a large amount of network probe data by conducting network probing on multiple edge nodes within the test area. Based on this extensive network probe data, a thorough and accurate analysis of the network topology within the test area can be performed. Then, based on the analyzed network topology, this application can further identify sub-regions within the entire test area that require optimization and optimize the layout of edge nodes within those sub-regions. Thus, by collecting a large amount of network probe data, this application provides effective quantitative data support for network topology analysis and edge node layout optimization, thereby achieving targeted edge node layout optimization. This can efficiently and accurately improve the network coverage quality of edge nodes, providing users with better proximity response and ensuring a better internet experience.
[0163] Furthermore, after the edge nodes are built, the current network coverage quality can be monitored in real time through network probes, and any latency anomalies and network error rate anomalies can be analyzed. Root cause localization can be carried out step by step from top to bottom at the levels of ISP, province, city, and network probes, thereby obtaining the fundamental and fine-grained causes of network anomalies. This allows suppliers to report faults in a timely manner and accurately schedule traffic switching, effectively ensuring the user experience.
[0164] Corresponding to the above method and process implementation, embodiments of this specification also provide an edge node optimization device. Please refer to... Figure 6 , Figure 6 This is a schematic diagram of an edge node optimization device provided in an exemplary embodiment. This device 30 can be applied to a computing device, such as a server for a ride-hailing app. Figure 6 As shown, the device 30 includes:
[0165] The network detection unit 301 is used to acquire network detection data of multiple edge nodes distributed within the area to be tested; the area to be tested includes multiple sub-regions.
[0166] The topology analysis unit 302 is used to perform network topology analysis on the multiple sub-regions included in the area to be tested based on the network detection data, so as to obtain the network topology structure of the area to be tested.
[0167] The optimization unit 303 is used to determine, based on the network topology, at least one target sub-region to be optimized among the plurality of sub-regions included in the test area, and to optimize the layout of the edge nodes in the at least one target sub-region.
[0168] In one illustrated embodiment, the edge node includes a Content Delivery Network (CDN) node.
[0169] In one illustrated embodiment, the network detection unit 301 is specifically used for:
[0170] Using at least one network probe distributed in multiple sub-regions within the area to be tested, and based on a target detection mode, probes are initiated against multiple CDN nodes distributed in the multiple sub-regions within the area to be tested, in order to obtain network detection data of the multiple CDN nodes.
[0171] In one illustrated embodiment, the target detection mode includes one or more of ICMP detection, TCP detection, HTTP detection, HTTPS detection, and traceroute detection.
[0172] In one illustrated embodiment, the network probe data includes multiple routing paths between the at least one network probe and the plurality of CDN nodes;
[0173] The topology analysis unit 302 is specifically used for:
[0174] Based on the multiple routing paths between the at least one network probe and the multiple CDN nodes, the attribution information of multiple routers included in each of the multiple routing paths is obtained; wherein, the attribution information of each router includes the sub-region to which each router belongs;
[0175] Based on the attribution information of the multiple routers included in each of the multiple routing paths, a network topology diagram corresponding to the area under test is constructed; wherein, the network topology diagram includes multiple vertices, each vertex representing a sub-region of the area under test, and the edges between vertices representing routing connections between the sub-regions.
[0176] In one illustrated embodiment, the optimization unit 303 is specifically used for:
[0177] Calculate the request volume corresponding to each sub-region in the network topology diagram; wherein, the request volume corresponding to each sub-region is equal to the number of routing paths in the plurality of routing paths that include routers belonging to the sub-region;
[0178] Based on the request volume corresponding to each sub-region and a preset ratio, at least one target sub-region to be optimized is determined among the plurality of sub-regions; wherein the request volume corresponding to each of the at least one target sub-region is greater than the request volume corresponding to the sub-regions of the preset ratio among the plurality of sub-regions.
[0179] In one illustrated embodiment, the network probing data further includes at least one of the following for each of the plurality of CDN nodes: Round-Trip Time (RTT), Network Layer Packet Loss Rate, TCP Connection Establishment Time, and HTTP Get First Byte Time.
[0180] In one illustrated embodiment, the device 30 further includes a delay anomaly analysis unit 304, for:
[0181] Obtain the attribution information of the at least one network probe, wherein the attribution information of each network probe includes the IP address, sub-region, and network service provider (ISP) to which each network probe belongs;
[0182] Based on the network detection data and the attribution information of the at least one network probe, the target ISP with abnormal latency is identified among the multiple ISPs included in the area to be tested.
[0183] Based on the number of network probes distributed in each sub-region and the difference between the latency corresponding to each sub-region and the latency corresponding to the target ISP, at least one sub-region related to the latency anomaly of the target ISP is determined in the region to be tested, and the IP address of at least one network probe related to the latency of the sub-region is determined in each of the at least one sub-region.
[0184] In one illustrated embodiment, the device 30 further includes an error rate anomaly analysis unit 305, for:
[0185] Obtain the attribution information of the at least one network probe, wherein the attribution information of each network probe includes the IP address, sub-region, and network service provider (ISP) to which each network probe belongs;
[0186] Based on the network detection data and the attribution information of the at least one network probe, the target ISP with an abnormal network error rate is identified among the multiple ISPs included in the area to be tested.
[0187] Based on the number of network probes distributed in each sub-region and the difference between the network error rate corresponding to each sub-region and the network error rate corresponding to the target ISP, at least one sub-region related to the abnormal network error rate of the target ISP is determined in the region to be tested, and the IP address of at least one network probe related to the network error rate of the sub-region is determined in each of the at least one sub-region.
[0188] For details on the implementation process of the functions and roles of each unit in the aforementioned device 30, please refer to the above. Figures 1-5 The description of the corresponding embodiments will not be repeated here. It should be understood that the above-described device 30 can be implemented by software, hardware, or a combination of software and hardware. Taking software implementation as an example, as a logical device, it is formed by the CPU (Central Processing Unit) of the device loading the corresponding computer program instructions into memory and running them. From a hardware perspective, in addition to the CPU and memory, the device typically includes other hardware such as chips for wireless signal transmission and reception, and / or other hardware such as boards for implementing network communication functions.
[0189] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical modules; that is, they may be located in one place or distributed across multiple network modules. Some or all of the units or modules can be selected to achieve the purpose of the solution described in this specification, depending on actual needs. Those skilled in the art can understand and implement this without any inventive effort.
[0190] The devices, units, and modules described in the above embodiments can be implemented by computer chips or physical entities, or by products with certain functions. A typical implementation device is a computer, which can take the form of a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email sending and receiving device, game console, tablet computer, wearable device, or any combination of these devices.
[0191] Corresponding to the above method embodiments, embodiments of this specification also provide a computing device. Please refer to... Figure 7 , Figure 7 This is a schematic diagram of the structure of a computing device provided in an exemplary embodiment. For example, the computing device 1000 can be... Figure 1 The system described can specifically be a server cluster consisting of multiple servers. For example... Figure 7As shown, the computing device 1000 may include a processor 1001 and a memory 1002, and may further include an input device 1004 (e.g., a keyboard) and an output device 1005 (e.g., a display). The processor 1001, memory 1002, input device 1004, and output device 1005 may be connected via a bus or other means. Figure 7 As shown, the memory 1002 includes a computer-readable storage medium 1003 storing a computer program executable by the processor 1001. The processor 1001 may be a general-purpose central processing unit, a microprocessor, or an integrated circuit for controlling the execution of the above method embodiments. When running the stored computer program, the processor 1001 can execute various steps of the edge node optimization method in the embodiments of this specification, including: performing network probing on multiple edge nodes distributed in various sub-regions within a test area, and acquiring network probing data of the multiple edge nodes; based on the network probing data, performing network topology analysis on each sub-region within the test area to obtain the network topology structure of the test area; based on the network topology structure, determining at least one target sub-region to be optimized among the multiple sub-regions within the test area, and optimizing at least one edge node distributed in the at least one target sub-region, etc.
[0192] For a detailed description of each step in the optimization method for the aforementioned edge nodes, please refer to the previous content; it will not be repeated here.
[0193] Corresponding to the above-described method embodiments, embodiments of this specification also provide a computer-readable storage medium storing computer programs that, when run by a processor, execute the various steps of the edge node optimization method described in this specification. Please refer to the above for details. Figures 1-6 The description of the corresponding embodiments will not be repeated here.
[0194] The above description is merely a preferred embodiment of this specification and is not intended to limit this specification. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification should be included within the scope of protection of this specification.
[0195] In a typical configuration, a terminal device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0196] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0197] Computer-readable media, including both permanent and non-permanent, removable and non-removable media, can store information using any method or technology. Information can be computer-readable instructions, data structures, program modules, or other data.
[0198] Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transient media, such as modulated data signals and carrier waves.
[0199] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0200] Those skilled in the art will understand that the embodiments of this specification can be provided as methods, systems, or computer program products. Therefore, the embodiments of this specification can take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, the embodiments of this specification can take the form of computer program products implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
Claims
1. An optimization method for edge nodes, the method comprising: Acquire network probe data of multiple edge nodes distributed within the area to be tested; The region to be tested comprises multiple sub-regions; Based on the network detection data, network topology analysis is performed on the multiple sub-regions contained in the area to be tested to obtain the network topology structure of the area to be tested. Based on the network topology, at least one target sub-region to be optimized is determined among the multiple sub-regions included in the region to be tested, and the layout of the edge nodes in the at least one target sub-region is optimized. The step of determining, based on the network topology, at least one target sub-region to be optimized from the plurality of sub-regions included in the region to be tested includes: Calculate the request volume corresponding to each sub-region in the network topology diagram; wherein, the request volume corresponding to each sub-region is equal to the number of routing paths that include routers belonging to the sub-region in the multiple routing paths; wherein, the routing path is the path between the network probe and the edge node; Based on the request volume corresponding to each sub-region and a preset ratio, at least one target sub-region to be optimized is determined among the plurality of sub-regions; wherein the request volume corresponding to each of the at least one target sub-region is greater than the request volume corresponding to the sub-regions of the preset ratio among the plurality of sub-regions.
2. The method according to claim 1, wherein the edge node includes a Content Delivery Network (CDN) node.
3. The method according to claim 2, wherein acquiring network probe data of multiple edge nodes distributed within the area to be tested includes: Using at least one network probe distributed within the area to be tested, and based on a target detection mode, probes are initiated against multiple CDN nodes distributed within the area to be tested to obtain network detection data of the multiple CDN nodes.
4. The method according to claim 3, wherein the target detection mode includes one or more of ICMP detection, TCP detection, HTTP detection, HTTPS detection, and traceroute detection.
5. The method according to claim 4, wherein the network probe data includes multiple routing paths between the at least one network probe and the plurality of CDN nodes; Based on the network detection data, network topology analysis is performed on each of the multiple sub-regions included in the area to be tested to obtain the network topology structure of the area to be tested, including: Based on the multiple routing paths between the at least one network probe and the multiple CDN nodes, the attribution information of multiple routers included in each of the multiple routing paths is obtained; wherein, the attribution information of each router includes the sub-region to which each router belongs; Based on the attribution information of the multiple routers included in each of the multiple routing paths, a network topology diagram corresponding to the area under test is constructed; wherein, the network topology diagram includes multiple vertices, each vertex representing a sub-region of the area under test, and the edges between vertices representing routing connections between the sub-regions.
6. The method according to claim 5, wherein the network detection data further includes at least one of the round-trip time (RTT), network layer packet loss rate, TCP connection establishment time, and HTTP GET first byte time for each of the plurality of CDN nodes.
7. The method according to claim 6, further comprising: Obtain the attribution information of the at least one network probe, wherein the attribution information of each network probe includes the IP address, sub-region, and network service provider (ISP) to which each network probe belongs; Based on the network detection data and the attribution information of the at least one network probe, the target ISP with abnormal latency is identified among the multiple ISPs included in the area to be tested. Based on the number of network probes distributed in each sub-region and the difference between the latency corresponding to each sub-region and the latency corresponding to the target ISP, at least one sub-region related to the latency anomaly of the target ISP is determined in the region to be tested, and the IP address of at least one network probe related to the latency of the sub-region is determined in each of the at least one sub-region.
8. The method according to claim 6, further comprising: Obtain the attribution information of the at least one network probe, wherein the attribution information of each network probe includes the IP address, sub-region, and network service provider (ISP) to which each network probe belongs; Based on the network detection data and the attribution information of the at least one network probe, the target ISP with an abnormal network error rate is identified among the multiple ISPs included in the area to be tested. Based on the number of network probes distributed in each sub-region and the difference between the network error rate corresponding to each sub-region and the network error rate corresponding to the target ISP, at least one sub-region related to the abnormal network error rate of the target ISP is determined in the region to be tested, and the IP address of at least one network probe related to the network error rate of the sub-region is determined in each of the at least one sub-region.
9. An optimization apparatus for edge nodes, the apparatus comprising: The network detection unit is used to acquire network detection data of multiple edge nodes distributed within the area to be tested; The region to be tested comprises multiple sub-regions; The topology analysis unit is used to perform network topology analysis on the multiple sub-regions contained in the area to be tested based on the network detection data, so as to obtain the network topology structure of the area to be tested. An optimization unit is configured to, based on the network topology, determine at least one target sub-region to be optimized among the plurality of sub-regions contained in the region to be tested, and optimize the layout of edge nodes in the at least one target sub-region. The step of determining, based on the network topology, at least one target sub-region to be optimized from the plurality of sub-regions included in the region to be tested includes: Calculate the request volume corresponding to each sub-region in the network topology diagram; wherein, the request volume corresponding to each sub-region is equal to the number of routing paths that include routers belonging to the sub-region in the multiple routing paths; wherein, the routing path is the path between the network probe and the edge node; Based on the request volume corresponding to each sub-region and a preset ratio, at least one target sub-region to be optimized is determined among the plurality of sub-regions; wherein the request volume corresponding to each of the at least one target sub-region is greater than the request volume corresponding to the sub-regions of the preset ratio among the plurality of sub-regions.
10. A computing device, comprising: Memory and processor; The memory stores computer programs that can be executed by the processor; When the processor runs the computer program, it performs the method as described in any one of claims 1 to 8.
11. A computer-readable storage medium having a computer program stored thereon, the computer program being executed by a processor to implement the method as claimed in any one of claims 1 to 8.
Citation Information
Patent Citations
Method for overcastting network router by optimized tree topology
CN101013993A
Grid structure optimization method and apparatus
CN104349332A