基于SDN的最短路径算法(dijkstra)实现.docx

基于SDN的最短路径算法(dijkstra)实现.docx

ID:57323034

大小:322.62 KB

页数:9页

时间:2020-08-11

基于SDN的最短路径算法(dijkstra)实现.docx_第1页
基于SDN的最短路径算法(dijkstra)实现.docx_第2页
基于SDN的最短路径算法(dijkstra)实现.docx_第3页
基于SDN的最短路径算法(dijkstra)实现.docx_第4页
基于SDN的最短路径算法(dijkstra)实现.docx_第5页
资源描述:

《基于SDN的最短路径算法(dijkstra)实现.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基于SDN的最短路径算法(dijkstra)实现一.实验要求把路由算法作为APP加入到控制器中,使SDN网络实现根据拓扑情况自动选择路由的功能。二.实验环境及思路本实验的控制器采用Floodlight,向Floodlight添加模块zhlruote以实现控制器路由功能。将上题中采用的dijkstra最短路径算法加入到控制器中,控制器根据选择出的路由下发流表给交换机,从而使主机节点能够相互通信。实验中各个链路的带宽约束及带宽需求bdw通过zhlroute模块在init()方法中读取input.txt文件获得,源节

2、点与目的节点通过packetin消息获得。zhlroute模块初始化完成后,监听PacketIn消息,收到消息后进行判断,如果需要转发,则通过returnRoute()方法获取目的节点到源节点的完整路径,并对路径上的节点进行遍历以下发流表。在获取路由路径时,使用floodlight提供的拓扑管理模块(TopologyManager.java)来获取各链路的连接状态(包括连接节点及端口,存储于clusters类集中),通过对各个节点上与其相连的链路的遍历来获取源节点到目的节点的完整路径。模块整体流程图如图1所示:

3、图1:zhlroute模块流程图三.实验步骤(1)修改第一大题中用到的创建拓扑的myfirst.py文件,创建如下所示拓网络拓扑:拓扑中包括8台交换机和8台主机,交换机根据其SwitchDPID(00:00:00:00:00:00:00:00到00:00:00:00:00:00:00:08)由低到高分别标记为s1到s8,主机h1-h8(ip)分别与s1-s8相连。图2:网络拓扑图3:网络拓扑(2)启动floodlight,注意将forwarding模块禁止启动加载,然后对zhlroute模块进行连通性测试,结果

4、如图4。说明各主机可以进行通信,zhlroute模块能够发现路径并下发流表。图4:zhlroute模块功能测试实验中带宽约束及带宽需求(bdw)通过读取input.txt文件获得,input.txt文件内容如下(本实验中的源节点与目的节点从PacketIn消息中获得,不通过input.txt文件获得):leftnodeID,rightnodeID,bandwidth1,3,1001,4,1002,3,1002,4,1003,4,1003,5,1003,6,1004,5,1004,6,1005,6,1005,7,

5、1005,8,1006,7,1006,8,100;srcNodeID,dstNodeID,bandwidth3,8,90(3)进行路径分析测试,在模块中添加语句System.out.println(route)以输出获取到的Route,输入以下命令:测试主机h1与h7能否通信并获取经过的路径信息。elcipse控制台中输出的信息(整条路径)如下:Route[id=RouteId[src=00:00:00:00:00:00:00:07dst=00:00:00:00:00:00:00:01],switchPorts

6、=[[id=00:00:00:00:00:00:00:07,port=1],[id=00:00:00:00:00:00:00:07,port=2],[id=00:00:00:00:00:00:00:05,port=5],[id=00:00:00:00:00:00:00:05,port=2],[id=00:00:00:00:00:00:00:03,port=5],[id=00:00:00:00:00:00:00:03,port=2],[id=00:00:00:00:00:00:00:01,port=2],[id=

7、00:00:00:00:00:00:00:01,port=1]]]Route[id=RouteId[src=00:00:00:00:00:00:00:01dst=00:00:00:00:00:00:00:07],switchPorts=[[id=00:00:00:00:00:00:00:01,port=1],[id=00:00:00:00:00:00:00:01,port=2],[id=00:00:00:00:00:00:00:03,port=2],[id=00:00:00:00:00:00:00:03,por

8、t=5],[id=00:00:00:00:00:00:00:05,port=2],[id=00:00:00:00:00:00:00:05,port=5],[id=00:00:00:00:00:00:00:07,port=2],[id=00:00:00:00:00:00:00:07,port=1]]]输出的route中,每条完整路径由id确定(源节点和目的节点)。完整路径包括了路径所经过

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。