HTCP, Hyper Text Caching Protocol |
Description | Glossary | RFCs | Publications | Obsolete RFCs |
Description:
Protocol suite: | TCP/IP. |
Protocol type: | Application layer protocol. |
Ports: | 4827 (TCP, UDP). |
URI: | |
MIME subtype: | |
SNMP MIBs: | |
Working groups: | |
Links: |
HTCP is a protocol for discovering HTTP caches and cached data, managing sets of HTTP caches, and monitoring cache activity.
Implementation over UDP is mandatory, TCP is optional.
MAC header | IP header | TCP | UDP header | HTCP message |
HTCP header:
00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Message length - | |||||||||||||||
Major version | Minor version | ||||||||||||||
Data length | |||||||||||||||
Opcode | Response | reserved | F1 | RR | |||||||||||
Trans ID - | |||||||||||||||
Op data ::: | |||||||||||||||
Auth length | |||||||||||||||
Sig time - | |||||||||||||||
Sig expire - | |||||||||||||||
Key name ::: | |||||||||||||||
Signature ::: |
Message length.
32 bits.
The length, inclusive of all header and data bytes, including this field.
This field will be equal to the datagram payload size if a datagram protocol is in use, and can include padding.
Major version.
8 bits.
The major version number of this protocol.
The DATA section of an HTCP message
need not be upward or downward compatible between different major version numbers.
Minor version.
8 bits.
The minor version number of this protocol. Feature levels and interpretation
rules can vary depending on this field, in particular reserved fields can
take on new (though optional) meaning in successive minor version numbers within the same major version number.
Data length.
16 bits.
First field in the Data section. The number of bytes of the message which are
reserved for the Data section, including the Data length field itself.
This number can include padding, i.e., not all octets reserved by Data length need be used in Op data.
Opcode. 4 bits.
The operation code of an HTCP transaction. An HTCP transaction can consist of
multiple HTCP messages, e.g., a request (sent by the initiator), or a response
(sent by the responder).
Opcode | Description |
---|---|
0 | NOP. |
1 | TST. |
2 | MON. |
3 | SET. |
4 | CLR. |
Response.
4 bits.
Transaction reply code.
It should be set to zero by requestors and ignored by responders.
Each operation has its own set of response codes.
The following response codes all indicate errors and all depend for their visibility on MO=1
Response | Description |
---|---|
0 | Authentication wasn't used but is required. |
1 | Authentication was used but unsatisfactorily. |
2 | Opcode not implemented. |
3 | Major version not supported. |
4 | Minor version not supported, major version is ok. |
5 | Inappropriate, disallowed, or undesirable opcode. |
reserved. 6 bits.
F1, RD/MO (Response Desired/Message Overall).
1 bit.
A multiplexed bit.
RD | Description |
---|---|
0 | Response not desired. |
1 | Response is desired. |
MO | Description |
---|---|
0 | Response is to be interpreted as a response to fields in the Op data. |
1 | Response is to be interpreted as a response to the overall message (fixed fields in DATA or any field of AUTH). |
RR, Request/Response. 1 bit.
RR | Description |
---|---|
0 | Request message. Interpret the F1 bit as RD. |
1 | Response message. Interpret the F1 bit as MO |
Trans ID.
32 bits.
The combination of this field and the initiator's network address uniquely
identifies this HTCP transaction. Care should be taken not to reuse Trans IDs within the life-time of a UDP datagram.
Op data.
Variable length.
Meaning depends on the value of Opcode.
Auth length. 16 bits.
First field in the Auth section. The number of bytes used by the Auth section,
including the Auth length field itself. If the optional Auth section is
not being transmitted, this field should be set to 2. Auth length can
include padding, which means that not all bytes reserved by this field will necessarily be consumed by Signature.
Sig time. 32 bits, unsigned.
The number of seconds since 00:00:00 1-Jan-70 UTC when the Signature was generated.
Sig expire. 32 bits, unsigned.
The number of seconds since 00:00:00 1-Jan-70 UTC when the Signature will
expire.
Key name. Variable length.
Specifies the name of a shared secret.
Signature.
Variable length.
Holds the HMAC-MD5 digest with a B value of 64, of the following elements, each
of which is digested in its "on the wire" format, including transmitted padding if any is covered by a field's associated LENGTH
RFCs:
[RFC 2756] Hyper Text Caching Protocol (HTCP/0.0).
Description | Glossary | RFCs | Publications | Obsolete RFCs |