我在家里使用个人网络连接(50 mbps以上)有一台debian服务器.我已经使用OpenSSH设置了一个简单的SFTP服务,与多个用户共享大文件(10 Gb).
这是我的问题:关于带宽重新分配,它是丛林.我有用户使用标准ADSL连接,其他用户使用光纤连接等.每个用户都有不同的下载速度,通常最大的下载带宽获胜.
理想情况下,每个用户都能够下载高达50 / n mbps的文件(其中n是连接的用户数).
非常感谢您的帮助.
解决方法
由于您使用的是Debian
Linux,因此您可以非常简单地完成它.您可以使用此脚本在带宽上进行“公平”重新分区:
#Put here your Internet-interface instead of eth1 ext_iface=eth1 eiface_addr=192.169.158.150 ###############Remove shaper rules###############################3 iptables -t mangle --flush tc qdisc del dev $ext_iface root 2> /dev/null > /dev/null iptables -t mangle -D POSTROUTING -o $ext_iface -j shape-in 2> /dev/null > /dev/null iptables -t mangle -F shape-in 2> /dev/null > /dev/null iptables -t mangle -X shape-in 2> /dev/null > /dev/null ##############Adding shaper rules################################### tc qdisc add dev $ext_iface root handle 1:0 htb default 10 tc class add dev $ext_iface parent 1:0 classid 1:1 htb rate 100mbit ceil 100mbit tc class add dev $ext_iface parent 1:1 classid 1:5 htb rate 100mbit ceil 100mbit prio 0 tc class add dev $ext_iface parent 1:1 classid 1:10 htb rate 48mbit ceil 48mbit prio 0 tc qdisc add dev $ext_iface parent 1:5 handle 5: pfifo limit 5 tc qdisc add dev $ext_iface parent 1:10 handle 10: pfifo limit 10 iptables -t mangle -N shape-in iptables -t mangle -I POSTROUTING -o $ext_iface -j shape-in #Priority for pings iptables -t mangle -A shape-in -p icmp -j MARK --set-mark 5 #Priority for Server Access iptables -t mangle -A shape-in -s $eiface_addr -j MARK --set-mark 5 #Othet packets (user\'s internet traffic) iptables -t mangle -A shape-in -m mark --mark 0 -j MARK --set-mark 10 tc filter add dev $ext_iface parent 1:0 prio 0 protocol ip handle 5 fw flowid 1:5 tc filter add dev $ext_iface parent 1:0 prio 1 protocol ip handle 10 fw flowid 1:10
请注意,用户将获得48 / n频道,并且剩余两个Mbs用于预留.