Designing Your Cache Network
All CacheFlow products can operate as simultaneous forward, transparent,
and reverse proxies. CacheFlow provides detailed, product-specific instructions
for transparent redirection using L4 switches from Alteon, ArrowPoint,
or Foundry, Cisco routers with WCCP v1 or v2, or Bay routers with packet
filters. We did not spot documentation describing reverse proxy install
considerations. We tested the 545 in forward proxy mode only, since our
evaluation unit included just one Ethernet.
CacheFlow offers more client browser assistance
than most products. In proxy mode, browsers must be reconfigured to
redirect HTTP to the cache. Configuration can be performed manually
or automated with a PAC file. The CacheFlow GUI assists with PAC file
creation and presents step-by-step instructions (below, left)
to guide end users through browser configuration. A default PAC file
redirects HTTP and HTTPS to the CacheFlow's proxy port. This file
can be customized; for example, to cache FTP and bypass specified
target URLs (below, right) .
The only hitch we encountered: put your custom PAC file on a server that
recognizes this MIME type. A Client Authentication list can also be installed
to limit browser access to the proxy. Many ISPs prefer transparent mode,
but proxy mode can reduce up-front investment and confine cache use to those
purchasing premium services. CacheFlow's browser assistance makes large
scale roll-out of proxy mode conceivable.
CacheFlow offers three alternatives
for workload distribution in a cache hierarchy: simple forwarding,
advanced forwarding, and ICP forwarding. Simple forwarding just redirects
missed requests to a primary or alternate Gateway (right).
The gateway can be any other cache, since there is no inter-cache
protocol involved. A Direct / Deny list can be used with simple forwarding
to deny (block) requests or avoid redirection for selected IP addresses
and subnets.
Advanced Forwarding designates "Forward Hosts" as default or backup,
and organizes them into groups. Missed requests are balanced across each
group; hashing ensures that each object is always requested from the same
member. Requests that satisfy a URL regular expression, domain name, or
IP address/mask can be forwarded, sent directly to the origin server,
or denied.
Finally, hierarchies can use ICP for more efficient communication between
parent, peer, and child. Like Advanced Forwarding, ICP Forwarding can
be bypassed or denied by domain name and IP address. However, ICP allows
a child to simultaneously check all siblings and parents; only if the
content cannot be located will it be retrieved by one parent.
There are no CacheOS mechanisms for clustering into high-availability
configurations. Instead, CacheFlow recommends that multiple caches be
used in transparent mode for redundancy and load balancing. CacheOS 2.2.07
(a maintenance release scheduled for late January) will allow a cache
with multiple interfaces on the same subnet to "fail over" if the adapter
used to reach the default gateway goes down.