root@localhost:~/pox # ./pox.py samples.spanning_tree POX 0.1.0 (betta) / Copyright 2011-2013 James McCauley, et al. [core ] POX 0.1.0 (betta) is up. [openflow.of_01 ] [00-ab-94-41-63-00 1] connected [openflow.of_01 ] [00-ab-7c-6d-c3-00 2] connected [openflow.of_01 ] [00-ab-8c-38-60-00 3] connected [openflow.discovery ] link detected: 00-ab-7c-6d-c3-00.2 -> 00-ab-8c-38-60-00.3 [openflow.discovery ] link detected: 00-ab-8c-38-60-00.3 -> 00-ab-7c-6d-c3-00.2 [openflow.spanning_tree] 6 ports changed [openflow.discovery ] link detected: 00-ab-94-41-63-00.2 -> 00-ab-7c-6d-c3-00.3 [openflow.spanning_tree] 1 ports changed [openflow.discovery ] link detected: 00-ab-94-41-63-00.3 -> 00-ab-8c-38-60-00.2 [openflow.spanning_tree] 1 ports changed [openflow.discovery ] link detected: 00-ab-7c-6d-c3-00.3 -> 00-ab-94-41-63-00.2 [openflow.spanning_tree] 4 ports changed [openflow.discovery ] link detected: 00-ab-8c-38-60-00.2 -> 00-ab-94-41-63-00.3 [openflow.discovery ] link timeout: 00-ab-94-41-63-00.2 -> 00-ab-7c-6d-c3-00.3 [openflow.spanning_tree] 4 ports changed [openflow.discovery ] link detected: 00-ab-94-41-63-00.2 -> 00-ab-7c-6d-c3-00.3 [openflow.spanning_tree] 4 ports changed // VyattaのインターフェイスをONにして環状に [forwarding.l2_learning] Same port for packet from 00:ab:71:13:2d:00 -> 00:ab:77:e3:4b:00 on 00-ab-8c-38-60-00.1. Drop. [openflow.discovery ] link detected: 00-ab-94-41-63-00.1 -> 00-ab-8c-38-60-00.1 [openflow.spanning_tree] 2 ports changed [openflow.discovery ] link detected: 00-ab-8c-38-60-00.1 -> 00-ab-94-41-63-00.1
VyattaのSTPは802.1Dで動いているわけですが、そのままOVS側で重複検出してポート閉じられてしまった。予想通りというかなんというか、それっぽく動くサンプルですし仕方なし。ただ、それっぽい動作をちゃんと検出できたのでよしとする。
Vyattaの中身
vyatta@vyatta# sh interfaces bridge br0 { stp true } ethernet eth0 { bridge-group { bridge br0 } hw-id 52:54:00:12:34:56 } ethernet eth1 { bridge-group { bridge br0 } } ethernet eth2 { bridge-group { bridge br0 } } ethernet eth4 { bridge-group { bridge br0 } } loopback lo { }
これだけ。ところで8月1日のエントリでSPTと書いてしまっているわけですが、レイズナーの見すぎですね。