Path fault node positioning method and device

By receiving network requests and path request instructions in the CDN system, obtaining the status of each node and adding response codes, and building response flow information to locate the faulty nodes, the problem of low positioning efficiency of path faulty nodes in the CDN system is solved, and precise positioning and rapid fault handling are achieved.

CN119583327AActive Publication Date: 2025-03-07CHINA TELECOM CLOUD TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411702014.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-26
Publication Date
2025-03-07
Estimated Expiration
2044-11-26

Smart Images

  • Figure CN119583327A_ABST
    Figure CN119583327A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of computers, in particular to a path fault node positioning method and device. The path fault node positioning method comprises the following steps: receiving a network request and a path request instruction, and determining a path based on the path request instruction; sending a network request based on the path, and in the process of sending the network request, obtaining the state of each node in the path; based on the state of each node in the path, adding a response code in response information of each node of the path; response information is obtained, and response circulation information of the path is determined; and positioning the fault node in the path based on the response code in the response circulation information. The node state information is collected while the network request is sent, so that the system can monitor the health condition of the network in real time. The real-time monitoring is helpful to discover potential network problems in time. Furthermore, by using the response code, the system can more accurately judge the health condition of the node, so that the fault node in the path can be quickly positioned.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a method and device for locating a path fault node. Background Art

[0002] The Content Delivery Network (CDN) system can redirect user requests to the service node closest to the user in real time based on comprehensive information such as network traffic and the connection and load status of each node, as well as the distance to the user and the response time. Its purpose is to enable users to obtain the required content nearby and improve the response speed of users visiting the website.

[0003] Traditional CDN acceleration caches static resources in a hierarchical manner, while for some frequently changing dynamic resources, dynamic acceleration technology can be used to forward requests through the optimized transmission network layer by layer to request the source station. Specifically, the detection component detects the nodes to obtain the network conditions between nodes, including but not limited to the transmission round-trip delay, first packet time, packet loss rate, etc. The detection component calculates the weights between nodes based on the detection data through different algorithms and reports them to the path calculation server. The path calculation server uses the Dijkstra algorithm to calculate the optimal multiple paths and then sends them to the gateway. When the user initiates a request to the edge gateway, it will be forwarded layer by layer according to the current existing path until it reaches the source station, thereby achieving the purpose of access optimization and acceleration.

[0004] However, with the increase in the number of nodes and the complexity of the network structure, once a path failure occurs, it takes a long time to locate the faulty node, and it is difficult to accurately locate the faulty node. Therefore, there is an urgent need for a computer method and device that can improve the efficiency of locating path fault nodes. Summary of the invention

[0005] Based on this, it is necessary to provide a path fault node locating method and device thereof that can improve the efficiency of locating path fault nodes in response to the above technical problems.

[0006] In a first aspect, the present application provides a method for locating a path fault node, the method comprising:

[0007] receiving a network request and a path request instruction, and determining a path based on the path request instruction;

[0008] Sending the network request based on the path, and in the process of sending the network request, obtaining the state of each node in the path;

[0009] Based on the status of each node in the path, adding a response code corresponding to the node status to the response information of each node in the path;

[0010] Acquire the response information and determine the response flow information of the path;

[0011] When it is determined that an abnormality exists based on the response flow information, a faulty node in the path is located according to a response code of the response flow information in the path where the abnormality exists.

[0012] In one embodiment, the response code includes an abnormal response code, and the locating the faulty node in the path according to the response code of the response flow information in the path where the abnormality exists, when determining that the abnormality exists based on the response flow information, includes:

[0013] In a case where the response code includes an abnormal response code, it is determined that the response of the source station in the path is abnormal.

[0014] In one embodiment, the path has a parent node, and the locating the fault node in the path according to the response code of the response flow information in the path where the abnormality exists, when determining that the abnormality exists based on the response flow information, includes:

[0015] In the case where the response code cannot be obtained, determining that a node segment between the source station and the parent node in the path is abnormal;

[0016] and / or,

[0017] The path does not have a parent node, and the locating the faulty node in the path according to the response code of the response flow information in the path where the abnormality exists, when determining that the abnormality exists based on the response flow information, includes:

[0018] When the response code cannot be obtained, it is determined that a node segment between the source station and the edge gateway in the path is abnormal.

[0019] In one embodiment, the path has a parent node, and the locating the fault node in the path according to the response code of the response flow information in the path where the abnormality exists, when determining that the abnormality exists based on the response flow information, includes:

[0020] Determine the current parent node;

[0021] Determine the previous node of the current parent node and the response code of the previous node, and record the response code of the previous node into the response code of the current parent node to form a concatenated response code;

[0022] The splicing response code is obtained, and the faulty node is located in the splicing response code.

[0023] In one embodiment, obtaining the splicing response code and locating the faulty node in the splicing response code includes:

[0024] The concatenated response code is segmented based on the target separator to obtain a response code for each node.

[0025] In one of the embodiments, after locating the faulty node in the path according to the response code of the response flow information in the path where the abnormality exists, based on the determination that the abnormality exists based on the response flow information, the method includes:

