自定义Mininet拓扑ping错误

时间:2016-05-10 09:15:56

标签: networking network-programming mininet sdn

我正在Mininet模拟器中构建自定义拓扑,我成功地创建了图片上显示的拓扑,但是我遇到了h1和h2之间 ping的问题。它们连接到相同的交换机 s1 ,它们位于同一子网中。我只从mininet获得这个输出。

mininet> h1 ping h2
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
From 10.0.0.1 icmp_seq=1 Destination Host Unreachable

在parael终端窗口中,它正在运行POX Controller,它为我提供输出

WARNING:forwarding.l2_learning:Same port for packet from 00:00:00:00:00:02    -> 00:00:00:00:00:01 on 00-00-00-00-00-04.1.  Drop.
WARNING:forwarding.l2_learning:Same port for packet from 00:00:00:00:00:02 -> 00:00:00:00:00:01 on 00-00-00-00-00-01.1.  Drop.

但是当我用h1构建拓扑时----- s1 ----- h2 ping工作正常

拓扑已正确连接

mininet> net
h1 h1-eth0:s1-eth3
h2 h2-eth0:s1-eth4
h3 h3-eth0:s3-eth3
s1 lo:  s1-eth1:s2-eth1 s1-eth2:s4-eth1 s1-eth3:h1-eth0 s1-eth4:h2-eth0
s2 lo:  s2-eth1:s1-eth1 s2-eth2:s3-eth1
s3 lo:  s3-eth1:s2-eth2 s3-eth2:s4-eth2 s3-eth3:h3-eth0
s4 lo:  s4-eth1:s1-eth2 s4-eth2:s3-eth2

你能告诉我我该怎么办? 先感谢您! :) mininet topology

1 个答案:

答案 0 :(得分:1)

警告消息"数据包的相同端口..."当控制器发现数据包的输入和输出端口相同时出现。在给定配置中,这些消息将出现在交换机S2和S4上。原因是,当H1生成数据包时,控制器没有MAC到端口映射,并且它会将数据包从所有端口(除了接收数据包的端口除外)中泛洪。 S2和S4在端口1上收到数据包,并在端口1上为MAC 00:00:00:00:00:01添加了一个条目。

当H2响应时,S2和S4再次在同一端口1接收到数据包,并根据目的地MAC S2和S4确定输出端口为1.因此,相同的输入和输出端口引起了警告消息。

这些消息不应该在H1和H2之间停止ping工作,因为H1和H2发送的数据包应该由于S1完成洪水而到达目的地。

请检查H1和H2上的ARP条目以及S1上安装的流条目。您可以使用选项--arp运行拓扑脚本,以在主机上配置静态ARP条目。