【实践】Intel QAT技术硬件加速方案在数据安全处理、网络连接场景下性能验证

本文在浪潮信息服务器操作系统云峦KeyarchOS 环境下,使用Intel QAT技术在数据安全处理、加速网络服务器连接场景下进行了验证。

1. 背景

TLS协议作为互联网安全的主要传输协议,给用户带来更高的安全性的同时,也带来了更多的性能开销。随着应用程序的复杂性不断提高和用户流量的不断增长,软件层面的优化很难满足需求。

为了解决上述问题,Intel提出了QAT(Intel® Quick Assist Technology)硬件加速方案,使用专用硬件来加速压缩等操作,并向用户提供了OpenSSL第三方插件,形成TSL异步加速的完整解决方案。

2. QAT技术在数据安全处理中的应用

QAT Engine是QAT技术中的核心模块,主要作为应用程序和硬件之间的中间层,负责“数据安全处理操作的输入输出数据”在应用程序与硬件之间进行传递。同时,QAT Engine作为OpenSSL的第三方插件提供给用户。基于此,本文对OpenSSL使用QAT前后进行数据安全处理计算性能测试对比,结果如下:

测试结果:在使用QAT的情况下,OpenSSL单位时间内能够执行的签名操作数量提升约18倍,OpenSSL 库在单位时间内能够执行的验证操作数量提升了3倍左右,同时Openssl对CPU的占用率下降了约50%。

3. QAT技术在网络加速中的应用

Nginx作为一款性能优越、稳定可靠的Web服务器,常被用于构建高性能的网站和应用。然而,随着用户访问量的增加和设计复杂性的提升,传统的软件部署方式可能无法满足需求。我们可以利用QAT加速Nginx应用,从而提升性能和安全性。Intel 提供了Nginx的补丁,支持Nginx使用OpenSSL的异步模式,可通过调用Openssl的接口加速网络连接。本文对Nginx在不同条件下使用QAT加速前后的性能进行了对比测试。

  1. Nginx 进程数量不变,客户端线程数量改变
    客户端不同并发线程数量(5、10、20、25)对Nginx服务器发起请求,保持1000个HTTPS网络连接,Nginx的worker_processes参数配置为4,测试不同情况下使用QAT前后Nginx性能对比:


测试结果:从图中可以看出,使用QAT后Nginx服务器Request/sec提升至少为3倍。

  1. 客户端20并发线程 Nginx进程数量改变
    客户端线程设置为20,保持1000个HTTPS网络连接,对使用QAT前后,不同worker_processes配置(1、2、3、4)的Nginx进行网络性能对比测试:


测试结果:对于不同的work_process配置,使用QAT技术后,Ngxin的网络吞吐量有明显提升,且CPU占用率在使用QAT时有明显降低。

  1. 客户端10并发线程 Nginx进程数量改变

客户端线程设置为10,保持1000个HTTPS网络连接,对使用QAT前后,不同worker_processes配置(1、2、3、4)的Nginx进行网络性能对比测试:

测试结果:Nginx在使用QAT后,网络吞吐量最高能提升约6倍左右,相同CPU占用率的条件下,使用QAT能够显著提升Nginx的网络性能。

4. 总结

在数据安全处理场景中,QAT对于数据安全处理计算任务的速度提升十分明显,并且通过将计算任务卸载到硬件加速卡中,可以释放大量CPU计算资源。

在网络连接应用场景中,使用QAT加速能够保证Nginx服务器的性能保持稳定,在线程数较低时,使用QAT加速Nginx能最大限度的调用cpu性能来保证Nginx的网络连接性能,而不使用QAT加速会导致Nginx实际调用cpu达不到预定的工作进程数,实际性能会远低于预期。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值