[0026] The faulty nodes are counted and a faulty node list is formed, wherein the faulty nodes at least include the faulty nodes, the faulty node segments, and the fault causes.

[0027] In one embodiment, the counting of the faulty nodes and forming a faulty node list, wherein the faulty nodes at least include the faulty nodes, the faulty node segments, and the fault causes, further includes:

[0028] In response to the retry instruction, when the state of the current node is an edge node, a retry path is obtained;

[0029] In the case that the retry path includes the faulty node in the faulty node list, the path related to the faulty node is deleted to form a new retry path.

[0030] In one embodiment, the step of responding to the retry instruction, after obtaining the retry path when the current node is in the edge node state, includes:

[0031] In the case where the retry path includes the faulty node in the faulty node list, a retry path from the current node to the source station is added.

[0032] In one embodiment, the counting of the faulty nodes and forming a faulty node list, wherein the faulty nodes at least include the faulty nodes, the faulty node segments, and the fault causes, further includes:

[0033] In response to a new path request instruction, acquiring a plurality of new paths of the new path request instruction;

[0034] When nodes of the multiple new paths are found in the fault node list, the paths related to the fault nodes are deleted from the multiple new paths.

[0035] In a second aspect, the present application further provides a path fault node location device, the device comprising:

[0036] A receiving module, configured to receive a network request and a path request instruction, and determine a path based on the path request instruction;

[0037] An acquisition module, used for sending the network request based on the path, and acquiring the state of each node in the path during the process of sending the network request;

[0038] An adding module, configured to add a response code corresponding to the node status to the response information of each node in the path based on the node status in the path;

[0039] A determination module, used to obtain the response information and determine the response flow information of the path;

[0040] A positioning module is used to locate a faulty node in the path according to a response code of the response flow information in the path where the abnormality exists, when it is determined that an abnormality exists based on the response flow information.

[0041] In a third aspect, the present application further provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:

[0042] receiving a network request and a path request instruction, and determining a path based on the path request instruction;

[0043] Sending the network request based on the path, and in the process of sending the network request, obtaining the state of each node in the path;

[0044] Based on the status of each node in the path, adding a response code corresponding to the node status to the response information of each node in the path;

[0045] Acquire the response information and determine the response flow information of the path;

[0046] When it is determined that an abnormality exists based on the response flow information, a faulty node in the path is located according to a response code of the response flow information in the path where the abnormality exists.

[0047] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the following steps are implemented:

[0048] receiving a network request and a path request instruction, and determining a path based on the path request instruction;

[0049] Sending the network request based on the path, and in the process of sending the network request, obtaining the state of each node in the path;

[0050] Based on the status of each node in the path, adding a response code corresponding to the node status to the response information of each node in the path;

[0051] Acquire the response information and determine the response flow information of the path;

[0052] When it is determined that an abnormality exists based on the response flow information, a faulty node in the path is located according to a response code of the response flow information in the path where the abnormality exists.

[0053] In a fifth aspect, the present application further provides a computer program product, including a computer program, which implements the following steps when executed by a processor:

[0054] receiving a network request and a path request instruction, and determining a path based on the path request instruction;

[0055] Sending the network request based on the path, and in the process of sending the network request, obtaining the state of each node in the path;

[0056] Based on the status of each node in the path, adding a response code corresponding to the node status to the response information of each node in the path;

[0057] Acquire the response information and determine the response flow information of the path;

[0058] When it is determined that an abnormality exists based on the response flow information, a faulty node in the path is located according to a response code of the response flow information in the path where the abnormality exists.

[0059] The above-mentioned path fault node positioning method and its device, computer equipment, computer-readable storage medium and computer program product determine the path through the path request instruction, improve the probability that the network request can be transmitted according to the predetermined path, and also provide clearer path information for subsequent fault diagnosis, so that the problem location is more accurate. Moreover, node status information is collected while sending network requests, so that the system can monitor the health of the network in real time. Furthermore, by adding a response code to each node, the system can represent the status of the node in a standardized manner. This simplifies the fault diagnosis process. At the same time, the use of response codes also enables the system to more accurately determine the status of the node. After that, the faulty node in the path can be quickly located based on the response code in the response flow information, so that the system can quickly take measures to solve the problem. BRIEF DESCRIPTION OF THE DRAWINGS

[0060] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the drawings required for use in the embodiments of the present application or related technical descriptions will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0061] Figures 1 to 9 A schematic diagram of a flow chart of a method for locating a path fault node provided in different embodiments;

[0062] Fig.10 A structural block diagram of a path fault node location device provided in an embodiment;

[0063] Fig.11 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0064] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0065] See also Figures 1 to 9 , multiple embodiments of the present application provide a path fault node location method. The path fault node location method provided by the present application can be applied in a terminal and server environment. The terminal can be, but is not limited to, various personal computers, laptops, smart phones, tablet computers, Internet of Things devices, etc. The server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud computing services.

