Netzwerkprotokoll
Modèle:Vorlage:IPStack Ein Netzwerkprotokoll ist eine exakte Vereinbarung, nach der Daten zwischen Computern bzw. Prozessen ausgetauscht werden, die durch ein Netzwerk miteinander verbunden sind (verteiltes System). Die Vereinbarung besteht aus einem Satz von Regeln und Formaten (Syntax), die das Kommunikationsverhalten der kommunizierenden Instanzen in den Computern bestimmen (Semantik).
Der Austausch von Nachrichten erfordert häufig ein Zusammenspiel verschiedener Protokolle, die unterschiedliche Aufgaben übernehmen (z. B. TCP/IP Suite). Um die damit verbundene Komplexität beherrschen zu können, werden die einzelnen Protokolle in Schichten organisiert. Im Rahmen einer solchen Architektur gehört jedes Protokoll einer bestimmten Schicht an und ist für die Erledigung der speziellen Aufgaben zuständig (z. B. Überprüfen der Daten auf Vollständigkeit – Schicht 2). Protokolle höherer Schichten verwenden Dienste von Protokollen tieferer Schichten (Schicht 3 verlässt sich z. B. darauf, dass die Daten vollständig angekommen sind). Zusammen bilden die so strukturierten Protokolle einen Protokollstapel – in Anlehnung an das OSI-Modell (s.a. DoD-Schichtenmodell). Nachrichten einer bestimmten Schicht werden auch als Protokolldateneinheiten (protocol data units) bezeichnet. Unter dem Oberbegriff TCP/IP sind rund 500(!) Protokolle zusammengefasst. TCP/IP steht daher auch allgemein für das Protokoll beim Datenaustausch zwischen verschiedenen Rechnern.
| Inhaltsverzeichnis |
Der typische Aufbau eines Protokolls
Neben den eigentlichen Nutzdaten die man austauschen möchte, werden beim Einsatz von Protokollen weitere Daten oder ganze Datenpakete benötigt.
In einem Datenpaket wird vor die eigentlichen Daten meist ein sogenannter Header gestellt. Dieser beinhaltet verschieden Informationen über das Paket wie z. B.:
- Dessen Absender und Empfänger
- Den Typ des Pakets (z.B. Verbindungsaufbau, Verbindungsabbau oder Nutzdaten)
- Die Paketlänge
- Eine Prüfsumme
Außerdem werden feste Paketsequenzen für den Verbindungsauf- und Abbau benötigt. All diese Maßnahmen verursachen weiteren eigentlich unerwünschten, weil die Kapazität belastenden, Datenverkehr (Traffic) auf den Datenleitungen – den sog. Overhead. Dieser wird aber aufgrund der wichtigen Aufgaben, die Protokolle leisten, in Kauf genommen. Mit User Datagram Protocol (UDP) steht in der Transportschicht auch ein Protokoll mit nur minimalem Overhead zur Verfügung, das keine Ende - zu - Ende - Kontrolle der Übertragung gewährleistet.
Unterscheidungsmerkmale von Netzwerkprotokollen
- Anzahl von Parteien, die an der Kommunikation teilnehmen: Gibt es für eine Übermittlung immer nur einen Empfänger, spricht man von Unicast, bei Übertragungen an mehrere Teilnehmer von Multicast.
- Findet die Kommunikation nur in eine Richtung statt, spricht man von Simplex, fließen die Daten wechselweise in beide Richtungen, von Halb-Duplex oder gleichzeitig in beide Richtungen, von Vollduplex.
- Stellung der Kommunikationsteilnehmer: Sind diese untereinander gleichberechtig, spricht man von Peer-to-Peer oder symmetrischer anderenfalls von asymmetrischer Kommunikation. Das am weitesten verbreitete asymmetrische Modell ist das Client-Server-System, bei dem ein Dienstanbieter (der Server) Anfragen von verschiedenen Clients bearbeitet, wobei es immer die Clients sind, die die Kommunikation initiieren (d. h., einen Kanal öffnen).
- Man Unterscheidet ob nach einer Anfrage auf Antwort gewartet wird (Synchrone Kommunikation) oder nicht (Asychrone Kommunikation).
- Während einer paketorientierten Kommunikation werden Nachrichten bzw. Datenpakete übertragen, beim Streaming wird mit einem kontinuierlichen Datenstrom einzelner Zeichen gearbeitet.
Die wesentlichen Aufgaben moderner, leistungsstarker Protokolle
- Ein sicherer Verbindungsaufbau zwischen den an der Kommunikation beteiligten Computern (Handshake)
- Das verlässliche Zustellen von Paketen
- Wiederholen nicht angekommener Pakete
- Zustellen der Datenpakete an den/die gewünschten Empfänger
- Das Sicherstellen einer fehlerfreien Übertragung (Prüfsumme)
- Das Zusammenfügen ankommender Datenpakete in der richtigen Reihenfolge
- Durch Verschlüsselung kann ein Eingriff unbefugter Dritter verhindert werden
- Ein zuverlässiger Verbindungsabbau
Funktionsbeispiel
Anhand des Verbindungsaufbau Prozederes des TCP/IP Protokolls soll ein einfaches praktisches Beispiel gezeigt werden. (siehe auch Handshake-Verfahren)
- Zunächst schickt Computer 1 ein Paket, in dem steht, dass er eine Verbindung zu Computer 2 aufbauen möchte.
- Anschließend antwortet Computer 2, dass er dazu bereit ist.
- Computer 1 bestätigt Computer 2, dass er verstanden hat, dass Computer 2 bereit ist.
Die Verbindung ist damit hergestellt.
Einsatz von Protokollen
Die bekannteste Nutzung von Protokollen findet rund um das Internet statt, hier sorgen sie für (Anwendung - (Protokollbezeichnung)):
- Das Laden von Web-Seiten – (HTTP)
- Verschicken von E-Mails – (SMTP)
- Herunterladen von Dateien – (FTP oder HTTP)
Diese Funktionen bauen zum Teil aufeinander auf. So löst beispielsweise das Protokoll TCP das Problem der Datenübertragung.
Das Protokoll SMTP zum Übermitteln von E-Mails benötigt wiederum die Funktion, Daten zu versenden und setzt dazu auf das TCP auf.
Dieses schichtweise aufeinander Aufbauen der Protokolle wird mit Hilfe des OSI-Modells dargestellt.
Geschichte
Im Jahr 1968 wurden auf Veranlassung des amerikanischen Verteidigungsministeriums Versuche durchgeführt, mit denen grundlegende Erkenntnisse über die Funktionsweise von Rechnernetzen gewonnen werden sollten. Als praktisches Ergebnis wurde 1969 das ARPANET - Projekt aufgelegt. Hier wurden für die Kommunikationsverwaltung zusätzliche Rechner bei den clients des Netzes eingerichtet. Das ARPNET wurde 1972 in der Öffentlichkeit vorgestellt und in den Folgejahren stetig weiter ausgebaut, UNIX 6 kam auf den Netzknoten zum Einsatz. Ab 1983 hatten sich die TCP/IP - Protokolle durchgesetzt. Aus dem ARPNET wurde für militärische Belange ein separates Netz abgeteilt, das MILNET. Mit TCP/IP etablierte sich ein Standard zuverlässiger und leistungsfähiger Datenübertragung. Die massenhafte kommerzielle Verwertung begann.
Literatur
- Hein/Reisner(2001): TCP/IP ge-packt. Bonn: mitp-Verlag
- G.Siegmund(2003):Technik der Netze. 5.Aufl., 1296 S., Berlin und Offenbach: VDE Verlag
Weblinks
Eine Auflistung gängiger Protokolle in der Wikipedia und deren Beschreibung kann in der Kategorie Netzwerkprotokoll gefunden werden.
