NTTComがソフトウェアルータ(kamuee)を開発

NTTComがソフトウェアルータを開発

NTTCom(NTTコミュニケーションズ株式会社)が、100GbE(ギガビットイーサネット)対応の高速ソフトウェアPCルータの開発に成功したと発表しました。同ルータは Kamuee(カムイー) という名前のだそうです。

ソフトウェアPCルータとは?

ソフトウェアPCルータの前にルータとは?という質問があるかもしれません。ルータは、コンピュータネットワークで、データを2つ以上の異なるネットワーク間に中継する通信機器です。パソコンやスマートフォンをどのルートを通してデータを転送するかを判断します。ルータの主な役割は経路検索になります。
自宅で使っているPCからインターネット上のWebサイトを開くような場合、PCからブロードバンドルータ(プロバイダーが提供しているものがほとんど)に通信します。ここでブロードバンドルータに複数のPCやスマートフォン繋がっていて、そのPCやスマートフォンにデータを送信する場合は、ブロードバンドルータが、そのPCやスマートフォンの繋がっているポートにデータを転送します。宅内環境のような場合は、ここで完結することになります。
データを転送したい先が、ブロードバンドルータの管理外のアドレスの場合、ブロードバンドルータは所属するネットワークのデフォルトルータに転送して、デフォルトルータから所属するネットワーク外のルータにデータを通信することで、アクセスしたWebサーバまでの経路を検索します。
この経路検索がネットワーク通信速度に影響するということですね。たぶん。
ルータには、この他にも不要なパケットをフィルタリングする機能や、グローバルアドレスをプライベートアドレスに変換する機能などがあります。というような機能を専用ハードウェアではなく、ソフトウェアで実現するものがソフトウエアルータです。多くはLinux上にソフトウェアをインストールして構築しているもののようです。

一般的なルータ専用機器は2億万回/秒くらいの経路検査できる性能があるそうです。そして一般的なソフトウェアルータは900万回程度ということなので、性能差が歴然としています。

高速ソフトウェアPCルータ Kamuee(カムイー)

前述したように、大容量通信を行うルータは、経路検索を高速に処理するCPUを搭載した専用機器であることがほとんどです。NTTComの発表でも、機器の価格も高額ですが、導入に掛かる費用は数千万円規模になり、、長期の構築期間が必要だったと説明しています。課題を解決するため、NTTComではPCなどでも利用される一般的なCPUを利用した、高速ソフトウェアPCルーターの開発を進めてきたそうです。

従来のソフトウェアルータは 経路検索能力の低さ と パケット転送能力の低さ という性能面での課題があり、ソフトウエアによる経路検索処理は、専用のハードウエアに比べるとパフォーマンスが低かった。また、従来のソフトウエアルータはLinuxカーネルが他の処理の合間にパケットを転送していたため、パケットの転送の高速化に限界があったそうです。

Kamueeでは、NTTComと東京大学が共同開発した経路検索アルゴリズム Poptrie(ポップトライ) を採用し、多数の経路情報が登録された状態での経路検索処理を大幅に向上させることに成功。Poptrieは、アルゴリズムの改良と経路処理に必要な情報を圧縮することで、CPUキャッシュ内で完了することができるため、高速な処理(250000000万回/秒)を実現したとのことです。

次に、インテルが開発した DPDK というパケット転送を高速化するソフトウェア(DPDKはPMD(Poll Mode Driver)というドライバーを利用することで、ネットワークソフトウエアがLinuxカーネルを介さずにネットワークインタフェースと直接やり取りできるもの)を採用して、さらにNTTComで改良されて64バイトイーサネットフレームで257Mpps(パケット毎秒)という高速なパケット転送を実現することにより、従来のソフトウェアルータの限界を超えて専用機器と同等の性能を引き出すことができるそうです。

まだ製品化されたものではないため、価格等は未定なようですが、NTTComでは、Kamueeを大規模ネットワークを構成するコアルータ、小規模ネットワークのユーザー宅内に設置するCPEルータ、複数の仮想サーバーなどを稼働させるSDN(Software-Defined Network)の仮想ルータとしての利用が期待できるとしています。

ただ、Kamueeが高価なコアルーターと同等の性能を実現できるという前提が「200万円程度のパソコンと1枚10万円程度のネットワークカードを複数組み合わせて使えば」ということなので、一般的なPC上のソフトウェアルータとは異なるものかとも感じます。

CPE(Customer Premises Equipment)ルータとは?

CPEは Customer Premises Equipment の略で、 意味としては顧客構内設備というような意味でしょうか。 CPEは顧客のの敷地内にある通信設備の意味なるので、 電話機やブロードバンドルータ、ケーブルモデムという通信装置のことになります。

例えば、自宅に設置されたブロードバンドルータもCPEになります。ルータを境に、インターネット側は通信事業者、顧客ネットワーク側はユーザーが責任を持つというような場合の境界と言われます。
セキュリティ対策の話でも、どこからどこまでは通信事業者が責任を負うとか、どこからはユーザの責任というような場合の話に境界として用いられる場合が多いです。この境界はユーザーが通信事業者からレンタルしている場合でも同じです。
CPEの先にある無線ルータはユーザの責任で故障対応とか交換をしなくてはならない。というような意味であってるでしょうか。

SDN(Software-Defined Network)とは?

SDNは仮想ネットワークを構築するソフトウェアを含む技術のことをです。物理的なネットワーク上でもVPNやVLANというように仮想的に異なるネットワークを構築?することができましたが、これらは個々のネットワーク通信機器で設定が必要でした。SDNでは、これらの設定を一括で管理することができるため、個々の機器設定ではなく、ネットワーク全体を設定、構築することが容易になるというようなことでしょうか。

あまり詳しくないので申し訳ありません。

スポンサーリンク
spdsk-side
spdsk-side