IEN # 9 Radia Perlman Supercedes: None BBN Replaces: None 26 August 1977
Section: 2.2.2.5
The Host Simp Protocol Module
A rough design specification
Radia Perlman
HOSIMP, the host SIMP protocol module, is basically a
multiplexor, allowing fake hosts and a gateway to all talk to the
same SIMP. In addition it can, if desired, do some functions that
otherwise would have to be duplicated by all processes using it,
such as recognizing a restart condition or resending packets
which were refused.
A fake host will communicate with HOSIMP by first
executing an EMT which HOSIMP will define, passing parameters
identifying the fake host, and possibly some flags telling HOSIMP
how to treat that host, and HOSIMP will return IPP numbers over
which the host can send and receive data to and from HOSIMP. A
read on the IPP from HOSIMP to the fake host will complete when
the SIMP sends data addressed to that host, either a packet or
information about one of the host's previous packets. A packet
written on the IPP port from the fake host to HOSIMP will be sent
on to the SIMP, after HOSIMP assigns the next sequential host
reference number in place of the 7 bit reference number assigned
by the host. When HOSIMP receives an accepted message, HOSIMP
will translate the host reference number into the 7 bit number
originally assigned by the host. Other than that HOSIMP could
conceivably just send everything through to the host.
The Gateway/HOSIMP interface
HOSIMP receives and queues packets from the gateway and
sends them on to the SIMP after substituting the next sequential
host reference number for the number supplied by the gateway.
Refused packets are placed back in the queue of packets to be
sent, whereas accepted packets are discarded. HOSIMP does not
send any control information back to the gateway. The gateway is
not concerned with restarts, it does not use any of the options
that return control information (like SENT messages), and HOSIMP
drops any packet for which it receives any REFUSED message (other
than resources busy).
Fake Host/HOSIMP interface–option 1
In this option HOSIMP behaves as it does with the
gateway, but it passes all control messages (except for
REFUSED–resources busy) back to the fake host.
Fake Host/HOSIMP interface–option 2
In this option HOSIMP does not requeue refused
messages. HOSIMP, except for substituting a different host
reference number, merely passes packets and control information
through. The fake host maintains its own queue of packets.
However, the packet it sends to HOSIMP does get queued, because
it must compete with other traffic sources and the packets HOSIMP
has queued for retransmission.
The fake host chooses which option it wants by passing
a parameter in the original EMT it executes.
Queuing algorithm
The method of ordering queued packets has yet to be
resolved. One method is giving gateway traffic the highest
priority. Another is to send packets in the order they are
received. Another would be to simulate as closely as possible the
algorithm the SIMP uses for ordering packets.