Re: Tx TCP rates down > 20% - A report.

nelson@crynwr.com
3 May 1996 03:31:28 GMT


Paul Gortmaker writes:
> Before you get too excited about the 3c509, lets look at what it has
> and what it does. The original 3c509 has 4kB split 2kB Rx and 2kB Tx.
> Note that 2kB can't even hold 2 full sized packets. The 3c509B is
> better in that it has 8kB, with a power on default split of 5kB Rx and
> 3kB Tx -- 3kB will just fit 2 full sized packets. Now after the driver
> uploads a packet to the 509, it asks the card if it has at least 1536
> bytes free for another one. If yes, it clears tbusy. If not, it leaves
> tbusy set until the tx_done interrupt comes along. So if you have a
> 3c509B, you can fit in two full sized packets, just like an 8390. If you
> have the original 3c509, you can only sit on one full sized packet.

But hmmmm... If you want to be clever about it, and give up a little
latency, you can pump data into the 3c509's buffer as fast as its
buffer clears. Set the TX Start Threshold to 2040 (or else don't set
it at all). Whenever you run out of space loading a packet, Set TX
Available Threshold to the amount you couldn't load.

The 3c509 is an odd beast. To program it the way 3Com intended, you
need to put a layer of interface between the Linux driver setup and
the 3c509. I had to change the packet driver skeleton to meet the
needs of the 3c509.

-russ <nelson@crynwr.com> http://www.crynwr.com/~nelson
Crynwr Software | Crynwr Software sells packet driver support | PGP ok
11 Grant St. | +1 315 268 1925 voice | It's no mistake to err on
Potsdam, NY 13676 | +1 315 268 9201 FAX | the side of freedom.