IP Library Granted Patent US 9,058,599
Granted Patent B1
US 9,058,599 · App. 14/450,879 · Granted Jun 16, 2015

System and method for usage billing of hosted applications

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,058,599
App. No.
14/450,879
Granted
Jun 16, 2015
Kind
B1
Abstract

A system, method, and computer readable medium for usage billing of one or more hosted applications serving one or more clients. The hosted applications are contained within one or more isolated environments or run without isolated environments. The system may include usage billing based on one or more of resources open, amount of data flowing through resources, number of open files, number of transactions, number of concurrent users, number of processes, CPU utilization and memory usage, The system may further include a management interface where administrators may add, remove and configure isolated environments, configure client policies and credentials, and force upgrades. If using isolated environments, the isolated environments may be isolated from other applications and the host operating system on the clients and applications within the isolated environments may run without performing an application-installation on the client.

Claims (26)

1. A system, comprising:

one or more servers each with a host operating system configured to stream hosted applications to one or more clients;

the one or more clients each with a client operating system configured to receive and execute said streamed hosted applications, and configured to operate a billing manager; and

one or more billing interceptors configured to:

intercept access to resources and interfaces of said one or more client operating system;

operate within or external to the client operating system; and

load into the address spaces of each of the streamed hosted applications upon execution of each of the streamed hosted applications.

2. The system according to claim 1 , wherein the one or more billing interceptors intercept at least one of: a number of resources open, a number of open files, a number of transactions, a number of concurrent users, a number of processes, and an amount of data flowing through a resource.

3. The system according to claim 1 , wherein the billing manager performs at least one of: profiles the streamed hosted applications, creates one or more billing events based on said profiling of the streamed hosted applications, and aggregates billing information.

4. The system according to claim 3 , wherein the billing manager profiles at least one of: CPU time, memory usage, and a number of times each streamed hosted application is launched.

5. The system according to claim 1 , wherein the one or more billing interceptors create billing events comprising a usage count and an amount of data processed.

6. The system according to claim 5 , wherein said billing events are forwarded to the billing manager.

7. The system according to claim 6 , wherein the billing events are forwarded using at least one of: sockets, named pipes, and an inter-process communication (IPC).

8. The system according to claim 3 , wherein the billing manager's aggregated billing information is placed in a billing events memory storage location and forwarded to an aggregation subsystem of the billing manager.

9. The system according to claim 3 , further comprising a memory buffer configured to receive the one or more billing events.

10. The system according to claim 3 , wherein the billing manager aggregates the one or more billing events based on usage of at least one streamed hosted application.

11. The system according to claim 1 , further comprising at least one central computing device configured to operate a central billing manager.

12. The system according to claim 11 , wherein the billing manager performs at least one of: aggregates all received billing events into one or more billing manager events and adds a client login to the billing manager events.

13. The system according to claim 12 , wherein the billing manager inserts a client login in all billing events prior to sending the one or more billing manager events to the central billing manager.

14. The system according to claim 13 , wherein the central billing manager sorts the one or more billing manager events by the client login and interception identifier (ID).

15. The system according to claim 11 , wherein the central billing manager produces a billing summary in at least one of: XML, Microsoft Excel and a custom export format.

16. The system according to claim 13 , wherein said one or more billing manager events are sent to the central billing manager using at least one of: sockets, named pipes, and an inter-process communication (IPC).

17. The system according to claim 1 , further comprising one or more metrics used to determine streamed hosted application usage, the one or more metrics comprise at least one of: time used, storage used, number of open files, number of records in a database, and number of times the streamed hosted application has been launched.

18. The system according to claim 11 , wherein the billing manager tracks billing manager events via the one or more billing interceptors loaded with the streamed hosted applications.

19. The system according to claim 18 , wherein the one or more billing interceptors intercept at least one of: a number of resources open, a number of open files, a number of transactions, a number of concurrent users, a number of processes, and an amount of data flowing through a resource.

20. The system according to claim 11 , wherein the billing manager performs at least one of: profiles the streamed hosted applications, creates one or more billing events based on said profiling of the streamed hosted applications, and aggregates billing information.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2022
From: OPEN INVENTION NETWORK LLC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 061365/0571 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2020
From: HAVEMOSE, ALLAN
To: OPEN INVENTION NETWORK LLC
Reel/Frame 053348/0565 →