From 2336dcbbbd6220f01d840c7eb7eaa699f2a0f8d9 Mon Sep 17 00:00:00 2001 From: Razvan Deaconescu Date: Sat, 31 Jul 2010 14:23:19 +0300 Subject: [PATCH] ControlScripts: fix problem of issuing multiple tc commands on same physical interface (eth0); use container id for classid and flowid identification/isolation --- ControlScripts/bw_limit_ct.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ControlScripts/bw_limit_ct.sh b/ControlScripts/bw_limit_ct.sh index e61633f..939b776 100755 --- a/ControlScripts/bw_limit_ct.sh +++ b/ControlScripts/bw_limit_ct.sh @@ -89,8 +89,8 @@ start() { # For detailed configuration options, please consult Linux man # page. $SSH "$TC qdisc add dev $EGRESS_IF root handle 1: htb default 90" - $SSH "$TC class add dev $EGRESS_IF parent 1: classid 1:1 htb rate $UPLD ceil $UPLD burst $UP_BURST" - $SSH "$TC filter add dev $EGRESS_IF protocol ip parent 1:0 prio 1 u32 match ip src $IP_ADDRESS/32 flowid 1:1" + $SSH "$TC class add dev $EGRESS_IF parent 1: classid 1:$CTID htb rate $UPLD ceil $UPLD burst $UP_BURST" + $SSH "$TC filter add dev $EGRESS_IF protocol ip parent 1:0 prio 1 u32 match ip src $IP_ADDRESS/32 flowid 1:$CTID" # The first line creates the root qdisc, and next one creates a # child qdisc that are to be used to shape download and upload bandwidth. @@ -100,8 +100,8 @@ start() { # Add the ingress limitation - use virtual Ethernet interface $SSH "$TC qdisc add dev $INGRESS_IF root handle 1: htb default 90" - $SSH "$TC class add dev $INGRESS_IF parent 1: classid 1:1 htb rate $DNLD ceil $DNLD burst $DL_BURST" - $SSH "$TC filter add dev $INGRESS_IF protocol ip parent 1:0 prio 1 u32 match ip dst $IP_ADDRESS/32 flowid 1:1" + $SSH "$TC class add dev $INGRESS_IF parent 1: classid 1:$CTID htb rate $DNLD ceil $DNLD burst $DL_BURST" + $SSH "$TC filter add dev $INGRESS_IF protocol ip parent 1:0 prio 1 u32 match ip dst $IP_ADDRESS/32 flowid 1:$CTID" #$SSH "$TC qdisc add dev $INGRESS_IF ingress handle ffff:0" # Attach a filter to the ingress qdisc #$SSH "$TC filter add dev $INGRESS_IF protocol ip parent ffff:0 prio 1 u32 match ip src 0.0.0.0/0 police rate $DNLD burst $DL_BURST action drop flowid 0:1" -- 2.20.1