Methodology for cache coherency of web server data

Data processing: database and file management or data structures – Database design – Data structure types

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C707S793000, C709S219000, C709S224000

Reexamination Certificate

active

06219676

ABSTRACT:

BACKGROUND
The invention relates generally to computer networks, and more particularly, to an apparatus and method for maintaining cache coherency between a web server and its clients.
Personal computers or workstations may be linked in a computer network to allow the sharing of data, applications, files, and other resources. In a client/server network, the sharing of resources is accomplished through the use of one or more file servers. Each file server includes a processing unit that is dedicated to managing centralized resources and to sharing these resources with other file servers and/or various personal computers and workstations, which are known as the “clients” of the server.
Each client includes a central processing unit (“CPU”), a memory which is directly accessible to the CPU, and one or more input/output (“I/O”) devices such as a screen, keyboard, mouse, and the like. The client's memory may be battery-backed, but more often the memory is volatile memory (e.g., random access memory or “RAM”) that loses data if power to the client is interrupted or if the client is rebooted. Some clients also have local non-volatile data stores, such as a local hard disk, while other clients have no local non-volatile store.
Each file server has a CPU, a volatile memory, various I/O devices, and at least one non-volatile data store. The non-volatile data store includes a controller and a non-volatile medium. To access the medium, the server's CPU sends read and write requests to the controller, which then attempts to carry out the request. Write requests are accompanied by file data which is destined for storage on the medium, or by a memory address identifying the present location of such data. Read requests are accompanied by a memory address which identifies memory destined to receive file data copied from the medium.
One example of a client/server network is a centralized web server that serves a distributed network of cache servers. The web server acts as a hub for distributing data back and forth between the cache servers and other clients, as well as providing unique data specific to the web server. The cache servers may contain unique information or they may simply mirror the information found on the web server. Alternatively, the cache servers may contain unique information and also mirror all or part of the web server data, allowing each cache server to present customized information that is tailored to meet a specific set of needs.
In a more explicit example, a major car manufacturer (hereinafter “Manufacturer”) may operate a web server with data for all of its products and services. In this example, Manufacturer wants to provide rich, up-to-the-minute, multimedia web information at each dealer location (there may be thousands of dealers), while still being able to centrally manage the information. Centralized management allows Manufacturer to control the quality of information available, provide timely updates and additions, and ensure uniformity among its dealers, along with other benefits too numerous to mention. Information provided by Manufacturer could include: online versions of all maintenance manuals, video clips of new cars and sales pitches, the ability to online order custom tailored cars, the ability to track recalls, the ability to locate an existing new vehicle at any other dealer, and/or a comparison of Manufacturer product versus competitors. This data is very large and downloading it to the dealers could take hours. No dealer or customer is willing to wait for the data to be downloaded during a single session, so the data must be readily available when requested if it is to be useful.
The normal solution to the problem is to place a cache server (like Novell's Border Manager) at each Manufacturer dealer to accelerate delivery. In addition, this enables the dealer to include information for that particular dealer. However, this solution creates additional problems. For one, the cache server must maintain coherent, or up-to-date, data to guarantee correct information while maintaining timely user access times. Therefore, the cache server must sustain critical performance and reduce or eliminate cache misses. Also, conventional cache servers must periodically ping, or query, the origin web server to blindly search for new and/or updated material. These queries create huge amounts of network traffic and web server congestion.
Therefore, what is needed is a system and method that allows web data to be immediately accessible at various locations in a networked server/client arrangement.
Also what is needed is a system and method that provides up-to-date information at various locations in a networked server/client arrangement.
Furthermore, what is needed is a system and method that does not congest servers and/or networks with unnecessary traffic.
SUMMARY
The present invention, accordingly, provides a method and system to establish and maintain cache coherency between a web server and its clients. To this end, in one embodiment the system for maintaining cache coherency includes a processor for running operating code, a storage unit for storing a data segment having at least one monitor area and a change log, and an interface to a client computer. The system includes instructions for determining if an activity occurs to the monitor area, updating the change log if the activity occurs, and indicating the updated status of the change log to the client computer. It also contains instructions for receiving a request from the client computer and for responding to the request.
In another embodiment, the method maintains cache coherency by defining at least one monitor area for the web server data, maintaining a change log at the web server, determining if an activity occurs to the monitor area and, if an activity occurs, updating the change log in response to the activity. This notifies a client to the web server of the activity through the change log, thereby maintaining coherency with the web server.
In yet another embodiment, the method allows a client computer to access a web server in order to maintain cache coherency. The method involves determining if a change log maintained by the web server has changed, analyzing the changes that have occurred in the change log since the change log was last checked, requesting data from the web server that is new or altered according to the change log, and retrieving the data from the web server.
In still another embodiment, the method allows a client computer to initially establish cache coherency by checking whether contact has been previously established with a designated web server, checking whether an initial data retrieval from the web server has been completed, and directing the client to contact the web server for the purpose of retrieving at least a portion of a data segment stored on the web server. The method further involves analyzing a change log maintained by the web server to determine the current contents of the data segment on the web server, requesting the data comprising the current contents as indicated by the change log from the data segment maintained by the web server, and retrieving the data from the web server so that coherency with the web server can be established.


REFERENCES:
patent: 4714992 (1987-12-01), Gladney et al.
patent: 5261069 (1993-11-01), Wilkinson et al.
patent: 5452447 (1995-09-01), Nelson et al.
patent: 5594863 (1997-01-01), Stiles
patent: 5608909 (1997-03-01), Atkinson et al.
patent: 5706435 (1998-01-01), Barbará et al.
patent: 5734898 (1998-03-01), He
patent: 5740430 (1998-04-01), Rosenberg et al.
patent: 5745906 (1998-04-01), Squibb
patent: 5764241 (1998-06-01), Elliott et al.
patent: 5787470 (1998-07-01), DeSimone et al.
patent: 5802297 (1998-09-01), Engquist
patent: 5805818 (1998-09-01), Perlman et al.
patent: 5815662 (1998-09-01), Ong
patent: 5826253 (1998-10-01), Bredenberg
patent: 5828882 (1998-10-01), Hinckley
patent: 5832483 (1998-11-01), Barker
patent: 5835943 (1998-11-01), Yohe et al.
patent: 5856974 (1999-01-01), Gervais et al.
patent: 5864854 (

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Methodology for cache coherency of web server data does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Methodology for cache coherency of web server data, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Methodology for cache coherency of web server data will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2478316

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.