在数据中心和云计算的网络方案和技术讨论中大二层已经成为热点话题涌现了各种软件和硬件技术、直接和间接手段等目的都是为了解决“L2 over XX”的问题。那么为什么有这么多大二层技术在数据中心方案规划和设计中该如何选择本文进行一个总体的剖析并在后续的文章中就主要技术与应用进行详细的分析和介绍。


一、为什么需要大二层

1. 虚拟化对数据中心提出的挑战

   传统的三层数据中心架构结构的设计是为了应付服务客户端-服务器应用程序的纵贯式大流量同时使网络管理员能够对流量流进行管理。工程师在这些架构中采用生成树协议(STP)来优化客户端到服务器的路径和支持连接冗余。

虚拟化从根本上改变了数据中心网络架构的需求。最重要的一点就是虚拟化引入了虚拟机动态迁移技术。从而要求网络支持大范围的二层域。从根本上改变了传统三层网络统治数据中心网络的局面。

2. 虚拟机迁移与数据中心二层网络的变化

   在传统的数据中心服务器区网络设计中通常将二层网络的范围限制在网络接入层以下避免出现大范围的二层广播域。

   如图1所示由于传统的数据中心服务器利用率太低平均只有10%15%浪费了大量的电力能源和机房资源。虚拟化技术能够有效地提高服务器的利用率降低能源消耗降低客户的运维成本所以虚拟化技术得到了极大的发展。但是虚拟化给数据中心带来的不仅是服务器利用率的提高还有网络架构的变化。具体的来说虚拟化技术的一项伴生技术虚拟机动态迁移如VMwareVMotion在数据中心得到了广泛的应用。简单来说虚拟机迁移技术可以使数据中心的计算资源得到灵活的调配进一步提高虚拟机资源的利用率。但是虚拟机迁移要求虚拟机迁移前后的IPMAC地址不变这就需要虚拟机迁移前后的网络处于同一个二层域内部。由于客户要求虚拟机迁移的范围越来越大甚至是跨越不同地域、不同机房之间的迁移所以使得数据中心二层网络的范围越来越大甚至出现了专业的大二层网络这一新领域专题。

   剖析大二层_大二层

1 数据中心虚拟化与大范围二层网络

3. 传统网络的二层为什么大不起来

   在数据中心网络中区域对应VLAN的划分。相同VLAN内的终端属于同一广播域具有一致的VLAN-ID二层连通不同VLAN内的终端需要通过网关互相访问二层隔离三层连通。传统的数据中心设计区域和VLAN的划分粒度是比较细的这主要取决于需求网络规模

传统的数据中心主要是依据功能进行区域划分例如WEBAPPDB办公区、业务区、内联区、外联区等等。不同区域之间通过网关和安全设备互访保证不同区域的可靠性、安全性。同时不同区域由于具有不同的功能因此需要相互访问数据时只要终端之间能够通信即可并不一定要求通信双方处于同一VLAN或二层网络。

   传统的数据中心网络技术 STP是二层网络中非常重要的一种协议。用户构建网络时为了保证可靠性通常会采用冗余设备和冗余链路这样就不可避免的形成环路。而二层网络处于同一个广播域下广播报文在环路中会反复持续传送形成广播风暴瞬间即可导致端口阻塞和设备瘫痪。因此为了防止广播风暴就必须防止形成环路。这样既要防止形成环路又要保证可靠性就只能将冗余设备和冗余链路变成备份设备和备份链路。即冗余的设备端口和链路在正常情况下被阻塞掉不参与数据报文的转发。只有当前转发的设备、端口、链路出现故障导致网络不通的时候冗余的设备端口和链路才会被打开使得网络能够恢复正常。实现这些自动控制功能的就是STPSpanning TreeProtocol生成树协议。

由于STP的收敛性能等原因一般情况下STP的网络规模不会超过100台交换机。同时由于STP需要阻塞掉冗余设备和链路也降低了网络资源的带宽利用率。因此在实际网络规划时从转发性能、利用率、可靠性等方面考虑会尽可能控制STP网络范围。

4. 大二层也是为了流通的要求

   随着数据大集中的发展和虚拟化技术的应用数据中心的规模与日俱增不仅对二层网络的区域范围要求也越来越大在需求和管理水平上也提出了新的挑战。

数据中心区域规模和业务处理需求的增加对于集群处理的应用越来越多集群内的服务器需要在一个二层VLAN下。同时虚拟化技术的应用在带来业务部署的便利性和灵活性基础上虚拟机的迁移问题也成为必须要考虑的问题。为了保证虚拟机承载业务的连续性虚拟机迁移前后的IP地址不变因此虚拟机的迁移范围需要在同一个二层VLAN下。反过来即二层网络规模有多大虚拟机才能迁移有多远。

