7

Мой сосед по комнате - иностранный студент из Китая и любит смотреть китайские телешоу онлайн на веб-сайте этого региона (мы на восточном побережье США). Но это приводит к тому, что задержка в нашей сети смехотворно возрастает, достигая 400 мс при пинге 4.2.2.2 и в диапазоне от 100 до 1000+ (обычно где-то от 20-40 мс). К сожалению, она хочет не обращать внимания на проблему, поэтому мне нужно найти способ исправить эту проблему, не требуя ее соблюдения.

Мой текущий маршрутизатор (Netgear N150 WPN824N) не поддерживает QoS или какие-либо популярные пользовательские прошивки, которые его имеют (AFAIK). Поэтому я подумывал о покупке более дорогого маршрутизатора со встроенным QoS или более дешевого маршрутизатора с поддержкой Tomato, dd-wrt или чего-то еще. Но я не совсем уверен, в чем проблема или поможет ли QoS (то есть вещи, которые в идеале хотелось бы знать, прежде чем тратить деньги). Наиболее вероятный веб-сайт виновника, tv.sohu.com, не на английском языке и имеет в основном ограниченный по региону видеоконтент. Так что все, что я могу на самом деле проверить, - это задержку самого сайта (примерно 350 мс от того места, где я живу). Я не знаю, является ли это проблемой пропускной способности, или использует ли сайт какой-то странный нестандартный протокол, или что-то еще здесь может быть фактором. Я не специалист по сетевым технологиям, поэтому за пределами большого потребления пропускной способности я действительно не знаю, какие факторы могут повлиять на производительность сети таким образом.

Я действительно знаю, что у меня посредственное подключение к Интернету для начала, хотя. Когда я пытаюсь загрузить игру из Steam, я могу достичь пиковой скорости около 2,5 мегабайт / с, и это приведет к большой задержке. Но 2,5 Мбит / с - это большая пропускная способность, и я не могу себе представить, что этот сайт потребляет так много.

3 ответа3

5

Соседи по комнате отстают от интернет-соединения, просматривая видео с китайского сайта. Может ли QoS решить проблему?

Я не читал всю вашу историю, но, исходя из вопроса, который вы задали, ответ, как правило, не совсем. QoS может, в некоторых идеальных обстоятельствах, частично решить проблему, если вы используете определенные высокоприоритетные сервисы (например, Voice over IP), и пакеты правильно помечены, и ваш поставщик восходящего трафика уважает QoS. Но это не поможет вам, если приоритет ваших пакетов и пакетов вашего соседа по комнате одинаков.

То, что вы хотите, это какое-то активное управление очередью.

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

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

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

Задержка означает, что приложение, отправляющее или получающее данные, должно ждать очень долго, чтобы подтвердить, что оно правильно отправлено или получено. Поскольку данные в TCP-сокетах "проверяются" другой стороной в качестве подтверждения "ОК", я понял!msgstr "другой конец может предположить, что после некоторой задержки, пакет был потерян, и попытаться переслать в любом случае. Таким образом, цель большого буфера состояла в том, чтобы предотвратить повторные отправки, но в своем стремлении сделать это, вызывает повторные отправки !!! Каждая повторная отправка потребляет больше пропускной способности и увеличивает задержку.

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

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

Пока что единственное, что мы обнаружили, что является чрезвычайно успешным на домашних маршрутизаторах, это Active Queue Management с контролируемой задержкой (CoDel), которое является недавним дополнением к ядру Linux.

CoDel очень полезен, потому что он контролирует задержку (задержку) пакетов. Как это сделать, это слишком технический вопрос.

Некоторые ссылки на CoDel, чтобы вы могли прочитать об этом:

CoDel на bufferbloat.net

CeroWRT

Статьи Джима Геттиса о коделе

Изменить: QoS это только половина решения. QoS на основе портов (например, предоставление вашим пакетам более высокого приоритета) займет у вас только так далеко; это совсем не уменьшит раздувание буфера, а ваша задержка все равно будет высокой. Но потеря вашего пакета может немного снизиться.

CoDel в сочетании с QoS, а-ля CeroWRT на вашем роутере, действительно лучший подход.

0

Если вы на 100% уверены, что проблема возникает только тогда, когда ваш сосед по комнате транслирует видео, QoS поможет вам решить эту проблему.

Нет никаких "жутких протоколов из Китая" или чего-либо, что могло бы повлиять на вашу задержку. Это все о насыщении вашей связи. Когда в очереди больше пакетов, чем может обработать ваше соединение, каждый пакет должен "ждать своей очереди", что, очевидно, занимает 400 мс.

Используя QoS, вы можете выделить достаточно места (для себя), чтобы убедиться, что пакеты могут пройти через него, не ставя в очередь рядом с ее множеством пакетов для потоковой передачи видео.

0

Сначала я бы попытался поговорить с вашим соседом по комнате о том, как определенные привычки негативно влияют на вашу жизнь. Помимо этого, да, QoS решит вашу проблему. Вы можете ограничить пропускную способность для ее ПК, или определенных сайтов, или для беспроводных клиентов и т.п. DD-WRT имеет отличный интерфейс QoS, который позволяет очень детальную настройку. Однако это требует некоторых технических знаний, чтобы настроить / прошить маршрутизатор с новой прошивкой. На сайте DD-WRT есть подробные учебные пособия, и он станет для вас отличным ресурсом в этой ситуации.

База данных маршрутизатора DDWRT, убедитесь, что то, что вы покупаете, поддерживается.

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