Novell Home

TID102118 (ISESB1) - NLS vs SSGetOSVersionInfo()

From Developer Community

ABSTRACT:

In the past, certain applications developed for the Novell server lent themselves to a pricing model based on the number of licensed connections a file server would support. For NetWare 4.x, developers would use SSGetOSVersionInfo() and the MaxNumOfUsers value. Because NLS drastically changes the licensing model and the potential to easily manipulate this number, Novell recommends that developers do not tie the licensing of their product to the MaxNumberOfUsers value returned by any version of NetWare which uses NLS to license the server.

DETAILED DESCRIPTION

In the past, certain applications developed for the Novell server lent themselves to a pricing model based on the number of licensed connections a file server would support. For example, a backup application which would back up a 5 user server would be priced less than the same application which would back up a 1000 user server. In NetWare 3.x and 4.x, this model was viable because Novell connection licenses were stored locally on the server and could be considered static in nature. Developer's would use the API GetServerInformation() and the maxConnectionsSupported field for 3.x and the API SSGetOSVersionInfo() and the MaxNumOfUsers field for 4.x. MaxNumOfUsers is supported by NCP 123 13 and defined to be maximum number of simultaneous users allowed on the server.

In NetWare 5, licensing is done through Novell Licensing Services (NLS). Even though the server connection license (SCL) model is still supported, licenses have been moved off of the local server and into Novell Directory Services. Location of a certificate, locating a certificate, and the assignment of a certificate to a NetWare 5 server which is based on the SCL model can be quite dynamic. A connection license can be unassigned from a file server and back again, or to a different file server with the ease of a mouse click. Searching for connection license certificates, which start at the file server container and move up until it reaches the [Root] of the tree can also be limited by configuring the Licence Service Provider (LSP) to only search to the root of the local partition. Again, the ease of reconfiguration is the ease of a mouse click.

With this ease of configuration came the ability to easily manipulate the connection licenses available to a server and thus circumvent the licensing an application based on the number of licensed connections on a server. The change NetWare 5 licensing also made it necessary to reprogram the sever's license gathering information.

In NetWare 5, the MaxNumOfUsers is now calculated by partially simulating the process done by the LSP when finding an available license for a connection. The LSP starts in the NDS context of the server and walks up the tree until it can satisfy the request or until the final search container has been reached. This final container is either the root of the tree or the root of the local partition, depending on the LSP configuration. The LSP stops searching when it finds a certificate where the file server assignment matches the certificate and a license unit is available. The difference in the calculation of MaxNumberOfUsers is that all potential NetWare 5 Conn SCL+500 licenses are used; server assignments are not taken into account.

By using the above algorithm to calculate MaxNumOfUsers, an NLS configuration does not understate the potential licenses which could be found and used by the LSP. However, this could overstate the available licenses for a server if more than one server object shares a container or a container in the LSP's search path and the licenses are assigned to different servers.

Therefore, Novell recommends that developers do not tie the licensing of their product to the MaxNumberOfUsers value returned by NetWare 5 or any other version on NetWare which uses NLS to license the server since the NLS model of licensing does not lend itself to the old static server connection model. As Novell focuses less on a server-centric model and more on service based models, the differences in licensing will become even more pronounced.

For further reference see Developer Notes, January 1997, Kayak: Node-Based Licensing Using NetWare Licensing System (NLS) Services.

isesb1.exe

isesb1.exe28.5 K2005-04-06

--Benjamin Fjeldsted

Novell® Making IT Work As One

© 2008 Novell, Inc. All Rights Reserved.