Transportprotokolle: Unterschied zwischen den Versionen
PhilKa (Diskussion | Beiträge) |
PhilKa (Diskussion | Beiträge) |
||
| Zeile 38: | Zeile 38: | ||
=== User Datagram Protocol (UDP) === | === User Datagram Protocol (UDP) === | ||
[[UDP]] ist verbindungslos und bietet minimale Transportdienste ohne Garantie für Reihenfolge oder Zustellung. Es ist ideal für Anwendungen, die geringe Latenz benötigen und Verluste tolerieren können. | |||
Merkmale: | Merkmale: | ||
Aktuelle Version vom 23. September 2025, 14:05 Uhr
Einführung
Transportprotokolle sind Kommunikationsprotokolle der Transportschicht (Schicht 4 im OSI-Modell bzw. TCP/IP-Modell), die für die Ende-zu-Ende-Übertragung von Daten zwischen Anwendungen auf verschiedenen Hosts zuständig sind. Sie bilden eine Vermittlungsschicht zwischen den Netzwerkschichten (IP) und den Anwendungsschichten (z. B. HTTP, FTP).
Ziele von Transportprotokollen:
- Sicherstellen der geordneten und vollständigen Datenübertragung
- Steuerung von Fluss und Überlastung
- Multiplexing/De-Multiplexing verschiedener Anwendungen über Ports
- Optionale Verschlüsselung und Integritätsprüfung
Aufgaben
Transportprotokolle erfüllen u. a. folgende Kernaufgaben:
- Segmentierung von Datenströmen in Pakete und deren Wiederzusammensetzen.
- Adressierung mittels Portnummern (z. B. Port 80 für HTTP).
- Fehlererkennung und -behebung (z. B. durch Prüfsummen, Wiederholungen).
- Flusskontrolle zur Anpassung an die Empfängerleistung.
- Überlastkontrolle (Congestion Control) zur Netzstabilisierung.
- Sitzungsverwaltung bei verbindungsorientierten Protokollen.
Wichtige Transportprotokolle
Transmission Control Protocol (TCP)
TCP ist das am weitesten verbreitete Transportprotokoll im Internet. Es ist verbindungsorientiert und stellt eine zuverlässige, geordnete und fehlerfreie Übertragung sicher.
Merkmale:
- Verbindungsaufbau mit Three-Way-Handshake
- Sequenznummern zur Sicherung der Reihenfolge
- Bestätigungen (ACKs) für empfangene Segmente
- Flusskontrolle (Windowing)
- Überlastkontrolle (z. B. Slow Start, Congestion Avoidance)
Typische Anwendungsprotokolle: HTTP, SMTP, FTP, SSH.
User Datagram Protocol (UDP)
UDP ist verbindungslos und bietet minimale Transportdienste ohne Garantie für Reihenfolge oder Zustellung. Es ist ideal für Anwendungen, die geringe Latenz benötigen und Verluste tolerieren können.
Merkmale:
- Keine Verbindungsaufbauphase
- Keine Garantien für Reihenfolge oder Vollständigkeit
- Sehr geringer Overhead
- Ports zur Multiplexing-Funktionalität
Typische Anwendungsprotokolle: DNS, DHCP, VoIP, Streaming.
Stream Control Transmission Protocol (SCTP)
SCTP ist ein moderneres Transportprotokoll, das Eigenschaften von TCP und UDP kombiniert.
Merkmale:
- Nachrichtenorientiert (wie UDP) aber verbindungsorientiert (wie TCP)
- Mehrere Datenströme (Multi-Streaming) innerhalb einer Verbindung
- Multi-Homing-Unterstützung (mehrere IP-Adressen pro Endpunkt)
- Integrierte Sicherheits- und Zuverlässigkeitsmechanismen
Typische Anwendungsgebiete: Signalisierungsprotokolle in Telekommunikationsnetzen, industrielle Anwendungen.
QUIC
QUIC (Quick UDP Internet Connections) wurde von Google entwickelt und ist heute Standard bei HTTP/3. Es läuft über UDP, implementiert aber Transportfunktionen wie TCP (und mehr) in der Anwendungsschicht.
Merkmale:
- Verbindungsorientiert, aber über UDP getunnelt
- Integrierte Verschlüsselung (TLS 1.3)
- 0-RTT-Verbindungsaufbau für geringe Latenz
- Multiplexing ohne Head-of-Line-Blocking
Typische Anwendungsgebiete: Webanwendungen (HTTP/3).
Multiplexing und Ports
Transportprotokolle verwenden Portnummern, um mehrere parallele Verbindungen zwischen denselben Hosts zu ermöglichen. Bekannte Ports sind in IANA-Portliste standardisiert:
- Port 80 – HTTP
- Port 443 – HTTPS
- Port 53 – DNS
- Port 25 – SMTP
Fehlerkontrolle und Flusssteuerung
- Prüfsummen zur Erkennung von Übertragungsfehlern.
- Wiederholungsmechanismen (Retransmission) bei fehlenden Bestätigungen.
- Sliding-Window-Verfahren zur Flusssteuerung zwischen Sender und Empfänger.
- Congestion Control zur Steuerung der Übertragungsrate bei Netzüberlastung.
Sicherheit bei Transportprotokollen
Transportprotokolle selbst enthalten oft nur einfache Prüfsummen. Für mehr Sicherheit werden Erweiterungen oder höhere Schichten genutzt:
- TLS/DTLS – Verschlüsselung über TCP (TLS) oder UDP (DTLS).
- QUIC – bereits integrierte Verschlüsselung.
- Firewalls – Kontrolle des Zugriffs auf Ports und Dienste.
- Authentifizierung und Integritätsprüfungen über Protokollerweiterungen.
Vergleich der Transportprotokolle
| Merkmal | TCP | UDP | SCTP | QUIC |
|---|---|---|---|---|
| Verbindungsorientiert | Ja | Nein | Ja | Ja (über UDP) |
| Zuverlässig | Ja | Nein | Ja | Ja |
| Reihenfolgegarantie | Ja | Nein | Konfigurierbar | Ja |
| Flusskontrolle | Ja | Nein | Ja | Ja |
| Verschlüsselung integriert | Nein (TLS optional) | Nein (DTLS optional) | Nein (TLS möglich) | Ja (TLS 1.3) |
Relevanz für Anwendungen
Die Wahl des Transportprotokolls beeinflusst:
- Latenz und Bandbreite
- Zuverlässigkeit der Datenübertragung
- Skalierbarkeit von Diensten
- Sicherheitsanforderungen
Literatur und Standards
- RFC 793 – Transmission Control Protocol
- RFC 768 – User Datagram Protocol
- RFC 4960 – Stream Control Transmission Protocol
- RFC 9000 – QUIC: A UDP-Based Multiplexed and Secure Transport
- Andrew S. Tanenbaum: Computer Networks