Policy enabled web caching
First Claim
1. A method of implementing a policy enabled caching system, where policy rules define whether a request from a client is directed to a cache or a server, said client being coupled to a plurality of caches and to at least one server, wherein said caches may store a subset of the data stored on said server, said method comprising the steps of:
- a) storing a plurality of policy rules, said policy rules comprising at least one of
1) a matching condition, where every request containing said matching condition falls into an associated class, and
2) a routing rule for each class, where said routing rule defines the type of routing for all said requests which fall into said class;
b) receiving said request from said client, wherein said request is divided into a plurality of fields where in step a) said matching condition is based on any of said fields, wherein said fields include a field for an object name for identifying a requested data and a plurality of fields for characteristics that describe the type of said requested data, c) classifying said request according to said policy rules, and d) routing each request according to classifying of step c.
1 Assignment
0 Petitions
Accused Products
Abstract
A policy enabled caching system based upon policy rules which define whether a request from a client is directed to a cache or a server. The client is coupled to a plurality of caches and to at least one server. The caches may store a subset of the data stored on the server. The policy enabled caching system stores policy rules which comprise at least one matching condition, where every request containing a matching condition falls into an associated class. Each class will have an associated routing rule, where a routing rule defines the type of routing for all the requests which fall into that class. The policy enabled caching system will receive the request from the client and classify the request according to the policy rules. The request is then routed according to the routing rule associated with the class to which the request belongs.
81 Citations
31 Claims
-
1. A method of implementing a policy enabled caching system, where policy rules define whether a request from a client is directed to a cache or a server, said client being coupled to a plurality of caches and to at least one server, wherein said caches may store a subset of the data stored on said server, said method comprising the steps of:
-
a) storing a plurality of policy rules, said policy rules comprising at least one of
1) a matching condition, where every request containing said matching condition falls into an associated class, and
2) a routing rule for each class, where said routing rule defines the type of routing for all said requests which fall into said class;
b) receiving said request from said client, wherein said request is divided into a plurality of fields where in step a) said matching condition is based on any of said fields, wherein said fields include a field for an object name for identifying a requested data and a plurality of fields for characteristics that describe the type of said requested data, c) classifying said request according to said policy rules, and d) routing each request according to classifying of step c. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
in step a) said policy rules include said matching conditions based on said object name or a subset of said object name. -
3. The method of claim 1, wherein said characteristics include at least one of text, image video, audio, a cookie and an authentication header, and
in step a) said policy rules include classes based on said characteristics. -
4. The method of claim 1, wherein said object name or said subset of object name includes an indication that said requested data includes dynamic data, and
in step a) said policy rules include classes based on said indication that said requested data includes dynamic data. -
5. The method of claim 4, where
in step a) said routing rule for classes of dynamic data require routing said request directly to said server. -
6. The method of claim 1, wherein prior to step d) the further step of parsing said object name is included, and
in step a) said policy rules include said matching conditions based on a composition of said object name. -
7. The method of claim 6, where
in step a) said policy rules include said matching conditions based on said composition where said composition includes an indication that said requested data includes dynamic data. -
8. The method of claim 7, where
in step b) said routing rule for classes of dynamic data require directing said request directly to said server. -
9. The method of claim 1, where
in step a) said policy rules include said matching conditions based on key words within said object name. -
10. The method of claim 1, wherein said request includes an address or location of a source of said requested data, and
in step a) said policy rules include said matching conditions based on said address or location of said source of said requested data. -
11. The method of claim 1, where
in step a) said policy rules can be dynamically updated. -
12. The method of claim 1, further including the step of:
e) modifying said routing rules based on the location or IP address of said client.
-
13. The method of claim 1, further including the step of:
e) modifying said routing rules based on the network or server load conditions and availability.
-
14. The method of claim 1, further including the step of:
e) inserting meta information in a header of a returning object, said returning object being the object of said request, said meta information being inserted by said cache.
-
15. The method of claim 14, further including:
-
in step e) said meta information is based on observed characteristics of said returning object, f) modifying said routing rules based on said meta information.
-
-
16. The method of claim 15, where
in step e) said observed characteristics includes said returning object is not cachable. -
17. The method of claim 16, where
in step f) said meta information modifies said routing rules where all future requests from a respective class of non-cachable objects are routed directly to said server. -
18. The method of claim 15, where
in step e) said observed characteristics includes server load condition. -
19. The method of claim 15, where
in step e) said observed characteristics includes cache load condition. -
20. The method of claim 15, where
in step f) said meta information modifies said routing rules where all future requests from said class are routed directly to said server or to an alternate cache.
-
-
21. A method of implementing a policy enabled caching system, where policy rules define whether a request from a client is directed to a cache or a server, said client being coupled to a plurality of caches and to at least one server, wherein said caches may store a subset of the data stored on said server, said method comprising the steps of:
-
a) storing a plurality of policy rules, said policy rules comprising at least one of
1) a matching condition, where every request containing said matching condition falls into an associated class, and
2) a routing rule for each class, where said routing rule defines the type of routing for all said requests which fall into said class,b) distributing said policy rules to a at least one of a local proxy, a policy enabled browser and a policy enabled cache, c) receiving said request from said client, wherein said request is divided into a plurality of fields where in step a) said matching condition is based on any of said fields, wherein said fields include a field for an object name for identifying a requested data and a plurality of fields for characteristics that describe the type of said requested data, d) classifying said request according to said policy rules, and e) routing each request according to classifying of step d. - View Dependent Claims (22, 23, 24)
in step c) said request is received by at least one of said local proxy, said policy enabled browser and said policy enabled cache. -
23. The method of claim 21, further including:
-
in step a) said policy rules are stored in a policy repository, and between steps c) and d) requesting a current one of said policy rules from said policy rules from said policy repository if at least one of said local proxy, said policy enabled browser and said policy enabled cache determines its said policy rules are not currently.
-
-
24. The method of claim 23, further including the step of
f) modifying said policy rules based on observed characteristics of a returning object, said returning object being the object of said request.
-
-
25. A policy enabled caching system, where policy rules define whether a request from a client is directed to a cache or a server, said client being coupled to a plurality of caches and to at least one server, wherein said caches may store a subset of the data stored on said server, said policy enabled caching system comprising:
-
a storage means for storing a plurality of policy rules, said policy rules comprising at least one of
1) a matching condition, where every request containing said matching condition falls into an associated class, and
2) a routing rule for each class, where said routing rule defines the type of routing for all said requests which fall into said class, wherein said request is divided into a plurality of fields and wherein said matching condition is based on any of said fields, wherein said fields include a field for an object name for identifying a requested data and a plurality of fields for characteristics that describe the type of said requested dataa classifier unit for comparing said request with said matching conditions and assigning said request to an associated class according to said policy rules, and a router for routing said requests, said requests being routed according to said routing rules for the respective class to which said request belongs. - View Dependent Claims (26, 27, 28)
a distribution means where said policy rules stored in said storage means are distributed to a plurality of said classifier units.
-
-
27. A policy enabled caching system of claim 26, where
said classifier unit requests current policy rules if said classifier unit determines its said policy rules are not current. -
28. A policy enabled caching system of claim 26, where
said classifier unit modifies said policy rules based on observed characteristics of a returning object, said returning object being the object of said request and storing said modified policy rules in said storage means.
-
29. An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for implementing a policy enabled caching system, where policy rules define whether a request from a client is directed to a cache or a server, said client being coupled to a plurality of caches and to at least one server, wherein said caches may store a subset of the data stored on said server, the computer readable program code means for causing a computer to effect:
-
a) storing a plurality of policy rules, said policy rules comprising at least one of
1) a matching condition, where every request containing said matching condition falls into an associated class, and
2) a routing rule for each class, where said routing rule defines the type of routing for all said requests which fall into said class, wherein the type of routing comprises one of routing to a cache and routing to a server;
b) receiving said request from said client, wherein said request is divided into a plurality of fields where in step a) said matching condition is based on any of said fields, wherein said fields include a field for an object name for identifying a requested data and a plurality of fields for characteristics that describe the type of said requested data, c) classifying said request according to said policy rules, and d) routing each request according to classifying of step c.
-
-
30. A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform methods for implementing a policy enabled caching system, where policy rules define whether a request from a client is directed to a cache or a server, said client being coupled to a plurality of caches and to at least one server, wherein said caches may store a subset of the data stored on said server, said method comprising the steps of:
-
a) storing a plurality of policy rules, said policy rules comprising at least one of
1) a matching condition, where every request containing said matching condition falls into an associated class, and
2) a routing rule for each class, where said routing rule defines the type of routing for all said requests which fall into said class;
b) receiving said request from said client, wherein said request is divided into a plurality of fields where in step a) said matching condition is based on any of said fields, wherein said fields include a field for an object name for identifying a requested data and a plurality of fields for characteristics that describe the type of said requested data, c) classifying said request according to said policy rules, and d) routing each request to one of a cache and a server according to classifying of step c.
-
-
31. A computer program product comprising a computer useable medium having computer readable program code means embodied therein for causing implementing a policy enabled caching system, where policy rules define whether a Web page request from a client is directed to a cache or a server, said client being coupled to a plurality of caches and to at least one server, wherein said caches may store a subset of the data stored on said server, said method comprising the steps of:
-
a) storing a plurality of policy rules for determining, whether to route to a cache or a server, said policy rules comprising at least one of
1) a matching condition, where every request containing said matching condition falls into an associated class, and
2) a routing rule for each class, where said routing rule defines the type of routing for all said requests which fall into said class;
b) receiving said request from said client, wherein said request is divided into a plurality of fields where in step a) said matching condition is based on any of said fields, wherein said fields include a field for an object name for identifying a requested Web page and a plurality of fields for characteristics that describe the type of said requested Web page, c) classifying said request according to said policy rules, and d) routing each request according to classifying of step c.
-
Specification