sudo tc setup

This commit is contained in:
clowwindy 2014-12-23 14:20:46 +08:00
parent cd07001471
commit 9cfffa360e
3 changed files with 19 additions and 21 deletions

View file

@ -15,5 +15,6 @@ before_install:
- pip install m2crypto salsa20 pep8 pyflakes nose coverage
- sudo tests/socksify/install.sh
- sudo tests/libsodium/install.sh
- sudo tests/setup_tc.sh
script:
- ./.jenkins.sh

18
tests/setup_tc.sh Executable file
View file

@ -0,0 +1,18 @@
#!/bin/bash
DEV=lo
PORT=8388
DELAY=100ms
type tc 2> /dev/null && (
tc qdisc add dev $DEV root handle 1: htb
tc class add dev $DEV parent 1: classid 1:1 htb rate 2mbps
tc class add dev $DEV parent 1:1 classid 1:6 htb rate 2mbps ceil 1mbps prio 0
tc filter add dev $DEV parent 1:0 prio 0 protocol ip handle 6 fw flowid 1:6
tc filter add dev $DEV parent 1:0 protocol ip u32 match ip dport $PORT 0xffff flowid 1:6
tc filter add dev $DEV parent 1:0 protocol ip u32 match ip sport $PORT 0xffff flowid 1:6
tc qdisc show dev lo
)

View file

@ -1,29 +1,10 @@
#!/bin/bash
DEV=lo
PORT=8388
DELAY=100ms
PYTHON="coverage run -p -a"
URL=http://127.0.0.1/file
mkdir -p tmp
type tc 2> /dev/null && (
tc qdisc add dev $DEV root handle 1: htb
tc class add dev $DEV parent 1: classid 1:1 htb rate 2mbps
tc class add dev $DEV parent 1:1 classid 1:6 htb rate 2mbps ceil 1mbps prio 0
tc filter add dev $DEV parent 1:0 prio 0 protocol ip handle 6 fw flowid 1:6
tc filter add dev $DEV parent 1:0 protocol ip u32 match ip dport $PORT 0xffff flowid 1:6
tc filter add dev $DEV parent 1:0 protocol ip u32 match ip sport $PORT 0xffff flowid 1:6
# iptables -D OUTPUT -t mangle -p tcp --sport 8388 -j MARK --set-mark 6
# iptables -A OUTPUT -t mangle -p tcp --sport 8388 -j MARK --set-mark 6
tc qdisc show dev lo
)
$PYTHON shadowsocks/local.py -c tests/aes.json &
LOCAL=$!
@ -38,8 +19,6 @@ time curl -o tmp/result --socks5-hostname 127.0.0.1:1081 $URL
kill -s SIGINT $LOCAL
kill -s SIGINT $SERVER
type tc 2> /dev/null && tc qdisc del dev lo root
sleep 2
diff tmp/expected tmp/result || exit 1