Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Mar 2002 18:53:52 -0800 (PST)
From:      John Polstra <jdp@polstra.com>
To:        net@freebsd.org
Cc:        dinesh@verniernetworks.com
Subject:   Re: Socket buffer size limitation
Message-ID:  <200203230253.g2N2rqj07849@vashon.polstra.com>
In-Reply-To: <20020322172352.R60156-100000@getafix.verniernetworks.com>
References:  <20020322172352.R60156-100000@getafix.verniernetworks.com>

next in thread | previous in thread | raw e-mail | index | archive | help
In article <20020322172352.R60156-100000@getafix.verniernetworks.com>,
Dinesh Nambisan  <dinesh@verniernetworks.com> wrote:
> Hello,
>  I have a situation where I'm trying to set the send and receive buffer
> sizes on a socket to large values like 1 MB or so (dont ask why :-),
> simple reason being we need it); and setsockopt for setting the buffer
> sizes seems to fail with ENOBUFS. On looking at the code in uipc_socket.c
> where it handles the SO_SNDBUF & SO_RCVBUF options, and the code in
> uipc_socket2.c where it actually tries to reserve space (in sbreserve
> function_, the issue seems to be a limit imposed by the code to
> approx 227K or so [ sb_max(=256) * MCLBYTES / (MSIZE + MCLBYTES) ; which
> works out to approx 227 K on my platform]
> Was wondering if anyone could explain as to why this limit is there ?

It's probably there to prevent a hostile or broken process from
consuming all of the mbufs and/or mbuf clusters.

You can change the limit via the sysctl variable "kern.ipc.maxsockbuf".

John
-- 
  John Polstra
  John D. Polstra & Co., Inc.                        Seattle, Washington USA
  "Disappointment is a good sign of basic intelligence."  -- Chögyam Trungpa


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?200203230253.g2N2rqj07849>