免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 8569 | 回复: 26
打印 上一主题 下一主题

请教负载均衡和流量控制的问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-04-24 04:51 |只看该作者 |倒序浏览
想实现的功能如下:
linux作为防火墙, 连接内网和internet。有三条dsl线路。
功能一:
对不同的应用,我要将流量分到不同的线路上, 比如:
http 走DSL1,
ssh  走DSL2,
p2p  走DSL3


功能二:
对内网的用户,按照IP进行流量控制, 不管用户的具体应用, 也就是说:在这时, 我们把DSL1, 2 ,3
看作一条线路。




对功能一,我可以通过iptables对包设置mark, 用策略路由来实现, 没有问题。

对功能二, 我想用tc的CBQ实现流量控制。但是没法将三条DSL配置成一条。


请教了。谢谢!

论坛徽章:
0
2 [报告]
发表于 2007-04-24 07:12 |只看该作者
原帖由 lc1999 于 2007-4-24 04:51 发表于 1楼  
对功能一,我可以通过iptables对包设置mark, 用策略路由来实现, 没有问题。

对功能二, 我想用tc的CBQ实现流量控制。但是没法将三条DSL配置成一条。

我认为功能一中对 P2P 设置走另一条路由无法实现

因为 P2P 是动态 IP 随机 PORT,因此只能通过 layer7 或者 ipp2p 等模块进行内容匹配

udp 协议还好说,每个包基本都含有应用的特征,但 TCP 协议在传输 payload 内容前是有三次握手的,而三次握手的时候是没有 payload 的,言外之意在三次握手的时候你根本就不知道它是什么应用

假如有两条 connection,一个是正常应用(比如 POP3),一个是 P2P(比如 BT),他们开始都是发起 TCP 连接请求然后与对端进行三次握手,那么这个过程你让他走哪个链路?若得知是 P2P 之后,其中一个恐怕要马上被 MARK 然后改走第二条链路,那么这个 connection 还能继续保持吗?对端看到的 src 可就突然变了,这个会话也不能继续

论坛徽章:
5
IT运维版块每日发帖之星
日期:2015-08-06 06:20:00IT运维版块每日发帖之星
日期:2015-08-10 06:20:00IT运维版块每日发帖之星
日期:2015-08-23 06:20:00IT运维版块每日发帖之星
日期:2015-08-24 06:20:00IT运维版块每日发帖之星
日期:2015-11-12 06:20:00
3 [报告]
发表于 2007-04-24 13:55 |只看该作者
二楼说的没错,P2P不可能做到均衡,及时根据L7匹配,因为它不是匹配所有的包,而是只匹配几个包,最多只能做到这几个包走某一特定接口。

对内网的用户,按照IP进行流量控制, 不管用户的具体应用, 也就是说:在这时, 我们把DSL1, 2 ,3
看作一条线路。

这个也许可以考虑多网关负载均衡。

论坛徽章:
0
4 [报告]
发表于 2007-04-24 21:16 |只看该作者

谢谢各位的回复。

对功能一,我还是基于端口的, 如果是非标准端口,我让流量走某一条规定DSL。当然这只是一个折中的方案。
的确,通过应用(ipp2p和L7filter)来判断非常困难。


对于功能二,我不理解的地方是: 如果实现了功能一,已经将不同的应用分到不同的DSL,又怎么把
这三条DSL看作一条进行带宽控制呢?




谢谢了!

论坛徽章:
0
5 [报告]
发表于 2007-04-24 21:18 |只看该作者
原帖由 ssffzz1 于 2007-4-24 13:55 发表于 3楼  
二楼说的没错,P2P不可能做到均衡,及时根据L7匹配,因为它不是匹配所有的包,而是只匹配几个包,最多只能做到这几个包走某一特定接口。

对内网的用户,按照IP进行流量控制, 不管用户的具体应用, 也就是说 ...



谢谢了。
能否给点详细的资料关于“多网关负载均衡”?

论坛徽章:
0
6 [报告]
发表于 2007-04-24 21:21 |只看该作者
精华里面好多这种帖子呢,多条线负载均衡的

论坛徽章:
0
7 [报告]
发表于 2007-04-25 21:03 |只看该作者
原帖由 zhy0414 于 2007-4-24 21:21 发表于 6楼  
精华里面好多这种帖子呢,多条线负载均衡的



可能我没有说清楚。

对内网的用户,按照IP进行流量控制, 不管用户的具体应用, 也就是说:在这时, 我们把DSL1, 2 ,3
看作一条线路。

也就是说,每个客户可能的带宽不一样。

论坛徽章:
0
8 [报告]
发表于 2007-04-25 23:19 |只看该作者
hehe,其实都可以实现,只要好好读一下iptables的相关文档,关于ipp2p只匹配前几个包,那就够了,有conntrack restore就可以对以后的数据进行控制了.
需求越多,规则越复杂,但是好像合理的组合总能达到意想不到的结果.

论坛徽章:
0
9 [报告]
发表于 2007-04-26 17:57 |只看该作者
原帖由 lc1999 于 2007-4-25 21:03 发表于 7楼  



可能我没有说清楚。

对内网的用户,按照IP进行流量控制, 不管用户的具体应用, 也就是说:在这时, 我们把DSL1, 2 ,3
看作一条线路。

也就是说,每个客户可能的带宽不一样。



按照用户进行流量控制好像要用到tc了
把三条线当成一条,进行负载均衡那不就是多条线的负载均衡?光负载均衡是不限制每个用户的带宽的

论坛徽章:
0
10 [报告]
发表于 2007-04-26 23:31 |只看该作者
原帖由 wysilly 于 2007-4-25 23:19 发表于 8楼  
hehe,其实都可以实现,只要好好读一下iptables的相关文档,关于ipp2p只匹配前几个包,那就够了,有conntrack restore就可以对以后的数据进行控制了.
需求越多,规则越复杂,但是好像合理的组合总能达到意想不到 ...

可否针对这个问题做一个解决的例子?我还没有想到什么好办法,感觉需要高级策略路由和对连接打标记,但具体不知该如何实现
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP