欢迎来到天天文库
浏览记录
ID:52351587
大小:976.62 KB
页数:3页
时间:2020-03-26
《基于Openflow的路由算法设计.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、学术探讨基金项目2015年第9期基于Openflow的路由算法设计林亚飞刘惠临(安徽理工大学计算机科学与工程学院,安徽淮南232001)[摘要]在互联网业务需求迅速增长的今天,传统的网络结构已然面临着各种难题。软件定义网络技术提供了一种将设备数据平面和控制平面解耦的新型网络架构,为互联网的发展提供了一种新的解决方案。本文提出在Openflow控制器的基础上,结合Dijkstra算法,解决数据包转发过程中的最优路径查找问题。[关键字]SDN;Openflow;Dijkstra算法中图分类号:TP393.02文献标识码:A文章编号:1008-6609(2015)09-00
2、30-02OpenFlow路由组件对数据包进行路由查询和转发。如图11引言为Openflow网络结构示意图。软件定义网络(Software-DefinedNetworking,简称SDN)架构中数据层与控制层相互分离,交换机的控制策略由控制器负责,数据层仅需根据控制器下发的控制策略进行数据包的转发。OpenFlow允许一个交换机同时与多个控制器相连,当主控制器出现故障时,可通过一定的选举规则选举出一个新的主控制器,使得网络正常运行。2路由框架探讨SDN网络能够可以解决传统的网络架构所面临的问题,图1OpenFlow网络结构示意图如OTT业务冲击、网络架构不灵活、信息重
3、复传输率高等,同时对网络的信息资源和网络资源的使用灵活高效,且与目前对数据包进行转发时,我们需选取最优路径来节省时的互联网兼容。随着互联网功能要求和业务需求的增加,网间,提高工作效率。Dijkstra算法是从一个顶点到其余各顶络中间设备承担了更多的职责,使得封装在设备内部的网络点的最短路径算法,能够解决有向图中的最短路径问题。计协议越来越复杂,设备成本也急剧增加。而在OpenFlow网算时以起始点为中心向按路径由小至大扩展直到终点。具络中,为了提高对流的控制能力,OpenFlow交换机提供了从体思想为:设G=(V,E)是一个带权有向图,把图中顶点集合V物理层的物理接口
4、到传输层的逻辑端口之间的全部参数,并分成已知最短路径的顶点集合(A)和未知最短路径的顶点集据此进行数据包的转发。我们对网络数据流量采用集中式合(B),按最短路径从小到大的顺序依次把B中的顶点加入决策的方式。一个OpenFlow控制器通过控制多台Open-A中。在加入过程中,要保证从原点v到已知顶点(A)的最Flow交换机来共同完成对流的转发。OpenFlow主控制器短路径长度不得大于从原点v到任一未知顶点(B)的最短路能够获取整个网络的链路状况、网络拓扑、网络流量等信息,径长度。实现精确的控制和优化整个网络的运行状况。从而,传统网具体步骤如下:络架构中存在的一些路由协
5、议问题在这种集中式控制的架(1)初始时,A集合中只有原点,即A={s},s的距离为构下能够得到很好的解决。0。B包含除v外的所有顶点,b的距离有两种情况:一种情况3路由算法设计是b与v有边,b的距离为该边的权值;另一种情况是b不是v交由OpenFlow交换机处理的数据包有三种:⑴Open-的出边邻接点,b的距离为∞。Flow网段内传输的数据包;⑵来自于传统路由器的数据包;(2)从B中选取与v距离最短的顶点n,把n加入A中(此⑶OpenFlow网段间转发的数据包。第三种情况下,要应用时n的最短路径长度已知即该顶点到v的距离)。——————————————作者简介:林亚飞
6、,女,河北邢台人,本科,研究方向:物联网技术,网络路由算法。基金项目:2014年度国家大学生创新创业训练项目,项目编号:AH201410361238。-30-基金项目学术探讨2015年第9期(3)以n作为新的中间节点,更新B中各顶点的距离;若许的最大值,起点S到其它所有节点的最短距离D设为所允经过节点n的距离值比未经过n时的距离值小,则更新顶点b许的最大值,起点的节点编号k,所有节点的权值H[k,i]均置的距离值(为n的距离+边上权值)。为0,并将该节点压入stHash和gHash栈(pVector中的节点按(4)重复步骤(2)和(3)直到A中包含全部节点。直接前趋节
7、点编号为索引进行排序)。(2)最短距离节点搜索:取出gHash栈顶元素i,搜索与之相通的节点中权值最小的弧,并将k放入最短路径点列表stVector中,直到gHash栈空。(3)最短路径修改:当p为目标节点时,即搜索到了一条最短路径,将这条最短路径的节点列表stVector加入最短路径列表stHash中,若d>D[p],则修改最短路径为d=D[p],记s为该stVector所对应的关键字key,令p=k,转步骤(5);当p为非目标节点时,转步骤(4)。(4)更新搜索起点s’:搜索与p相邻的节点,若p出度大于零,则将p压入栈gHash,其相邻结点列表n
此文档下载收益归作者所有