You are here: About the RMS License Server > Understanding License Authorization Process

The License Authorization Process

The license authorization process is broken into nine steps listed below:

Step 1: License Server Configuration

When the license server is started it is configured in any of three stages.

  1. First, any options selected by command line parameters are set.
  2. Next, any options for which the specific environment variables are set.
  3. Finally, any options that are provided in the LSERVOPTS environment variable are set.

These options work in a mutually exclusive way. If an option is passed through the command line, then other options are ignored. If command line options are not specified and a setting is made through a specific environment variable, then it takes precedence over LSERVOPTS specified value.

Many of the license server options can be set using all three methods. When a setting is made using more than one method, the command line switches have the highest priority or else the latter specifications override the previous ones. This flexibility helps in some situations, but in general it is not needed. When we talk about setting an option in this guide, we recommend which method should be used to set the option. We suggest you to read through License Server-Commonly Used Variables and License Server-Infrequently Used Variables for more details.

To learn more about the license server command line options, we recommend you to read through lservnt - Start the License Server.  

Step 2: Load License Codes

After configuration, the license server reads the license file. The name and location of this file can be set using the license server options. The license server reads the file from start to finish, processing each license code in order. All additive license codes add to the licensing rights already processed. All exclusive codes override all previously read codes and any future additive codes.

If the license server cannot find the license file, it will continue to run. When a license server is running it can also accept license codes across the network from other programs such as lslic. A server will process each received code as if it has just been read from the license file. The license server will also add the license code to the end of the license file if this was requested.

Step 3: Client Identifies License Server

If the application supports network licensing, it looks for a license server:

In most of the cases, this will be taken care by the licensed application. However, your vendor may instruct you to set the specific license server host using the LSFORCEHOST environment variable or traverse through various license servers using the LSHOST environment variable.

See Client - Commonly Used Variables for more details.

Step 4: Client Issues License Request

Once the application has identified the license server, it issues a request for one or more licenses to the license server. The server host name is translated to the network address of the license server computer. The application sends a license request to this address and the license server’s port.  

Step 5: License Server Responds

When a license server receives a license request, it checks to see if a license can be granted based upon the current license codes. If it can, then an authorization is sent back to the client computer. Otherwise, the request is rejected and a denial is sent back to the client computer.

Note: In both cases, the activity may be logged to a file if this capability has been enabled.  

Step 6: Client Renews License

Each license code specifies the maximum time period that a license may be held by an application without renewal. After a client has received a license, it must periodically request a license renewal from the license server.

Forcing a license to be renewed allows a license server to reclaim a license when there is a problem with an application or a client computer. If the application does not renew its license within the allowed time, it loses its license and the server may grant it to another user.

Note: This action is handled by the application and is transparent to the user on the client computer.

Step 7: License Server Responds

The license server responds to a license renewal request in the same manner as the initial license request as discussed in Step 5.  

Step 8: Client Returns License

When an application ends, it sends a message back to the license server indicating that the license is no longer needed. This lets the license server immediately reclaim the license and make it available to another user.

Tip:

Usually, the license will be released automatically after some time if the licensed application does not send an update to the license server for long or faces a network issue. This will help in making the licenses available for further requests.

Step 9: License Server Releases License

When the license server receives the license authorization back, it makes it available again to another user.