cbq.init 無法限制本機下載的速度

這個版面主要討論 debian 在 server 端的應用問題, server 種類繁多..舉凡 Web Server 、 File Server、 DHCP Server..等等。

版主: 阿信

cbq.init 無法限制本機下載的速度

文章阿信 » 週一 10月 18, 2004 2:44 pm

hi 各位

最近使用 BT 下載軟體,由於 bittornado 的 --max_upload_rate 有問題,無法限制 total torrent 下載的速度,所以才想要把原本就使用的 QoS 拿來管理 BT 下載。

小弟的下載機(暫稱 dloader) 會用到的 BT 埠號所在 6881:6889,所以我的 cbq-0120.p2p 檔案如下:

DEVICE=ppp0,100Mbit,10Mbit
RATE=40Kbps
WEIGHT=8Kbit
PRIO=1
RULE=:6881
RULE=:6882
RULE=:6883
RULE=:6884
...
...

執行 /etc/init.d/shaper restart 重設規則,依然無法管制下載的速度,上傳方面的方法如法砲製一下

DEVICE=ppp0,100Mbit,10Mbit
RATE=10Kbps
WEIGHT=8Kbit
PRIO=1
RULE=:6881,
RULE=:6882,
RULE=:6883,
RULE=:6884,
...
...

然而上傳是可以鎖定在 10K Bytes per second,但下載卻會超過 40 KBytes。不知道是怎麼回事。


另外一種 "芒果"+ mark寫法小弟也有試過

先執行:
$IPTBL -t mangle -A INPUT -p tcp --dport 6881:6889 -j MARK --set-mark 13

然後設定檔變成
DEVICE=ppp0,100Mbit,10Mbit
RATE=40Kbps
WEIGHT=8Kbit
PRIO=1
MARK=13

由於這兩種方法是一樣的,所以小弟依然無法限制下載的速度,實在很頭疼,不知道有無朋友解決的辦法。

BTW...測試的環境是 Debian Testing+Kernel-2.6.8
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:cbq.init 無法限制本機下載的速度

文章Tetralet » 週一 10月 18, 2004 3:04 pm

同病相憐:

  使用 shaper 針對本機進行頻寬管制...

目前一樣是無解...
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:cbq.init 無法限制本機下載的速度

文章Tetralet » 週一 10月 18, 2004 3:08 pm

對了,
在 /usr/share/doc/kernel-doc/Documentation/networking/ 中有一篇 shaper.txt.gz,
也許可以參考看看...

之前是試過了,弄不出來...
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:cbq.init 無法限制本機下載的速度

文章阿信 » 週一 10月 18, 2004 3:16 pm

Tetralet 寫:同病相憐:

  使用 shaper 針對本機進行頻寬管制...

目前一樣是無解...


呵...原來以前就有這樣的問題了

目前小弟是 ppp0 上傳能夠設限,下載不行,連接的兩個子網路是透過另外兩張網卡,所以也能限制上下載(由於透過Nat,source address 被更改,所以要建立 PREROUTING才能限制上載)

在 Tetralet兄所post那篇中,我是把 Prio直接設成 1,雖然一開始會有突破上限的可能,但一下子就正常了,所以還能接受

在 BBS 上找到這一篇 NAT可否分配頻寬!!後面有提到 module 的問題,由於我是直接使用 Debian 官方的 kernel,所以不清楚這位老兄指的是那些...

另外一套 shaperd 不知道能否解決這個問題。[/url]
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:cbq.init 無法限制本機下載的速度

文章阿信 » 週一 10月 18, 2004 3:17 pm

Tetralet 寫:對了,
在 /usr/share/doc/kernel-doc/Documentation/networking/ 中有一篇 shaper.txt.gz,
也許可以參考看看...

之前是試過了,弄不出來...


ok...感謝指點,我來試試看...:-)
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:cbq.init 無法限制本機下載的速度

文章阿信 » 週一 10月 18, 2004 3:23 pm

阿信 寫:
Tetralet 寫:對了,
在 /usr/share/doc/kernel-doc/Documentation/networking/ 中有一篇 shaper.txt.gz,
也許可以參考看看...

之前是試過了,弄不出來...


ok...感謝指點,我來試試看...:-)


