实验3:OpenFlow协议分析实践

实验3:OpenFlow协议分析实践

一、实验目的

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

二、实验环境

  1. 下载虚拟机软件Oracle VisualBox;
  2. 在虚拟机中安装Ubuntu 20.04 Desktop amd64,并完整安装Mininet;

三、实验要求

(一)基本要求

  1. 搭建下图所示拓扑,完成相关 IP 配置,并实现主机与主机之间的 IP 通信。用抓包软件获取控制器与交换机之间的通信数据包。
    img
主机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
  • 打开miniedit,绘制如题述拓扑图,设置好openflow协议,然后保存拓扑至/home/ubuntu/031902218/lab3

     

     

     

     
  • 使用编辑器打开刚才保存的文件topo.py,如下修改主机IP设置

     

     

     
  1. 查看抓包结果,分析OpenFlow协议中交换机与控制器的消息交互过程,画出相关交互图或流程图。

    由于题述拓扑中存在两个交换机,这里只以其中一个交换机与控制器的交互作为说明

    • Hello

      控制器6633端口 ---> 交换机42696端口 (OpenFlow10)

      交换机42696端口---> 控制器6633端口(OpenFlow1.3)

       

       

       

    • Features Request / Set Config

      控制器6633端口-->交换机42686端口(OpenFlow1.0)

      控制器6633端口 ---> 交换机42686端口(OpenFlow1.0)

    • Port_Status

      交换机42686端口 --->控制器6633端口(OpenFlow1.0)

    • Features Reply

      交换机42686端口---> 控制器6633端口

    • Packet_in

      交换机42686端口---> 控制器6633端口(OpenFlow1.0)

    • Packet_out

      控制器6633端口 ---> 交换机42686端口(OpenFlow1.0)

    • Flow_mod

      控制器6633端口--->交换机42686端口(OpenFlow1.0)

       

       

    • 相关交互图

       

       

       

       

       

  2. 回答问题:交换机与控制器建立通信时是使用TCP协议还是UDP协议?

    使用了TCP协议,抓包截图与topo.py源码中均能体现.

(二)进阶要求

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

    • Hello源码与对应抓包结果

    • Features Request源码与对应抓包结果

       

      未找到源码,但可以发现这一个消息类型的格式与Hello一致,含有一个头部ofp_header。

    • Set Config源码与对应抓包结果

       

    • Port_Status

       

       

    • Features Reply源码与对应抓包结果

       

       

       


    • Packet_in源码与对应抓包结果

       

       

       

       

    • Packet_out源码与对应抓包结果

       

       

       

       


    • Flow_mod源码与对应抓包结果

       

       

       

       

       


四、个人总结  

抓包时很难找到实验所要求的包,看了几百行还没找到,然后才发现搭建拓扑的时候忘记设置openflow协议了,还有就是openflow.h头文件里面也有很多行代码,找起来实在痛苦,不过也算是锻炼了自己。不过和上次实验相比简单了很多,实验很顺利,也没出现什么大问题。痛苦并快乐着,这也许就是学习的过程吧。

 

posted @ 2021-09-24 15:58  李文定  阅读(89)  评论(0编辑  收藏  举报