Das User Datagram Protocol ( UDP ) ist ein minimales verbindungsloses Netzwerkprotokoll . Es gehört zur Transportschicht der TCP/IP -Protokollfamilie und ist im Gegensatz zu TCP nicht auf Zuverlässigkeit ausgelegt.
Der UDP-Header besteht aus 4 Headerfeldern denen zwei optional sind. Die Quell- und Port Felder sind 16 Bit groß und identifizieren den sendenen und Prozess. Da UDP verbindungslos ist ist der optional. Er wird dann 0 gesetzt. Den Portfeldern folgt das verbindliche das die Größe der Daten des UDP- Datagramms in Oktetten enthält. Der kleinstmögliche Wert ist 8 Das letzte Headerfeld ist eine 16 Bit Prüfsumme über den Header und den Pseudo-Header. Pseudo-Header welcher nicht übertragen wird hat eine von 12 Byte und setzt sich zusammen IP-Source-/Destination-Adresse Leerfeld Protokoll-ID (UDP = 17) und des UDP- Datagramms . Die Prüfsumme ist auch optional wird in der Praxis fast immer benutzt (falls wird sie ebenfalls 0 gesetzt). Dem Header folgen anschließend die Daten.
Verbindungslos heißt es wird nicht erst eine zum Gegenüber aufgebaut ( Handshaking wie bei TCP ) sondern man schickt "auf gut Glück" Anfrage. Es ist also nicht garantiert dass Paket überhaupt ankommt.
Aufgrund dieser Tatsache können zwischen zwei Hosts relativ schnell Datenpakete ausgetauscht werden. Es deshalb dort eingesetzt wo die schnelle Übermittlung ist als die Zuverlässigkeit also die Gewissheit die Daten korrekt und vollständig angekommen sind. der Praxis sind das Übertragungen von Multimedia oder bei Online-Spielen . Auch ein sehr wichtiger Dienst im das Domain Name System setzt auf UDP auf.
Zeitlicher Versatz der Pakete (engl. jitter ) kann bei UDP nicht erkannt werden.