Message path detection method and related equipment

By using the method of message path verification in the low-orbit satellite communication system, the routing loop problem caused by the forwarding of table exceptions by satellite-on-mounted routers is solved, and timely detection and positioning of abnormal routes is realized, ensuring the stability of the communication system.

CN119172294APending Publication Date: 2024-12-20HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310742290.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-20
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

In low-orbit satellite communication systems, due to the harsh space environment, the routing forwarding table of the satellite-only router is prone to abnormalities, resulting in incorrect message forwarding directions, and may have routing loop problems, making it difficult to detect and locate abnormal routes in a timely manner.

Method used

By performing path verification based on the destination IP address carried by the message in the network device, the correctness of the forwarding path is determined, and multi-node collaboration and heterogeneous inspection mechanisms are used to avoid the occurrence of routing forwarding loop problems. The specific method includes querying the port check table or routing table after receiving the message, and determining whether the input port of the message and the destination IP address match. If it does not match, abort forwarding to prevent the occurrence of a loop.

Benefits of technology

It realizes the accuracy detection of the message path of the satellite-borne router, timely locates abnormal routes, avoids routing loop problems, improves problem positioning efficiency, and ensures the stability of the satellite communication system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119172294A_ABST
    Figure CN119172294A_ABST
Patent Text Reader

Abstract

The invention provides a message path detection method and related equipment, and relates to the field of communication. The method comprises the following steps: a first network device receives a message from a second network device, wherein the message comprises a target internet protocol IP address; and the first network device obtains the destination IP address of the message and performs path verification according to the destination IP address. The path verification is used for indicating the correctness of the forwarding path corresponding to the message. And the first network equipment determines whether to forward the message according to a path verification result. In this way, the first network device forwards the message again only when determining that the last hop network device forwards the message correctly. The multi-node cooperation and heterogeneous inspection mechanism can timely and effectively avoid the routing forwarding loop problem, so as to maintain the stability of a communication system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of communication technology, and in particular to a method for detecting a message path and related equipment. Background Art

[0002] Satellite communication, as an important component of modern communication systems, has the advantages of long communication distance, large coverage area and no geographical restrictions, and is an important supplement to ground mobile communication systems. With the rapid development of aerospace technology, low-orbit satellites have broader prospects in the research and deployment of satellite communication systems due to their short propagation delay, low path loss and low transmission power.

[0003] Compared with ground mobile communication systems, low-orbit satellite communication systems are in a harsher space environment. Environmental factors such as radiation, single particles, solar eclipses, frequent low-frequency vibrations, large temperature differences, and vacuum negative pressure often cause bit flips in components and equipment. The bit flips caused by the space environment are characterized by high frequency, random locations, and difficult detection. According to statistical analysis, aerospace-grade devices experience bit flips every day, and industrial-grade devices experience multiple bit flips more frequently. Even if anti-radiation reinforcement measures are taken, the probability of failure is much higher than that of the ground operating environment. This means that the routing calculation and message forwarding processes of the onboard router can no longer be regarded as closed processes like the ground mobile communication system, but need to consider the impact of internal data anomalies on routing forwarding.

[0004] Specifically, when a bit flip occurs in a satellite router, it is very likely that the routing table of the satellite router will be tampered with. Then, the message forwarded based on the abnormal routing table is likely to have the wrong message forwarding direction, which will lead to routing loops and the inability to provide business services. Therefore, it is necessary to accurately detect the message path of the satellite router and locate the abnormal route in time to avoid the routing loop problem. Then, how to detect the correctness of the message forwarding path has become an urgent problem to be solved. Summary of the invention

[0005] The embodiment of the present application provides a method for detecting a message path and related equipment. After receiving a message, the network device performs a path check based on the destination IP address carried by the message to detect the correctness of the forwarding path corresponding to the message. In this way, the network device can forward the message again only when it determines that the previous hop network device forwarded the message correctly. This multi-node collaborative and heterogeneous inspection mechanism can timely and effectively avoid the occurrence of routing forwarding loop problems to maintain the stability of the communication system.

[0006] In a first aspect, an embodiment of the present application provides a method for detecting a message path, the method comprising:

[0007] After receiving the message forwarded by the second network device, the first network device needs to perform a path check based on the destination IP address carried by the message to determine whether the forwarding path of the message is correct. If it is determined that the forwarding path of the message is correct, the first network device needs to query the local forwarding table and continue to forward the message to the next-hop network device. If it is wrong, the first network device needs to terminate the forwarding of the message. In this way, the network device can determine whether the message forwarding behavior of the previous-hop network device is normal through the path verification results. This multi-node collaborative and heterogeneous inspection mechanism can timely and effectively detect network devices with message forwarding errors, improve the efficiency of problem location, and effectively avoid the occurrence of routing forwarding loop problems.

[0008] In an optional implementation, each network device in the network maintains a port check table. The port check table entry is used to record the information of each port of the network device and the destination IP address of the message that each port is allowed to receive. In this way, when the first network device receives a message and performs a path detection of the message, it first determines the port that receives the message, and then checks whether there is a table entry with a destination IP address that is the destination IP address of the message in the table entry corresponding to the port to determine whether the message enters from the correct port. If the destination IP address of the message is in the table entry corresponding to the input port of the message. It means that the forwarding path of the message is accurate. If not, it means that the forwarding path of the message is wrong, and the message forwarding behavior of the previous hop network device is abnormal. Using the port check table to perform path verification can increase the speed of path verification and more efficiently avoid routing forwarding loop problems.

[0009] In an optional implementation, when establishing a port check table, the first network device needs to first obtain the routing table of each adjacent network device. Through the routing table of each adjacent network device, it is known which messages will be forwarded to the local area, that is, the next hop address in the routing table of the adjacent network device is screened out. Then, based on the target routing table item, the first network device matches the destination IP address of the message in the target routing table item with the local port, thereby establishing a local port check table.

[0010] The first network device learns in advance which messages should be forwarded to the local according to the port check table. If the port check table records an entry that the input port number of the message corresponds to the destination IP address of the message, it means that the previous-hop network device forwards the message based on an accurate forwarding table, and the forwarding path of the message is accurate. If the port check table does not record an entry that the input port number of the message corresponds to the destination IP address of the message, it means that the message forwarding behavior of the previous-hop network device is abnormal, and the forwarding table of the previous-hop network device is wrong.

[0011] In an optional implementation, the table entries of the port check table of the first network device can be statically configured by a network administrator based on the routing table entries of the adjacent network devices, or can be dynamically configured by the first network device itself. Exemplarily, the first network device can generate routing tables of each adjacent network device based on the mastered network topology relationship and with each adjacent network device as the root node. In this way, the first network device can quickly calculate the port check table by only switching the root node of the shortest path tree.

[0012] In an optional implementation, if the first network device determines that the path verification result of the message is correct, that is, the forwarding path of the message is correct, then the first network device needs to continue to forward the message. If the first network device determines that the path verification result of the message is incorrect, then it means that the forwarding direction of the message is wrong. In this way, the first network device can discard the message to avoid routing loops. Exemplarily, the first network device can also issue an alarm message to inform the previous hop network device that the message forwarding behavior is abnormal, so as to quickly locate the system failure.

[0013] In an optional implementation, before performing path verification, the first network device also needs to determine its forwarding mechanism based on the type of the segment identifier SID corresponding to the previous-hop network device. If the previous-hop network device forwards according to the specified interface in the strictly planned path, and the type of the segment identifier SID corresponding to the second network device is the target type, such as the end.x type, then the first network device cannot perform path verification. If the type of the segment identifier SID corresponding to the second network device is not the target type, that is, the second network device forwards the message by querying the forwarding table, then the first network device can use the destination IP address of the message to perform path verification to detect the message forwarding behavior of the previous-hop network device.

