IP Library Granted Patent US 10,412,012
Granted Patent B2
US 10,412,012 · App. 15/272,218 · Granted Sep 10, 2019

Intelligent, load adaptive, and self optimizing master node selection in an extended bridge

Inventors: Somen Bhattacharya (San Jose, CA); Rakesh Hansalia (Milpitas, CA); Ranganadh Muddana (Union City, CA); Senthil Paramasivam (Santa Clara, CA)
Assignee: ARRIS Enterprises LLC
H04L47/2425H04L41/0806H04L41/0813H04L41/30H04L41/0213H04L41/046H04L41/083H04L41/12H04L43/06H04L43/087H04L43/0852H04L43/16
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,412,012
App. No.
15/272,218
Granted
Sep 10, 2019
Kind
B2
Abstract

Techniques for intelligent, load adaptive, and self optimizing master node selection in an extended bridge are provided. According to one embodiment, a controlling bridge (CB) node that is part of a plurality of CB nodes in the extended bridge can determine a set of local configuration parameters and a set of local runtime parameters. The CB node can further broadcast the set of local configuration parameters and the set of local runtime parameters to other CB nodes in the plurality of CB nodes. The CB node can also receive a set of configuration parameters and a set of runtime parameters from each of the other CB nodes in the plurality of CB nodes. The CB node can then determine a particular CB node in the plurality of CB nodes to be a master CB node of the extended bridge based on the set of local configuration parameters, the set of local runtime parameters, the received sets of configuration parameters, and the received sets of runtime parameters.

Claims (63)

1. A method comprising:

determining, by a controlling bridge (CB) node that is part of a plurality of CB nodes in an extended bridge, a set of local configuration parameters and a set of local runtime parameters, the set of local runtime parameters comprising an amount of control protocol traffic load currently handled by the CB node;

broadcasting, by the CB node, the set of local configuration parameters and the set of local runtime parameters to other CB nodes in the plurality of CB nodes;

receiving, by the CB node, a set of configuration parameters and a set of runtime parameters from each of the other CB nodes, the set of runtime parameters comprising an amount of control protocol traffic load currently handled by each of the other CB nodes; and

determining, by the CB node, a particular CB node in the plurality of CB nodes to be a master CB node of the extended bridge based on the set of local configuration parameters, the set of local runtime parameters, the set of configuration parameters received from said each of the other CB nodes, and the set of runtime parameters received from said each of the other CB nodes.

2. The method of claim 1 further comprising, when the determined particular CB node is the CB node, broadcasting to the other CB nodes in the plurality of CB nodes a message declaring that the CB node is the master CB node.

3. The method of claim 2 further comprising:

receiving a vote from each of the other CB nodes; and

operating as the master CB node of the extended bridge based on the vote received from said each of the other CB nodes.

4. The method of claim 1 , wherein the extended bridge further comprises a set of port extender (PE) nodes rooted under the CB node, and wherein determining the set of local runtime parameters comprises receiving parameters from the set of port extender (PE) nodes.

5. The method of claim 1 , wherein the local set of configuration parameters comprises a priority value associated with the CB node, and wherein the set of configuration parameters comprises a priority value associated with said each of the other CB nodes.

6. The method of claim 1 further comprising:

when the determined particular CB node is not the CB node, receiving a message declaring that another CB node in the plurality of CB nodes is the master CB node;

upon determining that the particular CB node is the same as the another CB node, broadcasting to the other CB nodes in the plurality of CB nodes a vote accepting the another CB node as the master CB node; and

upon determining that the particular CB node is not the same as the another CB node, broadcasting to the other CB nodes in the plurality of CB nodes a vote rejecting the another CB node as the master CB node.

7. A non-transitory computer readable storage medium having stored thereon program code executable by a controlling bridge (CB) node in a plurality of CB nodes of an extended bridge, the program code causing the CB node to:

