* Reenabling TSO
@ 2004-03-08 4:32 Jeremy Kerr
0 siblings, 0 replies; only message in thread
From: Jeremy Kerr @ 2004-03-08 4:32 UTC (permalink / raw)
To: netdev; +Cc: anton
Hi all,
I've been running a few tests on the TSO & e1000 code which involve stressing
a link between two hosts. The test program is rather trivial, simply repeated
calls to sendfile() over a socket. The problem occurs when we see a TCP
retransmit on the connection, after which TSO is disabled.
After looking through tcp_{input,output}.c, there seems to be no code to
reenable TSO - so one retransmit will permanently disable TSO for a socket.
This isn't such a problem for short-lived connections, but longer-lived ones
will only use TSO for a small proportion of the data transferred, depending
on the frequency of retransmits.
So, two questions:
Is it practical to reenable TSO at all?
and
What metric do we use to determine when it is safe to reenable TSO? A simple
metric may be the TCP window size - when this reaches a predefined threshold,
we can set the flag again. However, something more complex involving the
number of sent packets and number of retransmits may be required.
Any thoughts?
Jeremy
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2004-03-08 4:32 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-03-08 4:32 Reenabling TSO Jeremy Kerr
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).