完成OpenFlow相关实验

本文介绍了如何通过OpenFlow完成网络实验,包括使用virtualbox和mininet搭建环境,构建树形拓扑,使用dpctl下发流表以实现host间ping操作。实验中详细解析了ARP请求与回复、ICMP请求与回复的过程,并通过wireshark捕获数据包进行分析验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、实验内容:
1、下载安装virtualbox和mininet虚拟机
2、学习mininet的使用,阅读相关文献和网站,比如mininet walkthrough
3、采用线型(linear)或者树形(tree)拓扑,或者用python自定义拓扑。在该拓扑下,使用dpctl下发流表,完成两个host的ping操作,用wireshark或者tcpdump抓包,截屏并分析结果
二、实验原理
1、ARP request
host1 不知道host2的MAC地址,所以会发送ARP请求,交换机收到ARP包会产生Table miss,然后报告给控制器,实验中控制器经过查找发现MAC地址表没有ARP包中的目的MAC,然后会将此包发回给交换机,并让交换机广播出去,所以最终host2会收到此ARP包。
2、ARP reply
host2使用ARPreply回复host1,控制区就学习到了host2的MAC。
3、ICMP request
host1知道host2的MAC地址,因此发送echo request给host2,此包报告给控制器,然后控制器就会下发流表,然后由控制器发送flow——mod数据包,ONetSwitch收到此数据包,就会按照数据包内容来修改流表。
4、ICMP reply
host2此时也知道了host1的MAC地址,因此发送echo reply给host1.同样,控制器也会下发流表然后后面的icmp包就直接匹配流表到达目的地,不会再报告给控制器。
三、实验过程
1、安装virtualbox和mininet虚拟机
根据网上教程下载安装即可,不再赘述过程,下图为安装后界面,是有图形显示界面的。如果不下载安装moodle上的mininet,而直接从mininet官网上下载的话,安装的结果是一个黑色界面,没有蓝色的背景图像显示,当执行sudo wireshark &时结果也是无法进入,应该还需要再安装图像界面或者wireshark。本实验仅采用moodle上的mininet进行安装并做实验。
 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值