Comments on the IMP/Host and Host/IMP Protocol changes
Comments on a proposed international packet header and its fit with ARPANET protocols.
Cerf, V.G., "Comments on the IMP/Host and Host/IMP Protocol changes", RFC 696, DOI 10.17487/RFC0696, July 1975, <https://www.rfc-editor.org/info/rfc696>.
@misc{rfc696,
series = {Request for Comments},
number = 696,
howpublished = {RFC 696},
publisher = {RFC Editor},
doi = {10.17487/RFC0696},
url = {https://www.rfc-editor.org/info/rfc696},
author = {V.G. Cerf},
title = {{Comments on the IMP/Host and Host/IMP Protocol changes}},
pagetotal = 2,
year = 1975,
month = jul,
} RFC text
Network Working Group V. Cerf
Request for Comments: 696 Stanford University
NIC: 32962 July 1975
Comments on IMP/HOST and HOST/IMP Protocol Changes
With reference to RFC's 687, 690, and 692 (NIC's 32564, 32699, and
32734, respectively) by D.C. Walden, J. Postel, and S. Wolfe
(respectively), I would like to offer some observations relative to
current international standards recommendations from working group
6.1 of the International Federation of Information Processing. In a
meeting held last May at the NCC, this working group voted to present
a recommendation to CCITT (International Consultative Committee on
Telephony and Telegraphy of the International Telegraphics Union) for
a standard packet (or DATAGRAM) header.
The proposed packet header format is meant to interface hosts to
packet networks. It is not a header for Host-to-Host protocol, nor
is it an IMP-to-IMP header. The bulk of the header is taken up with
addressing space(96 bits!) since this will be compatible with the
current maximum address space of the telephone system (14 digits).
LOCAL NETWORK FIELD - 4 bits
This field allows local networks to operate easily on multiple
formats, since the 4 bits can be used in any fashion desired by
the local network.
DATAGRAM FORMAT - 4 bits
This field could be used by ARPANET to contain "1001" binary, so
as to maintain backward compatibility with the existing message
leader format.
PACKET TYPE CODE - 8 bits
This could be used for the HOST/IMP and IMP/HOST code.
FACILITIES - 16 bits
These bits have not yet been specifically allocated. Some will no
doubt be for international services (e.g., tracing at gateways
between networks, accounting, class of service). It was the
feeling of WG 6.1 members that some of these bits (e.g., 8) might
be allocated to the originating network (or destination network)
for its own use.
TEXT LENGTH - 16 bits
These bits count the number of octets in the text of the packet,
not including octets in the header (which is fixed in length for
any particular format).
DESTINATION ADDRESS - 48 bits [1]
These bits could be allocated in the following way: Destination
Network Identifier - 8 bits; Destination Host Identifier - 8 bits;
Destination IMP identifier - 16 bits; Reserved- 16 bits.
SOURCE ADDRESS - 48 bits
These bits would be used in a fashion similar to the destination
address bits.
The resulting packet is 144 bits long and adding the present 40-bit
Host-to-Host header results in a total of 184 bits, which is not very
pleasant. A temporary fix (until we can introduce a new NCP design)
might be to squeeze out the reserved 16-bit fields in the source and
destination address fields, giving 32 bits to carry the byte size and
byte count information for the present Host/Host protocol.
Alternatively, the length field of the packet header and one of the
facilities flags (or a whole field) could be used to indicate byte
size and byte count. Either idea would require some fairly
substantial modification of existing NCP programs, so is probably not
very palatable.
Another alternative would be to add a dummy byte after the 144th bit
of header, followed by 40 bits of NCP header, giving a total length
of message leader and NCP header of 192 bits, a number divisible by
12, 16, 24, 32, 48.
With respect to the proposed text length field, although bit lengths
are the most flexible, it seems reasonable to admit that nearly all
data transmission is done in 8-bit quantities, and therefore that bit
lengths are, in fact, an unnecessary luxury. This is a weak argument
when 36-bit and 32-bit machines must interface.
[ This RFC was put into machine readable form for entry ]
[ into the online RFC archives by Alex McKenzie with ]
[ support from GTE, formerly BBN Corp. 11/99 ]
ISO Plain Language
On this page
§1The International Proposal
Vinton Cerf's note responds to RFCs about IMP/Host and Host/IMP changes. It discusses a recommendation from working group 6.1 of the International Federation for Information Processing, which voted to present CCITT with a standard packet, or datagram, header.
The proposed header is for interfacing hosts to packet networks. It is neither a Host-to-Host header nor an IMP-to-IMP header. Its addressing fields use 96 bits, intended to match the telephone system's stated maximum address space.
The proposed label connects a host to a packet network. It is a different layer from the labels used between hosts or between IMPs.
§2Fields in the Proposed Header
The proposed fields are Local Network (4 bits), Datagram Format (4), Packet Type Code (8), Facilities (16), Text Length (16), Destination Address (48), and Source Address (48). The facilities bits had not been assigned, though the note mentions possible uses such as tracing, accounting, and class of service.
Text Length counts text octets but excludes the fixed-length header. Each address could contain network and host identifiers, an IMP identifier, and reserved bits. The note presents these as possible allocations, not as a finalized design.
The label has fields for network format, packet type, length, and both addresses. Some bits were still unassigned when the note was written.
§3Fitting the Existing Header
The proposed packet header is 144 bits. Adding the then-current 40-bit Host-to-Host header produces 184 bits, which the author calls not very pleasant. One temporary idea removes the reserved 16-bit parts of both addresses to carry byte-size and byte-count information.
Other suggestions use the length field and a facilities bit, or add a dummy byte before the NCP header to make a 192-bit total. The note warns that the first alternatives require substantial changes to NCP programs. It also questions whether a bit-length field is needed when most data uses 8-bit quantities, while acknowledging machines with 36-bit and 32-bit words.
Combining the new label with the old one makes an awkward total size. The author offers several possible adjustments, but none is cost-free.