3rd - OpenFlow Controller Proxy

オープンな OpenFlow Controller の Proxy が欲しい! 以上、これに尽きる。僕が知らないだけで、実は良いものがあるのならいいのだが、ともかく学生相手にこんなことできるかもしれないね、あんなこと考えられないかね、と SDN アプリケーションのアイディアを出すと、やたらにここで引っ掛かる。
つまり「ああ、もしここで Contrtoller の Proxy として機能する「だけ」のオープンでシンプルな実装があったらなあ」ということだ。
たとえば「全てのスイッチのフローエントリを収集し、矛盾のある設定を発見する(ループになりうる設定を調査する)」といったことや、「全てのスイッチのフローエントリの指定期間の変化を調べ、可視化する」あるいは「指定期間内で注目するスイッチ(あるいは IP アドレスレンジ)に対して生じた、それに関係するフローエントリの変化をピックアップして可視化する」といったことをやろうとすると、そういった情報はコントローラとスイッチの間に入って収集するのが一番素直で簡単だ。
だが、そういうのに使えるシンプルな proxy 実装というのがない。欲しい。FlowVisor がほぼそのような仕組みで動いているので、FlowVisor からコードを引き抜けば良いということは判るが、以前に眺めた印象では僕には(Java ということもあって)ハードルが高すぎた。自分が書けないのが残念でならない。
とりあえずここに書いておこう。どうなるものでもないけど。
なお、上に挙げた例はすべて運用支援ツールとしてのもの。こういった道具が SDN の実運用にはどうしても必要だと思うのだけれど、これもなかなか広まらない。ここに出した proxy はこうしたツール群の母艦ともなり得るはずで、ほんとそのあたり整備されないと、と思ってしまう。

References