UDP 有一个很好的特性——它是无连接的。但是它有很多不好的特性——数据包可能会丢失,多次到达,没有数据包顺序——数据包2可以比1更快到达。如何保持好,去除坏?是否有任何好的实现可以在 udp 之上提供可靠的传输协议,这样我们仍然是无连接的,但没有提到的问题。mosh 就是一个例子。
问问题
1461 次
1 回答
1
根据上下文,您所描述的糟糕并不是真的很糟糕。例如,UDP 在实时流中使用很多,在这种情况下,交付确认和重新发送是无用的。
话虽如此,您可能想查看几个实现:
ENet ( http://enet.bespin.org/ )
RUDP(https://en.wikipedia.org/wiki/Reliable_User_Datagram_Protocol)
UDT(https://en.wikipedia.org/wiki/UDP-based_Data_Transfer_Protocol)
我在嵌入式环境中工作:
CoAP ( https://en.wikipedia.org/wiki/Constrained_Application_Protocol ) 也实现了很多这些功能,因此值得一看。
您不选择 TCP 的原因是什么?
于 2017-04-19T13:43:46.333 回答