Сетевой драйвер Linux TUN может получить «1000-кратное ускорение» с новым однострочным патчем

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

Этот драйвер «туннелирования» TUN/TAP уже давно доступен в ядре Linux для приема/отправки пакетов для программ пользовательского пространства через /dev/net/tun. Те, кто не знаком с драйвером TUN, могут ознакомиться с документацией по ядру.

Почти два десятилетия назад драйвер Linux TUN установил заявленную скорость канала 10 Мбит/с… Тогда это было хорошо, но с тех пор сетевой стек Linux значительно продвинулся вперед, как и аппаратное обеспечение. Илья Максимец из Open Virtual Network (OVN) разослал патч, чтобы окончательно поднять этот лимит.

Илья прокомментировал свой патч под названием «[RFE net-next] net: tun: ускорение в 1000 раз», разосланный сегодня утром:

Скорость соединения 10 Мбит/с была установлена ​​в 2004 году, когда интерфейс ethtool был изначально добавлен в драйвер tun. Это могло быть хорошим предположением 18 лет назад, но с тех пор процессоры и сетевой стек прошли долгий путь.

Другие виртуальные порты обычно сообщают о гораздо более высоких скоростях. Например, veth сообщает о скорости 10 Гбит/с с момента своего появления в 2007 году.

Некоторые приложения пользовательского пространства полагаются на текущую скорость соединения в определенных ситуациях. Например, Open vSwitch использует скорость соединения в качестве верхней границы для конфигурации QoS, если пользователь не указал максимальную скорость. Объявленные 10 Мбит/с не соответствуют реальности в современном мире, поэтому пользователям всегда приходится вручную заменять значение чем-то более разумным, чтобы избежать проблем с конфигурацией, например. слишком сильно ограничивают трафик. Это также создает дополнительную путаницу среди пользователей.

Увеличьте заявленную скорость, чтобы она хотя бы соответствовала скорости. 10 Гбит/с также кажутся более или менее справедливым предположением в наши дни, даже несмотря на то, что процессоры могут делать больше. Альтернативой может быть явное сообщение UNKNOWN и предоставление приложению/пользователю возможности выбрать для них правильное значение.

Таким образом, по крайней мере, для некоторых пользователей/конфигураций однострочный патч для драйвера TUN может оказаться очень полезным для улучшения готового опыта.
Поделиться:

Похожие публикации

Тут ничего нет

Нет комментариев