UDP 套接字编程

Socket programming in UDP

我有 2 个服务器和一个客户端。服务器和客户端之间有两种通信方式。我需要客户端上的多个套接字来与服务器通信吗?我只使用了一个套接字,并且丢失了一些来自服务器的数据包。我需要多少个套接字才能与服务器通信?

使用 UDP,您几乎总是只需要一个套接字;你可以调用 sendto()recvfrom() 从任何地方发送和接收 UDP 数据包。

至于丢失UDP数据包,那是UDP的常态; UDP 数据包有时会在来自发送方和接收方的路径的任何步骤中被丢弃。您需要设计您的应用程序以容忍这种情况,或者想出一种机制,让接收方可以检测到数据包丢失并请求重新发送(或以其他方式处理这种情况)。