外部情報の取得に基づいたネットワークトラフィックの最適化
原1

瑠理子(指導教員：小口 正人)

はじめにネットワークの集中管理により，物理・仮想ネットワーク構成の動的な最適化が可能となる．

近年，ビッグデータへの対応が社会における情報処理基盤において重要となってきた [1]．SNS の一つである Twitter では，1 億 4 千万件もの情報発信が 1 日に行われている．また，大地震や台風などの自然災害時には膨大なデータが処理基盤に流れ込み，情報の発信や収集のためにユーザからのアクセスが集中するため大きな負荷がシステムにかかる．このようなイベント時に起こるバースト的な負荷変動に迅速に対応し，非常時にも停止することなく安定した処理基盤であることが期待される．
そこで，本研究では Twitter 等の外部情報から大きな負荷変動が起こる可能性を予測し，どのようにネットワーク環境を再構成したら良いか判断して，実際に指令を出すシステムの構築手法の機能の検討を行う．
そして，SDN(Software-Deﬁned Networking) を実現させる技術として注目されている OpenFlow を用いてネットワークトラフィックの最適化を行い，このようなシステムに負荷変動が起こった場合の提案手法の効果を確認する．

23.1

従来のスイッチと OpenFlow スイッチの構成における大きな違いは，経路制御など複雑な計算を担う「コントロールプレーン」と，フレーム転送など単純な処理を実行する「データプレーン」を分離した点である．
現状の一般的なスイッチでは，これらは全て一台のハードウェアに組み込まれる (図 2 左)．しかし，OpenFlow スイッチでは「コントロールプレーン」と「データプレーン」を標準的なインタフェース (OpenFlow)で接続し，管理や制御を担うソフトウェアとハードウェアを分離することで，インタフェース経由でのデータプレーンの制御を可能にする．(図 2 右)．

SDN

SDN(Software-Deﬁned Network) とはネットワークの構成，機能，性能などをソフトウェアの操作だけで動的に設定，変更できるネットワーク，あるいはそのためのコンセプトを指す．SDN を用いると，物理的に接続されたネットワーク上で，別途仮想的なネットワークを構築するといったようなことが可能になる．仮想的なネットワークを構築することで， ネットワークの物理的な制約から離れて， 目的に応じたネットワークを柔軟に構築しやすくなる．その結果，トラフィックの変動に応じて動的にネットワークの構成を変更するといった，プログラマブルな制御が可能になる．

3

図 1: OpenFlow コントローラによる制御
OpenFlow スイッチ

OpenFlow

OpenFlow とは，SDN を実現させるための要素技術の一つである．これまで企業や組織が導入・運用してきたネットワーク装置のほとんどは，機器ベンダがハードウェアに搭載可能なソフトウェアを独占的に開発し，ユーザに提供してきた．しかし，近年はネットワーク技術の複雑化に加え，事業環境の急激な変化や，ユーザニーズの多様化といった課題に直面している．
この課題解決のため，このソフトウエアを機器ベンダではない第三者でも開発できるように，ハードウェア制御用のインタフェースを標準化して提供するのが，OpenFlow の考え方である．
OpenFlow では図 1 のように，ネットワーク全体の経路制御をコントローラと呼ばれる機器上のソフトウェ
アで集中管理し，スイッチではデータ転送機能のみを実行する．物理・仮想ネットワークの両方をコントロー
ラで集中管理することによって，既存のネットワークで実施していた各スイッチでの経路制御の設定がなくなり，ネットワークの単純化と運用および管理の負荷の大幅な削減を実現する．また，コントローラによる

3.2

図 2: OpenFlow スイッチの構成
Trema

今回，OpenFlow コントローラフレームワークの一つとして提供されている，Ruby ベースの Trema を用いて研究を進めた．Trema は実行速度よりも開発効率を重視しており，他に提供されているコントローラフレームワークに比べて，大幅に短いコードで実装できるという特徴がある．また Trema は機能として，ネットワークエミュレータツールを Trema 内部に持っている．通常 OpenFlow のテストをする場合，実際に物理的な OpenFlow スイッチやパケットを送信するホスト等が必要となってくる．しかし，Trema はネットワークの定義ファイルを作ることで，仮想 OpenFlowスイッチや仮想ホストも設定できるため，Trema のみで OpenFlow コントローラの作成だけでなく，仮想環境において動作を確認することができる．本研究ではこのネットワークエミュレータ機能を利用し，仮想環境上で制御モデルを検討し実験を行う．

