OpenFlow

1. OpenFlow简介
 

OpenFlow是一种通信协议,用于在网络设备之间进行通信,并 能够实现控制数据流的灵活性和集中管理。OpenFlow协议通过控制器来管理网络设备,并根据网络流量的需求对网络设备进行动态配置和管理。

2. Wireshark简介
 

Wireshark是一款开源的网络协议分析工具,可以帮助用户捕获和分析网络数据包。通过Wireshark工具,我们可以深入了解数据包的传输过程,进而解决网络问题和优化网络性能。

3.实验步骤

PS:教程不包括安装Ununtu、niminet等教程,文献参考https://www.cnblogs.com/eleven955/p/15328388.html


3.1实验前置任务


1.首先在ubuntu系统中启动mininet可视化界面
 

mininet/examples/miniedit.py


然后按照下图所示,搭建拓扑图

————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/2301_79607410/article/details/139641101

2.点击左上角的Exit里的Preferences,配置偏好设置,并按照下图进行设置3.将修改好的拓扑图保存为*.py的格式,如下图所示

使用vim打开文件,编辑每个终端的IP地址,当然,您也可以提前在拓扑图中编辑IP地址。

vim name.top

 

保存好之后,主要任务的前置任务就算完成了

3.2基础实验
首先再打开一个终端,用来启动Wireshark进程

wireshark

如果您使用的账户非root模式,请在指令前加上sudo

之后使用使用第一个终端运行保存好的拓扑图py文件

 
  1. python {name}.py

  2. pingall打开Wireshark开始分析数据包
    当控制器和交换机建立连接时,它们会通过发送 "OFPT_HELLO" 消息进行握手。这个握手过程用于确保双方都理解彼此的通信协议版本,并为后续的通信建立基础。,其中包含了源端口号(6633)与目的端口号(59784)并且可以看到使用的传输协议是TCP协议查看openflow_v6的数据包查看openflow_v1的数据包的OFPT_FEATURES_REQUEST,OFPT_FEATURES_REQUEST用于控制器向交换机请求交换机的特性和能力。当控制器与交换机建立连接后,通常会发送此类消息以获取关于交换机的信息,以便控制器可以了解交换机的功能和配置。查看openflow_v1的数据包的OPTF_SET_CONFIG,OPTF_SET_CONFIG可以确保控制器和交换机之间的行为一致,并能够对交换机的行为进行精细的控制。查看openflow_v1的数据包的OPTF_PACKET_IN,OPTF_PACKET_IN用于将从交换机收到的数据包传送给控制器。当交换机无法根据当前的流表项处理接收到的数据包时,会生成一个 "OFPT_PACKET_IN" 消息,并将数据包及相关信息发送到控制器。查看openflow_v1的数据包的OPTF_PACKET_OUT, 通过“OFPT_PACKET_OUT”消息,控制器可以实现对数据包的编程式控制,用于实现特定的网络行为、策略或功能。查看openflow_v1的数据包的OPTF_PACKET_MOD, 通过发送 "OFPT_FLOW_MOD" 消息,控制器可以向交换机添加、修改或删除流表项,从而控制数据包的处理方式。

  • 10
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值