lkml.org 
[lkml]   [2001]   [Dec]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: min-write-size for a UDP socket to be POLLOUT cannot be set. (proposed fixes)


Richard B. Johnson wrote:

> On Mon, 10 Dec 2001, Ben Greear wrote:

>>I have 4M queue size. I have 4M-2k bytes already in the
>>queue (2k free). I have a 4k UDP buffer to write. I call
>>select and it says the socket is writable. However, in this
>>case I cannot actually write to the socket because I have only
>>2 of the 4k that I need... Now, I can detect the failure to send
>>and re-transmit, but that basically gets me into a tight loop because
>>select keeps saying I can write, and I keep trying. The tight loop
>>is doubly bad because the machine is already highly stressed or it's
>>buffers would never be so full....
>>
>>I want select to only say I can write when I'm at XX (say, 64k) bytes of
>>free buffer-queue space...
>>
>>Ben
>>
>>
>
> If you have a 4M queue size, it appears as though you are trying to
> use UDP where TCP should have been used. Normally, what you call the
> queue size, is set to contain you largest packet you will ever want to
> send. With this in mind, you don't even know if a fragmented packet
> can be routed if it's more than 64k in length so you would never try
> to send something larger than that under UDP.


Assume that I actually want to do what I said I did! :)

I never try to send
a packet bigger than 64k, the protocol doesn't handle it. But, I may try
to send 100000 60k UDP packets in very fast succession...which could fill up my
send queue.



--
Ben Greear <greearb@candelatech.com> <Ben_Greear AT excite.com>
President of Candela Technologies Inc http://www.candelatech.com
ScryMUD: http://scry.wanfear.com http://scry.wanfear.com/~greear


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:14    [W:0.031 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site