ICP: Initial Connection Protocol
A short clarification about the first message in the Initial Connection Protocol.
McKenzie, A.M., "Initial Connection Protocol", RFC 93, DOI 10.17487/RFC0093, January 1971, <https://www.rfc-editor.org/info/rfc93>.
@misc{rfc93,
series = {Request for Comments},
number = 93,
howpublished = {RFC 93},
publisher = {RFC Editor},
doi = {10.17487/RFC0093},
url = {https://www.rfc-editor.org/info/rfc93},
author = {A.M. McKenzie},
title = {{Initial Connection Protocol}},
pagetotal = 1,
year = 1971,
month = jan,
} RFC text
Network Working Group A. McKenzie
Request for Comments #93 BBN
Updates RFC's 66, 80 January 1971
Initial Connection Protocol
A review of the Initial Connection Protocol (ICP) first
described in RFC #66 and restated in RFC #80 has revealed an area of
ambiguity, which in turn reflects an ambiguity in the Host-Host
Protocol Document No. 1. This is the definition of the message sent
over the connection from "Server socket #1". In both referenced
RFC's, the message is defined as "exactly an even 32 bit number". It
is not clear, however, whether this 32 bit number is meant to follow
an eight-bit "message data type" code or not, stemming from the fact
that the Host-Host Protocol makes provision for such codes but does
not seem to absolutely demand them.
Only one implementation of an ICP has been documented in the
NWG literature - that at UCSB (RFC #74). The implementers of this ICP
have apparently interpreted the Host-Host Protocol as demanding a
message data type code, and therefore do transmit a code of zero.
Steve Crocker indicates (private communication) that the Host-
Host Protocol was intended to require a message data type code. We
therefore recommend that RFC numbers 66 and 80 be amended to show that
the "even 32 bit number" is preceded by a message data type code of
zero (zero is the only code currently defined).
[ This RFC was put into machine readable form for entry ]
[ into the online RFC archives by James Thompson 4/97 ]
ISO Plain Language
On this page
§1The Unclear Message
RFC 93 reviews the Initial Connection Protocol described in RFC 66 and restated in RFC 80. It focuses on the message sent over the connection from Server socket 1, which those documents describe as an even 32-bit number.
The text does not make clear whether the message must also begin with an eight-bit message data type code.
The earlier instructions named a number but left out a detail. Readers could not tell whether a small type label came before it.
§2What the UCSB Version Sent
RFC 93 says that the only documented implementation in the Network Working Group literature was at UCSB, described in RFC 74. Its implementers interpreted the Host-Host Protocol as requiring a message data type code, so they sent code zero.
This report uses that implementation as evidence about the intended message format.
The one documented version already included the label. It used zero as the label's value.
§3The Recommended Amendment
Steve Crocker told the author that the Host-Host Protocol was intended to require a message data type code. The RFC therefore recommends amending RFCs 66 and 80 to say that code zero precedes the even 32-bit number.
The note adds that zero was the only code defined at that time.
The recommendation is to write down the intended order: first the zero code, then the number. This matches the UCSB implementation described in the note.