Was ist ein Netzwerkprotokoll?

In technischen Artikeln werden oft Netzwerkprotokolle erwähnt, aber was versteht man eigentlich darunter? Die Begriffe Netzwerk und Protokoll sind für sich allein leicht verständlich, aber was ist mit „Netzwerkprotokoll“ gemeint?

Eine nicht besonders erklärende, aber zutreffende Antwort wäre: Was Ihnen erlaubt, diesen Artikel zu lesen. Das ist jetzt wahrscheinlich nicht besonders hilfreich, macht die Antwort aber nicht weniger richtig.

Netzwerkprotokolle sind vergleichbar mit Sprachen: Sie dienen der Kommunikation zwischen verschiedenen Geräten und Services. Wie bei einem Gespräch zwischen zwei Personen, muss zuerst eine gemeinsame Sprache gefunden werden, bevor die Beteiligten kommunizieren können.

Es gibt spezifische Netzprotokolle für verschiedene Aufgaben. Jedes der Protokolle ermöglicht zwar die Kommunikation zwischen den Geräten und Services, unterscheidet sich jedoch in seinem Inhalt. Seit es die erste Telefonleitung gibt, hat man Netzwerkprotokolle etwa für die gemeinsame Nutzung von Daten, für das Drucken mit einem Remote-Drucker oder für die Sprachübertragung entwickelt. Heutzutage gibt es Dutzende von Netzwerkprotokollen, von grundlegenden und allgemeinen bis hin zu superspezifischen Protokollen.

Wie funktionieren Netzwerkprotokolle?

Ein Netzprotokoll wird auch als „Kommunikationsprotokoll“ oder „Netzkommunikationsprotokoll“ bezeichnet. Technisch gesehen ist ein Protokoll dieser Klasse definiert als eine Reihe von Regeln für den Informationsaustausch über ein Netzwerk. Bei einem Vergleich mit einer menschlichen Sprache, sind die Regeln ähnlich der Syntax und Grammatik einer Sprache, während die übermittelten Informationen vergleichbar mit unseren Worten sind.

Jedes Netzprotokoll funktioniert nach bestimmten Regeln, die einen bestimmten Bereich betreffen. Die Regeln legen fest, wie Informationen übertragen werden sollen. Im Normalfall legen sie die Reihenfolge und die Bedeutung einiger Metadaten fest, die dem empfangenden Gerät mitteilen, welches Protokoll verwendet wird. Ähnlich wie bei einem Gespräch mit einer anderen Person, bei dem Sie wissen, dass Sie auf „Danke“ mit „Gern geschehen“ antworten sollten, haben auch Netzprotokolle eine bestimmte Anzahl von erwarteten Antworten auf jede Art von Nachricht.

So wie nicht jeder Mensch alle Sprachen spricht, unterstützt nicht jedes Gerät jedes Protokoll. So kann ein Gerät zum Beispiel ein Netzwerk-Monitoring-Protokoll unterstützen, während ein IT-Team seine Funktionen überwachen muss. Ein anderes Gerät wurde wiederum für die Verwaltung anderer Geräte entwickelt und unterstützt demnach ein Netzwerk-Management-Protokoll.

Im Gegensatz zu menschlichen Sprachen, die alle gesprochen und geschrieben werden können, sind Netzwerkprotokolle spezifischer. Es gibt Netzwerküberwachungsprotokolle, die Informationen über den Status eines Geräts austauschen, um es zu überwachen. Netzwerksicherheitsprotokolle dienen dem sicheren Austausch von Nachrichten, die sensible Informationen enthalten (durch Verschlüsselung mittels komplizierter mathematischer Algorithmen).

Netzwerkprotokolle dienen dem Austausch von Dateien (FTP), der Anzeige von Webseiten (HTTP), der Verbindung mit einem Remote-Gerät (SSH), der Überwachung und Konfiguration (SNMP) usw. Einige Protokolle haben mehrere Funktionen. HTTP wurde beispielsweise für die Verbreitung von Hypermedia-Texten (allgemein als Webseiten bezeichnet) entwickelt, hat aber mittlerweile viele weitere Funktionen, die vom Streaming von Videos bis zu Sprachanrufen reichen.

