Most firewall proxies do not store copies of the returned data, instead they re-fetch requested data from the remote Internet server each time. Hierarchies of proxies, arranged in complex relationships are possible When referring to a 'cache', we are referring to a 'caching proxy' - something that keeps copies of returned data. A 'proxy' on the other hand, is a program which do not cache replies. Since only a very small portion of the web is made up of text, referring to all cached data as pages is misleading. To avoid ambiguity, caches store objects, not pages.
Many Internet servers support more than one protocol.
A given server can support more than one type of query protocol. Muddling them up would be bad. Caching an FTP response and returning the same data to the client on a subsequent HTTP request would be incorrect. The proxy server uses the complete URL to uniquely identify everything stored in the cache. So as to avoid returning out of date data to clients, objects must be expired.