Grundlagen von TCP/IP
TCP/IP umfasst IP, TCP, UDP, DNS, HTTP und TLS als Rollenverbund; es ermöglicht Kommunikation, anonymisiert sie aber nicht.
Internetkommunikation funktioniert nicht durch einen einzigen großen Mechanismus.
Beim Ansehen einer Website, beim Senden von E-Mail und beim Verbinden einer App mit einem Server arbeiten mehrere Kommunikationsregeln zusammen.
Die grundlegende Denkweise dahinter ist TCP/IP.
Der Name TCP/IP enthält TCP und IP, meint aber nicht nur TCP und IP. Er wird als Bezeichnung für die Protokollfamilie verwendet, die im Internet genutzt wird, also für die grundlegenden Mechanismen der Kommunikation insgesamt.
Dieser Artikel behandelt TCP/IP nicht als detaillierte Spezifikation, sondern als Einstieg, um das Gesamtbild der Internetkommunikation zu verstehen.
Was ist TCP/IP?
TCP/IP ist die grundlegende Protokollfamilie, die für Kommunikation im Internet verwendet wird.
Ein Protokoll ist eine Vereinbarung für Kommunikation. Es braucht Regeln dafür, wie Ziele angegeben werden, in welchen Einheiten Daten gesendet werden, was bei nicht zugestellten Daten geschieht und in welchem Format Anwendungen miteinander sprechen.
Bei TCP/IP betrachtet man Kommunikation getrennt nach Rollen.
| Rolle | Hauptzuständig | Erklärung |
|---|---|---|
| Zum Ziel bringen | IP | Richtet Kommunikation über IP-Adressen auf das Ziel aus |
| Zustellung verwalten | TCP / UDP | Legt fest, wie Daten gesendet werden und wie Zuverlässigkeit oder Leichtgewichtigkeit behandelt werden |
| Namen auflösen | DNS | Ermittelt die IP-Adresse zu einem Domainnamen |
| Anwendungen austauschen lassen | HTTP und Ähnliches | Tauscht Webseitendaten, API-Daten und andere Anwendungsdaten aus |
| Kommunikation schützen | TLS | Verschlüsselt Inhalte von HTTP und ähnlicher Kommunikation und erleichtert Schutz vor Veränderung und Nachahmung |
Internetkommunikation entsteht also, indem IP, TCP und UDP als Grundlage mit Mechanismen wie DNS, HTTP und TLS zusammenspielen.
IP richtet Kommunikation auf das Ziel aus
IP steht für Internet Protocol.
Die zentrale Rolle von IP ist, Kommunikation mithilfe von IP-Adressen auf ein Ziel auszurichten. Im Internet werden IP-Adressen verwendet, um Geräte und Server zu adressieren.
Wenn ein Browser mit einem Webserver kommuniziert, werden Pakete letztlich an die Ziel-IP-Adresse gesendet. Router unterwegs betrachten unter anderem die Ziel-IP-Adresse und entscheiden, wohin sie das Paket als Nächstes weiterleiten.
IP ist jedoch ein Mechanismus, um Kommunikation zum Ziel zu richten. Es garantiert nicht allein die Zuverlässigkeit der gesamten Kommunikation.
IP allein behandelt folgende Punkte nicht ausreichend:
- ob Daten angekommen sind
- ob Daten in der richtigen Reihenfolge angekommen sind
- ob verlorene Daten erneut gesendet werden
- an welche App innerhalb eines Geräts Daten weitergegeben werden
Dafür sind TCP, UDP, Portnummern und höhere Protokolle relevant.
TCP legt Wert auf Zuverlässigkeit
TCP steht für Transmission Control Protocol.
TCP ist ein Mechanismus, der den genauen Umgang mit Daten erleichtert. Es baut eine Verbindung mit dem Kommunikationspartner auf, bestätigt, ob gesendete Daten angekommen sind, sendet verlorene Daten erneut und bringt Daten, deren Reihenfolge unterwegs durcheinandergeraten ist, wieder in die richtige Reihenfolge.
Deshalb eignet sich TCP für Kommunikation, bei der fehlende oder vertauschte Daten problematisch wären.
| Verwendung | Warum TCP passt |
|---|---|
| HTTP/1.1 / HTTP/2 | Webseitendaten müssen korrekt empfangen werden |
| Login-Verarbeitung | Wenn Authentifizierungsdaten fehlen, kann die Verarbeitung nicht korrekt laufen |
| Dateiübertragung | Wenn Teile fehlen, kann die Datei beschädigt sein |
| E-Mail-Versand | Der Nachrichteninhalt muss korrekt zugestellt werden |
TCP ist jedoch kein Mechanismus, der alles schneller macht. Durch Bestätigungen und erneutes Senden kann je nach Kommunikationslage zusätzliche Verzögerung entstehen.
TCP ist wichtig, wenn Zuverlässigkeit wichtiger ist als geringe Verzögerung.
UDP legt Wert auf Leichtgewichtigkeit und Flexibilität
UDP steht für User Datagram Protocol.
UDP führt Verbindungsaufbau, Zustellbestätigung, Reihenfolgenkontrolle und erneutes Senden nicht im Protokoll selbst aus. Dadurch ist der Mechanismus leichtgewichtig, und Anwendungen können benötigte Kontrolle leichter selbst entwerfen.
UDP wird für Kommunikation verwendet, bei der Echtzeitfähigkeit oder flexible Steuerung wichtig ist.
| Verwendung | Warum UDP verwendet wird |
|---|---|
| DNS | Kurze Anfrage und Antwort lassen sich schnell verarbeiten |
| Videoanrufe | Aktuelle Audio- oder Videodaten sind oft wichtiger als alte Daten später exakt zuzustellen |
| Online-Spiele | Der aktuelle Zustand soll mit geringer Verzögerung fortlaufend aktualisiert werden |
| QUIC / HTTP/3 | Neue Mechanismen für Zuverlässigkeit und Verschlüsselung werden über UDP gelegt |
UDP bedeutet nicht "schlechte Kommunikation, weil sie unzuverlässig ist". UDP selbst hält Garantien gering und überlässt notwendige Kontrolle der Anwendung oder höheren Mechanismen.
Mechanismen wie QUIC nutzen UDP als Grundlage und realisieren darüber eigene Zuverlässigkeit und Verschlüsselung.
Portnummern unterscheiden Anwendungen
Eine IP-Adresse zeigt die Position eines Kommunikationspartners im Netzwerk. In einem einzelnen Gerät oder Server kommunizieren jedoch mehrere Anwendungen und Dienste gleichzeitig.
Deshalb reicht eine IP-Adresse allein nicht aus, um zu wissen, an welche Anwendung die Kommunikation weitergegeben werden soll.
Dafür werden Portnummern verwendet.
| Information | Rolle | Beispiel |
|---|---|---|
| IP-Adresse | Zeigt, zu welchem Gerät oder Server Kommunikation geht | IP-Adresse eines Webservers |
| Portnummer | Zeigt, an welchen Dienst innerhalb dieses Geräts sie geht | 443 für HTTPS, 53 für DNS |
| Kommunikationsprotokoll | Zeigt etwa TCP oder UDP an | TCP 443, UDP 53 |
Wenn auf demselben Server Web, DNS und Mail laufen, können sie über unterschiedliche Portnummern unterschieden werden.
Bei TCP und UDP wird dieselbe Nummer als getrennte Kommunikation behandelt. TCP Port 443 und UDP Port 443 verwenden zwar beide die Nummer "443", sind aber nicht dieselbe Kommunikation.
DNS, HTTP und TLS laufen ebenfalls auf TCP/IP
Beim Ansehen einer Website endet es nicht bei IP, TCP und UDP.
Menschen geben Websites normalerweise über Domainnamen an, nicht über IP-Adressen. Deshalb wird zuerst mit DNS die IP-Adresse ermittelt, die zu einem Domainnamen gehört.
Wenn die IP-Adresse bekannt ist, kommuniziert der Browser mit dem Ziel. Für das Abrufen von Webseiten wird HTTP verwendet. Bei HTTPS wird HTTP-Kommunikation durch TLS geschützt.
| Mechanismus | Rolle |
|---|---|
| DNS | Ermittelt aus einem Domainnamen eine IP-Adresse |
| IP | Trägt Pakete zur Ziel-IP-Adresse |
| TCP / UDP | Behandelt, wie Daten zugestellt werden |
| TLS | Verschlüsselt Kommunikationsinhalte und prüft Ziel sowie Veränderungen |
| HTTP | Tauscht Daten von Webseiten und APIs aus |
Wichtig ist: Diese Mechanismen konkurrieren nicht miteinander, sondern teilen Rollen auf.
HTTPS ist zum Beispiel HTTP, das durch TLS geschützt wird. Darunter werden in vielen Fällen TCP oder UDP und IP verwendet.
Ablauf beim Öffnen einer Webseite
Aus TCP/IP-Sicht lässt sich das Öffnen einer Webseite grob so ordnen.
| Phase | Was passiert | Beteiligte Mechanismen |
|---|---|---|
| 1 | Die URL wird interpretiert | Browser, HTTP/HTTPS |
| 2 | Aus dem Domainnamen wird eine IP-Adresse ermittelt | DNS |
| 3 | Kommunikation wird zur Ziel-IP-Adresse ausgerichtet | IP, Routing |
| 4 | Die Zustellung der Daten wird verwaltet | TCP, UDP, QUIC und Ähnliches |
| 5 | Bei HTTPS wird die Kommunikation geschützt | TLS |
| 6 | Seiten- oder API-Daten werden angefordert | HTTP |
| 7 | Empfangene Daten werden angezeigt | Browser |
In realer Kommunikation können auch Cache, CDN, Load Balancer und Wiederverwendung bestehender Verbindungen beteiligt sein. Deshalb läuft nicht jedes Mal alles vollständig in derselben Reihenfolge von vorn.
Als Grundstruktur ist es jedoch hilfreich, DNS, IP, TCP/UDP, TLS und HTTP als Mechanismen mit jeweils eigener Rolle zu betrachten.
TCP/IP und Anonymität
TCP/IP ist kein Mechanismus zur Anonymisierung. Es ist die Grundlage, um Kommunikation im Internet überhaupt zustande zu bringen.
Deshalb können Informationen, die für Kommunikation notwendig sind, auf dem Kommunikationsweg oder beim Ziel sichtbar werden.
| Information | Wo sie sichtbar sein kann | Hinweis für Anonymität |
|---|---|---|
| Quell-IP-Adresse | Zielserver, Geräte auf dem Kommunikationsweg und Ähnliches | Hinweis auf das Quellnetzwerk |
| Ziel-IP-Adresse | Geräte auf dem Kommunikationsweg und Ähnliches | Material zur Vermutung, zu welchem Server die Kommunikation geht |
| Portnummer | Router, Firewalls, Kommunikationslogs und Ähnliches | Hinweis auf Kommunikationsart wie HTTPS, DNS oder VPN |
| Kommunikationsprotokoll | Router, Firewalls, Kommunikationslogs und Ähnliches | TCP oder UDP kann die Behandlung der Kommunikation verändern |
| Datenmenge und Zeitpunkt | Geräte auf dem Kommunikationsweg, Zielserver und Ähnliches | Material für Verhaltensmuster und Abgleich mit anderen Logs |
Mit HTTPS oder TLS lassen sich Kommunikationsinhalte leichter schützen. IP-Adresse, Datenmenge, Kommunikationszeitpunkt und Beziehung zum Ziel verschwinden dadurch jedoch nicht vollständig.
Beim Nachdenken über Anonymität muss man "Kommunikationsinhalt" und "äußere Informationen, die zum Zustandekommen der Kommunikation nötig sind" getrennt betrachten.
Zusammenfassung
TCP/IP ist die grundlegende Protokollfamilie, die Internetkommunikation ermöglicht.
IP richtet Kommunikation mithilfe von IP-Adressen auf das Ziel aus. TCP baut Verbindungen auf und legt durch Zustellbestätigung, erneutes Senden und Reihenfolgenkontrolle Wert auf Zuverlässigkeit. UDP hält Garantien gering und legt Wert auf Leichtgewichtigkeit und Flexibilität.
Portnummern werden verwendet, um innerhalb eines Geräts oder Servers zu unterscheiden, an welche Anwendung oder welchen Dienst Kommunikation weitergegeben werden soll.
Auch DNS, HTTP und TLS arbeiten mit Rollen auf TCP/IP. Beim Öffnen einer Webseite wird mit DNS eine IP-Adresse ermittelt, mit IP Richtung Ziel kommuniziert, mit TCP oder UDP die Zustellung behandelt, bei HTTPS mit TLS geschützt und mit HTTP Seiteninhalt ausgetauscht.
TCP/IP ist keine Anonymisierungstechnik. Damit Kommunikation zustande kommt, werden IP-Adressen, Portnummern, Kommunikationsprotokoll, Datenmenge, Zeitpunkt und ähnliche Informationen verarbeitet.
Wer diese Grundlage versteht, kann beim Lernen über DNS, HTTP/HTTPS, TLS, VPN, Tor und Kommunikationslogs leichter einordnen, "von welcher Schicht und welchem Teil" die Rede ist.
Verwandte Werkzeuge
WhatIsMyIP
Eine externe Ressource zu diesem Artikel. Öffne sie nur, wenn sie zu deiner Situation und deinem Bedrohungsmodell passt.
Warum es hier aufgeführt ist: Sie kann beim Thema des Artikels helfen, liegt aber außerhalb von Anonymity Sense und sollte vor der Nutzung geprüft werden.
