免费注册 查看新帖 |

Chinaunix

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

十万火急!!拜托求各位大虾帮忙。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-21 12:57 |只看该作者 |倒序浏览
需求:
在一台单网口的工控服务器(CPU 赛扬600M,256M内存)上要实现这样一个功能:
1.服务器上有一对UDP侦听端口如5000:5001,当5000端口收到数据转发到5001端口收到数据的源Ip:原端口,
                                       当5001端口收到数据转发到5000端口收到数据的源Ip:原端口
  (注:数据的来源IP:端口,服务器事先是不知道的,每个UDP包长在200字节左右,包间隔20ms左右)

2.服务器上同时有100对这样的UDP端口对都支持这样的功能。

我的实现:
我自己写了一段应用程序来实现这个功能,
方法如下:侦听一对UDP端口A,B
当端口A收到数据时,记下A端口的数据来源Ip:端口,
当端口B收到数据时,记下B端口的数据来源Ip:端口,
然后端口A接收的数据转发到B端口数据来源Ip:端口,
    端口B接收的数据转发到A端口数据来源Ip:端口。


发现问题:
当有48对同时工作时,CPU就被占用90%~100%,其中其系统占用到了80%。
cpu占用必须降下来才行。

寻求解决方案:
1.能否用iptable控制内核来实现上述功能?若可行具体怎么做?
2.其他??????

论坛徽章:
0
2 [报告]
发表于 2008-08-21 13:34 |只看该作者
iptable完全可以啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP