基于英特尔®架构的阿里云服务网格ASM技术加速应用服务加密通信

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 微服务架构的发展带来了诸多优势,然而这些分布众多的微服务也会增加安全性方面的挑战,每个微服务都是一个可被攻击的目标。为了提升网络通信的安全防护能力,有效对抗网络威胁,采用微服务架构的服务网格普遍采用了基于安全传输层协议(TLS)的安全数据传输。但同时,TLS协议中的非对称加解密会消耗大量的CPU资源,影响了服务网格的性能表现,并带来了较高的总体拥有成本(TCO)。

白皮书下载链接https://developer.aliyun.com/ebook/7817


概述

微服务架构的发展带来了诸多优势,然而这些分布众多的微服务也会增加安全性方面的挑战,每个微服务都是一个可被攻击的目标。为了提升网络通信的安全防护能力,有效对抗网络威胁,采用微服务架构的服务网格普遍采用了基于安全传输层协议(TLS)的安全数据传输。但同时,TLS协议中的非对称加解密会消耗大量的CPU资源,影响了服务网格的性能表现,并带来了较高的总体拥有成本(TCO)。


阿里云服务网格ASM采用第三代英特尔®至强®可扩展处理器集成的英特尔®密码操作硬件加速引擎(英特尔®CryptoAcceleration)相关技术,包括英特尔®高级矢量扩展512(英特尔®AVX-512),多缓冲区处理(Multi-Buffer)软件优化技术来加速双向安全传输层协议(mTLS)的算法实现,同时基于阿里云服务网格ASM产品的集成落地实践,为最终用户提供一键开启mTLS加速功能,实现安全和性能的兼顾。

背景

云原生技术Kubernetes为托管和编排微服务提供了一个出色的平台,但是默认情况下,微服务之间的所有交互均通过纯文本HTTP进行通信,这显然无法满足安全要求。如果只依赖网络边界来保证安全,一旦内部的某个服务被攻陷,边界安全手段就如马奇诺防线,攻击者可以利用该服务所在的机器作为跳板来攻击内网。


服务网格作为一个云原生应用通信的基础设施层,可以进一步控制和增强服务间的安全性。基于TLS协议的安全数据传输贯穿于整个服务调用的链路中,包括了外部对入口网关的HTTPS请求、网格内部服务之间的横向调用过程中的mTLS认证、以及从网格内部对外部的访问请求等。


在目前非常流行的ServiceMesh项目Istio中,其数据面Envoy无论是作为网格入口流量网关还是作为内部微服务的边车代理,都需要处理大量的mTLS请求。TLS协议作为网络安全通信的基石,一次会话的处理过程总体上可分为握手阶段和数据传输阶段,握手阶段最重要的任务是使用非对称加密技术协商出一个会话密钥,然后在数据传输阶段,使用协商出的会话密钥对数据执行对称加密操作,再进行传输。


但同时,mTLS加密算法的应用会带来较高的资源消耗。尤其在握手阶段的非对称加解密的操作,需要消耗大量的CPU资源,也会增加微服务调用之间的延迟时间和入口网关的服务响应时间,这在大规模微服务场景、计算资源有限的边缘计算场景等场景下,会带来棘手的性能挑战。因此,大量用户在希望通过服务网格技术实现更高的安全防护能力的同时,也对该技术所带来的性能压力心存顾虑。

image.png

1.服务网格的TLS 握手增加了服务之间调用的时延


解决方案:采用英特尔® Crypto Acceleration 优化的阿里云ASM

阿里云服务网格产品ASM (Alibaba Cloud Service Mesh) 提供了一个全托管式的服务网格平台,兼容社区开源Istio,用于简化服务的治理,包括服务调用之间的流量路由与拆分管理、服务间通信的认证安全以及网格可观测性能力,能够有效减轻开发与运维的工作负担。ASM 增强了多协议支持以及动态扩展能力,提供精细化服务治理,完善零信任安全体系,增加大规模集群支持能力,并融合了Multi-Buffer等技术来持续提升性能,降低服务网格使用门槛,助力客户在生产环境中进行大规模落地。

 

