Оптимизация сетевого стека Linux 6.8

Оптимизация сетевого стека Linux 6.8 может увеличить производительность TCP для многих одновременных подключений до 40%. В сетевых играх это может уменьшить задержки.

Помимо обычной поддержки нового проводного/беспроводного сетевого оборудования и других рутинных изменений в большой сетевой подсистеме Linux, ядро Linux 6.8 привносит некоторые ключевые улучшения в основной сетевой код, которые могут дать до 40% улучшения производительности TCP при большом количестве одновременных сетевых соединений.

Во-первых, был проведен анализ и реорганизация основных сетевых структур. Эти усилия были направлены на оптимизацию потребления кэш-линий и добавление защитных средств, чтобы будущие изменения не привели к регрессу. В свою очередь, эта оптимизация основных сетевых структур привела к тому, что производительность TCP при большом количестве одновременных соединений выросла на 40 % и более!

Коко Ли (Coco Li) из Google так объяснил свои усилия по оптимизации сетевого кода:

«В настоящее время структуры с большим количеством переменных в сетевом стеке организованы хронологически, логически и иногда по доступу к кэш-линии.

В этой серии патчей предпринята попытка реорганизовать основные переменные сетевого стека, чтобы минимизировать потребление кэш-линий на этапе передачи данных. В частности, мы рассмотрели стек TCP/IP и определение быстрого пути в TCP».

Новая аппаратная поддержка драйверов Ethernet в Linux 6.8 включает устройства Octeon CN10K, Broadcom 5760X P7, Qualcomm SM8550 SoC и Texas Instrument DP83TG720S PHY. Со стороны Bluetooth появилась новая поддержка драйверов для Bluetooth-радио IMC Networks.

Как мы уже видели в последнее время в попытках отказаться от старых/неактуальных сетевых драйверов, несколько устаревших драйверов WiFi были удалены для Linux 6.8. В число вновь удаленных драйверов Wifi входят поддержка Libertas 16-bit PCMCIA, драйверы Atmel at76c50x, драйвер HostAP ISA/PCMCIA 802.11b, USB-ключи zd1201 802.11b, драйвер Orinoco ISA/PCMCIA 802.11b, драйвер Aviator/Raytheon, драйвер Planet WL3501, а также драйвер RNDIS USB 802.11b.

Если говорить об улучшениях сетевых драйверов в Linux 6.8, то в драйвере высокоскоростной сетевой карты Intel добавлена поддержка отчетов о температуре и информации о часах, а также другие случайные улучшения во многих сетевых драйверах. Коммутаторы для центров обработки данных NVIDIA Mellanox Ethernet теперь могут обновлять прошивку без перезагрузки. Что касается WiFi, то продолжается работа над WiFi 7 и улучшением Extremely High Throughput (EHT).

Один мальчик подписался на телеграм-канал Игры в Linux и получил бесплатную игру в Steam! Новости из мира игр в Linux, свежие обзоры игр и полезные инструкции всегда под рукой!

Источник
Константин Дьяченко

Автор и основатель сайта Игры в Linux с 2010 года. Пользователь Linux с 2002. Старый злобный сисадмин с 1997.

Если Вам интересна тематика сайта и вы хотите каким-то образом поучаствовать в жизни сайта и его сообществ - напишите мне! Все контакты в разделе о сайте.

Игры в Linux
Добавить комментарий

Поля email и сайт не являются обязательными. Оставляя комментарий вы соглашаетесь с политикой конфиденциальности сайта.