I. Eine Zusammenfassung der IMP-Software
Nachrichten
Informationen werden von Host zu Host in Bündeln übertragen, die Nachrichten (messages) genannt werden. Eine Nachricht ist jeder Datenstrom von nicht mehr als 8080 Bits zusammen mit ihrem Header. Der Header ist 16 Bits lang und enthält die folgenden Informationen:
Ziel (Destination) 5 Bits
Verbindung (Link) 8 Bits
Verfolgung (Trace) 1 Bit
Reserve (Spare) 2 Bits
Das Ziel ist der numerische Code für den Host, an den die Nachricht gesendet werden soll. Das Trace-Bit signalisiert den IMPs, Statusinformationen über die Nachricht aufzuzeichnen und die Informationen an das NMC (Network Measurement Center, Netzwerkmesszentrum, d.h. UCLA) zurückzusenden. Die Reservebits werden nicht verwendet.
Verbindungen
Das Verbindungsfeld ist ein spezielles Gerät, das von den IMPs verwendet wird, um bestimmte Arten von Überlastung zu begrenzen. Sie funktionieren wie folgt. Zwischen jedem Paar von Hosts gibt es 32 logische Vollduplex-Verbindungen (logical full-duplex connections), über die Nachrichten in beide Richtungen übertragen werden können. Die IMPs legen die Einschränkung auf diese Verbindungen fest, dass kein Host zwei aufeinanderfolgende Nachrichten über dieselbe Verbindung senden kann, bevor der IMP am Ziel eine spezielle Nachricht namens RFNM (Request for Next Message, Anforderung der nächsten Nachricht) zurückgesendet hat. Diese Anordnung begrenzt die Überlastung, die ein Host einem anderen verursachen kann, wenn der sendende Host versucht, zu viel über eine Verbindung zu senden. Wir bemerken jedoch, dass die Verbindungen ihren Zweck nur erfüllen, wenn die Überlastung von einer oder zwei Verbindungen kommt, da der IMP am Ziel nicht genug Kapazität hat, um alle 32 Verbindungen gleichzeitig zu verarbeiten. Es ist notwendig, dass die Hosts in dieser Hinsicht zusammenarbeiten.
Die Verbindungen haben die folgenden primitiven Eigenschaften. Sie funktionieren immer, und es gibt immer 32 davon.
Mit „funktionieren immer" meinen wir, dass die IMPs immer bereit sind, eine weitere Nachricht über sie zu übertragen. Kein Begriff des Beginns oder Endes einer Konversation ist in der IMP-Software enthalten. Es ist daher nicht möglich, einen IMP über den Zustand einer Verbindung abzufragen (obwohl es möglich sein könnte, einen IMP über die jüngste Geschichte einer Verbindung abzufragen -- eine ganz andere Sache!).
Die andere primitive Eigenschaft der Verbindungen ist, dass es immer 32 davon gibt, ob sie verwendet werden oder nicht. Dies bedeutet, dass jeder IMP 18 Tabellen mit jeweils 32 Einträgen pflegen muss, unabhängig vom tatsächlichen Verkehr.
Trotz der Einwände gegen die Verbindungsstruktur sind die Verbindungen innerhalb der IMPs leicht zu programmieren und sind wahrscheinlich allein aufgrund ihrer Einfachheit eine bessere Alternative zu komplexeren Arrangements.
IMP-Übertragung und Fehlerprüfung
Nach dem Empfang einer Nachricht von einem Host teilt ein IMP die Nachricht in ein oder mehrere Pakete (packets) auf. Pakete sind nicht länger als 1010 Bits und sind die Einheit der Datenübertragung von IMP zu IMP. Eine 24-Bit-Zyklische Prüfsumme (cyclic checksum) wird von der Übertragungshardware berechnet und an ein ausgehendes Paket angehängt. Die Prüfsumme wird von der Empfangshardware neu berechnet und gegen die übertragene Prüfsumme geprüft. Pakete werden am Ziel-IMP wieder zu Nachrichten zusammengesetzt.
Offene Fragen zur IMP-Software
-
Ein 8-Bit-Feld wird für die Verbindungsspezifikation bereitgestellt, aber nur 32 Verbindungen werden bereitgestellt, warum?
-
Der Host soll in der Lage sein, Nachrichten an seinen IMP zu senden. Wie macht er das?
-
Kann ein Host im Gegensatz zu seinem IMP RFNMs kontrollieren?
-
Werden die IMPs Codekonvertierung durchführen? Wie wird sie gesteuert?