On Fri, Jun 30, 2000 at 12:33:53PM -0700, Ben Greear wrote:
> Andi Kleen wrote:
> 
> > On Fri, Jun 30, 2000 at 09:47:41AM -0700, Aaditya Rai wrote:
> > > > Tanks for the reply.
> > >
> > > Can I really be running out of ports when there are not more than 20
> > > connections at any given time. (The structure of  my program and netstat,
> > > both verify this.)
> > >
> > > Netstat doesn;t show more than 5 connections in TIME_WAIT during the
> > > operation.
> >
> > connect() only returns EAGAIN when it runs out of ports.
> >
> > sendmsg()et.al. can return EAGAIN when it runs out of memory or you're writing
> > to a not yet connected non blocking socket.
> 
> And just to clarify...you may still have lots of free memory in the machine, just 
>none
> accessible in the kernel buffers or queues.  You can change some of the queue sizes
> through the proc fs...and change the ethernet queue with the 'ip' command...

The tx queue len cannot cause EAGAIN (packets are silently dropped instead
and TCP only notices indirectly) 

Increasing the socket buffers only helps in a limited fashion (he needs to
handle EAGAIN anyways if the socket is non blocking) 

The problem of system OOM during TCP send is fixed since 2.2.17pre2. 


-And


-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to [EMAIL PROTECTED]

Reply via email to