Определяем и настраиваем оптимальное значение MTU для стабильной передачи пакетов в сети

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

Определяем и настраиваем оптимальное значение MTU для стабильной передачи пакетов в сети


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

Немного теории
Если вам хоть раз приходилось иметь дело с настройкой роутера или иного сетевого оборудования, то вы наверняка знаете, что передача данных в сети организована не сплошным потоком, а отдельными пакетами, содержащими строгое количество информации. Размер каждого пакета определяется значением MTU (максимальной единицей передачи), установленной в рамках конкретного сетевого протокола. Так для Ethernet сетей максимальный размер одного пакета составляет 1500 байт, для WLAN 802.11 это уже на порядок выше и равняется 2272 байтам.



Но в данном контексте, больше совсем не значит лучше, все дело в том, что ограничение размера пакетов имеет под собой вполне логичные основания, так, на заре компьютерной эры, когда быстрых соединений, еще не существовало, MTU был еще меньше, всего 500 с лишним байт. Ведь в противном случае даже те смешные 80-150 Кб/c оказались бы недостижимой планкой. Чтобы было понятнее, представьте сетевой поток, как тоннель, способный пропустить лишь одну единицу транспорта за раз – пока первая не закончит движение, остальные, на другой стороне, ждут. То же самое и с пакетами данных, поэтому ограничение их размера вполне логично, чем компактнее пакет, тем быстрее он будет отправлен и канал будет доступен вновь.

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



Кстати стоит заметить, что ее не поддерживает «новый» протокол IPv6, а лишь IPv4 – имейте это ввиду.

И хоть такой метод и имел свои преимущества, на практике, далеко не всегда подобное срабатывало на практике, как минимум, целевой сервер мог запрещать прием фрагментированных данных, в итоге все они терялись в пути – доступа нет. И примеров таких масса.

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

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

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

Определение

Чтобы определить текущий размер, раскроем cmd.exe (можно и PowerShell), зажав сочетание Win+X и отметив в списке командная строка (администратор).

В окне интерпретатора, вводим строку, выводящую список всех интерфейсов: netsh interface ipv4 show subinterfaces и оцениваем результат.



Как и следовало ожидать, в конкретном случае, значение равняется стандартным 1500 байтам.

Поиск оптимальной величины

Для определения оптимального размера, удобнее всего пользоваться все той же cmd, используя базовую сетевую команду ping. В конкретном случае синтаксис команды будет выглядеть так: ping [адрес ресурса] -f -l <значение MTU>, например:

ping www.gmail.com –f –l 1450



Для общего понимания: ключ –f – запрещает фрагментацию, а ключ –l отвечает за принудительную отправку пакета с пользовательским значением.

Начинать подбор стоит со значения 1450 байт, постепенно увеличивая его, до появления сообщения о необходимости фрагментации пакета. После достижения лимита, уменьшаем число на 1-2 байта, до возобновления отправки пакетов. Например, здесь, оно равно 1464 байтам – это и есть наш предел полезной нагрузки.



Однако это значение соответствует MSS (максимальному размеру сегмента), обозначающему величину отрезка данных в составе MTU (фактический объем данных в пакете).



Оно не учитывает ICMP и IP заголовки (8+20 байт), поэтому их просто нужно прибавить к параметру MSS: 1464+28=1492, что и будет соответствовать оптимальной величине MTU.

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

Коррекция

Есть несколько распространенных способов изменить MTU, первый через сетевое окружение, жмем Win+R и пишем ncpa.cpl, раскрываем свойства Ethernet соединения, в окне жмем настроить,



идем на вкладку дополнительно, находя в списке Jumbo Packet, выставляем в нем оптимальное значение, полученное ранее, и сохраняемся.



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

В таких случаях поможет командная строка, в которой для начала вводим строчку netsh interface ipv4 show subinterfaces, а затем netsh interface ipv4 set subinterface название интерфейса mtu=значение store=persistent, например: netsh interface ipv4 set subinterface Ethernet mtu=1498 store=persistent, имя интерфейса берем из списка, выведенного предыдущей командой.



Помимо этого, есть еще один вариант, с использованием бесплатной утилиты TCP Optimizer

Скачать ее можно отсюда:

https://www.speedguide.net/downloads.php

После запускаем ее с администраторскими правами и на главном окне выбираем режим Custom и в поле MTU вводим новое значение, применяем изменения и оцениваем результаты.



Если все сделано правильно, то ошибки соединения должны исчезнуть и все сетевые ресурсы вновь станут доступны.

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

Желаем вам успехов.

До встречи.
Есть вопросы по сайту?
Напишите нам прямо сейчас

Комментарии (0)