Konzept für die Kopplung von Mikrocomputern über ein offenes LAN:Ausfall einer Teilnehmerstation überleben

19.10.1984

Je mehr Mikrocomputer in Unternehmen eingesetzt werden, um so eher wird eine Kommunikationsverbindung der Rechner untereinander unumgänglich: Eine Infrastruktur für den Informationstransport, ein Rechnernetz. muß her. Alle größeren Hersteller bieten "private" Netze an. der Anschluß von Fremdrechnern ist nur selten möglich. Hier kann nur ein offenes Netz helfen.

Soll eine solche Kommunikationsmöglichkeit bereitgestellt werden, müssen alle angeschlossenen Rechner die gleiche "Sprache sprechen" das heißt ein gemeinsames, durch die Universalität auch sehr komplexes Protokoll unterstützen. Dies bedeutet natürlich einen hohen Aufwand bei dem Anschluß einer neuen Station an das Netz. Diesem Problem muß daher besondere Aufmerksamkeit geschenkt werden, um die Akzeptanz des offenen Netzes nicht zu gefährden.

Viele Rechnerkommunikationswünsche treten beim Anwender nur in einer begrenzten Umgebung (Abteilung, Fertigungsanlage) auf, er benötigt lokale Netze, zwischen denen (..)er wiederum Verbindungsmöglichkeiten bestehen müssen.

Als Systemziele für das geplante lokale Netz sind folgende Punkte festzuhalten:

- Bereitstellung einer offenen Kommunikationsmöglichkeit zwischen allen angeschlossenen Rechnern

- Unterstützung eines schnellen Dateitransfers zum bestmöglichen Zugriff auf Betriebsmittel

- Angebot einer soft- und hardwaremäßig einfachen Schnittstelle zum Netz.

Anforderungen des Netzbenutzers

Bei der Spezifikation des Netzprojekts müssen zunächst die zukünftigen Benutzer und deren Wünsche analysiert werden. Es lassen sich drei Benutzerklassen unterscheiden:

- Auftraggeber

- Terminalbenutzer

- Anwendungsprogrammierer.

Zur Wahrung der Herstellerunabhängigkeit legt der Auftraggeber besonderen Wert auf den offenen Charakter des Netzes. Um bei den Benutzern eine hohe Akzeptanz zu erreichen, fordert er außerdem kurze Reaktionszeiten und schnellen Dateitransfer, sowie eine benutzerfreundliche "Oberfläche".

Ein weiterer wichtiger Gesichtspunkt ist für ihn die Erweiterungsfähigkeit des Netzes. Dies soll für den Anschluß eines neuen Host im Netz genauso gelten, wie für den Übergang in ein anderes Netzwerk. Schließlich muß eine hohe Verfügbarkeit für das Verbundsystem gewährleistet werden können, dessen Kosten bei Installation und Wartung natürlich möglichst gering sein sollten.

Die Wünsche des Auftraggebers sind also:

- offene Kommunikation

- Benutzerfreundlichkeit

- Erweiterungsfähigkeit

- hohe Verfügbarkeit

- geringe Kosten.

Für den Terminalbenutzer sind besonders kurze Antwortzeiten und komfortable Dialogmöglichkeiten

wichtig. Insbesondere sollen die Bedienung des Terminals und der Dialog unabhängig vom Typ der angeschlossenen Teilnehmerstation sein. Eine solche Vereinheitlichung ist

nur dadurch möglich, daß ein Netzstandardterminal ("virtuelles Terminal") und eine Netzstandardbetriebssystemschnittstelle definiert wird deren Parameter die angeschlossenen Geräte unterstützen.

Leider muß man sich dabei meist auf das "kleinste gemeinschaftliche Vielfache" der Eigenschaften aller verbundenen Systeme einigen, das heißt über solche Standardschnittstellen kann dem Benutzer nicht mehr die volle Leistung zur Verfügung gestellt werden. Einige Netzdienste wie zum Beispiel Informationen über die Uhrzeit, die aktuellen Standorte und Auslastungen der Betriebsmittel, sowie Kennung und Adresse anderer aktiver Benutzer im Netz runden das Angebot ab.

Der Terminalbenutzer wünscht sich also:

- kurze Antwortzeiten

- einheitliche Bedienung der Terminals

- standardisierte Netzdialoge

- spezielle Netzinformationsdienste.

Zum Kreis der Anwendungsprogrammierer gehören alle diejenigen, die Software mit Netzzugriffen entwickeln. Ihre Arbeit wird durch die Definition und Implementierung einer Netzstandardschnittstelle erheblich vereinfacht. Parallel zu den Systemaufrufen des lokalen Betriebssystems können Netzsystemaufrufe gemacht werden (zum Beispiel Open Connection, Close Connection, Read File, Write File), falls diese einheitliche Schnittstelle von der Partnerstation unterstützt wird.

Einziger Wunsch des Anwendungsprogrammierers an die Netzplaner:

- Definition und Implementierung einer einheitlichen Netzsystemaufrufebene.

