Overview of Redirection Protocols

20.3 Overview of Redirection Protocols

The goal of redirection is to send HTTP messages to available web servers as quickly as possible. The direction that an HTTP message takes on its way through the Internet is affected by the HTTP applications and routing devices it passes from, through, and toward. For example:

                The browser application that creates the client's message could be configured to send it to a proxy server.

                DNS resolvers choose the IP address that is used for addressing the message. This IP address can be different for different clients in different geographical locations.

                As the message passes through networks, it is divided into addressed packets; switches and routers examine the TCP/IP addressing on the packets and make decisions about routing the packets on that basis.

                Web servers can bounce requests back to different web servers with HTTP redirects.

Browser configuration, DNS, TCP/IP routing, and HTTP all provide mechanisms for redirecting messages. Notice that some methods , such as browser configuration, make sense only for redirecting traffic to proxies, while others, such as DNS redirection, can be used to send traffic to any server.

Table 20-1 summarizes the redirection methods used to redirect messages to servers, each of which is discussed later in this chapter.

Table 20-1. General redirection methods

Mechanism

How it works

Basis for rerouting

Limitations

HTTP redirection

Initial HTTP request goes to a first web server that chooses a "best" web server to serve the content. The first web server sends the client an HTTP redirect to the chosen server. The client resends the request to the chosen server.

Many options, from round- robin load balancing, to minimizing latency, to choosing the shortest path .

Can be slowevery transaction involves the extra redirect step. Also, the first server must be able to handle the request load.

DNS redirection

DNS server decides which IP address, among several, to return for the hostname in the URL.

Many options, from round-robin load balancing, to minimizing latency, to choosing the shortest path.

Need to configure DNS server.

Anycast addressing

Several servers use the same IP address. Each server masquerades as a backbone router. The other routers send packets addressed to the shared IP to the nearest server (believing they are sending packets to the nearest router).

Routers use built-in shortest-path routing capabilities.

Need to own/configure routers. Risks address conflicts. Established TCP connections can break if routing changes and packets associated with a connection get sent to different servers.

IP MAC forwarding

A network element such as a switch or router reads a packet's destination address; if the packet should be redirected, the switch gives the packet the destination MAC address of a server or proxy.

Save bandwidth and improve QOS. Load balance.

Server or proxy must be one hop away.

IP address forwarding

Layer-4 switch evaluates a packet's destination port and changes the IP address of a redirect packet to that of a proxy or mirrored server.

Save bandwidth and improve QOS. Load balance.

IP address of the client can be lost to the server/proxy.

Table 20-2 summarizes the redirection methods used to redirect messages to proxy servers.

Table 20-2. Proxy and cache redirection techniques

Mechanism

How it works

Basis for rerouting

Limitations

Explicit browser configuration

Web browser is configured to send HTTP messages to a nearby proxy, usually a cache. The configuration can be done by the end user or by a service that manages the browser.

Save bandwidth and improve QOS. Load balance.

Depends on ability to configure the browser.

Proxy auto-configuration (PAC)

Web browser retrieves a PAC file from a configuration server. The PAC file tells the browser what proxy to use for each URL.

Save bandwidth and improve QOS. Load balance.

Browser must be configured to query the configuration server.

Web ProxyAutodiscovery Protocol (WPAD)

Web browser asks a configuration server for the URL of a PAC file. Unlike PAC alone, the browser does not have to be configured with a specific configuration server.

The configuration server bases the URL on information in client HTTP request headers. Load balance.

Only a few browsers support WPAD.

Web Cache Coordination Protocol (WCCP)

Router evaluates a packet's destination address and encapsulates redirect packets with the IP address of a proxy or mirrored server. Works with many existing routers. Packet can be encapsulated, so the client's IP address is not lost.

Save bandwidth and improve QOS. Load balance.

Must use routers that support WCCP. Some topological limitations.

Internet Cache Protocol (ICP)

A proxy cache can query a group of sibling caches for requested content. Also supports cache hierarchies.

Obtaining content from a sibling or parent cache is faster than applying to the origin server.

False cache hits can arise because only the URL is used to request content.

Cache Array Routing Protocol (CARP)

A proxy cache hashing protocol. Allows a cache to forward a request to a parent cache. Unlike with ICP, the content on the caches is disjoint , and the group of caches acts as a single large cache.

Obtaining content from a nearby peer cache is faster than applying to the origin server.

CARP cannot support sibling relationships. All CARP clients must agree on the configuration; otherwise , different clients will send the same URI to different parents, reducing hit ratios.

Hyper Text Caching Protocol (HTCP)

Participating proxy caches can query a group of sibling caches for requested content. Supports HTTP 1.0 and 1.1 headers to fine-tune cache queries.

Obtaining content from a sibling or parent cache is faster than applying to the origin server.

 

 



HTTP. The Definitive Guide
HTTP: The Definitive Guide
ISBN: 1565925092
EAN: 2147483647
Year: 2001
Pages: 294

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net