实验3:OpenFlow协议分析实践

一、实验目的

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

二、实验环境

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

三、实验要求

  1. 搭建下图所示拓扑,完成相关 IP 配置,并实现主机与主机之间的 IP 通信。用抓包软件获取控制器与交换机之间的通信数据包。
    SDN第3次上机实验_数据交互
    SDN第3次上机实验_数据交互_02
    SDN第3次上机实验_数据_03
    hello
    SDN第3次上机实验_流程图_04
    Features Request/Set Config
    SDN第3次上机实验_数据交互_05
    SDN第3次上机实验_数据交互_06
    Port_Status
    SDN第3次上机实验_流程图_07
    Features Reply
    SDN第3次上机实验_数据交互_08
    Packet_in
    SDN第3次上机实验_数据_09
    Packet_out
    SDN第3次上机实验_数据_10
  2. 查看抓包结果,分析OpenFlow协议中交换机与控制器的消息交互过程,画出相关交互图或流程图。
    SDN第3次上机实验_数据交互_11
  3. 回答问题:交换机与控制器建立通信时是使用TCP协议还是UDP协议?
    答:使用TCP协议。

四、实验总结

这次的实验相较于前两次的实验比较简单,主要通过wireshark抓包进行分析。在刚开始使用wireshark时,因为没有提前打开软件,导致第一次的抓包没有抓到hello包,在经过多次的试验、查看PPT和同学的帮助下,成功抓到了实验所需要的包。通过这次实验,我对wireshark的使用了解到了更多,可以更加熟练地使用它进行抓包。通过抓包的数据了解到了OpenFlow协议中交换机与控制器的报文交互过程,让我有了更深的印象。通过这次实验让我更加容易理解这部分的内容。