1*de1e4e89SAndroid Build Coastguard Worker#!/usr/bin/perl 2*de1e4e89SAndroid Build Coastguard Worker$TC = "/root/DS-6-beta/iproute2-990530-dsing/tc/tc"; 3*de1e4e89SAndroid Build Coastguard Worker$DEV = "dev eth1"; 4*de1e4e89SAndroid Build Coastguard Worker$efrate="1.5Mbit"; 5*de1e4e89SAndroid Build Coastguard Worker$MTU="1.5kB"; 6*de1e4e89SAndroid Build Coastguard Workerprint "$TC qdisc add $DEV handle 1:0 root dsmark indices 64 set_tc_index\n"; 7*de1e4e89SAndroid Build Coastguard Workerprint "$TC filter add $DEV parent 1:0 protocol ip prio 1 tcindex ". 8*de1e4e89SAndroid Build Coastguard Worker "mask 0xfc shift 2\n"; 9*de1e4e89SAndroid Build Coastguard Workerprint "$TC qdisc add $DEV parent 1:0 handle 2:0 prio\n"; 10*de1e4e89SAndroid Build Coastguard Worker# 11*de1e4e89SAndroid Build Coastguard Worker# EF class: Maximum about one MTU sized packet allowed on the queue 12*de1e4e89SAndroid Build Coastguard Worker# 13*de1e4e89SAndroid Build Coastguard Workerprint "$TC qdisc add $DEV parent 2:1 tbf rate $efrate burst $MTU limit 1.6kB\n"; 14*de1e4e89SAndroid Build Coastguard Workerprint "$TC filter add $DEV parent 2:0 protocol ip prio 1 ". 15*de1e4e89SAndroid Build Coastguard Worker "handle 0x2e tcindex classid 2:1 pass_on\n"; 16*de1e4e89SAndroid Build Coastguard Worker# 17*de1e4e89SAndroid Build Coastguard Worker# BE class 18*de1e4e89SAndroid Build Coastguard Worker# 19*de1e4e89SAndroid Build Coastguard Workerprint "#BE class(2:2) \n"; 20*de1e4e89SAndroid Build Coastguard Workerprint "$TC qdisc add $DEV parent 2:2 red limit 60KB ". 21*de1e4e89SAndroid Build Coastguard Worker "min 15KB max 45KB burst 20 avpkt 1000 bandwidth 10Mbit ". 22*de1e4e89SAndroid Build Coastguard Worker "probability 0.4\n"; 23*de1e4e89SAndroid Build Coastguard Worker# 24*de1e4e89SAndroid Build Coastguard Workerprint "$TC filter add $DEV parent 2:0 protocol ip prio 2 ". 25*de1e4e89SAndroid Build Coastguard Worker "handle 0 tcindex mask 0 classid 2:2 pass_on\n"; 26