Ошибка проверки связи пользовательской топологии Mininet

Я создаю пользовательскую топологию в эмуляторе Mininet, я успешно создал топологию, которая отображается на картинке, но у меня возникла проблема с пингом между h1 и h2. Они подключены к одному коммутатору 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, который выдает мне вывод.

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

Не могли бы вы сказать мне, как я могу исправить это, пожалуйста? Заранее спасибо! :) топология минисети


person forgatn    schedule 10.05.2016    source источник


Ответы (1)


Предупреждающие сообщения «Тот же порт для пакета...» появляются, когда контроллер обнаруживает, что входной и выходной порты для пакета совпадают. В данной конфигурации эти сообщения появятся для коммутаторов S2 и S4. Причина в том, что когда H1 генерирует пакет, у контроллера нет сопоставления MAC-адреса с портом, и он рассылает пакеты со всех портов (кроме того, на который был получен пакет). S2 и S4 получили пакет на порту 1 и добавили запись для MAC 00:00:00:00:00:01 на порту 1.

Когда H2 ответил, S2 и S4 снова получили пакет на тот же порт 1 и на основе MAC-адреса назначения S2 и S4 определили выходной порт как 1. Таким образом, один и тот же входной и выходной порт вызвал предупреждающее сообщение.

Эти сообщения не должны прерывать работу эхо-запроса между H1 и H2, потому что пакеты, отправленные H1 и H2, должны достичь пункта назначения из-за лавинной рассылки, выполненной S1.

Пожалуйста, проверьте записи ARP на H1 и H2, а также записи потока, установленные на S1. Вы можете запустить сценарий топологии с опцией --arp для настройки статических записей ARP на хостах.

person Arun Kaushal    schedule 10.05.2016
comment
Спасибо за ответ, я сделал дамп таблицы потоков s1, и записей не было. Я думал, что если они находятся в одной подсети, они могут связаться друг с другом. Я добавил: table=0,ip,nw_dst=10.0.0.1,actions=mod_dl_dst=00:00:00:00:00:01,output:3 table=0,ip,nw_dst=10.0.0.2,actions=mod_dl_dst=00:00:00:00:00:02,output:4 table=0,arp,nw_dst=10.0.0.1,actions=output:3 table=0,arp,nw_dst=10.0.0.2,actions=output:4 и пинг теперь работает :) - person forgatn; 11.05.2016