Texas Instruments TNETE110A Network Card User Manual


 
List Management
5-4
A driver is not limited in the number of lists it can manage as long as there is
memory to put them in. The question then arises as to how many lists are ap-
propriate for a certain application. The number of lists allocated should be just
enough to allow the driver to use the full wire bandwidth on Tx and to handle
the Rx data from the wire.
In a network client application where some data transfer may occur between
the Rx buffer pool and another location in the client, the data transfer routines
must be as efficient as possible. The data transfer time between the host and
ThunderLAN is the copy time. This copy time must be less than the time that
it takes for the network to fill up a buffer (network transmit time) plus the time
it takes to service the list (service time).
Copy time < Network transmit time + Service time
Service time includes the overhead time for copying the list header and servic-
ing the interrupts and the list. If the copy time does not meet this criterion it may
be necessary to add an additional Rx list and buffer to your driver application.
An efficient driver actually takes up significantly less memory space than a less
efficient driver, and it is able to use more network bandwidth and less CPU.
This is because a more efficient driver uses fewer memory-consuming lists
and buffers, while maintaining the same throughput. Ensuring that data trans-
fer operations are clean and efficient helps improve the throughput and size
of the driver.
A client driver can be optimized so that only one transmit list is required. Using
one transmit provides good performance and simplifies the driver design. A
server driver, where maximum performance is important, can be achieved with
about 11 transmit lists. A client driver operates well with three receive lists. A
server driver requires more to receive the network traffic. The specific number
of receive and transmit lists depends on the efficiency of the driver and the ma-
chine used.