IP Library Granted Patent US 10,050,824
Granted Patent B2
US 10,050,824 · App. 13/557,105 · Granted Aug 14, 2018

Managing a cluster of switches using multiple controllers

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 10,050,824
App. No.
13/557,105
Granted
Aug 14, 2018
Kind
B2
Abstract

One embodiment of the present invention provides a computing system. The computing system includes a discovery module, a high-availability management module, and a controlling module. The discovery module determines local switch-specific information associated with a switch based on a discovery response packet. The high-availability management module determines remote switch-specific information about the same switch with respect to a remote computing system. The controlling module determines whether the computing system is to manage the switch based on a metric derived from the local and remote switch-specific information.

Claims (68)

1. A first computing system, comprising:

a processor; and

a non-transitory computer-readable storage medium storing instructions which when executed by the processor causes the processor to perform a method, the method comprising:

determining discovery information of a first switch from a discovery response packet, wherein the discovery response packet is a multicast packet destined to a multicast group which includes the first switch and the first computing system, and wherein a multicast group is associated with a multicast distribution tree via which a multicast packet destined for the multicast group is distributed;

storing the discovery information of the first switch in a first entry of a first client database in the first computing system;

obtaining discovery information of the first switch from a notification message comprising a second entry of a second client database of a second computing system; and

determining whether the first computing system is to manage the first switch based on the discovery information of the first switch from the first and second entries, wherein managing a switch includes configuring the switch.

2. The first computing system of claim 1 , wherein the discovery information of the first switch in the first entry includes one or more of:

load on the first computing system;

bandwidth of the links coupled to the first computing system;

a hop count between the first switch and the first computing system; and

a user-defined parameter.

3. The first computing system of claim 1 , wherein a packet header of the notification message is based on a reliable network protocol.

4. The first computing system of claim 1 , wherein the method further comprises identifying a virtual identifier in a packet header, wherein the virtual identifier comprises one or more of:

a virtual Internet Protocol (IP) address; and

a virtual Media Access Control (MAC) address.

5. The first computing system of claim 4 , wherein the virtual identifier is assigned to the first computing system and the second computing system.

6. The first computing system of claim 4 , wherein the method further comprises responding to an Address Resolution Protocol (ARP) request for the virtual IP address with an ARP response comprising the virtual MAC address.

7. The first computing system of claim 4 , wherein the method further comprises:

obtaining a group license for the first switch; and

constructing a frame comprising the group license, wherein the frame is destined for the first switch.

8. The first computing system of claim 1 , wherein the method further comprises assigning a unique identifier to the first switch from a range of identifiers specific to the first computing system.

9. The first computing system of claim 1 , wherein the method further comprises managing a second switch in response to detecting a failure of the second computing system, wherein the second switch is previously managed by the second computing system.

10. The first computing system of claim 1 , wherein the method further comprises creating a multicast group, wherein a respective member of the multicast group is managed by the first computing system.

11. A computer-executable method, comprising:

determining, by a first computing system, discovery information of a first switch from a discovery response packet, wherein the discovery response packet is a multicast packet destined to a multicast group which includes the first switch and the first computing system, and wherein a multicast group is associated with a multicast distribution tree via which a multicast packet destined for the multicast group is distributed;

storing the discovery information of the first switch in a first entry of a first client database in the first computing system;

obtaining discovery information of the first switch from a notification message comprising a second entry of a second client database of a second computing system; and

determining whether the first computing system is to manage the first switch based on the discovery information of the first switch from the first and second entries, wherein managing a switch includes configuring the switch.

12. The method of claim 11 , wherein the discovery information of the first switch in the first entry includes one or more of:

load on the first computing system;

bandwidth of the links coupled to the first computing system;

a hop count between the first switch and the first computing system; and

a user-defined parameter.

13. The method of claim 11 , wherein a packet header of the notification message is based on a reliable network protocol.

14. The method of claim 11 , further comprising identifying a virtual identifier in a packet header, wherein the virtual identifier comprises one or more of:

a virtual Internet Protocol (IP) address; and

a virtual Media Access Control (MAC) address.

15. The method of claim 14 , wherein the virtual identifier is assigned to the first computing system and the second computing system.

16. The method of claim 14 , further comprising responding to an Address Resolution Protocol (ARP) request for the virtual IP address with an ARP response comprising the virtual MAC address.

17. The method of claim 11 , further comprising:

obtaining a group license for the first switch; and

constructing a frame comprising the group license, wherein the frame is destined for the first switch.

18. The method of claim 11 , further comprising assigning a unique identifier to the first switch from a range of identifiers specific to the first computing system.

19. The method of claim 11 , further comprising managing a second switch in response to detecting a failure of the second computing system, wherein the second switch is previously managed by the second computing system.

20. The method of claim 11 , further comprising creating a multicast group, wherein a respective member of the multicast group is managed by the first computing system.

21. A non-transitory computer-readable storage medium storing instructions that when executed by a first computing system cause the first computing system to perform a method for managing a group of switches, the method comprising:

