Netra j 3.0 Administrator's Guide

Hierarchies

With the Netra j proxy cache server you can create hierarchies of proxy cache servers simply by pointing proxy cache servers to succeeding proxy cache servers as you proceed toward a firewall.

The following figure illustrates a simple hierarchy of proxy cache servers.

Figure 10-1 Simple Hierarchy

Graphic

Legend:

  1. Client browser

  2. Netra j proxy cache server A

  3. Netra j proxy cache server B

  4. Netra j proxy cache server C

  5. HTTP Requests/Responses

  6. Firewall

  7. Internet

Browser (1) points to proxy A. Proxy B is parent to A. Proxy C is parent to B.

In this sample hierarchy, assume the client browser requests a web object that originated somewhere in the Internet and is, at the moment, not in Netra j proxy cache server A's cache. The following sequence ensues:

  1. Machine A checks with its parent, machine B.

  2. Likewise, B does not have the object in its cache and checks its parent, machine C. If C does not have the object, it goes out through the firewall to the web server to obtain it.

  3. Machine C returns the object--obtained from a remote web server or its local cache--to machine B.

  4. Machine B returns the object to machine A.

  5. Machine A returns the object to the requesting client.

If the object is cacheable, each proxy stores a copy upon receipt. Note that communication between parent proxies is over TCP connections.

Netra j proxy cache software also supports a variation of the preceding scenario. This variation is shown in the following figure.

Figure 10-2 Multiple Parent Proxies

Graphic

Legend:

  1. Client browser

  2. Netra j proxy cache server A

  3. Netra j proxy cache server B

  4. Netra j proxy cache server C

  5. Netra j proxy cache server D

  6. HTTP Requests/Responses

  7. Firewall

  8. Internet

Browser (1) points to A. Proxy B and proxy C are parents to A. Proxy D is parent to B and C.

In this example, if a client requests an object of its proxy server, machine A, that is not in A's cache, machine A relays the request to its two parents, machines B and C. If one of the parents has the object, it returns the object to A. If neither has the object, machine A forwards the request to the parent that responds faster, assuming that machine to be less loaded and/or have a better network connection.

If you configure multiple parents, the Netra j proxy cache software enables you to give greater weight to one or the other, or to set up one as the default. When no parent (of multiple parents) has a requested object, the "child" proxy always forwards the request to the default parent.