it-git.ru
  • Windows
  • Linux
  • Виртуализация
  • Скрипты
  • Почта/Домены
  • Сеть и коммутация
  • Программное обеспечение
  • Безопасность
  • 📰

Ethtool параметры, настройка сети для 10 Гбит+ интерфейсов linux

Linux

Настройка сетевых интерфейсов для работы на скоростях более 10 Гбит/с и выше требует внимательного подхода, так как такие высокоскоростные соединения чувствительны к параметрам драйверов, настройкам ядра и конфигурации оборудования. Инструмент ethtool является ключевым для диагностики и настройки сетевых интерфейсов в Linux. Ниже приведены основные шаги и рекомендации.

1. Проверка текущих параметров интерфейса

Для начала необходимо проверить текущие настройки интерфейса с помощью команды:

ethtool <interface_name>

Пример вывода:

Settings for enp1s0f0:
    Supported ports: [ FIBRE ]
    Supported link modes:   1000baseKX/Full 
                            10000baseKR/Full 
                            25000baseKR/Full 
    Supported pause frame use: Symmetric
    Supports auto-negotiation: Yes
    Advertised link modes:  25000baseKR/Full 
    Advertised pause frame use: Symmetric
    Advertised auto-negotiation: Yes
    Speed: 25000Mb/s
    Duplex: Full
    Port: FIBRE
    PHYAD: 0
    Transceiver: internal
    Auto-negotiation: on
    Link detected: yes

Это покажет поддерживаемые режимы, текущую скорость, дуплексность и другие параметры.

2. Настройка скорости и дуплексности

Если автоматическое согласование (auto-negotiation) не работает корректно, можно вручную задать скорость и дуплексность:

sudo ethtool -s <interface_name> speed 25000 duplex full autoneg off
  • speed: Указывает желаемую скорость (например, 25000 для 25 Гбит/с).
  • duplex: Указывает режим дуплексности (full или half).
  • autoneg: Включает или отключает автоматическое согласование.

Важно: Отключение автосогласования может привести к проблемам, если оборудование на другом конце линии не настроено аналогично.

3. Настройка буферизации и очередей

Высокоскоростные интерфейсы могут столкнуться с проблемами переполнения буферов или недостаточной производительности из-за неправильной настройки очередей.

Просмотр текущих параметров очередей:

ethtool -g <interface_name>

Пример вывода:

Ring parameters for enp1s0f0:
Pre-set maximums:
RX:             4096
RX Mini:        0
RX Jumbo:       0
TX:             4096
Current hardware settings:
RX:             256
RX Mini:        0
RX Jumbo:       0
TX:             256

Изменение размера очередей:

sudo ethtool -G <interface_name> rx 4096 tx 4096

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

4. Настройка управления потоком (Flow Control)

Управление потоком помогает предотвратить переполнение буферов при высокой нагрузке. Оно может быть включено или отключено:

sudo ethtool -A <interface_name> rx on tx on
  • rx: Включение/выключение управления потоком для приема.
  • tx: Включение/выключение управления потоком для передачи.

Проверка текущего состояния:

ethtool -a <interface_name>

5. Настройка параметров прерываний (Interrupt Coalescing)

Интервал объединения прерываний (interrupt coalescing) влияет на производительность и задержку. Для высокоскоростных интерфейсов рекомендуется настраивать этот параметр:

sudo ethtool -C <interface_name> rx-usecs 50 tx-usecs 50
  • rx-usecs: Время ожидания (в микросекундах) перед обработкой пакетов на стороне приема.
  • tx-usecs: Время ожидания перед обработкой пакетов на стороне передачи.

Проверка текущих настроек:

ethtool -c <interface_name>

6. Настройка многопоточности (RSS, RPS, RFS)

Для распределения нагрузки между ядрами процессора можно использовать механизмы RSS (Receive Side Scaling), RPS (Receive Packet Steering) и RFS (Receive Flow Steering).

Проверка и настройка RSS:

ethtool -l <interface_name>

Пример вывода:

Channel parameters for enp1s0f0:
Pre-set maximums:
RX:             8
TX:             8
Other:          1
Combined:       8
Current hardware settings:
RX:             4
TX:             4
Other:          1
Combined:       4

Изменение числа очередей:

sudo ethtool -L <interface_name> combined 8

Настройка RPS и RFS:

RPS и RFS настраиваются через sysfs:

echo f > /sys/class/net/<interface_name>/queues/rx-0/rps_cpus
echo 32768 > /sys/class/net/<interface_name>/queues/rx-0/rps_flow_cnt

7. Проверка статистики и ошибок

Для мониторинга производительности и выявления проблем используйте:

ethtool -S <interface_name>

Эта команда показывает детальную статистику интерфейса, включая количество ошибок, потерянных пакетов и т.д.