[0014] In an optional implementation, the previous-hop network device may inform the next-hop network device by carrying forwarding mechanism information in the message. Specifically, the first network device parses the message, determines the type of the segment identifier SID corresponding to the previous-hop network device according to the forwarding mechanism information carried in the message, and then determines its forwarding mechanism, and then determines whether to perform path verification according to the forwarding mechanism.

[0015] In an optional implementation, when planning a path, the source node can set the next SID of the SID corresponding to the network device forwarded by the specified interface in the strictly planned path to a special type. In this way, the first network device only needs to determine the type of its own corresponding SID, and can know the type of the SID of the previous hop network device according to the type of its own corresponding SID, and then determine whether to perform path detection.

[0016] In an optional embodiment, the method is applied to a network system in a low-reliability operating environment, such as a low-orbit satellite communication system in a space environment, and the above-mentioned network device may be a router in the satellite network.

[0017] In a second aspect, an embodiment of the present application provides a method for detecting a message path, the method comprising:

[0018] The second network device sends a message to the next-hop network device based on the destination IP address of the message. After receiving the message forwarded by the second network device, the next-hop network device needs to perform a path check based on the destination IP address carried in the message to determine whether the forwarding path of the message is correct. In this way, the next-hop network device can determine whether the message forwarding behavior of the second network device is normal based on the path check result. This multi-node collaborative and heterogeneous inspection mechanism can timely and effectively detect network devices with message forwarding errors, improve the efficiency of problem location, and effectively avoid the occurrence of routing forwarding loop problems.

[0019] In an optional implementation, the next-hop network device needs to determine the forwarding mechanism of the second network device before performing path verification. The second network device can inform the next-hop network device by carrying the forwarding mechanism information in the message.

[0020] In an optional embodiment, the method is applied to a network system in a low-reliability operating environment, such as a low-orbit satellite communication system in a space environment, and the above-mentioned network device can be a router in the satellite network.

[0021] In a third aspect, an embodiment of the present application provides a network device, the network device comprising:

[0022] A receiving unit, configured to receive a message from a second network device; the message includes a destination Internet Protocol IP address;

[0023] An acquiring unit, used for acquiring the destination IP address of the message;

[0024] A processing unit, configured to perform a path check according to the destination IP address; the path check is used to indicate the correctness of the forwarding path corresponding to the message;

[0025] A determination unit is used to determine whether to forward the message according to the result of the path verification.

[0026] In an optional implementation manner, the port through which the receiving unit receives the message is the first port.

[0027] The acquisition unit is further used to acquire a port check table corresponding to the first port, where the port check table is used to record the destination IP addresses of the messages that the first port is allowed to receive.

[0028] The processing unit is specifically used to query the port check table according to the destination IP address. If the destination IP address of the message exists in the port check table, it is determined that the result of the path check is correct.

[0029] In an optional implementation, the acquisition unit is further configured to acquire a forwarding table of an adjacent network device.

[0030] The processing unit is further configured to filter out at least one routing table entry whose next hop address is the first network device from the forwarding table, and to establish a port check table according to the at least one routing table entry.

[0031] In an optional implementation, the acquisition unit is specifically configured to acquire a network topology relationship.

[0032] The processing unit is also used to generate a forwarding table of the adjacent network device based on the network topology relationship, taking the adjacent network device as a root node.

[0033] In an optional implementation, the determination unit is specifically configured to forward the message according to the forwarding table of the first network device if the result of the path verification is correct, and discard the message if the result of the path verification is incorrect.

[0034] In an optional implementation, the determining unit is further configured to determine a type of a segment identifier SID corresponding to the second network device, where the type of the segment identifier SID is used to indicate a forwarding mechanism corresponding to the second network device.

[0035] The processing unit is further configured to not perform path verification if the type of the segment identifier SID corresponding to the second network device is a target type, the target type being used to instruct the second network device to forward the message according to the specified interface. If the type of the forwarding mechanism segment identifier SID corresponding to the second network device is not a target type, then perform path verification.

[0036] In an optional implementation, the message carries forwarding mechanism information, and the forwarding mechanism information indicates the type of the segment identifier SID corresponding to the second network device.

[0037] The determining unit is specifically configured to determine the type of the segment identifier SID corresponding to the second network device according to the forwarding mechanism information.

[0038] The processing unit is further configured to update the forwarding mechanism information according to the type of the corresponding segment identifier SID of the first network device.

[0039] In an optional embodiment, the determination unit is specifically configured to determine the type of the segment identifier SID corresponding to the second network device according to the type of the segment identifier SID corresponding to the network device, wherein the segment identifier SID corresponding to the network device and the segment identifier SID corresponding to the second network device are both determined by a source node of the forwarding path of the orchestration message.

[0040] In an optional implementation, the network device and the second network device are routers in a satellite network.

[0041] In a fourth aspect, an embodiment of the present application provides another network device, the network device comprising:

[0042] The determination unit is used to determine the first network device corresponding to the message according to the destination Internet Protocol IP address included in the message after receiving the message.

[0043] The sending unit is used to send a message to the first network device, so that the first network device performs a path check according to the destination IP address, and the path check is used to indicate the correctness of the forwarding path corresponding to the message.

[0044] In an optional implementation, the network device further includes a processing unit.

[0045] The processing unit is used to update the forwarding mechanism information carried in the message according to the type of the segment identifier SID corresponding to the network device.

[0046] The sending unit is specifically configured to send a message carrying forwarding mechanism information to the first network device.

[0047] In an optional implementation, the first network device and the network device are routers in a satellite network.

[0048] In a fifth aspect, an embodiment of the present application provides a network device, comprising: a processor and a memory. The processor is coupled to the memory; the memory is used to store computer instructions, and the computer instructions are loaded and executed by the processor to enable the network device to implement any one of the methods provided in the first aspect.

[0049] In a sixth aspect, an embodiment of the present application provides a network device, including: a processor and a memory. The processor is coupled to the memory; the memory is used to store computer instructions, and the computer instructions are loaded and executed by the processor to enable the network device to implement any one of the methods provided in the second aspect.

[0050] In the seventh aspect, an embodiment of the present application provides a chip, which includes: a processor and an interface circuit; the interface circuit is used to receive code instructions and transmit them to the processor; the processor is used to run the code instructions to execute any one of the methods provided in the first aspect.

[0051] In an eighth aspect, an embodiment of the present application provides a chip, comprising: a processor and an interface circuit; the interface circuit is used to receive code instructions and transmit them to the processor; the processor is used to run the code instructions to execute any one of the methods provided in the second aspect.

[0052] In a ninth aspect, an embodiment of the present application provides a computer-readable storage medium, in which at least one computer program instruction is stored. The computer program instruction is loaded and executed by a processor to implement any one of the methods provided in the first aspect above.

[0053] In the tenth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores at least one computer program instruction, and the computer program instruction is loaded and executed by a processor to implement any one of the methods provided in the second aspect above.

[0054] In the eleventh aspect, an embodiment of the present application provides a computer program product, including computer execution instructions, which, when executed on a computer, enable the computer to execute any one of the methods provided in the first aspect.

[0055] In a twelfth aspect, an embodiment of the present application provides a computer program product, including computer execution instructions, which, when executed on a computer, enable the computer to execute any one of the methods provided in the second aspect.

