|

|
Grundlagen Computernetze
Prof. Jürgen Plate
|
Einführung
Der Zusammenschluß von diversen Computern und
Peripheriegeräten zu Netzen gewinnt immer stärkere Bedeutung. Netze (Netzwerke)
sind Verbindungssysteme, an die mehrere Teilnehmer zum Zweck der
Datenkommunikation angeschlossen sind.
Lokale Netze (LAN, Local Area Network) sind Netze in einem örtlich begrenzten
Bereich (Raum, Gebäude, Gelände), der sich im Besitz einer einzigen
Organisation (z. B. Firma) befindet. Die Verbindung mehrerer LAN-Segmente
erfolgt über Koppelelemente (Hubs, Switches, Bridges, Router, etc.).
Weitverkehrsnetze (WAN, Wide Area Network) sind Netze, die über weitere
Entfernungen reichen (Stadt, Land, Welt). Die einzelnen Netze können über
Router oder Gateways miteinander gekoppelt werden und dabei auch öffentliche
Kommunikationsnetze nutzen.
Jegliche Kommunikation zwischen zwei Partnern ist an bestimmte Voraussetzungen
gebunden. Zum einen muß die Hardware der Partner und der
Datenübertragungseinrichtungen über kompatible Schnittstellen verfügen und zum
anderen müssen Vereinbarungen über die Art und Weise des Informationsaustausch
getroffen werden (Protokolle). Zur Festlegung von Schnittstellen und
Protokollen gibt es zahlreiche Standards (nationale und internationale Normen,
Firmenstandards).
Wie definiert die ISO (International Standardisation Organisation) ein LAN?
"Ein lokales Netz (LAN) ist eine Netz für bitserielle Übertragung von
Informationen zwischen untereinander verbundenen unabhängigen Geräten. Das Netz
unterliegt vollständig der Zuständigkeit des Anwenders und ist auf ein
Grundstück begrenzt." Es werden also nicht nur Computer miteinander
vernetzt, sondern auch andere Geräte wie Drucker, Monitore, Massenspeicher,
Kontrollgeräte, Steuerungen, Fernkopierer und anderes. Der Unterschied eines
LAN zu anderen Netzen wird von der ISO durch folgende Eigenschaften festgelegt:
begrenzte Ausdehnung, hohe Datenübertragungsrate, geringe Fehlerrate,
dezentrale Steuerung, wahlfreier Zugriff und die Übertragung von Datenblöcken.
Kern der Datenkommunikation ist der Transport der Daten, also die
Datenübertragung von einem Sender mittels eines Übertragungskanals zu einem
Empfänger. Die zu übertragenden Daten werden im Rhythmus eines Sendetaktes auf
das Übertragungsmedium gegeben. Damit die Information korrekt wiedergewonnen
werden kann, muß am Empfangsort eine Abtastung der Signale zum richtigen
Zeitpunkt erfolgen. Normalerweise verwendet man dazu eine Codierung, die eine
Rückgewinnung des Taktes aus dem Signal erlaubt. Auf diese Weise kann sich der
Empfänger jederzeit auf den Takt des Senders synchronisieren.
ISO-Referenzmodell für die Datenkommunikation
Eine wesentliche Forderung in der Datenfernverarbeitung ist
das Zusammenschalten unterschiedlicher Stationen (verschiedener Hersteller).
Dazu ist eine Schematisierung und Gliederung des Kommunikationsprozesses in
wohldefinierte, hierarchische Ebenen (Schichten, Layers) notwendig. Es erfolgt
eine Zuordnung der einzelnen Kommunikationsfunktionen zu bestimmten logischen
Schichten. Wird in einer Schicht eine Anpassung (Änderung, Erweiterung) vorgenommen,
bleiben die anderen Ebenen davon unberührt.
ISO (International Standard Organisation) hat für offene Netze ein
7-Schicht-Modell, das OSI-Modell (OSI = Open Systems Interconnection),
geschaffen. Dieses Modell liegt nahezu allen Kommunikationsgeräten und
-Verfahren zugrunde (zur Not werden vorhandene Protokolle in das Schema von
ISO/OSI gepreßt). Im OSI-Modell werden die grundsätzlichen Funktionen der
einzelnen Ebenen und die Schnittstellen zwischen den Ebenen festgelegt. So
ergibt sich eine universell anwendbare logische Struktur für alle Anforderungen
der Datenkommunikation verschiedener Systeme.
Das OSI-Model liefert
- Eine Basis für die
Interpretation existierender Systeme und Protokolle in der
Schichten-Perspektive (wichtig bei Änderungen).
- Eine Referenz für die
Entwicklung neuer Kommunikationsverfahren und für die Definition neuer
Protokolle, also eine Grundlage für kompatible Protokolle.
Wesensmerkmale der hierarchischen Schichtenstruktur bei Rechnernetzen sind:
- Das Gesamtsystem wird in
eine geordnete Menge von Teilsystemen gegliedert.
- Teilsysteme des gleichen
Ranges bilden eine Schicht (engl. Layer).
- Die einzelnen Schichten
liegen entsprechend ihrer hierarchischen Rangordnung übereinander.
- Eine hieranrchisch lieferliegende
Schicht dient der Erfüllung der Kommunikationsfunktion der jeweils
übergeordneten Schicht.
- Jede Schicht stellt
definierte Dienste bereit. Diese Dienste realisieren bestimmte
Kommunikations- und Stuerungsaufgaben.
Die einzelnen Schichten stellen somit definierte Schnittstellen zu ihren
Nachbarn bereit (Schicht 4 hat z. B. Schnittstellen zu den Schichten 3 und 5).
Die Kommunikation findet nur über diese Schnittstellen statt (in der Grafik
senkrecht).
Die rein logische Kommunikation zwischen den beteiligten Stationen A und B
erfolgt jedoch auf der Basis gleicher Schichten (in der Grafik waagrecht, mit
'.' gekennzeichnet). Lediglich bei Schicht 1 handelt es sich um eine
physikalische Verbindung.

