云数据中心网络虚拟化——大二层技术巡礼之NVo3技术DC间隧道

NVo3体系框架只是要求隧道构建在IP网络上,并没有要求一定是要端到端的,因此DC间跨越Internet进行互联的一些技术也属于NVo3框架中。这类技术往往部署在汇聚层设备上,隧道起于DC边缘,终止于DC边缘。

其实DC间互联就是典型的VPN业务,早期的DC间互联就是通过传统的二层VPN来实现的,但是在向云数据中心演化中,这类技术表现出了如下的缺陷:

  • 由于传统的二层VPN依赖于数据泛洪以确定MAC地址的可达性,“大二层”中庞大的虚拟机规模导致了大量泛洪包被发到Internet上。
  • STP和HSRP需要跨DC收敛,常常会导致出向路由次优。
  • 传统的二层VPN一般为有连接的pseudo-wires隧道,开销较大,维护复杂且可扩展性差。
  • 对多宿主的场景不提供支持,或者不支持PE双活与负载均衡。

因此,很有必要重新设计DC间互联的VPN技术,以满足大二层和两地三中心的组网需求,一般称之为DCI(Datacenter Interconnect)。目前DCI技术主要有Cisco OTV,Huawei EVN,H3C EVI。

1)Cisco OTV

OTV(Overlay Transport Virtualization)是Cisco提出的DCI技术,在Nexux 7000提供了支持。OTV通过为传统的二层VPN增加控制平面来进行MAC地址学习和ARP代理,避免了不必要的跨Internet泛洪;通过在DC间隔离STP BDPU和HSRP Hello,实现了出向路由最优;通过动态封装建立无连接、无状态的隧道增强了可扩展性;自动完成对多宿主的探测,支持基于VLAN的负载分担和基于vPC的双活机制。

OTV数据平面的封装格式如上图所示,外层IP头后面跟着8字节的OTV Shim头,原始以太网帧中的VLAN header也被移到了Shim头中作为租户二层网络的标识。Shim头具体的格式就不太清楚了,毕竟OTV是Cisco的私有实现。控制平面通过IGMP加入OTV组播组,在ED(OTV Edge Device)间建立邻居,使用IS-IS在邻居间学习(VLAN,MAC,Remote IP)的转发信息。考虑到Internet对IP组播的限制,OTV支持头端复制的伪广播机制模拟邻居间的3层组播,这种情况下就只能手配邻居了。一个OTV网络中典型的单播通信流程如下所示,假设OTV邻居已经建立:

VM 1发送ARP请求到ED 1上;ED 1学习MAC 1的本地连接端口,然后封装OTV Shim头通过data组播组发送到ED 2。同时,ED 1通过control组播组传输IS-IS LSP,告知ED 2 VM 1的位置信息;ED 2收到IS-IS更新,得知VM 1连接在ED 1上;ED 2收到data组播组的ARP请求后解封装,本地泛洪到VM 2;VM 2单播ARP回复到ED 2;ED 2学习MAC 2的本地连接端口,然后封装OTV Shim头封装好ED 1的IP地址单播给ED 1。同时,ED 2通过control组播组传输IS-IS LSP,告知ED 1 VM 2的位置信息;ED 1收到IS-IS更新,得知VM 2连接在ED 2上;ED 1收到携带ARP回复的单播后,解封装转发给VM 1。

上述过程中ED一旦学习到IS-IS LSP的触发就会在control组播组中告诉邻居相应的信息,因此在VM跨数据中心迁移场景下,ED间能迅速得知VM的新位置,大大缩短了收敛的时间。除了上述优势外,OTV还具备以下特性:

  • STP隔离。OTV将STP BPDU在ED上进行阻塞,避免了跨站点STP计算。由于站点间通过控制平面进行MAC学习,因此DC间不会出现环路,因此只要在每个DC站点内部运行生成树协议保证DC内无环就可以了。这种做法极大地提高了二层的收敛速度和可扩展性。
  • 未知单播隔离。OTV禁止未知单播的跨站点广播,认为IS-IS能够学习到所有合法MAC地址的信息。针对静默主机,可以手工配置静态MAC地址对应远端OTV接口的表项。
  • ARP代理。对远端站点返回的ARP 回复进行监听,当再收到本地查询同样目的IP的ARP请求时直接代理回复,减少跨站点的泛洪。
  • 出向/入向路径优化。OTV在ED上阻塞HSRP Hello,避免站点A中的主机到站点B中网关进行路由所引发的次优路径问题;OTV设备支持健康路由注入和LISP,以实现入向路径最优。
  • 多宿、负载分担和双活机制。ED设备间自动选举AED(Authority Edge Device)作为主设备转发流量,其他ED作为备份。ED间也可以基于VLAN进行AED选举,实现负载均衡。ED间还支持vPC跨设备链路聚合,以实现ED的双活。

OTV是项非常不错的技术,而且它的自动化封装非常好,一般情况下4条命令就足以实现DCI,Cisco在数通领域的深厚功力可窥一二。如果说OTV有什么限制的话,一是ED邻居数量比较有限,目前看到的资料表明它最多支持8个站点的互联。另外,OTV不支持网关一体化,需要配合VDC技术做本地的业务整合。

这两年华为和华三也都跟进了DCI技术,华为的叫做EVN,华三的叫做EVI。

2)Huawei EVN