作为业内首个全托管Istio 兼容的服务网格产品,阿里云ASM在架构上保持了与社区、业界趋势的一致性,控制面的组件托管在阿里云侧,与数据面侧的用户集群独立。


image.png

2. 阿里云服务网格产品ASM 架构图


阿里云服务网格ASM 基础设施层为基于第三代英特尔® 至强® 可扩展处理器的阿里云第七代ECS 服务器。第三代英特尔® 至强® 可扩展处理器提供了多插槽内核计数密度,每个处理器最多可达40 个核心,与上一代产品相比,性能、吞吐量和CPU 频率显著提高[1]。基于该处理器的阿里云第七代ECS 服务器相较于上一代产品,单核性能提升30%,整机算力提升50% 以上[2],这为阿里云服务网格ASM 奠定了坚实的性能基础。

 

该服务器提供了若干不同的实例类型,并集成了搭载Multi-Buffer技术的最新Envoy 上游版本,提供了基于英特尔® Multi-Buffer 技术的TLS 加解密性能优化能力,为最终客户的落地实践提供了卓越的平台支撑。  

[1]更多信息详见https://www.intel.cn/content/www/cn/zh/products/docs/processors/xeon/3rd-gen-xeon-scalable-processors-brief.html

[2]更多信息详见https://developer.aliyun.com/article/783678。英特尔并不控制或审计第三方数据。请您审查该内容,咨询其他来源,并确认提及数据是否准确。


英特尔® Crypto Acceleration及 Multi-Buffer 解决方案

英特尔通过指令集的创新、微体系结构的改进和软件技术的优化,在降低和优化密码算法的计算成本方面一直处于业界领先地位。第三代英特尔® 至强® 可扩展处理器引入了英特尔® Crypto Acceleration,大大提升了加解密性能,能够显著加速TLS 等流行的协议应用。

英特尔® Crypto Acceleration 提供了公钥加密(Public-Key Cryptography)功能,能够通过新的指令集AVX512_IFMA,提供对公钥加密中常见的“大数”乘法的支持。


英特尔® Crypto Acceleration 还搭载了Multi-Buffer 多缓冲区处理技术,Multi-Buffer 是一种用于并行处理密码算法中多个独立数据缓冲区的创新高效技术,最多可支持八个操作请求(如RSA 加密算法处理),每个请求都相互独立,因此可以同时进行处理。

image.png

3.集成于第三代英特尔® 至强® 可扩展处理器的英特尔® Crypto Acceleration


目前英特尔® Multi-Buffer 技术通过英特尔® 集成性能基元(英特尔® IPP) 集成的Cryptography Multi-buffer Library加密库向上对TLS 应用提供接口调用,该库基于英特尔® AVX-512 操作提供了RSAECDSA 等算法的多缓冲区优化版本。

 

Envoy 使用的TLS 实现库是BoringSSL Library,其提供了一个名为Private Key Provider 的框架,可以集成外部自定义的加解密操作实现。用户只需按照Private Key Provider 框架要求实现相关的功能接口,这里阿里云针对英特尔® Multi-Buffer 技术实现了一个名为CryptoMB Private Key Provider Extension

 

用户需要将BoringSSL 中的TLS 握手的过程实现为异步模式,才能利用英特尔® Multi-Buffer 技术的优势,并行处理8 个这样的异步操作。在这些异步操作中,还可以结合使用AVX512 指令处理,大大提高了整体性能。为了平衡TLS 握手请求处理吞吐量和时延的关系,英特尔还引入了一个计时器的变量进行控制。在TLS 操作填满8 个缓冲区或者Timer 计时器超时两个条件满足其一时,当前缓冲的所有TLS 操作都将会被一次性处理。

 

