У меня та же проблема с моей бизнес-связью 5 Мбит / с, что и при другой публикации на этом сайте. Как только любой компьютер начинает загрузку, задержка первого скачка после нашего DFG, предоставляемого нашим провайдером (Bell), выходит за пределы графика. Этот первый прыжок, скорее всего, находится в том же здании и составляет 1 мс постоянно, начните загрузку, например, обновление Windows, и он скачет до 200-1000 мс.
Я часами разговаривал по телефону со службой поддержки, и все говорили, что вы достигли максимально возможной пропускной способности, поэтому время задержки может возрасти. Но мое чтение говорит мне, что они что-то ломают с TCP. Я провел тесты на домашнем соединении Shaw и даже на Rogers LTE, выполняющем загрузку и достигающем максимальной скорости передачи данных для моей учетной записи, но задержка не выходит за рамки.
Правильно ли я понимаю, что Белл что-то делает, чтобы сломать встроенные технологии TCP для управления скоростью на основе доступной пропускной способности между двумя конечными точками?
Ответы:
Белл говорит тебе правду. Когда вы пытаетесь протолкнуть 5 Мбит / с (или больше) в соединение 5 Мбит / с, все файлы в аккуратном небольшом порядке (читай: очередь.) Ваш пинг проходит без задержки, потому что нет никакого отставания. Ответ, однако, теперь находится в конце очереди. TCP делает именно то, что должен - отправитель заполняет разрешенное окно приема.
Есть некоторые вещи, которые вы можете сделать на своей стороне линии (QoS, WRED и т. Д.), Чтобы помочь уменьшить эффекты, но это именно то, что вы увидите, когда есть большая разница между полосой пропускания отправителя и получателя. Я жил с этим в течение многих лет (T1, 6 Мбит / с DS3, даже 10 Мбит / с кабельный модем). Вы можете попросить интернет-провайдера уменьшить размер очереди на их стороне, но они вряд ли это сделают, так как это приведет к отбрасыванию пакетов. ,
источник
Большинство форм «QoS» в наши дни не включают AQM, поскольку поставщики считают слишком сложным автоматическое конфигурирование RED, не причиняя вреда. Это приводит к ужасным задержкам, которые вы видите на многих распространенных сегодня устройствах, особенно кабельных модемах и беспроводных сетях. Так что простая рекомендация "включить qos" ... не помогает. Фактически, по крайней мере, по одному из продуктов Netgear включение ограничителя скорости для «QoS» приводит к значительно худшим результатам ....
Недавно появился новый алгоритм честной очереди + AQM, который, кажется, работает очень хорошо, а лучше, почти не требует настройки, кроме настройки ограничителя скорости. Он называется fq_codel, и теперь он широко доступен в большинстве Linux, а также перенесен на BSD. Это часть стандартного «QoS» в openwrt барьерном прерывателе, cerowrt и gargoyle использует (довольно хорошую) более раннюю версию под названием sfqred с инновационной схемой автоматической настройки скорости под названием ACC.
Таким образом, вы можете сбросить флажок на основе этого перед своей ненадлежащей связью, включить их ограничитель скорости QoS (установите чуть ниже настроек входящих и исходящих вызовов ваших провайдеров, чтобы вы могли контролировать) + fq_codel, и получить гораздо лучшую производительность для всех, кто его использует , Я имею в виду поразительно лучше: см. Демонстрацию IETF ниже, отчет рабочей группы ICCRG в IETF и т. Д.
Для получения более подробной информации о проблеме bufferbloat и ее устранении см .:
http://www.bufferbloat.net/projects/cerowrt/wiki/Bloat-videos
Мы (конечно) пытаемся убедить различных поставщиков услуг Интернет-провайдеров CPE обратить внимание, как и Cablelabs, который опубликовал замечательное исследование этого нового материала несколько месяцев назад, который также содержит некоторые подробности о текущем неправильном поведении кабельных модемов, в частности.
http://www.cablelabs.com/downloads/pubs/Active_Queue_Management_Algorithms_DOCSIS_3_0.pdf
источник
То, что вы видите, совершенно типично. Многие поставщики услуг будут ограничивать скорость и / или использовать механизм QoS для снижения приоритета ICMP (который включает в себя традиционный ping и traceroute), так как он иногда использовался для атак на отказ в обслуживании.
Пока ссылка не перегружена, пониженный приоритет ни на что не влияет, так как в очереди нет трафика. В течение этих периодов ваша задержка остается низкой, поскольку ICMP-пакеты будут пересылаться немедленно и вообще не задерживаться.
Когда ссылка перегружена, очереди с более высоким приоритетом привлекают больше внимания. В зависимости от механизма очередей он может пересылать несколько пакетов из очереди с более высоким приоритетом для каждого пакета из очереди с более низким приоритетом или даже пересылать только тогда, когда в очереди с более высоким приоритетом ничего нет. В любом случае пакет, отправленный в очередь с более низким приоритетом, обычно будет задерживаться дольше, чем в канале без перегрузки, увеличивая задержку.
источник
Вы, вероятно, страдаете от bufferbloat и хотите AQM (активное управление очередью). Я написал скрипт для Linux, который делает это довольно легко:
Вы просто сохраняете скрипт как
traffic-shaping
иchmod a+x
он и запускаете его как root (очевидно, после прочтения исходного кода).Для вашего случая использования я бы предложил
источник
linux-lowlatency
ядро, чтобы система выполняла задачу обработки всех пакетов.