Java教程
实验3:OpenFlow协议分析实践
本文主要是介绍实验3:OpenFlow协议分析实践,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
实验3:OpenFlow协议分析实践
一、实验目的
能够运用 wireshark 对 OpenFlow 协议数据交互过程进行抓包;
能够借助包解析工具,分析与解释 OpenFlow协议的数据包交互过程与机制。
二、实验环境
下载虚拟机软件Oracle VisualBox;
在虚拟机中安装Ubuntu 20.04 Desktop amd64,并完整安装Mininet;
三、实验要求
(一)基本要求
搭建下图所示拓扑,完成相关 IP 配置,并实现主机与主机之间的 IP 通信。用抓包软件获取控制器与交换机之间的通信数据包。
主机
IP地址
h1
192.168.0.101/24
h2
192.168.0.102/24
h3
192.168.0.103/24
h4
192.168.0.104/24
配置如下
查看抓包结果,分析OpenFlow协议中交换机与控制器的消息交互过程,画出相关交互图或流程图。
hello
控制器6633端口(我最高能支持OpenFlow 1.0) ---> 交换机34354端口
交换机34354端口(我最高能支持OpenFlow 1.5)--- 控制器6633端口
Features_Request
控制器6633端口(我需要你的特征信息) ---> 交换机34354端口
Set Config
控制器6633端口(请按照我给你的flag和max bytes of packet进行配置) ---> 交换机34354端口
Port_Status
当交换机端口发生变化时,告知控制器相应的端口状态。
Features_Reply
交换机34354端口(这是我的特征信息,请查收)--- 控制器6633端口
Packet_IN
Packet_Out
Flow_Mod
分析抓取的flow_mod数据包,控制器通过6633端口向交换机34354端口、交换机34356端口下发流表项,指导数据的转发处理
交互图如下
回答问题:交换机与控制器建立通信时是使用TCP协议还是UDP协议?
答:使用TCP协议。
四、个人总结
实验难度:适中,没有遇到太大的困难
实验过程遇到的困难及解决办法:查看wireshark抓包时,我看那个弹框一直在增加,一直到了几千行,在过滤Openflow数据包时还在增加,没办法观察截图。后面发现左上角可以停止,重新抓包后,过了一下按停止就解决了问题,可以正常观察截图。
个人感想:在本次实验中,我并没有遇到太多的问题,一方面是之前的实验碰到过很多小问题,这些问题在这次实验中出现时,我有经验解决它们,另一方面是这次实验老师提供的pdf文档有比较详细的步骤,我按步骤比较顺利完成了。从这次实验中,我通过使用wireshark抓取数据包,学习了OpenFlow协议下控制器和交换机的交互过程,对控制器与交换机交互过程有了进一步的理解,同时在实践操作方面也有了一定的提升。
这篇关于实验3:OpenFlow协议分析实践的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
您可能喜欢
一步到位:购买适合 SEO 的域名全攻略
12-28
OpenFeign服务间调用学习入门
12-27
OpenFeign服务间调用学习入门
12-27
OpenFeign学习入门:轻松掌握微服务通信
12-27
OpenFeign学习入门:轻松掌握微服务间的HTTP请求
12-27
JDK17新特性学习入门:简洁教程带你轻松上手
12-27
JMeter传递token学习入门教程
12-27
JMeter压测学习入门指南
12-27
JWT单点登录学习入门指南
12-27
JWT单点登录原理学习入门
12-27
JWT单点登录原理学习入门
12-27
JWT解决方案学习入门:新手必读教程
12-27
JWT解决方案学习入门:新手必读教程
12-27
Mybatis持久层框架学习入门
12-27
史上最全性能调优秘籍:让你的系统飞起来!
12-27
栏目导航
前端开发
HTML5教程
CSS教程
Javascript
jQuery教程
AJAX教程
Node.js教程
XML教程
正则表达式
后端开发
Go教程
C/C++教程
消息队列MQ
Net Core教程
Asp.net教程
Java教程
PHP教程
移动端开发
微信公众号开发
小程序开发
Swift教程
IOS教程
Kotlin教程
Android开发
数据库
Redis教程
MongoDB教程
PostgreSQL教程
Oracle教程
MariaDB教程
SqLite教程
MySql教程
SqlServer教程
服务器运维
Kubernetes
Docker容器
linux shell
Nginx教程
网站安全
PowerShell教程
Linux教程
人工智能
TensorFlow教程
Python教程
机器学习
人工智能学习
区块链
区块链技术
游戏开发
游戏编程
Unity3D教程
网站运营
网站策划
网站优化
建站知识
大数据/云计算
云计算
Hadoop教程
软件工程
软件/开发工具使用
Git教程
资讯