[0066] In one embodiment, Figure 1 , Figure 2 , Figure 3 and Figure 4 As shown, a method for locating a path fault node is provided. This embodiment takes the method applied to a terminal as an example for illustration. It can be understood that the method can also be applied to a server, and can also be applied to a system including a terminal and a server, and is implemented through the interaction between the terminal and the server. In this embodiment, the method includes the following steps:

[0067] Step S10: receiving a network request and a path request instruction, and determining a path based on the path request instruction.

[0068] Step S20: Send a network request based on the path, and in the process of sending the network request, obtain the status of each node in the path.

[0069] Step S30: Based on the status of each node in the path, a response code corresponding to the node status is added to the response information of each node in the path.

[0070] Step S40: Acquire response information and determine the response flow information of the path.

[0071] Step S50: when it is determined that an abnormality exists based on the response flow information, locate the faulty node in the path according to the response code of the response flow information in the path where the abnormality exists.

[0072] Step S10: receiving a network request and a path request instruction, and determining a path based on the path request instruction.

[0073] In step S10, the network request may be initiated by a user or by another system or service. The network request has a corresponding path request instruction. The path request instruction specifies the path followed by the network request, that is, which nodes (such as routers, switches, servers, etc.) should be passed from the edge gateway to the source station in the network. Based on the path request instruction, the system can calculate the optimal or specified path, which is used for the transmission of the network request.

[0074] In step S20, the system starts to send a network request, and while sending the request, the system collects and records the status information of each node on the path. This status information may include whether the node responds normally, etc. As an example, the status information may include the content of a successful response, failure to establish a connection (source station service abnormality, or network abnormality from the source parent node to the source station, etc.), and the content of the abnormal response code (inaccessible corresponding resources, no configured host, etc.).

[0075] In step S30, the system may evaluate the status of each node, and based on the evaluation result, the system adds a response code to the response information of each node. This response code may indicate the status of the node. As an example, at this time, the response code may be saved in the response header custom response header. Of course, different status information may have different response codes, which may be preset.

[0076] In step S40, the system collects the response information of all nodes (including the added response code). By analyzing the response information, the system can construct the response flow information of the entire path, that is, how the network request flows on the path and is processed by each node.

[0077] In step S50, the system may check the response code of each node. When encountering a response code indicating an abnormality or failure, the system may locate the faulty node of the path according to the response code of the abnormality or failure, thereby facilitating rapid adoption of appropriate repair measures.

[0078] In this embodiment, the path is determined by the path request instruction, which increases the probability that the network request can be transmitted along the predetermined path, and also provides clearer path information for subsequent fault diagnosis, making the problem location more accurate. Moreover, node status information is collected while sending the network request, so that the system can monitor the health of the network in real time. Furthermore, by adding a response code to each node in this embodiment, the system can represent the status of the node in a standardized manner. This simplifies the fault diagnosis process. At the same time, the use of the response code also enables the system to more accurately determine the status of the node. Afterwards, the faulty node in the path can be quickly located based on the response code in the response flow information, so that the system can quickly take measures to solve the problem.

[0079] In one embodiment, the path may include a source station, and it is understood that the path may connect the source station from the edge gateway. At this time, there may or may not be a parent node between the edge gateway and the source station. The response code includes an abnormal response code. This embodiment does not limit the specific form of the abnormal response code. As an example, the abnormal response code may include a combination of numbers, letters, and symbols. Accordingly, in the first possible example, step S50 may include:

[0080] Step S51: When the response code includes an abnormal response code, it is determined that the source station in the path responds abnormally.

[0081] When the system collects the response information of all nodes, it will check these response codes one by one. The normal response code indicates that there is no problem when the node processes the request, while the abnormal response code indicates that the source station responds abnormally. At this time, it can be considered that the source station itself is faulty, insufficient resources, configuration errors, etc. are the cause. Furthermore, the abnormal response code can have different forms, and different forms indicate different reasons for the abnormal response of the source station. The system can determine the cause of the failure through the specific abnormal response code and mark the source station. As an example, the system can record the fault information, send an alarm to the administrator, try to resend the request to the backup source station, or take other recovery measures. Specifically, when the current path contains a parent node, or does not contain a parent node, and the response code includes an abnormal response code, the current source station response can be considered abnormal.

[0082] In a second possible example, the path has a source station and a parent node, and step S50 may include:

[0083] Step S52: When the response code cannot be obtained, it is determined that the node segment between the source station and the parent node in the path is abnormal.

[0084] Alternatively, the path has no parent node, and step S50 may include:

[0085] Step S53: When the response code cannot be obtained, it is determined that the node segment between the source station and the edge gateway in the path is abnormal.

[0086] When the source station and the back-to-source parent node cannot be connected, the response header definition and response header assignment are not performed. Therefore, the response code cannot be obtained at the back-to-source parent node, and the edge node cannot obtain the content of the response header. Therefore, when the response code cannot be obtained, it can be determined that the source station address (IP) and the back-to-source parent node cannot be connected, and the back-to-source parent node-source station IP can be marked. Of course, after marking the back-to-source parent node-source station IP, the system will trigger the corresponding fault handling mechanism. This may include recording fault information, sending alarms to administrators, trying to bypass faulty node segments, or using other recovery measures. In addition, if the current path does not contain a parent node, that is, the edge directly returns to the source scenario, it meets the conditions of being both an edge and a back-to-source node. When the response code cannot be obtained (there is no response code in the upstream node), the edge and the current source station IP cannot be successfully connected.