Aufgabe der einzelnen Schichten:
- Die Schichten 1 - 4 werden
der Transportfunktion zugeordnet
- Die Schichten 5 - 7 werden
den Anwenderfunktionen zugeordnet
Zunächst eine kurze Beschreibung der einzelnen Schichten. Eine
Übersichtsgrafik finden Sie auf der folgenden Seite. Dabei ist auch der zur
Schicht gehörende Datenblock gezeigt. Jede Schicht kann (muß aber nicht) die
Daten mit einem eigenen Header (bzw. Datenrahmen) versehen, der zur
Kommunikationssteuerung auf dieser Schicht dient. Der Datenblock einer Schicht
(mit Rahmen) wird von der Schicht als reine Nutzdaten betrachtet, sie kann so
auch an dem Header der übergeorneten Schicht nichts ändern.
- 7. Anwendungs-Schicht
(Application) Verbindung zum Anwenderprogramm und Dialog mit den
Programmen. Eine Standardisierung ist hier noch in weiter Ferne. Es gibt
aber eine Reihe von grundsätzlichen Diensten, die angeboten werden müssen:
- Austausch von
Dateien, d. h. Dateizugriffsdienste über das Netz. Für das eigentliche
Anwenderprogramm ist nicht erkennbar, ob auf eine Datei lokal oder über
das Netz zugegriffen wird.
- Verwaltungsprotokolle
für Benutzerzugang, Dateizugriffsrechte, electronische Post, usw.
- Remote Job Entry, d.
h. absetzen von Rechenaufträgen an entfernte Systeme
- Virtuelle Terminals,
d. h. Umleitung der Ein-/AUsgabe eines Programms auf dem fernen Rechner
an den lokalen Bildschirm und die lokale Tastatur.
- Message-Handling-Systeme:
Austausch und Verwaltung von Mitteilungen an Benutzer anderer Systeme.
Die Schicht 7 besteht also trotz ihrens Namens nicht aus
den eigentlichen Anwenderprogrammen - diese setzen auf dieser Schicht auf. Das
kann einerseits direkt geschehen, z. B. beim Zugriff auf Dateien eines anderen
Rechners (Datei-Server) andererseits auch nur durch (lokale) Übergabe von
Dateien an das Message-Handling-System.
- 6. Darstellungs-Schicht
(Presentation) Hier werden für die Anwendung die Daten interpretiert.
Überwachung des Informationsaustausches und Codierung/Decodierung (z. B.
EBCDIC in ASCII) der Daten sowie Festlegung der Formate und Steuerzeichen.
Diese Schicht bildet oft eine Einheit mit der Anwendungsschicht oder sie
fehlt ganz, falls sie nicht benötigt wird. Hier können z. B.
"virtuelle Terminals" eingebunden werden. Wie wir früher schon
besprochen haben, besitzen Terminals ganz unterschiedliche Codes für die
Tastatur und die Steuerung der Darstellung auf dem Bildschirm. In Schicht
6 können diese Codes in einen einheitlichen Code übersetzt werden.
- 5. Kommunikationssteuerung
(Session) Diese Ebene steuert die Aufbau, Durchführung und Beendigung der
Verbindung. Überwachung der Betriebsparameter, Datenfluß-Steuerung (bei
Bedarf mit Zwischenspeicherung der Daten), Wiederaufbau der Verbindung im
Fehlerfall und Synchronisation. Der Verbindungsaufbau ist ein bestätigter
Dienst, d. h. beide Partner tauschen Parameterübergabe und Bestätigung im
Wechselspiel aus. Danach befinden sich beide Partner in einem definierten
Zustand.
Das trifft nicht für die nächste Phase, den Datentransfer zu. Es aus
Zeitgründen z. B. nicht sinnvoll nach dem Senden eines Datenblocks auf die
Bestätigung zu warten. Es wird gleich der nächste Block geschickt und die
Bestätigungen laufen zeitversetzt ein (immerhin muß alles die Schichten 4
- 1 durchlaufen). Durch sogenannte "Synchronisation Points" wird
die Datentransferphase in Abschnitte unterteilt. Bei einer Störung oder
Unterbrechung kann der Transfer an einen definierten Punkt wieder
aufgenommen werden.
Beide Partner können den Verbindungsaufbau beenden. Das kann ordnungsgemäß
nach Beendigung aller Transfers geschehen (Ende mit Synchronisation) oder
durch Unterbrechen der Verbindung (Ende ohne Synchronisation).
In diese Ebene fallen auch das Ein- und Ausgliedern von Stationen beim
Token-Ring und die Adressierung eines bestimmten Partners.
- 4. Transport (Transport)
Reine Transportfunktion. Diese Schicht stellt sicher, daß alle Datenpakete
den richtigen Empfänger erreichen. Aufbau der Datenverbindung zwischen
zwei Partnern, Datentransport, Flußkontrolle, Fehlererkennung und
-korrektur. Diese Schicht verbirgt die Charakteristika des Netzes (LAN,
WAN, ...) vor den darüberliegenden Schichten. Die Transportschicht kann z.
B. auch bei einer Forderung nach höherem Datendurchsatz mehrere
Verbindungen zum Parner aufbauen und die Daten in Teilströmen leiten
(splitting/combining). Auch das Aufteilen der Daten in passende Blöcke und
die Flußkontrolle obliegen dieser Schicht. Die Dienste der
Transportschicht werden in fünf Klassen unterschieden:
- Klasse 0 ist die
einfachste. Es findet gegenüber der Schicht 3 keine Fehlerkontrolle statt
und einer Transportverbindung enspricht genau eine Netzverbindung.
- In der Klasse 1
kommt zwar keine Fehlerbehandlung hinzu, es wird jedoch versucht, von der
Schicht 3 gemeldete Fehler zu beheben und nicht an die Schicht 5
weiterzuleiten. Z. B. kann bei Unterbrechung der Transportverbindung
versucht werden, diese wieder aufzubauen, ohne daß dies oberhalb der
Schicht 4 bemerkt wird.
- Klasse 2 kann
mehrere Transportverbindungen aufbauen (Multiplexverbindung). In diesem
Fall darf die Netzverbindung erst dann getrennt werden, wenn die letzte
Transportverbindung abgebaut ist.
- Klasse 3 deckt die
Leistungen der Klassen 1 und 2 ab, d. h. einfache Fehlerbehandlung und Multiplexen.
- Klasse 4 enthält
neben den Funktionen der Klasse 3 zusätzliche Mechanismen zur
Fehlererkennung und -behandlung. Speziell bei Datagramm-orientieren
Netzen (LAN) kann so ein verbindungsorientierter Dienst bereitgestellt
werden (Sicherstellen von Vollständigkeit, Eindeutigkeit und Reihenfolge
der Datenblöcke).
- 3.
Vermittlung-/Paket-Schicht (Network) Diese Ebene dient haptsächlich der
Datenpaket-Übertragung. Sie ist zusändig für die Wahl der Datenwege
(routing), für das Multiplexen mehrerer Verbindungen über einzelne
Teilstrecken, für Fehlerbehandlung und Flußkontrolle zwischen den
Endpunkten einer Verbindung (nicht zwischen den Anwenderprozessen).
Die Flußkontrolle auf dieser Ebene schützt den Endpunkt einer virtuellen
Verbindung für Überlastung. Die Fehlerbehandlung in dieser Schicht bezieht
sich nicht auf Übertragungsfehler (dafür ist Schicht 2 ausreichend),
sondern auf Fehler, die bei der virtuellen Verbindung auftreten: Erkennen
und Beseitigen von Duplokaten, Beseitigen permanent kreisender Blöcke,
wiederherstellen der richtigen Datenpaket-Reihenfolge, usw.
Bei WANs behandelt diese Schicht die Umsetzung eines Protokolls in ein
anderes (internetworking). Man kann daher die Schicht 3 in drei
Teilschichten unterteilen:
- 3a (Subnetwork
Access): Abwickeln der Protokolle des jeweiligen Teilnetzes.
- 3b (Subnet
Enhancement): Funktionen der Teilnetze so ergänzen, daß die Anforderungen
von 3c erfüllt werden.
- 3c
(Internetworking): Teilnetzunabhängige Protokolle abwickeln (Routing,
globale Adressierung)
- 2. Sicherungs-Schicht
(Data Link) Sicherstellen einer funktionierenden Verbindung zwischen zwei
direkt benachbarten Stationen. Diese Schicht stellt einen definierten
Rahmen für den Datentransport, die Fehlererkennung und die
Synchronisierung der Daten zur Verfügung. Typische Protokolle: BSC, HDLC,
TCP, usw. Die Information wird in Blöcke geeigneter Länge unterteilt, die
als Datenrahmen (frames) bezeichnet werden und mit Prüfinfo für die
Fehlererkennung und -korrektur versehen werden.
Auf dieser Ebene erfolgt auch die Flußkontrolle für die Binärdaten. Es muß
nicht jeder einzelne Rahmen bestätigt werden, sondern es kann auch eine
vorgegebene Maximalzahl von Frames gesendet werden, bevor die Bestätigung
abgewartet werden muß. Über die Bestätigung der Gegenstation wird der
Datenfluß gesteuert. Datenrahmen und Bestätigungen müssen also nur
innerhalb eines Bereichs ("Fenster") liegen. Bei lokalen Netzen
wird diese Schicht nochmals unterteilt:
- 2a (Media Access
Control, MAC): Regelt den Zugriff auf das Übertragungsmedium
- 2b (Logical Link
Control, LLC): Vom übertragungsmedium abhängige Funktionen der Schicht 2
- 1. Bitübertragung
(Pysical) Hier erfolgt die physikalische Übertragung der Daten. Diese
Ebene legt die elektrischen, mechanischen, funktionalen und prozeduralen
Parameter für die physikalische Verbindung zweier Einheiten fest (z. B.
Pegel, Modulation, Kabel, Stecker, Übertragungsrate, etc.)
Veranschaulichung des Schichtenmodells mit einem
Beispiel
Das Beispiel arbeitet nur mit drei Schichten. Die
Ausgangssituation besteht in zwei Wissenschaflern in Arabien und China, die ein
Problem diskutieren wollen. Nun sprechen beide nur Ihre Landessprache und auch
Dolmentscher, die Arabisch und Chinesisch können, sind nicht aufzutreiben.
Beide suchen sich nun Dolmetscher, die Englisch können. Der Weg der
Nachrichten:

Paketvermittlung vs. Leitungsvermittlung
Hier soll kurz erklärt werden, wie die zu übertragenden
Informationen in den meisten Netzen von einem auf den anderen Rechner kommen.
Die Daten werden paketweise übertragen. Man spricht daher von einem
paketvermittelten Netz. Zur Veranschaulichung ein Gegenbeispiel und ein
Beispiel:
- Im Telefonnetz wird
für jedes Gespräch eine Leitung zwischen zwei Gesprächspartnern benötigt.
Diese Leitung bleibt auch belegt, wenn keine Information übertragen wird,
also keiner spricht. Hier handelt es sich um ein leitungsvermitteltes
Netz.
- Im Briefverkehr wird
dagegen ganz anders vorgegangen. Wenn Informationsübertragung ansteht,
wird ein Brief geschrieben und dieser mit einer Adresse versehen. Sodann
wird dieses Informationspaket dem Netz überlassen, indem man es in einen
Briefkasten wirft. Das örtliche Postamt entscheidet dann aufgrund der
Empfängeradresse, ob der Brief direkt an den Empfänger (wenn dieser also
im Versorgungsbereich dieses Postamtes wohnt) auszuliefern ist, oder
durch Einschalten von mehr oder weniger Zwischenstationen. In der Regel
findet der Brief dann ein Postamt, das die Auslieferung des Briefes an
den Empfänger aufgrund der Adresse vornehmen kann. Schwierigkeiten bei
der Auslieferung können dem Absender aufgrund der Absendeadresse
mitgeteilt werden.
Zum
Inhaltsverzeichnis
Zur
XINUX Homepage
Copyright © Prof. Jürgen Plate,
Fachhochschule München