Задержка пинга между двумя напрямую подключенными ПК

Задержка пинга между двумя напрямую подключенными ПК

У меня большой опыт работы с PCIe, немного с USB и мало с Ethernet, поэтому следующее меня сбило с толку:

Я оцениваю производительность контроллера USB-to-Ethernet по сравнению с контроллером PCIE-to-Ethernet (NIC) с точки зрения задержки. В этом эксперименте важна точность, вплоть до микросекунды (я знаю, что в реальной жизни это может не иметь никакого реального влияния).

Чтобы получить базовый уровень сравнения, я подключил 2 идентичные материнские платы ПК напрямую с помощью кабеля Ethernet длиной 1 метр к их встроенным портам Ethernet. Оба ПК работают под управлением последней версии Windows 10 (сборка 1709), без брандмауэра, без антивирусной защиты и без других включенных сетевых подключений или WIFI.

Через несколько секунд каждый хост получил IP-адрес, и я попробовал из командной строки:

ping <host ip> -n 100

Windows ping.exe показывает только задержку "<1 мс", поэтому я поискал более точный инструмент. Я нашел hrping в сети, который показывает точность в микросекунды: https://www.cfos.de/en/ping/ping.htm#options

Используя hrping, я попробовал:

hrping <host ip> -n 100

и на этот раз я получил средний результат0,426 мсза 100 упаковок.

После этого я провел несколько тестов - вместо использования встроенного контроллера Ethernet на одном из хостов я использовал один раз свой контроллер NIC, а в следующий раз - свой контроллер USB-to-Ethernet. Каждый раз я использовал одну и ту же команду hrping для отправки 100 пингов.

Через пару часов я снова подключил 2 ПК напрямую с помощью кабеля Ethernet длиной 1 м к их встроенным портам Ethernet и снова запустил hrping. Я ожидал примерно те же 0,426 мс, что и раньше, но на этот раз я получил0,845 мс. Поэтому я снова запустил инструмент, и внезапно все цифры стали выше. Я снова протестировал свою сетевую карту и контроллер USB-ethernet, и их результаты также были выше примерно на 0,5 мс по сравнению с предыдущими результатами.

Мой вопрос таков:почему значения пинга так сильно различаются? В случае 2 ПК, подключенных напрямую, что мешает результатам ping? Между ними нет коммутаторов, и ПК ничего не делали, так почему же так много разных результатов? Может, hrping просто не возвращает надежные цифры?

Существует ли более точный метод измерения задержки сети между двумя ПК, чтобы сравнить ее с задержкой через мою сетевую карту и USB-адаптер Ethernet?

Связанный контент