У меня есть Ubiquity RouterStation Pro с последней версией OpenwRT.
Подключаясь через провод напрямую к маршрутизатору или через коммутатор, я получаю именно ту скорость, которую ожидаю, как в своей локальной сети, так и в Интернете. Гигабит в локальной сети и около 1,2 мегабайта в секунду в интернет.
Подключаясь через беспроводное соединение G, я получаю именно ту скорость, которую я ожидаю от локальных серверов, которая составляет около 3 мегабайт в секунду (конечно, это может быть лучше, но это не плохо).
Когда я использую то же самое беспроводное соединение, что и выше, и загружаю что-то из интернета, моя максимальная скорость составляет около 30-60 килобайт в секунду. При использовании ping не происходит значительной потери пакетов.
Приведенные выше тесты скорости выполнялись путем загрузки файлов через http или ssh (через scp и rsync). Однако, используя инструмент iperf, который выполняет тестирование производительности сети, я могу получить полную скорость интернета для любого соединения на любом порту, даже через беспроводную сеть.
Я действительно смущен. Любая помощь?
редактировать
После некоторых размышлений я подумал, что проблема может быть связана с размером пакета (раньше я видел нечто подобное в другой сети). Чтобы проверить это, я использовал ping -f -c 500 -s $SIZE
(то есть: отправку пингов различного размера). При размере пакета ниже 220, количество пингов составило почти 0%. Кроме того, скорость выпадения быстро росла, достигая 30% при размере 512 байт.
Используя эти данные, я изменил таблицу маршрутов на ноутбуке, чтобы установить MSS равным 220, что, насколько я понимаю, ограничивает размер пакетов TCP/IP примерно до этого размера. Затем я запустил тест скорости, и я получил 600-700 КБ / с. Намного лучше! Я приписываю уменьшенную скорость по сравнению с проводным соединением наличию такого жалкого размера пакета.
Я не считаю это исправленным, а просто обходным путем. Я все еще хочу выяснить, почему это происходит, и как я могу это исправить.