As you are probably aware, ethernet requires a minimum frame size of 60
+4 bytes. (60 bytes header&data, 4 bytes CRC).
I've just discovered, and worked around, some unusual behavior with
tagged minimum-sized packets.
I have a NetGear FS526T switch, which supports vlan tagging.
I discovered that small tagged packets destined for an untagged port
(where the switch removes the tag as part of forwarding) weren't making
to their destination. This played havoc with a number of things,
including arp.
When I hacked up the solaris nge driver to pad outgoing frames to 64(+4)
bytes, packets started moving.
what appears to be going on is that the driver is handing the nic a
short frame (under 60 bytes payload), the nic is padding out to 60+4,
and then the switch is removing the 4-byte vlan tag, producing a
sub-minimum-size frame which is discarded somewhere (either in the
switch or in the receiving node). Padding the outbound frames to 64
bytes in software fixes the problem; the trimmed packets remain above
the minimum ethernet frame size.
It may just be that this particular model of switch is broken, but I
wonder how common this is. I suspect the right answer is to apply the
Postel principle (be liberal in what you accept, and conservative in
what you send)...
- Bill
_______________________________________________
networking-discuss mailing list
[email protected]