UDP

Ein verbindungsloses Transportprotokoll auf Schicht 4 des OSI-Modells. UDP verzichtet bewusst auf Zuverlässigkeitsmechanismen und ermöglicht dadurch schnellen, latenzarmen Versand von Datenpaketen.

Auf dieser Seite

UDP (User Datagram Protocol) ist ein verbindungsloses Transportprotokoll, das auf Schicht 4 des OSI-Modells arbeitet. Es wurde 1980 in RFC 768 definiert und ermöglicht den schnellen Versand von Datenpaketen ohne vorherigen Verbindungsaufbau.

Im Gegensatz zu TCP verzichtet UDP bewusst auf Zuverlässigkeitsmechanismen wie Bestätigung, Reihenfolgegarantie oder Neuübertragung. Dadurch entsteht weniger Overhead, was UDP zur idealen Wahl für zeitkritische Anwendungen macht, bei denen Geschwindigkeit wichtiger ist als die garantierte Zustellung jedes einzelnen Pakets.

Funktionsweise von UDP

UDP arbeitet nach dem verbindungslosen Prinzip. Das bedeutet, dass vor der Datenübertragung keine Verbindung zwischen Sender und Empfänger hergestellt wird. Die Daten werden in Form von unabhängigen Datagrammen versendet, die jeweils separat behandelt werden.

Jedes Datagramm kann auf einem anderen Weg durch das Netzwerk geleitet werden und in beliebiger Reihenfolge beim Empfänger ankommen. UDP kümmert sich nicht darum, ob Pakete verloren gehen, dupliziert werden oder in falscher Reihenfolge eintreffen. Die Anwendung selbst ist dafür verantwortlich, mit diesen Situationen umzugehen.

Der Unterschied zu TCP

Während TCP einen Three-Way Handshake durchführt und jedes Paket bestätigt, sendet UDP die Daten einfach ab und hofft auf das Beste. Du kannst dir UDP wie eine Postkarte vorstellen: Du schreibst sie, wirfst sie ein, und ob sie ankommt, erfährst du nie mit Sicherheit. TCP hingegen ist wie ein Einschreiben mit Rückschein.

Aufbau des UDP-Headers

Der UDP-Header ist bewusst minimal gehalten und besteht aus nur 8 Bytes (64 Bit). Diese kompakte Struktur reduziert den Overhead erheblich im Vergleich zum 20–60 Byte großen TCP-Header.

FeldGrößeBeschreibung
Source Port16 BitPort des Absenders (optional)
Destination Port16 BitPort des Empfängers
Length16 BitGesamtlänge des Datagramms (Header + Daten)
Checksum16 BitPrüfsumme zur Fehlererkennung (optional bei IPv4)

Der Source Port ist optional und kann auf 0 gesetzt werden, wenn keine Antwort erwartet wird. Der Destination Port ist hingegen zwingend erforderlich, da er bestimmt, an welche Anwendung auf dem Zielrechner die Daten weitergeleitet werden. Viele UDP-basierte Dienste verwenden Well-known Ports wie Port 53 für DNS oder Port 67/68 für DHCP.

Die Prüfsumme

Die Prüfsumme (Checksum) ermöglicht eine grundlegende Fehlererkennung. Bei der Berechnung wird ein sogenannter Pseudo-Header einbezogen, der Teile des IP-Headers enthält (Quell- und Ziel-IP-Adresse, Protokollnummer 17 für UDP, Länge). Bei IPv4 ist die Prüfsumme optional, bei IPv6 hingegen verpflichtend.

Eigenschaften von UDP

