//Just to not forget eth0 is WAN and eth1 is LAN . The box is NATing my lan. I configured tcng to shape both download and upload and i got connection loss again. Maybe it is my script fault or it is something bad with packets marking . this is how i mark outgoing packets iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.23 -j MARK --set-mark $ip and this part of my script which is intented to shape upload: dev eth0 { egress { class (<$default>) if 1; htb ( r2q 1 ) { class ( rate 800kbps, ceil 800kbps ) { //192.168.1.0----------------------------------------------------------- $ruter = class ( rate 15kbps, ceil 250kbps ) { sfq( perturb 10secs, quantum 1500Bytes ); } ; fw { class $ruter on (23); //ruter--------------------------------------------------------------------- ---- //--------------------- fw }//fw }//main class }//htb }//egress }//eth0(none):/skrytpy# and these are a bit of `tc -s -d class show dev eth0` prints while connection loss after running my tcng script : class htb 2:f parent 2:1 leaf 10: prio 0 quantum 1875 rate 1875bps ceil 15000bps burst 1617b/8 mpu 0b cburst 1749b/8 mpu 0b level 0 Sent 0 bytes 0 pkts (dropped 0, overlimits 0) lended: 0 borrowed: 0 giants: 0 tokens: 706914 ctokens: 95572 class htb 2:1e parent 2:1 leaf 1f: prio 0 quantum 1875 rate 1875bps ceil 15000bps burst 1617b/8 mpu 0b cburst 1749b/8 mpu 0b level 0 Sent 0 bytes 0 pkts (dropped 0, overlimits 0) lended: 0 borrowed: 0 giants: 0 tokens: 706914 ctokens: 95572 class htb 2:2d parent 2:1 leaf 2e: prio 0 quantum 1875 rate 1875bps ceil 15000bps burst 1617b/8 mpu 0b cburst 1749b/8 mpu 0b level 0 Sent 0 bytes 0 pkts (dropped 0, overlimits 0) lended: 0 borrowed: 0 giants: 0 tokens: 706914 ctokens: 95572> that is interesting. let me know then. other test might be to > reboot with maxcpus=1 to mitigate smp related bugs. > > On Sat, 25 Jan 2003 mjoachimiak@poczta.onet.pl wrote: > > > Yes I''m using smp kernel. > > I thought that i make some error that i canot see so i decided to writemy> > classes using tcng this time. > > Currently i''m shaping only outgoing traffic to my local network(usingtcng)> > and it seems to work (it work one day without errors). > > Today i''m going to configure upload too. > > The difference i could see at once is that there is no connection losswhen> > i''m starting htb. > > ----- Original Message ----- > > From: "devik" <devik@cdi.cz> > > To: <mjoachimiak@poczta.onet.pl> > > Cc: "lartc" <lartc@mailman.ds9a.nl> > > Sent: Sunday, July 25, 2004 10:26 AM > > Subject: Re: [LARTC] Re: HTB 3.13 please help > > > > > > > From the stats is seems that no data are queued - as if nobody > > > is sending them. You are using smp kernel, is your box SMP ? > > > I haven''t seen many smp+htb boxes thus there might be possibility > > > of a bug... > > > devik > > > > > > On Thu, 23 Jan 2003 mjoachimiak@poczta.onet.pl wrote: > > > > > > > I''ve attached outputs for eth0 and eth1. > > > > I was trying to get this script running. I''ve added one class for my > > NATed > > > > BOX, and it helped. Shaping was stable almost one day but then iadded> > "prio > > > > 0" to eth0 filters and prio 0 for eth1 filters it has braken. So i > > removed > > > > every "prio 0" and reboot the box but it didnt helped :(. > > > > I''ve noticed that when the traffic is not much (14 hosts from 50 areup)> > > > tc/htb works very well. > > > > If you want new version of my script say a word. > > > > ----- Original Message ----- > > > > From: "devik" <devik@cdi.cz> > > > > To: <mjoachimiak@poczta.onet.pl> > > > > Sent: Thursday, July 22, 2004 3:48 PM > > > > Subject: Re: HTB 3.13 please help > > > > > > > > > > > > > I need > > > > > tc -s -d class show dev xxx > > > > > output during that non-working period. 3.6 is older than 3.13. > > > > > > > > > > ------------------------------- > > > > > Martin Devera aka devik > > > > > Linux kernel QoS/HTB maintainer > > > > > http://luxik.cdi.cz/~devik/ > > > > > > > > > > On Wed, 21 Jul 2004 mjoachimiak@poczta.onet.pl wrote: > > > > > > > > > > > Thanks for your reply. I''ve recent put my problem on lartc list.I''m> > > > using > > > > > > htb 3.13 in 2-4-25smp. > > > > > > I wonder if upgrade to 3.6 will help? Could you be so kind andtake> > a > > > > look > > > > > > at it. I''ll be grateful. > > > > > > If you have no time for me i''ll understand and try to resolve itfor> > > > myself. > > > > > > Thanks. > > > > > > > > > > > > Hello everybody! > > > > > > Since week i dig lists and www and can''t find solution for my > > problem. > > > > > > I''m using HTB 3.13 kernel 2-4-25 smp iptables 1.2.9. > > > > > > I''ve got situation like this: > > > > > > > > > > > > LAN------Linux Box(routing only)------- Linux Box > > > > > > (HTB)--------------Hardware Router(say:HD)------Internet > > > > > > When I start HTB it takes about 5 min. to start working and it > > works... > > > > > > within this 5min starting i can''t ping HD and after about 5min I > > start > > > > > > pinging. It works like this for cuple of hours, then something > > strange > > > > is > > > > > > happening. Ping stops, www doesn''t work but radio (36kbps) (from > > > > clients) > > > > > > works. There is no ping at all for about 1min and it startspinging> > for > > > > > > about 2-3min and it stops for 1-2min and so on..... > > > > > > When I stop HTB ping starts. It''s look like HTB is filled to > > much(sorry > > > > for > > > > > > my english :/) > > > > > > All my children classes rate doesn''t exceeds root classes. Ihave 50> > > > classes > > > > > > on 900kbit-10kbit(for default class) - downstream and800-10kbit(for> > > > > > default) up. > > > > > > I shape bandwidth matching ip. r2q is set to 1 . no erros during > > doing > > > > shape > > > > > > script. > > > > > > I''m attaching this script > > > > > > in ip1 is file where are written ip''s for C classes. > > > > > > > > > > > > I''m including my script. > > > > > > ---------------------------------------------------cut > > > > > > > > > > > >here -----------------------------------------------------------------------> > > > > > ------------ > > > > > > #!/bin/bash > > > > > > #x=$[100/20] > > > > > > #echo "$1" > /skrytpy/status > > > > > > rxmax=900 #WAN max transfer -down (physically it is960kbit/960kbit)> > > > > > kbit=kbit > > > > > > rxmaxluser=250 > > > > > > txmax=800 #WAN max transfer - up > > > > > > txmaxluser=100 > > > > > > #counting users > > > > > > # ip1 file is like this: > > > > > > # 11 #Somebody > > > > > > # 23 #Somebody II > > > > > > #EOF > > > > > > licznik=0 > > > > > > for x in $(awk ''{ print $1 }'' /skrytpy/ip1); do > > > > > > licznik=$[$licznik+1] > > > > > > done > > > > > > > > > > > > > > > > > > #Server > > > > > > licznik=$[$licznik+1] > > > > > > #plus router > > > > > > licznik=$[$licznik+1] > > > > > > > > > > > > echo number of users to $licznik > > > > > > #counting rate > > > > > > rx1=$[$rxmax-10] > > > > > > tx1=$[$txmax-10] # dla klasy domyslnej > > > > > > rxmin=$[$rx1/$licznik] > > > > > > txmin=$[$tx1/$licznik] > > > > > > echo rx $rxmin tx $txmin > > > > > > #echo $rxmin > > > > > > #root classes > > > > > > #rx > > > > > > tc qdisc del root dev eth1 > > > > > > tc qdisc add dev eth1 root handle 1:0 htb r2q 1 default 2 > > > > > > tc class add dev eth1 parent 1:0 classid 1:1 htb rate$rxmax$kbit> > ceil > > > > > > $rxmax$kbit > > > > > > #tx > > > > > > tc qdisc del root dev eth0 > > > > > > tc qdisc add dev eth0 root handle 2:0 htb r2q 1 default 4 > > > > > > tc class add dev eth0 parent 2:0 classid 2:1 htb rate$txmax$kbit> > ceil > > > > > > $txmax$kbit > > > > > > #r="$rxmax$kbit" > > > > > > #default classes > > > > > > #rx > > > > > > tc class add dev eth1 parent 1:1 classid 1:2 htb rate 10kbitceil> > 10kbit > > > > > > #tx > > > > > > tc class add dev eth0 parent 2:1 classid 2:4 htb rate 10kbitceil> > 10kbit > > > > > > > > > > #siec 1.0 > > > > > > siec=1 > > > > > > for ip in $(awk ''{ print $1 }'' /skrytpy/ip1); do > > > > > > echo -n "$ip " > > > > > > #rx > > > > > > tc class add dev eth1 parent 1:1 classid 1:$ip htb rate$rxmin$kbit> > ceil > > > > > > $rxmaxluser$kbit > > > > > > tc filter add dev eth1 protocol ip parent 1:0 u32 match ip dst > > > > > > 192.168.$siec.$ip flowid 1:$ip > > > > > > tc qdisc add dev eth1 parent 1:$ip handle $ip:0 sfq perturb 10 > > > > > > #tx > > > > > > #marking packets > > > > > > iptables -t mangle -A MYSHAPER-OUT -p tcp -s192.168.$siec.$ip -j> > > > > > MARK --set-mark $ip > > > > > > #tc > > > > > > tc class add dev eth0 parent 2:1 classid 2:$ip htb rate$txmin$kbit> > ceil > > > > > > $txmaxluser$kbit > > > > > > #filtering by mark > > > > > > tc filter add dev eth0 protocol ip preference 1 parent 2:0handle> > $ip fw > > > > > > flowid 2:$ip > > > > > > tc qdisc add dev eth0 parent 2:$ip handle $ip:1 sfq perturb 10 > > > > > > done > > > > > > echo "" > > > > > > > > > > > > > > --------------------------------------------------------------------cut > > > > > > > > here ------------------------------------------------------------------ > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > LARTC mailing list / LARTC@mailman.ds9a.nl > > > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/ > > > > _______________________________________________ > > LARTC mailing list / LARTC@mailman.ds9a.nl > > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/ > > > > >_______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
as you can see, NO packets are going thru. You have to look to other classes as well as to ifconfig and tc -s qdisc show dev xxx to see wherw packets are lost. On Wed, 28 Jul 2004 mjoachimiak@poczta.onet.pl wrote:> //Just to not forget eth0 is WAN and eth1 is LAN . The box is NATing my lan. > I configured tcng to shape both download and upload > and i got connection loss again. > Maybe it is my script fault or it is something bad with packets marking . > this is how i mark outgoing packets > iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.23 -j MARK --set-mark > $ip > > and this part of my script which is intented to shape upload: > dev eth0 { > egress { > class (<$default>) if 1; > htb ( r2q 1 ) { > class ( rate 800kbps, ceil 800kbps ) { > > //192.168.1.0----------------------------------------------------------- > $ruter = class ( rate 15kbps, ceil 250kbps ) { sfq( perturb 10secs, > quantum 1500Bytes ); } ; > fw { > > class $ruter on (23); > //ruter--------------------------------------------------------------------- > ---- > > > //--------------------- fw > }//fw > }//main class > }//htb > }//egress > }//eth0(none):/skrytpy# > > and these are a bit of `tc -s -d class show dev eth0` prints while > connection loss after running my tcng script : > > class htb 2:f parent 2:1 leaf 10: prio 0 quantum 1875 rate 1875bps ceil > 15000bps burst 1617b/8 mpu 0b cburst 1749b/8 mpu 0b level 0 > Sent 0 bytes 0 pkts (dropped 0, overlimits 0) > lended: 0 borrowed: 0 giants: 0 > tokens: 706914 ctokens: 95572 > > class htb 2:1e parent 2:1 leaf 1f: prio 0 quantum 1875 rate 1875bps ceil > 15000bps burst 1617b/8 mpu 0b cburst 1749b/8 mpu 0b level 0 > Sent 0 bytes 0 pkts (dropped 0, overlimits 0) > lended: 0 borrowed: 0 giants: 0 > tokens: 706914 ctokens: 95572 > > class htb 2:2d parent 2:1 leaf 2e: prio 0 quantum 1875 rate 1875bps ceil > 15000bps burst 1617b/8 mpu 0b cburst 1749b/8 mpu 0b level 0 > Sent 0 bytes 0 pkts (dropped 0, overlimits 0) > lended: 0 borrowed: 0 giants: 0 > tokens: 706914 ctokens: 95572 > > > > that is interesting. let me know then. other test might be to > > reboot with maxcpus=1 to mitigate smp related bugs. > > > > On Sat, 25 Jan 2003 mjoachimiak@poczta.onet.pl wrote: > > > > > Yes I''m using smp kernel. > > > I thought that i make some error that i canot see so i decided to write > my > > > classes using tcng this time. > > > Currently i''m shaping only outgoing traffic to my local network(using > tcng) > > > and it seems to work (it work one day without errors). > > > Today i''m going to configure upload too. > > > The difference i could see at once is that there is no connection loss > when > > > i''m starting htb. > > > ----- Original Message ----- > > > From: "devik" <devik@cdi.cz> > > > To: <mjoachimiak@poczta.onet.pl> > > > Cc: "lartc" <lartc@mailman.ds9a.nl> > > > Sent: Sunday, July 25, 2004 10:26 AM > > > Subject: Re: [LARTC] Re: HTB 3.13 please help > > > > > > > > > > From the stats is seems that no data are queued - as if nobody > > > > is sending them. You are using smp kernel, is your box SMP ? > > > > I haven''t seen many smp+htb boxes thus there might be possibility > > > > of a bug... > > > > devik > > > > > > > > On Thu, 23 Jan 2003 mjoachimiak@poczta.onet.pl wrote: > > > > > > > > > I''ve attached outputs for eth0 and eth1. > > > > > I was trying to get this script running. I''ve added one class for my > > > NATed > > > > > BOX, and it helped. Shaping was stable almost one day but then i > added > > > "prio > > > > > 0" to eth0 filters and prio 0 for eth1 filters it has braken. So i > > > removed > > > > > every "prio 0" and reboot the box but it didnt helped :(. > > > > > I''ve noticed that when the traffic is not much (14 hosts from 50 are > up) > > > > > tc/htb works very well. > > > > > If you want new version of my script say a word. > > > > > ----- Original Message ----- > > > > > From: "devik" <devik@cdi.cz> > > > > > To: <mjoachimiak@poczta.onet.pl> > > > > > Sent: Thursday, July 22, 2004 3:48 PM > > > > > Subject: Re: HTB 3.13 please help > > > > > > > > > > > > > > > > I need > > > > > > tc -s -d class show dev xxx > > > > > > output during that non-working period. 3.6 is older than 3.13. > > > > > > > > > > > > ------------------------------- > > > > > > Martin Devera aka devik > > > > > > Linux kernel QoS/HTB maintainer > > > > > > http://luxik.cdi.cz/~devik/ > > > > > > > > > > > > On Wed, 21 Jul 2004 mjoachimiak@poczta.onet.pl wrote: > > > > > > > > > > > > > Thanks for your reply. I''ve recent put my problem on lartc list. > I''m > > > > > using > > > > > > > htb 3.13 in 2-4-25smp. > > > > > > > I wonder if upgrade to 3.6 will help? Could you be so kind and > take > > > a > > > > > look > > > > > > > at it. I''ll be grateful. > > > > > > > If you have no time for me i''ll understand and try to resolve it > for > > > > > myself. > > > > > > > Thanks. > > > > > > > > > > > > > > Hello everybody! > > > > > > > Since week i dig lists and www and can''t find solution for my > > > problem. > > > > > > > I''m using HTB 3.13 kernel 2-4-25 smp iptables 1.2.9. > > > > > > > I''ve got situation like this: > > > > > > > > > > > > > > LAN------Linux Box(routing only)------- Linux Box > > > > > > > (HTB)--------------Hardware Router(say:HD)------Internet > > > > > > > When I start HTB it takes about 5 min. to start working and it > > > works... > > > > > > > within this 5min starting i can''t ping HD and after about 5min I > > > start > > > > > > > pinging. It works like this for cuple of hours, then something > > > strange > > > > > is > > > > > > > happening. Ping stops, www doesn''t work but radio (36kbps) (from > > > > > clients) > > > > > > > works. There is no ping at all for about 1min and it starts > pinging > > > for > > > > > > > about 2-3min and it stops for 1-2min and so on..... > > > > > > > When I stop HTB ping starts. It''s look like HTB is filled to > > > much(sorry > > > > > for > > > > > > > my english :/) > > > > > > > All my children classes rate doesn''t exceeds root classes. I > have 50 > > > > > classes > > > > > > > on 900kbit-10kbit(for default class) - downstream and > 800-10kbit(for > > > > > > > default) up. > > > > > > > I shape bandwidth matching ip. r2q is set to 1 . no erros during > > > doing > > > > > shape > > > > > > > script. > > > > > > > I''m attaching this script > > > > > > > in ip1 is file where are written ip''s for C classes. > > > > > > > > > > > > > > I''m including my script. > > > > > > > ---------------------------------------------------cut > > > > > > > > > > > > > > > > here ----------------------------------------------------------------------- > > > > > > > ------------ > > > > > > > #!/bin/bash > > > > > > > #x=$[100/20] > > > > > > > #echo "$1" > /skrytpy/status > > > > > > > rxmax=900 #WAN max transfer -down (physically it is > 960kbit/960kbit) > > > > > > > kbit=kbit > > > > > > > rxmaxluser=250 > > > > > > > txmax=800 #WAN max transfer - up > > > > > > > txmaxluser=100 > > > > > > > #counting users > > > > > > > # ip1 file is like this: > > > > > > > # 11 #Somebody > > > > > > > # 23 #Somebody II > > > > > > > #EOF > > > > > > > licznik=0 > > > > > > > for x in $(awk ''{ print $1 }'' /skrytpy/ip1); do > > > > > > > licznik=$[$licznik+1] > > > > > > > done > > > > > > > > > > > > > > > > > > > > > #Server > > > > > > > licznik=$[$licznik+1] > > > > > > > #plus router > > > > > > > licznik=$[$licznik+1] > > > > > > > > > > > > > > echo number of users to $licznik > > > > > > > #counting rate > > > > > > > rx1=$[$rxmax-10] > > > > > > > tx1=$[$txmax-10] # dla klasy domyslnej > > > > > > > rxmin=$[$rx1/$licznik] > > > > > > > txmin=$[$tx1/$licznik] > > > > > > > echo rx $rxmin tx $txmin > > > > > > > #echo $rxmin > > > > > > > #root classes > > > > > > > #rx > > > > > > > tc qdisc del root dev eth1 > > > > > > > tc qdisc add dev eth1 root handle 1:0 htb r2q 1 default 2 > > > > > > > tc class add dev eth1 parent 1:0 classid 1:1 htb rate > $rxmax$kbit > > > ceil > > > > > > > $rxmax$kbit > > > > > > > #tx > > > > > > > tc qdisc del root dev eth0 > > > > > > > tc qdisc add dev eth0 root handle 2:0 htb r2q 1 default 4 > > > > > > > tc class add dev eth0 parent 2:0 classid 2:1 htb rate > $txmax$kbit > > > ceil > > > > > > > $txmax$kbit > > > > > > > #r="$rxmax$kbit" > > > > > > > #default classes > > > > > > > #rx > > > > > > > tc class add dev eth1 parent 1:1 classid 1:2 htb rate 10kbit > ceil > > > 10kbit > > > > > > > #tx > > > > > > > tc class add dev eth0 parent 2:1 classid 2:4 htb rate 10kbit > ceil > > > 10kbit > > > > > > > > > > > > #siec 1.0 > > > > > > > siec=1 > > > > > > > for ip in $(awk ''{ print $1 }'' /skrytpy/ip1); do > > > > > > > echo -n "$ip " > > > > > > > #rx > > > > > > > tc class add dev eth1 parent 1:1 classid 1:$ip htb rate > $rxmin$kbit > > > ceil > > > > > > > $rxmaxluser$kbit > > > > > > > tc filter add dev eth1 protocol ip parent 1:0 u32 match ip dst > > > > > > > 192.168.$siec.$ip flowid 1:$ip > > > > > > > tc qdisc add dev eth1 parent 1:$ip handle $ip:0 sfq perturb 10 > > > > > > > #tx > > > > > > > #marking packets > > > > > > > iptables -t mangle -A MYSHAPER-OUT -p tcp -s > 192.168.$siec.$ip -j > > > > > > > MARK --set-mark $ip > > > > > > > #tc > > > > > > > tc class add dev eth0 parent 2:1 classid 2:$ip htb rate > $txmin$kbit > > > ceil > > > > > > > $txmaxluser$kbit > > > > > > > #filtering by mark > > > > > > > tc filter add dev eth0 protocol ip preference 1 parent 2:0 > handle > > > $ip fw > > > > > > > flowid 2:$ip > > > > > > > tc qdisc add dev eth0 parent 2:$ip handle $ip:1 sfq perturb 10 > > > > > > > done > > > > > > > echo "" > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------cut > > > > > > > > > > here ------------------------------------------------------------------ > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > > LARTC mailing list / LARTC@mailman.ds9a.nl > > > > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/ > > > > > > _______________________________________________ > > > LARTC mailing list / LARTC@mailman.ds9a.nl > > > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/ > > > > > > > > > > >_______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
oops. I took bad classes (these clients where down so there was no traffic ) lately from tc -s -d class show dev eth0. These are classes (part of) while there was no connection from clients. BTW is it good tcng config with "fw". I mean if fw { class $classname on (2); } means "match packet to $classname if it''s mark equals 2" ? Is there any kind of sniffer or smth like that for tc? I mean to look in realtime packet statistics. Smthing like iptraf maybe? class htb 2:1 root rate 800Kbit ceil 800Kbit burst 2623b/8 mpu 0b cburst 2623b/8 mpu 0b level 7 Sent 21958200 bytes 38721 pkts (dropped 0, overlimits 0) rate 47328bps 68pps lended: 22026 borrowed: 0 giants: 0 tokens: 20609 ctokens: 20609 class htb 2:10 parent 2:1 leaf 10: prio 0 quantum 1920 rate 15Kbit ceil 100Kbit burst 1618b/8 mpu 0b cburst 1727b/8 mpu 0b level 0 Sent 0 bytes 0 pkts (dropped 0, overlimits 0) lended: 0 borrowed: 0 giants: 0 tokens: 690773 ctokens: 110592 class htb 2:23 parent 2:1 leaf 23: prio 0 quantum 1920 rate 15Kbit ceil 100Kbit burst 1618b/8 mpu 0b cburst 1727b/8 mpu 0b level 0 Sent 2490197 bytes 3069 pkts (dropped 0, overlimits 0) rate 5157bps 5pps lended: 1015 borrowed: 2054 giants: 0 tokens: -475203 ctokens: -30720 class htb 2:32 parent 2:1 leaf 32: prio 0 quantum 1920 rate 15Kbit ceil 100Kbit burst 1618b/8 mpu 0b cburst 1727b/8 mpu 0b level 0 Sent 476682 bytes 1633 pkts (dropped 0, overlimits 0) rate 661bps 2pps lended: 745 borrowed: 888 giants: 0 tokens: -235603 ctokens: 107520 class htb 2:54 parent 2:1 leaf 54: prio 0 quantum 1920 rate 15Kbit ceil 20Kbit burst 1618b/8 mpu 0b cburst 1624b/8 mpu 0b level 0 Sent 0 bytes 0 pkts (dropped 0, overlimits 0) lended: 0 borrowed: 0 giants: 0 tokens: 690773 ctokens: 519999 class htb 2:20 parent 2:1 leaf 20: prio 0 quantum 1920 rate 15Kbit ceil 100Kbit burst 1618b/8 mpu 0b cburst 1727b/8 mpu 0b level 0 Sent 108 bytes 2 pkts (dropped 0, overlimits 0) lended: 2 borrowed: 0 giants: 0 tokens: 649813 ctokens: 104448 ----- Original Message ----- From: "devik" <devik@cdi.cz> To: <mjoachimiak@poczta.onet.pl> Cc: "lartc" <lartc@mailman.ds9a.nl> Sent: Wednesday, July 28, 2004 3:30 PM Subject: Re: [LARTC] Re: HTB 3.13 please help> as you can see, NO packets are going thru. You have to look > to other classes as well as to ifconfig and tc -s qdisc show dev xxx > to see wherw packets are lost. > > > On Wed, 28 Jul 2004 mjoachimiak@poczta.onet.pl wrote: > > > //Just to not forget eth0 is WAN and eth1 is LAN . The box is NATing mylan.> > I configured tcng to shape both download and upload > > and i got connection loss again. > > Maybe it is my script fault or it is something bad with packets marking.> > this is how i mark outgoing packets > > iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.23 -jMARK --set-mark> > $ip > > > > and this part of my script which is intented to shape upload: > > dev eth0 { > > egress { > > class (<$default>) if 1; > > htb ( r2q 1 ) { > > class ( rate 800kbps, ceil 800kbps ) { > > > > //192.168.1.0----------------------------------------------------------- > > $ruter = class ( rate 15kbps, ceil 250kbps ) { sfq( perturb10secs,> > quantum 1500Bytes ); } ; > > fw { > > > > class $ruter on (23); > >//ruter---------------------------------------------------------------------> > ---- > > > > > > //--------------------- fw > > }//fw > > }//main class > > }//htb > > }//egress > > }//eth0(none):/skrytpy# > > > > and these are a bit of `tc -s -d class show dev eth0` prints while > > connection loss after running my tcng script : > > > > class htb 2:f parent 2:1 leaf 10: prio 0 quantum 1875 rate 1875bps ceil > > 15000bps burst 1617b/8 mpu 0b cburst 1749b/8 mpu 0b level 0 > > Sent 0 bytes 0 pkts (dropped 0, overlimits 0) > > lended: 0 borrowed: 0 giants: 0 > > tokens: 706914 ctokens: 95572 > > > > class htb 2:1e parent 2:1 leaf 1f: prio 0 quantum 1875 rate 1875bps ceil > > 15000bps burst 1617b/8 mpu 0b cburst 1749b/8 mpu 0b level 0 > > Sent 0 bytes 0 pkts (dropped 0, overlimits 0) > > lended: 0 borrowed: 0 giants: 0 > > tokens: 706914 ctokens: 95572 > > > > class htb 2:2d parent 2:1 leaf 2e: prio 0 quantum 1875 rate 1875bps ceil > > 15000bps burst 1617b/8 mpu 0b cburst 1749b/8 mpu 0b level 0 > > Sent 0 bytes 0 pkts (dropped 0, overlimits 0) > > lended: 0 borrowed: 0 giants: 0 > > tokens: 706914 ctokens: 95572 > > > > > > > that is interesting. let me know then. other test might be to > > > reboot with maxcpus=1 to mitigate smp related bugs. > > > > > > On Sat, 25 Jan 2003 mjoachimiak@poczta.onet.pl wrote: > > > > > > > Yes I''m using smp kernel. > > > > I thought that i make some error that i canot see so i decided towrite> > my > > > > classes using tcng this time. > > > > Currently i''m shaping only outgoing traffic to my localnetwork(using> > tcng) > > > > and it seems to work (it work one day without errors). > > > > Today i''m going to configure upload too. > > > > The difference i could see at once is that there is no connectionloss> > when > > > > i''m starting htb. > > > > ----- Original Message ----- > > > > From: "devik" <devik@cdi.cz> > > > > To: <mjoachimiak@poczta.onet.pl> > > > > Cc: "lartc" <lartc@mailman.ds9a.nl> > > > > Sent: Sunday, July 25, 2004 10:26 AM > > > > Subject: Re: [LARTC] Re: HTB 3.13 please help > > > > > > > > > > > > > From the stats is seems that no data are queued - as if nobody > > > > > is sending them. You are using smp kernel, is your box SMP ? > > > > > I haven''t seen many smp+htb boxes thus there might be possibility > > > > > of a bug... > > > > > devik > > > > > > > > > > On Thu, 23 Jan 2003 mjoachimiak@poczta.onet.pl wrote: > > > > > > > > > > > I''ve attached outputs for eth0 and eth1. > > > > > > I was trying to get this script running. I''ve added one classfor my> > > > NATed > > > > > > BOX, and it helped. Shaping was stable almost one day but then i > > added > > > > "prio > > > > > > 0" to eth0 filters and prio 0 for eth1 filters it has braken. Soi> > > > removed > > > > > > every "prio 0" and reboot the box but it didnt helped :(. > > > > > > I''ve noticed that when the traffic is not much (14 hosts from 50are> > up) > > > > > > tc/htb works very well. > > > > > > If you want new version of my script say a word. > > > > > > ----- Original Message ----- > > > > > > From: "devik" <devik@cdi.cz> > > > > > > To: <mjoachimiak@poczta.onet.pl> > > > > > > Sent: Thursday, July 22, 2004 3:48 PM > > > > > > Subject: Re: HTB 3.13 please help > > > > > > > > > > > > > > > > > > > I need > > > > > > > tc -s -d class show dev xxx > > > > > > > output during that non-working period. 3.6 is older than 3.13. > > > > > > > > > > > > > > ------------------------------- > > > > > > > Martin Devera aka devik > > > > > > > Linux kernel QoS/HTB maintainer > > > > > > > http://luxik.cdi.cz/~devik/ > > > > > > > > > > > > > > On Wed, 21 Jul 2004 mjoachimiak@poczta.onet.pl wrote: > > > > > > > > > > > > > > > Thanks for your reply. I''ve recent put my problem on lartclist.> > I''m > > > > > > using > > > > > > > > htb 3.13 in 2-4-25smp. > > > > > > > > I wonder if upgrade to 3.6 will help? Could you be so kindand> > take > > > > a > > > > > > look > > > > > > > > at it. I''ll be grateful. > > > > > > > > If you have no time for me i''ll understand and try toresolve it> > for > > > > > > myself. > > > > > > > > Thanks. > > > > > > > > > > > > > > > > Hello everybody! > > > > > > > > Since week i dig lists and www and can''t find solution formy> > > > problem. > > > > > > > > I''m using HTB 3.13 kernel 2-4-25 smp iptables 1.2.9. > > > > > > > > I''ve got situation like this: > > > > > > > > > > > > > > > > LAN------Linux Box(routing only)------- Linux Box > > > > > > > > (HTB)--------------Hardware Router(say:HD)------Internet > > > > > > > > When I start HTB it takes about 5 min. to start working andit> > > > works... > > > > > > > > within this 5min starting i can''t ping HD and after about5min I> > > > start > > > > > > > > pinging. It works like this for cuple of hours, thensomething> > > > strange > > > > > > is > > > > > > > > happening. Ping stops, www doesn''t work but radio (36kbps)(from> > > > > > clients) > > > > > > > > works. There is no ping at all for about 1min and it starts > > pinging > > > > for > > > > > > > > about 2-3min and it stops for 1-2min and so on..... > > > > > > > > When I stop HTB ping starts. It''s look like HTB is filled to > > > > much(sorry > > > > > > for > > > > > > > > my english :/) > > > > > > > > All my children classes rate doesn''t exceeds root classes. I > > have 50 > > > > > > classes > > > > > > > > on 900kbit-10kbit(for default class) - downstream and > > 800-10kbit(for > > > > > > > > default) up. > > > > > > > > I shape bandwidth matching ip. r2q is set to 1 . no errosduring> > > > doing > > > > > > shape > > > > > > > > script. > > > > > > > > I''m attaching this script > > > > > > > > in ip1 is file where are written ip''s for C classes. > > > > > > > > > > > > > > > > I''m including my script. > > > > > > > > ---------------------------------------------------cut > > > > > > > > > > > > > > > > > > > >here -----------------------------------------------------------------------> > > > > > > > ------------ > > > > > > > > #!/bin/bash > > > > > > > > #x=$[100/20] > > > > > > > > #echo "$1" > /skrytpy/status > > > > > > > > rxmax=900 #WAN max transfer -down (physically it is > > 960kbit/960kbit) > > > > > > > > kbit=kbit > > > > > > > > rxmaxluser=250 > > > > > > > > txmax=800 #WAN max transfer - up > > > > > > > > txmaxluser=100 > > > > > > > > #counting users > > > > > > > > # ip1 file is like this: > > > > > > > > # 11 #Somebody > > > > > > > > # 23 #Somebody II > > > > > > > > #EOF > > > > > > > > licznik=0 > > > > > > > > for x in $(awk ''{ print $1 }'' /skrytpy/ip1); do > > > > > > > > licznik=$[$licznik+1] > > > > > > > > done > > > > > > > > > > > > > > > > > > > > > > > > #Server > > > > > > > > licznik=$[$licznik+1] > > > > > > > > #plus router > > > > > > > > licznik=$[$licznik+1] > > > > > > > > > > > > > > > > echo number of users to $licznik > > > > > > > > #counting rate > > > > > > > > rx1=$[$rxmax-10] > > > > > > > > tx1=$[$txmax-10] # dla klasy domyslnej > > > > > > > > rxmin=$[$rx1/$licznik] > > > > > > > > txmin=$[$tx1/$licznik] > > > > > > > > echo rx $rxmin tx $txmin > > > > > > > > #echo $rxmin > > > > > > > > #root classes > > > > > > > > #rx > > > > > > > > tc qdisc del root dev eth1 > > > > > > > > tc qdisc add dev eth1 root handle 1:0 htb r2q 1 default 2 > > > > > > > > tc class add dev eth1 parent 1:0 classid 1:1 htb rate > > $rxmax$kbit > > > > ceil > > > > > > > > $rxmax$kbit > > > > > > > > #tx > > > > > > > > tc qdisc del root dev eth0 > > > > > > > > tc qdisc add dev eth0 root handle 2:0 htb r2q 1 default 4 > > > > > > > > tc class add dev eth0 parent 2:0 classid 2:1 htb rate > > $txmax$kbit > > > > ceil > > > > > > > > $txmax$kbit > > > > > > > > #r="$rxmax$kbit" > > > > > > > > #default classes > > > > > > > > #rx > > > > > > > > tc class add dev eth1 parent 1:1 classid 1:2 htb rate 10kbit > > ceil > > > > 10kbit > > > > > > > > #tx > > > > > > > > tc class add dev eth0 parent 2:1 classid 2:4 htb rate 10kbit > > ceil > > > > 10kbit > > > > > > > > > > > > > > #siec 1.0 > > > > > > > > siec=1 > > > > > > > > for ip in $(awk ''{ print $1 }'' /skrytpy/ip1); do > > > > > > > > echo -n "$ip " > > > > > > > > #rx > > > > > > > > tc class add dev eth1 parent 1:1 classid 1:$ip htb rate > > $rxmin$kbit > > > > ceil > > > > > > > > $rxmaxluser$kbit > > > > > > > > tc filter add dev eth1 protocol ip parent 1:0 u32 match ipdst> > > > > > > > 192.168.$siec.$ip flowid 1:$ip > > > > > > > > tc qdisc add dev eth1 parent 1:$ip handle $ip:0 sfq perturb10> > > > > > > > #tx > > > > > > > > #marking packets > > > > > > > > iptables -t mangle -A MYSHAPER-OUT -p tcp -s > > 192.168.$siec.$ip -j > > > > > > > > MARK --set-mark $ip > > > > > > > > #tc > > > > > > > > tc class add dev eth0 parent 2:1 classid 2:$ip htb rate > > $txmin$kbit > > > > ceil > > > > > > > > $txmaxluser$kbit > > > > > > > > #filtering by mark > > > > > > > > tc filter add dev eth0 protocol ip preference 1 parent 2:0 > > handle > > > > $ip fw > > > > > > > > flowid 2:$ip > > > > > > > > tc qdisc add dev eth0 parent 2:$ip handle $ip:1 sfq perturb10> > > > > > > > done > > > > > > > > echo "" > > > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------cut > > > > > > > > > > > >here ------------------------------------------------------------------> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > > > LARTC mailing list / LARTC@mailman.ds9a.nl > > > > > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO:http://lartc.org/> > > > > > > > _______________________________________________ > > > > LARTC mailing list / LARTC@mailman.ds9a.nl > > > > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO:http://lartc.org/> > > > > > > > > > > > > > > > > > > _______________________________________________ > LARTC mailing list / LARTC@mailman.ds9a.nl > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/_______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
Hello Devik! Thanks for your help. And many thanks to everybody from the group who has been thinking on my problem. It seems i resolved my problem - there is no connection loss while reseting htb, but I''ll be observing it''s stability in a few days. I have no words to write what a STUPID mistake it was. As i suposed it was conected with packet marking. I''ve been using this command to mark packets: iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.0.2 -j MARK --set-mark $mark BUT when configuring tcng i looked at my marking script "what the heck??, Internet is not only tcp! Isn''t it?" I removed "-p tcp" and now it works. Yes it was really BAD and took me too much time ggrrrrrrr. Good luck folks. _______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/