« 書籍『OpenFlow実践入門』でTremaをインストール | トップページ | 書籍『OpenFlow ネットワーク入門』は、Trema の解説書だった »

2013年1月26日 (土)

Tremaコントローラが勝手に終了してしまう現象の回避方法

書籍『OpenFlow実践入門』(初版)の P.292 には、実機の OpenFlow スイッチをラーニングスイッチとして動かしてフローエントリを表示するという手順が書いてあります。
ところが困ったことに、フローエントリを表示するコマンドを実行するとデーモンとして起動しておいたコントローラのプロセスが必ず終了してしまう現象が発生します。
使用している Trema のバージョンは現時点での最新である trema 0.3.3 です。
正しい方法なのか分からないですが回避策を見つけたので書いておきます。

回避策:
  空のファイルを作成し、コントローラ起動時に -c オプションで指定する。
 (つまり、中身のない仮想ネットワークの定義を指定します。)

空のファイルを ~/emtpy.conf に作るとすると、p.292 の1行目に記載のコントローラの起動を以下のようにすれば良いわけです(あくまでいち例です。他のやり方でも構いません)。

$ cp /dev/null ~/empty.conf
$ trema run ./learning-switch.rb -d -c ~/empty.conf

ちなみに、デーモンで起動したコントローラを停止する方法ですが「5.5 trema コマンド」の P.73 に書いてあるとおり、以下を実行します。

$ trema killall

p.s
  OpenWRT with OpenFlow 1.0 を入れたMZK-W300NH2 で試していて、コントローラと切断してしまう現象がやたらおきるのでしばらく悩んでしまいましたが上記の現象でした...。

« 書籍『OpenFlow実践入門』でTremaをインストール | トップページ | 書籍『OpenFlow ネットワーク入門』は、Trema の解説書だった »

OpenFlow」カテゴリの記事

Trema」カテゴリの記事

コメント

とある海外ベンダーのスイッチでも同様の事象が起きておりましたが、
この対処法で解決しました。
この事象の原因がすごく気になりますが、(もしかしたら機種などに依存しない問題??)参考にさせていただきました!有難う御座います。

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: Tremaコントローラが勝手に終了してしまう現象の回避方法:

« 書籍『OpenFlow実践入門』でTremaをインストール | トップページ | 書籍『OpenFlow ネットワーク入門』は、Trema の解説書だった »

最近のトラックバック

無料ブログはココログ