[0056] In the thirteenth aspect, an embodiment of the present application provides a communication system, which includes a first network device and a second network device, wherein the first network device is used to execute any one of the methods provided in the first aspect, and the second network device is used to execute any one of the methods provided in the second aspect.

[0057] The technical effects brought about by any implementation method in the third aspect to the thirteenth aspect can be referred to the technical effects brought about by the corresponding implementation methods in the first aspect and the second aspect, and will not be repeated here.

[0058] In an embodiment of the present application, after receiving a message forwarded by a previous-hop network device, the network device performs a path check according to the destination IP address carried by the message. Then, it is determined whether to continue forwarding the message based on the path check result. In this way, the network device can determine whether the message forwarding behavior of the previous-hop network device is normal through the path check result. This multi-node collaborative and heterogeneous inspection mechanism can timely and effectively detect network devices with message forwarding errors, improve the efficiency of problem location, and is a prerequisite for subsequent correction of abnormal network devices. The network device can promptly stop forwarding messages with abnormal forwarding paths in the system based on the path check result to avoid the occurrence of routing forwarding loop problems, thereby maintaining the stability of the satellite communication system. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] Figure 1 A flow chart of a method for detecting a message path provided in an embodiment of the present application;

[0060] Figure 2 A flowchart of another method for detecting a message path provided in an embodiment of the present application;

[0061] Figure 3 A schematic diagram of the structure of a message forwarding path provided in an embodiment of the present application;

[0062] Figure 4 A flowchart of a method for formulating a port check list provided in an embodiment of the present application;

[0063] Figure 5 This is a schematic diagram of the structure of a DA storing SID under the G-SRv6 protocol;

[0064] Figure 6 This is a schematic diagram of another structure of DA storage SID under the G-SRv6 protocol;

[0065] Figure 7 A schematic diagram of the structure of a network device provided in an embodiment of the present application;

[0066] Figure 8 A schematic diagram of the structure of another network device provided in an embodiment of the present application;

[0067] Fig. 9 A schematic diagram of the structure of another network device provided in an embodiment of the present application;

[0068] Fig.10 A schematic diagram of the structure of another network device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0069] The embodiment of the present application provides a method for detecting a message path and related equipment. After receiving a message, the network device performs a path check based on the destination IP address carried by the message to detect the correctness of the forwarding path corresponding to the message. In this way, the network device can forward the message again only when it determines that the previous hop network device forwarded the message correctly. This multi-node collaborative and heterogeneous inspection mechanism can timely and effectively avoid the occurrence of routing forwarding loop problems to maintain the stability of the communication system.

[0070] In the description of this application, unless otherwise specified, " / " indicates that the objects associated with each other are in an "or" relationship, for example, A / B can represent A or B; "and / or" in this application is merely a description of the association relationship between associated objects, indicating that three relationships may exist, for example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural.

[0071] In the description of this application, unless otherwise specified, "plurality" means two or more than two. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple.

[0072] In addition, in order to clearly describe the technical solutions of the embodiments of the present application, in the embodiments of the present application, words such as "first" and "second" are used to distinguish the same items or similar items with substantially the same functions and effects. Those skilled in the art can understand that words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not necessarily limit the difference.

[0073] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a concrete way for easy understanding.

[0074] It is understood that the "embodiment" mentioned throughout the specification means that the specific features, structures or characteristics related to the embodiment are included in at least one embodiment of the present application. Therefore, the various embodiments in the entire specification do not necessarily refer to the same embodiment. In addition, these specific features, structures or characteristics can be combined in one or more embodiments in any suitable manner. It is understood that in various embodiments of the present application, the size of the sequence number of each process does not mean the order of execution, and the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiment of the present application.

[0075] It can be understood that some optional features in the embodiments of the present application may be implemented independently in certain scenarios without relying on other features, such as the solution on which they are currently based, to solve corresponding technical problems and achieve corresponding effects, or may be combined with other features according to needs in certain scenarios. Accordingly, the devices provided in the embodiments of the present application may also realize these features or functions accordingly, which will not be elaborated here.

[0076] In this application, unless otherwise specified, the same or similar parts between the various embodiments can refer to each other. In this application, if there is no special description or logical conflict between the various embodiments, the terms and / or descriptions between different embodiments are consistent and can be referenced to each other, and different embodiments can be combined to form new embodiments according to their inherent logical relationships. The following implementation methods of this application do not constitute a limitation on the scope of protection of this application.

[0077] In order to facilitate understanding of the technical solutions of the embodiments of the present application, a brief introduction to the relevant technologies of the embodiments of the present application is given below:

[0078] With the rapid development of aerospace technology, low-orbit satellite networking technology has attracted widespread attention, and its commercial value has gradually emerged. Low-orbit satellites have the characteristics of short propagation delay, low path loss and low transmission power, and can serve as an important supplement to ground mobile communication systems.

[0079] In ground mobile communication systems, external interfaces are generally regarded as important wind direction sources. Before external data enters the system through external interfaces, strict data verification must be performed. The probability of abnormalities inside the system is very low, and generally no special protection processing is required. Specifically, the routing calculation, message forwarding and other processing processes inside the system do not require special attention. This is because during routing calculation, path reachability is guaranteed by the control plane routing algorithm, and during message forwarding, the forwarding table will not be tampered with. Therefore, the reliability of routing calculation and message forwarding processes in ground mobile communication systems is very high.

[0080] Compared with ground mobile communication systems, low-orbit satellite communication systems in a harsher space environment can no longer be regarded as closed systems. Environmental factors such as irradiation, single particles, solar eclipses, frequent low-frequency vibrations, large temperature differences, and vacuum negative pressure seriously affect the reliability of internal components and equipment in the system. The harsh space environment will frequently cause bit flipping. For example, the large number of high-energy charged particles (single particles) in the space environment will cause the CMOS electronic components in the computer to be irradiated by the earth's magnetic field, cosmic rays, etc., resulting in a jump in the potential state, from "0" to "1", or "1" to "0". In addition, the bit flip phenomenon has the characteristics of high frequency of occurrence, random location, and difficult detection. According to statistical analysis, space-grade devices have bit flipping events every day, and industrial-grade devices have more frequent multi-bit flipping. Even if anti-irradiation reinforcement measures are taken, the probability of occurrence is much higher than that of the ground operating environment. Frequent abnormal data jumps may cause unexpected errors in software, stacks, data tables, etc. These errors will change the operating state of the system and seriously affect the stability of the system. If abnormal data is retained in the system, the consequences will be even more unpredictable.

[0081] Taking the message forwarding process as an example, the router calculates the route and determines the forwarding table. After receiving the message, the router looks up the table according to the destination IP address carried by the message, obtains the next hop address corresponding to the message, and then forwards the message based on the next hop address. In the ground mobile communication system, the router's forwarding table will not be tampered with, but in the space environment, the forwarding table of the onboard router may be abnormal due to the bit flip phenomenon. When the forwarding table is abnormal, the following route forwarding abnormalities will occur. One is that the routing table entry cannot be matched in the forwarding table, resulting in the failure of message forwarding. This situation usually causes multiple business flows to be interrupted. The other is that although the match is successful, the abnormal table entry is matched. In this way, the forwarding direction of the message will be wrong, which is likely to cause a routing loop. Compared with the first case, the second routing loop phenomenon has a wider impact range and is more difficult to detect. In order to deal with the routing loop phenomenon, it is necessary to detect the accuracy of the message forwarding path and locate the abnormal route in time. Then, how to detect the correctness of the message path has become an urgent problem to be solved.

