免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8864 | 回复: 18

[网络子系统] 高负荷网络下内核如何保证心跳报文的优先级(HA场景) [复制链接]

论坛徽章:
0
发表于 2012-09-12 13:47 |显示全部楼层
进程有优先级,网络传输也有优先级,内核在发送报文拥塞时对报文有优先级,但是在接收报文到本机时,如果报文很多,如何保证其中的某些报文,比如心跳的优先级?

地球人都知道,linux内核在软中断里处理外部事件,所有软中断处理是严格串行的(本CPU),除了HA心跳报文这种场景,比如定时器消息之类的,如何保证得到及时处理?

论坛徽章:
0
发表于 2012-09-13 00:38 |显示全部楼层
   关注                    

论坛徽章:
0
发表于 2012-09-13 14:03 |显示全部楼层
没有搞HA的么?
专家叫兽顶出来!

论坛徽章:
0
发表于 2012-09-17 09:11 |显示全部楼层
本帖最后由 mordorw 于 2012-09-17 09:16 编辑

这个问题我觉得很有必要啊
继续顶专家叫兽

论坛徽章:
0
发表于 2012-09-17 11:07 |显示全部楼层
问题很有趣,为什么没人回答?给你点建议,请教问题是一件严肃的事情,最好不要使用无厘头式方式,除非你和他们很熟。

论坛徽章:
0
发表于 2012-09-18 21:25 |显示全部楼层
心跳报文必须过tcp/ip栈么

论坛徽章:
0
发表于 2012-09-19 09:54 |显示全部楼层
jzwxh77 发表于 2012-09-17 11:07
问题很有趣,为什么没人回答?给你点建议,请教问题是一件严肃的事情,最好不要使用无厘头式方式,除非你和 ...


是很严肃啊,没人关注啊

论坛徽章:
0
发表于 2012-09-28 16:06 |显示全部楼层
国庆前再顶一次

论坛徽章:
6
金牛座
日期:2013-10-08 10:19:10技术图书徽章
日期:2013-10-14 16:24:09CU十二周年纪念徽章
日期:2013-10-24 15:41:34狮子座
日期:2013-11-24 19:26:19未羊
日期:2014-01-23 15:50:002015年亚洲杯之阿联酋
日期:2015-05-09 14:36:15
发表于 2012-09-28 17:44 |显示全部楼层
回复 1# mordorw
进程有优先级,网络传输也有优先级,内核在发送报文拥塞时对报文有优先级,但是在接收报文到本机时,如果报文很多,如何保证其中的某些报文,比如心跳的优先级?

地球人都知道,linux内核在软中断里处理外部事件,所有软中断处理是严格串行的(本CPU),除了HA心跳报文这种场景,比如定时器消息之类的,如何保证得到及时处理?


其实这个问题更像一个设计问题。
HA中的心跳线一般是单独的网卡,或者使用串口心跳。如果使用串口心跳,这个可以忽略了。。。
如果使用单独网卡心跳:
  方案1: 增大可接受的心跳延迟度
  方案2: 将这个网卡的中断指定到一个单独的CPU核心上,这个CPU核心主要做调度、定时器等实时性比较好的请求;应用数据包部分网卡的中断指定到其他的CPU上。

如果心跳网卡和业务网卡是同一个,貌似只有一个方案了:
    增大可接受的心跳延迟度

论坛徽章:
0
发表于 2012-09-28 20:27 |显示全部楼层
回复 9# 瀚海书香


我们心跳网卡和业务网卡是同一个,延迟为200ms,目前效果还不是很理想。
在流量很大或者CPU负载较重时,还是有可能超过200ms。
   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP