[Previous] [Next]

Lesson 1: Overview of SMS Software Metering

The SMS Software Metering feature has two primary functions: to track software utilization and enforce compliance with software licensing agreements. Tracking without enforcing software compliance occurs when software metering is run in offline mode. Enforcing software compliance occurs when software metering is run in online mode. Online mode is also called real-time verification. Offline mode reduces software metering utilization of the network and site systems, but does not provide software license enforcement.

After this lesson, you will be able to: Estimated Completion Time: 30 minutes

Software metering running in offline mode provides the following features:

Tracking without enforcing software compliance is a primitive form of license verification. Online mode provides more sophisticated license verification features.

Online mode includes all features available in offline mode plus the following:

Software metering is designed to accurately account for all instances of a given application running on any Windows 32-bit client computer in the site. This includes applications run from network servers, a local disk drive, a floppy disk, a CD-ROM, an intranet connection, or an Internet connection.

Software metering is not supported on Windows 16-bit client computers.

Software Metering Components and Functions

Four components support the software metering facility: the site server, the software metering server, the software metering database, and the Software Metering Client Agent. The site server runs two threads of the SMS Executive service: SMS License Manager and License Metering to support software metering. The software metering server runs, the SMS License Service and client computers which run one client agent, the Software Metering Client Agent to support software metering.

Site Server Software Metering Functions

The site server manages the installation and configuration of all site systems involved in software metering, and acts as the central communications point for all software metering servers within a site. For example, the site server sends excluded software product lists to all software metering servers in the site. In online mode, the site server manages license availability across all software metering servers. These services are provided by two threads of the SMS Executive: License Manager and License Metering. License Manager installs, configures, and maintains license servers. License Metering communicates with and manages all license servers in the site.

Click to view at full size

Figure 5-1. How software metering components interact.

Software Metering Server Functions

Software metering servers run the SMS License Service, a process that is not part of the SMS Executive. Client computers communicate directly with the SMS License Service for all license metering functions. The functions handled by this service are granting software licenses to client computers; returning licenses to the software metering server; reporting offline license activity; and informing client computers when a software license is available. Each software metering server contains its own set of licenses to allocate.

Software metering servers communicate with the site server and the software metering database. If there are multiple license servers when license balancing is configured, the site server grants software metering servers additional licenses to support client computers. The software metering server stores license data in the software metering database.

Software Metering Database Functions

The software metering database is maintained separately from the site database. The computer running SQL Server can store the software metering database, but separate database devices must be used to store the license data. An intermediate data cache is used on each software metering server to store data received from the Software Metering Client Agent. This data is then transferred to the software metering database using a process called Data Collation.

The Software Metering Client Agent

The Software Metering Client Agent records the use of *.EXE and *.COM files and passes this information to the software metering server. The client agent can also be configured to control the use of specific applications. Control functions include:

The metering agent operating on Windows NT/2000 client computers is LICCLINT.EXE. The metering agent operating on Windows 95/98 client computers is LICCLI95.EXE.

Software metering is independent of the software inventory features in SMS.

Offline License Monitoring

Once the Software Metering Client Agent is enabled, the use of all software applications is tracked for reporting purposes. Data is sent from the client computer to the software metering server and stored in the software metering database. The list of licensed software is managed from the Software Metering application below the Tools node in the SMS Administrator console. By default, the Software Metering application contains an unlicensed programs entry. If an application is not excluded through the Software Metering application, it is included by default as an unlicensed program. This is how the use of all software applications is automatically tracked once the Software Metering Client Agent is active. In order to actually control access to an application, the Software Metering Client Agent must be configured to force real-time verification, and the application must be added to the list of licensed software.

Online License Monitoring

If real-time license verification is enforced, then, when any application is started, the client agent checks with a software metering server to see if this application can be run. If it can, the application runs normally. If there are no available licenses, the application may appear briefly on the client computer, but will then stop before the user is presented with a dialog box explaining that the application is out of licenses. At the user's request, the software metering server issues a callback when a license becomes available.

License Balancing

In a network running multiple license servers, the License Metering thread running on the site server analyzes the application usage trends and automatically distributes licenses to the software metering servers in a site. The number of licenses allocated by the site server to each license server is adjusted depending on the client computer requests made of each license server. Intersite license balancing is also the responsibility of the License Metering thread.