IP Library Granted Patent US 8,813,259
Granted Patent B2
US 8,813,259 · App. 13/547,160 · Granted Aug 19, 2014

Dynamic licensing

Inventors: David S. Dodgson (Lansdale, PA); Anthony Narisi (Glenmoore, PA)
Assignee: Unisys Corporation
G06F21/10G06F21/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 8,813,259
App. No.
13/547,160
Granted
Aug 19, 2014
Kind
B2
Abstract

Dynamic licensing improves the utilization of licenses available within a computer network. License sinks, such as gateways, within a computer network may request licenses from a license source. The license source may be provisioned with a number of licenses from a secure fob plugged into the license source. If the license source has the number of licenses requested from the license sink, the license source may assign the licenses to the license sink. After a certain period of time, the license sink may renew the licenses or let the licenses return to the license source to be assigned to another license sink. The license requests may be passed through the network, including through a proxy and/or a relay, to a license server provisioned with licenses. Dynamic licensing software may execute as a service on each of the license sources and license sinks to pass dynamic licensing messages between devices.

Claims (45)

1. A computer implemented method for providing dynamic licensing for a plurality of virtual machines running on a programmable computing system, comprising:

receiving, by the computing system, licensing requests for a plurality of virtual machines;

determining, by the computing system, a quantity of licenses for the plurality of virtual machines to request the licenses from a first license source;

requesting, by the computing system, the quantity of licenses from the first license source;

receiving, by the computing system, from the first licensing source, a license for each of the virtual machines authorized to communicate with other members of a community of interest; and

wherein, when the computing system receives the requested quantity of licenses, the virtual machines communicate with other computing systems using encrypted data in which the encryption key used associates each of the virtual machines with the community of interest authorized to receive the communication.

2. The method of claim 1 , in which the license source is at least one of a gateway, a license server, a license relay, and a license proxy.

3. The method of claim 1 , further comprising:

receiving a denial of the quantity of licenses from the first license source; and

requesting the quantity of licenses from a second source.

4. The method of claim 1 , in which the step of requesting the quantity of licenses is repeated periodically.

5. The method of claim 4 , further comprising releasing the quantity of licenses after a predetermined period of time.

6. The method of claim 1 , further comprising receiving the quantity of licenses from the first license source, in which the quantity of licenses are formatted in an extensible markup language (XML) document.

7. The method of claim 6 , further comprising reporting a status of license allocations including at least one of a number of licenses available, a total number of licenses allocated, and a number allocated on a sink-by-sink basis.

8. A computer program product for providing dynamic licensing for a plurality of virtual machines running on a programmable computing system, comprising:

a non-transitory computer readable medium comprising:

code to receive, by the computing system, licensing requests for a plurality of virtual machines;

code to determine, by the computing system, a quantity of licenses for the plurality of virtual machines to request the licenses from a first license source;

code to request, by the computing system, the quantity of licenses from the first license source;

code to receive, by the computing system, from the first licensing source, a license for each of the virtual machines authorized to communicate with other members of a community of interest; and

wherein, when the computing system receives the requested quantity of licenses, the virtual machines communicate with other computing systems using encrypted data in which the encryption key used associates each of the virtual machines with the community of interest authorized to receive the communication.

9. The computer program product of claim 8 , in which the medium further comprises:

code to receive a denial of the quantity of licenses from the first license source; and

code to request the quantity of licenses from a second source.

10. The computer program product of claim 8 , in which the medium further comprises code to repeat periodically the requesting of the quantity of licenses.

11. The computer program product of claim 8 , in which the medium further comprises code to release the quantity of licenses after a predetermined period of time.

12. The computer program product of claim 8 , in which the medium further comprises code to parse an extensible markup language (XML) file containing the quantity of licenses.

13. The computer program product of claim 8 , in which the medium further comprises code to report a status of license allocations including at least one of a number of licenses available, a total number of licenses allocated, and a number allocated on a sink-by-sink basis.

14. An apparatus for providing dynamic licensing for a plurality of virtual machines running on a programmable computing system, comprising:

a memory;

a network interface; and

a processor coupled to the memory and to the network interface, in which the processor is configured:

to receive, by the computing system, licensing requests for a plurality of virtual machines;

to determine, by the computing system, a quantity of licenses for the plurality of virtual machines to request the licenses from a first license source;

to request, by the computing system, the quantity of licenses from the first license source;

to receive, by the computing system, from the first licensing source, a license for each of the virtual machines authorized to communicate with other members of a community of interest; and

wherein, when the computing system receives the requested quantity of licenses, the virtual machines communicate with other computing systems using encrypted data in which the encryption key used associates each of the virtual machines with the community of interest authorized to receive the communication.

15. The apparatus of claim 14 , in which the license source is at least one of a gateway, a license server, and a license relay.

16. The apparatus of claim 14 , in which the processor is further configured:

to receive a denial of the quantity of licenses from the first license source; and

to request the quantity of licenses from a second source.

17. The apparatus of claim 14 , in which the processor is further configured to repeat periodically the requesting of the quantity of licenses.

18. The apparatus of claim 14 , in which the processor is further configured to release the quantity of licenses after a predetermined period of time.

19. The apparatus of claim 14 , in which the processor is further configured to parse an extensible markup language (XML) file containing the quantity of licenses.

20. The apparatus of claim 14 , in which the processor is further configured to report a status of license allocations including at least one of a number of licenses available, a total number of licenses allocated, and a number allocated on a sink-by-sink basis.

Assignments (9)
AMENDED AND RESTATED PATENT SECURITY AGREEMENT Recorded Jun 27, 2025
From: UNISYS CORPORATION; UNISYS HOLDING CORPORATION; UNISYS NPL, INC.; UNISYS AP INVESTMENT COMPANY I
To: COMPUTERSHARE TRUST COMPANY, N.A., AS COLLATERAL TRUSTEE
Reel/Frame 071759/0527 →
RELEASE OF SECURITY INTEREST Recorded Oct 28, 2020
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: UNISYS CORPORATION
Reel/Frame 054231/0496 →
RELEASE OF SECURITY INTEREST Recorded Nov 9, 2017
From: WELLS FARGO BANK, NATIONAL ASSOCIATION (SUCCESSOR TO GENERAL ELECTRIC CAPITAL CORPORATION)
To: UNISYS CORPORATION
Reel/Frame 044416/0358 →
SECURITY INTEREST Recorded Oct 6, 2017
From: UNISYS CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 044144/0081 →
PATENT SECURITY AGREEMENT Recorded Apr 27, 2017
From: UNISYS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL TRUSTEE
Reel/Frame 042354/0001 →
SECURITY INTEREST Recorded Nov 4, 2014
From: UNISYS CORPORATION
To: GENERAL ELECTRIC CAPITAL CORPORATION, AS AGENT
Reel/Frame 034096/0984 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2014
From: DODGSON, DAVID S; NARISI, ANTHONY
To: UNISYS CORPORATION
Reel/Frame 032828/0840 →
RELEASE OF SECURITY INTEREST Recorded Mar 26, 2013
From: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL TRUSTEE
To: UNISYS CORPORATION
Reel/Frame 030082/0545 →
RELEASE OF SECURITY INTEREST Recorded Mar 15, 2013
From: DEUTSCHE BANK TRUST COMPANY
To: UNISYS CORPORATION
Reel/Frame 030004/0619 →
Continuity (1)
Related Publication 20140020107A1 · Jan 16, 2014