Software Metering

The software metering feature allows you to monitor program usage on client computers. By using software metering, you can collect data about software usage in your organization. Software metering data can be conveniently summarized to produce useful reports that can help you monitor licensing compliance and plan software purchases in your organization. Software metering collects detailed information about the programs that you chose to monitor. This includes information about program usage, program users, the program start time, and the length of time it is used.

Software metering is supported on Legacy Clients, Advanced Clients, and SMS clients that are running Terminal Services. Software metering rules are enforced on all remote desktops with an open session to the terminal server that is an SMS client. Software metering data is collected from these desktops. However, all programs that run on the Terminal Server will be reported with the same computer name, which is the Terminal Server computer name.

How Software Metering Works

You can enable or disable software metering for an SMS site. When the feature is enabled for the site, SMS starts to collect software metering data according to the specified software metering rules and other configuration data.

To monitor software usage on your clients, you need to define software metering rules. A software metering rule represents a program that you want to monitor. In each rule you specify an executable's file name, a version, and a language. The software metering rules are stored in the SMS site database, on CAPs, and on management points. The Software Metering Client Agent, running on clients, uses the information in software metering rules to identify the software that it needs to monitor.

Note:

  • In a software metering rule, you can identify an executable by its original file name. This allows you to monitor software even if the user has modified the executable's file name.

The Software Metering Client Agent performs the software metering-related tasks on the clients, primarily collecting metering data from the client computers. When you enable and configure software metering at the site, SMS installs the Software Metering Client Agent components on all Legacy Clients in the site (these components are already installed on Advanced Clients) and starts to collect software metering data according to the software metering rules that you specified.

Figure 3.5 Software metering process

cpig_004_005c

Figure 3: describes how software metering rules propagate down the hierarchy, and how software metering data that is collected at client computers propagates up the hierarchy.

When you enable software metering for a site, SMS enables software metering on the site's clients as follows:

  1. SMS installs the Software Metering Client Agent on all Legacy Clients in the site (the agent is preinstalled on Advanced Clients).

  2. SMS sends to management points the Advanced Client policy that enables the Software Metering Client Agent on Advanced Clients.

  3. When you create software metering rules, SMS stores them in the SMS site database, on CAPs, and on management points. Clients access these rules as follows:

    • Legacy Clients download these rules from the CAPs.

    • Advanced Clients receive the rules through an Advanced Client policy that is published by management points.

    Secondary sites operate in the same manner, but the metering rules are stored in a file. When you define a rule that applies to lower level sites, SMS replicates the rule to the appropriate sites.

  4. SMS configures the client agents with the schedules specified on the site server, as follows:

    • SMS stores on CAPs the Software Metering Client Agent configuration settings. Legacy Clients later download this information and use it to configure their Software Metering Client Agent.

    • SMS stores on management points the Advanced Client policies that correspond to the Software Metering Client Agent configuration settings. Advanced Clients later use these policies to configure their Software Metering Client Agent.

  5. The Software Metering Client Agent collects metering data according to the software metering rules. The agent downloads rules and uploads collected data according to the specified schedule.

    On Advanced Clients, the metering data is sent to a management point. On Legacy Clients, the data is sent to a CAP.

    The CAP or management point sends the metering data to the site server. If the site is a secondary site, the metering data is sent to the site's parent site.

  6. The primary site server processes the metering data and stores the information in the SMS site database. Periodically, the site summarizes its software metering data.

    • If the primary site server is not the central site server, then the site sends recently summarized software metering data to its parent site. The site also sends data that it received from any lower level sites on which software metering is enabled. This step repeats until the metering data reaches the central site.

    At the end of this process, every primary site contains metering data of its own clients and of clients in lower level sites in the hierarchy.

  7. The SMS site database contains the software metering data, and you can run software metering related reports to view that data. You can also create queries that are based on software metering data. Note that each site contains software metering data from the site's clients and from all lower level sites clients. (The central site contains metering data from clients A, B, C, D, and E, while the midtier primary site contains metering data only from clients C, D, and E.)

When software metering is enabled, SMS collects information about program activity on the clients. The data is stored at the site database. The data accumulates rather quickly and it can consume significant space. To reduce space consumption in the site database, SMS provides predefined software metering maintenance tasks that can summarize the data. Other software metering maintenance tasks can then delete the raw data, which has been summarized.

Benefits of Software Metering

By using software metering, you can closely monitor software usage in your organization. You can track which users ran which software programs and for how long. By using that data, you can determine which programs are used most often and which programs are not used at all. This helps when planning software purchases. Administrators can examine software metering data and determine which clients, or groups of clients, are in most need of a software upgrade.

Software metering helps you determine whether the organization is in compliance with terms of software licenses. Software metering data shows which programs are in great demand and which programs are not used at all. This helps justify the purchase of additional licenses and helps determine that a specific software license can be canceled.

When using client-server applications, software metering can help you ensure that clients are running the application version that is compatible with the server's version. You can identify clients that are running incompatible versions.

Note:

  • You can also use software inventory to ensure compatibility between the server and the client applications when using client-server applications.

SMS provides predefined reports that display the summarized data in meaningful and helpful report formats. If software inventory is enabled at a site, you can create reports that are based on both software inventory and software metering data. For example, you can create a report that shows which clients have installed Microsoft Publisher, but have never used the program.

Software Metering Throughout the Hierarchy

Any software metering rule can apply to the current site or to any lower level sites. If you specify that a rule should apply to any lower level sites, SMS sends that rule to the specified sites. The current site's set of rules consists of the site's own rules, in addition to any rules that were sent from higher level sites. When a rule is received at a child primary site, it is added to the SMS site database. It is also evaluated to determine whether it should be replicated to child sites.

Software metering data that is collected from clients is compacted and stored on the client and then sent to the site server. Secondary sites send their data to their parent sites. Primary site servers store the data in the SMS site database. Periodically, the site server summarizes the data and then sends the summary to its parent site. This summary is replicated up the hierarchy until it reaches the central site. When the data appears at a parent site, each record is marked with the appropriate source site code. This allows you to produce organization-wide software metering summarization reports.

For More Information

Did you find this information useful? Please send your suggestions and comments about the documentation to smsdocs@microsoft.com.