“层云”架构有望解决云计算瓶颈
数据中心复杂性带来的瓶颈
“云计算”的概念是把所有的服务集中在上层云端,如果想要实现这个目标,就必须在上层建立起一个非常完备的数据中心,用以承载若干的应用服务平台。如此一来,这个上层云计算数据中心必须非常的稳定,因为一旦这个上层云计算服务中心发生故障,很有可能造成所有的云计算服务发生中断。
为了保证数据中心的稳定,我们在进行数据中心网络建设的时候通常会在层与层之间设置两个甚至多个交换路由节点,一方面是提升网络的传输性能,另一方面可以避免出现单点故障。这种网络结构可以从图1上得到更为形象地了解。
这种网络结构在目前阶段是合理的,也是可以实际解决问题的。但是,当云计算这一概念提出之后,这种网络结构就难以胜任了。
云计算的瓶颈
首先是网络延时的瓶颈。当数据中心实施云计算的时候,传统的网络结构有可能使网络延时问题成为一大瓶颈。我们来举一个例子,如图1所示,当某条数据需要从服务器A传送到服务器B,那么这条数据必须一层一层的经过网络的各个交换路由节点,而每通过一个交换路由节点的时候,这条数据都必须经过一次数据包拆解、数据包解析、数据重新打包的过程,我们可以看见,在图1所示的网络结构中,这一过程至少要进行七次。这种情况在目前造成的网络延时现象还不是很明显,因为目前的数据中心上所运行的业务服务还不是很多。可是,当云计算实施起来之后,一个数据中心可能运行着三十、四十甚至更多的业务服务,这个时候,如果每个数据包都要经过若干次的拆解/打包过程的话,就很容易造成网络的堵塞,形成网络延时。
虚拟化带来的瓶颈
由于云计算必须为不同的用户提供各自的服务,当用户的种类增多时,相关的服务类型也必然随之增多,这个时候,为了节约计算资源,数据中心必然要用到虚拟化技术。
虚拟化技术整合了计算资源,但是,它也带来了一些问题。举例而言,我们知道,虚拟服务器是可以在物理服务器上动态迁移的,这时的网络以往的网络不同,因为虚拟服务器会在若干个物理服务器之间进行跳转。在以前的网络中,我们可能在若干台Web服务器上层建立了负载均衡器,可是现在,随着虚拟化技术的应用,负载均衡器所控制的机器有可能有时是Web服务器,有时是FTP服务器,网络容易因为虚拟化技术而变得混乱。
“层云”概念解决云计算瓶颈
“层云”是由Juniper提出的一种全新的网络结构。简单的说,“层云”就是把网络中的各个交换层次打散,在每一个计算节点之间都建立出最直接的一对一通路,两个交换节点之间直接连接,并不通过第三个节点,所有的交换节点都处在同一层面上,不同的应用在这些交换节点中被软件划分出自己的路线(如图2)。显然,“层云”是要把所有的交换路由节点看成一个统一的超级交换中心,整个网络就可以被简单的划分成为一个整合核心层,只要有一个接入接口,这个整合核心层就可以接入其他网络。
这样做的好处是很明显的,首先它加大了整个网络的稳定性,因为所有的节点都实现了一对一的直接连接,所以“层云”实现了一个“全冗余网络”,这样一来,无论数据包是从哪里出发,要去到哪里,只需要经过两次拆解/打包的过程,使得网络延时大大降低。同时,无论虚拟机如何在物理服务器上迁移,都无需顾及网络中发生了什么变化,因为所有的网络节点都实现了一对一的直接连接,无论虚拟机运行在哪台物理服务器上,对于这个交换中心来说没有什么区别。
“层云”的缺点
可见,“层云”是能够解决云计算网络瓶颈的一种全新的网络架构。然而,这种网络架构也有一些地方需要我们注意。
51CTO.com设想之安全性问题
由于“层云”把所有的交换节点一对一的连接到了一起,那么如果一旦某台交换机被黑客攻破或者感染了病毒,病毒会不会很快的蔓延到整个网络?黑客会不会轻易的控制整个网络?
对于这个问题,Juniper Networks数据中心业务部门执行副总裁及总经理颜维伦博士。颜博士针对这个问题是这样解释的:“我们提供给数据中心的管理人员说这是一个很大的交换器,你可以从任何一点到另外一点,这是其基本的能力,但是并不表示数据中心对外面的使用者也是赤裸裸地展现全部能力,上面有管理的软件在,包括我们自己。我们Juniper会提供管理软件,这个管理软件会对使用者进来有某种限制,比如说从外面来的顾客,可能经过几层的路由进来,进来了以后,你很可能马上引导到一个防火墙的处理器,如果你通过的话,管理的软件可以把你送到网页服务器上。我提供的基础设施让你有自由度,但是不表示上面的管理软件让你进来随便闯。我标在这里的是另外一个限制,我们一旦提供基础设施以后,上面会提供虚拟化的软件,让你把这分成好几个不同的区域。一个大型的“云计算”提供商,可能把它提供给可口可乐,也可能提供给百事可乐,这两家是直接竞争,但是管理软件可以做到让可口可乐看不到百事可乐,因为上面控制软件的管理,他们之间完全没有办法交流。”
51CTO.com设想之“层云”故障问题
“层云”是一个很稳定的网络结构,因为网络中各个交换节点都实现了一对一的连接,如果某个交换机出现了故障,那么也会有其他的通路来实现数据包在网络中的正常流通。可是,当网络里面数据流比较饱和的时候,一个节点坏了,相当于这个节点承担的工作会分摊到其他的节点,这个时候其他的节点本来比较饱和了,那么会不会出现业务的停滞?
Juniper对此的解释是他们提供了很好的预防机制,因为如果网络一旦将要发生拥堵,他们就会将相关的流量拦截在入口处。这就好比航空交通,以往的时候,如果某地的天气情况很差,飞机到了该地区上空不能降落,那么飞机会在天空中盘旋,最后停在别的飞机场,但是现在,如果我们知道该地区的天气情况很差,那么飞往该地区的飞机就会受到飞行管制,不能起飞。这个方法被借鉴到了“层云”中。