「世界最高速レベル」のソフトウェアルーターを開発した――。
NTTコミュニケーションズは6月11日、PC上で稼働するソフトウェアルーター「Kamuee(カムイ)」を発表した。東京大学と共同開発したもので、開発を手がけた技術開発部・主査の小原泰弘氏によれば、200万円程度のPCと複数のNICを組み合わせることで、1億円するキャリア向けコアルーターと同等の性能を実現できるという。
同社はまず、KamueeをベースにBGPルーターを開発してバックボーンネットワークに適用する計画だ。さらにデータセンター内ネットワーク機器、映像ストリームサーバー、セキュリティ機器など「パケットの高速転送が必要な領域」(小原氏)への適用を検討。外販にも意欲を見せた。
「世界最高速」の秘訣Kamueeは、NFV(Network Function Virtualization)による通信インフラの仮想化・クラウド化を大きく前進させる。これまで仮想化環境で高速ルーティングを行うことは困難だったが、そこにブレイクスルーをもたらしたからだ。
小原氏によれば、ソフトウェアルーターには2つの課題があったという。1つはパケット転送能力、もう1つが経路検索の効率だ。
ソフトウェアルーターの場合、汎用CPUとソフトウェア処理でパケット転送を行うため、専用ASICを用いるハードウェアルーターに比べてどうしても性能が劣る。Kamueeはこれを解決するため、インテルの高速転送技術「DPDK」を採用。複数のCPUコアをパケット転送に専有させることで高速化した。
もう1つの経路検索の課題は、ルーターが保持する経路情報を高効率で圧縮する独自技術「Poptrie」で解決した。ルーターは次の宛先を判断するため、現在のインターネット上で約70万ある経路を都度検索する。この経路情報をソフトウェアで保持するには100MB程度のメモリを使う必要があるのだそうだ。
Poptireは、これを3MB程度に圧縮し、CPUのキャッシュに格納する。「メモリに行かず、キャッシュアクセスだけで完了する」ため、処理が大幅に効率化するわけだ。
加えて、シンプルな仕組みとしているため「CPUのコアを増やせば、並列化によって性能を向上できる」と小原氏。なお、Kamueeはデータプレーンのみであり、コントロールプレーンは、オープンソースのルーティングソフトであるbgpdやZebraが使用できるという。
図表1 高速ソフトウェアPCルーター「Kamuee」の強み