51学通信论坛2017新版

标题: 4.2 寻找最短路径 [打印本页]

作者: admin    时间: 2017-9-17 12:50
标题: 4.2 寻找最短路径
</p>1. 实验目的

1、认识VND并且掌握其基本使用方法。 2、学会使用pox控制器的l2_multi模块寻找主机间的最短传输路径。

2. 实验原理

VND是一个基于web的图形用户界面,布局和用法有点类似于packet tracer,用户利用所提供的网络元件自主搭建拓扑,双击某个元件可以查看、编辑该元件的基本信息。拓扑搭建完成后,用户可以根据需要导出生成NSDL文件,SDN版本的VND还可以生成mininet和openflow控制器脚本。
forwarding.l2_multi是一个交换机mac地址学习模块,其他模块采用的地址学习方式是基于“交换机——交换机”,交换机与相邻的交换机交换地址信息。而l2_multi模块使用openflow.discovery学习整个网络的拓扑,所有交换机同步地址信息。

3. 实验任务

本实验介绍了一个工具VND,要求利用VND绘制网络拓扑并导出生成mininet脚本。此外利用pox控制器中的l2_multi模块找出该拓扑中两个主机间的最短路径。

4. 实验步骤

Mininet所在主机的IP:

[attach]917[/attach]

Pox所在主机的IP:

[attach]918[/attach]


4.1 绘制网络拓扑

登录http://www.ramonfontes.com/vnd/#,可以看到如下页面:

[attach]919[/attach]

点击左侧nodes中的网络元件,拖动到右侧空白区域中,在links中选择适当的方式连接nodes,形成网络拓扑。本实验搭建如下所示的网络拓扑:

[attach]920[/attach]

拓扑搭建完成后可以导出形成mininet脚本,点击“file->Export->Export to Mininet”:

[attach]921[/attach]

随后,就可以在Download目录下查看到新生成的脚本,修改文件权限,使其成为可执行脚本。

4.2 寻找最短路径

1、修改mininet脚本 生成的mininet脚本中控制器参数不齐全,需要手动添加,将“c7 = net.addController(‘c7’)”改为“c7 = net.addController(‘c7’, controller=RemoteController, ip=’10.0.0.52’, port=6633)”。其中ip和port根据实际情况填写自己的控制器参数。
2、启动pox 实验平台默认自启动pox控制器,为了使用l2_multi模块,可以先kill掉pox进程,再使用下述命令重新启动:
Shell
# ./pox.py log.level --DEBUG log --file=mylog,w forwarding.l2_multi openflow.discovery

[attach]922[/attach]

3、执行mininet脚本

[attach]923[/attach]

4、ping测试

[attach]924[/attach]

5、查看交换机流表信息
[attach]925[/attach]


[attach]926[/attach]


5. 实验结论


从h5-h6有两条路径,分别是“h5-s3-s4-h6”和“h5-s3-s1-s2-s4-h6”。由s1、s2、s3、s4的流表可以看出,s3、s4中有相关流表,而s1、s2中并没有流表,说明数据包没有通过s1、s2,h5、h6之间最短的路径是h5-s3-s4-h6。
声明:本文转载自网络。版权归原作者所有,如有侵权请联系删除。




欢迎光临 51学通信论坛2017新版 (http://bbs.51xuetongxin.com/) Powered by Discuz! X3