Билайн

Правильное значение mtu. Оптимальный размер MTU — снижаем нагрузку на сеть

Здравсвуйте, дорогие посетители! Те, кто часто читает сайт, уже наверное заметили, что я очень часто и много пишу о решении разных проблем с маршрутизаторами, беспроводными сетями и тому подобным. Просто эта тема сейчас очень актуальная и очень много разных вопросов возникает при самостоятельной настройке Wi-Fi. У меня на этот счет даже есть одна интересная идея, о которой я пока не расскажу, даже не спрашивайте:).

Я всегда анализирую комментарии, которые посетители оставляют к разным статьям и стараюсь понять какие проблемы и ошибки возникают при настройке Wi-Fi роутеров. Бывает, что посетители делятся разными решениями определенной проблемы. За что им большое спасибо! Информация, которой вы поделитесь, может многим помочь.

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

Я уже писал о подобных проблема в статье . В ней я советовал просто сменить DNS в настройках роутера. Действительно, из-за DNS так же могут возникать вышеперечисленные проблемы.

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

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

Что такое MTU и зачем его изменять?

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

Я постараюсь все это дело объяснить простым языком.

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

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

Какое значение MTU указать в настройках маршрутизатора?

Для Dynamic IP и Static IP – скорее всего нужно оставить 1500 (это по умолчанию)

MTU для L2TP 1460

PPPoE 1420

Для Интертелеком, в настройках я устанавливал 1476 (это значение подходит для всех 3G сетей, если я не ошибаюсь) .

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

Если Вы уже узнали, какое значение указывать в параметрах маршрутизатора, то сейчас покажу, как и где сменить MTU.

Прежде всего нам нужно зайти в настройки роутера. Просто откройте в браузере адрес 192.168.1.1 , или 192.168.0.1 . Логин и пароль по умолчанию – admin и admin (адрес, логин и пароль вы можете посмотреть снизу роутера) . Если не можете попасть в настройки, то смотрите статью.

Роутеры TP-Link

В роутерах TP-Link перейдите на вкладку Network WAN и укажите нужное значение в поле MTU Size (кстати MTU указывается в байтах) .

Сохраните настройки и перезагрузите маршрутизатор.

В роутерах Asus

Перейдите на вкладку “Дополнительные настройки” “WAN” , или “Интернет” .

Кстати в Asus есть свои особенности, о которых я и сам не знал. Там поле MTU появляется только при выборе некоторых подключений.

Если нет этого поля, то MTU нужно указывать в поле . В это поле пишем такую строчку MTU 1460 MRU 1460 (не забываем изменять значение) .

Если у Вас другой роутер, например D-Link, или ZyXEL, то ищите параметр MTU на вкладке, где вы задавали параметры для подключения к интернету. Обычно это вкладка WAN.

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

Всем добра и стабильной работы WiFi!

Ещё на сайте:

Что такое MTU? Как изменить MTU в настройках роутера? [проблемы с загрузкой некоторых сайтов, воспроизведением видео] обновлено: Февраль 7, 2018 автором: admin

Информация в компьютерных сетях передается в виде небольших сформированных блоков данных (иначе говоря, пакетов). Каждый пакет помимо пересылаемой информации содержит еще и служебные данные, составляющие так называемый заголовок (header) пакета. Эти служебные данные нужны для определения целостности данных, используемой версии сетевых протоколов и т.д. При этом размер полезного блока данных ограничивается определенным количеством байт. Делается это для того, чтобы снизить вероятность потерь информации и уменьшить время повторной пересылки пакета в случае появления проблем с подключением.

MTU – что это?

MTU (от англ. Maximum transmission unit) – это максимальный объем данных, передаваемый по сети без дальнейшего фрагментирования (одним пакетом). Любая информация, объем которой превышает значение MTU, автоматически разбивается на небольшие блоки данных перед отправкой по сети. Возможные значения MTU зависят от используемого типа подключения к сети. Так, при использовании PPoE (в основном с ADSL и подобными технологиями) максимальное значение параметра MTU составляет 1492 байта (стандартные 1500 байт для Ethernet минус восемь байт заголовков), а при использовании Wi-Fi MTU может достигать 2304 байт.

