《新一代SDN——VMware NSX 网络原理与实践》——1.2 认识SDN

1.2 认识SDN

介绍完为什么需要SDN和SDN的起源后,是时候介绍SDN到底是什么了。理解SDN架构,对于理解VMware NSX网络虚拟化解决方案的三个平面架构以及其逻辑网络、物理网络解耦的设计,是非常重要的——SDN的核心思想是控制平面与转发平面的分离,这与NSX中管理平面、控制平面和数据平面的设计如出一辙。

SDN其实直到现在也没有清晰的定义,但是其核心理念已逐渐被人们接受。本章将下来会讨论SDN的理念、架构,以及它如何面对当前的IT难题。

1.2.1 SDN是什么
SDN是Software Defined Network的缩写。正如业内很难回答“云计算”的定义是什么一样,业内也很难回答SDN的定义。但是SDN在经历了几年的发展后,业内也对其概念达成了一个基本的共识。前文已经介绍了SDN的历史,在这里我们介绍一下SDN的模糊定义。

SDN其实并不是一种技术,也不是一种协议,它只是一个体系框架,一种设计理念。这种框架或理念要求网络系统中的控制平面和转发平面必须是分离的。在转发平面,它可能希望与协议无关,管理员的意志最重要。管理员可以通过软件来执行自己的意志,控制转发行为,并驱动整个网络。

除此之外,SDN的理念还希望控制器与转发平面的接口标准化,我们把这样的接口称为南向接口。因为如果软件想要真正控制转发行为,就应该尽量不依赖特定的硬件。除了硬件设备,该控制器也可以对网络中的应用程序进行集中控制,一般来说这是通过硬件提供一些可编程的特性来实现的。控制应用程序的接口称之为北向接口。

当前业内比较认可的SDN的特征属性如下:

控制平面与转发平面分离;
开放的可编程接口;
集中化的网络控制;
网络业务的自动化应用过程控制。
其中前两点是SDN的核心。如果一个网络系统具备了这两点特征,那么就可以宽泛地认为这是一个SDN架构。

OpenFlow作为目前主流的南向接口协议,这个名词当然被炒得火热,有人认为SDN就是OpenFlow。这是不正确的。因为SDN是一种框架,一种理念,而OpenFlow只是实现这个框架的一种协议。

如今,VMware公司、Cisco公司和Microsoft公司都在大力宣传自己的网络虚拟化(Network Virtualization)技术。有人认为网络虚拟化也是SDN,这种观点是不完全正确的。早期的网络虚拟化雏形(如早期的Cisco Nexus 1000v和VMware内嵌在vSphere里的虚拟交换机),指的是在服务器虚拟化平台中加一层虚拟交换机,用于与虚拟机连接,细分虚拟机的接口策略,而不是在服务器网卡上用一个Trunk把所有VLAN封装并连接上行链路。而现在,网络虚拟化特指实现方式是基于一种叫做Overlay技术(现在还没有很好的中文翻译,我们姑且先把它叫做“叠加网络”技术)的网络虚拟化。有了这种技术,用户可以突破一个网络系统中的VLAN数量、MAC地址容量等的限制,轻松跨越三层网络打通二层隧道,对于超大规模数据中心、多租户数据中心、双活/灾备数据中心来说,这种技术相当合适。Overlay可以由物理网络搭建,也可以通过服务器的hypervisor来搭建。通过物理网络搭建的Overlay并没有真正实现控制平面和转发平面的分离,不符合SDN特征。通过服务器的hypervisor搭建的Overlay,即基于主机的Overlay,现在一般会有集中的管理平面和控制平面,以及分离的转发平面。因此,网络虚拟化是SDN发展到一定阶段的必然趋势,可能是SDN的一个分支,但不是SDN本身。因此,有人把基于主机的Overlay称为新一代SDN,因为它和第一代SDN有很大区别。本书的重点——VMware NSX网络虚拟化解决方案正是基于SDN思想的网络虚拟化的绝佳解决方案,是新一代SDN,后文会详细阐述。

一些运营商和软件厂商现今正在推广自己的网络功能虚拟化(Network Function Virtualization,NFV)技术。NFV也不是SDN,它的目标是利用当前的一些虚拟化技术,在标准的硬件设备上运行各种执行网络功能的软件来虚拟出多种网络设备。由于这些虚拟的网络设备(如虚拟交换机、虚拟路由器、虚拟防火墙、虚拟负载均衡设备)可能会有统一的控制平面,因此NFV和SDN是一种互补的关系。VMware NSX具备NFV的属性——NSX使用x86服务器的软件来实现各种网络功能,但由于NSX中的Overlay属性过于明显,因此VMware更愿意将NSX解决方案称为一种网络虚拟化解决方案,而不是NFV解决方案。

