Як налаштувати Jumbo Frames у Linux
9 хв читання - 11 травня 2026 р.

Покрокове керівництво з увімкнення jumbo-фреймів у Linux, що охоплює перевірку обладнання, конфігурацію постійного MTU та наскрізне тестування
Як налаштувати Jumbo фрейми в Linux
Jumbo-кадри - це Ethernet-кадри з корисним навантаженням, що перевищує стандартний 1 500-байтний MTU. Встановлення MTU на 9000 байт зменшує накладні витрати на кожен пакет і переривання процесора, а це означає, що більша частина вашої пропускної здатності використовується для передачі реальних даних. Це особливо важливо для високошвидкісних каналів, таких як приватні з'єднання, канали реплікації даних між об'єктами та виділені мережі зберігання даних. У цьому посібнику описано перевірку обладнання, конфігурацію основних дистрибутивів та тестування.
Чому важливі джамбо-кадри
Кожен кадр Ethernet містить 18-байтовий заголовок, незалежно від розміру корисного навантаження. При MTU 1,500 байт ці накладні витрати становлять близько 1,2% вашого трафіку. Збільште MTU до 9 000, і накладні витрати знизяться приблизно до 0,2%. Менша кількість пакетів також означає меншу кількість переривань процесора, звільняючи цикли для роботи додатків.
На практиці високопродуктивні локальні мережі збільшують пропускну здатність на 5-10%. Виділені мережі зберігання даних (iSCSI, NFS) часто демонструють приріст від 10% до 30%. Кластери графічних процесорів, на яких виконуються робочі навантаження AI/ML, також виграють, оскільки великі набори даних переміщуються між вузлами з меншою сегментацією. Для середовищ з GPU-прискоренням зазвичай рекомендується MTU 8 896.
Підступ: джамбо-кадри працюють лише на шляхах, які ви повністю контролюєте. Кожен пристрій між джерелом і призначенням, включаючи мережеві карти, комутатори і маршрутизатори, повинен підтримувати більший MTU. Один неправильно сконфігурований стрибок - і ви отримаєте фрагментацію або беззвучне падіння пакетів. Для інтерфейсів, що виходять в інтернет, дотримуйтесь значення 1 500.
Перевірка сумісності обладнання
Перш ніж щось змінювати, переконайтеся, що всі пристрої у вашій мережі підтримують jumbo-кадри.
Перевірте поточні налаштування MTU:
ip link show | grep mtuПеревірте, чи підтримує ваша мережева карта більший MTU:
sudo ip link set eth0 mtu 9001Якщо ви отримуєте SIOCSIFMTU: Неправильний аргумент, мережева карта не підтримує jumbo-кадри. Ви також можете перевірити можливості вивантаження за допомогою:
ethtool -k eth0 | grep -i largeКонфігурація комутатора має не менше значення. Різні виробники вимагають дещо різних значень MTU для врахування заголовків другого рівня. Комутатори Cisco зазвичай потребують 9 216. Комутатори Arista використовують 9,214. Перевірте документацію до комутатора і налаштуйте його відповідно.
Якщо ви використовуєте VLAN, тегування VLAN додає 4 байти накладних витрат. Батьківський інтерфейс, налаштований на MTU 9,000, підтримує MTU VLAN 8,996. Якщо вам потрібно повне значення 9,000 для інтерфейсу VLAN, встановіть для батьківського інтерфейсу значення 9,004.
Налаштування MTU у Linux
Тимчасово налаштуйте MTU, щоб перевірити, чи все працює:
sudo ip link set eth0 mtu 9000
ip link show eth0 | grep mtuЦе набуває чинності негайно і не потребує перезавантаження. Для зв'язаних інтерфейсів встановіть MTU на самому зв'язаному інтерфейсі. Він автоматично поширюється на мережеві карти, що входять до складу групи.
Зробити його постійним
Спосіб залежить від вашого дистрибутива і мережевого менеджера.
| Дистрибутив/інструмент | Розташування конфігурації | Синтаксис |
|---|---|---|
| Ubuntu 17.10+(Netplan) | /etc/netplan/*.yaml | mtu: 9000 |
| NetworkManager | nmcli | 802-3-ethernet.mtu 9000 |
| Debian / старіші версії Ubuntu | /etc/network/interfaces | mtu 9000 |
| systemd-networkd | /etc/systemd/network/*.network | MTUBytes=9000 у [Посиланні] |
| RHEL / CentOS (застарілі) | /etc/sysconfig/network-scripts/ | MTU=9000 |
Для Netplan скористайтеся sudo netplan try після редагування. Вона застосує конфігурацію і автоматично повернеться назад, якщо ви не підтвердите зміни протягом двох хвилин, що є корисним запобіжником на віддалених серверах. Для NetworkManager виконайте:
nmcli connection modify "Eth0" 802-3-ethernet.mtu 9000
nmcli connection up "Eth0"Після збереження змін перезавантажтеся і перевірте за допомогою ip link show, щоб переконатися, що MTU збереглося.
Тестування та усунення несправностей
Сервер, налаштований на MTU 9,000, все ще може давати збої при великих передачах, якщо якийсь пристрій на шляху не відповідає. Дрібні пакети можуть працювати нормально, тоді як великі пакети будуть беззвучно відкидатися. Завжди тестуйте наскрізну передачу.
Перевірка підтримки Jumbo Frame
Надішліть повнорозмірний пакет з вимкненою фрагментацією:
ping -M do -s 8972 <destination_ip>Розмір корисного навантаження 8,972 складається з 28-байтових заголовків IP і ICMP. Якщо пінг пройшов успішно, повний шлях підтримує MTU 9,000. Якщо ви бачите "Packet needs to be fragmented but DF set" або "Message is too long", це означає, що щось на шляху має менший MTU.
Щоб точно знайти місце розриву шляху:
tracepath -n <destination_ip>Тут відображається максимальний MTU на кожному кроці, щоб ви могли визначити, який пристрій потребує реконфігурації.
Вимірювання пропускної здатності
Використовуйте iperf3 для порівняння продуктивності до і після:
iperf3 -c <destination_ip> -t 30 -M 8960Запустіть той самий тест зі значенням MTU за замовчуванням, а потім ще раз після увімкнення джамбо-кадрів. Ви повинні побачити помітне покращення пропускної здатності та зменшення використання процесора на робочих навантаженнях з великим об'ємом пам'яті.
Щоб переконатися, що пакети надходять неушкодженими під час реальної передачі, перевірте лічильники повторної збірки на приймальній стороні:
nstat -az IpReasm*Якщо лічильники залишаються на нулі, фрагментація не відбувається.
Поширені проблеми
- Невідповідність MTU: Найпоширеніша проблема. Кожному пристрою на шляху потрібен однаковий (або вищий) MTU. Один порт комутатора, встановлений на 1500, зламає все.
- Про накладні витрати на VLAN забули: Тегування VLAN додає 4 байти. Якщо вашому інтерфейсу VLAN потрібен MTU 9,000, встановіть для батьківського порту значення 9,004.
- Зв'яжіть значення MTU для учасників: Завжди встановлюйте MTU на інтерфейсі зв'язку, а не на окремих мережевих картах.
- Обмеження апаратного забезпечення мережевої карти: Деякі старіші мережеві карти не можуть перевищувати 9 000. Для перевірки виконайте
ethtool -k <інтерфейс> | grep -i large.
Висновок
Джамбо-кадри - це простий спосіб підвищити пропускну здатність і зменшити навантаження на процесор у внутрішніх мережах. Сама конфігурація проста. Складність полягає в тому, щоб переконатися, що кожен пристрій на шляху підтримує більший MTU, саме тому тестування має більше значення, ніж крок налаштування.
Використовуйте jumbo-фрейми для мереж зберігання даних, міграції віртуальних машин, резервного копіювання та будь-якого високошвидкісного внутрішнього трафіку, де ви контролюєте весь шлях. Для інтерфейсів, що виходять в інтернет, залиште стандартний MTU 1,500 байт.
Інфраструктура VPS і виділених серверів FDC підтримує jumbo-кадри в приватних VLAN, що робить її ідеальним рішенням для таких робочих навантажень.

Втомилися від повільного розгортання або обмежень пропускної здатності? FDC Servers пропонує миттєве виділення потужності, глобальне охоплення та гнучкі плани, створені для будь-якого масштабу. Готові до оновлення?
Розблокувати продуктивність зараз
Контрольний список для зміцнення сервера Linux
Покроковий контрольний список для захисту Linux-сервера. Охоплює SSH, брандмауери, виправлення, дозволи на файли, SELinux/AppArmor та ведення журналів аудиту
15 хв читання - 8 травня 2026 р.
iperf3 Підручник: Вимірювання швидкості мережі в Linux та Windows
10 хв читання - 7 травня 2026 р.

Маєте запитання або потребуєте індивідуального рішення?
Гнучкі варіанти
Глобальне охоплення
Миттєве розгортання
Гнучкі варіанти
Глобальне охоплення
Миттєве розгортання