Envoy 1.20 及后续的版本已经集成了英特尔® Multi-Buffer 技术,Envoy 的配置文件可以根据运行的平台是否支持Crypto Acceleration 架构功能进行配置。一旦启用该功能,Envoy TLS 配置除了Private Key 的路径信息,还需要指定CryptoMB Private Key Provider 以及计时器信息。这些配置也可以集成到外部控制面实现中,如最新的Istio 项目1.14 版本已经支持该功能,并且实现了对网格级别,网关级别或者特定工作负载级别的配置,实现了灵活、精细化的功能管理。


英特尔® Multi-Buffer 在阿里云 ASM 的落地实践

 

为了更好地通过英特尔® Multi-Buffer 技术来加速云服务网格的加解密性能,阿里云ASM 通过如下步骤以启用英特尔® Multi-Buffer 技术:

image.png

4. 阿里云ASM 启用英特尔® Multi-Buffer 流程图


  1. 在服务网格控制面,通过扩展MeshConfig 实现对Multi-Buffer配置的支持。配置的信息除了包括必需的Private Key的文件和相应路径,还有CryptoMbPrivateKeyMethodConfig类型,以及每个线程处理队列的等待时间poll_delay


  1. 数据面结合英特尔开源的IPP Crypto LibraryCryptoMB Private Key Provider 实现。ASM 服务网格实现了TLS  握手操作的加速,以处理更多连接,降低延迟并节省  CPU 资源用于其他业务。


  1. 最后通过CPUID feature flags 或者机器型号, ASM 将启动Multi-Buffer功能的节点调度到资源池中对应的Ice Lake 处理器机型上。


目前,英特尔® Multi-Buffer已经在阿里云ASM 产品的最新版本中对外开放,在阿里云ASM 控制台中,用户可以通过性能优化开关一键地启用此功能,从而实现加解密性能的提升。

为了测试英特尔® Multi-Buffer 对于性能的影响,阿里云将通用型实例规格族g7 作为Kubernetes 节点,并验证英特尔® Multi-Buffer 启用前后,阿里云ASM 每秒查询率(QPS) 的变化。

 

测试数据如图5 所示,在启用Multi-Buffer 功能后,阿里云ASM QPS 75%[1]的性能提升。如果使用的是弹性裸金属节点,提升的性能幅度将更高。


image.png

5.启用Multi-Buffer前后的阿里云ASM QPS 对比


[1]数据援引自阿里云内部测试结果。英特尔并不控制或审计第三方数据。请您审查该内容,咨询其他来源,并确认提及数据是否准确。


客户价值:更低的资源损耗,更高的性能

通过采用集成了Multi-Buffer 技术的英特尔® Crypto Acceleration,阿里云服务网格ASM 显著提升了TLS 应用的性能表现,降低了CPU 资源开销。同时,由于硬件资源得到更加充分的利用,用户能够降低在云实例采购等方面的成本,提升云服务网格应用的整体投资回报。

目前,搭载Multi-Buffer TLS 加速功能的阿里云服务网格ASM 产品已经得到广泛应用,帮助用户有效提升HTTPS/TLS 的应用的请求效率。

以震坤行工业超市(上海)有限公司(以下简称:震坤行)为例,该企业成立于1996 年,是一家服务于工业领域与制造业的一站式工业用品服务平台。震坤行经营了32 条产品线,500 余万种工厂使用的辅料和易耗品(MRO)。随着业务不断快速发展,公司亟需提升数字化竞争力,延伸价值链条。在云上搭建新业务流程研发系统,通过容器化技术进行云原生优化改造,解决业务应用部署中碰到的不稳定、上线人工干预过多、无法稳定升级等问题。

image.png

6.阿里云服务网格ASM 在震坤行的应用架构


