Know The Internet Series| Host Software | RFC 1

Ujjawal Sharma
4 min readFeb 16, 2020

Summer of 1968 was very crucial for the history of Internet. Well, it wasn’t even named as Internet by then ! California summer had something special this time. ARPANET was a recent achievement and there was a lot of fuss regarding how to make the communication over the network more and more efficient. Software for the ARPA network exists partly in the IMPs and partly in the respective HOSTS. BB&N (Bolt Beranek & Newman Incorporation) was ready with their specification of IMP(Interface Message Processor) and now it was time for the owners of the HOSTS to agree on a common HOST software.

Participating HOSTS owners were Steve Carr from Utah, Jeff Rulifson from SRI and Steve Crocker of UCLA.

SUMMARY OF THE IMP SOFTWARE

  1. Messages:
  • Messages are transported from host to host in bundles called messages, with maximum size of 8080 bits.
  • This 8080 bits include 16 bits headers. Headers consists 5 bits for numerical code for the host DESTINATION, 8 bits for LINK, 1 bit for TRACE which signals the IMPs to record the status info about the message and send the info back to NMCs (Network Management Center) ; and 2 unused bits as SPARE.

LINKS:

  • It is a special device, used by IMPs to limit congestions and allow seamless message transfers from HOST to HOST.
  • Between every pair of hosts, there are 32 logical full-duplex connections for sending and receiving messages.
  • No HOST can send two successive messages over the same link before the IMP at destination has replied with RFNM(Request for Next message), to reduce congestion on one link.

ERROR CHECKING:

  • After receiving a message from other host, IMP partitions the message, into 1 or more packets of max. 1010 bits length.
  • 24 bit cyclic checksum is calculated and is appended to outgoing packet.
  • The checksum is then recomputed on receiving end and is checked against the transmitted checksum.
  • Packets are then finally re-assembled.

HOST SOFTWARE

ESTABLISHMENT OF CONNECTION:

  • The basics here is to assume that local HOST when initiates a connection with a remote HOST is of type TTY (Teletype).
  • Link 0 is reserved for communication between HOSTS operating systems, remaining 31 links for sending/receiving messages.
  • Operating system of each host must have capable program which could help establish/disconnect connection with the other HOST.
  • When these programs are invoked, operating system should send a connection request over Link 0, on the other side, the remote host should send back the accepting message on the same link 0.
  • The established connection is a TTY type connection in the pre-log-in state. This will mean that remote host operating system will initially treat the link as if a TTY had just called up.

What is a TTY?

TTY stands for Teletypewriters. Following is an image showing one of the old teletypewriters. Pressing a key sends a character down the serial link. Incoming characters on the serial link are printed on the printer.

Resource — Computer Hardware: How Computers Work, Dr David Greaves, Univ. of Cambridge

HIGH VOLUME TRANSMISSION:

TTY Connection methodology has two drawbacks:

  • Some characters are special interrupt characters.
  • Special buffering techniques are often employed and these are appropriate only for low-speed character at time of transmission.

So, another class of connection to be used for the transmission of files or other large volumes of data. To initiate such connection link, operating system should have program at both ends which will request the establishment of a file-like connection parallel to the TTY like link. File like links are distinguished by the fact that no searching for interrupt characters takes place and buffering techniques appropriate for the higher data rate takes place.

ERROR CHECKING:

  • Each message carry a message number, bit count, and a checksum in its body, that is transported to the IMP.
  • For a checksum, there is a 16-bit end-around-carry sum computed on 1152 bits and then circularly shifted right one bit.
  • The right circular shift after every 1152 bits is designed to catch errors in message reassembly by the IMPs.

FUTURE WORKS DECIDED:

  • It was decided at the the time that there were many challenges which the current system faced after the implementations discussed above such as the delay in transmission, on-line retrieval error etc.

--

--

Ujjawal Sharma

Cyber Security Engineer at SAINT Corporation | Studied Information Security at Johns Hopkins University