Forum: PC Hard- und Software Länge vollständiger Frame/Header IP/UDP


von Dirk H. (dirk_h)


Lesenswert?

Hallo,

ich beschäftige mich gerade mit Ehternet und wollte nur mal fragen ob 
ich die folgenden Dinge richtig verstanden habe..

Frage 1:
Wenn man Daten über UDP verschicken will ist die minimale Länge 72 
bytes/oktette (ethernet ist maßgebend...)?

Frage 2:
Wenn ich 42 Byte per UDP verschicken will ist mein Gesamtframe 100 Byte 
lang?
Rechnung:
Ethernet 30 Bytes (präamble, mac-adr, vlan, typ, crc)
TCP 20 Bytes
UDP 8 Bytes
---------
58 Bytes overhead (+42 Daten Bytes (payload) = 100Bytes)


Vielen Dank und Grüße
Dirk

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Angehängte Dateien:

Lesenswert?

Dirk H. schrieb:

> Wenn man Daten über UDP verschicken will ist die minimale Länge 72
> bytes/oktette (ethernet ist maßgebend...)?

Scheint weniger zu sein.  Hier der wireshark-Schnipsel eines UDP
echo (Port 7).

von Mensch (Gast)


Lesenswert?

wikipedia ?

von Dirk H. (dirk_h)


Lesenswert?

Hmmm,

schon mal danke Jörg.

immerhin scheinen meine Annahmen wg. UDP und IP zu stimmen.. Der TCP 
Header im Bild ist genau 20Byte lang, UDP 10 Byte, wobei 2 Byte payload 
sind -> also 8Byte Header.

Aber das der Frame nur 44Byte lang sein soll kann ich nicht so richtig 
glauben. Sowohl in der dt. als auch in der engl. Wikipedia ist eine 
minimale Ehternetframelänge von 64 Byte angegeben (falls noch präamel 
sfd und vlan tag dazu kommen auch mehr)

von Klaus W. (mfgkw)


Lesenswert?

Ich verstehe nicht, was du eigentlich willst.
Wo kommt TCP her, wenn du ein UDP-Paket verschicken willst?

Entweder TCP+IP+Ethernet oder UDP+IP+Ethernet, aber Längen von TCP und 
UDP addieren macht keinen Sinn.

von Dirk H. (dirk_h)


Lesenswert?

Ich habe jetzt auch nochmal mit Wireshark rumgespielt. Die kürzesten UDP 
Pakete die hier im Netz rumschwirren sind 60 Bytes lang, eigentlich 
64Byte da Wireshark die CRC des Ethernetframes nicht berücksichtigt.

Damit wäre die Welt in Ordnung. (Bei dem gesnifften Paket enthält 
Ethernet  einen Trailer von 12Byte, das Paket wurde also künstlich um 12 
Byte verlängert damit es auf die 64 kommt)

Das ein Ethernetframe wie im Bsp. von Jörg 44 Bytes lang ist, kann so 
wie ich das verstanden habe nicht sein (s. obiger Beitrag)?!

Grüße
dh

Nachtrag: auch die Preamble wird bereits von der netzwerkkarte 
gefiltert...
s. 
http://wiki.wireshark.org/Ethernet?action=show&redirect=Protocols%2Feth

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Dirk H. schrieb:

> Aber das der Frame nur 44Byte lang sein soll kann ich nicht so richtig
> glauben. Sowohl in der dt. als auch in der engl. Wikipedia ist eine
> minimale Ehternetframelänge von 64 Byte angegeben (falls noch präamel
> sfd und vlan tag dazu kommen auch mehr)

Offenbar wird das Padding an dieser Stelle bereits rausgerechnet
(durch den Treiber), das würdest du also nur sehen, wenn du physisch
mit geeigneter Hardware "auf den Draht" schauen kannst.  IEEE 802.3
sagt dazu:


3.2.8 Pad field

A minimum MAC frame size is required for correct CSMA/CD protocol
operation (see 4.2.3.3 and 4.4). If necessary, a Pad field (in units
of octets) is appended after the MAC Client Data field prior to
calculating and appending the FCS field. The size of the Pad, if any,
is determined by the size of the MAC Client Data field supplied by the
MAC client and the minimum MAC frame size and address size MAC
parameters (see 4.4).

sowie:

4.2.3.3 Minimum frame size

The CSMA/CD Media Access mechanism requires that a minimum frame
length of minFrameSize bits be transmitted. If frameSize is less than
minFrameSize, then the CSMA/CD MAC sublayer shall append extra bits in
units of octets (Pad), after the end of the MAC Client Data field but
prior to calculating and appending the FCS (if not provided by the
MAC client). The number of extra bits shall be sufficient to ensure
that the frame, from the DA field through the FCS field inclusive, is
at least minFrameSize bits. If the FCS is (optionally) provided by the
MAC client, the Pad shall also be provided by the MAC client. The
content of the Pad is unspecified.

von Dirk H. (dirk_h)


Lesenswert?

IEEE 802.3 sagt minFrameSize=64Byte das VLAN kann man wohl weg lassen..
Insofern stimmen meine eingangs gemachten Annahmen wenn man das VLAN 
außen vor lässt.

Danke für die Hilfe :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.