【问题标题】:Proactive Flow Insertion and Routing Based on Priority in OVSOVS中基于优先级的主动流插入和路由
【发布时间】:2018-04-27 04:11:57
【问题描述】:
我为具有不同优先级的活动和备份路径插入了两个相同源和目标对的流条目。即使发生链路故障,流也不会通过备份路径。内核空间可能并不关心端口状态。它只匹配流表并执行操作。
但我仍然有兴趣使用具有不同优先级的备份路径。我听说过OVS的快速故障组表。我不确定如何使用它来引导流量到我的替代路径。在这种情况下我可以帮忙吗?或者是否有任何机制可以在不与控制器通信的情况下刷新属于向下接口的流条目?
我正在使用 Ryu 4.24、OVS 2.9.0 和 mininet。
在此先感谢您的帮助。
【问题讨论】:
标签:
sdn
mininet
openvswitch
ryu
【解决方案1】:
fast failure groups 可以解决您的问题是对的。
假设您只想在端口 1 关闭时才使用端口 2,那么您将按如下方式配置 Open vSwitch 的网桥:
ovs-ofctl -O OpenFlow13 add-group br0 group_id=1,type=fast_failover,bucket=bucket_id=1,actions=output:2,watch_port=2,bucket=bucket_id=2,actions=output:3,watch_port=3
ovs-ofctl add-flow br0 priority=1,ip,nw_dst=10.0.0.1,actions=group:1
第一个命令创建一个类型为 fast_failover 的组 1,其中包含 2 个存储桶(即,到达该组的数据包有 2 个可能的目的地)。桶 1 在其处于活动状态的情况下(watch_port=2)将数据包发送到端口 2,而桶 2 以类似的条件(watch_port=3)将数据包发送到端口 3。一组类型 fast_failover 迭代其存储桶(按照您定义它们的顺序),直到找到一个处于活动状态的存储桶。
第二个命令只是简单地向组发送具有 10.0.0.1 目标 IP 的数据包。