IP Library Granted Patent US 12682019
Granted Patent B2
US 12682019 · App. 18/349,265 · Granted Jul 14, 2026

Secure aggregation of multiple network incognizant licensing services into a single service for the purpose of scaling and redundancy

Inventor: Robin Broadhead (Kanata, CA)
Assignee: CIENA CORPORATION
G06F21/105
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 12682019
App. No.
18/349,265
Granted
Jul 14, 2026
Kind
B2
Abstract

Aspects of the subject disclosure may include, for example, receiving at a license distribution system, information about a pool of license entitlements for deployment to network elements in a network to enable operational features of the network elements, receiving a deployment plan for distributing license entitlements of the pool of license entitlements to the network elements, and deploying required license entitlements to network elements of according to the deployment plan to control distribution of the required license entitlements to the network elements in the network. Other embodiments are disclosed.

Claims (72)

1 . A non-transitory machine-readable medium, comprising executable instructions that, when executed by a processing system including a processor, facilitate performance of operations, the operations comprising:

receiving information about a pool of license entitlements for distribution to network elements of a number of network elements requesting license entitlements of the pool of license entitlements;

receiving a deployment plan for distributing license entitlements of the pool of license entitlements, wherein the deployment plan defines allocations of license entitlements of the pool of license entitlements, wherein the deployment plan is dynamically adaptable according to time-varying requirements from respective network elements of the number of network elements;

wherein the receiving the deployment plan comprises receiving the deployment plan at one resource manager of a plurality of resource managers, each resource manager of the plurality of resource managers being in data communication over a secure token ring network with other resource managers of the plurality of resource managers, wherein each resource manager of the plurality of resource managers is co-resident with a respective associated license server of a plurality of license servers forming a secured cluster of license servers, wherein the respective associated license servers of the secured cluster of license servers are controllable as a single entity according to the deployment plan, each respective resource manager being operative to manage a configuration of its respective associated license server according to the deployment plan, wherein the deployment plan includes predefined logic to manage license allocation, including minimum thresholds, maximum thresholds, and failover thresholds for license entitlements across the plurality of license servers, and wherein the deployment plan further includes redundancy requirements and dynamic logic for scaling a number of license servers actively involved in deploying license entitlements in response to the time-varying requirements from the respective network elements of the number of network elements, and

responsive to receiving the deployment plan and responsive to contents of the deployment plan, the one resource manager communicating over the secure token ring network to distribute the deployment plan to the other resource managers of the plurality of resource managers among the secured cluster of license servers;

distributing license entitlements amongst a plurality of license servers of the secured cluster of license servers according to the deployment plan, wherein the distributing the license entitlements comprises assigning respective license entitlements of the license entitlements to a respective associated license server by a respective resource manager in response to the respective resource manager receiving the deployment plan from the one resource manager;

synchronizing the deployment plan with all resource managers in the secured cluster of license servers by communicating on the secure token ring network, wherein the synchronizing includes secure communication of encrypted configuration files and dynamic updates in response to changes in the deployment plan; and

dynamically scaling a number of license servers of the plurality of license servers of the secured cluster by automatically instantiating or removing license servers in the secured cluster of license servers responsive to the time-varying requirements from the respective network elements of the number of network elements, wherein the scaling is responsive to a variation in demand for the license entitlements of the pool of license entitlements, wherein the scaling comprises managing the plurality of license servers of the secured cluster as a single entity including secure communication of an updated deployment plan for dynamically sharing the license entitlements of the pool of license entitlements among the plurality of license servers responsive to the variation in demand for the license entitlements, and wherein the scaling further comprises combining newly instantiated servers into the secured cluster of license servers with dynamic coordination by the resource managers of the plurality of resource managers.

2 . The non-transitory machine-readable medium of claim 1 , wherein the operations further comprise:

receiving the deployment plan over the secure token ring network at a license server of the plurality of license servers, each respective license server of the secured cluster of license servers including a respective resource manager module and a respective license server module; and

sharing, by the respective resource manager module of the license server over the secure token ring network, the deployment plan to other resource manager modules of the secured cluster of license servers.

