网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > linux > 其它unix > FreeBSD下的带宽控制 -- ipfw+dummynet  

FreeBSD下的带宽控制 -- ipfw+dummynet

2006-06-07  作者:BitsCN整理  来源:中国网管联盟  点评 投稿 收藏

环境: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
网管bitscn_com


注: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来满足自己的需求!

TAGs   控制   带宽   FreeBSD   ipfw   to   rule   加入   pipe   options   内核      
 上一篇:FreeBSD中的GNU C编译器--编译器GCC   下一篇:FreeBSD在VMware下的X配置
FreeBSD下的带宽控制 -- ipfw+dummynet 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: