这是题外话,互联网上有大量这方面的信息。
我要做的就是用“OK”回复发送者,并传递一个 packetId,以便发送者知道他收到的是哪个数据包 OK。如果发件人在 30 秒(或其他时间)内未收到 OK 消息,他将再次发送包裹(使用相同的 packageID)。猎犬会再次处理包裹,除非他已经拿到了包裹。在这两种情况下,他都会向发件人发送一个 OK 包裹。因此,发送者不知道自己的消息是否出错,也不知道检索者的消息是否出错。如果您使用 packageIds,那也没关系。
顺便说一句,UDP 是一种通常不承诺数据包到达目的地的协议。因此,如果您确实想保证这一点,您可能应该使用不同的协议(即 TCP)。