在震坤行的案例中,有500 多个具有不同TLS 证书的子域名。每个子域名服务于不同的业务单元,接收不同的HTTPS 请求。在性能方面,被高频调用的应用服务依赖HTTPS 通信,服务间需要处理大量的TLS 请求,在握手阶段执行非对称加解密的操作时,消耗了客户大量CPU 资源,同时带来性能瓶颈。

在启用阿里云服务网格ASM Multi-Buffer技术之后, 请求中的TLS 处理效率提升了两倍多,整体系统请求处理能力提升了80 % 以上[1]。此外,针对特定的业务应用, 当启用了mTLS 和授权策略之后,TLS 连接握手性能也提升了两倍多[2]。测试结果显示,启用Multi-Buffer前后的http_req_waiting平均时间由原来的102.88ms 减少为40.71ms,等待时间减少了250~260%[3],同时tls_handshaking的时间也相应减少。

[1]数据援引自阿里云内部测试结果。英特尔并不控制或审计第三方数据。请您审查该内容,咨询其他来源,并确认提及数据是否准确。

[2]数据援引自阿里云内部测试结果。英特尔并不控制或审计第三方数据。请您审查该内容,咨询其他来源,并确认提及数据是否准确。

[3]数据援引自阿里云内部测试结果。英特尔并不控制或审计第三方数据。请您审查该内容,咨询其他来源,并确认提及数据是否准确。


展望

除了Multi-BufferAVX512 之外,阿里云和英特尔在云原生服务网格技术方面还开展了更为广泛的合作。双方正在探索基于第四代英特尔® 至强® 可扩展处理器进行深度优化,该处理器集成了针对网络安全专用的加密操作加速器英特尔® Quick Assist Technology (英特尔® QAT),能够将高性能安全性、私钥保护和压缩/解压缩等场景的负载从CPU 卸载到QAT 中,有效提升应用程序和平台的性能。第四代英特尔® 至强® 可扩展处理器还提供了英特尔® 动态负载均衡器(英特尔® DLB),每秒可处理几百万个队列管理操作,在CPU 内核之间高效分配网络处理。


随着阿里云服务网格产品ASM 在零信任安全体系的持续完善,以及对各种客户特定场景下性能要求的不断提高,英特尔将携手阿里云在云原生服务网格领域推出更多高性能、高安全性的创新产品与方案,助力业内的最终客户在生产环境中进行大规模落地,充分满足基于云原生技术的基础设施的构建需求,为数字化转型奠定坚实基础。


关于阿里云

阿里云创立于 2009 年,是全球领先的云计算及人工智能科技公司,致力于以在线公共服务的方式,提供安全、可靠的计算和数据处理能力,让计算和人工智能成为普惠科技。阿里云服务着制造、金融、政务、交通、医疗、电信、能源等众多领域的领军企业。


关于英特尔

英特尔(NASDAQ: INTC)作为行业引领者,创造改变世界的技术,推动全球进步并让生活丰富多彩。在摩尔定律的启迪下,我们不断致力于推进半导体设计与制造,帮助我们的客户应对最重大的挑战。通过将智能融入云、网络、边缘和各种计算设备,我们释放数据潜能,助力商业和社会变得更美好。如需了解英特尔创新的更多信息,请访问英特尔中国新闻中心newsroom.intel.cn 以及官方网站 intel.cn


实际性能受使用情况、配置和其他因素的差异影响。更多信息请见www.Intel.com/PerformanceIndex

性能测试结果基于配置信息中显示的日期进行测试,且可能并未反映所有公开可用的安全更新。详情请参阅配置信息披露。没有任何产品或组件是绝对安全的。

具体成本和结果可能不同。

英特尔技术可能需要启用硬件、软件或激活服务。

英特尔未做出任何明示和默示的保证,包括但不限于,关于适销性、适合特定目的及不侵权的默示保证,以及在履约过程、交易过程或贸易惯例中引起的任何保证。

英特尔并不控制或审计第三方数据。请您审查该内容,咨询其他来源,并确认提及数据是否准确。

