Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 May 2005 13:11:58 +0200
From:      "Alexandre D." <alexandre.delay@free.fr>
To:        <freebsd-ipfw@freebsd.org>
Subject:   RE: ipfw+dummynet+WF2Q
Message-ID:  <MAEBLPAGHGPMOKCBICBNMEFPCFAA.alexandre.delay@free.fr>
In-Reply-To: <MAEBLPAGHGPMOKCBICBNAEFPCFAA.alexandre.delay@free.fr>

next in thread | previous in thread | raw e-mail | index | archive | help
Maybe it is possible to play with:
net.inet.ip.fw.one_pass: 1

so that the paquet continues in the firewall and then reaches an other pipe
which would regroup several pipes.
I would give something like this:
 ipfw list
...
00011 divert 8668 ip from any to any via fxp0
00012 allow ip from 172.20.1.254 to any
00013 allow ip from any to 172.20.1.254
...
00028 allow ip from me to any
00029 allow ip from any to me
06004 pipe 1004 ip from any to 172.20.1.2 in
06005 pipe 1005 ip from 172.20.1.2 to any in
06016 pipe 1016 ip from any to 172.20.1.8 in
06017 pipe 1017 ip from 172.20.1.8 to any in
06030 pipe 1030 ip from any to 172.20.1.15 in
06031 pipe 1031 ip from 172.20.1.15 to any in
06032 pipe 1032 ip from any to 172.20.1.16 in
06033 pipe 1033 ip from 172.20.1.16 to any in
06084 pipe 1084 ip from any to 172.20.1.42 in
06085 pipe 1085 ip from 172.20.1.42 to any in
...
/* reinjection in the firewall for WF2Q */
ipfw add queue 1 ip from any to 172.20.1.2 in
ipfw queue 1 config pipe 1
ipfw add queue 1 ip from any to 172.20.1.2 to any in
ipfw queue 1 config pipe 2
ipfw add queue 1 ip from any to 172.20.1.8 in
ipfw queue 1 config pipe 1
ipfw add queue 1 ip from any to 172.20.1.8 to any in
ipfw queue 1 config pipe 2
ipfw add queue 1 ip from any to 172.20.1.15 in
ipfw queue 1 config pipe 1
ipfw add queue 1 ip from any to 172.20.1.15 to any in
ipfw queue 1 config pipe 2
/* same for other users */
...
31004 allow ip from any to 172.20.1.2


# ipfw pipe list
00001: 2048.00 Kbit/s
00002: 2048.00 Kbit/s
01004: 512.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01005: 128.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01016: 512.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01017: 128.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01030:   1.024 Mbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01031: 128.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01032: 512.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01033: 128.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01084: 128.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01085:  32.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...


-----Message d'origine-----
De : owner-freebsd-ipfw@freebsd.org
[mailto:owner-freebsd-ipfw@freebsd.org]De la part de Alexandre D.
Envoyé : dimanche 22 mai 2005 11:28
À : freebsd-ipfw@freebsd.org
Objet : ipfw+dummynet+WF2Q


Hi all,

I have a specific question about WF2Q+ included in dummynet.

I configured a box with dummynet.
Each time a user get connected, a bandwidth is allocated to him thanks to 2
pipes (burst limit "in" and "out").
According to what I understand of WF2Q+, queues equalize the bandwidth in a
pipe.
What I would like is getting the total bandwidth equalized between the
pipes.

Sometimes I have users using a lot of bandwidth. It doesn't matter if they
are alone, but If there are several users, I would like the traffic to be
equalized between them.

Here are a sample of my config (I have 2Mbps guaranteed bandwidth and 5
users: 3x512/128kbps; 1x1024/128, 1x128/32kbps).

# ipfw list
...
00011 divert 8668 ip from any to any via fxp0
00012 allow ip from 172.20.1.254 to any
00013 allow ip from any to 172.20.1.254
...
00028 allow ip from me to any
00029 allow ip from any to me
01218 pipe 218 ip from any to 172.20.1.109 in
01219 pipe 219 ip from 172.20.1.109 to any in
01444 pipe 444 ip from any to 172.20.1.222 in
01445 pipe 445 ip from 172.20.1.222 to any in
06004 pipe 1004 ip from any to 172.20.1.2 in
06005 pipe 1005 ip from 172.20.1.2 to any in
06016 pipe 1016 ip from any to 172.20.1.8 in
06017 pipe 1017 ip from 172.20.1.8 to any in
06030 pipe 1030 ip from any to 172.20.1.15 in
06031 pipe 1031 ip from 172.20.1.15 to any in
06032 pipe 1032 ip from any to 172.20.1.16 in
06033 pipe 1033 ip from 172.20.1.16 to any in
06084 pipe 1084 ip from any to 172.20.1.42 in
06085 pipe 1085 ip from 172.20.1.42 to any in
...
31004 allow ip from any to 172.20.1.2
31005 allow ip from 172.20.1.2 to any
31016 allow ip from any to 172.20.1.8
31017 allow ip from 172.20.1.8 to any
31030 allow ip from any to 172.20.1.15
31031 allow ip from 172.20.1.15 to any
31032 allow ip from any to 172.20.1.16
31033 allow ip from 172.20.1.16 to any
31084 allow ip from any to 172.20.1.42
31085 allow ip from 172.20.1.42 to any
...

# ipfw pipe list
01004: 512.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01005: 128.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01016: 512.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01017: 128.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01030:   1.024 Mbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01031: 128.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01032: 512.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01033: 128.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01084: 128.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...
01085:  32.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
...


I guess that I need to build a main pipe in order to determine the total
bandwidth and build queues in it, but the trafic would not be "piped" in the
users'pipes if I do that!

Thank you for your help

Best regards

Alex

_______________________________________________
freebsd-ipfw@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ipfw
To unsubscribe, send any mail to "freebsd-ipfw-unsubscribe@freebsd.org"




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