[阿里巴巴集团]一群阿里人如何用 10 年自研洛神云网络平台?技术架构演进全揭秘( 二 )


4)更关键的是 , 传统物理交换机是一个黑盒 , 各个厂商实现各异 , 接口各不一样 , 同时不支持设备内功能定制开发 , 让设备的运维成为一个难题 。
[阿里巴巴集团]一群阿里人如何用 10 年自研洛神云网络平台?技术架构演进全揭秘
本文插图

图 3 传统网络设备应对云计算的约束
所以阿里云网络选择了一条自研的路 , 使用三大技术满足云计算的需求:
1)虚拟化网络;
2)SDN 技术 , 软件来定义网络;
3)整个技术栈自研 。
阿里云网络洛神平台就此诞生 。
[阿里巴巴集团]一群阿里人如何用 10 年自研洛神云网络平台?技术架构演进全揭秘
本文插图

图 4 洛神网络 10 年演进
洛神云网络平台随着阿里云飞天系统一起 , 已经经历了 10 年演进 , 分为两个阶段 , 洛神 1.0 时代 , 主要定位为支撑超大规模和多租户的网络 。
随着阿里云的业务快速发展 , 尤其近几年规模增长特别快 , 2018 年开始推出洛神 2.0 , 洛神 2.0 的特点主要在高性能、弹性开放能力 。
现在阿里云上运行着很多超级规模的用户 , 比如阿里巴巴集团的淘宝业务 , 这些超大规模用户对网络的性能提出了很高的要求 , 特别是在例如双 11 这种大型活动期间 , 网络流量的峰值是十分巨大的 , 这对网络的性能提出了非常高的要求 。
同时阿里云提供了丰富的基础 IaaS、 PaaS 产品与服务 , 第三方的生态伙伴可以在阿里云上提供众多的 SaaS 服务 , 包括网络类的 SaaS 服务 , 例如网络管理类、网络数据分析类、网络日志管理类、网络转发类的软件 。 这些软件在阿里云上很好的运行 , 需要网络提供弹性 , 开放的能力 , 就是洛神 2.0 的定位 。
[阿里巴巴集团]一群阿里人如何用 10 年自研洛神云网络平台?技术架构演进全揭秘
本文插图

飞天洛神 1.0:超大规模、多租户网络
洛神 1.0 平台由很多网络组件组成 , 架构上主要分成两类:AVS(Apsara vSwitch)和各种网关网元 。 AVS 是部署在每个物理服务器上的软件网元 。 最早基于 XEN 的 Kernel 架构实现 , 转发性能不高 , 单机只有 15 万 PPS 。 随后演进到了 KVM 的架构 , 在这个架构下 , vSwitch 还是在 Kernel 的 , 但已能提供单机 120 万 PPS 性能 。 然后在 Intel 推出 DPDK 版本后 , AVS 进行了架构升级 , 使用用户态 DPDK , 转发性能提升至 600 万 PPS 。
AVS 的演进 , 是为了追求网络性能大幅提升的过程 , 是阿里云网络持续迭代和改造网络软件架构的原动力 。
关于业务网关 , 最早也是基于 Kernel 网络协议开发 。 例如 Load Balance 设备 , 第一代也是基于 Kernel 开发 , 当时整台物理机性能大约只有 300 万 PPS 。 为了追求更高的性能 , 这些网元基于 DPDK 进行了重新构建 , 既包括公网网关、私网网关 , 还有 SLB、NAT 网关、VPN 网关等等 , 转发性能提升了 20 倍 。
洛神 1.0 , 基于 DPDK 的 AVS 和各种网关 , 最终搭建出一张支持超大规模租户、超大规模虚拟机的网络 。
[阿里巴巴集团]一群阿里人如何用 10 年自研洛神云网络平台?技术架构演进全揭秘
本文插图

图 5 洛神 1.0 支持超大规模租户网络
如图所示 , 在这张超大规模的租户网络里面 , 我们达到的核心能力包含:
1)多租户隔离 , 每个区域可以支持百万规模的 VPC 。 如果说一个租户对应一个 VPC , 一个区域就可以支持百万规模的租户;
2)单个 VPC 支持超大规模虚拟实例 , 目前有一些超大规模的 VPC 中实际部署并运行了超过 30 万的 ECS , 也就意味着此租户的这张网络里面有 30 万个以上的 IP ,ECS 之间的通讯 , 包括东西和南北向的流量 , 都能很好的在虚拟网络里面运行 。


推荐阅读