WikiDer > Protokollstack
EIN Protokollstack (Stapel von Protokollen oder Haufen von Protokollen) ist eine bestimmte Implementierung von Software in einer Sammlung von Protokollen (Suite) von Computernetzwerke. Die Begriffe werden oft synonym verwendet. Genau genommen ist die Suite die Definition der Protokolle und der Stack die Softwareimplementierung.
Einzelne Protokolle innerhalb einer Suite werden oft mit einem einzigen Zweck entworfen. Dieses Modularisierung erleichtert die Gestaltung und Bewertung. Da jedes Protokollmodul normalerweise mit 2 anderen kommuniziert, werden diese als they Schichten in einem Stapel von Protokollen. Das niedrigste Protokoll befasst sich immer mit der physikalischen Interaktion auf niedriger Ebene der Hardware- aus. Jede höhere Schicht fügt mehr Möglichkeiten hinzu. Benutzeranwendungen handhaben normalerweise nur die obersten Schichten (siehe auch OSI-Modell).
Protokollstacks werden während einer praktischen Implementierung häufig in drei Hauptbereiche für Medien, Transport und Anwendungen unterteilt. Ein bestimmter Betriebssystem oder Plattform wird oft zwei wohldefinierte SoftwareSchnittstellen: eine zwischen den Medien- und Transportschichten und eine zwischen den Transport- und Anwendungsschichten.
Die 'Medien-to-Transport'Schnittstelle definiert, wie Transportprotokoll-Software bestimmte Medien und Arten von Hardware ("Kartentreiber") verwendet. Diese Schnittstellenebene würde beispielsweise beschreiben, wie TCP/IPTransportsoftware würde sprechen Ethernet-Hardware. Beispiele für diese Schnittstellen sind die ODI-Spezifikation und NDIS in der Welt von Microsoft Windows und MS-DOS.
Die Anwendung-zu-Transport-Schnittstelle definiert, wie Anwendungsprogramme die Transportschichten verwenden. Die Schnittstellenebene würde beispielsweise definieren, wie ein Programm aus der Webbrowser würde mit . sprechen TCP/IPTransport-Software. Beispiele für diese Schnittstellen sind Steckdosen von Berkeley und System V-Ströme in der Unix-Welt und Winsock in der Microsoft-Welt.
Beschreibung der gemeinsamen Protokollsuite:
T ~ ~ ~ T [A] [B]_____[C]
Stellen Sie sich drei Computer vor: ein, B und C. ein und B beide verfügen über eine Funkausrüstung und können mit einem geeigneten . elektromagnetischen Wellen kommunizieren Netzwerkprotokoll (wie IEEE 802.11). B und C sind über ein Kabel verbunden, über das sie Daten austauschen (wiederum über ein Protokoll, z. B. Ethernet). Keines dieser Protokolle kann jedoch Informationen von ein zu C, da sich diese Computer konzeptionell in unterschiedlichen Netzwerken befinden. Man braucht ein Inter-Netzwerk-Protokoll, um sie zu "verbinden".
Man könnte die beiden Protokolle zu einem mächtigen Drittel kombinieren, das sowohl die Kabel- als auch die Funkübertragung beherrscht, aber für jede mögliche Kombination von Protokollen wäre ein anderes Superprotokoll nötig. Es ist einfacher, die grundlegenden Protokolle in Ruhe zu lassen und ein Protokoll zu entwerfen, das über allen anderen funktionieren kann (es Internetprotokoll ist ein Beispiel dafür). Diese werden dann gemeinsam zu zwei Stapeln von jeweils zwei Protokollen. Das Inter-Network-Protokoll kommuniziert mit jedem Basisprotokoll in seiner einfacheren Sprache; die Basisprotokolle werden sich nicht direkt ansprechen.
Eine Anfrage vom Computer ein ein Datenelement senden an C send wird vom oberen Protokoll abgeholt, das das (jedenfalls) weiß C erreichbar über B. Daher weist es das Funkprotokoll an, das Datenpaket an B. Auf diesem Computer leiten die Handler der untersten Schicht das Paket an das Inter-Network-Protokoll weiter, das erkennt, dass B nicht das endgültige Ziel ist, werden wieder Low-Level-Funktionen ausgelöst. Nun wird das Protokoll des Kabels verwendet, um die Daten zu übertragen C senden. Hier wird das empfangene Paket an das übergeordnete Protokoll zurückgegeben, das (mit C Endziel) wird es auf Antrag an ein höheres Protokoll oder eine höhere Anwendung übergeben C. Hinzu kommt oft noch ein noch übergeordnetes Protokoll, das die Weiterverarbeitung ankündigt.
Ein normaler Stapel von Protokollen sieht so aus:
- - - - - - - - - - - - | HTTP | |Anwendung| - - - - - - - - - - - - | TCP | | Transport | - - - - - - - - - - - - | IP | | Netzwerk | - - - - - - - - - - - - | Ethernet | | Datenverbindung | - - - - - - - - - - - - | RJ45/CAT5 | | Physisch | - - - - - - - - - - - -