IIMB大幅提⾼pfSense plus防火墙VPN性能

FreeBSD中的OpenCrypto Framework (OCF)通过提供一组用于内核内数据加密、解密和哈希的 API 函数来抽象底层加密实现。这些函数的驱动程序来自各种加密提供程序,范围从软件指令到硬件加速器。

相较于OCF,pfSense plus集成了Intel Multi-Buffer Crypto for IPsec Library (IIMB),作为AES-GCM、AES-CBC和ChaCha20-Poly1305密码的提供程序,通过优化数据处理路径、减少延迟和提高系统资源的利用率大幅提升了防火墙的VPN(IPsec、WireGuard)性能。

OPNsense论坛有一篇贴子,测试pfSense plus的Wireguard性能比OPNsense快1倍,分析原因是两者对IIMB支持差异造成的。

实现机制

减少CPU占用率

IIMB 通过减少数据在硬件和软件之间传输时的阻塞延迟,降低了对CPU的过度依赖。这使得CPU可以专注于处理VPN的加密和解密任务,而不需要浪费时间等待数据处理完成。

实现方法:

  • 通过DMA(Direct Memory Access)加速数据传输,减少了内核干预的次数。
  • 避免了内核态和用户态之间频繁的上下文切换。

优化多核利用

IIMB可以充分利用多核CPU的优势,将数据包处理分配到不同的核上。这对运行VPN服务的pfSense防火墙尤为重要,因为VPN的流量加密和解密通常是高计算密集型的。

多核负载均衡:

  • 配合 Intel® QuickAssist 技术(如果支持),可以加速AES-NI和其他加密算法的处理。
  • 在多核CPU环境下,通过并行化数据处理减少了瓶颈。

提高网络吞吐量

IIMB优化了网络数据包的转发效率,特别是在处理大量小数据包的情况下。这对VPN的性能至关重要,因为VPN通信通常会产生大量加密的小数据包。

关键改进:

  • 减少了数据包在网络接口队列中的等待时间。
  • 支持高速网络接口卡(NIC)的硬件加速功能。

提升稳定性和可靠性

IIMB减少了在高负载情况下的网络延迟和丢包率,从而提高了VPN的连接稳定性。这对于需要持续高带宽的远程访问场景非常重要。

表现:

  • 在VPN流量高峰期,避免了因资源竞争导致的性能下降。
  • 保持较低的延迟以支持实时应用(例如 VoIP 和视频会议)。

总结

通过利用IIMB,pfSense防火墙在处理 VPN 流量时可以更高效地利用系统资源,提升加密速度、网络吞吐量和整体连接稳定性。如果硬件支持 Intel® QuickAssist 和 AES-NI,这种优化效果会更加显著。因此,在部署pfSense 防火墙,建议选择支持这些特性的硬件来最大化性能提升。

注意事项

作为付费支持的功能之一(包括DCO、多实例管理、ZFS快照等),IIMB只在pfSense plus中提供,pfSense CE社区版不包含该功能。

测试报告

Netgate Whitepaper – boosting-ipsec-perf-with-iimb

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