У меня некоторое время были проблемы с сетью, и я пытаюсь найти источник проблемы.

Вчера я передавал файл с моего ноутбука на рабочий стол с помощью SCP через соединение Wi-Fi. Когда загрузка началась, оба компьютера имели низкую нагрузку на локальный маршрутизатор (192.168.1.1, оба сидели со скоростью 10 мс-50 мс), и загрузка шла со скоростью 2-3 МБ / с.

Примерно через минуту я обнаружил, что задержка моего рабочего стола до 192.168.1.1 резко возросла (> 1000 мс), и передача замедлилась до сканирования (~ 200 КБ / с). Однако задержка ноутбука до 192.168.1.1 осталась прежней (10-50 мс). После завершения передачи задержка рабочего стола упала до нормального уровня.

Понятно, что что-то идет не так, когда связь насыщена. Что бы это могло быть? Означает ли это проблему с роутером или проблему с моим рабочим столом? Где было бы правильное место, чтобы начать искать?

2 ответа2

2

Google для "раздувания буфера".

Поскольку ОЗУ стало дешевым, сетевое оборудование добавило буферы кадров, поэтому им никогда не придется отбрасывать кадр.

К сожалению, пропадание кадров было тем, как TCP замечал перегрузку и знал, когда нужно отступить. Без пропущенных кадров традиционные реализации TCP никогда не замечают перегрузку и никогда не отступают, поэтому они просто продолжают посылать с высокой скоростью и ухудшают ситуацию.

Если все ваше сетевое оборудование просто буферизует все больше и больше кадров во время перегрузки и позволяет длине очереди расти без ограничений, задержка увеличивается и увеличивается, поскольку для истощения очередей требуется больше и больше времени.

Методы и механизмы активного управления очередями (AQM), такие как явное уведомление о перегрузке (ECN), могут облегчить это, но поскольку проблема не очень широко освещена, трудно понять, какие продукты избегают раздувания буфера, а какие нет. Это не значит, что вы можете искать "No Buffer Bloat!""логотип на боковой стороне коробки и знаю, что вы получаете хорошее оборудование.

Однако существуют дистрибутивы встроенного программного обеспечения маршрутизатора Wi-Fi, которые специализируются на предотвращении переполнения буфера. По крайней мере, один дистрибутив был специально разработан исследователями TCP, которые впервые осознали проблему, и использовались в качестве платформы для исследований и разработок при поиске решений.

1

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

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