-1

UDP 有一个很好的特性——它是无连接的。但是它有很多不好的特性——数据包可能会丢失,多次到达,没有数据包顺序——数据包2可以比1更快到达。如何保持好,去除坏?是否有任何好的实现可以在 udp 之上提供可靠的传输协议,这样我们仍然是无连接的,但没有提到的问题。mosh 就是一个例子。

4

1 回答 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 回答