2010-02-26 4 views
1

У меня есть простой клиентский сервер UDP, написанный на C++ на Ubuntu 9.10, где клиент отправляет набор на сервер. Как я могу проверить, сколько времени он занимает, чтобы отправить его. Мне нужно найти время от начала передачи до конца.Как найти время отправки данных через UDP

Предположим, что мой сервер и клиент находятся на одной машине, а затем я могу как-то сохранить системное время и найти разницу или что-то еще?

+0

определить время, которое требуется для его отправки. вы имеете в виду время, необходимое для возврата вызова sendto(), время, необходимое для того, чтобы пакет оставил карту сетевого интерфейса, время, которое требуется, пока оно не прибудет на сервер, ...? – stmax

ответ

0

Если вы спрашиваете, сколько времени потребуется, чтобы пакет прибыл на сервер, нет встроенного способа получения этой информации.

Если сервер отправляет ответ, вы можете указать время, необходимое для отправки запроса и получения ответа, и разделить на 2 (неточность, но достойная оценка).

1

Настройка сервера для немедленной отправки ответа клиенту. У клиента измеряется время в оба конца. Время, которое вы ищете, составляет половину времени в оба конца.

0

Вы можете указать время, в которое вы отправили пакет в начале в каждом пакете. Другими словами, вы можете создать настраиваемый заголовок для всех ваших пакетов, которые будут включать эту информацию.

Смежные вопросы