社区
网络编程
帖子详情
IOCP VS UDP异步通信。 讨论
star119119
2008-12-11 05:23:04
最近看了IOCP的使用。
同时存在很多问题,主难以理解的就是
IOCP是TCP通信的一个异步处理。那么,UDP的异步 实现相对来说不是更加容易和自由么?
谁能讲解一下 IOCP模式相比 UDP异步实现的优势呢?
...全文
496
20
打赏
收藏
IOCP VS UDP异步通信。 讨论
最近看了IOCP的使用。 同时存在很多问题,主难以理解的就是 IOCP是TCP通信的一个异步处理。那么,UDP的异步 实现相对来说不是更加容易和自由么? 谁能讲解一下 IOCP模式相比 UDP异步实现的优势呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiping881113
2010-05-15
打赏
举报
回复
学习!!!1
jacklzw88
2008-12-16
打赏
举报
回复
tcp+udp
csgdseed
2008-12-16
打赏
举报
回复
学习
DentistryDoctor
2008-12-15
打赏
举报
回复
Linux下可以用epoll模型。
oyljerry
2008-12-12
打赏
举报
回复
http://nicedayyep.javaeye.com/blog/89776
star119119
2008-12-12
打赏
举报
回复
哦,明白了。
网络模型的话。IOCP是近来比较流行的。
那么在 LINUX下游没有好的解决方案。WINDOWS解决大量客户请求的显然IOCP是最理想的。
那么LINUX下呢?
cnzdgs
2008-12-12
打赏
举报
回复
用TCP比较省事一些,用UDP如果设计合理,在某些情况下效率会比TCP高。
oyljerry
2008-12-12
打赏
举报
回复
本质区别还是TCP和UDP,对于通信要求的不同,采用不同的协议
id27145
2008-12-12
打赏
举报
回复
tcp可靠udp不可靠 协议不同
iocp只是提高了性能 与udp没什么可比性
通信软件 文件之类的要求数据完整性的用tcp 消息之类的不重要的数据用udp
CodeProject-Jerry
2008-12-12
打赏
举报
回复
IOCP和UDP 是2个不同类的东西,怎么比较啊?
要么比较网络协议 TCP vs UDP
要么比较网络模型 IOCP vs other
实际上. IOCP也可以使用UDP的
如果是对实时性要求高, 需要实现视频会议之类,这种情况下可以选择UDP。
如果选择TCP,会导致:在网络环境很差的情况下,丢包--》滑动窗口变小--》阻塞--》实时性跟不上
但选择TCP的代价是高昂的(较之UDP),毕竟要维护一个链接成本。
但UDP的可靠性问题必须解决, 可以参考RUDP设计
CodeProject-Jerry
2008-12-12
打赏
举报
回复
楼主,这个问题好像不是很好回答, 2个不同类概率进行比较。
要么比较TCP与UDP
要么比较IOCP与其它类型的网络流式模型。
UDP也可以使用IOCP的
如果是对实时性要求高的话,最好选择UDP。特别是视频会议之类的。
因为采用TCP, 网络丢包会导致滑动窗口变小,最终导致阻塞。 实时性跟不上要求。
但UDP的可靠性是必须考虑的。 如果你要传递可靠信息。 可以参考RUDP实现, 或者TCP
oyljerry
2008-12-12
打赏
举报
回复
http://www.codeproject.com/internet/iocp-multicast-udp.asp?print=true
ivan_08
2008-12-12
打赏
举报
回复
关注
star119119
2008-12-12
打赏
举报
回复
IOCP是没有必要使用UDP。
UDP本来就支持异步通信,事件监听。所以根本没必要使用IOCP
我的疑问是:IOCP都是在 TCP协议下的 异步实现。他的好处就是 减少SOCKET堵塞。以提高SOCKET的并行。
那么通过UDP协议也可以实现这个目的从而达到 提高SOCKET并行处理的性能。
那么 如果 举例 1000客户联机的 情况下。一个简单的通信软件,功能包括发送文件,视频,文字。
是采用基于IOCP的TCP协议好呢?还是UDP的异步模式?
以上是指服务器端。
可能之前我没表达清楚。
cnzdgs
2008-12-11
打赏
举报
回复
IOCP和UDP不是互斥的。
DentistryDoctor
2008-12-11
打赏
举报
回复
UDP没有必要用IOCP吧?
冈仁
2008-12-11
打赏
举报
回复
不懂
Leo_red
2008-12-11
打赏
举报
回复
[Quote=引用 1 楼 blackcat242 的回复:]
异步操作和udp有什么关系?这两个如何比?
[/Quote]
同意,完全两回事啊。
IOCP更像连接池和线程池,UDP是协议的说。
ivan_08
2008-12-11
打赏
举报
回复
不会啊,友情帮顶
blackcat242
2008-12-11
打赏
举报
回复
异步操作和udp有什么关系?这两个如何比?
基于
IOC
P模型实现TCP服务器、客户端,串口、命名管道等类库
UDP
、并口等参考后也较容易实现。特别数据包头解析部分,已经支持多种类型:包头(含数据长度)、特殊类型包头识别、串口问答模式等已经封装好了。目前为较稳定版本,希望能解决小型桌面系统、服务器端常规应用开发...
轻量级的通信引擎 StriveEngine
如果您的项目不需要P2P、不需要传文件、不需要群集等功能,只需要简单的TCP/
UDP
通信。那么,可以考虑使用轻量级的通信引擎StriveEngine。相比较而言,StriveEngine更单纯、更容易上手,也更容易与已存在的遗留系统...
Socket编程系列之6:Libuv高性能异步IO及高效网络编程
---------------------------------------------------Socket编程系列之6:Libuv高性能异步IO及高效网络编程 Libuv是一个高效的异步IO开发库,Linux下采取libev,Windows下独立编程实现
IOC
P高效网络编程。...
StriveEngine2.0
如果您的项目不需要P2P、不需要传文件、不需要群集等功能,只需要简单的TCP/
UDP
通信。那么,可以考虑使用轻量级的通信引擎StriveEngine。相比较而言,StriveEngine更单纯、更容易上手,也更容易与已存在的遗留系统...
acl 框架库-其他
5、服务器框架:包括进程池模式、线程池模式、非阻塞模式、
UDP
通信模式及触发器模式 6、事件引擎:支持 select、poll(for unix)、epoll(for linux)、kqueue(for bsd)、devpoll(for solaris)、
ioc
p(for win32)、win32...
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章