Eine im Automatierungsbereich sehr oft gewählte Struktur ist die Linienstruktur, hier kommunizieren alle Teilnehmer über eine einzige Leitung.
Topologie eines Automatisierungsnetzes |
Das OSI-Kommunikationsmodell
Die Bitübertragungsschicht (engl. Physical Layer) löst die Probleme der Übertragung von Datenbits über physikalische Medien. Dies beginnt bei den Spezifikationen bestimmter Übertragungsmedien (Kupferkabel, Lichtwellenleiter, Stromnetz, Luft etc.), der Definition von Steckverbindungen u.s.w. Darüber hinaus muss auf dieser Ebene gelöst werden, auf welche Art und Weise überhaupt ein einzelnes Bit übertragen werden soll. Was ist damit gemeint? In der Informatik baut auf dem alles entscheidenden Unterschied zwischen 0 und 1, zwischen wahr und falsch auf. Selbstverständlich sind dem Übertragungsmedium selbst, z.B. einem Kupferkabel im Falle elektrischer Übertragung, oder auch der Luft im Falle von Funkübertragung, die Werte 0 und 1 unbekannt. Für jedes Medium muss daher eine Codierung dieser Werte gefunden werden, beispielsweise ein Stromimpuls von bestimmter Spannung oder eine Funkwelle mit bestimmter Frequenz, jeweils bezogen auf eine bestimmte Dauer. In dieser physikalischen Schicht wird die Übertragung der Bits bewerkstelligt. Dazu gehört die Codierung (Manchestercodierung, No Return to Zero, FSK etc.), Spannungspegel, Zeitdauer für ein Bit und die Übertragungsleitung (Kupfer, Stecker, Pinbelegung). Auf dieser Ebene findet auch die physikalische Beeinflussung des Signals statt, hier müssen dann in der Auswahl der Übertragungsnorm (RS 232, RS 485, RS 422, TTY) und des Übertragungsmediums (Kupfer, LWL, Funk ...) die Anforderungen berücksichtigt werden. |
Der Schritt zur räumlichen Datenübertragung wird erst ab der Vermittlungsschicht vollzogen. In den seltensten Fällen wollen wir in einem Netzwerk tatsächlich nur mit unserem physischen Nachbarrechner kommunizieren. Häufig weiß man nicht, wo der Kommunikationspartner, auf dem unsere Nachricht landen wird oder von dem wir unsere Daten beziehen, überhaupt lokalisiert ist. Wie findet das Datenpaket seinen Weg zum eigentlichen Bestimmungsort? Das Datenpaket wird auf seinem Weg womöglich durch viele verschiedene Teilnetze hindurchgeleitet. Diese Netze werden teilweise von Anderen administriert, es ist schwer abzuschätzen, ob es gerade Sinn macht, das eine oder das andere Teilnetz zu bevorzugen, weil dort vielleicht gerade weniger Verkehr ist. Probleme dieser Art, die man unter dem Stichwort Routing zusammenfassen kann, werden in der Vermittlungsschicht (engl. Network Layer) gelöst. Beim Durchqueren von fremden Teilnetzen können vielerlei Aufgaben und Probleme entstehen. Ein wichtiger Faktor ist sicher das Finden der richtigen Route in Fällen, in denen die Route dynamisch ermittelt wird. Bei Datenübertragungen über das Internet ist dies eher die Regel als die Ausnahme. Man kann davon ausgehen, dass beispielsweise im Verlaufe eines Downloads ein Teil der übertragenen Daten eine ganz andere Route genommen hat als ein anderer Teil. Die Wahl der Route obliegt sogenannten Routern, die man sich - einfach gesagt - wie Lotsen zwischen den unzähligen Teilnetzen vorstellen kann. Auch Linux-Rechner können als Router eingesetzt werden. |
Auch wenn Schicht 3 bereits dafür sorgt, dass Daten den eigentlichen Zielrechner erreichen, können wir noch nicht wirklich von einer Kommunikation zwischen den Rechnern reden. Was bisher geschehen ist, können wir mit dem Landen eines Briefes im Briefkasten vergleichen: Der Brief hat sein Ziel erreicht, doch die eigentliche Information will noch gelesen und möglichst auch beantwortet werden. Eine echte sogenannte Ende-zu-Ende-Kommunikation beginnt erst ab Schicht 4, der Transportschicht (engl. Transport Layer). Kommunikation muss zwischen Partnern stattfinden, die sich verstehen können. Nun "hausen" in einem Rechner üblicherweise Unmengen von Applikationen und Prozessen, und es stellt sich automatisch die Frage, für wen die empfangene Nachricht eigentlich bestimmt ist. Möglicherweise ist auch der adressierte Partner augenblicklich gar nicht verfügbar - sei es, weil der Prozess gerade anderweitig beschäftigt ist, weil er hängt oder gar nicht gestartet wurde. In jedem Fall muss die Kommunikation an einen bestimmten Dienst gekoppelt werden, wenn sie erfolgreich sein soll. Irgendjemand muss das Gespräch entgegennehmen. Es wäre freilich auch sinnvoll, wenn der Sender über den Empfang der Daten eine Rückmeldung erhielte - insbesondere dann, wenn es sich um wichtige Daten handelt. Schicht 4 bietet diese Möglichkeit an und stellt somit gewissermaßen einen weiteren Sicherheitsmechanismus gegenüber der Low-Level-Sicherung der Schicht 2 zur Verfügung. Der Preis für diese Sicherheit wird in jedem Fall eine langsamere Kommunikation sein, denn auch das Versenden und der Erhalt von Bestätigungen will besorgt sein. Wenn es auf schnelle Verbindungen ankommt, kann das Versenden von Bestätigungen auch eher unerwünscht sein und muss daher nicht erfolgen. Stellen wir also nochmals in den Vordergrund, was die Transportschicht im Wesentlichen erreicht: Sie stellt eine Ende-zu-Ende-Verbindung her und ermöglicht damit erst die eigentliche Kommunikation zwischen zwei Partnerprogrammen auf 2 verschiedenen Rechnern. Das Öffnen einer solchen Verbindung ermöglicht nun beispielsweise eine sogenannte Sitzung... |
Eine Sitzung lebt von geordnetem Dialog. Wenn alle gleichzeitig reden, kann der Erfolg einer Sitzung fraglich sein. Tatsächlich haben viele Netzverbindungen Sitzungscharakter, d.h. die Kommunikation verläuft nicht nur in eine Richtung, sondern muss geregelt werden, da es sonst zu Konfusionen kommen kann. Eine solche Dialogsteuerung wird auf der Sitzungsschicht (engl. Session Layer) bereitgestellt. Zu den Aufgaben, die dabei anfallen, gehören der Auf- und Abbau von Sitzungen, Vereinbarungen über den Sitzungsverlauf, das Setzen von Sicherungspunkten bei Datenübertragungen (um bei Störungen die Übertragung an einem solchen Sicherungspunkt wieder aufnehmen zu können) usw. |
Verschiedene Endsysteme stellen bestimmte häufig verwendete Elemente auf verschiedene Weise dar. Die Darstellung von Datentypen wie Zeichenketten oder Ganzzahlen, von Dateien, von Steuerzeichen für den Drucker und vieles andere variieren von System zu System, und da Anwendungen meist mit solchen Codierungen (und nicht etwa mit reinen Bitfolgen) kommunizieren, ist es gerechtfertigt, eine Standardcodierung für das Netz zu verwenden. Diese Standardcodierung wird von der Darstellungsschicht (engl. Presentation Layer) erzeugt bzw. beim Empfang in die interne Darstellungsform des Computers konvertiert. Zu den Aufgaben, die dabei anfallen, gehört auch die Komprimierung oder Verschlüsselung von Daten, die im heutigen Datenverkehr eine wichtige Rolle spielt. |
Schicht 1 ist von der Hardware nicht zu trennen, obwohl ihr die Hardware selbst nicht angehört. Ebenso, nur mit Perspektive auf die Anwendungsprogramme, verhält es sich mit Schicht 7. Die Aufgabe dieser Schicht lässt sich nicht wirklich auf den Punkt bringen, da für verschiedene häufige Anwendungsfälle auch ganz verschiedene Funktionen bereitgestellt werden. Die Anwendungsschicht (engl. Application Layer) stellt Protokolle für häufige Anwendungsfälle zur Verfügung, und gewährleistet, dass sich die Anwendungen auch auf unterschiedlichen Endsystemen erwartungsgemäß verhalten. Besinnen wir uns auf den Begriff Protokoll: Das Protokoll eines Staatsbesuches beispielsweise legt exakt fest, in welcher Reihenfolge welche Handlungen vollzogen werden, vom ersten Empfang am Morgen bis zum abendlichen Dinner. Solchen Protokollen sind wir bereits in niedrigeren Schichten begegnet, doch dort dienten sie nahezu ausschließlich der zuverlässigen Übertragung der Datenpakete. Auf Anwendungsebene interessieren uns nicht mehr die einzelnen Pakete, sondern größere inhaltliche Einheiten, die je nach Anwendung variieren können. Bleiben wir einmal bei dem Vergleich mit einem Staatsbesuch: Dem hohen Regierungsvertreter werden beim Empfang die Hände geschüttelt, und die Fahnen der Nationen wehen einmütig im Wind. Schön wäre es doch auch, wenn wir zum Empfang auf einem anderen Rechner eine Willkommensmeldung erhielten, in netten und informativen Worten auf unser Terminal geschrieben. Doch selbstverständlich kann sich das fremde System nicht darum kümmern, welchen Diasplaytyp wir gerade benutzen - und davon gibt es Hunderte! Und jedes Display benutzt seinen eigenen Satz von Steuerzeichen. Die Willkommensmeldung würde ein unverständliches Chaos auf unserem Display auslösen, wenn sie nicht speziell für unser verwendetes Display umgesetzt würde. Auch dies gehört zu den Aufgaben der Anwendungsschicht. Im Verlaufe des Staatsbesuches müssen wichtige Dinge besprochen werden. Bestimmte Informationen müssen erfragt, andere sollen vermittelt werden. So gehören beispielsweise auch zu einer E-Mail ganz bestimmte Informationen, ohne die eine E-Mail nicht vollständig ist: wie z.B. ein Subject, eine Absenderadresse, eine Zieladresse und auch ein Endezeichen, um zu ermitteln, wann der Textkörper beendet ist. Solche Teile eines Protokolls, die freilich von Anwendung zu Anwendung stark variieren können (je nachdem, welche Information gerade erfragt bzw. vermittelt werden soll) werden für häufige Anwendungen auf Schicht 7 festgelegt. |
Keine Kommentare:
Kommentar veröffentlichen
Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.