GB | BIG5
|
| 首頁 > 系統管理 > FreeBSD > 正文 |
 |
| FreeBSD下的帶寬控制 -- ipfw+dummynet |
| 本文出自:http://www.linuxforum.net 作者: 肥肥頭 (2002-12-26 06:02:00) |
環境:FreeBSD 4.5-Release
在FreeBSD下可以通過ipfw+dummynet來進行帶寬控制,具體實現如下:
1、 修改kernel configuration file, 加入對IPFW和DUMMYNET的支持
options IPFIREWALL
options DUMMYNET
重新編譯,安裝新的kernel
注:如果原內核中支持IPFILTER, 請注釋 options IPFILTER。
2、 新內核缺省是deny所有的連接,因此在/etc/rc.conf文件裡加入以下行:
# ---------------------------------------------------------------------------
firewall_enable="YES" # Set to YES to enable firewall functionality
firewall_script="/etc/rc.firewall" # Which script to run to set up the firewall
firewall_type="open" # Firewall type (see /etc/rc.firewall)
# ---------------------------------------------------------------------------
注:因為是測試FreeBSD的帶寬管理, 不想在ipfw上浪費時間,因此我們將firewall設置
為open狀態, 允許所有包的in, out
3、 重新啟動系統,讓新內核起作用。在ipfw裡加入自己的rules來進行帶寬管理:
# ipfw pipe 1 config bw 128Kbytes/s
# ipfw add 1000 pipe 1 ip from 172.22.4.90 to 172.22.0.0/24 out
注:172.22.4.90是FreeBSD網卡的ip address, 172.22.0.0/16是它所在的網段
第一條rule定義了一個128Kbytes/s的pipe
第二條rule 是將從172.22.4.90-〉172.22.0.0/16 的packet送到pipe 1處理
測試結果:
加入兩條rule前從FreeBSD上下載文件速率是900K Bytes/s(10M局域網)
加入兩條rule從FreeBSD上下載文件速率是127K Bytes/s
以上只是一個很簡單的測試,但從結果看FreeBSD下通過ipfw+dummynet可以很好的進行帶寬
的控制。大家可以參考dummynet手冊來定制更復雜的rule來滿足自己的需求!
參考文檔:DUMMYNET(4)
(http://www.fanqiang.com)
進入【UNIX論壇】
|
|
| 相關文章 |
Linux 的帶寬管理系統 (2002-01-09 07:10:00)
|
|
|
|
 |
★ 樊強制作 歡迎分享 ★ |