[0087] In the third possible example, if the source station and the back-to-source parent node can establish a connection normally and the source station can return normal corresponding content to the back-to-source parent node, the back-to-source parent node can obtain the response code of the source station and store the response code in the response header definition response header, and the source station status can be known at the edge node. Alternatively, if the current path does not contain a parent node, that is, the edge directly back-to-source scenario, it meets the conditions of being both an edge and a back-to-source node, and the back-to-source IP status can be obtained by obtaining the upstream node status information. If the upstream node information is the response code of the source station, the current source station response is normal.

[0088] In addition, after the edge node determines the status of the source station, it clears the added response header definition response header and responds to the client.

[0089] The following is an example of the specific process of this embodiment. After the network request arrives at the content distribution network node, the route is set at the edge gateway according to the selected dynamic path. If the link is unobstructed, the request is passed to the source station node by node. After the source station responds, the response content is returned to the edge node step by step. There are three types of source station node status: successfully returning the response content to the source parent node or edge node; unable to establish a successful connection; responding to abnormal response code content. If the current path contains a parent node, that is, a non-direct source path, the current response code is obtained at the source parent node. If the response code is a specific value, it is saved in the response header custom response header (origin_status), and continuously forwarded until it is returned to the edge node. At this point, the edge node can judge the source station status through the response header content and mark the source station address. If the response header content is an abnormal response code, it is an abnormal response code of the source station response. The source station responds abnormally. According to the specific abnormal response code, the cause of the fault can also be judged, and the source station is marked. If the source station and the back-to-source parent node cannot be connected, the response code cannot be obtained at the back-to-source parent node, and the custom response header value is not assigned. Therefore, the edge node cannot obtain the response header content. This method can be used to determine that the source station IP and the back-to-source parent node cannot be connected, and the back-to-source parent node-source station IP can be marked. If the source station and the back-to-source parent node can be connected normally and the source station can also return normal corresponding content to the back-to-source parent node, the back-to-source parent node can obtain the response code of the source station, such as 2xx or 3xx, and store the response code in the custom response header. The edge node can know the status of the source station. If the current path does not contain the parent node, that is, the edge directly returns to the source scenario, it meets the conditions of being both an edge and a back-to-source node, and the back-to-source IP status can be obtained by obtaining the upstream node status information. If the upstream node information is 2xx or 3xx, the current source station responds normally; if the upstream node information is an abnormal response code, the current source station responds abnormally; if the upstream node has no response code, the edge and the current source station IP cannot be successfully connected. After the edge node determines the source station status, it clears the added custom response header and responds to the client.

[0090] In one embodiment, a path has multiple parent nodes. For example, see Figure 4 , there is a common parent layer between the back-to-source parent layer and the common edge gateway. Figure 5 , step S50 comprises:

[0091] Step S54: Determine the current parent node.

[0092] Step S55: Determine the previous parent node of the current parent node and the response code of the previous parent node, and record the response code of the previous node into the response code of the current parent node to form a concatenated response code.

[0093] Step S56: Obtain the splicing response code and locate the faulty node in the splicing response code.

[0094] In step S54, the current parent node refers to the node that directly processes the current network request. As an example, the system identifies each node on the path and determines the current parent node based on configuration information or network topology.

[0095] In step S55, the system will continue to trace upward to find the previous parent node of the current parent node. Then, the system will read and record the response code of the previous parent node, and record it into the response code of the current parent node, thereby generating a spliced ​​response code containing multiple node states. After that, the system will repeat the above process again until it traces back to the source station.

[0096] In step S56, the concatenated response code includes the status information of multiple nodes on the path, and the system needs to identify which nodes' response codes indicate abnormal status. As an example, at this time, by comparing the preset abnormal response code list or rules, the faulty node can be accurately located. Specifically, step S56 may include:

[0097] Step S561: Segment the concatenated response code based on the target separator to obtain the response code of each parent node.

[0098] The system will first determine the target delimiter. The target delimiter can also be preset. The delimiter can be a special character or string used to distinguish the response codes of different nodes when splicing response codes. For example, if the response codes of each node are separated by commas, then the comma is the target delimiter. Of course, target delimiters can also include cents, semicolons, or slashes. After determining the target delimiter, the system will use it to split the spliced ​​response code. This splitting process will break the entire spliced ​​response code into multiple independent strings, each of which represents the response code of a parent node.