Bereits in den 1970er Jahren, als die meisten der heute verwendeten Netzwerksysteme entstanden, wurde das OSI-Netzwerkmodell entwickelt, um die Interoperabilität zwischen Netzwerken durch ein System von konzeptionellen Schichten zu erleichtern. Es gibt insgesamt sieben Schichten, beginnend mit der untersten, der Hardware, und endend mit der Schicht, mit der der Mensch am meisten interagiert, der Anwendungsschicht. Im Laufe dieses Artikels werden wir jedes Protokoll den verschiedenen Schichten des OSI-Modells zuordnen, wenn es angebracht ist. Die vollständige Liste der Schichten mit einer Erklärung finden Sie hier.

Wer nutzt Netzwerkprotokolle?

Die Antwort auf diese Frage ist ziemlich eindeutig – jeder. Netzwerkprotokolle sind nicht nur für IT-Profis und Netzwerk-Admins wichtig, denn jeder von uns nutzt sie auf die eine oder andere Weise. Egal, ob Sie im Internet surfen, eine E-Mail senden, eine SMS empfangen oder mit Freunden chatten, Sie nutzen dabei ein Netzwerkprotokoll. Oft sogar mehrere gleichzeitig.

IT-Teams verfügen über Protokolle für das Netzwerk-Monitoring, die ihnen bei der Fehlersuche in einem Netzwerk helfen. Die meisten Menschen verwenden jedoch überhaupt keine Netzwerküberwachungsprotokolle. Ähnlich wie es mit verschiedenen Sprachen ist, lernt und verwendet man nur die Protokolle, die nützlich für einen sind. Wir werden daher an dieser Stelle die wichtigsten vorstellen.

Welche Arten von Netzwerkprotokollen gibt es?

Heutzutage gibt es Tausende von Netzwerkprotokollen, aber wir werden uns auf drei Hauptbereiche konzentrieren – Netzwerkkommunikation, Netzwerkmanagement und Netzwerksicherheit.

Der Grund dafür ist einfach: Protokolle für die Netzwerkkommunikation werden mit Abstand am häufigsten verwendet. Die Verwaltungsprotokolle sind für uns am interessantesten, während die Sicherheitsprotokolle relevant für das Monitoring sind.

Netzwerkkommunikationsprotokolle

Netzwerkkommunikationsprotokolle sind die Basis der Netzwerkprotokolle und wurden für die Informationsübertragung über ein Netzwerk entwickelt. Sie übermitteln demnach allgemeine oder spezifische Informationen. Die meisten dieser Protokolle sind allgemein bekannt und bilden die Grundlage, auf der das gesamte Internet beruht.

Beispiel für TCP-Verbindungen auf einem Linux-Server

IP und TCP/UDP

Das IP-Protokoll ist die Wurzel des Internets. Ohne es würde das Internet gar nicht erst existieren. Seine Funktionsweise ist leicht zu verstehen, da seine Terminologie Teil der alltäglichen Beschreibung des Webs geworden ist.

IP funktioniert, indem es Pakete von einem Host an eine Ziel-IP-Adresse weiterleitet. Zudem ist es ein Routing-Protokoll, da es das Konzept der numerischen Adressen und ihrer verschiedenen Klassen eingeführt hat. Je nachdem, wie die Nummern verteilt sind, kann ein Paket für ein lokales Netz (LAN) oder ein externes Netz (WAN) bestimmt sein. Im Grunde genommen ist das Internet das WAN für alle.

IP ist ein verbindungsloses Protokoll, es gibt also kein festgelegtes Verfahren, um mit einem Host zu kommunizieren. Sie fangen einfach an, mit dem Protokoll zu kommunizieren und fahren je nach Antwort (oder deren Ausbleiben) fort. Bei verbindungsorientierten Protokollen gibt es hingegen ein starres Verfahren, um die Kommunikation zu starten. Es umfasst eine Reihe von Abfragen und Antworten, die Sie befolgen müssen, damit die Informationen korrekt gesendet und empfangen werden. Ein Beispiel, das auf IP aufbaut, ist TCP (Transmission Control Protocol). Vielleicht haben Sie schon von TCP/IP gehört. Es ist so populär, dass es mit dem wichtigsten Kommunikationsprotokoll des Internets in Verbindung gebracht wird.