Für das geplante Netz sind die folgenden Punkte wichtig:

Ring:

(+) einfaches Ein- und Ausfügen einer Station

(-) aufwendige Netzsteuerung, um den Ausfall einer Station aufzufangen

(-) von der Anzahl der Teilnehmerstationen abhängige Durchsatzrate

Bus:

(+) unempfindlich gegen den Ausfall einer Station

(+) einfaches Ein- und Ausfügen einer Station

(-) immer nur eine Nachricht im Netz (-) schwierige getrennte Flußkontrolle für logische Kanäle eines Hostrechners

Stern:

(+) relativ einfache zentrale Netzsteuerung

(+) gleichzeitiger Transport von mehreren Nachrichten möglich

(+) effektive Flußkontrolle für logische Kanäle eines Host implementierbar

(+) einfache Einrichtung von globalen Netzsystemdiensten

(+) der Ausfall einer Teilnehmerstation wird überlebt

(-) Ausfall des Netzes bei Störungen in der Zentrale (kann durch Rechnerredundanz, zum Beispiel Doppelrechner vermieden werden)

Die Topologieentscheidung zugunsten des Sterns ist nicht nur unter Berücksichtigung der obigen Aufgaben sondern auch der Systemziele getroffen worden. Insbesondere sei daran erinnert, daß eine Kommunikationsmöglichkeit für Rechner unterschiedlicher Hersteller zum Zweck der gemeinsamen Nutzung teurer Betriebsmittel und damit eine hohe Durchsatzrate gefordert wird. Es werden sich Kommunikationsschwerpunkte bei den Rechnern bilden, die diese Ressourcen verwalten. Für kleinere Netze oder lokale Umgebungen, die über einen mächtigen Rechner verfügen, bietet sich daher eine Sternstruktur an.

Um den Rechner im Sternpunkt nicht durch Kommunikationsaufgaben zu überlasten (er ist ja auch der Vermittler für Dialoge zwischen angeschlossenen Teilnehmersystemen), wird die Kommunikationsverwaltung durch einen eigenen Rechner realisiert.

Hardware

Für die Erzielung hoher Transfergeschwindigkeiten ist der Einsatz schneller physikalischer Kanäle, die sinnvoll nur seriell synchron realisiert werden können, eine wichtige Voraussetzung. Da die meisten Rechner standardmäßig nur asynchrone serielle oder parallele Interfaces zur Verfügung stellen, deutet sich bereits hier der Einsatz eines Mikrorechners zur Protokollumwandlung und Geschwindigkeitsanpassung an. Ein weiterer wichtiger Grund für einen solchen Front-End-Rechner ist die notwendige hardwaremäßige Entkopplung des Host vom Netz, damit lokale Störungen keinen globalen Charakter erhalten.

Ein modularer Aufbau der Front-End-Rechner wird die individuelle Anpassung an verschiedene Hosts und Übertragungsmedien (Mehrdrahtleitung, Koaxialkabel, Lichtleiter) erleichtern. Außerdem läßt sich dann der Front-End-Rechner so konfigurieren, daß er zum Beispiel mehrere Hosts an das Netz ankoppelt oder nur den Anschluß einer Anzahl von Terminals ermöglicht.

Software

Die schnellste physikalische Verbindung nützt nichts, wenn das implementierte Protokoll nicht effizient ist und somit die erreichbare Durchsatzrate begrenzt. Da von den möglichen Verbindungsarten nur die Paketvermittlung mit virtuellen Verbindungen in Frage kommt, ist die Protokollsoftware nach dem 7-Schichtenmodell der ISO zu entwickeln.

Ein Systemziel ist der schnelle Dateitransfer. Es muß also der Paketebene im Netz besondere Aufmerksamkeit geschenkt werden, um die Flußsteuerung entsprechend zu optimieren. Die Kommunikationssoftware der Front-End-Rechner wird bei Inbetriebnahme des Netzes von der Zentrale geladen und kann so insbesondere in der Entwicklungsphase leicht geändert werden. Die zur Beschreibung der aktuellen Konfiguration des Front-End-Rechners nötigen Parameter sind jederzeit durch die Zentrale lesbar und änderbar.

Um den Anschluß eines Host ans Netz möglichst einfach zu gestalten, soll dies mit wenig Hardwareeingriffen und geringem Softwareaufwand zu erreichen sein. Fast alle gängigen Rechner verfügen neben der Konsolschnittstelle über einen weiteren seriellen Kanal, sowie einen I/O-Bus, der jeweils Karten für spezielle Anwendungen, so auch für eine genügend breite Parallelschnittstelle, aufnehmen kann. Diese beiden Kopplungsarten realisieren die physikalische Host-Netzschnittstelle.

Im Rahmen der Protokollebenen hat der Einsatz eines Front-End-Rechners nicht nur hardwaremäßige Vorteile. In ihn kann bereits ein großer Anteil der Netzprotokollsoftware integriert werden. Dies bedeutet eine Entlastung der Hosts und die Transformation des komplizierten Netzprotokolls in ein relativ einfaches lokales Punkt-zu-Punkt-Protokoll.

Eine Möglichkeit, Host und Front-End-Rechner zu koppeln, stellt die serielle asynchrone Duplex-Schnittstelle dar. Meist werden Geschwindigkeiten bis zu 19 200 Bit pro Sekunde unterstützt, mit denen die Daten zeichenweise übertragen werden. Das Erzeugen und Zerlegen des Netz-Paketformats ist Aufgabe des Front-End-Rechners.

Über die gleichen seriellen Schnittstellen werden auch Terminals an den FE angekoppelt. Zur Konfiguration der Schnittstelle (Baudrate, Anzahl der Datenbits) steht an jedem FE ein Dialogprogramm zur Verfügung, die Parameter können aber auch über das Netz geladen werden.

Eine schnellere Duplexverbindung (geplant sind bis zu 200 KB pro Sekunde), insbesondere für Dateitransfer, kann mit einer parallelen Schnittstelle (hier 2 x 16 Bit) realisiert werden. Da nicht zeichenweise sondern blockweise übertragen wird, ist ein Multiplexen des Interface über logische Kanäle möglich, das heißt es können gleichzeitig mehrere Verbindungen aufrecht erhalten werden. Für interaktiven Betrieb ist es wichtig, daß die Blocklänge variabel ist, also auch gleich eins sein kann.

Durch die bei Parallelschnittstellen üblichen Handshake-Signale (Strobe/ Ready) ist eine einfache Flußsteuerung auf Leitungssteuerungsebene möglich.

Kommunikationsmöglichkeiten zu einem Hostrechner

In folgenden sollen die Kommunikationsmöglichkeiten vorgestellt werden, die das geplante Netz anbieten wird.

Allgemein läßt sich feststellen, daß Zugang zu einem Host immer über einen logischen Weg gewährt wird, der auf einem physikalischen Kanal realisiert ist. Einen logischen Datenport bietet jeder Host ohne zusätzlichen Programmieraufwand an: seine Konsolverwaltung. Falls auch noch eine freie serielle Schnittstelle zur Verfügung steht, ist damit eine einfache Verbindungsmöglichkeit zu diesem Rechner geschaffen. Die Tatsache, daß nur über den rechnerspezifischen Kommandointerpreter im Dialog kommuniziert werden kann, ist allerdings als Nachteil anzusehen. Der Netzbenutzer muß die unterschiedliche Kommandosyntax der von ihm angesprochenen Rechner beherrschen und es ist nur ein umständlicher Dateitransfer als "schnelle Konsol-Ein/Ausgabe" durchführbar.

Einen komfortableren logischen Zugang kann eine lokale Netzverwaltung im entfernten Host zur Verfügung stellen. Dieses Programm muß für jeden anzuschließenden Host entwickelt werden, realisiert aber eine Schnittstelle, die einheitlich für das gesamte Netz ist. Physikalisch wird allerdings dafür ein Kanal benötigt, der nicht von der Konsolverwaltung kontrolliert wird. Innerhalb der Softwarehierarchie eines Host sind die Aufrufe der Netzverwaltung prallel zu denen des Betriebssystems anzusiedeln.

Aufrufe, die die lokale Netzverwaltung unterstützt, sind zum Beispiel folgende:

- Eröffnen/Schließen einer Verbindung

- Lesen des Inhaltsverzeichnisses

- Eröffnen/Schließen einer Datei

- Lesen/Schreiben von Daten

- Löschen einer Datei.

Da diese Funktionen systemneutral definiert sind, nutzen sie zwar nicht alle Fähigkeiten des jeweiligen Rechners aus, bieten aber zusammen mit einer physikalischen Parallelschnittstelle einen "offenen" Dateitransfer an.

Es sind also folgende Kommunikationsmöglichkeiten denkbar:

- Interaktiver Dialog: Das lokale System wird vom entfernten Rechner als Terminal angesehen. Alle Kommandomöglichkeiten bleiben erhalten.

- Eingeschränkter Dialog: Für das gesamte Netz werden einheitliche Kommandos definiert, die jeweils nur von einer entfernten Netzverwaltung interpretiert werden können.

- Eingeschränkter Dateitransfer Es können nur ASCII-Daten über eine Schnittstelle transferiert werden, die dialogorientiert arbeitet.

- Offener Dateitransfer: Die Kommunikation verläuft über die lokale und entfernte Netzverwaltung und kann programmgesteuert erfolgen. Die Übertragung von Binärdateien ist möglich.

Es lassen sich allerdings nur drei Kombinationen dieser Kommunikationsmöglichkeit realisieren:

(1) Interaktiver Dialog und eingeschränkter Dateitransfer

(2) Eingeschränkter Dialog und eingeschränkter Dateitransfer

(3) Eingeschränkter Dialog und offener Dateitransfer.

*Hartmut Thomalla, Lehrstuhl für Datenverarbeitung, Ruhr-Universität Bochum