httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bill Stoddard <b...@wstoddard.com>
Subject Re: Performance of TransmitFile on Windows Servers with 2.0.49
Date Mon, 12 Apr 2004 15:57:20 GMT
Philip Gladstone wrote:
> I noticed that the performance of TransmitFile (used when EnableSendFile
> On on Windows platforms) was significantly worse than EnableSendFile Off.
> 
> It turns out that the way that TransmitFile is called is *without* the
> TF_WRITE_BEHIND flag. This means that TransmitFile does not complete (or
> rather that the socket is not signalled) until *all the data* has been
> ack'ed by the client. Windows clients send acks (roughly) every other
> data packet, or after a 200ms timeout. Thus, about half the time, the
> TransmitFile does not complete until this 200ms timeout has triggered.
> 
> This reduces the throughput on high speed networks significantly. On a
> 100Mbit LAN, the throughput drops from 11MBytes/sec to around
> 2.5MBytes/sec.
> 
> My question is: is there a good reason that the TF_WRITE_BEHIND flag is
> not being used?
> 
> Philip
> 
> p.s. If you want to try this, don't use Mozilla as that seems to have
> another bug that limits the maximum data transfer rate.

Philip,
Submit a patch to dev@apr.apache.org and I'll take a look.  Sounds like we need to set TF_WRITE_BEHIND.

Bill

Mime
View raw message