0

クライアントがメッセージを送信し、サーバーがそれをエコーバックするhttp://cs.baylor.edu/~donahoo/practical/CSockets/code/UDPEchoClient.cに基づいた UDP クライアントがあります。パケットをドロップできる構成可能なサーバーがあり、上記のコードで 1 つだけではなく複数のメッセージを送信しています。1 秒以上かかる場合、メッセージを削除するにはどうすればよいですか? 今のところ、recvfrom() でメッセージを取得した後、各メッセージをチェックしていますが、メッセージごとに 1 秒待ちたくないので、プログラム全体を 1.5 秒未満で実行したいと考えています (たくさんのメッセージがありました。)1秒以内に受信されなかった場合にドロップされたと見なされるように、各メッセージにタイマーなどを添付する方法はありますか? ありがとう!

4

1 に答える 1

-1

UDP パケットに TTL を使用する

int ttl = 60; /* max = 255 */
setsockopt(s, IPPROTO_IP, IP_TTL, &ttl, sizeof(ttl));
于 2016-02-07T16:58:31.723 に答える