Use more familiar HTB instead of TBF
[vsys.git] / factory / setup-link
index 1eedfab..6fb4b9e 100755 (executable)
@@ -4,29 +4,29 @@ IP=/sbin/ip
 
 SLICE=$1
 SLICEID=`id -u $SLICE`
-read LABEL
+read INDEX
 read REMOTE
 read KEY
 
-LINK=${LABEL}k$KEY
+LINK=${KEY}if${INDEX}
 
 modprobe ip_gre
 modprobe etun
 
 ### Setup EGRE tunnel
-EGRE=egre$LINK
+EGRE=d$LINK
 $IP tunnel add $EGRE  mode gre/eth remote $REMOTE key $KEY
 $IP link set $EGRE up
 
 ### Setup etun
-ETUN0=v$LINK
-ETUN1=etun$LINK
+ETUN0=a$LINK
+ETUN1=b$LINK
 echo $ETUN0,$ETUN1 > /sys/module/etun/parameters/newif
 ifconfig $ETUN0 mtu 1458 up
 ifconfig $ETUN1 up
 
 ### Setup bridge
-BRIDGE=br$LINK
+BRIDGE=c$LINK
 brctl addbr $BRIDGE
 brctl addif $BRIDGE $EGRE 
 brctl addif $BRIDGE $ETUN1
@@ -48,6 +48,24 @@ chcontext --ctx 1 -- echo \$PID > /sys/class/net/$ETUN0/new_ns_pid
 EOF
 chmod +x $GRAB
 
+### Create script for setting link rate
+BIND=/vsys/rate-$ETUN0
+echo $SLICE > $BIND.acl 
+rm -f $BIND
+cat > $BIND <<EOF
+#!/bin/sh
+
+read rt
+
+tc qdisc add dev $EGRE root handle 1: htb default 10
+tc class add dev $EGRE parent 1: classid 1:10 htb rate \$rt ceil \$rt
+
+rm -rf $BIND.acl 
+touch $BIND.acl 
+
+EOF
+chmod +x $BIND
+
 ### Create "delete link" script
 DELETE=/vsys/delete-$ETUN0
 echo $SLICE > $DELETE.acl 
@@ -73,8 +91,6 @@ ip tunnel del $EGRE
 # Clean up files
 rm -f $GRAB $GRAB.acl
 rm -f $DELETE $DELETE.acl
-
+rm -f $BIND $BIND.acl
 EOF
 chmod +x $DELETE
-
-