Фрагментация в IP сетях и такие вещи как tcp adjust-mss и ip mtu
Содержание:
- Изменение MTU в маршрутизаторе
- Правильные всегда приносят плоды
- Как узнать, какой установить MTU на роутере
- Настройка 3G-модема Ростелеком
- Теперь про ip tcp adjust-mss
- Определение правильного MTU
- Почему нужно ограничить размер MTU в настройках роутера
- VPI и VCI параметры интернета от Ростелекома что это такое
- Какое значение MTU нужно выставить
- Находим правильный размер MTU для сети
- Устанавливаем значениеMTU
- Какой MTU поставить на роутере
- MTU, частичная потеря подключения к Интернету, и производительность
Изменение MTU в маршрутизаторе
Пользователи маршрутизаторов могут самостоятельно изменять все настройки соединения и . Для этого зайдите в меню конфигурации.
Откройте любой установленный на ПК браузер и в его адресной строке введите локальный IP адрес 192.168.0.1, нажмите Ввод.
Если окно авторизации не появилось, в строку следует ввести адрес 192.168.1.1
В открывшемся диалоговом окне появится форма для введения логина и пароля администратора ПК.
В обоих полях пропишите слово admin или другие данные для входа в сеть (их можно прочитать в или спросить у провайдера). Дождитесь авторизации.
Окно настроек каждой модели маршрутизатора может иметь внешнее отличие, однако, структура полей в основном одинаковая. Для начала следует определиться с конечной величиной mtu.
Возьмите результат, полученный в процессе тестирования. В нашем случае это 1458 бит и прибавьте еще 28 байт. Дополнительные байты – это место для заголовков пакета и запроса.
В результате получаем 1458+28 = 1486 байт для mtu.
Для роутеров TP-Link
Чтобы изменить mtu, кликните на пункт меню «Сеть»
. Затем в правой части окна найдите поле mtu и пропишите необходимое значение, как указано на рисунке:
Рис. 5 – изменение значения для TP-Link
Здравсвуйте, дорогие посетители! Те, кто часто читает сайт, уже наверное заметили, что я очень часто и много пишу о решении разных проблем с маршрутизаторами, беспроводными сетями и тому подобным. Просто эта тема сейчас очень актуальная и очень много разных вопросов возникает при самостоятельной настройке Wi-Fi. У меня на этот счет даже есть одна интересная идея, о которой я пока не расскажу, даже не спрашивайте:).
Я всегда анализирую комментарии, которые посетители оставляют к разным статьям и стараюсь понять какие проблемы и ошибки возникают при настройке Wi-Fi роутеров. Бывает, что посетители делятся разными решениями определенной проблемы. За что им большое спасибо! Информация, которой вы поделитесь, может многим помочь.
Есть одна популярная проблема, когда через Wi-Fi роутер не открываются некоторые сайт, или открываются, но очень медленно. Так же видео в интернете может воспроизводиться медленно, с ошибками, или вообще не воспроизводиться. Например на YouTube. На мобильных телефонах, или планшетах может не работать интернет в разных программах (очень часто это приложения Одноклассники, YouTube, ВКонтакте)
. Но сайты в браузере открываются.
Я уже писал о подобных проблема в статье . В ней я советовал просто сменить DNS в настройках роутера. Действительно, из-за DNS так же могут возникать вышеперечисленные проблемы.
Но как оказалось, смена DNS не всегда помогает. И к статье (ссылка на которую выше)
стали появляться комментарии, в которых писали, что эти проблемы в некоторых случаях решаются изменением параметра MTU. Особое спасибо Ивану, его комментарии Вы можете почитать в статье ссылку на которую я оставил выше.
Но решил написать эту статью, в которой более подробно рассказать о MTU. Что это такое, как его изменить, зачем изменять и какое значение указать.
Правильные всегда приносят плоды
Настройка MTU в роутере, как показывает практика, является ключевой для многих каналов, построенных на виртуальных частных сетях. Однако мало кто знает, что тонкая настройка качественного соединения зависит ещё от двух пунктов, которые всегда находятся рядом с полем MTU. Правильная настройка всех параметров всегда решает проблемы в сетях, которые имеют Роутер D-Link, Zuxel, Cisco, Linksys и некоторые другие устройства автоматически заполняют важные параметры. В таких случаях без особого желания менять параметр не стоит.
- Keep Alive. Созданная виртуальная сеть постоянно поддерживается роутером, с момента включения до отключения питания.
- LCP интервал. Параметр указывается в секундах и задаёт частоту запросов от роутера к оборудованию провайдера для проверки работоспособности канала.
- LCP провалы. Параметр, который позволяет выполнить отключение от оборудования провайдера с целью установления нового, более качественного канала связи в случае невозврата нескольких, отправленных раннее пакетов.
Как узнать, какой установить 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 системных килобайта, получив верное число.
Настройка 3G-модема Ростелеком
Как уже упоминалось, с настройкой 3G-модема Ростелеком легко справится даже не очень продвинутый пользователь
Тем не менее, уделим этому процессу особое внимание, так как именно он вызывает у большинства среднестатистических юзеров легкий нервоз
В комплект 3G+ от Ростелеком входят:
- 3G-модем — внешне представляет собой USB-флешку со слотами под симку и карту памяти;
- сим-карта оператора (требует предварительной активации, которую можно произвести в офисе или самостоятельно введя на мобильном USSD-запрос *202#);
- руководство пользователя;
- гарантийный талон.
Перед началом работы модем со вставленной сим-картой подключается к ПК. В принципе, никаких особых требований к ОС и железу не предъявляется. 3G- модем совместим даже с динозаврами:
- ОС семейства Windows (от XP и выше), Mac OS X10.5, 10.6,10.7, 10.8 с соответствующим аппаратным комплексом;
- стандартный USB-интерфейс.
При первом подключении компьютер определит модем как съемный носитель, на котором хранятся драйвер устройства и дистрибутив утилиты «Ростелеком Internet». Мастер установки запустится автоматически. С упорством и настойчивостью жмем в каждом окне кнопку «Далее», а в последнем – «Завершить». В результате этих нехитрых действий, драйвер установится на ваш компьютер и 3G-модем будет распознан. Полдела сделано.
Если вы ничего не меняли в ходе установки, то по умолчанию после ее завершения запускается приложение «Ростелеком Internet». Здесь нас будет интересовать вкладка «Параметры», раздел «Настройки», и конкретно параметр «Сетевой профиль». При клике по нему открывается диалоговое окно, в котором необходимо указать:
- название профиля – Rostelecom;
- APV (точка доступа Ростелеком 3G) – internet.rt.ru (в качестве точки доступа Ростелеком 3G указывается адрес сервера провайдера);
- номер доступа *99#.
Переходим на вкладку «Главная» и жмем «Подключить». Эврика! 3G-модем должен начать свою работу.
Мобильный интернет – сервис не только для молодежи. Люди старшего поколения часто чувствуют себя всеми покинутыми. Одиночество особенно тягостно для тех, кто доживает свой век в глухих деревнях, за много километров от цивилизации. Но скорости 3G+ там может быть вполне достаточно для видеосвязи по скайпу с родственниками.
https://youtube.com/watch?v=Oz1-cwHMeNI
Теперь про ip tcp adjust-mss
Если раньше речь шла исключительно о сетевом уровне, где есть только IP заголовок и следующие за ним данные, то тут уже появляется четвертый, транспортный уровень модели OSI. Команда, как видно, имеет действие только на TCP трафик, поэтому дальше говорим только о нем. Тут нужно понимать, что такое MSS в терминологии TCP. А MSS (Maximum Segment Size) — это общий размер данных, идущих сразу же за TCP заголовком. Картинка:
Из картинки видно, что MSS = IP MTU — IP заголовок — TCP заголовок. Т.е. это MTU минус 40 Байт. И отсюда же понятно, что когда изменяется MTU, это означает, что изменяется MSS, т.к. размер заголовков IP и TCP всегда одинаковый — по 20 байт. Получается, что можно подстроить MTU на нужном интерфейсе командой #ip mtu как описано выше, или подстроить MSS, командой #ip tcp adjust-mss но результат результат при этом будет один и тот же — уменьшится MSS, а как следствие — MTU. В чем тогда принципиальная разница?
IP MTU — команда, посредством которой маршрутизатор жестко говорит хосту, посылающему пакет через него, какой MTU должен быть. И как раньше упоминал, IP нужно обязательно указывтаь с каждого конца тунеля.
Что касается MSS — его между собой согласовывают взаимодействующие хосты, а не транзитные для трафика сетевые устройства. Хосты прямо в рамках установления TCP сессии говорят друг другу, какой MSS для каждого из них приемлем, потом они выбирают наименьшее для них двоих значение и все пакеты, которые будут передаваться в рамках этой TCP сессии будут иметь именно такой MSS. Для наглядности вставлю картинку с cisco.com:
Тут у client A стандартное для сети ethernet MTU равное 1500 Байт, а соответственно MSS = 1500-40= 1460 Байт. У клиента B MTU и MSS равны соответственно 4462 и 4422, что свойственно для сетей token ring. В итоге они соглашаются использовать меньшее MSS, равное 1460 байт, которое подходит для них обоих. Еще раз, эти MSS, удобные для каждого из них, хосты сообщают друг другу при обмене пакетами SYN SYN/ACK и ACK.
Теперь что же делает команда #ip tcp adjust-mss? Например, в соответствии с принятыми ранее best practices, мы хотим установить MSS равным 1360 Байт, чтобы MTU был 1400 Байт. Смотрим опять на картинку с двумя хостами.
1. Хост 1 шлет хосту 2 SYN пакет в котором говорит, что у него MSS равен 1460 Байт.
2. Роутер, ближайший к хосту 1, у которого в настройках туннельного интерфейса написано #ip tcp adjust-mss 1360, смотрит на этот syn пакет и переписывает указанный там MSS с 1460 на 1360.
3. Хост на том конце — хост 2 — видит, что хост 1 хочет согласовать MSS = 1360, вместо 1460, который он увидел бы без вмешательства роутера.
4. Хост 2 сообщает в своем SYN/ACK свой MSS, который равен 1460. Проходя через туннельный интерфейс того же маршрутизатора, ближайшего к хосту 1, в SYN/ACK размер MSS также переписывается на 1360 Байт и хост 1 получает от хоста 2 такой же желаемый MSS в 1360 Байт.
5. Сессия между хостом 1 и хостом 2 устанавливается и все, передающиеся в рамках этой сессии пакеты имеют MSS не больше 1360 байт, а, следовательно MTU, не превышающий 1400 Байт.
Преимущество tcp adjust-mss в том, что это более умная команда, которая залезая в сессию между хостами, делает так, что они сами согласовывают между собой правильный MSS и, соответственно, правильный MTU. Ее не нужно вводить на всех транзитных роутерах, а достаточно ввести только на одном. В этом случае, даже если на пути прохождения трафика есть неадекватные неподконтрольные тебе МСЭ, блокирующие icmp type 3 code 4, нужные для PMTU Discovery, нет ничего страшного. С помощью ip tcp adjust mss хосты сами (с помощью лишь ближайших к ним роутеров, подкорректирующих MSS) установят нужный MSS. В этом случае PMTU Discovery не нужен вообще. Но, ествественно, работает это только для TCP трафика.
Вот кста, хорошая статья с cisco.com для детального осознания изложенного.
Тут меня немного отвлекли, вынужден продолжить чуть позже, если не забуду:)
Не забывайте оставлять комментарии, если пост был вам полезен!
Определение правильного MTU
Для определения правильного размера MTU для вашей конфигурации, вам необходимо использовать простой MTU пинг тест. Вы отправляете запросы и постепенно снижаете размер пакета до тех пор, пока пакет больше не фрагментируется. Выполните следующие действия :
Команда для данного пинг-теста – www . yandex.ru — f — l xxxx
При тестировании вы можете использовать широко известный домен ping www . google . com — f — l xxxx
Между каждой командой пробел
«- l » – строчная буква L , а не цифра один.
последние четыре цифры – размер тестового пакета
Шаг 1
Откройте диалоговое окно DOS , нажав Пуск>Программы> MSDOS — PROMPT . Также вы можете использовать команду Выполнить нажав Пуск>Выполнить, затем наберите » cmd «, если вы используете Windows 2000/ XP / Vista , или » command » в Windows 95/98/ ME . Или, нажмите сочетание клавиш «WIN» + «R», затем в диалоговое окно введите » cmd «, выполнить.
Шаг 2
В диалоговом окне DOS наберите ping www . tp — link . com — f — l 1472 и нажмите Enter . Имейте в виду, что пакет должен быть фрагментирован (Рисунок 1)
Как найти правильный размер MTU-рис1
Шаг 3
Уменьшите размер тестового пакета (10 или 12 байт), отправьте запрос опять. Имейте в виду, что пакет должен быть снова фрагментирован (Рисунок 2)
Как найти правильный размер MTU-рис2
Шаг 4
Снова уменьшите размер тестового пакета, отправьте запрос, итак до тех пор, пока размер отправляемого пакета не нужно будет фрагментировать (Рисунок 3)
Как найти правильный размер MTU-рис3
Шаг 5
Как только вы отправите пакет, который не будет фрагментирован, увеличьте немного размер пакета и отправьте запрос заново, вы таким образом сможете найти максимальный размер пакеты, который не будет фрагментирован.
Шаг 6
Возьмите максимальный размер пакета, который вы вычислили в ходе тестирования, прибавьте 28. Вы прибавляете 28 байт потому, что 20 байт зарезервировано для заголовка IP -адреса и 8 байт выделяется для заголовка запроса протокола ICMP ( ICMP Echo Request ). Помните: Вы должны прибавить 28 к вашему результату, полученному в результате пинг-теста!
Пример:
1440 – максимальный размер пакета в пинг-тесте
+ 28 – заголовки IP и ICMP
1468 – оптимальный размер вашего MTU
Проблемы с соединением к VPN, приложения зависают, а время истекает
Обычно возникает две проблемы, связанные с соединение с VPN .
Вы вообще не можете подключиться к серверу VPN
— Если вы совсем не можете соединиться с сервером вашей VPN, при этом у вас маршрутизатор приложение VPN может требовать открыть некоторые порты, назначьте IP -адрес конкретному компьютеру или используйте отдельный клиент PPPoE непосредственно на компьютере.
Вы можете подсоединиться к VPN серверу и зарегистрироваться, но ничего не происходит и приложения зависают, время выходит, или проблема с загрузкой
— Вы можете подсоединиться и зарегистрироваться, но приложения зависают, время выходит, или проблема с загрузкой. Ваш MTU (максимального размера блока (в байтах), который может быть передан) указан неправильно.
Почему нужно ограничить размер MTU в настройках роутера
В большинстве современных роутеров размер передаваемых MTU определяется автоматически, и делается это не всегда правильно. Пользователям, которые заботятся о качестве и скорости соединения, рекомендуется самостоятельно ограничить размер MTU, определив его оптимальное значение и установив его в настройках маршрутизатора.
Благодаря правильно выставленным настройкам MTU удается:
- Расширить канал передачи, за счет чего им одновременно смогут пользоваться различные службы, программы, процессы и так далее;
- Избавить канал от лишней нагрузки, что увеличит скорость передачи данных;
- Снизить практически до нуля шанс получения «испорченных пакетов» с данными при передаче по сети.
В целом, при правильно выставленных ограничениях MTU удается рационально использовать предлагаемый провайдером канал связи, с минимальным риском потери информации.
Правильная настройка MTU необходима, если имеются проблемы с интернетом на компьютере, например: долго загружаются сайты, высокий пинг при подключении к сторонним серверам, загрузка файлов из интернета время от времени беспричинно обрывается и возникают другие проблемы.
VPI и VCI параметры интернета от Ростелекома что это такое
Английская аббревиатура VPI в переводе на русский означает идентификатор виртуального потока, VCI – виртуального канала.
Эти данные нужны для настройки подключения услуг интернета, IP телевидения и телефонии с использованием технологии ATM (протокол коммутации ячеек), который способен поддерживать несколько одновременных соединений через один канал.
Значения параметров VPI и VCI для Ростелекома
Для доступа в интернет, просмотра цифрового телевидения и подключения IP телефонии между пользователем и провайдером устанавливается широкополосное соединение. Для этого используется виртуальный канал Ростелекома, адресуемый согласно значениям VCI и VPI. Указанные в настройках оборудования абонента и на порте провайдера параметры должны совпадать, обеспечивая соединение между передающей и принимающей стороной.
Узнать какой VPI и VCI у Ростелекома действует в вашем регионе можно при помощи личного кабинета абонента на вкладке с информацией о вашем подключении.
Значения отличаются в зависимости от принадлежности клиента к тому или иному макрорегиону, так, например, в Московской, Ивановской, Брянской областях данные имеют комбинацию: VPI/VCI для интернета 0/35, для ТВ 0/91. Однако в Смоленской области, относящейся также к ЦО, цифровой набор для интернета уже другой: 0/100, но для ТВ идентичен.
Полная таблица приведена ниже:
Как внести значения в настройки роутера
Для того чтобы внести данные в конфигурацию сетевого оборудования нужно войти в веб-интерфейс модема или воспользоваться диском для быстрой настройки, который обычно идет в комплекте.
При выборе варианта настройки через веб-интерфейс, выполняем пошаговую инструкцию:
- вводим IP устройства в адресную строку и подтверждаем переход;
- ожидаем появления авторизационного окна, в котором указываем логин и пароль;
- Переходим в дополнительные или используем меню быстрых настроек;
- В полях VPI и VCI указываем значения для вашего региона;
- сохраняем параметры.
Для того чтобы организовать корректное подключение при настройке интернета через линию ADSL, пользователю услуг от компании Ростелеком нужны точные цифровые значения параметров VPI и VCI. Узнать данные можно самостоятельно, внимательно ознакомившись с договором, просмотрев информацию о подключении в личном кабинете или изучив полную таблицу. Если желания лично подбирать значение у вас нет – обращайтесь в службу технической поддержки.
Какое значение MTU нужно выставить
Чтобы определить оптимальное значение MTU, нужно провести тестирование сети, что можно сделать с компьютера под управлением Windows. В ходе тестирования потребуется определить, как много времени уходит для передачи и возврата пакета с данными от используемого компьютера до сервера. При этом в ходе теста нужно будет варьировать количество байт информации, содержащейся в пакете. Снижать число байт потребуется до того момента, пока не удастся полностью исключить фрагментацию пакета.
Выполните тестирование сети следующим образом:
Обратите внимание: Чаще всего оптимальное значение MTU находится в пределах от 1500 до 1400 байт. Определившись с оптимальным значением MTU, нужно изменить данную опцию в настройках роутера, установив определенное количество байт, но с небольшим изменением
Дело в том, что конечная величина MTU будет отличаться от определенной в прошлом шаге, поскольку потребуются дополнительные байты для формирования пакета, которые уйдут на его заголовок и запрос
Определившись с оптимальным значением MTU, нужно изменить данную опцию в настройках роутера, установив определенное количество байт, но с небольшим изменением. Дело в том, что конечная величина MTU будет отличаться от определенной в прошлом шаге, поскольку потребуются дополнительные байты для формирования пакета, которые уйдут на его заголовок и запрос.
В среднем, на заголовок и запрос требуется 28 байт. Соответственно, идеальное значение в рассматриваемом случае будет:
1472 байта + 28 байт = 1500 байт
Значение 1500 потребуется прописывать в настройках роутера.
Важно отметить, что максимально допустимые значения напрямую зависят от протокола передачи данных, который используется:
- PPPoE – 1420 байт;
- Dynamic/Static IP – 1500 байт;
- L2TP – 1460 байт.
Значение, определенное выше в ходе расчетов, не должно превышать максимально допустимое. Если оно его превышает, возникнут еще более серьезные проблемы с работой интернета.
Находим правильный размер MTU для сети
Зачастую у пользователей роутеров tp-link, d-link, asus и других, в настройках маршрутизатора указано неверное значение mtu. Из-за этого могут возникать:
- Проблемы с воспроизведением потокового видео;
- Ошибки во время скачивания файлов;
- Просроченные сертификаты безопасности для некоторых сайтов;
- Общая медленная работа Интернета.
Рис. 1 – проблемы с Интернетом
Если вы обнаружили, что в последнее время соединение с сетью стало слишком медленным и привычные сайты больше не открываются или происходит их «вечная» загрузка, необходимо настроить mtu.
Клиентский компьютер не может открыть сайт, если значение mtu больше максимального значения пакета данных, который передается через протокол.
Детальнее о настройке разнообразных роутеров читайте в нашем материале: Как войти в настройки роутера — TP-Link, D-Link, Asus, Zyxel Keenetic, Ростелеком
Каждый маршрутизатор может изменять число mtu автоматически. Иногда такая возможность действует не в пользу скорости сети, поэтому вы можете изменить значение вручную.
Определить «идеальное» число mtu можно с помощью проведения тестирования под названием Ping Test .
Пинг (ping — задержка)
– это время, которое необходимо одному пакету данных, отосланному с вашего ПК, для прохождения до другого ПК (или сервера) и его возврата обратно на компьютер, с которого он был отправлен.
Вам также может быть интересно:
В процессе пинг теста следует отправлять повторяющиеся запросы, периодически снижая размер пакета данных.
Это нужно делать до полного прекращения фрагментации пакета. В результате вы узнаете наиболее точное число mtu, которое необходимо для быстрой работы конкретной сети.
Процесс тестирования:
- Зайдите в командную строку;
- Введите указанную на рисунке ниже команду для соединения с доменом;
Рис. 2 – подключение к домену тестирования
Заметьте! XХXX – это значение MTU. Во время тестирования изменяйте его в пределах от 1500 до 500 с шагом 10 байт. Успешный результат – это когда процент потерь не превышает 1%.
В результате правильно выполнения команды появятся строки со статистикой пинга (количество отправленных и полученных пакетов, приблизительное время их передачи в миллисекундах, процент потерь);
Рис. 3 – результат успешной команды
- Теперь следует еще раз повторить эту же команду. Выполняйте ее, пропустив одну строку;
- Повторяйте тест каждый раз с новым значением mtu, пока не получите наилучший результат передачи пакетов с минимальным процентом утрат. Запомните цифры mtu – именно это значение нам понадобится в дальнейшей настройке mtu.
Рис. 4 – найденное в результате тестирования наилучшее значение для MTU
Устанавливаем значениеMTU
Теперь вы знаете, какое значение MTU можно использовать в вашей домашней сети. Укажем операционной системе, что необходимо использовать именно его (дальнейшие примеры иллюстрируют настройку сети IPv4).
В Windows открываем командную строку с правами администратора и выполняем команду:
На экране появится список всех сетевых подключений, их названия и текущий размер MTU. Запоминаем название нужного нам подключения и пишем следующую команду:
Здесь Ethernet – название интерфейса (может быть другим), 1450 – выбранный размер MTU. Если название состоит из нескольких слов, его надо указывать в кавычках.
Для отключения автоматической настройки MTU можно выполнить команду:
Включить автоматическое определение MTU можно той же командой с параметром autotuninglevel=normal.
Если необходимо сбросить настройки к исходному состоянию, выполняем команду:
В Linux настройка MTU осуществляется с помощью команды ip. Посмотрим текущее значение MTU:
Здесь eth0 – название интерфейса, оно может быть другим на вашем компьютере. Для того чтобы выбранное значение MTU использовалось постоянно при каждом входе в систему, необходимо прописать значение в файл /etc/network/interfaces, либо создать модуль для systemd. Рекомендуем обратиться к документации используемого дистрибутива для получения более подробной информации.
В macOS посмотреть размер MTU для подключения en0, а затем установить значение параметра можно в терминале:
Вы можете указать размер MTU и в настройках маршрутизатора. Во многих моделях роутеров соответствующая настройка находится в разделе WAN. Более подробную информацию можно получить на сайтах производителей сетевого оборудования.
При ручной настройке MTU учитывайте, что слишком маленький размер блока данных устанавливать не рекомендуется, чтобы не создавать дополнительную нагрузку на процессор маршрутизатора. Также напомним еще раз: если ваше сетевое подключение работает нормально, значение MTU менять не стоит. Параметры, установленные провайдером или производителем маршрутизатора, вполне подходят для подавляющего большинства пользователей.
У вас недогружаются странички в браузере? Некоторые из них открываются только со второго или третьего раза? Потоковое видео с просторов интернета идет с прерываниями? Скорее всего, проблема заключается в неправильно выставленном параметре MTU вашего роутера.
Решается проблема достаточно просто: нужно просто позвонить в офис провайдера и задать вопрос о величине параметра, или же самостоятельно подобрать оптимальный параметр MTU, при котором пакеты не будут фрагментироваться. Первый вариант может оказаться и самым простым, и самым же сложным. Дело в том, что девушки, сидящие на телефонах, чаще всего не имеют даже понятия о том, какие параметры установлены в их сети. «Что, МТУ? Может, МТС? Нет, мы не офис МТС, мы у них не выставляем никакие параметры» — вот что, вероятнее всего, вы рискуете услышать в ответ на вопрос. Поэтому не тратим времени на переговоры, а сразу идем подбирать параметр MTU. Производится подбор путем передачи пакетов разной величины с запретом фрагментации. При тестах используется коммутируемый доступ, то есть без роутера
.
Но каждый раз набирать в командной строке этот набор символов не очень удобно, а скопировать и вставить из буфера не получится. Чтобы облегчить задачу, я написал маленькую программу, которая будет автоматически формировать команду для пинг-теста и выполнять его, постепенно снижая MTU. Вам нужно только следить за показателем потерь и нажимать кнопку Enter. Все остальное написано в окошке программы.
Когда значение MTU найдено, к нему надо прибавить 28 (на заголовки IP и ICMP) и ввести в соответствующее поле настроек роутера
. У разных роутеров они разные, поэтому не спрашивайте меня, где ввести параметр у роутера какой-либо определенной модели. Всем добра!
Кто-то использует VPN для получения доступа к заблокированным сайтам, кто-то просто обходит ограничения по географическому положению. Бывает, что использование VPN может быть определено с помощью анализа TCP-соединения на основе размера MTU. Можно ли избежать этой ситуации? Сразу скажем: с VPN от — можно!
Мы рекомендуем использовать , так как в нашем VPN-клиенте изменение MTU возможно с помощью одного клика. Помимо этого в нашем клиенте ВПН есть и другие плюсы, такие как одновременный доступ с нескольких устройств, надежные каналы связи и отсутствие ограничений по скорости.
Начнём с технических деталей. Как же может быть определено использование VPN?
Какой MTU поставить на роутере
Самый простой способ, это обратиться в службу поддержки провайдера
(написать письмо, позвонить). Скорее всего, они подскажут актуальное значение. Но через некоторое время, провайдер может все переконфигурировать. Хотя это случается достаточно редко, но если вдруг начали возникать сбои, вполне вероятно, что следует уточнить правильность выставленного MTU.
Второй вариант, это найти оптимальный размер с помощью команды ping
, отправляя пакеты, в которых установлено, что их нельзя фрагментировать. Пинговать следует удаленный ресурс, например, сайт или сервер провайдера.
Можно так же проверить наиболее посещаемые ресурсы в интернете: игровые сервера, сервера с которых смотрите фильмы, используемые IP телефоном.
Пример команды «ping -f -l 1472 yandex.ru», здесь:
- 1472 – это количество отправляемых байт данных. Следует учитывать, что помимо данных, будет отправлен еще и заголовок, который составляет 28 байт (IP заголовок 20 + ICMP заголовок 8 = 28). Следовательно, в итоге размер пакета будет составлять 1472+28=1500 (байт), стандартный размер максимального стандартного Ethernet пакета. Есть правда пакеты большего размера, называемые jumbo-кадрами.
- yandex.ru – это доменное имя сервера, на который будем отправлять команды, его можно поменять на IP адрес сервера провайдера. Можно поэкспериментировать с разными IP-адресами.
В итоге, выполнив такую команду, мы определим, требуется ли фрагментация пакета для доставки его к получателю.
Для примера, допустим, что поставщик услуг не пропускает пакеты, размер которых превышает 1024 байта. Тогда настройка выглядела бы следующим образом.
Запускаем командную строку (это классическое приложение Windows, найти его можно, например, в поиске набрав «Командная строка»). И выполняем команды.
Здесь значении данных 997 байт, размер пакета 997+28=1025 байт, пакет не может быть доставлен без фрагментации.
Здесь значении данных 996 байт, размер пакета 996+28=1024 байт, пакет доходит до получателя без фрагментации.
Таким образом, изменяя размер отправляемого блока данных, мы можем вычислить DMTU – максимальный размер блока данных, который доставляется без фрагментации
. Например, если команда ping проходит без фрагментации со значением 996. При попытке отправить команду со значением 997 получаем ответ: «Требуется фрагментация пакета, но установлен запрещающий флаг». Тогда мы рассчитываем параметр DMTU следующим образом: 996 байт данных + 28 байт IP заголовка = 1024 байта. Максимальный размер блока данных, который не будет фрагментирован, составит 1024 байта. Это значение и следует задать на маршрутизаторе, как размер MTU.
MTU, частичная потеря подключения к Интернету, и производительность
MTU (Maximum Transmission Unit) является крупнейшим пакетом сетевое устройство передает. Лучшим местом для MTU оборудования NETGEAR часто просто по умолчанию. MTU иногда представляется как нечто, что может быть легко изменена для повышения производительности, но на практике это может вызвать проблемы. Оставьте MTU без изменений, если:
У вас есть проблемы с подключением к провайдеру или других Интернет-услуг, и либо технической поддержки провайдера или NETGAER рекомендует изменить MTU. Это может потребовать изменения MTU:
- Защищенный веб-сайт, который не открывается, или отображается только часть веб-страницы
- Yahoo электронной почте
- MSN
- AOL, DSL-услуг
Вы можете использовать VPN, и есть серьезные проблемы с производительностью.
Вы использовали программу «оптимизации» МТУ для повышения производительности, и теперь у вас есть связи или проблемы с производительностью.
- Простое решение большинства проблем является изменение MTU в 1400.
- Если вы готовы экспериментировать, постепенно уменьшать MTU, как описано в разделе «Информация о MTU», ниже.