前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PFQ:一款针对多核心架构的功能性网络框架

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

作者头像
C4rpeDime
发布2020-01-20 14:17:33
7020
发布2020-01-20 14:17:33
举报
文章被收录于专栏:黑白安全
PFQ:一款针对多核心架构的功能性网络框架
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脚本,自动加速普通驱动程序。

工具下载&安装

代码语言:javascript
复制
$ git clone git://github.com/pfq/PFQ.git

许可证协议

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

项目地址

PFQ:【GitHub传送门

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-04-104,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • PFQ v6.2介绍
  • 工具功能
    • 工具下载&安装
    • 许可证协议
    • 项目地址
    相关产品与服务
    负载均衡
    负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档