linux网卡 驱动 内核旁路,pf_ring_zc | 虹科网络可视化|网络安全

PF_RING ZC (Zero Copy)

来自主机和虚拟机的多10 Gbit RX / TX数据包处理

2d209b7148dfac4fba4f9e35d180eb0b.png

PF_RING™ZC(零复制)是一种灵活的数据包处理框架,可让您在任何数据包大小下实现1/10 Gbit的线速数据包处理(RX和TX)。它实现了零复制操作,包括用于进程间和VM间(KVM)通信的模式。它可以被视为DNA / LibZero的后继产品,该产品基于过去几年的经验教训提供了一个单独且一致的API。

它具有干净灵活的API,可实现可从线程、应用程序和虚拟机使用的简单构建基块(队列、工作器和池)。这样可以实现10 Gbit线速数据包处理。

简单干净的API

PF_RING™ZC带有一个简单的API,能够用几行代码创建一个复杂的应用程序。 以下示例显示了如何用6行代码创建一个聚合器+平衡器应用程序。

cd7cbf5fdad1a3fa549c1250564ad8e3.png

有关API的更多信息,请参考文档 并查看代码示例。

使用PF_RING感知驱动程序的按需内核旁路

PF_RING™ZC附带了新一代的PF_RING™感知驱动程序,可以在内核或旁路模式下使用。安装后,这些驱动程序将作为标准Linux驱动程序运行,您可以在其中进行常规联网(例如ping或SSH)。当从PF_RING™使用时,它们比普通驱动程序更快,因为它们直接与之交互。如果您使用支持PF_RING的驱动程序以零拷贝方式打开设备(例如pfcount -i zc:eth1),则该设备将无法通过标准网络使用,因为通过内核旁路以零拷贝方式对其进行了访问,就像以前的DNA一样。 一旦访问设备的应用程序关闭,标准的网络活动就可以再次发生。

零复制操作到虚拟机(KVM)

PF_RING™ZC允许您为KVM虚拟机以零拷贝转发(RX和TX)数据包,而无需使用PCIe直通等技术。由于在VM上动态创建了ZC设备,因此您可以从VM中以零拷贝捕获/发送流量,而无需修补KVM代码,也可以在创建ZC设备后启动KVM。从本质上讲,现在您可以使用在物理主机上使用的相同命令,对KVM进行10 Gbit的线速传输,而无需更改任何代码行。

9b500e4b4bddcbf907319bf971d7ebe6.png

上图显示ZC可用于创建跨虚拟机以零副本进行通话的应用程序管道。从本质上讲,PF_RING™ZC从第一天起就可以使用云了。

零复制操作

与其前身LibZero相似,在PF_RING™ZC中,您可以在线程,应用程序以及现在的VM之间执行零复制操作。您可以平衡各个应用程序的零拷贝数据包

427e5021be6b1bdca4f96b977c0a436e.png

或实施数据包扇出。

2f6610b887ac2fb9192b4df0ddb873eb.png

在PF_RING™ZC中,所有内容均以线速以零复制进行。

性能

与其前身LibZero / DNA相似,PF_RING™ZC允许您从物理主机或KVM获得10 Gbit的线速,无论任何数据包大小。您可以使用我们为您开发的演示应用程序自己进行测试。

将0复制与1复制设备集成

在PF_RING™ZC中,即使对非PF_RING敏感的驱动程序,也可以使用零复制框架。这意味着您可以将数据包分发、处理、发起并将其注入零复制框架,即使它们并非源自ZC设备也是如此。

924dc1d78fecffb35490f7c218bf90e5.png

一旦将数据包复制(副本)到ZC世界中,从那时起,该数据包将在其整个生命周期中始终以零副本处理。例如,zbalance_ipc演示应用程序可以从非PF_RING感知设备(例如WiFI设备或Broadcom NIC)以一复制模式读取数据包,并将其发送到ZC内部以对其执行零复制操作。

内核旁路和IP堆栈数据包注入

与其他内核旁路的技术相反,使用PF_RING™ZC,您可以随时决定要向标准Linux IP堆栈中注入哪些内核旁路的数据包。PF_RING带有一个称为“stack” 的IP堆栈数据包注入模块,通过该模块,您可以选择将内核旁路接收的数据包注入到标准IP堆栈中。您需要做的就是打开设备“ stack:ethX”,然后将数据包发送到IP堆栈,就像从ethX接收到的一样。

Snort的DAQ

当使用Snort(最受欢迎的IDS / IPS之一)时,Snort用户还可以从PF_RING™ZC速度中受益。本地PF_RING™ZC DAQ(Snort Data AcQuisition)库比标准PF_RING™DAQ快20%至50%,还可以在IPS和IDS模式下运行。

PF_RING™ZC DAQ是PF_RING™的一部分。

操作系统

69ade8386a599a27f4f0f4f515b58b60.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值