23rd - OpenFlow のおもいで

思い出というには早すぎるけど、OpenFlow 世界の時間の流れはどうやらとても速いようなので、この機会に少し書いておこう。僕が OpenFlow のことを初めて知ったのは 2010 年。夏の終わり頃だった。米国に行ったとき、当時まだステルス状態だった Nicira のことを E さんから教えてもらった。
ざっと聞いた時に僕が持った疑問・展望を当時のログから引っ張り出してみる。ネットワーク仮想化、オーバレイ自動構築、といった文脈で、こんなことを僕は考えた。
=====
・誰がネットワーク物理構成について教えてくれるのか(どのようにして初期情報を与えるのか?)
・物理配線と論理配線の二重構成になってしまうが、その両者のマッピングをうまく視覚化して見せてくれるのか?(やってるはずなので、まあ見せて欲しい、ということか。)
・帯域保証がない経路もあるので、モニタリングをして、実効性能がどれだけ出ているか把握し、それを設定にフィードバックするようなインテリジェンスがあるのか?
・そうしたインテリジェンスを突き詰めると、結果的に「そういう設定をしたければ物理配線をこのようにしなさいね」と suggestion してくれる機能ができそうに思うが、そうした展開を志向しているか。(恐らく突き詰めると、いまどのスイッチがどのような配線になっているか、どのくらい使われているか、よくわからなくなる。二つめの疑問、つまり物理配線について意識させないことがゴールなのであれば、なおさら。)
=====
そして僕はこのテーマをいまだに追いかけている。つまり SDN はいまだにこのあたりの僕の疑問を解決してくれない。必ず行き当たる問題なのに、目を背けている、という状態だ。「L2/L3 ファブリック」などと聞こえは良いが、単に「帯域充分で、かつ均質な扱いやすい構成を用意してね、今はそこまで考慮できないから」という意味だ。 ソフトウェアで実現する、ということは、そこにインテリジェンスを置けるということだ。それが本質なのだと思う。プログラマブルだ、ということが重要なのでは無い。知的な処理が実現できる、ということだ。
不思議な「再会」 長いこと働いてるといろんな人と「再会」したりする。2012 年 2 月に、OpenFlow の研究として開発者支援ツールの提案などをしていた。このとき他に Cookie フィールドを使っている事例として Floodlight のことを調べ、BigSwitch の知人に質問のメイルを投げて何人かと議論したことがある。ONS 2013 に BigSwitch を訪問し、Rob Sherwood に会う機会があったが、その時「どっかで見たぞこの名前」と思ってメイルをひっくり返したら案の定、Cookie の議論で最後に技術的なやりとりをしたのが Rob だった。初めて会ったときに「ところで僕らは一年前にメイルで議論したことがあってね」と言ったら「ああ、君か」と思い出して笑ってくれた。
僕は学生の時からの DEC ユーザで、仕事を始めてからも DEC の 3 port のラーニングブリッジとか使ってた。NetContinuum に行ったときにチップ設計者が元 DEC でこのブリッジの設計者だと言われた時は「僕ユーザだったよ!」と大喜びで握手した。
よもや会えることは無いだろう、と思っていた Andy Bechtolsheim にも 2009年に会えた。それから毎年米国に行くたびに Arista に立ち寄ることになろうとはその時も思っていなかったし、その時から追いかけはじめた Merchant Silicon による 10G swtich という分野が、もともと別に追いかけていた SDN とマージするなんてその時は想像もつかなかった。なんというか不思議な感じ。
台湾での出会い そして先日、台湾で初めての SDN に関する国際シンポジウムがあった。その時はじめてお会いした O さんと少し新竹観光などしながら雑談していると、冒頭に書いた E さんに OpenFlow のことを教えた人こそ、この O さんだということが分かった。ありがとうございます。あなたのおかげで、僕はとても面白い分野をかなり早い時期から覗くことができました。
トシを取って「出会うべき人とはいつか必ず出会うものだ」と思うようになったけど、この日はその思いを強くした。面白いもんだ。。
書き残したこと このアドベント・カレンダーも何というか森山君が言い出したことに何も考えずに乗っただけだった。あまり考えずにその場の思いつきでネタを選んだのでいろいろ書き残したこともある。
まず Pica8 の vASIC が単なる abstraction layer なのか、何かしら面白い側面があるのか。なお、ただの HAL (hardeware abstraction layer) だとすると、Arista はかなりやっていたりする。
それから SEIL + mRuby ってSDN か?という話題で少し考えてみたかった。
他にも SDN Central の事例リストからもう少しいろいろ拾ってみると面白かったかな。勉強にもなったろうし。またやるか。
もっともっと雑多なこと ところでようやく "OpenFlow アドベント・カレンダー" で Google から引けるようになった。もっと出るだろうと思ったけれど、結局出てこなかったらしい。ネットワーク屋さんはあんまりこの手のイベントでは盛り上がらないのかしらん。残念。
あ、なんだか RSS 登録してる人も居るらしい。読者さまだと喜んだら実は森山くんだったりしてね。
ともかくこう言うのを書ける機会を提供してくれた森山君には感謝します。 ホントは森山君が半分くらい書いてくれるだろう(あるいは書いてくれる人を引っ張って来てくれる)と思ってたのにもう。という話もあるが。まあしょうがない。間違って乗ったとしても、船に乗ったらもうしょうがない。The show must go on なのだ。
では明日の吉田さん、明後日の森山くんに期待して、僕の担当はこれにておしまいとさせてもらおう。

References