Linux ping фактически не отправляет 1 пакет в секунду

Я испытываю какое-то странное поведение. В то время как на перегруженной беспроводной сети я запускаю

$ ping google.com 

Я ожидаю, что один пакет будет отправлен каждую секунду, и только некоторые из них возвратятся с разным временем туда и обратно, и это чаще всего походит на поведение. Но в этой очень перегруженной беспроводной сети я вижу что-то вроде этого:

  • Почему моя беспроводная локальная сеть 802.11g настолько медленная?
  • Только ноутбук Dell не подключается к Интернету
  • Wi-Fi работает нормально, но нет подключения к Интернету в Windows 8
  • RTL8188CUS AP и клиентский режим одновременно с hostapd в Linux?
  • Как создать беспроводную связь WDS между двумя домашними беспроводными маршрутизаторами?
  • Как удалить предыдущие сетевые подключения из Windows 7?
  •  PING google.com (74.125.224.228) 56(84) bytes of data. 64 bytes from lax04s08-in-f4.1e100.net (74.125.224.228): icmp_req=1 ttl=53 time=193 ms 64 bytes from lax04s08-in-f4.1e100.net (74.125.224.228): icmp_req=2 ttl=53 time=238 ms 64 bytes from lax04s08-in-f4.1e100.net (74.125.224.228): icmp_req=3 ttl=53 time=96.8 ms 64 bytes from lax04s08-in-f4.1e100.net (74.125.224.228): icmp_req=4 ttl=53 time=12.9 ms 64 bytes from lax04s08-in-f4.1e100.net (74.125.224.228): icmp_req=5 ttl=53 time=219 ms 64 bytes from lax04s08-in-f4.1e100.net (74.125.224.228): icmp_req=9 ttl=53 time=1105 ms 64 bytes from lax04s08-in-f4.1e100.net (74.125.224.228): icmp_req=8 ttl=53 time=2339 ms 64 bytes from lax04s08-in-f4.1e100.net (74.125.224.228): icmp_req=17 ttl=53 time=881 ms 64 bytes from lax04s08-in-f4.1e100.net (74.125.224.228): icmp_req=18 ttl=53 time=1200 ms ... --- google.com ping statistics --- 57 packets transmitted, 41 received, 28% packet loss, time 113307ms rtt min/avg/max/mdev = 5.773/447.217/2339.271/496.011 ms, pipe 3 

    Ключевая строка:

     57 packets transmitted, 41 received, 28% packet loss, time 113307ms 

    Так как вы можете видеть, что пинг продержался около 113 секунд, но отправил только 57 пакетов. Я видел это несколько раз:

     $ ping google.com PING google.com (74.125.224.232) 56(84) bytes of data. 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=1 ttl=53 time=6.98 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=2 ttl=53 time=5.71 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=3 ttl=53 time=4.47 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=4 ttl=53 time=5.75 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=5 ttl=53 time=6.94 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=6 ttl=53 time=14.2 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=7 ttl=53 time=6.22 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=8 ttl=53 time=11.8 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=9 ttl=53 time=4.29 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=10 ttl=53 time=5.43 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=11 ttl=53 time=5.02 ms 64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=12 ttl=53 time=4.89 ms ^C64 bytes from lax04s08-in-f8.1e100.net (74.125.224.232): icmp_req=13 ttl=53 time=7.36 ms --- google.com ping statistics --- 13 packets transmitted, 13 received, 0% packet loss, time 60262ms rtt min/avg/max/mdev = 4.299/6.865/14.258/2.838 ms 

    Это еще более странно, потому что все RTT разумны, пакеты просто не отправляются быстро. Может ли кто-нибудь пролить свет на это? Я тестирую debian (wheezy) и еще несколько статистических данных:

     $ ping -V ping utility, iputils-sss20101006 Linux 3.0.0-1-amd64 #1 SMP Sat Aug 27 16:21:11 UTC 2011 x86_64 GNU/Linux 03:00.0 Network controller: Intel Corporation Centrino Ultimate-N 6300 (rev 35) 

  • Более быстрый способ монтирования удаленной файловой системы, чем sshfs?
  • Команда не найдена при использовании sudo
  • Когда я перезагружаюсь из Linux в Windows, клавиатура и мышь USB не работают
  • Присоедините много файлов MP3, OGG и FLAC в один WAV или FLAC
  • Файлы rsync более 1 недели
  • Как я могу «grep» рекурсивно фильтровать имя файлов, которые я хочу с помощью подстановочных знаков?
  • One Solution collect form web for “Linux ping фактически не отправляет 1 пакет в секунду”

    Похоже, у вас есть одна из версий ping которая выполняет поиск DNS для каждого полученного пакета. Поскольку пакет UDP DNS должен проходить через ту же самую перегруженную сеть, что и пакеты ping, пакет может быть удален. При тайм-аутах и ​​повторных попытках может потребоваться значительное время для запроса DNS для возврата данных. Время ожидания ответа DNS задерживает отправку следующего пакета ping, поскольку ваш ping является однопоточным и не использует асинхронный таймер для управления каждым пингом.

    Если мой диагноз правильный, добавление -n к ping должно избавиться от задержек.

    Давайте будем гением компьютера.