産経新聞社賞

Software Defined Networkの研究開発

日本電気株式会社 システムプラットフォーム研究所＊ IP ネットワーク事業部、＊＊ 第一IT ソフトウエア事業部

下西 英之 千葉 靖伸 高宮 安仁 岩田 淳
高島 正徳＊ 工藤 雅司＊＊

筆者らは、次世代のインターネットに向けて Software Deﬁned Network 技術（以下SDN 技術）の研究開発とその製品化を行った。SDN 技術はデータセンターやキャリアのネットワークが抱える諸課題を解決するための基盤技術であるとともに、過去 40年間変わらず使われ続けてきたインターネットの基盤技術を大きく変革し、ソフトウエアによる通信インフラの継続的進化を可能とする革新技術である。スタンフォード大学らと連携して本技術の創出と普及を先導し、研究及び事業化の両面から世界的な潮流を生み出してきた。その成果は、SDN技術に基づく世界初の事業化であるデータセンター向け新規市場製品の創出、次世代インターネット実現に向けたオープンな研究コミュニティーの構築育成等として結実し、次世代社会基盤の実現に向けた先駆となった。

1. 緒

言

インターネットを含む通信インフラは過去 40年以上にわたって発展し、現代社会で欠かすことのできない社会基盤となった。それでもなお、従来のネットワーク技術では容易に解決できない数多くの課題を抱えている。例えば、データセンターなどの巨大ICT システムでは、日々非線形に変化する顧客要求に対して、迅速に ICT 基盤を構築・提供することが求められ、そのための機器や運用管理のコスト増が大きな問題となっている。同様に、企業ICTインフラにおいても、社会情勢の変化にあわせた事業再構成に迅速に対応させなければならず、それには早くかつ低コストでインフラ自身を再構成できなければならない。一方、社会インフラとしても、災害時には緊急通信だけでなく被災地の人々が自由に情報交換できる安定した通信環境が求められ、また、携帯端末による爆発的なトラヒック増大なども社会的な問題となっている。
このような諸課題は、従来のような通信の高速化や大容量化といった考え方だけでは解決が困難であり、量的にも質的にも様々に変化する要求に対して、その度ごとに通信インフラを再構築することなく柔軟にプロビジョニングを行うこと、またネットワーク機器を更新することなく新サービスを提供できることが求められる。具体的には、データセンターでは仮想化されたネットワークが必要な時に必要な分だけオンデマンドで提供され、そして IT システムと高度に統合され自動化されたオペレーションによって迅速に顧客要求に対応可能とすることが必要である。また、災害時にも安定した通信環境を提供したり、あるいは携帯端末による爆発的なトラヒック増大に対処するためには、キャリアネットワークにおいても迅速かつ柔軟にプロビジョニングできることが求められる。

2. 研究開発の背景
本研究開発の背景として、以下データセンターネットワークとキャリアネットワークの 2領域を具体例として説明し、さらにその先の将来のネットワークに向けた課題について述べる。

2.1 データセンターネットワーク
データセンターの利用者は、そのダイナミックに変化する事業環境の中で、ビジネスの規模や内容の変化に合わせて迅速に、利用する ICT インフラを追従させてゆくことが求められる。そして、データセンター事業者はこのような顧客の要求に迅速に応えることが必用である。

−80−

しかしながら、従来の通信インフラは固定的な機器構成であるため、柔軟なプロビジョニングが困難であった。サーバやストレージは基本単位が統一されたコモディティー製品となっているが、ネットワーク機器はルータ、スイッチ、ファイヤウォールなど細かに分かれ、さらにこれらの間の接続も物理的な配線によって固定的である。顧客の要望を聞こうとすれば、これでは機器コストが高止まりし、初期投資が高いという問題に留まらず、設備の追加も柔軟性に欠け、設備の利用効率を高められないという問題を生じる。
そのため、デーセンター事業者には、小規模な初期投資から開始し需要変動に合わせて柔軟に設備増強を図り、また利用者の急激な需要変動に対して迅速かつ柔軟に機器の再割り当てを行うことで設備投資を最小化することが求められる。さらには、エンドユーザからのサービス受付からサービス提供開始までのオペレーションを自動化し、構築運用のオペレーションコストを削減し、サービス提供時間を短縮しなければならない。

2.2 キャリアネットワーク
特にモバイルを中心にトラヒックが爆発的に伸びており、トラヒックの増加とビットあたりのコストとの乖離が喫緊の課題として非常に深刻である。また、スマートフォンの普及によって端末の様々な使い方が広がったため、キャリアがネットワークへ流入するトラヒックの全体量を制御したり正確に予測したりすることが困難となっているが、そのために予め設備に余裕を持たせて対処するということは現実的でない。
今後は、リソース（かけられる設備投資）は有限であるという大前提の上で、通信の安定性とキャリアとしての収益性を同時に確保しなければならない。そのため、設備投資については、大規模、大容量、高速といった旧来の価値観よりも、サービスの追加、需要の変動、突発的な事象等に対するネットワークのプロビジョニングの自由度と迅速性といった価値観が重要になると考えられる。それには、データセンターネットワークと同様に、短時間にサービスのプロビジョニングを変更したり、あるいは新規サービスの導入ができることが重要であり、設備投資についても大規模な機器を中長期的に導入するよりも、小規模な初期投資から柔軟に規模拡大できることが重要となってくる。

2.3 将来のネットワークに向けて通信インフラは、上記のように現在顕在化している課題に対処するだけでなく、今後も絶え間なく変化するであろう社会環境に合わせて長期的に変化していかなければならない。
従って、ネットワークの進化は従来のように既存の通信インフラを置き換える形で劇的に行われるのではなく、birth and death process の構築とその中での適者生存によって緩やかにしかも多様に進むことが望ましい。これは、その時々の要請に従って新しい仮想通信インフラが次々に生まれ、その中で最も支持を集めた仮想通信インフラが広く使われるようになりつつも、社会の変化に合わせて自然に消えていくようなライフサイクルを実現することである[1][2]。

3. Software Defined Network（SDN）技術
以上のような課題認識のもと、近年SDN と呼ばれる考え方が注目を浴びている。これは、ネットワーク機器を交換することなく、また通信インフラの構成を再構築することなく、−81−ネットワークの機能やプロビジョニングをソフトウエアで柔軟に変更できるようにするものである。
筆者らが提案する SDN のアーキテクチャ [3] を図 1 に示す。各ネットワーク機器に対して直接プログラミングを行うのではなく、集中的なコントローラ上でプログラミングを行うことで統一的なプログラミング環境を提供する。開発した network controller platform（ソフトウエアとしての名称は Trema）[4] は、このようなコントローラを開発するためのフレームワークであり、この上にネットワーク制御を行うソフトウエアモジュール（例えば経路制御やネットワークトポロジ管理、セキュリティ制御）を組み合わせることで仮想的なインフラを構築する。また、またこのようなソフトウエアを仮想インフラごとに用意することで、異なる機能を持った仮想インフラとして容易に構築できる。
以下本章では本アーキテクチャのデータセンターネットワークやキャリアネットワークへの適用について説明し、次章ではその実現のための基盤技術となる OpenFlow スイッチ / コントローラについて述べる。
Personal
Emergency
Life
MedicalSaaS

Broadcasting
ServiceCommunication
EntertainmentServiceコントローラ

仮想インフラA
分散データセンター

Human
SensorDisaster
SensorTraﬃc
Sensor

Weather
SensorSports

仮想インフラB
次世代コミュニケーション

仮想インフラC
センサーネットワーク

仮想インフラB用制御ソフトウエア群
仮想インフラA用制御ソフトウエア群
トラヒック
経路制御
モニタリングセキュリティー
制御

資源管理

Networked Operation System
標準インターフェイス(e.g. OpenFlow, IPFIX,…)

物理インフラ資源
OpenFlowスイッチ

仮想スイッチ

仮想マシン

WiFi/WiMAX/LTE
機器

トランスポート装置

図1 提案するSDNアーキテクチャ

3.1 データセンターネットワークへの SDN 適用
筆者らがデータセンター向けに提案する IT・NW システム統合制御の概念を図 2 に示す。
本提案では、IP ルータ、L2 スイッチ、ファイヤウォール等のネットワークとして必要な機能を、それぞれ個別のネットワーク機器として準備するのではなく、図 1 に示したコントローラ上のソフトウエアを用いて仮想ネットワークとして実現する。そしてこの仮想ネッ
トワークを IT 資源と統合して制御することにより、サーバ / ネットワーク全体のシステム構築・運用・変更を簡易な Web インターフェイスのみで自由に行うことを可能とし、所要のリードタイムを大幅に短縮することに成功した [5-6]。また、ネットワーク機器を後述の−82−

OpenFlow スイッチに統一し、小規模なスイッチのメッシュ構成で柔軟に経路制御を可能とすることで、小規模な初期投資から需要変動に応じた柔軟な設備増強を実現することや、利用者の急激な需要変動に対して迅速かつ柔軟に機器の再割り当てを行うことを可能とした[7]。さらには、本システム上に IT ポリシ記述に基づいてネットワークの設定を同時に行うIT・NW 統合アクセス制御方式を開発し、セキュリティ設定ミスのリスクを軽減し、管理コストを大幅に削減した [8]。
Cloud platform仮想マシン
配置制御
仮想ネットワークと仮想マシンの配備を数分以内に完了

