----- Original Message ----- 
From: "Tony Finch" <[EMAIL PROTECTED]>
To: "Kris Kennaway" <[EMAIL PROTECTED]>
Cc: "bsddiy" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>
Sent: Friday, February 02, 2001 2:00 AM
Subject: Re: sendfile()


> Kris Kennaway <[EMAIL PROTECTED]> wrote:
> Linus's argument against the HP/UX and BSD sendfile() is that, for
> example, in the presence of pipelined HTTP requests it isn't possible
> to avoid poor packet boundaries between responses. TCP_NOPUSH does
> help to solve this problem (it was designed to hack around problems
> with the interaction between mbuf sizes and sosend and tcp_output) but
> it introduces a new problem: at the end of a chain of HTTP responses
> you want the last segment to go out quickly rather than waiting for
> more data to fill the segment. For this reason turning off TCP_CORK
> pushes out queued data, but this isn't the case for TCP_NOPUSH.
> 

if TCP_NOPUSH can simulate TCP_CORK when TCP_NOPUSH is
turned off and last data segment is sent,  I'll be satisfied.
but as I know, it seems TCP_NOPUSH is mainly used for TTCP, right?

the idea behind TCP_CORK is it buffers any small data segment user program 
sending until these segments full fills a max TCP packet, then the packet is sent,  
web servers always send many very small  HTTP headers, cause lots of small packets
sent out,  TCP_CORK  can increase network performance.

Regards,
David Xu

N'²æìr¸zǧvf¢Ú&j:+v¨· è®"¶§²æìr¸yúÞy»ëbØ^nr¡ûazg¬±¨

Reply via email to