Re: ipfw dummynet - adsl link(s) simulieren

From: Sebastian Mellmann <sebastian.mellmann(at)net.t-labs.tu-berlin.de>
Date: Thu, 07 May 2009 10:03:48 +0200

Moin!
> >
> > 192.168.5.0/24 - Client Subnet
> > 192.168.7.0/24 - Server Subnet
> >
> > Meine Regeln:
> >
> > ipfw pipe 100 config mask all bw 1024Kbit/s queue 50 delay 10
> > ipfw pipe 200 config mask all bw 6144Kbit/s queue 50 delay 10
> >
> > ipfw add pipe 100 all from 192.168.5.0/24 to 192.168.7.0/24 in recv em0
> > ipfw add pipe 200 all from 192.168.7.0/24 to 192.168.5.0/24 out xmit em0
> >
> > ipfw pipe 500 config bw 100Mbit/s queue 50
> > ipfw add pipe 500 all from any to any in recv em0
> >
> > ipfw pipe 510 config bw 100Mbit/s queue 50
> > ipfw add pipe 510 all from any to any out xmit em0
>
> Sieht soweit gut aus -- Aber hast Du auch den sysctl
> net.inet.ip.fw.one_pass auf 0 gesetzt (Default ist 1)?
> Anderenfalls greift nur jeweils die erste Pipe (für
> den ADSL-Link), nicht aber die Pipe für die 100 Mbps.
>
>
Ja, diese Variable habe ich bereits gesetzt.

> Außerdem scheint mir 10 ms Delay etwas hochgegriffen.
> Bei mir daheim sind's bis zum anderen Ende des DSL-Links
> etwa 3 ms. Aber das mag auch von der jeweiligen Technik,
> Leitungsqualität, Fehlerkorrektur, "Fast-path" und
> ähnlichen Dingen abhängen.
>
>

Die 10ms habe ich jetzt nur als Beispiel genommen.
Mit "Interleaving" sind 10ms sogar noch etwas zu wenig.
> > Ich habe die Regeln mit 'ping' und 'scp' "getestet" und sie scheinen zu
> > "greifen".
> > Ich bin mir jedoch bzgl. der Queue-Größe nicht sicher, ob sie wirklich
> > so funktioniert, wie ich mir das vorstelle.
> > Besitzt jede 'pipe' ihre eigene Queue?
>
> Ja, das passt schon.
>

Irgendwie reicht mir das nicht ;-)

Ich habe jetzt nochmals etwas weiter "gegraben".

So, wie meine Regeln z.Zt. sind bekommt jeder ADSL-Link seine eigene
Queue (Grund: config mask all).
Wenn ich nun 'config mask dst-ip 0xffffff00' bzw. 'config mask src-ip
0xffffff00' verwende, bekommt jeder ADSL-Link seine eigene Queue.
Richtig?

Wenn ja, was sollte ich nun wählen?
Eine Queue für alle Flows oder jeder seine eigene?
> > Wann genau verwendet man 'pipe' und wann 'queue'?
>
> Die Manpage erklärt es eigentlich recht gut. Für die
> Simulation bestimmter Arten von Hardware-Links (wie bei
> Dir: ADSL) genügen in der Regel Pipes.
>
> > Die ipfw manpage sagt:
> >
> > In practice, pipes can be used to set hard limits to the bandwidth
> > that a flow can use, whereas queues can be used to determine how
> > different flow share the available bandwidth.
>
> Richtig, das sagt sie, unter anderem.
>
>
Das würde doch bedeuten, dass ich für das Begrenzen des Links für alle
ADSL-Links am Schluss eine Queue verwenden sollte?

Mir ist einfach nicht ganz klar, wo der genaue Unterschied liegt, da es
ja scheinbar keinen Unterschied macht, ob ich eine pipe benutze.
(Wenn ich jetzt mal von meinem rudimentären 'ping' & 'scp' Test ausgehe.)

Gruß
Sebastian
> Gruß
> Olli
>
>

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Thu 07 May 2009 - 10:03:55 CEST

search this site