Meinels Web-Tutorial: Der TCP/IP-Protokollstapel – das Betriebssystem des Internets
Weder Computer noch Smartphones können ohne ein Betriebssystem die vielen verschiedenartigen Anwendungen ausführen und die Berechnungen koordinieren. Genauso wenig würde die Kommunikation im Netzwerk und über Netzwerkgrenzen hinaus funktionieren, wenn man nicht die grundlegenden Abläufe, die Adress- und Datenpaketformate, Mechanismen der Fehlererkennung und -behandlung definieren würde. Das gilt im Fall der einzelnen Netzwerktechnologien – und noch viel mehr im Kontext des Internets, wenn Übersetzungsmechanismen zwischen den Standards und Protokollen der verbundenen Netzwerke hinzukommen. Und darum braucht auch das Internet, damit es uns als das eine, ungeteilte Netz erscheint, als das wir es im Alltag erleben, ein eigenes Betriebssystem.
Das gängige Netzwerkbetriebssystem ist der von Vincent Cerf und Robert Kahn entwickelte TCP/IP-Protokollstapel, er regelt jede Kommunikation im Internet und lässt den Verbund aus vielen Millionen Netzwerken als einheitliches Netz, eben als Internet erscheinen.
Das Betriebssystem des Internets ist nach einem Schichtenmodell organisiert. Auf den verschiedenen Schichten werden dabei jeweils spezifische Kommunikationsaufgaben gelöst, wobei die Protokolle der oberen Schichten auf den Ergebnissen der Protokollberechnungen der unteren Schichten aufbauen. Das Zusammenspiel der verschiedenen Protokolle macht es möglich, Datenpakete auch über komplexe Netzverbünde zu transportieren und an ihr Ziel zu bringen, ohne dass sich der Nutzer um irgendetwas kümmern muss.
Die Hardwareschicht bildet die unterste Schicht des TCP/IP-Protokollstapels, manche Autoren zählen sie gar nicht dazu. Die Hardware, das sind die physischen Netze und Funkanlagen. Ihre Aufgabe ist es, die in physische Signale umgewandelten digitalen Informationen über Kupferleitungen, Glasfasern oder Funk zwischen verschiedenen Rechnern, genauer den Netzwerkkarten dieser Rechner, zu übertragen. Auf der Hardwareebene finden noch keine komplexen Berechnungen statt, es geht um den physischen Transport von Signalen. Bei der Übertragung von physischen Signalen mit dem Material des Übertragungsmediums schwächen sich diese ab oder werden gestört. So wie ein Lichtsignal in der Ferne immer schwächer wird, schwächen sich auch elektrische Signale beim Transport über Kupferkabel ab. Auf der Hardwareschicht sind deshalb Mechanismen angesiedelt, die mit den resultierenden Fehlern umgehen können, und Gerätschaften im Einsatz, wie zum Beispiel Repeater zur Auffrischung der Signale.
Auf der Netzwerkschicht sind die Protokolle der jeweiligen Netzwerktechnologie im Einsatz. Typischerweise werden hier die Informationen in Datenpakete verpackt »gebroadcastet«, also gleichzeitig an alle Rechner im Netzwerk gesendet. Über die dem Datenpaket vorangestellte Adresse können die Rechner dann erkennen, ob das Datenpaket für sie bestimmt ist. Wenn mehrere Rechner im Netzwerk gleichzeitig Datenpakete versenden, kommt es allerdings zu Kollisionen, die elektrischen Signale (zer)stören sich gegenseitig. Es braucht deshalb Mechanismen, Kollisionen zu erkennen und sicherzustellen, dass Datenpakete fehlerfrei im Netzwerk versendet werden. Mit zwischengeschalteten Geräten wie Bridges und Switches kann ein intelligentes Verkehrsmanagement auch in größeren Verbünden von Netzen gleicher Technologie bewerkstelligt werden.
Erst auf der darüber liegenden Schicht, der Internetschicht, werden mit Hilfe des so genannten IP-Protokolls (Internet Protocol) die Standards und Mechanismen bereitgestellt, um die Kommunikation auch über Verbünde von Netzwerken unterschiedlicher Technologien zu ermöglichen und das, was wir »Internet« nennen, zu realisieren. Die verschiedenen Netzwerke im Verbund werden dabei jeweils durch Spezialrechner, die so genannten Router, miteinander verknüpft, die um ihre Aufgabe erfüllen zu können, selbst jeweils Teil der verbundenen Netze sind, die sie verbinden, und so deren »Sprachen« verstehen. Die Router sind dazu einfach mit den Netzwerkkarten dieser Netze ausgestattet. Erkennen sie, dass ein Datenpaket aus dem einen Netz in das andere übertragen werden sollen, dann »übersetzen« sie das Datenpaket in die »Sprache« des anderen Netzes, bauen also die Standards und Betriebsparameter des Herkunftsnetzwerkes in die des Nachbarnetzwerkes um. Die in den Routern verbaute Hard- und Software dient also allein dazu, die den Netzwerken eigenen Adressschemata und Paketformate ineinander umzuwandeln und so die Voraussetzung für den Datentransport über die Netzwerkgrenzen hinweg zu schaffen. Natürlich darf dabei die eigentliche Nachricht, die im Datenpaket als so genannte Nutzlast verpackt ist, nicht verändert werden – im Gegensatz zu den für den Transport relevanten Informationen, wie zum Beispiel Absenderadresse, Zieladresse oder Paketlänge, die in einem Header gekapselt am Anfang des Datenpakets stehen.
Zusätzlich ermitteln die Router für die Datenpakete die nächste Weiterleitungsadresse, an die das Paket im angrenzenden Netz versendet werden muss, damit es sein Ziel erreicht. Dazu verfügen die Router über eine so genannte Routingtabelle. Sie analysieren die im Datenpaket verpackte Internetadresse der Nachricht und bestimmen dann mit Hilfe dieser Liste die Adresse des nächsten Routers – des nächsten »Hops« – auf dem Weg zum Ziel der Nachricht. Darüber hinaus überprüft der Router noch mit Hilfe von Prüfsummen jedes Datenpaket auf Übertragungsfehler. In folgenden Kolumnen werden wir uns die beiden wesentlichen IP-Protokolle auf der Internetschicht, IPv4 und IPv6, genauer anschauen.
Nachdem das IP-Protokoll auf der Internetschicht seine Übersetzungsarbeit verrichtet hat, werden nun Mechanismen gebraucht, um einen universellen Transportdienst bereitzustellen und den korrekten Datentransfer zu garantieren. Das ist Aufgabe von Protokollen wie TCP auf der Transportschicht. TCP (Transmission Control Protocol) stellt für die Datenübertragung eine Verbindung her, etwa zwischen Webserver und Webbrowsern, und baut diese nach erfolgreicher Übertragung wieder ab. Um sicherzustellen, dass die Datenpakete tatsächlich ihr Ziel erreichen, wird ein Quittierungsmechanismus implementiert. Der Empfänger quittiert dem Sender den Erhalt eines Datenpakets. Bekommt er diese Quittung nicht, sendet er das Datenpaket ein weiteres Mal. Weiterführende Korrekturmethoden sorgen für die korrekte Anordnung der übertragenen Datenpakete und kümmern sich um die Datenflusskontrolle, da es bei Überlastsituationen im Netzverbund leicht zur Beschädigung von Daten oder dem Verlust von Datenpaketen kommen kann. TCP drosselt dann einfach das Übertragungsvolumen, so dass solche Beschädigungen oder Verluste vermieden werden.
Schließlich ist der eigentliche Zweck des Internets ja die Nutzung der vielen Anwendungen, die dezentral in den verschiedenen Netzen verteilt liegen und von dort über das Internet abgerufen werden können. Das zu ermöglichen ist die Aufgabe der Protokolle der über der Transportschicht liegenden Anwendungsschicht. Die wichtigsten Protokolle sind hier HTTP (Hypertext Transfer Protocol) beziehungsweise HTTPS für das (sichere) WWW, SMTP (Simple Mail Transfer Protocol) für die E-Mail-Kommunikation und FTP (File Transfer Protocol) für den Dateitransfer über das Internet.
Schreiben Sie uns!
Beitrag schreiben