Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 May 1995 04:03:48 -0700
From:      David Greenman <davidg@Root.COM>
To:        "Rodney W. Grimes" <rgrimes@gndrsh.aac.dev.com>
Cc:        jhay@mikom.csir.co.za, seki@sysrap.cs.fujitsu.co.jp, FreeBSD-Hackers@FreeBSD.org
Subject:   Re: Questions/comments on ed driver 
Message-ID:  <199505141103.EAA00854@corbin.Root.COM>
In-Reply-To: Your message of "Sun, 14 May 95 03:48:01 PDT." <199505141048.DAA03372@gndrsh.aac.dev.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
>> >To maintain full compatibilty with all old ethernet systems we should never
>> >generate a packet on the wire shorter than 64 bytes (the new standard) but
>> >should accept packets of 60 bytes.  This was changed 8 years ago or something
>> >like that and I just find it amazing that people still have not fixed there
>> >broken code :-(.
>> 
>>    Ummm, according to the "DEC 21140" and the "WD83C690" specifications, the
>> minimum 802.3 frame consists of 12 bytes of address (6 src + 6 dst), 2 byte
>> type/length, 46 bytes of data, and 4 byte CRC. This is 64 bytes. However, the
>> "length" is in terms of what the host puts into the buffer and doesn't include
>> the CRC if automatic CRC generation is enabled on the card (it is). So from
>> this perspective, the proper value as I read it is '60'.
>
>And both chips are designed to Ethernet II, aka 802.3 standards.  The older
>ethernet I standard did not state the number of data bytes, it just said
>the packet size should be 60 bytes.  Some folks interpretted that to mean
>the packet with CRC, some interpretted it to mean without CRC.  That is
>one of the reasons we ever got an Ethernet II/802.3 specification,
>as the original was ambiguous.
>
>Trust me, I have seen enough 60 byte packets come down a wire in my
>life time that it makes me sick, this are 42 data byte packets and
>it is the reason I always program the 825X6 chips with this config
>byte:
>        cb_conf->byte[10] = 60;         /* minimum number of bytes is a frame */
>
>Note that Intel's default (and 802.3 table) value for this register is
>64.

   I wasn't doubting you, but was mearly pointing out that despite what you
were saying, that there was a bug in the driver after all. The way it was, the
minimum data portion was 50 bytes rather than 46 (for a total frame length of
68 bytes).

-DG



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199505141103.EAA00854>