В современных ОС оптимальное значение MTU зачастую вычисляется самой системой или берется из настроек маршрутизатора (обычно значение MTU задается в разделе WAN сетевых настроек устройства). Если проблем с доступом к Интернету не наблюдается, значение MTU лучше не менять. Однако, если возникли проблемы со связью и вы предполагаете, что они могут быть связаны с фрагментацией сетевых пакетов, попробуйте изменить значение MTU.

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

Рассчитываем значение MTU

Найти оптимальное значение MTU можно с помощью старой-доброй команды ping. Предположим, что мы определяем значение этого параметра для проводного подключения. Открываем командную строку Windows и пишем такую команду:

ping www.google.com -f -l 1472

В Linux команда обычно имеет вид ping -M do -s 1472 www.google.com, а в macOS ping -D -s 1472 www.google.com (в некоторых версиях систем ключи могут отличаться, рекомендуем обратиться к man ping, если команда не работает). В данном случае мы отправляем по адресу www.google.com пакеты размером 1472 байта и запрещаем фрагментировать данные. Если пакеты такого размера не могут быть отправлены, команда сообщит, что необходима фрагментация пакета. Перезапустите эту команду несколько раз, постепенно уменьшая размер пакета на 8–10 байт. В итоге после нескольких попыток вы подберете значение размера, при котором отсылка данных состоится. Помните: если используется беспроводное подключение, размер пакета может быть больше 1500 байт.

Запомните полученное значение и прибавьте к нему 28 байт (длина служебных заголовков). Получившееся значение – это оптимальное (или близкое к оптимальному) значение MTU для вашей сети.

Устанавливаем значение MTU

Теперь вы знаете, какое значение MTU можно использовать в вашей домашней сети. Укажем операционной системе, что необходимо использовать именно его (дальнейшие примеры иллюстрируют настройку сети IPv4).

В Windows открываем командную строку с правами администратора и выполняем команду:

netsh interface ipv4 show subinterfaces

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

netsh interface ipv4 set subinterface Ethernet mtu=1450 store=persistent

Здесь Ethernet – название интерфейса (может быть другим), 1450 – выбранный размер MTU. Если название состоит из нескольких слов, его надо указывать в кавычках.

Для отключения автоматической настройки MTU можно выполнить команду:

netsh int tcp set global autotuninglevel=disabled

Включить автоматическое определение MTU можно той же командой с параметром autotuninglevel=normal.

Если необходимо сбросить настройки к исходному состоянию, выполняем команду:

netsh interface ipv4 reset

В Linux настройка MTU осуществляется с помощью команды ip. Посмотрим текущее значение MTU:

$ ip link show | grep mtu

# ip link set eth0 mtu 1450

Здесь eth0 – название интерфейса, оно может быть другим на вашем компьютере. Для того чтобы выбранное значение MTU использовалось постоянно при каждом входе в систему, необходимо прописать значение в файл /etc/network/interfaces, либо создать модуль для systemd. Рекомендуем обратиться к документации используемого дистрибутива для получения более подробной информации.

В macOS посмотреть размер MTU для подключения en0, а затем установить значение параметра можно в терминале:

networksetup -getMTU en0

networksetup -setMTU en0 1450

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

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

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

TCP MTU option у Ростелекома и других провайдеров

В качестве протокола сетевого уровня в наборе TCP/IP последний предназначается для реализации потенциально больших систем локальных сетей. За время работы с IP мы привыкли к концепции хостов, которые могут посылать информацию туда и обратно, несмотря на то, что они расположены довольно далеко друг от друга, и данным, возможно, придется путешествовать по множеству устройств. Даже если обычно нами рассматривается набор протоколов TCP/IP в интернете как абстрактная «виртуальная сеть», мы всегда должны помнить, что на сетевом уровне данные проходят по одной или нескольким физическим линиям.

Как происходит отправка данных?

Для того чтобы передавать информацию по протоколу IP, данные инкапсулируются (упаковываются) в дейтаграммы (информационные блоки). Они, в свою очередь, должны быть отправлены по физическому каналу непосредственно к месту назначения или косвенно к следующей промежуточной стадии путешествии к получателю. Значение размера таких пакетов данных и имеет название MTU (Maximum Transmission Unit), используемый в PPPoE подключениях Ростелекома и других провайдеров.