© 英特尔公司版权所有。英特尔、英特尔标识以及其他英特尔商标是英特尔公司或其子公司在美国和/或其他国家的商标。其他的名称和品牌可能是其他所有者的资产。


相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
18天前
招募!阿里云x魔搭社区发起Create@AI创客松邀你探索下一代多维智能体应用
招募!阿里云x魔搭社区发起Create@AI创客松邀你探索下一代多维智能体应用
285 0
|
2月前
|
存储 监控 安全
360 企业安全浏览器基于阿里云数据库 SelectDB 版内核 Apache Doris 的数据架构升级实践
为了提供更好的日志数据服务,360 企业安全浏览器设计了统一运维管理平台,并引入 Apache Doris 替代了 Elasticsearch,实现日志检索与报表分析架构的统一,同时依赖 Doris 优异性能,聚合分析效率呈数量级提升、存储成本下降 60%....为日志数据的可视化和价值发挥提供了坚实的基础。
360 企业安全浏览器基于阿里云数据库 SelectDB 版内核 Apache Doris 的数据架构升级实践
|
2月前
|
弹性计算 人工智能 安全
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(3)
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(3)
433 0
|
2月前
|
存储 数据可视化 数据管理
基于阿里云服务的数据平台架构实践
本文主要介绍基于阿里云大数据组件服务,对企业进行大数据平台建设的架构实践。
718 2
|
2月前
|
弹性计算 安全 网络安全
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(2)
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(2)
479 0
|
9天前
|
人工智能 Serverless 数据处理
利用阿里云函数计算实现 Serverless 架构的应用
阿里云函数计算是事件驱动的Serverless服务,免服务器管理,自动扩展资源。它降低了基础设施成本,提高了开发效率,支持Web应用、数据处理、AI和定时任务等多种场景。通过实例展示了如何用Python实现图片压缩应用,通过OSS触发函数自动执行。阿里云函数计算在云计算时代助力企业实现快速迭代和高效运营。
46 0
|
14天前
|
云安全 数据采集 安全
阿里云安全产品,Web应用防火墙与云防火墙产品各自作用简介
阿里云提供两种关键安全产品:Web应用防火墙和云防火墙。Web应用防火墙专注网站安全,防护Web攻击、CC攻击和Bot防御,具备流量管理、大数据防御能力和简易部署。云防火墙是SaaS化的网络边界防护,管理南北向和东西向流量,提供访问控制、入侵防御和流量可视化。两者结合可实现全面的网络和应用安全。
阿里云安全产品,Web应用防火墙与云防火墙产品各自作用简介
|
24天前
|
消息中间件 Kubernetes Kafka
Terraform阿里云创建资源1分钟创建集群一键发布应用Terraform 创建 Kubernetes 集群
Terraform阿里云创建资源1分钟创建集群一键发布应用Terraform 创建 Kubernetes 集群
16 0
|
1月前
|
消息中间件 并行计算 网络协议
探秘高效Linux C/C++项目架构:让进程、线程和通信方式助力你的代码飞跃
探秘高效Linux C/C++项目架构:让进程、线程和通信方式助力你的代码飞跃
34 0
|
1月前
|
弹性计算 人工智能 物联网
挖掘阿里云ECS的潜力:创意应用和未来可能性
在云厂商中,我觉得开发者更信赖阿里云的云产品,而且随着阿里云最近宣布云产品降价的消息,会有更多的开发者和企业选择阿里云的云产品。这里拿阿里云的云服务器来做说明,阿里云的云服务器ECS为用户提供了强大的计算资源和灵活的扩展性,使其成为搭建各种有趣和创意应用的理想平台。除了已知的小游戏、小程序和个人网盘等应用案例之外,本文还会进一步探讨ECS在特定场景下的实践经验,并挖掘其在其他领域的潜力,为大家带来更多创意和启发。
556 3
挖掘阿里云ECS的潜力:创意应用和未来可能性

相关产品

  • 服务网格