Zusammenfassung

  • RFC 1043 dokumentierte 1988 eine DODIIS-Implementierung der TELNET-Option Data Entry Terminal. Im beschriebenen Zeichen-Echo konnte ein Tastendruck ein Datagramm hin und ein Echo-Datagramm zurück auslösen.
  • DET ließ den Benutzer offene Formularfelder lokal bearbeiten. Anwendung und Terminal handelten gemeinsame Fähigkeiten aus, übergaben mit GO-AHEAD das Wort und konnten nur „geänderte“ Felder zurückgeben; dazu gehörten auch zuvor markierte Felder.

Ein Buchstabe mit zwei Gepäckstücken

Gleich zu Beginn schildert RFC 1043 eine verschwenderische Routine. Ein Tastendruck erzeugt ein Datagramm mit TCP/IP-Headern und einem Zeichen; der Host schickt für das Echo ein ähnliches Datagramm zurück. Die Defense Intelligence Agency arbeitete damals an Zugriff auf bildschirmfüllende Anwendungen über ein Paketnetz. Das Dokument meldete DET-Implementierungen auf IAS, MVS, OS86 und UNIX; Arbeiten für VM und VMS liefen noch. Die Rechner unterschieden sich. Der Mensch davor wollte trotzdem ein Formular ausfüllen, statt jede Taste auf eine Fernreise zu schicken.

Die Data-Entry-Terminal-Option war schon in RFC 732 beschrieben. RFC 1043 griff das nächste Problem auf: Mehrere DODIIS-Organisationen hatten eigene Versionen gebaut und zweifelten an deren Zusammenspiel. Ein Formular, das nur auf dem eigenen Terminal funktioniert, spart höchstens Pakete, bevor es Arbeit für den Kundendienst erzeugt. Die Autoren hielten deshalb gemeinsame Mindestbefehle, zusätzliche Verhandlungen und die Abfolge von Anwendung und Terminal fest.

Ihr Modell war ein halbduplexes Formulargerät. Auf einem rechteckigen Bildschirm standen geschützte Inhalte und offene Felder, die sich an der lokalen Tastatur bearbeiten ließen. Funktionstasten und auswählbare Felder ermöglichten weitere Antworten. Der Standardbildschirm maß 80 Zeichen und 24 Zeilen; Benutzerhosts sollten 24 bis 48 Zeilen unterstützen. Die Anwendung baute Felder aus Position, Größe, Attributen und Inhalt. Wenn sie fertig war, sendete sie GO-AHEAD und gab damit die Tastatur frei. Der Benutzer füllte aus oder nutzte eine erlaubte Funktion; das Terminal sandte seine Antwort und gab mit eigenem GO-AHEAD das Wort zurück. So wanderte das Recht am Cursor zwischen zwei Beteiligten.

Schon für den Einstieg mussten sich beide Seiten einigen. DET war TELNET-Option 20 und verlangte eine Verhandlung mit DO und WILL in beide Richtungen. Ohne Einigung blieb der Standard WONT DET -- DONT DET, also der gewöhnliche Netzwerk-Virtual-Terminal-Modus. Beim Wechsel zu DET sollten Echo, Suppress Go-Ahead und Binary abgelehnt oder beendet werden, denn ihre alten Regeln störten den neuen Austausch. Ein Zeichen-Echo, das neben dem Formular weiterplaudert, macht jede Ordnung der Wortmeldungen zunichte.

Im DET-Modus folgte die feinere Verhandlung. Vier Facilities-Unterbefehle beschrieben Bearbeiten, Löschen, Übertragen und Formatieren. Das Terminal meldete sein Angebot, die Anwendung ihren Bedarf. Nutzbar war die logische Schnittmenge ihrer Bitkarten. Bei der Anzeigeintensität zählte die niedrigere angebotene Stufe. Zusatzfunktionen durften erst nach Zustimmung laufen und konnten später von beiden Seiten deaktiviert werden. Reservierte Bits mussten null sein, damit künftige Funktionen nicht versehentlich als vereinbart galten.

Sogar den Beginn jeder Verhandlung sollten die Parteien sich merken: Zwei überhöfliche Rechner können einander sonst bis zum Feierabend Antwort auf Antwort schicken.

Auf dem Rückweg zeigte sich die Ersparnis. Mit TRANSMIT-SCREEN, TRANSMIT-UNPROTECTED oder TRANSMIT-MODIFIED konnte die Anwendung den ganzen Bildschirm, nur offene Felder oder die geänderten Felder anfordern. Ohne ausdrückliche Wahl bestimmten die ausgehandelten Attribute Modified und Protection eine möglichst kleine erlaubte Antwort. Das Formular blieb auf dem Terminal sichtbar, während die Anwendung für den nächsten Schritt einzelne Felder änderte. Die Tastenarbeit blieb beim Benutzer, bis ein sinnvoller Satz von Daten zurückgeschickt wurde.

Der Begriff „geändert“ war allerdings weiter, als er klingt. Bei TRANSMIT-MODIFIED musste das Terminal auch Felder zurückgeben, die das Attribut Modified trugen, selbst wenn der Benutzer sie nicht angerührt hatte. Ein zurückgesendetes Feld konnte also die Gestaltung des Formulars widerspiegeln. Wer daraus eine Geschichte über menschliche Eingaben macht, muss die Attributregel kennen. RFC 1043 druckte den Hinweis als Warnkasten — eine freundliche Geste gegenüber späteren Fehlersuchern.

Die kleinste DET-Befehlsmenge, ohne weitere Verhandlung nutzbar, reichte für DODIIS-Formulare nicht aus. Benutzerhosts sollten zusätzliche Unterbefehle und Attribute beherrschen, die ihre Hardware bot oder die Software leicht nachbilden konnte; Serverhosts brauchten die Funktionen ihrer Anwendungen. Eine Tabelle verteilte empfohlene Sende- und Empfangsrollen. Zusammenspiel verlangte genaue Absprachen und ließ den verschiedenen Geräten ihre Eigenheiten.

RFC 1043 verwandelte den Trommelwirbel einzelner Echos in eine gemeinsame Formularsprache. Lokal schreiben, Fähigkeiten abstimmen, passende Felder zurückschicken. Das Netz wurde ruhiger, weil beide Enden vor dem ersten Tastendruck eine verständliche Arbeitsteilung vereinbarten.