"User Datagramm Protocol" (UDP) Von : ToXiCFiRe Leader of Computer:Teenage:Riot About : Kleine Einfuehrung in das UDP-Protokoll User Datagramm Protcol ---------------------- Das User Datagramm Protoccol (UDP) verfuegt nur ueber minimale Protokoll Mechanismen zur Datenuebertragung zwischen Kommunikationspartnern. Das es, anders als das TCP, kein End-zu-End-Kontrolle garantiert, sind weder Ablieferung eines Datenpakets beim Empfaenger, das Erkennen von Duplikaten oder die reihenfolgerichtige uebermittlung der Datenpakete gewaehrleistet. UDP ist im RFC 768 definiert. Leistungsspektrum ----------------- Um den Unterschied zwischen UDP und anderen Protokollen (vor allem dem TCP) deutlich zu machen, ist es sinnvoll, vorweg aufzuzeigen, was UDP nicht leistet. #- Transportdienst ohne End-zu-End-Kontrolle Das UDP gewaehrleistet keine gesicherte Datenueberragung. Die uebermittelten Daten werden vom Empfaenger nicht quittiert. Verlorengegangene Datenpakete werden nicht nochmals gesendet. #- Verbindungsmanagement Das UDP beut keine aktive Verbindung zwischen den Kommunikations- partnern auf. Es sendet die einzelnen Datenpakete als voneinander voellig unabhaengig Ereignisse. #- Flusskontrolle Eine fortlaufende Numerierung der Datenpakete erfolgt ebensowenig wie eine Besaetigung der empfangenen Datenpakete. Auch ein Fenster- mechanismus wird nicht unterstuetzt. #- Multiplexen von Verbindungen Um mehreren Prozessen den gleichzeitigen Zugriff auf das UDP zu ermöglichen, werden mehrere Ports zu Verfuegung gestellt. Ein Verbindungspunkt wird aus einer IP-Adresse und der UDP Port- adresse gebildet. #- Zeitueberwachung der Verbindung Die Datenuebertragung wird zeitlich nicht ueberprueft. #- Fehlerbehandlung Das UDP ueberprueft die empfangenen Datenpakete weder auf Fehler, noch meldet es Fehler. UDP-Anwendung ------------- UDP verwendet, ebenso wie TCP, Port-Nummern, um die Dienste eindeutig zuzuordnen. Da der Protokollidentifikator im IP-Header vor der jeweiligen Port-Nummer ausgewertet wird, koennen die 16-Bit-Wertfelder bei TCP und UDP unabhaengig voneinander genutzt werden. Zu den wichtigsten Anwendungen, die das UDP benutzen, zaehlen : #- Trivial File Transfer Protocol (TFTP) #- Network File System (NFS) #- Boot Protocol (BootP) #- Simple Network Management Protocol (SNMP) #- Domain Name Service Protokoll (DNS) (1.Byte) (2.Byte) (3.Byte) (4.Byte) ------------------------------------------------------------------------- | 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | |-----------------------------------------------------------------------| | Source Port | Destination Port | ------------------------------------------------------------------------- | Length | Checksum | ------------------------------------------------------------------------- #- Source Port (Quelladresse) Laenge : 16 Bit Optionale Adresse des UDP-Sende-Ports. Bei Antworten auf UDP-Daten- pakete kann durch die Source Port-Adresse der jeweilige Prozess unmittelbar wieder angesprochen werden. Wird vom Sender kein UDP- Sende-Port definiert, so wird dieses Feld mit dem Wert 0 uebertragen. #- Destination Port (Zieladresse) Laenge : 16 Bit Adresse des Empfaenger-Ports. #- Length (Laenge) Laenge : 16 Bit Definiert die Gesamtlaenge des UDP-Datenpakets (inklusive des UDP Header und der UDP-Daten). #- Checksum (Pruefsumme) Laenge : 16 Bit Die UDP-Pruefsumme ist ein optionaler Wert und muss nicht berechnet werden. Der UDP-Pruefsummenwert 0 weisst darauf hin, dass keine Berechnung der Pruefsumme erfolgt ist. Die Pruefsumme wird aus dem UDP Header und einem 96-Bit-Pseudo Header gebildet. Der Pseudo-Header setzt sich aus mehreren Teilen zusammen : + IP-Quelladresse (32Bit) + IP-Zieladresse (32Bit) + Leerfeld (8Bit) + Protokollidentifikator (8Bit) + Informationen ueber die Laenge des UDP-Datenpakets (16Bit) Benutzte Quelle : ---------------------- TCP/IP light von Mathias Hein und Marie-Christine Billo ----------------------