IP Library Granted Patent US 9,973,987
Granted Patent B2
US 9,973,987 · App. 14/261,334 · Granted May 15, 2018

Selection of anchor controllers for access points within a network environment

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,973,987
App. No.
14/261,334
Granted
May 15, 2018
Kind
B2
Abstract

According to one embodiment of the invention, a non-transitory computer readable medium for improving the scalability and redundancy of a wireless communications network. One embodiment of the non-transitory computer readable medium comprises instructions that select a first controller for controlling a configuration of a first access point and a second access point, detect a particular event and, responsive to detecting the particular event, select a second controller for controlling the configuration of the first access point without modifying the selection of the first controller for controlling the configuration of the second access point.

Claims (50)

1. A non-transitory computer readable medium comprising instructions which, when executed by a processor, cause the processor to:

determine one or more characteristics corresponding to an access point, wherein the one or more characteristics comprise one or more of:

a physical location of the access point;

a priority associated with the access point;

a hash value obtaining by applying a hash function to an identifier associated with the access point;

client device identification characteristics of one or more client devices associated with the access point; and

a type of traffic typically transmitted by and/or to the access point;

based on the one or more characteristics corresponding to the access point select a first controller, of a plurality of controllers, to control a configuration of the access point;

determine that the first controller is unavailable to manage the access point based on hash collisions occurring within an access point-to-controller configuration table;

in response to the determination that the first controller is unavailable to manage the access point, select a second controller to manage the access point, wherein the second controller is selected by a managing controller of a cluster of controllers that includes the first controller and the second controller;

update the access point-to-controller configuration table to indicate the second controller is managing the access point; and

distribute the updated access point-to-controller configuration table to a plurality of access points within a cluster of controllers that includes the second controller.

2. The medium of claim 1 , wherein the second controller is selected by the first controller.

3. The medium of claim 1 , further comprising instructions executable to distribute the updated access point-to-controller configuration table to a plurality of controllers within the cluster of controllers that includes the second controller.

4. The medium of claim 1 , wherein the managing controller is responsible for assigning an access point to a particular controller within the cluster of controllers.

5. The medium of claim 1 , further comprising instructions executable by the processor to determine, by a Software-Defined Networks (SDN) application, the second controller to become a primary controller of the access point.

6. The medium of claim 1 , wherein the instructions executable to update the access point-to-controller configuration table to indicate the second controller is managing the access point further include instructions executable to update a first standby column of the access point-to-controller configuration table to remove the second controller from the first standby column.

7. The medium of claim 6 , further comprising instructions executable to:

determine a third controller to serve as a standby controller; and

update a second standby column of the access point-to-controller configuration table to add the third controller as the standby controller.

8. The medium of claim 1 , wherein the instructions executable to update the access point-to-controller configuration table to indicate the second controller is managing the access point further include instructions executable to update a primary column of the access point-to-controller configuration table, wherein updating the primary column of the access point-to-controller configuration table includes indicating that the second controller is a primary controller of the access point.

9. The medium of claim 1 , wherein the instructions executable to determine that the first controller is unavailable to manage the access point further include instructions executable to determine that the first controller is unavailable to manage the access point as a result of access point failure.

10. The medium of claim 1 , wherein the instructions executable to select a second controller to manage the access point include instructions executable to:

determine a level of security of the access point; and

determine a second controller corresponding to the level of security of the access point.

11. A non-transitory computer readable medium comprising instructions which, when executed by a processor, cause the processor to:

determine identifying characteristics of one or more client devices corresponding to a particular access point;

based on the identifying characteristics of the one or more client devices, select a first controller to configure the particular access point;

determine that the first controller is unavailable to manage the access point based on hash collisions occurring within an access point-to-controller configuration table;

in response to the determination that the first controller is unavailable to manage the access point, select a second controller to control the manage the access point, wherein:

the second controller is selected by the first controller; and

in response to the selection, the second controller becomes the primary controller of the access point;

update the access point-to-controller configuration table to indicate the second controller is managing the access point; and

distribute the updated access point-to-controller configuration table to a plurality of access points within a cluster of controllers that includes the second controller.

12. The medium of claim 11 , wherein the one or more client devices corresponding to the particular access point includes one or more client devices currently associated with the particular access point.

13. The medium of claim 11 , wherein the one or more client devices corresponding to the particular access point includes one or more client devices previously associated with the particular access point.

14. The medium of claim 11 , wherein the one or more client devices corresponding to the particular access point includes one or more client devices to be associated with the particular access point.

15. The medium of claim 11 , wherein the first controller is unavailable to manage the access point as a result of failure of the first controller.

16. The medium of claim 11 , further comprising instructions executable to:

determine that the client device has roamed from a first access point to a second access point, wherein the first access point is managed by the first controller; and

determine that the second access point is managed by the first controller.

17. The medium of claim 16 , further comprising instructions executable to transfer state information of the client device to the second access point by the first controller.

18. The medium of claim 16 , wherein the instructions executable to determine that the first controller is unavailable to manage the access point based on hash collisions occurring within an access point-to-controller configuration table include instructions executable to determine that the first controller is managing a high number of client devices.

19. The medium of claim 16 , wherein the instructions executable to determine that the first controller is unable to manage the access point further comprise instructions executable to:

determine a particular security clearance level of a client device; and

determine that the first controller is unable to manage a client device with the particular security level.

20. The medium of claim 19 , further comprising instructions executable to:

determine a second controller to manage the client device,

wherein the second controller is able to manage the client device with the particular security level; and

move the client device to the second controller.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2018
From: ARUBA NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 045921/0055 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: ARUBA NETWORKS, INC.
Reel/Frame 036379/0274 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2015
From: ARUBA NETWORKS, INC.
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 035814/0518 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2014
From: YANG, SHEAUSONG; RAMAN, GOPALAKRISHNAN
To: ARUBA NETWORKS, INC.
Reel/Frame 032782/0955 →