Proxy Server Design  «Prev  Next»

Lesson 5Organizing proxy servers in a hierarchy
ObjectiveDescribe how to improve Proxy Server performance by placing proxy servers in a hierarchy and using local caching.

Organizing Proxy Servers in Hierarchy

You can improve the performance for Proxy Server client requests by organizing multiple proxy servers in a hierarchy, and by using Proxy Server caching. This hierarchical approach is more frequently referred to as proxy chaining. Proxy chaining allows you to take advantage of multiple proxy servers that are configured in a chain, rather than in an array.

Proxy Server example

For example, your organization has its main headquarters in Dallas, and has remote offices in San Francisco and Las Vegas. There is a single Internet connection for the company, which is situated on the proxy server in Dallas. The remote offices connect to the Dallas office via permanent 56 kbps WAN links. A proxy chain allows you to take advantage of the Web cache located at the Dallas office and local Web caches at the remote sites. When a user at the remote site attempts to access an Internet resource, the request is sent to the remote site's proxy server. If the object is not contained on the local proxy server, the local proxy server will send the request to the proxy server higher up in the chain, which in this case is the proxy server in Dallas. If the requested Web object is located in the Dallas proxy server's Web cache, the Dallas proxy server will retrieve the object from cache, and return it to the remote proxy server. The remote proxy server places the object in its cache, and returns it to the user that made the initial request.
Later, when another user at the same remote site attempts to access the same object, the request will be sent to the remote proxy server. This time, the object is contained in the remote proxy server's Web cache. The remote proxy server retrieves the object from its cache and returns it to the user that requested it. Notice how the WAN link did not need to be utilized during the second request for the same object. This is one of the advantages of using a proxy chain. You can reduce the amount of traffic on a slow or congested WAN link. You can also place proxy servers at the edges of subnets and configure them in a chain as well. In this case, you can reduce the amount of network utilization on the organization's network backbone.
As you can see, proxy chains allow you to reduce traffic on the links between the members of the chain, as well as overall utilization of the Internet connection. Because all users of the organization have access to the proxy server at the top of the chain, the cache can grow very large, which reduces the amount of Internet network link significantly.

How to define Hierarchy

To define the hierarchy or proxy chain, you use a proxy array to connect to the Internet and you use individual computers running Proxy Server or proxy arrays at remote locations.

The benefit of proxy chains

By placing proxy servers or proxy arrays at remote locations to manage cached Web objects, you increase the performance for the Proxy Server clients within the same location. Indeed, Proxy Server clients access cached Web objects within the same location to reduce the utilization of two aspects of the network:
  1. Wide area network (WAN) connections between locations within an organization
  2. The Internet connection for the organization
You should include a proxy array at remote locations if the number of users, or need for availability, requires additional proxy servers.

Routing requests to another proxy server or the Internet

The location of the Web object will determine how exactly you configure your routing requests. If a Web object is not cached on a proxy server or proxy array within the same location, specify that the request be forwarded to the proxy array connected to the Internet as demonstrated in the image below.
When the Web object is cached on the proxy array connected to the Internet, the object is retrieved from the cache:
  1. Through the proxy server or array at the remote location
  2. Then sent to the Proxy Server client
If the Web object is not cached on the proxy array connected to the Internet, the object is retrieved from the Internet:
  1. Through the proxy array connected to the Internet
  2. Through the proxy server or array at the remote location
  3. Then sent to the Proxy Server client
In the next lesson, you will learn the third strategy for optimizing Proxy Server design: distributing IP traffic across multiple proxy servers.

Organize Proxy Servers Hierarchy-Exercise

Click the Exercise link below to check your understanding of the circumstances that affect organization strategies.
Organize Proxy Servers Hierarchy-Exercise