实验3:OpenFlow协议分析实践
实验3:OpenFlow协议分析实践
一、实验目的
- 能够运用 wireshark 对 OpenFlow 协议数据交互过程进行抓包;
- 能够借助包解析工具,分析与解释 OpenFlow协议的数据包交互过程与机制。
二、实验环境
Ubuntu 20.04 Desktop amd64
三、实验要求
(一)基本要求
1.搭建下图所示拓扑,完成相关 IP 配置,并实现主机与主机之间的 IP 通信。用抓包软件获取控制器与交换机之间的通信数据。


2.查看抓包结果,分析OpenFlow协议中交换机与控制器的消息交互过程。
hello
控制器6633端口---> 交换机47686端口

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

于是双方建立连接,并使用OpenFlow 1.0
Features Request
控制器6633端口---> 交换机48686端口

SET_CONFIG
控制器6633端口---> 交换机47686端口

PORT_STATUS
交换机47686端口---> 控制器6633端口

FEATURES_REPLY
交换机47686端口---> 控制器6633端口

PACKET_IN
交换机47700端口---> 控制器6633端口

Flow_mod
控制器6633端口---> 交换机47686端口


PACKET_OUT
控制器6633端口---> 交换机47700端口

交互图

3. 回答:交换机与控制器建立通信时是使用TCP协议还是UDP协议?TCP.
二、进阶要求
OpenFlow源码数据结构
HELLO

FEATURES_REQUEST

SET_CONFIG

FEATURES_REPLY

PACKET_IN

PACKET_OUT

FLOW_MOD

三、个人感想
本次实验并不困难,但是较为繁琐,需要细心查询抓包结果,耐心对比。本次实验学习分析openflow协议,基本了解学习了openflow协议的工作方式以及发包流程,并且学习这些协议的源代码数据结构,进一步加强对openflow协议工作方式以及工作流程的理解,了解在这个协议之下交换机以及控制器进行交流分享数据的方式,对数据交互有了更深的理解。
浙公网安备 33010602011771号