软件定义网络(SDN)任重而道远

网络/协议

43人已加入

描述

   当前,软件定义网络(SDN)成为业界一个时髦的话题,SDN技术及其可能带来的影响受到了学术界和产业界的高度重视,同时也存在着对SDN不同的理解和认识。本文试图从梳理SDN技术的发展脉络入手,分析SDN技术的内涵、本质特征、应用领域、发展趋势,进而分析SDN技术发展带来的影响。

  一、“众说纷纭”SDN

  目前对SDN关注度比较高的专家大致可以分为三类:IDC设计与运维人员、数据设备设计研发人员、未来网络研究与试验人员。这三类专家关注SDN的出发点及对SDN的认识不一样,对SDN的发展愿景和期待也各不相同。一项新技术出现后,对于追溯这个概念最早是谁提出、何时提出以及是不是一个新概念等种种讨论通常只具有学术意义,对于认识新技术的本质并无实质性帮助。讨论SDN概念还是要从其真正市场需求入手。

  (1)SDN商用需求最早出现在数据中心内部

  IDC内部网络为了支持应用服务器上虚拟机的迁移,通常是一个二层网络,因为如果采用三层组网,那么虚拟机迁移时,虚拟机对应的应用服务的IP地址要跟着变化,带来业务部署和管理的困难,而二层网络则没有这个问题。

  但是,在IDC内部直接应用既有的二层网络技术,则会主要带来以下两方面的问题:一个是在二层网络中,为了消除广播包的环路,通常采用生成树(STP)协议,在网络节点之间构建一棵逻辑树,节点之间的流量按照这个“树状”拓扑来传递,即使网络节点之间有多个物理链路,也只有一条链路真正传递数据,其他链路都是空闲的(只起备份作用)。但是,在IDC内部,多个服务器之间存在着频繁的数据交换需求,基于STP的树状网络拓扑不能高效支持这种“横向”流量,服务器之间的空闲链路也造成了网络资源的大量浪费,因此基于STP的二层网络对于IDC来说过于简单,需要进行变革,尤其是随着云计算的发展,这种IDC内部二层组网需求越来越迫切。另一个问题是通常IDC内部的应用服务器众多,有的达到上万台,甚至十几万台,二层交换机需要利用ARP等协议,学习接收到的数据包的源地址来建立MAC地址表,由于应用服务器多,所以MAC地址表项也多,通常会超过常规二层交换机MAC地址表的容量,则造成大量MAC地址无法进入MAC地址表,二层交换机对于无法在MAC地址表中查到的MAC地址对应的数据帧进行二层域内的广播,造成二层网络内部的流量泛滥,影响IDC内部网络效率。

  造成上述两个问题的根本原因是,传统的二层网络设计的过于简单,二层交换机只会学习MAC地址,不会基于MAC地址来规划数据转发路径,也就是说传统二层网络中没有一个控制平面(或者说控制平面的功能非常非常弱,且与转发功能融合在一起),只有数据平面(负责数据帧的转发)。因此在二层网络中增加控制平面(或者说强化控制平面功能),负责较大的二层网络内部节点间的流量调度和管理成为了一种迫切需求。目前较为主流的解决思路,就是利用IS-IS路由协议的变种来构建控制平面路由功能;利用Openflow来定义控制平面与转发平面之间的接口。这就引出了控制平面与转发平面分离的概念。但这只是二层网络中的控制平面与转发平面的分离。

  (2)SDN商用需求来自于路由器内部功能优化

  在传统路由器中,负责路由规划、选路策略的控制平面与负责数据封装、高速转发的数据平面之间的接口是不开放的,是紧耦合在一起的。每个厂家都通过自有的协议或接口来连接控制平面和转发平面,这也是CISCO、JUNIPER等优势厂商维持技术壁垒、排挤新兴厂商的优势所在。

  但是,有两方面的力量正在悄悄地对这种模式提出挑战:一个是大型互联网企业,他们有自建企业网络的需求,而且这些互联网企业认为目前自己企业网络的通信需求有特异性,而传统路由器的功能太复杂,有80%以上的功能和特性在自己的网络中用不到,但是在购买这些路由器时却要为这些无用的功能买单,感觉比较“冤”,所以存在自主设计实现简洁高效路由器的需求,这也是Facebook、Google、Yahoo等公司发起成立ONF(开放网络论坛),研制SDN标准的初衷之一。由于这些互联网企业具有在IDC内部大量采用自己定制的应用服务器的成功经验,所以他们对于自主研发高效的路由器有着良好的期待。另一个力量是新兴的数据设备厂商,他们试图通过打破路由器内部控制平面与数据平面之间的紧耦合,形成一个开放的、标准的设备接口,这样可以把控制功能集中而且单独剥离出去,这样数据转发设备可以做得更加通用和简单,成本可以做得更低,有助于打破CISCO、JUNIPER等厂商的垄断地位,这些厂商可以从中获得新的发展机遇。

  基于这种考虑,IETF较早的就开展了路由器内部控制平面与转发平面分离的研究工作,成立了FORCES工作组,定义了路由器内部控制平面与转发平面之间的通信协议。这虽然同样引出了控制平面与转发平面分离的概念,但这是三层网络中的控制平面与转发平面的分离。

  (3)SDN商用需求来自未来网络研究与试验

  目前,为了解决IP网络面临的网络地址空间不足、服务质量难以保证、安全可信机制缺乏、网络管控能力差等问题,未来网络研究人员一方面积极研究新型网络体系结构和关键技术,试图解决这些问题,目前虽然研究方向众多,但并未形成清晰的、共识的技术路线;另一方面,在技术路线不清楚,新方案层出不穷的情况下,有必要建立一个超大规模的未来网络新技术的试验验证环境(试验网络),在这个试验网络上灵活地为各种技术方案提供资源独立的试验环境,从而孵化出优选技术。美欧等国分别建立了GENI和FIRE网络,目的就在于此。在试验网络建设过程中,设计人员希望能够在网络节点上灵活的控制和部署路由协议,实现高效的转发,因此形成了越来越强烈的、实验网节点上控制平面和转发平面分离的需求。通过控制平面的分离,可以实现网络控制功能的智能和集中,以及网络转发功能的协议无关和高效。

  在实验网节点上控制平面和转发平面分离的情况下,每出现一种新的网络体系结构和解决方案,就可以在实现节点上以软件的形式来设计和配置,快速实现新的网络形态,高效支持网络技术创新与验证。

  除了上述三种SDN需求以及对应的三类专家以外,还有一些专家将SDN理解为统一智能网管,致力于实现一个网管系统可以统一、智能地管理多台网络设备的目的,如在LTE的部署中可以在IP RAN的设计中,通过一个综合网管系统来配置和管理多台简化边缘路由器,从而提高网络策略部署效率。但是这种理解,是把管理平面从控制平面和数据平面中分离,不是控制平面和转发平面的分离,不应理解为是SDN技术。

  二、“正本清源”SDN

  上面分析了SDN的三种发展需求,综合来看,这些需求所追寻的都是网络“开放”的理念。

  网络的开放是产业发展的必然趋势,不但能够带来相应设备和网络的高效,而且可以进一步细分产业链,带来新的产业发展机遇。当年,机械零件之间的“开放”,实现了零件之间的标准互换,细化了机械加工的产业链,提高了成品机械的生产效率,极大地推动了工业革命的发展。在网络通信领域,通过SDN技术可以实现类似的期待。

  在数据设备内,可以概括为两个平面,如下图所示:

  云计算

  从网络开放性的角度来理解SDN,我们可以把SDN分为三个类别,每个类别之间的开放性是递增的关系:

  (1)开放控制层北向接口的SDN(可以简称为SDN-N)

  这种思路研究数据网络开放控制面与业务应用之间的北向接口,向上提供资源抽象,实现软件可编程控制的网络架构。数据网络中控制层北向接口的开放有利于互联网应用服务感知数据网络状态、优化业务应用设计、改善用户业务体验,因此得到了互联网服务提供商的支持。北向接口开放性研究发端于5年前的P2P研究热潮,为了实现P2P流量优化与数据网络流量调度之间的协调,IETF启动了ALTO、DECADE等多个工作组,随着P2P热度的消退,这些工作的研究进展缓慢,但是SDN的升温为这个研究方向注入了新的活力。但是研究北向接口的开放性,主要是要抽象不同业务应用的共性特征,及其对数据网络的承载需求,但是业务应用的多样性使得这项工作目前进展并不顺利。

  (2)开放控制层南向接口的SDN(可以简称为SDN-S)

  这种思路就是大家通常理解的SDN,即数据网络中控制平面与数据平面的分离。目前比较热的ONF的Openflow协议和IETF的Forces协议都是工作在这个层面的,都是定义控制平面与数据平面分离后,两者之间的通信协议。Openflow与Forces协议的不同点在于:Openflow所面对的转发设备硬件假设只支持十元组,Openflow可以针对十元组做各种转发规则的配置;而Forces假定所面对的转发设备硬件是协议无关的,Forces可以以XML语言的格式来任意定义底层转发设备的处理逻辑。协议无关的转发设备目前也成为了研究的热点,要做到协议无关,需要硬件具备众多的功能,看似十分困难的工作,但是一些芯片厂商和设备厂商已经研发出了协议无关的转发产品,是一个值得关注的方向。

  (3)开放控制层东西南北向接口的SDN(可以简称为SDN-SE)

  在开放了南北向接口以后,SDN发展中面临的一个问题就是控制平面的扩展性问题,也就是多个设备的控制平面之间如何协同工作,这涉及到SDN中控制平面的东西向接口的定义问题。如果没有定义东西向接口,那么SDN充其量只是一个数据设备内部的优化技术,不同SDN设备之间还是要还原为IP路由协议进行互联,其对网络架构创新的影响力就十分有限。如果能够定义标准的控制平面的东西向接口,就可以实现SDN设备“组大网”,使得SDN技术走出IDC内部和数据设备内部,成为一种有革命性影响的网络架构。目前对于SDN东西向接口的研究还刚刚起步,IETF和ITU均未涉及这个研究领域。

  从网络开放性的发展趋势来看,SDN概念对于网络设备和网络架构设计的影响还处于初级阶段,以后随着SDN中控制平面北向和东西向接口的标准化,以及SDN技术与网络虚拟化技术的融合,将使SDN技术释放出更大活力和更为深远的影响力。

  三、“任重道远”SDN

  前面已经谈到,如果SDN技术和理念只是停留在目前IDC内部网络、数据设备内部,那么SDN技术的影响力是有限的,只是对二层网络内部的流量优化、数据设备结构和性能优化有较大的影响。但是如果SDN中的北向接口,尤其是东西向接口开放并且标准化以后,其对于通信网网络结构、商业模式等均会产生深远的影响。目前业界热谈的SDN影响,就是基于这种前提的。下面我们也是基于SDN-SE来谈SDN的影响。

  (1)对于互联网企业而言,一方面控制平面与转发平面的分离为网络控制权的迁移提供了机遇。目前Google等国际互联网巨头,绕过网络运营商,积极构建自主的网络基础设施,如购买海底光缆、部署光纤网络、发送“热气球”网络等。SDN技术的出现,为互联网服务提供商(ISP)提供了构建廉价、高效网络的技术手段和机会。这不断对于传统网络运营企业提出挑战,而且可能对互联网商业模式的发展产生重要影响。另一方面,SDN技术优化了IDC内部网络,对于提高IDC效率、降低建设和运维成本具有重要意义。Google等企业已经陆续发布了一些利用SDN技术后,IDC效率大幅提升的事例和数据。IDC的网络优化对于云计算的发展有着直接的促进作用。

  (2)对设备制造企业而言,一方面对于新兴厂商而言,SDN意味着新的市场和商业机会,而且这是一片蓝海,这也是NEC等非主流数据设备厂商抢在CISCO等传统优势厂商之前,最先研制发布SDN路由器和交换机的原因。另一方面对于传统厂商而言,SDN意味着垄断格局的打破,对于刺激技术创新和竞争,加快网络技术发展具有重要的意义。

  (3)对于网络运营商而言,一方面SDN为构建智能管道提供技术途径,网络运营商可以利用SDN实现网络的优化和高效的管理,提高网络的智能性和管控能力、大幅降低网络建设与运维成本。另一方面,SDN可以促进网络运营商真正开放底层网络,大大推动互联网业务应用的优化和创新,例如在OpenFlow网络的支持下,IaaS用户可以自行设定数据流在本网内的路径和安全策略,而不仅仅是几个虚拟设备的控制权

  (4)对于未来网络研究探索而言,一方面在SDN等技术的推动和影响下,网络的虚拟化、控制转发分离成为了未来网络新架构的基本特征,推动了未来网络体系结构和关键技术的创新。另一方面SDN技术为构建大规模未来网络试验床提供了基础技术,在试验网络中可以为新的网络技术方案提供相对独立的网络资源和网络控制功能,即在试验网上可自由定义数据的路由途径和转发交换规则,有利于网络技术创新。

  另外,一些专家建议将SDN技术用于网络安全领域,利用SDN技术在基站或者固网POP点中部署安全管控节点,实现安全管控节点的CONTROLLER之间的互联,构建网络安全边界(UNI/NNI接口)。一是可以实现接纳控制、屏蔽用户对于网络的攻击(IP核心网络不可达);二是便于安全规则的统一下发部署,可实现“群防群治” ;三是与云计算相结合,自主发现异常流量,综合分析流量模式特点,可以形成自发的“网络免疫系统” ,实现“一点发现,全网免疫” ;四是通过这些节点的互联,可以形成“应急通信系统”,实现网络的“应急通信” 。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分