System for accessing distributed data cache channel at each network node to pass requests and data
First Claim
1. In a network of digital computers that includes a plurality of Network Distributed Cache (“
- NDC”
) sites, each NDC site including an NDC that has an NDC buffer, a method for projecting an image of a stored dataset from an NDC server terminator site into an NDC client terminator site in response to a request to access such dataset transmitted from a client site to the NDC client terminator site, the method comprising the steps of;
(a) the NDC receiving the request to access data in the stored dataset;
(b) the NDC checking the NDC buffer at this NDC site to determine if a projected image of data requested from the dataset is already present there;
(c) if the NDC buffer of this NDC site does not contain a projected image of all data requested from the dataset, and if the NDC site receiving the request is not the NDC server terminator site for the dataset, the NDC of this NDC site transmitting a request for data from this NDC site downstream to another NDC site closer to the NDC server terminator site for the dataset than the present NDC site;
(d) if the NDC buffer of this NDC site does not contain a projected image of all data requested from the dataset, and if the NDC site receiving the request is the NDC server terminator site for the dataset, the NDC of this NDC site accessing the stored dataset to project an image of the requested data into its NDC buffer;
(e) repeating the steps (a) through (d) until the NDC buffer of the downstream NDC site receiving the request contains a projected image of all requested data;
(f) each successive NDC site, having obtained a projected image of all the requested data, returning data requested from it upstream to the NDC site from which it received the request until the requested data arrives at the NDC client terminator site; and
(g) the NDC client terminator site, upon receiving the requested data, returning the requested data to the client site.
3 Assignments
0 Petitions
Accused Products
Abstract
Network Distributed Caches (“NDCs”) (50) permit accessing a named dataset stored at an NDC server terminator site (22) in response to a request submitted to an NDC client terminator site (24) by a client workstation (42). In accessing the dataset, the NDCs (50) form an NDC data conduit (62) that provides an active virtual circuit (“AVC”) from the NDC client site (24) through intermediate NDC sites (26B, 26A) to the NDC server site (22). Through the AVC provided by the conduit (62), the NDC sites (22, 26A and 26B) project an image of the requested portion of the named dataset into the NDC client site (24). The NDCs (50) maintain absolute consistency between the source dataset and its projections at all NDC client terminator sites (24, 204B and 206) at which client workstations access the dataset. Channels (116) in each NDC (50) accumulate profiling data from the requests to access the dataset for which they have been claimed. The NDCs (50) use the profile data stored in channels (116) to anticipate future requests.
73 Citations
66 Claims
-
1. In a network of digital computers that includes a plurality of Network Distributed Cache (“
- NDC”
) sites, each NDC site including an NDC that has an NDC buffer, a method for projecting an image of a stored dataset from an NDC server terminator site into an NDC client terminator site in response to a request to access such dataset transmitted from a client site to the NDC client terminator site, the method comprising the steps of;
(a) the NDC receiving the request to access data in the stored dataset;
(b) the NDC checking the NDC buffer at this NDC site to determine if a projected image of data requested from the dataset is already present there;
(c) if the NDC buffer of this NDC site does not contain a projected image of all data requested from the dataset, and if the NDC site receiving the request is not the NDC server terminator site for the dataset, the NDC of this NDC site transmitting a request for data from this NDC site downstream to another NDC site closer to the NDC server terminator site for the dataset than the present NDC site;
(d) if the NDC buffer of this NDC site does not contain a projected image of all data requested from the dataset, and if the NDC site receiving the request is the NDC server terminator site for the dataset, the NDC of this NDC site accessing the stored dataset to project an image of the requested data into its NDC buffer;
(e) repeating the steps (a) through (d) until the NDC buffer of the downstream NDC site receiving the request contains a projected image of all requested data;
(f) each successive NDC site, having obtained a projected image of all the requested data, returning data requested from it upstream to the NDC site from which it received the request until the requested data arrives at the NDC client terminator site; and
(g) the NDC client terminator site, upon receiving the requested data, returning the requested data to the client site. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
- NDC”
-
9. A network of digital computers that includes a client site which requests access to a dataset that is stored at a location that can be accessed through the network, the network comprising:
-
a plurality of NDC sites, the dataset whose access is requested by the client site being stored at an NDC server terminator site, a request from the client site for access to the dataset being received by an NDC client terminator site, each NDC site including;
(a) an NDC that has an NDC buffer;
(b) means for the NDC to receive the request to access the dataset;
(c) means for the NDC to check the NDC buffer at this NDC site to determine if a projected image of data requested from the dataset is already present there wherein;
i. if the NDC buffer of this NDC site does not contain a projected image of all data requested from the dataset, and if this NDC site is not the NDC server terminator site for the dataset, the NDC including means for transmitting a request for data from this NDC site downstream to another NDC site closer to the NDC server terminator site for the dataset than the present NDC site;
ii. if the NDC buffer of this NDC site does not contain a projected image of all data requested from the dataset, and if this NDC site is the NDC server terminator site for the dataset, the NDC including means for accessing the dataset to project an image of the requested data into its NDC buffer; and
iii. if the NDC buffer of an NDC site contains a projected image of all requested data, the NDC including means for returning data requested from it upstream to the NDC site from which it received the request, whereby through a succession of such returns of data from one NDC site to the next upstream NDC site the requested data ultimately arrives at the NDC client terminator site; and
(d) data return means for returning the requested data from the NDC client terminator site to the client site. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. In a network of digital computers that includes a plurality of NDC sites, each NDC site including an NDC that has an NDC buffer, a method for projecting images of a stored dataset from an NDC server terminator site into a plurality of NDC client terminator sites in response to requests to access such dataset transmitted from client sites to the NDC client terminator sites, the method comprising the steps of:
-
(a) the NDC receiving the request to access data in the stored dataset;
(b) the NDC checking the NDC buffer at this NDC site to determine if a projected image of data requested from the dataset is already present there;
(c) if the NDC buffer of this NDC site does not contain a projected image of all data requested from the dataset, and if the NDC site receiving the request is not the NDC server terminator site for the dataset, the NDC of this NDC site transmitting a request for data from this NDC site downstream to another NDC site closer to the NDC server terminator site for the dataset than the present NDC site;
(d) if the NDC buffer of this NDC site does not contain a projected image of all data requested from the dataset, and if the NDC site receiving the request is the NDC server terminator site for the dataset, the NDC of this NDC site accessing the stored dataset to project an image of the requested data into its NDC buffer;
(e) repeating the steps (a) through (d) until the NDC buffer of the downstream NDC site receiving the request contains a projected image of all requested data;
(f) each successive NDC site, having obtained a projected image of all the requested data, returning the data requested from it upstream to the NDC site from which it received the request until the requested data arrives at the NDC client terminator site; and
(g) the NDC client terminator site, upon receiving the requested data, returning the requested data to the client site. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A network of digital computers that includes a plurality of client sites which request access to a dataset that is stored at a location that can be accessed through the network, the network comprising:
-
a plurality of NDC sites, the dataset whose access is requested by the client sites being stored at an NDC server terminator site, a request from the client sites for access to the dataset being received by NDC client terminator sites, each NDC site including;
(a) an NDC that has an NDC buffer;
(b) means for the NDC to receive the request to access the dataset;
(c) means for the NDC to check the NDC buffer at this NDC site to determine if a projected image of data requested from the dataset is already present there wherein;
i. if the NDC buffer of this. NDC site does not contain a projected image of all data requested from the dataset, and if this NDC site is not the NDC server terminator site for the dataset, the NDC includes means for transmitting a request for data from this NDC site downstream to another NDC site closer to the NDC server terminator site for the dataset than the present NDC site;
ii. if the NDC buffer of this NDC site does not contain a projected image of all data requested from the dataset, and if this NDC site is the NDC server terminator site for the dataset, the NDC including means for accessing the dataset to project an image of the requested data into its NDC buffer; and
iii. if the NDC buffer of an NDC site contains a projected image of all requested data, the NDC including means for returning the data requested from it upstream to the NDC site from which it received the request, whereby through a succession of such returns of data from one NDC site to the next upstream NDC site the requested data ultimately arrives at the NDC client terminator site; and
(d) means for the NDC client terminator site to return the requested data to the client site. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
-
47. In a digital computer system that includes high speed random access memory (“
- RAM”
), a method for caching in the RAM of the computer system an image of a portion of data stored in a dataset that the computer system can access in response to a request to access such data, the method comprising the steps of;
(a) claiming a channel in the RAM of the computer system for storing metadata relevant to accessing data in the dataset;
(b) loading metadata into the channel;
(c) from a pool of buffers in the RAM of the computer system, assigning to the channel a buffer for storing an image of a portion of the data from the dataset;
(d) accessing the dataset to load an image of a portion of the data from the dataset into the buffer assigned to the channel; and
(e) responding to the request to access the data by supplying from the buffer an image of the data stored in such buffer together with a portion of the metadata stored in the channel. - View Dependent Claims (48, 49, 50, 51, 52)
- RAM”
-
53. A cache for a digital computer system having a high speed RAM, said cache caching an image of a portion of data stored in a dataset in response to a request to access such data, said cache comprising:
-
(a) channel claiming means for claiming a channel in the RAM of the computer system, said channel being adapted for storing metadata relevant to accessing data in the dataset;
(b) means for loading metadata into said channel;
(c) a pool of buffers in the RAM of the computer system from which a buffer is assigned to said channel for storing an image of a portion of the data from the dataset;
(d) data loading means for accessing the dataset to load an image of a portion of the data from the dataset into said buffer assigned to said channel; and
(e) request response means for responding to the request to access the data by supplying from said buffer assigned to said channel an image of the data stored in such buffer together with a portion of the metadata stored in said channel. - View Dependent Claims (54, 55, 56, 57, 58)
-
-
59. In a network of digital computers that includes a plurality of NDC sites, each NDC site including an NDC that has channels which the NDC claims for storing therein various data relevant to processing requests to access datasets, a method for projecting images of stored datasets from an NDC server terminator site into an NDC client terminator site in response to requests to access such datasets transmitted from a client site to the NDC client terminator site, the method comprising the steps of:
-
(a) the NDC receiving a request to access data in a stored dataset;
(b) the NDC checking the claimed channels at this NDC site to determine if a channel has already been claimed for the dataset, and to determine from data stored in any channel claimed for the dataset if a projected image of data requested from the dataset is already present at this NDC site;
(c) if the NDC has not already claimed a channel for this dataset, the NDC of this NDC site claiming a channel for this dataset;
(d) if the channel claimed for the dataset at this NDC site indicates that a projected image of all data requested from the dataset is not present at this NDC site, and if the NDC site receiving the request is not the NDC server terminator site for the dataset, the NDC of this NDC site transmitting a request for data from this NDC site downstream to another NDC site closer to the NDC server terminator site for the dataset than the present NDC site;
(e) if the channel claimed for the dataset at this NDC site indicates that a projected image of all data requested from the dataset is not present at this NDC site, and if the NDC site receiving the request is the NDC server terminator site for the dataset, the NDC of this NDC site accessing the stored dataset to project an image of the requested data into this NDC site;
(f) storing into the channel for this dataset data collected by the NDC while processing the request to access the dataset;
(g) repeating the steps (a) through (f) until the downstream NDC site receiving the request has a projected image of all requested data;
(h) each successive NDC site, having obtained a projected image of all the requested data, returning data requested from it upstream to the NDC site from which it received the request until the requested data arrives at the NDC client terminator site, and each NDC site upon receiving data from a downstream NDC site also storing data received from such downstream NDC site into the channel for this dataset; and
(i) the NDC client terminator site, upon receiving the requested data, returning the requested data to the client site. - View Dependent Claims (60, 61, 62)
-
-
63. A network of digital computers that includes a client site which requests access to datasets that are stored at a location that can be accessed through the network, the network comprising:
-
a plurality of NDC sites, the datasets whose access are requested by the client site being stored at an NDC server terminator site, a request from the client site for access to the datasets being received by an NDC client terminator site, each NDC site including;
(a) an NDC that has channels which the NDC claims for storing therein various data relevant to processing requests to access datasets;
(b) means for the NDC to receive the request to access a dataset;
(c) means for the NDC to check the claimed channels at this NDC site to determine if a channel has already been claimed for the dataset, and to determine from data stored in any channel claimed for the dataset if a projected image of data requested from the dataset is already present at this NDC site wherein;
i. if a channel has not already been claimed at this NDC site for this dataset, the NDC including means for claiming a channel;
ii. if the channel claimed for the dataset at this NDC site indicates that a projected image of all data requested from the dataset is not present at this NDC site, and if this NDC site is not the NDC server terminator site for the dataset, the NDC including means for transmitting a request for data from this NDC site downstream to another NDC site closer to the NDC server terminator site for the dataset than the present NDC site;
iii. if the channel claimed for the dataset at this NDC site indicates that a projected image of all data requested from the dataset is not present at this NDC site, and if this NDC site is the NDC server terminator site for the dataset, the NDC including means for accessing the dataset to project an image of the requested data into this NDC site;
iv. the NDC including means for storing into the channel for this dataset data collected by the NDC while processing the request to access the dataset; and
v. if an NDC site has a projected image of all requested data, the NDC including means for returning data requested from it upstream to the NDC site from which it received the request and for storing data received from any downstream NDC site into the channel for the dataset, whereby through a succession of such returns of data from one NDC site to the next upstream NDC site the requested data ultimately arrives at the NDC client terminator site; and
(d) data return means for returning the requested data from the NDC client terminator site to the client site. - View Dependent Claims (64, 65, 66)
-
Specification