本文主要是介绍vxlan总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
VXLAN:是好是坏?
在近期的VMworld大会上,由思科与VMware提出的VXLAN(虚拟可扩展LAN )声明在网络工程师中引起了极大反响。它是虚拟环境无用的方法,还是确有其意义?其实,它处于二者中间。
什么是VXLAN?
它是一种在UDP中封装MAC的简单机制,可以创建跨多个物理IP子网的虚拟2层子网。
为什么我们需要这种新技术?
现在不只一种标准可以在IP中封装MAC(包括EtherIP和GRE通道桥接),但是它们都无法做到VLAN逻辑标记,因此您只能使用最多4,096个不同的VLAN。即使可以使用这些标准来分隔逻辑网,您也必须(在负载中)深入分析MAC头信息,以查找出虚拟分片ID。而VXLAN通过一个24位分片ID,在一个数据中心内它能部署百万个虚拟网。
而且,VXLAN数据包格式很容易在硬件中实现,所以它以后也许可以更紧密地与物理网络设备集成。
VXLAN是另一个专利技术?
不是。它是由VMware、思科、Arista、Broadcom、Citrix和红帽共同提出的IETF草案,很难有比这更好的团队了(可以这样认为,Arista和Broadcom的加入是由于Broadcom正在生产Arista数据中心交换机所使用的芯片)。
何时需要VXLAN?
有人宣称:“如果数据中心内有超过250个虚拟机,那么您就应该考虑使用VXLAN。”(很多人都这样认为)其实在需要大量逻辑网时,才应该考虑使用VXLAN。如果只有少量逻辑网,那么就还是应该使用经过时间考验的技术,如VLAN。
VXLAN标准的缺点
VLAN与VXLAN之间有何区别?
VXLAN显然更具可扩展性(4,096个VLAN网 vs 1600万个VXLAN网),但是它现在还面临一个巨大的问题:虽然人们期望有一些数据中心交换机供应商能够支持3层VXLAN终端,但是使用VXLAN封装的逻辑子网还无法与物理设备通信,如交换机、负载均衡器或防火墙。
VXLAN连接外部设备的唯一方法是使用虚拟3层网络设备,如vShield Edge、Vyatta路由器或F5负载均衡器一个物理VLAN中需要一个vNIC,而在VXLAN中需要一个或者多个。
我能够在任意IP网络中运行VXLAN吗?
差不多但是得用IP多路广播实现2层淹没(广播或多路广播)。
我是否能够使用VXLAN实现远距离VM移动?
这个技术的确可以这样(前提是您能够在数据中心之间支持IP多路广播),但是这不意味着您应该这样做。VXLAN不能处理远距离流量延迟,但是,在相同逻辑子网的多个数据中心之间传输虚拟机时,必须要能够做到这点。
那么VXLAN的卖点是什么?
如果您要创建一个完全虚拟化的基础架构云服务,希望通过客户配置的虚拟设备连接客户子网与外部网络,那么VXLAN就是一种理想的技术
VXLAN在物理基础架构中的应用
每次我跟连网工程师同事讨论VXLAN技术的时候,我总是会遇到“我如何将它与外部世界连接在一起?”这样的问题。 让我们假定你想利用基于VXLAN技术的虚拟子网建立一个典型的3级应用体系结构,而且你已经拥有了防火墙和负载均衡功能,但你能够使用它们吗? 就目前来说,答案是否定的。
近期支持VXLAN Tunnel End Point(VTEP)的唯一一款产品是Nexus 1000V虚拟网关,你能够与VXLAN系统连接的唯一一类设备是虚拟机上的以太网接口卡。如果你想在两个VXLAN系统之间或是一个VXLAN与外部世界之间使用路由器、防火墙或负载均衡器(有时被称为应用配送控制器),那么你就必须使用一台虚拟机版本的3级设备。 那可不一定是个好主意,因为虚拟连网设备有很多影响性能的弊端,而且对CPU周期的消耗也很大。 但是如果你是一家按虚拟机实例数量或CPU周期向客户收费的云供应商,那么你可能不会太在乎这个问题。
虚拟连网设备还可以为你的网络注入更多跃点和不可预知的数据流,因为它们可以在负载均衡器的指挥下自由地在数据中心中移动。这样,一个结构清晰的网络设计就会迅速转变成一团乱麻。
思科没有一款3级虚拟机产品,你能够从VMware买到的唯一一款3级虚拟机产品是vShield Edge,一款拥有精美图形用户界面的定制版Linux。如果你真是非常喜欢部署VXLAN,那么你肯定不会在乎这个问题。基于虚拟机的产品并不少,包括F5的BIG-IP负载均衡器和Vyatta的路由器产品。 在最坏的情况下,你可以将一台标准的Linux虚拟机转换成一个可用的路由器、防火墙或NAT设备,只要把它的一些功能去掉就行了。我并不想那么做,但这总是我们现在能够选择的候选方案之一。
下一步?
有些客户迟早要在物理设备上部署VXLAN,在虚拟机上运行连网功能时速度很慢,而且成本很高。虽然我并没有获得任何确切情报(甚至连路线图也没有),但是请记住Ken Duda在VXLAN Packet Pushers网播中的热情讲话,以及Arista和博通都出现在了VXLAN和NVGRE草案的作者列表之中。
此外,VXLAN密封格式实际上是OTV密封的一个子集,正如Omar Sultan在他的VXLAN Deep Dive博客上所指出,思科已经拥有能够让Nexus 7000停止使用VXLAN所需的必要硬件。
你应该如何做?
VXLAN的3级终端实际上很容易(从架构和制导的角度来说);
附属在VXLAN上的虚拟机配置了默认网关的IP地址(在物理终端设备VXLAN子网内部的逻辑IP地址);
发送IP数据包来达到断网目的的虚拟机必须将数据包发送到默认网关的IP地址并执行ARP请求;
一个或以上3级VXLAN终端设备会对VXLAN密封中的ARP请求作出回应,运行在虚拟机中的管理程序里的Nexus 1000V网关可以记下RouterVXLANMAC-to-RouterPhysicalIP地址转换情况;
当虚拟机向默认网关的MAC地址发送一个IP数据包时,Nexus 1000V网关就会将IP-in-MAC帧发送到最近的RouterPhysicalIP地址。
没有广播或洪水与3级终端有关,因此你可以轻松地在不同路由器上使用相同的物理IP地址和相同的VXLAN MAC地址,实现瞬间冗余,而不用先跳上象HSRP或者VRRP那样的冗余协议。
VXLAN向VLAN的2级拓展(你或许需要将基于VXLAN的主机与外部防火墙相连)有些麻烦。当你将VXLAN和802.1Q VLAN连接在一起的时候,你必须保证不会建立一个转换环路。
你可以将VXLAN2级拓展配置在多台交换机上,并且在VXLAN上运行STP, 但我希望你们最好永远也别那么做。使用IP功能来实现VXLAN-to-VLAN转换可能更好一些。 例如,你可以在多余的VXLAN-to-VLAN桥之间运行VRRP以及把VRRP IP地址象桥的VXLAN物理IP地址一样使用。 VRRP功能还可以控制VXLAN-to-VLAN的转换,只有活跃VRRP网关才可以执行2级转换。你还可以使用STP的最小化子集以避免出现转换环路,但我不会将它作为主要的会聚机制来使用。
结论
VXLAN是一个很棒的概念,它可以让你清楚地将虚拟网络与物理IP转运基础设施区分开,但我们在考虑大规模部署之前,我们还是需要在物理设备(网关、防火墙和负载均衡器)中使用VXLAN。在那之前,它将一直是一个有趣的概念工具或基础设施云供应商使用的一款重要产品。
全球领先的应用交付网络 (ADN) 厂商 F5 Networks, Inc. 10月10日在 VMworld® 2012 Europe 大会上宣布支持 VXLAN 功能,通过、 VMware 和 F5 解决方案的完美结合,助力企业无缝支持软件定义网络 (SDN) 计划。F5® BIG-IP® 产品基于 VMware vSphere® 和 vCloud Director®,能够在最新的 VMware 环境中充分发挥 VXLAN 的优势。此外,F5 还宣布计划为其 BIG-IP 产品增添 VXLAN 虚拟隧道终端功能,提供封装和解封装 VXLAN 包的能力。这一创新将可进一步支持企业可靠地扩展云环境和优化运营。
基于F5 与 VMware 的紧密合作关系,以及最新宣布的 VMware Ready™ for Networking and Security Program 方面的合作,这些技术合作举措可通过协调部署双方的解决方案而帮助共同客户实现更多的价值。企业可选择物理的 BIG-IP 设备或 BIG-IP 虚拟版来充分利用 F5 全套应用交付网络 (ADN) 服务,例如安全性、加速和优化技术,同时进一步提高基于 VXLAN 网络的效率。
F5 Networks业务开发部高级副总裁 Jim Ritchings 表示:“F5 解决方案占据网络中的战略控制点,使我们能够在与VMware的合作中处于有利位置,协作优化客户的虚拟化和云基础设施。BIG-IP 作为一个理想的平台,能够帮助企业在其 SDN 部署中充分发挥 F5 的 ADN 服务优势。为了推进这一目标,F5 在未来几个月将继续增强其 BIG-IP 虚拟版,努力将现有的吞吐性能提高 200%。今天的发布以及 F5 一如既往的在技术创新方面的投入,证明了我们携手 VMware 支持客户云计划的承诺。”
概述
越来越多的企业追求着更加动态的 IT 部署模式,因此 SDN 及其相关技术在当前倍受青睐。F5 提供的解决方案可确保客户整个 IT 环境的可扩展性、安全性和可管理性,从而帮助客户将软件定义数据中心变为现实。F5解决方案的一个关键要素就是能够在不同的网络架构中进行无缝互操作,包括传统的 VLAN 和诸如 VXLAN 等其它新兴的 SDN 框架。
VXLAN 提供了一种解决方案,帮助企业将虚拟域与基础网络和虚拟基础设施进行关联,从而增强系统灵活性、可扩展性和性能。利用 VXLAN,客户能够跨现有数据中心矩阵创建多租户广播域。这一方法使企业能够创建跨越物理网络边界的弹性逻辑网络,从而更好地支持地理位置分散的系统。它克服了基于 VLAN 的传统限制,可为处于任何位置的用户带来最高的可扩展性和灵活性、以及优化的性能。
通过采用基于 VXLAN 的网络部署 BIG-IP 解决方案,客户将能够:
· 简化虚拟网络的扩展
以 BIG-IP 解决方案为桥梁,企业将能够扩展其现有的网络,并从使用 VLAN 迁移到使用基于 VXLAN 的网络拓扑结构。这可使资源和系统实现可控制的逐步迁移,从而让客户充分相信:采用 VXLAN 能够满足其需求。同时,这还可使在 VLAN 环境中运行的应用能够扩展到 VXLAN 网络,从而按需增加灵活性。
· 跨异构网络应用服务,带来最佳性能
F5 的 BIG-IP 平台能够作为所有 ADN 服务的网络网关,为使用任何基础网络拓扑的应用工作负载提供服务。举例来说,BIG-IP 产品能够以统一、可预测的方式,为在使用不同拓扑的异构云环境中运行的应用提供服务。此外,F5 还能够配合 SDN 技术提供安全性、加速和优化功能,并在整个 IT 基础设施上智能、有效地部署服务—支持任意地点、任意服务器上的任意工作负载。
· 提升应用移动性和业务连续性
由于基于 VXLAN 的网络在功能上彼此分离,当虚拟机在数据中心间或云间迁移时,其 IP 地址无需改变。这可极大提高应用移动性,进而改进灾难恢复、业务连续性和可扩展性。VMware 与 F5 携手,使双方共同的客户能够保留其用户所依赖的重要 ADN 服务,甚至在虚拟机拆除或重置的情况下也不例外。
证言
VMware 全球战略联盟副总裁 Parag Patel 表示:“随着客户越来越多地采用私有云、公共云和混合云,我们致力于帮助他们克服传统网络的限制,使其虚拟工作负载实现更出色的效率、移动性和网络自动化。具备 VXLAN 功能的 VMware vCloud® Suite 5.1 与 F5 的 BIG-IP 平台的结合,将有助于客户加速云部署,同时丝毫不会影响系统灵活性或持续性。”
IDC 企业通信基础设施总监 Rohit Mehra 表示:“尽管SDN并非全新概念,但在近期,SDN的话题引起了企业以及与云相关的IT 部门的关注。虽然当前的部署以及SDN 的承诺,与业务潜力之间还有一段距离,但它们为 IT 改进应用及基础数据中心基础设施的灵活性和效率开辟了一条新的途径。在短期内,诸如 VMware 和 F5 等技术领导厂商之间的整合计划,将能够为追求 SDN 的企业带来极大受益。”
很多供应商都纷纷推出了VXLAN网关——这些网关能够桥接基于软件的网络覆盖层和底层物理基础设施之间的网络服务。这些供应商采用建立在隧道协议(如VXLAN)上的网络覆盖层,部署基于软件的虚拟云计算网络。
这是一个美好的梦想,但网络覆盖层并不能取代物理环境,它们只是抽象化物理环境。物理网络仍然存在,并且需要进行管理。更重要的是,很多网络覆盖层将部署在混合环境内,而在这些环境中,很多数据中心仍然由传统架构统治,并且,网络服务(例如防火墙和负载平衡)仍然部署在硬件中。因此,企业需要一个VXLAN网关以在物理和虚拟网络中扩展服务和管理。VMware公司在软件中提供VXLAN网关,而硬件支持仍需更好的扩展。
Current Analysis公司服务总监Mike Spanbauer表示:“VXLAN可能是最简单的桥接传统网络到虚拟化的部署方式,使传统网络完全过渡到完全虚拟化的网络。”物理硬件中部署的VXLAN将“优化和控制”网络虚拟化。在现有平台中启用VXLAN让供应商们从传统和虚拟化计算混合环境的角度来推广其产品。Spanbauer表示:“最终这些都会融合在一起,正如OpenFlow和传统2、3层网络一样。”
在Vmworld大会上,VMware将VXLAN定位为其新装配的vCloud软件套件中网络堆栈的基础。与此同时,其他供应商展示了VXLAN网关支持,它能够将把如负载均衡和防火墙这样的网络服务扩展到VXLAN流量中。
“一些供应商在谈到VXLAN时表示,你不必重新配置你的网络,但当你想在政策、安全和加速等方面作出调整时,你将需要在4-7层调查和操作,”Forrester研究公司高级分析师Andre Kindness说道,“所以,你需要进行解封装和重新封装。从数据中心到云环境,你需要检查WAN优化、应用交付控制器、防火墙、入侵防御和入侵检测。没有人能够预见VXLAN流量的发展,所以你必须在所有地方建立网关。”
VXLAN网关商业芯片支持
除了基本网络服务外,网络芯片制造商Broadcom公司推出了Trident II系列芯片,该芯片在单个平台上可提供高达1280 Gbps的容量,支持直接内置的VXLAN和NVGRE(使用通用路由封装的网络虚拟化)。
与数据中心内简单的网络覆盖层相比,该芯片的Smart-NV功能能够更好地利用VXLAN和NVGRE。例如,通过Trident II芯片交换机,企业将能够使用VXLAN在公共网络传输2层流量,连接数据中心,并实现虚拟负载从一个位置到另一个位置的迁移。
Broadcom公司网络和基础设施高级产品线经理John Mui表示:“这使在管理程序级部署VXLAN或NVGRE的企业可以将这种可视性扩展到物理网络中。”
Vmworld大会上,VXLAN网关硬件展示比比皆是
在Vmworld大会上,一些网络厂商展示了概念验证型VXLAN网关支持。Brocade展示了其ADX系列应用交付控制器中的VXLAN隧道端点功能;Avaya公司展示了其最短路径桥接(Shortest Path Bridging)部署和虚拟企业网络架构(VENA)中对VXLAN的支持,还有Arista展示了其7000交换机系统中的VXLAN支持。
“VXLAN能使工作负载从一个路由网络移动到另一个,或者从一个子网转移到另一个,同时保留IP地址。并且,它允许网络进行扩展,将网络网段(VLAN)的数量增加到1600万,”Arista公司营销副总裁Doug Gourlay表示,“但(之前)VXLAN并没有解决如何无缝连接物理和虚拟环境的问题。我们的Arista 7000交换机在增加硬件VXLAN功能后,允许企业与任何工作负载、物理或虚拟或云环境、基础设施的任何位置进行无缝的互操作。整个虚拟化都是可编程的,并且是在软件中配置的。”
现在,任何端口或者任何端口+VLAN都可以被映射到任何VXLAN网络标识符(VNI),Gourlay解释道:“任何VNI都可以映射到通过我们的交换机连接的任何可用网络服务中。你可以连接到F5负载均衡器、Riverbed WAN优化、Isilon存储或者Coraid存储。”
VXLAN可视性的出现
因为VXLAN使用MAC(消息认证码)over UDP(用户数据报协议)封装,传统网络管理工具缺乏对VXLAN流量的可视性。这种封装让网络性能管理工具“无视”VXLAN框架内的有效载荷,因为它们不能解析VXLAN封装增加的额外的头信息。
Kindness表示:“如果你想通过VLAN发送大量流量,你需要决定流量发送的优先级别。你有4000个VLAN,它们都有自己的服务类别。而在这些4000个VLAN内是一堆虚拟VLAN。你拥有1600万种不同类型的流量,但只有8个控制点。没有人在谈论VXLAN的监控方面的问题,你可以监控你的VXLAN流量,但你无法知道是哪个应用在制造问题。”
为了解决这个问题,Riverbed Technology和VMware合作开发了IPFIX(互联网协议流量信息导出)模板,根据Riverbed联盟副总裁Venugopal Pai表示,该模板允许Riverbed的Cascade网络性能管理解决方案从VXLAN封装的流量中抽象出应用级别的性能数据,使它了解VXLAN通道内各个应用的性能,并让该平台可以提供网络租户的应用性能数据。
“无招胜有招”听起来非常虚无,却是武侠世界第一高手独孤求败的成功秘诀。他从利剑无意、软剑无常、重剑无锋到木剑无滞、无剑无招,“四十岁后,不滞于物,草木竹石均可为剑。自此精修,渐进至无剑胜有剑之境。”
与练剑的境界相似,数据中心也正在经历从有形重剑到无剑无招转变的过程。用户把更多的注意力放在业务上,可以较少的关注这些业务运行在哪台具体的设备上。带来这一改变是正在进行的虚拟化进程。这个过程并非始于今日,但是,却在最近迎来了大发展。
网络虚拟化并不是一种全新的技术。现在广泛应用在网络的VLAN(Virtual Local Area Network,虚拟局域网)和VRF(VPN Routing/Forwarding,虚拟路由与转发)都是虚拟化应用在网络的积极尝试。VLAN是根据实际需求,把同一物理网络的不同用户逻辑地分成不同的域来传输和管理,最多可将网络划分为4094个广播域。从而在控制流量、提高设备使用效率、简化网络管理以及提高网络安全性方面得到更好的实现。
但是,传统的网络虚拟化技术在现在大量使用服务器虚拟化之后,显得捉襟见肘。多租户环境下,每个租户都需要多个VLAN,而VLAN数量是有限制的,其构建的网络规模非常有限。而通过附加技术扩展VLAN之后,会增加运营成本以及网络复杂程度,带来隐患。
VRF是三层网络虚拟化的一种,是VPN的一个实例。物理路由器支持多个虚拟路由实例,每个实例都运行自己的路由协议实例,维护自己的转发表。
如果把这些传统技术看作是虚拟化1.0版本的话,那么现在我们要谈论的就是虚拟化2.0版本。当我们重新面对网络虚拟化这一概念的时候,发现这已经是一个没有定义边界的话题。似乎网络虚拟化是个筐,什么都可以往里装。大二层的技术与之相近,SDN也与之有关,此外,FCoE也可以说是某种意义上的虚拟化,更不要说本来就有的VEPA等标准和vSwitch等应用了。
网络虚拟化是什么?“理论上来说,能够实现网络资源动态调配、动态管理的技术都可以算做是网络虚拟化技术。” 戴尔公司大中华区网络业务总监李海平总结说。如果分成步骤来看,“网络虚拟化基本上分成二个部分。第一部分是网络基础架构本身的虚拟化,比如原来单一的网络可以虚拟化成多个网络;原来多个单一的网络单元也可以虚拟成单一网络。第二部分指的是网络提供与虚拟化服务器、储存等数据中心环境适配的特性,这些特性包含与虚拟机的互动、虚拟机的识别、新兴数据中心技术如 SDN、VXLAN等的支持。” 博科公司高级技术顾问沈之千说。而H3C则把网络虚拟化分为了虚拟设备、虚拟通道和虚拟服务三个层次。虚拟设备技术类似计算虚拟化中的虚拟机,经常用到的 N:1虚拟化和1:N的设备虚拟化就属于这一层次。虚拟通道是指网络从过去的静态虚拟化实现动态虚拟化,边缘的虚拟化就是众多技术典型的一种。在此基础之上,实现虚拟服务,虚拟服务面向应用的对接。具体的部署当中,在物理网络的基础上,运用虚拟设备和虚拟通道的技术,实现虚拟网络资源池,这个资源池和虚拟计算和虚拟存储的资源池是对等的架构,这样在构建虚拟资源池之后,再通过与自动化技术的结合,就可以给不同的应用分配动态虚拟通道。H3C解决方案部产品经理陆毅把虚拟化的概念从数据中心进一步扩充到园区网和广域网,他说:“网络虚拟化在园区网的作用就是精确定位用户,而在广域网的作用主要是屏蔽不同链路。” 神州数码网络(DCN)数据中心交换机产品线总经理陈翔把网络虚拟化总结成四个方面,其一是物理网络识别虚机更好的支持,识别虚机流量,可以实现更好的故障排除和QoS策略;其二是链路级别的虚拟化,比如FCoE;其三是设备的一虚多技术;最后是物理网络虚拟为多个逻辑网络提供了多租户的应用需求。“我们认为第四点最重要,多租户需求中要求每个租户可以是一个SMB企业、或者个人用户,他们有不同的带宽需求,不同的安全策略需求,不同的VLAN划分以及相互之间的隔离需求。”
网络虚拟化会对网络造成什么影响呢?陆毅说:“首先,是服务器虚拟化之后,为了解决服务器内部虚拟机之间以及虚拟机和外部网络之间通信的需求,引入了vSwitch,可以视为边缘网络向服务器内部的延伸。但是vSwitch占用服务器性能、管理边界不清晰,服务器内部虚拟机之间的流量不能很好的监控,都是vSwitch面临的一些挑战。针对这些问题,H3C的做法是把服务器内部的流量引出到外部传统网络来处理,这就是VEPA技术。通过VEPA把服务器内部流量引出之后,传统网络丰富的管理特性和硬件设备ASIC的高性能得以充分利用。网络向服务器内部延伸对于运营商目前来说,IDC业务可能会有一些影响。但是对网络流量的精细调度一直是网络演进的方向。用SDN的方式可以直接和上层应用系统接口,这样的实现方式可以更贴近应用的需求。”
那些网络虚拟化2.0的技术
在网络虚拟化2.0技术中,不得不提到的技术有VXLAN、NVGRE、 STT和SPB MAC-in-MAC,TRILL等。这些技术基本上是采用封装或者隧道的方式来创建虚拟网络的。其中,SPB和TRILL的应用在《网络世界》不久之前采写过的《扁平化网络迷局》进行了比较深入的探讨。此外,在一些相对而言比较传统的技术,也实现了虚拟化的功能。比如,思科有VSS、H3C有IRF技术、博科有VCS网络架构、华为有CSS技术、极进网络采用跨机箱链路捆绑技术、锐捷有VSU技术、神州数码网络有VSF技术、戴尔网络的VLT技术等等。这些技术在实现设备虚拟化上都比较成熟的应用。
相对而言,VXLAN、NVGRE以及STT之前涉及的比较少,所以本次讨论的重点就放在这三个技术上。这些覆盖协议之间的主要差异在于其封装格式和控制平面的功能性,即允许封装设备将一个帧映射到适当的拆装设备。
VXLAN是在一个三层网络上借助MAC-in-UDP封装,叠加一个二层网络来实现网络虚拟的。目前,VXLAN是IETF标准草案的一个子集,支持厂商有VMware、思科、Arista网络、博科、红帽和Citrix。IBM也支持VXLAN。在hypervisor vSwitch和物理交换机上实现这个预标准的现象已开始出现。
具体来说,VXLAN采用MAC-in-UDP封装,包括24位网络标识符,50个字节的开销,可以提供16万个逻辑网络地址。对VM而言,VXLAN是透明的,仍然可以使用MAC来进行通信,理论上来说,同处于一个VXLAN网段的端点都可以进行通信,即使这两个端点属于不同的IP子网。这也就解决了一个问题,不使用大二层的构建技术也可以实现VM在较大网络范围的迁移和使用。
NVGRE与VXLAN非常类似,都是采用封装的方式来达到在已有的三层IP网络上承载二层网络的目的。只是NVGRE采用的不是UDP封装方式,而是GRE封装。在主要支持厂商微软看来,网络的某些性能问题可通过智能网卡来解决,即用智能网卡卸载hypervisor vSwitch上的NVGRE端点处理。智能网卡还拥有与覆盖控制器和hypervisor管理系统集成的API。在其中有一个起到重要作用的控制器,来解决控制平面遇到的一些问题。这种解决方案与现在大热的SDN中的控制器有类似的效果。
SST是另外一种技术,其主要支持厂商是Nicira。与VXLAN和NVGRE相比,STT有较大的不同。其在IP报头内使用了无状态TCP类报头,允许端系统的隧道端点利用驻留在服务器网卡上的TCP卸载引擎(TOE)的TCP分片卸载功能(TSO)。在控制平面上也缺乏具体的解决方案,现在来看这或许是短板,但是如果SDN能够实现,那么这一问题的解决也就显得非常自然了。
总结这三种技术,都并非是传统网络厂商主导的变革,而更多的感觉是从服务器虚拟化之后,从专业的虚拟化厂商角度提出的网络变革方案,虽然有一定的硬件依赖,但是核心却集中在软件领域。是否从网络出发的改变就没有用武之地了呢?。华为企业网络数据中心网络专家潘灏涛的观点是:“这其实是从原来IT和 CT两个不同方向提供的两个不同方案,VXLAN和NVGRE等技术更多是原有的IT厂商解决问题的方式,网络虚拟化的主要功能部署在服务器操作系统内,适用于同构服务器的整合的场景,比如互联网企业,服务器主要是同构的开源的Linux环境,并且具有很强的二次软件开发能力,适用IT网络虚拟化的方案。而从原有CT方向出发的TRILL,SPB以及包括华为的CSS技术等,则可以应用于服务器异构的场景中,可以应用于更为普遍的企业网场景。当然,IT方案中,也不是纯粹软件的方案,也需要网络设备的配合。华为将针对客户的不同需求,提供IT和CT的网络虚拟化方案。”AVAYA亚太区数据网络产品架构师 Gates Zeng的看法是这些技术会在各自的应用场景发展,完全替代的可能性很小。他总结说,从虚拟化厂商一端推出的解决方案往往是把问题在服务器一端,但很少考虑到网络实现和支撑的问题,而从网络厂商推出的方案来看,往往是希望从更大的范围来全面的解决问题。
虚拟化和云有各种各样的网络问题,但是最令人沮丧的是在复杂的虚拟环境里缺乏有效的VLAN,造成数据中心之间延伸远距离网络片段也困难重重。
要解决这些问题,VMware和微软采取了封装和隧道2大策略,分别是:VXLAN和NVGRE。
VXLAN和NVGRE都使用封装和隧道方式来创建大量的VLAN子网,这些子网可以扩展到2层和3层网络。这是为了解决IEEE802.1Q定义的数量有限的VLAN,实现云和专有网络中共享负载均衡的多租赁网络。
如果VXLAN和NVGRE都采取相同的措施,哪个更好?或者它们都能正常使用吗?这没有统一答案。
VXLAN标准:扩展VLAN,支持远距离VM迁移
VMware的VXLAN是为了实现多租户云网络所需要的远距离分割支持, 它使用一个名为VXLAN网络标识符(VNI)的24位标识符,将与应用程序关联的VLAN分组到一个片段中,来分离应用程序数据。这可以使虚拟机在多租户的数据中心间进行迁移。
虚拟机软件不需要修改就能够在VXLAN环境中运行。虚拟机会创建与非VXLAN和非虚拟环境相同的数据包。在VXLAN环境里,数据包被封装在一个外在以太网数据包中,它带有目标服务器或转发数据包的路由器的目标MAC 。然而,在VXLAN环境里,虚拟机间通信需要将广播数据包用通信虚拟机所在的VXLAN片段发到关联IP多路广播分组。
虚拟机也需要进行VXLAN环境以外的通信,这种情况不需要对源虚拟机或目标设备做修改。VXLAN网关会取下VXLAN和UDP的头信息,将这个数据包转发到虚拟机所发数据包的目标MAC上。
VXLAN标准看起来代表着虚拟网络天堂,但是SearchNetworking.com的Fast Packet博主Ivan Pepelnjak持怀疑态度。在他的Fast Packet 博客中,Pepelnjak提出了严肃的问题,网络专业人员在承认这项技术前应该先问下自己:是否真正需要VXLAN,他建议很多人根本不需要VXLAN。
Pepelnjak还指出了VXLAN的不足之处,包括它在如交换机,负载均衡器或防火墙等物理设备的环境内缺乏有效通信。在任何IP网络的VXLAN里, IP多路广播的2层网络洪泛都必须进行这类通信。
和VXLAN标准一样,微软的NVGRE标准提案都使用封装策略来创建大量的VLAN子网,这些子网可以扩展到分散的数据中心和2、3层网络。二者都旨在实现在云和专有网络中共享负载均衡的多租赁网络。然而它们还是有一些区别的。
一些NVGRE标准的重要特点包括指定24位的租赁网络标识符(TNI),NVGRE解决了一些和多租户网络相关的问题。并且使用GRE来创建一个独立的虚拟2层网络,限制物理2层网络或扩展超过子网边界。NVGRE终端通过在GRE头插入INT指示符的方式分隔各个TNI。
两个标准的不同之处在于存储目标地址的位置。VXLAN标准描述了数据包是如何通过通道寻找到目标终端。而NVGRE标准将定位目标的方法延迟到后续版本。
两种提案都认为负载均衡是实现有效运营的必要条件,但是VXLAN可以随机分配端口号来分散负载,而NVGRE使用GRE关键域中的保留8位。
关于NVGRE、VXLAN,微软做了什么?
博主Martn Casado认为,VXLAN和NVGRE还是有发展空间的。但他同时指出没有哪个标准完全成熟——网络虚拟化没有完整的答案。目前两种标准的多点传送功能有限,并且只支持2层的逻辑网络。随着标准的成熟,它们非常有可能提高控制能力。
思科与VMware合作,推出跨LAN进行VMotion的新网通技术VXLAN(VirtualExtensible LAN),改变原先IEEE802.1Q用于辨识位于不同LAN虚拟机的封包格式,从12位增加为24位,可记录更多的封包数据,以分辨不同网段,除了可扩大LAN网段分割的数量,让原先只能在同一个LAN当中移转的虚拟机由VXLAN的封包格式,而能横跨不同LAN进行移转,将Layer3网络层封包辨识机制应用于虚拟化的Layer2数据链路层。
思科表示,该技术将支持新版Nexus1000V、VMwarevSphere 4.1、vSphere5与vCloudDirector1.5,多家厂商已向网际网络工程工作组织(IETF)提出申请,未来VXLAN技术可能成为新的网通标准,让企业可用来扩大VM进行VMotion时的搬移范围。例如,在不同的数据中心之间交换运算流量,以进行负载均衡、规划两地数据中心的异地备份,或连结到公有云数据中心
随着Vmware推动软件定义数据中心,以及很多网络供应商开发围绕VXLAN网络覆盖的技术,网络虚拟化标准可能很快将走出测试实验室,进入生产环境中。现在,网络管理员必须找到一种方法来监测和检验VXLAN,但VXLAN监控和可视化工具目前还不存在。因此网络专业人员必须调整现有的战略以适应VXLAN环境。
去年,思科和Vmware(以及来自Arista、Brocade和Broadcom的支持)在Vmworld大会上推出了虚拟可扩展局域网(VXLAN),这是一个3层网络封装协议,它克服了虚拟环境和多租户网络中虚拟局域网(VLAN)的限制。通过VXLAN,工程师可以启动数千个更多的虚拟网络,这些网络可以跨数据中心延伸到更长的距离。
今年,供应商为虚拟网络推出了一系列第三方服务(例如负载均衡和流量QoS),这使得VXLAN在Vmworld大会上成为了焦点,但供应商推出的技术并没能解决VXLAN监控和可视性的需要。
VXLAN可视性挑战
与大多数封装方法一样,VXLAN带来了相同的可视性挑战。从本质上讲,终端到终端的流量被隐藏在通道内,所以你必须能够“剥开”封装才能进行持续监控和故障排除。这对于查看在网络骨干或者在VXLAN最有可能出现的数据中心间传输的流量非常重要。
VXLAN监控工具:目前有哪些可用工具?
大多数网络管理供应商尚未实施对VXLAN的具体支持,但以下工具可以在一定程度上帮助你:
流量分析。Riverbed公司的Cascade团队宣布将支持Vmware的vSphere分布式虚拟交换机(VDS)产生的IPFIX记录,VDS提供了VXLAN内流量详细信息。这是第一个站出来支持VXLAN的流量分析供应商,其他供应商也可能会追随其脚步,但在可用性方面可能会有所落后。此外,我们还没有看到其他基础设施供应商增加对这种新的IPFIX模板的支持,该模板对于检查虚拟分布式交换机外的VXLAN流量非常重要。另外,在理论上讲,sFlow现在支持VXLAN,虽然供应商将需要建立或扩展sFlow分析工具来显示其中的详细信息。
Wireshark和深度故障排除。Wireshark已经于2011年11月增加了VXLAN解码,这种解码已经成为1.8.0版本以来主线代码的一部分。其他数据包分析工具仍然可以使用,但可能还没有正式的解码。请确认你最喜欢的供应商是否提供。
基于数据包的监控。在数据包检查监控供应商增加这个功能前,似乎我们都无法享受这个功能的优势。好消息是,这对于他们而言,并不是很困难的事情,因为他们已经开始支持查看其它隧道协议(例如通用路由封装和GPRS隧道协议),这只是一个适应过程。你最好要求你的工具供应商提供这个功能,他们通常会优先考虑增加客户要求的功能。
网络监控交换机。一些监控接入设备可以剥离VLAN标头(header),这样就可以根据实际数据包的内容进行监控。能够剥离VXLAN和VLAN的标头将非常有利于预处理流量以用于分析。目前没有网络监控交换机供应商增加了VXLAN剥离功能,不过有些供应商表示他们有这样的计划。
VXLAN环境需要的NCCM
网络管理员还将需要网络变更和配置管理(NCCM)来管理VXLAN的多供应商配置,现在,我们只能通过vSphere外一个元素一个元素地进行定义和配置。虽然很多NCCM供应商表示计划在未来支持VXLAN,但目前他们只是为设备配置提供备份和恢复服务,这些设备配置已经使用元素管理工具进行了设置。
很多供应商都纷纷推出了VXLAN网关--这些网关能够桥接基于软件的网络覆盖层和底层物理基础设施之间的网络服务。这些供应商采用建立在隧道协议(如VXLAN)上的网络覆盖层,部署基于软件的虚拟云计算网络。
这是一个美好的梦想,但网络覆盖层并不能取代物理环境,它们只是抽象化物理环境。物理网络仍然存在,并且需要进行管理。更重要的是,很多网络覆盖层将部署在混合环境内,而在这些环境中,很多数据中心仍然由传统架构统治,并且,网络服务(例如防火墙和负载平衡)仍然部署在硬件中。因此,企业需要一个VXLAN网关以在物理和虚拟网络中扩展服务和管理。Vmware公司在软件中提供VXLAN网关,而硬件支持仍需更好的扩展。
CurrentAnalysis公司服务总监MikeSpanbauer表示:“VXLAN可能是最简单的桥接传统网络到虚拟化的部署方式,使传统网络完全过渡到完全虚拟化的网络。”物理硬件中部署的VXLAN将“优化和控制”网络虚拟化。在现有平台中启用VXLAN让供应商们从传统和虚拟化计算混合环境的角度来推广其产品。Spanbauer表示:“最终这些都会融合在一起,正如OpenFlow和传统2、3层网络一样。”
在Vmworld大会上,Vmware将VXLAN定位为其新装配的vCloud软件套件中网络堆栈的基础。与此同时,其他供应商展示了VXLAN网关支持,它能够将把如负载均衡和防火墙这样的网络服务扩展到VXLAN流量中。
“一些供应商在谈到VXLAN时表示,你不必重新配置你的网络,但当你想在政策、安全和加速等方面作出调整时,你将需要在4-7层调查和操作,”Forrester研究公司高级分析师AndreKindness说道,“所以,你需要进行解封装和重新封装。从数据中心到云环境,你需要检查WAN优化、应用交付控制器、防火墙、入侵防御和入侵检测。没有人能够预见VXLAN流量的发展,所以你必须在所有地方建立网关。”
F5解决方案结合VXLAN支持软件定义网络
应用交付网络(ADN)厂商F5Networks, Inc. (NASDAQ:FFIV) 今日在VMworld®2012 Europe 大会上宣布支持VXLAN功能,通过、VMware和F5解决方案的完美结合,助力企业无缝支持软件定义网络(SDN)计划。F5®BIG-IP® 产品基于VMwarevSphere® 和vCloudDirector®,能够在最新的VMware环境中充分发挥VXLAN的优势。此外,F5还宣布计划为其BIG-IP产品增添VXLAN虚拟隧道终端功能,提供封装和解封装VXLAN包的能力。这一创新将可进一步支持企业可靠地扩展云环境和优化运营。
基于F5与VMware的紧密合作关系,以及最新宣布的VMwareReady™ for Networking and Security Program方面的合作,这些技术合作举措可通过协调部署双方的解决方案而帮助共同客户实现更多的价值。企业可选择物理的BIG-IP设备或BIG-IP虚拟版来充分利用F5全套应用交付网络(ADN)服务,例如安全性、加速和优化技术,同时进一步提高基于VXLAN网络的效率。
F5Networks业务开发部高级副总裁JimRitchings 表示:“F5解决方案占据网络中的战略控制点,使我们能够在与VMware的合作中处于有利位置,协作优化客户的虚拟化和云基础设施。BIG-IP作为一个理想的平台,能够帮助企业在其SDN部署中充分发挥F5的ADN服务优势。为了推进这一目标,F5在未来几个月将继续增强其BIG-IP虚拟版,努力将现有的吞吐性能提高200%。今天的发布以及F5一如既往的在技术创新方面的投入,证明了我们携手VMware支持客户云计划的承诺。”
概述
越来越多的企业追求着更加动态的IT部署模式,因此SDN及其相关技术在当前倍受青睐。F5提供的解决方案可确保客户整个IT环境的可扩展性、安全性和可管理性,从而帮助客户将软件定义数据中心变为现实。F5解决方案的一个关键要素就是能够在不同的网络架构中进行无缝互操作,包括传统的VLAN和诸如VXLAN等其它新兴的SDN框架。
VXLAN提供了一种解决方案,帮助企业将虚拟域与基础网络和虚拟基础设施进行关联,从而增强系统灵活性、可扩展性和性能。利用VXLAN,客户能够跨现有数据中心矩阵创建多租户广播域。这一方法使企业能够创建跨越物理网络边界的弹性逻辑网络,从而更好地支持地理位置分散的系统。它克服了基于VLAN的传统限制,可为处于任何位置的用户带来最高的可扩展性和灵活性、以及优化的性能。
通过采用基于VXLAN的网络部署BIG-IP解决方案,客户将能够:
• 简化虚拟网络的扩展
以BIG-IP解决方案为桥梁,企业将能够扩展其现有的网络,并从使用VLAN迁移到使用基于VXLAN的网络拓扑结构。这可使资源和系统实现可控制的逐步迁移,从而让客户充分相信:采用VXLAN能够满足其需求。同时,这还可使在VLAN环境中运行的应用能够扩展到VXLAN网络,从而按需增加灵活性。
• 跨异构网络应用服务,带来最佳性能
F5的BIG-IP平台能够作为所有ADN服务的网络网关,为使用任何基础网络拓扑的应用工作负载提供服务。举例来说,BIG-IP产品能够以统一、可预测的方式,为在使用不同拓扑的异构云环境中运行的应用提供服务。此外,F5还能够配合SDN技术提供安全性、加速和优化功能,并在整个IT基础设施上智能、有效地部署服务—支持任意地点、任意服务器上的任意工作负载。
• 提升应用移动性和业务连续性
由于基于VXLAN的网络在功能上彼此分离,当虚拟机在数据中心间或云间迁移时,其IP地址无需改变。这可极大提高应用移动性,进而改进灾难恢复、业务连续性和可扩展性。VMware与F5携手,使双方共同的客户能够保留其用户所依赖的重要ADN服务,甚至在虚拟机拆除或重置的情况下也不例外。
证言
VMware全球战略联盟副总裁ParagPatel表示:“随着客户越来越多地采用私有云、公共云和混合云,我们致力于帮助他们克服传统网络的限制,使其虚拟工作负载实现更出色的效率、移动性和网络自动化。具备VXLAN功能的VMwarevCloud® Suite 5.1 与F5的BIG-IP平台的结合,将有助于客户加速云部署,同时丝毫不会影响系统灵活性或持续性。”
IDC企业通信基础设施总监RohitMehra 表示:“尽管SDN并非全新概念,但在近期,SDN的话题引起了企业以及与云相关的IT部门的关注。虽然当前的部署以及SDN的承诺,与业务潜力之间还有一段距离,但它们为IT改进应用及基础数据中心基础设施的灵活性和效率开辟了一条新的途径。在短期内,诸如VMware和F5等技术领导厂商之间的整合计划,将能够为追求SDN的企业带来极大受益。”
很多供应商都纷纷推出了VXLAN网关--这些网关能够桥接基于软件的网络覆盖层和底层物理基础设施之间的网络服务。这些供应商采用建立在隧道协议(如VXLAN)上的网络覆盖层,部署基于软件的虚拟云计算网络。
这是一个美好的梦想,但网络覆盖层并不能取代物理环境,它们只是抽象化物理环境。物理网络仍然存在,并且需要进行管理。更重要的是,很多网络覆盖层将部署在混合环境内,而在这些环境中,很多数据中心仍然由传统架构统治,并且,网络服务(例如防火墙和负载平衡)仍然部署在硬件中。因此,企业需要一个VXLAN网关以在物理和虚拟网络中扩展服务和管理。Vmware公司在软件中提供VXLAN网关,而硬件支持仍需更好的扩展。
CurrentAnalysis公司服务总监MikeSpanbauer表示:“VXLAN可能是最简单的桥接传统网络到虚拟化的部署方式,使传统网络完全过渡到完全虚拟化的网络。”物理硬件中部署的VXLAN将“优化和控制”网络虚拟化。在现有平台中启用VXLAN让供应商们从传统和虚拟化计算混合环境的角度来推广其产品。Spanbauer表示:“最终这些都会融合在一起,正如OpenFlow和传统2、3层网络一样。”
在Vmworld大会上,Vmware将VXLAN定位为其新装配的vCloud软件套件中网络堆栈的基础。与此同时,其他供应商展示了VXLAN网关支持,它能够将把如负载均衡和防火墙这样的网络服务扩展到VXLAN流量中。
“一些供应商在谈到VXLAN时表示,你不必重新配置你的网络,但当你想在政策、安全和加速等方面作出调整时,你将需要在4-7层调查和操作,”Forrester研究公司高级分析师AndreKindness说道,“所以,你需要进行解封装和重新封装。从数据中心到云环境,你需要检查WAN优化、应用交付控制器、防火墙、入侵防御和入侵检测。没有人能够预见VXLAN流量的发展,所以你必须在所有地方建立网关。”
VXLAN网关商业芯片支持
除了基本网络服务外,网络芯片制造商Broadcom公司推出了TridentII系列芯片,该芯片在单个平台上可提供高达1280Gbps的容量,支持直接内置的VXLAN和NVGRE(使用通用路由封装的网络虚拟化)。
与数据中心内简单的网络覆盖层相比,该芯片的Smart-NV功能能够更好地利用VXLAN和NVGRE.例如,通过TridentII芯片交换机,企业将能够使用VXLAN在公共网络传输2层流量,连接数据中心,并实现虚拟负载从一个位置到另一个位置的迁移。
Broadcom公司网络和基础设施高级产品线经理JohnMui表示:“这使在管理程序级部署VXLAN或NVGRE的企业可以将这种可视性扩展到物理网络中。”
Vmworld大会上,VXLAN网关硬件展示比比皆是
在Vmworld大会上,一些网络厂商展示了概念验证型VXLAN网关支持。Brocade展示了其ADX系列应用交付控制器中的VXLAN隧道端点功能;Avaya公司展示了其最短路径桥接(ShortestPathBridging)部署和虚拟企业网络架构(VENA)中对VXLAN的支持,还有Arista展示了其7000交换机系统中的VXLAN支持。
“VXLAN能使工作负载从一个路由网络移动到另一个,或者从一个子网转移到另一个,同时保留IP地址。并且,它允许网络进行扩展,将网络网段(VLAN)的数量增加到1600万,”Arista公司营销副总裁DougGourlay表示,“但(之前)VXLAN并没有解决如何无缝连接物理和虚拟环境的问题。我们的Arista7000交换机在增加硬件VXLAN功能后,允许企业与任何工作负载、物理或虚拟或云环境、基础设施的任何位置进行无缝的互操作。整个虚拟化都是可编程的,并且是在软件中配置的。”
现在,任何端口或者任何端口+VLAN都可以被映射到任何VXLAN网络标识符(VNI),Gourlay解释道:“任何VNI都可以映射到通过我们的交换机连接的任何可用网络服务中。你可以连接到F5负载均衡器、RiverbedWAN优化、Isilon存储或者Coraid存储。”
VXLAN可视性的出现
因为VXLAN使用MAC(消息认证码)overUDP(用户数据报协议)封装,传统网络管理工具缺乏对VXLAN流量的可视性。这种封装让网络性能管理工具“无视”VXLAN框架内的有效载荷,因为它们不能解析VXLAN封装增加的额外的头信息。
Kindness表示:“如果你想通过VLAN发送大量流量,你需要决定流量发送的优先级别。你有4000个VLAN,它们都有自己的服务类别。而在这些4000个VLAN内是一堆虚拟VLAN.你拥有1600万种不同类型的流量,但只有8个控制点。没有人在谈论VXLAN的监控方面的问题,你可以监控你的VXLAN流量,但你无法知道是哪个应用在制造问题。”
为了解决这个问题,RiverbedTechnology和Vmware合作开发了IPFIX(互联网协议流量信息导出)模板,根据Riverbed联盟副总裁VenugopalPai表示,该模板允许Riverbed的Cascade网络性能管理解决方案从VXLAN封装的流量中抽象出应用级别的性能数据,使它了解VXLAN通道内各个应用的性能,并让该平台可以提供网络租户的应用性能数据。
针对如何优化数据中心以太网,支持其提供服务器虚拟化,已经出现了很多新的和推荐的协议。其中有些协议的目的是希望通过创建多个可共享同一物理基础设施的虚拟以太网来实现网络虚拟化,其共享方式有些类似于多个虚拟机共享同一台物理服务器。
适用于网络虚拟化的大部分协议基本上都是利用封装和隧道技术来创建虚拟网络覆盖的。其中业界讨论最多的协议包括VXLAN、NVGRE、STT和SPB MAC-in-MAC。SPB已是IEEE标准,而在有可能成为IETF标准的各种协议中,最有可能成为标准的是VXLAN。
传统意义的网络虚拟化
网络实体的一对多虚拟化并不是什么新概念。最常见的例子就是VLAN和VRF(虚拟路由与转发)。
VLAN可将网络划分为最多4094个广播域,在以太网报头中为每个广播域指定一个12位的VLAN ID。VLAN是在共享同一个包交换LAN基础设施中隔离不同类型流量的一种很方便的方法。
数据中心在大量使用着服务器虚拟化,而VLAN数量上的限制可能产生问题,尤其当大量的租户需要获得支持,每个租户都需要多个VLAN的时候。借助 802.1Q的trunk链路可在数据中心内部扩展VLAN以便支持VM(虚拟机)的移动性,但这样会增加运营成本和复杂程度。即便在基于2层的服务器- 服务器连接的数据中心里,大量的VM每个都有自己的MAC地址,也会给2层交换机的转发表功能带来负担。
VRF是3层网络虚拟化的一种,其中的物理路由器支持多个虚拟路由器实例,每个实例都运行自己的路由协议实例,维护自己的转发表。
和VLAN不同,VRF不会在报头中使用标签为每个分组指定具体的VRF。在每一跳都会根据输入接口和帧的信息获得适当的VRF。另外一个要求是,在数据包经过的端到端路径中的每一个中转路由器都需要配置一个VRF实例,以便能够转发该数据包。
利用覆盖的网络虚拟化
由于传统VLAN或VRF模式存在缺陷,于是开始涌现出众多创建虚拟网络的新技术。其中大多数都是采用封装和隧道技术,在同一个物理网络上通过覆盖来构建多个虚拟网络拓扑。
一个虚拟网络可以是2层的或3层的网络,而物理网络可以是2层的、3层的,或者两者结合的网络,这要取决于采用了何种覆盖技术。利用覆盖技术,外层(封装)报头包含一个24位长的域,携带一个虚拟网络实例ID(VNID),给要转发的数据包专门指定一个虚拟网络。
虚拟网络的覆盖可提供众多的好处,包括:
● 可支持基本上没有数量限制的虚拟网络;例如24位报头可创建高达1600万个虚拟网络。
● 可解耦虚拟网络拓扑、服务类别(L2或L3)和物理网络寻址。这种解耦可避免出现诸如物理交换机上MAC表过大的问题。
● 支持虚拟机的迁移与物理网络的无关性。如果一个VM要改变位置,甚至迁移到新的子网,在覆盖边缘的交换机只须更新其映射表便可反映出这个VM的新位置。新的VM的网络完全可在网络边缘进行预配置。
● 管理多个租户间相互覆盖IP地址的能力。
● 在虚拟网络中支持多路径转发。
各种覆盖协议之间的主要差异在于其封装格式和控制平面的功能性,即允许入口(封装)设备将一个帧映射到适当的出口(拆装)设备。
VXLAN
虚拟可扩展LAN(VXLAN)是在一个3层网络上借助MAC-in-UDP封装,叠加一个2层网络来实现网络虚拟的。VXLAN网段是一个3层构建,可替代VLAN为数据中心的VM生成LAN网段。
因此,一个VM只能在一个VXLAN段内通信或迁移。该VXLAN段有一个24位的VXLAN网络标识符。VXLAN对VM来说是透明的,仍可使用 MAC地址来通信。VXLAN封装借助所谓VXLAN隧道端点(VTEP)来完成,该端点一般是通过一台hypervisor交换机或物理接入交换机来提供的。
VXLAN封装允许2层与任何端点进行通信,只要该端点在同一个VXLAN网段内即可,即便这些端点是在不同的IP子网内也没有关系。这可以让VM的实时迁移越出3层边界。因为MAC帧是在IP包内封装的,因此对个别的2层交换机来说是无需知道MAC地址的。
这样做可以减轻交换机出现MAC地址表的硬件容量问题。覆盖的IP和MAC地址可由VXLAN ID来处理,这个VXLAN ID就像是特定VXLAN网段的限定符/标识符,在这一网段内,IP和MAC地址都是有效的。这种VXLAN控制解决方案是使用基于任意源组播(ASM) 的泛红来传播端系统位置信息的。
如上所述,VXLAN采用的是MAC-in-UDP封装。这么做的理由之一是现代的3层设备可解析5元组(包括4层的源和目的端口)。VXLAN虽然采用了清晰明确的目的UDP端口,但源UDP端口却可以是任何值。因此一个VTEP便可从跨很多UDP源端口的单一VM上传播所有的流。这样便允许中转的3层交换机在仅有的两个VM之间充分利用多路径,甚至是多流的优势。
在一个VXLAN覆盖网络上,如果VXLAN节点需要和网络的传统网段(例如VLAN)中的节点通信,可以用一个VXLAN网关来执行要求的隧道终端功能,包括封装/拆装。该网关的功能可利用硬件或软件来实现。
VXLAN是IETF标准草案的一个子集,支持厂商有VMware、思科、Arista网络、博科、红帽和Citrix。IBM也支持VXLAN。在hypervisor vSwitch和物理交换机上实现这个预标准的现象已开始出现。
NVGRE
采用通用路由封装的网络虚拟化(NVGRE) 用的是RFC 2784和RFC 2890所定义的GRE隧道协议。NVGRE在很多方面和VXLAN相似,只有两处例外。虽然GRE封装不是什么新概念,但大多数网络设备却不会去解析硬件的GRE报头,因为这样做可能影响性能,在多路径数据中心LAN中解析流量分发的5元组哈希表也可能产生问题。
另一个例外是现有的IETF NVGRE标准草案并没有为前面在讲述一般的网络覆盖时所提到的控制平面功能指定一种解决方案,这可能得留待未来的草案去解决,或者留待SDN控制器去解决。
支持NVGRE的一些厂商(例如微软和Emulex)认为,某些性能问题可通过智能网卡来解决,即用智能网卡卸载hypervisor vSwitch上的NVGRE端点处理。智能网卡还拥有与覆盖控制器和hypervisor管理系统集成的API。Emulex还演示过可卸载 VMware分布式交换机的VXLAN处理的智能网卡。
STT
无状态传输协议(SST)是在数据中心的2层/3层物理网络上创建2层虚拟网络的第三种覆盖技术。从理论上看,VXLAN和STT之间有很多相似之处。如隧道端点都是由hypervisor vSwitch提供的,VNID的长度都是24位,可通过控制传输源报头发挥多路径优势等。
STT封装在两个方面与NVGRE和VXLAN有所不同。第一,在IP报头内使用了无状态TCP类报头,允许端系统的隧道端点利用驻留在服务器网卡上的TCP卸载引擎(TOE)的TCP分片卸载功能(TSO)。
利用主机的好处包括较低的CPU使用率和较高的万兆以太网接入链路使用率。STT还可为每个数据包的元数据分配更多的头空间,而元数据则可为虚拟网络的控制平面提供额外的灵活性。有了这些功能,STT便可针对hypervisor vSwitch作为封装/拆装隧道端点进行优化。
STT IETF草案的支持厂商是Nicira,但是也没有具体的控制平面解决方案。不过Nicira自己的虚拟化解决方案包括类似OpenFlow的hypervisor vSwitch和基于中央网络虚拟化控制器的控制平面,可简化虚拟网络的管理。
最短路径桥接MAC-in-MAC(SPBM)
IEEE 802.1aq SPBM采用IEEE 802.1ah MAC-in-MAC封装和IS-IS路由协议,通过VLAN扩展来提供2层网络虚拟化,此外还有通常与SPB相关的无环路等价成本多路径2层转发功能。
VLAN扩展可借助24位虚拟服务网络(VSN)实例服务ID(I-SID)来实现,后者是外层MAC封装的一部分。和其他网络虚拟化解决方案不同的是,在hypervisor vSwitch或网卡,以及现有的支持IEEE 802.1ah MAC-in-MAC封装的交换机硬件上也无须做什么改变。对SPBM而言,控制平面是IS-IS路由协议提供的。
正如IP/SPB IETF草案所描述的,利用外层SPBM MAC的IP封装,还可对SPBM扩展以支持3层转发和3层虚拟化。这一稿草案规定了SPBM节点如何执行Inter-ISID或Inter-VLAN路由。此外,IP/SPB还可通过在网络边缘扩展虚拟路由和虚拟转发(VRF)实例提供跨SPBM网络的3层VSN,而无须也支持VRF实例的核心交换机。
VLAN扩展的VSN和VRF扩展的VSN可在同一个SPB网络上同时运行,为多租户环境提供隔离的2层和3层流量。有了SPBM,所有在接入或汇聚交换机上开始定义SPBM边界的核心交换机都必须是SPBM使能的。目前可用的SPBM硬件交换机有Avaya和阿尔卡特-朗讯的。
其他可替代方案
有关网络虚拟化的探讨,如果没有考虑到思科两种协议中的至少一种,那将是不完全的,这两种协议是:覆盖传输虚拟化(OTV)和位置/ID分离协议(LISP)。
OTV是为数据中心内的VLAN在WAN或互联网上的扩展做了优化的,采用的是MAC-in-IP封装。它使用IS-IS路由协议扩展,通过将MAC地址的可到达性广而告之,防止WAN上目的端点未知的泛洪流量。
LISP是一种IP-in-IP封装技术,即便在端系统迁移到不同子网时也允许其保留IP地址(ID)。利用LISP的VM迁移性,IP各端点,如 VM,便可迁移至任何地方,而不必管它们的IP地址是什么,同时又能维持客户端流量的直接路径路由。利用映射VRF给LISP实例ID来创建3层虚拟网络的方法,LISP还可支持多租户环境。此外,OpenFlow的未来版本毫无疑问还将支持某些标准的覆盖功能。而在此之前,OpenFlow有可能提供另一种类型的网络虚拟化,即通过基于分片流来隔离网络流量来实现网络虚拟化。实现这一点的一个非常简单的方法就是通过给OpenFlow控制器增加一个过滤层来隔离MAC地址集,而不必依赖VLAN。Big Switch的v0.85 Floodlight控制器已经可提供此类功能。在多租户环境中,OpenFlow控制器也有可能支持每个租户一个分离控制器。
总结
网络领域正处在一个剧烈变化的时代。这种巨变的主要技术推手之一就是从服务器虚拟化开始的虚拟化技术的持续发展,这一发展如今已开始影响到了网络。这既包括了思科的两个协议:覆盖传输虚拟化和位置/ID分立协议,也包括了众多基于封装和隧道技术的新技术,如VXLAN等。此外,IT部门对SDN的关注程度也开始加速。网络虚拟化就是和SDN有关的主要用例之一。
这篇关于vxlan总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!