UDP im TCP/IP-Protokollstapel
Anwendung | DNS | DHCP | NTP | ... |
Transport | UDP | |||
Netzwerk | IP | |||
Netzzugang | Ethernet | Token Ring |
FDDI | ... |
Das User Datagram Protocol (UDP) ist ein nicht zuverlässiges, verbindungsloses Netzwerkprotokoll. Es gehört zur Transportschicht der TCP/IP-Protokollfamilie.
Header-Format
0 | 8 | 16 | 24 | 32 |
Quell-Port | Ziel-Port | |||
Länge | Prüfsumme | |||
Daten |
Der UDP-Header besteht aus 4 Headerfeldern, von denen zwei optional sind. Die Quell- und Ziel-Port Felder sind 16 Bit groß und identifizieren den sendenen und empfangenden Prozess. Da UDP verbindungslos ist, ist der Quell-Port optional. Er wird dann 0 gesetzt. Den Portfeldern folgt das verbindliche Längenfeld, das die Größe der Daten des UDP-Datagramms in Oktetten enthält. Der kleinstmögliche Wert ist 8 Oktette. Das letzte Headerfeld ist eine 16 Bit große Prüfsumme über den Header und die Daten. Die Prüfsumme ist auch optional, wird aber in der Praxis fast immer benutzt (falls nicht, wird sie ebenfalls 0 gesetzt).
Dem Header folgen anschließend die Daten.
Eigenschaften
Verbindungslos heißt, es wird nicht erst eine Verbindung zum Gegenüber aufgebaut (Handshaking wie bei TCP), sondern man schickt "auf gut Glück" eine Anfrage. Es ist also nicht garantiert, dass das Paket überhaupt ankommt.
Aufgrund dieser Tatsache können zwischen zwei Hosts relativ schnell Datenpakete ausgetauscht werden. Es wird deshalb dort eingesetzt, wo die schnelle Übermittlung wichtiger ist als die Zuverlässigkeit, also die Gewissheit, dass die Daten korrekt und vollständig angekommen sind. In der Praxis sind das Übertragungen von Multimedia oder bei Online-Spielen. Auch ein sehr wichtiger Dienst im Internet, das Domain Name System, setzt auf UDP auf.
Zeitlicher Versatz der Pakete (engl. jitter) kann bei UDP nicht erkannt werden.
Verwendung
UDP wird unter anderem von folgenden Protokollen verwendet:
UDP selber verwendet meistens das IP-Protokoll.
Siehe auch: OSI-Schichtenmodell