/ 中存储网

浅谈数据中心网络的SDN技术

2015-07-03 12:10:36 来源:企业网D1Net

SDN的大名如雷冠耳,是当前网络领域的热点,被业界普遍认为是未来网络发展的方向,孕育着巨大的市场机会。SDN之所以能迅速崛起,主要的驱动力来自于数据中心(Data Center),更准确的说,是来自于数据中心(Data Center)的网络虚拟化,如果没有网络虚拟化,数据中心(Data Center)跟其它网络对SDN而言没啥区别。翻开SDN的介绍不难理解,SDN是一种将网络控制层面和数据转发层面分离的技术,能够为网络带来可编程的特性。未来的网络将和计算机一样,提供一个硬件平台,在此基础上通过软件对网络进行可编程设计。 SDN概念说起来简单,但是实际应用却面临不少的困难,尤其是是当前实际应用并不多的情况下,真正了解SDN的人并不多,更多的人并不知道如何去使用SDN,怎么才能利用SDN提升网络设计和管理的效率,这篇文章通过通俗性的语言,简单化的讲解,让大家对SDN有个感性的认识。

1

用过网络测试仪的技术人员都知道,如果需要通过测试仪模拟各种测试流,需要提前对测试仪进行预设置,设置好发送报文的特征,然后点击端口发送,就能够打出流量来,在这个过程中能够设置流量大小,抓包,反复修改报文特征。其实SDN的实现过程也和测试仪的设置过程类似,首先通过OpenFlow协议(SDN软硬件通信的唯一标准协议,网络设备支持对OpenFlow的响应)对网络设备进行设置,在配置之前,首先收集网络基本信息,包括:有多少端口,网络带宽,路由规格等等网络技术参数,这些参数并不是某一台网络设备的,而是整个网络环境具有的总体技术参数。然后根据这些参数,使用SDN的软件控制器对路由协议,二层环网等进行设计,设计到参数后,通过OpenFlow协议向所有的网络设备下发,如果网络设备无法满足设定的设计,将返回失败,需要对设计方案进行修改。调整后设计方案后再下发,这样经过反复的修改最终设计出最适合自己数据中心(Data Center)业务应用的网络。不难看出,SDN最大的好处就是能够很快地对网络设计进行调整,通过软件模拟设计网络,有不合适的地方及时进行调整,拥有SDN将不需要使用者关心网络设备是如何完成这些上层设计的,只通过SDN告诉网络设备,路由要从哪个端口转发到哪个端口,二层环路阻塞在哪里,甚至二层环路根本不用阻塞链路也能够保证没有环路,这将数据中心(Data Center)的网络技术人员从烦琐的网络设备配置中解脱出来,让网络人员能够更加聚焦于自己数据中心(Data Center)的应用业务,而且使用SDN后为网络人员调整网络提供了极大的便利,传统调整网络的方式,比如变更流量转发端口,新增路由等都需要人到机房去布线调整,往往要花费几天的工夫。采用SDN则不需要这样,只要通过软件调整几分钟就能够搞定,技术人员根本不用关心这些网络设备在哪里,就是远在美国的数据中心(Data Center),也能够在北京的管理中心里顺畅地部署业务。数据中心(Data Center)虚拟化技术已经实现了异地数据中心(Data Center)之间的业务迁移,处于北京和美国纽约的两个数据中心(Data Center)网络可能共同来完成SDN发出的网络设计方案,网络人员不用关心到底自己设计的业务跑在哪里,处于异地的两个数据中心(Data Center)完全融合为网络人员提供了一个网络硬件平台,网络人员能够随心所欲地设计网络。

SDN除了为网络设计带来了极大便利,也便于对数据中心(Data Center)网络进行管理,能够说SDN就是升级版的网络管理软件。通过网管软件能够对所有的网络设备进行管理,现有的数据中心(Data Center)网管具有网络监控,管理,业务异常告警等功能。SDN除了具备这些网管的功能之外,还能够对网络故障进行自愈。当网络发生故障时,SDN控制器获知网络异常表现,采取自动恢复机制。这些恢复机制是提前通过软件设置好的,一旦得到发送的指令,就能够通过SDN发送到相关的网络设备上,执行恢复程序,这样数据中心(Data Center)网络能够自行进行故障恢复,只要整个网络是全冗余的设计,通过SDN能够确保网络业务永不中断。针对不同的故障,SDN发出不同的网络修复方法,现阶段我们都是通过业务演练,故障模拟来验证备份方案是否存在隐患的。在SDN的世界里,已经都能够通过软件模拟,能够通过软件构造出各种异常情况,然后制定解决方案,所以的故障模拟演练都能够通过软件模拟,短短几分钟就能够做完各种故障模拟。因为SDN的设计完全是通过软件对网络进行定义和设计,下发硬件网络设备后,能够不费吹灰之力就能够完成反复的模拟、操作、调整,这才是SDN真正强大的地方。

从以上的描述中不难发现,SDN实际就像计算机上安装的各种编程环境,我们能够通过Visual C++编程环境设计出各种应用软件系统,在Visual C++的环境中能够调试,编译,最终完成软件系统设计。SDN也是同样,SDN控制器就像一个编程环境,网络人员通过控制器进行网络设计编程,这个过程能够调试,编译和运行,最终设计出优秀的网络,使用SDN,即使不懂TCP/IP为何物的人也能够设计出高效的网络,这正是SDN的魅力所在。翻开网络标准文档RFC,已经更新到了6000多篇,哪个人也没有精力将这么多的RFC 吃透,通过SDN能够将人们从浩瀚的网络协议中解脱出来,只有设计网络设备的人才用关心网络协议的使用,使用网络设备的人,只要通过SDN控制,就不用再关心网络底层的实现。看到这里,作为一名网络技术人员一定为此而兴奋,是的,网络可编程,这是一件多么酷的事情,未来不仅会有计算机编程专家,也会有网络设计编程专家,这些人只需要懂得怎么玩SDN,就能够在数据中心(Data Center)网络领域里混得游刃有余。