determine a set of local configuration parameters and a set of local runtime parameters, the set of local runtime parameters comprising an amount of control protocol traffic load currently handled by the CB node;

broadcast the set of local configuration parameters and the set of local runtime parameters to other CB nodes in the plurality of CB nodes;

receive a set of configuration parameters and a set of runtime parameters from each of the other CB nodes in the plurality of CB nodes, the received set of runtime parameters comprising an amount of control protocol traffic load currently handled by each of the other CB nodes; and

determine a particular CB node in the plurality of CB nodes to be a master CB node of the extended bridge based on the set of local configuration parameters, the set of local runtime parameters, the set of configuration parameters received from said each of the other CB nodes, and the set of runtime parameters received from said each of the other CB nodes.

8. The non-transitory computer readable storage medium of claim 7 , wherein the program code further causes the CB node to, when the determined particular CB node is the CB node, broadcast to the other CB nodes in the plurality of CB nodes a message declaring that the CB node is the master CB node.

9. The non-transitory computer readable storage medium of claim 8 , wherein the program code further causes the CB node to:

receive a vote from said each of the other CB nodes; and

operate as the master CB node of the extended bridge system based on the vote received from said each of the other CB nodes.

10. The non-transitory computer readable storage medium of claim 7 , wherein the extended bridge system further comprises a set of port extender (PE) nodes rooted under the CB node, and wherein determining the set of local runtime parameters comprises receiving parameters from the set of port extender (PE) nodes.

11. The non-transitory computer readable storage medium of claim 7 , wherein the local set of configuration parameters comprises a priority value associated with the CB node, and wherein the set of configuration parameters comprises a priority value associated with said each of the other CB nodes.

12. The non-transitory computer readable storage medium of claim 7 , wherein the program code further causes the CB node to:

when the determined particular CB node is not the CB node, receive a message declaring that another CB node in the plurality of CB nodes is the master CB node;

upon determining that the particular CB node is the same as the another CB node, broadcast to the other CB nodes in the plurality of CB nodes a vote accepting the another CB node as the master CB node; and

upon determining that the particular CB node is not the same as the another CB node, broadcast to the other CB nodes in the plurality of CB nodes a vote rejecting the another CB node as the master CB node.

13. A network device acting as a controlling bridge (CB) node in a plurality of CB nodes of an extended bridge, the network device comprising:

a processor; and

a non-transitory computer readable medium having stored thereon program code that, when executed by the processor, causes the processor to:

determine a set of local configuration parameters and a set of local runtime parameters, the set of local runtime parameters comprising an amount of control protocol traffic load currently handled by the CB node;

broadcast the set of local configuration parameters and the set of local runtime parameters to other CB nodes in the plurality of CB nodes;

receive a set of configuration parameters and a set of runtime parameters from each of the other CB nodes in the plurality of CB nodes, the set of runtime parameters comprising an amount of control protocol traffic load currently handled by each of the other CB nodes; and

determine a particular CB node in the plurality of CB nodes to be a master CB node of the extended bridge based on the set of local configuration parameters, the set of local runtime parameters, the set of configuration parameters received from said each of the other CB nodes, and the set of runtime parameters received from said each of the other CB nodes.

14. The network device of claim 13 , wherein the program code further causes the processor to, when the determined particular CB node is the CB node, broadcast to the other CB nodes in the plurality of CB nodes a message declaring that the CB node is the master CB node.

15. The network device of claim 14 , wherein the program code further causes the processor to:

receive a vote from said each of the other CB nodes; and

operate as the master CB node of the extended bridge system based on the vote received from said each of the other CB nodes.

16. The network device of claim 13 , wherein the extended bridge system further comprises a set of port extender (PE) nodes rooted under the CB node, and wherein determining the set of local runtime parameters comprises receiving parameters from the set of port extender (PE) nodes.

17. The network device of claim 13 , wherein the local set of configuration parameters comprises a priority value associated with the CB node, and wherein the set of configuration parameters comprises a priority value associated with said each of the other CB nodes.

