Software auf Benutzerebene
Auf der Benutzerebene werden Unterprogramme bereitgestellt, die den Datenpuffer verwalten und die für andere Hosts bestimmte Eingabe formatieren. Es ist nicht zwingend erforderlich, dass der Benutzer solche Unterprogramme verwendet, da der Benutzer Zugriff auf die Netzwerk-Systemaufrufe in seinem Monitor hat.
Neben dem programmgesteuerten Zugriff ist es wünschenswert, an jedem Host ein Subsystemprogramm zu haben, das das Netzwerk ohne spezielle Programmierung unmittelbar von einem fernschreiberähnlichen Gerät aus zugänglich macht. Subsysteme sind häufig verwendete Systemkomponenten wie Texteditoren, Compiler und Interpreter. Ein Beispiel für ein netzwerkbezogenes Subsystem ist TELNET, das es Benutzern an der University of Utah ermöglichen wird, sich mit dem Stanford Research Institute zu verbinden und als normale Terminalbenutzer zu erscheinen. Es wird erwartet, dass mit der Zeit ausgefeiltere Subsysteme entwickelt werden, aber dieses grundlegende wird das frühe Netzwerk sofort nutzbar machen.
Ein Benutzer an der University of Utah (UTAH) sitzt an einem Fernschreiber, der in das Time-Sharing-System PDP-10/50 der Universität eingewählt ist. Er möchte das Subsystem Conversational Algebraic Language (CAL) auf der XDS-940 am Stanford Research Institute (SRI) in Menlo Park, California, bedienen. Ein typischer TELNET-Dialog ist in Abbildung 5 dargestellt. Die Bedeutung jeder Dialogzeile wird hier erläutert.
- (i) Der Benutzer meldet sich bei UTAH an.
- (ii) Der PDP-10-Befehl run startet das TELNET-Subsystem am Host des Benutzers.
- (111) Der Benutzer gibt ein Unterbrechungszeichen an, das bewirkt, dass jede auf die Unterbrechung folgende Nachricht lokal interpretiert wird, anstatt an den fremden Host gesendet zu werden.
- (iv) Das TELNET-Subsystem führt die entsprechenden Systemaufrufe aus, um ein Paar von Verbindungen zum Logger von SRI aufzubauen. Die Verbindungen werden nur aufgebaut, wenn SRI einen weiteren fremden Benutzer akzeptiert.
Der UTAH-Benutzer befindet sich nun im Zustand vor der Anmeldung bei SRI. Dies ist analog zum Zustand des Standard-Fernschreiberbenutzers nach dem Einwählen in einen Rechner und dem Herstellen einer Verbindung, aber bevor er etwas eingetippt hat.
- (v) Der Benutzer meldet sich bei SRI mit einem Standard-Anmeldebefehl an. Die auf dem Fernschreiber des Benutzers eingegebenen Zeichen werden unverändert durch den PDP-10 (Benutzer-Host) hindurch und weiter zur 940 (dienender Host) übertragen. Das TELNET der PDP-10 wird automatisch auf zeichenweise Übertragung mit Vollduplex umgeschaltet haben, da dies von der 940 von SRI gefordert wird. Der Vollduplex-Betrieb wird von der PDP-10 zugelassen, obwohl er von den meisten Subsystemen der Digital Equipment Corporation nicht genutzt wird.
- (vi) und (vii) Das 940-Subsystem CAL wird gestartet.
An diesem Punkt möchte der Benutzer eine lokale CAL-Datei aus dem Dateisystem seiner lokalen PDP-10 in das 940-CAL-Subsystem laden.
- (viii) CAL wird angewiesen, eine Verbindung zu UTAH aufzubauen, um diese Datei zu empfangen. "NETWRK" ist ein vordefinierter 940-Name, der von seiner Art her "PAPER TYPE" oder "TELETYPE" ähnelt.
- (ix) Schließlich tippt der Benutzer das Unterbrechungszeichen (#), gefolgt von einem Befehl an sein PDP-10-TELNET-Programm, das die gewünschte Datei von Utah aus über die soeben zu diesem Zweck aufgebaute Verbindung an SRI sendet. Die nächste Anweisung des Benutzers erfolgt wieder in CAL.
Die Codierung des TELNET-Subsystems sollte minimal sein, denn es ist im Wesentlichen ein Shell-Programm, das über den Netzwerk-Systemaufrufen aufgebaut ist. Es stellt effektiv eine Nebenschlussverbindung im Benutzer-Host zwischen dem fernen Benutzer und einem entfernten dienenden Host her.
Mit den grundlegenden Systemprimitiven, dem TELNET-Subsystem am Benutzer-Host und einem Handbuch für den dienenden Host kann das Netzwerk heute von fernen Benutzern gewinnbringend genutzt werden.