Automatic link failover in data networks
First Claim
1. A method of twitting data over a network having a plurality of nodes and links when a link has failed, the method comprising:
- receiving a data packet at a first node having a failed link, the data packet scheduled to use the failed link;
converting the data packet to a failover data packet at the first node by marketing the data packet as a failover pact and recomputing a CRC value;
routing the data packet to a failover storage area;
determining an alternative link for the data packet and muting the data packet to a transmitter associated with the alternative link; and
transmitting the data packet to a receiver for the alternative link in a second node, thereby allowing the data packet to reach an intended destination by effecting the first node at a hardware level and without software intervention.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus are disclosed for enabling nodes in a data network having interconnect links to continue to transmit data when a link fails. This is done in realtime, in a manner transparent to upper-level clients, and at a hardware level without software intervention. A method is described in which a data packet is received or stored in a transmitter buffer at an originating node having a failed link where the data packet is scheduled to use the failed link. The data packet is routed to a failover storage area. The failover storage area is a shared resource in the node and consists of two first-in, first-out stacks for processing and routing the failover data packets. If needed, an alternative link is selected for the data packet and the data packet is routed to a transmitter associated with the alternative link. An alternative link is selected using a primary and secondary routing table, also part of the shared resource of the node. The data packet is then transmitted to a receiver for the alternative link at a destination or multihop node. This allows the data packet to reach the remote end of a failed link by sharing alternate links connecting the local and remote ends of a failed link.
78 Citations
22 Claims
-
1. A method of twitting data over a network having a plurality of nodes and links when a link has failed, the method comprising:
-
receiving a data packet at a first node having a failed link, the data packet scheduled to use the failed link; converting the data packet to a failover data packet at the first node by marketing the data packet as a failover pact and recomputing a CRC value; routing the data packet to a failover storage area; determining an alternative link for the data packet and muting the data packet to a transmitter associated with the alternative link; and transmitting the data packet to a receiver for the alternative link in a second node, thereby allowing the data packet to reach an intended destination by effecting the first node at a hardware level and without software intervention. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A node in a communication network comprising:
-
a receiver including a failover buffer for routing a failover data packet; a first-in, first-out (FIFO) data storage area for storing the failover data packet and routing the data packet to a receiver or a transmitter; and a failover routing table including at least two rows, a row corresponding to a neighboring node, and one or more interconnect links, wherein the node is configured to detect a failure in a link connected to the node, wherein if a data packet at the node is scheduled to use the failed link, the failover route tables are configured to determine an alternative link to transmit the data packet to not disrupt the transmission of the data packet; wherein the FIFO data storage area includes a first FIFO data stack, a second FIFO data stack, and a plurality of multiplexers. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method of transmitting data over a network having a plurality of nodes and links when a link has failed, the method comprising:
-
receiving a data packet at a first node having a failed link, the data packet scheduled to use the failed link; storing the data packet in a failover buffer when received at the first node and before routing the data packet to a failover storage area; routing the data packet to the failover storage area; determining an alternative link for the data packet and routing the data packet to a transmitter associated with the alternative link; and transmitting the data packet to a receiver for the alternative link in a second node, thereby allowing the data packet to reach an intended destination by effecting the first node at a hardware level and without software intervention.
-
-
14. A method of transmitting data over a network having a plurality of nodes and links when a link has failed, the method comprising:
-
receiving a data packet at a first node having a failed link, the data packet scheduled to use the failed link; routing the data packet to a failover storage area, wherein said routing the data packet to the failover storage area further comprises routing the data packet to a first data stack or a second data stack; determining an alternative link for the data packet and routing the data packet to a transmitter associated with the alternative link; and transmitting the data packet to a receiver for the alternative link in a second node, thereby allowing the data packet to reach an intended destination by effecting the first node at a hardware level and without software intervention. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A method of transmitting data over a network having a plurality of nodes and links when a link has failed, the method comprising:
-
receiving a data packet at a first node having a failed link, the data packet scheduled to use the failed link; routing the data packet to a failover storage area; determining an alternative link for the data packet and routing the data packet to a transmitter associated with the alternative link; transmitting the data packet to a receiver for the alternative link in a second node, thereby allowing the data packet to reach a intended destination by effecting the first node at a hardware level and without software intervention; and sharing only the alternative link at the first node in order to transmit the data packet to the second node.
-
-
20. A method of transmitting data over a network having a plurality of nodes and links when a link has failed, the method comprising:
-
receiving a data packet at a first node having a failed link, the data packet scheduled to use the failed link; routing the data packet to a failover storage area; determining an alternative link for the data packet and routing the data packet to a transmitter associated with the alternative link; transmitting the data packet to a receiver for the alternative link in a second node, thereby allowing the data packet to reach an intended destination by effecting the first node at a hardware level and without software intervention; and determining whether the second node is in failover mode after the second node receives the data packet from the first node on the alternative link.
-
-
21. A method of transmitting data over a network having a plurality of nodes and links when a link has failed, the method comprising:
-
detecting a failed link coupled to a first node, wherein the first node comprises a data packet scheduled to be transmitted via the failed link; in response to detecting the failed link, converting the data packet to a failover data packet at the first node by marking the data packet as a failover packet and recomputing a CRC value; routing the data packet to a failover storage area; determining an alternative link for the data packet and routing the data packet to a transmitter associated with the alternative link; and transmitting the data packet to a receiver in a second node coupled to the alternative link.
-
-
22. A system having a plurality of nodes and links, wherein the plurality of nodes are configured to communicate with one another via the plurality of links, the system comprising:
-
a first node coupled to a plurality of links, wherein the first node is configured to detect a failure in a first link, wherein the first node comprises; a receiver configured to receive a data packet scheduled to be transmitted via the first link, wherein the data packet is converted to a failover data packet in response to detecting the failure in the first link by making the data packet as a failover packet and recomputing a CRC value, one or more failover route tables for determining an alternative link to transmit the data packet by using a destination node identifier as an index, and a failover storage area for storing the data packet and routing the data packet to a transmitter associated with the alternative link; and a second node coupled to the alternative link and configured to receive the data packet from the transmitter.
-
Specification