Die andere Seite von TCP ist UDP (User Datagram Protocol). Im Gegensatz zu TCP ist UDP flexibler und kümmert sich nur darum, wie Nachrichten verpackt und so schnell wie möglich versendet werden. Obwohl es grundsätzlich wegen seiner Geschwindigkeit gegenüber TCP bevorzugt wird, ist es nicht so zuverlässig. Mit UDP haben Sie keine Garantie, dass die Gegenseite Ihre Nachrichten korrekt empfängt oder sie auch wirklich versteht.

In den Schichten des OSI-Modells befindet sich IP in der dritten Schicht, dem Netzwerk. TCP und UDP befinden sich auf darüber liegenden Schicht vier, dem Transport.

DNS

DNS ist ein weiteres Schlüsselprotokoll des Internets. Während IP jedem Gerät eine Adresse gibt (wie der Name einer Person), übersetzt DNS (Domain Name System) sie in eine bestimmte Position in einem Netzwerk (wie die Adresse ihres Hauses). DNS ist das Adressregister des Internets, das weiß, welche IP-Adresse welcher Domain entspricht und umgekehrt.

Durch DNS können Sie eine Website in den Browser eingeben und werden zur richtigen Website geführt. Internet-Provider unterhalten für ihre Kunden einen "name server", auf dem alle IP-Adressen in ihrer „Zone“ verzeichnet sind. Das gesamte Internet ist in viele dieser kleinen Zonen unterteilt. Wenn Sie eine Website über ihre Domain suchen, wird Ihre Anfrage von der physisch am nächsten gelegenen Zone zu der am weitesten entfernten weitergeleitet, die für eine positive Antwort erforderlich ist. Sobald Sie die IP-Adresse haben, ist die Aufgabe des DNS erledigt, und Sie können zu anderen Netzwerkprotokollen übergehen, um die gewünschten Daten auszutauschen.

Vielleicht anders als erwartet, befindet sich DNS in der siebten OSI-Schicht, der Applikationsschicht.

HTTP und FTP

HTTP ist in der Regel das nächste Protokoll, das Sie verwenden, nachdem DNS Ihnen die IP-Adresse der gesuchten Domain mitgeteilt hat. Seine Aufgabe ist es, die Inhalte zu übermitteln, die sich auf dieser Domain befinden.

FTP hat einen ähnlichen Anwendungsbereich wie HTTP. Es steht für File Transfer Protocol und konzentriert sich, wie der Name schon vermuten lässt, auf die Übertragung von Dateien und nicht von Webseiten. Dabei können die Dateien auch mehrere Gigabyte groß sein. Einst sehr beliebt, hat es in den letzten Jahren an Bedeutung verloren, da HTTP einen Großteil der Aufgaben von FTP übernommen hat.

Sowohl HTTP als auch FTP arbeiten über TCP/UDP-Pakete und befinden sich auf der Anwendungsschicht des OSI-Modells.

SMTP

Ein Beispiel für ein Protokoll, das nur für eine Aufgabe bestimmt ist, ist SMTP (Simple Mail Transfer Protocol). Es ist nur für die Übertragung von E-Mails zuständig. Das Empfangen von E-Mails ist die Aufgabe anderer Protokolle.

SMTP übernimmt zwar nur eine Aufgabe, macht diese aber so gut, dass es seit den frühen 1980er Jahren das Netzwerkprotokoll dafür ist. Beim Versenden Ihrer E-Mails fügt es zudem die erforderlichen Kopfzeilen hinzu (die Felder „Von“ und „An“ in E-Mails sind Kopfzeilen) und stellt sicher, dass der Empfänger die E-Mail erhalten hat. Ähnlich wie bei TCP gibt es verschiedene Anforderungen, um den ordnungsgemäßen Versand und Empfang von Nachrichten sicherzustellen.