[0099] The following is an illustrative description of the specific process of this embodiment. Figure 3After the network request reaches the content distribution network node, the edge gateway sets the route according to the selected dynamic path. If the link is unobstructed, the request will be passed to the source station node by node. After the source station responds, the response content will be returned to the edge node step by step. In the normal response path, when the source station responds normally, the response code of the previous node can be obtained by the source parent node as a normal response code, and the response code is recorded in the parent node response header (parent_status). After the previous hop of the source parent node obtains the response code of the source parent node, it is spliced ​​into the parent node response header. By analogy, at the edge node, all nodes except the edge node can obtain the upstream node response code information. If a node in the path fails, the edge node can split the response header content according to the added parent node response header and the exact delimiter. The content after segmentation is the upstream status of each hop, where the response code of 0 or abnormal is the node with the failure and the corresponding failure cause, so that the abnormal node and its abnormal cause can be accurately located. Afterwards, since the edge node does not perform response header splicing operations, the status of the parent 1 node needs to be determined by obtaining the response code of the previous node. If the response code of the previous node is empty, it means that the edge fails to establish a connection with the parent 1 node; if the response code of the previous node exists but is an abnormal response code, the parent 1 node responds abnormally; if the response code of the previous node exists and is a normal response code, the parent 1 node responds normally, but in this scenario, the parent 1 node should also obtain the response code of the previous node, and even if the connection fails, 0 will be stored in the response header, so this scenario does not exist. After the edge node determines the status of the source station, it clears the added response header parent node response header and responds to the client.

[0100] In this embodiment, according to the above-mentioned source station status judgment and parent node status judgment, the edge node obtains the entire path response flow information, and quickly marks the faulty node or faulty node segment accordingly. By tracing back the transparent response code splicing head, it can quickly decide to mark the faulty node or faulty node segment based on whether there is a specific status at the end.

[0101] In one embodiment, see Figure 6 , after step S50, comprising:

[0102] Step S60: Count the faulty nodes and form a faulty node list, where the faulty nodes at least include the faulty nodes, faulty node segments, and fault causes.

[0103] At this point, all identified faulty nodes can be collected from the previous steps. Each faulty node can contain necessary information, such as node identifier (such as IP address, device name, etc.), node type (such as router, switch, server, etc.), and the location of the node in the network. For faults involving multiple nodes (such as network segment failure), the node range or network segment affected by the fault can also be determined.

[0104] Afterwards, the information of all faulty nodes can be organized into a faulty node list. The faulty node list can include the identifier, type, location, faulty node segment, and fault cause of each faulty node. In addition, other relevant information can be added as needed, such as the time when the fault occurred, the business or service affected, and the initial measures taken.

[0105] In this embodiment, by forming a fault node list, subsequent fault resolution is facilitated and retry efficiency can also be improved.

[0106] Exemplarily, the list of faulty nodes may be as shown in the following table. Wherein, ID represents the faulty node number, and type represents the classification of the faulty node. Types may include nodes, node segments, and source stations, etc. Content may represent a specific faulty node (abnormal status code or connection timeout due to failed connection, etc.). When the type of the faulty node is a node, the content may be represented as the specific address of the node (e.g., IP1). When the type of the faulty node is a node segment, the content may be represented as the two ends of the node segment (e.g., IP1-IP2). When the type of the faulty node is a source station, the content may be represented as the source station IP2. Time may be used to represent the time when the fault was first discovered. This embodiment does not impose specific restrictions on this.

[0107] ID type content state time 1 node IP1 4.3 1719479639 2 Node segment IP1-IP2 time out 1719479657 3 Origin Source IP 502 1719479663 ... ... ... ... ...

[0108] In one embodiment, a path filtering module may be provided to filter routing and retry routing to avoid reusing a failed path. Figure 4 The path filtering module may include multiple path filtering components, each of which may be connected to a corresponding edge gateway. The dynamic path central computing service may issue paths based on network requests. The dynamic path proxy service node may perform quality detection reporting and dynamic path issuance, and it may also be connected to each common edge gateway and back-to-source edge gateway. In addition, the path filtering component may also be connected to obtain negative feedback. Each common edge gateway and back-to-source edge gateway may also be connected to a client to send content returned by the source station to the client.

[0109] For details, please refer to Figure 7 , after step S60, the following may be included:

[0110] Step S70: In response to the retry instruction, when the current node is in the edge node state, a retry path is acquired.

[0111] Step S71: When the retry path includes a faulty node in the faulty node list, the path related to the faulty node is deleted to form a new retry path.

[0112] In step S70, the retry instruction can be used to resend the request or data when the initial attempt fails or encounters a problem. First, the system needs to check whether the current node is in the state of an edge node. If the current node is an edge node and a retry instruction has been received, the system needs to determine a new retry path. The retry path may be determined based on network topology, current network conditions, historical data or other factors. The present embodiment does not specifically limit the selection of the retry path.

[0113] In step S71, after determining the retry path, the system needs to check whether the path contains any node in the faulty node list. In one possible example, for a faulty intermediate node, delete the node and all nodes between it and the source station to form a new retry path. In another possible example, for a faulty source station, delete all paths related to the source station. In yet another possible example, for a faulty node segment, delete the node segment and all nodes between it and the source station to form a new retry path. The system can use the retry path again to send a network request.

[0114] Also, see Figure 8 After step S70, the method may further include:

