Hello,
I have prepared tcng confiig (in attach) and was unpleasant surprised :-(
tcc -r meter.tcc did not make tc output.
It process just freezed and ate memory!
I checked with tcng manual - on my point - my config is right.
But not working...
tcng version is 9m.
Have anyone any ideas about it?
I need help...
Thank you in advance.
--
Sergey Sholokh
SSH75-RIPE
#include "fields.tc"
#include "ports.tc"
#include "meters.tc"
#define INTERFACE "eth0"
$net1 = ip_dst:24 == 10.1.0.0;
$net2 = ip_dst:24 == 10.2.0.0;
$net3 = ip_dst:24 == 10.3.0.0;
$net4 = ip_dst:24 == 10.4.0.0;
$net5 = ip_dst:24 == 10.5.0.0;
$net6 = ip_dst:24 == 10.6.0.0;
$net7 = ip_dst:24 == 10.7.0.0;
$net8 = ip_dst:24 == 10.8.0.0;
$net9 = ip_dst:24 == 10.8.0.0;
$net10 = ip_dst:24 == 10.8.0.0;
$net11 = ip_dst:24 == 10.8.0.0;
$net12 = (ip_dst:24 == 10.9.0.0 ||
ip_dst:24 == 10.10.0.0);
$speed = SLB (cir 1Mbps, cbs 100kB);
dev INTERFACE {
egress {
class (<$icmp>) if ip_proto == 1;
class (<$udp>) if ip_proto == 17;
class (<$interactive>) if (ip_tos_delay == 1 && (tcp_dport == 22 || tcp_sport == 22)) ||
(tcp_dport == 53 || udp_dport == 53) ||
(ip_len < 512 && tcp_dport == 80);
class (<$net1_class>) if $net1 && SLB_ok ($speed);
class (<$net2_class>) if $net2 && SLB_ok ($speed);
class (<$net3_class>) if $net3 && SLB_ok ($speed);
class (<$net4_class>) if $net4 && SLB_ok ($speed);
class (<$net5_class>) if $net5 && SLB_ok ($speed);
class (<$net6_class>) if $net6 && SLB_ok ($speed);
class (<$net7_class>) if $net7 && SLB_ok ($speed);
class (<$net8_class>) if $net8 && SLB_ok ($speed);
class (<$net9_class>) if $net9 && SLB_ok ($speed);
class (<$net10_class>) if $net10 && SLB_ok ($speed);
class (<$net11_class>) if $net11 && SLB_ok ($speed);
class (<$net12_class>) if $net12 && SLB_ok ($speed);
class (<$other>) if 1 && SLB_ok ($speed);
drop if SLB_else_drop ($speed);
/*-----------------------------------------------------------------------------------------------*/
htb (1) { class (2, rate 1Mbps) {
$net1_class = class (10, rate 128kbps, ceil 1Mbps, prio 3) {sfq (perturb 5s);};
$net2_class = class (11, rate 128kbps, ceil 768kbps, prio 3) {sfq (perturb 5s);};
$net3_class = class (12, rate 500kbps, ceil 768kbps, prio 3) {sfq (perturb 5s);};
$net4_class = class (13, rate 768kbps, ceil 1Mbps, prio 3) {sfq (perturb 5s);};
$net5_class = class (14, rate 384kbps, ceil 768kbps, prio 3) {sfq (perturb 5s);};
$net6_class = class (15, rate 384kbps, ceil 768kbps, prio 3) {sfq (perturb 5s);};
$net7_class = class (16, rate 384kbps, ceil 768kbps, prio 3) {sfq (perturb 5s);};
$net8_class = class (17, rate 300kbps, ceil 768kbps, prio 3) {sfq (perturb 5s);};
$net9_class = class (18, rate 384kbps, ceil 768kbps, prio 3) {sfq (perturb 5s);};
$net10_class = class (19, rate 384kbps, ceil 768kbps, prio 3) {sfq (perturb 5s);};
$net11_class = class (20, rate 256kbps, ceil 768kbps, prio 3) {sfq (perturb 5s);};
$net12_class = class (21, rate 384kbps, ceil 768kbps, prio 3) {sfq (perturb 5s);};
$other = class (90, rate 256kbps, ceil 256kbps, prio 7) {sfq (perturb 5s);};
prio {
$icmp = class { fifo (limit 100kB);};
$udp = class { fifo (limit 50kB);};
$interactive = class { fifo (limit 5kB);};
}
}}}}