Назад | Перейти на главную страницу

Как замедлить трафик на прокси?

Я пытаюсь замедлить трафик на моем прокси-сервере TCP.

Код больше не находится на прокси, все еще тестирую на своем ноутбуке; все запросы HTTP (S) в Chrome перенаправляются с помощью плагина SwitchyOmega на заданный порт (так что, возможно, мне просто нужны правила OUTPUT, а не FORWARD).

Ookla speedtest я получаю 13,92 Мбит / с вниз /15,89 Мбит / с, пока установлены максимальная скорость и потолок. 256 и 316 Кбит / с.

Я работаю над Ubuntu 14.04 x86_64. Поскольку у меня есть HTTP-прокси, единственные порты, которые меня волнуют, - это 80 и 443 (я также имею дело с запросами HTTPS):

# usage: sudo ./filename.sh {set|clean} interface

IF=$2
#delete existing rules
tc qdisc del root dev wlan0

iptables -t mangle -F

if [ "$1" = "clean" ]
then
    exit 0
fi

echo "Setting.."
# Turn on queuing discipline, enter:
tc qdisc add dev wlan0 root handle 1: htb
tc class add dev wlan0 parent 1: classid 1:1 htb rate 512kbps
# Define a class with limitations:
tc class add dev wlan0 parent 1:1 classid 1:5 htb rate 256kbps ceil 312kbps prio 1
# Define another class with limitations:
tc class add dev wlan0 parent 1:1 classid 1:6 htb rate 256kbps ceil 312kbps prio 0
# Assign it to appropriate qdisc:
tc filter add dev wlan0 parent 1:0 prio 1 protocol ip handle 5 fw flowid 1:5
# Assign it to appropriate qdisc:
tc filter add dev wlan0 parent 1:0 prio 0 protocol ip handle 6 fw flowid 1:6
# Port 80 is NOT defined anywhere in above class. You will use iptables mangle rule as follows:
iptables -A FORWARD -t mangle -p tcp --sport 80 -j MARK --set-mark 5
iptables -A OUTPUT -t mangle -p tcp --sport 80 -j MARK --set-mark 5
# Port 443 is NOT defined anywhere in above class. You will use iptables mangle rule as follows:
iptables -A FORWARD -t mangle -p tcp --sport 443 -j MARK --set-mark 6
iptables -A OUTPUT -t mangle -p tcp --sport 443 -j MARK --set-mark 6
iptables-save

Все еще идет слишком быстро: в чем может быть дело?