【发布时间】:2016-05-26 01:29:55
【问题描述】:
我知道如何发送和接收 UDP 和 TCP 数据包,我怎样才能实现发送可靠 UDP 数据包的某种方式? 我只是要求一个逻辑,因为我不知道这是如何工作的。 提前致谢。
【问题讨论】:
-
没有 100% 可靠的方法来确保您的 UDP 消息被发送和接收,但是您可以在您的应用程序中使用确认消息来查看您是否确实收到了发送和接收消息。您最可靠的方法总是通过 TCPIP 发送数据包,但这并不总是 100%。您有任何代码可以与我们分享吗?
-
为什么在需要可靠性的同时使用 UDP?
-
如果您想通过网络可靠地发送数据包,请使用 TCP。
-
在尝试编写网络库之前,您确实需要研究协议。您的代码(刚刚检查过 github)有多个设计问题。
-
查看现有协议,例如 Google 的 QUIC 或 AFS 的 Rx。他们定义了类似于 TCP 的 UDP 重试机制,以便可以可靠地传递数据。但可能他们没有 .NET 实现,您需要开发它。
标签: c# networking udp