summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorLars-Dominik Braun <lars@6xq.net>2016-10-09 11:34:18 +0200
committerLars-Dominik Braun <lars@6xq.net>2016-10-09 11:34:18 +0200
commit25512363eb9f619299c336c60c4333c8c759d6d9 (patch)
tree62a3dd3ca0ce3d871afcbe07e74755adc8d8ddf2 /net
parentafd4c3c448381f6eb706090911a15c162fdaf8af (diff)
downloadeumel-src-25512363eb9f619299c336c60c4333c8c759d6d9.tar.gz
eumel-src-25512363eb9f619299c336c60c4333c8c759d6d9.tar.bz2
eumel-src-25512363eb9f619299c336c60c4333c8c759d6d9.zip
Move dos and net manuals to doc/
Diffstat (limited to 'net')
-rw-r--r--net/netzhandbuch2045
-rw-r--r--net/netzhandbuch.anhang58
-rw-r--r--net/netzhandbuch.index259
3 files changed, 0 insertions, 2362 deletions
diff --git a/net/netzhandbuch b/net/netzhandbuch
deleted file mode 100644
index 7083462..0000000
--- a/net/netzhandbuch
+++ /dev/null
@@ -1,2045 +0,0 @@
-____________________________________________________________________________
-
-
-#on("b")##on ("u")#
-#center#Betriebssystem E U M E L
-#off ("u")#
-
-
-#center#Netzsoftware
-
-
-
-
-#off("b")#
-#center#Lizenzfreie Software der
-#on ("b")#
-
-#center#Gesellschaft für Mathematik und Datenverarbeitung mbH,
-#center#5205 Sankt Augustin
-
-
-#off("b")#
-#center#Die Nutzung der Software ist nur im Schul- und Hochschulbereich für
-#center#nichtkommerzielle Zwecke gestattet.
-
-#center#Gewährleistung und Haftung werden ausgeschlossen
-
-
-____________________________________________________________________________
-#page#
-#pagenr ("%",1)##setcount(1)##block##pageblock##count per page#
-#headeven#
-#center#EUMEL Netzbeschreibung
-#center#____________________________________________________________
-
-#end#
-#headodd#
-#center#Inhalt
-#center#____________________________________________________________
-
-#end#
-#bottomeven#
-#center#____________________________________________________________
-Netz - % #right# GMD
-#end#
-#bottomodd#
-#center#____________________________________________________________
-GMD #right#Netz - %
-#end#
-
-#center#Inhalt
-
-#clear pos##lpos(1.0)##rpos(9.5)#
-#table#
-
-1. Einleitung #topage("0")#
-
-Teil 1: Netz einrichten und benutzen #topage("1")#
-
-
-1.1. Hardwarevoraussetzungen #topage("1.1")#
-1.2. Einrichten des Netzes #topage("1.2")#
-1.3. Benutzung des Netzes #topage("1.3")#
-1.4. Informationsmöglichkeiten #topage("1.4")#
-1.5. Eingriffsmöglichkeiten #topage("1.5")#
-1.6. Fehlerbehebung im Netz #topage("1.6")#
-1.7. Sicherheit im Netz #topage("1.7")#
-
-
-
-Teil 2: Arbeitsweise der Netzsoftware #topage("2")#
-
-
-2.1. Die Netztask #topage("2.1")#
-2.2. Protokollebenen #topage("2.2")#
-2.3. Stand der Netzsoftware #topage("2.3")#
-
-
-
-Teil 3: Netz-Hardware-Interface #topage("3")#
-
-
-3.1. Einführung #topage("3.1")#
-3.2. Arbeitsweise des Netz-Hardware-Interfaces #topage("3.2")#
-3.3. Netztreiber #topage("3.3")#
-3.4. Prozedurschnittstelle des EUMEL-Netzes #topage("3.4")#
-
-
-
-Anhang #topage("A")#
-
-
-1. Fehlermeldungen #topage("A.1")#
-2. Literaturhinweise #topage("A.2")#
-3. Index #topage("A.3")#
-
-#table end#
-#clear pos#
-
-#page#
-#pagenr ("%", 2)##setcount (1)##block##pageblock##count per page#
-#headeven#
-#center#EUMEL Netzbeschreibung
-#center#____________________________________________________________
-
-#end#
-#headodd#
-#center#Einleitung
-#center#____________________________________________________________
-
-#end#
-#bottomeven#
-#center#____________________________________________________________
-Netz - % #right#GMD
-#end#
-#bottomodd#
-#center#____________________________________________________________
-GMD #right#Netz - %
-#end#
-
-1. Einleitung
-
-#goalpage("0")#
-Das EUMEL-Netz dient dazu, mehrere EUMEL-Rechner (sog. #ib#Station#ie#en) miteinan­
-der zu koppeln. Diese Kopplung wird vom Betriebssystem dazu benutzt, das Sen­
-dungskonzept [1] so auszudehnen, daß Tasks verschiedener Stationen einander
-Datenräume zusenden können. Auf dem #ib#Sendungskonzept#ie# aufbauende Konzepte
-nutzen daher automatisch das Netz aus: So ist es z.B. möglich
-
-- von einer Station aus auf einer anderen zu drucken,
-
-- in die Task PUBLIC einer anderen Station #ib#Datei#ie#en zu sichern (save), vorausge­
- setzt, daß PUBLIC dort ein #on("b")#free global manager#off("b")# ist,
-
-- auf einer anderen Station zu archivieren (z.B. wenn das eigene Archivlaufwerk
- defekt ist oder ein anderes Format hat).
-
-Diese #ib#Netzversion#ie# kann ab EUMEL-Version 1.8.1 eingesetzt werden.
-
-Diese Netzbeschreibung besteht aus drei Teilen. In Teil 1 wird beschrieben, wie das
-EUMEL-Netz benutzt und eingerichtet wird. Als Benutzer eines EUMEL-
-Rechners, der vernetzt ist, ist nur dieser Teil der Netzbeschreibung für Sie wichtig.
-Teil 2 erklärt die Funktionsweise der #ib#Netzsoftware#ie#, im dritten Teil wird die Schnitt­
-stelle für die Anpassung anderer #ib#Netzhardware#ie# definiert.
-
-Hinweis:
-
-Zur erstmaligen #ib#Installation#ie# des EUMEL-Netzes ist außer dieser Beschreibung noch
-die Netzsoftware (auf Floppy) und die EUMEL-Netz-#ib#Installationsanleitung#ie#, die mit
-der Software geliefert wird, notwendig.
-
-In der vorliegenden Netzbeschreibung wird das EUMEL-Netz möglichst "hardware
-unabhängig" beschrieben. Wenn hardwareabhängige Beispiele gegeben werden, so
-ist die dort beschriebene Hardware stets die #ib#Datenbox#ie#.
-#pagenr ("%", 3)##setcount (1)##block##pageblock##count per page#
-#headeven#
-#center#EUMEL Netzbeschreibung
-#cneter#____________________________________________________________
-
-#end#
-#headodd#
-#center#Teil 1 : Netz einrichten und benutzen
-#center#____________________________________________________________
-
-#end#
-#bottomeven#
-#center#____________________________________________________________
-Netz - % #right#GMD
-#end#
-#bottomodd#
-#center#____________________________________________________________
-GMD #right#Netz - %
-#end#
-#page#
-
-Teil 1: Netz einrichten und benutzen
-#goalpage("1")#
-
-
-
-1.1. Hardwarevoraussetzungen
-#goalpage("1.1")#
-
-
-Zwei Stationen
-
-Sie können zwei #ib#Station#ie# miteinander vernetzen, wenn Sie dafür an jeder Station eine
-#ib#V.24#ie#-#ib#Schnittstelle#ie# zur Verfügung stellen.
-
-Diese beiden Schnittstellen verbinden Sie mit einem Kabel zur #ib#Rechnerkopplung#ie# [2].
-
-
-Mehrere Stationen
-
-Wenn Sie mehr als zwei Stationen vernetzen wollen, stehen Ihnen zwei Konzepte zur
-Verfügung: das Anlegen von #ib#Netzknoten#ie# bzw. das Verwenden eines #ib#Strang#ie#es. Die
-Konzepte können gemischt eingesetzt werden.
-
-Ein Strang besteht aus einer Anzahl von #ib#Netzbox#ie#en (z.B. KHW-Box oder Ethernet­
-anschluß).
-
-Jede Box besitzt eine #ib#Schnittstelle#ie# (z.B. #ib#V.24#ie#) zum Anschluß an einen der Kanäle
-1...15 der zugeordneten #ib#Station#ie# und eine weitere Schnittstelle zur #ib#Verbindung#ie# der
-Boxen untereinander.
-
-Ein #ib#Knoten#ie# ist eine Station, bei der der Netzbetrieb über mehrere Kanäle läuft.
-
-Da die #ib#Netzsoftware#ie# pro #ib#Kanal#ie# eines Knotens eine Task generiert, ist das Knoten­
-konzept dem Strangkonzept hinsichtlich des #ib#Durchsatz#ie#es unterlegen. Preisgünstiger
-ist jedoch das #ib#Knotenkonzept#ie#, weil dabei #ib#Netzbox#ie#en überflüssig werden.
-
-Beim Knotenkonzept wird eine #ib#Vermaschung#ie# nicht zur Optimierung benutzt (Ver­
-maschung heißt, daß eine #ib#Zielstation#ie# über verschiedene Knoten erreichbar ist). Daher
-sollte man keine Vermaschung vorsehen.
-
-#ib#Nachbarn#ie# sind Stationen, die an denselben #ib#Netzstrang#ie# angeschlossen oder direkt
-über ein #ib#V.24#ie#-Kabel verbunden sind.
-
-Bei der Entscheidung, welche Stationen man zu #ib#Knoten#ie# macht, sollte beachtet wer­
-den, daß (a) Stationen, zwischen denen hoher Verkehr besteht, Nachbarn werden und
-daß (b) besonders leistungsfähige Rechner #ib#Knoten#ie#stationen sein sollten.
-#page#
-
-1.2. Einrichten des Netzes
-#goalpage("1.2")#
-
-
-Hinweis: Dieses Kapitel ist nur für Systembetreuer wichtig.
-
-a) Legen Sie für die am Netz beteiligten Rechner #ib#Stationsnummer#ie#n fest (von 1 an
- aufsteigend).
-
- Die Boxen haben ebenfalls Stationsnummern. Die Stationsnummern der Box und
- des zugeordneten Rechners müssen übereinstimmen.
-
-
-b) Holen Sie an jeder #ib#Station#ie# die Task #on("bold")#configurator#off("bold")# an ein Terminal und geben Sie
- das Kommando #on("bold")##ib#define station#ie# (x)#off("bold")#, wobei #on("bold")#x#off("bold")# die gewählte Stationsnummer ist.
-
- Hinweis: Taskkommunikationen, die zu diesem Zeitpunkt laufen, führen zu feh­
- lerhaftem Verhalten. Dies liegt daran, daß durch #on("bold")#define station#off("bold")# alle
- #ib#Task-Id#ie#'s geändert werden müssen, weil eine #ib#Task-Id#ie# u.a. die
- Stationsnummer der eigenen Station enthält (siehe 1.3). TASK-
- Variablen, die noch Task-Id's mit keiner oder falscher Stationsnum­
- mer enthalten, können nicht mehr zum Ansprechen einer Task ver­
- wendet werden.
-
- Beispiel: Der #ib#Spoolmanager#ie# [3] richtet beim Kommando #on("bold")#start#off("bold")# einen #ib#Worker#ie# ein
- und merkt sich dessen #ib#Task-Id#ie# in einer TASK-Variablen, um sicher­
- zustellen, daß nur der Worker #ib#Datei#ie#en zum Drucken abholt. Wird jetzt
- das Kommando #on("bold")# define station#off("bold")# gegeben, kann der Spoolmanager
- seinen Worker nicht mehr identifizieren, weil der Worker eine neue
- Task-Id erhalten hat. Man muß daher vor #on("b")#define station#off("b")# den Worker
- löschen und ihn danach mit dem Kommando #on("bold")##ib#start#ie##off("bold")# im Spoolmanager
- wieder neu einrichten.
-
-
- Sinnvollerweise gibt man #on("bold")#define station#off("bold")# sofort nachdem man ein frisches System
- vom Archiv geladen hat.
-
- Zum Anschluß einer #ib#Datenbox#ie# #ib#konfigurieren#ie# Sie mit dem Kommando #on("bold")##ib#configurate#ie##off("bold")#
- den für das Netz vorgesehenen #ib#Kanal#ie# auf
-
- - transparent
- - 9600 #ib#Baud#ie# (Standardeinstellung der Boxen)
- - #ib#RTS/CTS#ie#-#ib#Protokoll#ie#
- - großen Puffer
- - 8 bit
- - even parity
- - 1 stopbit.
-
- Falls diese Einstellungen nicht alle angeboten werden, klären Sie mit Ihrem
- Rechnerlieferanten, ob und wie diese Einstellungen erreicht werden können.
-
- Hinweis: Notfalls kann auf das #ib#RTS/CTS#ie#-Protokoll verzichtet werden, wenn der
- Eingabepuffer der #ib#Station#ie# groß genug ist. Die Anzahl simultan laufen­
- der Netzkommunikationen ist dann auf
-
- puffergröße DIV 150
-
- begrenzt (bei Z80, 8086: 3; bei M20: 10).
-
- Hinweis: Es können auch andere #ib#Baud#ie#raten (2400, 4800, 19200) an der Box
- eingestellt werden.
-
-
-c) Achten Sie bei der #ib#Verbindung#ie# von der Station zur #ib#Netzbox#ie# (bzw. zur Gegen­
- station bei einem Zweistationennetz ohne Boxen) darauf, daß neben den Emp­
- fangs- und Sendeleitungen auch die Leitungen RTS und CTS verdrahtet wer­
- den, also ein 5-poliges Kabel verwendet wird [2]. Die #ib#Pin-Belegung#ie# der Boxen
- entspricht der eines Kabels zur Rechner-Rechner-Kopplung.
-
- Beispiel:
-
- Verbindung eines BICOS-Systems mit der Box:
-
- Stecker Stecker
- Pin Pin
-
- 2 <---------> 3
- 3 <---------> 2
- 4 <---------> 5
- 5 <---------> 4
- 7 <---------> 7
-
-
-d) Richten Sie eine Task #on("bold")##ib#net#ie##off("bold")# unter #on("bold")#SYSUR#off("bold")# ein und legen Sie eine #ib#Datei#ie# #on("b")##ib#netz#ie##off("b")# an, die
- Ihre #ib#Netzkonfiguration#ie# enthält, oder ändern Sie die mitgelieferte Datei ent­
- sprechend ab (siehe auch 1.5.).#goalpage("sperre")#
-
-
- Dem bisherigen Netz entspricht eine Datei #on("b")#netz#off("b")# mit folgendem Inhalt:
-
- definiere netz;
- routen (1,127,k);
- starte kanal (k,1,x);
- aktiviere netz.
-
- k: ihr netzkanal.
- x: IF yes ("#ib#Flußkontrolle#ie#") THEN 10 ELSE 3 FI.
-
-
-
- Laden Sie die Datei #on("b")##ib#net install#ie##off("b")# vom Archiv #on("b")#net#off("b")# und übersetzen Sie diese. Je nach­
- dem, welche EUMEL-Version auf der Maschine installiert ist, werden die notwen­
- digen Programmdateien insertiert.
-
- Es sind dies
-
- net report
- net hardware interface
- basic net
- net manager
-
-
- Das Netz wird dabei gestartet.
-
-
- Hinweis: Obwohl die Task #on("b")#net#off("b")# sich noch mit #on("bold")##ib#continue#ie##off ("bold")# an ein Terminal holen
- läßt, sollte man dies nur kurzzeitig tun, da der Netzverkehr solange
- blockiert ist.
-
- In der #ib#Datei#ie# #on("b")#netz#off("b")# sollte der #ib#Kanal#ie#, über den der meiste Verkehr erwar­
- tet wird, zuerst gestartet werden. Für ihn wird die Task #on("b")##ib#net port#ie##off("b")# gene­
- riert, für jeden weiteren Kanal wird eine Task #on("b")##ib#net port#ie# k#off("b")# (k=Kanal­
- nummer) generiert.
-#page#
-
-1.3. Benutzung des Netzes
-#goalpage("1.3")#
-
-
-Zur Benutzung des Netzes stehen folgende Operatoren und Prozeduren zur Verfü­
-gung:
-
-
-
-TASK OP #ib#/#ie# (INT CONST station, TEXT CONST taskname)
-
-liefert die Task #on("bold")#taskname#off("bold")# von der #ib#Station#ie# #on("bold")#station#off("bold")#.
-
-
-#ib#Fehlerfälle#ie#:
-
- - #ib(4)#Task "...." gibt es nicht#ie(4)#
-
- Die angeforderte Task gibt es auf der #ib#Zielstation#ie# nicht.
-
- - #ib(4)##ib#Collectortask#ie# fehlt#ie(4)#
-
- die Task #on("b")##ib#net port#ie##off("b")# existiert nicht (siehe 6).
-
- Hinweis: #on("b")#net port#off("b")# wird bei jedem Start des Netzes neu generiert und beim
- Auftreten eines nicht vorhergesehenen #ib#Fehler#ie#s beendet. Die Feh­
- lermeldung steht im #on("b")##ib#report#ie##off("b")# (siehe 4).
-
- - #ib(4)#Station x antwortet nicht#ie(4)#
-
- Eine nicht vorhandene oder abgeschaltete Station wurde angesprochen.
-
- Hinweis: Dieser #ib#Fehler#ie# wird angenommen, wenn eine Überwachungszeit von
- ca. 30 Sekunden verstrichen ist, ohne daß Station x die Taskidenti­
- fikation angeliefert hat.
-
- - #ib(4)#Station x gibt es nicht#ie(4)#
-
- #ib#Station#ie# x steht nicht in den #ib#Routentabelle#ie#n.
-
- Diese Meldung kann auch erscheinen, wenn Station x erst kürzlich an das Netz
- angeschlossen wurde. Sie steht dann noch nicht in den Routentabellen (siehe
- auch 5.3.).
-
- Beispiel:
-
- list (5/"PUBLIC")
-
- Die Dateiliste von PUBLIC der Station 5 wird angefordert.
-
-
-
-TASK OP #ib#/#ie# (INT CONST station, TASK CONST task)
-
-liefert
-
-station / name (task)
-
-Beispiel:
-
- list (4/public)
-
-
-Fehlerfall:
-
- "......" #ib(4)#gibt es nicht#ie(4)#
-
- Auf der eigenen Station gibt es die Task #on("b")#task#off("b")# nicht.
- Der Taskname wird auf der eigenen Station bestimmt, wenn es dort die Task
- nicht gibt, führt dies zur obigen Fehlermeldung.
-
-Abhilfe:
-
- Statt list(4/public) das Kommando list (4/"PUBLIC") verwenden.
-
-
-
-INT PROC #ib#station#ie# (TASK CONST task)
-
-liefert die #ib#Stationsnummer#ie# der Task #on("bold")#task#off("bold")#.
-
-Beispiel:
-
- put (station (myself))
-
- gibt die eigene Stationsnummer aus.
-
-
-
-
-PROC #ib#reserve#ie# (TEXT CONST archivename, TASK CONST archivetask)
-
-dient dazu, das Archiv auf der #ib#Station#ie# #on("bold")#station#off("bold")# anzumelden.
-
-Beispiel:
-
- reserve ("std", 4/"ARCHIVE"); #ib#list#ie# (4/"ARCHIVE")
-
- gibt das Inhaltsverzeichnis der Archivfloppy im Laufwerk der Station 4 aus.
-
- Hinweis: Vergessen Sie bei solchen #ib#Querarchivierungen#ie# nicht die Stationsangabe
- bei jedem einzelnen Archivkommando (z.B fetch ("xxx", #on("bold")#4/#off("bold")#
- "ARCHIVE")).
-
- Hinweis: Querarchivieren ist langsam. Verwenden Sie es nur, wenn Sie Floppy­
- formate umsetzen wollen.
-
-
-
-
-PROC #ib#free global manager#ie#
-
-dient dazu, die eigene Task über das Netz ansprechbar zu machen. Jede andere
-Task im Netz kann dann die üblichen #ib#Manager#ie#aufrufe (#on("bold")##ib#save#ie##off ("bold")#, #on("bold")##ib#fetch#ie##off ("bold")#, usw.) an die
-eigene Task machen, sofern diese nicht an ein Terminal gekoppelt ist.
-
-Die Task wird (wie bei #on("bold")#break#off ("bold")#) abgekoppelt und meldet sich in Zukunft mit #on("bold")#mainte­
-nance#off ("bold")# statt mit #on("bold")#gib kommando#off ("bold")#.
-
-Beispiel:
-
- An Station 4 ruft man in der Task "hugo" das Kommando #on("bold")#free global manager#off("bold")#
- auf. Anschließend kann man von jeder Station aus z.B. #on("bold")#list (4/"hugo")#off ("bold")# usw. auf­
- rufen.
-
-
-
-
-TEXT PROC #ib#name#ie# (TASK CONST t)
-
-Diese (schon immer vorhandene) Prozedur wurde dahingehend erweitert, daß der
-Name einer auf einer anderen Station existierenden Task über Netz angefordert wird.
-
-Existiert die Task nicht, so wird #on("bold")##ib#niltext#ie##off ("bold")# geliefert.
-
-Hinweis: Die Prozedur #on("bold")##ib#exists#ie##off ("bold")# wurde nicht auf das Netz ausgedehnt, da sie in Situa­
- tionen eingesetzt wird, wo es auf eine sehr schnelle Antwort ankommt.
- Daher liefert #on("bold")#exists#off ("bold")# für eine stationsfremde Task immer FALSE. Will man
- wissen, ob eine solche Task existiert, verwende man die Abfrage
-
- #on("bold")#IF name (task) <> "" THEN ... #off ("bold")#.
-
-#ib#Fehlerfall#ie#:
-
- - #ib(4)#Station x antwortet nicht#ie(4)#
-
- - #ib(4)##ib#Station#ie# x gibt es nicht#ie(4)#
-
-#page#
-
-1.4. Informationsmöglichkeiten
-
-#goalpage("1.4")#
-
-In der Task #on("bold")#net#off("bold")# wird eine #ib#Datei#ie# #on("bold")##ib#report#ie##off("bold")# geführt, in der #ib#Fehlersituationen#ie# des Netzes
-verzeichnet werden. Diese Datei kann in jeder anderen Task auf derselben Station mit
-#on("bold")##ib#list#ie# (/"#ib#net#ie#")#off("bold")# angesehen werden. Eine Erklärung der wichtigsten Meldungen finden Sie
-im Anhang.
-
-In jeder Task kann durch das Kommando #on("bold")##ib#list#ie# (/"#ib#net port#ie#")#off("bold")# eine Übersicht über die
-momentan laufenden #ib#Netzübertragungen#ie# der eigenen #ib#Station#ie# erhalten werden (nur für
-den #ib#Kanal#ie#, an dem #on("b")##ib#net port#ie##off("b")# hängt). Entsprechendes gilt für die weiteren Netports der
-eigenen Station.
-
-Mit #on("bold")##ib#list#ie# (/"#ib#net list")#ie##off("bold")# erhält man die Informationen, die man mit #on("b")#list (/"net")#off("b")# und #on("b")##ib#list#ie##off("b")# auf
-alle Netports bekommt, sofern #on("b")##ib#listoption#ie##off("b")# (siehe S. #topage("listop")#) beim Generieren des Netzes
-aufgerufen wurde. Dieser Aufruf funktioniert auch bei fremden Stationen (z.B. #on("b")#list
-(5/"net list")#off("b")#).
-
-#page#
-
-1.5. Eingriffsmöglichkeiten
-
-#goalpage("1.5")#
-
-- Jede Task kann #ib#Sende#ie(1,"ströme")#- und #ib#Empfangsströme#ie#, die bei #on("bold")#list (/"net port")#off("bold")# gemel­
- det worden sind und die eigene Task betreffen, abbrechen. Hierzu ist das Kom­
- mando #on("bold")##ib#erase#ie# ("x", /"#ib#net port#ie#")#off ("bold")# zu geben, wobei x die #ib#Stromnummer#ie# (aus dem #on("bold")#list#off ("bold")#)
- ist.
- Unberechtigte #ib#Löschversuche#ie# werden abgewiesen.
- Von privilegierten Tasks aus können jedoch mit #on("b")##ib#erase#ie##off("b")# beliebige Ströme abge­
- brochen werden.
-
-
-- Durch das Kommando #on("bold")##ib#start#ie##off("bold")# kann von der Task #on("b")##ib#net#ie##off("b")# aus das Netz neu gestartet
- werden. Dies setzt eine gültige #ib#Datei#ie# #on("bold")#netz#off("bold")# voraus. Es wird ein #on("bold")##ib#run#ie##off("bold")# auf diese Datei
- gegeben. Das Kommando #on("b")##ib#start#ie##off("b")# ist nur noch aus Kompatibilitätsgründen zum alten
- Netz vorhanden.
-
-
-- Durch das Kommando #on("bold")##ib#routen aufbauen#ie##off("bold")# in der Task #on("b")##ib#net#ie##off("b")# werden die #ib#Routentabelle#ie#n
- neu aufgebaut. Dies kann notwendig werden, wenn eine neue #ib#Station#ie# ans Netz
- angeschlossen wurde (#ib#Fehlermeldung#ie# '#ib(4)#Station x gibt es nicht#ie(4)#'). #on("bold")#routen aufbauen#off ("bold")#
- muß zuvor auch an allen dazwischenliegenden #ib#Knotenstation#ie#en gegeben werden.
-
- #on("bold")#routen aufbauen#off ("bold")# erzeugt eine Task #on("b")##ib#router#ie##off("b")#, die sich an das Terminal koppelt (die
- Task #on("b")#net#off("b")# koppelt sich ab) und ein #ib#Protokoll#ie# ausgibt. Sind die #ib#Route#ie#n aufgebaut,
- beendet sich die Task #on("b")#router#off("b")# mit der Meldung #on("b")#fertig#off("b")#. Es werden nur Stationen
- bearbeitet, die nicht #ib#gesperrt#ie# (siehe S. #topage("sperre")#), und für die keine festen Routen
- vereinbart sind. Der Vorgang dauert ca. 5 Sek. pro nicht gesperrter Station und
- #ib#Netzkanal#ie#. Die #ib#Route#ie#n werden in einem #ib#Datenraum#ie# #on("b")##ib#port intern#ie##off("b")# hinterlegt.
-
-
-- Der Aufruf #on("bold")##ib#definiere netz#ie##off("bold")# leitet eine #ib#Netzdefinition#ie# in der #ib#Datei#ie# #on("bold")##ib#netz#ie##off("bold")# ein. Dabei
- werden alle augenblicklichen Netzkommunikationen gelöscht. Die Tasks #on("b")##ib#net port#ie#
- (k)#off("b")#, wobei #on("b")#k#off("b")# die #ib#Kanalnummer#ie# ist, und #on("b")##ib#net timer#ie##off("b")# werden gelöscht.
-
- Dieser Aufruf muß vor den Aufrufen von #on("bold")##ib#starte kanal#ie#, #ib#erlaube#ie#, #ib#sperre#ie#, #ib#routen#ie#,
- #ib#aktiviere netz#ie# und #ib#list option#ie##off("bold")# erfolgen.
-
-
-- PROC #ib#sperre#ie# (INT CONST a,z)
- bewirkt, daß die Stationen #on("bold")#a#off("bold")# bis #on("bold")#z#off("bold")# keine Manageraufrufe an Tasks dieser Station
- geben dürfen (Genauer gesagt werden sendecodes > 6 nicht weitergeleitet, son­
- dern ein errornak mit dem Text "#ib(4)#kein Zugriff auf Station#ie(4)#" zurückgeschickt).
-
- Dieser Aufruf muß vor dem ersten #on("bold")##ib#starte kanal#ie##off("bold")# erfolgen.
-
-
-- PROC #ib#erlaube#ie# (INT CONST a,z)
- bewirkt, daß die Stationen #on("bold")#a#off("bold")# bis #on("bold")#z#off("bold")# Manageraufrufe an Tasks dieser Station geben
- dürfen.
-
- Dieser Aufruf muß vor dem ersten #on("bold")##ib#starte kanal#ie##off("bold")# erfolgen.
-
- Beispiel: Alle Stationen außer 8 und 10 sollen #ib#gesperrt#ie# sein:
-
- #ib#sperre#ie# (1,127); erlaube (8,8); erlaube (10,10)
-
- Hinweis: 127 ist z.Zt. die maximale #ib#Stationsnummer#ie(1," maximale")#.
-
-
-- PROC #ib#routen#ie# (INT CONST a,z,k)
- legt fest, daß die Stationen #on("bold")#a#off("bold")# bis #on("bold")#z#off("bold")# an #ib#Kanal#ie# #on("bold")#k#off("bold")# direkt angeschlossen sind. Sen­
- dungen dieser Stationen werden nur bearbeitet, wenn sie über diesen Kanal her­
- einkommen (siehe 1.7.). Fehlt für eine Station ein entsprechender Routenaufruf, so
- darf sie über einen beliebigen #ib#Netzkanal#ie# angeschlossen sein. Dies wird dann von
- #on("bold")##ib#routen aufbauen#ie##off("bold")# ermittelt.
-
- PROC routen (INT CONST a,z,k,zw)
- legt fest, daß die Stationen #on("bold")#a#off("bold")# bis #on("bold")#z#off("bold")# indirekt über die #ib#Knotenstation#ie# #on("bold")#zw#off("bold")# angeschlos­
- sen sind, und #on("b")#zw#off("b")# am Kanal #on("bold")#k#off("bold")# hängt.
-
-
-- PROC #ib#starte kanal#ie# (INT CONST k,m,q)
- startet eine #ib#Netztask#ie# am #ib#Kanal#ie# #on("bold")#k#off("bold")# im Modus #on("bold")#m#off("bold")# [4]. Dabei wird mit #on("bold")#q#off("bold")# die Anzahl
- paralleler #ib#Empfangsströme#ie# festgelegt. Dadurch kann erreicht werden, daß der
- #ib#Empfangspuffer#ie# nicht überläuft, indem nicht mehr als #on("b")#q#off("b")# Ströme quittiert werden.
- Bei #ib#V.24#ie#-#ib#Schnittstelle#ie#n gebe man 3 (ohne #ib#Flußkontrolle#ie#) bzw. 10 (mit Flußkon­
- trolle) an.
-
-
-- PROC #ib#aktiviere netz#ie#
- muß als Abschluß in der Datei #on("bold")##ib#netz#ie##off("bold")# aufgerufen werden. Dabei wird die Task vom
- Terminal abgekoppelt. Falls es bei #on("bold")##ib#definere netz#ie##off("bold")# den #ib#Datenraum#ie# #on("b")##ib#port intern#ie##off("b")#, der
- die #ib#Route#ie#n enthält, nicht gab, wird #on("bold")##ib#routen aufbauen#ie##off("bold")# aufgerufen.
-
-
-- PROC #ib#listoption#ie##goalpage("listop")#
- erzeugt eine Task #on("b")##ib#net list#ie##off("b")#, die bei #on("bold")#list#off("bold")# den #ib#Fehlermeldung#ie#sreport und den Zustand
- aller Netports liefert. Diese Task ist auch über Netz ansprechbar. In der Regel
- sollte man #on("b")#listoption#off("b")# in der Datei #on("b")#netz#off("b")# aufrufen, es sei denn, das System ist sehr
- klein.
-
-#page#
-
-1.6. #ib#Fehlersuche#ie# im Netz
-
-#goalpage("1.6")#
-
-#ib#Fehler#ie# im Netz können sich verschiedenartig auswirken. Im folgenden wird auf einige
-Beispiele eingegangen:
-
-Beispiel:
-
- Auf #on("bold")#list (4/public)#off("bold")# erfolgt die Meldung '#ib(4)#Station#ie(4, " x antwortet nicht")# 4 antwortet nicht'.
-
-
-#ib#Fehler#ie#möglichkeiten:
-
- - #ib#Station#ie# 4 ist nicht eingeschaltet.
- Abhilfe: Station 4 einschalten. Kommando erneut geben.
-
-
- - #ib#Netztask#ie# an Station 4 ist nicht arbeitsfähig.
- Abhilfe: Kommando #on("bold")##ib#start#ie##off ("bold")# in der Task "net" auf Station 4.
-
-
- - Stationsnummern und Boxnummern stimmen nicht überein.
- Abhilfe: Mit #on("bold")#define station#off ("bold")# #ib#Stationsnummer#ie#n korrigieren (siehe 3.2).
-
-
- - #ib#Verbindung#ie# Rechner/Box am eigenen Rechner oder an Station 4 fehlt.
- Abhilfe: Verbindungen überprüfen. Durch Ansprechen einer dritten Station
- kann oft schnell geklärt werden, welche Rechner/Box-Verbindung
- defekt sein muß.
-
-
- - Verbindung der Boxen untereinander defekt.
- Abhilfe: Fehlende Verbindung, #ib#Masseschluß#ie# und #ib#Dreher#ie# (keine 1:1 Verbin­
- dung) überprüfen und beheben.
-
- Hinweis: Liegt z.B. ein Masseschluß vor, so kann es durchaus sein, daß
- Boxen, die nicht in der Nähe des Masseschlusses stehen, noch
- miteinander arbeiten können. Man kann aus der Tatsache, daß zwei
- Boxen miteinander arbeiten können, also nicht schließen, daß man
- nicht nach diesem Fehler suchen muß.
-
-
-
-Beispiel:
-
- Auf #on("bold")#list (4/public)#off("bold")# erfolgt keine Reaktion.
-
-
- - Station 4 ist während dieser Sendung zusammengebrochen.
- Abhilfe: Station 4 wieder starten. Die Bearbeitung des #on("bold")##ib#list#ie##off ("bold")#-Kommandos wird
- automatisch wieder aufgenommen.
-
-
- - PUBLIC auf Station 4 ist nicht im Managerzustand.
- Abhilfe: PUBLIC in den Managerzustand versetzen.
-
-
- - #ib#Fehler#ie# in der #ib#Netzhardware#ie#.
- Überprüfen Sie, ob
-
- - die Boxen eingeschaltet sind,
- - die Bereitlampe blinkt (wenn nicht: #ib#RESET#ie# an der Box),
- - die #ib#V.24#ie#-Kabel richtig stecken,
- - die Boxen untereinander verbunden sind (1 zu 1 Verbindungen der 5 poli­
- gen Diodenbuchsen).
-
-
- - Fehler bei der #ib#Netzinstallation#ie#.
- Überprüfen Sie, ob
-
- - alle Stationen an einem #ib#Strang#ie# gleiche oder kompatible Netzmodi einge­
- stellt haben [4],
- - alle Stationen an einem #ib#Netzstrang#ie# auf die gleiche #ib#Nutzdatenlänge#ie# einge­
- stellt sind,
- - bei der #ib#Kommunikation#ie# über #ib#Knoten#ie# alle Stationen die gleiche Nutzdaten­
- länge bei indirekten Sendungen eingestellt haben,
- - die #ib#Route#ie#n auf allen beteiligten Stationen korrekt eingestellt sind.
-
-
-
-Beispiel:
-
- Auf #on("bold")#list (4/public)#off("bold")# erfolgt die Meldung '#ib(4)##ib#Collectortask#ie# fehlt#ie(4)#'.
-
- - Das Kommando #on("b")##ib#start#ie##off("b")# (bzw #on("b")##ib#aktiviere netz#ie##off("b")# in der #ib#Datei#ie# #on("b")#netz#off("b")#) wurde nicht gege­
- ben. Somit existiert #on("b")##ib#net port#ie##off("b")# nicht.
- Abhilfe: Kommando #on("bold")#start#off ("bold")# in der Task #on("b")#net#off("b")# geben.
-
-
- - Die #ib#Netzsoftware#ie# ist auf einen nicht vorhergesehenen #ib#Fehler#ie# gelaufen. Dieser
- wird im #ib#Report#ie# vermerkt. #on("b")##ib#net port#ie##off("b")# wird dabei gelöscht.
- Abhilfe: Geben Sie in der Task #on("bold")#net#off("bold")# das Kommando #on("bold")#start#off("bold")#. Dadurch wird die
- Netzsoftware neu gestartet. Alle Netzkommunikationen dieser Station
- gehen verloren.
-
-
-
-Beispiel:
-
- Nach #on("bold")##ib#fetch#ie# ("hugo",4/public)#off("bold")# sind Teile der Datei "hugo" verfälscht.
-
- - Die #ib#V.24#ie#-#ib#Verbindung#ie# zur Box ist nicht in Ordnung.
- Abhilfe: Abstand zwischen Rechner und Box verkürzen; #ib#Baud#ie#rate ernie­
- drigen; durch Wechseln der #ib#V.24#ie#-#ib#Schnittstelle#ie# feststellen, ob diese
- defekt ist.
- Hinweis: Die Verbindung zwischen den Boxen ist durch #ib#Prüfsummen#ie# abge­
- sichert (Hardware).
-
-#page#
-
-1.7. Sicherheit im Netz
-
-#goalpage("1.7")#
-
-Bei Benutzung eines Rechnernetzes tauchen neue #ib#Sicherheitsprobleme#ie# auf. Um sie
-verstehen und eingrenzen zu können, muß man sich mit dem #ib#Sicherheitskonzept#ie# des
-Betriebssystems EUMEL vertraut machen:
-
-Eine Task im EUMEL kann nur manipuliert werden, wenn man sie entweder an ein
-Terminal koppelt oder ihr Sendungen zustellt.
-
-Das Ankoppeln kann über #ib#Paßwort#ie# abgesichert werden. Nach dem Ankoppeln kann
-die Task außerdem selbst bestimmen, wie sie die dann möglichen Eingaben behan­
-delt. So kann z.B. noch ein komplizierter Paßalgorithmus zu durchlaufen sein, bis
-man auf einer offenen Programmierumgebung landet.
-
-Sendungen können eine Task auch nur mit ihrem Einverständnis beeinflussen, da
-eine Sendung nur zugestellt wird, wenn die Task in der Prozedur #on("b")##ib#wait#ie##off("b")# steht. Insbe­
-sondere kann die Task den Absender einer Sendung überprüfen und gewisse Opera­
-tionen nur bei gewissen Absendern zulassen. So lehnt ein #on("b")##ib#global manager#ie##off("b")# z.B. alle
-Dateimanagerkommandos ab, die nicht von Nachkommen (z.B. Söhnen) der Task
-kommt. #on("b")##ib#free global manager#ie##off("b")# hingegen läßt Operationen wie #on("b")##ib#save#ie##off("b")# oder #on("b")##ib#erase#ie##off("b")# von
-beliebigen Tasks, auch von fremden #ib#Station#ie#en, zu. Will man nur bestimmte Fremd­
-stationen zulassen, kann man z.B. folgendes Schema verwenden:
-
- PROC my #ib#manager#ie#
- (DATASPACE VAR ds, INT CONST code, phase, TASK CONST source):
-
- IF station (source) = station (myself) OR station (source) = 10
- THEN
- free manager (ds, code, phase, source)
- ELSE
- errorstop ("kein Zugriff")
- FI
-
- END PROC my manager;
-
- global manager (PROC my manager)
-#page#
-Hier werden nur #on("b")#save#off("b")# usw. von Tasks der eigenen Station und der Station 10 zuge­
-lassen. Der Rest erhält die #ib#Fehlermeldung#ie# "kein Zugriff".
-
-Dieses Verfahren gewährt nur dann Sicherheit, wenn es nicht möglich ist, daß eine
-beliebige Station sich als Station 10 ausgibt.
-
-Damit das Netz diese Sicherheit garantieren kann, müssen natürlich gewisse phy­
-sische Voraussetzungen erfüllt sein. Wenn z.B. die Station 10 über eine #ib#V.24#ie# ange­
-schlossen ist, aber jeder die Möglichkeit hat, an diese #ib#Schnittstelle#ie# seinen eigenen
-Rechner anzuschliessen, dann kann das Netz natürlich nicht erkennen, ob es mit der
-echten Station 10 verkehrt.
-
-Es muß also sichergestellt sein, daß an Kanälen für das Netz nicht manipuliert werden
-kann. Bei einem #ib#Strang#ie# (Anschluß über #ib#Netzbox#ie#en) heißt das für die Boxen, daß sie
-nur #ib#Telegramm#ie#e weitervermitteln, die die eingestellte #ib#Quellstationsnummer#ie# enthalten.
-Sonst könnte jemand, der an denselben Strang wie #ib#Station#ie# 10 angeschlossen ist,
-#ib#Telegramm#ie#e erzeugen, die so aussehen, als kämen sie von 10.
-
-Die #ib#Netzsoftware#ie# ihrerseits darf nur Telegramme auswerten, die über die richtige
-#ib#Route#ie# (#ib#Kanal#ie# und #ib#Knotenstation#ie#) einlaufen.
-
-Leider hat dies die unangenehme Konsequenz, daß man automatisches Aufbauen und
-Ändern von Routen verbieten muß, wodurch die Wartung der #ib#Netzkonfiguration#ie#
-erschwert wird.
-
-Diese Version der #ib#Netzsoftware#ie# bietet den folgenden Kompromiß an: Nur für sicher­
-heitsrelevante #ib#Stationen#ie(1,", sicherheitsrelevante")# (im Beispiel Station 10) muß in der #ib#Datei#ie# #on("b")##ib#netz#ie##off("b")# die Route
-angegeben werden. Dies muß in allen Stationen geschehen, für die die Station
-sicherheitsrelevant ist, und in allen #ib#Knoten#ie# dazwischen.
-
-Für nicht sicherheitsrelevante Stationen werden #ib#Routeninformationen#ie# automatisch
-aufgebaut und geändert.
-
-Hinweis:
-Man wird oft ohne sicherheitsrelevante Stationen auskommen, indem man auf Ebenen
-oberhalb der Netzebene Paßwortkontrollen einführt. So ist es z.B. ja möglich, Dateien
-durch Paßworte zu schützen. Ein weiteres Beispiel ist ein #ib#Printerserver#ie#, der nur
-ausdruckt, wenn eine mitgegebene Abrechnungskennung stimmt. Dabei ist es sogar
-wünschenswert, daß die #ib#Station#ie# irrelevant ist, die den Druckauftrag gibt.
-#pagenr ("%",21)##setcount (1)##block##pageblock##count per page#
-#headeven#
-#center#EUMEL Netzbeschreibung
-#center#____________________________________________________________
-
-#end#
-#headodd#
-#center#Teil 2 : Arbeitsweise der Netzsoftware
-#center#____________________________________________________________
-
-#end#
-#bottomeven#
-#center#____________________________________________________________
-Netz - % #right#GMD
-#end#
-#bottomodd#
-#center#____________________________________________________________
-GMD #right#Netz - %
-#end#
-#page#
-
-Teil 2: Arbeitsweise der Netzsoftware
-#goalpage("2")#
-
-
-
-2.1. Die Netztask
-#goalpage("2.1")#
-
-
-In diesem Kapitel wird beschrieben, wie eine #ib#Netztask#ie# in das System eingebettet ist
-und welche Aufgaben sie hat. Unter Einhaltung dieser Konzepte kann die ausgeliefer­
-te Netzsoftware so geändert werden, daß sie beliebige andere #ib#Netzhardware#ie# unter­
-stützt. Die Netzsoftware ist so gegliedert, daß i.allg. nur eine hardwareabhängige
-Komponente ausgetauscht werden muß (siehe Teil 3).
-
-Die Kommunikation zwischen Tasks im EUMEL-Betriebssystem basiert auf einem
-#ib#Rendezvouskonzept#ie#: Die #ib#Zieltask#ie# einer Sendung muß empfangsbereit sein, wenn die
-#ib#Quelltask#ie# sendet.
-
-Die Kommunikationsprozeduren auf der niedrigsten Ebene sind #on("bold")##ib#send#ie##off ("bold")# (Senden) und
-#on("bold")##ib#wait#ie##off ("bold")# (Warten auf Empfang). Bei der Kommunikation werden ein Integer #on("bold")#code#off ("bold")# und ein
-#ib#Datenraum#ie# #on("bold")#dr#off ("bold")# übergeben. #on("bold")#code#off ("bold")# muß >= 0 sein, da negative Codes systemintern ver­
-wandt werden. Ist die empfangende Task an einen #ib#Kanal#ie# gekoppelt (#on("bold")##ib#continue#ie##off ("bold")#), so
-führt eine Zeicheneingabe auf diesem Kanal dazu, daß eine Sendung mit dem Code
--4 ankommt. Die Eingabedaten müssen mit den üblichen #ib#Eingabeprozeduren#ie# (#on("bold")##ib#inchar#ie##off ("bold")#
-usw.) abgeholt werden. Der übermittelte #ib#Datenraum#ie# und die Absendertask sind dabei
-ohne Bedeutung und dürfen nicht interpretiert werden.
-
-Die Prozedur #on("bold")#send#off ("bold")# hat einen #ib#Rückmeldeparameter#ie#, der besagt, ob die Sendung
-übermittelt wurde. Gibt es die Zieltask nicht oder steht sie nicht im #on("bold")#wait#off ("bold")#, so kann die
-Sendung nicht übermittelt werden.
-
-Ein Entwicklungskriterium für das EUMEL-Netz war es, möglichst wenig Unterstüt­
-zung von der virtuellen EUMEL-Maschine (#ib#EUMEL0#ie#) zu fordern, damit weitgehend in
-ELAN programmiert werden kann. Dadurch ist es möglich, eine (privilegierte) Task mit
-der Netzabwicklung zu betrauen.
-#page#
-Zunächst wird auf die #ib#EUMEL0#ie#-Unterstützung eingegangen:
-
-a) Es gibt die Prozedur #on("bold")##ib#define collector#ie##off ("bold")#, mit der die für das Netz verantwortliche
- Task der EUMEL0-Maschine bekannt gemacht wird. Diese Task wird im fol­
- genden #ib#Collector#ie# genannt.
-
-b) Es gibt die Prozedur #on("bold")##ib#define station#ie##off ("bold")#, die für den Rechner eine #ib#Stationsnummer#ie#
- einstellt. Anhand dieser Nummer werden die Rechner eines Netzes unterschie­
- den. Das Einstellen bewirkt, daß für alle Tasks die Stationsnummer in ihre
- #ib#Task-Id#ie# eingetragen wird (Task-Id's sind die Werte, die der Typ TASK anneh­
- men kann).
-
-c) Der Befehl #on("bold")##ib#station#ie# (task)#off ("bold")# liefert die Stationsnummer der #on("bold")#task#off ("bold")#. So liefert z.B.
- #on("bold")##ib#station#ie# (myself)#off ("bold")# die #ib#Stationsnummer#ie# des eigenen Rechners.
-
-d) Eine Sendung, deren #ib#Zieltask#ie# auf einem anderen Rechner liegt (also station (ziel)
- <> station (myself)), wird auf die #ib#Collectortask#ie# geleitet.
-
-e) Es gibt eine Prozedur #on("bold")##ib#collected destination#ie##off ("bold")#, die es dem Collector erlaubt, die
- eigentliche Zieltask einer auf ihn geleiteten Sendung zu erfahren.
-
-f) Es gibt eine Variante der Prozedur #on("bold")##ib#send#ie##off ("bold")#, die es dem Collector gestattet, der
- #ib#Zieltask#ie# eine andere Task als Absender vorzutäuschen.
-
-g) Es gibt eine spezielle #ib#Task-Id#ie# #on("bold")##ib#collector#ie##off ("bold")#, durch die der augenblicklich eingestell­
- te #ib#Collector#ie# erreicht wird. Diese wird als Zieltask beim Aufruf der Vermittlungs­
- dienste angegeben (siehe S. #topage("collector")#). Eine Sendung an #on("bold")#collector#off ("bold")# wird von EUMEL0
- an den derzeitig eingestellten Collector geschickt.
-
-Ein Collector kann also auf drei Wegen von den übrigen Tasks desselben Rechners
-Sendungen erhalten:
-
- 1. Über ein normales #on("b")#send#off("b")# (z.B. bei #on("bold")#list (/"net port")#off ("bold")#, wenn #on("b")#net port#off("b")# der derzeitige
- #ib#Collector#ie# ist),
-
- 2. über ein #on("b")#send#off("b")# an die Task #on("bold")#collector#off ("bold")# (s.u.) und
-
- 3. als umgeleitete Sendung (z.B. bei #on("bold")#list#off ("bold")# an eine Task auf einem anderen
- Rechner).
-
-Der Collector kann diese Fälle anhand von #on("bold")#collected destination#off ("bold")# unterscheiden.
-
-Die Punkte d) bis f) dienen dazu, den Collector für über Netz kommunizierende Tasks
-unsichtbar zu machen: Der Collector taucht nicht als Ziel oder #ib#Quelle#ie# von Sendungen
-auf. Das ist notwendig, damit normale Tasks sich nicht darum kümmern müssen, ob
-eine Sendung übers Netz geht oder im eigenen Rechner bleibt.
-
-Wenn ein #ib#Datenraum#ie# an einen anderen Rechner geschickt wird, muß der gesamte
-Inhalt (z. Zt. max. 1 MB) übertragen werden. Dies macht bei der üblichen Netzhard­
-ware eine Zerlegung in #ib#Paket#ie#e nötig [5]. Bei der Zerlegung eines Datenraumes in
-Pakete (#ib#Telegramm#ie#e) gelten folgende Einschränkungen:
-
- - Ein Paket kann maximal eine #ib#Datenraumseite#ie# als #ib#Nutzdaten#ie# enthalten.
-
- - Die #ib#Nutzdatenlänge#ie# ist für einen #ib#Übertragungsweg#ie# konstant.
-
- - Alle Stationen eines #ib#Netzstrang#ie#s senden mit gleicher Nutzdatenlänge (#on("b")##ib#data
- length#ie##off("b")#).
-
- - Bei indirekter #ib#Kommunikation#ie(1,"indirekte")# (über #ib#Knoten#ie#) muß die Nutzdatenlänge für in­
- direkte Verbindungen (#on("b")##ib#data length via node#ie##off("b")#) auf allen beteiligten Stationen
- gleich eingestellt sein.
-
-
-Für Netze stehen spezielle Blockbefehle zur Verfügung:
-
-
-g) #ib#blockin#ie# / #ib#blockout#ie# (dr,seite,512+abstand,anzahl,rest)
-
- Es werden maximal #on("bold")#anzahl#off ("bold")# Bytes transferiert. In #on("bold")#rest#off ("bold")# wird zurückgemeldet, wie
- viele Bytes nicht bearbeitet wurden (z.B. weil der #ib#Kanal#ie# nichts anliefert). Bear­
- beitet werden die Bytes
-
- #on("bold")#seite#off ("bold")# * 512 + #on("bold")#abstand#off ("bold")#
-
- bis maximal
-
- #on("bold")#seite#off ("bold")# * 512 + #on("bold")#abstand#off ("bold")# + #on("bold")#anzahl#off ("bold")# - 1
-
- Der Kanal, an den die Task gekoppelt ist, wird dabei über #ib#Stream-IO#ie# (d.h.
- #on("bold")##ib#incharety#ie##off ("bold")#, bei #on("bold")#blockin#off ("bold")# bzw. #on("bold")#out#off ("bold")# bei #on("bold")#blockout#off ("bold")#) angesprochen.
-
- Hinweis: Die Anforderung darf nicht über #ib#Seitengrenze#ie# gehen, d.h.
-
- #on("bold")#abstand#off ("bold")# + #on("bold")#anzahl#off ("bold")# <= 512
-
- muß erfüllt sein.
-
-
-Eine Netzsendung läuft wie folgt ab:
-
-Die Task q auf Rechner rq mache ein #on("bold")##ib#send#ie##off ("bold")# an die Task z auf Rechner rz.
-
-1. Die Prozedur #on("bold")#send#off ("bold")# ist ein #ib#EUMEL0#ie#-Befehl. Die EUMEL0-Ebene erkennt, daß die
- Sendung an die #ib#Station#ie# rz geht, da die #ib#Stationsnummer#ie# in der #ib#Task-Id#ie# enthalten
- ist. Daher wird die Sendung zum #ib#Collector#ie# umgeleitet, den EUMEL0 wegen der
- Einstellung durch #on("bold")##ib#define collector#ie##off ("bold")# kennt, umgeleitet.
-
-2. Die Task Collector empfängt über #on("bold")##ib#wait#ie##off ("bold")# den #ib#Datenraum#ie#, den #ib#Sendecode#ie# und die
- Absendertask q. Die #ib#Zieltask#ie# z erfährt sie durch #on("bold")##ib#collected destination#ie##off ("bold")#.
-
-3. Der Collector nimmt Kontakt mit dem Collector des Rechners #on("b")#rz#off("b")# auf, dessen Sta­
- tionsnummer ja #on("bold")##ib#station#ie#(z)#off ("bold")# ist, und übermittelt diesem Sendecode, #ib#Quelltask#ie# (q),
- eigentliche Zieltask (z) und den #ib#Datenraum#ie#. Da die Collectoren in ELAN geschrie­
- ben sind, können sie an beliebige #ib#Netzhardware#ie# und #ib#Protokoll#ie#e angepaßt werden.
-
-4. Der #ib#Collector#ie# auf Rechner #on("b")#rz#off("b")# verwendet das spezielle #on("bold")#send#off ("bold")#, um der Zieltask die
- Sendung zuzustellen. Dadurch erscheint nicht der Collector, sondern die Task #on("b")#q#off("b")#
- als Absender der Sendung.
-
-Zur Abwicklung der #ib#Vermittlungsebene#ie# (siehe S. #topage("vermittlung")#) muß der Collector noch spe­
-zielle Funktionen beherrschen. Diese sind
-
- der #on("b")##ib#/#ie#-Operator#off("b")# (Taskname in #ib#Task-Id#ie# wandeln) und
- die #on("b")##ib#name#ie##off("b")#-Prozedur (Task-Id in Namen wandeln).
-
-Der #on("b")#/#off("b")#-Operator macht eine Sendung an den #on("bold")##ib#collector#ie##off ("bold")#, wobei im #ib#Datenraum#ie# der Name
-der Task steht und der #ib#Sendecode#ie# gleich der Stationsnummer ist (siehe [6] ). Der
-#ib#Collector#ie# setzt sich mit dem Collector dieser Station in Verbindung, damit dieser die
-Task-Id ermittelt und zurückschickt. Der eigene Collector schickt dann dem #on("b")#/#off("b")#-Oper­
-ator als Antwort einen Datenraum, der die #ib#Task-Id#ie# enthält.
-
-Umgekehrt läuft #on("bold")##ib#name#ie##off ("bold")# ab: Wenn die Task-Id von einer fremden Station ist, schickt
-#on("bold")#name#off ("bold")# eine Sendung an den #on("bold")##ib#collector#ie##off ("bold")#, wobei im Datenraum die Task-Id steht und
-Sendecode = 256 ist. Der Collector entnimmt die #ib#Stationsnummer#ie# der Task aus der
-Task-Id und läßt sich vom entsprechenden Collector den Tasknamen geben. Dieser
-wird der #on("bold")#name#off ("bold")#-Prozedur im Antwortdatenraum übergeben.
-
-Netztasks bauen sich #ib#Routentabellen#ie# auf (#ib#Datei#ie#name #on("b")##ib#port intern#ie##off("b")#). Aufgrund dieser
-Tabellen weiß jede #ib#Netztask#ie#, über welchen #ib#Kanal#ie# und welche #ib#Nachbarstation#ie# eine
-#ib#Zielstation#ie# erreichbar ist. Wenn der #ib#Collector#ie# einen Sendeauftrag erhält, prüft er, ob
-die Zielstation über seinen Kanal erreichbar ist. Wenn nicht, leitet er Parameter und
-#ib#Datenraum#ie# der Sendung an die geeignete Netztask weiter.
-#page#
-
-2.2. Ebenen
-
-#goalpage("2.2")#
-
-In diesem Kapitel werden die #ib#Protokollebenen#ie# für das Netz beschrieben, wie sie die
-ausgelieferte Netzsoftware benutzt und erwartet. Bei anderer Netzhardware als Daten­
-boxen müssen die Ebenen a) bis c) ausgetauscht werden [4]. Unter Einhaltung der im
-vorigen Kapitel beschriebenen Randbedingungen können auch die höheren Ebenen
-geändert werden.
-
-
-a) Physikalische Ebene
-
- - #ib#Station#ie# <--> Box
-
- #ib#V.24#ie#-#ib#Schnittstelle#ie# mit #ib#RTS/CTS#ie#-Handshake. Vollduplex.
-
- - Box <--> Box
-
- #ib#RS422#ie# über 2 verdrillte Leitungspaare (Takt und Daten).
-
-
-b) Verbindungsebene
-
- - Station <--> Box
-
- Asynchron
- 8 Bit
- Even Parity
- 2400/4800/9600/19200 #ib#Baud#ie# einstellbar über Lötbrücken)
-
- - Box <--> Box
-
- #ib#SDLC#ie#
- 400 KBaud
-#page#
-c) #ib#Netzebene#ie#
-#goalpage("quelle")#
-
- - Station <--> Box
-
- #ib#Telegrammformat#ie#: #ib#STX#ie#, <n>, <ziel>, <#ib#quelle#ie#>, <(n-4) byte>
-
- <n> ist #ib#Längenangabe#ie# ( 8 <= n <= 160)
- <ziel>, <quelle> sind #ib#Stationsnummer#ie#n. Diese müssen an den jeweiligen
- Boxen eingestellt sein.
-
- Box --> Station:
-
- Ein #ib#Telegramm#ie# kommt nur bei der #ib#Station#ie# an, bei deren Box die Nummer
- <ziel> eingestellt ist. Dadurch ist ein Mithören fremder #ib#Übertragung#ie# nicht
- möglich (Datenschutz).
-
- Zwischen Telegrammen können #ib#Fehlermeldung#ie#en der Box (Klartext) übermittelt
- werden (z.B. 'skipped x', wenn ein #ib#STX#ie# von der Box erwartet wurde, aber 'x'
- von der Station ankommt).
-
- Station --> Box:
-
- Ein Telegramm wird nur abgeschickt, wenn <#ib#quelle#ie#> mit der eingestellten
- Nummer übereinstimmt (Datenschutz: Man kann nicht vorschwindeln, eine
- beliebige Station zu sein, es sei denn, man hat physischen Zugriff zur Box und
- stellt dort die Stationsnummer um).
-
- - Box <--> Box
-
- #ib#Telegrammformat#ie#:
- FRAME, <ziel>, <#ib#quelle#ie#>, <daten>, <CRC-Code>
-
- Eine #ib#Längenangabe#ie# ist nicht nötig, da #ib#SDLC#ie# eine Rekonstruktion der Länge
- erlaubt.
-
- Telegramme mit falschen #ib#CRC-Code#ie# werden vernichtet. Auf höheren Ebenen
- muß dies durch #ib#Zeitüberwachung#ie# erkannt und behandelt werden.
-
-#page#
-d) Transportebene
-
- Diese Ebene wickelt das Rendezvous zwischen einer Task, die #on("bold")##ib#send#ie##off ("bold")# macht, und
- einer Task, die im #on("bold")##ib#wait#ie##off ("bold")# steht, ab [1].
-
- Der im #on("bold")#send#off ("bold")# angegebene #ib#Datenraum#ie# wird als Folge von #ib#Seiten#ie# (im EUMEL-
- Sinne: Pagingeinheit und Allokiereinheit) übermittelt, wobei jede Seite ggf. noch in
- n Byte große Stücke zerlegt wird. Es werden nur echt allokierte Seiten übermit­
- telt. Um nicht jedes #ib#Telegramm#ie# voll qualifizieren zu müssen, wird zunächst eine
- Art virtuelle #ib#Verbindung#ie# durch ein #ib#OPEN#ie#-Telegramm eröffnet. Danach folgen
- variabel viele #ib#DATA#ie#-Telegramme. Beide Sorten werden durch #ib#QUIT#ie#-Tele­
- gramme quittiert, um folgende Funktionen zu ermöglichen:
-
- #ib#Flußkontrolle#ie# (z.B. Zielrechner langsam),
- Wiederaufsetzen (verlorene Telegramme),
- Abbruch (z.B. weil Zieltask inzwischen beendet).
-
- Ein #ib#CLOSE#ie#-Telegramm ist nicht nötig, da das letzte DATA-Telegramm als
- solches erkannt werden kann (siehe unten).
-#page#
- - #ib#OPEN#ie#-Telegramm
-
-#clear pos#
- 0 1 2 3 4 5 6 7 8 9. Byte
-+------+------+------+------+-------------+-------------+-------------------+
-I STX I 24 I Ziel IQuelleI Endziel I Endquelle I Strom I
-+------+------+------+------+-------------+-------------+-------------------+
-
- 10 11 12 13 14 15 16 17
-+-------------+-------------+---------------------------+
-I Sequenz I Seite I Quelltask I
-+-------------+-------------+---------------------------+
-
- 18 19 20 21 22 23
-+---------------------------+-------------+
-I Zieltask I Code I
-+---------------------------+-------------+
-
-
-
- <#ib#ziel#ie#>, <#ib#quelle#ie#> siehe S. #topage("quelle")#
-
- <#ib#endziel#ie#> Eigentliche #ib#Zielstation#ie#. Ist <ziel> = <endziel>, so ist
- das #ib#Telegramm#ie# angekommen. Andernfalls muß die Station
- <ziel> den #ib#Nachbarn#ie# zum Erreichen des <endziel> als
- neues <ziel> einsetzen und das Telegramm an diesen
- Nachbarn weiterleiten.
-
- <#ib#endquelle#ie#> Eigentliche #ib#Absenderstation#ie#. <quelle> ist dagegen immer
- die Nummer der sendenden #ib#Nachbarstation#ie#.
-
- <#ib#strom#ie#> Die #ib#Stromnummer#ie# identifiziert die virtuelle #ib#Verbindung#ie#. Sie
- muß in den #ib#QUIT#ie#-Telegrammen angegeben werden.
-
- <#ib#sequenz#ie#> -1 (Kennzeichen für OPEN)
-
- <#ib#seite#ie#> Nummer der ersten echt allokierten #ib#Seite#ie# des #ib#Datenraum#ie#s
- (=-1, falls Nilspace)
-
- <#ib#quelltask#ie#> #ib#Task-Id#ie# der sendenden Task
-
- <#ib#zieltask#ie#> Task-Id der empfangenden Task
-
- <code> Wert des im #on("bold")##ib#send#ie##off ("bold")# angegebenen Codes
-#page#
- - #ib#DATA#ie#-Telegramm
-
-
-
-
-
- 0 1 2 3 4 5 6 7 8 9. Byte
-+------+------+------+------+-------------+-------------+-------------------+
-I STX I LängeI Ziel IQuelleI Endziel I Endquelle I Strom I
-+------+------+------+------+-------------+-------------+-------------------+
-
- 10 11 12 13 14
-+-------------+-------------+-----------------------------------------------+
-I Sequenz I Seite I n Byte Daten (Länge = 14 + n) I
-+-------------+-------------+-----------------------------------------------+
-
-
- <#ib#laenge#ie#> Gesamtlänge des Telegramms.
- #on("b")#laenge#off("b")# = #on("b")##ib#nutzlaenge#ie##off("b")# + 14.
- Für #on("b")#nutzlaenge#off("b")# sind nur die Werte 64,128,256 und 512
- zugelassen (siehe 1). #on("b")#laenge#off("b")# wird codiert dargestellt (siehe
- Teil 3).
-
-
- <#ib#sequenz#ie#> wird von Telegramm zu Telegramm hochgezählt. Sie dient
- der Überwachung bzgl. verlorengegangener Telegramme
- bzw. durch #ib#Zeitüberwachung#ie# verdoppelter Telegramme.
-
- <#ib#seite#ie#> Nummer der x-ten echt allokierten Seite des #ib#Datenraum#ie#s
- (x = ((<sequenz> DIV anzahl pakete pro seite) + 2)
-
- <n byte> #ib#Nutzinformation#ie#. Diese gehört zur #ib#Adresse#ie# a des Daten­
- raums.
-
- a =
- N (<sequenz> DIV anzahl pakete pro seite + 1) * 512
- + (<sequenz> MOD anzahl pakete pro seite) * n
-
- wobei N (x) die Nummer der x-ten Seite und
- n die #ib#Nutzdatenlänge#ie# ist.
-
- Aus den Formeln ergibt sich, daß diese Nummer schon in
- einem vorhergehenden DATA/OPEN-Telegramm über­
- mittelt wurde (im Feld <seite>).
-
- - #ib#QUIT#ie#-Telegramm
-
-
- 0 1 2 3 4 5 6 7 8 9. Byte
-+------+------+------+------+-------------+-------------+-------------------+
-I STX I 12 I Ziel IQuelleI Endziel I Endquelle I Strom I
-+------+------+------+------+-------------+-------------+-------------------+
-
- 10 11
-+-------------+
-I Quit I
-+-------------+
-
-
-
- <#ib#strom#ie#> muß die #ib#Stromnummer#ie# sein, die in dem #ib#OPEN#ie#/#ib#DATA#ie#­
- Telegramm stand, das quittiert wird.
-
- <quit> 0 : ok. Nächstes Telegramm schicken.
-
- -1: #ib#Übertragung#ie# neu starten (mit #ib#OPEN#ie#), weil die Emp­
- fangsstation das OPEN nicht erhalten hat.
-
- -2: Übertragung ca. 20 Telegramme zurücksetzen.
-
- -3: Übertragung abbrechen.
-
- -4: #ib#Quittung#ie# für letztes Telegramm einer Sendung.
-
-
-e) #ib#Vermittlungsebene#ie##goalpage("vermittlung")# #goalpage("collector")#
-
- Diese Ebene ist dafür zuständig, Namen von Tasks auf anderen Stationen in
- #ib#Task-Id#ie#'s (Werte des Typs TASK) zu wandeln und umgekehrt. Hierzu wird im
- entsprechenden #ib#OPEN#ie#-Telegramm der Code -6 (bzw. -7) als <code> ein­
- getragen. Die #ib#Netzempfangstask#ie# erkennt diese #ib#Codes#ie# und wickelt die Aufgaben
- selbst ab, so daß es dabei nicht nötig ist, irgendeine Task-Id der #ib#Zielstation#ie# zu
- kennen.
-
- Dieses Verfahren ist möglich, weil im #on("bold")##ib#send#ie##off ("bold")# nur positive Codes erlaubt sind.
-#page#
-f) #ib#Höhere Ebenen#ie#
-
- Höhere Ebenen sind nicht mehr netzspezifisch. Sie basieren alle auf dem Send/
- Wait-Konzept des EUMEL. So gibt es z.B. den #on("bold")##ib#global manager#ie##off ("bold")#, der Aufbewah­
- rung und Zugriff von #ib#Datei#ie#en in einer Task regelt. Dabei darf diese Task (bei der
- Variante #on("bold")##ib#free global manager#ie##off ("bold")#) auf einer beliebigen #ib#Station#ie# im Netz liegen. Wegen
- des #ib#Rendezvous-Konzept#ie#s können beliebige Sicherheitsstrategien benutzt werden
- (z.B.: keine Dateien an Station 11 ausliefern). Von großem Wert ist z.B., daß
- man ohne weiteres das Archiv (Floppylaufwerk) einer anderen Station anmelden
- und benutzen kann, wodurch eine einfache Konvertierung von Floppyformaten
- möglich ist. Dies ist möglich, weil auch die Archiv-Task der Stationen sich an
- das Globalmanagerprotokoll halten.
-
-
-
-
-
-Bemerkungen
-
-#ib#Fehlerbehandlung#ie# besteht bis Ebene c) darin, fehlerhafte #ib#Telegramm#ie#e einfach zu
-entfernen. Die Ebene d) überwacht den Netzverkehr sowieso über #ib#Timeout#ie#s, die eine
-Wiederholung eines Telegrammes bewirken, wenn die #ib#Quittung#ie# ausbleibt.
-
-Da bei der sendenden #ib#Station#ie# der ganze #ib#Datenraum#ie# zur Verfügung steht, ist eine
-#ib#Fenstertechnik#ie# (wie bei #ib#HDLC#ie#) nicht nötig. Es kann zu jedem Zeitpunkt um beliebig
-viele Telegramme zurückgesetzt werden.
-
-Da im EUMEL eine #ib#Textdatei#ie# ein #ib#Datenraum#ie# mit sehr komplexer Struktur ist (wegen
-der Insert/Delete-Möglichkeiten, ohne den Rest der #ib#Datei#ie# zu verschieben), ist es ein
-hoher Aufwand, von einem fremden Betriebssytem aus eine Textdatei in das
-EUMEL-Netz zu senden. Für solche Zwecke muß noch eine einfachere Dateistruktur
-definiert und entsprechende Dateikonverter erstellt werden.
-#page#
-
-2.3. Stand der Netzsoftware
-
-#goalpage("2.3")#
-
-Das EUMEL-System wickelt die Prozedur #on("bold")##ib#send#ie##off("bold")# über das Netz ab, wenn die Sta­
-tionsnummer der #ib#Zieltask#ie# ungleich der eigenen #ib#Stationsnummer#ie# ist. Umgekehrt kann
-man der von der Prozedur #on("bold")##ib#wait#ie##off("bold")# gelieferten Absendertask die #ib#Absenderstation#ie# entneh­
-men (siehe Prozedur #on("bold")##ib#station#ie##off("bold")# in Teil 1).
-
-Anders als bei einem #on("bold")##ib#send#ie##off("bold")# innerhalb einer Station meldet ein #on("bold")#send#off("bold")# an eine Task einer
-fremden Station immer 0 zurück (Task gibt es und Task war im wait), obwohl dies
-nicht der Fall sein muß. Ist die Sendung vollständig zur Zielstation übertragen, so
-versucht der dortige #ib#Collector#ie# diese hundertmal im Sekundenabstand zuzustellen.
-Bleibt das erfolglos, wird die Sendung vernichtet.
-#pagenr ("%", 33)##setcount (1)##block##pageblock##count per page#
-#headeven#
-#center#EUMEL Netzbeschreibung
-#center#____________________________________________________________
-
-#end#
-#headodd#
-#center#Teil 3 : Netz Hardware Interface
-#center#____________________________________________________________
-
-#end#
-#bottomeven#
-#center#____________________________________________________________
-Netz - % #right#GMD
-#end#
-#bottomodd#
-#center#____________________________________________________________
-GMD #right#Netz - %
-#end#
-#page#
-
-Teil 3: Netz-Hardware-Interface
-
-
-#goalpage("3")#
-
-
-3.1. Einführung
-
- #goalpage("3.1")#
-
-In diesem Teil der Netzbeschreibung wird die #ib#Schnittstelle#ie# beschrieben, über die
-#ib#Netzhardware#ie# (also #ib#Datenbox#ie#en, #ib#Netzbox#ie#en oder Netzkarten) an die EUMEL-Netz­
-Software angepaßt werden kann. Dieser Teil der Beschreibung ist also nur für Netz­
-implementatoren wichtig.
-
-Das EUMEL-Netz wurde dazu konzipiert, zwei oder mehr EUMEL-Rechner über
-#ib#V.24#ie#-Leitungen oder Datenboxen miteinander zu vernetzen. Dem heutigen Stand der
-Technik entsprechend, werden auf dem Markt eine Reihe von Möglichkeiten ange­
-boten, um PC's zu vernetzen. Diese Netze unterscheiden sich auch dadurch, daß
-unterschiedliche Medien zur Datenübertragung benutzt werden. Das #ib#EUMEL-
-Datenboxen-Netz#ie# benutzt Telefonkabel, #ib#Ethernet#ie# beispielsweise Koax-Kabel. Auch
-Lichtleiter werden zur Datenübertragung benutzt. Entsprechend gibt es eine ganze
-Menge Hardware (#ib#Treiber#ie#, Netzzugangsgeräte, Datenboxen, Anschlußkarten), die die
-Kopplung zwischen einem #ib#I/O-Kanal#ie# eines Rechners und dem Übertragungsmedium
-(Kabel) übernimmt. Das Netz-Hardware-Interface soll als #ib#Schnittstelle#ie# zwischen der
-Netz­Software und dem Treiber dienen. Damit wird es möglich, mehrere EUMEL-
-Rechner über verschiedene (Teil-) Netze (in dieser Beschreibung Stränge genannt)
-und unterschiedliche #ib#Netzhardware#ie# (Treiber) miteinander zu verbinden. Für den
-EUMEL-Benutzer soll dabei kein Unterschied in der Benutzung des EUMEL-Netzes
-feststellbar sein.
-#page#
-Neben unterschliedlichen Übertragungsmedien und Treibern gibt es weitere Unter­
-schiede zwischen Netzen:
-
- - in der Netztopologie (Bus-, Ring- oder Sternnetze),
-
- - in den Netzzugangsverfahren (Token passing, time slice token, slotting oder
- CSMA/CD),
-
- - in der #ib#Übertragungsgeschwindigkeit#ie#,
-
- - im Aufbau der einzelnen #ib#Pakete#ie(1,", Aufbau der")# (#ib#Netztelegramm#ie#e).
-
-Alles, was mit den ersten drei Punkten zusammenhängt, wird von den Netzzugangs­
-geräten behandelt.
-
-Der Paketaufbau aber muß zumeist im Rechner geschehen und kann in den seltens­
-ten Fällen ganz vom Treiber übernommen werden. Ebenso kann der Treiber aus den
-empfangenen Paketen nicht immer die Teile herausfiltern, die von der EUMEL-
-#ib#Netzsoftware#ie# gebraucht werden. Diese Aufgaben übernimmt das #ib#Netz-Hardware-
-Interface#ie#. Das Netz-Hardware-Interface stellt die #ib#Verbindung#ie# zwischen EUMEL-
-#ib#Netzsoftware#ie# und den verschiedenen Netzhardwarearten dar. Ähnlich wie bei den
-Drucker- und Terminal-Anpassungen wurde ein hardwareabhängiger Teil aus der
-Netzsoftware abgetrennt und in einem eigenen #ib#Paket#ie# zusammengefaßt. Beim Start
-des Netzes wird durch Angabe des entsprechenden #ib#Netzmodus#ie# für den jeweiligen
-#ib#Kanal#ie# die entsprechende Anpassung für den benutzten Treiber ausgewählt. Wenn
-andere, neue Treiber angepaßt werden sollen, so müssen lediglich in dem Paket #on("b")##ib#net
-hardware interface#ie##off("b")# die entsprechenden Prozeduren hinzugefügt und die #ib#Sprungleisten#ie#
-(#ib#SELECT#ie#-Statements) erweitert werden.
-
-Durch das #ib#Knotenkonzept#ie# in der #ib#Netzsoftware#ie# ist es möglich, über einen #ib#Knoten­
-rechner#ie# Teilnetze (Stränge), die mit unterschiedlicher #ib#Netzhardware#ie# arbeiten, mitein­
-ander zu verbinden. Es sind dann beispielsweise Verbindungen zwischen Rechnern,
-die über #ib#Ethernet#ie# vernetzt sind, und Rechnern auf dem EUMEL-Datenboxen-Netz
-möglich. Es ist auch möglich, mit einem Rechner Zugang zu einem Netz zu erhalten,
-für das spezielle #ib#Netzhardware#ie# erforderlich ist (Datenboxen, Ethernet-Anschluß). Man
-kann den Rechner über eine Rechner-Rechner-Kopplung (#ib#V.24#ie#) mit einem Rechner
-verbinden, der bereits ans Netz angeschlossen ist, und so (allerdings auf Kosten der
-Leistung des #ib#Knotenrechner#ie#s) Netzhardware einsparen.
-#page#
-
-3.2. Arbeitsweise des
- Netz-Hardware-Interfaces
-
-
-
-
-
- #goalpage("3.2")#
-
-Grob vereinfacht kann man sich die Arbeitsweise der #ib#EUMEL-Netz-Software#ie# so vor­
-stellen:
-
- reset box;
- REP
- IF zeichen da THEN lies telegramm ein
- ELIF telegramm auszugeben THEN gib telegramm aus
- FI
- PER .
-
-(Es ist nur der Teil der Software beschrieben, der die Kanalbehandlung betrifft).
-
-
-Das Zusammenspiel zwischen EUMEL-Netz und Netz-Hardware-Interface ge­
-schieht auf folgende Weise:
-
-
- #on("b")#reset box;#off("b")#
- REP
- IF zeichen da THEN #on("b")#next packet start#off("b")#;
- lies telegramm ein
- ELIF telegramm auszugeben THEN gib telegramm aus
- FI
- PER.
-
- gib telegramm aus:
- #on("b")#transmit header#off("b")#;
- gib eumelnetztelegramm aus;
- #on("b")#transmit trailer #off("b")#.
-
-Die fett gedruckten Programmteile werden im Netz-Hardware-Interface realisiert, die
-anderen Teile stecken in den darüberliegenden Teilen der EUMEL-Netz-Software.
-#page#
-Beim Senden eines #ib#Telegramm#ie#s wird von der #ib#Netzsoftware#ie# zuerst der #ib#Vorspann#ie# in
-einem #ib#Datenraum#ie# an das Hardware-Interface übergeben (#on("b")##ib#transmit header#ie##off("b")#). Im Hard­
-ware-Interface können aus dem Vorspann die entsprechenden Informationen (Tele­
-grammlänge, #ib#Zielstation#ie# usw.) entnommen werden. Dann wird von der Netzsoftware
-das Telegramm (inklusive Vorspann) per #on("b")##ib#blockout#ie##off("b")# übergeben. Danach wird #on("b")##ib#transmit
-trailer#ie##off("b")# aufgerufen, um dem Hardware-Interface das Ende des Telegramms zu mel­
-den. Beim Empfang ruft die Netzsoftware zuerst die #ib#I/O Control#ie# #ib#Telegrammfreigabe#ie#
-auf [7]. Danach wird das erste #ib#Zeichen#ie# des Telegramms angefordert (#on("b")##ib#next packet
-start#ie##off("b")#). Falls ein #ib#STX#ie# geliefert wurde, wird das Telegramm per #on("b")##ib#blockin#ie##off("b")# eingelesen. Falls
-#ib#Niltext#ie# zurückgeliefert wird, wird von der Netzsoftware #ib#Timeout#ie# angenommen. Alle
-anderen Zeichen werden so interpretiert, als ob Störungen aufgetreten wären. Die
-Netzsoftware übernimmt die #ib#Fehlerbehandlung#ie#. Dazu wird u. U. ein Leerlesen des
-Puffers vom Hardware-Interface verlangt (#on("b")##ib#flush buffers#ie##off("b")#).
-
-Bei der Einstellung der #ib#Nutzdatenlänge#ie# (#on("b")##ib#data length#ie##off("b")#) ist zu beachten, daß
-
-a) alle #ib#Station#ie#en, die an einem #ib#Strang#ie# hängen, auf die gleiche Nutzdatenlänge
- eingestellt sein müssen.
-
-b) Wenn mehrere Stränge über #ib#Knoten#ie# miteinander verbunden sind, muß die Nutz­
- länge für Sendungen über Knoten (#on("b")##ib#data length via node#ie##off("b")#) auf allen Stationen des
- gesamten Netzes gleich eingestellt sein. Die Zusammenfassung oder Aufteilung
- von #ib#Telegramm#ie#en in Knoten ist nicht möglich.
-
-c) Als mögliche Nutzdatenlänge sind folgende Werte erlaubt:
-
- 64, 128, 256 und 512 Byte.
-
- Größere Nutzdatenlängen sind zur Zeit nicht möglich.
-
-d) Je größer die #ib#Nutzdatenlänge#ie# ist, desto geringer ist der Overhead an #ib#Zeichen#ie#,
- die auf den Rechnern verarbeitet werden müssen. Allerdings muß der Rechner
- leistungsfähig genug sein, die ankommenden Blöcke schnell genung zu verarbei­
- ten, und die Netztreiber müssen entsprechend große Puffer haben.
-
-
-Alle implementierten Netzanpassungen sollen in einem Netz-Hardware-Interface
-zusammengefaßt werden. Dies ist notwendig, um über #ib#Knotenrechner#ie# Netzstränge
-verbinden zu können, die mit unterschiedlicher #ib#Netzhardware#ie# arbeiten. So können
-zum Beispiel ein #ib#Strang#ie#, der mit Datenboxen aufgebaut ist, und ein #ib#Ethernet#ie#-#ib#Strang#ie#
-über einen Knotenrechner miteinander verkoppelt werden.
-#page#
-Aus diesem Grund wurden #on("b")#Netzmodi#off("b")# eingeführt. Man kann dadurch, daß die Netz­
-modi, genau wie die #ib#Kanal#ie#angaben, in der #ib#Datei#ie# #on("b")##ib#netz#ie##off("b")# niedergelegt sind, ohne Aus­
-tausch einer Softwarekomponente die Netzhardware wechseln. Es gibt auch die
-Möglichkeit, durch verschiedene Netzmodi unterschiedliche Treiber an ein und das­
-selbe Netz anzuschließen. Beispielsweise gibt es für einige Rechnertypen Steckkarten,
-mit denen der Rechner an das Ethernet angeschlossen werden kann. Man kann,
-wenn diese Karten angepaßt sind, den #ib#Ethernet#ie#-Zugang über verschiedene Netz­
-anschlußkarten realisieren.
-
-Das Netz-Hardware-Interface muß folgende Aufgaben übernehmen:
-
- Bei der Ausgabe an den Treiber:
-
- - Generieren und Ausgeben des #ib#Paket#ie#headers,
- - Umsetzen von logischen Stationsadressen (#ib#Stationsnummer#ie#n) in phy­
- sische #ib#Adresse#ie#n,
- - Ausgeben der Daten (EUMEL-Netz-#ib#Telegramm#ie#e),
- - Generieren und Ausgeben des Trailers und evtl. Auffüllen des Pakets mit
- #ib#Füllzeichen#ie#, falls auf dem Netz eine Mindestlänge für Pakete gefordert
- wird.
-
- Bei der Eingabe vom Treiber:
-
- - Weglesen von #ib#Füllzeichen#ie#,
- - Prüfen der #ib#Adresse#ie#n,
- - Weglesen von #ib#Paket#ie#teilen, die in der EUMEL-Netz-Software nicht
- gebraucht werden.
-
- Weiterhin können Funktionen wie
-
- - Reset des Treibers,
- - Prüfung, ob Stationsadresse und #ib#Adresse#ie# im Treiber übereinstimmen,
- - Statistik und Service
-
- durch das Netz-Hardware-Interface übernommen werden.
-
-Dazu wird ein Satz von Prozeduren über die #ib#DEFINES#ie#-#ib#Schnittstelle#ie# des Netz-
-Hardware-Interfaces zur Verfügung gestellt. Wenn neue Treiber oder Netzarten
-implementiert werden sollen, so muß an diesem Interface nichts geändert werden. Die
-herausgereichten Prozeduren realisieren #ib#Sprungleisten#ie# (#ib#SELECT#ie#-Statements), über
-die durch Erweiterung (#ib#CASE#ie#) die Prozeduren erreicht werden können, die den ent­
-sprechenden #ib#Netzmodus#ie# realisieren. Außerdem werden Informationsprozeduren für die
-darüberliegenden Programmteile zur Verfügung gestellt.
-#page#
-
-3.3. Netztreiber
-
- #goalpage("3.3")#
-Unter #ib#Netztreiber#ie#n versteht man die Einheiten, die den Anschluß des Rechners an ein
-Netz realisieren. Das können #ib#Netzbox#ie#en sein, die mit dem Rechner über eine #ib#V.24#ie#-
-Leitung verbunden sind, aber auch Anschlußkarten, die direkt auf den Datenbus des
-Rechners gehen. Falls die #ib#Schnittstelle#ie# der Treiber-Hardware eine andere als die
-serielle #ib#V.24#ie# ist, muß in der Regel eine Anpassung für die Hardware im #ib#SHard#ie# vorge­
-nommen werden.
-
-Falls der Treiber über eine serielle #ib#V.24#ie#-#ib#Schnittstelle#ie# mit dem Rechner verbunden
-ist, wie das auch bei der direkten Kopplung oder dem Datenboxennetz der Fall ist,
-wird die hohe #ib#Übertragungsgeschwindigkeit#ie# auf dem eigentlichen Netz durch die
-relativ geringe Übertragungsgeschwindigkeit auf der #ib#V.24#ie#-#ib#Schnittstelle#ie# zwischen
-Rechner und Treiber (Box) gebremst. Über andere Schnittstellen im Rechner, wenn
-sie mit #ib#Stream I/O#ie# [7] betrieben werden, kann man dies vermeiden. Diese Schnitt­
-stellen müssen vom SHard bedient werden.
-
-Wenn in den Rechner integrierte Netztreiber (Netzanschlußkarten) benutzt werden
-sollen, so muß in der Regel die Behandlung dieser Netzanschlußkarte im SHard
-durchgeführt werden.
-
-Um effizient implementieren zu können, sollte darauf geachtet werden, daß möglichst
-wenig zusätzliche #ib#Zeichen#ie# von der #ib#Netzsoftware#ie# bzw. dem Netz-Hardware-Inter­
-face bearbeitet werden müssen. Das Auffüllen von Paketen auf eine Mindestlänge
-sollte möglichst vom Treiber gemacht werden, ebenso wie das Weglesen dieser
-Zeichen.
-
-Um einen sicheren und effektiven Netzbetrieb zu garantieren, sollten die Treiber
-folgende Eigenschaften haben:
-
- - Die #ib#Stationsadresse#ie# ist im Treiber festgelegt, sie soll nicht ohne weiteres
- verändert werden können (Datenschutz).
- - Der Treiber reicht nur #ib#Paket#ie#e mit richtiger #ib#Zieladresse#ie#, keine #ib#Broad- oder
- Multicasts#ie# an die Netzsoftware weiter.
- - Der Treiber sendet nur #ib#Paket#ie#e mit richtiger #ib#Absenderadresse#ie# bzw. setzt die
- Absenderadresse selbst ein.
- - Die am Treiber eingestellte #ib#Adresse#ie# kann abgefragt werden, oder es wird,
- wenn ein Paket mit falscher #ib#Absenderadresse#ie# vom Rechner kommt, eine
- #ib#Fehlermeldung#ie# an den Rechner gegeben. Die Fehlermeldung muß durch das
- Netz-Hardware-Interface in den #on("b")##ib#report#ie##off("b")# eingetragen werden.
- - Falls Pakete mit #ib#Füllzeichen#ie# aufgefüllt werden müssen, sollten die Füll­
- zeichen durch den Treiber generiert und beim Empfang wieder entfernt
- werden.
- - Falls mehrere Betriebsmodi möglich sind, so sollten sie softwaremäßig
- einstellbar sein.
- - Falls die Treiber über eine serielle #ib#Schnittstelle#ie# an den Rechner angeschlos­
- sen werden, so sollte der Treiber konfigurierbar sein. In jedem Fall sollte die
- serielle Schnittstelle mit #ib#Flußkontrolle#ie# (#ib#RTS/CTS#ie#) implementiert werden.
-
-Zusätzlich ist ein Transparent-Modus als #ib#Netzmodus#ie# von Vorteil:
-
- - Der Modus (transparent) kann zu Testzwecken benutzt werden. Beispiels­
- weise um auch mit Rechnern kommunizieren zu können, die über Netz
- erreichbar sind, aber kein EUMEL-Netz-#ib#Protokoll#ie# benutzen.
-
- Modus n: transparent.
-
- Ausgabeseitig: Das #ib#Paket#ie# wird unverändert ausgegeben.
- #ib#Adresse#ie#n usw. müssen schon im Paket vor­
- handen sein. Es wird nicht mit #ib#Füllzeichen#ie#
- aufgefüllt.
- Eingabeseitig: Das Paket wird unverändert an die Netzsoft­
- ware weitergegeben.
-
-#page#
-
-3.4. Prozedurschnittstelle
- des EUMEL-Netzes
-
-
-
-
-
- #goalpage("3.4")#
-Im PACKET #on("b")##ib#net hardware interface#ie##off("b")# sind folgende Prozeduren untergebracht:
-
-
-
- BOOL PROC #ib#blockin#ie#
- (DATASPACE VAR ds, INT CONST seite, abstand, länge):
-
- Versucht, #on("b")#länge#off("b")# Zeichen vom #ib#Kanal#ie# einzulesen. Liefert TRUE, wenn alle
- Zeichen eingelesen wurden, FALSE, wenn innerhalb einer bestimmten
- Zeit nicht alle #on("b")#länge#off("b")# Zeichen eingelesen werden konnten (z.B. weil der
- Kanal nicht mehr Zeichen anliefert). Die eingelesenen Zeichen werden im
- #ib#Datenraum#ie# #on("b")#ds#off("b")# in #ib#Seite#ie# #on("b")#seite#off("b")# ab #on("b")#abstand#off("b")# bis #on("b")#abstand#off("b")# + #on("b")#länge#off("b")# - 1 abge­
- legt.
-
- #ib#Fehlerfall#ie#:
-
- #on("b")#blockin Abbruch#off("b")#
-
- Es werden weniger #ib#Zeichen#ie# innerhalb einer festgelegten Zeitspanne über
- den Kanal angeliefert, als mit #on("b")#länge#off("b")# gefordert.
-
- Passiert z.B., wenn die Kabel während einer Netzübertragung unter­
- brochen werden, oder wenn die Gegenstelle abgeschaltet wird. Das
- #ib#Telegramm#ie# wird vernichtet, die Prozedur liefert FALSE, es wird eine
- entsprechende Meldung im #on("b")##ib#report#ie##off("b")# erzeugt.
-
- PROC #ib#blockout#ie#
- (DATASPACE CONST ds, INT CONST seite, abstand, länge):
-
- Der Inhalt von Seite #on("b")#seite#off("b")# des #ib#Datenraum#ie#s #on("b")#ds#off("b")# wird von #on("b")#abstand#off("b")# bis
- #on("b")#abstand#off("b")# + #on("b")#länge#off("b")# - 1 ausgegeben.
-#page#
- PROC #ib#set net mode#ie# (INT CONST mode):
-
- Es wird der #ib#Netzmodus#ie# #on("b")#mode#off("b")# eingestellt. Im Netz-Hardware-Interface
- müssen alle Initialisierungen und Einstellungen vorgenommen werden,
- damit die mit #on("b")#mode#off("b")# geforderte #ib#Netzhardware#ie# unterstützt wird. Diese
- Prozedur wird bei jedem #on("b")##ib#start#ie##off("b")#-Kommando in der Netztask aufgerufen.
- Kann als Initialisierungsprozedur für dieses PACKET verwendet werden.
- Übergibt den in der #ib#Datei#ie# #on("b")##ib#netz#ie##off("b")# für diesen #ib#Kanal#ie# verlangten Netzmodus an
- das Netz-Hardware-Interface. Nach Aufruf dieser Prozedur müssen die
- wertliefernden Prozeduren #on("b")##ib#net mode#ie#, #ib#mode text#ie#, #ib#data length#ie##off("b")# und #on("b")##ib#data
- length via node#ie##off("b")# korrekt initialisiert sein. Der Aufruf von #on("b")##ib#net addess#ie##off("b")# muß
- die korrekten (physikalischen) #ib#Adresse#ie# der #ib#Station#ie#en liefern.
-
- TEXT PROC net address (INT CONST stationsnummer):
-
- Liefert die (Hardware-) Netz-#ib#Adresse#ie#, über die der EUMEL-Rechner
- mit der Stationsnummer #on("b")##ib#stationsnummer#ie##off("b")# beim aktuell für diesen Kanal
- eingestellten #ib#Netzmodus#ie# erreichbar ist. Auf diese #ib#Adresse#ie# muß der Treiber
- des entsprechenden Rechners eingestellt sein. Auch die eigene Netz-
- Adresse muß mit der im Treiber eingestellten #ib#Adresse#ie# übereinstimmen.
- Insbesondere müssen alle Stationen, die auf dem Netz arbeiten, dieselbe
- Netz-Adresse für eine #ib#Stationsnummer#ie# errechnen.
-
- TEXT PROC #ib#mode text#ie#:
-
- Liefert den Text (Namen) des eingestellten #ib#Netzmodus#ie#. Wird in #on("b")##ib#net
- manager#ie##off("b")# benutzt, um den Netzmodus im #on("b")##ib#report#ie##off("b")# anzugeben.
-
- TEXT PROC mode text (INT CONST mode):
-
- Liefert den Text (Namen) zu dem #ib#Netzmodus#ie# #on("b")#mode#off("b")#.
-
- INT PROC #ib#data length#ie# (INT CONST mode):
-
- Liefert die #ib#Nutzdatenlänge#ie# (#ib#Länge#ie# der Nettodaten des Eumel-
- Telegramms) im Netz. Wird von #on("b")##ib#basic net#ie##off("b")# beim Neustart aufgerufen. Muß
- in einem Netz auf allen Stationen eines #ib#Strang#ie#s denselben Wert liefern.
-
- Erlaubte Werte: 64, 128, 256 und 512.
-#page#
- INT CONST #ib#data length via node#ie#:
-
- Liefert die #ib#Nutzdatenlänge#ie# für Sendungen, die über #ib#Knoten#ie# gehen.
- Muß auf allen Stationen des Netzes gleich sein.
-
- Erlaubte Werte: 64, 128, 256 und 512.
-
- PROC #ib#decode packet length#ie# (INT VAR value):
-
- Die #ib#Länge#ie# eines Netztelegramms ist im #ib#Telegramm#ie# codiert enthalten. Mit
- dieser Prozedur wird aus dem Telegrammkopf die Telegrammlänge ermit­
- telt:
-
- Falls beim Aufruf dieser Prozedur in #on("b")#value#off("b")# der Wert des Feldes #on("b")#head#off("b")# aus
- der Struktur #on("b")#vorspann#off("b")#, die in #on("b")#ds#off("b")# per #on("b")##ib#transmit header#ie##off("b")# übergeben wurde,
- enthalten ist, so wird in #on("b")#value#off("b")# die Länge des EUMEL-Netztelegramms
- zurückgeliefert.
-
- PROC #ib#flush buffers#ie#:
-
- Liest den Eingabepuffer des #ib#Netzkanal#ie#s leer. Die eingelesenen Zeichen
- werden vernichtet. Wird nach Erkennen von #ib#Übertragungsfehler#ie#n aufge­
- rufen.
-
- TEXT PROC #ib#next packet start#ie#:
-
- Liefert genau ein #ib#Zeichen#ie# (in der Regel das erste Zeichen des EUMEL-
- Netztelegramms). Wird von der Netzsoftware immer dann aufgerufen,
- wenn ein neues #ib#Paket#ie# erwartet wird.
-
- Bedeutung des gelieferten Zeichens für die #ib#Netzsoftware#ie#:
-
- #ib#STX#ie#: korrekter #ib#Telegrammanfang#ie# (ist das erste Zeichen des
- EUMEL-Netztelegramms). Der Rest des EUMEL-Netztele­
- gramms steht im Eingabepuffer, ist also über #ib#blockin#ie# lesbar.
- Vorher wurden nur Zeichen eingelesen, die zum verwendeten
- #ib#Netzprotokoll#ie# gehören (z.B. #ib#Ethernet#ie#-#ib#Adresse#ie#n, #ib#Füllzeichen#ie#
- usw.).
- niltext: kein neues Telegramm da
-
- jedes andere Zeichen:
- Fehler. Entweder wurden Störzeichen eingelesen oder es
- gingen Zeichen verloren. #ib#Fehlerbehandlung#ie# erfolgt durch die
- Netzsoftware.
-#page#
- PROC #ib#transmit header#ie# (DATASPACE CONST ds):
-
- Wird vor Ausgabe eines jeden #ib#Telegramm#ie#s aufgerufen. In dem #ib#Datenraum#ie#
- #on("b")#ds#off("b")# wird von der EUMEL-Netz-Software der #on("b")##ib#Vorspann#ie##off("b")# übergeben. Über
- den jeweiligs eingestellten #ib#Netzmodus#ie# kann für jede implementierte Netz­
- art über eine #ib#Sprungleiste#ie# (#ib#SELECT#ie#) die Prozedur angesprungen werden,
- die den #ib#Header#ie# für den eingestellten Netzmodus erstellt und ausgibt.
- Struktur des von der EUMEL-Netz-Software benutzten Headers:
-
- BOUND STRUCT
- (INT head,
- zwischenziel,
- zielrechner,
- quellrechner,
- strom,
- sequenz,
- seitennummer ) VAR vorspann.
-
- Aus dem Inhalt des Feldes #on("b")#head#off("b")# kann mittels #on("b")##ib#decode packet length#ie##off("b")# die
- Gesamtlänge des EUMEL-Netztelegramms errechnet werden.
-
- PROC #ib#transmit trailer#ie#:
-
- Wird nach Ausgabe eines jeden Telegramms aufgerufen. Evtl. notwendige
- Nachspänne können ausgegeben werden. Die notwenigen Informationen
- wurden in #on("b")##ib#transmit header#ie##off("b")# übergeben und müssen aufbewahrt werden,
- falls sie im Trailer mitgeliefert werden müssen. Kann auch dazu benutzt
- werden, den unter diesem Packet liegenden Schichten (#ib#SHard#ie# oder Hard­
- ware) das Ende des Telegramms mitzuteilen. Notwendige #ib#Füllzeichen#ie#
- können in dieser Prozedur in das #ib#Paket#ie# eingebaut werden.
-
- PROC #ib#reset box#ie# (INT CONST net mode):
-
- Kann zur Initialisierung der #ib#Netzhardware#ie# benutzt werden. Wird von #on("b")##ib#basic
- net#ie##off("b")# beim jedem Neustart aufgerufen.
-
- INT PROC #ib#max mode#ie#:
-
- Liefert den Wert des größten erlaubten (implementierten) #ib#Netzmodus#ie#.
-
- INT PROC #ib#net mode#ie#:
-
- Liefert den eingestellten Netzmodus.
-#page#
-#pagenr ("%", 45)##setcount (1)##block##pageblock##count per page#
-#headeven#
-#center#EUMEL Netzbeschreibung
-#center#____________________________________________________________
-
-#end#
-#headodd#
-#center#Anhang
-#center#____________________________________________________________
-
-#end#
-#bottomeven#
-#center#____________________________________________________________
-Netz - % #right#GMD
-#end#
-#bottomodd#
-#center#____________________________________________________________
-GMD #right#Netz - %
-#end#
-#clear pos##lpos(1.0)##rpos(9.5)##goalpage("A")#
-
-Anhang: Netz-Meldungen#goalpage("A.1")#
-
-Mit dem Kommando #on("b")##ib#list#ie# (/"net list")#off("b")# (siehe Teil 1) erhalten Sie eine temporäre #ib#Datei#ie#
-auf den Bildschirm. Diese Datei könnte ungefähr so aussehen:
-
-____________________________________________________________________________
-
- N e u e r S t a r t 12:44 Stationsnummer : 38
- 01.06.87 12:55 net port 8:20:Nicht zustellbar. . Empfänger: "net dok". Quelle 34 Taskindex: 255
- 02.06.87 06:30 net port 8:1:wdh data. sqnr 7. Absender: "net dok". Ziel 34 Taskindex: 255
- 02.06.87 07:03 net port:20:Sequenzfehler: soll 13 ist 14. Empfänger: "POST". Quelle 33 Taskindex:
- 02.06.87 07:03 net port:blockin abbruch
- 02.06.87 07:03 net port:20:Sequenzreset von 13 auf 10. Empfänger: "POST". Quelle 33 Taskindex: 29
- 02.06.87 07:36 net port:Call gelöscht."net dok". Strom 1
- 02.06.87 07:43 net port 8:verbotene Route: 34
- 02.06.87 07:50 net port:Header inkorret eingelesen: %0 %2
- 02.06.87 07:50 net port:buffers flushed
- 02.06.87 07:52 net port:Weiterleitung nicht möglich für 34
- 02.06.87 07:53 net port 8:skipped0 6 G O 1 0 . 0 %13 %10 2 8 0 6 0 6 G O 1 0 . 0 %13 %10 2 8 0
- 02.06.87 08:14 net port 8:skipped%13 %10 S p e c . R e c e i v e E r r o r C 2
- 02.06.87 08:21 net port:20:Reopen. Empfänger: "WÜFE". Quelle 40 Taskindex: 22
- 02.06.87 09:25 net port:1:etwas rueckgespult. Absender: "-". Ziel 33 Taskindex: 51
- 02.06.87 09:25 net port:1:wdh data. sqnr 20. Absender: "-". Ziel 33 Taskindex: 51
- 02.06.87 09:54 net port:20:Blocknummer falsch, neu: 192, alt : -1. Empfänger: "WÜFE". Quelle 44
- 02.06.87 10:12 net port:Daten ohne Eroeffnung von 40 Sequenznr 7
- 02.06.87 10:23 net port:Header inkorret eingelesen: O X 0 3 8 B O X 0 4 4 E U %2
- 02.06.87 10:23 net port:buffers flushed
- 02.06.87 10:49 net port:1:wdh open. Absender: "-". Ziel 33 Taskindex: 255
- 02.06.87 10:49 net port:2:wdh open. Absender: "net dok". Ziel 33 Taskindex: 255
- 02.06.87 10:53 net port:1:Sequenzfehler: soll 2 ist 3. Empfänger: "net dok". Quelle 33 Taskindex:
- 02.06.87 10:54 net port:1:Sequenzreset von 8 auf 5. Empfänger: "net dok". Quelle 33 Taskindex: 11
- 02.06.87 10:56 net port:2:etwas rueckgespult. Absender: "-". Ziel 33 Taskindex: 51
- bekannte Stationen:
- 1(8,1) 2(8,2) 3(8,3) 4(8,4) 5(8,5) 6(8,6) 7(8,7) 8(8,8) 9(8,9) 10(8,10)
- 11(8,11) 12(8,12) 13(8,13) 14(8,14) 15(8,15) 16(8,16) 17(8,17) 18(8,18)
- 19(8,19) 20(8,20) 21(8,21) 22(8,22) 23(8,23) 24(8,24) 25(8,25) 26(8,26)
- 27(8,27) 28(8,28) 29(8,29) 30(8,30) 31(8,31) 32(8,32) 33(9,33) 34(8,34)
- 35(9,35) 36(9,36) 37(9,37) 39(9,39) 40(9,40) 41(9,41) 42(9,42) 43(9,43)
- 44(9,44) 45(9,45) 46(9,46) 47(9,47) 48(9,48)
- --------
- Eingestellte Netzmodi:
- net port 8 haengt an Kanal 8, Modus: (1) EUMEL-Netz 64 Byte
- net port haengt an Kanal 9, MODUS: (11) ETHERNET via V.24 512 Byte
-
- Nutzdatenlänge 512 Byte
- Nutzdatenlänge bei indirekter Verbindung: 64 Byte
- ********
- Netz-Software vom 23.05.87
- Rechner 38 um 11:11
- net port 8
-
- Strom 1 (sqnr7/8) sendet an 34 . Absender ist "net dok".
- net port
-
- Strom 1 (sqnr45/45) empfaengt von 40 . Empfaenger ist "PUBLIC".
-
-____________________________________________________________________________
-#page#
-Die Datei enthält den aktuellen #on("b")##ib#report#ie##off("b")#, in dem #ib#Fehlermeldung#ie#en der einzelnen Tasks
-gesammelt werden. Außerdem wird der Zustand aller Verbindungen (Ströme) von allen
-#on("b")##ib#net port#ie##off("b")#'s angezeigt. Im #on("b")#report#off("b")#-Teil kann man drei Informationsblöcke unterscheiden:
-
-a) den Block mit den Fehlermeldungen. Es werden jeweils Datum, Uhrzeit, der Name
- des betroffenen #on("b")#net port#off("b")# und, wenn notwendig, die #ib#Stromnummer#ie# angegeben.
- Darauf folgt der Meldungstext, der auch Informationen über Absender und Emp­
- fänger enthalten kann.
-
- <Datum> <Zeit> <Name der #ib#Kanaltask#ie#> : [<#ib#Stromnummer#ie#> : ] <Meldung>
-
-
-b) den Block mit der Liste der bekannten #ib#Station#ie#en. Ein Eintrag in dieser Liste ent­
- hält jeweils die Stationsnummer der bekannten Station und in Klammern dahin­
- ter die Nummer des Kanals auf diesem Rechner, über den die Station erreichbar
- ist und die Nummer der nächsten #ib#Zwischenstation#ie#.
-
- <Zielstation> (<Kanalnr>,<Zwischenstation>)
-
- Bei direkt erreichbaren Stationen ist Zwischenstation gleich #ib#Zielstation#ie#.
-
- Hinweis: Auch #ib#gesperrt#ie#e Stationen erscheinen in dieser Liste.
-
-
-c) den Block, der Auskunft über die Netzinstallation gibt. Es werden für jeden Netz­
- kanal die eingestellten Netzmodi angegeben. Des weiteren werden die beiden
- Größen #on("b")##ib#data length#ie##off("b")# (#ib#Nutzdatenlänge#ie#) und #on("b")##ib#data length via node#ie##off("b")# (Nutzdatenlänge bei
- indirekter Verbindung) angegeben. Zusätzlich erscheinen noch die #ib#Netzversion#ie# und
- die genaue Uhrzeit, zu der dieser #on("b")#report#off("b")# erstellt wurde.
-
-#page#
-Für jeden #on("b")##ib#net port#ie##off("b")# wird pro aktivem #ib#Strom#ie# folgende Meldung generiert:
-
-Strom <Stromnr> (sqnr<akt Seqnr>/<max Seqnr>) <Zustand> <Partner>
-
-
-<Stromnr> #ib#Stromnummer#ie#
-
-<akt Seqnr> #ib#Sequenznummer#ie# des gerade bearbeiteten #ib#Telegramm#ie#s
-
-<max Seqnr> Bei #ib#Sendeströme#ie#n die Nummer der letzten zu übertragenden
- #ib#Sequenz#ie#, bei Empfangsströmen in der Regel die Nummer der
- letzten Sequenz der gerade übertragenen #ib#Datenraumseite#ie#.
-
-<#ib#Zustand#ie#> Hier wird die Aktion (senden, empfangen usw.) und die Partner­
- station angegeben.
-
-<#ib#Partner#ie#> Der Name der Task mit der kommuniziert wird.
-
-
-Die Meldungen, die in der #ib#Datei#ie# #on("b")##ib#report#ie##off("b")# protokolliert werden, kann man in verschiedene
-Gruppen einordnen. Die eine Gruppe beschreibt Störungen durch #ib#Zeichenverluste#ie#
-oder ­verfälschungen, eine andere Gruppe protokolliert besondere Situationen, bei­
-spielsweise den Abbruch von #ib#Übertragung#ie#en, und die letzte Gruppe befasst sich mit
-#ib#Fehlermeldung#ie#en, die ein Eingreifen von aussen notwendig machen. Je nachdem, ob
-die Station, auf der die Meldung protokolliert wird, Empfänger oder Absender ist, wird
-bei den Meldungen #ib#Stationsnummer#ie# und Taskname des Kommunikationspartners mit
-angegeben.
-
-Zur ersten Gruppe gehören:
-
-#ib(4)##ib#skipped#ie##ie(4)#
- 'skipped' oder skipped mit einem Zusatztext erscheint, wenn Zei­
- chen eingelesen wurden, die zu keinem gültigen #ib#Telegramm#ie# ge­
- hören. Dies kann passieren, wenn auf der Leitung zwischen
- Rechner und Box #ib#Zeichen#ie# verlorengegangen sind. Auch nach dem
- Einschalten oder nach einem Reset auf Box oder Rechner kann
- diese Meldung kommen. Mindestens ein Teil der eingelesenen
- Daten wird mit ausgegeben, wobei Steuerzeichen durch % und den
- Code des Steuerzeichens dargestellt werden. Die einzelnen Zeichen
- werden durch ein Blank voneinander getrennt.
-#page#
-#ib(4)##ib#Sequenzfehler#ie##ie(4)#
- Die #ib#Sequenznummer#ie# ist zu groß, es fehlen also Telegramme. Die
- Gegenstation wird aufgefordert, ab einem früheren Telegramm zu
- wiederholen.
-
-#ib(4)#wdh data#ie(4)#
- Das letzte Telegramm wird erneut geschickt. Passiert, wenn die
- #ib#Quittung#ie# für dieses Telegramm nach einer bestimmten Zeit nicht
- angekommen ist.
-
-#ib(4)##ib#Sequenzreset#ie##ie(4)#
- Die #ib#Sequenznummer#ie# des empfangenen Telegramms ist kleiner als
- die Sequenznummer des vorher empfangenen Telegramms. Die
- Verbindung wird bei der zuletzt empfangenen Sequenznummer
- fortgesetzt.
-
-#ib(4)#Blocknummer falsch#ie(4)#
- Die #ib#Seitennummer#ie# in dem #ib#Telegramm#ie# ist falsch.
-
-#ib(4)#etwas rueckgespult#ie(4)#
- Auf Anforderung der Gegenseite werden die letzten drei #ib#Datenraum­
- seite#ie#n erneut übertragen.
-
-#ib(4)#Daten ohne Eroeffnung#ie(4)#
- Es werden Telegramme mit einer #ib#Stromnummer#ie# empfangen, zu der
- vorher kein OPEN-Telegramm empfangen wurde. In diesem Fall
- wird die Gegenstation aufgefordert, die #ib#Übertragung#ie# von vorn zu
- beginnen. Diese Meldung kann auch kommen, wenn das Netz neu
- gestartet wurde.
-
-#ib(4)#wdh open#ie(4)#
- Die Übertragung wird mit dem #ib#OPEN#ie#-Telegramm von vorn begon­
- nen. Passiert auf Aufforderung durch die Gegenstation oder wenn
- das erste OPEN-Telegramm nicht quittiert wurde.
-
-#ib(4)##ib#buffers flushed#ie##ie(4)#
- Alle bereits eingelesenen, aber noch nicht bearbeiteten Zeichen
- wurden gelöscht (der #ib#Eingabepuffer#ie# wurde komplett gelöscht). Verur­
- sacht durch schwere Störungen (#ib#Zeichenverluste#ie# oder -verfäl­
- schungen).
-#page#
-#ib(4)#blockin abbruch#ie(4)#
- Es wurden nicht alle Zeichen eines Telegramms innerhalb eines
- bestimmten Zeitraums angeliefert.
-
-#ib(4)#Header inkorrekt eingelesen#ie(4)#
- Es wurde ein Fehler in dem Teil des Netztelegramms gefunden, der
- nicht zum EUMEL-Netz gehört.
-
-#ib(4)#Strom falsch in Quittung#ie(4)#:
- In der #ib#Quittung#ie# wurde eine nicht zulässige #ib#Stromnummer#ie# festge­
- stellt. Zulässig sind Stromnummern zwischen 1 und 20.
-
-#ib(4)#Neustart#ie(4)#
- Die Gegenstation hat die #ib#Verbindung#ie# von vorne begonnen.
-
-#ib(4)#Falsche Seitennummer#ie(4)#
- Die #ib#Seitennummer#ie# in dem empfangenen Telegramm ist falsch.
- Einige Telegramme werden wiederholt.
-
-#ib(4)#Absteigende Seitennummern#ie(4)#
- Die Seitennummer in dem empfangenen Telegramm ist kleiner als
- die Seitennummer im vorigen #ib#Telegramm#ie#. Es müssen einige Tele­
- gramme wiederholt werden.
-
-
-Die folgenden Meldungen beschreiben Situationen, die nicht durch #ib#Zeichenverluste#ie#
-entstehen, mit denen die #ib#Netzsoftware#ie# selbst fertig wird:
-
-
-#ib(4)#Sendung von Gegenstelle gelöscht#ie(4)#
- Die Verbindung wurde von der Gegenstelle abgebrochen.
-
-#ib(4)#Empfangseintrag freigegeben#ie(4)#
- Die Verbindung wurde von der empfangenden #ib#Station#ie# gelöscht, weil
- seit dem Eintreffen des letzten Telegramms zuviel Zeit vergangen ist
- (#ib#Timeout#ie#).
-
-#ib(4)#Irrläufer#ie(4)#
- Eine #ib#Intertaskkommunikation#ie# innerhalb der eigenen Station wurde
- fälschlicherweise über den #on("b")##ib#Collector#ie##off("b")# abgewickelt. Dieser Vorgang
- wird abgebrochen.
-#page#
-#ib(4)#Call-Löschung vorgemerkt#ie(4)#
- Sobald der Call abgewickelt ist, wird diese Verbindung gelöscht.
- Beispielsweise führt ein vom Benutzer abgebrochenes #on("b")##ib#name#ie##off("b")# zu
- dieser Meldung.
-
-#ib(4)#Call gelöscht#ie(4)#
- Die #ib#Verbindung#ie# wurde auf Anforderung durch den Auftraggeber
- gelöscht.
-
-#ib(4)#Quellrechner#ie(4)#
- Als #ib#Quellrechnernummer#ie# wurde ein unzulässiger Wert festgestellt.
- Zulässig sind Zahlen zwischen 1 und 127.
-
-#ib(4)#Nicht zustellbar#ie(4)#
- Innerhalb eines bestimmten Zeitraums war die #ib#Zieltask#ie# nicht emp­
- fangsbereit. Die Verbindung wird abgebrochen.
-
-Bei diesen Meldungen sollten die #ib#Routenanweisungen#ie# überprüft werden:
-
-#ib(4)#Verbotene Route bei Quittung#ie(4)#
- Die #ib#Quittung#ie# kommt auf einer nicht erlaubten #ib#Route#ie# an. Dies kann
- bei #ib#Vermaschung#ie# passieren, oder aber, wenn eine Station versucht,
- sich für eine andere Station auszugeben.
-
-#ib(4)#Verbotene Route#ie(4)#
- Die danach bezeichnete Station versucht, auf einer anderen Route
- mit diesem Rechner zu kommunizieren, als auf der Route, die für
- diesen Rechner in der Datei #on("b")##ib#netz#ie##off("b")# festgelegt wurde.
-
- Abhilfe:
- #ib#Routentabellen#ie# der beiden (oder, falls die Meldung auf einer
- #ib#Knotenstation#ie# erscheint, auf allen beteiligten) Stationen abgleichen.
-
-#ib(4)#Weiterleitung nicht möglich#ie(4)#
- Die #ib#Routeninformationen#ie# auf dem #ib#Knotenrechner#ie#, wo diese Meldung
- erscheint, und der sendenden #ib#Station#ie# stimmen nicht überein. Die
- angegebene Station ist von dieser Station aus nicht erreichbar.
-
- Abhilfe:
- #ib#Routentabellen#ie# der Stationen überprüfen.
-
-#ib(4)#Fremdzugriff#ie(4)#
- Eine #ib#gesperrt#ie#e Station hat versucht, auf diesen Rechner mit #ib#Sende­
- codes#ie# > 6 zuzugreifen.
-
-
-Folgende Meldungen betreffen '#ib#harte Fehler#ie#'. Diese Fehler werden von der Netzsoft­
-ware nicht abgefangen. In jedem Fall muß das Netz nach einer solchen #ib#Fehler­
-meldung#ie# neu gestartet werden.
-
-#ib(4)#++++++#ie(4)#
- Meldungen dieser Form sind 'harte' Fehler. Der aufgetretene Fehler
- wird mit angegeben. Das Netz muß neu gestartet werden, da die
- Task, in welcher der Fehler aufgetreten ist, gelöscht wird.
-
-#ib(4)#Verbindungsengpaß#ie(4)#
- Es sind mehr Verbindungen festgestellt worden, als zulässig sind.
- Nach dieser Meldung wurde der entsprechende Netport gelöscht.
-
-
-Literaturverzeichnis
-
-
-#goalpage("A.2")#
-
-#clear pos#
-#lpos(1.0)##lpos(2.5)#
-#table#
-[1] EUMEL-Systemhandbuch, Teil 5, Intertaskkommunikation
- GMD St. Augustin, 1986
-[2] EUMEL-Systemhandbuch, Teil 2, Hardware und ihre Steuerung
-[3] EUMEL-Systemhandbuch, Teil 8, Spooler
-[4] EUMEL-Netz Installationsanweisung
- GMD St. Augustin, 1987
-[5] EUMEL-Systemhandbuch, Teil 4, Blockorientierte Ein/Ausgabe
-[6] EUMEL-Quellcode, Packet #on("b")#tasks#off("b")#
- GMD St. Augustin, 1986
-[7] EUMEL-Portierungshandbuch 8086, Version 8
- GMD St. Augustin, 1987
-
-#table end#
-
-
diff --git a/net/netzhandbuch.anhang b/net/netzhandbuch.anhang
deleted file mode 100644
index 17d1ece..0000000
--- a/net/netzhandbuch.anhang
+++ /dev/null
@@ -1,58 +0,0 @@
-#pagenr ("%", 51)##setcount##block##pageblock##count per page#
-#headeven#
-#center#EUMEL Netzbeschreibung
-#center#____________________________________________________________
-
-#end#
-#headodd#
-#center#Anhang
-#center#____________________________________________________________
-
-#end#
-#bottomeven#
-#center#____________________________________________________________
-Netz - % #right#GMD
-#end#
-#bottomodd#
-#center#____________________________________________________________
-GMD #right#Netz - %
-#end#
-#clear pos##lpos(0.0)##rpos(11.0)##fillchar(".")#
-Anhang: Netz-Fehlermeldungen
-
-#table#
-++++++ 50
-Absteigende Seitennummern 48
-blockin abbruch 48
-Blocknummer falsch 47
-buffers flushed 47
-Call gelöscht 49
-Call-Löschung vorgemerkt 49
-Collectortask fehlt 8, 18
-Daten ohne Eroeffnung 47
-Empfangseintrag freigegeben 48
-etwas rueckgespult 47
-Falsche Seitennummer 48
-Fremdzugriff 50
-Header inkorrekt eingelesen 48
-Irrläufer 48
-kein Zugriff auf Station 14
-Neustart 48
-Nicht zustellbar 49
-Quellrechner 49
-Sendung von Gegenstelle gelöscht 48
-Sequenzfehler 47
-Sequenzreset 47
-skipped 46
-Station x antwortet nicht 8, 11, 16
-Station x gibt es nicht 9, 11, 13
-Strom falsch in Quittung 48
-Task "..." gibt es nicht 8
-Verbindungsengpaß 50
-Verbotene Route 49
-Verbotene Route bei Quittung 49
-wdh data 47
-wdh open 47
-Weiterleitung nicht möglich 49
-#table end#
-
diff --git a/net/netzhandbuch.index b/net/netzhandbuch.index
deleted file mode 100644
index 01d8a0f..0000000
--- a/net/netzhandbuch.index
+++ /dev/null
@@ -1,259 +0,0 @@
-#pagenr ("%", 52)##setcount (1)##block##pageblock##count per page#
-#headeven#
-#center#EUMEL Netzbeschreibung
-#center#____________________________________________________________
-
-#end#
-#headodd#
-#center#Anhang
-#center#____________________________________________________________
-
-#end#
-#bottomeven#
-#center#____________________________________________________________
-Netz - % #right#GMD
-#end#
-#bottomodd#
-#center#____________________________________________________________
-GMD #right#Netz - %
-#end#
-#clear pos##lpos(0.0)##rpos(11.0)##fillchar(".")#
-Anhang: Index
-
-#table#
-/ 8, 9, 24
-Absenderadresse 39
-Absenderstation 28, 32
-Adresse 29, 37, 39, 41, 42
-aktiviere netz 14, 15, 18
-basic net 41, 43
-Baud 6, 18, 25
-blockin 23, 36, 40, 42
-blockout 23, 36, 40
-Broad- oder Multicasts 38
-buffers flushed 47
-CASE 37
-CLOSE 27
-collected destination 22, 24
-Collector 22, 24, 32, 48
-Collectortask 8, 18, 22
-configurate 6
-continue 7, 21
-CRC-Code 26
-DATA 27, 29, 30
-data length 23, 36, 41, 45
-data length via node 23, 36, 41, 42, 45
-Datei 2, 5, 7, 12, 13, 14, 18, 20, 24, 31, 37, 41, 44, 46
-Datenbox 2, 6, 33
-Datenraum 13, 15, 21, 23, 24, 27, 28, 29, 31, 36, 40, 43
-Datenraumseite 23, 46, 47
-decode packet length 42, 43
-define collector 22, 24
-definere netz 15
-DEFINES 37
-define station 5, 22
-definiere netz 14
-Dreher 16
-Durchsatz 3
-Eingabeprozeduren 21
-Eingabepuffer 47
-Empfangspuffer 15
-Empfangsströme 13, 15
-endquelle 28
-endziel 28
-erase 13, 19
-erlaube 14
-Ethernet 33, 34, 36, 37, 42
-EUMEL0 21, 22, 24
-EUMEL-Datenboxen-Netz 33
-EUMEL-Netz-Software 35
-exists 11
-Fehler 8, 16, 17, 18
-Fehlerbehandlung 31, 36, 42
-Fehlerfälle 8
-Fehlerfall 11, 40
-Fehlermeldung 13, 15, 20, 26, 39, 45, 46, 50
-Fehlersituationen 12
-Fehlersuche 16
-Fenstertechnik 31
-fetch 10, 18
-flush buffers 36, 42
-Flußkontrolle 7, 15, 27, 39
-free global manager 10, 19, 31
-Füllzeichen 37, 39, 42, 43
-gesperrt 13, 14, 45, 50
-global manager 19, 31
-harte Fehler 50
-HDLC 31
-Header 43
-Höhere Ebenen 31
-inchar 21
-incharety 23
-Installation 2
-Installationsanleitung 2
-Intertaskkommunikation 48
-I/O Control 36
-I/O-Kanal 33
-Kanal 3, 6, 7, 12, 14, 15, 20, 21, 23, 24, 34, 37, 40, 41
-Kanalnummer 14
-Kanaltask 45
-Knoten 3, 4, 17, 20, 23, 36, 42
-Knotenkonzept 3, 34
-Knotenrechner 34, 36, 49
-Knotenstation 13, 14, 20, 49
-Kommunikation 17
-Kommunikationindirekte 23
-konfigurieren 6
-Länge 29, 41, 42
-Längenangabe 26
-list 10, 12, 17, 44
-listoption 12, 14, 15
-Löschversuche 13
-Manager 10, 19
-Masseschluß 16
-max mode 43
-mode text 41
-Nachbarn 4, 28
-Nachbarstation 24, 28
-name 11, 24, 49
-net 7, 12, 13
-net addess 41
-net hardware interface 34, 40
-net install 7
-net list 12, 15
-net manager 41
-net mode 41, 43
-net port 7, 8, 12, 13, 18, 45, 46
-net timer 14
-netz 7, 14, 15, 20, 37, 41, 49
-Netzbox 3, 6, 20, 33, 38
-Netzdefinition 14
-Netzebene 26
-Netzempfangstask 30
-Netzhardware 2, 17, 21, 24, 33, 34, 36, 41, 43
-Netz-Hardware-Interface 34
-Netzinstallation 17
-Netzkanal 13, 14, 42
-Netzknoten 3
-Netzkonfiguration 7, 20
-Netzmodus 34, 37, 39, 41, 43
-Netzprotokoll 42
-Netzsoftware 2, 3, 18, 20, 34, 36, 38, 42, 48
-Netzstrang 4, 17, 23
-Netztask 15, 16, 21, 24
-Netztelegramm 34
-Netztreiber 38
-Netzübertragungen 12
-Netzversion 2, 45
-next packet start 36, 42
-niltext 11, 36
-Nutzdaten 23
-Nutzdatenlänge 17, 23, 29, 36, 41, 42, 45
-Nutzinformation 29
-nutzlaenge 29
-OPEN 27, 28, 30, 47
-Paket 23, 34, 37, 38, 39, 42, 43
-Pakete, Aufbau der 34
-Partner 46
-Paßwort 19
-Pin-Belegung 6
-port intern 13, 15, 24
-Printerserver 20
-Protokoll 6, 13, 24, 39
-Protokollebenen 25
-Prüfsummen 18
-Quelle 23, 26, 28
-Quellrechnernummer 49
-Quellstationsnummer 20
-quelltask 21, 24, 28
-Querarchivierungen 10
-QUIT 27, 28, 30
-Quittung 30, 31, 47, 48, 49
-Rechnerkopplung 3
-Rendezvouskonzept 21, 31
-report 8, 12, 18, 39, 40, 41, 45, 46
-reserve 10
-RESET 17
-reset box 43
-Route 13, 15, 17, 20, 49
-routen 14
-Routenanweisungen 49
-routen aufbauen 13, 14, 15
-Routeninformationen 20, 49
-Routentabelle 9, 13
-Routentabellen 24, 49
-router 13
-RS422 25
-RTS/CTS 6, 25, 39
-Rückmeldeparameter 21
-run 13
-save 10, 19
-Schnittstelle 3, 15, 18, 20, 25, 33, 37, 38, 39
-SDLC 25, 26
-seite 28, 29, 40
-Seiten 27
-Seitengrenze 23
-Seitennummer 47, 48
-SELECT 34, 37, 43
-send 21, 22, 24, 27, 28, 30, 32
-Sendecode 24
-Sendecodes 50
-Sendeströme 13, 46
-Sendungskonzept 2
-sequenz 28, 29, 46
-Sequenzfehler 47
-Sequenznummer 46, 47
-Sequenzreset 47
-set net mode 41
-SHard 38, 43
-Sicherheitskonzept 19
-Sicherheitsprobleme 19
-skipped 46
-sperre 14
-Spoolmanager 5
-Sprungleiste 43
-Sprungleisten 34, 37
-start 5, 13, 16, 18, 41
-starte kanal 14, 15
-station 2, 5, 8, 10, 12, 13, 16, 19, 20, 22, 24, 26, 31, 32, 36, 41, 45, 48, 49
-Stationen, sicherheitsrelevante 20
-Stationsadresse 38
-Stationsnummer 5, 10, 16, 22, 24, 26, 32, 37, 41, 46
-Stationsnummer maximale 14
-Strang 3, 17, 20, 36, 41
-Stream I/O 23, 38
-strom 28, 30, 46
-Stromnummer 13, 28, 30, 45, 46, 47, 48
-STX 26, 36, 42
-Task-Id 5, 22, 24, 28, 30
-Telegramm 20, 23, 26, 27, 28, 31, 36, 37, 40, 42, 43, 46, 47, 48
-Telegrammanfang 42
-Telegrammformat 26
-Telegrammfreigabe 36
-Textdatei 31
-Timeout 31, 36, 48
-transmit header 36, 42, 43
-transmit trailer 36, 43
-Treiber 33
-Übertragung 26, 30, 46, 47
-Übertragungsfehler 42
-Übertragungsgeschwindigkeit 34, 38
-Übertragungsweg 23
-V24 3, 4, 15, 17, 18, 20, 25, 33, 34, 38
-Verbindung 3, 6, 16, 18, 27, 28, 34, 48, 49
-Vermaschung 4, 49
-Vermittlungsebene 24, 30
-Vorspann 36, 43
-wait 19, 21, 24, 27, 32
-Worker 5
-Zeichen 36, 38, 40, 42, 46
-Zeichenverluste 46, 47, 48
-Zeitüberwachung 26, 29
-ziel 28
-Zieladresse 38
-Zielstation 4, 8, 24, 28, 30, 36, 45
-Zieltask 21, 22, 24, 28, 32, 49
-Zustand 46
-Zwischenstation 45
-#table end#
-