[0082] Based on this, the embodiment of the present application provides a method for detecting a message path and related equipment, which can identify and detect forwarding errors of messages in a communication system. Specifically, after receiving a message, the network device performs a path check based on the destination IP address carried by the message to detect the correctness of the path corresponding to the message. In this way, the network device can forward the message again only when it determines that the previous hop network device forwards the message correctly. This multi-node collaborative and heterogeneous inspection mechanism can timely and effectively avoid the occurrence of routing forwarding loop problems. The embodiment of the present application is described in detail below.

[0083] Figure 1 A flow chart of a method for detecting a message path provided in an embodiment of the present application. Figure 1 As shown, the detection method includes the following steps:

[0084] 101. The second network device searches the forwarding table to determine the first network device.

[0085] In network communications, the routing table is used to guide the route and method of data packets in the network. Specifically, when a network device receives a message (carrying business data), it needs to search the locally maintained routing table and match the routing table entry according to the destination IP address carried by the message to obtain the next hop address corresponding to the message.

[0086] Specifically, after receiving the message, the second network device used for message forwarding obtains the destination IP address carried by the message, consults the forwarding table based on the destination IP address, obtains the next hop address corresponding to the destination IP address, and determines the next hop network device (the first network device), and then the second network device forwards the message to the first network device.

[0087] It is understandable that the embodiments of the present application are intended to identify and detect message forwarding path errors in communication systems in low-reliability operating environments. Therefore, the applicable scenarios of the embodiments of the present application can be satellite communication systems in harsh space environments, or mine communication systems in low-pressure, severe electromagnetic interference environments, etc. The first network device and the second network device can be routers in a satellite network, or routers that are prone to bit flipping in other harsh operating environments, without specific limitation.

[0088] 102. The second network device sends a message to the first network device.

[0089] After determining the first network device as the next hop, the second network device forwards the message to the first network device, wherein the message carries the destination IP address.

[0090] 103. The first network device obtains a destination IP address of the message.

[0091] After receiving the message, the first network device obtains the destination IP address carried in the message.

[0092] Exemplarily, the first network device can also obtain other forwarding information corresponding to the message according to each table entry field of the message. For example, the IPAT in the message is an attribute table used to describe the message input port. Its table entry field is used to define whether to filter the message, whether to enable legal monitoring, and the port number and board number to which the input port belongs. For example, the ICIB of the message is used to describe the attribute table of the message sub-interface, and its table entry field is used to define the interface forwarding mode, whether the interface is a three-layer dedicated line access, IPv4 / v6 enabled, multicast enabled, etc. The FIBv6 of the message is used to describe routing information, and its table entry field is used to indicate the output interface information of the message.

[0093] 104. The first network device performs a path check according to the destination IP address of the message.

[0094] After the first network device obtains the destination IP address of the message, it performs path verification based on the destination IP address. The path verification is to verify the accuracy of the path corresponding to the message, that is, before the first network device continues to forward the message, it needs to verify whether the message forwarding behavior of the second network device is normal. This multi-node collaborative and heterogeneous inspection mechanism can timely and effectively avoid the occurrence of routing forwarding loop problems to maintain the stability of the communication system.

[0095] 105. The first network device determines whether to forward the message according to the path verification result.

[0096] After the first network device completes the path check, it determines whether the path of the message is correct and whether the message forwarding behavior of the second network device is normal based on the path check result. If the result of the path check is correct, the first network device continues to query the forwarding table of the first network device, continues to find the next hop address and continues to forward the message according to the address. If the result of the path check is incorrect, the first network device can discard the message to avoid routing loops. Exemplarily, the first network device can also send an alarm signal. Specifically, the alarm signal can remind the second network device in the network that the message forwarding is abnormal, so as to quickly locate the system failure.

[0097] In this way, the first network device will forward the message again only when it is determined that the second network device forwards normally. This can prevent the message from continuing to be forwarded incorrectly when the forwarding direction is wrong, thereby avoiding the problem of routing loops. In the entire communication system, the next-hop network device checks the message forwarding behavior of the previous-hop network device to verify the path of the message. Once it is determined that the path of the message is wrong, the message forwarding behavior can be stopped in time to avoid routing loops. At the same time, the abnormal network device can be quickly located to improve the efficiency of problem location. This is conducive to the subsequent rapid restoration of the normal operation of the communication system.

[0098] In an embodiment of the present application, after receiving a message forwarded by a previous-hop network device, the network device performs a path check according to the destination IP address carried by the message. The message is forwarded only when it is determined that the path of the message is correct. When the path of the message is incorrect, it can be determined that the previous-hop network device is abnormal, and the message with the abnormal forwarding is no longer forwarded again. This multi-node collaborative and heterogeneous inspection mechanism can timely and effectively detect network devices with message forwarding errors, improve the efficiency of locating the problem, and is a prerequisite for subsequent correction of abnormal network devices. At the same time, it can effectively avoid the occurrence of routing forwarding loop problems and maintain the stability of the satellite communication system.

[0099] Based on the above description, the process of performing path verification on network devices is introduced in detail below. Figure 2 A flow chart of another method for detecting a message path provided in an embodiment of the present application. Figure 2 As shown, the detection method includes the following steps:

[0100] 201. A first network device obtains a message sent by a second network device.

[0101] After acquiring the message sent by the second network device, the first network device first determines the input port number of the message, that is, the first port through which the first network device receives the message, and the destination IP address carried by the message.

[0102] 202. The first network device obtains a port check list.

[0103] Each network device in the communication system maintains a port check table. The table entries of the port check table are used to record the information of each port of the network device and the IP address corresponding to each port, that is, each table entry of the port check table is used to characterize the mapping relationship between the port and the destination IP address. Specifically, the network device determines the messages allowed to enter each port, obtains the destination IP address corresponding to these messages, and then establishes the corresponding relationship between each port and these destination IP addresses in the port check table. It can be understood that the port check table can be used to know whether the message carrying the destination IP can pass through a certain port. If the message carrying a certain destination IP address enters from the port corresponding to the destination IP address recorded in the port check table, then it means that the forwarding direction of the message is accurate, and if the port at which the first network device receives the message carrying a certain destination IP address is inconsistent with the port corresponding to the destination IP address recorded in the port check table, or there is no table entry corresponding to the destination IP address in the port check table, then it means that the message is forwarded incorrectly, and the message forwarding behavior of the previous hop network device is abnormal.

[0104] Specifically, the port check table is formulated based on the routing table of the adjacent network device (neighboring node) of the network device. That is, the first network device needs to obtain the routing table of its adjacent network device, and then learn which messages will be forwarded to the local according to the forwarding table of the adjacent node network device, and then establish a mapping relationship between the destination IP address of the message to be forwarded to the local and the local port. Therefore, if the message received locally is a normally forwarded message, then there must be an entry in the port check table indicating the correspondence between the destination IP address of the normally forwarded message and the input port number. Conversely, if the port check table does not have an entry for the destination IP address of the message corresponding to the input port of the message, then the received message is a message with abnormal forwarding.

[0105] Exemplarily, the port check table can be a general table corresponding to the entire network device, that is, the table records the information of all ports of the network device and the destination IP address corresponding to each port. At the same time, the port check table can also be bound to each port, that is, each port corresponds to an independent port check table, and the port check table only records the destination IP address corresponding to the port, without specific limitation.

