Network path detection method, device and medium
By splitting the network path probing task into common path and individual path tasks, the network load problem caused by multi-task probing is solved, and the network load is reduced.
Patent Information
- Application Number
- CN202411012559.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-26
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2044-07-26
AI Technical Summary
Traditional network path probing solutions cause a sharp increase in network load when multiple tasks are executed simultaneously, affecting actual business traffic.
The network path probing task is split into a common path probing task and an individual path probing task. The common path is probed only once, and the individual path probing task reduces the probe of the common path part.
This reduces the number of network probe packets and lowers the network load caused by multiple network path probing tasks.
Smart Images

Figure CN119071210B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates at least to the field of network technology, and in particular to a network path detection method, a network path detection device, and a computer-readable storage medium. Background Technology
[0002] Traditional network path probing solutions, in order to improve efficiency, typically separate the sending and receiving logic, rather than executing it sequentially. For example, it might start two tasks: one to send packets, based on a set maximum TTL value, with each packet having an incrementing TTL; and the other to receive packets, filtering and parsing them to obtain path information. Upon receiving a response packet from the target destination, it announces the cessation of the sending task. However, due to a packet receiving delay, such as 100ms, the sending process often completes within this timeframe, meaning only 32 packets are sent.
[0003] Traditional methods often result in a sharp increase in network load when multiple network path probing tasks are initiated, impacting actual business traffic and user experience. Therefore, there is an urgent need to propose an optimized network path probing solution to reduce the network load caused by multiple probing tasks. Summary of the Invention
[0004] The technical problem to be solved by this disclosure is to provide a network path probing method, a network path probing device, and a computer-readable storage medium to address the above-mentioned shortcomings and reduce the network load caused by multiple network path probing tasks.
[0005] In a first aspect, this disclosure provides a network path detection method, the method comprising:
[0006] Obtain the split results of N first network path probing tasks. The split results include:
[0007] A second network path probing task, which does not reach the target address but only probes common paths, and...
[0008] There are N third-party network path probing tasks. Each task reaches its own target address but does not probe common paths.
[0009] The common path is the shared part of the destination paths to N probe destination addresses;
[0010] Execute or instruct to perform network path probing tasks based on the splitting results.
[0011] Furthermore, among which:
[0012] The method is applied to: network path detection terminals or network path detection sensing platforms;
[0013] Obtaining the splitting results of N first network path probing tasks includes: the network path probing terminal receiving the splitting results of N first network path probing tasks from the network path probing perception platform, or the network path probing perception platform generating the splitting results of N first network path probing tasks.
[0014] Executing or instructing network path probing tasks based on the splitting results includes: the network path probing terminal executing the network path probing task based on the splitting results, or the network path probing sensing platform instructing the network path probing terminal to execute the network path probing task based on the splitting results.
[0015] Furthermore, the results of splitting the N first network path probing tasks are obtained, specifically including:
[0016] Obtain the first detection interval, the first TTL range, and the detection target address of each of the N first network path detection tasks;
[0017] Obtain the destination paths to N probe destination addresses and the second TTL range of the destination paths;
[0018] Obtain the common portion of all destination paths to get the common path, the common destination address of the common path, and the third TTL range;
[0019] The N first network path probing tasks are broken down into:
[0020] A second network path probing mission with a first probe interval, a third TTL range, and a common destination address.
[0021] N third network path probing tasks, each with a first probe interval, a fourth TTL range, and its own target address;
[0022] Where TTL is the number of hops forwarded by the network path probe packet, and the fourth TTL range is equal to the second TTL range minus the third TTL range.
[0023] Furthermore, among which:
[0024] Obtain the destination paths to N probe destination addresses and the second TTL range of the destination paths, specifically including:
[0025] Obtain all node IP addresses of the path to each entry leading to each probe destination IP address, and obtain the maximum TTL range of all destination paths leading to each probe destination IP address as a second TTL range;
[0026] Obtain the common portion of all destination paths to retrieve the common paths, their common destination addresses, and third TTL ranges, specifically including:
[0027] Obtain the common IP address of all destination paths reaching N probe destination addresses as the common path, obtain the common IP address corresponding to the maximum TTL value in the common path as the common destination address, and obtain the third TTL range corresponding to the maximum TTL value in the common path.
[0028] IP stands for Internet Protocol.
[0029] Furthermore, the splitting results also include:
[0030] N fourth network path probing tasks, each with a second probe interval, a first TTL range, and its own target address.
[0031] The second test interval is greater than the first test interval.
[0032] Furthermore, the destination paths to the N probe destination addresses and the second TTL range of the destination paths are obtained, specifically including:
[0033] In response to receiving N first network path probing tasks created by the user, execute the N first network path probing tasks to obtain the first full-range network path probing results, and obtain the destination path to the N probe destination addresses and the second TTL range of the destination path based on the first full-range network path probing results;
[0034] In response to the change in the common path obtained from the execution of N fourth network path probing tasks, N first network path probing tasks are re-executed to obtain the first full-range network path probing results, and the destination path to N probe destination addresses and the second TTL range of the destination path are obtained based on the first full-range network path probing results.
[0035] In response to the change in the destination path obtained from the execution of N fourth network path probing tasks, the second full-range network path probing results of the N fourth network path probing tasks are obtained, and the destination path to the N probed destination addresses and the second TTL range of the destination path are obtained based on the second full-range network path probing results.
[0036] Furthermore, the N first network path probing tasks are broken down into the following specific components:
[0037] Get the number of packets sent during the first network path probing task (N tasks in total).
[0038] Obtain the number of packets sent during the execution of one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks;
[0039] Based on the first and second packet counts, obtain the performance improvement after splitting the N first network path probing tasks;
[0040] In response to the performance improvement reaching the preset conditions, the N first network path detection tasks are split up.
[0041] Furthermore, among which:
[0042] Obtain the number of packets sent during the execution of N first network path probing tasks, specifically including:
[0043] Calculate the number of third and fourth packets sent during the first and second probe intervals for each of the N first network path probing tasks according to the following formulas:
[0044] The third packet count = N * the first TTL range hop count * 1
[0045] Fourth packet count = N * First TTL range jump count * Second test interval / First test interval;
[0046] Obtain the number of packets sent during the execution of one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks, specifically including:
[0047] Calculate the fifth and sixth packet counts for executing one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks respectively in the first and second testing intervals according to the following formulas:
[0048] Fifth packet count = N * third TTL range hop count * 1 + N * fourth TTL range hop count * 1
[0049] The sixth packet count = N * the third TTL range jump count * the second test interval / the first test interval + N * the fourth TTL range jump count * the second test interval / the first test interval + N * the first TTL range jump count * 1;
[0050] Based on the first and second packet counts, obtain the performance improvement after splitting the N first network path probing tasks, specifically including:
[0051] Calculate the first performance improvement and the second performance improvement in the first and second testing intervals respectively using the following formulas:
[0052] First efficiency improvement = Third packet count / Fifth packet count
[0053] Second performance improvement = Fourth number of packets / Sixth number of packets.
[0054] Secondly, this disclosure provides a network path detection device, the device comprising:
[0055] The acquisition module is used to obtain the splitting results of N first network path probing tasks. The splitting results include:
[0056] A second network path probing task, which does not reach the target address but only probes common paths, and...
[0057] There are N third-party network path probing tasks. Each task reaches its own target address but does not probe common paths.
[0058] The common path is the shared part of the destination paths to N probe destination addresses;
[0059] The execution or instruction execution module, connected to the acquisition module, is used to execute or instruct the execution of network path probing tasks based on the splitting results.
[0060] Thirdly, this disclosure provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the network path detection method described above.
[0061] This disclosure provides a network path probing method, a network path probing device, and a computer-readable storage medium. By finding a common path among multiple original network path probing tasks, the original network path probing tasks are split into a common path probing task and individual path probing tasks. The common path part only needs to be probed once, and the individual path probing tasks reduce the probe of the common path part, thereby reducing the number of network probing packets and reducing the network load caused by multiple network path probing tasks. Attached Figure Description
[0062] Figure 1 This is a flowchart of a network path detection method according to an embodiment of the present disclosure;
[0063] Figure 2 This is a schematic diagram illustrating the execution of a first network path probing task according to an embodiment of this disclosure;
[0064] Figure 3 This is a schematic diagram of the architecture of a network path detection system according to an embodiment of the present disclosure;
[0065] Figure 4 This is an interactive flowchart of a network path detection method according to an embodiment of the present disclosure;
[0066] Figure 5 This is a schematic diagram of the structure of a network path detection device according to an embodiment of the present disclosure. Detailed Implementation
[0067] To enable those skilled in the art to better understand the technical solutions of this disclosure, the embodiments of this disclosure will be further described in detail below with reference to the accompanying drawings.
[0068] It is understood that the specific embodiments and accompanying drawings described herein are for illustrative purposes only and are not intended to limit the scope of this disclosure.
[0069] It is understood that, without conflict, the various embodiments and features in the embodiments of this disclosure can be combined with each other.
[0070] It is understood that, for ease of description, only the parts relevant to this disclosure are shown in the accompanying drawings, while parts unrelated to this disclosure are not shown in the drawings.
[0071] It is understood that each unit involved in the embodiments of this disclosure may correspond to only one entity structure, or may be composed of multiple entity structures, or multiple units may be integrated into one entity structure.
[0072] It is understood that, without conflict, the functions and steps marked in the flowcharts and block diagrams of this disclosure may occur in a different order than that marked in the accompanying drawings.
[0073] It is understood that the flowcharts and block diagrams of this disclosure illustrate the architecture, functions, and operations of possible implementations of systems, apparatuses, devices, and methods according to various embodiments of this disclosure. Each block in a flowchart or block diagram may represent a unit, segment, or code, containing executable instructions for implementing the specified function. Furthermore, each block or combination of blocks in the block diagrams and flowcharts may be implemented using a hardware-based system to implement the specified function, or using a combination of hardware and computer instructions.
[0074] It is understood that the units involved in the embodiments of this disclosure can be implemented by software or by hardware, for example, the units can be located in a processor.
[0075] Example 1:
[0076] like Figure 1 As shown, this disclosure provides a network path detection method, the method
[0077] include:
[0078] S1. Obtain the splitting results of N first network path probing tasks.
[0079] include:
[0080] A second network path probing task, which does not reach the target address but only probes common paths, and...
[0081] There are N third-party network path probing tasks. Each task reaches its own target address but does not probe common paths.
[0082] The common path is the shared part of the destination paths to N probe destination addresses;
[0083] S2. Execute or instruct to perform network path probing tasks based on the splitting results.
[0084] In this embodiment, by finding a common path for multiple original network path probing tasks, the original network path probing tasks are split into common path probing tasks and individual path probing tasks that reach their respective target addresses. The N target addresses originate from the N first network path probing tasks and are probed in the corresponding N third network path probing tasks. The common path part only needs to be probed once. The individual path probing tasks reduce the probe of the common path part, thereby reducing the number of network probing packets and reducing the network load caused by multiple network path probing tasks.
[0085] Specifically, the first network path probing task is the conventional network probing, generally including three types of data packets: ICMP (Internet Control Message Protocol), TCP (Transmission Control Protocol), and UDP (User Datagram Protocol). The probing principle is to send data packets with progressively increasing TTL (Time To Live) values to obtain information about each hop in the path. Taking ICMP network path probing as an example, its principle is as follows... Figure 2 As shown:
[0086] First, Host A sends an ICMP Echo Request packet to Host B. Host A will send a packet with TTL=1 on the first send. When the packet reaches R1, the TTL will become 0 (the TTL is decremented by 1 for each hop on the network). R1 will discard the packet with TTL=0 and return an ICMP Time Exceeded message to Host A.
[0087] Next, Host A sends a second ICMP Echo Request packet and increments the TTL by 1 (TTL=2). After this packet arrives at R2, the TTL=0, and R2 returns ICMP Time Exceeded to Host A.
[0088] This process continues until the TTL is increased to a suitable value that allows the data packet to successfully reach Host B. Host B will then return a Final Reply to Host A.
[0089] In conventional network path probing solutions, devices may not respond to ICMP Echo Requests or may not respond in a timely manner when firewall policies or device busy conditions are in place. Therefore, to improve efficiency, probing devices typically separate the sending and receiving logic.
[0090] More specifically, taking RedCap (Reduced Capability, 5G Lightweight) terminals as an example, RedCap technology achieves significant cost and power consumption reductions while maintaining high data transmission rates by reducing terminal complexity, bandwidth and antenna quantity, and lowering modulation order. This makes RedCap an ideal choice for 5G (5th Generation Mobile Communication Technology) private network applications such as industrial wireless sensors, wearable devices, and video surveillance.
[0091] Network path probing is crucial in RedCap technology. It identifies the routers and network devices that data packets pass through from their source to their destination. By measuring packet transmission time and packet loss rate, it assesses network link performance, identifies bottlenecks and high-latency links, and helps locate the problem when network issues occur, such as connection interruptions or packet loss, enabling rapid diagnosis and resolution.
[0092] While the first network path probing task can solve the functional problem of RedCap network path probing, when hundreds or thousands of RedCap terminals initiate multiple network path probing tasks, the network load will increase sharply, affecting actual service traffic and user experience. If there are 1000 RedCap terminals, each with 10 ICMP network probing tasks per minute, and a maximum TTL limit of 32, then under normal circumstances (assuming an average TTL of 10 for reachable destinations), it would require sending 100K ICMP Echo request packets and receiving 100K ICMP response packets. Assuming each packet is 64 bytes, this would result in 6.4GB of bytes sent and received, consuming limited 5G network resources. The RedCap terminal also needs to filter and process 200 sent and received packets, which is a significant computational burden for resource-constrained RedCap terminals.
[0093] One specific application of this embodiment is to provide an optimization method for network path probing based on RedCap. By analyzing the network probing data and combining path calculation and public network probing task generation logic, the TTL traversal range of the network probing task can be narrowed, effectively reducing the number of network probing packets, thereby alleviating network bandwidth load and RedCap terminal resource consumption.
[0094] In one embodiment, wherein:
[0095] The method is applied to: network path detection terminals or network path detection sensing platforms;
[0096] Obtaining the splitting results of N first network path probing tasks includes: the network path probing terminal receiving the splitting results of N first network path probing tasks from the network path probing perception platform, or the network path probing perception platform generating the splitting results of N first network path probing tasks.
[0097] Executing or instructing network path probing tasks based on the splitting results includes: the network path probing terminal executing the network path probing task based on the splitting results, or the network path probing sensing platform instructing the network path probing terminal to execute the network path probing task based on the splitting results.
[0098] In this embodiment, taking a RedCap terminal as an example, an optimization method for network path detection based on RedCap is described, with the following hardware and software architecture: Figure 3 As shown, the components are described below:
[0099] 1) Perception Platform: This is the network detection task management platform, which provides functions such as managing network detection tasks, analyzing network detection data, and calculating 5G network public network paths;
[0100] 2) Network probe program: Deployed on the Linux (an operating system) platform of the RedCap terminal, it connects to the perception platform to obtain network probe tasks and report path probe results, and performs network path probe tasks on the target;
[0101] 3) RedCap terminal: A simplified version of 5G terminal. RedCap technology reduces terminal complexity, bandwidth and antenna quantity, and modulation order, thereby significantly reducing cost and power consumption while maintaining a high data transmission rate. It is suitable for 5G private network application scenarios such as industrial wireless sensors, wearable devices, and video surveillance.
[0102] 4) 5G Core Network: After RedCap terminals access the 5G private network, traffic will pass through the base station and be offloaded to the UPF (User Plane Function) network element. Therefore, network detection tasks initiated by terminals in the same area will generally have some fixed network nodes.
[0103] It can be understood that: the RedCap terminal is only a specific type of terminal used in this embodiment, and the method provided by this disclosure can also be applied to other types of terminals; since a terminal can initiate multiple network path probing tasks, the method provided by this disclosure can include the situation where the functions of the platform are set on the terminal; the N first network path probing tasks can come from one terminal or multiple terminals, and when they come from multiple terminals, they can also be in multiple regions, as long as there is a common path among the N first network path probing tasks, the method provided by this disclosure can be applied.
[0104] In one implementation, obtaining the splitting results of N first network path probing tasks specifically includes:
[0105] Obtain the first detection interval, the first TTL range, and the detection target address of each of the N first network path detection tasks;
[0106] Obtain the destination paths to N probe destination addresses and the second TTL range of the destination paths;
[0107] Obtain the common portion of all destination paths to get the common path, the common destination address of the common path, and the third TTL range;
[0108] The N first network path probing tasks are broken down into:
[0109] A second network path probing mission with a first probe interval, a third TTL range, and a common destination address.
[0110] N third network path probing tasks, each with a first probe interval, a fourth TTL range, and its own target address;
[0111] Where TTL is the number of hops forwarded by the network path probe packet, and the fourth TTL range is equal to the second TTL range minus the third TTL range.
[0112] In this embodiment, combined with, as Figure 3 The architecture shown provides, for example Figure 4 The network probing optimization algorithm shown here, by combining historical network path probing data with path calculation and public network probing task generation logic, narrows the TTL traversal range of network probing tasks, effectively reducing the number of packets sent during network probing, thereby alleviating network bandwidth load and RedCap terminal resource consumption. This algorithm, in situations such as... Figure 3 The sensing platform, as shown, performs task splitting based on the terminal's request. The splitting results are then sent to the terminal's network probe program in the form of a new task list. The network probe program sends a probe stream based on the splitting results. The probe stream passes through the 5G core network to complete the detection of the target and returns the detection results. Finally, the detection results are reported to the sensing platform.
[0113] The theoretical basis of this network probing optimization method is as follows: Since RedCap terminals are generally used in 5G private networks, which have dedicated UPFs as traffic exits, there are inevitably some fixed network nodes. These nodes are generally 5G network equipment such as base stations, routers, and UPFs. These nodes do not need to be repeatedly probed in all tasks. Furthermore, since the TTL value of the detected destination is fixed most of the time, the third network path probing task, in addition to subtracting the probing of the common path portion, can further reduce the probing TTL range based on the actual hop count to the target IP. This allows for continuous optimization of the network probing task's TTL range, improving probing efficiency.
[0114] In one embodiment, wherein:
[0115] Obtain the destination paths to N probe destination addresses and the second TTL range of the destination paths, specifically including:
[0116] Obtain all node IP addresses of the path to each entry leading to each probe destination IP address, and obtain the maximum TTL range of all destination paths leading to each probe destination IP address as a second TTL range;
[0117] Obtain the common portion of all destination paths to retrieve the common paths, their common destination addresses, and third TTL ranges, specifically including:
[0118] Obtain the common IP address of all destination paths reaching N probe destination addresses as the common path, obtain the common IP address corresponding to the maximum TTL value in the common path as the common destination address, and obtain the third TTL range corresponding to the maximum TTL value in the common path.
[0119] IP stands for Internet Protocol.
[0120] In this embodiment, as Figure 4 As shown, the network path detection logic mainly includes:
[0121] Step 1: The user creates multiple network probing tasks on the perception platform, such as 10 ICMP-type network probing tasks, with a probing frequency of once per minute and a TTL (Internal Traffic Flow) range of 1-32. These parameters can be set manually. For the purpose of rapid fault reporting, a frequency of 1 minute is set. The purpose of TTL is to limit the time that IP packets exist in the computer network. The maximum value of TTL is 255, and a recommended value of TTL is 64. Based on experience, the TTL for probing in scenarios such as 5G private networks generally does not exceed 32.
[0122] Step 2: The network probe program obtains and executes the probe tasks created by the user. Specifically, it may obtain a list of network probe tasks from the perception platform, execute the network probe tasks concurrently, and return the network probe task results. Afterwards, the perception platform will analyze the data after the original task execution and optimize the subsequent probe path accordingly.
[0123] Step 3: The perception platform executes the network detection optimization algorithm. Based on the historical network path detection results (returned in Step 2), it calculates the destination IP of the public network path task and the maximum TTL value of the destination path of the network detection task. Assume the destination IP (Internet Protocol) of the detected public path is "5.5.5.5", the maximum public TTL value is 5, and the maximum destination TTL value of a certain task is 8. Assume that after detection, the public path "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4,5.5.5.5" has a hop count of 5. Simultaneously, the target 10.1.1.1 (which exists when the user creates a detection task, and the target IP is different for each task) may have multiple detection paths, but the longest path has 8 hops, meaning the terminal can detect and reach the target 10.1.1.1 within 8 hops.
[0124] Step 4: The perception platform generates a public network path probing task, adds a destination path network probing task with a reduced TTL range, and modifies the probing frequency of the new task based on the probing frequency of the original task. The results are shown in Table 1 below:
[0125] Table 1. Examples of task breakdown results for N network path probing tasks
[0126]
[0127] In the table: Before the change, the task was to send probe packets every 60 seconds to the TTL range 1-32, for a total of N tasks, so the number of packets sent per minute = 32*N, used to find reachable paths to the target IP; After the change, the common path probe task is to send probe packets every 60 seconds to the TTL range 1-5. Since all N tasks will pass through these 5 nodes, only one probe is needed, with 5 packets sent per minute, used to check the network quality of the common path portion; The changed full-range (1-32) probe task is to send probe packets every 300 seconds to the TTL range 1-32. The task involves sending probe packets within the TTL range, with a total of N tasks. Therefore, the number of packets sent in 5 minutes is 32*N. This is used to detect whether the network path has changed. Generally, the probability of a path change is very small, but it is necessary to detect changes in a timely manner. Therefore, the prediction time interval is set to 300 seconds. The task of probing the changed destination path is to send probe packets every 60 seconds to the TTL range of 6 - the maximum reachable hops. There are a total of N tasks. Therefore, the number of packets sent in 1 minute is (the average of the N maximum reachable hops - the public path hop count of 5)*N. This is used to detect the network path quality of the non-public part of the target IP.
[0128] Step 5: The network probe program obtains the probe tasks, executes the network probe tasks concurrently according to the network probe task list, and returns the network probe task results.
[0129] In one implementation, the splitting result further includes:
[0130] N fourth network path probing tasks, each with a second probe interval, a first TTL range, and its own target address.
[0131] The second test interval is greater than the first test interval.
[0132] In this embodiment, the splitting results shown in Table 1 are not unique. After the change, there may only be a common path detection task and a destination path detection task. When the destination path detection task cannot detect the target IP or learns through other means that the target IP cannot be reached, the original network path detection task is re-executed. Alternatively, after the change, there may be a common path detection task and the task before the change minus the common path task. That is, the changed full-range (1-32) detection task (fourth network path detection task) can have other replacement methods, but the fourth network path detection task is a preferred method.
[0133] In one embodiment, obtaining the destination path to N probe destination addresses and the second TTL range of the destination path specifically includes:
[0134] In response to receiving N first network path probing tasks created by the user, execute the N first network path probing tasks to obtain the first full-range network path probing results, and obtain the destination path to the N probe destination addresses and the second TTL range of the destination path based on the first full-range network path probing results;
[0135] In response to the change in the common path obtained from the execution of N fourth network path probing tasks, N first network path probing tasks are re-executed to obtain the first full-range network path probing results, and the destination path to N probe destination addresses and the second TTL range of the destination path are obtained based on the first full-range network path probing results.
[0136] In response to the change in the destination path obtained from the execution of N fourth network path probing tasks, the second full-range network path probing results of the N fourth network path probing tasks are obtained, and the destination path to the N probed destination addresses and the second TTL range of the destination path are obtained based on the second full-range network path probing results.
[0137] In this embodiment, the more specific algorithm logic is as follows:
[0138] Parameter description: Number of algorithm samples or sampling time. This value refers to the number of samples accumulated since the last change in the public network path, reaching the set value, or the time interval reaching the sampling time. It can be used to obtain the public path by executing the first network path detection task after the user creates a task, or to find the public path by executing a detection task with a TTL range of 1-32 after discovering a path change in the public path detection task.
[0139] Step 31: Calculate the path for each task. When the number of network result samples detected by the terminal is sufficient or the sampling time has elapsed, start calculating the path for each task.
[0140] Assuming the target of the task is 8.8.8.8 (a different assumption from Table 1), it records the path information detected each time the task is executed. A sample count is listed in Table 2 below:
[0141] Table 2. Example of the execution result of a first network path probing task.
[0142]
[0143]
[0144] In the table, * indicates a node that may not have been detected due to factors such as device busyness or rate limiting, while blank spaces indicate that the target IP was detected before reaching that hop.
[0145] The samples in Table 2 are iterated over in a loop, with each loop iterating over the TTL value within the range of the maximum number of hops in the results. For example, by horizontally traversing the samples in Table 2, it can be calculated that the target 8.8.8.8 has more than one path, but the longest path has 8 nodes. Therefore, based on the maximum number of nodes, Table 2 is vertically traversed to calculate the probability of each node appearing under the same TTL. The IP address of each node appearing in each hop and its probability are shown in Table 3 below:
[0146] Table 3. Example of path statistics for a first-level network path probing task (Part 1)
[0147]
[0148] As can be seen from the table, the paths to the target 8.8.8.8 can be summarized as path 1 and path 2. Path 1 includes 8 hops and path 2 includes 7 hops.
[0149] Alternatively, the samples can be iterated through to obtain the deduplicated samples. Based on the unique IP address corresponding to the TTL, points with (*) are added to the deduplicated samples, and then deduplication is performed again. The final path of the task and the maximum TTL are 8. The results are shown in Table 4 below:
[0150] Table 4. Example 2 of path statistics for a first network path probing task.
[0151] TTL 1 2 3 4 5 6 7 8 Path 1 * 2.2.2.2 3.3.3.3 4.4.4.4 5.5.5.5 6.6.6.6 * 8.8.8.8 Path 2 * 2.2.2.2 3.3.3.3 4.4.4.4 5.5.5.5 6.6.6.6 8.8.8.8 Path 3 * 2.2.2.2 3.3.3.3 4.4.4.4 5.5.5.5 6.6.6.6 7.7.7.7 8.8.8.8
[0152] Step 32: Calculate the common exploration mission destination address. After step 31, the paths of all missions have been calculated, and we can start calculating the common path.
[0153] Assume that after traversing all tasks (N tasks), all the calculated paths are shown in Table 5 below:
[0154] Table 5. Examples of path statistics for N first network path probing tasks.
[0155] TTL 1 2 3 4 5 6 7 8 Path 1 * 2.2.2.2 3.3.3.3 4.4.4.4 5.5.5.5 6.6.6.6 * 8.8.8.8 Path 2 * 2.2.2.2 3.3.3.3 4.4.4.4 5.5.5.5 6.6.6.6 8.8.8.8 Path 3 * 2.2.2.2 3.3.3.3 4.4.4.4 5.5.5.5 6.6.6.6 7.7.7.7 8.8.8.8 Path 4 * 2.2.2.2 3.3.3.3 4.4.4.4 5.5.5.5 6.6.66.6 7.7.77.7 10.1.1.1 Path 5 * 2.2.2.2 3.3.3.3 4.4.4.4 5.5.5.5 6.6.77.6 7.7.88.7 10.1.1.2 Path 6 * 2.2.2.2 3.3.3.3 4.4.4.4 5.5.5.5 6.6.88.6 7.7.99.7 10.1.1.3
[0156] Based on IP list 5, each path is matched in a loop until the common IP of all paths is found, for example, the result is (2.2.2.2,3.3.3.3,4.4.4.4,5.5.5.5);
[0157] Based on the shared IP, select the shared IP with the largest TTL value as the destination IP for the common path task. For example, if it is "5.5.5.5", the corresponding TTL value is 5.
[0158] If the calculation fails, the public network path change time is reset to the current time, and the calculation is restarted and waited for.
[0159] Step 33: Generate a public probe task. The perception platform creates a public network path task with a probe interval of 1 minute, a TTL range of 1-5, a destination of 5.5.5.5, and an ICMP type, based on the destination IP of the calculated public path task. The public path is recorded based on the results received by the probe task. It is assumed here that the public path part starts from 1, but the possibility of not starting from 1 is not excluded.
[0160] Steps 3 and 4: Modify the original network probing tasks, add network probing tasks with reduced TTL range, and modify the probing frequency of the original probing tasks, as shown in the split results of Task 1 to Task N in Table 1. The specific content in the table will be different for different original network path probing tasks.
[0161] Step 35: Monitor changes in the network public path. The sensing platform matches the network probe task results of the full range (1-32) TTL traversal in real time. If the destination IP of the public probe task is not in the results, it indicates that the network public path has changed. At this time, the following operations need to be performed: delete the public path task; reset the network probe task to its original state and delete the newly added task; set the public network path change time to the current time.
[0162] Step 36: Monitor changes in network probe tasks and use the perception platform to match the network probe task results across the full range of TTLs in real time. If the TTL value of the network probe result is larger than the existing task settings, adjust the TTL value of the existing task to this value. Specifically, if the maximum TTL of the probe destination increases, for example, if the maximum TTL of Task 1 in Table 1 was originally 8 hops, but has now become 10 hops, then modify the traversal range to 6-10 instead of 6-8.
[0163] Understandably, when a change in the destination path is detected but the common path remains unchanged, the destination path detection task of the split task can be reset directly, without needing to reset the common path detection task and the full-range path detection task. That is, it is only necessary to reacquire the destination paths reaching the N detection destination addresses and the second TTL range of the destination paths, without needing to reacquire the third TTL range, etc.
[0164] In one implementation, the N first network path probing tasks are split into several parts, specifically including:
[0165] Get the number of packets sent during the first network path probing task (N tasks in total).
[0166] Obtain the number of packets sent during the execution of one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks;
[0167] Based on the first and second packet counts, obtain the performance improvement after splitting the N first network path probing tasks;
[0168] In response to the performance improvement reaching the preset conditions, the N first network path detection tasks are split up.
[0169] In this embodiment, for N first network path probing tasks, if a common path is detected, the task can be split. Splitting the task can at least reduce some of the probing packets for the common path, thus inevitably improving efficiency. Alternatively, the efficiency improvement after splitting the task can be determined based on the change in the number of packets sent before and after, thereby deciding whether to split the task.
[0170] In one embodiment, wherein:
[0171] Obtain the number of packets sent during the execution of N first network path probing tasks, specifically including:
[0172] Calculate the number of third and fourth packets sent during the first and second probe intervals for each of the N first network path probing tasks according to the following formulas:
[0173] The third packet count = N * the first TTL range hop count * 1
[0174] Fourth packet count = N * First TTL range jump count * Second test interval / First test interval;
[0175] Obtain the number of packets sent during the execution of one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks, specifically including:
[0176] Calculate the fifth and sixth packet counts for executing one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks respectively in the first and second testing intervals according to the following formulas:
[0177] Fifth packet count = N * third TTL range hop count * 1 + N * fourth TTL range hop count * 1
[0178] The sixth packet count = N * the third TTL range jump count * the second test interval / the first test interval + N * the fourth TTL range jump count * the second test interval / the first test interval + N * the first TTL range jump count * 1;
[0179] Based on the first and second packet counts, obtain the performance improvement after splitting the N first network path probing tasks, specifically including:
[0180] Calculate the first performance improvement and the second performance improvement in the first and second testing intervals respectively using the following formulas:
[0181] First efficiency improvement = Third packet count / Fifth packet count
[0182] Second performance improvement = Fourth number of packets / Sixth number of packets.
[0183] In this embodiment, the specific efficiency improvement can be calculated as follows:
[0184] Suppose the RedCap terminal has 10 network path probing tasks with a probe interval of 60 seconds and a TTL range of 1-32; assuming the average hop count of the destination is 9 and the hop count of the public network probe path is 5; then the comparison of the probing results before and after using the optimized algorithm is shown in Table 6 below:
[0185] Table 6 Examples of efficiency improvements after task splitting.
[0186]
[0187]
[0188] In the table, the time corresponds to the dialing interval, and the unit is converted to minutes.
[0189] This embodiment is universally applicable. Based on the invention, related network path probing optimization modules can be developed to solve the problem of a sharp increase in network load when hundreds or thousands of RedCap terminals initiate multiple network path probing tasks, affecting actual service traffic. In the above application, it can significantly reduce the bandwidth load of 5G networks and the resource consumption of RedCap terminals.
[0190] Example 2:
[0191] like Figure 5 As shown, this disclosure provides a network path detection device, the device comprising:
[0192] Module 1 is used to obtain the splitting results of N first network path probing tasks. The splitting results include:
[0193] A second network path probing task, which does not reach the target address but only probes common paths, and...
[0194] There are N third-party network path probing tasks. Each task reaches its own target address but does not probe common paths.
[0195] The common path is the shared part of the destination paths to N probe destination addresses;
[0196] The execution or instruction execution module 2, connected to the acquisition module 1, is used to execute or instruct the execution of network path probing tasks based on the splitting results.
[0197] In one embodiment, wherein:
[0198] The method is applied to: network path detection terminals or network path detection sensing platforms;
[0199] Obtaining the splitting results of N first network path probing tasks includes: the network path probing terminal receiving the splitting results of N first network path probing tasks from the network path probing perception platform, or the network path probing perception platform generating the splitting results of N first network path probing tasks.
[0200] Executing or instructing network path probing tasks based on the splitting results includes: the network path probing terminal executing the network path probing task based on the splitting results, or the network path probing sensing platform instructing the network path probing terminal to execute the network path probing task based on the splitting results.
[0201] In one embodiment, the acquisition module 1 specifically includes:
[0202] The first acquisition unit is used to acquire the first detection interval, the first TTL range, and the respective detection target address of N first network path detection tasks;
[0203] The second acquisition unit, connected to the first acquisition unit, is used to acquire the destination paths to N probe destination addresses and the second TTL range of the destination paths;
[0204] The third acquisition unit, connected to the second acquisition unit, is used to acquire the common part of all destination paths, so as to obtain the common path and the common destination address and third TTL range of the common path;
[0205] The splitting unit, connected to the third acquisition unit, is used to split the N first network path probing tasks into:
[0206] A second network path probing mission with a first probe interval, a third TTL range, and a common destination address.
[0207] N third network path probing tasks, each with a first probe interval, a fourth TTL range, and its own target address;
[0208] Where TTL is the number of hops forwarded by the network path probe packet, and the fourth TTL range is equal to the second TTL range minus the third TTL range.
[0209] In one embodiment, wherein:
[0210] The second acquisition unit is specifically used for:
[0211] Obtain all node IP addresses of the path to each entry leading to each probe destination IP address, and obtain the maximum TTL range of all destination paths leading to each probe destination IP address as a second TTL range;
[0212] The third acquisition unit is specifically used for:
[0213] Obtain the common IP address of all destination paths reaching N probe destination addresses as the common path, obtain the common IP address corresponding to the maximum TTL value in the common path as the common destination address, and obtain the third TTL range corresponding to the maximum TTL value in the common path.
[0214] IP stands for Internet Protocol.
[0215] In one implementation, the splitting result further includes:
[0216] N fourth network path probing tasks, each with a second probe interval, a first TTL range, and its own target address.
[0217] The second test interval is greater than the first test interval.
[0218] In one embodiment, the second acquisition unit is specifically used for:
[0219] In response to receiving N first network path probing tasks created by the user, execute the N first network path probing tasks to obtain the first full-range network path probing results, and obtain the destination path to the N probe destination addresses and the second TTL range of the destination path based on the first full-range network path probing results;
[0220] In response to the change in the common path obtained from the execution of N fourth network path probing tasks, N first network path probing tasks are re-executed to obtain the first full-range network path probing results, and the destination path to N probe destination addresses and the second TTL range of the destination path are obtained based on the first full-range network path probing results.
[0221] In response to the change in the destination path obtained from the execution of N fourth network path probing tasks, the second full-range network path probing results of the N fourth network path probing tasks are obtained, and the destination path to the N probed destination addresses and the second TTL range of the destination path are obtained based on the second full-range network path probing results.
[0222] In one embodiment, the splitting unit further includes a performance acquisition unit, used for:
[0223] Get the number of packets sent during the first network path probing task (N tasks in total).
[0224] Obtain the number of packets sent during the execution of one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks;
[0225] Based on the first and second packet counts, obtain the performance improvement after splitting the N first network path probing tasks;
[0226] In response to the performance improvement reaching the preset conditions, the N first network path detection tasks are split up.
[0227] In one embodiment, wherein:
[0228] Obtain the number of packets sent during the execution of N first network path probing tasks, specifically including:
[0229] Calculate the number of third and fourth packets sent during the first and second probe intervals for each of the N first network path probing tasks according to the following formulas:
[0230] The third packet count = N * the first TTL range hop count * 1
[0231] Fourth packet count = N * First TTL range jump count * Second test interval / First test interval;
[0232] Obtain the number of packets sent during the execution of one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks, specifically including:
[0233] Calculate the fifth and sixth packet counts for executing one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks respectively in the first and second testing intervals according to the following formulas:
[0234] Fifth packet count = N * third TTL range hop count * 1 + N * fourth TTL range hop count * 1
[0235] The sixth packet count = N * the third TTL range jump count * the second test interval / the first test interval + N * the fourth TTL range jump count * the second test interval / the first test interval + N * the first TTL range jump count * 1;
[0236] Based on the first and second packet counts, obtain the performance improvement after splitting the N first network path probing tasks, specifically including:
[0237] Calculate the first performance improvement and the second performance improvement in the first and second testing intervals respectively using the following formulas:
[0238] First efficiency improvement = Third packet count / Fifth packet count
[0239] Second performance improvement = Fourth number of packets / Sixth number of packets.
[0240] Example 3:
[0241] Embodiment 3 of this disclosure provides a computer-readable storage medium storing a computer program. When the computer program is run by a processor, it implements the network path detection method as described in Embodiment 1, or the network path detection device as described in Embodiment 2.
[0242] The computer-readable storage medium includes volatile or non-volatile, removable or non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, computer program units, or other data). Computer-readable storage media include, but are not limited to, RAM (Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), flash memory or other memory technologies, CD-ROM (Compact Disc Read-Only Memory), DVD or other optical disc storage, cartridges, magnetic tapes, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to a computer.
[0243] Additionally, this disclosure may also provide a computer device including a memory and a processor. The memory stores a computer program, and when the processor runs the computer program stored in the memory, the processor executes the network path detection method as described in Embodiment 1. This computer device may be the network path detection device as described in Embodiment 2, and more specifically, it may be a network path detection terminal, a network path detection sensing platform, or a system composed of both.
[0244] The memory is connected to the processor. The memory can be flash memory, read-only memory or other types of memory. The processor can be a central processing unit or a microcontroller.
[0245] Embodiments 1-3 of this disclosure provide a network path probing method, a network path probing device, and a computer-readable storage medium. By finding a common path among multiple original network path probing tasks, the original network path probing tasks are split into a common path probing task and individual path probing tasks. The common path part only needs to be probed once, and the individual path probing tasks reduce the probe of the common path part, thereby reducing the number of network probing packets and reducing the network load caused by multiple network path probing tasks.
[0246] It is understood that the above embodiments are merely exemplary embodiments used to illustrate the principles of this disclosure, and this disclosure is not limited thereto. For those skilled in the art, various modifications and improvements can be made without departing from the spirit and substance of this disclosure, and these modifications and improvements are also considered to be within the scope of protection of this disclosure.
Claims
1. A network path detection method, characterized in that, The method includes: Obtain the split results of N first network path probing tasks. The split results include: A second network path probing task, which does not reach the target address but only probes common paths, and... There are N third-party network path probing tasks. Each task reaches its own target address but does not probe common paths. The common path is the shared part of the destination paths to N probe destination addresses; Execute or instruct to perform network path probing tasks based on the splitting results.
2. The method according to claim 1, characterized in that, in: The method is applied to: network path detection terminals or network path detection sensing platforms; Obtaining the splitting results of N first network path probing tasks includes: the network path probing terminal receiving the splitting results of N first network path probing tasks from the network path probing perception platform, or the network path probing perception platform generating the splitting results of N first network path probing tasks. Executing or instructing network path probing tasks based on the splitting results includes: the network path probing terminal executing the network path probing task based on the splitting results, or the network path probing sensing platform instructing the network path probing terminal to execute the network path probing task based on the splitting results.
3. The method according to claim 1 or 2, characterized in that, Obtain the split results of N first network path probing tasks, specifically including: Obtain the first detection interval, the first TTL range, and the detection target address of each of the N first network path detection tasks; Obtain the destination paths to N probe destination addresses and the second TTL range of the destination paths; Obtain the common portion of all destination paths to get the common path, the common destination address of the common path, and the third TTL range; The N first network path probing tasks are broken down into: A second network path probing task with a first probe interval, a third TTL range, and a common destination address, and, N third network path probing tasks, each with a first probe interval, a fourth TTL range, and its own target address; Where TTL is the number of hops forwarded by the network path probe packet, and the fourth TTL range is equal to the second TTL range minus the third TTL range.
4. The method according to claim 3, characterized in that, in: Obtain the destination paths to N probe destination addresses and the second TTL range of the destination paths, specifically including: Obtain all node IP addresses of the path to each entry leading to each probe destination IP address, and obtain the maximum TTL range of all destination paths leading to each probe destination IP address as a second TTL range; Obtain the common portion of all destination paths to retrieve the common paths, their common destination addresses, and third TTL ranges, specifically including: Obtain the common IP address of all destination paths reaching N probe destination addresses as the common path, obtain the common IP address corresponding to the maximum TTL value in the common path as the common destination address, and obtain the third TTL range corresponding to the maximum TTL value in the common path. IP stands for Internet Protocol.
5. The method according to claim 3, characterized in that, The splitting results also include: N fourth network path probing tasks, each with a second probe interval, a first TTL range, and its own target address. The second test interval is greater than the first test interval.
6. The method according to claim 5, characterized in that, Obtain the destination paths to N probe destination addresses and the second TTL range of the destination paths, specifically including: In response to receiving N first network path probing tasks created by the user, execute the N first network path probing tasks to obtain the first full-range network path probing results, and obtain the destination path to the N probe destination addresses and the second TTL range of the destination path based on the first full-range network path probing results; In response to the change in the common path obtained from the execution of N fourth network path probing tasks, N first network path probing tasks are re-executed to obtain the first full-range network path probing results, and the destination path to N probe destination addresses and the second TTL range of the destination path are obtained based on the first full-range network path probing results. In response to the change in the destination path obtained from the execution of N fourth network path probing tasks, the second full-range network path probing results of the N fourth network path probing tasks are obtained, and the destination path to the N probed destination addresses and the second TTL range of the destination path are obtained based on the second full-range network path probing results.
7. The method according to claim 5, characterized in that, The N first network path probing tasks are broken down into the following: Get the number of packets sent during the first network path probing task (N tasks in total). Obtain the number of packets sent during the execution of one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks; Based on the first and second packet counts, obtain the performance improvement after splitting the N first network path probing tasks; In response to the performance improvement reaching the preset conditions, the N first network path detection tasks are split up.
8. The method according to claim 7, characterized in that, in: Obtain the number of packets sent during the execution of N first network path probing tasks, specifically including: Calculate the number of third and fourth packets sent during the first and second probe intervals for each of the N first network path probing tasks according to the following formulas: The third packet count = N * the first TTL range hop count * 1 Fourth packet count = N * First TTL range jump count * Second test interval / First test interval; Obtain the number of packets sent during the execution of one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks, specifically including: Calculate the fifth and sixth packet counts for executing one second network path probing task, N third network path probing tasks, and N fourth network path probing tasks respectively in the first and second testing intervals according to the following formulas: Fifth packet count = N * third TTL range hop count * 1 + N * fourth TTL range hop count * 1 The sixth packet count = N * the third TTL range jump count * the second test interval / the first test interval + N * the fourth TTL range jump count * the second test interval / the first test interval + N * the first TTL range jump count * 1; Based on the first and second packet counts, obtain the performance improvement after splitting the N first network path probing tasks, specifically including: Calculate the first performance improvement and the second performance improvement in the first and second testing intervals respectively using the following formulas: First efficiency improvement = Third packet count / Fifth packet count Second performance improvement = Fourth number of packets / Sixth number of packets.
9. A network path detection device, characterized in that, The device includes: The acquisition module is used to obtain the splitting results of N first network path probing tasks. The splitting results include: A second network path probing task, which does not reach the target address but only probes common paths, and... There are N third-party network path probing tasks. Each task reaches its own target address but does not probe common paths. The common path is the shared part of the destination paths to N probe destination addresses; The execution or instruction execution module, connected to the acquisition module, is used to execute or instruct the execution of network path probing tasks based on the splitting results.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the network path detection method as described in any one of claims 1-8.
Citation Information
Patent Citations
Generation method and system of distributed segment routing dynamic bidirectional common path
CN117221218A
Communication network redundant path detection system and detection method therefor
JP2016152480A