Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Oct 2001 11:39:14 -0800
From:      Luigi Rizzo <rizzo@aciri.org>
To:        rick norman <rick.norman@lmco.com>
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: dummynet "pipe show" problem
Message-ID:  <20011030113914.H9665@iguana.aciri.org>
In-Reply-To: <3BDEF5C5.F5D604C2@lmco.com>
References:  <3BDEF5C5.F5D604C2@lmco.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Oct 30, 2001 at 10:47:33AM -0800, rick norman wrote:
> Hi,
> I have enclosed a short piece of code that seems to
> reproduce the problem after 5 to 10 minutes.
> I am running 4.3 freebsd off the release cd's.
> Pretty much the generic kernel except for the
> addition of dummynet and ipfw.  My platform
> is a dell dimension 4100 with 1ghz p3, though
> I doubt that is relevant.  To reproduce the problem,
> compile and run the enclosed code in one window.
> In another window su to root and run "ping -s 1024 -f 127.0.42.1".
> As you will see, the code reports the gowing byte count as one
> would expect.  Walk away for 5 to 10 minutes and when you come
> back you should see the state I'm talking about. The flood ping stream

It _might_ be a locking problem due to the frequent
reconfigurations of the pipe -- i think there was some
fix of this kind related to ipfw commands between 4.3 and 4.4.
I will see if i can reproduce the problem locally (but i have
4.4).

You are using dummynet in a very peculiar way:
more precisely, your pipe does not introduce any delay,
and this excludes the scheduler which is part of dummynet.
Also you are using the same pipe for icmp requests 
and replies, which are generated within the kernel, so
the behaviour should be quite deterministic in this
respect.

thanks for the report

	luigi

> Thanks,
> Rick
> 
> ----------------------cut--------------------------------------------
> 
> main() {
>         int  i;
> 
> restart:
>    system("ifconfig lo0 -alias 127.0.42.1");
>    system("ifconfig lo0 alias 127.0.42.1 netmask 255.255.255.0");
>    system("ipfw -f flush");
>    system("ipfw pipe 1 delete");
>    system("ipfw add pipe 1 ip from 127.0.42.0/24 to any in");
> 
>    for(i=0;i<5;i++) {
>         system("ipfw pipe 1 config queue 2048Bytes");
>         sleep(1);
>         system("ipfw pipe 1 show");
>    }
> 
>    goto restart;
> }
> 
> --------------------cut--------------------------------------
> 
> 
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message

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




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