性能提升一倍,云原生网关支持 TLS 硬件加速

简介:业界在优化 HTTPS 的性能上也做了诸多探索,传统的软件优化方案有 Session 复用、OCSP Stapling、False Start、dynamic record size、TLS1.3、HSTS 等, 但软件层面如何优化也无法满足流量日益增长的速度,加上 CPU 摩尔定律已入暮年,使得专用硬件卸载 CPU 密集型运算成为业界一个通用解决方案。

作者|井轶

审核&校对|如葑

随着网络环境的日渐复杂,传统 HTTP 明文传输协议带来的传输安全风险也日渐升高,因此 HTTPS 的密文传输协议得到了业界的普遍认可与广泛应用;任何事情都有其两面性,HTTPS 带来更高传输安全性的同时,由于需要做认证及数据加解密,相比 HTTP 使用 HTTPS 后使得网站访问速度变“慢”,且导致服务器 CPU 消耗变高、从而机器成本变得更“贵”。

业界在优化 HTTPS 的性能上也做了诸多探索,传统的软件优化方案有 Session 复用、OCSP Stapling、False Start、dynamic record size、TLS1.3、HSTS 等, 但软件层面如何优化也无法满足流量日益增长的速度,加上 CPU 摩尔定律已入暮年,使得专用硬件卸载 CPU 密集型运算成为业界一个通用解决方案。

网关为什么是 HTTPS 优化(TLS 卸载优化)的最佳路径?

网关作为请求流量进入业务应用的桥头堡,对于 HTTPS 优化这种跨业务的通用诉求是非常适合的落脚点,具体优势如下:

  • 运维降本:网关统一处理 HTTPS 显然相比各业务分散处理运维成本更低。
  • 机器降本:通常网关采用集群化的规模部署,统一 HTTPS 优化能够带来显著的机器成本优化。
  • 业务提效:网关处理 HTTPS 后,业务只需关注自身逻辑即可,提升业务开发效率。

阿里在硬件加速上的探索

阿里统一接入网关 Tengine 承担着集团所有的入口流量,随着 HTTPS 化的全面推进,对于网关的性能挑战也非常大。业务驱动了技术创新,2017 年接入网关在硬件加速领域也迈出了第一步,开始尝试 QAT 卡硬件加速方案。

基于 QAT 卡的 TLS 硬件加速方案

整体方案由三部分组成:Tengine的ssl_async 指令、OpenSSL + QAT Engine 及 QAT Driver。其中 Tengine 通过适配 OpenSSL-1.1.0 的异步接口,将私钥操作卸载至硬件的 QAT engine 中,引擎通过 QAT 驱动调用硬件完成非对称算法取回结果。方案图示如下:

方案优点

  • HTTPS 卸载由独立硬件 QAT 完成,不额外增加 CPU 消耗,使用不同的加密套件测试,整体上性能非常好。详细性能数据可见文末文章链接《在阿里的统一接入层上进行了硬件加速的探索》。

方案缺点

  • 运维成本非常高,独立的 QAT 卡需要提前独立采购,尤其对于电商大促的突发流量场景无法做到弹性。
  • 在目前容器化部署的大背景下,QAT 的使用有很多稳定性问题。

基于 CPU Multi-Buffer 特性的 TLS 卸载加速方案

在经历 Tengine QAT 的探索实践后,阿里云推出了基于开源 Envoy 构建的 MSE 云原生网关产品,读到这里有的同学可能会疑惑为什么选择 Envoy 而不是内部的 Tengine,关于这个问题的答案在《阿里巴巴云原生网关三位一体的选择与实践》 中。

阿里云 2021 年发布了 搭载最新至强处理器 Ice Lake 的 ECS 产品,利用 CPU 的硬件特性使得算力大幅提升 50% 以上。其中提供的 Crypto Acceleration 特性,包括 Vector AES ,通过 multi-buffer lib 配合,能够加速 AES、 RSA、EC 等密码学计算。利用该特性使得 HTTPS 硬件加速得以摆脱专用硬件加速卡的限制,使用 CPU 内置指令结合 SIMD 机制也可以大幅提升 HTTPS 的性能。基于此云原生网关率先完成了对其适配,将硬件加速的性能优势带给用户,在不增加用户资源成本的同时大幅度提升 HTTPS 的性能。

从上图压测数据可以看出使用 TLS 硬件加速后,相比普通 HTTPS 请求 TLS 握手时延降低一倍,极限 QPS 提升 80% 以上。

方案压测

1、压测基础环境

  • 云原生网关规格: 1C2G * 1
  • 压测工具:Grafana k6
  • 请求大小: 1kb
  • 证书:RSA2048
  • 加密套件:

