Appendix A - FlexNet Licenses Explained

Let us suppose you have received a 4-user license for a OpendTect Pro and the DipSteering plugin. You will have received a floating license, meaning that these features can be used from any machine that can access the license server, by a maximum of four simultaneous users.

Server side: The License Manager Daemon

To be able to enforce the license, there must be a piece of software somewhere that keeps track of who is using the module. That is the License Manager Daemon (lmgrd). The lmgrd can run on any machine, also on machines that you will never use the module itself on. Good candidates are stable UNIX servers.

When the lmgrd is started, it looks at a file containing the information about what should be supported. This file is called the License File. Actually, the lmgrd can only be started on the machine indicated in the license file. The license file could look similar to this:

SERVER licserv 000347e8b845
VENDOR dgbld /apps/opendtect/6.6.0/bin/lux64/lm.dgb/dgbld

FEATURE dTectPRO dgbld 2024.03 31-mar-2024 4 DUP_GROUP=UHD SIGN="0077...

FEATURE dTectDS dgbld 2024.03 31-mar-2024 4 DUP_GROUP=UHD SIGN="0023...

 

The first line tells us that the lmgrd must be started on the machine licserv, with FlexNet ID 000347e8b845. The second line is interesting for the lmgrd only (it tells the lmgrd where to find the vendor daemon, in this case the dGB vendor daemon, dgbld). Below you then see two actual license FEATURE lines (dTectPRO and dTectDS). The features shown are valid until 31-mar-2024, for 4 users, and may be updated to the latest available version of this feature until the end of the month 2024.03 (31-mar-2024).

The Client side: Your program

Now let's look at the machine that you run your software on. The program will at some point in time need to check whether there is a license for what you are trying to do. For this, the program looks at the same license file. It sees that it has to contact the machine 'licserv' to ask for permission. The combination of lmgrd & dgbld keep track of the number of users already using the license feature. If a license is granted, your program will go on, otherwise you'll get an error message.

Non-floating licenses

In some cases the software will never be used other than on a certain machine. In that case a node-locked license can be issued. For such a license you do not need to start a license manager daemon - the license is tied to, and installed on, only that specific machine, through its HostID. A special case is the unlimited DEMO license, which grants unlimited access for any number of users on any machine. It goes without saying that this kind of license is always for short periods.

Host identification

For the above schemes to work, the license server or the machine using the node-locked license must be uniquely identified. Therefore, you will be asked to provide a unique HostID and a hostname when you want to obtain a license. The preferred method to identify the HostID is via OpendTect itself using the 'Show HostID' option (see: Licensing and Host IDs). From this option, you may use the 'copy' icon to copy the information to your clipboard before sending it through to us.

If you need to obtain the host ID before OpendTect is installed:

If for some reason one of these commands does not work: we need the MAC address of the main network card. Sending the IP address of a machine is never helpful.

Conclusion (Manager's summary)

The FlexNet license system is based upon internet technology. Therefore you can run your software on any machine, using any operating system, to get licenses from any other machine regardless of operating system or physical location. Thus, a Linux license server in Houston can manage the licenses for Windows, Linux and Mac OS X machines in Houston, Caracas and Paris. The only restriction is the number of users actually using the 'feature' at a certain time, but that is what you pay for.

For more information, see the FlexNet Licensing End User Guide.