我的网络类似于下图中的网络。
这是网络的python代码:
net.addLink(s1, s2)
net.addLink(s2, s3)
net.addLink(s3, s4)
net.addLink(s4, s1)
net.addLink(s1, h1)
net.addLink(s3, h2)
我如何查找并向网络添加流表?
例如下面是流表条目之一。如何确定in_port为1并且输出确定为3?
ovs-ofctl add-flow s1 in_port=1,actions=output:3
我无法理解端口号是如何确定的。
答案 0 :(得分:2)
检查mininet addLink API here:
还有其他参数可以指定每侧链路的端口号
这样的事情:
addLink(s1, s2, 1, 2)
addLink(s2, h2, 5, 6)
将导致链接和端口的以下输出:
mininet> links
s1-eth1<->s2-eth2 (OK OK)
s2-eth5<->h2-eth6 (OK OK)
mininet> ports
s1 lo:0 s1-eth1:1
s2 lo:0 s2-eth2:2 s2-eth5:5
答案 1 :(得分:1)
在net
提示符处尝试mininet>
以获取拓扑详细信息:
$ sudo mn
*** No default OpenFlow controller found for default switch!
*** Falling back to OVS Bridge
*** Creating network
*** Adding controller
*** Adding hosts:
h1 h2
*** Adding switches:
s1
*** Adding links:
(h1, s1) (h2, s1)
*** Configuring hosts
h1 h2
*** Starting controller
*** Starting 1 switches
s1 ...
*** Starting CLI:
mininet> net
h1 h1-eth0:s1-eth1
h2 h2-eth0:s1-eth2
s1 lo: s1-eth1:h1-eth0 s1-eth2:h2-eth0
mininet>
eth*
表示*
端口