All of lore.kernel.org
 help / color / mirror / Atom feed
* [LARTC] Guarantee ICMP respond time ?
@ 2006-02-14 20:35 Stanislav Nedelchev
  2006-02-14 21:26 ` Stanislav Nedelchev
  0 siblings, 1 reply; 2+ messages in thread
From: Stanislav Nedelchev @ 2006-02-14 20:35 UTC (permalink / raw)
  To: lartc

Hello to all people there .
Can i guarantee ICMP respond time no metter how loaded is internet line .
i have typical NATed enviroiment   like

External IP |linux router| LAN - 192.168.0.0/24

i have example setup with IMQ but is it possible to be done also if i
attache htb to eth0 and eth1 for example .

if i start shaper ping i better that without shaper but it's not
guarantted i mean response  time is not like constant.

Maybe i'm missing something.
Is it possible with HTB ot with something else like CBQ ?
here is my example setup




echo "Loading Traffic Shaper IMQ0 Upload"
tc qdisc  del dev imq0 root
tc qdisc  add dev imq0 root handle 2: htb default 333 r2q 1

tc class  add dev imq0 parent 2: classid 2:2 htb rate 192kbit

#ICMP
tc class  add dev imq0 parent 2:2 classid 2:30 htb rate 32kbit prio 0
tc filter add dev imq0 parent  2:0 protocol ip handle 5 fw classid 2:30
tc qdisc  add dev imq0 parent 2:30 handle 30: sfq perturb 1



tc class  add dev imq0 parent 2:2 classid 2:24 htb rate 96kbit ceil
160kbit prio 1
tc filter add dev imq0 parent  2:0 protocol ip handle 1 fw classid 2:24

tc qdisc  add dev imq0 parent 2:24 handle 24: sfq perturb 10

tc class  add dev imq0 parent 2:2 classid 2:26 htb rate 32kbit ceil
128kbit prio 3
tc filter add dev imq0 parent 2:0 protocol ip handle 2 fw classid 2:26
#tc qdisc  add dev imq0 parent 2:26 handle 26: sfq perturb 10

tc class  add dev imq0 parent 2:2 classid 2:28 htb rate 16kbit ceil
64kbit prio 5
tc filter add dev imq0 parent  2:0 protocol ip handle 3 fw classid 2:28
#tc qdisc  add dev imq0 parent 2:28 handle 28: sfq perturb 10

tc  class  add dev imq0 parent  2:2 classid 2:333 htb rate 16kbit ceil
128kbit prio 7
tc  qdisc  add dev imq0 parent  2:333 handle 333: sfq perturb 10

echo "Done"

#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------


echo "Loading Traffic Shaper imq1 Upload"
tc qdisc  del dev imq1 root
tc qdisc  add dev imq1 root handle 2: htb default 333 r2q 1

tc class  add dev imq1 parent 2: classid 2:2 htb rate 192kbit

#ICMP
tc class  add dev imq1 parent 2:2 classid 2:30 htb rate 32kbit prio 0
tc filter add dev imq1 parent  2:0 protocol ip handle 5 fw classid 2:30
tc qdisc  add dev imq1 parent 2:30 handle 30: sfq perturb 1



tc class  add dev imq1 parent 2:2 classid 2:24 htb rate 96kbit ceil
160kbit prio 1
tc filter add dev imq1 parent  2:0 protocol ip handle 1 fw classid 2:24



tc qdisc  add dev imq1 parent 2:24 handle 24: sfq perturb 10

tc class  add dev imq1 parent 2:2 classid 2:26 htb rate 32kbit ceil
128kbit prio 3
tc filter add dev imq1 parent 2:0 protocol ip handle 2 fw classid 2:26
#tc qdisc  add dev imq1 parent 2:26 handle 26: sfq perturb 10

tc class  add dev imq1 parent 2:2 classid 2:28 htb rate 16kbit ceil
64kbit prio 5
tc filter add dev imq1 parent  2:0 protocol ip handle 3 fw classid 2:28
#tc qdisc  add dev imq1 parent 2:28 handle 28: sfq perturb 10

tc  class  add dev imq1 parent  2:2 classid 2:333 htb rate 16kbit ceil
128kbit prio 7
tc  qdisc  add dev imq1 parent  2:333 handle 333: sfq perturb 10

echo "Done"

#Priority 0
iptables -t mangle -I PREROUTING  -p icmp -j MARK --set-mark 5

#Priority 1
iptables -t mangle -A PREROUTING  -i eth0  -p tcp --dport 3389  -j MARK
--set-mark 1
iptables -t mangle -A PREROUTING  -i eth0  -p tcp --sport 3389  -j MARK
--set-mark 1

#Priority 2
iptables -t mangle -A PREROUTING  -i eth0  -p tcp --dport 25   -j MARK
--set-mark 2
iptables -t mangle -A PREROUTING  -i eth0  -p tcp --sport 25   -j MARK
--set-mark 2

#Priority 3
iptables -t mangle -A PREROUTING  -i eth0  -p tcp --dport 80   -j MARK
--set-mark 3
iptables -t mangle -A PREROUTING  -i eth0  -p tcp --sport 80   -j MARK
--set-mark 3


#Priority 0
iptables -t mangle -I POSTROUTING  -p icmp -j MARK --set-mark 5

#Priority 1
iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --dport 3389  -j MARK
--set-mark 1
iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --sport 3389  -j MARK
--set-mark 1

#Priority 2
iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --dport 25   -j MARK
--set-mark 2
iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --sport 25   -j MARK
--set-mark 2

#Priority 3
iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --dport 80   -j MARK
--set-mark 3
iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --sport 80   -j MARK
--set-mark 3

_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [LARTC] Guarantee ICMP respond time ?
  2006-02-14 20:35 [LARTC] Guarantee ICMP respond time ? Stanislav Nedelchev
@ 2006-02-14 21:26 ` Stanislav Nedelchev
  0 siblings, 0 replies; 2+ messages in thread
