[转贴]怎么保证和按优先级管理流量?
2007-08-03 13:13
543 查看
队列树通常的应用,是用来限定特殊用户,协议和端口等等。
在下边的例子里将介绍:
• 怎样保证某一服务的带宽和使用空闲带宽
• 怎样优化一个服务(POP3)在其它的服务中(HTTP 、 FTP)
看这张图里我们如何共享流量的 ( 192.168.0.0/24是伪装地址):
1. 首先,我们用 mangle 标记 HTTP, FTP 和 POP3 的下载数据流. 在 192.168.0.0/24里, 我们需要用mark-connection参数标记外出的连接
QUOTE:
/ip firewall mangle
add in-interface=Local dst-address=:80 protocol=tcp action=passthrough /
mark-connection=http-con comment="" disabled=no
add in-interface=Local dst-address=:110 protocol=tcp action=passthrough /
mark-connection=pop3-con comment="" disabled=no
add in-interface=Local dst-address=:21 protocol=tcp action=passthrough /
mark-connection=ftp-con comment="" disabled=no
接着才能用 flow mark标记下载的数据流
QUOTE:
/ip firewall mangle
add protocol=tcp connection=http-con action=passthrough mark-flow=HTTP /
comment="" disabled=no
add protocol=tcp connection=pop3-con action=passthrough mark-flow=POP3 /
comment="" disabled=no
add protocol=tcp connection=ftp-con action=passthrough mark-flow=FTP /
comment="" disabled=no
2. 然后当我们有了用flow-mark 标记的数据包,我们就可以用它来构建一个队列树
添加一个队列保证有全部带宽(512kbps)的80% ,就是409.6kbps ,给HTTP服务。如果其它服务空闲时可以使用全部的带宽:
QUOTE:
/queue tree
add name="http-queue" parent=Local flow=HTTP limit-at=409600 max-limit=512000
添加一个队列给FTP保证有15% (76,8kbps):
QUOTE:
/queue tree
add name="ftp-queue" parent=Local flow=FTP limit-at=76800 max-limit=512000
现在添加一个队列保证全部带宽5% (25,6kbps)给POP3 服务使用. 设置这个服务的优先级为优先级7. 这意味着这条队列比其它之前的队列有着更高的优先级(默认的优先级是8) 所以他能在http-queue 和ftp-queue 之前处理:
QUOTE:
/queue tree
add name="pop3-queue" parent=Local flow=POP3 limit-at=25600 max-limit=512000 priority=7
POP3数据流因为更高的优先级,所以他能够抢先处理,比其他服务有更小的延迟通过路由。
使用 limit-at 和 max-limit参数,你能控制给服务允许的最小和最大的带宽。首先,limit-at是能够达到的速率,然后如果有更多的能用带宽,他将使用这些带宽(上边例子里是512kbps)
注意:对于正确设置的队列树所有limit-at的值得总和应该小于或低于总的带宽。这里是25,6kbps + 76,8kbps + 409,6kbps = 512kbps.
在下边的例子里将介绍:
• 怎样保证某一服务的带宽和使用空闲带宽
• 怎样优化一个服务(POP3)在其它的服务中(HTTP 、 FTP)
看这张图里我们如何共享流量的 ( 192.168.0.0/24是伪装地址):
1. 首先,我们用 mangle 标记 HTTP, FTP 和 POP3 的下载数据流. 在 192.168.0.0/24里, 我们需要用mark-connection参数标记外出的连接
QUOTE:
/ip firewall mangle
add in-interface=Local dst-address=:80 protocol=tcp action=passthrough /
mark-connection=http-con comment="" disabled=no
add in-interface=Local dst-address=:110 protocol=tcp action=passthrough /
mark-connection=pop3-con comment="" disabled=no
add in-interface=Local dst-address=:21 protocol=tcp action=passthrough /
mark-connection=ftp-con comment="" disabled=no
接着才能用 flow mark标记下载的数据流
QUOTE:
/ip firewall mangle
add protocol=tcp connection=http-con action=passthrough mark-flow=HTTP /
comment="" disabled=no
add protocol=tcp connection=pop3-con action=passthrough mark-flow=POP3 /
comment="" disabled=no
add protocol=tcp connection=ftp-con action=passthrough mark-flow=FTP /
comment="" disabled=no
2. 然后当我们有了用flow-mark 标记的数据包,我们就可以用它来构建一个队列树
添加一个队列保证有全部带宽(512kbps)的80% ,就是409.6kbps ,给HTTP服务。如果其它服务空闲时可以使用全部的带宽:
QUOTE:
/queue tree
add name="http-queue" parent=Local flow=HTTP limit-at=409600 max-limit=512000
添加一个队列给FTP保证有15% (76,8kbps):
QUOTE:
/queue tree
add name="ftp-queue" parent=Local flow=FTP limit-at=76800 max-limit=512000
现在添加一个队列保证全部带宽5% (25,6kbps)给POP3 服务使用. 设置这个服务的优先级为优先级7. 这意味着这条队列比其它之前的队列有着更高的优先级(默认的优先级是8) 所以他能在http-queue 和ftp-queue 之前处理:
QUOTE:
/queue tree
add name="pop3-queue" parent=Local flow=POP3 limit-at=25600 max-limit=512000 priority=7
POP3数据流因为更高的优先级,所以他能够抢先处理,比其他服务有更小的延迟通过路由。
使用 limit-at 和 max-limit参数,你能控制给服务允许的最小和最大的带宽。首先,limit-at是能够达到的速率,然后如果有更多的能用带宽,他将使用这些带宽(上边例子里是512kbps)
注意:对于正确设置的队列树所有limit-at的值得总和应该小于或低于总的带宽。这里是25,6kbps + 76,8kbps + 409,6kbps = 512kbps.
相关文章推荐
- 怎么保证和按优先级管理流量?
- 怎么保证和按优先级管理流量?
- 迁移打印服务--活动目录管理技术(转贴--收藏)
- 维克仪器客服管理软件 v1.2 怎么用
- 摩卡流量分析管理(Mocha NTA)解决方案
- 文樾杰出通用进销存管理系统 v7.06 怎么用
- 【转贴】史玉柱是怎样管理团队的?
- 现代人力资源综合分析管理系统 v2005 网络版 怎么用
- 新海gsp医药管理系统 v3.3 怎么用
- 管理团队时,怎样保证一直做正确的事?
- 管理者的任务--唐僧的管理哲学(转贴)
- 软件项目管理的质量保证
- BT发布服务器和流量管理系统安装指南
- [转贴]用CVS来管理自己的程序
- 怎么让Eclipse或者Apache Directory Studio(ldap的管理工具)加载指定的jdk?
- 转贴:用ASP.NET结合XML制作广告管理程序
- 浅谈管理软件开发类项目是怎么来的,怎么接到项目的,欢迎大家补充
- 教你怎么屏蔽掉在移动端的宽带运营商的流量劫持,屏蔽无耻的广告
- 论坛的管理怎么管