如何用UDP实现可靠传输 rt。本人还是菜鸟,希望讲解能详细一点。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看看这个吧,随手找的,不知道行不行!http://www.codeproject.com/KB/IP/udt.aspx 方法都有很多种,主要的思想就是模仿TCP提高可靠性。或者你还可以看看TFTP协议。 UDT是你的正确选择或者研究一下TCP协议栈 用UDT 或者自己实现 用RDUP也可不过据说UDT的效率比较高。 udp实现可靠性,需要对协议设计有很深刻的认识 自定义通讯协议,如果没有收到对方的ACK,重发包。 如果想要用UDP实现可靠传输就不得不自己在应用层实现定义一些可靠的协议,比如说检测包的顺序、重复包等等的问题~~所以想实现可靠传输还是推荐用TCP 这个实际上就是你自己实现一套tcp的机制了,挺复杂的 UDP能实现可靠传输吗?记得大学时老师说,UDP是不可靠连接,这和他的工作原理相关,假如要实现可靠传输,那就和TCP没太大区别了,那到还不如直接采用TCP呢。 实现的方式很多,就是性能区别很大要实现UDP确认重发,需要缓存发送数据包、执行额外的计算来验证正确性,会增加很大的开销。不过数据量大的时候一般都是用这种方式替换TCP UDT是个比较好的选择源码及示例下载:http://sourceforge.net/projects/udt/ udp 发出的包本是不可靠的。你自己定义一些ACK在接收方去判断可靠不可靠 udt协议有解决办法,提供了跟socket基本一致的接口,参考一下吧gl 其实很简单的,你发送消息的时候,在前面加上一个消息序列判断,发送方记录这个序列号,然后发送给对方,如果对方收到,马上发送一个验证消息,接受法在规定的时间(比如2s)内如果没有收到验证消息,就重发给消息,接收方如果接受到了该消息,记录下该消息的序列号,如果接受到消息,就判断这条消息的序列号是否已经存在,如果存在,给对方发送验证消息,但不对这个数据做其他处理, 这就是防止TCP的超时重传机制 就是简单模拟TCP 重传,数据排序等操作,数据会存储在本地缓冲QUEUE里, 你可以参考RUDP, UDT 这些协议都已经很完善了呀。嘿嘿 没必要自己写,不用想你写的肯定没UDT好。 UDT能P2P吗,好象不行吧。这个开发包就是自己实现的,楼主可参考一下:http://www.anychat.cn/faq/ 散分散分散分散分(十二) 请教 那高手会在对话框上放置工具栏 怎么将我的电脑属性中的用户名下的那一串数字得到阿 菜鸟的问题,狂受打击 怎么调用不了DLL 请教: MouseOver()的算法 与数据库设置相关的问题 请问有做过硬件的吗?计算机接口方面的知识哪里有??谢谢!新年快乐 怎么找到所有系统com组件以及组件的说明 从网上下载了一个绘图控件,想用控件关联数组,怎么办? 求救,HELP,如何通过一个ATL控件创建另一个ATL windowlESS控件,高分回报! 位图重叠问题。急急急
或者你还可以看看TFTP协议。
或者研究一下TCP协议栈
不过据说UDT的效率比较高。
要实现UDP确认重发,需要缓存发送数据包、执行额外的计算来验证正确性,会增加很大的开销。
不过数据量大的时候一般都是用这种方式替换TCP
源码及示例下载:http://sourceforge.net/projects/udt/
gl
这就是防止TCP的超时重传机制
数据会存储在本地缓冲QUEUE里, 你可以参考RUDP, UDT 这些协议都已经很完善了呀。
嘿嘿 没必要自己写,不用想你写的肯定没UDT好。
这个开发包就是自己实现的,楼主可参考一下:http://www.anychat.cn/faq/