LINUXMAKER, OpenSource, Tutorials

Open Systems Interconnection Reference Model

OSI-Modell

Das OSI-Modell (engl. Open Systems Interconnection Reference Model) ist ein offenes Schichtenmodell für die Kommunikation informationsverarbeitender Systeme. Es handelt sich um vereinheitlichte Verfahren und Regeln für den Austausch von Daten.

Es wird seit 1979 entwickelt und ist von der International Organization for Standardization (ISO) im Jahr 1984 verabschiedet worden. Das OSI-Modell dient als die Grundlage für eine Reihe von herstellerunabhängigen Netzprotokollen, die in der öffentlichen Kommunikationstechnik im Transportnetz fast ausschließlich eingesetzt werden.

In einem Computernetz werden den verschiedenen Hosts Dienste unterschiedlichster Art bereitgestellt und zwar von den anderen Teilnehmern im Netz. Die dazu erforderliche Kommunikation ist nicht so trivial, wie es auf den ersten Blick scheint, denn es müssen eine Vielzahl von Aufgaben bewältigt und Anforderungen bezüglich Zuverlässigkeit, Sicherheit, Effizienz, etc. erfüllt werden. Die Probleme, die dabei gelöst werden müssen, reichen von Fragen der elektronischen Übertragung der Signale über eine geregelte Reihenfolge in der Kommunikation bis hin zu abstrakteren Aufgaben, die sich innerhalb der kommunizierenden Anwendungen ergeben.

Ein Beispiel anhand der Kommunikation zwischen einem NIS-Server und einem Client soll die Bedeutung der Schichten des 7-Schichten-OSI-Modells veranschaulichen. Angenohmen der Server läuft auf einem 64-Bit-Rechner und der Client auf einem 32-Bit-Rechner, d.h. die Daten liegen auf den beteiligten Rechnern in unterschiedlichen Formaten vor.

Ablauf der Kommunikation

Der NIS-Client sendet eine Anfrage. Da er das vom Server verstandene Datenformat nicht kennen kann, bringt er diese in ein allgemeines Format (im Zusammenhang mit RPC kommt meist External Data Representation XDR zum Einsatz). Der Remote Procedure Call organisiert den "entfernten Prozeduraufruf", indem er die Daten zusammen mit Informationen zum erwünschten Dienst verpackt. Auf Transportebene werden u.a. die Daten in Blöcke bestimmter Größe zerlegt, die Vermittlung übernimmt die Adressierung des Zielrechners auf IP-Ebene. Die Sicherungsschicht ist schon recht Hardware spezifisch und kümmert sich um die fehlerfreie Übertragung auf dem eigentlichen Medium. Schließlich erfolgt die Übertragung über ein physisches Medium, dessen Charakteristika durch das Protokoll der Übertragungsschicht spezifiziert ist. Auf Serverseite wird das Paket der Schicht 2 übergeben. Stellt diese die Fehlerfreiheit fest, erreicht es die Vermittlungsschicht. Auf Transportebene werden die vom Sender erzeugten Pakete zu der kompletten Nachricht zusammen gefügt. Der RPC-Server-Prozess wertet die Anforderungen aus. Sind sie erfüllbar, werden die Daten ins benötigte Format übertragen und der NIS-Server konsultiert. Dieser generiert eine Antwort und das Spiel wiederholt sich mit verteilten Rollen...