WO2000017765A1 - An internet caching system and a method and an arrangement in such a system - Google Patents
An internet caching system and a method and an arrangement in such a system Download PDFInfo
- Publication number
- WO2000017765A1 WO2000017765A1 PCT/US1999/021248 US9921248W WO0017765A1 WO 2000017765 A1 WO2000017765 A1 WO 2000017765A1 US 9921248 W US9921248 W US 9921248W WO 0017765 A1 WO0017765 A1 WO 0017765A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- server
- file
- internet
- central
- query
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
Definitions
- the present invention refers to an Internet caching system and to an arrangement and a method for serving requests for Internet information files in an Internet caching system.
- the Internet and its currently most used feature, the World Wide Web (WWW) has in recent years developed into an enormous source of information. Anybody can provide any information, such as text, pictures, audio and video, on the World Wide Web where it can be easily retrieved by users anywhere in the world as long as they have access to the Internet.
- the major problem facing the Internet is the growing demand for communication capacity as users access information from anywhere in the world. It is estimated that the World Wide Web traffic already exceeds all conven- tional telephone and facsimile traffic on most international communication lines. More transmission and switching capacity is continuously added, but it is a slow and expensive process and demand continues to outstrip supply. The content of the World Wide Web is getting to be unmeasurable and probably comprises several hundreds of Terabytes (as of summer 1998) . However, a relatively small subset of all this information accounts for a huge portion of the information actually being accessed. Therefore, in order to minimize bandwidth used and latency involved when accessing information on the Internet, different caching techniques are currently in use for limiting the amount of information that has to be transferred over the Internet and for limiting the distance over which the information is transferred.
- client side caching In the field of caching WWW objects, or Internet information files, there are basically two approaches, client side caching and server side caching.
- the simplest form of client side caching is virtually used by every WWW browser today.
- the browser retains a cache on the user's computer with the last accessed Internet information files.
- the browser retrieves it from its cache rather than making a request for it over the Internet.
- a proxy server caching method another form of client side caching, can be used.
- a cache is placed at a WWW proxy node to which a number of neighboring users are connected, such a proxy node could for example be a server located at a company.
- the client sends a http request to the proxy node, or WWW proxy server, rather than sending it directly to a server on the global Internet.
- the proxy server that sends the request to a WWW server on the global Internet, caches the response and returns the response to the client.
- the first time an information file is requested it is transferred over the Internet and stored in the cache of the WWW proxy server. Subsequent requests for the same information file from any client connected to the WWW proxy server can then be resolved locally, rather than making http requests to a WWW server over the global
- Proxy server caching can also be used outside the premises of a company, or some other organization, by implementing the scheme described above at a regional Internet cache server to which a number of clients are directly or indirectly connected.
- Cisco Systems, Inc. proposes that the end users are connected to a backbone router which is programmed to transparently redirect all WWW requests to a group, or "Farm" of dedicated cache appliances, or "Cache Engines".
- Each Cache Engine handles a subset of all origin WWW servers, based on grouping of the IP (Internet Protocol) addresses.
- IP Internet Protocol
- the solution scales up to 32 Cache Engines in parallel, which corresponds to serving approximately 500.000 subscribing end users.
- Inktomi Corporation suggests that a switch, a so called layer 4 switch, is used to redirect all requests for WWW pages to an "Inktomi Traffic server".
- a cluster of powerful computers are used, which all share the same disk storage system.
- This solution scales up to 16 - parallel workstations, which also corresponds to about 500.000 subscribing end users.
- having several computers accessing the same disk storage system adds complexity and requires management, i.e. some of the capacity of each computer is not available for processing requests .
- Network Appliance, Inc. proposes a two tier caching solution.
- the system has several local caches near the end users. These local caches communicate with a central cache using the Internet Cache Protocol (ICP) when a cache miss occurs at the local level. If the requested file is present in the central cache, it will be transferred to the local cache and then forwarded to the end user. If the requested file is not in the central cache either, the central cache will make a request to the origin server and forward the file to the local cache, which in turn forwards the file to the end user.
- the central cache thus handles ICP requests from the local caches and communicates with the origin server in the case of a cache miss at the central cache.
- An object of the present invention is to overcome the drawbacks with the presently known techniques for caching information files on the Internet and to provide a solution for caching information files in a cost- effective way.
- Another object of the present invention is to provide a solution for how user's requests for cached information files are to be served by a caching system in a fast and cost-effective way.
- Yet another object of the present invention is to provide a scaleable caching system which is scaleable in a standardized way.
- a method for serving requests for Internet information files in an Internet caching system comprising the steps of receiving, at a local Internet cache server, a user request from a user for an Internet information file; in response to the received request, making a query for said information file, if said information file has not been cached by said local server; in response to a reply to said query, making a file request for said information file, wherein said file request is directed to a feeder means if said reply indicates that a central file server, storing cached - Internet information files, has said information file cached; and querying, from said feeder means in response to said file request, said central file server for said information file, in order to decrease the load on said central file server.
- an arrangement in an Internet caching system comprising at least one local cache server and at least one central file server, both of which servers stores cached Internet information files, which arrangement, for decreasing the load on said central file server, includes a Feeder communicating with said local cache server and with said central file server, wherein said Feeder includes first means for receiving a request for an Internet information file from said local cache server; second means for deriving a query from an alphanumerical string received from said local cache server; and third means for querying said central file server for said Internet information file using said query derived by said second means.
- an Internet caching system which system comprises a set of local Internet cache servers, wherein each local cache server is arranged to receive requests from users for Internet information files;_at least one central file server included in a central cache site and storing cached Internet information files; and feeder means interconnecting said set of local cache servers with said central file server, said feeder means including at least one Feeder, which Feeder comprises means for communicating with at least one local cache server in accordance with a protocol used for communicating between Internet cache servers and means for retrieving Internet information files from said central file server using data base queries, thereby decreasing the load on said central file server.
- the invention is based upon the idea of connecting, a number of dedicated computers to a central file server, or central cache server, storing Internet information files.
- these additional computers are low end computers.
- the dedicated computers are arranged to decrease the load on the central cache server by performing some of the tasks normally handled by the central cache server itself. In this way the central cache server is able to serve the local cache servers connected to the central server, or rather connected to the central server via the dedicated computers, in a fast and cost-effective way.
- Maximum use is made of the expensive hardware forming the actual central file server and its file repository in which the files are cached, while specialized inexpensive machines around the file server perform time consuming and time critical tasks in parallel.
- the inventive feeder means are realized by machines being separate from any machine realizing a central file server. This will decrease the load on the central file server, which then is able to dedicate more processing time to the actual retrieval of cached information files.
- the central file server is able to serve a large community, of users in an efficient way. Since user requests, via requesting local cache servers, are served more effectively, the number of user requests served can be increased, which in turn enables the central file server to obtain a higher hit rate percentage for its cache.
- the feeder means communicates with the local cache servers, on behalf of the central file server, in accordance with a protocol used for communicating between Internet cache servers.
- the currently used protocol is either the Internet Cache Protocol (ICP) or the Cache Digest, but could be any other conventional or future protocol used for the same purpose.
- a local cache server When a local cache server receives a request from a user for an information file, which file has not been cached at the local server, the local server starts with making a query for that file.
- the query is directed to a table, or data base, being internal to, or directly connected to, the local server. If said table indicates that the queried file is cached by the central file server, the local server will request the file from the feeder means, or Feeder. This querying and requesting is then preferably performed in accordance with the Cache Digest protocol.
- the request from the local server to the Feeder may be in accordance with any layer three protocol, for example an HTTP request.
- the query from the local server is directed to the Feeder.
- the query for example an ICP query
- the Feeder derives a query number from the alphanumerical URL of the received query for an information file, which query number then is used by the Feeder for querying the central file server for the information file.
- the Feeder queries the file server for information files using a standard SQL query (Structured Query Language) . If the queried file is present at the central file server, i.e. if there is a cache hit, the queried file is transferred from the central server, via the Feeder, to the local server.
- a standard SQL query Structured Query Language
- the query number is derived from said alphanumerical URL and from a part of a header informa- tion included in said query.
- This part of the header information contains specific user information of the original requester, for example, the language he is using, enabling the central file server to respond in accordance with this specific information.
- the query number corresponding to an information file is derived by using any hash algorithm, preferably using an MD5 hash algorithm.
- the Feeder derives the query number from the following request directed to the Feeder by the local server.
- the alpha- numerical string used for deriving the query number is the string included in said request, for example the URL of an HTTP request.
- the query number is then used by the Feeder when querying the central file server for the information file, preferably using an SQL query. Again, it is advantageous to also include at least part of an header information field of said request as the basis for deriving said query number.
- the Feeder preferably includes a table storing information relating to each information file being cached by the central file server.
- the table for example, being a memory resident MD5 indexed hash table.
- the Internet caching system further comprises updater means, or an Updater, for updating the set of information files being cached by the central file server.
- the updating procedure consists of transferring a copy of a file cached at a local server to the central server.
- the transferred file is a file which, as a con- sequence of a cache miss at the central server when - querying for the file, has been retrieved from its origin server by the local server and then been cached by the same.
- the central file server does not itself retrieve a non-cached file and is therefore not burden with having to make a request to an origin server for a file because of a cache miss when serving a local cache server.
- the Feeder evaluates a query from the local cache server for an information file, and concludes that the queried file is not cached at the central file server, the Feeder directs a reply to the querying local server, indicating that the file is not available, and then orders the Updater to update the central file server.
- the local cache server retrieves the file in question from its origin server.
- the Updater Upon reception of the order to update the central file server, the Updater requests a copy of the file from the local server and transfers the thereby received file copy to the central cache server where it is stored.
- the transferring and storing procedure is preferably performed at a time when the overall load on the central file server is low, and when the local server has been given enough time to retrieve the file from its origin server.
- the Updater will request a copy of the file from its origin server, which copy then is stored in the central cache server.
- the Feeder does not order the Updater to commence the updating procedure until after a certain number of queries for the same particular information file have been received, where these queries originate from local servers being located behind firewalls.
- the Updater is realized by a machine being separate from the machines realizing the Feeders, as well as being separate from any file server machine. This is an advantage since file requests, for example HTTP requests, to origin servers may take unpredictable amounts of time and thus lead to an unpredictable load on the machine performing the requests.
- Certain Internet information files are not suitable for caching. Such files are sometimes called dynamic information files, the term dynamic comes from that these files are continuously updated at the origin server, examples of such files are files with stock quotes, weather reports and so on.
- One preferred way of treating the existence of dynamic files is to uphold a list of known uncachable files in either the Updater or in the local servers. In this way the communication in the system, as a result of a user requesting such a file, can be minimized.
- several central file servers are included in a central cache site, each file server caching information files associated with original host names, IP-addresses or derived query numbers, within a defined range.
- the Feeder addresses the query to the file server caching files in the appropriate range.
- each file server has its own disk system, thus minimizing overhead.
- the central cache site is scaleable with third party file servers because of the standardized protocols used by the site.
- each low end computer is preferably connected to the central file server by means of a dedicated wire, alternatively, if there are several file servers, by means of a dedicated network.
- This network is either a private or a public network. In the latter case, at least part of the network capacity is preferably reserved for the communication in question.
- the network used can, of course, also be a part of the Internet, also in a non-dedicated way.
- the type of connection used between the central file server and the low end computers is very much dependent upon where the low end computers, or Feeders and Updaters, are located, at the same site as the central file server, or, at a location being different from the location of the central file server.
- the central cache site serves a defined set of local cache servers, which set in turn serves a linguistically and culturally homogenous user community. This will further increase the hit rate percentage at the central cache level since it is more likely that the same information files are requested more than once.
- an operator of an Internet caching system, handling information file requests in accordance with the present invention is able to provide a fast, cheap and effective way of serving a large number of subscribing customers.
- customers preferably being different Internet service providers, companies or other organizations connected to the inventive central cache site, or inventive Feeders/ Updaters, with their own local cache servers, or, being connected as clients to a system encompassing the whole inventive caching system formed by the central cache site, including Feeders and an Updater, and its connected local cache servers.
- a customer may very well also be a single user constituting a single WWW client connected directly to the inventive system.
- a large company or Internet service provider can choose to operate the inventive system on its own rather than being connected to such a system being operated by another party.
- inventive caching system is built around standardized protocols, such as ICP and SQL, local cache servers and central file servers from any manufacturer can be included in the system as long as these protocols are supported.
- a local Internet cache server is to be interpreted as a proxy node, preferably a WWW proxy node, retaining a cache for the users, or WWW clients, connected to the proxy node.
- Items cached on a local Internet cache server or a file server at a central cache site are any non-dynamic files which are accessible using the Internet and containing any type of information.
- Internet information file used in the present invention, such as binary, text, picture, audio and video files, HTTP (HyperText Transfer Protocol) files, WWW files, FTP (File Transfer Protocol) files, WWW pages, WWW objects, and so on.
- any file being accessed over the Internet in accordance with any layer 3 protocol is also included by the term Internet information file.
- a further example of a protocol that can be used is the WTP protocol (Wireless Transport Protocol) used within the WAP (Wireless Application Protocol) standard.
- WTP Wireless Transport Protocol
- WAP Wireless Application Protocol
- the invention encompasses a computer-readable medium, on which is stored one or several computer programs of instructions for one or several general purpose computers, comprising means for enabling said one or said several computers to perform the steps disclosed in the appended claims 1 - 17.
- the invention encompasses one or several program storage devices containing one or several sequences of instructions, for one or several general purpose computers, for performing the steps disclosed in the appended claims 1 - 17.
- Fig. 1 schematically shows an embodiment of an Internet caching system according to the present invention
- FIG. 2 schematically shows another embodiment of an Internet caching system according to the present invention
- Fig. 3 schematically shows a flow chart of the operations performed by a local cache server in Fig. 2;
- Fig. 4 schematically shows a flow chart of the operations performed by a Feeder in Fig. 2;
- FIG. 5 schematically shows a flow chart of the operations performed by an Updater in Fig. 2; and Fig. 6 schematically shows yet another embodiment of an Internet caching system according to the present invention.
- Fig. 1 a number of local cache servers 100 are shown. These local servers 100 are, via the Internet, connected to feeder means 110, here exemplified with a Feeder 110.
- feeder means 110 here exemplified with a Feeder 110.
- the number of Feeders 110 and the number of local cache servers 100 indicated in Fig. 1 is merely an example, and the embodiment is not restricted to these numbers.
- each Feeder is in this embodiment connected to one single central file server.
- Feeder 110 is connected to a central file server 130.
- This central file server includes a storage medium (not shown) on which Internet information files are stored, i.e. cached, and is imple- mented by a high end computer, such as a Sun Ultra Sparc or DEC Alpha Computer.
- Each Feeder 110 on the other hand is implemented by a low end computer, such as a conventional Personal Computer, and constitutes a front end machine which handles the communication between the local cache servers 100 and the central file server 130.
- the Feeder 110 communicates with the local cache servers 100 using the Internet Cache protocol, which is a message based protocol used for communicating between cache servers over the Internet. Hence, the Feeder 110 replies to an ICP query for a cached Internet information file, the query being received from one of the local cache servers 100, with an ICP reply. This ICP reply indicates either a cache hit (ICP_OP__HIT) or a cache miss (ICP_OP_MISS) .
- the ICP query received by the Feeder includes the URL of the queried information file. From this URL the Feeder 110 derives a query number, corresponding to the queried information file, using an MD5 hash algorithm.
- a memory resident MD5 indexed hash table 115 is then searched. Included in the Feeder 110 is a RAM (Random Access Memory) 116 in which the indexed table ts stored.
- the indexed table 115 comprises an entry for each query number corresponding to an Internet information file cached at the central file server 130. Searching the indexed table 115 comprises searching the entries for a query number matching the derived query number. If a matching query number is found in the table, this is an indication that the queried information file is cached by the central file server 130, and, as a consequence, the ICP rely to the local server 100 will indicate a cache hit.
- MD5 hash algorithm and for searching the indexed table is a microprocessor 120, together with an appropriate software module, included in the Feeder 110.
- the microprocessor executes the software module, which execution results in derived query number and in a search of the indexed table 115.
- the implementation of this software module is straight forward for a person skilled in the art of programming.
- the local server will request the information file from the Feeder using the HyperText Transfer Protocol, which is a protocol used for accessing WWW objects over the Internet. That is, an HTTP request is transmitted to the Feeder, which request includes the URL of the requested file.
- HyperText Transfer Protocol which is a protocol used for accessing WWW objects over the Internet. That is, an HTTP request is transmitted to the Feeder, which request includes the URL of the requested file.
- the Feeder 110 When communicating with the central file server 130, the Feeder 110 uses common SQL queries. Upon reception of the HTTP request, the Feeder will retrieve the query number which was previously derived from the URL of the corresponding ICP query. Alternatively, the URL of the HTTP request is used for once again deriving the query number. The Feeder then uses the query number in a ⁇ standard SQL query directed to the central file server. As a response, the central file server 130 will transfer the information file in question to the Feeder 110, which in turn transfers the information file to the local server 100 that issued the request for the file.
- the means for implementing the execution of the Internet Cache Protocol in the Feeder 110 is the microprocessor 120 included in the Feeder.
- the microprocessor also implements the means for receiving an HTTP request from the local server 100 as well as the means for querying the central file server 130 using the SQL.
- the operations to be performed by the microprocessor are controlled by appropriate software modules, being part of the abovementioned means. The implementation of these software modules would be well known for a person skilled in the art of programming and being familiar with the protocols in question.
- FIG. 2 differs from the one shown in Fig. 1 in that the Internet caching system comprises an Updater 240, i.e. updater means, being connected to the central file server 230, the Feeder 210 and, via the Internet, the local cache servers 200.
- Fig. 2 illustrates the inventive arrangement encompassing an Updater 240 as well as a Feeder 210.
- the elements of Fig. 2 having corresponding elements in Fig. 1, operate and interact in accordance with what has previously been described with reference to Fig. 1. Therefore, only the features of _ these elements being of relevance to the embodiment illustrated by Fig. 2 are described below.
- the Updater 240 is responsible for updating the storage medium (not shown) associated with the central file server 230 with new cached information files.
- the local server 200 receives a cache miss in an ICP reply from the Feeder 210, as a response to a previous ICP query to the same, the local server 200 makes an HTTP request for the file to its origin server (not shown) . The requested file is then received and cached by the local server 200. After a predetermined time, as a consequence to the reported cache miss in the ICP reply, the Feeder 210 will instruct the Updater 240 to update the central file server.
- the Updater 240 receives, from the Feeder 210, the URL of the queried file and the identity of the local server 200 which queried for the file.
- An HTTP request for the file is then made from the Updater to the specific local server.
- the Updater Upon reception of the requested file, the Updater stores, i.e. caches, the file at the central file server 230.
- the Updater instructs the Feeder to add the query number corresponding to the file in question in the indexed table 215 stored in the RAM area 216.
- the means for requesting the information file from the local cache server 200 and the means for caching the received information file at the central file server 230 is a microprocessor 260, together with appropriate software modules, included in the Updater 240.
- the implemen- tation of these software modules would be well known for a person skilled in the art of programming.
- step 300 the local cache server 200 receives a request for an Internet information file from a client" * served by the particular local cache server.
- the file request may also be received from the Updater 240, which operates in accordance with the description referring to Fig. 5.
- the local cache server then in step 301 searches its locally cached files for the file requested. If it finds the file, the file is transferred to the requesting client or to the Updater 240, this is indicated with step 302.
- the local cache server 200 If the local cache server 200 does not find the requested file during the search, i.e. it has not cached the requested file, it examines in step 303 if the request came from the Updater. If this condition is true, a message is returned to the Updater in step 304 indicating that the requested file is not available. If the conditional step 303 is false, i.e. if the request came from a client, an ICP query is sent in step 305 to the Feeder 210. In the next step 306, the local cache receives an ICP reply from the Feeder 210 indicating whether or not the central file server 230 has the requested file cached. In step 307 the ICP reply is evaluated. If the reply indicates a cache miss, i.e.
- the local cache server 200 makes a HTTP request for the file directed to the origin server of the file. If the reply on the other hand indicates a cache hit, the local cache makes a HTTP request to the Feeder 210 for the file, this is indicated with step 309. In the next step 310, the local cache server receives the requested file from the Feeder. Finally, in step 311, the file is transferred to the client which requested the file.
- the operations performed by the Feeder 200 in the embodiment of Fig. 2 is now described with reference to the flow chart in Fig. 4.
- step 400 the Feeder 210 receives an ICP query regarding an Internet information file from any of the ⁇ * local cache servers 200 being handled by the Feeder.
- the query includes the URL of the queried information file.
- the Feeder 210 in step 401 derives a query number using an MD5 hash algorithm, which query number is used in step 402 when searching an indexed MD5 hash table being resident in the memory 216 of the Feeder 210.
- the Feeder in step 403 sends an ICP reply indicating a cache miss back to the local cache server 200 from which the ICP query was received.
- the Feeder 210 orders the Updater 240 to retrieve the non-cached queried file by passing the URL of the queried file to the Updater.
- the Feeder 210 adds the query number corresponding to the queried file in the indexed hash table 215. This is done in response to that the Updater 240 indicates to the Feeder that the queried file has been transferred from the local server 200 and stored in the central file server 230. The operation of the Updater 240 will be further described with reference to Fig. 5.
- the Feeder 210 in the conditional step 402 finds the query number during the search in the hash table 215, it will in step 406 send an ICP reply indicating a cache hit back to the local cache server 200 from which the ICP query was received.
- the Feeder receives an HTTP request from the local cache server 200 which previously issued the ICP query. Similar to the ICP query, the HTTP request includes the URL of the requested information file.
- the Feeder 210 retrieves the previously derived query number corresponding to the file. With this query number the Feeder in step 409 queries the central file server 230 for the requested information file using a standard SQL query.
- the Feeder as a response receives the cached information file from the central file server 230, and in the next step 411, the requested cached Internet information file is transferred from the Feeder 210 to the requesting local cache server 200.
- step 500 the Updater 240 receives an order from the Feeder 210 indicating that a particular file should be requested.
- the file in question was previously requested by the local cache server 200, but the Feeder found that the central cache server 230 had not cached the file.
- the order includes the URL of the file as well as the address of the local cache server 200 which requested the file from the central cache 230.
- the Updater will then, in step 501, check the requested file of the order against a list of known uncachable files. If the list contains the requested file, the order will be discarded.
- the order is put on a hold by the Updater 240 so that there will be time for the local cache server 200 to retrieve the file from its origin server.
- the central server sends a message to the Updater 240 stating that any pending order should be executed, the reception of this message at the Updater 240 is indicated with step 502.
- the execution of the order starts with that the Updater requests a copy of the file, which now should have been retrieved and cached locally, from the local cache server 200 from which the file request originated. A copy of the file is then received from the local cache server in step 504.
- step 505 the received file copy is transferred to the central file server 230 to be cached by the same.
- the Updater 240 instructs the Feeder 210 to add the query number corresponding to the file cached at the central file server 230 to the indexed hash table 215.
- the operation of the central file server 230 is straight forward. Basically it does two things, it answers SQL queries from the Feeders 210 by transferring cached files to them, and, it stores new information files in its cache, which files are transferred to it from the Updater 240.
- FIG. 6 differs from the one shown in Fig 2 in that the system has more than one central file server, here being exemplified with three central cache servers 630. Also, Fig. 6 includes two Feeders 610, each of which is connected to its own set of local cache servers 600. The Feeders 610 and the Updater 640 are arranged together with the central file servers 630 at a central cache site 690. By means of an Ethernet network 680 arranged within the central cache site, the Updater 640 and each Feeder 610 are connected to all central file servers 630.
- central file servers in this embodiment enables more files to be cached and even more SQL queries to be answered by the central file servers in comparison with the embodiment of Fig. 2. Since the system is completely scaleable, any number of Feeders, Updaters or central file servers can in theory be added to the system.
- a Feeder 610 need to select one server, out of the plurality of central file servers 630, to which an SQL query should be directed.
- Each central file server 630 caches information files within original host names within a predefined range. Therefore, the selection of one of the central file servers is done in accordance with the host name included in the URL received from the local server, either as part of an ICP query or as part of an HTTP request.
- the SQL query with the derived query number is directed to that selected file server.
Abstract
Description
Claims
Priority Applications (13)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020007005659A KR20010032419A (en) | 1998-09-24 | 1999-09-22 | An internet caching system and a method and an arrangement in such a system |
EP99951464A EP1040425A4 (en) | 1998-09-24 | 1999-09-22 | An internet caching system and a method and an arrangement in such a system |
DE1040425T DE1040425T1 (en) | 1998-09-24 | 1999-09-22 | AN INTERNETCACHE SYSTEM AND A METHOD AND ARRANGEMENT IN SUCH A SYSTEM |
BR9906468-5A BR9906468A (en) | 1998-09-24 | 1999-09-22 | Auxiliary storage system for internet, medium and device of this system |
PL99340807A PL340807A1 (en) | 1998-09-24 | 1999-09-22 | Method of and system for buffering files as well as configuration of said system |
HU0004164A HUP0004164A2 (en) | 1998-09-24 | 1999-09-22 | An internet caching system and a method and an arrangement in such a system |
AU63899/99A AU6389999A (en) | 1998-09-24 | 1999-09-22 | An internet caching system and a method and an arrangement in such a system |
CA002310603A CA2310603A1 (en) | 1998-09-24 | 1999-09-22 | An internet caching system and a method and an arrangement in such a system |
JP2000571355A JP2002525749A (en) | 1998-09-24 | 1999-09-22 | Internet caching system, method and system configuration |
IL13628199A IL136281A0 (en) | 1998-09-24 | 1999-09-22 | Internet caching system and a method and an arrangement in such a system |
IS5494A IS5494A (en) | 1998-09-24 | 2000-05-12 | Internet cache system and method and equipment in such a system |
NO20002614A NO20002614L (en) | 1998-09-24 | 2000-05-22 | Internet fast storage system and method and arrangement of such a system |
GR20010300011T GR20010300011T1 (en) | 1998-09-24 | 2001-04-30 | An internet caching system and a method and an arrangement in such a system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9803246-9 | 1998-09-24 | ||
SE9803246A SE514376C2 (en) | 1998-09-24 | 1998-09-24 | An internet caching system as well as a procedure and device in such a system |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2000017765A1 true WO2000017765A1 (en) | 2000-03-30 |
Family
ID=20412708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US1999/021248 WO2000017765A1 (en) | 1998-09-24 | 1999-09-22 | An internet caching system and a method and an arrangement in such a system |
Country Status (28)
Country | Link |
---|---|
EP (1) | EP1040425A4 (en) |
JP (1) | JP2002525749A (en) |
KR (1) | KR20010032419A (en) |
CN (1) | CN1286774A (en) |
AR (1) | AR025806A1 (en) |
AU (1) | AU6389999A (en) |
BR (1) | BR9906468A (en) |
CA (1) | CA2310603A1 (en) |
DE (1) | DE1040425T1 (en) |
ES (1) | ES2152204T1 (en) |
GR (1) | GR20010300011T1 (en) |
HU (1) | HUP0004164A2 (en) |
ID (1) | ID27668A (en) |
IL (1) | IL136281A0 (en) |
IS (1) | IS5494A (en) |
LT (1) | LT4797B (en) |
LV (1) | LV12597B (en) |
NO (1) | NO20002614L (en) |
PA (1) | PA8482301A1 (en) |
PE (1) | PE20001191A1 (en) |
PL (1) | PL340807A1 (en) |
RU (1) | RU2000112850A (en) |
SA (1) | SA99200851A (en) |
SE (1) | SE514376C2 (en) |
TR (1) | TR200001474T1 (en) |
TW (1) | TW437205B (en) |
WO (1) | WO2000017765A1 (en) |
ZA (1) | ZA996124B (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001080062A2 (en) * | 2000-04-17 | 2001-10-25 | Circadence Corporation | System and method for web serving |
WO2001093082A2 (en) * | 2000-06-01 | 2001-12-06 | Aerocast.Com, Inc. | Self-publishing network directory |
KR100394189B1 (en) * | 2000-08-23 | 2003-08-09 | 주식회사 아라기술 | Method for servicing web contents by using a local area network |
WO2003085560A1 (en) * | 2002-04-04 | 2003-10-16 | Hewlett-Packard Development Company Lp | Device and method for supervising use of shared storage by multiple caching servers |
JP2003532178A (en) * | 2000-04-07 | 2003-10-28 | ムービーリンク エルエルシー | Systems and procedures for distributing content over networks |
US6836806B1 (en) | 2000-06-01 | 2004-12-28 | Aerocast, Inc. | System for network addressing |
US6904460B1 (en) | 2000-06-01 | 2005-06-07 | Aerocast.Com, Inc. | Reverse content harvester |
WO2007100700A2 (en) * | 2006-02-28 | 2007-09-07 | Microsoft Corporation | Serving cached query results based on a query portion |
US7747772B2 (en) | 2000-06-01 | 2010-06-29 | Aerocast.Com, Inc. | Viewer object proxy |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040255007A1 (en) * | 2001-08-03 | 2004-12-16 | Juha Salo | Method, system and terminal for data networks with distributed caches |
US7797392B2 (en) * | 2002-11-26 | 2010-09-14 | International Business Machines Corporation | System and method for efficiently supporting multiple native network protocol implementations in a single system |
GB0406860D0 (en) * | 2004-03-26 | 2004-04-28 | British Telecomm | Computer apparatus |
US20080313306A1 (en) * | 2004-12-22 | 2008-12-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and Arrangements for Caching Static Information for Packet Data Applications In Wireless Communication Systems |
KR101109273B1 (en) * | 2009-12-24 | 2012-01-30 | 삼성전기주식회사 | Mobile telecommunication terminal sharing temporary internet file and temporary internet file sharing method using its terminal |
US9294582B2 (en) * | 2011-12-16 | 2016-03-22 | Microsoft Technology Licensing, Llc | Application-driven CDN pre-caching |
TWI513284B (en) * | 2012-12-28 | 2015-12-11 | Chunghwa Telecom Co Ltd | Inverse proxy system and method |
CN104506450A (en) * | 2014-11-06 | 2015-04-08 | 小米科技有限责任公司 | Media resource feedback method and device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5633933A (en) * | 1994-06-10 | 1997-05-27 | Sun Microsystems, Inc. | Method and apparatus for a key-management scheme for internet protocols |
US5774660A (en) * | 1996-08-05 | 1998-06-30 | Resonate, Inc. | World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network |
US5787470A (en) * | 1996-10-18 | 1998-07-28 | At&T Corp | Inter-cache protocol for improved WEB performance |
US5794229A (en) * | 1993-04-16 | 1998-08-11 | Sybase, Inc. | Database system with methodology for storing a database table by vertically partitioning all columns of the table |
US5809266A (en) * | 1994-07-29 | 1998-09-15 | Oracle Corporation | Method and apparatus for generating reports using declarative tools |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5511208A (en) * | 1993-03-23 | 1996-04-23 | International Business Machines Corporation | Locating resources in computer networks having cache server nodes |
JPH06290090A (en) * | 1993-04-06 | 1994-10-18 | Matsushita Electric Ind Co Ltd | Remote file accessing system |
US5974455A (en) * | 1995-12-13 | 1999-10-26 | Digital Equipment Corporation | System for adding new entry to web page table upon receiving web page including link to another web page not having corresponding entry in web page table |
US5978841A (en) | 1996-03-08 | 1999-11-02 | Berger; Louis | Look ahead caching process for improved information retrieval response time by caching bodies of information before they are requested by the user |
US5995943A (en) | 1996-04-01 | 1999-11-30 | Sabre Inc. | Information aggregation and synthesization system |
AU2906297A (en) * | 1996-05-20 | 1997-12-09 | British Telecommunications Public Limited Company | Information retrieval in cache database |
JPH1021174A (en) * | 1996-07-01 | 1998-01-23 | Ricoh Co Ltd | Data transfer system |
JP3481054B2 (en) * | 1996-07-04 | 2003-12-22 | シャープ株式会社 | Gateway device, client computer and distributed file system connecting them |
US5944789A (en) | 1996-08-14 | 1999-08-31 | Emc Corporation | Network file server maintaining local caches of file directory information in data mover computers |
GB2317723A (en) * | 1996-09-30 | 1998-04-01 | Viewinn Plc | Caching system for information retrieval |
US5931904A (en) * | 1996-10-11 | 1999-08-03 | At&T Corp. | Method for reducing the delay between the time a data page is requested and the time the data page is displayed |
US5987506A (en) | 1996-11-22 | 1999-11-16 | Mangosoft Corporation | Remote access and geographically distributed computers in a globally addressable storage environment |
US5933849A (en) * | 1997-04-10 | 1999-08-03 | At&T Corp | Scalable distributed caching system and method |
-
1998
- 1998-09-24 SE SE9803246A patent/SE514376C2/en unknown
-
1999
- 1999-09-22 CN CN99801667A patent/CN1286774A/en active Pending
- 1999-09-22 HU HU0004164A patent/HUP0004164A2/en unknown
- 1999-09-22 AR ARP990104770A patent/AR025806A1/en unknown
- 1999-09-22 RU RU2000112850/09A patent/RU2000112850A/en not_active Application Discontinuation
- 1999-09-22 EP EP99951464A patent/EP1040425A4/en not_active Withdrawn
- 1999-09-22 TW TW088116264A patent/TW437205B/en not_active IP Right Cessation
- 1999-09-22 ID IDW20000988A patent/ID27668A/en unknown
- 1999-09-22 AU AU63899/99A patent/AU6389999A/en not_active Abandoned
- 1999-09-22 DE DE1040425T patent/DE1040425T1/en active Pending
- 1999-09-22 TR TR2000/01474T patent/TR200001474T1/en unknown
- 1999-09-22 PL PL99340807A patent/PL340807A1/en unknown
- 1999-09-22 BR BR9906468-5A patent/BR9906468A/en not_active IP Right Cessation
- 1999-09-22 KR KR1020007005659A patent/KR20010032419A/en not_active Application Discontinuation
- 1999-09-22 JP JP2000571355A patent/JP2002525749A/en active Pending
- 1999-09-22 WO PCT/US1999/021248 patent/WO2000017765A1/en not_active Application Discontinuation
- 1999-09-22 ES ES99951464T patent/ES2152204T1/en active Pending
- 1999-09-22 CA CA002310603A patent/CA2310603A1/en not_active Abandoned
- 1999-09-22 IL IL13628199A patent/IL136281A0/en unknown
- 1999-09-23 PE PE1999000968A patent/PE20001191A1/en not_active Application Discontinuation
- 1999-09-23 PA PA19998482301A patent/PA8482301A1/en unknown
- 1999-09-23 ZA ZA9906124A patent/ZA996124B/en unknown
- 1999-12-27 SA SA99200851A patent/SA99200851A/en unknown
-
2000
- 2000-05-12 IS IS5494A patent/IS5494A/en unknown
- 2000-05-22 NO NO20002614A patent/NO20002614L/en not_active Application Discontinuation
- 2000-05-22 LT LT2000043A patent/LT4797B/en not_active IP Right Cessation
- 2000-05-23 LV LVP-00-69A patent/LV12597B/en unknown
-
2001
- 2001-04-30 GR GR20010300011T patent/GR20010300011T1/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5794229A (en) * | 1993-04-16 | 1998-08-11 | Sybase, Inc. | Database system with methodology for storing a database table by vertically partitioning all columns of the table |
US5633933A (en) * | 1994-06-10 | 1997-05-27 | Sun Microsystems, Inc. | Method and apparatus for a key-management scheme for internet protocols |
US5809266A (en) * | 1994-07-29 | 1998-09-15 | Oracle Corporation | Method and apparatus for generating reports using declarative tools |
US5774660A (en) * | 1996-08-05 | 1998-06-30 | Resonate, Inc. | World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network |
US5787470A (en) * | 1996-10-18 | 1998-07-28 | At&T Corp | Inter-cache protocol for improved WEB performance |
Non-Patent Citations (1)
Title |
---|
See also references of EP1040425A4 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003532178A (en) * | 2000-04-07 | 2003-10-28 | ムービーリンク エルエルシー | Systems and procedures for distributing content over networks |
JP4920850B2 (en) * | 2000-04-07 | 2012-04-18 | ブロックバスター エル エル シー | System and procedure for distributing content over a network |
WO2001080062A3 (en) * | 2000-04-17 | 2003-04-03 | Circadence Corp | System and method for web serving |
WO2001080062A2 (en) * | 2000-04-17 | 2001-10-25 | Circadence Corporation | System and method for web serving |
WO2001093082A3 (en) * | 2000-06-01 | 2002-08-08 | Aerocast Com Inc | Self-publishing network directory |
US6836806B1 (en) | 2000-06-01 | 2004-12-28 | Aerocast, Inc. | System for network addressing |
US6904460B1 (en) | 2000-06-01 | 2005-06-07 | Aerocast.Com, Inc. | Reverse content harvester |
US7213062B1 (en) | 2000-06-01 | 2007-05-01 | General Instrument Corporation | Self-publishing network directory |
US7747772B2 (en) | 2000-06-01 | 2010-06-29 | Aerocast.Com, Inc. | Viewer object proxy |
WO2001093082A2 (en) * | 2000-06-01 | 2001-12-06 | Aerocast.Com, Inc. | Self-publishing network directory |
KR100394189B1 (en) * | 2000-08-23 | 2003-08-09 | 주식회사 아라기술 | Method for servicing web contents by using a local area network |
WO2003085560A1 (en) * | 2002-04-04 | 2003-10-16 | Hewlett-Packard Development Company Lp | Device and method for supervising use of shared storage by multiple caching servers |
WO2007100700A2 (en) * | 2006-02-28 | 2007-09-07 | Microsoft Corporation | Serving cached query results based on a query portion |
WO2007100700A3 (en) * | 2006-02-28 | 2007-11-01 | Microsoft Corp | Serving cached query results based on a query portion |
US7797298B2 (en) | 2006-02-28 | 2010-09-14 | Microsoft Corporation | Serving cached query results based on a query portion |
Also Published As
Publication number | Publication date |
---|---|
LV12597A (en) | 2000-12-20 |
EP1040425A1 (en) | 2000-10-04 |
GR20010300011T1 (en) | 2001-04-30 |
NO20002614D0 (en) | 2000-05-22 |
LT2000043A (en) | 2001-01-25 |
JP2002525749A (en) | 2002-08-13 |
SE514376C2 (en) | 2001-02-19 |
ZA996124B (en) | 2000-03-30 |
PA8482301A1 (en) | 2002-08-26 |
DE1040425T1 (en) | 2001-03-15 |
IL136281A0 (en) | 2001-05-20 |
IS5494A (en) | 2000-05-12 |
SE9803246L (en) | 2000-03-25 |
AU6389999A (en) | 2000-04-10 |
BR9906468A (en) | 2002-04-16 |
HUP0004164A2 (en) | 2001-05-28 |
SE9803246D0 (en) | 1998-09-24 |
EP1040425A4 (en) | 2006-06-14 |
TR200001474T1 (en) | 2000-11-21 |
SA99200851A (en) | 2005-12-03 |
CN1286774A (en) | 2001-03-07 |
AR025806A1 (en) | 2002-12-18 |
LV12597B (en) | 2001-03-20 |
LT4797B (en) | 2001-05-25 |
RU2000112850A (en) | 2002-06-10 |
KR20010032419A (en) | 2001-04-16 |
PL340807A1 (en) | 2001-02-26 |
NO20002614L (en) | 2000-07-24 |
TW437205B (en) | 2001-05-28 |
PE20001191A1 (en) | 2000-11-02 |
CA2310603A1 (en) | 2000-03-30 |
ID27668A (en) | 2001-04-19 |
ES2152204T1 (en) | 2001-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7908337B2 (en) | System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content | |
US8825754B2 (en) | Prioritized preloading of documents to client | |
US7565450B2 (en) | System and method for using a mapping between client addresses and addresses of caches to support content delivery | |
US8788475B2 (en) | System and method of accessing a document efficiently through multi-tier web caching | |
US7725596B2 (en) | System and method for resolving network layer anycast addresses to network layer unicast addresses | |
US7343422B2 (en) | System and method for using uniform resource locators to map application layer content names to network layer anycast addresses | |
US6757733B2 (en) | Apparatus and method for improving performance of proxy server arrays that use persistent connections | |
US7587398B1 (en) | System and method of accessing a document efficiently through multi-tier web caching | |
US7565423B1 (en) | System and method of accessing a document efficiently through multi-tier web caching | |
US7577754B2 (en) | System and method for controlling access to content carried in a caching architecture | |
US7376716B2 (en) | Method and system for tiered distribution in a content delivery network | |
WO2000017765A1 (en) | An internet caching system and a method and an arrangement in such a system | |
WO2001080014A2 (en) | System and method for on-network storage services | |
EP1277327B1 (en) | System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content | |
MXPA00004999A (en) | An internet caching system and a method and an arrangement in such a system | |
JP3599153B2 (en) | Cache data discovery method and cache server | |
CZ20001899A3 (en) | Internet equalizing system and method as well as arrangement in such system | |
WO2001084802A2 (en) | System and method for using uniform resource locators to map application layer content names to network layer anycast addresses | |
WO2001084803A2 (en) | System and method for resolving network layer anycast addresses to network layer unicast addresses |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 136281 Country of ref document: IL Ref document number: 99801667.5 Country of ref document: CN |
|
ENP | Entry into the national phase |
Ref document number: 1999 63899 Country of ref document: AU Kind code of ref document: A |
|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AU BR CA CN CZ HU ID IL IN IS JP KR LT LV MX NZ PL RO RU SG TR US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 504261 Country of ref document: NZ |
|
ENP | Entry into the national phase |
Ref document number: 2310603 Country of ref document: CA Ref document number: 2310603 Country of ref document: CA Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 63899/99 Country of ref document: AU |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2000043 Country of ref document: LT Ref document number: PA/a/2000/004999 Country of ref document: MX Ref document number: PV2000-1899 Country of ref document: CZ |
|
ENP | Entry into the national phase |
Ref document number: 2000 571355 Country of ref document: JP Kind code of ref document: A Ref document number: 2000 20000069 Country of ref document: LV Kind code of ref document: A Ref document number: 2000 200000536 Country of ref document: RO Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 200020000069 Country of ref document: LV Ref document number: 2000/01474 Country of ref document: TR |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 1020007005659 Country of ref document: KR Ref document number: 1999951464 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 1999951464 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: PV2000-1899 Country of ref document: CZ |
|
WWP | Wipo information: published in national office |
Ref document number: 2000043 Country of ref document: LT |
|
WWP | Wipo information: published in national office |
Ref document number: 1020007005659 Country of ref document: KR |
|
WWG | Wipo information: grant in national office |
Ref document number: 2000043 Country of ref document: LT |
|
WWE | Wipo information: entry into national phase |
Ref document number: 09445845 Country of ref document: US |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 2000043 Country of ref document: LT |
|
WWR | Wipo information: refused in national office |
Ref document number: 1020007005659 Country of ref document: KR |
|
WWR | Wipo information: refused in national office |
Ref document number: PV2000-1899 Country of ref document: CZ |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 1999951464 Country of ref document: EP |