Hypertext caching protocol
|This article does not cite any sources. (May 2009) (Learn how and when to remove this template message)|
Hypertext Caching Protocol (abbreviated to HTCP) is used for discovering HTTP caches and cached data, managing sets of HTTP caches and monitoring cache activity. It permits full request and response headers to be used in cache management and expands the domain of cache management to include monitoring a remote cache's additions and deletions, requesting immediate deletions and sending hints about web objects such as the third party locations of cacheable objects or unavailability of web objects.
All multi-octet HTCP protocol elements are transmitted in network byte order. All reserved fields should be set to binary zero by senders and left unexamined by receivers. Headers must be presented with the CRLF line termination, as in HTTP.
Any hostnames specified should be compatible between sender and receiver, such that if a private naming scheme (such as HOSTS.TXT or NIS) is in use, names depending on such schemes will only be sent to HTCP neighbors who are known to participate in said schemes. Raw addresses (dotted quad IPv4, or colon-format IPv6) are universal, as are public DNS names. Use of private names or addresses will require special operational care.
UDP must be supported. HTCP agents must not be isolated from network failures and delays. An HTCP agent should be prepared to act in useful ways when no response is forthcoming, or when responses are delayed or reordered or damaged. TCP is optional and is expected to be used only for protocol debugging. The IANA has assigned port 4827 as the standard TCP and UDP port number for HTCP.
An HTCP Message has the following general format:
+---------------------+ | HEADER | tells message length and protocol versions +---------------------+ | DATA | HTCP message (varies per major ver. number) +---------------------+ | AUTH | optional authentication for transaction +---------------------+