8. Настройка параметров ядра

Для высокоскоростных интерфейсов важно настроить параметры ядра:

Увеличение размера буферов:

sudo sysctl -w net.core.rmem_max=16777216
sudo sysctl -w net.core.wmem_max=16777216
sudo sysctl -w net.core.netdev_max_backlog=300000

Настройка TCP:

sudo sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216"
sudo sysctl -w net.ipv4.tcp_wmem="4096 65536 16777216"
sudo sysctl -w net.ipv4.tcp_timestamps=1
sudo sysctl -w net.ipv4.tcp_sack=1

9. Применение изменений при загрузке системы

Чтобы изменения сохранились после перезагрузки, добавьте команды в /etc/rc.local или создайте файл в /etc/sysctl.d/.



  • 21.03.2025
  • 119
  • 0
Netplan для настройки сети
Netplan для настройки сети
14-03-2025, 09:17, Linux
Настройка сети через командную строку и BAT файл
Настройка сети через командную строку и BAT файл
30-05-2019, 15:41, Windows / Сеть и коммутация
Экстренный шринк (Shrink) лога транзакций MS SQL 2008/2012
Экстренный шринк (Shrink) лога транзакций MS SQL 2008/2012
30-05-2019, 14:22, Windows / Программное обеспечение
WinBox - Управление устройствами MikroTik
WinBox - Управление устройствами MikroTik
15-01-2025, 12:27, Сеть и коммутация
ethernet, ethtool, network
  • Windows
  • Linux
  • Виртуализация
  • Скрипты
  • Почта/Домены
  • Сеть и коммутация
  • Программное обеспечение
  • Безопасность
  • Active Directory
  • ▒ IT Новости
AD astra cisco cmd debian Docker Exchange firewall hp interface linux LXC Mail mikrotik network ovirt ProxMox PVE radius raid route router RouterOS s3 vpn windows Россия база данных безопасность виртуализация данные диск защита копирование массив надежность настройка программный райд скрипт файл
Показать все теги

Что такое IT-GIT?

«IT» — это не просто технологии, а целый мир инноваций и решений, направленных на преодоление сложностей. Мы представляем экспертность в области информационных технологий и широкой технологической экосистемы, стремясь к постоянному развитию и совершенствованию.

«Git» — это отсылка к одной из самых популярных систем контроля версий, которая обеспечивает эффективное сотрудничество, быструю итерацию и надежное управление сложными проектами. Мы стремимся объединить и поделиться опытом и идеями специалистов в сфере технологий, создавая пространство для обмена знаниями.

Инновационные технологии + совместный опыт экспертов в области технологий = путь к успеху!


  • ◆ Полезное
  • ▻ Заметки по докеру
  • ▻ Процесс расширения LVM на примере виртуальной машины
  • ▻ Расширение раздела на HDD/SSD
  • ▻ Ремонт файловой системы linux
  • ▻ Коды символов Юникода в UTF-8
  • ▻ Загрузка CHR RouterOS
  • ▻ #mikrotik
  • ▻ #zfs

  • ★ TOP 20
  • ☆ Шпаргалка по ZFS
  • ☆ Robocopy — описание и примеры использования
  • ☆ Настройка сети через командную строку и BAT файл
  • ☆ Для чего нужен протокол STP/RSTP на примере Mikrotik
  • ☆ Мигрируем на Exchange с почты для домена (yandex, mail, google и др.)
  • ☆ Как подключить сетевой диск всем пользователям с использованием AD
  • ☆ НP ProCurve. наиболее часто используемые команды консоли.
  • ☆ Сброс пароля Windows 10 с помощью встроенной учетной записи Администратора
  • ☆ Настройка условной пересылки DNS-запросов в Mikrotik RouterOS
  • ☆ Как создать программный RAID 1 массив (зеркало) средствами Windows 10, 8.1, 8, 7, Vista
  • ☆ Проверить, запущена ли программа
  • ☆ Не работает fetch в netwatch Mikrotik (ROS 7.13)
  • ☆ Как создать RAID 1 из уже заполненного диска на Windows 10, 8.1, 8, 7, Vista
  • ☆ Mikrotik (vpn server) + Windows server 2008r2 (ad, radius server)
  • ☆ Отечественная виртуализация - на чем построена, обзор, сравнение.
  • ☆ Ремонт файловой системы linux
  • ☆ Сравнение решений WireGuard
  • ☆ Увеличение zfs диска (ISCSI FreeNAS)
  • ☆ Mikrotik, 3 провайдера, переключение и разделение трафик
  • ☆ Полезности Mikrotik
Monitorus. Мониторинг сайтов и серверов.
 
  Top.Mail.Ru      © 2019-2025.    www.IT-GIT.ru    ✉ info@it-git.ru