OpenFlowコントローラ

統合アクセス制御
全通信を検査し、アプリへのアクセス権限がある通信以外は全て遮断

NG
OK

OpenFlowコントローラの制御により、IPルータ・L2スイッチ・ファイヤーウオール機能を実現

C社用仮想
インフラ

B社用仮想
インフラ
A社用仮想
インフラ

図２ データセンターへのSDN技術の適用

3.2 キャリアネットワークへの SDN 適用
キャリアネットワークにおいても、同様に短リードタイムでサービスのプロビジョニングを変更したり新規サービスの導入を行うことが求められ、共通の基盤技術を活用することができる。具体的なシステムの提案は今後の課題として現在取り組んでいるが、特にキャリアネットワークに向けた基盤技術として、OpenFlow/SDN を大規模広域ネットワークに適用可能にする技術[9] や、トランスポートネットワークへの SDN 適用[10] などの検討を行ってきている。
また、今後も通信需要の高まりと電力供給のひっ迫から、必要最低限のネットワーク機器のみに適応的に通電するような低消費電力化の検討も重要と思われる。ダイナミックに変化する通信需要にあわせて最もネットワーク性能が向上するように必要最低限の装置のみ起動する技術についても検討を進めている [11]。

4. Software Defined Network を構成する基盤技術
4.1 OpenFlow スイッチ
OpenFlow[12] は 2007年にスタンフォード大学の Nick McKeown 教授らによって提唱された技術である。OpenFlow では、多様なネットワーク機器の差異を抽象化し、統一されたプログラマビリティーを実現するため、“フロー”という概念を用いて非常に柔軟な機能構成モデルを定義した。そして、オープンなプログラマビリティーを実現するため、ネットワーク機器の制御機能を機器と別体のコントローラに移し、その間にオープンなプロトコルを定め−83−た。これにより、誰しもネットワーク機器を直接扱うことなく、コントローラ上のプログラムによって目的の機能を実現することができるようになった。例えば、図 1 においては、コントローラとスイッチの接続に OpenFlow を用いている。
図 3 に OpenFlow の概要を示す。図中の OpenFlow スイッチは、各フローに対する処理規則を定義したフローテーブルを持っている。フローとはパケットヘッダ中のレイヤ 2 からレイヤ 4 までの様々な部分を自由に用いて定義された一連の通信データのことであり、このフローに対する処理規則としては廃棄や転送だけでなくコピーやヘッダ書き換えなど様々な規則を定義することができ、従来のネットワーク機器には無い非常に柔軟な処理が可能となった。
筆者らは、OpenFlow の登場以来一貫してスタンフォード大学のチームと共同開発を進め、2008年には世界で初めてハードウエア処理が可能な OpenFlow スイッチのプロトタイプを完成させ [13]、日米間での実証実験に成功した [14]。1U サイズで、合計 136Gbps の処理能力は当時世界最高性能であった。そして、このプロトタイプを日米の様々な大学や研究機関に提供し、初期の OpenFlow 研究の立ち上げに多大な貢献をするとともに、スタンフォー
ド大学のキャンパスネットワークや、全米の大規模広域実験ネットワークである GENI [15]などの実ネットワークにおいて運用稼働させ、OpenFlow 技術の普及拡大を果たした。一連の活動から得られたフィードバックによってスイッチの完成度を向上させ、2011年にはOpenFlow スイッチとして世界で初めての製品化を成し遂げた。これは、OpenFlow という従来の延長線上にはない全く新しい技術の創出から事業化まで、産学の密連携によって成功した、極めて理想的なプロジェクトであると言えよう。

図3: OpenFlow技術概要

4.2 OpenFlow コントローラ
SDN ではコントローラの役割が非常に重要であり、コントローラを含むシステム全体の生産性が SDN の成否を決めると言っても過言ではない。従来、コントローラの基盤ソフトウエアとしては NOX/POX[16] などいくつかのオープンソースソフトウエアが公開されているものの、いずれも単体の基盤ソフトウエアが提供されるだけであり、その生産性の低さが課題となっていた。