3 . The non-transitory machine-readable medium of claim 2 , wherein the sharing the deployment plan to the other resource manager modules comprises:

sharing the deployment plan to the other resource manager modules over the secure token ring network by the respective resource manager module automatically, in response to receiving the deployment plan at the respective resource manager module.

4 . The non-transitory machine-readable medium of claim 1 , wherein the receiving the deployment plan comprises:

receiving information defining a plurality of operational features, operational features of the plurality of operational features being enabled for use by respective network elements according to one or more license entitlements of the deployment plan; and

receiving information defining a number of license entitlements for each operational feature of the plurality of operational features.

5 . The non-transitory machine-readable medium of claim 4 , wherein the receiving the deployment plan comprises:

receiving information defining numbers of license entitlements for each operational feature assigned to each respective license server of the plurality of license servers.

6 . The non-transitory machine-readable medium of claim 1 , wherein the scaling the number of license entitlements comprises:

adding one or more additional license servers to the secured cluster of license servers responsive to a determined requirement for additional capacity.

7 . The non-transitory machine-readable medium of claim 6 , wherein the operations further comprise:

sharing, by a license server of the plurality of license servers, with the one or more additional license servers, the deployment plan for distributing license entitlements of the pool of entitlements.

8 . The non-transitory machine-readable medium of claim 1 , wherein the operations further comprise:

instantiating a first license server, the first license server including a resource manager module and a license server module; and

allocating license entitlements to network elements in a network by the first license server in response to license entitlements requests received from respective network elements.

9 . The non-transitory machine-readable medium of claim 8 , wherein the operations further comprise:

comparing a key performance indicator for the first license server with a performance threshold;

instantiating an additional license server responsive to the key performance indicator exceeding the performance threshold to scale the number of license servers according to a variation in the key performance indicator; and

responsive to instantiating the additional license server, sharing information about the deployment plan and a current distribution for license entitlements to the additional license server.

10 . The non-transitory machine-readable medium of claim 9 , wherein the operations further comprise:

receiving an updated deployment plan for distributing the license entitlements of the pool of license entitlements to the plurality of license servers, the updated deployment plan including additional required entitlements; and

sharing, by the respective resource manager module of the first license server, the updated deployment plan to other resource manager modules of the plurality of license servers.

11 . A method, comprising:

receiving, by a processing system including a processor, information about a pool of license entitlements for deployment to network elements of a number of network elements requesting license entitlements of the pool of license entitlements;

receiving, by the processing system, a deployment plan defining allocations of license entitlements of the pool of license entitlements among license servers of a cluster of license servers, the license servers of the cluster of license servers being configured to deploy the license entitlements of the pool of license entitlements to network elements of the number of network elements, wherein the deployment plan is dynamically adaptable according to time-varying requirements from respective network elements of the number of network elements, wherein the receiving the deployment plan comprises:

receiving the deployment plan at one resource manager of a plurality of resource managers, each resource manager of the plurality of resource managers being in data communication over a token ring network with other resource managers of the plurality of resource managers, each resource manager of the plurality of resource managers being co-resident with a respective associated license server of the cluster of license servers, wherein the respective associated license server of the cluster of license servers are controllable as a single entity according to the deployment plan, each respective resource manager being operative to manage a configuration of its respective associated license server, and

responsive to receiving the deployment plan and responsive to contents of the deployment plan, communicating the deployment plan by the one resource manager over the token ring network to distribute the deployment plan to the other resource managers of the plurality of resource managers;

distributing, by the processing system, license entitlements amongst a plurality of license servers of the cluster of license servers, wherein the distributing the license entitlements comprises assigning selected license entitlements to a respective associated license server by a respective resource manager in response to the respective resource manager receiving the deployment plan from the one resource manager;

synchronizing, by the processing system, the deployment plan among all resource managers of the plurality of resource managers by communicating on the token ring network, wherein the synchronizing includes secure communication of encrypted configuration files and dynamic updates in response to changes in the deployment plan; and