[0115] Step S72: When the retry path includes a faulty node in the faulty node list, a retry path from the current node to the source station is added.

[0116] In this embodiment, by adding a path filtering module, the stability and reliability of the routing system can be improved, and the number of request failures and retries caused by faulty nodes can be reduced. Moreover, in this embodiment, the system can also add a retry path from the edge gateway directly back to the source station, thereby providing additional attempts when the main path fails. Specifically, in the request when the faulty path appears, since all paths have been loaded, when retrying, it is determined whether the retryable path is included in the faulty node list, and the position of the faulty node or the faulty node segment in the retry path is analyzed. For the faulty intermediate node, the path filtering module deletes the intermediate node and all nodes between it and the source station as a new retry path, and additionally adds an edge direct back-to-source retry path; for the faulty source station, the path filtering module deletes all paths related to the source station; for the faulty node segment, the path filtering module deletes the node segment and all nodes between it and the source station as a new retry path, and additionally adds an edge direct back-to-source retry path. In addition, when updating the path, the path filtering module adds deduplication processing to the updated path.

[0117] In one embodiment, see Fig. 9 , after step S60, the following may be included:

[0118] Step S80: In response to the new path request instruction, a plurality of new paths of the new path request instruction are acquired.

[0119] Step S81: When multiple nodes of new paths are found in the fault node list, the path related to the fault node is deleted from the multiple new paths.

[0120] In step S80, the new path request instruction may be used to request one or more new transmission paths. As an example, the system calculates multiple possible new paths based on network topology, current network conditions, historical data or other factors. These paths should be able to bypass known faulty nodes.

[0121] In step S81, after obtaining multiple new paths, the system can check whether these paths contain any nodes in the faulty node list. If a new path contains a node in the faulty node list, then this path should be deleted or marked as unavailable to ensure that data transmission does not pass through known fault points. After that, after deleting the paths related to the faulty nodes, the system will update the path list and only keep those paths that do not contain the faulty nodes, which can be used as alternative paths for data transmission.

[0122] In this embodiment, multiple new paths are obtained and those paths containing faulty nodes are deleted, thereby improving the reliability and efficiency of data transmission. Specifically, for new requests, when the route distribution has not started at the beginning of the route selection, the path filtering module will play its role, and filter the paths based on the currently maintained list of faulty nodes, using the same filtering mechanism as during the retry. If there are many abnormal node segments, resulting in fewer paths after filtering, the faulty node list can be released using an expiration mechanism. In addition, for new requests, the number of threshold limits for faulty nodes, source stations, and node segments can be increased, that is, only when the number of faulty nodes exceeds a certain threshold, will they be avoided in all requests. Among them, the life cycle of the path filtering module to maintain the faulty node list can be limited to the reception of the next intelligent route selection result.

[0123] In one embodiment, in a scenario with large network fluctuations, the path filtering module maintains more faulty nodes, resulting in fewer or even non-existent paths after filtering. At this time, a threshold for the number of paths or a threshold for the original proportion of the paths can be set, and the value can be customized according to the scenario requirements. When it is less than the threshold, the path filtering module will feed it back to the intelligent routing component, informing it of the abnormal node and time. The routing component obtains the detection data after the abnormal time (to avoid sending the abnormal path again) to perform path calculation and re-send the path. At this point, the path filtering module resets the fault node list.

[0124] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0125] Based on the same inventive concept, the embodiment of the present application also provides a path fault node location device for implementing the path fault node location method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more path fault node location device embodiments provided below can refer to the limitations of the path fault node location method above, and will not be repeated here.

[0126] In an exemplary embodiment, Fig.10 As shown, a path fault node location device is provided, including: a receiving module, an acquisition module, an adding module, a determining module and a location module, wherein:

[0127] The receiving module is used to receive a network request and a path request instruction, and determine a path based on the path request instruction.

[0128] The acquisition module is used to send a network request based on the path, and in the process of sending the network request, obtain the status of each node in the path.

[0129] An adding module is used to add a response code corresponding to the node status in the response information of each node in the path based on the status of each node in the path.

[0130] The determination module is used to obtain response information and determine the response flow information of the path.

[0131] The positioning module is used to locate the fault node in the path according to the response code of the response flow information in the path where the abnormality exists, when it is determined that there is an abnormality based on the response flow information.

[0132] In one embodiment, the positioning module is used to determine that the source station response in the path is abnormal when the response code includes an abnormal response code.

[0133] In one embodiment, the path has a parent node, and the positioning module is used to determine that a node segment between the source station and the parent node in the path is abnormal when a response code cannot be obtained.

[0134] In one embodiment, the path does not have a parent node, and the positioning module is used to determine that a node segment between the source station and the edge gateway in the path is abnormal when a response code cannot be obtained.

[0135] In one embodiment, the path has a parent node, and the positioning module is used to determine the current parent node; determine the previous node of the current parent node and the response code of the previous node, and record the response code of the previous node into the response code of the current parent node to form a spliced ​​response code; obtain the spliced ​​response code, and locate the faulty node in the spliced ​​response code.

