探索UCS(4)- UCS的核心技术之VN-Link

Sina WeiboBaiduLinkedInQQGoogle+RedditEvernote分享




今天特别将本系列其余三篇贴到弯曲上,希望大家能喜欢:)

 

每当谈到思科的时候,大家第一个反映,肯定是“网络之王”,虽然它现在的战线已经涉及到服务器端和虚拟化相关的产品,但是在UCS的整体设计上还是非常重视网络的作用,希望网络在实施虚拟化的数据中心中能够居于一个非常核心的地位,其中最有代表性的技术莫过于VN-Link,而且VN-Link也是UCS的三大核心技术之一。首先,先介绍一下VN-Link技术产生的背景。

 

Virtual Networking的难题

在VN-Link相关技术推出之前,虽然Virtual Networking技术,比如Virtual Switch极大地方便了虚拟化技术的使用,但是随着虚拟化技术在数据中心的大规模使用,打破一个主机只运行一个操作系统和系统地址是固定这两个非常重要的假设,导致很多问题的出现,而且主要出现在两个方面,其一是使网络架构更复杂,其二是管理困难。(具体细节,请查看剖析系统虚拟化(7))

为了解决上面提到的这些难题,VMware携手Cisco发布一系列产品来提升Virtual Networking,VMware推出了Distributed Virtual Switch(简称vDS),同时Cisco则推出了VN-Link。

VN-Link是一整套能在分布式虚拟技术环境下直接运行的网络方案,并且提供了和其它思科网络产品相似和让人很熟悉的功能集和运行模型。在设计方面,核心思想就是让虚拟机在网络方面的使用和管理都尽可能地和现有的网络架构融合在一起,而不是独创一派。这样的设计理念不仅能很好让虚拟环境更好地适应当今数据中心的网络环境,而且能维护思科在网络方面的王者地位。而且VN-Link包括两个子方案。其一是基于Cisco Nexus 1000V的解决方案,这个方案可以视为是以软件为主的实现。其二是基于NIV(Network Interface Virtualization)的解决方案,这个方案可以被认为是硬件实现。

 

Cisco Nexus 1000V的方案

首先,因为Cisco Nexus 1000v 是基于VMware vDS框架,所以其在总体的架构上也和vDS非常相近。它的做法也是分离了交换机的数据功能和控制功能,首先数据功能不是由主机上的Virtual Switch来处理,而是由安装在主机上的思科的VEM(Virtual Ethernet Module)模块来管理,而控制功能则被集中起来离至主机之外,可以是安装在一个特制的虚拟机内(Cisco Nexus 1000v使用这种做法),在Virtual Center内或者是内嵌在一个特制的物理机上(Cisco Nexus 1010)。下图为Cisco Nexus 1000V的架构。

Cisco Nexus 1000v 架构

  图1 Cisco Nexus 1000V架构

接着,给大家分别介绍一下数据模块VEM和管理模块VSM。

    1. VEM(Virtual Ethernet module),它是一个用来替换原本运行在主机上的Virtual Switch,它不仅提供交换功能给链接在它上面的虚拟机,而且支持高级网络和安全功能。但和Virtual Switch不同的是,每台虚拟机只能运行一个VEM模块。
    2. VSM(Virtual supervisor module),它作为一个独立的,外置的物理器件(Appliance)或者虚拟器件(Virtual Appliance)负责其麾下所有VEM的配置,管理,观察和诊断工作,但不从事网络包的转发工作,而且VSM也能整合进Virtual Center。一个单独的VSM能管理最多64台VEM,还有VSM支持active-standby的高可用性模式。

通过VEM/VSM的组合,除了非常支持原有vDS的功能集合,而且能提供一些能更好地和现有企业网络架构融合的特性,比如其自带的企业级NX-OS系统,堪称业界事实标准的Cisco IOS CLI,Private VLAN,Encapsulated Remote SPAN和NetFlow v.9等

 

NIV的方案

NIV全称为“Network Interface Virtualization”,在技术层面上,其和Cisco Nexus 1000V相差很大,它主要通过引入支持NIV技术的新设备来避免使用诸如Cisco Nexus 1000V或者Virtual Switch等软件交换技术。

首先,在普通的刀片虚拟机环境下,有可能在网络Access层出现三种交换机:其一是在Access层外置的交换机,比如:Cisco Catalyst 6500系列。其二是在Blade机箱层的刀片交换机,比如:Cisco Nexus 4000系列。其三是主机层的Virtual Switch。但是在UCS上,Cisco通过利用多种技术来简化这三种交换机至一种:

    1. 在Access层,UCS提供Cisco UCS 6100系列Fabric Interconnect来支持UCS整个系统内所有虚拟机的流量,而且建立了一个单点控制和管理网络流量的接口,总体而言,可以认为它是一个增强版的Access层交换机。
    2. 在Blade机箱层,UCS取消了刀片交换机,而是采用Cisco UCS 2100系列Fabric Extender。通过这个设备能够将blade服务器所产生的所有流量直接传输给上层的Fabric Interconnect,这样能简化整个网络架构。
    3. 在主机层,放弃原先主机上的Virtual Switch,转而让虚拟机直接通过Networking Interface Virtulization技术来直接连接物理的网卡。

Cisco VN-Link 架构

图2 整合三种交换机(参[3])

通过整合三种交换机,能够让所有的流量都直接传送到Fabric Interconnect,这样不仅能极大地简化了网络的架构,而且能统一整个网络的管理。

接着,介绍Networking Interface Virtulization技术是如何让虚拟机直接连接物理网卡。大家都知道,一台主机上运行虚拟机的数量是远大于1的,所以虚拟机内置的虚拟网卡是远多于实际物理网卡的数量。为了解决这个不对称的问题,思科在UCS中引入了支持Networking Interface Virtulization技术网卡Cisco UCS M81KR,也称作“Palo”,因为Networking Interface Virtulization技术能够将一个物理的端口虚拟成多个虚拟的端口,所以Palo卡能虚拟多达128块虚拟网卡来对应虚拟机内置的网卡,而且加上Intel的Directed I/O技术,使得Palo卡在速度上也非常优秀。

 

VN-Link技术和它旗下的两个子方案,虽然还没有在各大企业数据中心中大规模铺开,但的确是对虚拟化网络环境的一次可贵的创新。

 

本篇结束,下篇将关注UCS的核心技术之Unified Fabric。

参考资料:

    1. Cisco Nexus 1000v:Technical Preview
    2. Cisco VN-Link: Virtualization-Aware Networking
    3. A Platform Built for Server Virtualization: Cisco Unified Computing System
(3个打分, 平均:3.33 / 5)

雁过留声

“探索UCS(4)- UCS的核心技术之VN-Link”有5个回复

  1. K 于 2010-10-01 9:02 上午

    谢谢分享!

  2. 黄岩 于 2010-10-02 5:19 下午

    怎么感觉有点像软文呢?

  3. Lucifer 于 2010-10-03 10:49 上午

    有点软,例如Palo,实际上是SR-IOV的实现,通过Intel的VT-d将网卡上的多个PCIe Virtual Function进行Direct Assignment给虚拟机(一般每个虚拟机可以分配到一个),虚拟机可以直接访问网卡,这就减少了虚拟层的损耗

  4. alrn 于 2010-10-05 4:45 上午

    逻辑不太清晰,不太明白

  5. sand 于 2011-09-17 10:19 下午

    写得很好,感谢作者!