The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Выпуск фреймворка PFQ 4.0, предназначенного для обработки тр..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск фреймворка PFQ 4.0, предназначенного для обработки тр..."  +/
Сообщение от opennews (??) on 10-Янв-15, 21:15 
Представлен (https://github.com/pfq/PFQ/releases/tag/v4.0) выпуск фреймворка PFQ 4.0 (http://www.pfq.io/), предназначенного для написания обработчиков для эффективного захвата сетевых пакетов и классификации трафика в Linux. Фреймворк оптимизирован для работы на многоядерных системах и с устройствами с несколькими аппаратными очередями обработки пакетов. На базе PFQ развивается (https://github.com/pfq/PFQ-pcap) вариант библиотеки libpcap и  анализатора трафика tcpdump. Код (https://github.com/pfq/) модуля ядра распространяется под лицензией GPLv2, а библиотеки и утилит - под лицензией BSD.


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


<center><a href="https://camo.githubusercontent.com/7f56edd5dedc1a6a9dc5aed4f... src="http://www.opennet.dev/opennews/pics_base/0_1402915375.png" style="border-style: solid; border-color: #606060; border-width: 1px;max-width:100%;" title="" border="0"></a></center>

С модулем ядра взаимодействует ряд интерфейсных библиотек, выполняемых в пространстве пользователя и позволяющих создавать обработчики трафика как на типовых языках  C (http://pfq.github.io/PFQ/api/c/html/index.html), C++ (http://pfq.github.io/PFQ/api/cpp/html/index.html) и Haskell (http://pfq.github.io/PFQ/api/haskell/index.html), так и на специальном предметно-ориентированном языке Q-Lang (eDSL для C++11 (http://pfq.github.io/PFQ/lang/cpp/html/index.html) и Haskell (http://pfq.github.io/PFQ/lang/haskell/index.html)). Возможно написание обработчиков пакетов, их диспетчеризации между сокетами и перенаправление на другие устройства, что может быть использовано, например, для создания собственных межсетевых экранов, балансировщиков или систем ранней обработки пакетов.

В новой версии добавлена поддержка технологии HugePages, обеспечена высокая скорость захвата и передачи трафика при использовании штатных немодифицированных драйверов, переработан предметно ориентированный язык определения обработчиков PFQ, подготовлен новый выпуск ускоренной библиотеки  pcap, обеспечена совместимость с LTS  Haskell 1.0 (https://www.fpcomplete.com/blog/2015/01/announcing-lts-haske...).


  

URL: http://www.reddit.com/r/linux/comments/2ryy6m/pfq_40_is_out/
Новость: http://www.opennet.dev/opennews/art.shtml?num=41427

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Выпуск фреймворка PFQ 4.0, предназначенного для обработки тр..."  +4 +/
Сообщение от Дворник (??) on 10-Янв-15, 21:15 
Попробовал его - на 5 гигабитах, как ни странно, варианты tcpdump host $ip libpcap и pfq выдали примерно одинаковый результат по нагрузке. Хорошо... Вот только ядро через несколько дней почему-то в панику свалилось. Но это была предыдущая версия, надеюсь, тут поправили.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Выпуск фреймворка PFQ 4.0, предназначенного для обработки тр..."  –4 +/
Сообщение от Аноним (??) on 10-Янв-15, 21:32 
Теперь надо встроить эту штуку в robdns, и тогда один сервер на raspberrypi будет держать зону "." вместе со всем потомством.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Выпуск фреймворка PFQ 4.0, предназначенного для обработки тр..."  –4 +/
Сообщение от Crazy Alex (ok) on 10-Янв-15, 23:35 
Кто-нибудь может просветить - это маразм или нет? Так, наскидку, судя по заигрыванию с хаскелем - должно быть мутью, но а вдруг?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Выпуск фреймворка PFQ 4.0, предназначенного для обработки тр..."  +/
Сообщение от ол on 11-Янв-15, 01:38 
Для компактного (когда компактность описания важнее предсказуемой скорости работы) описания конечного автомата нормально.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

9. "Выпуск фреймворка PFQ 4.0, предназначенного для обработки тр..."  +/
Сообщение от бедный буратино (ok) on 11-Янв-15, 10:11 
звучит, как "пофигу"
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру