期刊鉴别 论文检测 免费论文 特惠期刊 学术答疑 发表流程

基于OpenFlow的SDN技术研究(3)

时间:2015-12-25 15:45 文章来源:http://www.lunwenbuluo.com 作者:左青云,陈鸣,赵广松, 点击次数:

  (3)一致性和稳定性.根据不同的网络需求,Onix提供两种方式来实现NIB的更新分发机制:带复制的事务性数据库模式和DHT模式.前者的主要目标是提供一种可靠的分发机制,适用于网络事件更新缓慢、对稳定性和一致性要求较高的网络;后者则通过通用API、软状态触发器和坐标机制等DHT实现机理,构建快速响应的分布式拓扑结构,适用于网络事件更新频繁、对网络可用性要求较高的网络.

  Onix目前采用的NIB分发机制实际上都是比较成熟的分布式系统解决方案,因此也将承担这些方案自身的优缺点,如数据库模式自身存在严重的性能限制、多个Onix实例对DHT更新可能导致状态不一致等.因此,在Onix实际部署过程中需要综合考虑网络拓扑环境和性能需求,或者考虑采用其他更有优势的分布式系统.

  Onix已经作为许多组织机构构建商业应用的基础平台.从Onix的应用场景来看,每一个Onix实例能够管理多达64台OpenFlow交换机,由5个Onix实例组成的集群已经通过了测试.以每台OpenFlow交换机能够连接48台服务器来看,Onix能够应用于主机数量达到数万量级的较大规模网络.

  和前面相比,DIFANE和DevoFlow是通过减小控制器负载或者优化OpenFlow交换机结构来实现控制平面的可扩展性;Onix则为基于OpenFlow的SDN提出了一种更为通用的扩展方法,即通过多控制器分域进行管控.与HyperFlow类似,这也是未来SDN面向大规模网络部署可扩展性研究的主要发展方向.

  3.2.5Devolvedcontroller

  HyperFlow和Onix并未针对控制器如何分区提出具体的分区算法.鉴于多路径区域划分问题在图论中是NP难问题,Devolvedcontroller针对多控制器管控区域划分问题提出了两种启发式算法:路径-分区算法(pathpartitionapproach)和分区-路径算法(partition-pathapproach).

  3.2.6小结

  从上述解决方案来看,目前,基于OpenFlow的SDN可扩展性研究的主要思路有如下两点:

  (1)修改OpenFlow交换机的处理流程或硬件架构,或者给OpenFlow交换机增加部分控制功能,从而减少控制器和OpenFlow交换机之间的信息交互,分担控制器的处理开销,提高控制器的可扩展性能.实际上,优化控制器性能在一定程度上也能提高控制器的管控范围,如NOX-MT等通过提升控制软件性能的研究.这种思路属于纵向扩展,适用于校园网、企业网等规模不大的网络.

  (2)多控制器的分布式管控平面,通过分域管理网络,控制器之间实现基本的状态分发过程.这种思路属于横向扩展,是SDN可扩展性研究的主流方向,适用于数据中心、广域网等规模较大的网络.

  3.3SDN控制逻辑的一致性

  基于OpenFlow的SDN技术虽然通过控制器集中操作,但本质上还是分布式和异步操作的.由于网络事件有可能发生在任何一台交换机或端主机上,控制器和交换机之间存在的时延将有可能影响到控制器接收事件的次序以及控制器规则在交换机上的安装次序,进而影响到控制逻辑的一致性.从本质上讲,这是由SDN控制逻辑安装不具备原子性造成的.由于时延的影响,报文在交换机2安装规则之前已经到达,这将导致交换机2重新将报文发送到控制器上,有可能造成部分报文在交换机2上经历的控制逻辑不一致.实际上,前面提到的DIFANE和DevoFlow等通过在OpenFlow交换机上增加自治智能的方法能够防止规则安装时延,但这违背了SDN控制转发分离的原则.

  另一方面,即使不受时延的影响,控制逻辑本身执行的顺序也有可能导致网络进入暂时的中间状态,从而影响到控制逻辑的一致性.以接入控制为例,表示某网络通过交换机I和3台过滤交换机F1,F2和F3连接到互联网上.配置1表示网络当前的网络配置:未知(unknown)和访客(guest)主机的流量转发到F1交换机,并过滤掉SSH流量,学生(student)和老师(faculty)主机的流量分别转发到F2和F3进行常规处理.在某时刻,网络负载发生变化,网络的逻辑控制需要切换到配置2:未知主机流量通过F1交换机过滤SSH流量,访客主机通过F2交换机进行过滤,其余主机则全部转发给F3正常处理.如果不考虑每台交换机的配置顺序,则将导致控制逻辑的不一致.例如,首先增加F2的SSH过滤功能,则学生的正常流量会被暂时过滤掉;如果首先将访客的流量转发给F2,那么访客的SSH流量将暂时无法过滤.因此,控制逻辑的一致性需要精心考虑每个更新步骤的执行顺序.

  3.3.1控制器部署位置问题

  在SDN中,控制平面和数据平面之间的时延将影响到控制逻辑能否有效部署到转发设备当中.尤其在流量激增、实时响应需求增加和广域网的情况下,响应时延越长,控制逻辑的一致性将更加难以保证.文献引入平均时延和最坏情况时延两个指标来分析Internet2上OpenFlow控制器的部署位置问题.

  通过在Internet2中进行大量的时延测量,并分别以最小化平均时延或最坏情况时延为标准,计算出不同数量控制器的部署位置.从时延分析结果可以看出,控制器的部署数量和位置都将极大地影响平均时延和最坏情况时延.根据成本收益比,即部署的k个控制器能否使平均时延或最坏情况时延减小到原来的1/k,控制器数量在3或4时成本收益比趋于稳定,这也与目前Internet2所推荐的部署3个控制器和1个备份控制器相吻合.针对更多不同的拓扑结构(8个~200个结点),一个控制器通常能够满足基本时延需求,但是随机部署位置通常很难达到最优时延分布.而从大部分拓扑结构来看,增加控制器的数量能使时延接近于按比例减少.

  研究控制器的部署位置问题,主要针对SDN部署在广域网的情况.实际上,控制器的部署位置在控制器数量确定的情况下属于NP难问题,但就目前数据平面转发设备不多的现状而言,根据不同的时延指标计算出最优的部署位置是能够实现的.

  3.3.2每报文和每流一致性

  针对网络控制逻辑更新的一致性,文献提出了每报文(per-packet)一致性和每流(per-flow)一致性的概念.每报文一致性是指每个报文传输过程中要么执行旧的控制逻辑,要么执行新的控制逻辑,而不能混杂在一起执行.即使控制逻辑具备原子性,即规则安装在瞬时同步完成,也会造成传输中的报文经历不同的控制逻辑.

  每流一致性指是指一系列相关的报文(指同一条流)在传输过程中要么执行旧的控制逻辑,要么执行新的控制逻辑,而不能混杂在一起执行.

  文献通过形式化模型证明了每报文一致性能够维护网络所有的控制逻辑属性,并提出两阶段更新方法(静默更新和单触更新),并证明其满足每报文一致性.静默更新首先部署新的网络配置,同时保留旧的网络配置,新旧配置采用不同的标记(如VLAN,MPLS等);静默更新完成后,单触更新则将所有的输入报文打上新配置的标记,随后所有报文将按照新配置执行.两阶段更新方法利用了OpenFlow网络的标记更新功能,采用平行配置的思路,相当于将报文和控制逻辑整体无缝迁移到新的控制平面,从而保证了每报文一致性.

  每流一致性比每报文一致性的标准更加严格,通常适用于TCP流前后控制逻辑的一致性.通过对OpenFlow交换机中的新配置设置较低的优先级,可以等待旧配置在超时后自动删除.如果旧配置的流表项是粗粒度的,难以超时删除,则可以先将流表项细化,或者采用DevoFlow中规则复制的方法.由于每流一致性需要考虑整条流所有报文的一致性,因此通常无法保证控制逻辑得到实时更新.

  3.3.3NICE

  SDN控制逻辑主要通过控制器上运行的应用程序来执行.文献设计了NICE方法来测试这些应用程序的正确性.NICE结合了模型检查(modelchecking,简称MC)和符号执行(symbolicexecution,简称SE)两种技术.

  首先通过模型检查方法搜索出整个系统(包括控制器程序、OpenFlow交换机和端主机)的状态空间.考虑到控制器程序的事件处理器可能收到大量可能的输入报文,NICE采用符号执行技术从事件处理器中得到不同的代码路径,并分离出报文等价类;针对每一种等价类,NICE注入一个报文生成新的状态变迁.另外,NICE还采用针对特定域的启发式算法来减少事件排序空间.通过提前定义应用程序的正确性属性,如无转发环路、无黑洞、直接路径等,NICE最终生成包含应用程序缺陷的trace文件.

  从测试对象来看,NICE以Python语言开发,仅适用于NOX平台的Python程序.它主要通过状态和流程控制等协议验证方法测试控制器程序是否出现缺陷,侧重于控制器平台程序开发的正确性验证.

  3.3.4小结

  在基于OpenFlow的SDN技术中,控制平面的分离、网络状态分发机制和时延的影响,都对SDN控制逻辑的一致性需求提出了挑战.通过在Internet2中进行的时延测量表明,控制器的部署数量和位置都极大地影响平均时延和最坏情况时延.在企业网和数据中心,OpenFlow交换机一般都在本地,传播时延的影响可以忽略不计.但要注意到,减小时延只能尽量减小异常发生的可能性,无法在根源上满足控制逻辑的一致性.文献提出的两阶段更新方法能够从根源上解决每报文一致性的问题,适用于网络整体控制逻辑切换的场景,然而在网络控制逻辑更新频繁,甚至需要实时配置的环境中,需要考虑两阶段分别执行的时延开销.NICE则是从程序验证的角度检测控制器程序的正确性,实际上侧重于检测由程序带来的有可能违反控制逻辑一致性的代码片段.

  3.4运作模式和演进趋势

  基于OpenFlow的SDN技术最初由斯坦福大学提出,并由Nicira和BigSwitch等SDN公司推动发展.

  随着Juniper,NEC,HP,IBM等公司相继推出支持OpenFlow的硬件设备,Cisco也投入大量资金研究部署SDN.

  目前,ONF成员基本涵盖了网络设备、运营商和互联网领域的大部分商业公司.这种以学术界为技术依托,并注重产业界的推广和应用的运作模式,是基于OpenFlow的SDN技术取得快速发展的根本原因.

  基于OpenFlow的SDN技术颠覆了传统网络厂商的硬件设计模式,在实际部署、安全保障、分布式协调机制等方面还存在一系列问题,这很难被网络运营商所接受.SDN在要求逻辑控制与数据转发分离的前提下,数据平面应当维持尽量简单的转发功能.然而,为了增加数据平面转发功能的向后兼容性,OpenFlow标准不断扩充转发平面匹配字段,这进一步增加了未来OpenFlow交换机的硬件设计成本,在一定程度上也增加了控制平面维护的复杂度,不利于OpenFlow的未来演进发展.在OpenFlow标准的不断演进中,是维持简单的硬件结构还是在OpenFlow硬件中继续增加更多的功能,需要学术界和产业界的共同关注.文献考虑到目前数据平面的设计复杂趋势,提出了一种新的概念:网络结构(networkfabric).

  网络结构将网络服务等诸多复杂功能(如过滤、隔离或策略路由等功能)集中到边缘交换机,并通过边缘控制器来管理.网络核心即结构元素则通过结构控制器部署简单的路由机制(如MPLS)来实现数据的转发功能.在这种架构下,边缘交换机能够通过主机软件实现,结构元素通过硬件成本更低的MPLS实现数据转发;同时,新协议的应用只需要在边缘交换机通过软件更新来实现,有利于网络的进一步升级和演化,符合目前网络边缘复杂、网络核心简单的设计原则.这种演进趋势意味着OpenFlow交换机需要划分为边缘和核心两个版本:边缘OpenFlow交换机更通用,核心OpenFlow交换机更简单.当然,这种方式需要考虑边缘到核心转发平面的映射机制,同时,边缘交换机的软件实现形式有可能产生性能瓶颈.

  4、基于OpenFlow的SDN应用

  基于OpenFlow的SDN技术在解决当前存在的实际问题和开拓网络新应用等方面取得了不少成果,从部署的区域范围来看,它主要在校园网用于研究,在数据中心用于解决数据和控制密集型关键问题;从实现的功能来讲,它主要面向网络管理和安全控制.下面我们以不同的侧重点分类简述这4种应用.

  4.1面向校园网的部署

  在校园网中部署OpenFlow网络,是OpenFlow设计之初应用较多的场所.它为学校的科研人员构建了一个可以部署网络新协议和新算法的创新平台,并实现了基本的网络管理和安全控制功能.目前,已经有包括斯坦福大学在内的多所高校部署了OpenFlow网络,并搭建了应用环境.

  Plug-n-Serve在斯坦福大学的计算机系大楼部署.它设计了一种新型的面向无结构网络的负载均衡算法,向系统中动态添加和移除计算资源,增加了请求的传输率,改变了每个请求的CPU和网络负载,最终实现了网络的负载均衡.OpenRoads同时在斯坦福大学的计算机系和电机工程系大楼部署,利用OpenFlow和SNMP在异构无线网络(如WiFi,WiMAX等)中实现了网络虚拟划分和移动管理,简化了网络管控的方法.Resonance是佐治亚理工大学的研究者在校园内部署的一整套OpenFlow网络动态接入控制系统,通过在高层部署安全策略和分布式监控推断系统,实现了更细粒度的分布式安全接入功能.

  4.2面向数据中心的部署

  随着云计算模式和数据中心的发展,将基于OpenFlow的SDN应用于数据中心网络已经成为研究热点.这是由于数据中心的数据流量大,交换机层次管理结构复杂,服务器和虚拟机需要快速配置和数据迁移.如果不能在庞大的服务器机群中进行高效的寻址和数据传输,则很容易造成网络拥塞和性能瓶颈.将OpenFlow交换机部署到数据中心网络,可以实现高效寻址、优化传输路径、负载均衡等功能,从而进一步提高数据交换的效率,增加数据中心的可控性.

  文献首次提出将OpenFlow技术引入到数据中心网络,并采用NOX控制器实现了两种比较典型的数据中心网络PortLand和VL2的高效寻址和路由机制.Ripcord同样实现了这两种数据中心的路由引擎原型系统,并支持网络动态管理,增加了网络健康度监控和自动报警功能.ElasticTree设计了一个在数据中心部署的能量管理器,动态调节网络元素(链路和交换机)的活动情况,在保证数据中心的流量负载平衡的情况下,达到了节能的目的.Hedera在PortLand的实验床上实现了一种可扩展的动态流调度系统,通过OpenFlow交换机获取流的最新动态,采用全局最先匹配(globalfirstfit)的贪婪算法和模拟退火(simulatedannealing)算法实现了数据中心的负载平衡.Virtue利用OpenFlow交换机控制网络流量,实现了数据中心内不同的虚拟机布置算法的比较,并通过真实的数据中心和模拟器两种方式进行了实验.另外,文献也都是在数据中心部署OpenFlow网络的相关研究.

  4.3面向网络管理的应用

  OpenFlow网络的数据流由控制器做出转发决定,使得网络管理技术在OpenFlow网络中易于实现,尤其是流量管理、负载平衡、动态路由等功能,通过配置控制器提前部署转发策略,将实现更加直观的网络管控模式.

  OpenPipes实现了一个高速网络的原型系统.它可以通过硬件和软件两种方式来实现系统的功能模块,并通过OpenFlow技术实现功能模块在网络运行时的动态划分.文献通过OpenFlow来控制移动用户和虚拟机之间的连接,并根据移动用户的位置进行重路由和移动管理,使得它们保持源IP不变并保证始终通过最短路径,改变了传统移动IP的路由策略.OpenTM利用OpenFlow控制器中的路由信息,分析了从不同交换机获取流统计数据的网络负载问题,从而构建整个网络的流量矩阵.文献在NOX上实现了多个应用程序,提供了收集数据和配置OpenFlow网络的API,并开发出Web界面对OpenFlow网络进行管理.文献首次将OpenFlow技术应用到无线Mesh网络中,并解决了移动管理和客户IP迁移的相关问题.文献提出了一种基于OpenFlow技术,支持QoS的可扩展流媒体应用优化框架,为视频数据流提供了非最短路径的动态重路由功能.文献将OpenFlow应用于家庭网络管理当中,实现了新型的流测量和管理接口.文献在OpenFlow交换机和NOX上实现了MPLS流量工程和基于MPLS的VPN功能.

  4.4面向安全控制的应用


  •   论文部落提供核心期刊、国家级期刊、省级期刊、SCI期刊和EI期刊等咨询服务。
  •   论文部落拥有一支经验丰富、高端专业的编辑团队,可帮助您指导各领域学术文章,您只需提出详细的论文写作要求和相关资料。
  •  
  •   论文投稿客服QQ: 论文投稿2863358778 论文投稿2316118108
  •  
  •   论文投稿电话:15380085870
  •  
  •   论文投稿邮箱:lunwenbuluo@126.com

联系方式

  • 论文投稿客服QQ: 论文投稿2863358778
  • 论文投稿客服QQ: 论文投稿2316118108
  • 论文投稿电话:15380085870
  • 论文投稿邮箱:lunwenbuluo@126.com

热门排行

 
QQ在线咨询
咨询热线:
15380085870
微信号咨询:
lunwenbuluoli