UDP

User Datagram Protocol

UDP ist ein Protokoll zum Transport von Daten in Netrzwerken. UDP stützt sich dabei meistens auf das Internet Protocol IP, der Ausdruck UDP/IP ist jedoch nicht üblich. UDP leistet vergleichbare Arbeit wie sein bekanntes Pendant TCP und ist dabei schneller, jedoch weniger sicher.
Netzwerk Zusammenarbeit - Lokal und weltweit
UDP-Kompress Protokoll, Aufgaben, Verbindung, Sicherheit, Socket
UDP Header Aufbau eines typischen UDP-Headers
UDP-Lite Variante: Noch schlanker und schneller
Verwandte Themen OSI-Modell, TCP, Port, IP, ICMP
Links Ausgewählte Links zum Thema 'UDP'

UDP-Kompress

Protokoll

UDP ist ein Protokoll - Eine standardisierte Sammlung von Regeln, nach denen Daten in Netzwerken ausgetauscht werden.

OSI-Modell

UDP-Software arbeitet in der Transport-Schicht des → OSI-Modells. UDP benötigt zur Arbeit alle darunter liegenden Schichten, z.B. → IP und → Ethernet. UDP erhält von einer darüber liegenden Schicht den Auftrag zur Übertragung der Daten.

Aufgaben

Die Aufgabe von UDP besteht darin, die Übertragung der Daten zu organisieren und zu überwachen.
Wichtige Teil-Aufgaben sind:
Zerlegung der Daten in transportable Pakete
Übergabe jedes Pakets an IP zur Übertragung
Zusammensetzung der von IP empfangenen Daten-Pakete

Verbindungslos

UDP ist ein sog. "verbindungsloses" Protokoll. Das bedeutet:
Vor Beginn der Übertragung findet kein Verbindungs-Aufbau (handshake) statt. UDP sendet die Daten im Vertrauen, dass es das Ziel gibt und dass die Daten dort auch ankommen.
UDP wird zur Kommunikation mit Partnern verwendet, deren Erreichbarkeit unsicher ist (z.B. → DHCP).
UDP ist schneller als das alternative Protokoll → TCP, allerdings weniger sicher.

Sicherheit & Zuverlässigkeit

UDP ist ein nicht-zuverlässiges Protokoll. Das bedeutet:
Bestimmte (nicht alle) Fehler bei der Übertragung können auftreten.
Daten-Pakete können verloren gehen oder in falscher Reihenfolge ankommen.

Socket = IP-Adresse + Port

Die Kombination von IP-Adresse + Port wird als Socket bezeichnet.
Jede UDP-Verbindung erfordert die Angabe je eines kompletten Sockets für Sender und Empfänger.

UDP eignet sich für Daten, deren Menge gering ist, oder bei deren Übertragung einige Fehler vorkommen dürfen, z.B. Audio-Daten.
Wenn es auf Sicherheit und genaue Reproduzierbarkeit ankommt, muss man → TCP an Stelle von UDP verwenden.

UDP auf allen Systemen

UDP ist in den Netzwerk-Komponenten aller Betriebssysteme enthalten.
UDP benötigt keine Konfiguration, stellt keine Fragen und arbeitet auf jedem PC besonders rasch im Hintergrund.

Typische Anwendungen

DHCP
Nur mit UDP ist es für einen neu gestarteten PC (ohne IP-Adresse) und einen → DHCP-Server möglich, miteinander zu kommunizieren.
Domain Name System
Das DNS führt die Verknüpfung von Internet Domain-Namen mit IP-Adressen durch. Zum Transport der wenigen einfachen Daten wird UDP verwendet.
Audio-Daten
Ein Strom von Audio Daten muss vor allem schnell transportiert werden. Kleine Fehler können toleriert werden (↓ UDP-Lite↓ ).

UDP Header

UDP erhält von der übergeordneten Schicht des → OSI Kommunikations-Modells (letzlich von einem AnwenderInnen-Programm) den Befehl zur Übertragung von Daten.

Daten-Pakete

Die Daten werden in Pakete von ca. 1450 Byte Länge zerlegt. Die Länge richtet sich nach den technischen Möglichkeiten und wird meist von Ethernet begrenzt.

Datagramm

Jedem Daten-Paket wird ein UDP-Header vorangestellt, der als wichtigste Komponente die Port-Nummern von Sender und Empfänger enthält. Das Paket aus Daten+UDP Header wird Datagramm genannt.

Zum Transport werden die Pakete an die darunter liegende → OSI-Schicht übergeben, typisch an → IP.
Typischer UDP-Header eines Daten-Pakets
WortBitBitsNameKommentar
00..1516 Source PortPort-Nummer (0..65535) des Senders
10..1516Destination Port Port-Nummer (0..65535) des Empfängers
20..1516 Length Länge (Header-Daten) in Byte
30..1516 Checksum Prüfsumme (optional)
Beachten sie die Verwendung von 16-Bit Worten, besonders beim Vergleich mit dem → TCP-Header, → IP-Header oder → Ethernet-Header.

Length

Größe des Datagramms (Header + Daten) in Byte. Das Minimum beträgt 8 Byte, das Maximum richtet sich nach den technischen Möglichkeiten: Bei Verwendung von → Ethernet beträgt das Maximum ca. 1400 Byte.

Checksum

Optionale Prüfsumme zur Erkennung von Übertragungsfehlern:
Berechnung aus TCP-Header + Daten.
Beim Vergleich mit dem → TCP-Header fällt sofort auf, dass UDP wesentlich einfacher organisiert ist. Das wird durch Wegfall der umfangreichen Sicherungs-Maßnahmen von TCP erreicht.

UDP-Pakete werden von der darunter liegenden Kommunikations-Schicht (normalerweise IP) nochmals verpackt. Dabei wird ein weiterer Header vorangestellt. Der → IP-Header enthält als wichtigste Daten die → IP-Adressen von Sender und Empfänger.

UDP-Lite

UDP-Lite ist eine Variante von UDP, die speziell für Daten-Ströme optimiert ist, z.B. für Live Audio oder Live-Video Daten.

In diesem Fall ist Geschwindigkeit das oberste Ziel. Dazu wird auch die Kontrollsumme weggelassen, weil man auf Daten-Fehler ohnehin nicht reagieren kann.

Die Daten werden auch mit kleinen Fehlern verwendet, da es dazu keine Alternative gibt: Das Auslassen von Daten würde viel mehr stören, und eine Wiederholung (wie bei → TCP) wäre sinnlos, da die Pakete viel zu spät eintreffen würden.

UDP-Lite ist mit Standard UDP kompatibel und kann daher mit der gleichen Software transportiert werden, die jedes Betriebssystem für UDP enthält.
Daten-Ströme wie Live-Audio oder Live-Video transportieren große Mengen von Daten in kurzen Zeiten. Dabei gerät man nahe an die technischen Grenzen und muss mit gelegentlichen Fehlern rechnen.

Die Daten werden in einer höheren Schicht des OSI-Modells verarbeitet. Insbesondere beim Empfang wird mit Fehlern gerechnet, und man verwendet besondere Algorithmen, damit die Fehler nicht stören oder meist nicht einmal bemerkt werden.

Die Daten selbst sind meist auf die Angabe relativer Änderungen reduziert, wobei kleine Fehler wenig stören. Sie müssen in regelmäßigen Abständen absolute Werte zu ihrer eigenen Synchronisation enthalten.


XHTML CSS