Die charakteristischen Eigenschaften von UDP ergeben sich aus dem bewussten Verzicht auf Zuverlässigkeitsmechanismen. Das macht UDP für bestimmte Anwendungsfälle besonders geeignet.

  • Verbindungslos: Kein Verbindungsaufbau erforderlich, sofortiger Versand möglich
  • Unzuverlässig: Keine Garantie für Zustellung, Reihenfolge oder Duplikatfreiheit
  • Geringe Latenz: Kein Handshake bedeutet weniger Verzögerung
  • Minimaler Overhead: Nur 8 Bytes Header statt 20–60 Bytes bei TCP
  • Keine Flusskontrolle: Sender sendet so schnell er kann
  • Keine Staukontrolle: Passt Senderate nicht an Netzwerkauslastung an
  • Broadcast-fähig: Kann Pakete an alle Geräte im Netzwerk senden

Vergleich: UDP vs. TCP

Die Wahl zwischen UDP und TCP hängt von den Anforderungen der jeweiligen Anwendung ab. Beide Protokolle haben ihre Berechtigung und werden auf der Transportschicht des TCP/IP-Modells eingesetzt.

EigenschaftUDPTCP
VerbindungVerbindungslosVerbindungsorientiert
ZuverlässigkeitKeine GarantieGarantierte Zustellung
ReihenfolgeNicht garantiertGarantiert
GeschwindigkeitSchnellerLangsamer (Overhead)
Header-Größe8 Bytes20–60 Bytes
FlusskontrolleNeinJa
StaukontrolleNeinJa
AnwendungenStreaming, VoIP, Gaming, DNSWeb, E-Mail, Dateitransfer

Für Anwendungen, bei denen jedes Byte ankommen muss (Webseiten, E-Mails, Dateiübertragungen), ist TCP die richtige Wahl. Bei zeitkritischen Anwendungen wie VoIP, Video-Streaming oder Online-Gaming ist der Verlust einzelner Pakete weniger problematisch als Verzögerungen durch Neuübertragungen. In diesen Fällen wird UDP bevorzugt.

Typische Anwendungen von UDP

UDP wird überall dort eingesetzt, wo geringe Latenz wichtiger ist als 100%ige Zuverlässigkeit. Die folgenden Anwendungsbereiche nutzen UDP als Transportprotokoll:

DNS-Anfragen

Das Domain Name System verwendet standardmäßig UDP auf Port 53. DNS-Anfragen sind typischerweise klein und passen in ein einzelnes Datagramm. Da Namensauflösung schnell erfolgen muss, wäre der Overhead eines TCP-Verbindungsaufbaus unverhältnismäßig. Nur bei großen Antworten (über 512 Bytes) oder Zonentransfers wird auf TCP umgeschaltet.

DHCP

DHCP (Dynamic Host Configuration Protocol) nutzt UDP auf den Ports 67 (Server) und 68 (Client). Bei der automatischen IP-Adressvergabe kennt der Client zu Beginn weder seine eigene noch die IP-Adresse des Servers. Eine verbindungsorientierte Kommunikation wäre daher gar nicht möglich. UDP mit Broadcast-Unterstützung ist hier die einzig sinnvolle Lösung.

VoIP und Videokonferenzen

Bei Voice over IP und Videokonferenzen ist Echtzeitkommunikation entscheidend. Ein verlorenes Sprachpaket wird einfach übersprungen, da eine Neuübertragung zu spät käme. Moderne VoIP-Anwendungen nutzen UDP in Kombination mit RTP (Real-time Transport Protocol), das auf UDP aufbaut und zusätzliche Funktionen wie Zeitstempel und Sequenznummern bietet.

Online-Gaming

In Online-Spielen müssen Spielerpositionen, Aktionen und Ereignisse in Echtzeit übertragen werden. Ein Paket mit einer veralteten Spielerposition ist wertlos, wenn bereits eine neuere Position vorliegt. Daher setzen die meisten Multiplayer-Spiele auf UDP, oft mit einer eigenen Zuverlässigkeitsschicht für kritische Daten wie Punktestände oder Chat-Nachrichten.

Streaming