[0136] In one embodiment, the positioning module is used to segment the concatenated response code based on the target separator to obtain the response code of each node.

[0137] In one embodiment, the path fault node locating device includes a statistical module, which is used to count the fault nodes and form a fault node list. The fault nodes at least include the fault nodes, fault node segments, and fault causes.

[0138] In one embodiment, the path fault node locating device includes a filtering module, which is used to respond to a retry instruction and obtain a retry path when the state of the current node is an edge node; when the retry path includes a faulty node in a faulty node list, delete the path related to the faulty node to form a new retry path.

[0139] In one embodiment, the filtering module is used to add a retry path from the current node to the source station when the retry path includes a faulty node in the faulty node list.

[0140] In one embodiment, the filtering module is used to obtain multiple new paths of the new path request instruction in response to the new path request instruction; when multiple nodes of the new paths are found in the fault node list, the path related to the fault node is deleted from the multiple new paths.

[0141] Each module in the above-mentioned path fault node location device can be implemented in whole or in part by software, hardware or a combination thereof. Each of the above-mentioned modules can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each of the above modules.

[0142] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Fig.11As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. The processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store path fault node location data. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a path fault node location method is implemented.

[0143] Those skilled in the art will understand that Fig.11 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0144] In one embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the following steps are implemented:

[0145] Step S10: receiving a network request and a path request instruction, and determining a path based on the path request instruction.

[0146] Step S20: Send a network request based on the path, and in the process of sending the network request, obtain the status of each node in the path.

[0147] Step S30: Based on the status of each node in the path, a response code corresponding to the node status is added to the response information of each node in the path.

[0148] Step S40: Acquire response information and determine the response flow information of the path.

[0149] Step S50: when it is determined that an abnormality exists based on the response flow information, locate the faulty node in the path according to the response code of the response flow information in the path where the abnormality exists.

[0150] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0151] Step S51: When the response code includes an abnormal response code, it is determined that the source station in the path responds abnormally.

[0152] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0153] Step S52: When the response code cannot be obtained, it is determined that the node segment between the source station and the parent node in the path is abnormal.

[0154] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0155] Step S53: When the response code cannot be obtained, it is determined that the node segment between the source station and the edge gateway in the path is abnormal.

[0156] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0157] Step S54: Determine the current parent node.

[0158] Step S55: Determine the previous parent node of the current parent node and the response code of the previous parent node, and record the response code of the previous node into the response code of the current parent node to form a concatenated response code.

[0159] Step S56: Obtain the splicing response code and locate the faulty node in the splicing response code.

[0160] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0161] Step S561: Segment the concatenated response code based on the target separator to obtain the response code of each parent node.

[0162] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0163] Step S60: Count the faulty nodes and form a faulty node list, where the faulty nodes at least include the faulty nodes, faulty node segments, and fault causes.

[0164] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0165] Step S70: In response to the retry instruction, when the current node is in the edge node state, a retry path is acquired.

[0166] Step S71: In the case where the retry path includes a faulty node in the faulty node list, the path related to the faulty node is deleted to form a new retry path.

[0167] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0168] Step S72: When the retry path includes a faulty node in the faulty node list, a retry path from the current node to the source station is added.

[0169] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0170] Step S80: In response to the new path request instruction, a plurality of new paths of the new path request instruction are acquired.

[0171] Step S81: When multiple nodes of new paths are found in the fault node list, the path related to the fault node is deleted from the multiple new paths.

[0172] In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:

[0173] Step S10: receiving a network request and a path request instruction, and determining a path based on the path request instruction.

[0174] Step S20: Send a network request based on the path, and in the process of sending the network request, obtain the status of each node in the path.

[0175] Step S30: Based on the status of each node in the path, a response code is added to the response information of each node in the path.

[0176] Step S40: Acquire response information and determine the response flow information of the path.

[0177] Step S50: Locate the faulty node in the path based on the response code in the response flow information.

[0178] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0179] Step S51: When the response code includes an abnormal response code, it is determined that the source station in the path responds abnormally.

[0180] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0181] Step S52: When the response code cannot be obtained, it is determined that the node segment between the source station and the parent node in the path is abnormal.

[0182] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0183] Step S53: When the response code cannot be obtained, it is determined that the node segment between the source station and the edge gateway in the path is abnormal.

[0184] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0185] Step S54: Determine the current parent node.

[0186] Step S55: Determine the previous parent node of the current parent node and the response code of the previous parent node, and record the response code of the previous node into the response code of the current parent node to form a concatenated response code.

[0187] Step S56: Obtain the splicing response code and locate the faulty node in the splicing response code.

[0188] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0189] Step S561: Segment the concatenated response code based on the target separator to obtain the response code of each parent node.

[0190] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0191] Step S60: Count the faulty nodes and form a faulty node list, where the faulty nodes at least include the faulty nodes, faulty node segments, and fault causes.

[0192] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0193] Step S70: In response to the retry instruction, when the current node is in the edge node state, a retry path is acquired.

[0194] Step S71: When the retry path includes a faulty node in the faulty node list, the path related to the faulty node is deleted to form a new retry path.

