win10系统,网卡抓包抓到已经接收到1500个包,但程序中socket只收到了不到700个包,有知道这个原因的么?

promall 2016-08-08 09:29:27
问题如题,应用程序从socket收到的RTP数据包的时间,比网卡抓包的时间慢了不是一丁点,这个程序主要用来做流媒体视频播放,播放的视频就跟慢动作似的,能把人急死,不知道是哪里配置的问题?

程序是用的开源跨平台的框架,在Android平台不存在这个问题,但在win10上就有,socket创建的代码在这里可以看到:
https://github.com/DoubangoTelecom/doubango/blob/master/tinyNET/src/tnet_socket.c

接收数据代码在这里:
https://github.com/DoubangoTelecom/doubango/blob/master/tinyNET/src/tnet_transport_win32.c
其中的void* TSK_STDCALL tnet_transport_mainthread(void *param) 函数

尝试在一次 FD_READ 事件过来后,循环去读socket,直到读报错,但现象还是一样
/*================== FD_READ ==================*/
if (networkEvents.lNetworkEvents & FD_READ) {
...全文
360 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2016-08-08
  • 打赏
  • 举报
回复
不知道有多少前人掉在TCP Socket send(人多)send(病少)send(财富) recv(人多病)recv(少财富) 陷阱里面啊! http://bbs.csdn.net/topics/380167545
赵4老师 2016-08-08
  • 打赏
  • 举报
回复
引用 2 楼 xuddk727 的回复:
[quote=引用 1 楼 zhao4zhong1 的回复:] 不知道有多少前人掉在TCP Socket send(人多)send(病少)send(财富) recv(人多病)recv(少财富) 陷阱里面啊! http://bbs.csdn.net/topics/380167545
机器人坚持每日复制粘贴,真是佩服[/quote] 我就是钢铁侠!
promall 2016-08-08
  • 打赏
  • 举报
回复
引用 4 楼 oyljerry 的回复:
Debug的时候,不调试,直接运行是否会有问题。有时候调试会导致进程阻塞等。
没有调试,直接运行的
oyljerry 2016-08-08
  • 打赏
  • 举报
回复
Debug的时候,不调试,直接运行是否会有问题。有时候调试会导致进程阻塞等。
promall 2016-08-08
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
不知道有多少前人掉在TCP Socket send(人多)send(病少)send(财富) recv(人多病)recv(少财富) 陷阱里面啊! http://bbs.csdn.net/topics/380167545
调试的时候是DEBUG版本,生成Realease版本居然没有问题了,求解释
许文君 2016-08-08
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
不知道有多少前人掉在TCP Socket send(人多)send(病少)send(财富) recv(人多病)recv(少财富) 陷阱里面啊! http://bbs.csdn.net/topics/380167545
机器人坚持每日复制粘贴,真是佩服

18,363

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