Mininet实验 使用l2_multi模块寻找最短路径实验
参考:使用l2_multi模块寻找最短路径实验
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学习整个网络的拓扑,所有交换机同步地址信息。
VND图形界面(Ubuntu迷一样的自带截图工具):

3. 实验任务
本实验介绍了一个工具VND,要求利用VND绘制网络拓扑并导出生成mininet脚本。此外利用pox控制器中的l2_multi模块找出该拓扑中两个主机间的最短路径。
4.实验操作
做这个实验的时候,我在同一个虚拟环境中跑pox和mininet,IP地址通过ifconfig命令查看:

IP:10.0.2.15
打开VNDweb可视化网页:http://www.ramonfontes.com/vnd/#

搭建以下拓扑:

导出mininet脚本:file -> Export -> Export to Mininet

自动保存在/Download目录下,我用的是Ubuntu中文版,所以这个目录的名称叫做/下载。
更改下这个mininet脚本,使mininet能够和pox交换机联系起来:
cd /Download
vim mininetCode37669.sh
将脚本中关于拓扑中唯一的控制器语句进行更改,我这里的控制器名为c5:

执行mininet脚本:
./mininetCode37669.sh
查看拓扑信息:

pingall:

查看流表:
s4:

s3:

s2 & s1:

实验结论
从h6-h7有两条路径,分别是“h6-s3-s4-h7”和“h6-s3-s1-s2-s4-h7”。由s1、s2、s3、s4的流表可以看出,s3、s4中有相关流表,而s1、s2中并没有流表,说明数据包没有通过s1、s2,h6、h7之间最短的路径是h6-s3-s4-h7。
2016/11/20
Mininet实验 使用l2_multi模块寻找最短路径实验的更多相关文章
- mininet(三)简单的NAT实验
mininet(一)实验环境搭建 mininet(二)简单的路由实验 mininet(三)简单的NAT实验 本次实验拓扑图如下: 假设 Openvswitch switch1是一个带有NAT功能的路由 ...
- mininet(二)简单的路由实验
mininet(一)实验环境搭建 mininet(二)简单的路由实验 mininet(三)简单的NAT实验 在网上找了 好几个代码都是不能直接复现成功,这里把自己实现成功的代码给大家演示一下. 实验的 ...
- 计算机组成原理实验之CPU组成与指令周期实验
(实验五 CPU组成与指令周期实验) 课程 计算机组成原理实验 实验日期 2015 年 12 月 8 日 一.实验目的 1.将微程序控制器同执行部件(整个数据通路)联机,组成一台模型计算机. 2. ...
- 20145314郑凯杰《网络对抗技术》可选实验 shellcode注入与Return-to-libc攻击实验
20145314郑凯杰<网络对抗技术>可选实验 shellcode注入与Return-to-libc攻击实验 1.0 实践内容 Return-to-libc攻击是一种特殊的缓冲区溢出攻击, ...
- OpenDayLight Helium实验三 OpenDaylight二层转发机制实验 2
鉴于在个人笔记本上虚拟机运行ODL实在太慢,把实验的场景搬到了实验室. 实验上:OpenDayLight Helium实验三 OpenDaylight二层转发机制实验 抓包实验 紧接着,在运行Mini ...
- OpenDayLight Helium实验三 OpenDaylight二层转发机制实验
本文基于OpenDaylight二层转发机制实验 而成 在SDN网络中,处于末端的主机并不知道其连接的网络是SDN,某台主机要发送数据包到另一台主机,仍然需要进行IP到MAC地址的ARP解析.SDN网 ...
- 20155202 《Java程序设计》实验二(面向对象程序设计)实验报告
20155202 <Java程序设计>实验二(面向对象程序设计)实验报告 代码托管 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉 ...
- 20201123 实验三《python程序设计》实验报告
20201123 2020-2021-2 <python程序设计>实验三报告 课程:<Python程序设计>班级:2011姓名:晏鹏捷学号:20201123实验教师:王志强实验 ...
- 20145216 20145330 《信息安全系统设计基础》 实验五 简单嵌入式WEB 服务器实验
20145216 20145330 <信息安全系统设计基础> 实验五 简单嵌入式WEB 服务器实验 实验报告封面 实验步骤 1.阅读理解源码 进入/arm2410cl/exp/basic/ ...
随机推荐
- Zabbix报告无交换内存主机 Lack of free swap space on xxxxx
[root@xx ~]# free -m total used free shared buffers cached Mem: 3832 3488 343 0 267 2389 -/+ buffers ...
- ajax 中文乱码问题 主要是IE浏览器
解决方案: 提交前采用encodeURI两次编码,注:一定是两次 举例: var taText = $("#txtName").val(); taText = encodeURI( ...
- ASP.NET之AreaRegistration
ASP.NETMVC的AreaRegistration是用来干什么呢? 它是用来提供一个很好的接口让我们可以将Controller定义在其他的Library项目中,这主要可以用来解决模块化开发:一般情 ...
- 【ASP.NET MVC】个人复习整理
1.为 Action 标注 Attribute 限制访问 public class HomeController : Controller { [HttpPost] public ActionResu ...
- PHP数组的使用方法小结
数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体.数组的每个实体都包含两项:键和值. 一.什么是数组数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体.数组的每个实体 ...
- [杂]SQL Server 之 Understanding Connection Pooling and Transactions
A SqlConnection consists of two parts: the public instance that your code interacts with (the outer ...
- a个人经验总结
个人经验总结 js中事件有个 on前缀 比如 onclick onmousemove jq中事件省略 on 如 click mousemove html引入其他页面 <iframe src= ...
- adb shell 命令详解(转)
adb介绍 SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为(Android Debug Bridge就是调试桥的作用.通过adb我们可以在Eclipse中方面 ...
- 电赛初探(二)——语音采集回放系统
一.系统结构 1.基本要求 (1)话音/功率放大器增益均可调: (2)带通滤波器:通带为300Hz-3.4kHz : (3)ADC:采样频率f s=8kHz,字长不小于8位: (4)语音存储时间≥10 ...
- 普通SQL语句可以用Exec执行
例如存储过名为:myprocedure use AdventureWorks create procedure myprocedure @city varchar(20) as begin selec ...