Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Apr 2002 15:07:53 +0800
From:      Yusuf Goolamabbas <yusufg@outblaze.com>
To:        freebsd-net@freebsd.org
Subject:   Re: What does FreeBSD do when listen queue is full ?
Message-ID:  <20020415070753.GA13864@outblaze.com>
In-Reply-To: <20020415074210.V3157-100000@patrocles.silby.com>
References:  <20020415062451.13653.qmail@yusufg.portal2.com> <20020415074210.V3157-100000@patrocles.silby.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> 
> There used to be two listen queues; one for completed connections and one
> for incomplete connections.  (Complete referring to the TCP three-way
> handshake completing.)  The syncache replaces the incomplete connection
> queue, meaning that the listen queue depth is no longer relevant there.

What is the maximum size of the queue for completed connections ? Is
there a sysctl setting for this

> I just did a quick look over the code, and it appears that the complete
> connection queue is still intact, and takes on 3/2*listen backlog as its
> length.  Therefore, if sendmail is deciding to not accept() all
> connections ASAP, a backlog will build up, and RSTs will be sent to
> incoming connections.  This should be true under 4.4 or 4.5.
> 
> The listen manpage looks to be pretty accurate in its description.

What about the statement 

'or,if the underlying protocol supports retransmission, the request may
be ignored so that retries may succeed'

What does 'underlying protocol' refer to then since you are saying that
even with TCP which supports retransmission, the stack sends a RST when
the listen queue is full

Regards, Yusuf

-- 
Yusuf Goolamabbas
yusufg@outblaze.com

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020415070753.GA13864>