您当前的位置: 首页 >  网络

凌云时刻

暂无认证

  • 0浏览

    0关注

    1437博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

揭秘云网络大会“网红”:阿里云自研高性能网关XGW

凌云时刻 发布时间:2020-12-23 10:00:00 ,浏览量:0

 

凌云时刻 · 极鲜速递

导读:近日,首届中国云网络峰会顺利举行。会上,阿里云带来了自研的软硬件一体化设备——洛神高性能网关 XGW,一亮相就成为了备受关注的焦点。

来源|洛神云网络技术

前言

2020 年 12 月 19 日,在首届中国云网络峰会上,阿里云展台人头攒动,里三层外三层,是什么激发了这么多人的兴趣?

“火爆”的阿里云网络展台

原来是阿里云带来了自研的软硬件一体化设备——洛神高性能网关 XGW,一亮相就成为了最受关注的焦点,是整个大会当之无愧的“网红”。接下来,带大家认识下阿里云自研的高性能网关 XGW。

为什么采用软硬件一体化架构?

随着企业上云越来越广泛,网络带宽进一步增长,初期采用物理服务器和 DPDK 构建的方式无以为继,一方面服务器的摩尔定律已经失效,需要更多服务器来满足不断增加的流量诉求,另一个方面,服务器的大量增加对安装部署/交付运维/成本/功耗等也带来了不利影响,而采用可编程硬件芯片可有效面对不断增加的流量诉求,从单台服务器 160G 到当前可编程单芯片 3.2T/6.4T,下一代 12.8T,转发能力提升数十倍,转发时延更低,整体 Capex 和 Opex 大幅降低。因此,硬件化是必然选择。

软硬件一体化网关 XGW 应用场景

XGW 是洛神云网络平台的硬件转发层核心,提供了高性能的网络转发能力。

XGW 负责公网,专线和跨 Region 流量的汇聚和分发,如下图所示:

典型场景如下:

1. 用户经 Internet(公网)访问阿里云,使用的典型产品有 EIP 和共享带宽

2. 用户 IDC 访问阿里云,使用的典型产品有高速通道(专线)

3. 云上跨地域通信,如北京地域 ECS 访问深圳地域 ECS,使用的典型产品有 CEN

采用软硬件一体化 XGW 后可以满足用户在上述场景的大带宽和高质量需求。

  • 大带宽:比如天猫双 11 或某大客户数 10Tbps 专线上云流量。

  • 大单流:比如 IoT 场景的 GRE tunnel,单流数数十 Gbps。

  • 稳定性:没有软转发的 CPU 打满隐患。

  • 低延时/低抖动:硬件网关的管道足够粗,客户上云丝般柔滑,没有卡顿,就像高速公路的车道足够多,车辆行驶一路通畅,没有排队/没有阻塞。

应用案例

 客户信息

全球知名的互联网科技企业,旗下有多个知名应用,包括视频,资讯,教育等等。

 业务诉求

客户采用混合云架构,带宽规模达到双向 51.2Tbps,IDC 机房和云上网络全栈支持 IPv6。

 业务痛点

超大规模,IPv4 地址资源枯竭,需要全栈切换到 IPv6

 解决方案

阿里云通过 XGW 软硬件一体化网关,提供超大带宽,以及混合云全栈 IPv6 支持

 方案价值

1. 超大带宽支持,单机 3.2Tbps,可水平扩展 

2. 全栈 IPv6,无缝连接云上 IPv6 和线下 IPv6 网络

软硬件一体化网关 XGW 技术实践

XGW 乍一看像一台 2U 的服务器,主要部件有负责大流量转发的 P4 可编程交换芯片,负责大表项转发的自研网卡芯片,负责业务编排和智能调度的 CPU 模块。

 芯片选择

选择了可编程交换芯片的道路,首先面临的问题是芯片选择阿里云有几个选择,第一个用传统的 ASIC 卡,因为传统的网络设备交换机里的 ASIC 已经非常成熟。第二个是 P4 可编程 ASIC 芯片——一个可编程能力越来越强的芯片。另外一个 FPGA,传统意义上,它也算是硬件芯片。

