Как включить Jumbo Frames в Linux
Задача
Настройте Linux для использования больших кадров.
Распределения
Это будет работать с любым дистрибутивом Linux.
Требования
Работающая установка Linux с сетевым подключением и привилегиями root.
трудность
Легко
Условные обозначения
- # — требует, чтобы данные команды linux выполнялись с правами root либо напрямую как пользователь root, либо с помощью
sudo
команды - $ — требует, чтобы данные команды linux выполнялись как обычный непривилегированный пользователь
Вступление
В вашей сети медленная передача файлов? Вы постоянно передаете данные между своими компьютерами? Ну, может быть, огромные кадры для вас.
Jumbo-кадры больше, чем стандартные сетевые пакеты. Обычно размер полезной нагрузки или MTU (максимальная единица передачи) устанавливается равным 1500 байтов. Jumbo-кадры могут поддерживать до 9000 байт на пакет.
Jumbo-кадры уменьшают накладные расходы, связанные с передачей файлов, ограничивая количество пакетов, которое должно обрабатывать ваше сетевое оборудование.
Настройте свою сеть
Для правильной работы больших кадров каждое устройство в вашей сети должно быть настроено на их использование. Тем не менее, если они этого не делают, это не конец света. Устройство, которое их не поддерживает, просто разбивает пакеты, когда они приходят. Вы должны, по крайней мере, настроить свой маршрутизатор и любые коммутаторы в сети для их использования.

Многие маршрутизаторы имеют настройки, которые позволяют вам изменять размер MTU. Он находится в разных местах на каждом маршрутизаторе, но обычно он отображается на вкладке общих настроек, которая управляет всем устройством или сетью.
Когда вы найдете его, установите для него значение, которое, по вашему мнению, могут поддерживать все ваши устройства. Помните, что верхний предел для больших кадров составляет 9000 байт.
Подписаться на рассылку новостей
Подписаться на Linux Карьера РАССЫЛКУ и получать последние новости Linux, работа, карьера советы и учебные пособия.
Проверьте размер MTU
Теперь, когда ваша сеть поддерживает Jumbo-кадры, проверьте, установлен ли ваш компьютер. Это, вероятно, 1500 байт, так как это по умолчанию, но это хорошо, чтобы убедиться.
Все здесь будет обрабатываться ip
командой. Итак, используйте его для проверки размера MTU, разрешенного вашими сетевыми интерфейсами.
$ ip link show | grep mtu
Числа сразу после mtu
— это значение, которое вы ищете.
Установить новый размер
Установить размер MTU очень просто ip
. Вам просто нужно указать, какой интерфейс вы хотите изменить, и какой размер вы хотите установить.
# ip link set eth0 mtu 9000
Вы можете настроить каждый интерфейс на вашем компьютере, если ваше оборудование поддерживает его.
# ip link set wlan0 mtu 9000
Сделайте это постоянным
Есть несколько способов сделать постоянный размер нового MTU. Для него нет специальной утилиты, но самое простое, что вы можете сделать, — это создать скрипт, который запускается при запуске для установки MTU. Если вам очень удобно работать с systemd, вы можете изменить сетевые файлы, которые он предоставляет, чтобы изменить MTU по умолчанию.
Ваш скрипт должен выглядеть примерно так:
#! /bin/bash
ip link set eth0 mtu 9000;
ip link set wlan0 mtu 9000;
Если вы используете systemd, создайте простой модуль и настройте его на запуск при запуске.
Пользователи OpenRC могут разместить свой скрипт /etc/init.d/
и запускать его как сервис по умолчанию.
Заключительные мысли
Jumbo-кадры уменьшают нагрузку на вашу сеть и могут высвободить вычислительные ресурсы вашего маршрутизатора. Они не будут сильно влиять на скорость вашей сети, но могут сократить время, необходимое для передачи файлов.