then
echo $0 running in MPLS + IP mode
echo Make sure the kernel is patched with dsmpls+ip.patch
else
echo $0 running in MPLS only mode
fi
for i in $IFACES; do
echo
echo Configuring interface $i
# DSMARK Qdisc added
if [ $ENABLE_MPLS_IP = true ]
then
$TC qdisc add dev $i root handle 1:0 dsmark indices 64 default_index 0x161
set_tc_index
else
$TC qdisc add dev $i root handle 1:0 dsmark indices 64 default_index 0x161
fi
#Main DSMARK classifier (converts TOS to DSCP)
$TC filter add dev $i parent 1:0 protocol all prio 1 tcindex mask 0xfc shift 2 pass_on
##### Set up of the proper qdisc on $i
# HTB qdisc is used in order to support EF, AF and BE classes
# Main HTB qdisc
$TC qdisc add dev $i parent 1:0 handle 2:0 htb
#Main HTB class (to enable borrowing) ******(60 Mbps link)*****
$TC class add dev $i parent 2:0 classid 2:1 htb rate 60Mbit ceil 60Mbit
#Main HTB classifier
$TC filter add dev $i parent 2:0 protocol all prio 1 tcindex mask 0xf0 shift 4 pass_on
## Definition of the HTB leaf classes to support AF, EF and BE
echo "AF1: (60Mbps)"
## AF Class 1 specific setup (latency 900ms)
$TC class add dev $i parent 2:1 classid 2:10 htb rate 8Mbit ceil 20Mbit
$TC filter add dev $i parent 2:0 prio 1 handle 1 tcindex classid 2:10
$TC qdisc add dev $i handle 5:0 parent 2:10 gred setup DPs 3 default 2 grio
# --- AF Class 1 DP 1---
$TC filter add dev $i parent 1:0 prio 1 handle 0x0a tcindex classid 1:111
$TC qdisc change dev $i parent 2:10 gred limit 7.2MB min 300KB max 900KB burst
500 \