[0106] It can be understood that the embodiment of the present application is actually that the next-hop network device obtains the accurate routing table of the previous-hop network device, and formulates a port check table based on the forwarding table of the previous-hop network device, and then verifies the message forwarding behavior of the previous-hop network device based on the port check table to determine whether the forwarding table locally maintained by the previous-hop network device is abnormal. Therefore, in order for each network device to accurately verify the message forwarding behavior of the previous-hop network device, it is necessary to obtain the accurate routing table of the previous-hop network device. Exemplarily, it can be manually configured by an administrator, or the network device can calculate the routing table of each neighboring node by itself based on the network topology relationship it has mastered, and there is no specific limitation.

[0107] 203. The first network device queries the port check table according to the destination IP address.

[0108] After obtaining the destination IP address of the received message and the input port number when the message enters the first network device, the first network device uses the input port number of the message or the destination IP address of the message as an index to query the port check table maintained by the first network device to determine whether there is an entry in the port check table that corresponds to the destination IP address for the input port number, thereby verifying whether the path of the message is correct. Alternatively, the first network device searches the port check table corresponding to the input port number to see whether the destination IP address of the message is recorded in the port check table. Then, based on the query result, verify whether the path of the message is correct.

[0109] 204. The first network device determines a path verification result according to the query result.

[0110] If there is an entry in the port check table that the input port number of the message corresponds to the destination IP address of the message, it means that the previous hop network device (the second network device) forwards the message based on an accurate forwarding table, and the forwarding path of the message is correct. If there is no entry in the port check table that the input port number of the message corresponds to the destination IP address of the message, it means that the message forwarding behavior of the previous hop network device is abnormal, because the forwarding table maintained by the previous hop network device fails, so the path of the message is wrong.

[0111] It is understandable that after the first network device determines that the forwarding path of the message is accurate, it needs to determine the next hop address of the message based on the forwarding table maintained by the first network device, and then continue to forward the message based on the next hop address, and then the next hop network device verifies the message forwarding behavior of the first network device. When the first network device determines that the path of the message is wrong, in order to avoid routing loop problems, the first network device needs to discard the message and no longer forward the message to keep other business flows unblocked and improve system availability. Then the first network device can also issue an alarm to remind the previous hop network device of abnormality.

[0112] Figure 3 A schematic diagram of a message path structure provided in an embodiment of the present application, such as Figure 3 As shown in the figure, each router has added an input interface correctness check at the message entrance to detect whether the message forwarding of the previous hop router is correct.

[0113] Taking the above figure as an example, the port check table of Router2 should identify the legal destination IP address of the service message forwarded by Router1 through Port1. When Router2 receives the service message, it needs to check the input port number of the service message and the destination IP address carried by the service message. If they match, it is considered that the service message in Router1 is forwarded correctly. If they do not match, it means that the service message forwarding of Router1 is wrong.

[0114] Specifically, the entries in the port check table are used to indicate the mapping relationship between each port and the destination IP address. The port in the entry should be able to uniquely identify a port of the network device, such as x board x port x sub-interface, and the destination IP address and mask Mask correspond to the routing prefix of the routing table.

[0115] In the embodiment of the present application, the network device maintains a port check table, which is formulated based on the routing table of the neighboring node. That is, the network device can know in advance which messages should be forwarded to the local area. When the network device receives the message forwarded by the previous hop network device, it consults the port check table according to the destination IP address carried by the message. If the port check table records the entry of the input port number of the message corresponding to the destination IP address of the message, then it means that the previous hop network device is forwarding the message based on an accurate forwarding table, and the path of the message is accurate. If the port check table does not record the entry of the input port number of the message corresponding to the destination IP address of the message, then it means that the message forwarding behavior of the previous hop network device is abnormal, and the forwarding table of the previous hop network device is wrong. This multi-node collaborative and heterogeneous inspection mechanism can timely and effectively check the network device with message forwarding errors, thereby improving the efficiency of problem location. At the same time, using the port check table to perform path verification can increase the speed of path verification and more efficiently avoid routing forwarding loop problems.

[0116] Based on the above embodiment, the process of establishing a port check table for a network device is described in detail below:

[0117] It is understandable that in order to verify the accuracy of the forwarding path of the message, the network device must formulate a port check table based on the accurate routing table of the neighboring node. Optionally, the table items of the port check table can be statically configured by the network administrator. It can also be dynamically configured by the network device. The following introduces the configuration process of the dynamic configuration of the port check table of the network device.

[0118] Figure 4 A flow chart of a method for formulating a port check list provided in an embodiment of the present application is shown as follows: Figure 4 As shown, the formulation method includes the following steps:

[0119] 401. The network device obtains a routing table of an adjacent network device.

[0120] First, the network device needs to obtain the routing table of each neighboring node. For example, the control device in the system can control each neighboring node to send a local routing table to the network device. However, since the amount of data in the routing table is too large and difficult to transmit, and once the routing table is flipped, the network device will get an incorrect routing table. Therefore, the network device can generate the routing table of each neighboring node according to the network topology relationship it has mastered.

[0121] Specifically, the network device obtains the network topology relationship, takes each neighboring node as the root node, and generates the routing table of each neighboring node. In this way, the network device uses the existing network topology information and can quickly obtain the accurate routing table of each neighboring node by simply switching the root node of the shortest path number, thereby quickly calculating the port check table. Specifically, the routing table is used to indicate the routing information of the message, wherein the routing table items include the destination IP address, mask Mask, outgoing interface out if and the next hop address, and the next hop address is the IP address of the incoming interface of the next hop network device.

[0122] 402. The network device selects a target routing table entry whose next hop address is the first network device from the routing table.

[0123] After the network device obtains the routing table of the neighboring node, it needs to filter out the next address from the routing table as its target routing table entry. It can be understood that the target routing table entry is used to indicate that the message carrying the destination IP address will be forwarded to the network device by the neighboring node. Therefore, the network device needs to establish a port check table based on the target routing table entry to verify whether the forwarding behavior is legal and the path is accurate when the message is forwarded to the network device.

[0124] 403. The network device determines the port number of the first network device corresponding to the destination routing table entry.

[0125] After the network device determines the target routing table entry, it needs to match the destination IP address in the target routing table entry with the local port. Specifically, the network device can refer to the port information, retrieve the MAC address of the local port that matches the destination IP address, and then determine the port number corresponding to each target routing table entry.

[0126] 404. The network device establishes a port check table according to the port number corresponding to the target routing table entry and the destination IP address corresponding to the target routing table entry.

[0127] Then the network device establishes a mapping relationship between the destination IP address in each target routing table entry and the port number corresponding to the target routing table entry, that is, the destination IP address and the port number are matched, and the corresponding relationship is recorded in the port check table to generate the final port check table. Exemplarily, each entry in the port check table includes a port number and a destination IP address to represent the destination IP address of the message allowed to enter the port.

[0128] It can be understood that the port check table is formulated based on the routing table of the neighboring node of the network device. That is, the network device establishes a mapping relationship between the destination IP address of the message to be forwarded to the local and the local port according to the message to be forwarded to the local. In this way, the network device can determine whether the message should be forwarded locally only based on the IP address of the message. If it is known that the message should be forwarded to the local according to the destination IP address, then the message forwarding behavior of the previous hop network device is correct and the message forwarding path is accurate. If it should not be forwarded to the local, then it can be determined that the previous hop network device is abnormal, and it can be deduced that the forwarding table of the previous hop network device is abnormal.

[0129] The following is a detailed introduction to the path verification method provided in the embodiment of the present application in conjunction with a specific application scenario.

