基於系統的流量控制(Qos)

 

1、 Linux 系統

1. 限制流出速度

限制流出速度,主要經過tc這個工具,經常使用的有三個隊列:html

tbf隊列,令牌桶隊列,適用於流量×××;windows

cbq隊列,分類的隊列,用於實現精細的qos控制,配置複雜;網絡

htb隊列,分層的令牌桶隊列,用於實現精細的qos控制,配置比cbq簡單些;ide

經過tbf限制流程速度的例子:工具

tc qdisc add dev eth0 root tbf rate 51200kbit latency 50ms minburst 200k burst 200k測試

限制網卡eth0流出速度爲51200kbit,正確的設置方法,和minburst這個參數有很大的關係,不一樣的硬件環境和系統須要具體調試。網站

經過htb實現不一樣目標地址的限速.net

刪除3d

tc qdisc del dev eth0 root tbf調試

修改

tc qdisc change dev eth0 root tbf rate 2200kbit latency 5000ms burst 1540

查看當天隊列

tc -s -d qdisc ls

經過htb隊列,針對不一樣ip源限速

刪除已有的隊列

tc qdisc del dev eth0 root

創建一個htb根隊列

tc qdisc add dev eth0 root handle 1: htb

創建一個父類1:1,速度爲100mbit

tc class add dev eth0 parent 1: classid 1:1 htb rate 100mbit ceil 100mbit

創建一個子類1:10,速度50mbit,這裏的50mbit包含在1:1的100mbit中

tc class add dev eth0 parent 1:1 classid 1:10 htb rate 50mbit ceil 50mbit

指定1:10是一個隨機公平隊列

tc qdisc add dev eth0 parent 1:10 sfq perturb 10

經過過濾器,保證1.1.1.1這個ip經過1:1這個隊列,優先級是2。

tc filter add dev eth0 protocol ip parent 1: prio 2 u32 match ip dst 1.1.1.1/32 flowid 1:1

經過過濾器,保證全部的其餘ip經過1:10這個隊列,優先級是50。

tc filter add dev eth0 protocol ip parent 1: prio 50 u32 match ip dst 0.0.0.0/0 flowid 1:10

2. 限制流進速度

經過iptables 限制流進速度

#iptables -A INPUT -s 61.61.61.61/32 -m limit --limit 60/s -j ACCEPT

#iptables -A INPUT -s 61.61.61.61/32 -j DROP

限制ip每秒流進速度不超過60個,經過iptables不能精確控制網速,只能控制包的個數,具體數對能夠用mtu乘包的個數計算。

Linux系統速度限制很是不錯的參考資料,《Linux高級路由和流量控制》

http://www.docin.com/p-4929331.html

2、 Windows系統

1. Windows server 2008 windows 2012 windows 7 windows 8系統

經過組策略能夠限制流出速度,在開始運行輸入gpedit.msc

經過本地計算機---計算機配置----基於策略的qos選項,能夠實現網絡限速、源ip、基於應用的限速。

clip_p_w_picpath002

clip_p_w_picpath004

clip_p_w_picpath006

clip_p_w_picpath008

2. Windows server 2003 windows xp 系統

能夠下載Windows Server 2003 Resource Kit Tools,安裝後,運行安裝目錄下的tcmon.bat這個批處理安裝。

http://www.microsoft.com/en-us/download/details.aspx?id=17657

clip_p_w_picpath010

而後網卡屬性—服務—添加qos包隊列服務。

clip_p_w_picpath012

而後運行tcmon.exe程序。

clip_p_w_picpath014

能夠根據須要設置速率

clip_p_w_picpath016

須要過濾的ip

clip_p_w_picpath018

協議

clip_p_w_picpath020

可是這個工具我只在xp上測試經過, 在windows 2003上不能正常使用,查閱了許多國外的網站,也有許多人碰到相似的問題,目前沒有找到解決的方法,推測是微軟已經放棄了對這個工具的支持吧。另外這個工具只能如今流出速度,重啓後須要從新配置。

3. 第三方工具

windows系統還可使用netlimit這個工具,這是一個收費工具,就不詳細介紹了,官網是http://www.netlimiter.com/,上面有詳細的介紹。

經過360衛生也能夠實現限速的功能,可是隻能基於應用。

clip_p_w_picpath022

clip_p_w_picpath024

相關文章
相關標籤/搜索