WO2002025463A1 - Method and apparatus for dynamic determination of optimum connection of a client to content servers - Google Patents
Method and apparatus for dynamic determination of optimum connection of a client to content servers Download PDFInfo
- Publication number
- WO2002025463A1 WO2002025463A1 PCT/US2001/029524 US0129524W WO0225463A1 WO 2002025463 A1 WO2002025463 A1 WO 2002025463A1 US 0129524 W US0129524 W US 0129524W WO 0225463 A1 WO0225463 A1 WO 0225463A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- request
- content server
- user
- server
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/101—Server selection for load balancing based on network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1014—Server selection for load balancing based on the content of a request
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1021—Server selection for load balancing based on client or server locations
Definitions
- the subject of this invention relates to the data communications industry. Specifically, this invention describes a method and apparatus for dynamically determining the optimum one of many servers for delivery of content to a user client terminal.
- ISPs Internet Service Providers
- LANs local area networks
- WANs wide area networks
- data communications encompasses a variety of data forms including, but not limited to, voice, video, audio, e-mail and software.
- voice, video, audio, e-mail and software For purposes of the present invention the discussion will center on the Internet.
- clients and servers Common to all network structures is the notion of clients and servers.
- a client is the source of a request for some service and a server provides that service. It is possible that the same device that is a server can, in a following transaction, become a client. For example, supposing that a user makes a request for some information through his ISP. The user's terminal is the client and the ISP is the server. But the information that the user has requested resides on a different network, thus the ISP must make a request from a different data terminal at some other network location, thus the ISP becomes the client and the distant terminal the server.
- a data terminal is considered to be a device having data processing, display and input/output capability. Thus a data terminal could be any number of physical machines including a desktop PC, a laptop PC, a router, or any other device capable of communicating with other such devices.
- individual data terminals are dispersed in logical and, in most cases, physical space. Some of these data terminal devices are strictly clients and are used by individual users to process data, access data and applications, and communicate with remote data terminal devices. Other data terminal devices act as communication portals and serve as both the server to an end user and as clients of other network data terminal devices. Still other data terminal devices contain large volumes of data and act only as servers, outputting requested data upon demand from a client device.
- Mirror sites are used for a number of reasons, including data redundancy, traffic demand, and cost control, however, for this discussion the use of mirror sites is particularly related to optimizing data transfer to user clients. Given that multiple mirror sites are available to serve a specific user client, a need arises to determine which of the mirror servers will be used to deliver the requested data. Numerous methods exist in the art to make this decision. These methods fall into two major types: fixed and dynamic. Fixed routing includes such methods as selecting a route from preprogrammed tables, calculating least delivery route cost, least delivery route weight, or least delivery route distance. Dynamic routing methods include deriving the optimum route from data supplied by the user clients and data servers, then making a calculation on-the-fly, or using statistical balancing to determine the best delivery route.
- Centralized fixed routing uses a dedicated routing server to pick the optimum route from a table.
- a table is used to determine the shortest distance from a user client to a data server. Variations of this method include the geographic location method and the preprogrammed logical location method.
- the fixed routing method ignores effects of local traffic demand on a single site, thus it suffers from delays in delivery and increases in connection time and cost, with an attendant reduction in network efficiency.
- Another fixed routing method divides the network topology into low speed local and high speed backbone segments, then parses the available data servers into one or the other of the segments.
- This so-called network parsing method makes the delivery decision predicated upon a preprogrammed elimination of many of the otherwise available nodes based on which segment the node resides in, thus it suffers from inefficient selection of the least busy server.
- the result is again a less-than- optimal route selection with a potential increase in cost due to increased connection time.
- Dynamic route selection methods include the least weight method, the least cost method, and the statistical balancing method. Each of these methods is dynamic since current network topology and traffic data are used to make the routing decision.
- the least weight method first uses data gathered about the end nodes in a specific communication session to assign a weight to a theoretical connection to all nodes of a network, then, in a second step, uses tabular data about the network topology with corresponding weighted values, and finally, in a third step, chooses the least weight answer from all possible connections formed by the addition of all of the weighted values.
- This method is slow compared to other methods, and suffers further from an aggregation of communication delays throughout the network. The result is delayed connection from the user client to the desired data server.
- the least cost method is based on traffic density and unit cost of data transferred.
- an arbitrary cost is assigned to a set level of traffic such that when traffic on one data server reaches a predetermined value, the cost per unit of data transferred will become high, forcing the algorithm to direct new traffic to a different data server.
- This method ignores the effects of geographical location, forcing traffic over a longer, more delay prone route when traffic on the desired data server reaches the predetermined level. Further, the method is centralized, so it is prone to service interruptions if the decision making data terminal device fails.
- Statistical balancing of user clients is another dynamic route selection method, hi this method all of the possible routes are monitored for traffic levels, and the traffic loads balanced on a per server basis. This method, like the cost method above, ignores any geographical advantages, thus possibly choosing a sub-optimal route due to the distance the data must travel.
- the existing methods suffer from one or more disadvantages. What would be desirable is a method for choosing an optimum connection from a user client to a data server dynamically and in such a way as to mitigate the disadvantages of the existing methods.
- the method should simultaneously provide the most efficient and cost effective routing decision.
- the method and apparatus of the present invention provide dynamic routing selection of the optimum data server from among many data servers that form a distributed content cache on a communications network.
- a user client enters a request by one of several addressing protocols.
- the method of the invention uses a combination of analytical tools to act upon information contained in the request to determine which of the many distributed content data servers will provide the optimum connection for the user client. Criteria used to make the selection include the type of request, the shortest path, and, when needed, other factors such as route weighting and best bandwidth.
- the method of the present invention combines a number of protocols and test methods to make the optimum routing decision.
- the protocols include, but are not limited to, HyperText Transfer Protocol [HTTP], HyperText Markup Language [HTML] and Dynamic Name Sever [DNS] addressing using Border Gateway Protocol [BGP] data.
- HTTP HyperText Transfer Protocol
- HTTP HyperText Markup Language
- DNS Dynamic Name Sever
- a significant advantage over the prior art is that the method of the present invention is platform independent, allowing it to be used for both internal networks, or externally across other networks of different types.
- Operation of the present invention is accomplished through use of fully mirrored content data servers, or Content Delivery Nodes [CDN] containing an embedded Redirector Agent, and multiple redundant Node Decision Servers [NDS] located at strategic data hubs within the ISP hosting service.
- CDNs may contain a variety of data types, for example live multi-cast, audio, video, standard web pages or simple data libraries.
- a user client issues a request, for example by entering a Universal Resource Locator [URL] address, which is received and analyzed by the Redirector Agent embedded in the CDN. Having identified the type of protocol to be used, the Redirector Agent queries the NDS for the optimum route decision.
- URL Universal Resource Locator
- the NDS then reviews the status of the network based upon the most current BGP data, including peer outages and geographic location of the CDN closest to the requestor, and makes an optimum connection determination. Once the decision is made, the NDS returns the optimum path data to the Redirector Agent. Based on the received optimum route data from the NDS plus the application of other administrative factors, the Redirector Agent formulates and returns the optimum path data to the user client.
- the Redirector Agent can receive and react to HTTP tasks submitted by the requestor's web browser and return to the user client the URL of the optimum CDN.
- the method of the present invention can receive DNS lookup data from the requestor and, using a DNS lookup table, return the DNS address of the optimum CDN.
- a third alternative method delivers embedded HTML instructions containing the appropriate target CDN data.
- the array of redundant NDSs receives constant updates as to the status of the network via BGP data which is fresh with each new communications session. Thus if one of a plurality of mirrored CDNs goes offline, the redundant NDS array factors this peer outage into the decision criteria.
- a significant advantage of the present invention is the ability to provide the optimum connection from a requestor to a content data server in real time. This and other advantages of the present invention are discussed in detail below in conjunction with the figures attached.
- Figure 1 illustrates a high level block diagram of a system that can make use of a first embodiment of the method of the present invention.
- Figure 2 presents a top level state diagram of an embodiment of the method of the present invention.
- Figure 3 is a detailed block diagram of a data content server that can make use of the method of the present invention.
- Figure 4 is a detailed block diagram of a node decision server that can make use of the method of the present invention.
- Figure 5 presents a state diagram of a typical HTTP communications session using the method of the present invention.
- Figure 6 presents a state diagram of a typical HTML communications session using the method of the present invention.
- Figure 7 presents a state diagram of a typical DNS communications session using the method of the present invention.
- the method of the present invention overcomes these disadvantages by providing a method and associated apparatus that allows dynamic determination of the most optimal target data server for content delivery without insertion of undesirable delays.
- client and “server” are used in their technical sense. That is, where a device is the source of a request, it is referred to as a client, whereas the same device responding to a request is referred to as a server.
- a Hosting Service 140 provides data services for numerous users, hi this configuration, the Hosting Service 140 is located geographically in Santa Clara.
- the Hosting Service 140 maintains a number of Routers 141 and Switches 143 that interface to data content servers such as Content Server #1 300.
- this is not the only possible host services configuration and is shown here as an example only. Other configurations could be used without departing from the spirit of the invention, for example, the Switches 143 could be eliminated for smaller host configurations.
- the Content Server #1 300 contains, among other data and programs, a Content Delivery Node #1 310 and a Redirector Agent 350.
- the Content Delivery Node #1 310 contains the information that a remote user is seeking and is one of several mirrored content sites.
- the Redirector Agent 350 is a program that receives users' requests, processes user address data, and interfaces with a Node Decision Server [NDS] 400, also located at the Hosting Service 140.
- the NDS 400 uses the Border Gateway Protocol [BGP] Data Table 410 to make a decision as to which of a plurality of mirrored data content servers will be the best for a particular user and communications session.
- BGP Border Gateway Protocol
- the BGP Data Table 410 is updated with current network status with each new communications session. These data are contained in the incoming message and are sent to the NDS 400 by the Router 141 as part of its normal operation. The NDS 400 then interprets the BGP data sent and updates the BGP Data Table 410. Each time a new communications session is started, regardless of the specific user, updated BGP data are sent to the BGP Data Table 410. In this way the method of the present invention maintains a detailed status of the current network conditions, including peer outages and active routes, advantageously allowing for a more accurate determination of an optimum content delivery path.
- a mirrored data content server is Content Server #2 130 in Atlanta.
- Content Server #2 130 contains the identical data content as Content Server #1 300 as well as Content Delivery Node #2 135.
- this fully mirrored configuration has several nontrivial advantages over the prior art including more rapid determination of the optimum data content server for a particular user and communications session. Shown in Fig. 1 are two typical remote users, User 1 110 in Chicago and User
- ISP Internet Service Provider
- Fig. 2 presents a high level state diagram 200 of the method of the present invention. While there are numerous specific instances of the use of BGP data by the method of the present invention, each discussed in detail below, Fig. 2 is appropriate for describing the method at a high level of granularity.
- the process begins when the User 210 requests a communications session. Note that the User 210 in Fig. 2 is equivalent to User 1 110 in Fig. 1 but is labeled differently here for clarity. Note further that Router 230, Redirector Agent 280, and NDS 250 all are equivalent to their counterparts in Fig. 1 but are labeled differently for clarity in Fig. 2.
- the User Request 215 is sent to a Router 230.
- the Router 230 sends the incoming message to the NDS 250 in the Send BGP data step 234.
- the NDS 250 interprets the BGP data contained in the incoming message in the Interpret BGP Data step 252 and then updates the BGP table at the Update BGP Data Table step 254. At this point in time the NDS 250 has a real time status of the entire network to use in its decision making process.
- the Router 230 also delivers the request to the Redirector Agent 280 at the Deliver Request step 236. Once the Redirector Agent 280 has received the request, the Determine Request Type step 282 is executed in order for the method of the present invention to understand what type of communication protocol is being used by the user's client device.
- the Redirector Agent 280 forms a query and sends it to the NDS 250 via the Query NDS for Best Server step 284. Using the very recently updated network status the NDS executes a Look-up Best Server step 265 and returns the results of the decision process to the Redirector Agent 280 in the Best Server Response step 258.
- the Redirector Agent 280 executes the Apply Other Admin Factors step 286 prior to sending the optimum route decision via the Return Best Server step 288.
- Other administrative factors may include such information as customer status, current traffic conditions and content status among others.
- the Router 230 receives the optimum data content server path information from the Redirector Agent 280 and passes it back to the User 210 via the Best Choice step 238.
- Fig. 3 provides the relevant detail of a typical Content Server 300, such as Content Server #1 in Fig. 1.
- the server contains, among other things, a Content Delivery Node #1 310, in this case having a Universal Resource Locator [URL] of www-west.demo.com.
- a Redirector Agent 350 is also contained in Content Server 300.
- the redirector agent is a software program containing a Front End Processor module 352, Application/Configuration Table 355 and NDS Interface module 358.
- a typical content server will contain many other components, both hardware and software, that are not relevant to the method of the present invention and are thus not addressed in this discussion. While each of the modules contained in the Redirector Agent 350 will be discussed in greater detail in conjunction with Figs.
- the Front End Processor module 352 is responsible of accepting a user's request, parsing the incoming data, analyzing the data and formulating a decision query to be sent to the NDS.
- the query is based upon what type of application has been sent by the user, thus the Application/Configuration Table 355, containing pre-configured data related to types of applications expected from users, is checked by the Front End Processor module 352 and the proper data is fetched for use in formulating the query to the NDS.
- the NDS Interface module 358 is used to send queries and receive responses from the NDS.
- Fig. 4 is a detailed block diagram of the NDS 400 in Fig. 1.
- the NDS 400 contains, among other things, the BGP Data Table 410, the BGP Interpreter module 420, The Network Status Data Table 430 and the Redirector Agent Interface module 440. Note that the NDS 400 may contain other hardware and software that are not relevant to the method of the present invention and are thus not addressed in this discussion.
- BGP Interpreter module 420 interprets the incoming message and extracts BGP data. These fresh data are then sent to the BGP Data Table 410, and, in combination with the geographic location data from the Network Status Data Table 430, form the decision data to be used in determining the optimum data content server location for the particular user request.
- the exact method for selection of the best possible data content server varies with the type of user request thus is not discussed in detail here; however, each method is covered in detail in conjunction with Fig.s 5 through 7 below.
- Redirector Agent Interface module 440 receives queries from and sends responses to the NDS Interface module, 358 of Fig. 3.
- FIGs. 5 through 7 provide the process details for three types of communication sessions.
- Fig. 5 presents a detailed state diagram 500 of the present invention using the HTTP redirect method.
- the process starts with the User 510, whose IP address happens to be 192.168J.43, issuing a request to connect to www.demo.com at User Request 515.
- the request takes the form of an HTTP GET/file.exe command.
- the Router 530 receives the command and then delivers the request via the Deliver Request step 536 to a Redirector Agent 580 embedded in a content server, for example, Content Server #1 300 in Fig. 1.
- the Router 530 accomplishes other tasks as explained in conjunction with Fig. 2 above, for example, delivering the request message to the NDS 550 to accomplish the BGP data update.
- the decision in the NDS 550 is based upon the current BGP data, the geographic locations of all possible relevant data content servers, which of the relevant data content servers have active routes, and which are administratively up or down. Where multiple geographic locations with active routes exist that are otherwise equal, a random distribution method of route assignment is used, i the example shown in Fig. 5, the optimum data content server selected by the NDS 550 happens to be Content Server #2 (130 of Fig. 1) located in Atlanta. This comports with the geographic location of the User 510 who is located in Chicago. Were the incoming request from User 2, 120 in Fig 1., located in Seattle, the NDS 550 would respond with Content Server #1 (300 of Fig. 1) instead, since it is located in Santa Clara.
- the Redirector Agent 580 Once the Redirector Agent 580 has received the response from the NDS 550, other relevant data are applied to the decision at the Apply Other Admin Factors step 586. Here, such factors as data content server loading, availability and data status are used to ensure that the proper content server has been selected.
- a 302 HTTP :https://www-east.demo.com/file.exe redirect command is passed back to the user.
- the user's device executes the command and connects the user to the appropriate data content sever via the optimum path.
- FIG. 6 presents a detailed state diagram 600 of the present invention using the embedded HTML command method.
- the process again starts with the User 610, whose IP address again happens to be 192.168.7.43, issuing a request to connect to www.demo.com at User Request 615.
- the request takes the form of an HTTP GET/index.html command.
- the Router 630 receives the command and then delivers the request via the Deliver Request step 636 to a Redirector Agent 680 embedded in a content server, for example, Content Server #1 300 in Fig. 1. Note that the Router 630 accomplishes other tasks as explained in conjunction with Fig. 2 above, for example, delivering the request message to the NDS 650 to accomplish the BGP data update.
- the Redirector Agent 680 uses the data contained in the Application/Configuration Table, 355 of Fig. 3, to determine which type of communications protocol is being used at the Determine Request Type step 682. In this instance, the determination is made that an embedded HTML protocol has been received from the user. Steps 684 through 686 perform the same functions in the same manner as their counterparts in Fig. 5 and therefore are not detailed here.
- an HTTP:https://www-east.demo.com/index.html redirect command is passed back to the user.
- the user's device executes the command and connects the user to the appropriate data content sever via the optimum path.
- Fig. 7 presents a detailed state diagram 700 of the present invention using the DNS lookup method.
- the process again starts with the User 710, whose IP address again happens to be 192.168.7.43, issuing a request to connect to www.demo.com at User Request 715.
- the request takes the form of a DNS lookup www.demo.com command.
- the Router 730 receives the command and then delivers the request via the Deliver Request step 736 to a Redirector Agent 780 embedded in a content server, for example, Content Server #1 300 in Fig. 1.
- the Router 730 accomplishes other tasks as explained in conjunction with Fig. 2 above, for example, delivering the request message to the NDS 750 to accomplish the BGP data update.
- a first advantage of the present invention is the ability to make an optimal route decision based on current network status. This is accomplished by reading and storing network conditions gained from fresh BGP data contained in each new session.
- a second advantage of the present invention is the speed of the optimum route decision process. Rapid route selection reduces the user delays in connecting to the best content server thereby reducing overall network traffic and increasing efficiency.
- a third advantage of the present invention is that it is platform independent.
- the Redirector Agent can be embedded in various communications environments making it broadly available to networks of all sizes and configurations.
- a fourth advantage of the present invention is that it is application independent. Since the Redirector Agent is pre-configured based upon client protocol preferences, a variety of communication applications may be served from the same network hosting environment.
- a fifth advantage of the present invention is that it is expandable. As new protocols and or communications applications become available, the Redirector Agent can be programmed to recognize, analyze and react in an appropriate manner.
- a sixth advantage of the present invention is that it is configurable on a client- by-client basis. This advantage allows the present invention to be changed as a client's needs change with little effort and expense.
- a seventh advantage of the present invention is that it is mirrored. This redundancy of both data and process greatly increases the dependability of the method of the present invention and significantly reduces the deterioration in performance related to network outages.
- An eighth advantage of the present invention is that it is economical since makes the optimum route selection based on best performance at the specific point in time when the user makes the content request. This is done through use of a many network factors including bandwidth, equipment status, geographic considerations, and session type, as well as others.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP01975281A EP1327195A1 (en) | 2000-09-19 | 2001-09-19 | Method and apparatus for dynamic determination of optimum connection of a client to content servers |
AU2001294620A AU2001294620A1 (en) | 2000-09-19 | 2001-09-19 | Method and apparatus for dynamic determination of optimum connection of a clientto content servers |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US66397700A | 2000-09-19 | 2000-09-19 | |
US09/663,977 | 2000-09-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2002025463A1 true WO2002025463A1 (en) | 2002-03-28 |
Family
ID=24663995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2001/029524 WO2002025463A1 (en) | 2000-09-19 | 2001-09-19 | Method and apparatus for dynamic determination of optimum connection of a client to content servers |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP1327195A1 (en) |
AU (1) | AU2001294620A1 (en) |
WO (1) | WO2002025463A1 (en) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004063946A2 (en) * | 2003-01-06 | 2004-07-29 | Gatelinx Corporation | Communication system facilitating real time data over the internet using global load balancing |
US7634490B2 (en) * | 2002-07-11 | 2009-12-15 | Youramigo Limited | Link generation system to allow indexing of dynamically generated server site content |
WO2011073707A1 (en) * | 2009-12-14 | 2011-06-23 | Telefonaktiebolaget L M Ericsson (Publ) | Dynamic cache selection method and system |
WO2014093717A1 (en) * | 2012-12-13 | 2014-06-19 | Level 3 Communications, Llc | Content delivery framework |
US20140372588A1 (en) | 2011-12-14 | 2014-12-18 | Level 3 Communications, Llc | Request-Response Processing in a Content Delivery Network |
CN105339921A (en) * | 2013-02-19 | 2016-02-17 | 泰瑞迪科技有限公司 | Increased data transfer rate method and system for regular internet user |
US9634918B2 (en) | 2012-12-13 | 2017-04-25 | Level 3 Communications, Llc | Invalidation sequencing in a content delivery framework |
US10652087B2 (en) | 2012-12-13 | 2020-05-12 | Level 3 Communications, Llc | Content delivery framework having fill services |
US10701148B2 (en) | 2012-12-13 | 2020-06-30 | Level 3 Communications, Llc | Content delivery framework having storage services |
US10701149B2 (en) | 2012-12-13 | 2020-06-30 | Level 3 Communications, Llc | Content delivery framework having origin services |
US10791050B2 (en) | 2012-12-13 | 2020-09-29 | Level 3 Communications, Llc | Geographic location determination in a content delivery framework |
US11368548B2 (en) | 2012-12-13 | 2022-06-21 | Level 3 Communications, Llc | Beacon services in a content delivery framework |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5418967A (en) * | 1990-06-22 | 1995-05-23 | Digital Equipment Corporation | Fast arbiter having easy scaling for large numbers of requesters, large numbers of resource types with multiple instances of each type, and selectable queuing disciplines |
US6016520A (en) * | 1995-07-14 | 2000-01-18 | Microsoft Corporation | Method of viewing at a client viewing station a multiple media title stored at a server and containing a plurality of topics utilizing anticipatory caching |
US6108706A (en) * | 1997-06-09 | 2000-08-22 | Microsoft Corporation | Transmission announcement system and method for announcing upcoming data transmissions over a broadcast network |
US6173322B1 (en) * | 1997-06-05 | 2001-01-09 | Silicon Graphics, Inc. | Network request distribution based on static rules and dynamic performance data |
US6182122B1 (en) * | 1997-03-26 | 2001-01-30 | International Business Machines Corporation | Precaching data at an intermediate server based on historical data requests by users of the intermediate server |
US6233607B1 (en) * | 1999-04-01 | 2001-05-15 | Diva Systems Corp. | Modular storage server architecture with dynamic data management |
US6286029B1 (en) * | 1997-04-28 | 2001-09-04 | Sabre Inc. | Kiosk controller that retrieves content from servers and then pushes the retrieved content to a kiosk in the order specified in a run list |
-
2001
- 2001-09-19 WO PCT/US2001/029524 patent/WO2002025463A1/en not_active Application Discontinuation
- 2001-09-19 EP EP01975281A patent/EP1327195A1/en not_active Withdrawn
- 2001-09-19 AU AU2001294620A patent/AU2001294620A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5418967A (en) * | 1990-06-22 | 1995-05-23 | Digital Equipment Corporation | Fast arbiter having easy scaling for large numbers of requesters, large numbers of resource types with multiple instances of each type, and selectable queuing disciplines |
US6016520A (en) * | 1995-07-14 | 2000-01-18 | Microsoft Corporation | Method of viewing at a client viewing station a multiple media title stored at a server and containing a plurality of topics utilizing anticipatory caching |
US6182122B1 (en) * | 1997-03-26 | 2001-01-30 | International Business Machines Corporation | Precaching data at an intermediate server based on historical data requests by users of the intermediate server |
US6286029B1 (en) * | 1997-04-28 | 2001-09-04 | Sabre Inc. | Kiosk controller that retrieves content from servers and then pushes the retrieved content to a kiosk in the order specified in a run list |
US6173322B1 (en) * | 1997-06-05 | 2001-01-09 | Silicon Graphics, Inc. | Network request distribution based on static rules and dynamic performance data |
US6108706A (en) * | 1997-06-09 | 2000-08-22 | Microsoft Corporation | Transmission announcement system and method for announcing upcoming data transmissions over a broadcast network |
US6233607B1 (en) * | 1999-04-01 | 2001-05-15 | Diva Systems Corp. | Modular storage server architecture with dynamic data management |
Cited By (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8832071B2 (en) | 2002-07-11 | 2014-09-09 | Youramigo Limited | Link generation system to allow indexing of dynamically generated server site content |
US7634490B2 (en) * | 2002-07-11 | 2009-12-15 | Youramigo Limited | Link generation system to allow indexing of dynamically generated server site content |
US7912832B2 (en) | 2002-07-11 | 2011-03-22 | Youramigo Limited | Link generation system to allow indexing of dynamically generated server site content |
WO2004063946A3 (en) * | 2003-01-06 | 2005-02-24 | Gatelinx Corp | Communication system facilitating real time data over the internet using global load balancing |
WO2004063946A2 (en) * | 2003-01-06 | 2004-07-29 | Gatelinx Corporation | Communication system facilitating real time data over the internet using global load balancing |
WO2011073707A1 (en) * | 2009-12-14 | 2011-06-23 | Telefonaktiebolaget L M Ericsson (Publ) | Dynamic cache selection method and system |
CN102640472A (en) * | 2009-12-14 | 2012-08-15 | 瑞典爱立信有限公司 | Dynamic cache selection method and system |
US9049199B2 (en) | 2009-12-14 | 2015-06-02 | Telefonaktiebolaget L M Ericsson (Publ) | Dynamic cache selection method and system |
CN102640472B (en) * | 2009-12-14 | 2016-09-14 | 瑞典爱立信有限公司 | dynamic cache selection method and system |
US9462051B2 (en) | 2009-12-14 | 2016-10-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Dynamic cache selection method and system |
US11838385B2 (en) | 2011-12-14 | 2023-12-05 | Level 3 Communications, Llc | Control in a content delivery network |
US11218566B2 (en) | 2011-12-14 | 2022-01-04 | Level 3 Communications, Llc | Control in a content delivery network |
US20140372588A1 (en) | 2011-12-14 | 2014-12-18 | Level 3 Communications, Llc | Request-Response Processing in a Content Delivery Network |
US10841398B2 (en) | 2011-12-14 | 2020-11-17 | Level 3 Communications, Llc | Control in a content delivery network |
US9451045B2 (en) | 2011-12-14 | 2016-09-20 | Level 3 Communications, Llc | Content delivery network |
US9456053B2 (en) | 2011-12-14 | 2016-09-27 | Level 3 Communications, Llc | Content delivery network |
US10187491B2 (en) | 2011-12-14 | 2019-01-22 | Level 3 Communications, Llc | Request-response processing an a content delivery network |
US9516136B2 (en) | 2011-12-14 | 2016-12-06 | Level 3 Communications, Llc | Customer-specific request-response processing in a content delivery network |
US9660874B2 (en) | 2012-12-13 | 2017-05-23 | Level 3 Communications, Llc | Devices and methods supporting content delivery with delivery services having dynamically configurable log information |
US9749191B2 (en) | 2012-12-13 | 2017-08-29 | Level 3 Communications, Llc | Layered request processing with redirection and delegation in a content delivery network (CDN) |
US9628347B2 (en) | 2012-12-13 | 2017-04-18 | Level 3 Communications, Llc | Layered request processing in a content delivery network (CDN) |
US9628342B2 (en) | 2012-12-13 | 2017-04-18 | Level 3 Communications, Llc | Content delivery framework |
US9628346B2 (en) | 2012-12-13 | 2017-04-18 | Level 3 Communications, Llc | Devices and methods supporting content delivery with reducer services |
US9628344B2 (en) | 2012-12-13 | 2017-04-18 | Level 3 Communications, Llc | Framework supporting content delivery with reducer services network |
US9634906B2 (en) | 2012-12-13 | 2017-04-25 | Level 3 Communications, Llc | Devices and methods supporting content delivery with adaptation services with feedback |
US9634905B2 (en) | 2012-12-13 | 2017-04-25 | Level 3 Communications, Llc | Invalidation systems, methods, and devices |
US9634904B2 (en) | 2012-12-13 | 2017-04-25 | Level 3 Communications, Llc | Framework supporting content delivery with hybrid content delivery services |
US9634907B2 (en) | 2012-12-13 | 2017-04-25 | Level 3 Communications, Llc | Devices and methods supporting content delivery with adaptation services with feedback |
US9634918B2 (en) | 2012-12-13 | 2017-04-25 | Level 3 Communications, Llc | Invalidation sequencing in a content delivery framework |
US9641401B2 (en) | 2012-12-13 | 2017-05-02 | Level 3 Communications, Llc | Framework supporting content delivery with content delivery services |
US9641402B2 (en) | 2012-12-13 | 2017-05-02 | Level 3 Communications, Llc | Configuring a content delivery network (CDN) |
US9647899B2 (en) | 2012-12-13 | 2017-05-09 | Level 3 Communications, Llc | Framework supporting content delivery with content delivery services |
US9647901B2 (en) | 2012-12-13 | 2017-05-09 | Level 3 Communications, Llc | Configuring a content delivery network (CDN) |
US9647900B2 (en) | 2012-12-13 | 2017-05-09 | Level 3 Communications, Llc | Devices and methods supporting content delivery with delivery services |
US9654353B2 (en) | 2012-12-13 | 2017-05-16 | Level 3 Communications, Llc | Framework supporting content delivery with rendezvous services network |
US9654356B2 (en) | 2012-12-13 | 2017-05-16 | Level 3 Communications, Llc | Devices and methods supporting content delivery with adaptation services |
US9654354B2 (en) | 2012-12-13 | 2017-05-16 | Level 3 Communications, Llc | Framework supporting content delivery with delivery services network |
US9654355B2 (en) | 2012-12-13 | 2017-05-16 | Level 3 Communications, Llc | Framework supporting content delivery with adaptation services |
US9628345B2 (en) | 2012-12-13 | 2017-04-18 | Level 3 Communications, Llc | Framework supporting content delivery with collector services network |
US9660876B2 (en) | 2012-12-13 | 2017-05-23 | Level 3 Communications, Llc | Collector mechanisms in a content delivery network |
US9660875B2 (en) | 2012-12-13 | 2017-05-23 | Level 3 Communications, Llc | Devices and methods supporting content delivery with rendezvous services having dynamically configurable log information |
US9661046B2 (en) | 2012-12-13 | 2017-05-23 | Level 3 Communications, Llc | Devices and methods supporting content delivery with adaptation services |
US9667506B2 (en) | 2012-12-13 | 2017-05-30 | Level 3 Communications, Llc | Multi-level peering in a content delivery framework |
US9686148B2 (en) | 2012-12-13 | 2017-06-20 | Level 3 Communications, Llc | Responsibility-based cache peering |
US9722882B2 (en) | 2012-12-13 | 2017-08-01 | Level 3 Communications, Llc | Devices and methods supporting content delivery with adaptation services with provisioning |
US9722884B2 (en) | 2012-12-13 | 2017-08-01 | Level 3 Communications, Llc | Event stream collector systems, methods, and devices |
US9722883B2 (en) | 2012-12-13 | 2017-08-01 | Level 3 Communications, Llc | Responsibility-based peering |
US9628343B2 (en) | 2012-12-13 | 2017-04-18 | Level 3 Communications, Llc | Content delivery framework with dynamic service network topologies |
US9749190B2 (en) | 2012-12-13 | 2017-08-29 | Level 3 Communications, Llc | Maintaining invalidation information |
US9749192B2 (en) | 2012-12-13 | 2017-08-29 | Level 3 Communications, Llc | Dynamic topology transitions in a content delivery framework |
US9755914B2 (en) | 2012-12-13 | 2017-09-05 | Level 3 Communications, Llc | Request processing in a content delivery network |
US9787551B2 (en) | 2012-12-13 | 2017-10-10 | Level 3 Communications, Llc | Responsibility-based request processing |
US9819554B2 (en) | 2012-12-13 | 2017-11-14 | Level 3 Communications, Llc | Invalidation in a content delivery framework |
US9847917B2 (en) | 2012-12-13 | 2017-12-19 | Level 3 Communications, Llc | Devices and methods supporting content delivery with adaptation services with feedback |
US9887885B2 (en) | 2012-12-13 | 2018-02-06 | Level 3 Communications, Llc | Dynamic fill target selection in a content delivery framework |
US10135697B2 (en) | 2012-12-13 | 2018-11-20 | Level 3 Communications, Llc | Multi-level peering in a content delivery framework |
US10142191B2 (en) | 2012-12-13 | 2018-11-27 | Level 3 Communications, Llc | Content delivery framework with autonomous CDN partitioned into multiple virtual CDNs |
WO2014093717A1 (en) * | 2012-12-13 | 2014-06-19 | Level 3 Communications, Llc | Content delivery framework |
US10608894B2 (en) | 2012-12-13 | 2020-03-31 | Level 3 Communications, Llc | Systems, methods, and devices for gradual invalidation of resources |
US10652087B2 (en) | 2012-12-13 | 2020-05-12 | Level 3 Communications, Llc | Content delivery framework having fill services |
US10700945B2 (en) | 2012-12-13 | 2020-06-30 | Level 3 Communications, Llc | Role-specific sub-networks in a content delivery framework |
US10701148B2 (en) | 2012-12-13 | 2020-06-30 | Level 3 Communications, Llc | Content delivery framework having storage services |
US10701149B2 (en) | 2012-12-13 | 2020-06-30 | Level 3 Communications, Llc | Content delivery framework having origin services |
US10708145B2 (en) | 2012-12-13 | 2020-07-07 | Level 3 Communications, Llc | Devices and methods supporting content delivery with adaptation services with feedback from health service |
US10742521B2 (en) | 2012-12-13 | 2020-08-11 | Level 3 Communications, Llc | Configuration and control in content delivery framework |
US10791050B2 (en) | 2012-12-13 | 2020-09-29 | Level 3 Communications, Llc | Geographic location determination in a content delivery framework |
US10826793B2 (en) | 2012-12-13 | 2020-11-03 | Level 3 Communications, Llc | Verification and auditing in a content delivery framework |
US10841177B2 (en) | 2012-12-13 | 2020-11-17 | Level 3 Communications, Llc | Content delivery framework having autonomous CDN partitioned into multiple virtual CDNs to implement CDN interconnection, delegation, and federation |
US11368548B2 (en) | 2012-12-13 | 2022-06-21 | Level 3 Communications, Llc | Beacon services in a content delivery framework |
US10862769B2 (en) | 2012-12-13 | 2020-12-08 | Level 3 Communications, Llc | Collector mechanisms in a content delivery network |
US10931541B2 (en) | 2012-12-13 | 2021-02-23 | Level 3 Communications, Llc | Devices and methods supporting content delivery with dynamically configurable log information |
US10992547B2 (en) | 2012-12-13 | 2021-04-27 | Level 3 Communications, Llc | Rendezvous systems, methods, and devices |
US11121936B2 (en) | 2012-12-13 | 2021-09-14 | Level 3 Communications, Llc | Rendezvous optimization in a content delivery framework |
US8825830B2 (en) | 2012-12-13 | 2014-09-02 | Level 3 Communications, Llc | Content delivery framework with dynamic service network topology |
CN105339921A (en) * | 2013-02-19 | 2016-02-17 | 泰瑞迪科技有限公司 | Increased data transfer rate method and system for regular internet user |
EP2997486A4 (en) * | 2013-02-19 | 2016-10-26 | Teridion Technologies Ltd | Increased data transfer rate method and system for regular internet user |
Also Published As
Publication number | Publication date |
---|---|
AU2001294620A1 (en) | 2002-04-02 |
EP1327195A1 (en) | 2003-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5774660A (en) | World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network | |
US10476984B2 (en) | Content request routing and load balancing for content distribution networks | |
US9544268B2 (en) | Systems and method to discover clients associated with local domain name server using sampling | |
US7103651B2 (en) | Method and apparatus for discovering client proximity network sites | |
US7111006B2 (en) | System and method for providing distributed database services | |
US7284055B1 (en) | Method and system for network redirecting | |
US6879998B1 (en) | Viewer object proxy | |
US7565450B2 (en) | System and method for using a mapping between client addresses and addresses of caches to support content delivery | |
US20120303784A1 (en) | Load balancing | |
US20010049741A1 (en) | Method and system for balancing load distribution on a wide area network | |
US20030182410A1 (en) | Method and apparatus for determination of optimum path routing | |
US8832245B2 (en) | System and method for content delivery using dynamic region assignment | |
EP1320977B1 (en) | Virtual ip framework and interfacing method | |
EP1327195A1 (en) | Method and apparatus for dynamic determination of optimum connection of a client to content servers | |
Agarwal et al. | Content distribution architecture using network layer anycast | |
WO2001093037A2 (en) | Client side holistic health check | |
AU2001272931A1 (en) | Client side address routing analysis | |
CA2410866C (en) | Client side deterministic routing and transparent redirection | |
KR20030059681A (en) | Method and System for supplying Anycast service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PH PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
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: 2001975281 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2001975281 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 2001975281 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: JP |