如何减慢代理上的流量?

如何减慢代理上的流量?

我正在尝试减慢 TCP 分叉代理上的流量。

代码不再位于代理上,我仍在笔记本电脑上进行测试;Chrome 上的所有 HTTP(S) 请求都使用给定端口上的 SwitchyOmega 插件重定向(所以也许我只需要 OUTPUT 规则而不是 FORWARD)。

Ookla 速度测试我得到了13.92Mbps 下载/15.89Mbps,而最大速率和上限设置为256316每秒的數量數。

我正在使用 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

它仍然走得太快了:到底出了什么问题?

相关内容