标签归档:qos

Netgear网件官方固件的qos还挺好用的

苦逼的博主家里的网络还是电信6M(0.5M上行),平常使用还好;但是周末时哥嫂回到家里网络就真的是炸了,近十台手机,起码得有两个人同时用手机看在线视频,老妈还要看电视–乐视网络视频,那时电脑真的是看个网站都不顺畅,卡半天才能刷出来。

农村地区,还没光纤覆盖;打电话给电信说要升级宽带,被告知6M已达到这条线路的最大宽带,没有资源再供提速了。

因为这种情况,路由器qos成了刚需,前阵一直在折腾这个,下面把折腾的过程说下。

最先家里网络主路由是一个TP-LINK的猫路由一体机,下面再接一个NETGEAR WNR-3500Lv1提供有线千兆网络,因为这个路由的无线信号不强,又另接了个newifi mini专做ap。

首先开刀的是WNR-3500Lv1,原来刷了openwrt在用,因为听说tomato的qos比较强,就刷了一系列的tomato固件:tomato dualwanTomato by Shibby,一番使用下来,发现开启了qos也没有什么效果,完全无法限制住迅雷,虽然迅雷下载速度能被限制到100kb/s,但网络还是很卡,而网络总使用率不到400kb/s,但迅雷开启了近2000个并发连接,以为是主路由的锅,他的性能无法承受这个连接数。于是设置不使用tp-link的路由功能,把它当作一个纯粹的宽带猫来使用,使用桥接由wnr3500lv1进行拨号上网。但这样设置了,问题依旧。好吧,估计是电信作了连接数限制吧。

之后还设置过在tomato上命令配置限制连接数,但效果也不明显。

之后在齐齐奔跑—Alex看到了这个qos限速脚本

#bbs.dualwan.cn 2015-8-14 by cheng1196  qq372693586
#这是OPENWRT固件与Tomato固件通用智能限速脚本
#装载核心模块
insmod cls_u32
insmod em_u32
insmod act_connmark
insmod act_mirred
insmod sch_ingress
insmod cls_fw
insmod sch_htb
insmod sch_sfq
insmod sch_red
#设置局域网处于192.168.1.0的网段
UIP="192.168.1."
NET="192.168.1.0/24"
#设置限速的ip地址192.168.1.100到192.168.1.130
#DHCP分配也需要设置192.168.1.100到192.168.1.130
IPS="100"
IPE="130"
#设置宽带的最大上传下载速度,UP上传,DOWN下载,1兆等于128,这是20兆光纤上传与下载
UP=384
DOWN=2560
#装载核心模块,创建QOS专用链
insmod imq
ifconfig imq1 up
ifconfig imq0 up
iptables -t mangle -N QOSUP
iptables -t mangle -N QOSDOWN
iptables -t mangle -A FORWARD -s $NET -d ! $NET -p ! icmp -j QOSUP
iptables -t mangle -A FORWARD -d $NET -s ! $NET -p ! icmp -j QOSDOWN
iptables -t mangle -A QOSUP -j IMQ --todev 1
iptables -t mangle -A QOSDOWN -j IMQ --todev 0
iptables -t mangle -A QOSUP -p udp --dport 53 -j RETURN
iptables -t mangle -A QOSUP -m length --length :512 -j RETURN
iptables -t mangle -A QOSDOWN -p udp --sport 53 -j RETURN
iptables -t mangle -A QOSDOWN -m length --length :512 -j RETURN
tc qdisc del dev imq0 root
tc qdisc del dev imq1 root
tc qdisc add dev imq0 root handle 1: htb
tc qdisc add dev imq1 root handle 1: htb
tc class add dev imq0 parent 1: classid 1:1 htb rate $((DOWN))kbps
tc class add dev imq1 parent 1: classid 1:1 htb rate $((UP))kbps
i=$IPS;
while [ $i -le $IPE ]
do
tc class add dev imq1 parent 1:1 classid 1:$i htb rate $((UP/32))kbps ceil $((UP/16*4))kbps quantum 1500 prio 5
tc qdisc add dev imq1 parent 1:$i handle $i: sfq limit 64 perturb 10
tc filter add dev imq1 parent 1: protocol ip prio 100 handle $i fw classid 1:$i
tc class add dev imq0 parent 1:1 classid 1:$i htb rate $((DOWN/32))kbps ceil $((DOWN/16*14))kbps quantum 3001 mtu 3200 prio 5
tc qdisc add dev imq0 parent 1:$i handle $i: sfq perturb 10
tc filter add dev imq0 parent 1: protocol ip prio 100 handle $i fw classid 1:$i
iptables -t mangle -A QOSUP -s $UIP$i -j MARK --set-mark $i
iptables -t mangle -A QOSDOWN -d $UIP$i -j MARK --set-mark $i
i=`expr $i + 1`
done

有一定效果,比tomato自带的qos效果更好一点,之前迅雷下载会导致整个网络几乎处于不可用状态,用这个还行,起码网页还刷得出来,视频能播放,不过放十几秒缓冲个几秒也是蛋痛得紧。

说到底还是网络的速度实在是太慢了,只有0.5M上传,在路由后台可以看到迅雷在下载时几乎占满了上传,导致整个网络拥堵。qos有一定效果但它毕竟也不是万能的。

最后突然想起来,网件的原生固件也有带qos的,何不试试它的qos怎么样呢?说真的,这个WNR3500Lv1路由器几乎买来就是折腾的,几乎没有正经用过网件的原生固件。

网件的qos最终带来的惊喜,其qos默认配置不用改,开启它就好,真的挺强的,实测能限制住迅雷,网络繁忙时其下载速度会自动降下来,其也会自动限制住迅雷多开连接,在tomato下,迅雷能开启近2000个并发连接,在原生qos下,只能开启300多个。

最终在这个qos下,我用6M宽带做到了两台手机看超清网络视频,我在一台电脑看斗鱼超清直播,另一台电脑开迅雷下载。而视频全部不卡,迅雷下载被限制在150kb/s左右。

如果你也有和我一样的困扰,并且你手里也有网件的路由器的话,不妨试下网件原生固件(界面看起来真的好挫)的qos功能,没准它能给你惊喜呢~

最后,祝各位圣诞快乐哦~