Rss Categories

Flexible Licensing Overview

Reference Number: AA-02004 Views: 4031 0 Rating/ Voters

LumenVox has developed and deployed a new licensing mechanism, referred to as Flexible licensing.

This mechanism is an alternative to our on-premise Perpetual licensing system that has been in use for several years.  The aim of this new licensing system was to reduce customer friction when dealing with licenses, both at time of installation, and also when updating license maintenance.

This new mechanism uses the fact that most machines these days have access to the Internet, and can therefore directly communicate with LumenVox to obtain up-to-date information. Also, as part of this exchange, a high-level summary of license usage is also sent to LumenVox - we do not report any sensitive information when performing this exchange, and the License Server sending the report has no knowledge of any individual ASR decodes or TTS syntheses.  Only very limited statistical license use is reported, which can be used to offer more convenient licensing options to customers with custom requirements.

Figure 1 - Flexible licensing overview diagram

Normal Configuration

As can be seen from the overview diagram above, the License Server communicates directly with the LumenVox cloud at a regular interval, which is set by default to 1 day.

In this configuration, whenever an exchange between the License Server and the cloud-based Licensing Nodes takes place, the License Server will be updated to the latest licenses available.

This communication is fairly robust, in that it will make repeated attempts to communicate with the Licensing Nodes if network connectivity is down, which also means that if an interruption to the Internet connection occurs - even for extended periods, the License Server, and more importantly your application, will continue operating without interruption.

Extended periods of network interruption, where the License Server does not report back to LumenVox will be logged, so it is important to maintain connectivity whenever possible, however as long as you have occasional Internet access allowing synchronization to take place on a regular basis, you should not encounter any problems. Again, we've designed this to be as easy to use as we could make it.

Secure Communication

From a security perspective, there is minimal exposure of the machine and therefore minimal network security risks.  When performing an exchange, the License Server will attempt to reach out to one of our Cloud-Based Licensing Nodes, using the following Fully Qualified Domain Names (FQDN):


We maintain these machines and may periodically change the IP addresses assigned to these FQDN as needed to address security issues, or as we improve our network infrastructure.  It should not matter which one you communicate with, since all available Licensing Nodes will be able to service the exchange.

Communication with these nodes is already encrypted at the file level, however additional encryption can be enabled by opting to use HTTPS protocol instead of HTTP.  This can be enabled using the USE_FLEX_REPORTING_HTTPS setting in the license_server.conf file.

Because we have seen customers need to use different ports to navigate their firewalls, we have configured our Licensing Nodes to communicate on a number of Ports.  The port number at the Cloud-Based Licensing Nodes that will be connected with can also be configured using the FLEX_REPORTING_PORT setting in license_server.conf. You can choose from any of the following ports:

  • HTTP80, 8080, 13449, 24963 or 43038
  • HTTPS: 443, 8443, 23028, 39520 or 48846 

The default is to use port 80 (HTTP), but we recommend using HTTPS if your firewall rules permit this.

Note that no individual call details, or personally identifiable information is passed during any exchanges between License Servers and the Flexible Licensing Nodes in the Internet - only summary license usage information is sent, and in return an updated list of available licenses for that server is returned.

Client Interaction With License Server

The LumenVox Media Server (or any other product using LumenVox licenses) keeps a local cache of the available licenses.  When a license is needed/requested by the Media Server, the local cache is checked and updated.  Every two seconds, it updates this cache from the License Server.  This update is a background process.   

When the Media Server cannot connect to the primary License Server to update its local cache, it then attempts to connect to a backup License Server (if configured) to do the update.  If it cannot connect to any License Server for two minutes, it then flushes its local cache and will not allow new license requests.  Once it reconnects with a License Server (primary or backup) it will commence allowing license requests.  

This means all license requests are handled locally on the Media Server and do not traverse a network connection.  The network traffic between the Media Servers and License Servers are usage updates and license cache updates.  Any latency in that traffic will not affect the speed at which license requests are handled.  

The Media Server will allow up to 10 seconds of network delay with the primary License Server before attempting to use the backup License Server instead.  Once per day, the License Server will communicate with the hosted LumenVox License Nodes, to update usage information, and check for license updates.  The frequency of this communication is configurable by LumenVox, depending on customer needs and network setup; this can be made less often.  Contact LumenVox Support to request a change to this frequency.

If the license server cannot contact LumenVox, it will keep trying each day.  If no communication can be made for approximately 60 days, then it will remove its licenses until a connection can be made.  The exact number of days that no communication is allowed depends on many factors, but it is never less than 60 days.

Server GUIDs

Please note that GUID values must be unique per server, and should not be used on multiple machines. Each individual license server instance requires its own unique Server ID (and related licenses)

If multiple machines need to be configured to use flexible licensing (requiring additional flexible License GUIDs), users should contact LumenVox Technical Support for assistance.

Similarly, if License GUIDs need to be reassigned or the distribution of licenses adjusted to other License Server machines, users should again contact LumenVox Technical Support for assistance with this.