ECDHE-RSA-CHACHA20-POLY1305(TLS1.2) TLS_AES_256_GCM_SHA384(TLS1.3)

2、压测结论

1C2G 情况下,开启硬件加速后极限 QPS 提高 80% 以上,TLS 握手时间降低一倍。注:采用 1C2G 规格是因为更容易观察单核极限性能。

3、测试数据

TLS版本是否开启硬件加速并发度QPSTLS握手平均时间TLS握手最长时间
1.2未开启200100998.5ms177.37ms
1.2未开启5001004313.84ms457.56ms
1.3未开启20099577.81ms177.24ms
1.3开启200188648.71ms104.04ms
1.2开启200187659.98ms113.55ms
1.2开启5001873145.81ms262.91ms

500 并发没开启硬件加速时的数据

500 并发,开启硬件加速时的数据

方案优点

  • 无需独立硬件支持,运维成本低且易于弹性扩缩容。
  • 适用场景更广泛。

写在最后

目前硬件加速功能已经正式上线,相比自建,您无需关心底层硬件加速机器的运维就能在同规格下获取一倍的 HTTPS 性能提升,具体可参考新建云原生网关进行硬件加速机器的购买。

相关链接

《在阿里的统一接入层上进行了硬件加速的探索》阿里七层流量入口 Tengine硬件加速探索之路-阿里云开发者社区

《阿里云上新了:搭载最新至强处理器 Ice Lake,算力提升 50% 以上》

阿里云上新了:搭载最新至强处理器Ice Lake,算力提升50%以上-阿里云开发者社区

新建云原生网关

新建云原生网关 - 微服务引擎MSE - 阿里云

原文链接

本文为阿里云原创内容,未经允许不得转载。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/511392.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 中如何检查开放的端口

作者 | 刘光录来源 | TIAP无论你的服务器是用的Linux还是桌面系统,了解系统开放的端口,和正在使用的端口,在各种情况下都会有所帮助。比如,如果你的服务器中正在运行着 Apache或者Nginx,那么其端口应该为80或者443&…

微服务应用实现无损上下线实践