−84−そこで、筆者らは、アプリケーション開発者やサービス提供者などが容易に、かつ短時間でコントローラを開発できるよう、“Trema”と呼ぶ OpenFlow フレームワークを開発した。
Trema の特徴は次の 2点である。
1）
ネットワークという分散環境において容易に開発からテスト、デバックまでをシームレスに行うことができるよう、コントローラの基盤ソフトウエアだけでなく、ネットワークエミュレータやデバッグ環境[17] などが高度に統合された開発フレームワークとして提供
2）
OpenFlow としての API が高度に定義されているだけでなく、複数のソフトウエアモジュールを組み合わせ、より高度にネットワーク構成要素を抽象化した拡張API を柔軟に定義可能とし、拡張性が高い

4.3 オープンイノベーションの実践
長期的な視点で通信インフラを継続的に進化させてゆくためには、多くの人々がそれぞれの領域でイノベーションに参加することが必要であり、さらには互いの成果を相互に活用しながらより大きなイノベーションに結び付けていくためのエコシステムの構築が重要である。具体的には、装置ベンダの開発品をユーザが独自のユースケースに基づいてさらに拡張し、そのユーザコミュニティーによる技術蓄積を装置ベンダにフィードバックして次世代の装置開発につなげるような、双方向循環型のオープンイノベーションの実現である。
そのような観点から、筆者らは広く一般の人たちがこの SDN における技術開発に参加できるような支援の形態として、以下の様な活動を行っている。
1）Trema をオープンソースソフトウエアとして無償で一般公開(http://trema.github.com/trema/)
し、その後も継続的に開発及びサポートを行っている [18]。
2）Trema を用いた多くの実用的なサンプルソフトウエアも多数公開（https://github.com/trema/apps）し、これを自由に利用あるいは拡張して新しい開発を容易に行えるようにした。また、コミュニティーで開発された成果を共有し、相互に利用するための場を設け、運営している。
3）
日米欧において学会などの研究者が集まる場でのデモンストレーションやチュートリアルを開催したり [19]、学生に対する教育活動を行ったり [20]、雑誌連載[21] による啓発活動
により Trema の普及活動を行っている。
4）
研究者が開発した技術を大規模なネットワークで実践できるよう、広域学術ネットワーク
JGN-X [22] 上の OpenFlow 実験網に対して Trema を提供し、各種実験に活用されている [23]。
これら活動を通して、筆者らは従来の装置ベンダとしての商業的な枠に留まることなく、コミュニティー全体の活動として通信インフラの進化を成し遂げられるよう、今後も様々な活動を続けてゆく所存である。

5. ProgrammableFlow 製品の開発
OpenFlow/SDN を活用した商用製品として、筆者らはデータセンター向けソリューションの ProgrammableFlow 製品群を 2011年 4月に世界で初めて実用化した（図 4）[24]。本製品群では、図 5 に示すマルチテナントのデータセンターにおいて、テナントごとのネットワークを迅速かつ柔軟に構築できる性能を有し、システムの構築コストおよび所要の時間を大幅に向上させることができる。

−85−

図4: ProgrammableFlow製品群

図5: ProgrammableFlowの特長
本製品は、国内運輸事業者における企業内プライベートデータセンターや、データセンター事業者などへの納入実績があり、2011年度には Interop Las Vegas で Best of Interop 2011（インフラストラクチャー部門）を受賞することができた [25]。今後も本領域における新規マーケットを創造しながら、ソリューションを展開してゆきたい。

−86−6. 結言将来の通信インフラの姿はまだまだおぼろげだが、インターネットは現代社会で欠かすことのできない社会基盤となり、それ故に今後も時代の変化と社会の要請に従って柔軟に変化し続けなければならない。その実現のため、筆者らは SDN 技術の確立に力を注いできた。
具体的な活用例として、キャリアネットワークおよびデータセンターネットワークへの適用のための検討を行い、その成果としてデータセンター向けに世界初の製品化を成し遂げた。
より多くの人たちが SDN を用いて通信インフラの進化に継続的に寄与できるようにすることが我々の活動のゴールであり、単に技術の確立だけではなく、将来の通信インフラ実現に向けたエコシステムの構築も進めている。その目的を達成するために、今後も世界の最先端で様々な活動を行っていく所存である。

参考文献[1] L. Peterson, S. Sevinc, J. Lepreau, R. Ricci, J. Wroclawski, T. Faber, and S. Schwab,“Slice-BasedFacility Architecture”, available at http://www.cs.princeton.edu/~llp/arch_abridged.pdf[2] Hideyuki Shimonishi, Shuji Ishii, "Virtualized network infrastructure using OpenFlow",
International Workshop on Broadband Convergence Networks, Apr 2010[3] Hideyuki Shimonishi, Shuji Ishii, Lei Sun, Yoshihiko Kanaumi,“Architecture, Implementation,, IEICE Transactions 94-B(10):and Experiments of Programmable Network Using OpenFlow”
2715-2722 (2011)[4] Hideyuki Shimonishi, Yasunobu Chiba, "Trema: An OpenFlow Controller Platform", postersession, 12th GENI engneering conference, Nov. 2011.
[5] 園田健太郎, 波多野洋一, 鈴木一哉, 千葉靖伸, 下西英之, "OpenFlow を用いた Reactive な
論理ネットワークの形成方法による運用管理の提案", 電子情報通信学会 (IEICE) 総合大会, Mar. 2012.
[6] NEC プレスリリース「クラウド環境において IT 資源とネットワーク資源を統合制御できる技術を開発」, 2010/7/1[7] 篠原悠介, 千葉靖伸, 下西英之, " データセンタネットワークにおける効率的マルチパスルーティングとその OpenFlow ネットワークへの適用", 電子情報通信学会 (IEICE) ネッ
トワークシステム研究会, Mar. 2010.
[8] 波多野洋一, 園田健太郎, 千葉靖伸, 下西英之, "OpenFlow コントローラによるアクセス制
御方式の提案", 電子情報通信学会 (IEICE) 総合大会, Mar. 2012.
[9] 千葉靖伸, 篠原悠介, 下西英之, " フローベースネットワークおけるフローエントリ削減手法の提案と OpenFlow ネットワークへの適用", 電子情報通信学会 (IEICE) ネットワークシステム研究会, Mar. 2010.
[10] 荒木壮一郎, 坂内正宏, 下西英之, " 光技術と OpenFlow 技術を用いたネットワーク省電力化への取組み ", 電子情報通信学会誌 Vol.93, Issue 8, pp.683-687, Aug. 2010.
[11] 篠原悠介, 千葉靖伸, 下西英之, " ノード利用率推定に基づくネットワーク省電力化手法",
電子情報通信学会 (IEICE) コミュニケーションクオリティ研究会, Jul. 2011.
[12] N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker,−87−and J. Turner,“Openﬂow: enabling innovation in campus networks,”SIGCOMM Comput.
Commun. Rev., vol.38, no.2. 2008.
[13] 千葉靖伸, 篠原悠介, 下西英之, "OpenFlow スイッチの試作と評価", 電子情報通信学会 新世代ネットワーク時限研究会 (NwGN), Aug. 2009.
[14] NEC プレスリリース「新世代ネットワークに向けたプログラマブルフロースイッチを試作し日米間での実証実験に成功 ～ GENI Engineering Conference 3rd でライブデモを実施～」, 2008/10/29[15]“GENI”,available at http://www.geni.net/[16] NOX Repo, http://www.noxrepo.org/[17] Yasunobu Chiba, Hideyuki Shimonishi, "Network Debugger: A Uniﬁed Tool for Diagnosing
Network Controlling Applications", World Telecommunications Congress 2012 Workshop on
Software Deﬁned Networks (SDN) and OpenFlow, Mar. 2012[18] NEC プレスリリース「OpenFlow を用いた大学・研究機関向け基盤ソフトウェアを開発～新世代ネットワーク研究推進のため日米大学へ提供開始～」, 2011/2/1[19] Yasuhito Takamiya, Yasunobu Chiba, Hideyuki Shimonishi, "Trema Hands-on Tutorial", 13th
GENI engineering conference, Mar. 2012[20] 第 10回NDRC コロキウム（Trema Hands-on）開催（2011年 8月 9日，於 九工大・戸畑キャンパス）http://www.ndrc.kyutech.ac.jp/topics.php?SEQ=114[21] 高宮安仁, 須尭一志, 千葉靖伸, 鈴木一哉, 小出俊夫,“こんな夜中に OpenFlow でネットワークをプロ グラミング！”, Software Design 誌 2011年 11月号より連載開始[22]“JGN2plus”, http://www.jgn.nict.go.jp/english/index.html[23] NEC プレスリリース「OpenFlow 技術を用いて、日本の 5拠点をつなぐ広域映像伝送の実証実験に成功 ～さっぽろ雪まつり・沖縄プロ野球キャンプの映像を伝送～」, 2010/3/23[24] NEC プレスリリース「世界初、新ネットワーク制御技術「OpenFlow」に対応したネットワーク製品を販売開始 ～最適な通信経路を自由に設定し、高品質で安定したサービスを実現～ ～日本通運が業務システムに導入決定～」,2011/3/9[25] NEC プレスリリース「NEC の「プログラマブルフロー」が Interop Las Vegas 2011 の Best ofInterop 2011（インフラストラクチャー部門）を受賞」,2011/5/13−88−