Выпуск фреймворка PFQ 4.0, предназначенного для обработки трафика в Linux

10 января 2015 года

Представлен выпуск фреймворка PFQ 4.0, предназначенного для написания обработчиков для эффективного захвата сетевых пакетов и классификации трафика в Linux. Фреймворк оптимизирован для работы на многоядерных системах и с устройствами с несколькими аппаратными очередями обработки пакетов. На базе PFQ развивается вариант библиотеки libpcap и анализатора трафика tcpdump. Код модуля ядра распространяется под лицензией GPLv2, а библиотек и утилит - под лицензией BSD.

Основой PFQ выступает специальный модуль ядра, в который встроен движок обработки трафика. Поддерживается работа с любыми драйверами устройств в Linux, для которых предоставляется скрипт pfq-omatic, позволяющий на основе их исходных текстов собрать оптимизированный для PFQ вариант драйвера. При использовании pfq-omatic PFQ встраивается между драйвером и ядром, задействует в драйвере буферы сокетов PFQ и организует передачу пакетов в PFQ непосредственно от драйвера. На сервере с процессором Xeon и 10-гигабитным сетевым адаптером Intel 82599 фреймворка PFQ позволяет обработать и перенаправить в пространство пользователя 14.8 млн пакетов в секунду, c распределением нагрузки на 2-3 потока внутри ядра.

С модулем ядра взаимодействует ряд интерфейсных библиотек, выполняемых в пространстве пользователя и позволяющих создавать обработчики трафика как на типовых языках C(недоступная ссылка), C++(недоступная ссылка) и Haskell(недоступная ссылка), так и на специальном предметно-ориентированном языке Q-Lang (eDSL для C++11(недоступная ссылка) и Haskell(недоступная ссылка)). Возможно написание обработчиков пакетов, их диспетчеризации между сокетами и перенаправление на другие устройства, что может быть использовано, например, для создания собственных межсетевых экранов, балансировщиков или систем ранней обработки пакетов.

В новой версии добавлена поддержка технологии HugePages, обеспечена высокая скорость захвата и передачи трафика при использовании штатных немодифицированных драйверов, переработан предметно ориентированный язык определения обработчиков PFQ, подготовлен новый выпуск ускоренной библиотеки pcap, обеспечена совместимость с LTS Haskell 1.0.

Источники

править


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

Комментарии

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