Routing update method and device
By determining and deleting the equivalent multi-path routing group where the faulty outgoing interface is located during the routing update process, the packet loss problem caused by long-term update during the routing update process in the prior art is solved, and the data is quickly switched to other normal outgoing interfaces to reduce packet loss.
Patent Information
- Application Number
- CN202310368453.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-04-07
- Publication Date
- 2025-05-06
- Estimated Expiration
- 2043-04-07
AI Technical Summary
The existing system has a problem that the route has lost packets due to a long period of failure to update during the route update process.
By receiving the route update message, the equivalent multipath routing group where the outgoing interface in which the transmission link fails is located is determined and deleted from the group, thereby updating all routes corresponding to the outgoing interface in which the transmission link fails is updated to the relationship with the new equivalent multipath routing group until all routes complete the update.
Quickly switch data on the outgoing interface where the transmission link fails to the other normal outgoing interfaces shared by the load in the ECMP group, thereby reducing data packet loss and solving the packet loss problem caused by long-term update during the routing update process.
Smart Images

Figure CN116155795B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of communications, and in particular to a routing update method and device. Background Art
[0002] In the existing network, reboot, power failure, one-key isolation, port oscillation, etc. often occur. These situations will cause changes in the Equal Cost Multi-path (ECMP) group members of some switches, so the corresponding routes need to be updated. When a switch receives a route update message, the system needs to build the route update content of this switch and send the route update content to the switch until all routes are updated. The existing system updates routes one by one in sequence. If there are a large number of routes that need to be updated, the entire convergence time of the system will be relatively long, causing the routes that have not been updated for a long time to cause packet loss. Summary of the invention
[0003] The present disclosure provides a route updating method and device, so as to at least solve the problem of packet loss caused by routes not updated in time for a long time in the route updating process of the related art.
[0004] According to a first aspect of an embodiment of the present disclosure, a routing update method is provided, comprising: receiving a routing update message, wherein the routing update message indicates an output interface where a transmission link fails in a switch; determining an equal-cost multipath routing group where the output interface where the transmission link fails is located; and deleting the output interface where the transmission link fails from the equal-cost multipath routing group.
[0005] Optionally, after deleting the output interface where the transmission link fails from the equal-cost multi-path routing group, the method further includes: updating each of all routes corresponding to the output interface where the transmission link fails in turn from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to a new equal-cost multi-path routing group, wherein the new equal-cost multi-path routing group is the same as the equal-cost multi-path routing group after the deletion process, and for all routes that have not completed the update, the equivalent-cost multi-path routing group after the deletion process is used to continue to transmit data until all routes that have not completed the update complete the relationship update.
[0006] Optionally, each of all routes corresponding to the outgoing interface where the transmission link fails is updated in turn from a relationship corresponding to an equal-cost multi-path routing group to a relationship corresponding to a new equal-cost multi-path routing group, including: for each route among all routes, updating the route from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group by the following operations: updating the route to a database; if the route exists in the database, checking whether the new equal-cost multi-path routing group already exists; if the new equal-cost multi-path routing group does not exist, creating a new equal-cost multi-path routing group; updating the route from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group; if the new equal-cost multi-path routing group exists, updating the route from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group.
[0007] Optionally, creating a new equal-cost multi-path routing group includes: creating a new equal-cost multi-path routing group based on relevant information of the routes in a database, wherein the relevant information includes a next hop of the route and a non-faulty outgoing interface corresponding to the next hop in the switch.
[0008] Optionally, the outbound interface of the switch where the transmission link fails includes an outbound interface where the transmission link fails due to a failure of the outbound interface itself and / or an outbound interface where the transmission link fails due to a change in the next hop.
[0009] Optionally, determining the equal-cost multi-path routing group where the output interface of the transmission link failure is located includes: writing the output interface of the transmission link failure into a database; and determining the equal-cost multi-path routing group where the output interface of the transmission link failure is located in response to changes in the database.
[0010] Optionally, deleting the outbound interface where the transmission link fails from the equal-cost multi-path routing group includes: deleting the outbound interface where the transmission link fails from the equal-cost multi-path routing group by calling a delete call of a switch abstract interface.
[0011] According to a second aspect of an embodiment of the present disclosure, a routing update system is provided, comprising: a border gateway protocol container, the border gateway protocol container comprising a border network management protocol unit and a switching state service unit, wherein the border network management protocol unit receives a routing update message, wherein the routing update message indicates an output interface where a transmission link fails in a switch; the switching state service unit determines an equal-cost multi-path routing group where the output interface where the transmission link fails is located; and deletes the output interface where the transmission link fails from the equal-cost multi-path routing group.
[0012] Optionally, after deleting the outgoing interface where the transmission link fails from the equal-cost multi-path routing group, each of all routes corresponding to the outgoing interface where the transmission link fails is updated in turn from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to a new equal-cost multi-path routing group, wherein the new equal-cost multi-path routing group is the same as the equal-cost multi-path routing group after the deletion process, and for all routes that have not completed the update, the equal-cost multi-path routing group after the deletion process is used to continue to transmit data until all routes that have not completed the update complete the relationship update.
[0013] Optionally, the border gateway protocol container also includes a routing manager, which sequentially updates each of all routes corresponding to the outgoing interface where the transmission link fails from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group, including: for each route among all routes, the routing manager updates the route from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group through the following operations: the routing manager updates the route to the database; if the route exists in the database, the exchange state service unit checks whether the new equal-cost multi-path routing group already exists; if the new equal-cost multi-path routing group does not exist, the exchange state service unit creates a new equal-cost multi-path routing group; updates the route from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group; if the new equal-cost multi-path routing group exists, the exchange state service unit updates the route from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group.
[0014] Optionally, creating a new equal-cost multi-path routing group includes: the switching state service unit creates a new equal-cost multi-path routing group based on relevant information of the routes in a database, wherein the relevant information includes the next hop of the route and the non-faulty outgoing interface corresponding to the next hop in the switch.
[0015] Optionally, the outbound interface of the switch where the transmission link fails includes an outbound interface where the transmission link fails due to a failure of the outbound interface itself and / or an outbound interface where the transmission link fails due to a change in the next hop.
[0016] Optionally, determining the equivalent-cost multi-path routing group where the output interface of the transmission link failure is located includes: the border network management protocol unit writes the output interface of the transmission link failure into the database; and the switching state service unit determines the equivalent-cost multi-path routing group where the output interface of the transmission link failure is located in response to the change of the database.
[0017] Optionally, deleting the outbound interface where the transmission link fails from the equal-cost multi-path routing group includes: deleting the outbound interface where the transmission link fails from the equal-cost multi-path routing group by calling a delete call of a switch abstract interface.
[0018] According to a third aspect of an embodiment of the present disclosure, a routing update device is provided, comprising: a receiving unit, configured to receive a routing update message, wherein the routing update message indicates an output interface of a switch where a transmission link fails; a determining unit, configured to determine an equal-cost multi-path routing group to which the output interface of the transmission link fails belongs; and an updating unit, configured to delete the output interface of the transmission link fails from the equal-cost multi-path routing group.
[0019] Optionally, the update unit is further configured to, after deleting the output interface where the transmission link fails from the equal-cost multi-path routing group, update each of all routes corresponding to the output interface where the transmission link fails in sequence from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to a new equal-cost multi-path routing group, wherein the new equal-cost multi-path routing group is the same as the equal-cost multi-path routing group after the deletion process, and for all routes that have not completed the update, the equivalent-cost multi-path routing group after the deletion process is used to continue to transmit data until all routes that have not completed the update complete the relationship update.
[0020] Optionally, the updating unit is further configured to update, for each route among all routes, the route from a relationship corresponding to an equal-cost multi-path routing group to a relationship corresponding to a new equal-cost multi-path routing group by the following operations: updating the route to a database; if the route exists in the database, checking whether the new equal-cost multi-path routing group already exists; if the new equal-cost multi-path routing group does not exist, creating a new equal-cost multi-path routing group; updating the route from a relationship corresponding to an equal-cost multi-path routing group to a relationship corresponding to a new equal-cost multi-path routing group; if the new equal-cost multi-path routing group exists, updating the route from a relationship corresponding to an equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group.
[0021] Optionally, the updating unit is further configured to create a new equal-cost multi-path routing group based on relevant information of the routes in the database, wherein the relevant information includes the next hop of the route and the non-faulty outgoing interface corresponding to the next hop in the switch.
[0022] Optionally, the outbound interface of the switch where the transmission link fails includes an outbound interface where the transmission link fails due to a failure of the outbound interface itself and / or an outbound interface where the transmission link fails due to a change in the next hop.
[0023] Optionally, the determination unit is further configured to write the outgoing interface where the transmission link fails into a database; and determine the equal-cost multi-path routing group where the outgoing interface where the transmission link fails is located in response to changes in the database.
[0024] Optionally, the updating unit is further configured to delete the outgoing interface whose transmission link fails from the equal-cost multi-path routing group through a delete call of the switch abstract interface.
[0025] According to a fourth aspect of an embodiment of the present disclosure, an electronic device is provided, comprising: a processor; and a memory for storing processor-executable instructions; wherein the processor is configured to execute the instructions to implement the routing update method according to the present disclosure.
[0026] According to a fifth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided. When instructions in the computer-readable storage medium are executed by at least one processor, the at least one processor is prompted to execute the routing update method according to the present disclosure as described above.
[0027] According to a sixth aspect of an embodiment of the present disclosure, a computer program product is provided, comprising computer instructions, which implement the routing update method according to the present disclosure when executed by a processor.
[0028] The technical solution provided by the embodiments of the present disclosure brings at least the following beneficial effects:
[0029] According to the routing update method and device disclosed in the present invention, when there is an outgoing interface with a transmission link failure in the switch, the ECMP group where the outgoing interface with the transmission link failure is located is determined, and the outgoing interface with the transmission link failure is deleted from the ECMP group, so that all routes corresponding to the outgoing interface with the transmission link failure can use the ECMP group to continue to transmit data. Since the ECMP group deletes the outgoing interface with the transmission link failure, that is, it no longer contains the outgoing interface of the failed link, the data on the outgoing interface with the transmission link failure can be quickly switched to other normal outgoing interfaces in the ECMP group for load sharing through the present invention, thereby reducing data packet loss. Therefore, the present invention solves the problem of packet loss caused by routes that have not been updated in time for a long time in the routing update process of the related art.
[0030] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] The drawings herein are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the description are used to explain the principles of the present disclosure, and do not constitute improper limitations on the present disclosure.
[0032] Figure 1 is a schematic diagram showing a related art system processing routing relationship update;
[0033] Figure 2is a schematic diagram showing an implementation scenario of a routing update method according to an exemplary embodiment of the present disclosure;
[0034] Figure 3 is a flow chart of a routing update method according to an exemplary embodiment;
[0035] Figure 4 is a system architecture diagram of a routing update method according to an exemplary embodiment;
[0036] Figure 5 is a schematic diagram of a route update process according to an exemplary embodiment;
[0037] Figure 6 is an original updated logic diagram of a route shown according to an exemplary embodiment;
[0038] Figure 7 is a block diagram of a routing update system according to an exemplary embodiment;
[0039] Figure 8 is a block diagram of a routing update device according to an exemplary embodiment;
[0040] Fig. 9 is a block diagram of an electronic device 900 according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0041] In order to enable ordinary persons in the art to better understand the technical solutions of the present disclosure, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the accompanying drawings.
[0042] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. The implementation methods described in the following examples do not represent all implementation methods consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the attached claims.
[0043] It should be noted that the phrase "at least one of the items" in the present disclosure includes three types of parallel situations: "any one of the items", "a combination of any number of the items", and "all of the items". For example, "including at least one of A and B" includes the following three parallel situations: (1) including A; (2) including B; (3) including A and B. Another example is "executing at least one of step 1 and step 2" which means the following three parallel situations: (1) executing step 1; (2) executing step 2; (3) executing step 1 and step 2.
[0044] At present, in the CLOS network architecture, due to link jitter or network congestion, the TCP protocol timeouts, which in turn causes the next hop of some switches to change. The switches will notify each other of the next hop changes through routing protocol notification update messages. In this case, the number of routes does not change, only the next hop (bgp neighbor) has changed. The routing protocol needs to send and update all routes one by one, that is, from the first route to the last route. Therefore, the larger the number of routes, the longer the processing time. For example, it takes 10 seconds to send and update 100K routes. In this way, the route switching time after a link failure is far from meeting the network stability index.
[0045] In addition, in the online environment, due to the frequent jitter of the switch port, the link delay down and link delay up functions are configured to prevent port jitter. The time is usually set to 1000ms (1s). If the actual port is down, the port link-delay down event will be reported with a delay of 1s before the route convergence is performed, which will cause the port to lose packets for more than 1s. The port is configured with a bidirectional forwarding detection mechanism (Bidirectional Forwarding Detection, abbreviated as BFD) to detect the port down event. BFD detects the port down status and sends and updates routes to reduce the number of packet losses. When the link is down, the BFD protocol detects a timeout and directly sends and updates routes without waiting for reporting information. However, in this case, the sending and updating of routes is also carried out one by one, that is, the sending and updating starts from the first route until the sending and updating of the last route is completed. Therefore, the larger the number of routes, the longer the processing time is.
[0046] For example, Figure 1 is a schematic diagram showing a related technical system processing routing relationship update, such as Figure 1As shown, in the existing system, ECMP group 1 has four members, namely Next Hop 1, Next Hop 2, Next Hop 3, and Next Hop 4. If one of the members (Next Hop 4) fails (down change), the routing protocol needs to re-switch the direction of the route. In the process of sending the route to the switch chip, a new ECMP group 2 needs to be created, and the members of this group are Next Hop 1, Next Hop 2, and Next Hop 3. The updated route needs to be switched from ECMP group 1 to ECMP group 2. When the update is completed, there will be no more packet loss (path 2). However, in the process of processing the update of the route relationship, if there are multiple routes, such as routes 1K to 200K, these are not updated together, but the next route is updated only after one route is updated. Therefore, the routes updated later will still use ECMP group 1 because they will not be updated to ECMP group 2 in time. At this time, packet loss will continue to occur until the corresponding route is updated.
[0047] To address the above problems, the present disclosure provides a routing update method that can quickly switch data on the output interface where the transmission link fails to other normal output interfaces in the ECMP group for load sharing. The following is an example of a scenario where the next hop of a switch changes.
[0048] Figure 2 is a schematic diagram showing an implementation scenario of a routing update method according to an exemplary embodiment of the present disclosure, such as Figure 2 The implementation scenario adopts a CLOS 4-layer network structure, which includes an access layer (i.e. Figure 2 Layer 4), convergence layer (i.e. Figure 2 The third layer), the core layer (i.e. Figure 2 The second layer) and the super core layer (i.e. Figure 2 The number of layers in the network structure is not limited to 4, and the number of switches in each layer is not limited to Figure 2 When the 4th switch in layer 3 fails, it will notify the corresponding switch in layer 2 (i.e., the 6th switch) that its next hop has changed. After receiving the notification, the corresponding switch in layer 2 finds that there is no other optional path to connect to the target address ( Figure 2 At this time, it will continue to notify the corresponding switch in the first layer upward, that is, Figure 2The first switch in the first layer, hereinafter referred to as the execution switch, receives the corresponding notification (i.e., the routing update message), which indicates the outgoing interface of the transmission link failure in the execution switch. Then, the execution switch determines the equal-cost multi-path routing group where the outgoing interface of the transmission link failure is located, deletes the outgoing interface of the transmission link failure from the equal-cost multi-path routing group, and completes the update of all routes corresponding to the outgoing interface of the transmission link failure. At this time, the execution switch will select a suitable outgoing interface from the deleted equal-cost multi-path routing group to transmit data to the next hop. For example, the outgoing interface connected to the execution switch of the seventh switch in the second layer will be selected, and then connected to the target address ( Figure 2 Layer 4 first switch in the network).
[0049] Hereinafter, a route updating method and apparatus according to exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
[0050] Figure 3 is a flow chart of a routing update method according to an exemplary embodiment. Figure 3 As shown, the routing update method includes the following steps:
[0051] In step S301, a routing update message is received, wherein the routing update message indicates the outgoing interface of the transmission link failure in the switch. The routing update message in this step may be a routing next hop update message sent upward by the lower switch of the switch, or may be information (link-down) of a port link failure detected by BFD, which is not limited by the present disclosure. The present disclosure may be applied to a sonic system. If applied to a sonic system, in this step, the routing update message may be received by the BGPD (BGP Docker) module in the Border Gateway Protocol (BGP) of the sonic system in the switch, and may also be received by other applicable modules, which is not limited by the present disclosure. It should be noted that the routing update message is generally received by the kernel protocol stack (Linux kernel) of the switch first, and then forwarded to the BGPD module of the sonic system on the switch. It should be noted that BGPD is located in the Border Gateway Protocol (BGP) container of the sonic system. BGPD is conventional BGP, which receives routing status from the outside through conventional TCP / UDP sockets. In addition, the bottom-level switches are generally used to connect user access devices downward, and the top-level switches are generally used to connect core network devices upward. The bottom-level switches send messages to the top-level switches, that is, sending messages upward, and the top-level switches send messages to the bottom-level switches, that is, sending messages downward.
[0052] According to an exemplary embodiment of the present disclosure, the outbound interface in the switch where the transmission link fails may include an outbound interface where the transmission link fails due to a failure of the outbound interface itself and / or an outbound interface where the transmission link fails due to a change in the next hop. According to this embodiment, the present disclosure is applicable to scenarios where the transmission link fails due to a failure of the outbound interface of the switch itself or a change in the next hop, so that the method of the present disclosure is not limited to one scenario.
[0053] For example, a failure of the outbound interface itself can be learned from the link failure information (link-down) detected by BFD, and a change in the next hop can be learned from the routing next hop update message sent upward by the lower-layer switch of the switch, which is not limited in the present disclosure.
[0054] return Figure 3 In step S302, the ECMP group to which the outgoing interface of the transmission link failure belongs is determined. For example, the ECMP group with the corresponding route can be found through the next hop to which the outgoing interface of the transmission link failure belongs.
[0055] According to an exemplary embodiment of the present disclosure, determining the equivalent multi-path routing group where the outgoing interface where the transmission link fails is located may include: writing the outgoing interface where the transmission link fails into a database; and determining the equivalent multi-path routing group where the outgoing interface where the transmission link fails is located in response to changes in the database. According to this embodiment, the working mode of the original system is continued to be used, that is, the outgoing interface where the transmission link fails is written into the database, and by observing changes in the database, the ECMP group corresponding to the outgoing interface where the transmission link fails and subsequent deletion operations are determined, so that the newly added logic is more suitable for the original system to avoid excessive workload caused by excessive adjustments to the original system.
[0056] For example, when the original system is a sonic system, after the BGPD module receives the routing update message (such as the routing next hop update message or the port link failure information) transmitted by the switch kernel protocol stack (Linux kernel), it parses the routing update information and the corresponding ECMP group member update information. At this time, the BGPD module will push these two pieces of information, among which the routing update information will be sent to the Zebra module, and the ECMP group member update information (FRR_CONVERGE_TABLE) will be directly pushed to the ECMP member database (ECMP member DB) in the Redis database through the BGPD module, such as Figure 4 As shown by the dotted line. The Zebra mentioned above is located in the BGP container of the sonic system and acts as a traditional IP routing management. It provides kernel routing table updates, interface lookups and route redistribution. It should be noted that the content related to the routing update information sent to the Zebra module will be described in detail later and will not be discussed here. This embodiment focuses on the member update information (FRR_CONVERGE_TABLE) in the ECMP group that will be pushed to the Redis database. The member update information in the ECMP group contains the information of the ports that have changed in the ECMP group of this switch (the table stores the names of the ports to be deleted), that is, the information of the outbound interface where the transmission link fails, as follows:
[0057]
[0058] After the member update information in the ECMP group is written into the Redis database, the switch state service (SWSS) module in the sonic system responds to the member update information (FRR_CONVERGE_TABLE) in the ECMP group written into the Redis database, and finds the ECMP group with the corresponding route according to the next hop to which the changed port belongs, that is, the equal-cost multi-path routing group where the outgoing interface where the transmission link fails in this embodiment is located. It should be noted that when the ECMP group member of a port changes, all routes pointing to this ECMP group need to complete the member switching.
[0059] return Figure 3 , in step S303, the outbound interface where the transmission link fails is deleted from the equal-cost multi-path routing group.
[0060] According to an exemplary embodiment of the present disclosure, after deleting the outgoing interface where the transmission link fails from the equal-cost multi-path routing group, each of all routes corresponding to the outgoing interface where the transmission link fails is updated from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group, wherein the new equal-cost multi-path routing group is the same as the equal-cost multi-path routing group after the deletion process, and the routes that have not completed the update in all routes continue to transmit data using the equal-cost multi-path routing group after the deletion process until the routes that have not completed the update in all routes complete the relationship update. According to this embodiment, after the deletion process, each route continues to be updated according to the original working logic of the system, and each route is pointed to the new ECMP group, that is, the logic of route update in the original system is not changed, but before updating the corresponding relationship of each route according to the original update method, the outgoing interface where the transmission link fails is first deleted from the corresponding ECMP group, so that each route can continue to transmit data using the ECMP group after the deletion process before the relationship is updated, until the route completes the relationship update. Therefore, the present invention reduces data packet loss while protecting the original logic of the system, reducing the degree of modification to the system, and reducing work costs.
[0061] For example, when the original system is a sonic system, when the BGPD module pushes the route update information and the corresponding ECMP group member update information, it will first push the ECMP group member update information, that is, complete the function of separating the route and the next hop, that is, because the BGPD module pushes the route update information to Zebra one route at a time, so the relationship update of each route is also performed one route at a time. Therefore, before the route relationship is updated, the outgoing interface with the transmission link failure is first deleted from the equal-cost multi-path routing group through the member update information in the ECMP group, and the data to be transmitted can be quickly switched from the failed link port to other normal ports of ECMP load sharing, thereby reducing data packet loss. After pushing the member update information in the ECMP group, the BGPD module pushes the route update information to the Zebra module, and the Zebra module completes the route relationship update according to the sonic system route relationship update process, that is, the Zebra module sequentially updates each route in all routes corresponding to the outgoing interface with the transmission link failure from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group.
[0062] According to an exemplary embodiment of the present disclosure, each of all routes corresponding to the outgoing interface where the transmission link fails is updated in sequence from the relationship corresponding to the equal-cost multipath routing group to the relationship corresponding to the new equal-cost multipath routing group, including: for each route in all routes, the route is updated from the relationship corresponding to the equal-cost multipath routing group to the relationship corresponding to the new equal-cost multipath routing group by the following operations: updating the route to the database; in the case where the database has the route, checking whether the new equal-cost multipath routing group already exists; in the case where the new equal-cost multipath routing group does not exist, creating a new equal-cost multipath routing group; updating the route from the relationship corresponding to the equal-cost multipath routing group to the relationship corresponding to the new equal-cost multipath routing group; in the case where the new equal-cost multipath routing group exists, updating the route from the relationship corresponding to the equal-cost multipath routing group to the relationship corresponding to the new equal-cost multipath routing group. According to the relationship update method of this embodiment, each of all routes corresponding to the outgoing interface where the transmission link fails can be conveniently and quickly modified from the relationship corresponding to the equal-cost multipath routing group to the relationship corresponding to the new equal-cost multipath routing group.
[0063] For example, when the original system is a sonic system, the Zebra module is responsible for communication between modules. It can parse the route update information corresponding to a route sent by the BGPD module and write it to the route database (Route DB) of the Redis database through Fpmsyncd. The content written is ROUTE_TABLE. The format written to the Redis database is as follows, which includes the route prefix and next hop information:
[0064]
[0065] Among them, 10.0.0.0 / 8 is the routing prefix; ifname is the port name field, Ethernet501, Ethernet502, Ethernet503, and Ethernet504 are the port name field values; nexthop is the next hop field, and 198.19.141.1, 198.19.141.3, 198.19.141.5, and 198.19.141.7 are the next hop field values.
[0066] For this route updated to the Redis database, SWSS will respond to the changes in the Redis database and determine that the database already has routing information with the same routing prefix as the route, indicating that the route is only updated for the corresponding output interface. At this time, a new ECMP group will be created and written to the switch chip database (Asic DB) of the Redis database. It will be sent to the switch chip Asic through the synchronization process (Syncd), and the route will be pointed from the original ECMP group to the new ECMP group to complete the update of this route. It should be noted that each route related to the output interface where the transmission link fails will be updated in turn. Since the BGPD module pushes the route update information of each route to Zebra in turn, the relationship update of each route will go through the processing process from BGPD->Zebra->Fpmsyncd->Redis->SWSS->Redis->Syncd->Asic, such as Figure 4 As shown in the solid line part, until the relationship update of all routes related to the outbound interface of the transmission link failure is completed. Since the next hop of all routes has been switched in advance, that is, the old ECMP group has deleted the faulty member, even if the corresponding routes do not have time to update the relationship, there will be no packet loss problem if the old ECMP group is continued.
[0067] According to an exemplary embodiment of the present disclosure, creating a new equal-cost multi-path routing group includes: creating a new equal-cost multi-path routing group based on relevant information of the routing in a database, wherein the relevant information includes the next hop of the routing and the non-faulty outgoing interface corresponding to the next hop in the switch. According to this embodiment, a valid new equal-cost multi-path routing group can be established based on the relevant information of the routing in the database.
[0068] According to an exemplary embodiment of the present disclosure, deleting an outbound interface where a transmission link fails from an equal-cost multi-path routing group includes: deleting the outbound interface where a transmission link fails from the equal-cost multi-path routing group by calling a delete call of a switch abstract interface. According to this embodiment, by using a delete call of a system's SAI interface, the outbound interface where a transmission link fails can be deleted from the equal-cost multi-path routing group conveniently and quickly.
[0069] For example, the SAI interface can be called to delete the ECMP group. That is, after the faulty port is deleted from the ECMP group, the route pointing to the ECMP group will no longer use the faulty port, so there will be no packet loss problem.
[0070] In order to facilitate the understanding of the above embodiments, Figure 4 and Figure 5 System description of the first route update process, Figure 5 is a schematic diagram of a route update process according to an exemplary embodiment. Figure 5 As shown, the switch kernel protocol stack (Linux kernel) of the switch receives the routing update message and forwards it to the BGPD module. The BGPD module extracts the routing update information and the corresponding ECMP group member update information from the routing update message. At this time, the BGPD module will push these two pieces of information.
[0071] For the member update information (FRR_CONVERGE_TABLE) in the ECMP group, the BGPD module will give priority to push it to the ECMP member database (ECMP member DB) in the Redis database. The member update information in the ECMP group contains the information of the port that has changed in the ECMP group of this switch (the table stores the port name to be deleted), that is, the information of the outbound interface where the transmission link fails. At this time, the route branch (Route by pass) will be started, that is, after the member update information in the ECMP group is written in the Redis database, the sonic system SWSS) module responds to the member update information (FRR_CONVERGE_TABLE) in the ECMP group written in the Redis database, and finds the ECMP group with the corresponding route according to the next hop to which the changed port belongs, that is, the equal-cost multi-path routing group where the outbound interface where the transmission link fails is located, and then deletes the outbound interface where the transmission link fails from the equal-cost multi-path routing group through the SAI deletion call, that is, the equal-cost multi-path routing group after the deletion is sent to the switch chip Asic.
[0072] For route update information, the BGPD module will send the route update information of the route to the Zebra module. The Zebra module can parse the route update information corresponding to a route sent by the BGPD module, and write it to the Route DB of the Redis database through Fpmsyncd. The content written is ROUTE_TABLE. For this route updated to the Redis database, SWSS will respond to the transformation of the Redis database and determine that the database already has the same route information as the route prefix of this route, indicating that this route is only updated for the corresponding outbound interface. At this time, a new ECMP group will be created and written to the Asic DB of the Redis database. It will be sent to the switch chip Asic through Syncd, and the route will be directed from the original ECMP group to the new ECMP group to complete the update of this route.
[0073] It should be noted that each route related to the outbound interface where the transmission link fails will be updated in turn. Since the BGPD module pushes the route update information of each route to Zebra in turn, the relationship update of each route will go through the process of BGPD->Zebra->Fpmsyncd->Redis->SWSS->Redis->Syncd->Asic, such as Figure 4 As shown, the first route is Figure 5 After the update of the left branch (corresponding to the right side is the Route by pass branch), the second route will still go through the process of BGPD->Zebra->Fpmsyncd->Redis->SWSS->Redis->Syncd->Asic until the relationship update of all routes related to the outbound interface where the transmission link fails is completed. Since the next hop of all routes has been switched in advance, that is, the old ECMP group has deleted the faulty member, even if the corresponding route does not have time to update the relationship, it will continue to use the old ECMP group without packet loss.
[0074] In summary, for the situation where the routing protocol handles the next hop change, the present disclosure uses the route by-pass branch without modifying the update logic of the original system ( Figure 6 In the case of (as shown in the figure), before updating a large number of routes one by one, notify the members of the original ECMP group of the route to switch, mainly to achieve the following two points:
[0075] (1) After receiving the route update message, the routing protocol (BGPD module) deletes the faulty members of ECMP group 1 pointed to by the routes before refreshing a large number of routes one by one. Although all routes that have not completed the relationship update continue to point to ECMP group 1, ECMP group 1 no longer contains the faulty members. This is equivalent to completing the correct path switching of all routes that have not completed the relationship update, so that the traffic loss is quickly stopped.
[0076] (2) A large number of routes are updated in sequence according to the normal route update logic of the system, that is, a new ECMP group 2 is created, and the routes are updated from pointing to ECMP group 1 to pointing to ECMP group 2.
[0077] The route by-pass branch introduced in the present disclosure is equivalent to decoupling the route and the next hop, which has no impact on the routing protocol and system process. Therefore, the solution of the present disclosure is easy to transplant and does not require protocol support. In addition, the route by-pass branch can quickly switch data from the faulty link port to other normal ports of ECMP load sharing, thereby greatly reducing the link convergence time. The link convergence effect can be achieved within 500ms, making the business unaware.
[0078] Therefore, the solution disclosed in the present invention is very suitable for switching of large-scale neighbor changes in data centers. For example, it can be applied to all scenarios related to routing protocol processing of next-hop changes: restart, power failure, one-key isolation, port oscillation, route withdrawal, etc.
[0079] Figure 7 is a block diagram of a routing update system according to an exemplary embodiment. Figure 7 The routing update system 7 includes: a border gateway protocol container 70, the border gateway protocol container 70 includes a border network management protocol unit 700 and a switching state service unit 701, wherein the border network management protocol unit 700 receives a routing update message, wherein the routing update message indicates an output interface where a transmission link fails in the switch; the switching state service unit 701 determines an equal-cost multi-path routing group where the output interface where the transmission link fails is located; and deletes the output interface where the transmission link fails from the equal-cost multi-path routing group.
[0080] The present disclosure can be applied to the sonic system. If applied to the sonic system, the border gateway protocol container 70 is the BGP in the sonic system, the border network management protocol unit 700 is the BGPD in the sonic system, and the switching state service unit 70 is the SWSS in the sonic system.
[0081] According to an exemplary embodiment of the present disclosure, after deleting the outgoing interface where the transmission link fails from the equal-cost multi-path routing group, each of all routes corresponding to the outgoing interface where the transmission link fails is updated from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group, wherein the new equal-cost multi-path routing group is the same as the equal-cost multi-path routing group after the deletion process, and the routes that have not completed the update in all routes continue to transmit data using the equal-cost multi-path routing group after the deletion process until the routes that have not completed the update in all routes complete the relationship update. According to this embodiment, after the deletion process, each route continues to be updated according to the original working logic of the system, and each route is pointed to the new ECMP group, that is, the logic of route update in the original system is not changed, but before updating the corresponding relationship of each route according to the original update method, the outgoing interface where the transmission link fails is first deleted from the corresponding ECMP group, so that each route can continue to transmit data using the ECMP group after the deletion process before the relationship is updated, until the route completes the relationship update. Therefore, the present invention reduces data packet loss while protecting the original logic of the system, reducing the degree of modification to the system, and reducing work costs.
[0082] According to an exemplary embodiment of the present disclosure, the border gateway protocol container 70 also includes a routing manager, which updates each of all routes corresponding to the outgoing interface where the transmission link fails in turn from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group, including: for each route among all routes, updating the route from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group through the following operations: the routing manager updates the route to the database; if the route exists in the database, the exchange state service unit 701 checks whether the new equal-cost multi-path routing group already exists; if the new equal-cost multi-path routing group does not exist, the exchange state service unit 701 creates a new equal-cost multi-path routing group; updates the route from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group; if the new equal-cost multi-path routing group exists, the exchange state service unit 701 updates the route from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group.
[0083] According to the relationship updating method of this embodiment, each route in all routes corresponding to the outgoing interface of the transmission link failure can be easily and quickly modified from a relationship corresponding to the equal-cost multi-path route group to a relationship corresponding to the new equal-cost multi-path route group.
[0084] For example, the routing manager mentioned above is Zebra in the sonic system.
[0085] According to an exemplary embodiment of the present disclosure, a new equal-cost multi-path routing group is created, including: the switch state service unit 701 creates a new equal-cost multi-path routing group based on the relevant information of the routing in the database, wherein the relevant information includes the next hop of the routing and the non-faulty outgoing interface corresponding to the next hop in the switch. According to this embodiment, based on the relevant information of the routing in the database, an effective new equal-cost multi-path routing group can be established to avoid including a faulty outgoing interface.
[0086] According to an exemplary embodiment of the present disclosure, the outbound interface in the switch where the transmission link fails includes the outbound interface where the transmission link fails due to a failure of the outbound interface itself and / or the outbound interface where the transmission link fails due to a change in the next hop. According to this embodiment, the present disclosure is applicable to all scenarios where the transmission link fails due to a failure of the outbound interface of the switch itself or a change in the next hop, so that the method of the present disclosure is not limited to one scenario.
[0087] According to an exemplary embodiment of the present disclosure, determining the equivalent multi-path routing group where the output interface of the transmission link fails includes: the border network management protocol unit writes the output interface of the transmission link failure into the database; the exchange state service unit determines the equivalent multi-path routing group where the output interface of the transmission link fails in response to the change of the database. According to this embodiment, the working mode of the original system is continued to be used, that is, the output interface of the transmission link failure is written into the database, and by observing the change of the database, the ECMP group corresponding to the output interface of the transmission link failure and the subsequent deletion operation are determined, so that the newly added logic is more suitable for the original system to avoid excessive workload caused by excessive adjustment of the original system.
[0088] According to an exemplary embodiment of the present disclosure, deleting an outbound interface where a transmission link fails from an equal-cost multi-path routing group includes: deleting the outbound interface where a transmission link fails from the equal-cost multi-path routing group by calling a delete call of a switch abstract interface. According to this embodiment, by using a delete call of a system's SAI interface, the outbound interface where a transmission link fails can be deleted from the equal-cost multi-path routing group conveniently and quickly.
[0089] Figure 8 FIG. 1 is a block diagram of a routing update device according to an exemplary embodiment. Figure 8 The device includes a receiving unit 80, a determining unit 82 and an updating unit 84.
[0090] The receiving unit 80 is configured to receive a routing update message, wherein the routing update message indicates an outgoing interface where a transmission link fails in the switch; the determining unit 82 is configured to determine an equal-cost multi-path routing group where the outgoing interface where the transmission link fails is located; and the updating unit 84 is configured to delete the outgoing interface where the transmission link fails from the equal-cost multi-path routing group.
[0091] According to an exemplary embodiment of the present disclosure, the updating unit 84 is further configured to, after deleting the output interface where the transmission link fails from the equal-cost multi-path routing group, update each of all routes corresponding to the output interface where the transmission link fails in sequence from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to a new equal-cost multi-path routing group, wherein the new equal-cost multi-path routing group is the same as the equal-cost multi-path routing group after the deletion processing, and the routes that have not completed the update among all the routes continue to transmit data using the equal-cost multi-path routing group after the deletion processing until the routes that have not completed the update among all the routes complete the relationship update.
[0092] According to an exemplary embodiment of the present disclosure, the updating unit 84 is further configured to update, for each route among all routes, the route from a relationship corresponding to an equal-cost multi-path routing group to a relationship corresponding to a new equal-cost multi-path routing group by the following operations: updating the route to a database; if the route exists in the database, checking whether the new equal-cost multi-path routing group already exists; if the new equal-cost multi-path routing group does not exist, creating a new equal-cost multi-path routing group; updating the route from a relationship corresponding to an equal-cost multi-path routing group to a relationship corresponding to a new equal-cost multi-path routing group; if the new equal-cost multi-path routing group exists, updating the route from a relationship corresponding to an equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group.
[0093] According to an exemplary embodiment of the present disclosure, the updating unit 84 is further configured to create a new equal-cost multi-path routing group based on relevant information of the routes in the database, wherein the relevant information includes the next hop of the route and the corresponding non-faulty outbound interface of the next hop in the switch.
[0094] According to an exemplary embodiment of the present disclosure, the outbound interface of the switch where the transmission link fails includes the outbound interface where the transmission link fails due to a failure of the outbound interface itself and / or the outbound interface where the transmission link fails due to a change in the next hop.
[0095] According to an exemplary embodiment of the present disclosure, the determination unit 82 is further configured to write the outbound interface where the transmission link fails into a database; and determine the equal-cost multi-path routing group where the outbound interface where the transmission link fails is located in response to changes in the database.
[0096] Optionally, the updating unit 84 is further configured to delete the outgoing interface whose transmission link fails from the equal-cost multi-path routing group through a delete call of the switch abstract interface.
[0097] According to an embodiment of the present disclosure, an electronic device may be provided. Fig. 9It is a block diagram of an electronic device 900 according to an embodiment of the present disclosure, and the electronic device includes at least one memory 901 and at least one processor 902, wherein a set of computer executable instructions is stored in the at least one memory, and when the computer executable instruction set is executed by the at least one processor, the routing update method according to the embodiment of the present disclosure is executed.
[0098] As an example, the electronic device 900 may be a PC, a tablet device, a personal digital assistant, a smart phone, or other device capable of executing the above-mentioned instruction set. Here, the electronic device 1000 is not necessarily a single electronic device, but may also be any device or circuit capable of executing the above-mentioned instructions (or instruction sets) individually or in combination. The electronic device 900 may also be part of an integrated control system or a system manager, or may be configured as a portable electronic device interconnected with a local or remote (e.g., via wireless transmission) interface.
[0099] In the electronic device 900, the processor 902 may include a central processing unit (CPU), a graphics processing unit (GPU), a programmable logic device, a dedicated processor system, a microcontroller or a microprocessor. As an example and not limitation, the processor 902 may also include an analog processor, a digital processor, a microprocessor, a multi-core processor, a processor array, a network processor, etc.
[0100] The processor 902 may execute instructions or codes stored in the memory, wherein the memory 901 may also store data. Instructions and data may also be sent and received over a network via a network interface device, wherein the network interface device may employ any known transmission protocol.
[0101] The memory 901 may be integrated with the processor 902, for example, by placing RAM or flash memory within an integrated circuit microprocessor or the like. In addition, the memory 901 may include a separate device, such as an external disk drive, a storage array, or any other storage device that can be used by a database system. The memory 901 and the processor 902 may be operationally coupled, or may communicate with each other, such as through an I / O port, a network connection, etc., so that the processor 902 can read files stored in the memory 901.
[0102] In addition, the electronic device 900 may further include a video display (such as a liquid crystal display) and a user interaction interface (such as a keyboard, a mouse, a touch input device, etc.) All components of the electronic device may be connected to each other via a bus and / or a network.
[0103] According to an embodiment of the present disclosure, a computer-readable storage medium may also be provided, wherein when the instructions in the computer-readable storage medium are executed by at least one processor, the at least one processor is prompted to execute the routing update method of the embodiment of the present disclosure. Examples of computer-readable storage media here include: read-only memory (ROM), random access programmable read-only memory (PROM), electrically erasable programmable read-only memory (EEPROM), random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), flash memory, non-volatile memory, CD-ROM, CD-R, CD+R, CD-RW, CD+RW, DVD-ROM, DVD-R, DVD+R, DVD-RW, DVD+RW, DVD-RAM, BD-ROM, BD-R, BD-R LTH, BD-RE, Blu-ray or optical disk storage, hard disk drive (HDD), solid state drive (SSD), card storage (such as, multimedia card, secure digital (SD) card or extreme digital (XD) card), magnetic tape, floppy disk, magneto-optical data storage device, optical data storage device, hard disk, solid state disk and any other device, any other device is configured to store computer programs and any associated data, data files and data structures in a non-transitory manner and provide the computer programs and any associated data, data files and data structures to a processor or computer so that the processor or computer can execute the computer program. The computer program in the above-mentioned computer-readable storage medium can be run in an environment deployed in a computer device such as a client, a host, an agent device, a server, etc. In addition, in one example, the computer program and any associated data, data files and data structures are distributed on a networked computer system, so that the computer program and any associated data, data files and data structures are stored, accessed and executed in a distributed manner by one or more processors or computers.
[0104] According to an embodiment of the present disclosure, a computer program product is provided, including computer instructions, and when the computer instructions are executed by a processor, the routing update method of the embodiment of the present disclosure is implemented.
[0105] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. The present disclosure is intended to cover any variations, uses or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are to be considered exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.
[0106] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various updates and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.
Claims
1. A routing update method, characterized in that: include: Receiving a routing update message, wherein the routing update message indicates an outbound interface of a transmission link in a switch where a failure occurs; Determine an equal-cost multipath routing group where the outgoing interface of the transmission link fails; Deleting the outgoing interface of the transmission link having a fault from the equal-cost multi-path routing group; updating each route in all routes corresponding to the outbound interface of the transmission link having a fault from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group, wherein the routes in all routes that have not completed the update continue to transmit data using the equal-cost multi-path routing group after the deletion process until the routes in all routes that have not completed the update complete the relationship update; Wherein, the updating of each route among all routes corresponding to the outgoing interface of the transmission link failure from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group in turn comprises: for each route among all routes, updating the route from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group by the following operations: updating the route to a database; if the route exists in the database, checking whether the new equal-cost multi-path routing group already exists; if the new equal-cost multi-path routing group does not exist, creating the new equal-cost multi-path routing group; updating the route from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group; if the new equal-cost multi-path routing group exists, updating the route from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group; Wherein, the creating of the new equal-cost multi-path routing group includes: creating the new equal-cost multi-path routing group based on the relevant information of the routing in the database, wherein the relevant information includes the next hop of the routing and the non-faulty outgoing interface corresponding to the next hop in the switch.
2. The routing update method according to claim 1, characterized in that: The outbound interface of the switch where the transmission link fails includes an outbound interface where the transmission link fails due to a failure of the outbound interface itself and / or an outbound interface where the transmission link fails due to a change in the next hop.
3. The routing update method according to claim 1, characterized in that: The determining of the equal-cost multi-path routing group where the outgoing interface where the transmission link fails is located includes: Writing the outgoing interface of the transmission link where the failure occurs into a database; In response to the change of the database, an equal-cost multi-path routing group is determined in which the outgoing interface where the transmission link fails is located.
4. The routing update method according to claim 1, characterized in that: The step of deleting the outgoing interface where the transmission link fails from the equal-cost multi-path routing group includes: By calling the deletion of the switch abstract interface, the outbound interface where the transmission link fails is deleted from the equal-cost multi-path routing group.
5. A routing update system, characterized in that: The routing update system includes a border gateway protocol container, and the border gateway protocol container includes a border network management protocol unit and an exchange state service unit, wherein: The border network management protocol unit receives a routing update message, wherein the routing update message indicates an outgoing interface of a transmission link in a switch where a failure occurs; The exchange state service unit determines the equal-cost multi-path routing group where the outgoing interface of the transmission link fails; deletes the outgoing interface of the transmission link fails from the equal-cost multi-path routing group; updates each of all routes corresponding to the outgoing interface of the transmission link fails in turn from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to a new equal-cost multi-path routing group, wherein the routes among all the routes that have not completed the update continue to transmit data using the deleted equal-cost multi-path routing group until the routes among all the routes that have not completed the update complete the relationship update; Wherein, the border gateway protocol container also includes a routing manager, and the updating of each route in all routes corresponding to the outgoing interface of the transmission link failure from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group in turn includes: for each route in all routes, the routing manager updates the route from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group by the following operations: the routing manager updates the route to the database; if the route exists in the database, the exchange state service unit checks whether the new equal-cost multi-path routing group already exists; if the new equal-cost multi-path routing group does not exist, the exchange state service unit creates the new equal-cost multi-path routing group; the route is updated from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group; if the new equal-cost multi-path routing group exists, the exchange state service unit updates the route from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group; Wherein, the creating of the new equal-cost multi-path routing group includes: creating the new equal-cost multi-path routing group based on the relevant information of the routing in the database, wherein the relevant information includes the next hop of the routing and the non-faulty outgoing interface corresponding to the next hop in the switch.
6. A routing update device, characterized in that: include: A receiving unit, configured to receive a routing update message, wherein the routing update message indicates an outbound interface of a transmission link in a switch where a failure occurs; A determination unit configured to determine an equal-cost multi-path routing group where the outgoing interface of the transmission link fails; An updating unit, configured to delete the outgoing interface where the transmission link fails from the equal-cost multi-path routing group; The updating unit is further configured to, after deleting the outgoing interface where the transmission link fails from the equal-cost multi-path routing group, update each of all routes corresponding to the outgoing interface where the transmission link fails from a relationship corresponding to the equal-cost multi-path routing group to a relationship corresponding to the new equal-cost multi-path routing group, wherein the routes that have not completed the update among all the routes continue to transmit data using the deleted equal-cost multi-path routing group until the relationship of the routes that have not completed the update among all the routes is updated; The updating unit is further configured to update, for each of the routes in all the routes, the route from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group by the following operations: updating the route to a database; if the route exists in the database, checking whether the new equal-cost multi-path routing group already exists; if the new equal-cost multi-path routing group does not exist, creating the new equal-cost multi-path routing group; updating the route from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group; if the new equal-cost multi-path routing group exists, updating the route from the relationship corresponding to the equal-cost multi-path routing group to the relationship corresponding to the new equal-cost multi-path routing group; The updating unit is further configured to create the new equal-cost multi-path routing group based on the relevant information of the routing in the database, wherein the relevant information includes the next hop of the routing and the non-faulty outbound interface corresponding to the next hop in the switch.
7. An electronic device, characterized in that: include: processor; a memory for storing instructions executable by the processor; The processor is configured to execute the instructions to implement the routing update method according to any one of claims 1 to 4.
8. A computer-readable storage medium, characterized in that: When the instructions in the computer-readable storage medium are executed by at least one processor, the at least one processor is prompted to perform the routing update method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Convergence method for equivalent routing and network device
CN102801614A