[0130] Under the G-SRv6 protocol, messages are forwarded based on the segment identifier SID. The forwarding SID can be based on node forwarding or interface forwarding. Specifically, node-based forwarding means that the SID corresponds to a node in the network. When forwarding a message, the message needs to be forwarded to the node corresponding to the SID. The intermediate forwarding process plans the forwarding path based on the local topology calculation. Each intermediate network device needs to forward the message according to the forwarding table. Interface-based forwarding means that the source node specifies the specific interface of the specific network device. The network device directly forwards the message based on the interface specified by the strictly planned path, without querying the forwarding table.

[0131] It can be understood that the path verification method provided by the above embodiment is to determine the port check table based on the routing table of the previous-hop network device, and then use the port check table to verify whether the previous-hop network device forwards the message based on the correct forwarding table. Therefore, the premise of this path verification method is that each network device calculates the path based on the local topology and forwards the message by table lookup. Therefore, under the G-SRv6 protocol, if the previous-hop network device forwards messages based on the node, the above-mentioned path verification method can be applied to perform path detection. If the previous-hop network device forwards messages based on the interface specified by the strictly planned path, the above-mentioned path verification method cannot be applied to verify the legitimacy of the forwarding. Therefore, before performing path verification, the forwarding mechanism of the previous-hop network device must be determined first.

[0132] The following is a brief introduction to the message forwarding process under the G-SRv6 protocol:

[0133] There are two ways to store the compressed SID in the G-SRv6 message: DA storage and SRH storage. The first way is to arrange them in sequence in the IPv6 destination address DA, such as Figure 5As shown, an example of compressed SID in DA is shown. Among them, the public address segment is 4 bytes long and the compressed SID is 2 bytes long. If the current SID hits the local forwarding table, the SID is popped out, and then the remaining SID fields in DA are shifted left and overwritten, and the rightmost end of DA is filled with 0.

[0134] The second method is to store the SRH. When the SID stored in the DA is exhausted, the SID is extracted from the SRH and copied to the DA as the destination address. Figure 6 When C-SID6 is used up, the C-SID in the SRH needs to be copied to the DA to continue to guide subsequent forwarding.

[0135] Specifically, when the message is forwarded, the message is forwarded according to the address corresponding to the SID, and when forwarded to the address corresponding to the SID, the SID will be deleted. Wherein, if the message is forwarded based on the interface specified by the strictly planned path, the corresponding SID type is End.X, End.DX6, End.DX4, End.DX2, etc. At this time, the outgoing interface is specified by the source node, and the local forwarding table is not queried. According to the above description, when using the path verification method provided by the embodiment of the present application, the influence of these SID types should be removed, but when the DA storage compression SID is forwarded, End.X, etc. are deleted after use, and the next hop node cannot obtain the type of the SID corresponding to the previous hop node. Therefore, each node needs to notify the next node of its forwarding mechanism, so that the next node can determine whether to use the path verification method provided by the embodiment of the present application to perform path verification based on the forwarding mechanism of the previous node.

[0136] Specifically, during the message forwarding process, the network device needs to know the type of the segment identifier SID corresponding to the previous-hop network device, so as to determine the forwarding mechanism corresponding to the previous-hop network device. If the forwarding mechanism corresponding to the previous-hop network device is node-based forwarding, then the network device will perform path verification. However, if the previous-hop network device forwards messages based on the interface specified by the strictly planned path, then the network device will not perform path verification.

[0137] Therefore, each network device needs to pass its corresponding forwarding mechanism to the next-hop network device. The specific transmission method can be as follows:

[0138] Method 1: When a network device forwards a message to a next-hop network device, the network device may carry forwarding mechanism information in the message.

[0139] Exemplarily, the Hop By Hop extension header of IPv6 can be used to carry forwarding mechanism information. Specifically, in the Hop by Hop header, the LXF type TLV is extended. If End.X or the like is used locally as a forwarding condition, LXF is set to valid when the message is output. If End.X or the like is not used locally as a forwarding condition, LXF is set to invalid. In this way, when the next-hop network device receives the message, it needs to parse the Hop by Hop header in the message. If LXF is valid, path verification is not performed. If it is invalid, path verification is performed. It can be understood that the above method requires that each network node (network device) has the ability to parse the Hop By Hop header, and each network node needs to update the status of LXF when forwarding a message.

[0140] Method 2: Expand the SID type.

[0141] Specifically, when the source node or controller in the network arranges the TE path, it is necessary to set the type of the next SID of each End.X type SID to a special type. Exemplarily, the SID can be of LXF type. It can be understood that this type can be used to indicate that the previous SID of the SID is of End.X type. In this way, when a certain network device receives a message, it only needs to parse the type of the SID corresponding to the network device. If the type of the SID corresponding to the network device is of LXF type, it means that the previous hop network device of the network device is based on interface forwarding, and then path verification is not performed. If the type of the SID corresponding to the network device is not of LXF type, it means that the previous hop network device of the network device is based on node forwarding, and then path verification is required.

[0142] It is understandable that in the embodiments of the present application, the execution subject may execute some or all of the steps in the embodiments of the present application, and these steps or operations are only examples. The embodiments of the present application may also execute other operations or variations of various operations. In addition, the various steps may be executed in different orders presented in the embodiments of the present application, and it is possible that not all operations in the embodiments of the present application need to be executed.

[0143] It should be noted that the message names between the devices or the names of the parameters in the messages in the following embodiments of the present application are only examples, and other names may be used in the specific implementation, and the embodiments of the present application do not specifically limit this.

[0144] The embodiment of the present application provides a network device. In the embodiment of the present application, the network device can be divided into functional modules according to the above method example. For example, each functional module can be divided corresponding to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present invention is schematic and is only a logical function division. There may be other division methods in actual implementation.

[0145] In the case of dividing each functional module into corresponding functional modules, Figure 7 A possible structural diagram of the network device involved in the above embodiment is shown. Figure 7 As shown, the network device includes:

[0146] The receiving unit 701 is used to receive a message from a second network device; the message includes a destination Internet Protocol IP address;

[0147] An acquiring unit 702 is used to acquire the destination IP address of the message;

[0148] The processing unit 703 is used to perform a path check according to the destination IP address; the path check is used to indicate the correctness of the forwarding path corresponding to the message;

[0149] The determination unit 704 is configured to determine whether to forward the message according to the result of the path verification.

[0150] In an optional implementation manner, the port through which the receiving unit 701 receives the message is the first port.

[0151] The acquisition unit 702 is further configured to acquire a port check table corresponding to the first port, where the port check table is configured to record destination IP addresses of messages that the first port is allowed to receive.

[0152] The processing unit 703 is specifically configured to query the port check table according to the destination IP address and determine that the result of the path check is correct if the destination IP address of the message exists in the port check table.

[0153] In an optional implementation, the acquisition unit 702 is further configured to acquire a routing table of an adjacent network device.

[0154] The processing unit 703 is further configured to filter out at least one routing table entry whose next hop address is the first network device from the routing table, and to establish a port check table according to the at least one routing table entry.

[0155] In an optional implementation, the acquisition unit 702 is specifically configured to acquire a network topology relationship.

[0156] The processing unit 703 is further configured to generate a routing table of the adjacent network device based on the network topology relationship, taking the adjacent network device as a root node.

[0157] In an optional implementation, the determination unit 704 is specifically configured to forward the message according to the forwarding table of the first network device if the result of the path verification is correct, and discard the message if the result of the path verification is incorrect.

[0158] In an optional implementation, the determining unit 704 is further configured to determine a type of a segment identifier SID corresponding to the second network device, where the type of the segment identifier SID is used to indicate a forwarding mechanism corresponding to the second network device.

[0159] The processing unit 703 is further configured to not perform path verification if the type of the segment identifier SID corresponding to the second network device is a target type, the target type being used to instruct the second network device to forward the message according to the specified interface. If the type of the forwarding mechanism segment identifier SID corresponding to the second network device is not a target type, then perform path verification.

