Automatic load sharing for network routers
First Claim
1. A method of operating a router on a network, comprising the steps of:
- maintaining information associating the router with an address subspace, the address subspace being one of a plurality of non-overlapping subspaces of a data link layer address space from which source addresses of source nodes on the network are drawn, each subspace being associated with a corresponding different router from among a set of load-sharing routers of which the router is a member;
in response to receiving from a source node on the network an address request message containing a common network layer address assigned to the routers of the load-sharing set, determining whether a data link layer source address included in the message is within the address subspace associated with the router, and if so then returning to the source node a data link layer address uniquely identifying the router among the routers in the load-sharing set, and otherwise refraining from returning a response to the source node; and
in response to receiving data messages containing the uniquely-identifying data link layer address as a destination address and containing network-layer messages destined for network nodes on another network, determining a next hop destination node for each such network-layer message and forwarding the network-layer message to the determined next hop destination node.
6 Assignments
0 Petitions
Accused Products
Abstract
A network is operated such that message forwarding traffic is shared among routers in a load-sharing set. The routers are respectively associated with different non-overlapping subspaces of a source address space from which source addresses of source nodes on the network are drawn, and each router has an identifier uniquely identifying the router in the load-sharing set. Address request messages identifying a predetermined forwarding route are broadcast on the network by source nodes, each request message containing a source address of the broadcasting node. In response to each address request message, each router determines whether the source address is within the address subspace associated with the router, and if so returns the router'"'"'s identifier to the source node. When a message is to be transmitted from a source node to a destination node on another network via a router, the source node transmits the message on the network along with the identifier returned in response to the address request message broadcast by the source node. Each router forwards only those messages that contain the router'"'"'s identifier.
-
Citations
11 Claims
-
1. A method of operating a router on a network, comprising the steps of:
-
maintaining information associating the router with an address subspace, the address subspace being one of a plurality of non-overlapping subspaces of a data link layer address space from which source addresses of source nodes on the network are drawn, each subspace being associated with a corresponding different router from among a set of load-sharing routers of which the router is a member;
in response to receiving from a source node on the network an address request message containing a common network layer address assigned to the routers of the load-sharing set, determining whether a data link layer source address included in the message is within the address subspace associated with the router, and if so then returning to the source node a data link layer address uniquely identifying the router among the routers in the load-sharing set, and otherwise refraining from returning a response to the source node; and
in response to receiving data messages containing the uniquely-identifying data link layer address as a destination address and containing network-layer messages destined for network nodes on another network, determining a next hop destination node for each such network-layer message and forwarding the network-layer message to the determined next hop destination node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
attaining a status as master of the virtual router; and
upon attaining master status for the virtual router, in addition to performing the steps carried out in response to address request messages, periodically transmitting messages to the backup routers in the load-sharing set indicating the availability of the master router for forwarding messages.
-
-
8. A method according to claim 7, further comprising the steps of (i) prior to attaining the status of master for the virtual router, maintaining a status as a backup of the virtual router while another router maintains the status of master, and (ii) while maintaining the status as a backup for the virtual router, monitoring activity of the master, router on the network to determine whether the master router is available for forwarding messages, and wherein the step of attaining status as a master is carried out in response to determining, while maintaining the status of a backup, that the master has become unavailable.
-
9. A method according to claim 8, farther comprising the steps of (i) while maintaining status of master for the virtual router, monitoring messages sent by other routers in order to determine if one of the other routers has a higher priority for master status for the virtual router, and (ii) relinquishing the status as master for the virtual router and reverting to the backup status if one of the other routers is determined to have a higher priority for master status.
-
10. A method of operating a network, comprising:
-
configuring a plurality of routers on the network as a load-sharing set collectively responsible for forwarding certain data messages from the network to another network, the data messages to be forwarded being associated with a predetermined forwarding route on the network, each router being configured with (i) information associating the router with a corresponding one of a plurality of non-overlapping subspaces of a data-link layer address space from which source addresses of a plurality of source nodes on the network are drawn, and (ii) a data link layer address uniquely identifying the router in the load-sharing set at a data link layer;
configuring each source node with a common network layer address identifying the load-sharing set of routers;
broadcasting address request messages from the source nodes on the network using the common network layer address, each address request message containing the source data link layer address of the broadcasting source node;
in each router, in response to receiving each broadcast address request message, determining whether the source address included in the message is within the address subspace associated with the router, and if so then returning the configured identifier to the broadcasting source node;
in each source node, when a message is to be transmitted to a destination node on the other network, transmitting the message on the network along with (i) the uniquely-identifying address as a data link layer destination address, and (ii) a network layer destination address identifying the destination node on the other network; and
in each router, in response to receiving messages containing the uniquely-identifying address as a data link layer destination address and containing network-layer messages containing a network layer destination address identifying the destination node on the other network, determining a next hop destination node for the network-layer messages and forwarding the messages to the determined next hop destination node.
-
-
11. A method of configuring hosts on a data link with data link layer addresses of routers of a load-sharing set of routers to which the hosts are to send network-layer messages for forwarding to destination nodes, comprising:
-
assigning a common network-layer address to the routers;
configuring each router with information associating the router with a corresponding one of a plurality of non-overlapping subspaces of a data-link layer address space;
at each of the routers, selectively sending response messages to address request messages sent by the hosts and containing the common network layer address, each router sending a response message to an address request message if a source data-link layer address In the address request message falls within the address subspace associated with the router, and otherwise refraining from sending a response message, each response message including a data link layer address associated with the responding router; and
at each host, upon receiving a response message from one of the routers, storing the data link layer address from the response message in association with the network layer address of the load-sharing set of routers, the stored data link layer address being used by the host to create data link layer messages including respective network-layer messages being sent to the associated router for forwarding to the destination nodes.
-
Specification