Under the control of network floating licensing, software can be installed on many or all computers throughout your customer's organization allowing a prescribed number of end-users (determined by the software license) to run the software at the same time. When the ceiling is reached, a new user will need to wait for a previously authorized user to complete use of the software and terminate his or her session. This provides your customers with more flexibility in maximizing the use of your software while still giving you the control to limit usage.
Why offer Network Floating Licensing options with your software?
There are several compelling reasons why software companies are typically interested in licensing by concurrent user, such as:
- There is an increase in demand from end-users to provide concurrent user license functionality.
- Licenses for companies with locations across diverse geographic locations can move across the globe as the sun rises and sets.
- This allows volume/site licensing that still keeps control over license use and distribution.
- Maintaining control while allowing software to run in Virtual Machines is often best achieved with concurrent user licensing.
Considerations with Network Floating Licensing
There are numerous considerations associated with the concepts of network floating licensing, such as:
- What type of IT administrators are available at the company’s location to set up and administer the server infrastructure?
- Does your software require Internet access or is Internet access available to your customers when they run the software? If so, can the network floating licensing server be located on the Internet?
- Do end-users always run the software over a high-speed Local Area Network (LAN), or do they work remotely over a Wide Area Network (WAN) or Virtual Private Network (VPN)?
- Do end users need to "check out" a software license from the network floating server, then disconnect from the corporate network and run disconnected for a period of time?
- How soon after a computer crash or the abnormal termination of the application will the software license be usable by the same or a different user?
- What type of software is being licensed? Concurrent user licensing for a desktop application is significantly different from a web-based application due to the nature of the application.
The focus of this blog post is Network Floating Licensing for a desktop application. The concept of concurrent user limitations for a web application will be the topic of a future blog post.
Possible Approaches to Network Floating Licensing
We have explored several approaches to enforcing a maximum number of concurrent users in a running application.
Exclusive File Locking Technique with Local File Server
Have you ever tried to open an Office document from a network shared folder and seen a dialog box that the file was being edited and give you the option to open read-only or be notified when the document is available for editing? An exclusive file locking technique is a simple and often a sufficient way to track the number of concurrent users on a small network where all users are connected to the same folder for sharing files.
- Simple APIs to setup in application source code.
- No Internet access is required.
- Since no special server software needs to be installed on a dedicated server, most users can configure the local file share without having strong IT administration skills.
- This type of architecture is ideally suited for use in high-speed LAN environments where a nominal amount of concurrent users are continually online and, therefore, license check-in or check-out activities are not required.
For over 20 years, Protection PLUS has featured the concept of Network Floating Licensing using a simple file server along with an exclusive file locking technique. This can limit the number of concurrent executions of your software at a given customer’s location, and every customer can have a different number of allowed concurrent users. We have many customers using this system as it stands today with great success.
Concurrency Server on Local Office LAN
The ensuing step above the local file server approach would be to install Network Floating Licensing software on one of the customer’s servers. This would, naturally, require the engagement of the customer’s IT staff to set up and maintain but would not require uninterrupted Internet access.
- Continued internet access is not required.
- Requires IT administrator to set up and manage the concurrency server software.
- License check-out and check-in may or may not be available, depending on security requirements.
- Scales to a large number of users, even those connecting on a lower-speed WAN or VPN
To make such a system that is easy for the developers to implement AND easy for the IT administrators to install and maintain AND secure to make it difficult to tamper with (especially because this system is running in an untrusted environment where you have no control) presents a significant challenge for any development team. For this reason, the SoftwareKey Team continues working on this until we are satisfied with a solution that best addresses and balances all of these requirements.
Cloud-Controlled Network Floating Licensing
For applications that mandate Internet access or if Internet access is available to your customers when they run the software, the concept of Cloud-Controlled Network Floating Licensing can be implemented using a central server on the Internet.
- Has similar scalability capabilities and licensing features to "Concurrency Server on Local Office LAN."
- Customer doesn't need to manage local concurrency server software or have IT administrative experience.
- Provides additional security to the software publisher since concurrency server is always running in a trusted environment and difficult for the end user to tamper.
- Easier to track usage of the application in a central location (advanced).
Network Floating Licensing using the Internet can be implemented using Protection PLUS 5 SDK and SOLO Server. We have developed a licensing API with full check-in/check-out capabilities. Instead of installing software on a local customer server to enforce concurrency, a single central SOLO Server license is shared by all of your customers. Please contact us to learn how to evaluate this system and for pricing.
The Cloud-Controlled Network Floating Licensing option has greatly simplified our license authentication process. Moving from a LAN approach to a WAN approach has also made our clients' lives easier, as they only need to manage one account for all offices instead of the one-license-per-office approach. And if it makes our clients happy, it makes us happy.
License authentication time using the Cloud approach is proving to be significantly faster than license authentication using a WAN approach in conjunction with some clients' own server.
Lead UI Developer, Bridge Software Institute
Summary
Network floating licensing allows you to provide a licensing model that is convenient and efficient for your customers. The SoftwareKey System offers multiple approaches to achieve the best results for your particular needs based on the considerations described here. If you have any general questions about network floating licensing or feedback on this post, please contact us!