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.
Legend:
Client browser
Netra j proxy cache server A
Netra j proxy cache server B
Netra j proxy cache server C
HTTP Requests/Responses
Firewall
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:
Machine A checks with its parent, machine B.
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.
Machine C returns the object--obtained from a remote web server or its local cache--to machine B.
Machine B returns the object to machine A.
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.
Legend:
Client browser
Netra j proxy cache server A
Netra j proxy cache server B
Netra j proxy cache server C
Netra j proxy cache server D
HTTP Requests/Responses
Firewall
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.