WO2006031748A2 - System and method for connection optimization - Google Patents
System and method for connection optimization Download PDFInfo
- Publication number
- WO2006031748A2 WO2006031748A2 PCT/US2005/032445 US2005032445W WO2006031748A2 WO 2006031748 A2 WO2006031748 A2 WO 2006031748A2 US 2005032445 W US2005032445 W US 2005032445W WO 2006031748 A2 WO2006031748 A2 WO 2006031748A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- client
- referenced objects
- domains
- server
- domain
- 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/561—Adding application-functional data or data for application control, e.g. adding metadata
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/61—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Definitions
- This invention relates generally to computer networks and relates more particularly to a system and method for connection optimization in a client-server network.
- a web client for example a web browser, may find that an individual web page or other object takes many seconds to retrieve. Although this may be acceptable in some situations (e.g., a person on-line shopping at home), in some business applications where client productivity is important such a delay in retrieving an object lowers efficiency.
- a web client communicates with a web server using a layered suite of protocols that generally includes the Internet Protocol (IP), which is a connectionless low level protocol for single packet delivery.
- the suite of protocols also generally includes a transport layer protocol, such as Transmission Control Protocol (TCP), that uses IP to create transport connections.
- IP Internet Protocol
- TCP Transmission Control Protocol
- a transport connection appears to the client and the server as a way of sending a stream of data, where the transport protocol provides reliability and sequencing.
- Transport connections are opened by one side, typically the client. Establishing connections is somewhat costly in both time and bandwidth. Maintaining connections involves costs as well, for example memory usage, so connections are typically closed after they have served their purpose or after some delay.
- HTTP HyperText Transfer Protocol
- a URL includes a domain name and a path.
- the domain name identifies the server (or group of servers) where the object resides.
- the path typically identifies a particular web object that resides on the server.
- a web page is generally a structured collection of multiple objects.
- a HyperText Markup Language (HTML) object may reference other objects, for example images, frames, and code objects.
- a web browser at the client can download such referenced or embedded objects and compose them on a single screen that is presented to a user.
- the need to download multiple objects to produce a single page is one cause of poor web performance.
- the number of domains related to a particular web page can influence the number of concurrently used connections, i.e., the level of parallelism, between the client and the server.
- An increase in parallelism can somewhat improve latency but typically also increases load on the client, the server, and the network.
- a system for connection optimization includes a client, a server, and a domain assigner configured to assign referenced objects to additional domains to influence the client to open additional connections.
- the client opens a transport connection to the server to request a referencing object that includes a plurality of referenced objects.
- the domain assigner is configured to dynamically assign the plurality of referenced objects to additional domains when the referencing object is requested.
- the web browser software at the client sees that the referenced objects are assigned to the additional domains and opens additional transport connections to request the referenced objects.
- the domain assigner may assign the plurality of referenced objects to additional domains based on conditions in the network, such as load and available bandwidth.
- the domain assigner is configured to create multiple versions of a referencing object wherein the referenced objects of each version are assigned to different numbers of domains.
- the domain assigner may reside at the server or at an intermediate device in the network. The additional connections may be made to the server that delivered the referencing object, if that server is capable of delivering the referenced objects, or may be made to one or more other servers capable of delivering the referenced objects.
- a method for connection optimization includes establishing a connection between a server and a client, receiving a request for an object that includes referenced objects, determining a desired number of connections between the server and the client, determining a domain assignment for each of the plurality of referenced objects to influence the client to use the desired number of connections, assigning each of the plurality of referenced objects to one of a plurality of domains according to the domain assignment, modifying the object to include identifiers for the plurality of referenced objects in accordance with the domain assignment of each of the plurality of referenced objects to produce a modified object, and sending the modified object to the client.
- the step of determining a domain assignment includes determining a number of domains based on network conditions such as load and available bandwidth.
- FIG. 1 is a block diagram of one embodiment of a computer network, in accordance with the present invention.
- FIG. 2 is a block diagram of one embodiment of an object including referenced objects; in accordance with the invention.
- FIG. 3 is a block diagram of another embodiment of a computer network, in accordance with the invention.
- FIG. 1 is a block diagram of one embodiment of a computer network, in accordance with the invention.
- the network includes, but is not limited to, a client 112, a network 114, and a server 116.
- Client 112 requests and receives objects from server 116 via network 114 using software such as a web browser.
- the objects may include HTML objects, such as web pages.
- client 112 opens a transport layer connection, for example a TCP connection, with server 116.
- Client 112 then sends a request for the object to server 116 over the connection.
- Some objects stored at server 116 reference other objects.
- a referencing object includes identifiers, such as Uniform Resource Locators (URLs), of the referenced objects.
- URLs Uniform Resource Locators
- An identifier of a referenced object includes a domain where the referenced object is located.
- the browser software at client 112 requests the referenced objects according to the identifiers.
- Each of the referenced objects is capable of being assigned to more than one domain.
- Server 116 includes, but is not limited to, a domain assigner 118.
- Domain assigner 118 is configured to assign referenced objects to a domain. When a referenced object is created, it is assigned to an initial domain that is usually the domain of the referencing object.
- domain assigner 118 dynamically assigns referenced objects to a plurality of domains and modifies the identifiers in the referencing object when the referencing object is requested by client 112, producing a modified referencing object.
- Server 116 then sends the modified referencing object to client 112.
- Domain assigner 118 assigns referenced objects to the plurality of domains to influence the number of connections, or level of parallelism, between client 112 and server 118.
- a referencing object may be identified by a URL
- Client 112 will recognize that www2.site.com is a different domain, and will then open additional transport connections to request the referenced objects from the different domain. Since most web browsers are configured to use two connections per domain, client 112 will use four connections to receive the requested referenced objects from server 116.
- Domain assigner 118 may assign referenced objects to a predetermined number of domains or may dynamically determine an appropriate number of domains based on the number of desired connections, or level of parallelism, with client 112. In the preferred embodiment, domain assigner 118 determines an appropriate level of parallelism based on load, priority, or other factors, and then determines a number of domains to achieve that level of parallelism. In one embodiment, domain assigner 118 determines the appropriate number of domains based on historical data captured by server 116 as to how many connections per domain client 112 actually does open.
- domain assigner 118 determines the appropriate number of domains based on a prediction of client behavior according to the browser type used by client 112, which the browser used by client 112 makes known in its request. Domain assigner 118 may also determine a desired number of connections with client 112 based on the bandwidth or latency of connections with client 112, the computing power of client 112, the type and version of the browser software of client 112, or an estimate of any of these factors.
- Domain assigner 118 may also cause client 112 to open a desired number of connections with server 116 by instructing server 116 to respond to a request from client 112 with a specified version of the HTTP protocol. For example, some clients open more connections with a server when using version 1.0 of the HTTP protocol. Thus domain assigner 118 can influence the level of parallelism used by client 112 by instructing server 116 to respond to a request from client 112 using either version 1.0 or version 1.1 of the HTTP protocol. [0017] In another embodiment, domain assigner 118 creates multiple versions of a referencing object, where the referenced objects of each version are assigned to different numbers of domains. Domain assigner 118 creates these multiple versions prior to receiving a request from client 112.
- domain assigner 118 selects the version of the referencing object having the number of domains for the referenced objects that will cause client 112 to open the desired number of connections.
- the number of connections desired between client 112 and server 116 may be a predetermined number or domain assigner 118 may determine the number of desired connections based on the load at server 116. Other methodologies for determining a number of desired connections between client 112 and server 116 are within the scope of the invention.
- domain assigner 118 determines which of the referenced objects to assign to different domains based on different factors, such as the importance assigned to the referenced objects or where the referenced objects occur on a web page.
- Assigning referenced objects to different domains does not usually require additional servers.
- the virtual hosting facility of HTTP allows a single server to be configured to treat multiple domains as aliases for each other. If all of the domains for the referenced objects are subdomains of a single parent domain, then the wildcard configuration option of the Domain Name Service (DNS) may be used to simplify DNS setup.
- DNS Domain Name Service
- server 116 is capable of delivering all of the referenced objects to client 112.
- one or more other servers in network 114 may be capable of delivering all of the referenced objects to client 112, and thus client 112 may open the additional connections with servers other than server 116 to request the referenced objects.
- FIG. 2 is a block diagram of one embodiment of an object 200 including referenced objects, in accordance with the invention.
- Object 200 includes, but is not limited to, referenced objects 212, 214, 216, 218, 220, and 222.
- Each of referenced objects 212-222 may be a text object, an image object, an audio object, a video object, an animation object, a code object (e.g., Java applet), or any other type of object.
- client 112 receives object 200 from server 116, client 112 then requests each of referenced objects 212-222.
- referenced objects 212 and 214 are assigned to the domain of object 200
- referenced objects 216 and 218 are assigned to a second domain
- referenced objects 220 and 222 are assigned to a third domain.
- client 112 receives object 200 from server 116
- client 112 recognizes that the identifiers for referenced objects 216-222 point to the second and third domains.
- Client 112 opens at least one transport layer connection with a server capable of servicing the second and third domains to request referenced objects 216-222, for instance server 116. Since more than one referenced object is assigned to each of the different domains, client 112 may open more than one transport layer connection for each of the different domains.
- client 112 may use six parallel connections (two per domain) with server 116. By using six transport connections instead of two, client 112 receives referenced objects 212-222 and presents object 200 with its referenced objects to a user with less latency.
- client 112 when a client wishes to open a transport layer connection to a domain, the client will use a look-up system such as DNS to discover one or more servers capable of servicing that domain and will open a transport connection to one of these servers.
- FIG. 3 is a block diagram of another embodiment of a computer network, in accordance with the invention.
- the network of FIG. 3 includes, but is not limited to, a client 312, a network 314, an intermediate device 316, a network 320, and a server 322.
- Intermediate device 316 may be any type of intermediate network device, for example a load balancer or web proxy.
- intermediate device 316 may be embodied as a dedicated performance enhancing device. Examples of such specialized nodes are disclosed in U.S. Patent Application No. 09/534,321, entitled “Method for High-Performance Delivery of Web Content," filed March 24, 2000, which is hereby incorporated by reference in its entirety.
- Intermediate device 316 includes, but is not limited to, a domain assigner 318.
- Domain assigner 318 is configured to receive a referencing object from server 322 and dynamically assign its referenced objects to at least one additional domain that is different than the domain of the referencing object as seen by client 312 to influence the number of connections used by client 312.
- Intermediate device 316 sends the resulting modified referencing object to client 312.
- client 312 opens at least one additional connection with intermediate device 316.
- intermediate device 316 includes a cache that stores content received from server 322. Domain assigner 318 can dynamically assign referenced objects of cached referencing objects to additional domains.
- domain assigner 318 can create different versions of a cached referencing object, where the referenced objects of each version are assigned to different numbers of domains.
- one version of a cached referencing object may include ten referenced objects where half of the referenced objects are assigned to one domain and half are assigned to another domain.
- the ten referenced objects may be assigned among three different domains.
- Domain assigner 318 determines which version of the cached referencing object to send to client 312 depending on the number of connections desired between client 312 and intermediate device 316.
- the number of connections desired between client 312 and intermediate device may be a predetermined number or domain assigner 318 may determine the number of desired connections based on the load at intermediate device 316.
- Other methodologies for determining a number of desired connections between client 312 and intermediate device 316 are within the scope of the invention.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Library & Information Science (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
Claims
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA002580008A CA2580008A1 (en) | 2004-09-10 | 2005-09-09 | System and method for connection optimization |
JP2007531430A JP4789942B2 (en) | 2004-09-10 | 2005-09-09 | Apparatus and method for optimizing connections |
AU2005284983A AU2005284983A1 (en) | 2004-09-10 | 2005-09-09 | System and method for connection optimization |
EP05795115A EP1787211A4 (en) | 2004-09-10 | 2005-09-09 | System and method for connection optimization |
BRPI0515098-1A BRPI0515098A (en) | 2004-09-10 | 2005-09-09 | method and system for optimizing connections |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/937,929 | 2004-09-10 | ||
US10/937,929 US20060059246A1 (en) | 2004-09-10 | 2004-09-10 | System and method for connection optimization |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2006031748A2 true WO2006031748A2 (en) | 2006-03-23 |
WO2006031748A3 WO2006031748A3 (en) | 2009-04-23 |
Family
ID=36035394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2005/032445 WO2006031748A2 (en) | 2004-09-10 | 2005-09-09 | System and method for connection optimization |
Country Status (10)
Country | Link |
---|---|
US (1) | US20060059246A1 (en) |
EP (1) | EP1787211A4 (en) |
JP (1) | JP4789942B2 (en) |
CN (1) | CN101438263A (en) |
AU (1) | AU2005284983A1 (en) |
BR (1) | BRPI0515098A (en) |
CA (1) | CA2580008A1 (en) |
SG (1) | SG155902A1 (en) |
WO (1) | WO2006031748A2 (en) |
ZA (1) | ZA200702589B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016520231A (en) * | 2013-05-22 | 2016-07-11 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | Loading image information |
Families Citing this family (117)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7752266B2 (en) | 2001-10-11 | 2010-07-06 | Ebay Inc. | System and method to facilitate translation of communications between entities over a network |
US8078505B2 (en) | 2002-06-10 | 2011-12-13 | Ebay Inc. | Method and system for automatically updating a seller application utilized in a network-based transaction facility |
US20030229554A1 (en) * | 2002-06-10 | 2003-12-11 | Veres Robert Dean | Method and system for composing transaction listing descriptions for use in a network-based transaction facility |
US8639782B2 (en) | 2006-08-23 | 2014-01-28 | Ebay, Inc. | Method and system for sharing metadata between interfaces |
US8799218B2 (en) * | 2006-12-01 | 2014-08-05 | Ebay Inc. | Business channel synchronization |
US7720936B2 (en) * | 2007-03-12 | 2010-05-18 | Citrix Systems, Inc. | Systems and methods of freshening and prefreshening a DNS cache |
US8037126B2 (en) * | 2007-03-12 | 2011-10-11 | Citrix Systems, Inc. | Systems and methods of dynamically checking freshness of cached objects based on link status |
US8701010B2 (en) * | 2007-03-12 | 2014-04-15 | Citrix Systems, Inc. | Systems and methods of using the refresh button to determine freshness policy |
US8504775B2 (en) | 2007-03-12 | 2013-08-06 | Citrix Systems, Inc | Systems and methods of prefreshening cached objects based on user's current web page |
US8074028B2 (en) | 2007-03-12 | 2011-12-06 | Citrix Systems, Inc. | Systems and methods of providing a multi-tier cache |
US8103783B2 (en) | 2007-03-12 | 2012-01-24 | Citrix Systems, Inc. | Systems and methods of providing security and reliability to proxy caches |
US7584294B2 (en) * | 2007-03-12 | 2009-09-01 | Citrix Systems, Inc. | Systems and methods for prefetching objects for caching using QOS |
US7783757B2 (en) * | 2007-03-12 | 2010-08-24 | Citrix Systems, Inc. | Systems and methods of revalidating cached objects in parallel with request for object |
US7809818B2 (en) * | 2007-03-12 | 2010-10-05 | Citrix Systems, Inc. | Systems and method of using HTTP head command for prefetching |
US7991910B2 (en) | 2008-11-17 | 2011-08-02 | Amazon Technologies, Inc. | Updating routing information based on client location |
US8028090B2 (en) | 2008-11-17 | 2011-09-27 | Amazon Technologies, Inc. | Request routing utilizing client location information |
US8156243B2 (en) | 2008-03-31 | 2012-04-10 | Amazon Technologies, Inc. | Request routing |
US8533293B1 (en) | 2008-03-31 | 2013-09-10 | Amazon Technologies, Inc. | Client side cache management |
US8447831B1 (en) | 2008-03-31 | 2013-05-21 | Amazon Technologies, Inc. | Incentive driven content delivery |
US7962597B2 (en) | 2008-03-31 | 2011-06-14 | Amazon Technologies, Inc. | Request routing based on class |
US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
US8321568B2 (en) | 2008-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Content management |
US8601090B1 (en) | 2008-03-31 | 2013-12-03 | Amazon Technologies, Inc. | Network resource identification |
US7970820B1 (en) | 2008-03-31 | 2011-06-28 | Amazon Technologies, Inc. | Locality based content distribution |
US9912740B2 (en) | 2008-06-30 | 2018-03-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US7925782B2 (en) | 2008-06-30 | 2011-04-12 | Amazon Technologies, Inc. | Request routing using network computing components |
US9407681B1 (en) | 2010-09-28 | 2016-08-02 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US8122124B1 (en) | 2008-09-29 | 2012-02-21 | Amazon Technologies, Inc. | Monitoring performance and operation of data exchanges |
US8051166B1 (en) | 2008-09-29 | 2011-11-01 | Amazon Technologies, Inc. | Service provider optimization of content management |
US8117306B1 (en) | 2008-09-29 | 2012-02-14 | Amazon Technologies, Inc. | Optimizing content management |
US8286176B1 (en) | 2008-09-29 | 2012-10-09 | Amazon Technologies, Inc. | Optimizing resource configurations |
US7865594B1 (en) | 2008-09-29 | 2011-01-04 | Amazon Technologies, Inc. | Managing resources consolidation configurations |
US7930393B1 (en) | 2008-09-29 | 2011-04-19 | Amazon Technologies, Inc. | Monitoring domain allocation performance |
US8316124B1 (en) | 2008-09-29 | 2012-11-20 | Amazon Technologies, Inc. | Managing network data display |
US8732309B1 (en) | 2008-11-17 | 2014-05-20 | Amazon Technologies, Inc. | Request routing utilizing cost information |
US8060616B1 (en) | 2008-11-17 | 2011-11-15 | Amazon Technologies, Inc. | Managing CDN registration by a storage provider |
US8521880B1 (en) | 2008-11-17 | 2013-08-27 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US8065417B1 (en) | 2008-11-17 | 2011-11-22 | Amazon Technologies, Inc. | Service provider registration by a content broker |
US8122098B1 (en) | 2008-11-17 | 2012-02-21 | Amazon Technologies, Inc. | Managing content delivery network service providers by a content broker |
US8073940B1 (en) | 2008-11-17 | 2011-12-06 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US7917618B1 (en) | 2009-03-24 | 2011-03-29 | Amazon Technologies, Inc. | Monitoring web site content |
US8688837B1 (en) | 2009-03-27 | 2014-04-01 | Amazon Technologies, Inc. | Dynamically translating resource identifiers for request routing using popularity information |
US8412823B1 (en) | 2009-03-27 | 2013-04-02 | Amazon Technologies, Inc. | Managing tracking information entries in resource cache components |
US8756341B1 (en) | 2009-03-27 | 2014-06-17 | Amazon Technologies, Inc. | Request routing utilizing popularity information |
US8521851B1 (en) | 2009-03-27 | 2013-08-27 | Amazon Technologies, Inc. | DNS query processing using resource identifiers specifying an application broker |
US8782236B1 (en) | 2009-06-16 | 2014-07-15 | Amazon Technologies, Inc. | Managing resources using resource expiration data |
US8397073B1 (en) | 2009-09-04 | 2013-03-12 | Amazon Technologies, Inc. | Managing secure content in a content delivery network |
US8433771B1 (en) | 2009-10-02 | 2013-04-30 | Amazon Technologies, Inc. | Distribution network with forward resource propagation |
AU2010328326B2 (en) * | 2009-12-07 | 2016-12-01 | Robert Buffone | System and method for website performance optimization and internet traffic processing |
US8331371B2 (en) | 2009-12-17 | 2012-12-11 | Amazon Technologies, Inc. | Distributed routing architecture |
US8331370B2 (en) | 2009-12-17 | 2012-12-11 | Amazon Technologies, Inc. | Distributed routing architecture |
US9495338B1 (en) | 2010-01-28 | 2016-11-15 | Amazon Technologies, Inc. | Content distribution network |
US8468247B1 (en) | 2010-09-28 | 2013-06-18 | Amazon Technologies, Inc. | Point of presence management in request routing |
US10097398B1 (en) | 2010-09-28 | 2018-10-09 | Amazon Technologies, Inc. | Point of presence management in request routing |
US8819283B2 (en) | 2010-09-28 | 2014-08-26 | Amazon Technologies, Inc. | Request routing in a networked environment |
US8577992B1 (en) | 2010-09-28 | 2013-11-05 | Amazon Technologies, Inc. | Request routing management based on network components |
US8924528B1 (en) | 2010-09-28 | 2014-12-30 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US9712484B1 (en) | 2010-09-28 | 2017-07-18 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
US8938526B1 (en) | 2010-09-28 | 2015-01-20 | Amazon Technologies, Inc. | Request routing management based on network components |
US8930513B1 (en) | 2010-09-28 | 2015-01-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US9003035B1 (en) | 2010-09-28 | 2015-04-07 | Amazon Technologies, Inc. | Point of presence management in request routing |
US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
US8452874B2 (en) | 2010-11-22 | 2013-05-28 | Amazon Technologies, Inc. | Request routing processing |
US9391949B1 (en) | 2010-12-03 | 2016-07-12 | Amazon Technologies, Inc. | Request routing processing |
US8626950B1 (en) | 2010-12-03 | 2014-01-07 | Amazon Technologies, Inc. | Request routing processing |
US8620999B1 (en) * | 2011-01-12 | 2013-12-31 | Israel L'Heureux | Network resource modification for higher network connection concurrence |
US10467042B1 (en) | 2011-04-27 | 2019-11-05 | Amazon Technologies, Inc. | Optimized deployment based upon customer locality |
US8904009B1 (en) | 2012-02-10 | 2014-12-02 | Amazon Technologies, Inc. | Dynamic content delivery |
US10021179B1 (en) | 2012-02-21 | 2018-07-10 | Amazon Technologies, Inc. | Local resource delivery network |
US9083743B1 (en) | 2012-03-21 | 2015-07-14 | Amazon Technologies, Inc. | Managing request routing information utilizing performance information |
US10623408B1 (en) | 2012-04-02 | 2020-04-14 | Amazon Technologies, Inc. | Context sensitive object management |
US9154551B1 (en) | 2012-06-11 | 2015-10-06 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
CN102810120B (en) * | 2012-08-10 | 2017-12-01 | 北京新岸线移动多媒体技术有限公司 | A kind of method and device for accelerating the loading of browser resource |
US9525659B1 (en) | 2012-09-04 | 2016-12-20 | Amazon Technologies, Inc. | Request routing utilizing point of presence load information |
US9323577B2 (en) | 2012-09-20 | 2016-04-26 | Amazon Technologies, Inc. | Automated profiling of resource usage |
US9135048B2 (en) | 2012-09-20 | 2015-09-15 | Amazon Technologies, Inc. | Automated profiling of resource usage |
US10205698B1 (en) | 2012-12-19 | 2019-02-12 | Amazon Technologies, Inc. | Source-dependent address resolution |
US9953037B1 (en) * | 2013-03-08 | 2018-04-24 | Amazon Technologies, Inc. | Accelerating file downloads |
US9294391B1 (en) | 2013-06-04 | 2016-03-22 | Amazon Technologies, Inc. | Managing network computing components utilizing request routing |
US9769248B1 (en) | 2014-12-16 | 2017-09-19 | Amazon Technologies, Inc. | Performance-based content delivery |
US10027739B1 (en) | 2014-12-16 | 2018-07-17 | Amazon Technologies, Inc. | Performance-based content delivery |
US10091096B1 (en) | 2014-12-18 | 2018-10-02 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10033627B1 (en) | 2014-12-18 | 2018-07-24 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10097448B1 (en) | 2014-12-18 | 2018-10-09 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10311372B1 (en) | 2014-12-19 | 2019-06-04 | Amazon Technologies, Inc. | Machine learning based content delivery |
US10225365B1 (en) | 2014-12-19 | 2019-03-05 | Amazon Technologies, Inc. | Machine learning based content delivery |
US10311371B1 (en) | 2014-12-19 | 2019-06-04 | Amazon Technologies, Inc. | Machine learning based content delivery |
US10225326B1 (en) | 2015-03-23 | 2019-03-05 | Amazon Technologies, Inc. | Point of presence based data uploading |
US9819567B1 (en) | 2015-03-30 | 2017-11-14 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9887931B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9887932B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9832141B1 (en) | 2015-05-13 | 2017-11-28 | Amazon Technologies, Inc. | Routing based request correlation |
US10616179B1 (en) | 2015-06-25 | 2020-04-07 | Amazon Technologies, Inc. | Selective routing of domain name system (DNS) requests |
US10097566B1 (en) | 2015-07-31 | 2018-10-09 | Amazon Technologies, Inc. | Identifying targets of network attacks |
US9742795B1 (en) | 2015-09-24 | 2017-08-22 | Amazon Technologies, Inc. | Mitigating network attacks |
US9794281B1 (en) | 2015-09-24 | 2017-10-17 | Amazon Technologies, Inc. | Identifying sources of network attacks |
US9774619B1 (en) | 2015-09-24 | 2017-09-26 | Amazon Technologies, Inc. | Mitigating network attacks |
US10270878B1 (en) | 2015-11-10 | 2019-04-23 | Amazon Technologies, Inc. | Routing for origin-facing points of presence |
US10049051B1 (en) | 2015-12-11 | 2018-08-14 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10257307B1 (en) | 2015-12-11 | 2019-04-09 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10348639B2 (en) | 2015-12-18 | 2019-07-09 | Amazon Technologies, Inc. | Use of virtual endpoints to improve data transmission rates |
US10075551B1 (en) | 2016-06-06 | 2018-09-11 | Amazon Technologies, Inc. | Request management for hierarchical cache |
US10110694B1 (en) | 2016-06-29 | 2018-10-23 | Amazon Technologies, Inc. | Adaptive transfer rate for retrieving content from a server |
US9992086B1 (en) | 2016-08-23 | 2018-06-05 | Amazon Technologies, Inc. | External health checking of virtual private cloud network environments |
US10033691B1 (en) | 2016-08-24 | 2018-07-24 | Amazon Technologies, Inc. | Adaptive resolution of domain name requests in virtual private cloud network environments |
US10505961B2 (en) | 2016-10-05 | 2019-12-10 | Amazon Technologies, Inc. | Digitally signed network address |
US10372499B1 (en) | 2016-12-27 | 2019-08-06 | Amazon Technologies, Inc. | Efficient region selection system for executing request-driven code |
US10831549B1 (en) | 2016-12-27 | 2020-11-10 | Amazon Technologies, Inc. | Multi-region request-driven code execution system |
US10938884B1 (en) | 2017-01-30 | 2021-03-02 | Amazon Technologies, Inc. | Origin server cloaking using virtual private cloud network environments |
US10503613B1 (en) | 2017-04-21 | 2019-12-10 | Amazon Technologies, Inc. | Efficient serving of resources during server unavailability |
US11075987B1 (en) | 2017-06-12 | 2021-07-27 | Amazon Technologies, Inc. | Load estimating content delivery network |
US10447648B2 (en) | 2017-06-19 | 2019-10-15 | Amazon Technologies, Inc. | Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP |
US10742593B1 (en) | 2017-09-25 | 2020-08-11 | Amazon Technologies, Inc. | Hybrid content request routing system |
US10812448B2 (en) * | 2018-01-26 | 2020-10-20 | Citrix Systems, Inc. | Split-tunneling for clientless SSL-VPN sessions with zero-configuration |
US10592578B1 (en) | 2018-03-07 | 2020-03-17 | Amazon Technologies, Inc. | Predictive content push-enabled content delivery network |
US10862852B1 (en) | 2018-11-16 | 2020-12-08 | Amazon Technologies, Inc. | Resolution of domain name requests in heterogeneous network environments |
US11025747B1 (en) | 2018-12-12 | 2021-06-01 | Amazon Technologies, Inc. | Content request pattern-based routing system |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6718550B1 (en) * | 1996-06-26 | 2004-04-06 | Sun Microsystems, Inc. | Method and apparatus for improving the performance of object invocation |
US6061738A (en) * | 1997-06-27 | 2000-05-09 | D&I Systems, Inc. | Method and system for accessing information on a network using message aliasing functions having shadow callback functions |
US8375127B1 (en) * | 1999-03-31 | 2013-02-12 | International Business Machines Corporation | Method and system for using virtual URLs for load balancing |
JP2001084200A (en) * | 1999-09-16 | 2001-03-30 | Matsushita Electric Ind Co Ltd | Permanent connection www server device |
US7131057B1 (en) * | 2000-02-04 | 2006-10-31 | International Business Machines Corporation | Method and system for loose coupling of document and domain knowledge in interactive document configuration |
AU2001253533A1 (en) * | 2000-04-17 | 2001-10-30 | Circadence Corporation | System and method for reformatting data traffic |
AU2001255781A1 (en) * | 2000-04-28 | 2001-11-12 | Inceptor, Inc. | Method of and system for enhanced web page delivery |
US6922685B2 (en) * | 2000-05-22 | 2005-07-26 | Mci, Inc. | Method and system for managing partitioned data resources |
US7398314B2 (en) * | 2001-08-08 | 2008-07-08 | Flash Networks Ltd | System and a method for accelerating communication of TCP/IP based content through the use of fake host names |
JP2004206172A (en) * | 2002-12-20 | 2004-07-22 | Sanyo Electric Co Ltd | Method and apparatus for controlling communication |
-
2004
- 2004-09-10 US US10/937,929 patent/US20060059246A1/en not_active Abandoned
-
2005
- 2005-09-09 EP EP05795115A patent/EP1787211A4/en not_active Withdrawn
- 2005-09-09 BR BRPI0515098-1A patent/BRPI0515098A/en not_active IP Right Cessation
- 2005-09-09 ZA ZA200702589A patent/ZA200702589B/en unknown
- 2005-09-09 CN CNA2005800379214A patent/CN101438263A/en active Pending
- 2005-09-09 SG SG200905981-7A patent/SG155902A1/en unknown
- 2005-09-09 AU AU2005284983A patent/AU2005284983A1/en not_active Abandoned
- 2005-09-09 JP JP2007531430A patent/JP4789942B2/en not_active Expired - Fee Related
- 2005-09-09 WO PCT/US2005/032445 patent/WO2006031748A2/en active Application Filing
- 2005-09-09 CA CA002580008A patent/CA2580008A1/en not_active Abandoned
Non-Patent Citations (1)
Title |
---|
See references of EP1787211A4 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016520231A (en) * | 2013-05-22 | 2016-07-11 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | Loading image information |
Also Published As
Publication number | Publication date |
---|---|
US20060059246A1 (en) | 2006-03-16 |
WO2006031748A3 (en) | 2009-04-23 |
JP4789942B2 (en) | 2011-10-12 |
ZA200702589B (en) | 2010-03-31 |
BRPI0515098A (en) | 2008-07-08 |
AU2005284983A1 (en) | 2006-03-23 |
SG155902A1 (en) | 2009-10-29 |
JP2008512799A (en) | 2008-04-24 |
EP1787211A4 (en) | 2011-08-03 |
CN101438263A (en) | 2009-05-20 |
CA2580008A1 (en) | 2006-03-23 |
EP1787211A2 (en) | 2007-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20060059246A1 (en) | System and method for connection optimization | |
JP4755590B2 (en) | Method, server system, and program for processing request asynchronously | |
US9608957B2 (en) | Request routing using network computing components | |
US7861174B2 (en) | Method and system for assembling concurrently-generated content | |
US20160308959A1 (en) | Latency measurement in resource requests | |
US8495170B1 (en) | Service request management | |
US20020069241A1 (en) | Method and apparatus for client-side proxy selection | |
US8620999B1 (en) | Network resource modification for higher network connection concurrence | |
CN111314499B (en) | Domain name proxy method, device, equipment and readable storage medium | |
US11064043B2 (en) | System and method for providing an adjunct device in a content distribution network | |
CN101848137B (en) | Load balancing method and system applied to three-layer network | |
WO2002080014A1 (en) | Assembling concurrently-generated personalized web pages | |
WO2000068823A2 (en) | Method and apparatus for proxy server cookies | |
CN1174322C (en) | Method and system for high speed buffer store management using admittance control, and computer program products | |
EP1325424A2 (en) | Method and system for assembling concurrently-generated content | |
WO2002025463A1 (en) | Method and apparatus for dynamic determination of optimum connection of a client to content servers | |
US20030217147A1 (en) | Directing a client computer to a least network latency server site | |
WO2001089170A2 (en) | Method for state preservation in http-based communications | |
US8756272B1 (en) | Processing encoded content | |
Rhee et al. | Heuristic connection management for improving server-side performance on the Web | |
Rhee et al. | Efficient connection management for Web applications | |
Park et al. | An implementation of the client-based distributed web caching system | |
EP1360598A1 (en) | Assembling concurrently-generated personalized web pages |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200580037921.4 Country of ref document: CN |
|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
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: 2005795115 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2580008 Country of ref document: CA Ref document number: 2007531430 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2005284983 Country of ref document: AU |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1456/CHENP/2007 Country of ref document: IN |
|
ENP | Entry into the national phase |
Ref document number: 2005284983 Country of ref document: AU Date of ref document: 20050909 Kind code of ref document: A |
|
WWP | Wipo information: published in national office |
Ref document number: 2005284983 Country of ref document: AU |
|
WWP | Wipo information: published in national office |
Ref document number: 2005795115 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: PI0515098 Country of ref document: BR |