Реализация канального уровня помещает транспортируемое сообщение и заголовки в единый пакет данных – IP-дейтаграмму. Это сразу ставит перед нами потенциальный вопрос – соответствует ли дейтаграмма поддерживаемому размеру пакетов базовой линии передачи данных.

Соответствие IP-дейтаграмм размеру блока в базовой сети

Базовая сеть, которая используется для подключения к другим устройствам может быть:

  • локальной (Ethernet);
  • беспроводной (Wi-Fi 11);
  • коммутируемой;
  • телефонной (DSL);
  • оптоволоконной (FDDI).

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

Для примера, рассмотрим FDDI. Максимальный размер поля данных в FDDI составляет около 4470 байт, в зависимости от использования SNAP (SubNetwork Access Protocol). Это означает, что FDDI может обрабатывать IP-дейтаграммы до 4470 байт. В отличие от него, Ethernet использует формат, который ограничивается размером пакета в 1500 байт и не сможет взаимодействовать с IP-дейтаграммой большего объема.

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

Идея протокола сетевого уровня для реализации концепции «виртуальной сети» заключается в передаче данных между устройствами, даже если они находятся далеко друг от друга. Это означает, что более высокие уровни не должны беспокоиться о таких деталях, как ограничение размера базовых технологий канала. Тем не менее, об этом кто-то должен позаботиться, чем и занимается IP (Internet Protocol).

Предел IP: настройки MTU у Ростелекома

Все IP устройства в интернете должны получать информацию о качестве технологии, используемой для реализации канала связи текущего уровня. Таким критерием является MTU сети Ростелекома, настройка которого выполняется на сетевом оборудовании пользователя. Этот термин также иногда рассматривается как максимальный размер блока для передачи.

Интересно: Существует два способа изменения MTU: в самой операционной системе или в настройках роутера. Второй станет оптимальным, так как с его помощью все устройства вашей сети смогут получить информацию о необходимом значении.

Когда устройство принимает сообщение, отправляемое через интернет-сети, оно смотрит на его размер, а затем вычисляет, насколько большой будет дейтаграмма после добавления 20 или более байтов, необходимых для заголовка IP. Если общая длина превышает MTU Ростелекома для PPPoE подключения в конкретной сети, Internet Protocol разделит сообщение на несколько фрагментов. Таким образом, при подключении хоста уровня TCP с помощью Ethernet LAN к своей локальной сети, он сможет использовать MTU option, указанный оборудованием Ростелекома.

Узнать, какой MTU у Ростелекома на вашем типе подключения и оборудовании можно непосредственно у провайдера, позвонив на . Значение этой опции для большинства сетей в России не превышает 1492 байт. Выяснить оптимальный вариант для собственного интернета можно лично, отталкиваясь от указанного значения.

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

Мало кто из обычных пользователей задавался вопросом, что такое MTU и для чего он указывается в настройках

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

Чтобы справиться с проблемой, рекомендуется изменить настройки DNS. Сделать это можно через Панель управления. Откройте раздел с интернет-подключениями, выберите свою сеть и просмотрите её свойства. В них вы найдёте компоненты, среди которых следует выбрать протокол Интернета TCP/IP и вручную вписать DNS адреса - 8.8.8.8 и во второй строке 8.8.4.4.

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

Как узнать, какой установить MTU на роутере?

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

Для соединения типа L2TP выбирается число 1460, а для PPPoE - 1420. Стоит попробовать комбинацию 1476 - она по умолчанию устанавливается для сетей типа 3G.

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

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

  • Введите в Total Commander строку PING -f -l 1472 xxx.xxx.xxx.xxx, где вместо крестиков укажите свой IP-адрес.
  • Если в результате появится текст «Reply from…»(«Ответ от…»), то правильное число MTU - 1500, как и должно быть по умолчанию. Почему 1472? Остальные килобайты являются системными и автоматически добавляются к этому числу, чтобы в сумме получилось 1500.
  • Если в ответ на команду появился текст «Packet needs to be fragmented but DF set», нужно вручную искать правильное значение путём уменьшения числа 1472 на десятки, пока у вас не появится строка «Reply from…». Затем к конечному значению нужно добавить 28 системных килобайта, получив верное число.

Настройка MTU в роутере

После выяснения необходимой комбинации для максимально передаваемого пакета данных вводим её в параметры маршрутизатора .

Это делается следующим образом:

  • Зайдите в настройки роутера. В строке браузера введите IP-адрес оборудования, в появившемся окне впишите логин и пароль (если вы не изменяли их, используйте слово Admin в обеих строках).
  • Выберите раздел Network, откройте меню WAN.
  • Введите необходимое число в строку MTU Size, сохраните изменения и выполните перезагрузку оборудования.

Для точного определения MTU нужно указать значение по умолчанию - 1500.

Существует огромное количество утилит, которые позволяют это сделать да и не только это. Наиболее распространенные - Internet Tweak 2001 http://www.magellass.com/ , NetBoost 99 http://www.download.ru/ , iSpeed http://www.hms.com/ , MTUSpeed http://www.mjs.u-net.com/ , BlazeNET http://www.indeavour.com/html_about_blazenet.htm . Если же у вас нет. возможности запустить одну из вышеперечисленных программ, сделайте это вручную - с помощью реестра Windows.

В разделе

HKEY_LOCAL_MACHINE\System\CurrentControlSet\ Services\Class \NetTrans\OOOx.

Если там есть параметр MaxMTU - удалите его. Далее, в Панели управления запустите утилиту Сеть, на вкладке Конфигурация выберите элемент списка Контроллер удаленного доступа и нажмите кнопку Свойства. Откроется диалоговое окно Свойства: Контроллер удаленного доступа. На вкладке Дополнительно в группе параметров Свойство выберите элемент списка Размер пакета IP, а в группе параметров Значение - большой (рис. 8.1).

Рис. 8.1. Диалоговое окно Свойства: Контроллер удаленного доступа

Тем самым MTU становится равным 1500. Для того чтобы изменения вступили в силу, перезагрузите компьютер.

Чтобы проверить, будут ли фрагментироваться пакеты, нужно установить соединение с Интернетом. Для этого можно использовать программу Ping, входящую в состав любой операционной системы семейства Windows.

В ней. нужно задать такие параметры:

ping -f -1 1500 ххх.ххх.ххх.ххх

где ххх. ххх. ххх. ххх - IP-адрес тестируемого сервера.

Для тестирования MTU гораздо удобнее использовать современные программы с графическим интерфейсом. Существует огромное количество таких программ. Например, IP Tools. Для начала нужно определить IP-адрес тестируемого сервера, чтобы избежать потери времени, отводимого на запрос DNS.

Для этого воспользуйтесь командой Traceroute. Нажмите кнопку Пуск в левом нижнем углу экрана, выберите команду Выполнить и в появившемся окне наберите и URL веб-сайта. Появится окно приложения MS DOS. Например, введя любой адрес, через некоторое время появится его IP в квадратных скобках. Теперь воспользуйтесь программой Ping. Запустите ее с такими параметрами

ping -f -I 1500 ххх.ххх.ххх.ххх

где ххх.ххх.ххх.ххх - IP-адрес тестируемого сервера. Наиболее благоприятное время для проверки MTU для коммутируемого соединения - ночь. Тогда нагрузка на линии связи наименьшая.

В случае если никакого ответа не получено - пакет потерян. Причем потому, что фрагментировать мы его запретили, а размер слишком велик для оборудования провайдера. Начинайте постепенно уменьшать размер пакета. Например, вместо значения MTU 1500 установите 1480 и т. д., до тех пор, пока ответ не будет получен.

Возможно, ваш интернет-провайдер использует меньшее значение. Например, 1524, 1152, 1024, 1006, 576, 568, 560, 552, 548, 536, 528, 520, 512.

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

Скорее всего, вы поймете, что скорость больше при использовании больших

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

И что? Вы можете спросить: "Где же тот самый рекомендуемый MTU, равный 576?" А его, как оказывается на деле, почти нигде и нет. Поэтому лучшим советом может стать - не следовать чужим рекомендациям, проводить собственные исследования, которые могут дать реальные результаты.

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

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

PMTU система сама найдет для ваших пакетов такой путь в Сети, при котором они не будут фрагментироваться.

Кстати, если вы обнаружите, что у провайдера установлено MTU=512 и менее, то есть смысл подумать о его смене - слишком много шлака будет передаваться вместе с вашими данными.