When do I need a license server?
When customers install licensed software, a question that often comes up is “when do I need a license server?” In this blog post, we talk about the various jobs a license server performs, and when it is needed to support different license types. The information here applies to RLM, and may not apply to other license server products.
The Reprise License Manager product is capable of supporting many license types. Some are appropriate for standalone, single-user licensing models and others are used to support more complex network licensing and pricing scenarios. Determining when a license server must be installed is not always clear.
Uncounted v. Counted Licenses
The biggest factor that determines whether a license server is needed is whether licenses are counted or uncounted. Counted licenses require a license server because the server must keep track of who is using licenses. Counted licenses are used whenever the ISV wants to limit or record concurrent license usage. Counted licenses can be identified by a positive integer in the “count” field of the license.
In addition to counted licenses, metered licenses always require a license server.
Uncounted licenses, on the other hand, do not require a license server because there is no need to keep track of usage. Uncounted licenses can be identified by the word “uncounted” or or the number “0” in the license count field of the license. Each uncounted license is node-locked to a hostid.
Some users prefer to have a license server serve uncounted licenses so that the usage is tracked in the report log file. This is an optional capability and is not required, but is considered a feature by some users.
A “single” license is a special case. Even though it is counted (with a limit of 1), this license does not require a license server. This is a node-locked license, but it can be used by only one user at a time (concurrent count of “1”). The enforcement of “single” licenses is done via file locking, not by license servers.
The RLM License Server
The basic job of the RLM License Server is to service license requests from RLM-enabled client applications over the network. Based on the needs of the application, the license server redirects license requests to the ISV-specific license server which actually grants or denies the request based on what is specified in the license and on the current usage conditions.
License servers also manage “roaming,” named-user, metered, and token-based licenses. They manage held and shared licenses, and offer an admin interface, diagnostic tools, and are responsible for writing debug and report logs.
These server capabilities, however, come with added complexity in managing the server. For the case of simple, node-locked licenses, none of this complexity need be dealt with by the user of the software. In this case, the application and it’s license file are placed on the licensed computer, and no other components are required.