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

本文涉及的产品
性能测试 PTS,5000VUM额度
注册配置 MSE Nacos/ZooKeeper,118元/月
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
简介: 微服务架构的发展带来了诸多优势,然而这些分布众多的微服务也会增加安全性方面的挑战,每个微服务都是一个可被攻击的目标。为了提升网络通信的安全防护能力,有效对抗网络威胁,采用微服务架构的服务网格普遍采用了基于安全传输层协议(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

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

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

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

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

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

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


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
20天前
|
人工智能 云计算 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日~10日在江苏张家港召开的CCF ChinaNet(即中国网络大会)上,众多院士、教授和业界技术领袖齐聚一堂,畅谈网络未来的发展方向,聚焦智算集群网络的创新变革。
阿里云引领智算集群网络架构的新一轮变革
|
16天前
|
Kubernetes 大数据 调度
使用Kmesh作为阿里云服务网格ASM Sidecarless模式数据面
阿里云服务网格ASM支持Sidecar和Sidecarless两种模式,本文介绍了如何在阿里云ACK集群中部署Kmesh作为Sidecarless数据面并连接ASM控制面。
|
20天前
|
人工智能 运维 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日至10日,CCF ChinaNet(中国网络大会)在江苏张家港召开,众多院士、教授和技术领袖共聚一堂,探讨网络未来发展方向。阿里云研发副总裁蔡德忠发表主题演讲,展望智算技术发展趋势,提出智算网络架构变革的新思路,发布高通量以太网协议和ENode+超节点系统规划,引起广泛关注。阿里云HPN7.0引领智算以太网生态蓬勃发展,成为业界标杆。未来,X10规模的智算集群将面临新的挑战,Ethernet将成为主流方案,推动Scale up与Scale out的融合架构,提升整体系统性能。
|
1月前
|
Kubernetes Cloud Native JavaScript
为使用WebSocket构建的双向通信应用带来基于服务网格的全链路灰度
介绍如何使用为基于WebSocket的云原生应用构建全链路灰度方案。
|
2月前
|
存储 安全 算法
C#一分钟浅谈:数据加密与解密技术
【10月更文挑战第3天】在数字化时代,信息安全至关重要。数据加密作为保障信息不被未授权访问的有效手段,通过特定算法将明文转换为密文,确保即使数据被截获也难以解读。本文从基础概念入手,介绍C#中实现数据加密的方法,涵盖对称加密(如AES、DES)与非对称加密(如RSA),并通过具体示例代码演示如何使用`System.Security.Cryptography.Aes`类完成AES加密和解密过程。此外,还强调了密钥管理及安全策略的重要性。
61 4
|
3月前
|
Cloud Native Java 编译器
将基于x86架构平台的应用迁移到阿里云倚天实例云服务器参考
随着云计算技术的不断发展,云服务商们不断推出高性能、高可用的云服务器实例,以满足企业日益增长的计算需求。阿里云推出的倚天实例,凭借其基于ARM架构的倚天710处理器,提供了卓越的计算能力和能效比,特别适用于云原生、高性能计算等场景。然而,有的用户需要将传统基于x86平台的应用迁移到倚天实例上,本文将介绍如何将基于x86架构平台的应用迁移到阿里云倚天实例的服务器上,帮助开发者和企业用户顺利完成迁移工作,享受更高效、更经济的云服务。
将基于x86架构平台的应用迁移到阿里云倚天实例云服务器参考
|
28天前
|
Kubernetes 调度 容器
使用Kmesh作为阿里云服务网格ASM Sidecarless模式数据面
阿里云服务网格ASM支持Sidecar和Sidecarless两种模式,其中Sidecarless模式如Istio Ambient、ACMG和Kmesh等,可减少延迟和资源消耗。Kmesh基于eBPF技术,通过内核空间拦截流量,结合Waypoint Proxy处理L7流量,实现高效的服务治理。本文介绍了如何在阿里云ACK集群中部署Kmesh并连接ASM控制面,包括安装步骤、检查服务状态和流量调度示例。
|
3月前
|
缓存 Kubernetes Java
阿里云 SAE Web:百毫秒高弹性的实时事件中心的架构和挑战
SAE 事件中心通过智能诊断显示通知与用户连接起来,SAE WEB 百毫秒弹性实例给事件中心带来了新的实时性、海量数据和高吞吐的挑战,本篇将带您了解 SAE 整体事件中心的架构和挑战。
161 10
|
2月前
|
安全 测试技术 Go
Python 和 Go 实现 AES 加密算法的技术详解
Python 和 Go 实现 AES 加密算法的技术详解
97 0
|
3月前
|
存储 安全 算法
RSA在手,安全我有!Python加密解密技术,让你的数据密码坚不可摧
【9月更文挑战第11天】在数字化时代,信息安全至关重要。传统的加密方法已难以应对日益复杂的网络攻击。RSA加密算法凭借其强大的安全性和广泛的应用场景,成为保护敏感数据的首选。本文介绍RSA的基本原理及在Python中的实现方法,并探讨其优势与挑战。通过使用PyCryptodome库,我们展示了RSA加密解密的完整流程,帮助读者理解如何利用RSA为数据提供安全保障。
131 5

相关产品

  • 服务网格