另外,近来一些热门词汇如Openstack、Cloudstack、OVS等,与SDN都没有任何直接的关系。其中Openstack和Cloudstack是云管理平台,而OVS之前已经提到过了,是SDN鼻祖Nicira公司开发的一款虚拟交换机,现在已经开源。这些新技术和SDN也是一种互补的关系,可以共同实现融合解决方案。

1.2.2 SDN架构
图1.6所示为SDN架构中的各个层面,它直观地阐述了SDN架构,我们具体解释一下图中的各个层面。

基础设施层:该层主要是网络设备,可以将这一层理解为“转发平面”。这些工作在“转发平面”的网络设备可以是路由器、物理交换机,也可以是虚拟交换机。所有的转发表项都贮存在网络设备中,用户数据报文在这里被处理和转发。网络设备通过南向接口接受控制层发来的指令,产生转发表项,并可以通过南向接口主动将一些实时事件上报给控制层。
南向接口:南向接口是负责控制器与网络设备通信的接口,也就是控制层和基础设施层之间的接口。在SDN的世界里,人们希望南向接口标准化(这只是一个理想,还未成为现实,但OpenFlow协议是目前主流的南向接口协议,未来能否成为标准协议也有待观察)。只有这样,SDN技术才能摆脱硬件的束缚,否则SDN技术永远只能是特定的软件用于特定的硬件上。
控制层:该层就是前文所说的“控制平面”,该平面内的SDN控制器可能有一个,也可能有多个;可能是一个厂家的控制器,也可能是多个厂家的控制器协同工作。一个控制器可以控制多台设备,甚至可以控制其他厂家的控制器;而一个设备也可能被多个控制器同时控制。一个控制器可以是一台专门的物理设备(如NEC的SDN控制器),也可以运行在专门的一台(或多台[成集群工作])物理服务器上(如Cisco的APIC),也可以通过虚拟机的方式部署在虚拟化环境中(如VMware NSX Controller)。
北向接口:北向接口指的是控制层和应用之间的接口。在SDN的理念中,人们希望控制器可以控制最终的应用程序,只有这样才能针对应用的使用,合理调度网络、服务器、存储等资源,以适应应用的变化。目前北向接口尚未标准化,也没有类似OpenFlow这样的主流接口协议。一些组织和公司希望将其标化,但是非常困难——它和南向接口的标准化相比,显得异常复杂,因为转发平面毕竟万变不离其宗,容易抽象出通用接口,而应用的变数则太多了。
应用层:该层主要是企业的最终应用程序,通过北向接口与控制层通信。该层也可能包括一些服务,如负载均衡、安全、网络监控等,这些服务都是通过应用程序表现的。它可以与控制器运行在同一台服务器上,也可以运行在其他服务器上,并与控制器通信。该层的应用和服务往往通过SDN控制器实现自动化。前文所说的一些时段应用以及服务需求量的激增和激退,在SDN的环境里应当自动完成。对于这种自动化,英文资料中经常使用一个叫Orchestration的名词,该词的原意是“管弦乐”、“乐曲编排”、“和谐演奏”,在这里可以引申为将各种技术糅合在一起,实现数据中心的自动化,最终达到为应用提供最好的服务效果。
1.2.3 SDN如何应对当前IT环境
介绍完SDN的几个工作层面,接下来讨论SDN究竟如何应对前文提到的IT行业架构遇到的问题。SDN解决这些问题的核心思想是改变传统网络中控制数据流的方式。在传统网络中,报文从源转发到目的的过程中,转发行为是逐条控制并独立进行配置的,这种控制也不是统一的。

而SDN是将每台设备里的控制平面剥离出来,放到一个控制器中,由这个控制器通过统一的指令来集中管理转发路径上的所有设备。这个控制器知晓整网的拓扑,知晓转发过程中所有的必需信息,而且上层应用程序也可以通过控制器提供的API以可编程的方式进行控制,这样可以消除大量手工配置(无需管理员登录到每一台设备上进行配置),从而大大增加了网络灵活性和可视性,提高了部署和维护效率。

