Feature-aware software usage metering

US2018337794A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2018337794-A1
Application numberUS-201715599161-A
CountryUS
Kind codeA1
Filing dateMay 18, 2017
Priority dateMay 18, 2017
Publication dateNov 22, 2018
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An approach is disclosed for metering usage of cloud computing services at a feature level. In one embodiment, a metering application receives feature status information indicating which features of a cloud computing service are enabled through an event-driven process, in which events are generated and reported to the metering application when features are enabled or disabled, as well as a polling process, in which the metering application periodically queries the statuses of features. Feature status information gathered by the metering application is persisted in a database as collective feature statuses, with each collective feature status being associated with an interval of time during which feature statuses are unchanged. The feature status information obtained and persisted in the database may then be used to, for example, determine licensing fees based on feature usage or report feature usage to facilitate quantitative studies of the usefulness of features.

First claim

Opening claim text (preview).

We claim: 1 . A computer-implemented method of dynamically probing user-configurable software having multiple features, each of which can be dynamically enabled or disabled, comprising: periodically probing the user-configurable software to determine which features of the software are enabled; while periodically probing, listening for events generated by the software indicating features of the software which are being enabled; and for each of the features, determining one or more durations during which the feature is enabled based on at least results of the probing and the generated events. 2 . The method of claim 1 , wherein: the software includes a service provided over a network; the events are generated by an application programming interface (API) of an application which manages the service; and the periodic probing includes at least one of invoking a health-monitoring API provided by the application which manages the service to obtain enablement statuses of the features or invoking an API provided by the application which manages the service to check if any virtual computing instances are complying with one or more policies in which the features are defined. 3 . The method of claim 2 , wherein the service is one of a virtualized networking or a virtualized storage service. 4 . The method of claim 2 , wherein the application which manages the service provides a user interface through which users can enable the features. 5 . The method of claim 1 , wherein: determining the one or more durations during which each of the features is enabled includes comparing enablement statuses of the features determined through the periodical probing and the generated events with most recent stored enablement statuses of the features; and if the enablement status of any feature determined through the periodical probing or the generated events has changed from the most recent stored enablement status of the feature, the changed enablement status of the feature is stored. 6 . The method of claim 5 , wherein: the enablement statuses of the features are stored in rows in one or more database tables; and each row in the one or more database tables stores a status of each of the features of the software during a respective duration. 7 . The method of claim 1 , further comprising, generating a usage report based on at least the determined durations during which each of the features is enabled. 8 . The method of claim 7 , further comprising: determining at least one of memory or storage usage during the determined durations during which each of the features is enabled, wherein the report is generated to include a usage value determined by at least multiplying one or more rates determined based on at least enablement statuses of the features by the determined at least one of memory or storage usage. 9 . The method of claim 8 , wherein the rate at a given time is determined based on at least the features of the software that are enabled at the given time. 10 . A non-transitory computer-readable medium comprising instructions executable by a computer, the computer having one or more physical central processing units (CPUs), wherein the instructions, when executed, cause the computer to perform operations for dynamically probing user-configurable software having multiple features, each of which can be dynamically enabled or disabled, the operations comprising: periodically probing the user-configurable software to determine which features of the software are enabled; while periodically probing, listening for events generated by the software indicating features of the software which are being enabled; and for each of the features, determining one or more durations during which the feature is enabled based on at least results of the probing and the generated events. 11 . The computer-readable medium of claim 10 , wherein: the software includes a service provided over a network; the events are generated by an application programming interface (API) of an application which manages the service; and the periodic probing includes at least one of invoking a health-monitoring API provided by the application which manages the service to obtain enablement statuses of the features or invoking an API provided by the application which manages the service to check if any virtual computing instances are complying with one or more policies in which the features are defined. 12 . The computer-readable medium of claim 11 , wherein the service is one of a virtualized networking or a virtualized storage service. 13 . The computer-readable medium of claim 11 , wherein the application which manages the service provides a user interface through which users can enable the features. 14 . The computer-readable medium of claim 10 , wherein: determining the one or more durations during which each of the features is enabled includes comparing enablement statuses of the features determined through the periodical probing and the generated events with most recent stored enablement statuses of the features; and if the enablement status of any feature determined through the periodical probing or the generated events has changed from the most recent stored enablement status of the feature, the changed enablement status of the feature is stored. 15 . The computer-readable medium of claim 14 , wherein: the enablement statuses of the features are stored in rows in one or more database tables; and each row in the one or more database tables stores a status of each of the features of the software during a respective duration. 16 . The computer-readable medium of claim 10 , the operations further comprising, generating a usage report based on at least the determined durations during which each of the features is enabled. 17 . The computer-readable medium of claim 16 , the operations further comprising: determining at least one of memory or storage usage during the determined durations during which each of the features is enabled, wherein the report is generated to include a usage value determined by at least multiplying one or more rates determined based on at least enablement statuses of the features by the determined at least one of memory or storage usage. 18 . The computer-readable medium of claim 17 , wherein the rate at a given time is determined based on at least the features of the software that are enabled at the given time. 19 . A system, comprising: a processor; and a memory, wherein the memory includes a program for dynamically probing user-configurable software having multiple features, each of which can be dynamically enabled or disabled, the program being configured to perform operations comprising: periodically probing the user-configurable software to determine which features of the software are enabled, while periodically probing, listening for events generated by the software indicating features of the software which are being enabled, and for each of the features, determining one or more durations during which the feature is enabled based on at least results of the probing and the generated events. 20 . The system of claim 19 , wherein: the software includes a service provided over a network; the events are generated by an application programming interface (API) of an application which manages the service; and the periodic probing includes at least one of invoking a health-monitoring API provided by the application which manages the service to obtain enablement statuses of the f

Assignees

Inventors

Classifications

  • Arrangements for metering, time-control or time indication {; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP} · CPC title

  • Network utilisation, e.g. volume of load or congestion level · CPC title

  • related to network devices · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

  • based on actual use of network resources · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2018337794A1 cover?
An approach is disclosed for metering usage of cloud computing services at a feature level. In one embodiment, a metering application receives feature status information indicating which features of a cloud computing service are enabled through an event-driven process, in which events are generated and reported to the metering application when features are enabled or disabled, as well as a poll…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification H04L12/1439. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Nov 22 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).