SMTP ist ein weiteres Protokoll der Anwendungsschicht des OSI-Modells.

Netzwerkverwaltungsprotokolle

Im Laufe der Jahre ist es mit den wachsenden Netzwerken immer wichtiger geworden, die Geräte zu verwalten. Aus einer Handvoll Computer, die sich alle in einem Raum befinden, sind Dutzende oder Hunderte geworden, die über mehrere Standorte in der ganzen Welt verstreut sind und oft mehr als einer Organisation angehören.

Sie alle zu verwalten, ist eine schwierige Aufgabe. Netzwerkverwaltungsprotokolle wurden speziell zur Erleichterung dieser Aufgabe entwickelt.

Screenshot von einem SNMP-Gerät

SNMP

Wir haben bereits über SNMP gesprochen. Dementsprechend beschränken wir uns an dieser Stelle auf das Wesentliche.

SNMP hat eine doppelte Funktion: Sie können es nicht nur zum Verwalten (Konfigurieren) von Remote-Geräten, sondern auch zum Netzwerk-Monitoring verwenden. Das Protokoll basiert auf dem Konzept eines Managers und eines Agenten. Der Manager verwaltet die verschiedenen Geräte, auf denen die Agenten installiert sind und verfolgt zudem alle gesammelten Metriken. Die Agenten überwachen das Gerät, auf dem sie sich befinden, und können einen Alert an den Manager senden, wenn etwas nicht in Ordnung ist.

Dies sind die Grundlagen eines recht komplexen Protokolls. SNMP ist seit über vier Jahrzehnten das wichtigste Netzwerküberwachungsprotokoll. Es ist im OSI-Modell auf Schicht sieben, der Applikationsschicht, angesiedelt.

Netzwerksicherheitsprotokolle

In diesem Abschnitt werden wir uns einige Netzwerkprotokolle ansehen, die eine sichere Kommunikation gewährleisten. Sie sind nicht mit menschlichen Sprachen vergleichbar, sondern eher mit einem Code, der im Voraus zwischen zwei Personen ausgetauscht wird und bei dem ein Symbol oder eine Zahl nur derjenige verstehen kann, der den Code kennt.

Netzwerksicherheitsprotokolle sind das Äquivalent zu solchen Codes in Computern.

Beispiel für VPN-Monitoring

SSL und TLS

SSL (Secure Sockets Layer) ist eine Schicht über anderen Protokollen. In der Regel wird es in Verbindung mit HTTP verwendet, wodurch es zu HTTPS (S für Secure) wird. SSL wurde 1995 entwickelt, um eine sichere Übertragung von Informationen im Netscape-Browser zu ermöglichen. Seitdem haben es alle Browser implementiert.

Doch wie funktioniert es? Es verschlüsselt alle übertragenen Daten, indem es eine Kombination aus kryptografischen Schlüsseln und öffentlichen Zertifikaten sowie einen Hash-Algorithmus verwendet. Viele neue Worte, die sich leicht übersetzen lassen: Zwei Computer einigen sich automatisch darauf, wie sie die Daten, die sie austauschen wollen, verschlüsseln wollen. Der Server stellt sein digitales Zertifikat zur Verfügung – eine Datei mit einer langen alphanumerischen Zeichenfolge, die die Identität des Servers darstellt. Der Client weiß dann, dass der Server derjenige ist, für den er sich ausgibt, da nur dieser Server über dieses spezielle Zertifikat verfügen sollte. Danach generiert der Server auf der Grundlage des Zertifikats mehrere Schlüssel (weitere alphanumerische Dateien), die er zur mathematischen Verschlüsselung aller von nun an übertragenen Daten verwendet.

Das hört sich nach vielen komplizierten Schritten an, ist aber für uns transparent. Kein Schritt ist manuell, alles geschieht automatisch.

