Request for Comments 704
IMP/Host and Host/IMP Protocol Change
This note is a revision of RFC 687 and sketches the design
of an expansion to the IMP/host and host/IMP protocol which will include among other things the possibility of addressing hosts on more than 63 IMPs. Our intention in this expansion is to correct certain existing limits without fundamental changes in the
philosophy of the IMP/host protocol; i.e., while many issues
which would represent fundamental changes to the IMP/host
protocol are presently under discussion in the world-wide packet-switching community, we are not able to undertake massive fundamental changes on a time scale compatible with the short
term needs for network improvement (e.g., already there are 62
The following paragraphs cover each of the major
characteristics of the expanded protocol. A knowledge of Section
3 of BBN Report 1822 is assumed. As is discussed below, the expanded protocol is backwards compatible.
1. Expanded Leader Size. The leader will be expanded from two
to six 16-bit words. This will provide space for necessary field expansions and additions. The expansion of the IMP/host
(host/IMP) leader to 96 bits from 32 causes word-boundary
problems for some hosts. To be able to deliver messages between
two hosts of which one is using the old protocol and the other
the new, without shifting the data in the IMP words, it is
necessary that the data (i.e. the first bit of the host/host
leader) start at an even multiple of 8-bit bytes from the
beginning of the entire message. On the other hand, each host
prefers (in fact requires, if no shifting is to be performed by
the host) that the combined host/IMP (IMP/host) and host/host leaders occupy some integral number of machine words (defined as the smallest sequence of bits that can be independently accessed
by the host/IMP interface). With a total host/IMP (IMP/host) and host/host leader of 136 bits, only machines with 8-, 16-, 32-,
and 64-bit words will find the leader size suitable. To simplify things for machines with other word lengths, a provision of the protocol permits each host to tell its IMP a number of 16-bit padding words to be inserted between the host/IMP (IMP/host) and host/host leaders. This padding will be stripped off during host-to-IMP processing by the IMP, and added in during IMP-to-host processing. Thus, for instance, 24-bit machines can specify one 16-bit word of padding, and 10- and 36-bit machines can specify five 16-bit words.
2. Expanded Address field. The address field will be expanded
to 32 bits, 16 bits of IMP address, 0 bits of host address, and 8
bits for (future) network address. This expansion is adequate
for any forseeable ARPA Network growth.
3. New Message Length Field. A new field will be added which
will allow the source host to optionally specify the message
length (in bits) to the IMP subnetwork. The IMP subnetwork may
be able to use this information (when available) to better
utilize network buffer storage. The destination host may also be
able to use this information to better utilize its buffer
storage. This field will be 16 bits wide. There will be
provision for expanding the maximum number of packets per message
to 16 from the present 8.
4. Expanded Handling Type Field. The handling type field which
now is used to distinguish between priority and non-priority message streams, etc., will be expanded to eight bits. This
expanded field will provide for the possibility of a number of parallel message streams having different handling
characteristics between pairs of hosts; e.g., priority, non-priority, varying numbers of packets per message (see below), a message stream requiring guaranteed capacity, etc. Only the old-style priority and non-priority handling types will be
available in the initial implementation of the expanded protocol.
5. Source Host Control of Packets per Message. The possibility
will exist for the source host to specify a message stream which
will use a given number of packets per multi-packet message (e.g, two packets per message or five packets per message). Since the IMP network will not have to use eight packet-buffers for reassembly purposes, as at present, this may result in better
services for such hosts. This will help users who need both low
delay and high throughput. Since this facility is orthogonal to
and of lower priority than the address expansion, it will be implemented after the other proposed basic changes.
6. Unordered (type-3) Message Change. Unordered messages will
be indicated by a subtype of the type O message, rather than by a separate message type as at present. This is compatible with the
need to check the host access control capabilities of all
messages. This will provide a slight backward incompatibility
for the three or so hosts which presently use type-3 messages in their research.
7. Change in Format of Fake Host Addresses. The For/From IMP
bit will be eliminated. The fake host addresses will be the four highest host numbers (e.g., IMP Teletype will be host 252).
8. Addition of a Parameter to the IMP to Host NOP. The IMP to
host NOP will have added to it a parameter specifying the address
(IMP and host number) of the host.
9. Backward Compatibility. The old and new formats will be
supported in parallel in the IMPs for the foreseeable future to allow gradual phaseover of host software. A host will be able to specify to its IMP whether the old or new formats are to be used;
thus, it will be possible for the host to specify switching back
and forth between the two modes for debugging purposes. The specification of the mode to be used will be possible via a
proper choice of format in the host to IMP NOP message; the IMP
will use the mode of the host to IMP NOP message the IMP has received. Further, a host may select to use either the old or
new format without needing to know more about the other format messages than to discard them should they arrive. The IMP will initialize by sending several NOP messages of each type to give
the hosts its choice. Although a host not implementing the new
format will not be able to address hosts on IMPs with IMP-number greater than 63, the IMPs will wherever possible do the conversion necessary to permit hosts using the old format to communicate with hosts using the new format and the reverse.
1O. Non-blocking Host Interface. A mechanism will be provided
which allows the IMP to refuse a message from a host without
blocking the host interface. This mechanism will permit the IMP
to gather the necessary resources to send the refused message and
then ask the host to resend the message. Finally, the host will be permitted to ask to be able to send a message and be notified
when it is possible without requiring the message to actually be
sent and refused. Again, as in point 5 above, this facility will
be added after the other more basic changes have been
11. Maximum Message Length. The maximum number of bits of data
in a single-packet message may be reduced by a few bits.
We are now producing a draft version of the necessary
changes to Report 1822 and will circulate it so that host
programmers can begin to make their preparations.