SDN简介

  • 目前网络系统的亚健康问题逐渐严重起来,他们的主要症状是:多元、多变的网络上层应用与业务和相对稳定的网络架构设计以及系统运维之间的矛盾。一方面,上层应用需要网络在规模扩展和服务能力上具有很大的灵活性,能够体现客户为中心,提供应用服务与业务体验所需要的自适应性和动态性。而另一方面,我们传统的网络规划和设计是以应用需求相对明确和稳定为前提的,包括网络架构、拓扑、ip连通性、安全与QoS策略,都是根据明确的应用需求预设定义好的,也就是说它是相对静态的。所以,尽管我们在网络的规划设计阶段强调了冗余设计,从而可以在运维过程中根据上层应用变化做出一定的调整和应对,但是空间是相对有限的,而且传统网络的部署与运维是以人工为主、自动为辅,再加上在分布式网络架构中,网络设备类型以及厂家来源的多样性,调整的难度和复杂度是非常大的。

  • 要克服和解决上述矛盾,必须分析并找到问题的根源,归结起来,有两方面的根本原因,一是传统网络及其设备的只可配置、不可编程,这会带来什么样的制约呢,我们来看一个生活化的例子,某天,你需要去超市采购一个电饭煲,不同品牌与型号的电饭煲通常会有不同的烹饪模式或程序预设,而你也会根据自己的饮食需求与喜好选择合适的品牌与型号,但不管这款电饭煲有多少事先的预制模式与程序,你只能在它所提供的模式或程序中进行选择,它并不能适应你的需求新变化,为你提供自主开发新模式的功能,其次是网络的分布式控制与管理架构带来的制约,在这种架构下,网络的部署、配置与管理需要落到每台设备上去手动完成,每一台设备上都紧耦合了三个平面,分别被称为管理平面,控制平面和数据平面。其中,管理平面为配置和管理网络设备提供用户访问界面或接口,如你平常所熟悉的命令行界面或者图形界面;在控制平面中,预设了对不同网络协议和功能的支持,我们在管理平面中输入的配置与管理指令会在控制平面中生成相应的控制表,如数据链路层的MAC交换表、网络层的路由表、MPLS标签表、ACL访问控制表等,那么控制平面的这些控制表用来干什么呢?它是数据平面数据转发的依据,也就是说,数据平面会根据控制平面相关控制表给出的信息,进行具体的报文处理或转发,关于分布式网络控制与管理架构的问题,我们也可以用这么一张图来形象的描述,在这种分布式的架构下,如果网络中新增加了一个应用,那么这个应用的数据包所流经的所有网络设备都可能要在规划与配置上做出相应的改变,显然,管理的工作量非常大,特别是当网络中的应用非常多元与多变的时候,网络的管理效率就会变得非常低,从而对上层应用与业务的弹性响应也就变得非常的差。从上面的分析可以发现,矛盾的根源不在于网络系统的生命周期,而在于我们所依赖的设计思想、网络架构以及管理模式,见招拆招,针对上述问题的根源,软件定义网络技术引入了两项重要的改变与创新,首先是能够弹性响应上层应用变化的网络可编程,从而能够及时响应上层应用与业务的变化,对网络的规划与配置做出自适应的动态调整,其次,在分布式网络设备连接之上,引入一个集中统一的控制与管理层来实现对网络的全局控制与管理和对上层应用与业务的动态响应,为此,需要对原有网络设备中的管理平面、控制平面和数据平面进行解耦,在设备中仅保留原来的数据平面,将控制平面和管理平面拉出来,拉到哪里呢?拉到我们刚才说的那个集中控制与管理层,于是,一种基于软件定义的全新的网络架构就应运而生。

    SDN简介_第1张图片

  • 软件定义网络包含了三层架构,最上层的网络的应用层,包含了网络所要承载的多元业务与应用,最下层我们称其为网络的基础设施层,乍一看,仍然是大量网络的设备在那里存在,但是请你注意,这些设备,已经不再是传统的网络设备,它的控制平面和管理平面都已经被拉出来了,所以这样的设备,已经变得非常的简单,他们只承担了包转发功能,所有设备中,被抽取出来的控制与管理平面到哪里去了呢?都到了中间的集中控制层,也称为SDN集中控制器,这个控制器非常关键,它在应用业务层和基础设施层之间起到了承上启下的全局管控作用,在控制器和应用层之间,提供了不同的API接口,我们也把它们称为北向接口,通过这些接口实现控制器与上层应用的交互,在控制器与基础设施层之间,提供了控制数据平面接口,我们也把它称为南向接口,所有在SDN控制器里面通过软件定义生成的各种流表,都通过南向接口灌到基础设施层相关的网络设备上,引导和决定这些设备的包转发行为,通过这种控、管、转的分离,网络的控制与管理效率就会更高,弹性的响应也会更好。
    SDN简介_第2张图片

  • 其实,关于SDN,你可以把它与计算机系统模型做一个类比,这里SDN的基础设施层相当于计算机的裸机,SDN控制器相当于计算机操作系统,SDN北向接口的API相当于操作系统的用户与应用程序接口,可以这么说,软件定义网络为网络系统的生命周期从应用需求到规划设计到部署实施,到运行维护,融入了很多新的色彩,定义了很多新的内涵,引导网络进入了全新架构,归纳起来有这么四个方面:底层网络设备通过解耦实现了简单化,网络的管理通过集中控制器实现了全局化,网络的运维通过SDN南向接口与协议实现了自动化,网络的应用通过SDN北向接口与协议实现了更加弹性的人性化。

你可能感兴趣的:(sdn,网络)