15

4

緊急地震速報によるトラフィック制御

トワークを確保するために，信頼性の高いパス (帯域が太い回線) を選択してトラフィックを流す．もし選択された経路が，最短パスでなかったとしても，速さよりも確実性を重視する場合には，この手法は有用であると考えられる (図 5)．

現在，OpenFlow の技術を利用し，ネットワークのトラフィック量の変動に応じてネットワークの構成や帯域をプログラマブルに制御する検討が進められている [2]．これらの技術は一般的に緩やかな負荷変動に対して行うことを想定しているため，大地震や台風といった自然災害などの，短時間に起こる大きな負荷変動に耐えることは難しい．そこで本研究では，緊急地震速報から負荷変動を予測し OpenFlow を用いてコントロールすることで，不測の事態への対応を行う．

5

OpenFlow による制御モデル

5.1

実験概要
図 5: 最短経路以外の最適な経路探索

本研究では，Twitter で発信される緊急地震速報から震源地とマグニチュード等の地震情報をモニタリングし，そのモニタリング情報をトリガとして，投機的にネットワークトラフィックの制御を行う (図 3)．

5.3

動作確認

以下のように提案したシナリオの動作を確認した．

(1) 緊急地震速報により，マグニチュード 6.0 以上(一般的にこれより規模の大きな地震で津波が発生することが多い) の大きさの大地震が発生したと観測された時，問題が発生しうると想定されるネットワークから別の安定したネットワークへと，ホストの所属するネットワークを迅速に切り替えることで，安定した通信を可能にした．
(2) 通常のルーティングでは最短経路を通ってパケットを送るが，緊急地震速報により特定の地域 (今回は福島県沖) を震源地とし，マグニチュード 6.0 以上を観測した場合には，特定の地域を通る一部のリンクに何らかの物理的な異常や，輻輳が起こると想定される．
そこで，経路を迂回させ最適な経路探索を行うことで，柔軟なパス選択が可能となった．

図 3: 実験概要

5.2

災害時に想定される制御動作

6OpenFlow を使って制御するシナリオとして，以下の 2 つの動作を提案する．

まとめと今後の課題

大地震が発生した際に起こる，ネットワークシステムへの負荷変動を外部情報から予測し，ネットワークシステムに起こりうる問題の解決を図るために，いくつかの制御モデルを提案した．また，OpenFlow 制御における動作を確認した．
今後はどのようなモニタリング情報を元に，ネットワークを構築するか再検討し，緊急災害時にも投機的にシステムの再構成を行い，限られた計算機資源のなかで必要最小限の機能を維持することを目指す．また
地震だけでなく，さまざまな社会情報によって想定される負荷変動にも，対応できる制御モデルを検討する．

(1) ネットワークの切り替え．
(2) 最短経路以外の最適な経路探索．
(1) ネットワークの切り替え
災害によって，ネットワークの途中の通信経路が欠損・断続的切断が生じるような劣悪な環境に陥っても，モニタリング情報を元に臨時のネットワークに瞬時に切り替えることで，緊急災害時の通信を確保する (図 4)．

参考文献[1] McKinsey Global Institute， Big data: The next
frontier for innovation, competition, and productivity ，June 2011[2] 飯島明夫:「OpenFlow/SDN のキャリアネットワー
クへの適用について」，電子情報通信学会ネットワークシステム研究会招待講演，2012 年 10 月
[3] 原瑠理子，長谷川友香，小口正人: モニタリング情報に基づく OpenFlow を用いたネットワークトラフィック制御モデル，DEIM2014,2014 年 3 月発表
予定．

図 4: ネットワークの切り替え(2) 最短経路以外の最適な経路探索
緊急災害時には，確実に届けたい情報 (安否確認など)がトラフィックに流れると想定されるので，確実なネッ16