技术干货丨云企业网CEN2.技术揭秘

简介:随着企业数字化转型的加速,越来越多的企业选择了将业务部署在云上,这其中有超过20%的企业有全球组网的需求,这就使得云上网络的规模越来越大,复杂度也越来越高,为了应对这些变化,阿里云推出了升级版的云企业网产品,为给客户提供更加智能,更具弹性也更加灵活的全球化云网络体验。
01、云企业网CEN2.0产品功能

CEN 是主打企业私有专用网络组网型产品。它提供的是基于意图的全球云网络,实现全球多个地域比如北京和杭州之间、数据中心之间的互联,同时能够打通云上的各种服务,比如 OSS、 RDS 等。提供丰富多样的私网连接,是 CEN 提供的基础能力。

相对于 CEN 1.0,2.0 版本在丰富连接能力上做了持续拓展,支持了 VPC 加载多 CEN ,同时即将推出云上和跨域的组播,支持就近转发等能力;在规模上, CEN 2.0 支持超大规模的组网能力,单地域最大支持 1000 个 VPC Attachment ,全球最大支持 5000 条路由的大规模组网,比原先的组网规模扩大了 100 倍。

为了更方便、更快捷的管理网络,我们提供了动态路由传播,简化网络运维,同时也提供路由汇聚、静态路由等来缩减路由规模,对用户的网络提供灵活的工具进行精细化管理。基于多路由表加转发关联的能力,提供 ServiceChain 能力,能够更好的将防火墙等安全业务集成到用户的私网中,提高网络的全球性。此外还有 flowlog、 流量标记、分账等能力,提高网络的可管理水平。

02、CEN2.0背后的技术架构

上图展示了 CEN2.0 背后的技术架构。CEN2.0 是基于阿里云网络的洛神技术底座的具体业务。

最底层是数据中心网络、广域网络、公网、专线等基础物理资源,左边是业务平面。

第二层是软硬一体化的架构,比如服务器、MOC、 FPGA、 可编程交换芯片等,此层提供了高性能网络转发的网关和虚拟机资源等,负责计算虚拟化和网络虚拟化。

第三层是弹性开放的虚拟化网元平台,代号为 CyberStar,它为业务提供了运行环境,以及容灾切换、弹性调度等能力。

最上层是各种各样的网元,在此层面网元可以专注地实现自己的业务逻辑,无须过多关注底层细节。除了 TR 之外,上面还存在很多其他丰富多样的网元,比如NAT网关、ALB等。

右侧是控制平面,首先是 CEN SDN 控制平面,它是 CEN 2.0 网络意图的大脑。最初的CEN 就坚持使用全 SDN 的思想来构造 CEN 的大脑,提供许多灵活的特性。网络大数据智能分析平台“齐天”,负责分析网络并提供网络运行的状态度量和洞察能力。

03、CEN2.0的智能控制器

CEN SDN 控制器是大脑,它能够将用户意图和配置翻译为资源和连通性的配置,提供私网连接的能力。同时它还能接受各种事件,产生各种调度,优化底层的服务质量。它具有以下三个显著优点:

第一,CEN 的控制器坚持使用 SDN 的理念和方法自研,将所有路由都通过 RPC 的方法接入到控制器中,包括 VPC 、专线、VPN 、CCN 等,而不是反过来的将路由注入到传统的路由协议栈里来实现。

此方法拥有很强的能力以及很大的自由性和灵活性。既可以给用户更灵活的控制能力,比如提供routemap的能力,让用户编辑和修改路由,匹配路由的属性,实现各种路由的控制,同时又能更好地与云产品结合,提供更好的用户体验,比如可以跟 SLB、DTS 等服务进行很好的集成。

第二,控制器实现了智能感知的能力,它会关注业务的位置和业务的需求,在智能和业务之间 match ,提供就近转发、智能服务、质量保证等服务,也提供了容灾收敛、弹性扩缩容等能力。

第三,为了提供超多平面、超大规模的网络, CEN 的控制器采用内存计算的方法。之前版本的控制器之间有很多中间状态需要持久化,导致很大的 IO 开销。而在 CEN 2.0 中,控制器看到的数据被分为两种,一种是拓扑数据,另外一种是状态数据。拓扑数据相对比较静态、比较少,而状态数据是实时变化的,量也很大。

CEN2.0 版本的控制器将大部分状态数据放到内存中,使用多级存储和分布式同步的方法,既保证了可靠又提供了效率。因此相对于之前的版本性能有了很好的提升。

04、CEN2.0的转发网元

CEN 2.0 的转发网元,从用户视角看到的是 TR(Transit Router) 网元,它运行在 cyberstar 平台上。Cyberstar 是洛神 3.0 中研发的NFV平台,它会按需孵化 ECS 集群来运行业务。

最下面是用户跑业务的 VPC ,每个 VPC 里使用 ENI-bonding 技术,将流量引到运行 TR 的 ECS 集群上。使用 ENI-bonding 使得 TR 与用户的连接(即VPC Attachment)具有云原生的特性,保留了 VPC 和 ENI 的特性,比如它能够结合直网路由 2.0 做 segmentation 或 ServiceChain 的能力。

往上是 ECS 资源池。从图上可以看到,每一个 ENI-bonding 都插入到多个 ECS 中,每个VPC的流量会引入到多台 ECS 上去处理,使得处理能力能够水平扩展。如果用户的流量有突发,即可弹性扩容 ECS,可以根据实际业务的需求按需使用 ECS。

