freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

PFQ:一款针对多核心架构的功能性网络框架
2019-04-08 15:00:29

PFQ:一款针对多核心架构的功能性网络框架

PFQ v6.2介绍

PFQ是一款针对Linux操作系统的功能性框架,可帮助研究人员捕捉网络传输数据包(10G、40G及以上),内核功能处理,内核绕过,以及获取多节点间的套接字/数据包。

该工具针对多核心架构以及配备了多硬件队列的网络设备进行了高度的定制优化,可兼容任意NIC,工具提供的脚本还可以生成加速网络设备驱动器。

PFQ允许研究人员自己开发高性能网络应用程序,工具内置了自定义版本的libpcap,可加速或并行处理遗留应用程序。此外,PFQ还支持专为内核数据包处理设计的纯函数语言:pfq-lang。

Pfq-lang受到了Haskell的启发,主要针对的是运行在网络设备驱动器上的特定应用程序。在pfq-lang的帮助下,研究人员可以构建高效的网桥、端口镜像、简单的防火墙以及网络负载均衡器等等。

工具框架包含了PFQ内核模块、用户空间库(C、C++11-14)、Haskell语言和加速pcap库的源代码,而且内置了pfq-lang编译器和一系列诊断工具。

工具功能

1、 获取完整无锁结构的数据路径。

2、 预先分配套接字缓冲区。

3、 兼容大量网络设备驱动器。

4、 对支持异步数据包传输的内核线程提供透明支持。

5、 支持多线程应用程序监控。

6、 通过随机散列或确定性分类进行分组数据包转发。

7、 VLAN数据过滤。

8、 针对C、C++11-14和Haskell语言的用户空间库。

9、 用于分析和编译pfg-lang程序的pfq-lang编译器。

10、针对遗留应用的加速PCAP库。

11、I/O用户<->内核内存映射。

12、Pfq-omatic脚本,自动加速普通驱动程序。

工具下载&安装

$ git clone git://github.com/pfq/PFQ.git

许可证协议

PFQ框架遵循GPL许可证协议。

项目地址

PFQ:【GitHub传送门

* 参考来源:pfq,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM

# linux # PFQ
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录