基于软件定义网络的动态流调度方法及系统的制作方法

文档序号:7806100阅读:214来源:国知局
基于软件定义网络的动态流调度方法及系统的制作方法
【专利摘要】本发明提供一种基于软件定义网络的动态流调度方法及系统,通过交换机上传的流量信息进行流量的深度解析,流量识别分级模块对流量类型按照优先级进行分类;调用统计管理模块获取交换机端口信息,计算出交换机的连接链路,并将链路信息传递给拓扑管理模块;调用拓扑管理模块获取流量流向的可行路径,计算可行路径中链路的实时状态统计信息;对这些链路属性进行分析,换算成路径在整体选择中的权重,通过该权重做出最优调度策略,并进行策略下发;该发明可以实现实时的网络流量最优调度,从而让流量最快捷的到达目的地,最终达到提高带宽利用率、优化网络性能的目的。
【专利说明】基于软件定义网络的动态流调度方法及系统

【技术领域】
[0001] 本发明涉及一种基于软件定义网络的动态流调度方法及系统,属于计算机网络领 域。

【背景技术】
[0002] 网络流量伴随着互联网技术的高速发展保持着指数式的增长,对现有网络的部署 和维护增加了压力。尤其是大数据量的流媒体服务、视频点播业务的疯狂增长对网络性能 提出了更高的要求。持续稳定的流量比重逐步增大,现有网络的低效,在这种情况下,提升 网络性能、增加链路利用率、提高数据传输可靠性、加快流量转发效率成为亟待解决的网络 问题。
[0003] IETF针对该问题提出了自己的解决方案一流量工程。流量工程作为研究计算机网 络拥塞问题的主流方法,其主要流程是:流量分析、建模、策略调度,所以流量工程往往最常 以流量调度的形式出现。其核心思想是解决网络阻塞,提升带宽利用率,并且尽可能的做到 互联网架构最优化。其针对互联网的性能进行相关的评估和优化,以提升链路利用率为目 标,优化网络转发设备的配置,最终避免上一段提出的诸多问题。
[0004] 针对流量调度,利用IP的虚拟化特性传统网络主要集中在网络层附近对其解决 方案进行研究。传统网络在解决流量工程问题时,不具备实时检测全网状态信息,造成网络 流量并不能时刻在最优路径上传输,即不能根据实时链路状态改变转发策略。
[0005] 采用多协议标签交换技术MPLS来实现流量调度使目前主流的是解决方案之一。 MPLS网络的路由配置包括静态路由、策略转发、手动配置三种。其中最常用的是静态路由, 策略转发、手工配置方法由于网管人员工作量及配置难度均较少使用。而且在该网络中所 有的路由配置多为静态,如果使用动态配置也需要路由器间进行协调,对于转发设备有限 小型网络尚可如此但在大范围转发设备采用此方法不仅不会对网络性能提升,反而造成了 很大的延时。
[0006] 因为分布式架构下的转发设备控制逻辑和数据转发均集中于一体,并不能对整个 网络进行统一管控。在这样的情况下,首先不能对整个网络的链路状态统一获取,这样对于 把控整个网络路径的健康状况不利,例如,图1中的网络如果路径2的带宽利用率几近饱 和,而路径1鲜有流量经过,这时传统网络就出现了问题,因为明显的这时的最优路径是路 径1,但由于传统网络无法根据实时的链路状态去改变相应的转发策略,造成了网络资源的 低效率利用,而且也违背了流量工程的初衷。
[0007] 而目前现有技术还处在如何使数据包在软件定义网络中实现设备的连通,在高效 性上并未得到足够的提升。


【发明内容】

[0008] 本发明的目的是提供一种基于软件定义网络的动态流调度方法,基于实时的链路 状态制定所有策略,不同于传统网络的手动配置,保证了策略制定的实时性和有效性,解决 传统网络在解决流量工程问题时,不具备实时检测全网状态信息,造成网络流量并不能时 刻在最优路径上传输,即不能根据实时链路状态改变转发策略的问题。
[0009] 本发明的技术解决方案是:
[0010] 一种基于软件定义网络的动态流调度方法,
[0011] 通过对交换机上传的流量信息进行流量的解析,流量识别分级模块对流量类型按 照优先级进行分类;
[0012] 调用统计管理模块获取交换机端口信息,计算出交换机的连接链路,并将链路信 息传递给拓扑管理模块;
[0013] 调用拓扑管理模块获取流量流向的可行路径,计算可行路径中链路的实时状态统 计信息;
[0014] 对这些链路属性进行分析,换算成路径在整体选择中的权重,通过该权重做出最 优调度策略,并进行策略下发。
[0015] 进一步地,对交换机未识别的上报流量进行流量类型识别,流量识别分级模块首 先对流量中数据包携带的协议信息进行提取,然后查询系统中已有的流量类型表,最后精 确定位流量类型。
[0016] 进一步地,拓扑管理模块通过周期性的遍历交换机的所有端口,并发送链路探测 包,用于探测物理交换机网络的链路结构,获取的链路信息通过计算得出网络拓扑。
[0017] 进一步地,获取交换机的实时状态信息和配置信息,并将这些信息进行二次加工, 已得到链路权重;
[0018] 根据可行路径计算模块计算出的路径将其包含链路信息进行组合,便计算出路径 状态信息。
[0019] 进一步地,利用可行路径计算和链路状态统计模块所提供的参数进行评测;按照 链路长度、链路利用率的不同权重进行计算,将计算结果进行递减排序,结果数值最大的即 为最优流量传输路径。
[0020] 进一步地,根据最优路径计算模块得出的最优路径,结合实际物理网络,统计和路 径相关的交换设备,针对不同的交换设备进行转发策略的下发;
[0021] 具体为:
[0022] 获取最优路径后,调用统计管理模块,获取相关链路信息,在拓扑管理模块中获取 相关交换机信息,根据交换机的数据层标识映射实际物理设备,设备管理模块确定交换机 的网络连接端口号,并确定下发策略端口,针对性编辑流表,协议插件管理模块进行消息封 装后,下发转发策略。
[0023] -种基于软件定义网络的动态流调度系统,包括网络控制层、调度策略层、接口 层,
[0024] 网络控制层:包括协议插件管理器、设备管理、拓扑管理、统计管理,提供管理服 务,使网络正常通讯;
[0025] 调度策略层:包括流量智能识别分级、可行路径计算、链路状态分析、最优路径计 算、调度策略制定,具体为:
[0026] 流量智能识别分级:对协议插件管理模块解析的数据包进行深度解析,确定其类 型,为上层模块提供服务;
[0027] 可行路径计算:通过路径计算算法计算出流量在网络中的可行路径;
[0028] 链路状态分析:根据流量的可行路径对路径中每条链路的状态进行分析,包括链 路带宽、链路吞吐量、链路利用率等信息;
[0029] 最优路径计算:以可行路径和链路状态为基础,按照最优路径算法计算出最优路 径;
[0030] 调度决策:根据计算出的最优路径对流量进行调度;
[0031] 接口层为外界访问流量调度系统的接口。
[0032] 进一步地,协议插件管理:通过插件机制来支持多种不同的网络协议,通过协议插 件向上层提供链路控制和数据包控制功能。该模块用于在启动后载入注册的各个协议插 件,在收到或发送消息时根据协议类型使用不同的协议插件对消息进行解码或编码;
[0033] 设备管理:对网络中终端设备进行管理,包括存储设备的配置信息、状态信息;
[0034] 拓扑管理:计算拓扑结构并维护拓扑信息;
[0035] 统计管理:启动该模块后需要初始化统计模块需要的如存储和采集需要的资源, 向其他模块提供统计服务。
[0036] 进一步地,当进入交换机的数据包不能被匹配时,交换机将数据包封装在 Packetln消息中发送给控制器;
[0037] 在接收到南向接口协议消息后首先对其进行协议解析,确定其为流量类型识别的 消息后,将解析其data数据段,该段存放的是真实数据包信息;
[0038] 控制器将对数据包进行解析,确定数据包类型,并且对流量类型进行分级。
[0039] 进一步地,接口层通过本地方法调用面向过程的访问工具,或通过符合REST架构 风格的面向对象的访问工具。
[0040] 本发明的有益效果是:本发明算法提升了网络链路利用率、对链路带宽均衡了负 载、可以节省数据包传输时间。本发明的转发策略是根据流量属性和实时的链路状况进行 制定的。通过流量检测分级模块对流量类型按照优先级进行分类,计算出该流量的可行路 径,获取可行路径中链路的实时状态统计信息。对这些链路属性进行分析,换算成路径在整 体选择中的权重,通过该权重决定最优的流量流向。在这个过程中,所有策略的制定都是基 于实时的链路状态,不同于传统网络的手动配置,保证了策略制定的实时性和有效性。

【专利附图】

【附图说明】
[0041] 图1是启动了流量工程的MPLS网络图。
[0042] 图2是实施例面向软件定义网络的数据平面转发的流程示意图。
[0043] 图3是实施例系统的整体结构示意图。
[0044] 图4是方案整体算法分析图。
[0045] 图5是实施例系统总体信息交互示意图。
[0046] 图6是核心管理模块关键处理流程图。
[0047] 图7是拓扑管理模块关键处理流程图。
[0048] 图8是流量智能识别分级模块流程图。
[0049] 图9是链路状态统计流程图。
[0050] 图10是最优路径计算流程图。
[0051] 图11是实验测试拓扑图。
[0052] 图12是实施例与传统网络的运行情况模拟初期的最优路径图。
[0053] 图13是实施例与传统网络在吞吐量达到一定阈值后的最优路径图。
[0054] 图14是实施例与传统网络的吞吐量比较图。
[0055] 图15是实施例与传统网络的带宽利用率比较图。

【具体实施方式】
[0056] 下面结合附图详细说明本发明的优选实施例。
[0057] 实施例以软件定义网络为基础前提,利用软件定义网络的特性制定流量调度的相 关算法。该算法所描述的策略体现在流量调度系统端,作为整个网络的指挥官。
[0058] 实施例在保证网络正常通信的情况下,通过深度包解析协议匹配算法实现对流量 的精确匹配,并根据流量特征对流量进行优先级分类;通过可行路径分析算法实现端到端 可行路径的全面掌握;对链路状态信息进行实时更新,利用链路信息分析算法计算全网链 路的拥塞状况;以可行路径、链路状态信息等为参数,通过最优路径算法实现最优路径的确 立;最后通过调度决策算法实现策略下发,确保制定的转发策略符合实时链路状态情况下 的最优路径,如图2所示。
[0059] 当OpenFlow交换机无法匹配流量或者该流量原本在交换机中的处理结果便是上 传给流量调度系统,这是交换机将包含流量信息Packetln数据包交给流量调度系统的两 种方式。
[0060] 实施例利用软件定义网络的统筹安排的特性,当交换机把流量信息通过Packetln 消息上传给流量调度系统时,系统会对其进行流量类型识别。将已经识别的流量进行针对 性的流量疏导策略制定,策略确定后将其贯彻到相关的转发设备上,这里的转发设备是指 基于软件定义网络的交换机。
[0061] 该系统下发转发策略并不是只能针对其中一个交换机,它能决定其管辖的SDN网 络中每一个交换机的转发策略。这些交换机可以在离线方式下通过静态转发表,但更多的 是经过流量调度系统去配置,该系统将高效的自动对相关交换机进行转发策略配置,这足 以体现出其动态配置策略方面的效率优势。
[0062] 实施例系统的详细结构如图3所示。主要分为三个部分,分别为基础控制层、调度 策略层、接口层,物理设备为该系统运行的环境。
[0063] 基础控制层的功能是提供一些基础的管理服务,保证网络的正常通信。该层主要 包括协议插件管理器、设备管理、拓扑管理、统计管理。其中:
[0064] 协议插件管理:通过插件机制来支持多种不同的网络协议,通过协议插件向上层 提供链路控制和数据包控制功能。该模块用于在启动后载入注册的各个协议插件,在收到 或发送消息时根据协议类型使用不同的协议插件对消息进行解码或编码;
[0065] 设备管理:对接入SDN网络中的交换机、主机等终端设备进行管理,在控制器中为 每一个交换机创建一个交换机实例,记录交换机的状态信息,端口(类型,状态,工作模式, 带宽大小等),并维持此交换机实例与物理交换机之间的状态连接,对出现的各种影响网络 拓扑事件(如交换机下线,端口 down等)快速及时响应。
[0066] 拓扑管理:主要用于管控整个网络中所有物理交换机之间的链路信息。交换机连 接到控制器之后,向物理交换机管理模块上报其所有包含的端口信息。物理网络拓扑管理 遍历交换机的所有端口,并发送链路探测包,用于探测物理交换机网络的拓扑链路结构。当 有新交换机加入到网络中时,可以将其加入到交换机队列中,并立即触发发送LLDP报文, 测量其和其他交换机的连接关系。另外,就是周期性的遍历所有交换机发送LLDP报文,以 即使将物理网络的拓扑变化,反映到流量调度系统中。另外,当物理交换机和控制器断开连 接时,需要对物理网络拓扑进行相应的修改。
[0067] 统计管理:启动该模块后需要初始化统计模块需要的如存储和采集需要的资源, 向其他模块提供统计服务。
[0068] 核心管理:该模块是基础控制模块和调度策略层的核心,将协议管理插件的0F消 息转化其他模块用于监听的事件,作为流量调度系统的事件转换中枢。
[0069] 调度策略层是本系统的核心部分,承担着整个流量工程解决方案的策略制定。该 层主要包括流量分级、可行路径计算、链路状态分析、最优路径计算、调度策略制定。其中:
[0070] 1)流量智能识别分级
[0071] 由于网络中有着协议类型丰富的流量,不同类型的流量用户的使用频率也不同。 本课题根据网络数据的分析结果,对流量类型按用户使用频率进行分类,并且制定相关优 先级,对协议插件管理模块解析的数据包进行深度解析,确定其类型,并映射为相应的优先 级,为上层模块提供服务。
[0072] 2)可行路径计算
[0073] 流量优先级确定后,根据流量确定端到端具体信息,根据源端和目的端的信息通 过路径计算算法计算出流量在网络中的可行路径;
[0074] 3)链路状态分析
[0075] 根据流量的可行路径对路径中每条链路的状态进行分析,包括链路带宽、链路吞 吐量、链路利用率等信息;
[0076] 4)最优路径计算
[0077] 以可行路径和链路状态为基础,按照最优路径算法计算出最优路径。
[0078] 5)调度决策
[0079] 根据计算出的最优路径对流量进行调度。
[0080] 接口层:为外界访问流量调度系统的接口,可以通过本地方法调用、RPC等面向过 程的访问工具,也可通过符合REST架构风格的面向对象的访问工具。使用符合REST的架 构风格,能有效的利用HTTP协议规定的URL通用接口,便于网络缓存、本地缓存、代理服务 器等技术的复用。REST的重点是以资源为核心,而URL完全可以胜任这项工作,所有的网络 资源的定位工作均由URL承担。作为整个资源的中枢,URL的定义和协调显得尤为重要,不 仅需要结构简单,而且层次还要分明。从用户的角度出发,URL的定义可以预测,实现快速 操作的目的。
[0081] 如图4所示,为本系统的整体算法流程。在系统开始启动后,首先加载模块,各模 块处于待命状态。下一步启核心模块,这些模块主要保证系统的正常运行,包括系统事件监 听、南向接口协议处理、定时器、RESTAPI提供等。接下来将打开事件监听器,本系统是基于 事件监听机制,所有模块运行产生的事件加均放在事件池中。每个模块均包含事件监听器, 当监测到事件池中存在匹配模块的监听事件,模块便执行相关事件处理机制。本模型符合 生产者消费者思想。
[0082] 系统的主线程以消息监听为主,本系统主要涉及的消息有Packetln、PacketOut、 FlowMod、FeatureRequest、FeatureReply、PortStatusRequest、PortStatus Reply。
[0083] 按照系统算法的思路,本系统对网络的链路进行主动测量,以交换机的端口为基 本单元。通过一定的周期获取交换机端口的数据转发信息,并将这些数据进行二次加工。端 口信息主要涉及的数据有端口带宽、端口转发的数据包数量、端口接收的数据包数量、端口 转发的总数据量、端口丢弃的数据包数量、端口接收的总数据量、端口丢弃的数据包总数据 量、错误数据包数量、错误总数据量。端口带宽由Feature消息获取。端口数据转发信息有 PortStatus 获取。
[0084] 这里提到了数据的二次加工,由于端口信息数据量庞大,这里需要提取端口的有 效信息,并进行分析。将端口状态数据处理后,将得到链路的状态信息,即链路利用率。链 路利用率最后会转化为链路权重信息。
[0085] 实施例的算法解决思路是当交换机有未识别的流量上报给流量调度系统时,系统 开启线程对流量类型进行识别。识别算法首先对流量中数据包携带的协议信息进行提取, 然后查询系统中已有的流量类型表,最后精确定位流量类型。将流量分为两种类型,其一是 持久且负载较高的稳定流量,称之为大象流,另一种是小股数据流构成的突发流量,称之为 老鼠流。
[0086] 由于考虑到大象流的持续性和稳定性,所以这里针对大象流的处理方法是进行有 权重的最优路径选择。而老鼠流考虑到它的突发性和数据量细微性,所以针对老鼠流的做 法是进行无权重的最优路径的选择。
[0087] 最后系统会根据不同类型的流量制定不同的流量调度策略,并且将策略贯彻落实 到相关的转发设备上。这里一个大周期的策略调度算法就已完成。图5是整个流量调度系 统的总体信息交互图。
[0088] 核心管理模块控制流量调度系统与交换机之间的链接并且把0F消息(即 OpenFlow消息,后面均以0F消息替代)转化为其它模块可以监听的事件,分派事件给各监 听模块处理,据此事件处理模块可以让消息转发给下一个处理模块或者停止处理。该模块 主要功能由Controller类提供,流量调度系统启动时,Controller启动Netty监听服务, 监听6633端口的0F消息,再调用OFChannelHandler类的processOFMessage方法开启0F 消息处理及派发。其关键处理流程如图6所示。
[0089] 实现流程如图6所示,OFMessage消息进入方法后,先判断消息类型,如果是HELLO 消息,则发送FEATURES_REQUEST请求;该消息有多种应答方式需要需要解析。
[0090] 如果是ECH0_REQUEST消息,则响应ECH0_REPLY消息;如果是ECH0_REPLY则结束 流程;如果是FEATURES_REPLY消息,则发送SET_GET_C0NFIG_REQUEST消息或者处理异步 OFFeaturesReply (前提是当连接状态为非HandshakeState. HELLO);如果是VENDOR消息, 则调用方法处理该消息或抛弃;如果是ERROR消息或STATS_REPLY消息,则调用相应方法处 理;如果是P〇RT_STATUS消息,则按增、删、改三种状态分类处理;如果需要继续处理,则判 断交换机是否处于未连接状态,是则结束流程,如果处于连接状态再判断是否是握手准备 状态以及是否是备机,如果不是准备状态或是备机则结束流程,否则判断是否是PACKET_IN 消息,是反序列化消息否则略过;再获取该类型消息监听器,通知相关模块处理消息事件; 最后清理流量调度系统上下文缓存。
[0091] 拓扑管理模块通过遍历交换机的所有端口,并发送链路探测包,用于探测物理交 换机网络的链路结构。获取的链路信息通过计算得出网络拓扑,周期性的遍历所有交换机 发送LLDP报文,以即使将物理网络的拓扑变化,反映到流量调度系统中。流量调度系统可 以对0F交换机进行分域。这里需要引入一个很重要的概念叫做OpenFlow域(简称0F域, 下面将直接使用该简称),0F域指的是和同一个流量调度系统中控制器实例相连的一组交 换机。
[0092] 0F域之间可以用二层的非0F交换机相连,例如:对于OFSwitchl -0FSwitch2一 Traditional Switch一0FSwitch3网络部署,将会被看成两个OF域,第一个由OFSwitchl和 0FSwitch2组成,第三个由0FSwitch3组成。拓扑管理模块会将当前所有的拓扑信息都被存 储在一个拓扑实例中,任何Topo变化都会建立一个新的拓扑实例,并且通知监听者拓扑发 生变化,如果其它模块需要监听拓扑变更,该模块就要实现ITopologyListener接口,并注 册监听。该模块的核心流程是网络拓扑关系计算、更新操作。其关键处理流程如图7所示。
[0093] 如图7所示,该流程首先判断链路是否有更新,如果有则判断链路增加还是删除 并执行相应操作,如果没有则获取排除tunnel和广播域连接的所有OpenFlow连接信息,然 后开始重新计算拓扑;计算步骤是先通过递归方式对0F交换机进行0F域划分,然后添加链 接到0F域中,使用dijkstra算法计算最短路径,再计算0F域广播树,最后通知监听模块拓 扑发生变化。
[0094] 设备管理模块从Packetln请求中得知获取设备信息,通过实体分类器将设备进 行分类,并建立索引,默认的实体分类器使用MAC地址和VLAN标识一个设备。设备管理模 块也可以获取到其它属性,如IP地址、最后一次被观察到的时间戳,甚至还可以获得该设 备上次接入交换机的DPID及端口。设备管理模块同时负责维护另外一个重要的信息是设 备的安装点,在一个0F域中,一个设备只能有一个安装点。
[0095] 设备管理模块关键处理流程:PacketIn消息进入该流程后,从流量调度系统的 上下文中获取Ethernet对象,构建源实体。通过源实体信息从primarylndex中获取 deviceKey。如果deviceKey为空,则从实体分类器中查找deviceKey。如果deviceKey仍 未找到,则创建deviceKey。构建该新device对象,添加到设备集合,并更新索引和设备更 新列表。如果找到deviceKey,则通过deviceKey查找对应设备。判断该设备是否包含该实 体(entity)信息。如果是则更新附着点,否则构建新device对象替换旧对象,再更新设备 集合及索引。如果有待删除队列则构建设备删除更新加入变更列表,通知监听模块有设备 发生变更;获取目标地址设备信息,结束流程。
[0096] 流量智能识别分级:包括大象流、老鼠流。现在大多数用户主要的流量集中在音视 频流、大数据量的文件传输等应用场景中,这些流是持久且负载较高的稳定流量。根据用户 的使用习惯。所以根据协议可以将这些数据识别集中在音视频流、大数据流文件方面,现在 主流的视频传输协议有RTP、RTSP。故通过协议对两类流进行区分是可行的。
[0097] 大部分数据是以UDP和TCP为载体进行传输,故以TCP和UDP的端口号为评判标 准进行数据包识别。大象流协议列表如表1所示。
[0098] 表1大象流协议列表
[0099]

【权利要求】
1. 一种基于软件定义网络的动态流调度方法,其特征在于: 通过对交换机上传的流量信息进行流量的解析,流量识别分级模块对流量类型按照优 先级进行分类; 调用统计管理模块获取交换机端口信息,计算出交换机的连接链路,并将链路信息传 递给拓扑管理模块; 调用拓扑管理模块获取流量流向的可行路径,计算可行路径中链路的实时状态统计信 息; 对这些链路属性进行分析,换算成路径在整体选择中的权重,通过该权重做出最优调 度策略,并进行策略下发。
2. 如权利要求1所述的基于软件定义网络的动态流调度方法,其特征在于:对交换机 未识别的上报流量进行流量类型识别,流量识别分级模块首先对流量中数据包携带的协议 信息进行提取,然后查询系统中已有的流量类型表,最后精确定位流量类型。
3. 如权利要求2所述所述的基于软件定义网络的动态流调度方法,其特征在于:拓扑 管理模块通过周期性的遍历交换机的所有端口,并发送链路探测包,用于探测物理交换机 网络的链路结构,获取的链路信息通过计算得出网络拓扑。
4. 如权利要求1-3任一项所述的基于软件定义网络的动态流调度方法,其特征在于: 获取交换机的实时状态信息和配置信息,并将这些信息进行二次加工,已得到链路权重; 根据可行路径计算模块计算出的路径将其包含链路信息进行组合,便计算出路径状态 信息。
5. 如权利要求4所述的基于软件定义网络的动态流调度方法,其特征在于:利用可行 路径计算和链路状态统计模块所提供的参数进行评测;按照链路长度、链路利用率的不同 权重进行计算,将计算结果进行递减排序,结果数值最大的即为最优流量传输路径。
6. 如权利要求5所述的基于软件定义网络的动态流调度方法,其特征在于:根据最优 路径计算模块得出的最优路径,结合实际物理网络,统计和路径相关的交换设备,针对不同 的交换设备进行转发策略的下发; 具体为: 获取最优路径后,调用统计管理模块,获取相关链路信息,在拓扑管理模块中获取相 关交换机信息,根据交换机的数据层标识映射实际物理设备,设备管理模块确定交换机的 网络连接端口号,并确定下发策略端口,针对性编辑流表,协议插件管理模块进行消息封装 后,下发转发策略。
7. -种实现权利要求1-6任一项所述方法的基于软件定义网络的动态流调度系统,其 特征在于:包括网络控制层、调度策略层、接口层, 网络控制层:包括协议插件管理器、设备管理、拓扑管理、统计管理,提供管理服务,使 网络正常通讯; 调度策略层:包括流量智能识别分级、可行路径计算、链路状态分析、最优路径计算、调 度策略制定,具体为: 流量智能识别分级:对协议插件管理模块解析的数据包进行深度解析,确定其类型,为 上层模块提供服务; 可行路径计算:通过路径计算算法计算出流量在网络中的可行路径; 链路状态分析:根据流量的可行路径对路径中每条链路的状态进行分析,包括链路带 宽、链路吞吐量、链路利用率等信息; 最优路径计算:以可行路径和链路状态为基础,按照最优路径算法计算出最优路径; 调度决策:根据计算出的最优路径对流量进行调度; 接口层为外界访问流量调度系统的接口。
8. 如权利要求7所述的基于软件定义网络的动态流调度系统,其特征在于: 协议插件管理:通过插件机制来支持多种不同的网络协议,通过协议插件向上层提供 链路控制和数据包控制功能。该模块用于在启动后载入注册的各个协议插件,在收到或发 送消息时根据协议类型使用不同的协议插件对消息进行解码或编码; 设备管理:对网络中终端设备进行管理,包括存储设备的配置信息、状态信息; 拓扑管理:计算拓扑结构并维护拓扑信息; 统计管理:启动该模块后需要初始化统计模块需要的如存储和采集需要的资源,向其 他模块提供统计服务。
9. 如权利要求7或8所述的基于软件定义网络的动态流调度系统,其特征在于:当进 入交换机的数据包不能被匹配时,交换机将数据包封装在Packetln消息中发送给控制器; 在接收到南向接口协议消息后首先对其进行协议解析,确定其为流量类型识别的消息 后,将解析其data数据段,该段存放的是真实数据包信息; 控制器将对数据包进行解析,确定数据包类型,并且对流量类型进行分级。
10. 如权利要求8所述的基于软件定义网络的动态流调度系统,其特征在于:接口层通 过本地方法调用面向过程的访问工具,或通过符合REST架构风格的面向对象的访问工具。
【文档编号】H04L12/26GK104158753SQ201410262426
【公开日】2014年11月19日 申请日期:2014年6月12日 优先权日:2014年6月12日
【发明者】冀烨, 沈卫康 申请人:南京工程学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1