我是 openflow 的新手,我用 mininet 创建了一个带有 1 个控制器 (POX)、一个交换机和 3 个主机的开放流拓扑。
我的问题是,如何在交换机中创建一条规则以仅重定向到控制器的 tcp 流?
*对不起我糟糕的英语
您可以使用 mininet 中的 dpctl 命令(主机中的 ovs-dpctl)配置流规则和匹配流规则的流的操作
有两种方法可以过滤 tcp 数据包。
使用与 pox.lib.packet 库协调的数据包对象的有效负载属性。
使用 find() 方法查找类型为 tcp 的数据包。
您可以在 POX wiki 中找到更多信息: POX Wiki
希望这有帮助!
您可以修改已经提供的应用程序 l2_learning 开关以使其满足您的需求。
检查一个数据包是否有 tcp 信息:
tcp_pkt=packet.find('tcp')
如果 tcp_pkt 不是无:
#做一点事