dynamically scaling, by the processing system, a number of license servers in the cluster of license servers by increasing or decreasing the number of license servers in the cluster of license servers, wherein the scaling the number of license servers in the cluster of license servers is responsive to the time-varying requirements from the respective network elements of the number of network elements, wherein the scaling comprises instantiating one or more additional license servers in the cluster of license servers responsive to an increase in the number of network elements requesting license entitlements and removing one or more excess license servers from the cluster of license servers responsive to a decrease in the number of network elements, and wherein the scaling further comprises combining newly instantiated servers into the cluster of license servers with dynamic coordination by the resource managers of the plurality of resource managers.

12 . The method of claim 11 , wherein the receiving a deployment plan comprises:

receiving, by the processing system, information defining a plurality of operational features, operational features of the plurality of operational features being enabled for use by respective network elements according to one or more license entitlements of the deployment plan; and

receiving, by the processing system, information defining a number of license entitlements for each operational feature of the plurality of operational features.

13 . The method of claim 12 , wherein the receiving a deployment plan comprises:

receiving, by the processing system, information defining numbers of license entitlements for each operational feature assigned to each respective license server including a first license server of the plurality of license servers.

14 . The method of claim 13 , wherein the operations further comprise:

instantiating, by the processing system, an additional license server, the first license server and the additional license server being respective license servers of the cluster of license servers.

15 . The method of claim 14 , comprising:

communicating, by the processing system, an updated deployment plan between the first license server and respective license servers of the cluster of license servers including the additional license server; and

communicating, between the first license server and the respective license servers of the cluster of license servers including the additional license server, information about a current distribution for license entitlements.

16 . A license server, comprising:

a license server module;

a resource manager module associated with the license server module for controlling operation of the license server module;

a processing system including a processor; and

a memory that stores executable instructions that, when executed by the processing system, facilitate performance of operations, the operations comprising:

receiving, at the resource manager module, information about a pool of license entitlements for deployment to license servers of a cluster of license servers, the cluster including the license server, wherein license entitlements of the pool of license entitlements are distributable to network elements requiring license entitlements by the license servers of the cluster of license servers;

receiving, at the resource manager module, a deployment plan defining allocations of license entitlements of the pool of license entitlements to the license servers of the cluster of license servers, wherein the deployment plan is dynamically adaptable according to time-varying requirements for license entitlements from respective network elements;

deploying, by the resource manager module, license entitlements amongst the license servers of the cluster of license servers according to the deployment plan, wherein the deploying the license entitlements comprises communicating the deployment plan over a common data network shared with other license servers of the cluster of license servers, each respective license server of the cluster of license servers including a respective license server module and a respective associated resource manager module, wherein the deploying the license entitlements comprises assigning license entitlements of the pool of license entitlements to a respective license server module by its respective associated resource manager module;

modifying, by the resource manager module, deployment of the license entitlements amongst the license servers in response to a variation in a number of the network elements requiring the license entitlements, wherein the modifying the deployment of the license entitlements comprises initiating by the resource manager module an increase or a decrease in the number of license modules in the cluster of license modules in response to the variation in the number of the network elements requiring the license entitlements;

comparing, by the resource manager module, a key performance indicator for the license servers of the cluster of license servers with a performance threshold;

instantiating, by the resource manager module, an additional license server in the cluster of license servers responsive to the key performance indicator exceeding the performance threshold to thereby scale the number of license servers according to a variation in the key performance indicator; and

responsive to instantiating the additional license server, sharing, by the resource manager module, information about the deployment plan and a current distribution for license entitlements to the additional license server, wherein the sharing the information about the deployment plan comprises communicating the deployment plan to a resource module of the additional license server.

17 . The license server of claim 16 , wherein the operations further comprise:

receiving the deployment plan at the license server at the resource manager module of the license server; and

distributing, by the resource manager module of the license server, the deployment plan to other resource manager modules of license servers of the cluster of license servers.

18 . The license server of claim 17 , wherein the operations further comprise:

receiving an updated deployment plan for distributing the license entitlements; and

sharing the updated deployment plan among respective license servers of the cluster of license servers.

19 . The license server of claim 18 , wherein the operations further comprise:

in response to a determination that a selected license server of the cluster of license servers is unavailable, automatically assigning a second license server of the cluster of license servers as a backup to the selected license server.

20 . The license server of claim 16 , wherein the operations further comprise:

instantiating an additional license server.