SSL war von Anfang an mit Schwachstellen und Sicherheitsproblemen behaftet. Inzwischen hat man es durch ein robusteres Netzwerksicherheitsprotokoll ersetzt, TLS (Transport Layer Security). Es leistet genau dasselbe wie SSL, ist aber sicherer.

Seltsamerweise lassen sich weder SSL noch TLS eindeutig in die Schichten des OSI-Modells einordnen. Man vermutet, dass sie irgendwo zwischen der vierten und fünften, also der Transport- und der Sitzungsschicht liegen.

SSH

In denselben Jahren wie SSL wurde auch das Netzwerksicherheitsprotokoll SSH (Secure Shell Protocol) entwickelt. SSH funktioniert vom Konzept her ähnlich wie SSL/TLS: Ein Client und ein Server tauschen eine Reihe von Schlüsseln und/oder Zertifikaten aus, um die übertragenen Daten zu verschlüsseln.

Obwohl ein digitales Zertifikat teilweise vorhanden ist, ist es bei SSH nicht zwingend erforderlich. Die Authentifizierung kann auch über einen Benutzernamen und ein Passwort erfolgen. Anschließend werden digitale Schlüssel verwendet. Das Zertifikat unter SSH ist nützlich, um sich automatisch zu authentifizieren, ohne dass man den Namen und das Passwort manuell eingeben muss.

SSH ist dadurch etwas flexibler als SSL/TLS. Es lässt sich normalerweise nicht nur als Netzwerksicherheitsprotokoll verwenden, sondern auch als Protokoll zur Überwachung der Netzwerkgesundheit. Man kann es als eines der Netzwerküberwachungsprotokolle betrachten, da SSH den vollständigen Zugang zu einem externen Computer ermöglicht und nicht nur den Austausch von verschlüsselten Daten. Sobald der Zugriff gewährt wird, können Sie den Remote-Computer so verwalten, konfigurieren und überwachen, als wäre er vor Ort. SSH ist ein hervorragendes Beispiel für ein Netzwerkprotokoll, das mehr als nur einen Verwendungszweck hat.

SSH befindet sich im OSI-Modell auf Schicht 7, der Anwendungsschicht.

IPSec

IPSec steht für Internet Protocol Security, und der Name sollte Ihnen bereits verraten, wo es in der OSI-Modellschicht angesiedelt ist. Es ist das Äquivalent zu IP, aber sicher. Es befindet sich auf Schicht 3.

Wahrscheinlich haben Sie noch nie von IPSec als solchem gehört, aber von seiner bekanntesten Anwendung: VPN. Ein virtuelles privates Netzwerk ist so, als wären externe Computer in Ihrem Netzwerk. IPsec baut zwischen den Computern Tunnel für die verschlüsselte Kommunikation auf. Auf diese Weise lassen sich Systeme virtuell miteinander verbinden und ein sicherer Austausch gewährleisten.

Der Tunnel wird ähnlich wie bei SSH und SSL aufgebaut. Er dient jedoch nicht dazu, Daten mit beliebigen Servern auszutauschen (wie SSL/TLS) oder auf sie zuzugreifen (wie SSH), sondern um eine sichere Kommunikation mit mehreren Servern zu ermöglichen. Das ist die Definition eines VPNs. IPSec ist das Netzwerkkommunikations- und Sicherheitsprotokoll, das den Betrieb eines VPNs ermöglicht. Es wird in der Regel von Unternehmen verwendet, um die Kommunikation zwischen allen Computern in ihrer Organisation zu schützen, auch wenn sie sich physisch nicht im selben Netzwerk befinden können.

Was ist ein Netzwerküberwachungsprotokoll?

Eine andere Art von Netzwerkprotokollen, die sich auf eine Aufgabe konzentrieren, sind Netzwerküberwachungsprotokolle. Sie sind eine Unterart der Netzwerkkommunikationsprotokolle, da sie auch Informationen austauschen. Aber während diese Protokolle allgemeiner Natur sind, geht es bei den Netzwerküberwachungsprotokollen um die Übertragung von Daten, die Netzwerk-Admins verwenden können, um Probleme im Netzwerk zu erkennen.