Video- und Audio-Streaming-Dienste nutzen häufig UDP-basierte Protokolle. Bei Live-Streams ist ein verlorenes Frame weniger störend als ständige Pufferung. Allerdings verwenden moderne Streaming-Plattformen wie Netflix oder YouTube mittlerweile häufig HTTPS (also TCP), da die Qualität von TCP-Verbindungen im Internet stark verbessert wurde und HTTP-Streaming einfacher durch Firewalls kommt.

UDP und Sicherheit

UDP bietet von sich aus keine Sicherheitsmechanismen. Die Daten werden im Klartext übertragen und sind nicht vor Manipulation geschützt. Die optionale Prüfsumme erkennt nur zufällige Übertragungsfehler, keine absichtlichen Änderungen.

Für sichere Kommunikation über UDP wird DTLS (Datagram Transport Layer Security) eingesetzt, das Pendant zu TLS für datagrambasierte Protokolle. DTLS bietet Verschlüsselung, Authentifizierung und Integritätsschutz, ohne die Vorteile von UDP aufzugeben.

UDP als Angriffsvektor

Da UDP verbindungslos ist, kann die Absenderadresse leicht gefälscht werden (IP-Spoofing). Dies wird bei verschiedenen Angriffen ausgenutzt:

  • UDP Flood: Der Angreifer sendet massenhaft UDP-Pakete an zufällige Ports des Ziels
  • DNS Amplification: Kleine Anfragen mit gefälschter Absenderadresse lösen große Antworten aus
  • NTP Amplification: Ähnliches Prinzip mit dem Network Time Protocol

Um solche Angriffe zu erschweren, setzen Netzwerkadministratoren auf Rate Limiting, Ingress Filtering und andere Schutzmaßnahmen auf Firewall- und Router-Ebene.

QUIC: Die Evolution von UDP

Mit QUIC (Quick UDP Internet Connections) hat Google ein modernes Transportprotokoll entwickelt, das auf UDP aufbaut. QUIC kombiniert die Geschwindigkeitsvorteile von UDP mit Zuverlässigkeitsmechanismen und integrierter Verschlüsselung.

HTTP/3, die neueste Version des Web-Protokolls, nutzt QUIC statt TCP. Der Vorteil: Verbindungen werden schneller aufgebaut, und ein verlorenes Paket blockiert nicht mehr alle Datenströme (wie es bei TCP der Fall ist). QUIC zeigt, dass UDP als Basis für leistungsfähige, zuverlässige Protokolle dienen kann.

UDP in der Praxis

Das Verständnis von UDP gehört zum Grundlagenwissen für Fachinformatiker für Systemintegration. Bei der Konfiguration von Firewalls, der Fehlersuche in Netzwerken oder der Analyse von Datenverkehr ist es wichtig zu wissen, welche Dienste UDP nutzen und wie sich UDP-Traffic von TCP unterscheidet.

Auch Fachinformatiker für Anwendungsentwicklung begegnen UDP, wenn sie Netzwerkanwendungen programmieren. Die Wahl zwischen UDP und TCP ist eine grundlegende Designentscheidung, die von den Anforderungen der Anwendung abhängt.

Analyse mit Wireshark

Mit Tools wie Wireshark kannst du UDP-Traffic im Netzwerk analysieren. Im Gegensatz zu TCP siehst du bei UDP keine Handshake-Pakete oder Bestätigung. Jedes Datagramm steht für sich allein:

# Beispiel: DNS-Anfrage (UDP)
Frame: 74 bytes
Ethernet II: Src: aa:bb:cc:dd:ee:ff, Dst: 11:22:33:44:55:66
IPv4: Src: 192.168.1.100, Dst: 8.8.8.8, Protocol: UDP (17)
UDP: Src Port: 54321, Dst Port: 53, Length: 40, Checksum: 0x1a2b
DNS: Standard query for example.com

Prüfungsbezug

Passt zu deiner Prüfungsvorbereitung

Wenn dir dieser Begriff in Aufgaben, Projektdokumentation oder Fachgespräch begegnet, ordne ihn direkt in den Prüfungsstoff ein.