要在RouterOS上實作QoS是不難的
實作之前首先要先知道什麼是PCQ (Per Connection Queue)
說的白話一點,PCQ就是一個最佳化後的QoS系統
如果你對PCQ的詳細技後有興趣可以到這邊觀看技術文件
強烈建議一定要去看一下PCQ的技術文件,裡面有很多很好的觀念
如果要實作PCQ可以參考這篇文章PCQ Examples
如果你有在RouterOS上啟用Web-Proxy,而且要使用PCQ的話請參考
Queue with Masquerading and Internal Web-Proxy
0
PCQ除了可以實作一般的限流外,也可以配合Burst這個參數來讓網頁開啟更順暢
怎麼說呢?我舉個例子:
假設我們想讓使用者下載檔案時速度限制在10KB/s,但是如果連開網頁也限制在10KB/s,豈不是等到瘋掉。
這時候Burst這個參數就派上用場了。我們知道一般網頁的檔案都很小,下載不需要花費很多時間。而一般的檔案都很大,下載需要花很多時間。
這時候我們是不是可以多一個功能,在一開始的時候速度限制在50KB,
但是如果這個連線一直持續下載超過5MB時,就開始限速10KB/s,該怎麼做呢?就是用前面所說的Burst參數
在RouterOS中 Winbox 新增Queue Tree的介面如下
其中Queue Type 的設定如下圖示所
如果你需要更詳細的PCQ參數設定,可以參考這份文件 MikroTik RouterOS Workshop QoS Best Practice
0
這邊補充說明一下~~RouterOS裡 1M bits/s = 1,000,000 bits/s = 125,000 Bytes/s = 122KB/s
Max Limit :常態時的速度限制
Burst Limit:瞬時的最高速度限制
Burst Threshold:平均流量(需與Burst Time搭配使用)到達多少時開始停止使用Burst Limit
以上面這張圖片的設定檔來做說明的話
****************************************************************
一開始流量可以衝到4M bits/s
但是如果流量維持在 1Mbits/s 以上,而且在5秒內下載量達到 610KB (1M bits/s * 5)時
就停止使用Burst Limit而開始啟用Max Limit,此後速度會一直限速在2M bits/s
****************************************************************
以圖片來說明的話,流量會像下面的圖一樣
綠色的線就是使用者可以感受到的網路速度
请补上图,看不到图了,谢谢
剛剛查了一下,圖都還在,你要換台電腦試一下嗎。圖床是在google
好文,敢问阁下实际使用效能如何?望不吝赐教
鄙人在ros3.22上配置的pcq限速全无效果,是否pcq与htb不能相容?
使用上完全正常,限速也有實際上的效用
無效果可能是ROS設置上有問題,可以再詳查看看
我PCQ與HTB混用,也是正常的,但有序順優先的問題,要注意
不错,很棒。
不过我想知道图片中那个 Queue type的 ADSL_Down_10M 的设置参数
已經把圖更新於文章中
如果需要更詳細的PCQ參數設定,可以參考這份文件 MikroTik RouterOS Workshop QoS Best Practice
你好想請問你的環境大約機台電腦?
當限速開始作動時CPU使用率會往上嗎?
PING值會往上嗎?
目前RouterOS我僅用在家庭式的網路,大約3~4台PC。
限度有動作時,CPU一定會往上,往上多少則看硬體的效能而定。
PING如果有往上的話,建議可以調整ICMP的優先權為最高。
这个可以对不同的网络段做区分吗?有的IP段不限,有的限制。
jason:
可以,在mark packet時,就可以用網段來判斷要不要打上mark
借此來讓QOS區別
如访问google不限流量,访问百度限制流量
jason:
一樣可以,只是難點在於google的ip區段與百度的ip區段要怎麼取得
請問如果是多線(二線),加上PCC負載平衡之後,PCQ 的上傳及下傳速率設
定 MAX Limit 值,是兩線速率加總值,還是單線最大值?
另外,Simple Queues及Queues Tree,都是在做限速的,這二個有什麼不同
,謝謝。
1.PCQ上設速限的話,原則上是設「整體」速限,即是流入ROS或流出ROS的整體流量,如果你有多條線的話,可能要考慮到單條上限的問題,因為有可能單條吃滿流量了,另一條還是空的,所以怎麼設定,可能要考量當時現場網路環境。
需要更詳細的資料的話可以參考http://wiki.mikrotik.com/wiki/Manual:Queues_-_PCQ
2.Simple Queues顧名思意,就是讓你做「簡單」的限速,不用搞一堆設定。
而Queues Tree可以提供你更細膩的限速設定,像是依port、ip…等,透過mangle可以讓你有更多的條件判斷
要注意的是如果你2個地方都有設定的話,則Queues Tree優先權大於Simple Queues
你好,我想问下你的Queue type设置参数里面Limit与Total Limit值是根据怎么样计算方法得到的?谢谢
建議你到這邊
http://wiki.mikrotik.com/wiki/Manual:Queue
直接拉到下面的Queue Types部份,很有詳細的解說
:for chen from=2 to=253 do={/queue simple add name=(“chen” . $chen) dst-address=(“192.168.0.” . $chen) limit-at=256000/128000 interface=all max-limit=1000000/256000 burst-limit=2000000/512000 burst-threshold=1000000/256000 burst-time=10s/10s}
Hi 我手邊有一個script,我想更改她,我的頻寬是50M/5M,用戶最小8人,最大16人。我的需求是所有p2p要限速成2M/256K,一般時候每個ip限速在8M/512K,但我想讓瞬間流量可以達到15M/512K,維持5S,我是不是要將script改成
:for chen from=2 to=253 do={/queue simple add name=(“chen” . $chen) dst-address=(“192.168.0.” . $chen) limit-at=200000/256000 interface=all max-limit=8000000/512000 burst-limit=15000000/512000 burst-threshold=8000000/512000 burst-time=5s/5s}
如果區網ip是192.168.88是不是還要將script中192.168.0改成192.168.88
to lo:
看起來是可行的,你可以實際測試看看。
不過依你這個設定可能對P2P的封包沒有任何作用,
設上去後是針對該IP所有的流量(含P2P)。
茶包大人,請問要對一特定ip,按週一至週五06:00-21:00頻寬正常, 21:00-06:00縮小剩10bps,週六日06:00-23:00頻寬正常, 23:00-06:00縮小剩10bps, 要如何撰寫script ?
To Jim:
只是單純針對特定ip這種情境下,我建議你使用Queue然後配合裡面的Time參數來達成就好。
詳細的細節可以參考http://wiki.mikrotik.com/wiki/Manual:Queue#Simple_Queues
中華小烏龜 > RB450G > 室友PC*3
沒有設定RB450G 的PPPoE撥接,使用者自行手動撥接
問題來了,Queues不管怎麼設定,就是起不了任何作用
也進去Queue Tree設定,完全沒有反應,有可能是這台RB450G晶片燒壞了嗎?
to 新手:
一但由使用者用PC自行撥接時,此時封包便不過經過RB450G了。
RB450G充其量也只是個HUB的功能,自然設Queues也不會有任何作用了。
要使用Queues的功能,一定要讓RB450G主控所有的網路,不要讓使用者自行撥接。
ok,我設定PPPoe了,QoS有成功
也順便建置PPPoE Server,但當使用者手動重新撥接,要如何抓取外網新ip?
目前我建立PPPoE Server,使用者都必須輸入帳號,密碼,也就是跟一般家裡使用的PPPoE撥接一樣
但問題來了,當中斷連線時,然後再度連線時,似乎不能像以前一般家庭用的那樣,自動去抓新的IP
導致有某些論壇不能去,因為會鎖IP,我希望能夠像以前那樣,自動抓取外網的新IP
請問這要如何設定?
第一張圖沒有寫,是Queue Tree
to calven:
感謝告知,第一張圖上方已經補上說明了。