The present invention relates generally to data communications networks, and in particular to techniques for facilitating load balancing in a data packet network backbone that utilizes shortest path bridging.
Load distribution or load spreading is a method by which data communications bandwidth is more effectively utilized and overall performance is improved in a network. More particularly, equal-cost multi-path (ECMP) is one common strategy for load spreading of unicast traffic in routed networks. ECMP can be utilized where the decision as to how to forward a packet to a given destination can resolve to any of multiple “equal-cost” paths, each of which tied for being the shortest (or lowest cost) path when running network traversal calculations. ECMP can be used in conjunction with most unicast routing protocols and nodes equipped with the required supporting data plane hardware, since it relies on a per-hop decision that is local to a single router and assumes promiscuous receipt and a complete forwarding table at every intermediate node. When ECMP is used at a given node in a network, the traffic from that node is divided pseudo-evenly across the set of equal-cost next hops. This process is implemented independently at each hop of the network where more than one path to a given destination exists.
In many implementations, at each point where the presence of multiple equal-cost next hops is encountered, each packet is inspected for a source of entropy, such as an Internet Protocol (IP) header, and a hash of header information is used to select the next hop for the particular packet. For highly aggregated traffic, this method will on average distribute the load evenly in regular topologies (i.e., symmetric topologies) and does offer some improvement in less regular topologies.
The Institute of Electrical and Electronics Engineers (IEEE) 802.1aq standard for shortest path bridging (SPB) has been developed to allow the construction of full-mesh, shortest-path connectivity in an Ethernet network architecture. SPB consolidates a number of control protocols into a single link state routing system supported by the intermediate system to intermediate system (IS-IS) protocol. This system is used for the computation of integrated and congruent unicast and multi-cast forwarding to construct basic Ethernet LAN connectivity.
Ethernet network architectures, including those supporting 802.1aq, do not support the per-hop multi-path forwarding approach discussed above. This lack of support is a consequence of the need for congruence between unicast and multicast traffic and because multicast is generally incompatible with ECMP. Accordingly, improved techniques for load balancing in Ethernet networks supporting SPB are needed.