Verglichen mit der menschlichen Sprache sind sie wie Menschen, die ihrem Arzt regelmäßig mitteilen, wie sie sich fühlen, und der Arzt interpretiert ihre Worte, um gegebenenfalls ein Heilmittel zu finden.

Welches Protokoll können Sie für das Netzwerk-Monitoring nutzen?

SNMP ist wahrscheinlich das am meisten genutzte Protokoll. Oft ist es eine gute Antwort auf die Frage, welches Protokoll für das Netzwerk-Monitoring verwendet werden kann. Es ist jedoch nicht das einzige. Es gibt eine Handvoll anderer Netzwerküberwachungsprotokolle, die ebenfalls eine gute Wahl sind.

Screenshot zeigt NetFlow Statistiken

NetFlow und IPFIX

Das proprietäre NetFlow von Cisco war jahrelang der Hauptkonkurrent von SNMP beim Netzwerk-Monitoring. Es wird nun von IPFIX (IP Flow Information Export) abgelöst, das darauf basiert. Bei beiden Protokollen handelt es sich ebenfalls um „fokussierte“ Netzwerkkommunikationsprotokolle. Fokussiert bedeutet in diesem Fall, dass sie nicht alles erfassen, was zwischen den Netzwerkgeräten übertragen wird, sondern nur Teile davon. Auf diese Weise erhalten sie eine allgemeine Vorstellung davon, woher der Verkehr kommt und wohin er geht. Diese Teile werden "Flows" genannt. Im Vergleich zu menschlichen Sprachen sind diese Flows so, als würde man in groben, allgemeinen Konzepten und Ideen sprechen, anstatt ins Detail zu gehen.

Für das Netzwerk-Monitoring kann es von Vorteil sein, nur eine allgemeine Vorstellung davon zu haben, wie sich der Datenverkehr bewegt. Dies erleichtert zunächst die Fehlersuche bei Problemen und Engpässen. Es ist jederzeit möglich, die in NetFlow und IPFIX erfassten Datenströme später bei Bedarf zu vertiefen.

WMI und MI

Eine beliebte Wahl für das Netzwerk-Monitoring unter Windows ist WMI (Windows Management Instrumentation). WMI ist ein ziemlich komplexes Netzwerküberwachungsprotokoll und ähnelt in seinem Umfang einer Mischung aus SSH und SNMP. Es ermöglicht sowohl den Zugriff auf Monitoring-Metriken eines Geräts als auch den vollständigen Zugriff auf das Gerät selbst. Daher ist es sehr leistungsfähig. Im Gegensatz zu SSH verfügt es jedoch über keine Sicherheitsaspekte und ist dementsprechend kein Netzwerksicherheitsprotokoll.

WMI hat sich zu MI (Management Infrastructure) weiterentwickelt, das von allen neueren Windows-Versionen unterstützt wird. Es funktioniert sehr ähnlich wie WMI, behebt aber einige Probleme, die das ursprüngliche Windows-basierte Netzwerküberwachungsprotokoll hatte.

ICMP

Ein grundlegendes Netzwerküberwachungsprotokoll ist ICMP (Internet Control Message Protocol). Es ist eines der ältesten und einfachsten Netzwerkprotokolle und stammt aus der gleichen technologischen Ära wie IP. Dementsprechend befindet sich gemeinsam mit IP auf der dritten Schicht des OSI-Modells.

Seine Einfachheit ist seine Stärke. ICMP prüft lediglich, ob ein Gerät aktiv ist, und antwortet darauf. Das ist so, als würden sich zwei Menschen immer wieder gegenseitig mit „Bist du da?“ abfragen. Die Antwort ist im Falle von ICMP entweder ja oder gar keine Antwort. In diesem Fall liegt möglicherweise ein Problem vor, das man näher untersuchen sollte. Es ist nichts Ausgefallenes, aber für einen ersten Schritt bei der Fehlersuche bei möglichen Netzwerkproblemen ist ICMP sehr gut geeignet.