Назад | Перейти на главную страницу

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

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

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

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

Через несколько секунд каждый хост получил 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 ping.

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

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

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