IP Library Granted Patent US 8,683,041
Granted Patent B2
US 8,683,041 · App. 12/635,770 · Granted Mar 25, 2014

Service level management system

Inventors: Asaf Wexler (Foster City, CA); Yoav Dembak (Redwood City, CA)
Assignee: VMware, Inc.
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 8,683,041
App. No.
12/635,770
Granted
Mar 25, 2014
Kind
B2
Abstract

A method for controlling and maintaining a level of service of web applications is disclosed. The method includes generating a context for each request sent from a client to a web server and for each reply sent from a web server to a client. Then it is determined whether the context belongs to an identified transaction. Statistics respective of the identified transaction is then gathered. Further, a determination is made whether at least one policy predefined for the identified application is violated. A plurality of corrective actions are performed if at least one policy is determined to be violated.

Claims (45)

1. A method for controlling and maintaining a level of service of web applications, comprising:

generating a context for each request sent from a client to a web server and for each reply sent from a web server to a client;

determining whether the context belongs to an identified transaction;

gathering statistics respective of the identified transaction;

determining whether at least one policy predefined for the identified application is violated, wherein the application is an event-driven software program that is responsive to hypertext transfer protocol (HTTP) requests; and

performing a plurality of corrective actions if at least one policy is determined to be violated.

2. The method of claim 1 , further comprising:

saving the context in a database if it is determined that the context does not belong to an identified transaction; and

learning new applications using data stored in the database.

3. The method of claim 2 , wherein the learning of the new applications is performed using at least one of an application definer, and a correlation process.

4. The method of claim 3 , wherein learning new applications further comprising:

discovering transactions and modules that construct each of the new applications, wherein each module is a group of the transactions; and

generating a site tree on the basis of the discovered transactions and modules that construct each of the new applications which belong to a designated site.

5. The method of claim 3 , wherein the request is at least a hypertext transfer protocol (HTTP) request.

6. The method of claim 5 , wherein generating the context includes parsing the HTTP request.

7. The method of claim 4 , wherein determining if the context belongs to an identified transaction, comprising:

matching the context against a classify data structure (CDC) and a plurality of application filters.

8. The method of claim 6 , wherein the CDC including: a list of identified sites, for each site a list of its web applications, and for each web application a list of transactions and modules that construct the web application.

9. The method of claim 7 , wherein the gathered statistics include measures on at least one of: throughput, response time, number of errors, hits per second, and latency.

10. The method of claim 1 , wherein the step of gathering statistics further comprising: producing a plurality of reports based on the gather statistics.

11. The method of claim 1 , wherein the at least one policy is checked against the gathered statistics.

12. The method of claim 11 , wherein the at least one policy defines at least one corrective action to be performed.

13. The method of claim 12 , wherein a policy is determined for a web server, a web application, a module, and a transaction.

14. The method of claim 13 , wherein the corrective actions include at least one of: scheduling requests to reduce response time, shaping traffic to balance the load, and recovery actions on web servers.

15. The method of claim 1 is configured to operate in the line of traffic.

16. A computer program product including a computer-readable, non-transitory medium comprising software instructions operable to enable a computer to perform a method for controlling and maintaining a level of service of web applications, comprising:

generating a context for each request sent from a client to a web server and for each reply sent from a web server to a client;

determining whether the context belongs to an identified web application;

gathering statistics respective of the identified transaction;

determining whether at least one policy predefined for the transaction is violated, wherein the application is an event-driven software program that is responsive to hypertext transfer protocol (HTTP) requests; and

performing a plurality of corrective actions if at least one policy is determined to be violated.

17. The computer program product of claim 16 , further comprising:

saving the context in a database if it is determined that the context does not belong to an transaction application;

learning new applications using data stored in the database.

18. The computer program product of claim 17 , wherein learning of the new applications is performed using at least one of an application definer, and a correlation process.

19. The computer program product of claim 18 , wherein learning new applications further comprising:

discovering transactions and modules that construct each of the new applications, wherein each module is a group of the transactions; and

generating a site tree on the basis of the discovered transactions and modules that construct each of the new applications which belong to a designated site.

20. The computer program product of claim 19 , wherein the request is at least a hypertext transfer protocol (HTTP) request.

21. A method for controlling and maintaining a level of service of web applications, comprising:

generating a context for each request sent from a client to a web server and for each reply sent from a web server to a client;

determining whether the context belongs to an identified transaction;

gathering statistics respective of the identified transaction;

determining whether at least one policy predefined for the identified application is violated, wherein the application is an event-driven software program that is responsive to hypertext transfer protocol (HTTP) requests; and

performing a plurality of corrective actions if at least one policy is determined to be violated, wherein the corrective actions include at least one of: scheduling requests to reduce response time, shaping traffic to balance the load, and recovery actions on web servers.

Assignments (1)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
Continuity (3)
Continuation 11682426 · Mar 6, 2007
Provisional Application 60779706 · Mar 6, 2006
Related Publication 20100094916A1 · Apr 15, 2010