Patent ID: 8787400

Claim:
A method comprising: receiving, with a first router of a network, a link bandwidth for each of one or more network links of the network that are positioned between the first router and a second router of the network; identifying, with the first router, a plurality of equal-cost forwarding paths from the first router of the network to the second router of the network; determining that one of the network links is a common network link shared by multiple of the plurality of equal-cost forwarding paths; in response to determining that the one of the network links is a common network link shared by multiple of the plurality of equal-cost forwarding paths, computing an amount of bandwidth that can be sent on each of a plurality of outgoing interfaces of the first router for the plurality of equal-cost forwarding paths, wherein computing the amount of bandwidth comprises computing the amount of bandwidth to account for splitting of link bandwidth of the common network link across the multiple equal-cost forwarding paths that share the common network link; selectively assigning, with the first router, packet flows to each of the plurality of outgoing interfaces based at least on the computed amount of bandwidth; receiving packets for the packet flows with the first router; and forwarding packets of each of the packets flows to the respective one of the plurality of outgoing interfaces to which the packet flow is assigned.