From: Banszki Gabor <banszki.gabor@chello.hu>
To: netfilter <netfilter@lists.netfilter.org>
Subject: Re: queue buffer size increasing howto? - solved
Date: Tue, 07 Sep 2004 18:30:26 +0200 [thread overview]
Message-ID: <1094574626.15915.4.camel@debian> (raw)
In-Reply-To: <1094285774.6293.44.camel@debian>
Hi everybody!
I solved the problem by using pthread.h
The main thread in my process is reading from the queue buffer and open
new threads for the long time tasks.
In this case I don't need to increase the buffer size of the netlink
socket.
G.
On Sat, 2004-09-04 at 10:16, Banszki Gabor wrote:
> Hi Everybody!
>
> Thank for answer of Tobias!!
>
> I could get the buffer size by the getsockopt (107520).
>
> After this I was able to increase the size of buffer to 215040 by your
> suggestion:
>
> int size, size_len;
> size_len = sizeof(size);
> rv = getsockopt (fd, SOL_SOCKET, SO_RCVBUF, &size, &size_len);
> printf ("Oldsize of buffer: %i \n",size); { I've got 107520)
>
> size = 1256000;
> rv = setsockopt (fd, SOL_SOCKET, SO_RCVBUF, &size, size_len);
>
> rv = getsockopt (fd, SOL_SOCKET, SO_RCVBUF, &size, &size_len);
> printf ("New size of buffer: %i \n",size); ( I've got 215040 )
>
> After this I can see the same situation with this command....
>
> watch -n 0 "cat /proc/net/ip_queue"
>
> ...like earlier...
> The maximum number is around 252 - 258, and I still get the netlink
> error message "No buffer space....."
>
> I think it didn't help... Why?
> Maybee I should increase the SO_RCVBUF by more? But how?
>
> Thnx..
> other tasks
> G.
>
> On Sun, 2004-08-22 at 16:50, Tobias DiPasquale wrote:
> > On Sun, 22 Aug 2004 15:40:16 +0200, Banszki Gabor
> > setsockopt(2):
> >
> > int fd, rv, size = LARGE_SOCKET_BUFFER;
> >
> > fd = socket( PF_NETLINK, SOCK_RAW, NETLINK_FIREWALL);
> > rv = setsockopt( fd, SOL_SOCKET, SO_RCVBUF, &size, sizeof( size));
> > ...
> >
> > > With this command: watch -n 0 "cat /proc/net/ip_queue" during my
> > > application running the biggest number of "Queue length" is 255.
> > >
> > > I don't understand it, because the "Queue max. length" is 2048.
> >
> > See above. You should be able to increase the size of the socket
> > receive buffer in your userspace process without changing the length
> > of ip_queue's internal packet queue, but test that out to make sure.
> > You will probably need to run the process with root privileges to
> > change your socket receive buffer size, however.
>
next prev parent reply other threads:[~2004-09-07 16:30 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-08-22 13:40 queue buffer size increasing howto? Banszki Gabor
[not found] ` <876ef97a0408220750591cc852@mail.gmail.com>
2004-08-22 14:55 ` Tobias DiPasquale
2004-09-08 6:01 ` Banszki Gabor
2004-09-04 8:16 ` Banszki Gabor
2004-09-07 16:30 ` Banszki Gabor [this message]
2004-09-07 23:39 ` queue buffer size increasing howto? - solved Tobias DiPasquale
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1094574626.15915.4.camel@debian \
--to=banszki.gabor@chello.hu \
--cc=netfilter@lists.netfilter.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox