软件定义网络:正在进行的网络变革(1)


当前,网络已经成为支撑现代社会发展以及技术进步的重要基础设施之一,它深深地改变了人们的生产、生活和学习方式;然而,传统网络架构越来越不能满足当今企业、运营商以及用户的需求。传统互联网由极其复杂的交换机、路由器、终端以及其他设备组成,这些网络设备使用着封闭、专有的内部接口,并运行着大量的分布式协议。在这种网络环境中,对于网络管理人员、第三方开发人员(包括研究人员),甚至设备商来说,网络创新都是十分困难的。

例如,研究人员不能够验证他们的新想法;网络运营商难以针对其需求定制并优化网络,难以使得他们的收益最大化;甚至对于设备商来说,也不能及时地创新以满足用户的需求。

封闭的网络设备所带来的结果是:网络依旧面临着诸多问题与挑战,如安全性、健壮性、可管理性以及移动性等等;网络维护成本仍然居高不下,网络管理需要大量的人工配置等等。

近年来,逐渐兴起的SDN 正试图打破这种僵局,并成为了近年来学术界和工业界讨论的热点。

1 SDN的架构

1.1 SDN 架构的特点

SDN是软件定义网络的简称,其核心理念是使网络软件化并充分开放,从而使得网络能够像软件一样便捷、灵活,以此提高网络的创新能力。通常意义上来讲,SDN 是指从发展而来的一种新型的网络架构,其前身是斯坦福的用于企业集中安全控制的Ethane 项目[2]。

2008年斯坦福大学的Nick Mckeown 教授将其命名为OpenFlow,后经由斯坦福项目推广,以及在大型网络- 全球网络创新环境(GENI) 项目中的应用,该概念被逐渐扩展并成为了。

图1 描述了SDN 架构的逻辑视图。SDN 的基本网络要素包括:逻辑上集中的SDN 控制器,它是基于软件的控制器,负责维护全局网络视图,并且向上层应用提供用于实现网络服务的可编程接口(通常也称为“ 北向接口”);控制应用程序,该程序运行在控制器之上,通过控制器提供的全局网络视图,控制应用程序可以把整个网络定义成为一个逻辑的交换机,同时,利用控制器提供的应用编程接口,网络人员能够灵活地编写多种网络应用,如路由、多播、安全、接入控制、带宽管理、流量工程、服务质量等;转发抽象,转发抽象通常称为“ 南向接口”,SDN 控制器通过利用SDN提供的转发平面的网络抽象来构建全局网络视图。

由此可知SDN 的基本特征:

控制与转发分离。转发平面由受控转发的设备组成,转发方式以及业务逻辑由运行在分离出去的控制面上的控制应用所控制。

控制平面与转发平面之间的开放接口。SDN 为控制平面提供开放的网络操作接口,也称为可编程接口。通过这种方式,控制应用只需要关注自身逻辑,而不需要关注底层更多的实现细节。

逻辑上的集中控制。逻辑上集中的控制平面可以控制多个转发面设备,也就是控制整个物理网络,因而可以获得全局的网络状态视图,并根据该全局网络状态视图实现对网络的优化控制。


相关内容