Нетбук моей жены начал вести себя странно в последнее время. Я покопался и обнаружил следующие симптомы:

  • просмотр веб-страниц: мучительно медленный (продолжает "загружать" страницы; он может показывать что-то наполовину логотип Google, а затем "зависать")
  • apt-get: передаст первые 5k пакетов, а затем застрянет; после перезапуска он увеличится до 10 тысяч; затем около 16к.

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

01:18:48.672286 IP 192.168.2.3.48010 > 72.14.234.104.80: Flags [P.], seq 618:1271, ack 5751, win 360, options [nop,nop,TS val 666336 ecr 2373881974], length 653
01:18:48.730567 IP 72.14.234.104.80 > 192.168.2.3.48010: Flags [.], ack 1271, win 129, options [nop,nop,TS val 2373882338 ecr 666336,nop,nop,sack 1 {618:1271}], length 0

Примечательные вещи, которые нужно знать, в порядке приоритета:

  • Я попробовал как через Wi-Fi (через пользовательский драйвер Realtek для Asus 1001HA), так и через Ethernet, «разделяя интернет-соединение» с моего Mac
  • также пробовал живую версию Ubuntu Netbook (10.4): такое же поведение
  • это работает под Windows (вздох ..)
  • ping localhost работает
  • пинги в локальной сети работают
  • мы переехали в квартиру; все отлично работает на моем Mac и ее другом ПК, хотя
  • за последние месяцы в Linux не было обновлений
  • dmesg показывает необычной активности
  • несколько DNS-серверов были опробованы, все с одинаковым результатом
  • нет прокси всей системы
  • в браузере нет прокси, а кеши / куки очищены
  • дисковое пространство в порядке
  • Загрузка процессора низкая, как обычно
  • нет дополнительных маршрутов по умолчанию

Обновление Кстати, я попробовал Ubuntu на ее ПК, и он ведет себя точно так же. Интересно, если это точка доступа (D-Link), которая портится с Linux.


Заметки из первой версии этого поста

- Я добавил эти заметки, так как уже получил ответ на эту тему, но с тех пор все изменилось ...

Относительно поведения ping ; каждый пакет был отправлен / получен, но с большими задержками:

root@katies:~# !ping
ping www.google.com
PING www.l.google.com (66.249.92.104) 56(84) bytes of data.
64 bytes from 66.249.92.104: icmp_seq=1 ttl=51 time=57.7 ms
64 bytes from 66.249.92.104: icmp_seq=2 ttl=51 time=82.4 ms
64 bytes from 66.249.92.104: icmp_seq=3 ttl=51 time=77.1 ms
64 bytes from 66.249.92.104: icmp_seq=4 ttl=51 time=82.9 ms
64 bytes from 66.249.92.104: icmp_seq=5 ttl=51 time=79.5 ms
^C64 bytes from 66.249.92.104: icmp_seq=6 ttl=51 time=78.8 ms

--- www.l.google.com ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 25704ms
rtt min/avg/max/mdev = 57.772/76.438/82.947/8.595 ms

В последних двух строках написано: для отправки 6 PING потребовалось 25 секунд. Однако каждый пинг должен отправляться в течение 1 секунды, а не 5. Кроме того, время прохождения туда-обратно довольно мало, как и должно быть.

3 ответа3

0
  1. Является ли задержка только при просмотре веб-страниц? Вы пробовали другие приложения?
  2. Какой браузер она использует? Сколько вкладок у нее открыто?

Я видел похожую задержку на своем ноутбуке Debian, если у меня слишком много открытых вкладок в Iceweasel. Я также видел ссылки на ошибку MySQL, которая вызывает подобные проблемы.

0

Какие именно аргументы команды ping(1) вы используете? Это не показано

Если вы добавляете время каждого отдельного ICMP-пакета:

57,7 мс + 82,4 мс + 77,1 мс + 82,9 мс + 79,5 мс + 78,8 мс

Это 458,40 мс. По умолчанию ping(1) устанавливает интервал 1 с между пингами. Обычно это занимает 1000 мс * 5 (поскольку между каждыми 6 эхо-запросами всего 5 интервалов) + 458,40 мс = 5458,40 мс, а не 25704 мс. И пинг не сообщают ни о какой потере пакета.

Возможно, в ваших аргументах ping(1) у вас есть что-то вроде "-i 5".

Это добавляет 5 секунд между каждым запросом ICMP. И это имеет смысл, 5000 мс * 5 + 458 мс = 25458 мс

Что составляет около 25704 мс в вашем выводе.

0

Проблема оказалась в очень, очень плохой точке доступа / беспроводном маршрутизаторе: D-Link G604T. По-видимому, из-за какой-то серьезной ошибки с прокси-сервером DNS или пересылкой пакетов и IPv6 он не работает в Linux (Ubuntu).

Решение состояло в том, чтобы снять вещь и заменить ее чем-то более приличным.

ОБНОВЛЕНИЕ, 2011-09-25

Подобная версия этой проблемы коснулась и моего Mac даже после замены старого роутера. Эта проблема затрагивала все устройства на базе UNIX (в основном, каждый мой друг, у которого был Mac, который приходил в гости).

Некоторые подробности о поведении:

  • не может загрузить большие файлы через Интернет (передаст 49 152 байта, затем зависнет)
  • странное поведение vua ssh (будет передавать файлы размером 49 150 49 151 и 49 153, но не 49 152
  • будет передавать (через ssh) файлы размером до 100 Кб, но после этого будет зависать случайным образом
  • очень высокая скорость загрузки / выгрузки при передаче файлов небольшими порциями по протоколу bittorrent

Исправлено: масштабирование окна TCP или

sudo sysctl -w net.inet.tcp.rfc1323=0

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .