# US 2014/0153403 A1 · Load balancing in shortest-path-bridging networks

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0153403 A1
- Document ID: US20140153403A1
- Status: Published application
- Kind: A1
- Application number: 14/177,847
- Filed: 2014-02-11
- Published: 2014-06-05
- Earliest claimed: 2010-10-29
- Assignees: Telefonaktiebolaget L M Ericsson (publ)
- Applicants: Telefonaktiebolaget L M Ericsson (PUBL)
- Inventors: David Ian Allan; Scott Andrew Mansfield; Eric Ward Gray; János Farkas
- Web page: https://patentgrep.com/patent/US20140153403A1

## CPC

- H04L 45/74: Address processing for routing
- H04L 12/4625: {Single bridge functionality, e.g. connection of two networks over a single bridge}
- H04L 45/12: Shortest path evaluation
- H04L 45/122: by minimising distances, e.g. by selecting a route with minimum of number of hops
- H04L 45/38: {Flow based routing}
- H04L 45/745: Address table lookup; Address filtering
- H04L 47/125: by balancing the load, e.g. traffic engineering
- H04L 45/121: by minimising delays
- H04L 45/123: {Evaluation of link metrics (techniques for monitoring network metrics H04L43/08)}
- H04L 47/2483: involving identification of individual flows
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A flow classification process is used at the edge of the shortest path bridging network to determine a flow label for attachment to a client frame entering the network. Any of several flow labels can be assigned to a client frame traversing the network to a particular egress node, and the flow labels are used by forwarding nodes to select among multiple equal-cost paths. In several embodiments, the flow label is calculated as a function of the client frame contents, which provide an entropy source for randomizing the selection of the flow label. This entropy source comprises the Internet Protocol (IP) header in the client frame, in some embodiments, but may comprise other client frame content in other cases.

## Claims

### Claim 1

A method at a network node for facilitating load balancing in a data packet network backbone that utilizes shortest path bridging, the method comprising, for each of a plurality of backbone destination-MAC addresses:
determining the number of equal-cost next hops corresponding to the backbone destination-MAC address;
mapping each backbone virtual LAN identifier (B-VID) from a predetermined set of B-VIDs to a next-hop interface, as a function of the B-VID and the number of equal-cost next hops; and
populating a forwarding database with entries corresponding to each combination of backbone destination-MAC address and B-VID, the entries comprising identifiers for the next-hop interfaces mapped to the B-VIDs.

### Claim 2 (depends on 1)

The method of claim 1, wherein the predetermined set of B-VIDs comprises a predetermined range of B-VIDs and wherein mapping each B-VID to a next-hop interface comprises:
subtracting a predetermined B-VID base value from the B-VID, to obtain a flow offset value;
calculating an interface offset value as the flow offset value modulo the number of equal-cost next hops; and
mapping the B-VID to the next-hop interface corresponding to the interface offset value.

### Claim 3 (depends on 3)

The method of claim 3, wherein the predetermined set of B-VIDs comprises a plurality of B-VID ranges, and wherein each B-VID range is mapped to one of the next-hop interfaces.

### Claim 4

A network node for use in a shortest path bridging network, the network node comprising:
a network interface unit configured to connect the network node to one or more other nodes in the shortest path bridging network; and
a processing circuit configured to, for each of a plurality of backbone destination-MAC addresses:
determine the number of equal-cost next hops corresponding to the backbone destination-MAC address;
map each backbone virtual LAN identifier (B-VID) from a predetermined set of B-VIDs to a next-hop interface, as a function of the B-VID and the number of equal-cost next hops; and
populate a forwarding database with entries corresponding to each combination of backbone destination-MAC address and B-VID, the entries comprising identifiers for the next-hop interfaces mapped to the B-VIDs.

### Claim 5 (depends on 4)

The network node of claim 4, wherein the predetermined set of B-VIDs comprises a predetermined range of B-VIDs and wherein the processing circuit is configured to map each B-VID to a next-hop interface by:
subtracting a predetermined B-VID base value from the B-VID, to obtain a flow offset value;
calculating an interface offset value as the flow offset value modulo the number of equal-cost next hops; and
mapping the B-VID to the next-hop interface corresponding to the interface offset value.

### Claim 6 (depends on 4)

The network node of claim 4, wherein the predetermined set of B-VIDs comprises a plurality of B-VID ranges, and wherein the processing circuit is configured to map each B-VID range to one of the next-hop interfaces.

### Claim 7

A method at a network node for facilitating load balancing in a data packet network backbone that utilizes shortest path bridging, the method comprising, for each of a plurality of backbone destination-MAC addresses:
determining a set of equal-cost next hops corresponding to the backbone destination-MAC address; and
populating a forwarding database with an entry mapping the backbone destination-MAC address to identifiers for each of the equal-cost next hops in the set.

### Claim 8

A network node for use in a shortest path bridging network, the network node comprising:
a network interface unit configured to connect the network node to one or more other nodes in the shortest path bridging network; and
a processing circuit configured to, for each of a plurality of backbone destination-MAC addresses:
determine a set of equal-cost next hops corresponding to the backbone destination-MAC address; and
populate a forwarding database with an entry mapping the backbone destination-MAC address to identifiers for each of the equal-cost next hops in the set.

### Claim 9

A method for forwarding data frames in a data packet network, the method comprising:
receiving a data frame labeled with a backbone virtual LAN identifier (B-VID) and a backbone destination-MAC address;
selecting a next-hop identifier from a set of equal-cost next-hop identifiers stored in association with the backbone destination-MAC address, as a function of the B-VID; and
forwarding the data frame via the next-hop interface corresponding to the selected next-hop identifier.

### Claim 10 (depends on 5)

The method of claim 5, wherein selecting the next-hop identifier comprises computing a pseudorandom number as a function of the B-VID and a node-specific seed value, and selecting the next-hop identifier from the set of equal-cost next-hop identifiers as a function of the pseudorandom number.

### Claim 11

A network node for use in a shortest path bridging network, the network node comprising:
a network interface unit configured to connect the network node to one or more other nodes in the shortest path bridging network; and
a processing circuit configured to:
receive a data frame labeled with a backbone virtual LAN identifier (B-VID) and a backbone destination-MAC address, via the network interface unit;
selecting a next-hop identifier from a set of equal-cost next-hop identifiers stored in association with the backbone destination-MAC address, as a function of the B-VID; and
forwarding the data frame via the next-hop interface corresponding to the selected next-hop identifier.

### Claim 12 (depends on 11)

The network node of claim 11, wherein the processing circuit is configured to select the next-hop identifier by computing a pseudorandom number as a function of the B-VID and a node-specific seed value, and selecting the next-hop identifier from the set of equal-cost next-hop identifiers as a function of the pseudorandom number.
