Weighting routing
AssigneeHewlett Packard Enterprise Development LP
InventorsDuncan Roweth, Robert L. Alverson, Edwin L. Froese
Life of this patent
Estimating the term…
Abstract
Systems and methods of routing a data communication across a network having a plurality switches are provided by monitoring the operation of the plurality of global links to determine which of the plurality of global links provide working paths. A routing table indicative of a status for the plurality of links is maintained, where the routing table provides weighting for each of the working paths. When routing, a link using a weighted pseudo-random selection from the choices available in the routing table is selected. Routing along one of the working paths commensurate with the selected link is performed, and the weighting is updated based upon the operation of the plurality of links.
Claims18
A method, comprising:
- determining, by a network device, a set of candidate ports from a plurality of ports of the network device for forwarding a packet;
- allocating respective weights to the set of candidate ports, a respective weight indicating a current operational state of a link coupled to a corresponding candidate port;
- determining a subset of ports from the set of candidate ports by applying a pseudo-random selection based on the weights;
- selecting an egress port from the subset of ports based on respective path loads associated with the subset of ports;
- and
- forwarding the packet via the egress port.
A network device, comprising:
- a plurality of ports;
- and a non-transitory computer-readable storage medium storing instructions to:
- monitor a set of paths associated with the plurality of ports to determine a set of candidate paths for forwarding a packet;
- allocate respective weights to the set of candidate paths, a respective weight indicating a current operational state of a candidate path;
- determine a link from the set of candidate paths by applying a pseudo-random selection based on the weights;
- and forward the packet via the link.
Anon-transitory computer-readable storage medium storing instructions that when executed by a processor of a network device cause the processor to perform a method, the method comprising:
- determining a set of candidate ports from a plurality of ports of the network device for forwarding a packet;
- allocating respective weights to the set of candidate ports, a respective weight indicating a current operational state of a link coupled to a corresponding candidate port;
- determining a subset of ports from the set of candidate ports by applying a pseudo-random selection based on the weights;
- selecting an egress port from the subset of ports based on respective path loads associated with the subset of ports;
- and
- forwarding the packet via the egress port.
Dependencies are inferred from the claim text.