简介:本文是阿里云微服务引擎MSE在应用发布时提供的无损上下线和服务预热能力最佳实践介绍。 本文是阿里云微服务引擎MSE在应用发布时提供的无损上下线和服务预热能力最佳实践介绍。假设应用的架构由Zuul网关以及后端的微服务应用实例(Spring Cloud&…

计算机策划知识竞赛有创意的主题,【社团活动】首届创意·科技文化节--第八届计算机趣味知识竞赛决赛...

就21世纪而言,计算机莫过于是至今最成功的创新,作为计算机科学系的学子们担当着社会的前行者,从语言不和的英文代码,到逻辑化的函数循环,甚至有人开玩笑高呼着“c从入门到放弃”。谁又忍心让大家始终学习在枯燥中呢&am…

3月2日,阿里云开源 PolarDB 企业级架构即将发布

简介:2022年3月2日,开源 PolarDB 企业级架构将迎来重磅发布!本次发布会将首次公开开源 PolarDB 的总体结构设计和企业级特性,对 PolarDB for PostgreSQL 的存储计算分离架构、HTAP架构、三节点高可用架构进行全面介绍。 2021年&a…

产学研专家共议中国金融机构数字化转型,“守正创新”成主基调

《中国金融机构数字化转型》白皮书同期发布。 7月12日,由华为云与《清华金融评论》联合主办,清华五道口“数字中国”企业家课程项目提供学术支持的《中国金融机构数字化转型》专题研讨会在线上举办,并在央视财经等平台直播。研讨会邀请到多位…

极速生成缩略图,Serverless 支撑赛事转播锁定冬奥亮点

简介:阿里云函数计算(FC)支撑用户开发赛事视频截图的核心业务代码,实现了弹性高可用免运维的直播视频截图服务,满足用户开发成本低、一键部署的业务需求,比赛期间完美支撑视频转播实时锁定冬奥亮点。 作者…

“电信级”运行多年,亚信科技推出核心交易数据库AntDB7.0

亚信科技AntDB数据库为全国24个省份的10亿多用户提供7*24小时实时在线服务,已在通信运营商核心系统持续稳定运行多年。同时,AntDB在金融、交通、能源、公共服务等多个领域商用落地。 数字化浪潮和信创的趋势下,国产数据库市场迎来了快速发展期…

关于质量标准化的思考和实践

简介:最近部门在推质量标准化,通过质量标准化,推动质量内建,从而提高研发部门的交付质量,作者深度参与其中,并在推进过程中总结了一些经验以及思考,在此通过以下定义、共识、实践三个大方向和大…

看懂这5幅图,研发效能分析和改进就容易了

简介:作为 CTO 或企业管理者,我们如何去了解和衡量研发团队的研发效能呢?作为 PMO 和效能负责人,我们该从哪几个维度来回答关于研发效能的问题呢?如何通过效能数据分析,帮助企业管理者透明化研发效能水平和…

关于挂载存储的这个小细节,值得你关注一下

作者 | 江小南来源 | 江小南和他的小伙伴们引言前两天,公司有个同事跑过来问我一件事:我在制作镜像的时候明明把文件已经放到镜像里面去了,为什么kubernetes部署应用的时候文件没有了?听完这话,我看了看Dockerfile是这…

PolarDB 并行查询的前世今生

简介:本文会深入介绍PolarDB MySQL在并行查询这一企业级查询加速特性上做的技术探索、形态演进和相关组件的实现原理,所涉及功能随PolarDB MySQL 8.0.2版本上线。 作者 | 遥凌 来源 | 阿里技术公众号 本文会深入介绍PolarDB MySQL在并行查询这一企业级查…

上海音乐学院计算机基础,上海音乐学院

2018年(第11届)中国大学生计算机设计大赛计算机音乐创作类决赛于8月26日—30日在浙江音乐学院举行,上海音乐学院音乐工程系大二学生蔡岳均作品《埙钹革》、大四学生赵子仪作品《踏风》(指导老师均为刘灏副教授)在决赛中分别获得计算机音乐创作专业组二、三等奖。中国…

从技术到管理,程序员如何实现螺旋上升?

作者 | 李昊 出品 | 《新程序员》编辑部从开发者到技术管理者应该如何提升能力?在李昊看来,开发和管理之间的“鸿沟”并非很难跨越,他将从“深入理解基层技术管理岗位角色、纠偏对技术管理者的认识误区,以及通过日常执行层真正…

80%的软件环境管理问题,根因都在这里

简介:80%的软件环境管理问题,根因都在这里,云效云原生应用管理平台AppStack正是基于OAM的应用交付平台,企业在云效AppStack,可以通过应用编排、占位符、变量等声明式定义,实现一套编排多环境差异化部署&…

开发之痛:稳定的测试环境,怎么就那么难

简介:开发之痛:稳定的测试环境,怎么就那么难。对于生产环境,准确、稳定最重要,我们推荐以应用为中心的基于OAM和IaC的实践方式;对于测试环境,隔离、低成本和稳定的依赖是最重要的,我…

天腾动力携Motinova 和 Welling E-bike电驱新品亮相EUROBIKE 2022

【德国法兰克福】2022年7月13日,欧洲国际自行车贸易博览会(EUROBIKE 2022)在法兰克福开展迎客。作为欧洲三大自行车展之一,EUROBIKE 2022被誉为行业潮流的风向标,吸引着品牌商、贸易商、采购商以及众多自行车爱好者的目…

阿里云云原生一体化数仓正式发布 助力企业数据驱动业务创新

简介:云原生一体化数仓是集阿里云大数据产品MaxCompute、DataWorks、Hologres三种产品能力于一体的一站式大数据处理平台。核心是3个一体化和全链路数据治理能力,包括离线实时一体、湖仓一体、分析服务一体、全链路数据治理。 2月16日,阿里云…

一文读懂云原生一体化数仓

简介:阿里云云原生一体化数仓产品技术深度解读。 本文大纲 一、云原生一体化数仓的发布背景 1 市场情况 2 挑战和痛点 二、云原生一体化数仓是什么 三、云原生一体化数仓的技术理念 1 离线实时一体 2 湖仓一体 3 分析服务一体 4 全链路数据治理 一…

西安交大计算机考研分数线2020院线,西安交通大学2020考研复试分数线已公布

2020西安交通大学考研复试分数线已公布!点击查看>>34所自划线院校2020考研复试分数线。2020考研国家线已公布,当前2020考研考生需全力准备考研复试/调剂工作>>考研复试学习指南,让你不再盲目备战​西安交通大学公布2020年硕士研究…

Graphcore 联合百度飞桨提交 MLPerf Training 2.0,IPU 性能再下一城

作者 | 宋慧 出品 | CSDN 云计算&AI 科技大本营 为 AI 与机器学习提供更高性能的支持,是芯片厂商的竞争特点。最近,AI 芯片厂商 Graphcore 联合国内知名的深度学习平台百度飞桨,共同提交了 MLCommons 的 AI 基准评测 MLPerf Training 2.…