determining discovery information of a first switch from a discovery response packet, wherein the discovery response packet is a multicast packet destined to a multicast group which includes the first switch and the first computing system, and wherein a multicast group is associated with a multicast distribution tree via which a multicast packet destined for the multicast group is distributed;

storing the discovery information of the first switch in a first entry of a first client database in the first computing system;

obtaining discovery information of the first switch from a notification message comprising a second entry of a second client database of a second computing system; and

determining whether the first computing system is to manage the first switch based on the discovery information of the first switch from the first and second entries, wherein managing a switch includes configuring the switch.

22. The storage medium of claim 21 , wherein the discovery information of the first switch in the first entry includes one or more of:

load on the first computing system;

bandwidth of the links coupled to the first computing system;

a hop count between the first switch and the first computing system; and

a user-defined parameter.

23. The storage medium of claim 21 , wherein a packet header of the notification message is based on a reliable network protocol.

24. The storage medium of claim 21 , wherein the method further comprises identifying a virtual identifier in a packet header, wherein the virtual identifier comprises one or more of:

a virtual Internet Protocol (IP) address; and

a virtual Media Access Control (MAC) address.

25. The storage medium of claim 24 , wherein the virtual identifier is assigned to the first computing system and the second computing system.

26. The storage medium of claim 24 , wherein the method further comprises responding to an Address Resolution Protocol (ARP) request for the virtual IP address with an ARP response comprising the virtual MAC address.

27. The storage medium of claim 21 , wherein the method further comprises:

obtaining a group license for the first switch; and

constructing a frame comprising the group license, wherein the frame is destined for the first switch.

28. The storage medium of claim 21 , wherein the method further comprises assigning a unique identifier to the first switch from a range of identifiers specific to the first computing system.

29. The storage medium of claim 21 , wherein the method further comprises managing a second switch in response to detecting a failure of the second computing system, wherein the second switch is previously managed by the second computing system.

30. The storage medium of claim 21 , wherein the method further comprises creating a multicast group, wherein a respective member of the multicast group is managed by the first computing system.

Assignments (11)
RELEASE OF SECURITY INTEREST AT REEL/FRAME 049905/0504 Recorded Dec 19, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: ARRIS ENTERPRISES LLC (F/K/A ARRIS ENTERPRISES, INC.); ARRIS TECHNOLOGY, INC.; ARRIS SOLUTIONS, INC.; COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; RUCKUS WIRELESS, LLC (F/K/A RUCKUS WIRELESS, INC.)
Reel/Frame 071477/0255 →
PARTIAL RELEASE OF PATENT SECURITY INTERESTS (ABL) Recorded Jan 2, 2024
From: JPMORGAN CHASE BANK, N.A.
To: ARRIS ENTERPRISES, LLC; COMMSCOPE TECHNOLOGIES LLC
Reel/Frame 066163/0727 →
PARTIAL RELEASE OF PATENT SECURITY INTERESTS (TL) Recorded Jan 2, 2024
From: JPMORGAN CHASE BANK, N.A.
To: ARRIS ENTERPRISES, LLC; COMMSCOPE TECHNOLOGIES LLC
Reel/Frame 066163/0739 →
PARTIAL TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 29, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: COMMSCOPE TECHNOLOGIES LLC; ARRIS ENTERPRISES LLC
Reel/Frame 066140/0541 →
SECURITY INTEREST Recorded Nov 19, 2021
From: ARRIS SOLUTIONS, INC.; ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA; RUCKUS WIRELESS, INC.
To: WILMINGTON TRUST
Reel/Frame 060752/0001 →
PATENT SECURITY AGREEMENT Recorded Jul 3, 2019
From: ARRIS ENTERPRISES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 049820/0495 →
ABL SECURITY AGREEMENT Recorded Jul 3, 2019
From: COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; ARRIS ENTERPRISES LLC; ARRIS TECHNOLOGY, INC.; RUCKUS WIRELESS, INC.; ARRIS SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 049892/0396 →
TERM LOAN SECURITY AGREEMENT Recorded Jul 3, 2019
From: COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; ARRIS ENTERPRISES LLC; ARRIS TECHNOLOGY, INC.; RUCKUS WIRELESS, INC.; ARRIS SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 049905/0504 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2018
From: BROCADE COMMUNICATIONS SYSTEMS LLC F/K/A BROCADE COMMUNICATIONS SYSTEMS, INC; FOUNDRY NETWORKS LLC F/K/A FOUNDRY NETWORKS INC.
To: ARRIS ENTERPRISES LLC
Reel/Frame 045600/0755 →
CHANGE OF NAME Recorded Dec 13, 2017
From: BROCADE COMMUNICATIONS SYSTEMS, INC.
To: BROCADE COMMUNICATIONS SYSTEMS LLC
Reel/Frame 044861/0618 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2012
From: JAIN, NITIN
To: BROCADE COMMUNICATIONS SYSTEMS, INC.
Reel/Frame 028786/0312 →