- | UDP (User Datagram Protocol) | - | Familie: | Internetprotokollfamilie | - | Einsatzgebiet: | Verbindungslose Übertragung von Daten über das Internet | - |
|---|
| Anwendung | DNS | DHCP | NTP | ... | - | Transport | UDP | TCP | - | Internet | IP | - | Netzzugang | Ethernet | Token Ring | FDDI | ... |
Das User Datagram Protocol (Abk. UDP) ist ein minimales, verbindungsloses Netzprotokoll, das zur Transportschicht der Internetprotokollfamilie gehört. Aufgabe von UDP ist es, Daten, die über das Internet übertragen werden, der richtigen Anwendung zukommen zu lassen.
Die Entwicklung von UDP begann 1977, als man für die Übertragung von Sprache ein einfacheres Protokoll benötigte als das bisherige verbindungsorientierte TCP. Es wurde ein Protokoll benötigt, das nur für die Adressierung zuständig war, ohne die Datenübertragung zu sichern, da dies zu Verzögerungen bei der Sprachübertragung führen würde.
Zusätzlich bietet UDP die Möglichkeit einer Integritätsüberprüfung an, indem eine Prüfsumme mitgesendet wird. Dadurch kann eine fehlerhafte Übertragung erkannt werden.
Da vor Übertragungsbeginn nicht erst eine Verbindung aufgebaut werden muss, können die Hosts schneller mit dem Datenaustausch beginnen. Dies fällt vor allem bei Anwendungen ins Gewicht, bei denen nur kleine Datenmengen ausgetauscht werden müssen. Einfache Frage-Antwort-Protokolle wie das Domain Name System verwenden UDP um die Netzwerkbelastung gering zu halten und damit den Datendurchsatz zu erhöhen. Ein Drei-Wege-Handshake wie bei TCP für den Aufbau der Verbindung würde unnötigen Overhead erzeugen.
Daneben bietet die ungesicherte Übertragung auch den Vorteil von geringen Übertragungsverzögerungsschwankungen: geht bei einer TCP-Verbindung ein Paket verloren, so wird es automatisch erneut angefordert. Dies braucht Zeit, die Übertragungsdauer kann daher schwanken, was für Multimediaanwendungen schlecht ist. Bei VoIP z.B. würde es zu plötzlichen Aussetzern kommen bzw. die Wiedergabepuffer müssten größer angelegt werden. Verlorengegangene Pakete bringen dagegen nicht die gesamte Übertragung ins Stocken sondern vermindern lediglich die Qualität.
UDP übernimmt die Eigenschaften der darunterliegenden Netzwerkschicht. Im Falle des Internet Protocols IP können Datenpakete maximal 65535 Bytes lang sein, wovon der IP-Header und UDP-Header insgesamt mindestens 28 Bytes belegen. UDP-Datagramme haben daher maximal 65507 Nutzdatenbytes. Solche Pakete werden jedoch von IP fragmentiert übertragen, so dass UDP nur bei Datenpaketgrößen bis zu einigen Kilobytes sinnvoll ist.
IP löscht Pakete etwa bei Übertragungsfehlern oder bei Überlast. Datagramme können daher fehlen. Das UDP-Protokoll bietet hierfür keine Erkennungs- oder Korrekturmechanismen wie etwa TCP. Im Falle von mehreren möglichen Routen zum Ziel kann IP bei Bedarf neue Wege wählen. Hierdurch ist es in seltenen Fällen sogar möglich, dass später gesendete Daten früher gesendete überholen.
UDP schreibt vor, dass neben den zu übertragenden Daten zusätzliche Informationen mitgesendet werden müssen, die zur Bewältigung der Aufgaben von UDP benötigt werden. Diese Informationen werden vor die Nutzdaten gesetzt als sogenannter Header:
| 0 | 8 | 16 | 24 | 31 | - | Quell-Port | Ziel-Port | - | Länge | Prüfsumme | - | Daten |
Der UDP-Header besteht aus vier Datenfeldern, die alle jeweils 16 Bit groß sind:
Für die Übertragung des UDP-Paketes ist das Internet Protokoll (IP) vorgesehen. Dieses Protokoll setzt vor das UDP-Paket seinerseits einen weiteren Header, in dem sich die von IP benötigten Daten befinden:
Für die Erzeugung der UDP-Prüfsumme werden Teile dieses IP-Headers in einen so genannten Pseudo-Header übernommen. Er dient nur zur Erzeugung der Prüfsumme und wird nicht übertragen. Der Pseudo-Header hat eine Größe von 12 Byte und setzt sich zusammen aus IP-Quelladresse (32 Bit), IP-Ziel-Adresse (ebenfalls 32 Bit), 8 Bit Leerfeld, 8 Bit Protokoll-ID (UDP hat die ID 17) und der Länge des UDP-Datagramms (16 Bit):
| 0 | 8 | 16 | 24 | 31 | - | Quell-IP-Adresse | - | Ziel-IP-Adresse | - | 0 | Protokoll | Länge | - | UDP-Header |
Für die Erzeugung der Prüfsumme wird der Segmentinhalt und der Pseudo-Header in 16 Bit große Teile unterteilt. Die Teile addiert der Sender und bildet das Einerkomplement. Das Ergebnis ist die Prüfsumme. Der Empfänger addiert gleichermaßen Segmentinhalt, Pseudo-Header und zusätzlich die empfangene Prüfsumme. Bei einer korrekten Übertragung muss als Ergebnis FFFFHexadezimal heraus kommen.
User Datagram Protocol | UDP | UDP | UDP | User Datagram Protocol | UDP | User Datagram Protocol | UDP | User Datagram Protocol | Protocolo UDP | UDP | User Datagram Protocol | User Datagram Protocol | User Datagram Protocol | UDP (informatyka) | UDP (protocolo) | User Datagram Protocol | UDP | UDP | UDP | UDP | 用户数据报协议
This article is licensed under the GNU Free Documentation License.
It uses material from the
"User Datagram Protocol".
Home Page • arts • business • computers • games • health • hospitals • home • kids & teens • news • physicians • recreation• reference • regional • science • shopping • society • sports • world