Electrical computers and digital processing systems: memory – Storage accessing and control – Hierarchical memories
Reexamination Certificate
2001-08-04
2004-01-13
Padmanabhan, Mano (Department: 2186)
Electrical computers and digital processing systems: memory
Storage accessing and control
Hierarchical memories
C709S203000, C709S227000, C711S133000
Reexamination Certificate
active
06678791
ABSTRACT:
BACKGROUND
This invention relates to the field of computer systems. More particularly, a system and methods are provided for caching and serving data without sacrificing session awareness or losing session-specific information.
Many data-serving systems or applications (e.g., databases, web servers) need or attempt to distinguish between different users or different user sessions. Doing so allows the system or application, for example, to identify new users or customers, track a user's purchases, examine her browsing habits, etc. With this individualized information, the system can maintain accurate user profiles, tailor its presentation of information to a user's tastes, apply user demographics to improve the system, and so on.
In order to obtain this information, data-serving systems may assign session identifiers to user sessions, thereby allowing one user's requests or actions to be distinguished from another's. In particular, the first time a user connects to a system, the system may assign a session identifier, which is thereafter provided by the user (or a user agent such as a browser) with each data request. Session identifiers are often assigned expirations so that a session will be torn down after a certain period of user inactivity.
Data-serving systems designed to capture user—or session-specific information often are unable to use caches to serve their data more rapidly, because caches are typically configured to serve their data in response to any request for the data—without enforcing or requiring session identifiers. If such a data-serving application employed a cache, user state transitions or other information could be lost or not captured by the data server (e.g., web server, database). For example, a user's first request would be intercepted and served by the cache without assigning a session identifier. If most or all of the user's requests are handled by the cache, the data server may never learn of the user's contact, his or her pattern of activity, etc.
Further, because traditional caches are not configured to be session-aware or to enforce session identification, the use of a cache in a data-serving environment may cause active user sessions to expire. In particular, if a data server assigns a user session a session identifier that expires after a given period of time, and the user's requests are thereafter served by the cache (i.e., instead of the data server), the user's session may expire because the data server does not know of the user's ongoing activity with the cache.
Thus, what is needed is a session-aware cache system for enforcing session identification and ensuring that a data server or application receives necessary user or session information.
SUMMARY
In one embodiment of the invention a cache system and methods of serving cached data are provided for ensuring that user sessions are distinguished from each other and that significant state transitions are captured. Significant state transitions may include a user's connection to a data-serving environment, disconnection from the environment, a particular pattern of activity (e.g., data requests), etc. A cache system is configured, in this embodiment, to ensure that an origin server (e.g., database, data server, web server) is informed of the transitions. Illustratively, a user request that embodies or reflects a significant state transition may be passed to the origin server for action or, alternatively, the cache may handle the request but separately notify the origin server of the activity.
In one embodiment of the invention, a cache system or cache server is configured to periodically or regularly pass client requests to the origin server, or otherwise inform the origin server of the client's continuing activity, so that a session identifier assigned to the client can be refreshed or prevented from expiring. Thus, a first data request from a client may be forwarded to the origin server so that the origin server is made aware of the new connection and can assign a session identifier and/or take other action. Thereafter, the cache may pass periodic or occasional requests to the data server in order to keep the client session alive, inform the data server of significant activity, and so on.
In another embodiment, if a request is received for a cached data item or set of data, the cache system determines whether service of the data item has been restricted to registered client sessions. If so, then the cache system may only serve the cached data item for requests that include session identifiers. If the received request does not have a session identifier (e.g., it is a new connection), the request is passed to the origin server so that a session identifier may be assigned.
REFERENCES:
patent: 5611049 (1997-03-01), Pitts
patent: 5835724 (1998-11-01), Smith
patent: 6029175 (2000-02-01), Chow et al.
patent: 6085234 (2000-07-01), Pitts et al.
patent: 6085249 (2000-07-01), Wang et al.
patent: 6360249 (2002-03-01), Courts et al.
patent: 6502106 (2002-12-01), Gampper et al.
Proactive caching of DNS records: addressing a performance bottleneck Cohen, E.; Kaplan, H.; Applications and the Internet, 2001. Proceedings. 2001 Symposium on Jan. 8-12, 2001.*
Candan, et al., Enabling Dynamic Content Caching for Database-Driven Web Sites. ACM SIGMOD May 21-24, 2001, Santa Barbara, CA, Copyright 2001 ACM.
Challenger, et al., A Scalable System for Consistently Caching Dynamic Web Data. IBM Research, Yorktown Heights, NY.
Challenger, et al., A Publishing System for Efficiently Creating Dynamic Web Content. IBM Research, Yorktown Heights, NY.
Datta, et al., A Comparative Study of Alternative Middle Tier Caching Solutions to Support Dynamic Web Content Acceleration. Proceedings of the 27thVLDB Conference, Roma, Italy, 2001.
Degenaro, et al., A Middleware System Which Intelligently Caches Query Results. IBM Research, Yorktown Heights, NY, Copyright 2000, Springer-Verlag.
Wessels, et al., ICP and the Squid Web Cache, pp. 1-25. Aug. 13, 1997.
Wessels, et al., Internet Cache Protocol (ICP), version 2, pp. 1-9, National Laboratory for Applied Network Research/UCSD, Sep. 1997.
Kantor, et al., Network News Transfer Protocol: A Proposed Standard for the Stream-Based Transmission of News, pp. 1-27. Feb. 1986.
Akamai white paper: Turbo-Charging Dynamic Web Sites with Akamai EdgeSuite, pp. 1-16, www.akamai.com, Sep. 23, 2002. Copyright 2001, Akamai Technologies, Inc.
A Distributed Infrastructure for e-Business-Real Benefits, Measurable Returns, pp. 1-28, www.akamai.com, Sep. 23, 2002. copyright 2000 and 2001, Akami Technologies, Inc.
Edge Sides Includes (ESI) Overview, pp. 1-7, www.esi.org, Sep. 23, 2002. Copyright 2001, Oracle Corporation, Akamai Technologies, Inc.
Tsimelzon, et al., Edge Sides Includes ESI-Accelerating E-Business Applications: Language Specification 1.0, pp. 1-12, www.esi.org/language spec 1-0.html, Sep. 23, 2002. Copyright 2001, Akamai Technologies, Oracle Corporation.
Nottingham, et al., Edge Side Includes ESI-Accelerating E-Business Applications: Edge Architecture Specification, pp. 1-6, www.esi.org/architecture spec 1-0.html, Sep. 23, 2002, Copyright 2001, Akamai Technologies, Oracle Corporation.
Jacobs, et al., Edge Side Includes ESI-Accelerationg E-Business Applications: ESI Invalidation Protocol 1.0, pp. 1-13. www.esi.org/invalidation protocol 1-0.html, Sep. 23, 2002. Copyright 2001, Oracle Corporation.
Basu, et al., Edge Side Includes ESI-Accelerating E-Business Applications: JESI Tag Library 1.0 Specification: Tags for Edge-Side Includes in JSP, pp. 1-19. www.esi.org/jesit tag lib 1-0.html, Sep. 23, 2002. Copyright 2001, Oracle Corporation, Akamai Technologies, Inc.
Jacobs Lawrence
Liu Xiang
Mishra Rajiv
Nakhoda Shehzaad
Zeng Zheng
Padmanabhan Mano
Park Vaughan & Fleming LLP
Sun Microsystems Inc.
Vital Pierre M.
LandOfFree
System and method for session-aware caching does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with System and method for session-aware caching, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for session-aware caching will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3206865