[0160] In an optional implementation, the message carries forwarding mechanism information, and the forwarding mechanism information indicates the type of the segment identifier SID corresponding to the second network device.

[0161] The determining unit 704 is specifically configured to determine the type of the segment identifier SID corresponding to the second network device according to the forwarding mechanism information.

[0162] The processing unit 703 is further configured to update the forwarding mechanism information according to the type of the corresponding segment identifier SID of the first network device.

[0163] In an optional implementation, the determination unit 704 is specifically configured to determine the type of the segment identifier SID corresponding to the second network device according to the type of the segment identifier SID corresponding to the network device, wherein the segment identifier SID corresponding to the network device and the segment identifier SID corresponding to the second network device are both determined by a source node of the forwarding path of the orchestration message.

[0164] In an optional implementation, the network device and the second network device are routers in a satellite network.

[0165] The various modules of the above-mentioned network device can also be used to perform other actions in the above-mentioned method embodiment. All relevant contents of each step involved in the above-mentioned method embodiment can be referred to the functional description of the corresponding functional module and will not be repeated here.

[0166] The embodiment of the present application also provides another network device. In the embodiment of the present application, the network device can be divided into functional modules according to the above method example. For example, each functional module can be divided corresponding to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present invention is schematic and is only a logical function division. There may be other division methods in actual implementation.

[0167] In the case of dividing each functional module into corresponding functional modules, Figure 8 A possible structural diagram of the network device involved in the above embodiment is shown. Figure 8 As shown, the network device includes:

[0168] The determination unit 801 is used to determine the first network device corresponding to the message according to the destination Internet Protocol IP address included in the message after receiving the message.

[0169] The sending unit 802 is configured to send a message to the first network device, so that the first network device performs a path check according to the destination IP address, wherein the path check is used to indicate the correctness of the forwarding path corresponding to the message.

[0170] In an optional implementation, the network device further includes a processing unit 803 .

[0171] The processing unit 803 is configured to update the forwarding mechanism information carried in the message according to the type of the segment identifier SID corresponding to the network device.

[0172] The sending unit 802 is specifically configured to send a message carrying forwarding mechanism information to the first network device.

[0173] In an optional implementation, the first network device and the network device are routers in a satellite network.

[0174] The various modules of the above-mentioned network device can also be used to perform other actions in the above-mentioned method embodiment. All relevant contents of each step involved in the above-mentioned method embodiment can be referred to the functional description of the corresponding functional module and will not be repeated here.

[0175] Fig. 9 It is a structural diagram of a network device provided in an embodiment of the present application. The network device 900 may include one or more central processing units (CPU) 901 and a memory 905. The memory 905 stores one or more application programs or data.

[0176] The memory 905 may be a volatile storage or a persistent storage. The program stored in the memory 905 may include one or more modules, each of which may include a series of instruction operations on the management server. Furthermore, the central processor 901 may be configured to communicate with the memory 905 and execute a series of instruction operations in the memory 905 on the network device 900.

[0177] The central processor 901 is used to execute the computer program in the memory 905, so that the network device 900 is used to receive a message from the second network device, the message including the destination Internet Protocol IP address. The destination IP address of the message is obtained, and a path check is performed according to the destination IP address. The path check is used to indicate the correctness of the forwarding path corresponding to the message. According to the result of the path check, it is determined whether to forward the message. For specific implementation methods, please refer to Figures 1 to 4 The steps performed by the first network device in the illustrated embodiment are not repeated here.

[0178] The network device 900 may also include one or more power supplies 902, one or more wired or wireless network interfaces 903, one or more input and output interfaces 904, and / or one or more operating systems, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.

[0179] The network device 900 can execute the aforementioned Figures 1 to 4 The operations performed by the first network device and the network device in the illustrated embodiment are not described in detail here.

[0180] Fig.10 It is a schematic diagram of the structure of another network device provided in an embodiment of the present application. The network device 1000 may include one or more central processing units (CPU) 1001 and a memory 1005. The memory 1005 stores one or more application programs or data.

[0181] The memory 1005 may be a volatile storage or a persistent storage. The program stored in the memory 1005 may include one or more modules, each of which may include a series of instruction operations in the network device. Furthermore, the central processor 1001 may be configured to communicate with the memory 1005 and execute a series of instruction operations in the memory 1005 on the network device 1000.

[0182] The central processor 1001 is used to execute the computer program in the memory 1005, so that the network device 1000 is used to perform: after receiving the message, determine the first network device corresponding to the message according to the destination Internet Protocol IP address included in the message. Send the message to the first network device so that the first network device performs a path check according to the destination IP address, and the path check is used to indicate the correctness of the forwarding path corresponding to the message. For specific implementation methods, please refer to Figures 1 to 4 The steps performed by the second network device and the network device in the illustrated embodiment are not repeated here.

[0183] The network device 1000 may also include one or more power supplies 1002, one or more wired or wireless network interfaces 1003, one or more input and output interfaces 1004, and / or one or more operating systems, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.

[0184] The network device 1000 can execute the aforementioned Figures 1 to 4 The operations performed by the second network device and the network device in the illustrated embodiment will not be described in detail here.

[0185] The present application also provides a computer-readable storage medium in which at least one computer program instruction is stored. The computer program instruction is loaded and executed by a processor to implement the above Figures 1 to 4 The steps performed by the first network device in the illustrated embodiment.

[0186] The present application also provides a computer-readable storage medium in which at least one computer program instruction is stored. The computer program instruction is loaded and executed by a processor to implement the above Figures 1 to 4 The steps performed by the second network device in the illustrated embodiment.

[0187] The present application also provides a computer program product, including a computer-executable instruction, which, when executed on a computer, causes the computer to execute Figures 1 to 4 Any of the methods in the embodiments shown.

[0188] The embodiment of the present application also provides a communication system, which includes a first network device and a second network device, wherein the first network device is used to perform the above Figures 1 to 4 In the embodiment shown, the first network device performs the steps, and the second network device is used as described above. Figures 1 to 4 The steps performed by the second network device in the illustrated embodiment.

[0189] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using a software program, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loading and executing computer program instructions on a computer, all or part of the processes (or functions) described in the embodiments of the present application are implemented. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium may be any available medium that a computer can access or may contain one or more servers, data centers and other data storage devices that can be integrated with the medium. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a DVD), or a semiconductor medium (eg, a solid state disk (SSD)), etc. In the embodiment of the present application, the computer may include the aforementioned device.

[0190] Although the present application is described herein in conjunction with various embodiments, in the process of implementing the claimed application, those skilled in the art may understand and implement other variations of the disclosed embodiments by viewing the drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "one" or "an" does not exclude multiple situations. A single processor or other unit may implement several functions listed in a claim. Certain measures are recorded in different dependent claims, but this does not mean that these measures cannot be combined to produce good results.

Claims

1. A method for detecting a message path, It is characterized in that The method comprises: The first network device receives a message from the second network device; the message includes a destination Internet Protocol IP address; The first network device obtains the destination IP address of the message, and performs a path check according to the destination IP address; the path check is used to indicate the correctness of the forwarding path corresponding to the message; The first network device determines whether to forward the message according to a result of the path verification.

2. The detection method according to claim 1, It is characterized in that The port of the first network device receiving the message is a first port, and the performing path verification according to the destination IP address includes: The first network device obtains a port check table corresponding to the first port; the port check table is used to record the destination IP address of the message allowed to be received by the first port; The first network device queries the port check table according to the destination IP address; If the destination IP address of the message exists in the port check table, it is determined that the result of the path check is correct.

