1

Во-первых, обратите внимание, что я использую Ethernet, а не Wi-Fi.

Сверяясь с моим провайдером, я загружаю 5 Мбит / с и 512 Кбит.

Так почему же при загрузке в Google Drive (я использую приложение Mac OSX Google Drive, которое запускается в строке меню) я нахожу серфинг настолько медленным?

Разве сравнительно небольшая полоса пропускания, которую я имею в наличии для загрузки, не должна оставлять много пропускной способности кабеля и / или ISP для скачивания?

Это то, что меня всегда смущало. Я пытался связаться с моим провайдером, но они не знали ответа.

3 ответа3

3

Узким местом является, как вы и предполагали, восходящий поток данных: если он насыщен загрузкой, он привнесет высокую задержку в пакеты ack TCP (что касается больших загрузок), а также в DNS-запросах и HTTP-запросах (в отличие от их ответы) - это приведет к очень ощутимой медлительности.

Поскольку большая часть этой задержки возникает из-за очередей и буферизации, решение состоит в том, чтобы уменьшить ваши загрузки примерно до 95% доступной пропускной способности загрузки - это будет держать очереди и буферы близкими к пустым, но не будет существенно препятствовать вашим загрузкам.

1

Насыщение вашего апстрима НЕ ДОЛЖНО вызывать большие задержки. Вы хотите, чтобы загрузки насыщали ваш апстрим, в противном случае вы бы тратили впустую трафик и имели бы ненужные длительные загрузки. Тем не менее, во многих домашних сетях насыщение вашего восходящего потока приводит к высокой задержке, но это не просто факт жизни, который вы должны принять и смириться с этим, это ошибка, которую можно исправить, а не просто обойти путем замедления загрузки ,

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

Если Google Drive использует TCP для загрузки, это не должно усугублять перегрузку или увеличивать задержку, поскольку в TCP есть встроенные механизмы предотвращения перегрузок и контроля перегрузок.

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

Посмотрите на bufferbloat и посмотрите, как на вашем маршрутизаторе устанавливается встроенное ПО, поддерживающее инновации в области защиты от буферов, которые были впервые использованы в проекте CeroWrt, такие как интеллектуальная организация очереди FQ_CoDel (или обычный CoDel) и уведомление о явном перегружении (ECN).

Если не считать этого, если ваш маршрутизатор (возможно, с микропрограммой стороннего производителя) позволяет вам делать какие-либо ограничения полосы пропускания порта WAN, вы должны ограничить то, что он отправляет через свой порт WAN, до эффективной пропускной способности восходящего канала вашего широкополосного подключения к Интернету.

То есть, допустим, у вас есть такая ситуация:

  • Порт WAN вашего маршрутизатора - Gigabit Ethernet
  • Он подключен к модему ADSL2+, установленному для Приложения A, и вы платите за «до 25 Мбит / с вниз, до 6 Мбит / с вверх»
  • Вы измерили свою загрузку с помощью dslreports.com/speedtest (инструмент тестирования скорости DSLReports измеряет буферную загрузку, делая его намного лучше, чем Speedtest.net), и вы получаете только 400 Кбит / с.

В этом сценарии, поскольку вы знаете, что ваш широкополосный восходящий канал на самом деле измеряет только 400 кбит / с, настройте порт WAN вашего маршрутизатора так, чтобы он передавал только 400 кбит / с к модему. Это, вероятно, будет препятствовать созданию раздутых буферных очередей.

-1

Я столкнулся с этой проблемой, а затем запустил Оптимизатор TCP с http://www.speedguide.net/downloads.php и использовал его, чтобы установить для моего соединения оптимальные настройки. Теперь синхронизация Google Диска больше не убивает мою сеть. Хорошие времена.

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