免费注册 查看新帖 |

Chinaunix

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

请教一个局域网udp丢包的问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-08-07 20:40 |只看该作者 |倒序浏览
小弟有一台linux服务器和一台windows的pc机,连在同一个交换机上面。然后在pc机上面开了10个vlc mediaplayer作为client向服务器发送ts流,每个流码率大概为2Mbps,然后开了大概有30秒钟。连着测了好多次,有1/3的情况没有丢包,有1/3情况丢2个包,有1/3情况丢其他数量包(<6).

我想请问一下这种丢包率是否是比较正常(但是我又觉得在一个交换机上面不大可能),还是可能是什么别的原因(我的udp接收缓冲区已经设为1M,感觉应该够大了),请大家多多指教,能不能教我找出丢包的原因,谢谢先

论坛徽章:
0
2 [报告]
发表于 2007-08-07 20:46 |只看该作者
因为listen端口太多(4096个),所以我开16个线程,每个epoll256个端口。
while(1){
int ret=epoll_wait(ev,event.256,-1);
if(ret>0)
          for(i=0;i<ret;i++)
              /*耗时很少,不会block*/
              dosomething();
else
     continue;
}

不知道有没有什么问题(反正不能开4096个线程这样处理了,那样在线程间切换时间太多了),请大家多多指教

论坛徽章:
0
3 [报告]
发表于 2007-08-07 21:10 |只看该作者
你是怎么判断丢包的?
是在接收机上抓包分析的吗?

论坛徽章:
0
4 [报告]
发表于 2007-08-08 08:55 |只看该作者
回楼上的,因为ts包里面有一个counter,从0递加到0xf,然后又从0开始,我有个分析工具,可以很方便看到有包丢失(就是这个counter不连续,当然原始文件肯定是正常的)

论坛徽章:
0
5 [报告]
发表于 2007-08-08 09:19 |只看该作者
如果发送缓冲或者对方的接收缓冲溢出的话就会丢包,
另外线路不好也会丢包,不过如果只在电缆和光纤上跑得话丢包基本上是因为遇到了流量控制

论坛徽章:
0
6 [报告]
发表于 2007-08-08 09:29 |只看该作者
因为不清楚是自己的程序问题还是网络丢包问题,所以定位还是麻烦了 继续测试ing,ps:这个交换机并没有设置flow control呀

论坛徽章:
0
7 [报告]
发表于 2007-08-08 09:35 |只看该作者
根据我的经验,这样的丢包率是正常的.
vlc你应该选择的是rtp吧,这样发送缓冲是不可能会溢出的.
所以你首先要排除接收缓收是否可能溢出.

我最近做的rtp,也是局域网丢包过多,后来换了个交换机,就好多了.但还是有小量的丢包,大约几分钟丢一个吧.换条网线说不定也有改善的;或者看看是不是局域网本身网络已经很拥塞了.

论坛徽章:
0
8 [报告]
发表于 2007-08-08 13:45 |只看该作者
原帖由 whuphoenix 于 2007-8-8 09:29 发表
因为不清楚是自己的程序问题还是网络丢包问题,所以定位还是麻烦了 继续测试ing,ps:这个交换机并没有设置flow control呀


比如说带宽到上限也是遇到了流量控制。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP