MTU
MTU означає «Maximum Transmission Unit» (Maximum Transmission Unit) і означає максимальний розмір пакета, який може бути переданий у мережі, виміряний у байтах. Він часто асоціюється з комунікаційними інтерфейсами, такими як мережеві інтерфейсні карти. Якщо пакет більший за MTU зв'язку, його розділяють на менші фрагменти для проходження, що називається «шардингом». Розмір MTU вимагає компромісу між ефективністю передачі та затримкою.
У мережі максимальна одиниця передачі (MTU) означає значення максимального пакета, який може бути прийнятий через мережевий пристрій. Уявіть MTU як обмеження висоти для підземного переходу або тунелю на шосе: автомобілі та вантажівки вище цієї висоти не можуть проходити через нього, так само як пакети, що перевищують мережу, MTU не можуть проходити через цю мережу.
Однак, на відміну від автомобілів і вантажівок, пакети, що перевищують MTU, можна розбити на менші фрагменти, які можуть переміщатися мережею. Цей процес називається шардингом. Фрагментовані пакети збираються заново, щойно вони досягають місця призначення.
MTU вимірюється байтами, а один «байт» дорівнює 8 бітам інформації, тобто 8 одиниць і нуль. 1 500 байт — це максимальний розмір MTU.
Використовуйте PowerShell, щоб переглянути значення MTU поточного мережевого інтерфейсу за допомогою наступної команди:
Як показано нижче:
Значення MTU для WireGuard
Простими словами,Стандартний розмір MTU для WireGuard — 1420。 Зазвичай це значення застосовується до 95% випадків використання. Однак існує кілька факторів, які слід враховувати, коли середовище складніше і передбачає багатохопову передачу. Отже, як правильно розрахувати MTU? Це складна проблема, бо кожен має приймати рішення відповідно до своєї ситуації. Читайте далі.
Технічна інформація про склад MTU
Спочатку нам потрібно визначити, який тип інтернет-з'єднання ми використовуємо: DSL, VDSL чи дротовий інтернет? Отже, ось базова інформація:
DSL і VDSL мають максимальний MTU 1492; Максимальний MTU для дротового інтернету — 1500.
Це вимоги нашого німецького мережевого провайдера. Провайдери все одно не можуть приймати великі пакети. Тепер я перелічу розміри заголовків пакетів, необхідні для WireGuard і VPN.
IPv4 VPN – 20 байт; IPv6 VPN – 40 байт; UDP – 8 байт; WireGuard – 32 байти
З цією інформацією ви можете розрахувати відповідний розмір MTU. Я наведу типовий приклад і рідкісний.
Приклад 1:
Відправною точкою є кабельне з'єднання з максимальним MTU 1500, яке оснащене IPv4-з'єднанням.
1500 – 20 байт (IPv4) – 8 байт (UDP) – 32 байти (WG) = 1440 байт
Це залишає 1440 байт для області даних, і значення за замовчуванням 1420 дуже доречне.
Приклад 2:
Відправною точкою є DSL-з'єднання з максимальним MTU 1492, яке оснащене IPv6 з'єднанням.
1492 – 40 байт (IPv6) – 8 байт (UDP) – 32 байти (WG) = 1412 байт
У результаті область даних матиме 1412 байт, і значення за замовчуванням 1420 не підходить.
У прикладі 2 пакет буде від'єднаний, що призводить до шардингу. Це може споживати ресурси, що призводить до значно повільнішої швидкості з'єднання. Однак з IPv6 швидкість з'єднання стає дуже високою.
При використанні IPv6 деякі маршрутизатори вимагають мінімальний розмір MTU 1280 байт. Отже,Якщо ви використовуєте IPv6, не встановлюйте MTU нижче 1280 байт。
Якщо ви працюєте у складному середовищі з кількома NAT та/або маршрутизаторами, до пакета може бути додано більше інформації про заголовок. Це, без сумніву, ускладнить розрахунки. Wireshark може дуже допомогти, оскільки дозволяє побачити, чи розділені пакети.
Чому б не почати з розміру MTU 1300 байт і поступово збільшити до 1420 байт?Багато користувачів повідомляли, що 1380 байт — це ідеально для них。
Команда Windows test mtu з ping:
Як показано нижче:
WireGuard налаштовує значення для MTU наступним чином:
Посилання:
Вхід за гіперпосиланням видно.
Вхід за гіперпосиланням видно.
Вхід за гіперпосиланням видно.
Вхід за гіперпосиланням видно.
Вхід за гіперпосиланням видно. |