Network router failover mechanism
First Claim
Patent Images
1. A method of transferring data between a host and a device, the method comprising:
- connecting a first server to the host across a network and to the device across a first channel fabric;
connecting a second server to the host across the network and to the device across a second channel fabric;
communicatively coupling the first server with the second server;
establishing multiple instances of a router on each server;
designating the at least one of the routers on the first server as running and at least one of the corresponding routers on the second server as ghost;
determining first connectivity information regarding connectivity across the first channel fabric between the device and the running router;
receiving second connectivity information describing connectivity across the second channel fabric between the device and the ghost router;
comparing at both the first and second server the first and second connectivity information; and
resigning the running router operating on the first server in favor of the ghost router operating on the second server when the comparison indicates that the ghost router has better connectivity, wherein resigning includes designating the router operating on the second server as running and the router operating on the first server as ghost.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system, apparatus, and signal-bearing media for determining connectivity information for routers running on servers that are attached to a device. A router is resigned in favor of a corresponding router at another server when the corresponding router has better connectivity to the device, where partial connectivity is better than no connectivity, and full connectivity is better than partial connectivity.
70 Citations
62 Claims
-
1. A method of transferring data between a host and a device, the method comprising:
-
connecting a first server to the host across a network and to the device across a first channel fabric; connecting a second server to the host across the network and to the device across a second channel fabric; communicatively coupling the first server with the second server; establishing multiple instances of a router on each server; designating the at least one of the routers on the first server as running and at least one of the corresponding routers on the second server as ghost; determining first connectivity information regarding connectivity across the first channel fabric between the device and the running router; receiving second connectivity information describing connectivity across the second channel fabric between the device and the ghost router; comparing at both the first and second server the first and second connectivity information; and resigning the running router operating on the first server in favor of the ghost router operating on the second server when the comparison indicates that the ghost router has better connectivity, wherein resigning includes designating the router operating on the second server as running and the router operating on the first server as ghost. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. An apparatus comprising:
-
a network connection for receiving data from a host to be transferred to a device; a channel fabric connection; establishing multiple instances of a router on a first and second server; at least one running router operating on the first server; at least one ghost router corresponding to the running router operating on the second server; means for determining first connectivity information describing connectivity to the device across the channel fabric connection for the running router; means for receiving second connectivity information describing connectivity to the device across a second channel fabric connection for the ghost; means for communicatively coupling the first server and the second server; means for comparing at both the first and second server the first and second connectivity information; and means for resigning the running router in favor of the ghost router when the comparison indicates that the ghost router has better connectivity, wherein resigning includes designating the router operating on the second server as running and the router operating on the first server as ghost. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A computer-readable storage medium encoded with instructions, wherein the instructions when executed comprise:
-
connecting a first server to a host across a network and to a device across a first channel fabric; connecting a second server to the host across the network and to the device across a second channel fabric; connecting the first server with the second server; establishing multiple instances of a router on each server; designating at least one of the routers on the first server as running and at least one of the routers on the second server as ghost; determining first connectivity information regarding connectivity across the first channel fabric between the device and the running router; receiving second connectivity information describing connectivity across the second channel fabric between the device and the ghost router; comparing at both the first and second server the first and second connectivity information; and resigning the running router in favor of the ghost router when the comparison indicates that the ghost router has better connectivity, wherein resigning includes designating the router operating on the second server as running and the router operating on the first server as ghost. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A server comprising:
-
a processor; and a storage device encoded with instructions, wherein the instructions when executed on the processor comprise; connecting a first server to a host across a network and to a device across a first channel fabric; connecting a second server to the host across the network and to the device across a second channel fabric; connecting the first server with the second server; establishing multiple instances of a router on each server; designating at least one of the routers on the first server as running and at least one of the routers on the second server as ghost; determining first connectivity information regarding connectivity across the first channel fabric between the device and the running router; receiving second connectivity information describing connectivity across the second channel fabric between the device and the ghost router; comparing at both the first and second server the first and second connectivity information; and resigning the running router operating on the first server in favor of the ghost router operating on the second server when the comparison indicates that the ghost router has better connectivity, wherein resigning includes designating the router operating on the second server as running and the router operating on the first server as ghost. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54)
-
-
55. A method of transferring data between a host and a device, the method comprising:
-
connecting a first server to the host across a network and to the device across a first channel fabric; connecting a second server to the host across the network and to the device across a second channel fabric; communicatively coupling the first server with the second server; establishing multiple instances of a router on each server; designating at least one of the routers on the first server as running and at least one of the routers on the second server as ghost; determining first connectivity information regarding connectivity across the first channel fabric between the device and the running router; receiving second connectivity information describing connectivity across the second channel fabric between the device and the ghost router; comparing at both the first and second server the first and second the first and second; and resigning the running router in favor of the ghost router when the comparison indicates that the ghost router has at least equal connectivity and the ghost router is primary, wherein resigning includes designating the router operating on the second server as running and the router operating on the first server as ghost. - View Dependent Claims (56, 57, 58, 59, 60, 61, 62)
-
Specification