SDN的体系架构

SDN网络的整体架构,分为三层,从上到下分别是应用平面、控制平面和转发平面。 整个架构的核心,就是SDN控制器。

上北下南,SDN控制器向上与应用平面进行通信的接口,叫做北向接口,也叫NBI接口(northbound interface)。

1.SDN控制器向下与数据平面进行通信的接口,叫做南向接口,也叫CDPI接口(control-data-plane interface,控制数据平面接口)。 北向接口相对来说比较好搞,麻烦的是南向接口及其协议。因为它直接影响到SDN控制器的命令能否准确下达到无数的底层网络设备。 SDN两大接口: 1.数据平面与控制平面的接口(CDPI):南向接口 主要功能:对所有的转发行为进行控制、设备性能查询、统计报告、事件通知等。

ONF架构最突出的特点:标准化的南向接口协议(Openflow),不依赖于底层具体厂商的交换设备。 南向接口的关键技术:转发面开放协议(南向接口协议):该协议允许控制器控制交换机的配置以及相关 转发行为,比如ONF定义的转发面开放协议是Openflow它将转发面抽象为一个或多个流表组成的转发模型。网络控制器通过Openflow协议下发流表到具体的交换机从而控制交换机的具体行为。

2.控制平面与应用层面的接口(NBI):北向接口 主要功能:负责向应用层提供抽象的网络视图,使应用能直接控制网络的行为。北向接口是一个开放的与厂商无关的接口。北向接口的关键技术:SDN北向接口的设计:设计的目的是将网络能力封装后开放接口,上层业务调用。目前REST API 成为SDN北向接口的主流设计。

SDN的实现思路

SDN的实现思路是不改变传统网络的实现机制和工作方式,通过对网络设备的操作系统进行升级改造,在网络设备上开发出专用的API接口,管理人员可以通过API接口实现网络设备的统一配置管理和下发,改变原先需要一台台设备登录配置的手工操作方式,同时这些接口也可供用户开发网络应用,实现网络设备的可编程。 实现思路是以现行的IP网络为基础,在其上建立叠加的逻辑网络,屏蔽掉底层物理网络差异,实现网络资源的虚拟化,使得多个逻辑上彼此隔离的网络分区,以及多种异构的虚拟网络可以在同一共享网络基础设施上共存。 当前SDN实现的主流方案,该类解决方案基于开放的网络协议,实现控制平面与转发平面分离,支持控制全局化,获得了最多的产业支持,相关技术进展很快,产业规模发展迅速,业界影响力最大。

“交换”即完成数据信息从设备入端口到出端口的转发。由此可见,当它被用来描述数据网络第二层的设备时,实际指的是交换机;而当它被用来描述数据网络第三层的设备时,通常指的是路由器或者三层交换机。

直通(Cut-Through):交换机仅对数据帧(二层网络对数据包的特有称呼)的前6个字节的信息进行接收和分析,并将数据帧的其余部分直接剪切(即所谓的Cut)到出端口上。这是因为数据帧的前6个字节包含了该数据帧的目的MAC地址,这已经足以供交换机做出转发决策。直通模式具有最小的转发延迟,但是它并不检查数据的完整性,因此可能会把能够导致以太网冲突的“坏包”转发出去,从而产生网络可靠性问题。

零碎片(Fragment-Free):交换机首先对数据帧的前64个字节进行接收和解析,再进行转发。之所以选择64个字节的长度,是因为经验表明在以太网络中,绝大多数的“坏包”都能在这些字节的处理过程中被检测到。这种模式虽然有可能造成极少量的“坏包”漏检,但是它对网络的整体性能影响不大,因此在很多应用场景中又被称为“快速转发(Fast-Forwarding)”。

存储转发(Store-and-Forward):交换机需要对整个数据帧的内容进行接受和解析,并开展数据帧的完整性检验等操作,以有效地避免出现错误。虽然该模式增加了转发延迟,但是考虑到当前的处理器或者ASIC已经具有足够的性能,因此,在SDN交换机的设计与实现中,仍旧建议其采用这种模式用于数据交换。

SDN的实现方式及局限性

SDN的实现方式 简而言之,SDN的SDN就是靠转控分离、集中控制、开放可编程这三个途径来颠覆(注意是颠覆)网络。

具体的实现有以下三个方案:

1.基于开放协议的方案

此类协议方案根据SDN理念创建理想网络架构,能够真正意义,全方位的将控制层和转发层剥离,是最具有革命性意义的方案,能为用户摆脱厂商锁定而推出的方案,实现的方案包括ONF SDN 和ETSI NFV 。当然了,这种方案要求也更高,目前能够推出的厂商屈指可数,代表企业有华为、博科、戴尔和NICIRA(已被VMware收购)。

2.基于叠加网络的方案

这种方案通过在原有网络基础上创建虚拟网络隔离底层设备之间的不同和复杂性,从而实现网络资源池化。对已有的网络资源进行逻辑分离,并运用多租户的模式来管理网络,更好的满足大数据、云计算等新兴业务的需求。目前主要实现的方案包括VXLAN 、NVGRE、NVP等,代表企业有Vmvare和微软。

3.基于专用接口的方案 这种方案的实现思路和以上两种不太一样,他不会改变传统网络的实现机制和工作方式,而是通过改动网络设备和操作系统,在网络设备上开发出专用的API接口。管理人员可以通过API接口实现网络设备的统一配置管理和下发,替换了原先需要一台台设备登录配置的手工操作方式。同时,这些API接口也可供用户自主开发网络应用,将网络设备可编程化,这类方案由目前主流的网络设备厂商主导,应用最广。

SDN的局限性

尽管SDN在网络技术上的改变巨大,但不可否认的是,它自身仍存在着不小的缺陷。

1.标准化

虽然SDN自提出已经时隔六年,但仍旧没有一个统一的标准,各大厂家在细节上都有差异,很难对接。所以客户只能选择同一个厂家的控制器和硬件设备,造成的后果就是数据中心网络就必须一家网络厂商绑定,需要承担不小的风险。数据是非常重要的,一旦出现意外后果极其严重,这种大环境下,SDN部署的意愿不够强烈,很多人不愿意去试。这也是SDN始终不能做大的最主要原因。

2.安全性

这是个老生常谈的问题了,SDN简化了操作层面,但像Underlay(物理网络),Overlay(控制转发)在部署和运行中同样会发生故障,排查起来也有不小的难度,更关键的是,SDN安安分分的不出问题还好,一旦出现故障影响的就是网络全局,造成的后果远比传统网络严重的多,只能用灾难性来形容,尤其是核心网域。所以出于安全考虑,不少企业对SDN都心怀忌惮。

3.网络设备

SDN是一种比较新颖的技术,它需要新式的网络设备支持。而现在网络设备五花八门,各种品牌,什么年代的都有。想要全部更换是一个很长的过程,保守估计也得十年时间,这样的网络环境不具备部署SDN的条件。毕竟现在网络规模已经基本成型,转型绝非易事,在这种情况下选择支持SDN的设备自然也要比传统网络设备价格要高的多,投入成本反而更高,这是厂家和客户都不能接收的。

综合以上种种原因,SDN想要大规模普及并投入使用,还有很长的一段路要走。

© 版权声明
评论 抢沙发
mltsfw的头像-命令提示符

昵称

取消
昵称表情代码图片