ROS最正確的限速--------小包優先+帶寬均分+簡單隊列限制上傳速度

ROS最正確的限速--------小包優先+帶寬均分+簡單隊列限制上傳速度
注意:本文針對10M帶寬做出的限速說明,請根據自己的實際帶寬更改相應的限速設置
 

=================================        START      ========================

一、小包優先的腳本如下:

/ip firewall mangle

add chain=forward p2p=all-p2p action=mark-connection new-connection-mark=p2p_conn passthrough=yes comment="" disabled=no

add chain=forward connection-mark=p2p_conn action=mark-packet    new-packet-mark=p2p passthrough=yes comment="" disabled=no


add chain=forward connection-mark=!p2p_conn action=mark-packet    new-packet-mark=general passthrough=yes comment="" disabled=no

add chain=forward packet-size=32-512 action=mark-packet new-packet-mark=small    passthrough=yes comment="" disabled=no

add chain=forward packet-size=512-1200 action=mark-packet new-packet-mark=big    passthrough=yes comment="" disabled=no


/ queue tree

add name="p2pW" parent=WAN packet-mark=p2p limit-at=400000 queue=default priority=8 max-limit=400000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no

add name="p2pL" parent=LAN packet-mark=p2p limit-at=400000 queue=default   priority=8 max-limit=400000 burst-limit=0 burst-threshold=0 burst-time=0s   disabled=no


add name="ClassA" parent=LAN packet-mark="" limit-at=0 queue=default   priority=8 max-limit=100000000 burst-limit=0 burst-threshold=0   burst-time=0s disabled=no

add name="ClassB" parent=ClassA packet-mark="" limit-at=0 queue=default   priority=8 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s   disabled=no

add name="Leaf1" parent=ClassA packet-mark=general limit-at=0 queue=default   priority=7 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s   disabled=no

add name="Leaf2" parent=ClassB packet-mark=big  limit-at=0 queue=default   priority=6 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s   disabled=no

add name="Leaf3" parent=ClassB packet-mark=small limit-at=0 queue=default   priority=5 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s   disabled=no

 


二、然後是帶寬均分:

這個例子示範瞭如何將10Mbps下載2Mbps上傳,均分給網絡10.10.12.0/24中的活動的用戶


# 所有來自本地網絡192.168.0.0/24的流,標記 一個用戶標記
/ip firewall mangle add chain=forward src-address=10.10.12.0/24 \
    action=mark-connection new-connection-mark=users-con
/ip firewall mangle add connection-mark=users-con action=mark-packet \
    new-packet-mark=users chain=forward


# 添加兩個新的PCQ類型。第一個命名pcq-download,將依據目的地址聚合所有流。我們將給本地接口使用這個queue type。它將爲那些目的地址是網絡10.10.12.0/24的下載,創建一個動態隊列。
第二個命名爲pcq-upload,將依據源地址聚合所有流。我們將給公網接口使用,所以它將爲來自本地網絡10.10.12.0/24到internet的上傳,創建以一個動態隊列
/queue type add name=pcq-download kind=pcq pcq-classifier=dst-address
/queue type add name=pcq-upload kind=pcq pcq-classifier=src-address


# 給下載流創建一個queue tree
/ queue tree
add name="Download" parent=LAN packet-mark="" limit-at=0 queue=default priority=8 max-limit=10000000 burst-limit=0 burst-threshold=0 burst-time=0s
add parent=Download packet-mark=users limit-at=0 queue=pcq-download priority=8 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s

 

# 給上傳流創建一個queue tree

/ queue tree
add name="Upload" parent=WAN packet-mark="" limit-at=0 queue=default priority=8 max-limit=2000000 burst-limit=0 burst-threshold=0 burst-time=0s
add parent=Upload packet-mark=users limit-at=0 queue=pcq-upload priority=8 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s


# 注意:如果你的ISP不能提供一個固定的流量,你可以在上傳QUEUE規則和下載QUEUE規則中,直接在接口上使用QUEUE
/queue tree add parent=LAN queue=pcq-download packet-mark=users
/queue tree add parent=WAN queue=pcq-upload packet-mark=users

 

三、限制上傳速度的腳本:

:for aaa from 2 to 254 do={/queue simple add name=(pc . $aaa) dst-address=(10.10.12. . $aaa) max-limit=4000000/800000 interface=all disabled=no}

請根據直接實際修改IP地址段,下載最大速度,上傳最大速度,LAN爲我連接內網的網卡,WAN是我連接外網的網卡

 

=================================        END       ========================

 
參考地址:http://www.mikrotik.com/docs/ros/2.9/root/queue

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章