最终阿里云选择了 P4 可编程 ASIC 芯片,原因是业务有快速迭代的诉求,然而传统 ASIC 芯片的功能已经固化,没有办法完美匹配的诉求,同时,很多的转发行为是一个定制化的,传统的 ASIC 芯片无法支持,因此,需要一个灵活的、可编程的硬件芯片。

在可编程硬件芯片上面,传统的 FPGA 虽然非常灵活,但它的功耗和成本比较高,在相同转发能力的情况下,它比 p4 可编程的 ASIC 芯片在功耗和成本上高出了许多,所以阿里云最终选择了 p4 可编程的 ASIC 芯片。

 芯片表项的优化

可编程芯片也带来了挑战,在于芯片表项的限制。因为硬件芯片的表项是有限的,要考虑到芯片的面积、功耗、成本。原来的软转发的表项是存在内存里的,基本上可以达到海量规模。所以应用芯片作为转发网元最大的挑战是表项的规模。对此,阿里云也进行了大量的优化。

首先阿里云充分挖掘了芯片的能力。在转发芯片包含多个 pipeline,通过多个 pipeline 去共同达成高速的转发性能。最简单的编程方式就是每一个 pipeline 里都下发相同的表项,所有的处理逻辑是全部对称的,整个的转发模型非常简单。但是这种方式也有相应的代价,每一个 pipeline 里保存的相同表项,就是整个芯片对外的能力。

考虑到芯片的转发模型的特点,阿里云采用了非对称的转发方式,处理逻辑分布在不同的 pipeline 里,通过不同的 pipeline 的表项相互叠加,来提升转发表项的能力。

其次,阿里云对整个软件的表项格式也进行了优化。在软转发的转化模型里,为了清晰简单,很多的表都是独立的,比如简单的产品可能使用了多张表,每张表有不同的属性,但多张表用硬件实现时占的表项空间就相对较大。所考虑进行合表,这样可以有效提高整个芯片表项的利用率。

 

 实现网络 QoS

利用可编程芯片数据平面,实现网络 QoS 的能力。大规模租户的应用较复杂,部门较多,不同应用的优先级不一样,对于带宽的要求也不一样,如果每个应用都按照它最大带宽来购买,成本会非常高。所以,许多超大规模客户希望购买一定带宽,然后在发生堵塞的时候先丢弃优先级低的报文,保证高优先级的报文通过。通过可编程数据平面可以实现了这样的 QoS 的功能。 

综合来看,通过数据平面的可编程能力,和软硬一体化的架构,洛神平台数据平面提供了超高的转发性能,大大提升了芯片的表项规模,并且硬件芯片在云计算网络里已经规模化应用。

软硬件一体化未来优化

云网络未来将从以下几个方面进行优化。

第一,异构芯片。当前阿里云使用的 Barefoot P4 可编程芯片,未来阿里云可能会使用多厂商的异构芯片,比如阿里自研芯片、Broadcom 芯片等。通过芯片适配层,可以有效的屏蔽芯片的差异,做到快速上线。

第二,网络安全。随着大量不同行业的租户上云,对网络加密安全有了更高的要求。通过可编程的数据平面提供加密的功能,来支撑不同的客户的诉求。

第三,网络可视化。网络往往是一个黑盒,未来通过可编程的数据面,可以将网络里面转发的信息携带到网络的处理系统里,实现网络可视化,帮助网络更有效的支撑业务系统,同时增强网络的运维能力。

END

往期精彩文章回顾

Serverless 架构升级,这样做代码零改动

面向生态合作伙伴的实践分享回顾

今天,一起吐槽容器镜像中那些让人一言难尽的事情

云原生网络性能优化:service mesh 篇

我在阿里巴巴做 Serverless 云研发平台

Code Review 效率低?来试试智能语法服务

7 年零故障支撑双 11,消息中间件 RocketMQ 如何做到?

5分钟完成业务实时监控系统搭建,是一种什么样的体验?

企业 IT 治理沙龙·北京站:业务优先?治理优先?

轻松玩转全链路监控

长按扫描二维码关注凌云时刻

每日收获前沿技术与科技洞见

关注
打赏
1663816507
查看更多评论
立即登录/注册

微信扫码登录

0.0437s