先日開発した Jaxon (Java 版 OpenFlow コントローラ) ですが. 早くも, オワコンの様相がどうにも拭えません.
これと言うのも Jaxon が依存している OpenFlow コントローラ NOX が, 新しいフレームワーク “POX” の開発に移行したことに起因します.
NOX 公式サイトのトップに, 次の絶望的な文書が掲載されています (以下抜粋).
1 2 |
There's also NOX Classic which supports both C++ and Python. We have no plans to do substantial further development on this project |
もう POX に完全移行したと思ってまず間違いないでしょう.
github のリポジトリを見ても, POX はむちゃくちゃホットであるのに対して. NOX はというと完全に放置されています.
POX というのは, NOX チームが開発した Python ベースで OpenFlow コントローラを記述するフレームワークです. POX 自体も Python で書かれています.
これまでも NOX では Python によるコントローラの記述が行えました (これには “NOX-Classic” と名付けられたようです).
しかし NOX-Classic は, 本体が C/C++ なので, せっかく Python で書いたのに移植性が悪く, また設計上遅いという問題がありました.
どいうことかというと, NOX-Classic の Python コンポーネントは, C++ でかかれた NOX 本体固有で, 且つ全ての Python コンポーネントに対して共通のコントローラから SWIG 経由で, ユーザ定義の Python コードを呼び出す設計になっています.
これに対して POX は, それまで C/C++ で書かれていた OpenFlow コントローラ機能を Python で実装したことで, プラットフォーム間でのポータビリティの向上に加え, PyPy といった JIT による高速実行エンジンによって, 高速化が実現できたりしています.
ただ Jaxon にしてみれば. せっかく試行錯誤の末 NOX 本体のコードには一切手を触れずに, NOX-Java 連携を実現したというのに. こうもあっさり NOX コードを捨るとは…
彼らの思い切りの良さと, 自分のあまりの先見の明のなさにショックを隠しきれません.
失意のあまり, これを期に Java をやめたいくらいです.
最近のコメント