Сравнение производительности сетевых подсистем DragonFly BSD, FreeBSD и ядра Linux

7 марта 2017 года

Разработчики операционной системы DragonFly BSD провели тестирование производительности сетевого стека в сравнении с сетевыми стеками FreeBSD и ядра Linux (3.10 из CentOS 7 и 4.9 из Debian). Тестирование производилось через симуляцию нагрузки на web-сервер и организацию двунаправленного перенаправления (forwarding) UDP-пакетов между сетевыми интерфейсами. Для отдачи статических файлов на сервере использовался nginx, а на генерации трафика на нескольких клиентских системах была запущена утилита wrk. В тесте на перенаправление пакетов для генерации пакетов использовались pktget и sink.

В тесте на обработку запросов в nginx DragonFly BSD опередил FreeBSD и показал производительность близкую к ядру Linux, а при оценке уровня задержек (latency) заметно опередил остальные системы.

В тесте на перенаправление пакетов DragonFly BSD опередил FreeBSD и ядро Linux 3.10, но заметно отстал от ядра Linux 4.9. В ходе тестирования была выявлена проблема с масштабированием сетевой подсистемы DragonFly BSD на многоядерных CPU - при работе сетевого стека не использовались все доступные ядра, а только число ядер 2^N, т.е. на 24-ядерной системе сетевой подсистемой использовалось только 16 ядер CPU. При выполнении сетевых приложений в пространстве пользователя такая особенность не оказывала влияния на производительность, но позволила сохранить высокую отзывчивость (незадействованные для выполнения сетевого стека CPU использовались для выполнения кода nginx). В тесте на перенаправление пакетов, в котором были задействованы только компоненты ядра, ощущался провал в производительности.

Источники

править
 
 
Creative Commons
Эта статья содержит материалы из статьи «Сравнение производительности сетевых подсистем DragonFly BSD, FreeBSD и ядра Linux», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.