From: Stanislav Nedelchev @ 2006-02-14 21:26 UTC (permalink / raw)
  To: lartc

Hi Robin ,
I didn'd want to fake ICMP echo_reply i forgot to mention that in this
test i'm pinging my gateway to be shure that ping response is not bigger
for some other reasonds
i find  that ping response is getting bigger some times with about 10ms
but some times it;s doubles or even more but in most time is like constant.

Here is some data if you find it intresting

with shaper enabled
64 octets from 213.91.166.1: icmp_seq" ttl%4 time0.9 ms
64 octets from 213.91.166.1: icmp_seq# ttl%4 time@.9 ms
64 octets from 213.91.166.1: icmp_seq$ ttl%4 time\x14.3 ms
64 octets from 213.91.166.1: icmp_seq% ttl%4 time\x14.4 ms
64 octets from 213.91.166.1: icmp_seq& ttl%4 time4.2 ms
64 octets from 213.91.166.1: icmp_seq' ttl%4 time\x14.2 ms
64 octets from 213.91.166.1: icmp_seq( ttl%4 time\x14.2 ms
64 octets from 213.91.166.1: icmp_seq) ttl%4 time\x14.2 ms
64 octets from 213.91.166.1: icmp_seq0 ttl%4 time1.1 ms
64 octets from 213.91.166.1: icmp_seq1 ttl%4 time\x14.3 ms
64 octets from 213.91.166.1: icmp_seq2 ttl%4 time\x14.2 ms
64 octets from 213.91.166.1: icmp_seq3 ttl%4 time\x130.9 ms
without shaper enabled
64 octets from 213.91.166.1: icmp_seq\x10 ttl%4 timeQ7.2 ms
64 octets from 213.91.166.1: icmp_seq\x11 ttl%4 timeT5.4 ms
64 octets from 213.91.166.1: icmp_seq\x12 ttl%4 timeW3.8 ms
64 octets from 213.91.166.1: icmp_seq\x13 ttl%4 timeb8.6 ms
64 octets from 213.91.166.1: icmp_seq\x14 ttl%4 timec5.3 ms
64 octets from 213.91.166.1: icmp_seq\x15 ttl%4 timef6.0 ms
64 octets from 213.91.166.1: icmp_seq\x16 ttl%4 timei4.3 ms
64 octets from 213.91.166.1: icmp_seq\x17 ttl%4 timeq8.1 ms
64 octets from 213.91.166.1: icmp_seq\x18 ttl%4 timet6.2 ms
64 octets from 213.91.166.1: icmp_seq\x19 ttl%4 timet9.8 ms
64 octets from 213.91.166.1: icmp_seq  ttl%4 timew8.1 ms


