gpt4 book ai didi

python - OpenFlow 1.3, Python RYU, OFPMatch to all non-tcp packets

转载 作者:可可西里 更新时间:2023-11-01 02:49:04 24 4
gpt4 key购买 nike

我希望使用 Python-RYU Controller 为 OpenFlow 交换机创建匹配规则。该规则应匹配任何非 tcp 数据包(ip 协议(protocol) 6)。

据我所知,tcp连接的匹配规则是:

match = parser.OFPMatch(in_port=in_port, eth_dst=dst, ip_proto=6) self.add_flow(datapath, 1, match, actions)

我需要补充规则。谢谢

最佳答案

您可以为 TCP 数据包创建一个具有更高优先级的规则,并为所有数据包创建另一个具有较低优先级的规则。这样所有* TCP 数据包将匹配第一个规则,所有*非 TCP 数据包将匹配第二个规则。

(*) 所有匹配 in_porteth_dst 的,以及

唯一的缺点是您需要知道如何处理 TCP 数据包。一个想法是将它们发送到 Controller (ofproto.OFPP_CONTROLLER)。

tcp_match = parser.OFPMatch(in_port=in_port, eth_dst=dst, ip_proto=6)
self.add_flow(datapath, 2, tcp_match, tcp_actions)
nontcp_match = parser.OFPMatch(in_port=in_port, eth_dst=dst)
self.add_flow(datapath, 1, nontcp_match, nontcp_actions)

编辑:
看来您还需要将 eth_type=0x0800 添加到匹配项中才能正常工作。

关于python - OpenFlow 1.3, Python RYU, OFPMatch to all non-tcp packets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25096451/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com