Da Rauchzeichen bekanntlich nur am Tage, Lichtsignale am besten Nachts funktionieren, wollte man eine Lösung für z.B. neblige Tage schaffen. Auch die Wiedergabe von Bildern ergab bei der damaligen Kommunikation einige Problemchen, vor allem wenn sie auch noch farblich sein sollten.
Vernetzung hieß die Lösung. Natürlich gab es riesige Probleme, ein Hochglanzfarbausdruck in ein Telefonkabel zu stopfen. Auch brachte das Anbrüllen des Kabels bzw. eines Modems nicht wirklich dengewünschten Effekt, eine kilometerweite Entfernung zu überbrücken.
Mit der Erfindung und Verbreitung der Telefonie war es möglich Töne zu übertragen, aber wie funktioniert nun zum Kuckuck diese Übertragung von Bildern und Tönen??
Dazu muss ich erst einmal eine Rahmenbedingung für uns schaffen, da jede Übertragungsart anders abläuft. Bei dieser Aufgabenstellung ist von einer allgemeinen Übertragung auszugehen, ich nehme mir also mein Hochglanzfarbbild und will es nach Tante Trude in Buxtehude beamen. Das ganze bitteschön ohne Farbfaxgerät!
Dazu brauchen wir ein wenig Hightech:
Nun zum Vorgang:
1. Das Farbbild wird mittels des Scanners und entsprechender Scann- u. Bildbearbeitungssoftware digitalisiert.
Allein für diesen Vorgang könnte eine Doktorabhandlung geschrieben werden. Ich beschränke mich auf das Gröbste:
Ein im Scanner erzeugte Licht wird von der Aufsichtsvorlage (Bild) reflektiert. Diese Reflektionen gelangen dann über Spiegel und Linsen auf lichtempfindliche und zeilenmäßig angeordnete Sensoren. Vor den Sensoren befinden sich Farbfilter für rotes, grünes und blaues Licht. Die Helligkeitsinformationen werden in den Sensoren in unterschiedlich große elektrische Ladungen umgewandelt, als Spannung verstärkt und mit Hilfe von Analog-Digital-Umsetzern in einen Datenstrom umgeformt. Dieser Datenstrom gelangt über einen TWAIN-Treiber an das Anwendungsprogramm, in unserem Fall CorelDraw
Nun haben wir unser Bild schon einmal in digitaler Form auf unseren PC. Das
Abspeichern des Bildes und Einfügen in das Email-Programm ist in der Regel menügestützt.
Doch, wie kommt jetzt das Bild in das Telefonkabel??
Jetzt kommt das Modem in Spiel:
Das Modem wandelte das abgehende digitale Signal in ein analoges Signal um, und
ein ankommendes analoges Signal in ein digitales Signal. Alles klar?!?
Da ein Computer mit digitalen Daten etwas anfangen kann, ein Kabel aber nun einmal elektrische Impulse übertragen möchte, benötigt man einen Modulator. Am Zielcomputer angekommen werden die elektrischen Impulse wieder demoduliert um in eine für den Computer verständliche digitale Sprache umzuwandeln.
Jetzt aber Scherz beiseite, wollen wir uns die Sache mal etwas genauer Betrachten:
2. Da sich nun das Bild in digitaler Form in einem Anwendungsprogramm befindet, komm ich leider nicht daran vorbei auf das OSI-Referenz-Modell hinzuweisen. Noch schlimmer, ich muss es ein wenig erläutern um es daran zu demonstrieren.
3. Ich versuche es dennoch ganz behutsam:
Das ISO/OSI-Schichtenmodell ist ein Referenzmodell für Herstellerunabhängige Kommunikationssysteme. Keine ISO-Norm!! Wohl aber ein Richtungsweiser für die Hersteller, um sich mit anderen Systemen
“unterhalten“ zu können (da sich im Internet eine Vielzahl von Anbietern tummeln). Im Übertragenen Sinn ist es die Arbeitsanweisung für einen Dolmetscher, der die Kommunikation zwischen einem
Deutschen und einem Japaner beinhaltet.
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 gepresst). 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.
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.
Schnell mal eine Grafik:
Nun zu den Schichten, sieben an der Zahl:
7. Application Layer
steht in direktem Kontakt zum Anwender = Anwendung
6. Presentation Layer
spezifiziert die Datendarstellung (Dokumentenformat)
5. Session Layer
koordiniert Aufbau, Durchführung und Beendigung eines Datentransfers
zwischen zwei Applikationen. Bietet zusätzlich Fehlerbenachrichtigungen,
”Class of Service” Vereinbarungen, ...
4. Transport Layer
sorgt für fehlerfreien, lückenlosen Datentransport zwischen 2 Systemen,
ohne dass Applikationslayer sich um Art und Zuverlässigkeit der Übertragung
kümmern müssen (sorgt für Verbindungsaufbau, Datenübertragung,
Handshake, Fehlerbehandlung)
3. Network Layer
sorgt für Verbindungsaufbau und Vermittlung der Datenpakete im Netzwerk
2. Link Layer
sorgt für Datenübertragung im Netzwerk auf physikalischer Ebene (Frames,
Prüfsummen, Hardwareadressen, Kollisionsbehandlung)
1. Physical Layer
spezifiziert die elektrischen Eigenschaften, Kabellängen, Spannungspegel,
Übertragungsraten, ...
Für diejenigen, die es genauer wissen wollen:
(für alle anderen gehts unten weiter)
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, elektronische 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. Massage-Handling-Systeme: Austausch und Verwaltung von
Mitteilungen an Benutzer anderer Systeme.
Die Schicht 7 besteht also trotz ihres 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 Massage-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, Datenfluss-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 muss alles die Schichten 4 - 1 durchlaufen). Durch so genannte "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, dass alle Datenpakete den richtigen Empfänger erreichen. Aufbau der Datenverbindung zwischen zwei Partnern,
Datentransport, Flusskontrolle, 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 Partner aufbauen und die Daten in Teilströmen leiten (splitting/combining). Auch das Aufteilen der Daten in passende
Blöcke und die Flusskontrolle 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 entspricht 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 dass 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-orientierten Netzen (LAN) kann so ein
verbindungsorientierter Dienst bereitgestellt werden (Sicherstellen von Vollständigkeit, Eindeutigkeit und Reihenfolge der Datenblöcke). Die Protokolle der Transportschicht lauten z.B. TCP, UDP
und SCTP.
3. Vermittlung-/Paket-Schicht (Network) Diese Ebene dient hauptsächlich der Datenpaket-Übertragung. Sie ist zuständig für die Wahl der Datenwege (routing), für das Multiplexen mehrerer Verbindungen
über einzelne Teilstrecken, für Fehlerbehandlung und Flusskontrolle zwischen den Endpunkten einer Verbindung (nicht zwischen den Anwenderprozessen). Typisches Protokoll der
Vermittlungsschicht ist IP (IPv4 / IPv6). Die Flusskontrolle 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 Duplikaten, 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, dass 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, FDDI, ARP, STP, Token Ring 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 Flusskontrolle für die Binärdaten. Es muss nicht jeder einzelne Rahmen bestätigt werden, sondern es kann auch eine vorgegebene Maximalzahl von Frames gesendet
werden, bevor die Bestätigung abgewartet werden muss. Über die Bestätigung der Gegenstation wird der Datenfluss 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 Prozedurahlen Parameter für die physikalische
Verbindung zweier Einheiten fest (z. B. Pegel, Modulation, Kabel, Stecker, Übertragungsrate, etc.)
Aufgabe der einzelnen Schichten:Die Schichten 1 - 4 werden der Transportfunktion zugeordnet Die Schichten 5 - 7 werden den Anwenderfunktionen zugeordnet
Zurück zum Bild und der Übertragung zu Tante Trude...
Applikationsprogramm (Bildbetrachter vom Emailprogramm) von System A (unser PC) schickt Daten an Applikation auf System B (PC von Tante Trude), indem es mit Layer 7 auf System A kommuniziert. Dieser
Layer kommuniziert nur mit Layer 6, der mit 5 ... bis auf Layer 1 von A die Daten über das physikalische Netzwerkmedium überträgt. Auf B erfolgt dann der gleiche Vorgang in umgekehrter
Reihenfolge.
Je weiter die Daten in den Layern ”hinabsteigen”, desto mehr werden sie zu ”Maschinendaten”, je höher der Layer ist, desto mehr haben die Daten für den Menschen lesbare Form. Da gleiche Layer auf A
und B auch gleiche Aufgaben erfüllen, kommunizieren scheinbar gleiche Layer auf verschiedenen Systemen miteinander und bedienen sich der niederen Layer zur Übertragung (Layer 4 auf A kommuniziert
eigentlich nur mit Layer 4 auf B)
Nun zurück zur eigentlichen Aufgabenstellung.
senden
Schicht 7 (Applikation Layer)
Wir erteilen den Auftrag für eine Datenübertragung durch das Klicken auf den Senden-Button in einem E-Mail - Programm.
senden
Schicht 6 (Presentation Layer)
Falls der Computer von Tante Trude mit gänzlich anderen Datenformaten arbeitet als unserer, werden die Daten in ein Zwischenformat übertragen. Unser Bild wird also in Datenfragmente zerstückelt.
*schnief*
Falls vorgesehen ist, dass die Daten verschlüsselt übertragen werden sollen, wird die Verschlüsselung jetzt durchgeführt.
senden
Schicht 5 (Session Layer)
Jetzt wird eine Verbindung zu Tante Trudes PC hergestellt. Unter Umständen werden eine Kennung und ein Passwort übermittelt.
Es wird dafür gesorgt, dass die Verbindung auch dann aufrechterhalten bleibt, wenn die Übertragungsqualität nachlässt und Fehler bei der Übertragung stattfinden. Wäre doch schade um das schöne
Bild!
senden
Schicht 4 (Transport Layer)
Wenn der empfangende Computer für den Empfang von Datenpaketen Quittungen liefert, werden sie auf dieser Schicht entgegengenommen und bearbeitet.
Es kann passieren, dass Wiederholungsaufforderungen eintreffen (Aufforderungen, bestimmte Pakete erneut zu übertragen).
senden
Schicht 3 (Network Layer)
Auf den höheren Schichten wird mit so genannten logischen Adressen gearbeitet. Diese werden jetzt in ihre physischen Gegenstücke übersetzt.
senden
Schicht 2 (Data Link Layer)
Auf Schicht 2 wird überwacht, ob die Datenübertragung auf Schicht 1 fehlerlos abläuft. Hierzu werden Prüfsummen nach dem CRC-Verfahren gebildet und an die Pakete angehängt.
senden
Schicht 1 (Physical Layer)
Die Netzwerkkarte wandelt die Daten, die als parallele Daten vom Bus des PCs kommen in serielle Daten um.
Die Daten werden dem Medium angepasst. Zum Beispiel werden die Bits in Zustände des Kabels umgesetzt. Die Pakete werden als lange Folgen von Bits über das Netzwerkkabel übertragen
empfangen
Schicht 1 (Physical Layer)
Die Daten, die als serielle Daten von der Netzwerkkarte entgegen genommen werden, werden so aufbereitet, dass sie als parallele Daten an den Datenbus des Computers weitergegeben werden können.
empfangen
Schicht 2 (Data Link Layer)
Bildung von Prüfsummen nach dem CRC-Verfahren (siehe oben)
empfangen
Schicht 3 (Network Layer)
Die physischen Adressen werden in die so genannten logischen Adressen umgesetzt.
empfangen
Schicht 4 (Transport Layer)
Für empfangene Pakete werden Quittungen verschickt.
Falls fehlerhafte Pakete eintreffen werden Wiederholungsaufforderungen verschickt (Aufforderungen, die betreffenden Pakete erneut zu übertragen).
Wenn die Abfolge, in der die Pakete eintreffen, nicht dem Bauplan der Nachricht entspricht, müssen die Pakete umsortiert werden.
empfangen
Schicht 5 (Session Layer)
Falls beim Aufbau der Verbindung eine Login-Prozedur vollzogen wird, erhält der sendende Computer eine Meldung über den Erfolg der Anmeldung.
Nach dem Ende der Übertragung wird die Verbindung wieder abgebaut.
Auf der Schicht 5 wird dafür gesorgt, dass Verbindungen auch dann aufrechterhalten bleiben, wenn die Übertragungsqualität nachgelassen hat.
empfangen
Schicht 6 (Presentation Layer)
Verschlüsselte Daten werden entschlüsselt.
Falls der sendende und der empfangende Computer sehr unterschiedliche Datenformate verwenden, wurden die Daten vom sendenden Computer unter Umständen in ein Zwischenformat übertragen. Aus dem
Zwischenformat werden sie jetzt in ein Format übertragen, das von der zuständigen Anwendung verarbeitet werden kann.
empfangen
Schicht 7 (Application Layer) Auf dieser Schicht arbeiten Hilfsprogramme, die die Arbeit der eigentlichen Anwendung ergänzen. Es erscheint also das Bild bei Tante Trude beim Bildbetrachter in ihrem
Mailprogramm.
Fertig, das Bild ist bei Tante Trude, war doch ganz einfach!?!
©Struzyna.de