EVN(Ethernet Virtual Network)是华为参照EVPN(Ethernet VPN,RFC 7209)提出的DCI技术。其转发原理与OTV完全相同,只不过其控制平面从IS-IS换做了EVPN-BGP,数据平面仿照VxLAN换成了MACinUDP的封装。一些DCI的特性,比如STP/VRRP抑制,ARP代理,未知单播隔离等等都是效仿的OTV。

由于EVPN主要对多宿主部署做了详细的描述,因此相比于OTV,EVN主要加强了PE双活机制和MP2MP(Multipath to Multipath)机制。它细化了负载分担的策略粒度,支持PE多虚一的GEO Cluster模式,还支持基于UDP源端口的ECMP。另外,EVN支持的站点数量比OTV多,好像号称是可以达到64个(如有知情人士,烦请向作者确认),EVN支持网关一体化。由于EVN使用了BGP,而且自动化封装的不是很好,因此EVN在配置上要比OTV麻烦很多。

3)H3C EVI

EVI(Ethernet Virtualization Interconnect)是华三的DCI技术,其实也难为这帮子厂家了,起名字真是够费劲的。EVI的控制平面使用ENDP(EVI Neighbor Discovery Protocol)建立邻居,使用IS-IS进行地址学习,数据平面用了GRE的封装,如下图所示。

EVI实现的特性主要包括ARP代理、未知流量抑制。好像没有对STP/VRRP这些的优化机制,多宿PE的负载均衡策略也只能通过VLAN来做。目前了解到EVI有一个特性是它会在邻居间选举出一个DIS做控制信息的分发,类似于OSPF中的DR的角色,此外EVI还支持IS-IS虚拟系统来扩展LSP的分片数量,以增加系统所能发布的MAC地址数量。

老规矩,技术都讲完了,列表对比一下。这三种都是私有技术,以下都是从网上能够搜集的资料中整理的,一些内容也不一定准确。

从技术上来讲,DCI技术也可以用作端到端隧道,DCI的控制平面就相当于NVA的角色。不过,这种做法的显著缺陷在于,目前DCI技术只支持VLAN作为租户标识,这意味着租户数量最多为4k,与VxLAN这种端到端的隧道动辄支持个16million租户相比,不禁相形见绌。EVN在PE上用了VxLAN的封装,也可以提供16million的租户,华为自己也宣称EVN可以用于端到端虚拟化,不过想一想要在数据中心这些交换机上配BGP,好像应该是不太现实的。而且要是用于端到端,DCI技术里的一些per DC特性也就没有了用武之地,

原文发布于微信公众号 - SDNLAB(SDNLAB)

原文发表时间:2016-02-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏鹅厂网事

可视化网络路径探测HashTrace

引子 长期以来,探究网络质量和探索网络路径是广大网络工作者监控网络的必备工作,ping用于探究网络质量和traceroute用于探索路径。对于探测结果似...

5928
来自专栏张善友的专栏

CAP理论十二年回顾:"规则"变了

CAP理论断言任何基于网络的数据共享系统,最多只能满足数据一致性、可用性、分区容忍性三要素中的两个要素。但是通过显式处理分区情形,系统设计师可以做到优化数据一致...

2929
来自专栏SDNLAB

DCFabric:面向云计算数据中心的开源SDN控制器

1、DCFabric:面向云计算数据中心的开源SDN控制器 ODL和ONOS等虽然在拓扑性能和应用开发便利度上有了很大进步,但是它们的灵活性、工作速度和效率仍有...

4355
来自专栏智能大石头

借助Redis做秒杀和限流的思考

最近群里聊起秒杀和限流,我自己没有做过类似应用,但是工作中遇到过更大的数据和并发。 于是提出了一个简单的模型: var count = rds.inc(key)...

1.2K4
来自专栏ATYUN订阅号

【学术】厉害了我的哥,国外技术大咖仿造了谷歌的Arts &Culture,找到古代的“你”

当我激动的室友第一次向我展示肖像搜索功能时,我对结果感到很惊讶(也觉得有点受侮辱)。对于那些不熟悉它的人来说,谷歌Arts & Culture的这一功能让你可以...

3504
来自专栏HBStream流媒体与音视频技术

设计并实现同时支持多种视频格式的流媒体点播系统

3435
来自专栏机器人网

伺服控制智能助力机械手系统功能分析

随着现代化工业生产的不断发展,工业机器人得到广泛应用,但受成本和功能限制还不能独立完成所有的物料搬运工作,大量的物料搬运工作仍需要人来完成。如何降低工人的劳动强...

2906
来自专栏phodal

打造基于GitHub的O2O应用:超炫的地图交互

先上Demo啦~~~~~ ? 或许你已经使用过了相应多的省市区与地图联动,但是这些联动往往是单向的、不可逆。并且这些数据往往都是在线使用的,不能离线使用。下图是...

2496
来自专栏Crossin的编程教室

【Pygame 第7课】 多变的宿敌

在游戏中,一般都有个宿敌什么的。在我们这个打飞机小游戏中,宿敌就是不断从天而降的敌机。它与本机、子弹构成了这个游戏的三个要素: 本机会发射子弹,子弹向上运动 ...

2739
来自专栏机器人网

伺服控制智能助力机械手系统特点和功能分析

随着现代化工业生产的不断发展,工业机器人得到广泛应用,但受成本和功能限制还不能独立完成所有的物料搬运工作,大量的物料搬运工作仍需要人来完成。如何降低工人的劳动强...

3456

扫码关注云+社区

领取腾讯云代金券