返回

云原生网关:如何通过 TLS 硬件加速性能提升一倍?

后端

业界在优化 HTTPS 的性能上也做了诸多探索,传统的软件优化方案有 Session 复用、OCSP Stapling、False Start、dynamic record size、TLS1.3。这些方案虽然有效,但也都有一定的局限性,比如 Session 复用和 OCSP Stapling 都有可能导致攻击者中间人攻击,False Start 和 dynamic record size 对服务器的负载均衡有一定要求,TLS1.3 则需要客户端和服务器都支持。

针对这些问题,业界也提出了许多基于硬件的加速方案,如使用专用的硬件芯片来加速 TLS 加解密操作。这种方案可以显著提高 HTTPS 的性能,而且不受软件优化方案的局限性影响。

本文将介绍一种云原生网关的 TLS 硬件加速方案。这种方案基于 DPDK 和 Intel® QuickAssist 技术,可以将 HTTPS 的性能提升一倍。

DPDK 和 Intel® QuickAssist 技术简介

DPDK 是一个开源的高性能数据包处理库,它可以将应用直接运行在网卡的驱动程序中,从而绕过操作系统协议栈,显著提高数据包处理性能。

Intel® QuickAssist 技术是一套硬件加速技术,它可以加速各种网络、安全和存储操作。QuickAssist 技术包括一套专用的硬件芯片和一套软件驱动程序。

云原生网关的 TLS 硬件加速方案

云原生网关的 TLS 硬件加速方案如图 1 所示。

图 1 云原生网关的 TLS 硬件加速方案

在这个方案中,DPDK 运行在网卡的驱动程序中,直接处理数据包。当收到一个 HTTPS 请求时,DPDK 会将请求转发给 Intel® QuickAssist 技术芯片。QuickAssist 芯片会对请求进行解密,然后将请求转发给应用服务器。应用服务器处理请求后,将响应返回给 QuickAssist 芯片。QuickAssist 芯片会对响应进行加密,然后将响应转发给客户端。

这种方案可以显著提高 HTTPS 的性能。在我们的测试中,使用这种方案可以将 HTTPS 的性能提升一倍。

选择 TLS 硬件加速解决方案的建议

在选择 TLS 硬件加速解决方案时,您需要考虑以下因素:

  • 性能: 解决方案的性能是您需要考虑的首要因素。您需要选择一个能够满足您性能要求的解决方案。
  • 成本: 解决方案的成本也是您需要考虑的重要因素。您需要选择一个能够在您的预算范围内负担得起的解决方案。
  • 易用性: 解决方案的易用性也是您需要考虑的因素。您需要选择一个易于安装和使用的解决方案。
  • 支持: 解决方案的支持也是您需要考虑的因素。您需要选择一个能够提供良好支持的解决方案。

结论

TLS 硬件加速是一种可以显著提高 HTTPS 性能的技术。如果您正在寻求一种方法来提高您的 HTTPS 性能,那么 TLS 硬件加速是一个不错的选择。