I've been trying to understand some odd behavior in FreeBSD and I'm wondering if anyone has an explanation for what's going on.
I'm using a FreeBSD box as a router in some tests. I cause congestion at the router by sending more packets through it than the outgoing link can handle (10Mbps). What I've noticed is that when the queue becomes full a large number of _consecutive_ packets get dropped. After this the queue is almost empty and it begins to fill again. This behavior seems odd to me. Shouldn't the queue stay about full, dropping packets in a more uniform fashion? I've tried it with both fxp and DEC 21140A cards with similar results. The fxp driver seems to drop fewer packets more frequently (about half the queue, but the queue still ends up nearly empty). The 21140A driver drops less often, but drops about a full queue size when it does. The other odd thing is that it seems to drop more packets than could arrive during the time it's dropping. (I send packets at a constant rate.) I've been messing with the drivers a little and it seems like it might have something to do with the transmit buffer garbage collection? There are alot more details I could give, but I just wanted to know if anyone has any idea at all first. Any ideas? Thanks Joe To Unsubscribe: send mail to majord...@freebsd.org with "unsubscribe freebsd-hackers" in the body of the message