[0195] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0196] Step S72: When the retry path includes a faulty node in the faulty node list, a retry path from the current node to the source station is added.

[0197] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0198] Step S80: In response to the new path request instruction, a plurality of new paths of the new path request instruction are acquired.

[0199] Step S81: When multiple nodes of new paths are found in the fault node list, the path related to the fault node is deleted from the multiple new paths.

[0200] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.

[0201] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.

[0202] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0203] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.

Claims

1. A method for locating a path fault node, characterized in that: The method comprises: receiving a network request and a path request instruction, and determining a path based on the path request instruction; Sending the network request based on the path, and in the process of sending the network request, obtaining the state of each node in the path; Based on the status of each node in the path, adding a response code corresponding to the node status to the response information of each node in the path; Acquire the response information and determine the response flow information of the path; When it is determined that an abnormality exists based on the response flow information, a faulty node in the path is located according to a response code of the response flow information in the path where the abnormality exists.

2. The method for locating a path fault node according to claim 1, characterized in that: The response code includes an abnormal response code, and the locating a faulty node in the path according to the response code of the response flow information in the path where the abnormality exists, when determining that the abnormality exists based on the response flow information, includes: In a case where the response code includes an abnormal response code, it is determined that the response of the source station in the path is abnormal.

3. The method for locating a path fault node according to claim 1, characterized in that: The path has a parent node, and the locating the fault node in the path according to the response code of the response flow information in the path where the abnormality exists, when determining that the abnormality exists based on the response flow information, includes: In the case where the response code cannot be obtained, determining that a node segment between the source station and the parent node in the path is abnormal; and / or, The path does not have a parent node, and the locating the faulty node in the path according to the response code of the response flow information in the path where the abnormality exists, when determining that the abnormality exists based on the response flow information, includes: When the response code cannot be obtained, it is determined that a node segment between the source station and the edge gateway in the path is abnormal.

4. The method for locating a path fault node according to claim 1, characterized in that: The path has a parent node, and the locating the fault node in the path according to the response code of the response flow information in the path where the abnormality exists, when determining that the abnormality exists based on the response flow information, includes: Determine the current parent node; Determine the previous node of the current parent node and the response code of the previous node, and record the response code of the previous node into the response code of the current parent node to form a concatenated response code; The splicing response code is obtained, and the faulty node is located in the splicing response code.

5. The method for locating a path fault node according to claim 4, characterized in that: The obtaining of the splicing response code and locating the faulty node in the splicing response code includes: The concatenated response code is segmented based on the target separator to obtain a response code for each node.

6. The method for locating a path fault node according to claim 1, characterized in that: After locating the faulty node in the path according to the response code of the response flow information in the path where the abnormality exists, based on the determination that the abnormality exists based on the response flow information, the method includes: The faulty nodes are counted and a faulty node list is formed, wherein the faulty nodes at least include the faulty nodes, the faulty node segments, and the fault causes.

7. The method for locating a path fault node according to claim 6, characterized in that: The counting of the faulty nodes and forming a faulty node list, wherein the faulty nodes at least include the faulty nodes, the faulty node segments, and the fault causes, includes: In response to the retry instruction, when the state of the current node is an edge node, obtaining a retry path; In the case that the retry path includes the faulty node in the faulty node list, the path related to the faulty node is deleted to form a new retry path.

8. The method for locating a path fault node according to claim 7, characterized in that: The step of responding to the retry instruction and obtaining the retry path when the current node is an edge node comprises: In the case where the retry path includes the faulty node in the faulty node list, a retry path from the current node to the source station is added.

9. The method for locating a path fault node according to claim 6, characterized in that: The counting of the faulty nodes and forming a faulty node list, wherein the faulty nodes at least include the faulty nodes, the faulty node segments, and the fault causes, includes: In response to a new path request instruction, acquiring a plurality of new paths of the new path request instruction; When nodes of the multiple new paths are found in the fault node list, the paths related to the fault nodes are deleted from the multiple new paths.

10. A path fault node location device, characterized in that: The device comprises: A receiving module, configured to receive a network request and a path request instruction, and determine a path based on the path request instruction; An acquisition module, used for sending the network request based on the path, and acquiring the state of each node in the path during the process of sending the network request; An adding module, configured to add a response code corresponding to the node status to the response information of each node in the path based on the node status in the path; A determination module, used to obtain the response information and determine the response flow information of the path; A positioning module is used to locate a faulty node in the path according to a response code of the response flow information in the path where the abnormality exists, when it is determined that an abnormality exists based on the response flow information.

Citation Information

Patent Citations

  • Data request processing method and system based on cloud distribution, medium and equipment

    CN115250294A

  • Method for acquiring resource data, electronic device, electronic equipment and medium

    CN116418793A

  • Network service detection method, device, equipment and medium

    CN117118873A

  • CDN dynamic request acceleration method based on node failure state feedback optimization

    CN118101523A

  • Automobile bus fault positioning method, diagnostic device, and automobile detection system and method

    WO2022121693A1