cloretsblackのテクニカルノート

言葉の意味はよくわからんがとにかくすごい自信だ

SDNのこれから

先日、ネットワークプログラマビリティ勉強会というところで発表をさせていただきました。そのとき、時間の都合で言えなかったことを補足しようかなと思い、久しぶりにブログ更新しますw

 

 
このスライドではあんまり触れてないんですが、まず最初のポイントはSDN(Openflow)って何でもできる技術なのに、なぜこういうソリューションにしようと思ったのか、ということです。
 

その話をする前に、参加できなかった4月度のssmjpでのスライドでグッと来たのがあったので紹介します。

このスライド(17ページ)にもあるように、結局ネットワークのOPEXって大したことないんです。ガンバレばできるのに、それをワザワザソフトウェアにする必要とかありますか、って話です。エンタープライズなんかで年に一回あるかないかの変更のためのコストを削減する意味はないです。テレビ局でのSDN導入事例はうまくニーズが合致した例ですが、かなりのレアケース。結局ソフトにするってことは動きが完全にわかってなきゃできない(やるべきでない)ので、OPEX削減のための手段としては筋悪だと思うのです。

じゃあ、SDNってどうやって使うべきなの?

参考になるのは他分野の事例です。航空機のフライバイワイヤというものをご存知でしょうか。

各種センサーの情報を元にコンピュータで航空機の翼をきめ細かく制御し、航空機の安定性を高める技術です。1秒間に数十回も翼を制御させることによって本来航空力学的に安定しない形状の航空機でも無理やり安定させて飛ばすことができます。これにより、高い運動性と飛行安定性という本来物理的に両立し得ない要素を両立させることができます。
「ソフトウェアで何かを制御する技術」とは、本来このように、人力では不可能なイノベーションを実現するためのものだと思うのです。

そのように考えた結果、10秒に1回経路を制御し、ネットワークのダウンをTCPの再送シーケンス内に収めることによって、結果的に切れないネットワークを実現することを思いつきました。この辺の使い方はアイデア勝負であり、私自身も試行錯誤中です。いくつかアイデアはあり、実際に作ってもいるのですが、まだまだ色々なことができると思っています。

この手のベストプラクティスがある程度そろって初めて、SDNは普及ステージに入っていくのかなと思います。

先は長い。。