UDP传输数据包丢失,怎么解决

UDP传输数据包丢失,如何解决
遇到一点问题:
    UDP是不可靠传输,进行数据传递时,会有数据包丢失。我们已经做了重传机制,在有数据包丢失后,进行传输。
    但是还有问题,刚开始使用时,传输比较稳定,用了一段时间后,就有发送失败的情况,重传后也不能发送,然后把路由器断电重新开始后,又稳定了。我们分析是数据包发送多后,造成网络堵塞。或者我们分析是错误的,可能是其他情况导致数据包丢失。
    想请教各位下,UPD的数据包有生命周期吗?能不能接收到后,就把数据包kill掉? 
UDP 通信 可靠传输 数据包

------解决方案--------------------
看看发送的 UDP 包是否有超过网络的限制.
不过是局域网内应该问题不大.

------解决方案--------------------
我们分析是数据包发送多后,造成网络堵塞。
可有具体抓包看过?

UDP本来是不可靠的,如果要可靠,只能自行添加类似TCP的重传机制,但是TCP的流量控制又是不好掌握,所以如果需要可靠,不如直接用TCP。

又或者改变算法/业务逻辑,使之在掉包的情况下也能正确处理。

------解决方案--------------------
采用应答机制保证丢包重传,也可以加入心跳机制来保证。
------解决方案--------------------
引用:
采用应答机制保证丢包重传,也可以加入心跳机制来保证。


加了这些其实不如直接用TCP了。。。
------解决方案--------------------
引用:
Quote: 引用:

采用应答机制保证丢包重传,也可以加入心跳机制来保证。


加了这些其实不如直接用TCP了。。。

有些时候用udp有优势,如果使用tcp,新的问题接踵而至,比如:并发连接数、采用何种模型
------解决方案--------------------
任何通讯手段如果没有应答机制都形同虚设!
------解决方案--------------------
you can implement a like tcp function using udp.
http://www.codeproject.com/Articles/16935/A-Chat-Application-Using-Asynchronous-UDP-sockets