3. The detection method according to claim 2, It is characterized in that The method further comprises: The first network device obtains a routing table of an adjacent network device; The first network device filters out from the routing table at least one routing table entry whose next hop address is the first network device; The first network device establishes the port check table according to the at least one routing table entry.

4. The detection method according to claim 3, It is characterized in that The first network device obtains a routing table of an adjacent network device, including: The first network device acquires a network topology relationship; The first network device takes the adjacent network device as a root node and generates the routing table of the adjacent network device based on the network topology relationship.

5. The detection method according to any one of claims 1 to 4, It is characterized in that The first network device determines whether to forward the message according to the result of the path verification, including: If the result of the path verification is correct, the first network device forwards the message according to the forwarding table of the first network device; If the result of the path verification is incorrect, the first network device discards the message.

6. The detection method according to claim 5, It is characterized in that The method further comprises: The first network device determines a type of a segment identifier SID corresponding to the second network device; the type of the segment identifier SID is used to indicate a forwarding mechanism corresponding to the second network device; If the type of the segment identifier SID corresponding to the second network device is a target type, the first network device does not perform the path check; the target type is used to instruct the second network device to forward the message according to the specified interface; If the type of the forwarding mechanism segment identifier SID corresponding to the second network device is not the target type, the first network device performs the path check.

7. The detection method according to claim 6, It is characterized in that The message carries forwarding mechanism information, where the forwarding mechanism information indicates a type of a segment identifier SID corresponding to the second network device, and the first network device determines a forwarding mechanism corresponding to the second network device, including: The first network device determines, according to the forwarding mechanism information, a type of a segment identifier SID corresponding to the second network device; The method further comprises: The first network device updates the forwarding mechanism information according to a type of a segment identifier SID corresponding to the first network device.

8. The detection method according to claim 6, It is characterized in that The first network device determines the type of the segment identifier SID corresponding to the second network device, including: The first network device determines the type of the segment identifier SID corresponding to the second network device according to the type of the segment identifier SID corresponding to the first network device; wherein the segment identifier SID corresponding to the first network device and the segment identifier SID corresponding to the second network device are both determined by the source node that arranges the forwarding path of the message.

9. The detection method according to any one of claims 1 to 8, It is characterized in that The first network device and the second network device are routers in a satellite network.

10. A method for detecting a message path, It is characterized in that The method comprises: After receiving the message, the second network device determines the first network device corresponding to the message according to the destination Internet Protocol IP address included in the message; The second network device sends the message to the first network device, so that the first network device performs a path check according to the destination IP address; the path check is used to indicate the correctness of the forwarding path corresponding to the message.

11. The detection method according to claim 10, It is characterized in that The method further comprises: The second network device updates the forwarding mechanism information carried by the message according to the type of the segment identifier SID corresponding to the second network device; The second network device sending the message to the first network device includes: The second network device sends the message carrying the forwarding mechanism information to the first network device.

12. The detection method according to any one of claims 10 to 11, It is characterized in that The first network device and the second network device are routers in a satellite network.

13. A network device, It is characterized in that The network equipment includes: A receiving unit, configured to receive a message from a second network device; the message includes a destination Internet Protocol IP address; An acquiring unit, used for acquiring the destination IP address of the message; A processing unit, configured to perform a path check according to the destination IP address; the path check is used to indicate the correctness of the forwarding path corresponding to the message; A determination unit is used to determine whether to forward the message according to the result of the path verification.

14. The network device according to claim 13, It is characterized in that The port through which the receiving unit receives the message is a first port; The acquisition unit is further used to acquire a port check table corresponding to the first port; the port check table is used to record the destination IP addresses of the messages allowed to be received by the first port; The processing unit is specifically used to query the port check table according to the destination IP address; If the destination IP address of the message exists in the port check table, it is determined that the result of the path check is correct.

15. The network device according to claim 14, It is characterized in that The acquisition unit is further used to acquire a routing table of an adjacent network device; The processing unit is further configured to filter out from the routing table at least one routing table entry whose next hop address is the first network device; and to establish the port check table according to the at least one routing table entry.

16. The network device according to claim 15, It is characterized in that The acquisition unit is specifically used to acquire the network topology relationship; The processing unit is further configured to generate the routing table of the adjacent network device based on the network topology relationship, taking the adjacent network device as a root node.

17. The network device according to any one of claims 13 to 16, It is characterized in that The determining unit is specifically configured to forward the message according to the routing table of the first network device if the result of the path verification is correct; and discard the message if the result of the path verification is incorrect.

18. The network device according to claim 17, It is characterized in that The determining unit is further used to determine a type of a segment identifier SID corresponding to the second network device; the type of the segment identifier SID is used to indicate a forwarding mechanism corresponding to the second network device; The processing unit is further configured to not perform the path check if the type of the segment identifier SID corresponding to the second network device is a target type; the target type is used to instruct the second network device to forward the message according to the specified interface; If the type of the forwarding mechanism segment identifier SID corresponding to the second network device is not the target type, the path check is performed.

19. The network device according to claim 18, It is characterized in that The message carries forwarding mechanism information, where the forwarding mechanism information indicates a type of a segment identifier SID corresponding to the second network device; The determining unit is specifically configured to determine a type of a segment identifier SID corresponding to the second network device according to the forwarding mechanism information; The processing unit is further configured to update the forwarding mechanism information according to a type of a segment identifier SID corresponding to the first network device.

20. The network device according to claim 18, It is characterized in that The determination unit is specifically used to determine the type of the segment identifier SID corresponding to the second network device according to the type of the segment identifier SID corresponding to the network device; wherein the segment identifier SID corresponding to the network device and the segment identifier SID corresponding to the second network device are both determined by the source node that arranges the forwarding path of the message.

21. The network device according to any one of claims 13 to 20, It is characterized in that The network device and the second network device are routers in a satellite network.

22. A network device, It is characterized in that The network equipment includes: a determining unit, configured to determine, after receiving the message, a first network device corresponding to the message according to a destination Internet Protocol IP address included in the message; A sending unit is used to send the message to the first network device; so that the first network device performs a path check according to the destination IP address; the path check is used to indicate the correctness of the forwarding path corresponding to the message.

23. The network device according to claim 22, It is characterized in that The network device also includes a processing unit; The processing unit is used to update the forwarding mechanism information carried by the message according to the type of the segment identifier SID corresponding to the network device; The sending unit is specifically configured to send the message carrying the forwarding mechanism information to the first network device.

24. The network device according to any one of claims 22 to 23, It is characterized in that The first network device and the network device are routers in a satellite network.

25. A network device, It is characterized in that The network device includes a processor and a memory; the processor is coupled to the memory; the memory is used to store computer instructions, and the computer instructions are loaded and executed by the processor to enable the network device to implement the method as described in any one of claims 1-9.

26. A network device, It is characterized in that The network device comprises a processor and a memory; the processor is coupled to the memory; the memory is used to store computer instructions, and the computer instructions are loaded and executed by the processor to enable the network device to implement the method according to any one of claims 10-12.

27. A computer-readable storage medium, It is characterized in that The computer-readable storage medium stores at least one computer program instruction, and the computer program instruction is loaded and executed by a processor to implement the method according to any one of claims 1 to 12.

28. A communication system, It is characterized in that The communication system comprises a first network device and a second network device, wherein the first network device is used to execute the method according to any one of claims 1 to 9, and the second network device is used to execute the method according to any one of claims 10 to 12.