TCP/UDP und Varianten Seminar ... - Informatik 4
TCP/UDP und Varianten Seminar ... - Informatik 4
TCP/UDP und Varianten Seminar ... - Informatik 4
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
3.1 Der <strong>UDP</strong>-Header<br />
Zunächst werfen wir einen Blick auf den Header eines <strong>UDP</strong>-Datagramms. Ein Datagramm besteht<br />
aus einem Kopf mit vier Feldern dem ein Datenblock variabler Grösse folgt. Die Felder des Kopfs<br />
sind wie folgt besetzt:<br />
Abb. 3.1 Der <strong>UDP</strong>-Header<br />
Source Port (Bit 0 bis 15, insgesamt 16 Bit)<br />
In dieses Feld schreibt der Absender seine Portadresse, an welche der Zielhost dem sendenden<br />
Prozess Daten zurückschicken kann. Es ist nicht zwingend notwendig, dass der Host auf diesem<br />
Port bereit ist, Daten zu empfangen.<br />
Destination Port (Bit 16 bis 31, insgesamt 16 Bit)<br />
Dieses Feld beinhaltet den Port des Empfängers für den die Daten bestimmt sind. Anhand dieser<br />
Nummer wird das Datagramm einem Benutzerprozess zugeordnet.<br />
Länge des <strong>UDP</strong>-Datagramms (Bit 32 bis 47, insgesamt 16 Bit)<br />
Hier ist die Länge des Datagramms in Byte angegeben. Die Länge beinhaltet das gesamte Datagramm,<br />
also Kopf <strong>und</strong> Daten zusammen. Die Angabe der Länge ist red<strong>und</strong>ant, da sie sich<br />
sehr leicht aus der angegebenen Länge im IP-Header errechnen lässt. Da bei IP für die Länge<br />
ebenfalls ein 16-Bit Feld reserviert ist, sieht man, dass die Datenmenge in einem Datagramm<br />
beschränkt ist auf 65535 Byte - 20 Byte (IP-Header) - 8 Byte (<strong>UDP</strong>-Header) = 65507 Byte.<br />
Checksum des <strong>UDP</strong>-Datagramms<br />
Die Angabe ist optional, es wird aber empfohlen sie immer zu verwenden. Wird sie nicht verwendet,<br />
so sind die 16 Bit mit Nullen zu füllen. Wird sie benutzt, berechnet sie sich wie folgt:<br />
Dem eigentlichen Header wird ein Pseudo-Header vorangestellt, der die IP-Adresse des Absenders<br />
<strong>und</strong> des Empfängers (jeweils 32 Bit), 8 Bit Nullen, die Angabe des Protokolls (8 Bit)<br />
<strong>und</strong> die Länge des Datagramms (16 Bit). Header, Pseudo-Header <strong>und</strong> Datenteil werden dann<br />
als 16-Bit Wörter modulo 2 aufaddiert. Hat der Datenteil ungerade Länge, so wird er mit 8 Bit<br />
Nullen aufgefüllt. Das Ergebnis wird im Einerkomplement in das Feld geschrieben, daher ist<br />
5