Routing processing method and related device
By identifying unreachable devices within the fault area and removing their basic routes, the problem of slow route convergence during network device failures is solved, achieving rapid convergence and normal forwarding of service flows.
Patent Information
- Application Number
- PCT/CN2025/096493
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-28
- Filing Date
- 2025-05-22
- Publication Date
- 2025-12-04
AI Technical Summary
In networks running the Border Gateway Protocol, when network devices fail, the probability of link failure within the routing domain is high, leading to increased network device flooding and routing computation pressure, and slow routing convergence speed.
By identifying unreachable network devices within the fault area, the basic routes for these unreachable devices are canceled and notified to network devices outside the fault area. This reduces the number of notification messages, avoids routing loops, and improves convergence speed.
It reduces the number of announcement messages in the network, avoids the formation of routing loops, improves network convergence speed and device computing pressure, and ensures the normal forwarding of service flows.
Smart Images

Figure CN2025096493_04122025_PF_FP_ABST
Abstract
Description
Routing methods and related equipment
[0001] This application claims priority to Chinese patent application filed on May 28, 2024, with application number 202410678346.0 and entitled "Routing Processing Method and Related Equipment", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of network technology, and in particular to a routing processing method and related equipment. Background Technology
[0003] In a network running Border Gateway Protocol (BGP), each network device only advertises its local best route to its neighbors. When a network device detects a link failure, it encapsulates the failure into a Link State Advertisement (LSA) message and floods it throughout the routing domain. Upon receiving the LSA, network devices in the routing domain update their network topology and recalculate and generate their routing tables.
[0004] When there are many nodes and links within a routing domain, the probability of link failure is high, exacerbating flooding and routing computation pressure on network devices within the domain. Furthermore, network devices along the fault propagation path need to perform rollback processing on every affected BGP route. Due to the large number of BGP routes in the network devices, the route rollback process takes a considerable amount of time, resulting in slow network route convergence. Summary of the Invention
[0005] This application provides a routing processing method and related equipment to improve network convergence speed when a network failure occurs.
[0006] Firstly, this application provides a routing processing method. The method includes: a first network device determining that a second network device is unreachable; the first and second network devices belong to the same fault area, the fault area includes the faulty device and multiple network devices, which are reachable from each other; the first network device is one of the multiple network devices; the first network device sends a first routing advertisement message to a third network device, the first routing advertisement message instructing the third network device to revoke the base route among the multiple routes corresponding to the second network device; the third network device is a network device outside the fault area. When a faulty device appears in the network, a fault area is formed including the faulty device. Network devices outside the fault area only revoke the base route of the unreachable network device, not all routes, which reduces the number of advertisement messages in the network and improves the convergence speed. Furthermore, network devices outside the fault area revoke the base route of the unreachable network device without sending user packets to the unreachable network device, thus avoiding the formation of routing loops.
[0007] In one possible implementation, the second network device is a network device that the user's service flow must pass through. When the second network device is unreachable and is a network device that the user's service flow must pass through, the first network device instructs network devices outside the fault area to revoke the basic route of the second network device, thereby reducing the number of basic routes that need to be revoked, further reducing the number of announcement messages in the network, and improving the convergence speed.
[0008] In one possible implementation, before the first network device determines that the second network device is unreachable, the method further includes: the first network device receiving a second routing advertisement message from the second network device, the second routing advertisement message indicating that the second network device is a network device that the user's service flow must pass through. Before the second network device becomes unreachable, the second network device has advertised to other network devices in the network that the second network device is a network device that the user's service flow must pass through, thereby enabling the first network device to determine that the second network device is a network device that the user's service flow must pass through.
[0009] In one possible implementation, the second route advertisement message includes target attribute information, which indicates that the second network device is a network device that the user service flow must pass through.
[0010] In one possible implementation, after the first network device sends a basic route advertisement message, the method further includes: the first network device receiving a third route advertisement message, the third route advertisement message including the basic route of the second network device; the first network device sending a fourth route advertisement message to the third network device, the fourth route advertisement message including the basic route of the second network device, to activate at least one service route corresponding to the second network device, and the multiple routes corresponding to the second network device include at least one service route. After the second network device recovers, it sends a third route advertisement message including the basic route of the second network device to its neighboring network devices. After receiving the third route advertisement message, the first network device continues to send fourth route advertisement messages including the basic route of the second network device to other network devices, thereby enabling network devices in the network to store the basic route of the second network device and activate the service route corresponding to the second network device, so that other network devices can forward user service flows destined for the second network device according to the basic route and service route of the second network device.
[0011] In one possible implementation, the second network device is a faulty device, or the second network device is a network device that is unreachable from the first network device due to the faulty device.
[0012] Secondly, this application provides a routing processing apparatus. The routing processing apparatus is applied to a first network device. The routing processing apparatus includes a processing module and a transceiver module. The processing module is used to determine that a second network device is unreachable, and that the first and second network devices belong to the same fault area. The fault area includes the faulty device and multiple network devices, which are reachable from each other. The first network device is one of the multiple network devices. The transceiver module is used to send a first routing advertisement message to a third network device. The first routing advertisement message instructs the third network device to cancel the basic route among the multiple routes corresponding to the second network device. The third network device is a network device outside the fault area.
[0013] In one possible implementation, the second network device is the network device that the user's service flow must pass through.
[0014] In one possible implementation, the transceiver module is used to receive a second routing advertisement message from a second network device, the second routing advertisement message indicating that the second network device is a network device that the user service flow must pass through.
[0015] In one possible implementation, the second route advertisement message includes target attribute information, which indicates that the second network device is a network device that the user service flow must pass through.
[0016] In one possible implementation, the transceiver module is configured to receive a third routing advertisement message, which includes the basic routes of the second network device. The transceiver module is also configured to send a fourth routing advertisement message to the third network device, which includes the basic routes of the second network device, to activate at least one service route corresponding to the second network device. The multiple routes corresponding to the second network device include at least one service route.
[0017] In one possible implementation, the second network device is a faulty device, or the second network device is a network device that is unreachable from the first network device due to the faulty device.
[0018] Thirdly, this application provides a network device, characterized in that the network device includes a processor and a memory, the processor being coupled to the memory, and the processor being configured to execute the routing processing method in the first aspect or any possible implementation of the first aspect based on instructions stored in the memory.
[0019] Fourthly, this application provides a computer-readable storage medium. The computer-readable storage medium includes instructions that, when executed on a computer, cause the computer to perform the routing processing method of the first aspect or any possible implementation thereof.
[0020] Fifthly, this application provides a computer program product that, when run on a network device, causes the network device to execute the routing processing method in the first aspect or any possible implementation of the first aspect. Attached Figure Description
[0021] Figure 1 is a schematic diagram of a network topology provided in an embodiment of this application;
[0022] Figure 2 is a schematic diagram of a network loop formed in a fault region according to an embodiment of this application;
[0023] Figure 3 is a network topology diagram of a network provided in an embodiment of this application;
[0024] Figure 4a is a schematic diagram of a network failure scenario provided in an embodiment of this application;
[0025] Figure 4b is a schematic diagram of a network failure scenario provided in an embodiment of this application;
[0026] Figure 4c is a schematic diagram of a network failure scenario provided in an embodiment of this application;
[0027] Figure 4d is a schematic diagram of a network failure scenario provided in an embodiment of this application;
[0028] Figure 5 is a schematic diagram of the structure of an extended BGP message provided in an embodiment of this application;
[0029] Figure 6 is a flowchart illustrating a routing method provided in an embodiment of this application;
[0030] Figure 7 is an interactive schematic diagram of a routing processing method provided in an embodiment of this application;
[0031] Figure 8 is a schematic diagram of a network failure scenario provided in an embodiment of this application;
[0032] Figure 9 is a schematic diagram of a routing processing device provided in an embodiment of this application;
[0033] Figure 10 is a schematic diagram of the structure of a network device provided in an embodiment of this application. Detailed Implementation
[0034] The embodiments of this application are described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. As those skilled in the art will recognize, with the development of technology and the emergence of new scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.
[0035] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. "A plurality of" means two or more.
[0036] The term “exemplary” as used herein means “serving as an example, embodiment, or illustration.” Any embodiment illustrated herein as “exemplary” is not necessarily to be construed as superior to or better than other embodiments.
[0037] First, let's explain the technical terms used in this application:
[0038] Basic routes can be understood as reachability routes for network devices. For example, if a basic route for a network device is valid, it indicates that the network device is reachable. If a basic route for a network device is withdrawn, it indicates that the network device is unreachable. The route prefix of a basic route advertised by a network device can be the device identifier (router ID) of that network device. The device identifier of a network device can be the IP address of its loopback interface, or it can be other identifiers configured for that network device; there are no restrictions here. If a route advertised by a network device is a basic route, it can carry indication information indicating that the route is a basic route, so that the network device receiving the route can determine that the route is a basic route based on this indication information.
[0039] Service routing, also known as hierarchical routing, is a route used to guide the forwarding of user service flows. Service routes may include routes learned from external BGP neighbors. The convergence priority of basic routes is higher than that of service routes. Service routes depend on basic routes; that is, when basic routes converge, service routes converge accordingly. Specifically, the routing prefix of a basic route can be used as the next hop of a service route, making the service route dependent on the basic route. If a route advertised by a network device is a service route, it can carry indication information indicating that the route is a service route, as well as the routing prefix of the basic route it depends on. This allows the network device receiving the route to determine that it is a service route and the basic route it depends on. Therefore, when generating the routing table entry for a service route, the next hop of the service route in the routing table entry can be set to the routing prefix of the basic route that the service route depends on. Thus, when the basic route is valid, the corresponding service route is also valid; when the basic route fails, the corresponding service route also fails. In other words, service routes can rely on the convergence result of the basic route, achieving rapid convergence.
[0040] For example, as shown in Figure 1, network device A and network device B are BGP peers. Network device A advertises a basic route 1.1.1.1 / 32 and a service route 2.2.2.2 / 32 to network device B. The service route advertised by network device A includes the route prefix 1.1.1.1 / 32 of the basic route that the service route depends on, so network device B can determine that the basic route that the service route 2.2.2.2 / 32 depends on is a route with the prefix 1.1.1.1 / 32.
[0041] Then network device B generates routing table entries corresponding to the basic route of network device A (as shown in Table 1), and routing table entries corresponding to the service route of network device A (as shown in Table 2). In Table 2, the next hop of the service route of network device A is the routing prefix 1.1.1.1 / 32 of the basic route of network device A.
[0042] Table 1. Routing table entries corresponding to the basic route of network device A
[0043] Table 2. Routing table entries corresponding to service routes of network device A
[0044] Fault Zone: A connected domain within the network, including the faulty link, calculated based on link fault state information. Link state information is flooded within the fault zone. Network devices within the fault zone that are not experiencing a fault recalculate routes based on the link state information and forward user traffic based on the recalculated routes. Nodes outside the fault zone are unaware of the link fault and continue to use the original routes to forward user traffic.
[0045] Dividing the network into fault zones can potentially lead to routing loops. As shown in Figure 2, both R7 and R20 are connected to the server. R7→server is the primary path, and R20→server is the backup path. When R7 is functioning normally, it forwards user service flows from user terminals to the server. When all four communication links of R7 fail (or R7 itself fails), making R7 unreachable from other network devices, R2, R3, R4, R6, R7, R8, R10, R11, and R12 form a fault domain. The four failed links flood within the fault domain, and nodes within the fault domain recalculate routes. During the fault domain's existence, R6 and R10, within the fault domain, detect the disconnection of R7 and expect to forward user packets along the path R6→R10→R14→R15→R16→R20→server. Therefore, R10 forwards the user packets to R14. R14, outside the fault domain, does not detect the R7 disconnection and expects to forward user packets along the path R14→R10→R6→R7→server. Therefore, R14 forwards the user packets to R10. After receiving the user packets forwarded by R14, R10 forwards the same user packets back to R14. This cycle continues, causing a loop in the forwarding of user packets between R10 and R14, resulting in traffic loss.
[0046] To address the aforementioned technical problems, this application provides the following embodiments. In summary, when unreachability between network devices is detected, a fault area is first determined, encompassing all unreachable network devices. Network devices outside the fault area are then notified of the cancellation of basic routes for the unreachable network devices. The basic routes for the unreachable network devices are those advertised by the unreachable network devices before they became unreachable. Therefore, network devices outside the fault area canceling the basic routes for the unreachable network devices do not send user packets to them, thus avoiding routing loops. Furthermore, since network devices outside the fault area only cancel the basic routes for the unreachable network devices, rather than all routes, the number of notification messages in the network is reduced, improving convergence speed.
[0047] Figure 3 illustrates a network scenario. It includes multiple network devices connected to form a network. The network described in this application can be a carrier network, a data center network, a satellite network, etc.
[0048] When a network device malfunctions and becomes unable to function, its neighboring devices perceive that the malfunctioning device is unreachable and define a fault area that includes the unreachable network devices. The fault area includes at least one first target network device and network devices that are unreachable from the first target network device. The at least one first target network device includes neighboring network devices of the malfunctioning device. When the fault area includes multiple first target network devices, these devices are reachable from each other. Within the fault area, the multiple first target network devices advertise the malfunctioning device information to each other, update the network topology, and recalculate routes. Each first target network device sends a first route advertisement message to network devices outside the fault area. The first route advertisement message instructs network devices outside the fault area to revoke the basic routes for the unreachable network devices of the first target network devices.
[0049] In this embodiment, after a fault zone is formed, the first target network device in the fault zone sends a route advertisement message to network devices outside the fault zone, instructing them to revoke the basic routes of unreachable network devices in the fault zone. Therefore, network devices outside the fault zone will not forward user service flows to unreachable network devices in the fault zone, avoiding the formation of routing loops and resulting traffic loss. Furthermore, since network devices outside the fault zone only revoke the basic routes of unreachable network devices, the number of routes to be revoked is small, and there is no need to recalculate the network topology, resulting in fast network convergence and low computational burden on network devices.
[0050] The network devices unreachable by the first target network device include faulty network devices. In one possible scenario, the first target network device becomes unreachable from other network devices because of a faulty network device; therefore, the network devices unreachable by the first target network device can also include those unreachable due to the faulty network device itself. In topology segmentation scenarios, where a faulty network device segments the network topology into at least two disconnected network topologies, the faulty network device causes the first target network device to become unreachable from other network devices. For example, multiple faulty network devices exist in the network, forming an enclosing structure that surrounds one or more normal network devices, with the network devices inside the enclosing structure not connected to the network devices outside the enclosing structure. Alternatively, multiple faulty network devices form a dividing line, with the network devices on either side of the dividing line not connected to each other. When a faulty network device does not segment the network topology into disconnected network topologies, the network devices unreachable by the first target network device only include the faulty network device.
[0051] For example, as shown in Figure 4a, R9, R10, R11, R15, R17, R21, R22, and R23 are faulty network devices, while the other network devices are functional. R9, R10, R11, R15, R17, R21, R22, and R23 enclose and isolate R16, dividing the network into two disconnected parts. That is, R16 is unreachable from other network devices in the network due to the faulty network device. For network devices other than R9, R10, R11, R15, R17, R21, R22, and R23, R16 is unreachable. Therefore, the set of network devices that are unreachable by the first target network device (R3 / R4 / R5 / R8 / R12 / R14 / R18 / R20 / R24 / R27 / R28 / R29) includes R9, R10, R11, R15, R16, R17, R21, R22, and R23. For example, as shown in Figure 4b, R5, R11, and R12 are faulty network devices, while the other network devices are functional. R5, R11, and R12 enclose and isolate R6 from the other network devices in the network, dividing the network into two disconnected parts; that is, R6 is unreachable from the other network devices in the network due to the faulty network device. The set of network devices that are unreachable by the first target network device (R4 / R10 / R17 / R18) includes R5, R6, R11, and R12. As shown in Figure 4c, R3, R9, and R15 are faulty network devices, while the other network devices are functional. R3, R9, and R15 divide the network into two disconnected parts. In Figure 4c, the network devices to the left of R3-R9-R15 are unreachable from the network devices to the right of R3-R9-R15. Therefore, for the first target network device (R2 / R8 / R14) to the left of R3-R9-R15, the set of unreachable network devices includes R3-R6, R9-R12, and R15-R18. For the first target network device (R4 / R10 / R16) to the right of R3-R9-R15, the set of unreachable network devices includes R1-R3, R7-R9, and R13-R15. As shown in Figure 4d, R15 is a faulty network device, while the other network devices are functional. The unreachable network device for the first target network device (R9 / R10 / R14 / R16 / R21) is R15. It should be noted that the network topologies shown in Figures 4a-4d are for the purpose of clearly and concisely depicting the topology segmentation scenario. The network topologies and the number of network devices shown in Figures 4a-4d are only examples and should not be construed as limitations on this application.
[0052] When the first target network device detects a change in the link status from up to down with its neighboring network devices, it identifies unreachable network devices in the network to obtain a set of unreachable network devices. Based on the network topology and the set of unreachable network devices, the first target network device determines the fault area. The first target network device can detect the link status with its neighboring network devices using Bidirectional Forwarding Detection (BFD), Link Layer Discovery Protocol (LLDP), or Neighbor Discovery Protocol (NDP). The link between the first target network device and its neighboring network devices can be a directly connected link or a non-directly connected link; there is no restriction on this.
[0053] The link status between the first target network device and its neighboring network devices changes from "up" to "down". One possible reason is a link failure, and another is a failure of the neighboring network devices. If the link between the first target network device and its neighboring network devices is faulty, the first target network device and its neighboring network devices may still be reachable. If the first target network device and its neighboring network devices are unreachable, one possibility is that the neighboring network devices are faulty, and another possibility is that all directly connected links of the first target network device's neighboring network devices are faulty. Unreachable neighboring network devices of the first target network device may cause routing loop problems between devices in the faulty area. Therefore, in this embodiment, when the first target network device detects that the link status with its neighboring network has changed to "down", it further obtains a set of unreachable network devices.
[0054] The first target network device can obtain the set of unreachable network devices in the network based on the faulty link and the original network topology. Specifically, based on the faulty link and the original network topology, an updated network topology is obtained, which does not include the faulty link. Starting from itself, the first target network device uses a depth-first search (DFS) or breadth-first search (BFS) method to determine the set of network devices reachable from the first target network device in the updated network topology. Based on the original network topology and the set of reachable network devices, the set of unreachable network devices is obtained. The set of unreachable network devices includes network devices in the original network topology that are not reachable from the first target network device. If the set of unreachable network devices includes neighboring network devices of the first target network device, the first target network device determines the fault area.
[0055] When multiple first target network devices exist in the fault area, and these devices are not connected, the fault area may also include second target network devices that enable communication between the first target network devices, such as R2, R6, R26, and R30 in Figure 4a, R16 in Figure 4b, and R8, R10, R20, and R22 in Figure 4d. This allows the multiple first target network devices to communicate faulty device information to each other.
[0056] After receiving an announcement message instructing the removal of the basic route for the unreachable network device, network devices outside the fault area remove the basic route for the unreachable network device. Thus, network devices outside the fault area can forward user traffic via backup paths or forward user traffic to the backup network device of the unreachable network device.
[0057] When network devices advertise routes, they include either a first label or a second label. The first label indicates that the route is a base route. The second label indicates that the route is a service route. Thus, other network devices can determine whether a route is a base route or a service route based on the first or second label in the route. When a route is a service route, it also includes the base routes that the service route depends on. For example, a service route includes the route prefix of the dependent base routes. Therefore, network devices can associate the base routes and service routes of the route advertiser.
[0058] Optionally, after obtaining the set of unreachable network devices, the first target network device determines whether the set of unreachable network devices includes a third target network device. If the set of unreachable network devices includes a third target network device, the first target network device sends an announcement message to network devices outside the fault area to cancel the basic route of the third target network device. Canceling only the third target network device among the unreachable network devices can further reduce the number of basic routes that need to be canceled, thereby further reducing the amount of flooded messages in the network and improving network convergence efficiency.
[0059] In this context, the third target network device is the network device that the user's service flow must pass through. In one possible implementation, the third target network device can be the entry or exit point of the user's service flow. For example, the third target network device could be a Provider Edge (PE) network device or a Content Delivery Network (CDN) caching server. In another possible implementation, the third target network device is a forwarding node that the user's service flow must pass through in the forwarding path. For example, the third target network device could be the tail node of a tunnel or a forwarding node specified in the forwarding path. The tunnel can be a Virtual Local Area Network (VLAN) tunnel, a Virtual Extensible Local Area Network (VXLAN) tunnel, a Multi-Protocol Label Switching (MPLS) tunnel, a General Routing Encapsulation (GRE) tunnel, or a Virtual Private Network (VPN), etc. The forwarding node specified in the forwarding path is a forwarding node in the path controlled by Traffic Engineering (TE) technology. Traffic engineering techniques include Segment Routing Traffic Engineering (SR-TE), MPLS-TE, or Resource Reservation Protocol-Traffic Engineering (RSVP-TE), which is an extension of traffic engineering.
[0060] In satellite networks, the third-target network device can be a landing satellite. A landing satellite is a satellite connected to a ground station, and it is the last satellite node that leaves the satellite network and is forwarded to the ground station during data transmission. The ground station is used to forward signaling and user service data between the landing satellite and the satellite-to-ground gateway device. The third-target network device can also be a satellite-to-ground gateway device.
[0061] In this embodiment, the user service flow refers to user data transmitted in the network. The user service flow does not include signaling flows in the network (such as protocol messages used to establish, maintain, and release connections between network devices). The user service flow can be data streams such as video, audio, images, files, emails, and web pages.
[0062] Optionally, before the failure, the third target network device had sent a second route advertisement message to other network devices in the network. The second route advertisement message indicates that the third target network device is a node that the user's service flow must traverse. The second route advertisement message may include, for example, target attribute information indicating that the publisher of the second route advertisement message is a node that the user's service flow must traverse. Before the failure, the third target network device had also sent a fifth route advertisement message to other network devices in the network. The fifth route advertisement message includes the basic route of the third target network device. Optionally, the second route advertisement message and the fifth route advertisement message can be the same message or different messages; this is not limited here.
[0063] Optionally, a target attribute can be added to the BGP message by extending the BGP message. The target attribute carries target attribute information. As shown in Figure 5, the target attribute added to the BGP message is a type-length-value (TLV). The target attribute information carried by the target attribute indicates that the corresponding network device is a node that the user service flow must pass through.
[0064] Of course, the third target network device may also choose not to send a second route advertisement message to other network devices, in order to inform other network devices that the third target network device is a node that user service flows must pass through. For example, the configuration files of each network device can also indicate which network devices in the network are nodes that user service flows must pass through.
[0065] Therefore, the first target network device obtains information about the third target network device as a node that the user service flow must pass through based on the second route advertisement message, and records this information. Thus, when the fault domain includes the third target network device, it can determine that the third target network device is a network device that the user service flow must pass through, and then cancel the basic route of the third target network device, further reducing the number of routes that need to be canceled, reducing the number of flooded messages, and improving the convergence speed.
[0066] As shown in Figure 6, Figure 6 is a schematic flowchart of a routing processing method provided in an embodiment of this application. This embodiment includes the following steps:
[0067] S601: The first network device determines that the second network device is unreachable. The first network device and the second network device belong to the same fault area. The fault area includes the faulty device and multiple network devices. The multiple network devices are reachable from each other. The first network device is one of the multiple network devices.
[0068] The first network device is the aforementioned first target network device, i.e., a neighboring network device of the faulty device in the fault area. The second network device is an unreachable device of the first network device. In one possible scenario, the second network device is the faulty device. In another possible scenario, the second network device is a network device that is unreachable from the first network device due to the faulty device.
[0069] The method for determining the fault area can be found in the relevant description above, so it will not be repeated here.
[0070] S602: The first network device sends a first route advertisement message to the third network device. The first route advertisement message instructs the third network device to cancel the basic route among the multiple routes corresponding to the second network device. The third network device is a network device outside the fault area.
[0071] Among them, the multiple routes corresponding to the second network device are the routes published by the second network device before it became unreachable, and the multiple routes published by the second network device include basic routes.
[0072] The first network device sends a first route advertisement message to a third network device outside the fault area, instructing the third network device to revoke the base route among the multiple routes corresponding to the second network device. This allows network devices outside the fault area to detect that the second network device is unreachable and prevents them from forwarding user traffic to it, thus avoiding routing loops. Furthermore, revoking only the base route of the second network device reduces the amount of flooding messages and eliminates the need for network devices outside the fault area to recalculate the network topology, reducing the routing calculation burden on these devices.
[0073] Optionally, when the first network device determines that the second network device is a network device that the user's service flow must pass through, it sends a first route advertisement message to the third network device, thereby further reducing the number of advertisement messages in the network and accelerating the network convergence speed. Network devices that the user's service flow must pass through include, for example, PE (Preinstallation Equipment), CDN cache servers, landing satellites, tunnel tail nodes, or network nodes specified by segment routes.
[0074] Optionally, if no basic route advertised by the second network device is received after a preset time period following the third network device's removal of the second network device, it indicates that the second network device is still in a faulty state, and the service route corresponding to the second network device can be removed. If a basic route advertised by the second network device is received within the preset time period following the third network device's removal of the second network device, the third network device can activate the service route corresponding to the third network device based on the basic route, without needing the third network device to re-advertise the service route, thus improving network convergence efficiency.
[0075] As shown in Figure 7, Figure 7 is a schematic diagram of the interaction flow of a routing processing method provided in an embodiment of this application. This embodiment describes the interaction process between network devices using the example of a second network device and a first network device as neighboring devices. This embodiment includes the following steps:
[0076] S701: The second network device sends a fifth route advertisement message to the first network device. The fifth route advertisement message includes the basic route of the second network device.
[0077] Before the second network device fails, it sends a fifth route advertisement message to its neighboring network devices (including the first network device) to advertise its basic route. In this embodiment, the basic route of the second network device is the basic route advertised by the second network device, and the route prefix of the basic route is the device identifier of the second network device. Accordingly, the first network device receives the fifth route advertisement message. Then, the first network device executes S702.
[0078] S702: The first network device sends a sixth route advertisement message to the third network device. The sixth route advertisement message includes the basic route of the second network device.
[0079] Accordingly, the third network device receives the sixth route advertisement message.
[0080] After obtaining the basic route of the second network device through the fifth route advertisement message, the first network device sends a sixth route advertisement message to all neighboring devices (including the third network device) to advertise the basic route of the second network device. Thus, both the first and third network devices store the basic route of the second network device.
[0081] S703: The second network device sends a second route advertisement message to the first network device. The second route advertisement message indicates that the second network device is a network device that the user service flow must pass through.
[0082] Accordingly, the first network device receives the second routing advertisement message.
[0083] Before the second network device fails, it also sends a second route advertisement message to its neighboring network devices (including the first network device) to announce that the second network device is a network device that user service flows must pass through. Therefore, when the first network device determines that the second network device is unreachable and that the second network device is a network device that user service flows must pass through, it executes S704.
[0084] There is no specific order between S703 and S701. For example, S701 can be executed before S703, or S703 can be executed before S701. Alternatively, S703 and S701 can be executed simultaneously, meaning the second route advertisement message and the fifth route advertisement message are the same message.
[0085] It should be noted that S703 is an optional step. In this embodiment, the optional step is indicated by dashed lines in Figure 7.
[0086] S704: The first network device determines that the second network device is unreachable and identifies the fault area.
[0087] After the first network device determines that the second network device is unreachable, the fault area is determined. The fault area includes both the first and second network devices. This step can be found in S601, so it will not be described again here.
[0088] S705: The first network device sends a first route advertisement message to the third network device, which instructs the third network device to cancel the basic route among the multiple routes corresponding to the second network device.
[0089] This step can be found in S602, so it will not be repeated here.
[0090] Optionally, if the second network device subsequently recovers, the following steps may also be included:
[0091] S706: The second network device sends a third route advertisement message to the first network device. The third route advertisement message includes the basic route of the second network device.
[0092] Accordingly, the first network device receives the third route advertisement message. Then, the first network device executes S707.
[0093] S707: The first network device sends a fourth route advertisement message to the third network device. The fourth route advertisement message includes the basic route of the second network device.
[0094] Accordingly, the third network device receives the fourth routing advertisement message.
[0095] In one possible implementation, after receiving the fourth routing message, the third network device can activate at least one service route corresponding to the second network device. The multiple routes corresponding to the second network device include at least one service route. Therefore, the third network device can forward user service flows to the second network device based on the basic route and at least one service route corresponding to the second network device, without requiring the second network device to redistribute service routes. This reduces network flooding and improves network convergence speed.
[0096] Optionally, the third network device is configured with a preset duration for canceling service routes. The third network device will not cancel the second network device's service routes within the preset duration after canceling the second network device's basic routes. If no basic route from the second network device is received within the preset duration after canceling the second network device's basic routes, the corresponding service routes for the second network device will be canceled to save storage space. If a basic route from the second network device is received within the preset duration after canceling the second network device's basic routes, the corresponding service routes for the second network device will be activated to improve network convergence speed.
[0097] To make the technical solution of this application easier to understand, the technical solution of this application is described below in conjunction with a specific scenario. As shown in Figure 8, Figure 8 uses a satellite network as an example for illustration. The satellite network includes an inter-satellite network, ground stations, and satellite-to-ground gateway devices (R0-1). The inter-satellite network includes multiple satellites, such as S1-1, S1-2, S1-3, S2-1, S2-2, S2-3, S3-1, S3-2, and S3-3. Each satellite can be regarded as a network device. The inter-satellite network includes at least one grounding satellite, such as S1-3 and S3-3 in Figure 8. S1-3 and S3-3 respectively announce in the inter-satellite network that they are network devices that user service flows must pass through. Furthermore, S1-3 and S3-3 respectively announce their basic routes in the inter-satellite network.
[0098] When a landing satellite, such as node S1-3, fails, S1-2, S2-2, and S2-3 form a fault area. If S1-2 and S2-3 determine that node S1-3 is unreachable using methods such as DFS or BFS, and S1-3 is a network device that user service flows must pass through, then S1-2 and S2-3 send a notification message to satellites outside the fault area instructing them to cancel the basic route of S1-3.
[0099] After receiving an announcement message instructing S1-3 to revoke its basic route, S1-1 revokes the basic route for S1-3. Consequently, the path S1-1->S1-3->R0-1 associated with S1-3 (only the nodes that user traffic must pass through in this path are listed here) also becomes invalid. S1-1 then updates the path to R0-1 to S1-1->S3-3->R0-1 (only the nodes that user traffic must pass through in this path are listed here). This prevents user traffic destined for S1-3 from forming routing loops between devices in the fault area and those outside the fault area. Furthermore, revoking the basic route for S1-3 reduces the flooding of announcement messages in the network and eliminates the need for network devices outside the fault area to recalculate the network topology and routes, thus reducing routing calculation pressure and enabling faster convergence of service paths.
[0100] Based on the same inventive concept, this application also provides the following device embodiments. As shown in FIG9, FIG9 is a schematic diagram of the structure of a routing processing device provided in an embodiment of this application. The routing processing device 900 is applied to a first network device. The routing processing device 900 includes a processing module 901 and a transceiver module 902.
[0101] The processing module 901 is used to determine that the second network device is unreachable, the first network device and the second network device belong to the same fault area, the fault area includes the faulty device and multiple network devices, the multiple network devices are reachable from each other, and the first network device is one of the multiple network devices.
[0102] The transceiver module 902 is used to send a first route advertisement message to a third network device. The first route advertisement message instructs the third network device to cancel the basic route among the multiple routes corresponding to the second network device. The third network device is a network device outside the fault area.
[0103] In one possible implementation, the second network device is the network device that the user's service flow must pass through.
[0104] In one possible implementation, the transceiver module 902 is used to receive a second routing advertisement message from the second network device, the second routing advertisement message indicating that the second network device is a network device that the user service flow must pass through.
[0105] In one possible implementation, the second route advertisement message includes target attribute information, which indicates that the second network device is a network device that the user service flow must pass through.
[0106] In one possible implementation, transceiver module 902 is used to receive a third routing advertisement message, which includes the basic route of the second network device; transceiver module 902 is used to send a fourth routing advertisement message to the third network device, which includes the basic route of the second network device, to activate at least one service route corresponding to the second network device, and the multiple routes corresponding to the second network device include at least one service route.
[0107] In one possible implementation, the second network device is a faulty device, or the second network device is a network device that is unreachable from the first network device due to the faulty device.
[0108] As shown in Figure 10, Figure 10 is a structural schematic diagram of an electronic device provided in this application. In this embodiment, the electronic device 1000 can be a target network device in the network devices in Figure 1, such as an edge switch or an aggregation switch. Alternatively, the electronic device 1000 can be a management device in Figure 1. The management device can be a server, server cluster, computer, tablet computer, vehicle-mounted system, smartphone, analyzer, cloud device, or other device with computing power. Alternatively, the electronic device 1000 can be a computing device in Figure 1. The computing device can be an end-side device such as a server, computer, tablet computer, or smartphone.
[0109] Electronic device 1000 includes bus 1001, processor 1002, communication interface 1003, and memory 1004. Processor 1002, memory 1004, and communication interface 1003 communicate with each other via bus 1001.
[0110] Bus 1001 can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of representation, only one thick line is used in Figure 10, but this does not indicate that there is only one bus or one type of bus.
[0111] The processor 1002 can be any one or more of the following processors: central processing unit (CPU), graphics processing unit (GPU), microprocessor (MP), or digital signal processor (DSP).
[0112] The memory 1004 may include volatile memory, such as random access memory (RAM). The memory 1004 may also include non-volatile memory, such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid state drive (SSD).
[0113] The memory 1004 can be used to store software code related to the routing processing method, and the processor 1002 can execute the steps of the routing processing method and schedule other units to achieve the corresponding functions.
[0114] It should be understood that the electronic device 1000 can be a centralized or distributed device, and the processor 1002 in the electronic device 1000 can be a hardware circuit (such as an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a general-purpose processor, a digital signal processor (DSP), a microprocessor or a microcontroller, etc.) or a combination of these hardware circuits. For example, the processor can be a hardware system with instruction execution capabilities, such as a CPU or a DSP, or a hardware system without instruction execution capabilities, such as an ASIC or an FPGA, or a combination of the aforementioned hardware systems without instruction execution capabilities and hardware systems with instruction execution capabilities.
[0115] This application also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a computer, implements the routing processing method flow of the above-described method embodiments.
[0116] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0117] This application also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a computer, implements the routing processing method flow of the above-described method embodiments.
[0118] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0119] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, indirect coupling or communication connection between devices or units, and may be electrical or other forms.
[0120] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0121] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0122] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the technical solution of this application can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
Claims
1. A routing processing method, characterized by, The method comprises: The first network device determines that the second network device is unreachable, the first network device and the second network device belong to the same fault area, the fault area comprises a fault device and a plurality of network devices, the plurality of network devices are reachable, and the first network device is one of the plurality of network devices; The first network device sends a first route advertisement message to a third network device, the first route advertisement message instructs the third network device to cancel a basic route in a plurality of routes corresponding to the second network device, and the third network device is a network device outside the fault area.
2. The method of claim 1, wherein, The second network device is a network device that user traffic must pass through.
3. The method of claim 2, wherein, Before the first network device determines that the second network device is unreachable, the method further comprises: The first network device receives a second route advertisement message from the second network device, and the second route advertisement message indicates that the second network device is a network device that user traffic must pass through.
4. The method of claim 3, wherein, The second route advertisement message comprises target attribute information, and the target attribute information indicates that the second network device is a network device that user traffic must pass through.
5. The method according to any one of claims 1 to 4, characterized in that, After the first network device sends the first route advertisement message, the method further comprises: The first network device receives a third route advertisement message, and the third route advertisement message comprises a basic route of the second network device; The first network device sends a fourth route advertisement message to the third network device, the fourth route advertisement message comprises the basic route of the second network device, and at least one service route corresponding to the second network device is activated, and the plurality of routes corresponding to the second network device comprise the at least one service route.
6. The method according to any one of claims 1 to 5, characterized in that, The second network device is the fault device, or the second network device is a network device that is unreachable with the first network device due to the fault device.
7. A routing processing device, characterized by The routing processing apparatus is applied to a first network device, and the apparatus comprises: A processing module is configured to determine that a second network device is unreachable, the first network device and the second network device belong to the same fault area, the fault area comprises a fault device and a plurality of network devices, the plurality of network devices are reachable, and the first network device is one of the plurality of network devices; A transceiver module is configured to send a first route advertisement message to a third network device, the first route advertisement message instructs the third network device to cancel a basic route in a plurality of routes corresponding to the second network device, and the third network device is a network device outside the fault area.
8. The apparatus of claim 7, wherein, The second network device is a network device that user traffic must pass through.
9. The apparatus of claim 8, wherein The transceiver module is configured to receive a second route advertisement message from the second network device, and the second route advertisement message indicates that the second network device is a network device that user traffic must pass through.
10. The apparatus of claim 9, wherein, The second route advertisement message comprises target attribute information, and the target attribute information indicates that the second network device is a network device that user traffic must pass through.
11. The apparatus of any of claims 7-10, wherein, the transceiver is configured to receive a third route advertisement message, the third route advertisement message comprising a base route of the second network device; the transceiver is configured to send a fourth route advertisement message to the third network device, the fourth route advertisement message comprising the base route of the second network device, to activate at least one service route corresponding to the second network device, the plurality of routes corresponding to the second network device comprising the at least one service route.
12. The apparatus of any one of claims 7-11, wherein, the second network device is the faulty device, or the second network device is a network device that is unreachable from the faulty device and the first network device.
13. A network device, comprising: the network device comprises a processor and a memory, the processor coupled to the memory, the processor configured to perform the route processing method of any of claims 1-6 based on instructions stored in the memory.
14. A computer-readable storage medium, characterized in that, a computer readable storage medium comprising instructions that, when executed on a computer, cause the computer to perform the route processing method of any of claims 1-6.
Citation Information
Patent Citations
Network route convergence processing method and network route convergence processing device
CN103036787A
Routing processing method and related equipment
CN113810274A
Route notification method, route generation method and equipment
CN114640615A
Route Processing Method and Related Device
US20230116548A1