当前位置: 首页 > SDN工具 > 正文

使用最新版Wireshark解析OpenFlow协议数据包

使用最新版Wireshark解析OpenFlow协议数据包

wireshark官方最新版已经内置支持OpenFlow协议,不再需要安装插件来支持openflow协议的解析。

详细内容参看:https://wiki.wireshark.org/OpenFlow

到2014-11-04,wireshark v1.12.x支持:

  • OpenFlow 1.0 (aprox. 50%)
  • OpenFlow 1.1 (不支持)
  • OpenFlow 1.2 (不支持)
  • OpenFlow 1.3 (100%支持)
  • OpenFlow 1.4 (支持将近90%)

1 协议依赖性

OpenFlow 使用 TCP 协议。 TCP 端口号是 6633 和 6653 (the official IANA port since 2013-07-18).

2 参数设定

可以将默认端口号 port(00) 设置端口号为 6633 or 6653.
OpenFlow 的 TCP 端口号也可以在用户的配置文件: (~/.wireshark/preferences)中设定:

#openflow TCP port if other than the default
#A decimal number
openflow.tcp.port: 6633

3 显示过滤器(display filter)

OpenFlow 完整的显示过滤器(display filter)字段可以从这里查看:https://www.wireshark.org/docs/dfref/#section_o 或者使用如下命令查看:

tshark -G fields | grep -i openflow

只显示基于OpenFlow的流量,使用如下:

openflow

只显示基于OpenFlow 1.3的流量,使用如下:

openflow_v4

4 捕获过滤(Capture Filter)

在捕获包时不能直接过滤OpenFlow协议包。但是,可以使用端口号的方式实现此功能。只捕获OpenFlow流量:

tcp port 6633

5 OpenFlow协议规范变化

  • OpenFlow 1.4.0 Spec – Section B.14.17 – TCP端口号必须是 6653 (2013-08)
  • OpenFlow 1.3.3 Spec – Section B.14.2 – 使用协议版本号替换线路协议(wire protocol) (2013-09-27)

6 扩展阅读

Open Networking Foundation
OpenFlow Specifications
IANA OpenFlow port number

7 相关讨论

1.如何获得Wireshark支持的OpenFlow协议?

$ tshark -G protocols | grep -i openflow
OpenFlow        openflow        openflow
OpenFlow 1.0    openflow_v1     openflow_v1
OpenFlow 1.3    openflow_v4     openflow_v4
OpenFlow 1.4    openflow_v5     openflow_v5

2.为何不解析OpenFlow 数据包?

检查如下命令的输出:

$ tshark -G decodes | grep -i openflow
tcp.port        6653    openflow

3.Tshark 为何不解析OpenFlow 数据包?
即使不改变Wireshark配置文件中的OpenFlow默认TCP端口号,你仍然可以强制tshark命令在指定的端口上解析OpenFlow包,命令如下:

tshark -d tcp.port==6633,openflow -r file.pcapng

本文固定链接: http://sdnhub.cn/index.php/wireshark-openflow/ | 软件定义网络SDN

该日志由 sdnhub 于2015年03月25日发表在 SDN工具 分类下, 通告目前不可用,你可以至底部留下评论。
原创文章转载请注明: 使用最新版Wireshark解析OpenFlow协议数据包 | 软件定义网络SDN
关键字: ,

使用最新版Wireshark解析OpenFlow协议数据包:等您坐沙发呢!

发表评论

*

快捷键:Ctrl+Enter