Когда стоит заняться настройкой MTU и Jumbo Frame

Россия+7 (910) 990-43-11
Обновлено: 2022-06-05

Как правило, вам не нужно беспокоиться о MTU и Jumbo Frame. В сети это происходит за кулисами. Однако по мере того, как всё больше и больше пользователей получают широкополосный доступ гигабитного класса или даже более высокую скорость, понимание этих двух аспектов поможет в конкретных ситуациях.

Я видел много случаев, когда незначительные изменения этих значений помогают значительно улучшить сетевое соединение.

Этот пост даст вам общее представление об этих двух настройках и простой способ определить оптимальное значение MTU удаленной стороны, что позволит вам установить его соответствующим образом – если это необходимо.

Так что же такое MTU

MTU обозначает максимальную единицу передачи. Данные отправляются через пакеты (или кадры) в сети, а MTU – это самый большой размер пакета.

На сколько огромен?

  • Стандартный MTU составляет 1500 байт.
  • Когда вы переходите к Jumbo Frame, MTU достигает 9000 байт или даже больше.

Чтобы представить вещи в перспективе:

Как правило, байт представляет символ (букву или пробел между словами) в документе. Тем не менее, технически текст на этой веб-странице, состоящий примерно из 10 тысяч букв, прибыл на ваш экран примерно через семь пакетов.

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

Jumbo или нет, но MTU относительно невелик – при соединении устройства отправляют и получают их очень много. И поскольку это максимум, скорее всего, реальные пакеты ещё меньше. По умолчанию это определяет роутер или устройства.

Прежде чем мы пойдём дальше, давайте разберёмся со значением MTU. Это не так просто, поскольку больше – не всегда лучше.

Понимание MTU: больше не обязательно лучше

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

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

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

Идея MTU такова: вы хотите использовать максимально возможный размер, с которым могут справиться все вовлеченные стороны. Пакеты должны проходить через самую маленькую дверь, но не меньше этой. Я бы назвал это оптимальным значением MTU, и это не универсальное число.

Почему JumboFrame?

В течение многих лет стандартный MTU (1500 байт) работал нормально, работает и сейчас. Это потому, что в большинстве случаев мы имеем дело с субгигабитными соединениями.

Однако, если у вас есть сеть со скоростью 1 Гбит/с или выше, использование Jumbo Frame может значительно повысить скорость, опять же, если все вовлеченные стороны поддерживают это.

Включение поддержки Jumbo Frames на стороне локальной сети иногда может улучшить скорость Интернета

Jumbo Frame иногда требуется для обеспечения максимальной производительности. Например, коммутатору 10 Гбит/с может потребоваться использовать Jumbo Frame для обеспечения скорости 10 000 Мбит/с. Если вы используете стандартный MTU, скорее всего, он будет ограничен только половиной этого значения.

Большинство современных устройств могут обрабатывать Jumbo Frame и автоматически переключаться между Jumbo и Standard. Это переключение также требует вычислительной мощности, поэтому не рекомендуется включать «Jumbo Frame», если в этом нет никакой пользы.

Но, по большей части, включение Jumbo Frame безвредно для вашего устройства.

Когда безопасно использовать фиксированное значение MTU

Независимо от того, используете ли вы стандартный или Jumbo Frame, всегда имеет значение численный параметр MTU.

Другими словами, просто включив или выключив поддержку «Jumbo Frame», оборудование позаботится о фактическом значении MTU и в большинстве случаев будет способствовать совместимости.

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

Дело в том, что использование фиксированного MTU специфично и применимо только к частным случаям. И когда это применимо, это значительно улучшит скорость, но также может снизить производительность, когда это не так. Это палка о двух концах.

Скорость MTU и WAN (Интернет)

Как правило, вам не нужно ничего делать с MTU в вашем WAN (широкополосном) соединении. Это относится ко всем субгигабитным соединениям, для которых значение MTU, вероятно, равно 1500.

Однако, если у вас есть гигабитный или более быстрый Интернет, поддержка Jumbo Frame на стороне WAN или LAN сети, вероятно, поможет. Вероятно, потому что, опять же, это зависит от конкретных ситуаций. Кроме того, для правильной работы конкретного интернет-провайдера требуется определенное значение MTU.

И нет, вам не обязательно нужен Jumbo Frame для поддержки Gig+ и более высоких скоростей WAN.

Конкретный пример, где MTU, вероятно, играет большую роль:

У вас сверхскоростное WAN-соединение, и вы получаете ожидаемую скорость при прямом подключении одного устройства к конечному устройству – например, модему или оптоволоконному ONT.

