Network object cache engine
#7,103,794, September 5, 2006
Assignee: Cacheflow, Inc.
Inventors: Malcolm, Michael; Zarnke, Robert
The invention provides a method and system for caching information objects transmitted using a computer network. A cache engine determines directly when and where to store those objects in a memory (such as RAM) and mass storage (such as one or more disk drives), so as to optimally write those objects to mass storage and later read them from mass storage, without having to maintain them persistently. The cache engine actively allocates those objects to memory or to disk, determines where on disk to store those objects, retrieves those objects in response to their network identifiers (such as their URLs), and determines which objects to remove from the cache so as to maintain sufficient operating space. The cache engine collects information to be written to disk in write episodes, so as to maximize efficiency when writing information to disk and so as to maximize efficiency when later reading that information from disk. The cache engine performs write episodes so as to atomically commit changes to disk during each write episode, so the cache engine does not fail in response to loss of power or storage, or other intermediate failure of portions of the cache. The cache engine also stores key system objects on each one of a plurality of disks, so as to maintain the cache holographic in the sense that loss of any subset of the disks merely decreases the amount of available cache. The cache engine also collects information to be deleted from disk in delete episodes, so as to maximize efficiency when deleting information from disk and so as to maximize efficiency when later writing to those areas having former deleted information. The cache engine responds to the addition or deletion of disks as the expansion or contraction of the amount of available cache.
Internet communication system
#6,581,090, June 17, 2003
Assignee: Mirror Image Internet, Inc.
Inventors: Lindbo, Sverker; Lothberg, Peter; Vixie, Paul
The present invention relates to the transferring of information on the Internet, comprising: means (40) for storing information, corresponding to information provided at an Internet content provider (60), at respective alternative addresses of said storing means; means (20) for intercepting an information request from an Internet user directed to an Internet content provider; means for determining whether or not the intercepted request is directed to an information content provider having an associated alternative address on said storing means (40); and means for directing the request to said alternative address if such an alternative address exists.
Internet client-server multiplexer
#6,411,986, June 25, 2002
Assignee: Netscaler, Inc.
Inventors: Susai, Michel K.; Sinha, Rajiv; Setia, Deepinder S.; Soni, Ajay V.
An apparatus, method and computer program product for network client-server multiplexing. The apparatus is implemented within an interface unit connecting a plurality of servers to the Internet, which is connected to a plurality of clients. According to a "connection pooling" aspect of the invention, the interface unit opens and maintains connections with the servers and handles the opening and closing of connections with clients accessing the servers, thereby freeing the servers of the processing load incurred by opening and closing connections. According to a "connection distribution" aspect oft he invention, the interface unit examines the path names within requests received from clients and selects the server hosting the requested information according to the path names.
Controlled communications over a global computer network
#6,226,677, May 1, 2001
Assignee: LodgeNet Entertainment Corporation
Inventors: Slemmer; Michael W.
In one embodiment, a method related to controlling communication of a TCP packet from a user machine is disclosed. During a browser request from the user machine, the TCP packet is sent via the intranet to a forced proxy server. The TCP packet having a number of fields including a first field related to a first destination IP address. The TCP packet and its first destination IP address is received by the forced proxy server and analyzed. If the first destination IP address is not from a "sandboxed" domain, the first destination IP address is changed to a predetermined second destination IP address to effectively reroute the TCP packet to another IP address on the Internet. The rerouted IP address provides content to the user machine in which at least a majority of the content is different from that expected to be obtained by the user machine.
Remote file services network-infrastructure cache
#6,085,234, July 4, 2000
Assignee: Inca Technology, Inc.
Inventors: Pitts, William M.; Rigler, Joel R.; Lister, Robert E.
A network-infrastructure cache ("NI Cache") transparently provides proxy file services to a plurality of client workstations concurrently requesting access to file data stored on a server. The NI Cache includes a network interface that connects to a digital computer network. A file-request service-module of the NI Cache receives and responds to network-file-services-protocol requests from workstations through the network interface. A cache, also included in the NI Cache, stores data that is transmitted back to the workstations. A file-request generation-module, also included in the NI Cache, transmits requests for data to the server, and receives responses from the server that include data missing from the cache.
Apparatus and method for increased data access in a network file object oriented caching system
#6,012,085, January 4, 2000
Assignee: Stampede Technolgies, Inc.
Inventors: Yohe, Thomas Patrick; Dorworth, Gordon L.; Penner, Jon J.; Hertzog, Scott; Morris, Brian C.
An apparatus for increased data access in a network includes a file/object server computer having a permanent storage memory, a cache verifying computer operably connected to the file/object server computer in a manner to form a network for rapidly transferring data, the cache verifying computer having an operating system, a first memory and a processor capable of performing an operation on data stored in the permanent storage memory of the file/object server computer to produce a signature of the data characteristic of one of a file, an object and a directory, a remote client computer having an operating system, a first memory, a cache memory and a processor capable of performing an operation on data stored in the cache memory to produce a signature of the data, a communication server operably connected to the remote client computer to the cache verifying computer and the file/object server computer and comparators operably associated with the cache verifying computer and remote client computer for comparing the signatures of data with one another to determine whether the signature of data of the remote client is valid.
Pull based, intelligent caching system and method for delivering data over a network
#5,991,306, November 23, 1999
Assignee: Microsoft Corporation
Inventors: Burns; Gregory; Leach; Paul J.
A network system includes a content provider connected to local service providers via an interactive distribution network, such as the Internet. The local service providers facilitate delivery of the content from the content provider to multiple subscribers. The local service providers schedule delivery of frequently requested content from the content provider prior to a peak time when the subscribers are likely to request the content. The content is downloaded from the content provider during the off-peak hours and cached at the local service providers for serving to the subscribers during the ensuing peak time. In this manner, the frequently requested content is already present at the local service providers and ready to be served to the subscribers before they actually request it. When the content is finally requested, the data is streamed continuously in real-time for just-in-time rendering at the subscriber computer. Another aspect of is invention involves supplementing content delivery over the Internet with delivery of content over a secondary network, such as a broadcast satellite network. The supplemental broadcast link offers additional bandwidth at a fraction of the cost that would be incurred if the local service provider installed additional Internet connections, such as T1 or T3 connections.
Internet browser that includes an enhanced cache for user-controlled document retention
#5,873,100, February 16, 1999
Assignee: Intel Corporation
Inventors: Adams, Robert Theodore; Vaughn, Iverson S.; Jeffrey, Nelson Kidder
A browser for requesting and receiving documents from a network includes a cache which stores a plurality of documents and has a user-defined storage limit. At least one of the plurality of documents stored in the cache is designated as a keep document. When a document is requested and received from the network, it is stored in the cache. The cache then determines whether the amount of storage used by the cache exceeds the storage limit. If the storage limit is exceeded, the cache deletes the oldest documents not designated as keep documents until the amount of storage used by the cache is within the storage limit
Inter-cache protocol for improved WEB performance
#5,787,470, July 28, 1998
Assignee: AT&T Corp
Inventors: DeSimone, Antonio; Shur, David Hilton; Sibal, Sandeep
On the Internet, different caches may contain copies of objects that have been copied from originating servers when they were accessed by users. Interconnected caches may have different objects stored thereon that might at some time be requested by a client terminal that is connected to a cache other than the one on which the object is stored. Rather than awaiting a request for a particular object and then querying each neighbor cache to determine whether a copy of the requested object is stored thereon, and then downloading the requested object if it is found, information about the contents of the neighbor caches is exchanged between these caches so that when a request for an object is received, the object can be retrieved from the cache in which it is stored. In the alternative, the object may be retrieved from the originating server if, for example, the object stored in a cache is stale based on the date and time it was last modified in the cache.
System for accessing distributed data cache channel at each network node to pass requests and data
#5,611,049, March 11, 1997
Inventors: Pitts, William M.
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 a 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) where it may be either read or written by the workstation 42. 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 accumulated profile data stored in channels (116) to anticipate future requests to access datasets, and, whenever possible, prevent any delay to client workstations in accessing data by asynchronously pre-fetching the data in advance of receiving a request from a client workstation.