传统的基于STP备份设备和链路方案已经不能满足数据中心规模、带宽的需求并且STP协议几秒至几分钟的故障收敛时间也不能满足数据中心的可靠性要求。因此需要能够有新的技术在满足二层网络规模的同时也能够充分利用冗余设备和链路提升链路利用率而且数据中心的故障收敛时间能够降低到亚秒甚至毫秒级。

二、大二层需要有多大

  既然二层网络规模需要扩大那么大到什么程度合适这取决于应用场景和技术选择。

1. 数据中心内

   大二层首先需要解决的是数据中心内部的网络扩展问题通过大规模二层网络和VLAN延伸实现虚拟机在数据中心内部的大范围迁移。由于数据中心内的大二层网络都要覆盖多个接入交换机和核心交换机主要有以下两类技术。

虚拟交换机技术

   虚拟交换机技术的出发点很简单属于工程派。既然二层网络的核心是环路问题而环路问题是随着冗余设备和链路产生的那么如果将相互冗余的两台或多台设备、两条或多条链路合并成一台设备和一条链路就可以回到之前的单设备、单链路情况环路自然也就不存在了。尤其是交换机技术的发展虚拟交换机从低端盒式设备到高端框式设备都已经广泛应用具备了相当的成熟度和稳定度。因此虚拟交换机技术成为目前应用最广的大二层解决方案。

虚拟交换机技术的代表是H3C公司的IRFCisco公司的VSS其特点是只需要交换机软件升级即可支持应用成本低部署简单。目前这些技术都是各厂商独立实现和完成的只能同一厂商的相同系列产品之间才能实施虚拟化。同时由于高端框式交换机的性能、密度越来越高对虚拟交换机的技术要求也越来越高目前框式交换机的虚拟化密度最高为4:1。虚拟交换机的密度限制了二层网络的规模大约在12万台服务器左右。

隧道技术

   隧道技术属于技术派出发点是借船出海。二层网络不能有环路冗余链路必须要阻塞掉但三层网络显然不存在这个问题而且还可以做ECMP等价链路能否借用过来呢通过在二层报文前插入额外的帧头并且采用路由计算的方式控制整网数据的转发不仅可以在冗余链路下防止广播风暴而且可以做ECMP。这样可以将二层网络的规模扩展到整张网络而不会受核心交换机数量的限制。

隧道技术的代表是TRILLSPB都是通过借用IS-IS路由协议的计算和转发模式实现二层网络的大规模扩展。这些技术的特点是可以构建比虚拟交换机技术更大的超大规模二层网络应用于大规模集群计算但尚未完全成熟目前正在标准化过程中。同时传统交换机不仅需要软件升级还需要硬件支持。

2. 跨数据中心

   随着数据中心多中心的部署虚拟机的跨数据中心迁移、灾备跨数据中心业务负载分担等需求使得二层网络的扩展不仅是在数据中心的边界为止还需要考虑跨越数据中心机房的区域延伸到同城备份中心、远程灾备中心。

   一般情况下多数据中心之间的连接是通过路由连通的天然是一个三层网络。而要实现通过三层网络连接的两个二层网络互通就必须实现“L2 over L3”

L2oL3技术也有许多种例如传统的VPLSMPLS L2×××技术以及新兴的Cisco OTVH3C EVI技术都是借助隧道的方式将二层数据报文封装在三层报文中跨越中间的三层网络实现两地二层数据的互通。这种隧道就像一个虚拟的桥将多个数据中心的二层网络贯穿在一起。

另外也有部分虚拟化和软件厂商提出了软件的L2 over L3技术解决方案。例如VMwareVXLAN、微软的NVGRE在虚拟化层的vSwitch中将二层数据封装在UDPGRE报文中在物理网络拓扑上构建一层虚拟化网络层从而摆脱对网络设备层的二层、三层限制。这些技术由于性能、扩展性等问题也没有得到广泛的使用。

三、结束语

   大规模二层网络的需求目前已经非常的清晰各厂商都提出了有针对性的技术和方案满足大二层的当前要求和未来扩展需求。但从实际应用情况来看除了虚拟交换机技术在成熟度和应用性方面得到验证其他的相关技术仍然在完善过程中。同时业界也希望加快相关技术的标准化进程从而加强各厂商设备的兼容性和互通性降低用户的部署和维护成本。