首页 > 其他分享 >实验3:OpenFlow协议分析实践

实验3:OpenFlow协议分析实践

时间:2022-10-05 22:35:13浏览次数:40  
标签:控制器 OFPT OpenFlow 端口 实践 交换机 实验 6633

实验3:OpenFlow协议分析实践

一、实验目的

  1. 能够运用 wireshark 对 OpenFlow 协议数据交互过程进行抓包;
  2. 能够借助包解析工具,分析与解释 OpenFlow协议的数据包交互过程与机制。

二、实验环境

Ubuntu 20.04 Desktop amd64

三、实验要求

(一)基本要求

  • 导出拓扑文件,存入/home/ubuntu/212106624/lab3/

  • 文件目录

  • 目录下拓扑文件

  1. 查看抓包结果,分析OpenFlow协议中交换机与控制器的消息交互过程,画出相关交互图或流程图。
  • 根据抓包结果,可以得出交换机与控制器在本实验中是如以下过程进行消息交互的
    1. OFPT_HELLO, 源端口6633 -> 目的端口51664,从控制器到交换机,协议支持OpenFlow 1.0
      也有源端口51664 -> 目的端口6633的,即交换机到控制器的另一个包,此处协议为openflow1.5

       

    2. OFPT_FEATURES_REQUEST, 源端口6633 -> 目的端口51664,从控制器到交换机,请求特征信息

       

    3. OFPT_SET_CONFIG, 源端口6633(请按照我给你的flag和max bytes of packet进行配置) -> 目的端口51664,从控制器到交换机

       

    4. OFPT_PORT_STATUS, 源端口44812 -> 目的端口6633,从交换机到控制器,交换机端口发生变化,告知控制器相应的端口状态。

       

    5. OFPT_FEATURES_REPLY, 源端口44812 -> 目的端口6633,从交换机到控制器,(发送的特征信息,请查收)

       

    6. OFPT_PACKET_IN, 源端口44182 -> 目的端口6633,从交换机到控制器

       

    7. OFPT_PACKET_MOD, 源端口6633 -> 目的端口44178,分析抓取的flow_mod数据包,控制器通过6633端口向交换机44178端口下发流表项,指导数据的转发处理

       

    8. OFPT_PACKET_OUT, 源端口6633(请按照我给你的action进行处理) -> 目的端口36424
      • 综上可知,本实验中交换机和控制器之间消息交互过程,大致如下图所示:
        1. 回答问题:交换机与控制器建立通信时是使用TCP协议还是UDP协议?

      答:根据图上红框内容可知,交换机与控制器建立通信时是使用TCP(Transmission Control Protocol)协议

      (二)进阶要求

      将抓包结果对照OpenFlow源码,了解OpenFlow主要消息类型对应的数据结构定义。

      1. HELLO


      2. FEATURES_REQUEST

      源码参数格式与HELLO相同,将抓包截图与之对比

      3. SET_CONFIG

      对比

      4. PORT_STATUS

       

      5. FEATUERS_REPLY

      物理接口描述

      6. PORT_IN

       

      7. PORT_MOD

      8. PORT_OUT

      四、个人总结

      实验过程遇到问题:打开wireshark后创建拓扑,过滤Openflow数据包,并没有发现Flow_Mod数据包

      解决:阅读文档之后,发现Flow_Mod数据包是控制器想交换机下发流表项,指导数据的转发处理,所以在启动wireshark之后,再尝试执行pingall,最后发现了Flow_mod数据包。

      本次实验学习到了运用 wireshark 对 OpenFlow 协议数据交互过程进行抓包;借助包解析工具,分析与解释 OpenFlow协议的数据包交互过程与机制,实验本身难度不难,主要时间消耗在截图和设置解释图片上,在实验过程中,要注意的是需要先开启抓包后再进行创建拓扑,避免出现遗漏。 本次实验,也使我对OpenFlow协议有了更深刻形象的认识,提升了自主学习能力。而且同时对wireshark包解析工具的使用更加熟练,也大致了解了switch与controller之间消息交互的方式。

标签:控制器,OFPT,OpenFlow,端口,实践,交换机,实验,6633
From: https://www.cnblogs.com/Jue1108/p/16756346.html

相关文章

  • 实验3:OpenFlow协议分析实践
    一、实验目的能够运用wireshark对OpenFlow协议数据交互过程进行抓包;能够借助包解析工具,分析与解释OpenFlow协议的数据包交互过程与机制。二、实验环境Ubuntu20......
  • 实验3:OpenFlow协议分析实践
    实验3:OpenFlow协议分析实践一、实验目的能够运用wireshark对OpenFlow协议数据交互过程进行抓包;能够借助包解析工具,分析与解释OpenFlow协议的数据包交互过程与机制......
  • 实验三
    (一)基本要求搭建下图所示拓扑,完成相关IP配置,并实现主机与主机之间的IP通信。用抓包软件获取控制器与交换机之间的通信数据。HELLO:互相发送Hello消息互相协商Openflo......
  • 实验4:开源控制器实践——OpenDaylight
    基本要求利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight控制器通过Postman工具调用OpenDaylight提供的API下发流表,实现拓扑内主机h1和h3网络中断10s实验......
  • 实验3:OpenFlow协议分析实践
    一.实验目的搭建下图所示拓扑,完成相关IP配置,并实现主机与主机之间的IP通信。用抓包软件获取控制器与交换机之间的通信数据。#!/usr/bin/envpythonfromminine......
  • 实验4:开源控制器实践——OpenDaylight
    实验4:开源控制器实践——OpenDaylight一、实验目的能够独立完成OpenDaylight控制器的安装配置;能够使用Postman工具调用OpenDaylightAPI接口下发流表。二、实验环境Ub......
  • KUBERNETES服务健康检查配置最佳实践
    ​简介K8S服务健康检查从两个维度进行,分别为:就绪状态检查(readiness)和存活状态检查(liveness)。存活探针和就绪探针被称作健康检查。这些容器探针是一些周期性运行的小进程......
  • 光流算法从理论到实践专题1
    资料搜索​​光流估计-从传统方法到深度学习​​​​光流法研究笔记​​​​计算机视觉--光流法(opticalflow)简介​​​​《AnIterativeImageRegistrationTechniquew......
  • 实验3:OpenFlow协议分析实践
    一、实验目的能够运用wireshark对OpenFlow协议数据交互过程进行抓包;能够借助包解析工具,分析与解释OpenFlow协议的数据包交互过程与机制。二、实验环境Ubuntu2......
  • 图像金字塔从理论到实践专题
    1、资源搜索​​图像金字塔-百度百科​​​​【OpenCV学习笔记】之图像金字塔(ImagePyramid)​​​​高斯金字塔与拉普拉斯金字塔​​​​数字图像处理(21):图像金字塔(高斯......