Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

Re: RUNT Packets




> I have to disagree with your statement of "The MAC silently discards packets
> that are shorter than the minimum". When MAC is receiving a packet and
> forwarding the packet data to the host. If the the EOP comes before 64th
> byte, MAC needs to inform host to discard the packet and that packet needed
> to be counted in RMON. Otherwise we will see packets disappear (packet counts
> mismatch) if they are shortened by what ever reasons.

I am still not convinced why this event has to be reported to RMON. Packets
on networks disappear all the time for various reasons, and the higher level
protocols know how to deal with that. Not everything has to be handled in
Layer 2. But for the sake of argument let's assume that it is desirable.


> Standard doesn't need to say anything about it, but saying "The MAC silently
> discards packets that are shorter than the minimum" is not good.

Well, guess what? This is exactly what the standard says now:

   Sub-clause 4.1.4:
   "j) Discards received transmissions that are less than a minimum length."

   Sub-clause 4.2.4.2.2:
   "The shortest valid transmission in full duplex mode must be at least
    minFrameSize in length. While collisions do not occur in full duplex
    mode MACs, a full duplex MAC nevertheless discards received frames
    containing less than minFrameSize bits. The discarding of such a frame
    by a MAC is not reported as an error."

It appears in another few places, but this should do.

We had this in the standard for years and it never was a problem. I don't
think we should do anything different now. If somebody wants to count these
fragments, he is free to do so. But, mandating it now would make a lot of
MACs non-compliant.


> And I believe most MACs in the market count undersized packets.

I don't think so.
The MAC has no way of distinguishing a collision fragment from a "short
packet". Therefore, on a shared Ethernet network this counter will count
lots of collision fragments. And, by the way, there are still a lot of
shared Ethernet networks out there...


> Of course, most undersized packets don't come with good CRC. But we can't
> make this kind of assumption.

It doesn't matter. If the packet is shorter than 64 bytes, the MAC doesn't
check the CRC.


So, to make a long story short, I don't think we need to make this more
complicated than necessary. This is not a new issue, and so far it did
not prevent us from doing the right thing.


						Shimon.