Open vSwitch(开放虚拟交换标准)详解

日期: 2011-03-02 来源:TechTarget中国

  从虚拟机到虚拟交换

  提到虚拟化,大家第一印象往往是虚拟机(Virtual Machine),VMware、Virtualbox,这些大名鼎鼎的虚拟机软件不少人都耳熟能详。对企业用户来说,虚拟技术最直接的好处是通过灵活配置资源、程序来高资源的利用率,从而降低应用成本。近些年,随着虚拟化技术、交换技术以及云计算服务的发展,虚拟交换(Virtual Switch)已经越来越多的引起人们的关注。

  顾名思义,虚拟交换就是利用虚拟平台,通过软件的方式形成交换机部件。跟传统的物理交换机相比,虚拟交换机同样具备众多优点,一是配置更加灵活。一台普通的服务器可以配置出数十台甚至上百台虚拟交换机,且端口数目可以灵活选择。例如,VMware的ESX一台服务器可以仿真出248台虚拟交换机,且每台交换机预设虚拟端口即可达56个;二是成本更加低廉,通过虚拟交换往往可以获得昂贵的普通交换机才能达到的性能,例如微软的Hyper-V平台,虚拟机与虚拟交换机之间的联机速度轻易可达10Gbps。

  虚拟交换与Open vSwitch

  2008年底,思科发布了针对VMWare的Nexus 1000V虚拟交换机,一时之间在业界掀起不小的风头,并被评为当年虚拟世界大会的最佳新产品。或许思科已经习惯了“群星捧月”,此后很长一段时间里并没有见到正式的虚拟交换标准形成。除了惠普一年多以后提出了VEPA(虚拟以太网端口聚合器),其他厂家关注的多,做事的少。随着云计算跟虚拟技术的紧密融合,以及云安全的角度考虑,技术市场曲线已经到了拐点,业界已经迫切需要一套开放的VS标准,众多门派蠢蠢欲动。

  烽烟即燃之际,Open vSwitch横空出世,以开源技术作为基础(遵循Apache2.0许可),由Nicira Networks开发,主要实现代码为可移植的C代码。它的诞生从一开始就得到了虚拟界大佬——Citrix System的关注。可能有读者对Citrix不熟,但说到Xen恐怕就是妇孺皆知了,没错,Citrix正是Xen的东家。OVS在2010年5月才发布1.0版本。而早在1月初Citrix就在其最新版本的开放云平台(ref[2])中宣布将Open vSwitch作为其默认组件,并在XenServer5.6 FP1中集成,作为其商用的Xen管理器(hypervisor)。除了Xen、Xen Cloud Platform、XenServer之外,支持的其他虚拟平台包括 KVM、VirtualBox等。

  OVS官方的定位是要做一个产品级质量的多层虚拟交换机,通过支持可编程扩展来实现大规模的网络自动化。设计目标是方便管理和配置虚拟机网络,检测多物理主机在动态虚拟环境中的流量情况。针对这一目标,OVS具备很强的灵活性。可以在管理程序中作为软件switch运行,也可以直接部署到硬件设备上作为控制层。同时在Linux上支持内核态(性能高)、用户态(灵活)。此外OVS还支持多种标准的管理接口,如Netlow、sFlow、RSPAN,、ERSPAN, 、CLI。对于其他的虚拟交换机设备如VMware的vNetwork分布式交换机跟思科Nexus 1000V虚拟交换机等它也提供了较好的支持。

  目前OVS的官方版本为1.1.0pre2,主要特性包括

  • 虚拟机间互联的可视性;
  • 支持trunking的标准802.1Q VLAN模块;
  • 细粒度的QoS;
  • 每虚拟机端口的流量策略;
  • 负载均衡支持OpenFlow (参考openflow–打造弹性化的可控互联网)
  • 远程配置兼容Linux 桥接模块代码

  OVS获取

  由于是开源项目,代码获取十分简单,最新代码可以利用git从官方网站下载。此外官方网站还提供了比较清晰的文档资料和应用例程,其部署十分轻松。当前最新代码包主要包括以下模块和特性:

  • ovs-vswitchd 主要模块,实现switch的daemon,包括一个支持流交换的Linux内核模块;
  • ovsdb-server 轻量级数据库服务器,提供ovs-vswitchd获取配置信息;
  • ovs-brcompatd 让ovs-vSwitch替换Linux bridge,包括获取bridge ioctls的Linux内核模块;
  • ovs-dpctl 用来配置switch内核模块;
  • 一些Scripts and specs 辅助OVS安装在Citrix XenServer上,作为默认switch;
  • ovs-vsctl 查询和更新ovs-vswitchd的配置;
  • ovs-appctl 发送命令消息,运行相关daemon;
  • ovsdbmonitor GUI工具,可以远程获取OVS数据库和OpenFlow的流表。

  此外,OVS也提供了支持OpenFlow的特性实现,包括

  • ovs-openflowd 一个简单的OpenFlow交换机;
  • ovs-controller 一个简单的OpenFlow控制器;
  • ovs-ofctl 查询和控制OpenFlow交换机和控制器;
  • ovs-pki 为OpenFlow交换机创建和管理公钥框架;
  • tcpdump的补丁,解析OpenFlow的消息;

  结语

  IT领域可以称得上是人类历史上最开放创新,也是最容易垄断的行业。PC行业,wintel帝国曾塑造了不朽的神话,证明谁控制了cpu跟os,谁就控制了话语权,只要PC的软硬件模式不发生革命性变化,wintel帝国的地位将是无人能撼的。后起之秀ARM借助重视能耗的东风,再加上智能终端技术的大发展才展露头角。而在互联网界,思科更是首先把握住了最核心的交换市场,早早登上至尊之位,即使是步后尘的juniper、huawei也只能是虎口夺食,各凭绝技分天下。现在虚拟交换技术的提出将给这一领域带来新的契机,究竟鹿死谁手,更待后人评说。

相关阅读:

Open vSwitch:您可以使用开放源码分布式虚拟交换吗?

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