社区
网络编程
帖子详情
udp下iocp应用,收到的包总是少于发送的
nowordwind
2010-07-23 10:47:08
客户端与服务端都使用IOCP机制,客户端一次性发送出3000个包,每个包大小为30字节左右,而服务端最终收到的包数,总是少于3000;如果客户端一次性发送100个包左右,确能接收完全,具体是啥原因呢。我的服务端,是每接收到一个包后,就接着投递一个读请求。急,在线等待。
...全文
156
7
打赏
收藏
udp下iocp应用,收到的包总是少于发送的
客户端与服务端都使用IOCP机制,客户端一次性发送出3000个包,每个包大小为30字节左右,而服务端最终收到的包数,总是少于3000;如果客户端一次性发送100个包左右,确能接收完全,具体是啥原因呢。我的服务端,是每接收到一个包后,就接着投递一个读请求。急,在线等待。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
周药师
2010-07-23
打赏
举报
回复
可以用抓包工具看看
首先检查是否已经发出3000个包
然后检查接收端逻辑是否有问题
玉古云投
2010-07-23
打赏
举报
回复
你的接收端有没有用接收处理线程,不是完成端口工作线程
UDP本来就是非可靠的,发送端发送出去的数据包,接收端不一定能收到
jasonM2008
2010-07-23
打赏
举报
回复
IOCP 很复杂,你可能对其没有完全理解。代码问题导致的。
zmshy2128
2010-07-23
打赏
举报
回复
接收端增加缓冲,windows默认情形下是8k,LZ的3000*30远大于8k,使用setsockopt函数,
接收端缓冲有限,还没取完数据,缓冲就覆盖了,当然就接收不到
nowordwind
2010-07-23
打赏
举报
回复
我是本机测试,并未通过网络。
已用抓包工具看过了。客户端确实是发送了3000个包。不多不少,如果说接收端逻辑有问题,我也在郁闷呢,到底是哪里呢?我是接收到后,立马投递了一个读的请求。并没有少投递啊。为什么就叫的不对呢????
数据发送的速度远大于接收的速度。可是我才仅仅发了3000个包。不可能这么快就处理不过来了吧。
zmshy2128
2010-07-23
打赏
举报
回复
晕死,是远大于8k
zmshy2128
2010-07-23
打赏
举报
回复
不是IOCP的原因,在网络传输中,数据发送的速度远大于数据接收的数据。
解决方法:
1、优化接收端的代码性能
2、接收端增加缓冲,windows默认情形下是8k,LZ的3000*30正好大于8k,使用setsockopt函数,
3、发送端控制发送数据的速度。
如果还是不行,那就换网线、路由器等硬件设备吧
精通
IOC
P服务器开发:TCP/
UDP
与
应用
层设计
本文介绍在Windows系统利用I/O完成端口(
IOC
P)进行TCP和
UDP
服务器开发。阐述了
IOC
P机制、TCP与
UDP
服务器开发流程及要点,探讨请求 - 响应、状态机等
应用
层设计模式,还介绍了hp - socket - 3.0.1库,可简化开发过程。
Windows下的
IOC
P模型(二):
IOC
P使用示例
本文介绍如何在Windows下利用
IOC
P模型设计一个支持tcp、
udp
、广播和
udp
组播的网络通信底层模块。通过多个
IOC
P实例区分处理不同通信协议的事件,以确保性能和正确性。详细探讨了TCP单线程处理防止数据乱序,以及
UDP
和广播的多线程优化策略,并提供了模块实现的源码链接。
构建高性能
UDP
服务器:完成端口
IOC
P+
UDP
源码实战
本文介绍在Windows系统中通过I/O完成端口(
IOC
P)和用户数据报协议(
UDP
)构建高效网络
应用
。阐述了Windows网络编程模型、
IOC
P原理及实现、
UDP
特性及
应用
等内容,还涉及C++在网络编程的
应用
和Visual Studio 2015开发环境配置,助开发者了解高性能网络编程。
实现
UDP
IOC
P
本文分享了将
UDP
与
IOC
P结合使用的实践经验,
包
括解决效率问题的方法、关键数据结构的设计及实现步骤。作者通过对比多线程+阻塞模型与
IOC
P模型,详细介绍了如何在
UDP
中使用
IOC
P提升数据采集效率。
UDP
的
IOC
P方式
本文介绍了一个基于C++实现的C
IOC
PServer类,该类利用Windows
IOC
P完成端口机制处理
UDP
协议下的客户端连接请求和服务。文章详细展示了如何进行socket初始化、创建完成端口、启动和停止服务器等关键步骤。
网络编程
18,357
社区成员
64,165
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章