我们来解析一个SDN的应用案例:一个对外提供服务的托管数据中心,需要增加一个租户,并为这个租户增加一台新的虚拟机。在SDN环境中,只要管理员将其属性定义好,管理平台就可以自动按照其所需资源进行配置——申请多少内存,申请多大容量的存储空间,虚拟网络和物理网络的路由策略、安全策略、负载均衡策略,都是自动完成的。而这一切的配置都可以通过SDN控制器自动发布到各个设备中。这样一来,一个业务上线的时间,可能由10小时缩短为10分钟——如果没有SDN,网络管理员、服务器管理员和存储管理员必须通力合作,在不同的网络设备、服务器虚拟化软件、存储设备上进行逐步配置和资源分配,而且中间还可能会产生错误配置。这也解决了我们之前提到的网络资源无法实现按需自助式服务的问题。

此外,SDN还可以更细颗粒度地进行流量优化。Nicira创始人、SDN的提出者卡萨多先生曾经用一个生动的比喻形容数据中心内部的流量:小股数据流构成的突发流量称为“老鼠流”,持久且负载较高的稳定流量则称为“大象流”。对于数据中心中大多数流量的性能问题,我们都可以将其视为大象踩着老鼠前进的状况,而从用户的角度看,就是持久稳定的流量挤占了小股突发流量的资源。而在SDN的帮助下,系统可以对流量进行智能识别。换句话说,基于SDN的网络系统会辨认出其是否属于大象流,并对这些流量加以优化、标记、识别,确保它不会踩着老鼠前进,这样就达到了大象流和老鼠流的共存。这是因为在SDN架构中,控制器可以知晓全网的拓扑和健康状况。

SDN的引入还能防止厂商锁定。只要设备支持SDN,支持可编程,那么系统管理员就可以通过南向接口和北向接口,通过控制器对设备进行控制,改变转发行为。这也是Google、Facebook在其内部数据中心大力推进SDN的原因之一。厂商锁定问题不仅带来成本问题(尤其是大型数据中心网络),还会受其创新能力、私有协议的限制,带来扩展性和维护方面的问题。而有了SDN后,网络管理员需要学习的知识大大减少——异构设备、私有协议等都大大减少了,只要SDN控制器的界面足够友好和美观即可。就算SDN控制器的界面操作性一般,如果网络管理员的编程能力强,部署和运维也就不是问题。当然,真正解决了厂商锁定的问题之后,可能会导致白牌交换机大行其道,这显然是网络硬件厂商不愿意看到的。

理论上,越是复杂的网络越适用SDN架构。在当前的大型复杂数据中心中,如果现有网络问题到了非解决不可的时候,也就是SDN发挥其用武之地的时候。

1.2.4 SDN相关的组织以及厂商对SDN的态度
由于各个设备和软件厂家、各个大专院校和研究机构对一项技术有不同的理解,这就需要成立一个组织去推动这项技术的发展,如推动网络协议标准制定的IEEE和IETF。按常理来说,一项技术只应由一个标准组织去推动,这样才可以集中力量将其标准化,但是事与愿违——不同的厂家和科研机构有不同的见解和利益关系,这就产生了分歧,导致出现了多个组织去推动某一项技术的发展,SDN也不例外。

此外,各大IT厂商由于在产品线、功能和特性上的差异,因此它们看待SDN的角度也不尽相同,应对SDN浪潮的手段也不同。

目前,SDN领域最具影响力的组织就是ONF(Open Networking Foundation)了。它由Google、Facebook、Microsoft等公司共同发起(这些发起者都不是网络设备制造商),成立于2011年,是最早着手定义并希望推动SDN标准化的非盈利组织,其科研和活动经费来自于会员公司的赞助和年费。该组织成立至今已有近5年时间,其主要工作成果就是制定了OpenFlow、OF-Config版本的标准。该组织也是全球范围内各个厂商间SDN互通互联测试的组织人和协调人,并定期组织学术研讨会。

在SDN被提出后的很长一段时间,ONF都是唯一的标准化组织,但是2013年4月,18家IT厂商联合推动了ODL(Open DayLight)的成立。这18家厂商是Brocade、Cisco、Citrix、Ericsson、IBM、Juniper、Red Hat、Microsoft、NEC、VMware、Arista Networks、Fujitsu、HP、Intel、PlumGrid、Nuage Networks、Dell与Big Switch(后退出)。这18家公司绝大部分是IT行业内的巨头,多为网络设备制造商,它们不满ONF制定的游戏规则,另起炉灶。

不难看出,ONF站在网络用户的角度,希望彻底摆脱厂商锁定,希望所有的接口都能被标准化,而硬件也应当是标准化的硬件,可以由标准的OpenFlow协议去管理。但由设备厂商主导的ODL不同,它们希望部分接口被标准化,保证设备厂商的利益,防止白牌交换机侵蚀其市场。