Однако то же самое устройство (как единственное подключенное) получает значительно более низкую скорость (либо загрузку, либо выгрузку), когда вы устанавливаете роутер между ними. В этом случае несоответствие, вероятно, как-то связано с настройкой MTU роутера по умолчанию.

К сожалению, какое значение MTU использовать, зависит от ситуации. Во многих случаях этого можно добиться, включив поддержку роутером «Jumbo Frame» на стороне LAN. В других случаях вам нужно отключить его. А в остальном придётся менять значение WAN MTU вручную. Слишком много переменных.

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

Кроме того, определение оптимального значения MTU само по себе может оказаться сложной задачей.

Как определить лучшее значение MTU

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

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

Вы можете запустить эту команду как в командной строке (Windows), так и в терминале (Mac).

Чтобы использовать командную строку, найдите её через меню «Пуск» Windows. Используйте Spotlight для терминала на Mac.)

Вот синтаксис (командная строка) в Windows:

ping -f -l [размер пакета] [удаленная сторона]

В этой команде есть несколько компонентов:

  • -f: этот переключатель включает флаг «не фрагментировать». Это предотвращает фрагментацию пакета. Вместо этого он покажет, что требуется фрагментация, это означает, что размер пакета слишком велик, и отбросит пакет.
  • -l: этот переключатель позволяет вручную вводить размер пакета.
  • [размер пакета]: собственно, размер пакета в байтах, который вы хотите отправить, например, 1500.
  • [удаленная сторона]: это сторона, для которой вы хотите определить оптимальный MTU. Это может быть имя компьютера, IP-адрес или доменное имя.

Команда означает: Отправьте этому удаленному устройству пакет такого размера и посмотрите, что оно ответит. И по тому, как оно отвечает, мы можем определить наилучший размер пакета (значение MTU).

Шаги чтобы узнать оптимальное значение MTU

Так, например, если я хочу найти лучшее значение MTU для этого веб-сайта, я бы начал с этой команды, используя значение 1500 MTU (вы можете попробовать сами):

ping -f -l 1500 webznam.ru

Команда вернула: «Требуется фрагментация пакета, но установлен запрещающий флаг», это означает, что число MTU слишком велико. Нам нужно его понизить, поэтому я попробовал с 1400:

ping -f -l 1400 webznam.ru

Команда вернула «0% потерь», это означает, что размер MTU принят, но он всё ещё может быть ниже оптимального. Я увеличил его до 1470 с помощью этой команды:

ping -f -l 1470 webznam.ru

Никакой потери данных – оптимально сейчас либо 1470, либо выше. На этот раз поступим аккуратнее, добавим всего 3 байта к размеру пакета:

ping -f -l 1473 webznam.ru

На этот раз вновь выдало «Требуется фрагментация пакета, но установлен запрещающий флаг». К настоящему времени ясно, что оптимальное значение должно быть между 1470 и 1472. Я попытался угадать:

ping -f -l 1472 webznam.ru

0% потери данных! Вуаля! 1472 – оптимальное значение MTU для webznam.ru

Кстати, это оптимальное значение MTU для большинства сайтов. В приведенном выше примере показано только, как использовать команду ping для определения этого значения. Чтобы определить наилучшее значение MTU для любой удаленной стороны, вам нужно заменить webznam.ru IP-адресом или доменным именем этой стороны.

Например, если вы хотите узнать лучший MTU для вашего подключения к Интернету (WAN), используйте IP-адрес широкополосного шлюза по умолчанию. (Не путать с адресом шлюза по умолчанию вашего роутера, который предназначен для стороны локальной сети.)

Однако найти IP-адрес шлюза по умолчанию в глобальной сети непросто – если только у вас нет статического IP-адреса, в этом случае этот адрес предоставляется – но обычно он находится в пределах диапазона вашего IP-адреса в глобальной сети.

Обратите внимание, что даже если вы знаете IP-адрес шлюза по умолчанию вашей глобальной сети, некоторые интернет-провайдеры блокируют эхо-запросы глобальной сети в качестве меры безопасности. Так что, возможно, вам лучше позвонить им и спросить лучшее значение MTU.

Идея здесь такова: обработка значений MTU может быть немного трудоемкой, и для этого требуется хотя бы базовое понимание самого MTU, которое у вас сейчас есть. Во многих случаях это вопрос проб и ошибок. Но результат может быть приятным, если у вас есть соединение Gig+ или более быстрое.

Выводы – когда нужны MTU и Jumbo Frame

В большинстве случаев вам не нужно беспокоиться об MTU или Jumbo Frame, но это может быть последним кусочком головоломки, который обеспечивает максимальную скорость соединения в определенных ситуациях.

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

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


5.0/2