Hammond, Robin-David%KB3IEN wrote:
> well if you want the line to look less conjested to a casual observer
> you can fake the ICMP echo_reply. (best know which hosts are infact
> on-line first). Faking the reply does not preclude actualy sending the
> echo request, but allowing a duplicate (real) reply might look weird...
>
>
> On Tue, 14 Feb 2006, Stanislav Nedelchev wrote:
>
>> Date: Tue, 14 Feb 2006 22:35:40 +0200
>> From: Stanislav Nedelchev <stanislav.nedelchev@gmail.com>
>> To: lartc@mailman.ds9a.nl
>> Subject: [LARTC] Guarantee ICMP respond time ?
>>
>> Hello to all people there .
>> Can i guarantee ICMP respond time no metter how loaded is internet
>> line .
>> i have typical NATed enviroiment   like
>>
>> External IP |linux router| LAN - 192.168.0.0/24
>>
>> i have example setup with IMQ but is it possible to be done also if i
>> attache htb to eth0 and eth1 for example .
>>
>> if i start shaper ping i better that without shaper but it's not
>> guarantted i mean response  time is not like constant.
>>
>> Maybe i'm missing something.
>> Is it possible with HTB ot with something else like CBQ ?
>> here is my example setup
>>
>>
>>
>>
>> echo "Loading Traffic Shaper IMQ0 Upload"
>> tc qdisc  del dev imq0 root
>> tc qdisc  add dev imq0 root handle 2: htb default 333 r2q 1
>>
>> tc class  add dev imq0 parent 2: classid 2:2 htb rate 192kbit
>>
>> #ICMP
>> tc class  add dev imq0 parent 2:2 classid 2:30 htb rate 32kbit prio 0
>> tc filter add dev imq0 parent  2:0 protocol ip handle 5 fw classid 2:30
>> tc qdisc  add dev imq0 parent 2:30 handle 30: sfq perturb 1
>>
>>
>>
>> tc class  add dev imq0 parent 2:2 classid 2:24 htb rate 96kbit ceil
>> 160kbit prio 1
>> tc filter add dev imq0 parent  2:0 protocol ip handle 1 fw classid 2:24
>>
>> tc qdisc  add dev imq0 parent 2:24 handle 24: sfq perturb 10
>>
>> tc class  add dev imq0 parent 2:2 classid 2:26 htb rate 32kbit ceil
>> 128kbit prio 3
>> tc filter add dev imq0 parent 2:0 protocol ip handle 2 fw classid 2:26
>> #tc qdisc  add dev imq0 parent 2:26 handle 26: sfq perturb 10
>>
>> tc class  add dev imq0 parent 2:2 classid 2:28 htb rate 16kbit ceil
>> 64kbit prio 5
>> tc filter add dev imq0 parent  2:0 protocol ip handle 3 fw classid 2:28
>> #tc qdisc  add dev imq0 parent 2:28 handle 28: sfq perturb 10
>>
>> tc  class  add dev imq0 parent  2:2 classid 2:333 htb rate 16kbit ceil
>> 128kbit prio 7
>> tc  qdisc  add dev imq0 parent  2:333 handle 333: sfq perturb 10
>>
>> echo "Done"
>>
>> #-----------------------------------------------------------------------------
>>
>> #-----------------------------------------------------------------------------
>>
>>
>>
>> echo "Loading Traffic Shaper imq1 Upload"
>> tc qdisc  del dev imq1 root
>> tc qdisc  add dev imq1 root handle 2: htb default 333 r2q 1
>>
>> tc class  add dev imq1 parent 2: classid 2:2 htb rate 192kbit
>>
>> #ICMP
>> tc class  add dev imq1 parent 2:2 classid 2:30 htb rate 32kbit prio 0
>> tc filter add dev imq1 parent  2:0 protocol ip handle 5 fw classid 2:30
>> tc qdisc  add dev imq1 parent 2:30 handle 30: sfq perturb 1
>>
>>
>>
>> tc class  add dev imq1 parent 2:2 classid 2:24 htb rate 96kbit ceil
>> 160kbit prio 1
>> tc filter add dev imq1 parent  2:0 protocol ip handle 1 fw classid 2:24
>>
>>
>>
>> tc qdisc  add dev imq1 parent 2:24 handle 24: sfq perturb 10
>>
>> tc class  add dev imq1 parent 2:2 classid 2:26 htb rate 32kbit ceil
>> 128kbit prio 3
>> tc filter add dev imq1 parent 2:0 protocol ip handle 2 fw classid 2:26
>> #tc qdisc  add dev imq1 parent 2:26 handle 26: sfq perturb 10
>>
>> tc class  add dev imq1 parent 2:2 classid 2:28 htb rate 16kbit ceil
>> 64kbit prio 5
>> tc filter add dev imq1 parent  2:0 protocol ip handle 3 fw classid 2:28
>> #tc qdisc  add dev imq1 parent 2:28 handle 28: sfq perturb 10
>>
>> tc  class  add dev imq1 parent  2:2 classid 2:333 htb rate 16kbit ceil
>> 128kbit prio 7
>> tc  qdisc  add dev imq1 parent  2:333 handle 333: sfq perturb 10
>>
>> echo "Done"
>>
>> #Priority 0
>> iptables -t mangle -I PREROUTING  -p icmp -j MARK --set-mark 5
>>
>> #Priority 1
>> iptables -t mangle -A PREROUTING  -i eth0  -p tcp --dport 3389  -j MARK
>> --set-mark 1
>> iptables -t mangle -A PREROUTING  -i eth0  -p tcp --sport 3389  -j MARK
>> --set-mark 1
>>
>> #Priority 2
>> iptables -t mangle -A PREROUTING  -i eth0  -p tcp --dport 25   -j MARK
>> --set-mark 2
>> iptables -t mangle -A PREROUTING  -i eth0  -p tcp --sport 25   -j MARK
>> --set-mark 2
>>
>> #Priority 3
>> iptables -t mangle -A PREROUTING  -i eth0  -p tcp --dport 80   -j MARK
>> --set-mark 3
>> iptables -t mangle -A PREROUTING  -i eth0  -p tcp --sport 80   -j MARK
>> --set-mark 3
>>
>>
>> #Priority 0
>> iptables -t mangle -I POSTROUTING  -p icmp -j MARK --set-mark 5
>>
>> #Priority 1
>> iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --dport 3389  -j MARK
>> --set-mark 1
>> iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --sport 3389  -j MARK
>> --set-mark 1
>>
>> #Priority 2
>> iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --dport 25   -j MARK
>> --set-mark 2
>> iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --sport 25   -j MARK
>> --set-mark 2
>>
>> #Priority 3
>> iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --dport 80   -j MARK
>> --set-mark 3
>> iptables -t mangle -A POSTROUTING  -i eth0  -p tcp --sport 80   -j MARK
>> --set-mark 3
>>
>> _______________________________________________
>> LARTC mailing list
>> LARTC@mailman.ds9a.nl
>> http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
>>
>
>  Microsoft: Where do you want to go tomorrow?
>  Linux: Where do you want to go today?
>  BSD: Are you guys coming, or what?
>
>
> Robin-David Hammond    KB3IEN
>     www.aresnyc.org.
>
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-02-14 21:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-02-14 20:35 [LARTC] Guarantee ICMP respond time ? Stanislav Nedelchev
2006-02-14 21:26 ` Stanislav Nedelchev

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.