此外,运营商和一些软件公司基于SDN的一些想法,提出NFV(前文有提到)。斯坦福大学、加州大学伯克利分校联合了一些IT公司,建立了开放网络研究中心(Open Networking Reserch Center,ONRC)。IEEE、IETF这两个网络界的龙头组织也有一些想法,由于不是本书重点,在这里不多赘述。

尽管网络设备制造商联合发起了ODL组织,但是它们并没有抛弃ONF。换句话说,由于OpenFlow巨大的影响力,网络设备厂商还没有牛到能完全另起炉灶的程度。Google、Facebook旗帜鲜明地站在ONF这边,没有加入ODL。Amazon是个特例,它既没加入ONF,也没加入ODL,而是封闭式地发展自己的AWS(Amazon Web Service)。而那些耳熟能详的网络设备制造商或软件公司,如Brocade、Cisco、Citrix、Juniper、IBM、NEC、VMware、Arista Networks、Dell、Alcatel-Lucent、H3C、华为,都既是ONF会员,也是ODL的黄金/白银会员。这些厂商都开放了自己物理或虚拟网络设备的接口,可以将自己的设备交给SDN控制器管理。然而,这些IT厂商也都会在自己的交换机中加入有自己特色的东西,否则自己的设备岂不是任由其他厂家摆布,任由别人的控制器来定义了吗?因此,这些IT巨头们有些靠自己研发,有些靠并购,希望在SDN浪潮下不至于被竞争对手落下。它们大多使用Hybrid模式,而非纯OpenFlow的方法来实现SDN。对于自己设备的可编程接口,除了支持OpenFlow外,还加入了JSON API、XMPP、Phyton API等。在芯片方面,它们有些使用商用芯片,有些混合使用商用芯片和自研芯片。而这些内部研发和并购中,又以VMware收购Nicira和Cisco收购Insieme最为重磅——VMware收购Nicira后推出的NSX解决方案、Cisco收购Insieme后推出的ACI解决方案,都是将SDN和近年兴起的网络虚拟化技术完美融合在了一起。而Microsoft作为史上最成功的IT公司之一,自然不甘落后,Hyper-V在Windows Server 2012版本中也增加了基于其自主研发的NVGRE协议的网络虚拟化功能。但Microsoft并没有特别强调SDN,且刻意淡化OpenFlow(虽然它们是ONF的发起者和核心会员,且加入了ODL)。此外,Juniper收购SDN初创公司Contrail后也推出了同名的Contrail解决方案。

时间: 2024-08-08 02:31:05

《新一代SDN——VMware NSX 网络原理与实践》——1.2 认识SDN的相关文章

《新一代SDN——VMware NSX 网络原理与实践》——导读

**前言**当企业需要搭建一个"云"的时候,无论它是公有云还是私有云,其基础架构一定涉及网络.计算和存储这三大块.NIST对云计算的定义中,明确提出了云中资源需要实现"按需自助服务".对于计算和存储,我们通过最早由VMware主导的服务器虚拟化技术,已经很好地实现了这样的要求,而之前对于网络的"按需自助服务",则一直实现得不理想,这是因为传统物理网络很难在虚拟化环境中进行资源的调配.因此,传统网络阻碍了数据中心的自动化实现,我们需要通过创新,用一

《新一代SDN——VMware NSX 网络原理与实践》——第1章 SDN与网络虚拟化的起源与现状 1.1SDN的起源和发展历程

第1章 SDN与网络虚拟化的起源与现状 SDN是一个内容丰富却又定义模糊的名词.说它内容丰富,是因为在当今云计算大行其道的情况下,SDN已成为实现云计算的一种重要方法,其技术已席卷了企业私有云和公有云服务提供商的数据中心方方面面.说它定义模糊,是因为SDN还不像其他计算机或网络技术被一些组织或企业进行了标准化定义,当人们谈到SDN时,可能还在讨论"SDN究竟是什么"这个问题. 网络虚拟化则是云计算和SDN发展到一定阶段的产物.服务器虚拟化技术的飞速发展间接催生了云计算的兴起.而在云计算

《新一代SDN——VMware NSX 网络原理与实践》——1.3 网络虚拟化的兴起

1.3 网络虚拟化的兴起 前文已经提到,网络虚拟化是云计算和SDN发展到一定阶段的产物,因此可以认为网络虚拟化是新一代的SDN.而云计算又是随着服务器虚拟化技术飞速发展而诞生的.因此,我们从介绍服务器虚拟化技术开始,引入网络虚拟化技术. 早期的网络虚拟化与现在的网络虚拟化在架构上有很多的不同,这会在本节中进行介绍,以使得读者在后续章节更好地理解VMware NSX网络虚拟化技术. 1.3.1 服务器虚拟化的日趋成熟近年来,服务器虚拟化技术被炒得火热,也日趋成熟.它是伴随着x86计算机性能飞速发展