而不同的可用区之间亦是接入到不同的集群,流量可以先引到本可用区的 ECS 集群上处理。这样操作,一是可以做本地化优先处理,时延更短,二是可以进行可用区之间的容灾隔离,同时还可以达到多可用区之间的水平扩展能力。

当 ECS 集群发生故障时,有几种机制可以用于处理容灾。一种是通过ENI-bonding 的弹性机制进行自动容灾隔离。当集群中少量 ECS 故障时,可以先隔离有问题的机器尽快创建新的机器,弹性加入集群中以提供与原先一致的服务质量;当集群有大量 ECS 故障时,依靠单集群的容灾已经很难恢复。此时可以将 Attachment 流量都切到用户选择的其他可用区内,尽量保证用户业务不受影响。

因此,尽管在新版本中允许租户在在创建 VPC Attachment 时只选用一个可用区,但我们依然推荐用户选择多个可用区以进行容灾保护。

其他容灾机制比如沙箱遇到突发流量影响到其他用户时,可以将用户的业务直接迁移到沙箱集群上以消除对其他用户的影响。

05、CEN2.0的云原生连接

VPC Attachment 使用云原生的连接来引流的技术是 ENI-bonding。在没有此项技术以前,使用普通的 ENI 技术存下以下缺陷:

首先,没有水平拓展能力的提示,没有容灾能力或容灾能力很慢。

其次,由于底层设备虚拟化的能力,单个 ECS 能够创建 ENI 的数量很小,一般只有 16 到 32 个。

另外,OS 在处理设备增加的时,并不会将其当成 Time-Critical 的任务来处理,因此增加、删除 ENI 设备需要很多步骤,比如需要经过 PCI 总线的定时扫描、操作系统响应,根据设备的 ID 识别设备类型,查询并响应加载相应的驱动程序,初始化设备分配内存等一系列处理后,才能交付给网元的业务处理,通常需要花费分钟级别的时间,而这样的速度无法满足NFV网元快速弹性缩容的需求。

Cyberstar 平台底层依赖于自研的 ENI-bonding 技术解决前文提到这些问题。它能够将 ENI 同时插到多台 ECS 上,在 ECS 中以子接口的形式加入到单个虚拟网卡中,能够很好地解决前面提到的几个问题。它是一个高密度的解决方案,能够将单台 ECS 支持的 ENI 数量提高到千级别, 响应速度可以达到秒级甚至亚秒级。出现故障时,它能够进行实时健康检查,在转换面进行实时收敛,不管是在集群内还是集群间都能实现秒级的切换。同时它还支持Shuffle sharding,可以大幅降低故障的半径。

在传统的网络中,有很多流量编排的解决方案,为了部署防火墙、广域网加速等网络服务, 网络工程师可以通过路由、策略路由、MAC或ARP代理等多种方式,将这些依赖或边缘的服务放到网络中,一般是在边缘的出口集中部署和管理这些服务。

在云网络中,由于流量受 SDN 控制,不像传统网络有那么多种解决方案。过去在云上部署这些服务比较困难,没有特别好的引流手段,而且这些手段对于原来的组网方法要么不兼容,要么需要侵入到组网中甚至破坏原来的组网设计。

06、CEN2.0 Service Chain

上图展示了用户业务部署的场景。用户的组网可以分为几个部分:

第一部分是互联网接入,在此放置公网暴露的服务,比如 NAT、SLB、EIP等。如上图里面画了两个 AZ,表示能够提供多 AZ 的容灾能力,表示能够提供多 AZ的容灾能力。右下角是云上部署的应用,客户可以按照不同的应用或者组织维度划分不同的 VPC ,然后将它的应用部署在其中。左下角是接口区,可以用 VPN 网关、专线、SAG等产品接入到云上。所有互访流量都需要经过一些安全防护以获得安全服务,里面既包含了私网之间的东西向流量,也包含了从私网到公网的南北向流量。

在 CEN 2.0 产品中,通过 CEN TR 的多路由表和关联转发,再搭配 VPC 的子网路由,即可在 CEN 2.0 的组网上很好地提供流量编排的能力,把想要的网络服务都放到网络中。

上图中最核心的就是 TR 的两张路由表,一张是绿色的名为“可信路由表”,通过它可以将流量引到各个业务中;另外一张叫“不可信度表”,所有业务流量之间的转化都会首先关联到不可信路由表,将流量转发到防火墙上,经过流防火墙清洗的干净流量会再次注入到 TR ,然后转到各个业务网元中去。

我们的方案是一个开放的方案,可以支持三方的网元并开放给各位厂商使用,支持透明或代理模式。在国内产品中,我们是首个提供此类解决方案的云厂商。

07、总结和展望

CEN 2.0 是长在洛神 3.0 技术架构上的产品。未来,我们仍然会秉承洛神3.0 内核的理念,支撑洛神 3.0 产品自身的发展。

洛神3.0是一个智能的网络,我们将持续打造智能网络,为大规模、高性能、复杂的网络提供智能的管理、分析和决策,助力业务成长;它也是一个面向应用和生态的网络,我们将持续使用云原生的技术思考并完善产品,为云化时代的组织和业务提供最佳的网络和应用互联架构;最后,它还是云边一体、万物互联的网络,我们将持续发展全球一张网,延伸网络边界。

作者介绍

作者:温曙光

阿里云智能云网络产品线高级技术专家,现在负责云企业网转发路由器产品的设计和开发,长期从事虚拟网络/软件定义网络/高性能网络等相关工作,对操作系统、分布式系统、云时代的应用有广泛的兴趣和研究。

原文链接

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

posted @ 2022-05-19 16:41  阿里云云栖号  阅读(362)  评论(0编辑  收藏  举报