IP Library Granted Patent US 9,098,434
Granted Patent B2
US 9,098,434 · App. 13/659,554 · Granted Aug 4, 2015

Load balancing systems and methods of MAC learning in multi-slot architectures

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,098,434
App. No.
13/659,554
Filed
Oct 24, 2012
Granted
Aug 4, 2015
Kind
B2
Art Unit
2464
USPC
370/236
Abstract

Line cards in a multi-slot network element utilize load balancing systems and methods for synchronizing learned Media Access Control (MAC) addresses therebetween. It is an objective of the load balancing systems and methods to enable high data rate scalability between line cards in a distributed system while preventing adverse effects on packet traffic. The load balancing systems and methods include inter alia MAC address updates between data path devices (e.g., network processors, application specific integrated circuits, etc.) using data frames and a hash-based time slot strategy ensuring MAC address updates are distributed over time as opposed to large scale, singular events.

Claims (35)

1. An Ethernet system, comprising:

a first line card comprising at least one port configured to receive Ethernet data packets and a first data path device; and

a second line card comprising at least one port configured to receive Ethernet data packets and a second data path device, wherein the second line card is communicatively coupled to the first line card;

wherein the first data path device is configured to synchronize learned Media Access Control (MAC) addresses with the second data path device by exchange of data packets according to a hash-based time slot approach, wherein the hash-based time slot approach slots MAC address updates for newly learned MAC addresses over time in a distributed manner, wherein the hash-based timed slot approach breaks up the newly learned MAC addresses into at least two groups of learned MAC addresses, and wherein each group is provided a different time offset such that each group is slotted for MAC address synchronization based on the provided time offset.

2. The Ethernet system of claim 1 , wherein the first data path device is configured to learn MAC addresses received from a port side and from a fabric side associated with the first line card.

3. The Ethernet system of claim 1 , wherein the hash-based time slot approach is configured to distribute the data packets of learned MAC addresses over time to prevent adverse effects on packet traffic.

4. The Ethernet system of claim 1 , wherein the hash-based time slot approach is configured to slot newly learned MAC addresses into time slots for an associated data packet to be sent to the second data path device.

5. The Ethernet system of claim 1 , wherein the hash-based time slot approach utilizes a plurality of parameters to assign a newly learned MAC address to a time slot for synchronization.

6. The Ethernet system of claim 5 , wherein the plurality of parameters comprise any of hardware logical port identification, virtual local area network identification, destination MAC address, and source MAC address.

7. The Ethernet system of claim 6 , wherein the hash-based time slot comprises a plurality of XOR operations on the plurality of parameters to derive a time slot.

8. The Ethernet system of claim 1 , wherein the first data path device, upon learning a new MAC address associated with a link aggregation group, is configured to in-band message the second data path device the new MAC address.

9. The Ethernet system of claim 1 , further comprising:

a first general processor on the first line card; and

a second general processor on the second line card;

wherein the first general processor and the second general processor do not participate in the learning MAC addresses.

10. The Ethernet system of claim 9 , wherein the first general processor is configured to fetch MAC addresses from the first data path device responsive to a user request.

11. A data path device, comprising:

logic circuitry configured to learn Media Access Control (MAC) addresses both from a port side and a fabric side; and

logic circuitry configured to synchronize learned MAC addresses with at least one additional data path device disposed on a separate line card;

wherein the synchronized learned MAC addresses are sent to the at least one additional data path device via data packets according to a hash-based time slot approach, wherein the hash-based time slot approach slots MAC address updates for the learned MAC addresses over time in a distributed manner, wherein the hash-based timed slot approach breaks up the newly learned MAC addresses into at least two groups of learned MAC addresses, and wherein each group is provided a different time offset such that each group is slotted for MAC address synchronization based on the provided time offset.

12. The data path device of claim 11 , wherein the hash-based time slot approach is configured to distribute the data packets of learned MAC addresses over time to prevent adverse effects on packet traffic.

13. The data path device of claim 11 , wherein the hash-based time slot approach is configured to slot newly learned MAC addresses into time slots for an associated data packet to be sent to the at least one additional data path device.

14. The data path device of claim 11 , wherein the hash-based time slot approach utilizes a plurality of parameters to assign a newly learned MAC address to a time slot for synchronization.

15. The data path device of claim 14 , wherein the plurality of parameters comprise any of hardware logical port identification, virtual local area network identification, destination MAC address, and source MAC address.

16. The data path device of claim 15 , wherein the hash-based time slot comprises a plurality of XOR operations on the plurality of parameters to derive a time slot.

17. The data path device of claim 11 , wherein the logic circuitry configured to synchronize learned MAC addresses, upon learning a new MAC address associated with a link aggregation group, is configured to in-band message the at least one additional data path device the new MAC address.

18. A method, comprising:

utilizing a first data path device on a first line card to learn Media Access Control (MAC) addresses;

synchronizing newly learned MAC addresses with at least one additional data path device on a separate line card from the first line card, wherein the synchronizing comprises exchanging a data packet according to hash-based time slot approach, wherein the hash-based time slot approach slots MAC address updates for the newly learned MAC addresses over time in a distributed manner, wherein the hash-based timed slot approach breaks up the newly learned MAC addresses into at least two groups of learned MAC addresses, and wherein each group is provided a different time offset such that each group is slotted for MAC address synchronization based on the provided time offset; and

operating a generalized processor on the first line card without the generalized processor being involved in the synchronizing newly learned MAC addresses.

19. The method of claim 18 , further comprising:

performing a plurality of XOR operations on a plurality of parameters associated with a packet having a newly learned MAC address to determine a time slot for the data packet.

20. The method of claim 18 , further comprising:

determining a newly learned MAC address is involved in a link aggregation group (LAG) associated with the separate line card; and

in-band messaging the at least one additional data path device with the newly learned MAC address.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Nov 20, 2023
From: BANK OF AMERICA, N.A.
To: CIENA CORPORATION
Reel/Frame 065630/0232 →
PATENT SECURITY AGREEMENT Recorded Nov 8, 2019
From: CIENA CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 050969/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 30, 2019
From: DEUTSCHE BANK AG NEW YORK BRANCH
To: CIENA CORPORATION
Reel/Frame 050938/0389 →
PATENT SECURITY AGREEMENT Recorded Jul 16, 2014
From: CIENA CORPORATION
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 033347/0260 →
SECURITY INTEREST Recorded Jul 15, 2014
From: CIENA CORPORATION
To: DEUTSCHE BANK AG NEW YORK BRANCH
Reel/Frame 033329/0417 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 24, 2012
From: CHHABRA, MUKESH; VASHISHT, PRASHANT; BATRA, MOHIT; MISHRA, RAJNEESH
To: CIENA CORPORATION
Reel/Frame 029184/0092 →