UdpClient丢包重传问题 应该很难,由于UDP不是面向连接的网络协议,所以在用UDP协议来传送数据时,在数据发送后,并不能确认对方是否接收到 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在消息传递线程中,当发送方发送消息时,接收方如果有收到消息包,则返回一个'收到'消息给发送方,发送方以此来判断是否发送的消息是否丢包。这需要线程SLEEP一定的时间。如果没有收到接收方返回的信息包,则可再次尝试发包。如此反复N次,如果始终没有收到返回包,则考虑用TCP方式或其他中转方式进行消息的重传递。 接收方在收到数据后向发送方发送确认消息,如果发送方在指定的时间里没有得到确认消息的话,认定发送失败,重新发送数据 --------------------- 我试了,发送时等待线程特别慢,是我写的方式不对吗?能否提供实例原形码提示一下.谢谢!!你既然能收就能发,在客户端收到消息后马上向服务器发送一条收到标识UDPCLIENT.SEND()既然是要求数据完整,为什么不用TCP呢?????? 1.使用TCP2.使用UDP,並自己定義一套協議來實現數據完整性驗證重傳機制 tcp对客户端的实时连接数量有限制,用Udp是因为它占用服务器的资源少,速度快.但丢包的现象比较多.我解决的甚不理想.想请求有经验者. UDP+定制的协议可以在很大程度上解决UDP丢包多的现象。我建议你现在先不急着写代码实现,不妨看点UDP或相关的知识,然后就考虑一个客户端会遇到什么情况,如何处理。比如: 客户端要发送信息,要先知道对方IP,这需要跟服务器通讯。然后发送信息,但此时信息发送不成功(丢包),因为没有“打洞”信息 客户端发送'打洞信息'及收到'请求打洞信息'如何处理。 客户端发送信息(打洞后):怎么判断是否对方收到信息?要执行几次才能判断对方是真的收不到信息?确定对方收不到信息了怎么办? 定制的协议就是在这 客户端收到信息要怎么处理:给发送方发送收到所发送的消息的确认 大家进来看下! 100分求助:如何resize动态的gif文件?在线等 未将对象引用设置到对象的实例 在别人机子上运行正常 用c#进行视频截图的问题? 求助两个日期之间的间隔 httpRequest和httpwebrequest类有什么区别呢? 无法写入编译好地程序集的错误 当鼠标停留在DataGrid某个单元格时,如何获取此单元格的值,谢谢 WPF,可以创建静态的依赖项属性吗? 求vs.net 2003英文版的下載﹗﹗﹗真的很急呀。買不到﹗ 怎样用socket传递中文 关于类型转换的问题
---------------------
我试了,发送时等待线程特别慢,是我写的方式不对吗?能否提供实例原形码提示一下.谢谢!!
你既然能收就能发,在客户端收到消息后马上向服务器发送一条收到标识
UDPCLIENT.SEND()既然是要求数据完整,为什么不用TCP呢??????
2.使用UDP,並自己定義一套協議來實現數據完整性驗證重傳機制
客户端要发送信息,要先知道对方IP,这需要跟服务器通讯。然后发送信息,但此时信息发送不成功(丢包),因为没有“打洞”信息 客户端发送'打洞信息'及收到'请求打洞信息'如何处理。 客户端发送信息(打洞后):怎么判断是否对方收到信息?要执行几次才能判断对方是真的收不到信息?确定对方收不到信息了怎么办? 定制的协议就是在这 客户端收到信息要怎么处理:给发送方发送收到所发送的消息的确认