Das OSI-Modell (Open Systems Interconnection) – auch OSI-Referenzmodell genannt – ist ein konzeptionelles Modell, das Netzwerkkommunikation und Interoperabilität in sieben abstrakte Schichten unterteilt. Es bildet ein standardisiertes Modell, das die Kommunikation zwischen verschiedenen Anwendungen, Computersystemen und Netzwerken ermöglicht.
Das OSI-Modell entstand als Lösung für Kommunikationsinkompatibilitäten zwischen den verschiedenen Netzwerkprotokollen, die um die Jahrhundertwende verwendet wurden. Die Schichten von OSI boten Entwicklern und Ingenieuren ein Framework für die Entwicklung interoperabler Hardware und Software über Netzwerke hinweg, indem sie einen kategorischen Ansatz für den Netzwerkbetrieb boten.
Auf jeder Schicht des Stacks – in der Regel in umgekehrter Reihenfolge dargestellt, um zu veranschaulichen, wie sich Daten durch ein Netzwerk verschieben – liefert das OSI-Modell Richtlinien und Kriterien für Netzwerkkomponenten und ihre speziellen Rechenfunktionen.
Die Schichten sind:
Der Fokus des OSI-Modells liegt darauf, eine Liste von Aufgaben bereitzustellen, die Ingenieure beim Aufbau jeder Ebene einer Netzwerkarchitektur erledigen müssen, anstatt Protokolle für die Kommunikation zwischen den Schichten zu spezifizieren. Sein theoretischer Ansatz ermöglicht es Entwicklern, hochkomplexe Computernetzwerke zu visualisieren und aufzubauen – auch ohne Vorkenntnisse des Netzwerksystems selbst. Es hilft Teams zudem dabei, besser zu verstehen, wie Daten ein Netzwerk durchlaufen, und mit schichtspezifischer Codierung Netzwerkfunktionen maßzuschneidern.
Auch wenn das OSI-Modell nicht die direkte Grundlage für moderne Computernetzwerktechnologien ist, hat es doch einen tiefgreifenden Einfluss auf die Entwicklung von Computerstandards gehabt und dazu beigetragen, das moderne Verständnis von Netzwerkarchitektur zu formen.
In den späten 1970er und frühen 1980er Jahren wurden Computersysteme zunehmend miteinander vernetzt, die Hersteller entwickelten jedoch oft ihre eigenen Netzwerklösungen, wodurch ein Flickenteppich aus proprietären und nicht interoperablen Systemen entstand.
In mehreren ersten Netzwerkbemühungen wurde versucht, Kompatibilitätsprobleme mit dem ARPANET (das den Grundstein für das moderne Internet legte) und der TCP/IP-Protokoll-Suite (im Auftrag des US-Verteidigungsministeriums) zu adressieren. Beides stellen bedeutende Fortschritte dar, verdeutlichten aber auch die Notwendigkeit eines umfassenderen und allgemein akzeptierten Ansatzes.
Die International Organization for Standardization (ISO) und das International Telegraph and Telephone Consultative Committee (CCITT) erkannten die wachsende Bedeutung von Netzwerken und die Notwendigkeit eines universellen Frameworks und initiierten die Entwicklung eines standardisierten Netzwerkmodells.
Im Jahr 1984 veröffentlichte die ISO offiziell das OSI-Modell, ein wegweisendes Framework für die Entwicklung interoperabler Netzwerklösungen. Im Gegensatz zu früheren Standardisierungsversuchen ermöglicht die mehrschichtige Konfiguration von OSI die Kommunikation verteilter Systeme trotz Unterschieden in ihren zugrunde liegenden Architekturen und Protokollen.
Auch angesichts der Weiterentwicklung von Technologie und des Aufkommen neuer Modelle bleibt das OSI-Modell bleibt ein wesentlicher Bestandteil für das Verständnis von Netzwerkarchitektur. Egal, ob ein Team ein einfaches lokales Netzwerk (LAN) entwirft oder ein komplexes globales Netzwerk verwaltet: Die Prinzipien des OSI-Modells bieten einen klaren, strukturierten Netzwerkansatz.
Das OSI-Modell umfasst sieben verschiedene Schichten. Die Anwendungsschicht (Schicht 7), die Darstellungsschicht (Schicht 6) und die Sitzungsschicht (Schicht 5) bilden die Softwareschichten eines OSI, auf denen alle Übertragungen zu und von Softwareanwendungen (einschließlich Betriebssystemen und Utilities wie Webbrowsern und E-Mail-Clients) stattfinden.
Die Transportschicht (Schicht 4) ist das „Herz von OSI“ und wickelt die gesamte Datenkommunikation zwischen Netzwerken und Systemen ab. Die Vermittlungsschicht (Schicht 3), die Datenschicht (Schicht 2) und die Bitübertragungsschicht (Schicht 1) bilden schließlich die Hardwareschichten von OSI, in denen Daten während der Verarbeitung durch die physischen Komponenten des Netzes verschieben werden.
Die Daten verschieben sich bidirektional durch das OSI-Modell – jede Schicht kommuniziert mit den Schichten unter und über ihr im Stack. Außerdem übermitteln sowohl das sendende als auch das empfangende Gerät Daten über die Datenschichten, wobei Sender und Empfänger häufig die Rollen wechseln.
Wenn ein Benutzer beispielsweise eine E-Mail an eine andere Person senden möchte, schreibt der Benutzer zunächst die E-Mail und sendet sie. Wenn der Benutzer auf „Senden“ klickt, geht seine E-Mail an die Anwendungsschicht, die das richtige Protokoll (in der Regel SMTP) auswählt und die E-Mail an die Darstellungsschicht sendet. Anschließend komprimiert die Darstellungsschicht die Nachrichtendaten und sendet sie an die Sitzungsschicht, die eine Kommunikationssitzung initiiert und die Daten zur Segmentierung an die Transportschicht sendet.
Da die E-Mail an ein anderes Netz geht, müssen die E-Mail-Daten an die Vermittlungsschicht weitergeleitet werden, wo sie in Pakete aufgeteilt werden, und dann an die Sicherungsschicht, wo sie weiter in Frames zerlegt werden. Diese Frames werden anschließend durch die Bitübertragungsschicht (das WLAN des Empfängers) übertragen, woraufhin das Gerät des Empfängers den Bitstrom empfängt und die E-Mail-Daten die gleichen Schichten in umgekehrter Reihenfolge durchlaufen. Am Ende des Prozesses landen die E-Mail-Daten in der Anwendungsschicht des Geräts des Empfängers, wo sie in für Menschen lesbarer Form an den Posteingang des Empfängers zugestellt werden.
Das OSI-Modell ist grundlegend für die Protokollentwicklung, wobei jede Ebene des Frameworks bestimmte Netzwerkprozesse verwaltet.
Die Anwendungsschicht ist die OSI-Schicht, die dem Endbenutzer am nächsten ist. Es stellt Netzwerkdienste direkt für Benutzeranwendungen bereit und erleichtert die Kommunikation zwischen API -Endgeräten und unteren Ebenen des OSI-Modells. Mit anderen Worten: Softwareanwendungen nutzen die Anwendungsschicht, um die Kommunikation mit dem Netzwerk zu initiieren und Daten an die Darstellungsschicht zu senden.
Anwendungen selbst sind nicht Teil dieser Schicht. Stattdessen stellt die Anwendungsschicht die Protokolle (z. B. HTTP, FTP, DNS und SMTP) bereit, die es der Software ermöglichen, Daten zu senden und zu empfangen. Die Abteilung ist für Prozesse wie die folgenden verantwortlich:
Verzeichnisdienste. Die Anwendungsschicht stellt Verzeichnisdienste bereit – eine gemeinsam genutzte Datenbank mit Informationen zu Netzwerkgeräten und Benutzern –, um die Verwaltung von Netzwerkressourcen zu erleichtern.
Die Darstellungsschicht wandelt Daten in ein Format um, das die Anwendungsschicht für die Übertragung über das Netzwerk akzeptieren kann (z. B. von einer EBCDIC-codierten Textdatei in eine ASCII-codierte Datei). Aufgrund ihrer Rolle bei der Umwandlung von Daten und Grafiken in ein für die Anwendungsschicht darstellbares Format wird sie manchmal als Syntaxschicht bezeichnet.
Sie unterstützt SSL/TLS-Protokolle (Secure Sockets Layer/Transport Layer Security), JPEG-Protokolle (für Bildkomprimierung) und MPEG-Protokolle (für Video). Die Darstellungsschicht wandelt Daten in ein Format um, das die Anwendungsschicht für die Übertragung über das Netzwerk akzeptieren kann (z. B. von einer EBCDIC-kodierten Textdatei in eine ASCII-kodierte Datei). Aufgrund ihrer Rolle bei der Umwandlung von Daten und Grafiken in ein für die Anwendungsschicht darstellbares Format wird sie manchmal als Syntaxschicht bezeichnet.
Sie unterstützt SSL/TLS-Protokolle (Secure Sockets Layer/Transport Layer Security), JPEG-Protokolle (für die Bildkomprimierung) und MPEG-Protokolle (für die Videokomprimierung). Die Darstellungsschicht ist verantwortlich für:
Datenübersetzung. Die Darstellungsschicht konvertiert die Daten während des Kapselungsprozesses in das richtige Format (von der Anwendungsschicht festgelegt), während ausgehende Nachrichten den Stack vom Absender zum Empfänger verschieben.
Datenkomprimierung. Die Darstellungsschicht reduziert die Größe eines Datenstroms für Übertragungen und dekomprimiert ihn für die Verwendung.
Manchmal werden Formatierung und Übersetzung während des Entkapselungsprozesses umgekehrt, da eingehende Nachrichten im Protokollstack nach oben verschoben werden. In diesen Fällen werden ausgehende Nachrichten während der Kapselung in das angegebene Format konvertiert, während eingehende Nachrichten während der Entkapselung einer umgekehrten Konvertierung unterzogen werden.
Die Sitzungsschicht ist für die Sitzungsverwaltung verantwortlich, also den Prozess des Herstellens, Verwaltens und Beendens von Verbindungen – sogenannten „Sitzungen“ – zwischen zwei oder mehr Computern. Sie initiiert die Verbindungen zwischen lokalen und Remote-Anwendungen, hält die Sitzung lange genug offen, um die erforderlichen Daten zu übertragen, und schließt sie nach Abschluss, um Netzwerkressourcen zu schonen.
Zu den wichtigsten Funktionen der Sitzungsschicht gehören:
Sitzungsinteraktionen. Die Sitzungsschicht verwaltet die Benutzeranmeldung (Einrichtung) und die Benutzerabmeldung (Terminierung), einschließlich aller in die Client-Software integrierten Authentifizierungsprotokolle.
Wiederherstellung von Sitzungen. Die Sitzungsschicht verwaltet Sitzungsfehler und stellt bei Netzwerkproblemen erneut Verbindungen her.
Darüber hinaus werden Protokolle zum Verbinden und Trennen von Sitzungen zwischen verwandten Datenströmen, wie etwa Audio und Video bei Webkonferenzen, festgelegt. Daher wird die Sitzungsschicht häufig explizit in Netzwerkumgebungen implementiert, die Remote Procedure Calls verwenden.
Die Transportschicht verwendet Protokolle wie das Transmission Control Protocol (TCP) und das User Datagram Protocol (UDP), um die End-to-End-Zustellung kompletter Nachrichten zu verwalten. Sie nimmt Nachrichten aus der Sitzungsschicht und unterteilt sie in kleinere Einheiten (sogenannte „Segmente“), die jeweils einen zugehörigen Header haben. Am Zielort setzt die Transportschicht die Segmente in der richtigen Reihenfolge wieder zusammen, um die ursprüngliche Nachricht zu rekonstruieren.
Die Transportschicht übernimmt außerdem Folgendes:
Dienstpunktadressierung. Die Transportschicht trägt dazu bei, dass Nachrichten an den richtigen Prozess übermittelt werden, indem ein Transportschicht-Header angehängt wird (einschließlich eines Dienstpunkts oder einer Port-Adresse).
Multiplexing. Die Transportschicht ermöglicht es mehreren Netzwerkanwendungen, dieselbe Verbindung gleichzeitig zu verwenden.
Auf der Seite des Absenders empfängt die Transportschicht formatierte Daten von den oberen Schichten, führt eine Segmentierung durch und implementiert eine Fluss- und Fehlerkontrolle, um eine genaue Datenübertragung zu gewährleisten. Es fügt dem Header Quell- und Zielportnummern hinzu und leitet die segmentierten Daten dann an die Vermittlungsschicht weiter.
Auf der Empfängerseite liest die Transportschicht die Portnummer aus dem Header und leitet die empfangenen Daten an die entsprechende Anwendung weiter. Sie übernimmt ebenfalls die Sequenzierung und Zusammensetzung der segmentierten Daten und überträgt Daten erneut, falls Fehler entdeckt werden.
Die Transportschicht stellt zwei Arten von Diensten bereit.
Beim verbindungsorientierten Dienst, einem dreiteiligen Prozess, der den Verbindungsaufbau, die Datenübertragung und die Beendigung (oder den Abbruch der Verbindung) umfasst, sendet der Datenempfänger nach der Zustellung des Datenpakets eine Empfangsbestätigung an den Absender zurück. Der verbindungslose Dienst hingegen umfasst nur die Datenübertragung. Der Empfänger bestätigt den Empfang nicht, was die Kommunikation beschleunigt, aber weniger zuverlässig sein kann als ein verbindungsorientierter Dienst.
Die Vermittlungsschicht des OSI-Modells ist dafür verantwortlich, die Datenübertragung von einem Knoten zu einem anderen über verschiedene Netzwerke hinweg zu erleichtern. Sie bestimmt den besten Pfad (Routing) für die Übertragung von Daten zwischen den Knoten. Wenn Segmente zu groß sind, bricht die Vermittlungsschicht sie für den Transport in kleinere „Pakete“ auf und setzt sie auf der Empfängerseite wieder zusammen.
Ein Netzwerk dient als Medium, in dem sich mehrere Knoten (jeder mit einer eindeutigen Adresse) verbinden können. Die Vermittlungsschicht ermöglicht es Knoten, Nachrichten an Knoten in anderen Netzwerken zu senden, indem sie den Nachrichteninhalt und die Zieladresse bereitstellt, sodass das Netzwerk den optimalen Übermittlungspfad bestimmen kann (was das Routing durch Zwischenknoten beinhalten kann).
Die Vermittlungsschicht verwendet hauptsächlich das Internet Protocol v4 (IPv4) und IPv6 und ist verantwortlich für:
Paketfragmentierung und -zusammensetzung. Die Vermittlungsschicht teilt große Pakete (solche, die die Größenbeschränkungen der Sicherungsschicht überschreiten) für die Übertragung in kleinere Pakete auf und setzt sie am Ziel wieder zusammen.
Die Zuverlässigkeit ist in der Vermittlungsschicht nicht garantiert – viele Protokolle der Vermittlungsschicht bieten zwar eine zuverlässige Nachrichtenübermittlung, andere aber nicht. Außerdem ist die Fehlerberichterstattung auf dieser OSI-Schicht nicht obligatorisch, sodass die Absender der Daten möglicherweise eine Zustellbestätigung erhalten, vielleicht jedoch auch nicht.
Die Hauptfunktion der Sicherungsschicht besteht darin, die fehlerfreie Datenübertragung zwischen mehreren Geräten, die im selben Netzwerk interagieren, zu verwalten.
Die Sicherungsschicht ist in zwei Unterschichten unterteilt.
Die LLC-Schicht (Logical Link Control, logische Verbindungssteuerung)– die als Schnittstelle zwischen der MAC-Schicht (Media Access Control, Mediumzugriffssteuerung) und der Vermittlungsschicht dient – kümmert sich um Flusskontrolle, Synchronisation und Multiplexing (wobei sich zwei oder mehr Datenströme eine einzige Verbindung zum Host teilen). Die MAC-Schicht steuert, wie Geräte auf Netzwerkmedien zugreifen und Daten übertragen.
Wenn die Sicherungsschicht ein Paket von der Vermittlungsschicht empfängt, teilt sie das Paket in Daten-„Frames“ auf – entsprechend der Frame-Größe der Netzwerkschnittstellenkarte (NIC) – und überträgt es über seine MAC-Adresse an den Host.
Zu den Funktionen der Sicherungsschicht gehören:
Framing. Die Sicherungsschicht ermöglicht es dem Sender, eine Reihe von Bits (Daten) zu übertragen, die für den Empfänger von Bedeutung sind, indem spezielle Bitmuster am Anfang und Ende des Frames angehängt werden.
Fehlerkontrolle. Die Sicherungsschicht erkennt beschädigte oder verlorene Frames und verwaltet die erneute Übertragung (falls erforderlich), um die Datenintegrität sicherzustellen.
Zugriffssteuerung.Wenn sich mehrere Geräte einen einzigen Kommunikationskanal teilen, bestimmt die MAC-Unterschicht, welches Gerät zu einem bestimmten Zeitpunkt die Kontrolle über den Kanal hat.
Die Bitübertragungsschicht umfasst die physischen Komponenten, die für die Übertragung von Rohdaten in Form von „Bits“ oder Zeichenfolgen aus 1en und 0en zwischen Geräten (z. B. Steckern, Routern, Repeatern und OPTIC-Kabeln) und einem physischen Medium (wie WLAN) verantwortlich sind.
Die Bitübertragungsschicht ist verantwortlich für:
Steuerung der Bitrate. Die Bitübertragungsschicht definiert die Datenübertragungsraten, oft in Bits pro Sekunde.
Übertragungsmodus. Die Bitübertragungsschicht definiert, wie Daten zwischen verbundenen Geräten fließen (als Simplex-, Halbduplex- oder Vollduplex-Übertragung).
Die Bitübertragungsschicht definiert ebenfalls, wie die Codierung über einem physischen Signal erfolgt (z. B. durch elektrische Spannung, Funk- oder Lichtimpulse).
Das OSI-Referenzmodell bietet eine theoretische Grundlage, die Technikern und Entwicklern hilft, die Feinheiten der Netzwerkkommunikation zu verstehen. Manchmal wird es jedoch mit einem anderen Netzwerkmodell verglichen: dem TCP/IP-Modell (Transmission Control Protocol/Internet Protocol).
Im Gegensatz zum OSI-Modell basiert das TCP/IP-Modell auf standardisierten Protokollen, die weit verbreitet und direkt in realen Netzwerken implementiert sind. Es besteht aus vier statt sieben Schichten, aber jede Schicht entspricht einer oder mehreren Schichten des OSI-Modells.
Netzzugangsschicht. Die Netzzugangsschicht eines TCP/IP-Netzwerks, auch als Datenverbindungsschicht oder physische Schicht bezeichnet, umfasst sowohl die für die Schnittstelle mit dem Netzwerkmedium erforderlichen Hardware- als auch Software-Komponenten und kombiniert die Bitübertragungsschicht und die Sicherungsschicht des OSI-Modells. Sie übernimmt die physische Datenübertragung – unter Verwendung von Ethernet- (für LANs) und ARP-Protokollen – zwischen Geräten im selben Netzwerk.
Transportschicht. Die TCP/IP-Transportschicht erfüllt dieselbe Funktion wie die Transportschicht des OSI-Modells – sie ermöglicht eine zuverlässige Datenübertragung zwischen den oberen und unteren Schichten. Durch die Verwendung der TCP- und UDP-Protokolle bietet sie zudem Mechanismen zur Fehlerüberprüfung und Flusskontrolle.
Der Hauptnutzen des OSI-Modells liegt in seinem pädagogischen Nutzen und seiner Rolle als konzeptionelles Framework für die Entwicklung neuer Protokolle, wobei sichergestellt wird, dass sie mit bestehenden Systemen und Technologien kompatibel sind.
Die praktische Ausrichtung und die Anwendbarkeit des TCP/IP-Modells in der realen Welt haben es jedoch zum Rückgrat moderner Netzwerke gemacht. Sein robustes, skalierbares Design und der horizontale Schichtenansatz haben das explosive Wachstum des Internets vorangetrieben und Milliarden von Geräten und riesige Datenmengen bewältigt.
Der abstrahierte, vertikal geschichtete Netzwerkansatz ermöglicht ein modulares Protokolldesign, bei dem jede Schicht unabhängig entwickelt und aktualisiert werden kann.
Die Modularität des OSI-Modells fördert schnellere Innovation in der Protokollentwicklung, da Softwareingenieure neue Technologie integrieren können, ohne den gesamten Stack zu überarbeiten.
Darüber hinaus können Entwickler die unteren Schichten des Modells abstrahieren, um die Entwicklung zu vereinfachen.
Softwareingenieure können die Betriebsschichten jeder Netzwerkkomponente trennen und sie entsprechend ihrer Hauptrolle im Netzwerk organisieren. Diese Zerlegbarkeit erleichtert es den Entwicklern, ein Netzwerk zu konzipieren und vereinfachte Modelle zwischen den Entwicklungsteams zu teilen.
Wenn ein Gerät im Netzwerk ausfällt oder eine Anwendung die Verbindung verliert, ermöglicht das OSI-Modell es Teams, die problematische Schicht zu lokalisieren und zu isolieren, um Sicherheitsprobleme oder Schwachstellen im Netzwerk zu beheben, ohne das gesamte Framework zu unterbrechen.
IBM Cloud Infrastructure Center ist eine mit OpenStack kompatible Softwareplattform für die Verwaltung der Infrastruktur von Private Clouds auf IBM zSystems und IBM LinuxONE.
Entdecken Sie Server, Speicher und Software für die Hybrid-Cloud- und KI-Strategie Ihres Unternehmens.
Finden Sie die richtige Cloud-Infrastrukturlösung für Ihre Geschäftsanforderungen und skalieren Sie Ressourcen nach Bedarf.