博文精选 | 减少供应链延迟的影响:利用F5高性能VE系列软件加速业务部署
2022-02-21 10:42:10
F5小安
文章速览:
行业:互联网
关键字: 供应链、负载、F5 VE
摘要: 当前IT世界正面临芯片短缺问题,造成了供应链延迟。但疫情却让我们的业务比以往更加依赖数字化科技。如何确保业务不受供应链延迟的影响?
阅读时长:12 分钟
以下文章来源于F5 Inc !作者:林静 F5架构师
当前IT世界正面临芯片短缺问题,造成了供应链延迟。但疫情却让我们的业务比以往更加依赖数字化科技。如何确保业务不受供应链延迟的影响?答案是立即部署F5软件应用交付控制器(即F5 BIG-IP 软件版本,简称F5 VE)。F5 VE可保证业务持续快速部署,并提与硬件一致的功能。
我们理解用户在使用软件代替硬件的场景下,往往会担心软件的性能是否能够满足高性能场景要求。也会担心大量的软件部署会造成过多商用成品服务器(Commercial Off-The-Shelf ,COTS)CPU的消耗。阅读本文可帮助您打消疑虑,并立即开始行动。
随着基础架构的发展,服务器的CPU正在花费越来越多的时间用于非业务负载,越来越大的网络速率意味着CPU需要花费更多的开销在网络处理方面。全面SSL加密部署需要更多的CPU算力用于加解密。SDN的发展需要CPU处理越来越多的数据封装与解封装。云原生的发展进一步加剧了代理类中间件对CPU的消耗。
网络接口从2010年的1GbE到2012年的10GbE普及,从2016的40GbE到如今的100GbE的广泛应用,数据中心网络流量正在不断增大。分布式和微服务架构在带来了架构弹性的同时,也带来了巨大的东西流量。在云原生场景下,这些流量都需花费大量CPU算力,例如IP tables处理,OVS封装与解封装,TLS加解密,网络规则处理与安全防御等。这都需要更多的CPU资源来处理这些网络数据,需要CPU进行处理的非直接业务类数据正变得越来越多。
有研究显示,在8000个Linux iptables规则下,处理由64B数据包大小组成的40Gbps流量,需要大约480个CPU 核。即便在1500B数据包大小下,也需要21个CPU 核。
在应用场景层面,区块链散列计算、大数据处理、视频转码、低延迟交易、内容感知处理等,也同样加剧了服务器CPU在非业务逻辑层面的算力消耗。
2016年以来,企业开始广泛部署软件化类应用交付产品。软件型应用交付产品切合了企业弹性与灵活部署、降低TCO的诉求。而5G与IoT、视频直播、To C类移动应用的大力发展带来了高密度连接和TLS计算。分布式与云原生技术也让东西向流量路径变的更长,服务与服务之间更加依赖反向代理类软件提供更加可靠和优化的通讯能力,以此提升应用体验。这都要求软件型应用交付产品能够提供更高的性能。众所周知,应用交付类产品能力介于应用负载与网络之间,是典型的CPU密集型处理。因而用户担忧软件应用交付控制消耗更多的CPU资源是完全可以理解的。正因为此,你需要部署能够更加关注CPU资源节省的F5 VE软件产品。
软硬协同,是加速性能处理,节约COTS
CPU资源的解决之道。软硬协同本身并不是新的概念。我们熟悉的专有硬件设备,其本身就是软硬协同的典型代表。例如F5的硬件设备之所以具备如此高的性能,就是F5的软件能够充分利用F5自行设计的专有硬件。F5从早期的3900设备开始便装载了FPGA芯片。实现了类如HSB、DAG等诸多能力设计。在模式上包含了诸如TCP/IP优化、资源隔离、L4加速、CGNAT、DDOS防护、DNS加速、带宽管理、接口虚拟化、高速传输链路训练、DMA等10余种硬件加速场景。在最新的r系列与VELOS硬件中则搭载了更多更强的FPGA芯片来进一步提升硬件加速的能力。在我们的日常生活中,苹果手机、智能汽车等也都是典型的软硬协同代表。小鹏汽车总裁何小鹏曾在小鹏科技日活动上表示,智能汽车厂家之间的实力竞争不是简单的硬件堆叠与软件开发的竞争,而是如何更好的让软件与硬件协同。
使用硬件卸载COTS CPU工作负载,在公有云领域中比较常见。因为在大量依赖算力的公有云提供商中,减少CPU在网络、TLS等层面的开销,意味着可以销售更多的CPU资源给付费用户,实现更大的经济收益。在全栈云,云原生应用开发思想大量践行的今天,企业数据中心也有着同样的诉求。节约CPU资源意味着可以购买更少的服务器,减少电力、制冷能耗,节约宝贵的机房空间。节约CPU意味着CPU资源可以用于更多的业务处理,支撑更多的业务发展,实现更大的投资回报。在全球通用硬件服务器产能同样不足的当下,亦可帮助企业减少硬件采购带来的时间成本。
在边缘计算场景中,CPU资源更为宝贵,利用软硬协同可以获得更高的性价比。也可进一步提升边缘连接处理的稳定性,降低网络延迟。
正如前文所述,应用交付是典型的CPU密集型计算。软件应用交付方面可以借助软件或硬件加速技术实现更高性能,节省更多的CPU资源。一般来说在提高性能、节约CPU方面,我们可以考虑如下技术措施:
01.采用 DPDK
作为加速手段,提高网络处理性能
DPDK技术可以让用户空间程序直接操作网络接口卡的内存空间,极大的减少了数据在用户空间与内核空间的拷贝,提升了数据处理效率。虽然DPDK技术还无法节约更多的CPU,但在提升网络效能上还是具备明显效益。
02.采用eBPF技术
eBPF内核技术可以在网络安全,网络可观测性,提升网络效能等方面提供诸多能力。但eBPF需要较新版本的操作系统内核支持,使用门槛也较高。这会在一定程度上阻碍技术的应用。从CPU节约角度,与DPDK类似。
03.采用支持SR-IOV技术的网卡,实现虚拟化场景下虚机直接使用网卡
通过将PF映射为多个可由虚机直接使用的VF,实现网络性能的提升。节约CPU在虚拟化层面对网络的处理开销。
04.采用智能网卡(SmartNIC)
通过软件对智能网卡的支持,实现更多CPU资源的节约。例如DDOS防御,DNS加速,报文拆解,数据流处理,负载均衡,存储加速,OVS卸载,加解密计算,数据分析,数据去重,监控与可视化,有状态ACL处理等。智能网卡根据其实现技术的不同,一般可以分为基于ASIC的智能网卡,基于FPGA的智能网卡,基于System on Chip(SoC)的智能网卡。SoC网卡一般来说具有容易编程及高度可扩展能力,是一种更具普适意义的数据处理单元(DPU)。
05.采用专用SSL加速卡
借助类如OpenSSL中的ENGINE实现对硬件SSL卡的使用。但这一般来说需要仔细的配置与测试SSL库对硬件的支持。
01
使用SR-IOV与DPDK技术实现非智能网卡下的高性能网络处理。通过与硬件适配的驱动优化,极大的提升了VE的网络处理性能。F5 VE当前支持Intel,Emulex,Broadcom,Mellanox等品牌网卡,或Azure,AWS等云网络适配器。可提供从20G到100G不等的高性能吞吐。
02
借助Intel QuickAssist Technology(QAT卡)实现高性能TLS处理。相比未使用QAT卡,可获得高达5倍的SSL TPS和吞吐处理(基于不同的数据报文大小)。
03
借助SmartNIC上的FPGA,实现在智能网卡层面进行加速的能力场景。在L4流量加速方面,在仅用5%无智能卡时的CPU算力,却实现了相比无智能卡时30%的L4吞吐提升。收益相当可观。同时,为了降低FPGA的使用复杂度以及获得更顺畅的能力迭代,F5提供了可视化的FPGA配置器帮助用户更加容易的实现FPGA能力配置与升级。
以上是针对F5
VE的分享,希望对大家有帮助
声明:本文章版权归原作者及原出处所有 。凡本社区注明“来源:XXX或转自:XXX”的作品均转载自其它媒体,转载目的在于传递分享更多知识,内容为作者个人观点,仅供参考,并不代表本社区赞同其观点和对其真实性负责。本社区转载的文章,我们已经尽可能的对作者和来源进行了注明,若因故疏忽,造成漏注,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本社区拥有对此声明的最终解释权。
发布评论 加入社群
相关文章

回复评论
发布评论