剛剛看了一下,似乎是搭配 shapecfg 來實作,只是 shapecfg 無法管理 incoming packet,只能處理 output packget... :-(
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:cbq.init 無法限制本機下載的速度

文章阿信 » 週一 10月 18, 2004 5:18 pm

剛剛試用了一下 shaperd 這個user-mode traffic control,果然不失所望成功了。

先拷備 /usr/share/doc/shaperd/examples/example.1.conf -> /etc/shaperd/shaperd.conf

編輯檔案內的
ipv4 classifier proto=tcp saddr=127.0.0.1 sport=7

ipv4 classifier proto=tcp inp_if=ppp+ dport=6881
ipv4 classifier proto=tcp inp_if=ppp+ dport=6882
ipv4 classifier proto=tcp inp_if=ppp+ dport=6883
ipv4 classifier proto=tcp inp_if=ppp+ dport=6884
ipv4 classifier proto=tcp inp_if=ppp+ dport=6885
ipv4 classifier proto=tcp inp_if=ppp+ dport=6886
ipv4 classifier proto=tcp inp_if=ppp+ dport=6887
ipv4 classifier proto=tcp inp_if=ppp+ dport=6888
ipv4 classifier proto=tcp inp_if=ppp+ dport=6889

然後執行
代碼: 選擇全部
modprobe ip_queue
iptables -I INPUT -p tcp --dport 6881:6889 -j QUEUE
/etc/init.d/shaperd restart


這樣就可以限制本機下載的流量了... :finger1:
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:cbq.init 無法限制本機下載的速度

文章Tetralet » 週一 10月 18, 2004 5:30 pm

哇∼ 好棒∼∼

趕快也來試試!
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:cbq.init 無法限制本機下載的速度

文章阿信 » 週一 10月 18, 2004 9:12 pm

Tetralet 兄如果有興趣的話,也可以試試看 HTB,設定的方法比 CBQ 來的直覺多,效能上也比較好...^^
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

Re: re:cbq.init 無法限制本機下載的速度

文章Tetralet » 週二 10月 19, 2004 8:42 am

阿信 寫:Tetralet 兄如果有興趣的話,也可以試試看 HTB,設定的方法比 CBQ 來的直覺多,效能上也比較好...^^

收到!

謝謝囉∼
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

Re: re:cbq.init 無法限制本機下載的速度

文章wsun013 » 週日 1月 23, 2005 10:21 am

阿信 寫:剛剛試用了一下 shaperd 這個user-mode traffic control,果然不失所望成功了。

先拷備 /usr/share/doc/shaperd/examples/example.1.conf -> /etc/shaperd/shaperd.conf

編輯檔案內的
ipv4 classifier proto=tcp saddr=127.0.0.1 sport=7

ipv4 classifier proto=tcp inp_if=ppp+ dport=6881
ipv4 classifier proto=tcp inp_if=ppp+ dport=6882
ipv4 classifier proto=tcp inp_if=ppp+ dport=6883
ipv4 classifier proto=tcp inp_if=ppp+ dport=6884
ipv4 classifier proto=tcp inp_if=ppp+ dport=6885
ipv4 classifier proto=tcp inp_if=ppp+ dport=6886
ipv4 classifier proto=tcp inp_if=ppp+ dport=6887
ipv4 classifier proto=tcp inp_if=ppp+ dport=6888
ipv4 classifier proto=tcp inp_if=ppp+ dport=6889

然後執行
代碼: 選擇全部
modprobe ip_queue
iptables -I INPUT -p tcp --dport 6881:6889 -j QUEUE
/etc/init.d/shaperd restart


這樣就可以限制本機下載的流量了... :finger1:


請問 inp_if=ppp+ 的 ppp+ 是?
如果小弟(以eth0,ip:192.168.0.20)連到上網機器(192.168.0.1)
還是以 ppp+ 為 inp_if 嗎 ?
頭像
wsun013
快樂的大學生
快樂的大學生
 
文章: 784
註冊時間: 週二 9月 14, 2004 12:12 pm
來自: 紐西蘭

文章訪客 » 週一 6月 13, 2005 4:11 am

哈哈哈你的問題跟我相反阿剛好我拿來用看看
我的問題可以控制下載卻無法控制上傳阿
訪客
 


回到 debian server

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客

cron