Apparatus for load balancing in routers of a network using overflow paths
OwnerSanja Durinovic-Johri, Pravin Kumar Johriinventors
Life of this patent
Estimating the term…
Abstract
Apparatus for managing packet flow in network routers is provided which communicates the congestion status among the ports inside routers in the network, and substantially eliminates packet dropping due to congestion by providing overflow paths for destination IP addresses. Each router in a network stores at least two possible output paths for selected destination IP addresses, so that the router may direct the output of packets appropriately when congestion is detected on one of the paths. A forwarding table stores the possible output paths for each destination IP address.
Claims21
Apparatus for managing data flow in a router in a network, comprising:
- a congestion monitor for monitoring congestion status on each output port of the router;
- and
- a switch, upon detection of congestion on one of the output ports, for outputing data from a primary output path of the one of the output ports corresponding to a destination address of the data to be output, to an overflow path for the destination address.
Apparatus for managing data flow in a router in a network, wherein the router includes a forwarding table having entries respectively corresponding to destination addresses in the network and identifying at least two output paths from the router for at least some of the destination addresses to enable overflow routing, one of the at least two output paths being identified as a primary path and other output paths being identified as an overflow paths, the apparatus comprising:
- a congestion monitor for monitoring receipt of congestion signals from at least two transmit buffers respectively associated with at least two output ports of the router;
- a congestion detector for detecting a congestion signal from at least one of the at least two transmit buffers in the router;
- and
- a switch, for all of the destination addresses in the forwarding table affected by the detection of congestion and eligible for overflow routing, for switching from the primary path to one of the overflow paths for transmitting the data.
Apparatus for managing data flow in a router in a network, comprising:
- a memory for storing a forwarding table in the router, the forwarding table having entries respectively corresponding to destination addresses in the network and identifying at least two output paths from the router for at least some of the destination address to enable overflow routing, one of the at least two output paths being identified as a primary path and any other output path being identified as an overflow path;
- a congestion monitor for monitoring receipt of congestion signals from at least two transmit buffers respectively associated with at least two output ports of the router;
- a congestion detector for detecting a congestion signal from at least one of the at least two transmit buffers in the router;
- and
- a switch for switching, for all of the destination addresses in the forwarding table affected by the detection of congestion and eligible for overflow routing, from the primary path to the overflow path for transmitting the data.
A router, comprising:
- at least one input port;
- at least one output port;
- a memory for storing a forwarding table, the forwarding table having entries respectively corresponding to destination addresses in the network and identifying at least two output paths from the router for at least some of the destination addresses to enable overflow routing, one of the at least two output paths being identified as a primary path and any other output path being identified as an overflow path;
- and
- a controller that detects a destination address for data to be output from the router, monitors congestion status of the at least one output port, and controls the output of the data from the at least one output port based upon the destination address for the data and congestion status of the router.
A router comprising:
- at least one input port;
- at least one output port;
- first means for storing a forwarding table, the forwarding table having entries respectively corresponding to destination addresses in the network and identifying at least two output paths from the router for at least some of the destination addresses to enable overflow routing, one of the at least two output paths being identified as a primary path and any other output path being identified as an overflow path;
- and
- second means for identifying the destination addresses that are eligible for overflow routing, storing the identification information in the appropriate entries of the forwarding table based upon the destination addresses, determining the at least one overflow path for each of the destination addresses identified as being eligible for overflow routing, and storing, in the forwarding table, information for the at least one overflow path for each of the destination addresses eligible for overflow routing.
An apparatus for managing data flow in a network, comprising:
- at least one input port;
- at least one output port;
- a memory for storing a forwarding table, the forwarding table having entries respectively corresponding to destination addresses in the network and identifying at least two output paths from the apparatus for at least some of the destination addresses to enable overflow routing, one of the at least two output paths being identified as a primary path and any other output path being identified as an overflow path;
- and
- a controller that detects a destination address for data to be output from the apparatus, monitors congestion status of the at least one output port, and controls the output of the data from the at least one output port based upon the destination address for the data and congestion status of the apparatus.
Apparatus for managing data flow in a router in a network, comprising:
- a congestion monitor for monitoring congestion status on each output port of the router, wherein the congestion status is one of a plurality of levels of congestion;
- a congestion detector for detecting a level of congestion from the plurality of levels of congestion on at least one output port of the router;
- and a processor for determining an amount of data to be overflowed based upon the level of congestion and for switching, upon detection of the one of the plurality of levels of congestion on the at least one output port, the amount of data to be overflowed from a primary output path of the at least one output port corresponding to a destination address of the data to be output, to an overflow path for the destination address.
Dependencies are inferred from the claim text.