《新一代SDN——VMware NSX 网络原理与实践》——第2章 NSX网络虚拟化概览 2.1VMware NSX网络虚拟化解决方案简介

第2章 NSX网络虚拟化概览 网络虚拟化技术诞生后,有不少厂商都推出了所谓的网络虚拟化解决方案.这些厂商实现"网络虚拟化"的方式各异,有些是自己研发的项目,有些是通过收购,有些是利用开源项目进行再开发.而VMware NSX网络虚拟化平台的基本架构到底是怎样的,它与别的厂家有哪些不同?这些问题会在本章进行探讨. 2.1 VMware NSX网络虚拟化解决方案简介 尽管VMware NSX网络虚拟化平台是通过收购Nicira而获得的,但是在收购一年多时间之后,NSX才正式发布.在这一年多

《新一代SDN——VMware NSX 网络原理与实践》——2.3 各厂商的网络虚拟化解决方案

2.3 各厂商的网络虚拟化解决方案 介绍完几种Overlay技术之后,我们就需要对比一下几大厂商基于Overlay技术的网络虚拟化解决方案了.各家厂商的解决方案各有千秋,各有利弊.在这里介绍它们的网络虚拟化解决方案,目的是让读者对整个行业的趋势有一个了解,也让读者了解VMware NSX网络虚拟化解决方案在行业中所处的地位. 2.3.1 Cisco ACI解决方案 Cisco ACI是Cisco公司提出的SDN和网络虚拟化解决方案,它的主要组件有应用策略基础设施控制器(APIC)和ACI交换矩阵

《新一代SDN——VMware NSX 网络原理与实践》——1.4 总结

1.4 总结 SDN是为了改变当前IT架构部署和运维的复杂性而提出的. SDN诞生于斯坦福大学实验室,课题组的核心人员后来成立了Nicira公司,该公司于2012年被VMware收购. SDN的核心思想是控制平面与转发(数据)平面的分离.SDN目前主流的南向接口控制协议是OpenFlow. 网络虚拟化是为了改变当前IT架构的复杂性和横向扩展能力而提出的,当前主要基于Overlay技术实现. 现今的网络虚拟化技术是SDN发展到一定阶段的产物,基于SDN架构的网络虚拟化解决方案,即新一代SDN可以在

《新一代SDN——VMware NSX 网络原理与实践》——2.2 当前主流的Overlay隧道技术

2.2 当前主流的Overlay隧道技术 目前,市面上除了VMware外,Cisco和Microsoft等公司都能提供网络虚拟化解决方案.在介绍其网络虚拟化解决方案并进行对比之前,需要先讨论一下现在的网络虚拟化使用的Overlay技术分为哪几种.经各大厂商努力,已经有三种Overlay技术成形,即VXLAN.NVGRE.STT. 2.2.1 VXLAN技术 首先讨论VXLAN.VXLAN是Virtal Extensible LAN(虚拟可扩展局域网)的缩写.它是为了解决前文提到的数据中心的三个问

《新一代SDN——VMware NSX 网络原理与实践》——2.5 总结

2.5 总结 NSX的核心设计思想与服务器虚拟化的设计思路如出一辙,都是在底层硬件中抽象出所需的服务 NSX分为管理.控制.数据三个平面,每个平面各有自己的组件. 目前,NSX-V中使用的Overlay技术是VXLAN,NSX-MH则使用STT作为默认的隧道技术.VMware正针对其现存问题与其他厂商共同研发新的Geneve协议. NSX.Cisco ACI.Microsoft的网络虚拟化解决方案各有千秋. NSX有4门相关的认证考试--VCA6-NV.VCP6-NV.VCIX6-NV.VCDX

VMware vSphere 网络设置最佳实践

正确的 网络配置是VMware vSphere架构的基础.为实现VMware网络,IT管理员需要了解vSphere宿主机的物理接口和虚拟交换机.学习如何规划vSphere的虚拟网络.VMware vSphere网络从正确安装vSphere网络的ESXi宿主机开始,包括对分布式.标准.虚拟或物理交换机的选择.最后还有后配置和部署.对虚拟网络的流量监控.配置虚拟网络的第一步是把vSphere的部署集成到现有架构.您需要确实了解现有架构的状态. 例如,如果网络采用了 iSCSI(Internet sm