18. The network device of claim 13 , wherein the program code further causes the processor to:

when the determined particular CB node is not the CB node, receive a message declaring that another CB node in the plurality of CB nodes is the master CB node;

upon determining that the particular CB node is the same as the another CB node, broadcast to the other CB nodes in the plurality of CB nodes a vote accepting the another CB node as the master CB node; and

upon determining that the particular CB node is not the same as the another CB node, broadcast to the other CB nodes in the plurality of CB nodes a vote rejecting the another CB node as the master CB node.

19. A method comprising:

determining, by a controlling bridge (CB) node that is part of a plurality of CB nodes in an extended bridge, a set of local configuration parameters and a set of local runtime parameters;

broadcasting, by the CB node, the set of local configuration parameters and the set of local runtime parameters to other CB nodes in the plurality of CB nodes;

receiving, by the CB node, a set of configuration parameters and a set of runtime parameters from each of the other CB nodes;

determining, by the CB node, a particular CB node in the plurality of CB nodes to be a master CB node of the extended bridge based on the set of local configuration parameters, the set of local runtime parameters, the set of configuration parameters received from said each of the other CB nodes, and the set of runtime parameters received from said each of the other CB nodes;

when the determined particular CB node is the CB node, broadcasting, by the CB node to the other CB nodes in the plurality of CB nodes, a message declaring that the CB node is the master CB node;

receiving, by the CB node, a vote from said each of the other CB nodes; and

operating, by the CB node, as the master CB node of the extended bridge based on the vote received from said each of the other CB nodes.

20. A method comprising:

determining, by a controlling bridge (CB) node that is part of a plurality of CB nodes in an extended bridge, a set of local configuration parameters and a set of local runtime parameters;

broadcasting, by the CB node, the set of local configuration parameters and the set of local runtime parameters to other CB nodes in the plurality of CB nodes;

receiving, by the CB node, a set of configuration parameters and a set of runtime parameters from each of the other CB nodes;

determining, by the CB node, a particular CB node in the plurality of CB nodes to be a master CB node of the extended bridge based on the set of local configuration parameters, the set of local runtime parameters, the set of configuration parameters received from said each of the other CB nodes, and the set of runtime parameters received from said each of the other CB nodes;

when the determined particular CB node is not the CB node, receiving, by the CB node, a message declaring that another CB node in the plurality of CB nodes is the master CB node;

upon determining that the determined particular CB node is the same as the another CB node, broadcasting, by the CB node to the other CB nodes in the plurality of CB nodes, a vote accepting the another CB node as the master CB node; and

upon determining that the determined particular CB node is not the same as the another CB node, broadcasting, by the CB node to the other CB nodes in the plurality of CB nodes, a vote rejecting the another CB node as the master CB node.

Assignments (11)
SECURITY INTEREST Recorded Apr 8, 2026
From: ARRIS ENTERPRISES LLC; RUCKUS IP HOLDINGS LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 075476/0814 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2025
From: ARRIS ENTERPRISES LLC
To: RUCKUS IP HOLDINGS LLC
Reel/Frame 073081/0001 →
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 →
SECURITY INTEREST Recorded Dec 17, 2024
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE INC., OF NORTH CAROLINA; OUTDOOR WIRELESS NETWORKS LLC; RUCKUS IP HOLDINGS LLC
To: APOLLO ADMINISTRATIVE AGENCY LLC
Reel/Frame 069889/0114 →
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 →
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 →
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 →
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 Sep 21, 2016
From: BHATTACHARYA, SOMEN; HANSALIA, RAKESH; MUDDANA, RANGANADH; PARAMASIVAM, SENTHIL
To: BROCADE COMMUNICATIONS SYSTEMS, INC.
Reel/Frame 039821/0564 →
Continuity (2)
Provisional Application 62222019 · Sep 22, 2015
Related Publication 20170085488A1 · Mar 23, 2017