实验3:OpenFlow协议分析实践
(一)基本要求
1.保存在/home/用户名/学号/lab3/目录下的拓扑文件
2.wireshark抓包的结果截图和对应的文字说明
hello
控制器6633端口(我最高能支持OpenFlow 1.0) ---> 交换机50480端口
交换机50480端口(我最高能支持OpenFlow 1.5) ---> 控制器6633端口
于是双方建立连接,并使用OpenFlow 1.0
Features Request
控制器6633端口(我需要你的特征信息) ---> 交换机50480端口
Set Config
控制器6633端口(请按照我给你的flag和max bytes of packet进行配置) --->
交换机50480端口
Features Reply
交换机50480端口(这是我的特征信息,请查收) ---> 控制器6633端口
Packet_in
分析抓取的数据包,可以发现是因为交换机发现此时自己并没有匹配的流表(Reason:
No matching flow (table-miss flow entry) (0)),所以要问控制器如何处理
Flow_mod
分析抓取的flow_mod数据包,控制器通过6633端口向交换机50480端口、交换机50478端口
下发流表项,指导数据的转发处理
Packet_out
控制器6633端口(请按照我给你的action进行处理) ---> 交换机50480端口
3.交互图
4.交换机与控制器建立通信时是使用TCP协议
(二)进阶要求
将抓包基础要求第2步的抓包结果对照OpenFlow源码,了解OpenFlow主要消息类型对应的数据结构定义。
hello
Features Request
Set Config
Features Reply
Packet_in
Flow_mod
Packet_out
(三)个人总结
本次实验属于验证性实验,难度不高,关键在于如何去理解 OpenFlow协议的数据包交互的过程与机制。第一次使用wireshark进行抓包时未出现有效数据段,后面发现是打开wireshark后没有构建拓扑。在本次实验中加深了我对wiresha的掌握及应用,并且通过借助包解析工具,分析与解释 OpenFlow协议的数据包交互过程与机制,了解OpenFlow主要消息类型对应的数据结构定义,使得我对openflow协议都有了更深的理解。
标签:控制器,OpenFlow,50480,端口,实践,交换机,实验,6633 From: https://www.cnblogs.com/zy-lmt99/p/16738651.html