CN110417569B - Network link fault processing method and tunnel endpoint equipment - Google Patents
Network link fault processing method and tunnel endpoint equipment Download PDFInfo
- Publication number
- CN110417569B CN110417569B CN201810407208.3A CN201810407208A CN110417569B CN 110417569 B CN110417569 B CN 110417569B CN 201810407208 A CN201810407208 A CN 201810407208A CN 110417569 B CN110417569 B CN 110417569B
- Authority
- CN
- China
- Prior art keywords
- link
- tunnel
- network
- network link
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003672 processing method Methods 0.000 title abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 36
- 238000011084 recovery Methods 0.000 abstract description 7
- 238000007726 management method Methods 0.000 description 116
- 238000013461 design Methods 0.000 description 22
- 238000012545 processing Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 101100133350 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) nhp-1 gene Proteins 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The embodiment of the application discloses a network link fault processing method and tunnel endpoint equipment, wherein the method comprises the following steps: when detecting that a target network link is unavailable, a tunnel endpoint device determines a first service tunnel on the tunnel endpoint device, where path management information of the first service tunnel includes a main link and a standby link of a first link backup group of the first service tunnel, and a route management flag of the first link backup group, where the main link of the first link backup group is the target network link; and the tunnel endpoint equipment sets a route management mark of the first link backup group as a first value, and the route management mark indicates that the message corresponding to the target network link is forwarded through the backup link. By adopting the method and the device, the recovery time of the link fault of the tunnel endpoint equipment can be greatly shortened.
Description
Technical Field
The present application relates to the field of communications, and in particular, to a network link failure processing method and a tunnel endpoint device.
Background
Virtual eXtensible Local Area Network (VXLAN) is a Network virtualization technology for data centers. In a data center VXLAN network shown in fig. 1, a Virtual Machine (VM) is connected to the VXLAN network through a Leaf Switch (LSW), the upper layer of the LSW is a backbone switch (SSW), and a Tunnel Endpoint device (VXLAN Tunnel Endpoint, VTEP) of the VXLAN may be deployed on the LSW and the SSW. The path between two VTEPs is called a VXLAN tunnel. In the figure, SSWs and LSWs are all connected, and multiple SSWs use the same IP address, so that a certain LSW can forward a message through any SSW, for example, LSW1 in fig. 1 can select any SSW from SSW1, SSW2, SSW3, and SSW4 to forward a message when forwarding a message, so that LSW1 and network links among SSW1, SSW2, SSW3, and SSW4 respectively form an equal-cost multi-path routing (ECMP). Since the SSWs use the same IP address, the VXLAN tunnel between any LSW and the SSWs can be considered as the same VXLAN tunnel, i.e., in fig. 1, the VXLAN tunnel with LSWs as VTEPs includes multiple equivalent paths. In this application, when a message needs to be forwarded, the VTEP device may determine a corresponding network link according to a flow hash value of the message that needs to be forwarded currently, and forward the message through the network link, thereby achieving load sharing of the message and ensuring high availability of the network, for example, when the LSW1 forwards a message, the SSW1 corresponding to the flow hash value is found according to the flow hash value of the message, so as to forward the message through the network link between the LSW1 and the SSW 1.
Under the existing VXLAN architecture, if a network link in ECMP is unavailable, for example, a network interface on SSW3 in fig. 1 fails, resulting in the network link between SSW3 and LSW1 being unavailable. At this time, if LSW1 needs to forward a certain message through the network link, the message forwarding task is switched to the network link between leaf LSW1 and other SSWs, and in order to complete the above-mentioned ECMP link switching, the forwarding tasks of each equivalent link in the VXLAN tunnel need to be redistributed, for example, a correspondence table between the flow hash value of the message and each network link is reset.
Similarly, when multiple network links, whether equivalent or non-equivalent, are included in a non-VXLAN tunnel, when one of the network links fails, forwarding tasks also need to be redistributed among the remaining links,
in this application, any tunnel including one or more network links for carrying forwarding of a certain service packet is referred to as a service tunnel. The switching performance of the above-mentioned failure increases linearly with the increase in the number of network links included in the traffic tunnel to which the failed network link belongs, and the switching performance is not ideal.
Disclosure of Invention
In view of this, embodiments of the present application provide a network link failure processing method and a tunnel endpoint device. In order to improve the link failure switching performance of the traffic tunnel.
In a first aspect, an embodiment of the present application provides a method for processing a network link failure, including:
when the tunnel endpoint device detects that the target network link is unavailable, a first service tunnel which takes the target network link as a main link of a link backup group of the first service tunnel can be found according to the path management information of the service tunnel, namely, the main link of a certain link backup group in at least one link backup group of the first service tunnel recorded in the path management information of the first service tunnel is taken as the target network link;
after finding the first service tunnel which takes the target network link as the main link of the link backup group, the tunnel endpoint device sets the route management mark of the first link backup group in the path management information of the first service tunnel as a first value, and the route management mark indicates that the message corresponding to the target network link is forwarded through the backup link of the first tunnel path.
Therefore, when the tunnel endpoint device in the embodiment of the application finds that a certain network link is unavailable due to a fault or other reasons, the forwarding task of each network link in each service tunnel does not need to be redistributed, but only the route management mark corresponding to the link backup group of the unavailable network link as the main link needs to be changed, so that the range of an operation object and the operation complexity are greatly reduced, the recovery time of the link fault of the tunnel endpoint device is equal to the time for refreshing the route management mark of the path management information, and the link fault recovery within 10ms can be realized.
In one design, before the tunnel endpoint device acquires the first traffic tunnel on the tunnel endpoint device, the method further comprises:
the tunnel endpoint device creates corresponding path management information for each traffic tunnel.
In one design, the tunnel endpoint device may retain path management information for the traffic tunnel for the duration of the traffic tunnel.
In one design, if the first traffic tunnel includes a plurality of equivalent network links, the path management information of the first traffic tunnel includes a link backup group created by taking each of the plurality of equivalent network links as a main link, and each link backup group further includes a backup link, and the backup link is another network link of the plurality of equivalent network links except for the main link of the backup link group;
if the first service tunnel includes a first network link and a second network link, and the first network link is a main link and the second network link is a standby link of the first network link, the main link of the first link backup group included in the path management information is the first network link, and the standby link of the first link backup group is the second network link.
In one design, if the traffic tunnel includes only the first network link, the path management information for the traffic tunnel includes path information for the first network link.
Therefore, the tunnel endpoint device of the present application creates uniform path management information for the service tunnels under various conditions, and always maintains the path management information of the service tunnel during the existence of the service tunnel, so that when the state of the bearer network link of the service path changes, the path information of the service tunnel does not need to be changed or deleted or the path information of the service tunnel is newly established, but only the route management flag of the link backup group in the path management information (for example, an ECMP table) of the service tunnel needs to be changed, and the switching of the message forwarding link can be realized, thereby saving the time consumption for refreshing the MAC and ARP egress interface information, and improving the link switching performance of the service tunnel.
In one design, when the first traffic tunnel includes multiple equivalent network links, the primary link of the first link-backup group and the backup link of the first link-backup group are on different interface boards. That is, a certain network link is used as a main link of a link backup group, and another network link on a different interface board from the network link is selected from a plurality of equivalent network links to be used as a backup link of the link backup group, so that the risk that the main link and the backup link in the same link backup group are unavailable due to the failure of the interface board can be effectively reduced.
In one design, when the first traffic tunnel includes a plurality of equivalent network links, the backup links of the first linkset are determined from the plurality of equivalent network links based on at least one of the following parameters: the load state of each equivalent network link, the failure occurrence rate of each network link, the failure occurrence rate of an interface board where each network link is positioned and the switching performance of each network link. Namely, a certain network link is used as a main link of a link backup group, and another network link is selected from a plurality of equivalent network links as a standby link of the link backup group according to load balance, the occurrence rate of link failure, the failure occurrence rate of an interface board where the link is located or the switching performance of the link, thereby ensuring the link switching efficiency of a service tunnel.
In one design, the method further includes:
and under the condition that the route management mark of the first link backup group is a first value, forwarding a message corresponding to the target network link through the standby link of the first link backup group.
In one design, the method further includes:
when detecting that the target network link is restored, the tunnel endpoint device sets a route management flag of the first link backup group in the path management information of the first service tunnel to be a second value, and the route management flag indicates that a message corresponding to the target network link is forwarded via the target network link.
Namely, when detecting that the target network link is recovered, the tunnel endpoint device switches back to the target network link to forward the corresponding message.
In one design, the path management information is equal cost multipath routing information.
In one design, the route management label in the path management information is an operation, administration, and maintenance, OAM, label.
A second aspect of the present application provides a tunnel endpoint device, comprising:
the system comprises a service tunnel determination module, a tunnel endpoint device and a network node device, wherein the service tunnel determination module is used for acquiring a first service tunnel on the tunnel endpoint device when detecting that a target network link is unavailable, and path management information of the first service tunnel comprises a main link and a standby link of a first link backup group of the first service tunnel and a route management mark of the first link backup group, and the main link of the first link backup group is the target network link;
and the route mark updating module is used for setting the route management mark of the first link backup group as a first value, and the route management mark indicates that the message corresponding to the target network link is forwarded through the backup link.
In one design, the tunnel endpoint device further includes:
and the path information creating module is used for creating path management information for the service tunnel.
In one design, the path information creation module is further to retain path management information for the traffic tunnel during an existence period of the traffic tunnel.
In one design, if the first traffic tunnel includes a plurality of equivalent network links, the path management information of the first traffic tunnel includes a link backup group created by taking each of the plurality of equivalent network links as a main link, and each link backup group further includes a backup link, and the backup link is another network link of the plurality of equivalent network links except for the main link of the backup link group;
if the first service tunnel includes a first network link and a second network link, and the first network link is a main link and the second network link is a standby link of the first network link, the main link of the first link backup group included in the path management information is the first network link, and the standby link of the first link backup group is the second network link.
In one design, if the second traffic tunnel includes only the first network link, the path management information created by the path information creation module for the second traffic tunnel includes path information of the first network link.
Therefore, the tunnel endpoint device of the present application creates uniform path management information for the service tunnels under various conditions, and always maintains the path management information of the service tunnel during the existence of the service tunnel, so that when the state of the bearer network link of the service path changes, the path information of the service tunnel does not need to be changed or deleted or the path information of the service tunnel is newly established, but only the route management flag of the link backup group in the path management information of the service tunnel needs to be changed, and the switching of the message forwarding link can be realized, thereby saving the time consumption for refreshing the MAC and ARP outgoing interface information, and improving the link switching performance of the service tunnel.
In one design, when the first traffic tunnel includes multiple equivalent network links, the primary link of the first link-backup group and the backup link of the first link-backup group are on different interface boards. That is, a certain network link is used as a main link of a link backup group, and another network link on a different interface board from the network link is selected from a plurality of equivalent network links to be used as a backup link of the link backup group, so that the risk that the main link and the backup link in the same link backup group are unavailable due to the failure of the interface board can be effectively reduced.
In one design, when the first traffic tunnel includes a plurality of equivalent network links, the backup links of the first linkset are determined from the plurality of equivalent network links based on at least one of the following parameters: the load state of each equivalent network link, the failure occurrence rate of each network link, the failure occurrence rate of an interface board where each network link is positioned and the switching performance of each network link. Namely, a certain network link is used as a main link of a link backup group, and another network link is selected from a plurality of equivalent network links as a standby link of the link backup group according to load balance, the occurrence rate of link failure, the failure occurrence rate of an interface board where the link is located or the switching performance of the link, thereby ensuring the link switching efficiency of a service tunnel.
In one design, the tunnel endpoint device further includes:
and the message forwarding module is used for forwarding the message corresponding to the target network link through the standby link of the first link backup group under the condition that the routing management mark of the first link backup group is a first value.
In one design, the route tag update module is further to:
when the target network link is detected to be recovered, setting a route management mark of a first link backup group in the path management information of the first service tunnel as a second value, wherein the route management mark represents that a message corresponding to the target network link is forwarded through the target network link.
A third aspect of the present application provides another tunnel endpoint device. The system comprises a memory, a processor, a switching chip and a network interface, wherein:
a memory for storing a program;
a processor for executing the program stored in the memory, the processor configuring the switch chip when the program is executed;
the switch chip is configured to establish a network link through a network interface, and execute, after configuration by the processor, the implementation manner of the first aspect or any one of the possible designs of the first aspect.
A fourth aspect of the present application provides a switch chip configured to perform an implementation of the first aspect or any one of the possible designs of the first aspect.
In a fourth aspect, the present application provides a computer program product comprising: computer program code for causing a computer to perform the method of any of the possible contemplated implementations of the first aspect described above, when the computer program code runs on a computer.
In a fifth aspect, the present application provides a computer-readable medium having program code stored thereon, which, when run on a computer, causes the computer to perform the method of any one of the possible design implementations of the first aspect.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments or the background art of the present application, the drawings required to be used in the embodiments or the background art of the present application will be described below.
Fig. 1 is a schematic diagram of a data center VXLAN network architecture;
fig. 2 is a schematic diagram of a main control board structure of a tunnel endpoint device in an embodiment of the present application;
fig. 3 is a schematic diagram of an interface board structure of a tunnel endpoint device in an embodiment of the present application;
fig. 4 is a schematic flowchart of a network link failure processing method according to an embodiment of the present application;
fig. 5 is a schematic content diagram of path management information of a traffic tunnel in an embodiment of the present application;
fig. 6 is a schematic diagram illustrating updating of a route management flag of a traffic tunnel in an embodiment of the present application;
fig. 7 is a functional structure diagram of a tunnel endpoint device in an embodiment of the present application;
fig. 8 is a schematic structural diagram of a tunnel endpoint device in another embodiment of the present application;
fig. 9 is a schematic flowchart of forwarding a packet by a tunnel endpoint device in an embodiment of the present invention.
Detailed Description
Embodiments of the present application are described below with reference to the drawings.
The network link failure processing method in the embodiment of the present application may be applied to a tunnel endpoint device, for example, a VTEP of VXLAN, and the tunnel endpoint device in the VXLAN network of the data center shown in fig. 1 may be an SSW or an LSW, or may be in other network node devices that can establish a service tunnel in other implementation scenarios.
In this embodiment, the tunnel endpoint device may include a main control board as shown in fig. 2, which is also called a Main Processing Unit (MPU), and an interface board as shown in fig. 3, which is also called a Line Processing Unit (LPU), which is also called a traffic board. The number of the main control board and the interface board is not limited, wherein the interface board can be used for forwarding messages, and the main control board can be used for processing protocol messages which cannot be processed by the interface board and managing the interface board. Specifically, a processor of the main control board, for example, a Central Processing Unit (CPU) shown in fig. 2, and a processor of the interface board, for example, a CPU shown in fig. 3, are control units of the main control board and the interface board, respectively, the main control board CPU and the interface board CPU are responsible for protocol stack interaction, such as sending and receiving of various protocol messages, the main control board CPU is also responsible for summarizing and distributing synchronization messages of each interface board, and the interface board CPU is also responsible for configuring and managing the switch chip. The main control board and the interface board run the program and the static configuration parameters stored in the FLASH memory (FLASH), the program run the execution code and data temporarily stored in the CPU connected to the Random Access Memory (RAM), in the interface board, the CPU can configure the Switch chip (LAN Switch), including controlling the Ethernet Switch chip to initialize, issue the service table, send and receive the protocol message, and trigger various interrupts, including port link up and link down processing, in this application embodiment, the interface board CPU controls the Switch chip of the interface board to create the path management information and store it in the internal register of LSW, when the service message reaches the interface board, the Switch chip processes the service message according to the path management information stored in the internal register, in the Switch chip internal buffer memory insufficient some scenes, the exchange chip can optionally store the forwarded message content through an external RAM. The physical layer (PHY) chip connected to the switching chip completes analog/digital or digital/analog conversion of data communication between devices, and implements interface connection of ethernet interfaces (optical or electrical interfaces).
In this embodiment of the present application, the tunnel endpoint device sets corresponding service tunnels for different services, each service tunnel corresponds to one service, and the tunnel endpoint device may identify, according to different service destination IP addresses, that a received packet corresponds to a corresponding service tunnel, and further, the tunnel endpoint device may allocate at least one network link for carrying the service tunnel to different service tunnels for forwarding the packet. The network link is a physical transmission channel between two tunnel endpoint devices, and the network link may be uniquely identified by a next hop node device address, for example, path information of a corresponding network link may be recorded by Next Hop (NHP) information, and the NHP information may record, in addition to the next hop node device address of the network link (for example, including a next hop IP address and a next hop MAC address, a Media Access control address), a transmission port of the tunnel endpoint device itself corresponding to the network link. For example, the service tunnel in the embodiment of the present application may be a VXLAN tunnel used for transmitting a packet encapsulated by VXLAN.
The tunnel endpoint device in the embodiment of the present application may create path management information corresponding to each service tunnel, where the path management information includes path information of a network link used for forwarding a packet, and if a certain service tunnel includes only one network link, the path management information of the service tunnel includes the path information of the network link; if a certain traffic tunnel includes more than one network link, the tunnel endpoint device in this embodiment may assign a backup link to at least one of the network links, where the backup link is another network link in the plurality of equivalent network links except the main link of the backup link group, for example, in the data center VXLAN network shown in fig. 1, the following 4 network links exist in a certain traffic tunnel on the LSW 1: LSW1-SSW1, LSW1-SSW2, LSW1-SSW3, and LSW1-SSW4, which are respectively abbreviated as link 1, link 2, link 3, and link 4, then LSW1 may respectively make at least one backup link for the 4 network links, for example, link 2 is allocated as a backup link of link 1, then link 1 and link 2 form a link backup group, which may be uniquely identified by the identification of link 1 or by the identification of link 1 + the identification of link 2, where link 1 is a primary link in the link backup group, link 2 is a backup link in the link backup group, and the path management information of the traffic tunnel records the backup relationship of the link backup group, that is, link 2 is used as a backup link of link 1. And further, the path management information of the service tunnel may further record a route management flag corresponding to each link backup group included in the service tunnel, where the route management flag is used to indicate that a packet corresponding to a main link of the link backup group is forwarded through the main link or forwarded through a backup link of the link backup group. For example, the path management information of the traffic tunnel may be as shown in fig. 5, NHP-1 to NHP-4 respectively represent NHP information of link 1 to link 4, when LSW1 determines that the packet needs to be forwarded by link 1 according to a flow hash value of the packet, LSW1 checks whether a link backup group using link 1 as a main link exists, further checks a route management flag 1 corresponding to the link backup group if the link backup group using link 1 as a main link exists as shown in fig. 5, indicates that the packet needs to be forwarded by a backup link, that is, link 2, in the link backup group if the route management flag 1 is a first value, and otherwise indicates that the packet needs to be forwarded by the main link, that is, link 1.
When the tunnel endpoint device detects that the target network link is unavailable, it may find, according to the path management information of the traffic tunnel, a first traffic tunnel that takes the target network link as a main link of its link backup group, that is, a main link of a certain link backup group in at least one link backup group of the first traffic tunnel recorded in the path management information of the first traffic tunnel is the target network link, where the first traffic tunnel may be one or multiple, and the link backup group that takes the target network link as the main link is referred to as a first link backup group. After finding a first service tunnel which takes a target network link as a main link of a link backup group of the target network link, tunnel endpoint equipment sets a route management mark of the first link backup group in path management information of the first service tunnel to be a first value, wherein the route management mark indicates that a message corresponding to the target network link is forwarded through a backup link of a first tunnel path. Therefore, when the tunnel endpoint device in the embodiment of the application finds that a certain network link is unavailable due to a fault or other reasons, the forwarding task of each network link in each service tunnel does not need to be redistributed, but only the route management mark corresponding to the link backup group of the unavailable network link as the main link needs to be changed, so that the range of an operation object and the operation complexity are greatly reduced, the recovery time of the link fault of the tunnel endpoint device is equal to the time for refreshing the route management mark of the path management information, and the link fault recovery within 10ms can be realized. The route management flag in the embodiment of the present application may be Operation Administration and Maintenance (OAM) information.
In the prior art, a VTEP may adopt different path information recording manners for service tunnels with different network link bearing conditions, for example, for a service tunnel with an equal-cost multi-path route, the VTEP may create an ECMP table information for the service tunnel to record path information of each network link, and may find NHP information of each network link of the service tunnel through the ECMP table; for a traffic tunnel carried by only one network link, the VTEP will usually record NHP information of the network link of the traffic tunnel. And when a message needing to be forwarded is received, the VTEP firstly finds a corresponding service tunnel in the routing table according to the destination IP address of the message by searching the routing table, and then judges whether an ECMP table of the service tunnel exists or not, if the ECMP table of the service tunnel exists, corresponding NHP information is found in the ECMP table of the service tunnel according to the flow hash value of the message, so that the message is forwarded through a corresponding network link, and if the ECMP table of the service tunnel does not exist, the NHP information of the service tunnel is directly found, so that the message is forwarded through the corresponding network link. In the above prior art, when the status of the bearer network link changes (for example, changes from multiple bearer network links to only a single bearer network link, or changes from only a single bearer network link to multiple bearer network links), the tunnel endpoint device needs to change the path information recording manner of the traffic tunnel, for example, delete the ECMP table of the traffic tunnel, change to record the path information of the traffic tunnel with NHP information, or create the ECMP table of the traffic tunnel, and refresh the egress interface information of the MAC Address and Address Resolution Protocol (ARP) every time of changing or creating the ECMP table of the traffic tunnel, so the link failure switching time in this case needs to add the time consumed by refreshing the MAC and ARP egress interface information additionally, while the present application creates unified path management information for the traffic tunnels in various cases and keeps the path management information of the traffic tunnel during the existence of the traffic tunnel, therefore, when the state of the bearer network link of the service path changes, the switching of the message forwarding link can be realized only by changing the route management flag of the link backup group in the path management information (for example, an ECMP table) of the service tunnel instead of changing or deleting the path information of the service tunnel or newly establishing the path information of the service tunnel, so that the time consumption for refreshing the MAC and ARP output interface information is saved, and the link switching performance of the service tunnel is improved.
Referring to fig. 4, fig. 4 is a schematic flowchart of a network link failure processing method according to an embodiment of the present application, where the method includes, but is not limited to, the following steps:
s102, when detecting that a target network link is unavailable, a tunnel endpoint device determines a first service tunnel on the tunnel endpoint device, where path management information of the first service tunnel records a main link and a standby link of a first link backup group of the first service tunnel and a route management flag of the first link backup group, and the main link of the first link backup group is the target network link.
When the tunnel endpoint device detects that the target network link is unavailable, it may find a first service tunnel, in which the target network link is used as a main link of a link backup group of the first service tunnel, by traversing path management information of all service tunnels on the device, that is, a main link of a link backup group in at least one link backup group of the first service tunnel recorded in the path management information of the first service tunnel is used as the target network link, and a link backup group, in which the target network link is used as the main link, is called a first link backup group, that is, the first service tunnel may include not only the first link backup group, but also other link backup groups besides the first link backup group, and there may be one or more first service tunnels found in S102. In an alternative embodiment, the tunnel endpoint device may maintain path management information for all traffic tunnels on the tunnel endpoint device by establishing a path information base in which to maintain path management information for all traffic tunnels on the tunnel endpoint device.
In this embodiment, the path management information of the first service tunnel may exemplarily be an ECMP table as shown in fig. 6, where the path management information includes NHP information of a main link and a standby link in each link backup group, which are respectively established for a link a, a link b, and a link c, the NHP information of the link a, the link b, and the link c is respectively denoted as NHP-a, NHP-b, and NHP-c, and an OAM flag corresponding to each link backup group is used as a route management flag. For example, when the target network link is link a, the tunnel endpoint device may traverse the ECMP tables of all the traffic tunnels on the device, find whether a link backup group using link a as a primary link is recorded in the ECMP table of each traffic tunnel, and determine the traffic tunnel satisfying the condition as the first traffic tunnel.
In a specific implementation, the tunnel endpoint device may detect a network link state of the tunnel endpoint device through Bidirectional Forwarding Detection (BFD), so as to find that a target network link is unavailable in time.
And S104, the tunnel endpoint device sets the route management mark of the first link backup group to a first value, which indicates that the message corresponding to the target network link is forwarded through the backup link of the first link backup group.
Taking the ECMP table of the first traffic tunnel as shown in fig. 6 as an example, when it is found that the network link a is unavailable (due to failure or exclusive use by other traffic, etc.), the tunnel endpoint device finds a link backup group using the network link a as a main link in the ECMP table of the first traffic tunnel, and changes the corresponding OAM flag from OAM1 to OAM1 ', OAM1 ', which is a first value, where the OAM flag of the link backup group is OAM1 ' indicating that a message originally allocated to be forwarded by the network link a in the first traffic tunnel is forwarded through the backup link b.
And S106, the tunnel endpoint equipment forwards the message corresponding to the target network link through the standby link of the first link backup group.
The message corresponding to the target network link is a message distributed and forwarded by the target network link, for example, only one network link or only one main link in the first service tunnel is the target network link, or the first service tunnel is an equal-cost multipath tunnel, and then the load-bearing link corresponding to the flow hash value is determined as the target network link according to the flow hash value of the message.
When the tunnel endpoint device receives a message of a first service tunnel needing to be forwarded through a target network link, the tunnel endpoint device determines the first service tunnel to which the target network link belongs, looks up a route management mark of a first link backup group in path management information of the first service tunnel, and forwards the message through a backup link of the first link backup group if the route management mark is a first value. In an alternative embodiment, if the first link backup group has more than one backup link, one of the backup links used for forwarding the packet may be randomly selected, or the backup link used for forwarding the packet may be selected according to conditions such as load balancing, priority, or reliability.
Taking the ECMP table of the first service tunnel as shown in fig. 6 as an example, when the message is determined to be the message of the first service tunnel according to the destination IP address of the received message, and further the corresponding network link a is found in the ECMP table of the first service tunnel according to the flow hash value of the message, the tunnel endpoint device further finds a link backup group using the network link a as a main link in the ECMP table of the first service tunnel, checks that the OAM flag of the link backup group is currently OAM1 ', OAM 1', that is, the first value, and thereby the tunnel endpoint device forwards the message via the backup link b of the link backup group.
And S108, when detecting that the target network link is recovered, the tunnel endpoint device sets the route management flag of the first link backup group to a second value, which indicates that the message corresponding to the target network link is forwarded via the target network link.
Taking the ECMP table of the first service tunnel shown in fig. 6 as an example, when it is detected that the network link a is recovered from the unavailable state, the tunnel endpoint device finds a link backup group using the network link a as a main link in the ECMP table of the first service tunnel, and changes an OAM label corresponding to the link backup group from OAM 1' to OAM1, OAM1 is a second value, and the OAM label of the link backup group is OAM1, which indicates that a message originally allocated to the first service tunnel and forwarded by the network link a is forwarded by the network link a.
S110, the tunnel endpoint equipment forwards the message corresponding to the target network link through the target network link.
When the tunnel endpoint device receives a message of a first service tunnel which needs to be forwarded through a target network link, the tunnel endpoint device checks a route management mark of a first link backup group in path management information of the first service tunnel, and if the route management mark is a first value, the message is forwarded through a main link of the first link backup group, namely the target network link.
Taking the ECMP table of the first service tunnel as shown in fig. 6 as an example, when the message is determined to be the message of the first service tunnel according to the destination IP address of the received message, and further the corresponding network link a is found in the ECMP table of the first service tunnel according to the flow hash value of the message, the tunnel endpoint device further finds a link backup group using the network link a as a main link in the ECMP table of the first service tunnel, checks that the OAM flag of the link backup group is currently OAM1, and OAM1 is a second value, so that the tunnel endpoint device directly forwards the message via the network link a.
When the tunnel endpoint device in the embodiment of the application finds that a certain network link is unavailable due to a fault or other reasons, only the route management mark in the path management information of the service tunnel carried by the network link needs to be refreshed, so that the recovery time of the link fault of the tunnel endpoint device is greatly shortened, and the link fault recovery within 10ms can be realized.
In an optional embodiment, before performing S102, the network link failure processing method according to the present application may further include:
s100, the tunnel endpoint device creates path management information for the service tunnel.
In a specific implementation, the tunnel endpoint device may create different path management information for traffic tunnels for different link conditions as follows.
The first condition is as follows: the service tunnel is an ECMP tunnel, that is, a plurality of equivalent network links jointly carry message forwarding of a certain service tunnel, such a service tunnel is an ECMP tunnel, for example, in a VXLAN data center scenario shown in fig. 1, LSW1 may forward a message through network links among SSW1, SSW2, SSW3, and SSW4, and the network links among LSW1, SSW1, SSW2, SSW3, and SSW4 are jointly used as a plurality of equivalent network links of a certain service tunnel, such a service tunnel may be referred to as an ECMP tunnel. For an ECMP tunnel, a tunnel endpoint device may set a link backup group for each network link in such a service tunnel, so that when a certain network link fails or is unavailable due to other situations, a message that should be forwarded by the network link may be quickly switched to a backup link in the link backup group corresponding to the network link for forwarding. The tunnel endpoint device may record NHP information of the main link and the standby link in all the link backup groups bearing a certain service tunnel in the path management information of the service tunnel, and also record a route management flag corresponding to each link backup group, where the route management flag indicates that the message originally allocated to be forwarded by the main link in the link backup group is actually forwarded by the main link or the standby link in the link backup group. Illustratively, the network links carrying traffic tunnel a include three equivalent network links: a link a, a link b, and a link c, where a-b indicates that a is a main link and b is a standby link of a in the link backup group, and so on, then as shown in fig. 6, the tunnel endpoint device records NHP information of the main link and NHP information of the standby link of each link backup group in the three link backup groups, and an OAM flag indicating that each link backup group forwards a message through the main link or the standby link in an ECMP table of the traffic tunnel a.
In an optional embodiment, when a certain traffic tunnel includes multiple equivalent network links, the main link and the backup link in the same link backup group in the traffic tunnel are located on different interface boards. That is, when a tunnel endpoint device selects a backup link for a certain network link, another network link on a different interface board from the network link can be preferentially selected as the backup link in the equivalent network links, so that the risk that the primary link and the backup link are unavailable at the same time due to the failure of the interface board can be effectively reduced.
In another alternative embodiment, when a traffic tunnel includes a plurality of equivalent network links, the backup links of the link-backup-group are determined from the plurality of equivalent network links according to at least one of the following parameters: the load state of each equivalent network link, the failure occurrence rate of each network link, the failure occurrence rate of an interface board where each network link is positioned and the switching performance of each network link. That is, when a tunnel endpoint device selects a backup link for a certain network link, another network link may be selected as the backup link from the multiple equivalent network links according to load balancing, a link failure occurrence rate, a failure occurrence rate of an interface board where the link is located, or a switching performance of the link, where the switching performance of the link is a delay, a transit time, a signal transmission loss, and the like caused by switching a packet from the network link a to another network link B for forwarding when the backup link is selected for the network link a.
When the tunnel endpoint device selects a standby link for a certain network link, it may also combine the two embodiments, for example, preferentially select another equivalent network link located on a different interface board from the main link as the standby link, and if there are multiple equivalent network links located on different interface boards from the main link, further select the standby link among the multiple equivalent network links according to load balancing, link failure occurrence rate, failure occurrence rate of the interface board where the link is located, or switching performance of the link.
Case two: for such a service tunnel, the tunnel endpoint device may directly record its primary/secondary relationship in the path management information of the service tunnel, that is, directly use a group of network links having the primary/secondary relationship as a link backup group, and record a route management flag corresponding to the link backup group. Illustratively, a network link carrying a service tunnel a includes a link a and a link b, where the link b is a standby link of the link a, so that the tunnel endpoint device may directly record the primary-standby relationship between the link a and the link b in an ECMP table of the service tunnel a as a link backup group, and record an OAM flag indicating that the link backup group forwards a message through the primary link or the standby link.
In case three, the traffic tunnel comprises only one network link, i.e. the traffic tunnel has a single next hop path. For such traffic tunnels, the tunnel endpoint device also creates path management information for it, but only includes the path information of this one network link in its path management information.
It should be noted that, in this embodiment, it is listed that the tunnel endpoint device creates path management information for the service tunnels in the above three cases, but in an optional embodiment, the tunnel endpoint device may create path management information for the service tunnels in more cases, where the path management information is not deleted in the life cycle of the corresponding service tunnel, that is, the path management information of the service tunnel is retained during the existence period of the service tunnel, and only when a certain service tunnel is deleted, the path management information corresponding to the service tunnel is deleted.
In a specific implementation, a specific processing logic of the tunnel endpoint device in the embodiment of the present application when forwarding a packet may be as shown in fig. 9:
s1101, finding a corresponding first service tunnel in a routing table according to the destination IP address of the message.
In a specific implementation, the routing table stores destination IP addresses corresponding to the service tunnels on the tunnel endpoint device, so that the tunnel endpoint device can quickly identify the service tunnels corresponding to the currently received messages through the routing table when receiving the messages.
In an optional embodiment, the routing table may further include a receiving port corresponding to each service tunnel, that is, when the tunnel endpoint device receives the packet, the service tunnel corresponding to the currently received packet may be found in the routing table through the receiving port receiving the packet and the destination IP address of the packet.
S1102, find the ECMP table of the first traffic tunnel.
That is, the path management information of the service tunnel in this embodiment is an ECMP table, the tunnel endpoint device in this embodiment stores corresponding ECMP tables for all service tunnels, and may search the ECMP table of the first service tunnel according to the tunnel identifier of the first service tunnel or directly using the corresponding destination IP.
In an optional embodiment, the tunnel endpoint device may establish a path information base, and store the ECMP tables of all service tunnels on the tunnel endpoint device in the path information base, and further store the subsequent NHP table and the OAM table in the path information base.
S1103, determining whether the first service tunnel is an ECMP tunnel, if so, executing S1104, otherwise, executing S1105.
Specifically, the tunnel endpoint device may determine, by using the number of the link backup groups in the ECMP table of the first traffic tunnel, whether the first traffic tunnel is an ECMP tunnel, for example, if there are two or more link backup groups, the first traffic tunnel is the ECMP tunnel, and if there is no link backup group or only one link backup group, the first traffic tunnel is not the ECMP tunnel. Or the tunnel endpoint device may further add an additional identifier to the ECMP tunnel, for example, it can be seen whether the ECMP tunnel is the ECMP tunnel in the tunnel identifier, or add a flag bit in the ECMP table to identify whether the service tunnel is the ECMP tunnel, so as to achieve the purpose of quickly determining whether the first service tunnel is the ECMP tunnel.
And S1104, finding a corresponding target network link in the ECMP group of the service tunnel according to the flow hash value of the message.
Specifically, the ECMP table of the first service tunnel may record a flow hash value corresponding to each main link, so that when the tunnel endpoint device receives the packet corresponding to the first service tunnel, the tunnel endpoint device may quickly find the corresponding main link as the target network link according to the flow hash value of the packet.
S1105, look up NHP table.
That is, the NHP information of the service tunnel in this embodiment is an NHP table, and NHP identifiers of each network link may be recorded in the ECMP table in this embodiment, for example, the NHP information may be identifiers or links of NHP tables corresponding to network links, and the NHP tables corresponding to network links may be quickly searched through the NHP identifiers.
Specifically, if the first service tunnel is not an ECMP tunnel, only one link backup group or only an NHP identifier of one network link is in the ECMP table of the first service tunnel, and the tunnel endpoint device may search the NHP table of the target network link according to the NHP identifier of the target network link, by using the main link or the only network link of the only link backup group as the target network link.
If the first service tunnel is an ECMP tunnel, the tunnel endpoint device may search the NHP table of the target network link according to the NHP identifier of the target network link corresponding to the flow hash value of the packet found in S1104.
S1106, determines whether a backup link group exists.
The link backup group of the target network link or the NHP id of the backup link may be recorded in the ECMP table of the first service tunnel or may be recorded in the NHP table of the target network link. Therefore, the tunnel endpoint device may determine whether the NHP identifier of the link backup group of the target network link or the standby link thereof is recorded in the ECMP table of the found first service tunnel, and may also check whether the NHP identifier of the link backup group of the target network link or the standby link thereof exists in the NHP table of the target network link.
S1107, if there is no backup link group of the target network link, the message is directly forwarded to the next-hop device of the target network link according to the corresponding port recorded in the NHP table of the target network link.
S1108, if there is a backup link group of the target network link, further checking an OAM identifier of the backup link group of the target network link, where the OAM identifier may be recorded in the ECMP table of the first service tunnel.
S1109, determining that the OAM flag of the backup link group of the target network link is 1, if so, executing S1110, otherwise, executing S1111.
S1110, if the OAM flag of the backup link group of the target network link is 1, that is, the routing management flag is a first value, the NHP table of the backup link is found through the NHP flag of the backup link group, and then the packet is forwarded to the next-hop device through the corresponding port recorded in the NHP table of the backup link.
S1111, if the OAM flag of the backup link group of the target network link is not 1, that is, the routing management flag is not the first value, the packet is forwarded to the next hop device through the corresponding port recorded in the NHP table of the primary link, that is, the target network link, of the backup link group.
The scheme provided by the embodiment of the present application has been mainly described from the perspective of the tunnel endpoint device. It will be appreciated that in order to implement the above functions, the tunnel endpoint device needs to provide corresponding hardware structures and/or software modules for performing the respective functions. The embodiments of the present application can be realized in hardware or a combination of hardware and computer software. Whether a function is performed as hardware or computer software drives hardware depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present teachings.
In the embodiment of the present application, according to the above method example, the tunnel endpoint device may be divided into the functional modules or the functional units, for example, each functional module or functional unit may be divided corresponding to each function, or two or more functions may be integrated into one processing module or processing unit. The integrated modules or units may be implemented in the form of hardware, or may be implemented in the form of software functional modules. It should be noted that, in the embodiment of the present application, the division of the module or the unit is schematic, and is only a logic function division, and there may be another division manner in actual implementation. Please refer to the following detailed description.
Referring to fig. 7, fig. 7 is a schematic structural diagram of a tunnel endpoint device according to an embodiment of the present disclosure. The tunnel endpoint device may be used to implement the method performed by the tunnel endpoint device in the embodiment illustrated in fig. 4 described above. As shown in fig. 7, the tunnel endpoint device includes:
a service tunnel determining module 710, configured to determine a first service tunnel on the tunnel endpoint device when detecting that a target network link is unavailable, where path management information of the first service tunnel includes a main link and a standby link of a first link backup group of the first service tunnel, and a route management flag of the first link backup group, where the main link of the first link backup group is the target network link;
a routing flag updating module 720, configured to set a routing management flag of the first link backup group to a first value, where the routing management flag indicates that a packet corresponding to the target network link is forwarded via the backup link.
In an alternative embodiment, the tunnel endpoint device may further include:
a path information creating module 700, configured to create corresponding path management information for each traffic tunnel.
Optionally, the path information creating module 700 stores the path management information of the service tunnel during the existence period of the service tunnel.
In an optional embodiment, the path information creating module 700 is specifically configured to:
if the first service tunnel includes a plurality of equivalent network links, the path management information of the first service tunnel created by the path information creation module 700 includes a link backup group created by taking each network link in the plurality of equivalent network links as a main link, and each link backup group further includes a backup link, where the backup link is another network link in the plurality of equivalent network links except for the main link of the backup link group;
if the first service tunnel includes a first network link and a second network link, and the first network link is a main link and the second network link is a standby link of the first network link, the path information creating module 700 creates the path management information for the first service tunnel, where the main link of the first link backup group is the first network link and the standby link of the first link backup group is the second network link.
And a traffic tunnel, for example, a second traffic tunnel, includes only a first network link, the path management information created by the path information creation module 700 for the second traffic tunnel includes path information of the first network link.
Optionally, when the first service tunnel includes a plurality of equivalent network links, the main link of the first link backup group and the backup link of the first link backup group are located on different interface boards. That is, when a backup link is selected for a certain network link, another network link on a different interface board from the network link can be preferentially selected as the backup link from the plurality of equivalent network links, so that the risk that the main link and the backup link are unavailable at the same time due to the failure of the interface board can be effectively reduced.
In another alternative embodiment, when the first traffic tunnel includes a plurality of equivalent network links, the backup link of the first link-backup-group is determined from the plurality of equivalent network links according to at least one of the following parameters: the load state of each equivalent network link, the failure occurrence rate of each network link, the failure occurrence rate of an interface board where each network link is positioned and the switching performance of each network link. That is, when a standby link is selected for a certain network link, another network link can be selected from the multiple equivalent network links as the standby link according to load balancing, a link failure occurrence rate, a failure occurrence rate of an interface board where the link is located, or a switching performance of the link, where the switching performance of the link is a delay, a transfer frequency, a signal transmission loss, and the like caused by switching a packet from the network link a to another network link B for forwarding when the standby link is selected for the network link a.
Further in an optional embodiment, the tunnel endpoint device may further include:
a message forwarding module 730, configured to forward, through the standby link of the first link backup group, a message corresponding to the target network link.
In an alternative embodiment, the routing tag update module 720 is further configured to:
when the target network link is detected to be recovered, setting a route management flag of a first link backup group in the path management information of the first service tunnel to be a second value, wherein the route management flag represents that a message corresponding to the target network link is forwarded through the target network link.
The tunnel endpoint device in the embodiment illustrated in fig. 7 described above may be implemented as the tunnel endpoint device 800 illustrated in fig. 8. As shown in fig. 8, providing another structural schematic diagram of a tunnel endpoint device for the embodiment of the present application, a tunnel endpoint device 800 shown in fig. 8 includes a processor 801, a memory 802, a switch chip 803, and a communication interface 804, where the switch chip 803 is used to establish a network link through the communication interface 804, and support information transmission between the tunnel endpoint device 800 and other network node devices, and in a specific implementation, the tunnel endpoint device may be implemented by an LSW on a main control board or an interface board shown in fig. 2 or fig. 3, and specifically, the tunnel endpoint device may be used to implement functions of any one of a traffic tunnel determination module 710, a route label update module 720, a path information creation module 700, and a packet forwarding module 730 in fig. 7. The memory 802 is used for storing program codes and data for execution by the tunnel endpoint device 800, and the processor 801 is used for executing application program codes stored in the memory 802 to realize the configuration of the switch chip 803, so that the switch chip 803 can execute the actions of the tunnel endpoint device provided by the embodiment shown in fig. 4. The processor 801 and the switch chip 803 are communicatively connected, for example, by a bus.
It should be noted that in practical applications, the tunnel endpoint device 800 may include one or more processors, for example, respective CPUs are respectively disposed on the main control board and the interface board shown in fig. 2 and fig. 3, and therefore, the structure of the tunnel endpoint device 800 in fig. 8 does not constitute a limitation to the embodiment of the present application.
The processor 801 may be a Central Processing Unit (CPU), a Network Processor (NP), a hardware chip, or any combination thereof. The hardware chip may be an application-specific integrated circuit (ASIC), a Programmable Logic Device (PLD), or a combination thereof. The PLD may be a Complex Programmable Logic Device (CPLD), a field-programmable gate array (FPGA), a General Array Logic (GAL), or any combination thereof.
The memory 802 may include volatile memory (volatile memory), such as Random Access Memory (RAM); the memory 602 may also include a non-volatile memory (non-volatile memory), such as a read-only memory (ROM), a flash memory (flash memory), a Hard Disk Drive (HDD) or a solid-state drive (SSD); the memory 802 may also comprise a combination of the above-described types of memory.
A computer storage medium may be provided in an embodiment of the present application, and may be used to store computer software instructions for the tunnel endpoint device in the embodiment shown in fig. 4, which includes a program designed for executing the tunnel endpoint device in the above embodiment. The storage medium includes, but is not limited to, a flash memory, a hard disk, a solid state disk, or an on-chip register.
In an embodiment of the present application, a switch chip is further provided, where the switch chip is configured to execute the network link failure processing method designed for the tunnel endpoint device in the foregoing embodiment of fig. 4.
In an embodiment of the present application, a computer program product is further provided, and when being executed by a computing device, the computer program product may execute the method for processing a network link failure designed for a tunnel endpoint device in the foregoing fig. 4 embodiment.
The terms "first," "second," "third," and "fourth," etc. in the description and claims of this application and in the accompanying drawings are used for distinguishing between different objects and not for describing a particular order. Furthermore, the terms "include" and "have," as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those steps or elements listed, but may alternatively include other steps or elements not listed, or inherent to such process, method, article, or apparatus.
It should be understood by those of ordinary skill in the art that, in the various embodiments of the present application, the sequence numbers of the above-mentioned processes do not mean the execution sequence, and the execution sequence of the processes should be determined by their functions and inherent logic, and should not limit the implementation process of the embodiments of the present application.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and for parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
One of ordinary skill in the art will appreciate that all or part of the processes in the methods of the above embodiments may be implemented by hardware related to instructions of a computer program, which may be stored in a computer-readable storage medium, and when executed, may include the processes of the above method embodiments. And the aforementioned storage medium includes: various media capable of storing program codes, such as ROM or RAM, magnetic or optical disks, etc.
Claims (16)
1. A method for handling network link failure, the method comprising:
when detecting that a target network link is unavailable, a tunnel endpoint device determines a first service tunnel on the tunnel endpoint device, where path management information of the first service tunnel includes a main link and a standby link of a first link backup group of the first service tunnel, and a route management flag of the first link backup group, the main link of the first link backup group is the target network link, the tunnel endpoint device is provided with corresponding service tunnels for different services, each service tunnel corresponds to one service, and at least one network link for carrying the service tunnel is configured for the different service tunnels to forward a packet;
and the tunnel endpoint equipment sets a route management mark of the first link backup group as a first value, and the route management mark indicates that the message corresponding to the target network link is forwarded through the backup link.
2. The network link failure handling method of claim 1, wherein prior to the tunnel endpoint device determining the first traffic tunnel on the tunnel endpoint device, further comprising:
and the tunnel endpoint equipment establishes corresponding path management information for each service tunnel.
3. The network link failure handling method of claim 2, wherein:
if the first service tunnel comprises a plurality of equivalent network links, the path management information of the first service tunnel comprises a link backup group which is respectively created by taking each network link in the plurality of equivalent network links as a main link, each link backup group also comprises a standby link, and the standby link is another network link in the plurality of equivalent network links except the main link of the link backup group;
if the first service tunnel includes a first network link and a second network link, and the first network link is a main link and the second network link is a standby link of the first network link, the main link of the first link backup group included in the path management information is the first network link, and the standby link of the first link backup group is the second network link.
4. The network link failure handling method of claim 3, wherein:
when the first service tunnel comprises a plurality of equivalent network links, the main link of the first link backup group and the backup link of the first link backup group are located on different interface boards.
5. The network link failure handling method of claim 3, wherein:
when the first traffic tunnel includes a plurality of equivalent network links, the backup link of the first linkset is determined from the plurality of equivalent network links according to at least one of the following parameters: the load state of each equivalent network link, the failure occurrence rate of each network link, the failure occurrence rate of an interface board where each network link is positioned and the switching performance of each network link.
6. The network link failure handling method of claim 2, wherein the tunnel endpoint device creating corresponding path management information for each traffic tunnel comprises:
if the second service tunnel only comprises the first network link, the path management information of the second service tunnel comprises the path information of the first network link.
7. The network link failure handling method of any of claims 1-6, wherein the method further comprises:
when detecting that the target network link is restored, the tunnel endpoint device sets a route management flag of the first link backup group in the path management information of the first service tunnel to a second value, where the route management flag represents that a packet corresponding to the target network link is forwarded via the target network link.
8. A tunnel endpoint device, the tunnel endpoint device comprising:
a service tunnel determining module, configured to determine a first service tunnel on the tunnel endpoint device when detecting that a target network link is unavailable, where path management information of the first service tunnel includes a main link and a standby link of a first link backup group of the first service tunnel, and a route management flag of the first link backup group, where the main link of the first link backup group is the target network link, the tunnel endpoint device is provided with corresponding service tunnels for different services, each service tunnel corresponds to one service, and at least one network link bearing the service tunnel is configured for the different service tunnels for forwarding a packet;
and the route mark updating module is used for setting the route management mark of the first link backup group as a first value, and the first value of the route management mark indicates that the message corresponding to the target network link is forwarded through the standby link.
9. The tunnel endpoint device of claim 8, wherein the tunnel endpoint device further comprises:
and the path information creating module is used for creating corresponding path management information for each service tunnel.
10. The tunnel endpoint device of claim 9,
if the first service tunnel comprises a plurality of equivalent network links, the path management information of the first service tunnel comprises a link backup group which is respectively created by taking each network link in the plurality of equivalent network links as a main link, each link backup group also comprises a standby link, and the standby link is another network link in the plurality of equivalent network links except the main link of the link backup group;
if the first service tunnel includes a first network link and a second network link, and the first network link is a main link and the second network link is a standby link of the first network link, the main link of the first link backup group included in the path management information is the first network link, and the standby link of the first link backup group is the second network link.
11. The tunnel endpoint device of claim 10, wherein:
when the first service tunnel comprises a plurality of equivalent network links, the main link of the first link backup group and the backup link of the first link backup group are located on different interface boards.
12. The tunnel endpoint device of claim 10, wherein:
when the first traffic tunnel includes a plurality of equivalent network links, the backup link of the first linkset is determined from the plurality of equivalent network links according to at least one of the following parameters: the load state of each equivalent network link, the failure occurrence rate of each network link, the failure occurrence rate of an interface board where each network link is positioned and the switching performance of each network link.
13. The tunnel endpoint device of claim 9, wherein the path management information for the second traffic tunnel includes path information for the first network link if the second traffic tunnel includes only the first network link.
14. The tunnel endpoint device of any of claims 8-13, wherein the route label update module is further to:
when the target network link is detected to be recovered, setting a route management flag of a first link backup group in the path management information of the first service tunnel to be a second value, wherein the route management flag represents that a message corresponding to the target network link is forwarded through the target network link.
15. A tunnel endpoint device comprising a memory, a processor, a switch chip, and a network interface, wherein:
the memory is used for storing programs;
the processor to execute the program stored in the memory, the processor to configure the switch chip when the program is executed;
the switch chip is used for establishing a network link through the network interface and executing the method according to any one of claims 1 to 7 after being configured by the processor.
16. A switch chip, characterized in that the switch chip is configured to perform the method of any of claims 1-7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810407208.3A CN110417569B (en) | 2018-04-28 | 2018-04-28 | Network link fault processing method and tunnel endpoint equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810407208.3A CN110417569B (en) | 2018-04-28 | 2018-04-28 | Network link fault processing method and tunnel endpoint equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110417569A CN110417569A (en) | 2019-11-05 |
CN110417569B true CN110417569B (en) | 2021-09-21 |
Family
ID=68357943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810407208.3A Active CN110417569B (en) | 2018-04-28 | 2018-04-28 | Network link fault processing method and tunnel endpoint equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110417569B (en) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111385195B (en) * | 2018-12-29 | 2023-05-16 | 中兴通讯股份有限公司 | Information processing method, device and storage medium |
US11070480B2 (en) | 2019-07-03 | 2021-07-20 | Kaloom Inc. | Method and computing devices for enforcing packet order based on packet marking |
CN112825509B (en) * | 2019-11-21 | 2024-04-16 | 华为技术有限公司 | Path switching method and related device |
CN111092813B (en) * | 2019-12-18 | 2022-04-08 | 新华三半导体技术有限公司 | Equivalent multipath ECMP switching method, network equipment and system |
CN111130871B (en) * | 2019-12-18 | 2022-06-10 | 新华三半导体技术有限公司 | Protection switching method and device and network equipment |
CN110995581B (en) * | 2019-12-19 | 2022-07-19 | 锐捷网络股份有限公司 | Method and device for preventing black hole in route, electronic equipment and storage medium |
CN111030926B (en) * | 2019-12-20 | 2021-07-27 | 苏州浪潮智能科技有限公司 | A method and device for improving network high availability |
US11121954B2 (en) * | 2020-01-15 | 2021-09-14 | Cisco Technology, Inc. | Telemetry collection and analysis for SD-WAN tunnels |
CN112104478B (en) * | 2020-07-30 | 2022-04-01 | 新华三信息安全技术有限公司 | Link switching method, device, equipment and machine readable storage medium |
CN115468572A (en) * | 2021-06-11 | 2022-12-13 | 华为技术有限公司 | Path planning method and related equipment |
CN114040273B (en) * | 2021-10-25 | 2023-06-23 | 烽火通信科技股份有限公司 | Method and system for automatically adjusting route switching based on fault point |
CN114938516B (en) * | 2022-04-21 | 2024-12-13 | 杭州初灵信息技术股份有限公司 | Communication link protection method, system, device and medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103581012A (en) * | 2013-10-21 | 2014-02-12 | 华为技术有限公司 | Data transmission method and router |
CN104270298A (en) * | 2014-09-30 | 2015-01-07 | 杭州华三通信技术有限公司 | Method and device for forwarding message in VXLAN |
CN106921473A (en) * | 2015-12-28 | 2017-07-04 | 华为技术有限公司 | A kind of data transmission method and relevant device of track traffic WLAN |
CN107634905A (en) * | 2016-07-19 | 2018-01-26 | 南京中兴新软件有限责任公司 | Data forwarding method and device in pile system |
CN107846342A (en) * | 2016-09-20 | 2018-03-27 | 华为技术有限公司 | A kind of retransmission method, equipment and the system of VXLAN messages |
-
2018
- 2018-04-28 CN CN201810407208.3A patent/CN110417569B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103581012A (en) * | 2013-10-21 | 2014-02-12 | 华为技术有限公司 | Data transmission method and router |
CN104270298A (en) * | 2014-09-30 | 2015-01-07 | 杭州华三通信技术有限公司 | Method and device for forwarding message in VXLAN |
CN106921473A (en) * | 2015-12-28 | 2017-07-04 | 华为技术有限公司 | A kind of data transmission method and relevant device of track traffic WLAN |
CN107634905A (en) * | 2016-07-19 | 2018-01-26 | 南京中兴新软件有限责任公司 | Data forwarding method and device in pile system |
CN107846342A (en) * | 2016-09-20 | 2018-03-27 | 华为技术有限公司 | A kind of retransmission method, equipment and the system of VXLAN messages |
Also Published As
Publication number | Publication date |
---|---|
CN110417569A (en) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110417569B (en) | Network link fault processing method and tunnel endpoint equipment | |
US9007895B2 (en) | Method for routing data packets in a fat tree network | |
US10764119B2 (en) | Link handover method for service in storage system, and storage device | |
EP3028413B1 (en) | System and method for supporting multi-homed fat-tree routing in a middleware machine environment | |
US20160337236A1 (en) | Data center network system based on software-defined network and packet forwarding method, address resolution method, routing controller thereof | |
CN111092813B (en) | Equivalent multipath ECMP switching method, network equipment and system | |
CN104717081A (en) | Gateway function realization method and device | |
CN105743801A (en) | Method and device of flow forwarding of stack system | |
EP3316555A1 (en) | Mac address synchronization method, device and system | |
US9509523B2 (en) | Method for protection switching in ethernet ring network | |
CN115152192B (en) | PCE controlled network reliability | |
EP4075730A1 (en) | Method and device for multi-cloud interconnection | |
CN113328916B (en) | BFD detection mode switching method, device and equipment | |
JP5387349B2 (en) | Relay device | |
CN103532851A (en) | Method and device for processing data flow in distributed link aggregation network | |
CN110708275B (en) | Protocol message processing method and device | |
US8902738B2 (en) | Dynamically adjusting active members in multichassis link bundle | |
CN106209634B (en) | Learning method and device of address mapping relation | |
CN107181678B (en) | Method and device for route convergence | |
US20230106077A1 (en) | Distributed Storage System, Exception Handling Method Thereof, and Related Apparatus | |
US20130111259A1 (en) | Connection control apparatus, storage system, and control method of connection control apparatus | |
US11228495B2 (en) | Bundling of wired and wireless interfaces in a redundant interface of a high-availability cluster | |
KR20120074528A (en) | Cluster node control method and internet protocol private branch exchange | |
JP2012054861A (en) | Communication system, and communication control method | |
CN114172841A (en) | Message forwarding method and device, electronic equipment and reading and storing medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |