UDP 套接字编程
Socket programming in UDP
我有 2 个服务器和一个客户端。服务器和客户端之间有两种通信方式。我需要客户端上的多个套接字来与服务器通信吗?我只使用了一个套接字,并且丢失了一些来自服务器的数据包。我需要多少个套接字才能与服务器通信?
使用 UDP,您几乎总是只需要一个套接字;你可以调用 sendto()
和 recvfrom()
从任何地方发送和接收 UDP 数据包。
至于丢失UDP数据包,那是UDP的常态; UDP 数据包有时会在来自发送方和接收方的路径的任何步骤中被丢弃。您需要设计您的应用程序以容忍这种情况,或者想出一种机制,让接收方可以检测到数据包丢失并请求重新发送(或以其他方式处理这种情况)。
我有 2 个服务器和一个客户端。服务器和客户端之间有两种通信方式。我需要客户端上的多个套接字来与服务器通信吗?我只使用了一个套接字,并且丢失了一些来自服务器的数据包。我需要多少个套接字才能与服务器通信?
使用 UDP,您几乎总是只需要一个套接字;你可以调用 sendto()
和 recvfrom()
从任何地方发送和接收 UDP 数据包。
至于丢失UDP数据包,那是UDP的常态; UDP 数据包有时会在来自发送方和接收方的路径的任何步骤中被丢弃。您需要设计您的应用程序以容忍这种情况,或者想出一种机制,让接收方可以检测到数据包丢失并请求重新发送(或以其他方式处理这种情况)。