(57)【要約】【課題】  モバイルネットワークのエミュレーションを可能にする。【解決手段】  本発明は、予め、定常的パケット転送状態の複数のエミュレーション特性プロファイル、各種状態遷移確率を格納した記憶手段と、エミュレーション特性プロファイルを動的に与えた確率で遷移させて、パケットの複数の転送状態をエミュレーションするエミュレーション制御手段と、記憶手段のエミュレーション特性プロファイル、各種状態遷移確率を時間経過と共に一定の分布で変化させるプロファイル変更手段と、を有する。また、「通信がない状態」から「接続断状態」になるまで継続時間に応じて、該「接続断状態」の複数のプロファイルを切り替え、接続断状態解消時には、定常的パケット転送状態に遷移するまでに要した接続遅延時間に溜め込まれたパケットをまとめて転送する。【選択図】  図１
2014216722.tif 000002
【特許請求の範囲】
【請求項１】
モバイルネットワークを対象とした品質エミュレーションを行うモバイルネットワーク品質エミュレーション装置であって、
予め、定常的パケット転送状態の複数のエミュレーション特性プロファイル、各種状態遷移確率を格納した記憶手段と、
前記エミュレーション特性プロファイルを動的に与えた確率で遷移させて、パケットの複数の転送状態をエミュレーションするエミュレーション制御手段と、
前記記憶手段の前記エミュレーション特性プロファイル、前記各種状態遷移確率を時間経過と共に一定の分布で変化させるプロファイル変更手段と、
を有することを特徴とするモバイルネットワーク品質エミュレーション装置。
【請求項２】
所定の時間「通信がない状態」が継続した場合には「接続断状態」に遷移する接続断状態遷移手段を有し、
前記接続断状態遷移手段は、
前記プロファイル変更手段を用いて、前記「通信がない状態」から前記「接続断状態」になるまで継続時間に応じて、該「接続断状態」の複数のプロファイルを切り替え、接続断状態解消時には、定常的パケット転送状態に遷移するまでに要した接続遅延時間に溜め込まれたパケットをまとめて転送する手段を含む
請求項1記載のモバイルネットワーク品質エミュレーション装置。
【請求項３】
前記エミュレーション制御手段は、
最初のパケット転送時において、前記「接続断状態」から一旦接続遅延とし、定常状態に遷移する手段を含む
請求項1記載のモバイルネットワーク品質エミュレーション装置。
【請求項４】
前記エミュレーション制御手段は、
定常状態における内部の品質状態を切り替える場合には、一定時間毎に状態遷移確率を計算し、該状態遷移確率に応じて状態を決定する手段を更に有する
請求項1記載のモバイルネットワーク品質エミュレーション装置。
【請求項５】
モバイルネットワークを対象とした品質エミュレーションを行うモバイルネットワーク品質エミュレーション方法であって、
予め、定常的パケット転送状態の複数のエミュレーション特性プロファイル、各種状態遷移確率を格納した記憶手段と、
エミュレーション制御手段と、
プロファイル変更手段と、を有する装置において、
前記エミュレーション制御手段が、前記エミュレーション特性プロファイルを動的に与えた確率で遷移させて、パケットの複数の転送状態をエミュレーションするエミュレーション制御ステップと、
前記プロファイル変更手段が、前記記憶手段の前記エミュレーション特性プロファイル、前記各種状態遷移確率を時間経過と共に一定の分布で変化させるプロファイル変更ステップと、
を行うことを特徴とするモバイルネットワーク品質エミュレーション方法。
【請求項６】
所定の時間「通信がない状態」が継続した場合には「接続断状態」に遷移する接続断状態遷移ステップを更に行い、
前記接続断状態遷移ステップにおいて、
前記プロファイル変更ステップを呼び出して、前記「通信がない状態」から前記「接続断状態」になるまで継続時間に応じて、該「接続断状態」の複数のプロファイルを切り替え、接続断状態解消時には、定常的パケット転送状態に遷移するまでに要した接続遅延時間に溜め込まれたパケットをまとめて転送する
請求項５記載のモバイルネットワーク品質エミュレーション方法。
【請求項７】
前記エミュレーション制御ステップにおいて、
最初のパケット転送時において、前記「接続断状態」から一旦接続遅延とし、定常状態に遷移する
請求項５記載のモバイルネットワーク品質エミュレーション方法。
【請求項８】
前記エミュレーション制御ステップにおいて、
定常状態における内部の品質状態を切り替える場合には、一定時間毎に状態遷移確率を計算し、該状態遷移確率に応じて状態を決定する
請求項５記載のモバイルネットワーク品質エミュレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モバイルネットワーク品質エミュレーション装置及び方法に係り、特に、ネットワークの品質変動の高いモバイルネットワークを対象としたモバイルネットワーク品質エミュレーション装置及び方法に関する。
【背景技術】
【０００２】
ネットワークエミュレーション技術としては、例えば、SHUNRA(例えば、非特許文献１参照)や、NISTNET(例えば、非特許文献２参照)がある。SHUNRAは、実ネットワークの遅延やパケットロスを測定し、測定データをエミュレータにインポートして、リアルな環境をエミュレーションする。エミュレーション結果からパフォーマンスの劣化要因（例えば、回線帯域、サーバ、アプリケーションなのか等)を分析する。
【０００３】
NISTNETは、Linux(登録商標)対応のネットワークエミュレーションソフトウェアであり、このソフトウェアを用いてルータとして動作するLinux(登録商標)サーバは、輻輳損失、パケット並び替え、または、非対称帯域幅状態などの様々なネットワーク状態をエミュレートすることができる。
【０００４】
上記のように、非特許文献１，２の技術は、基本的には固定回線網のエミュレーションを目的として設計されている。モバイルのネットワークエミュレーションにおいては、ネットワーク品質の変動のような要素を考慮しなければならない。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】SHUNRA       http://www.shunra.com/products/shunra-nv-mobile
【非特許文献２】NISTNET      http://www-x.antd.nist.gov/nistnet/
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、上記のSHUNRAのような製品ではモバイルの品質をエミュレーションするとされているが、基本的には従来型の固定回線網のエミュレーション機構のパラメータを、「遅延・損失率が大きい」、「その分布が時間と共に揺らぎを持つ」ように設定する程度であった。
【０００７】
モバイルにおける品質では、以下のような特性があり、固定網向けのエミュレータでは再現ができないという問題がある。
【０００８】
＜特性＞
・内部の品質状態が複数の独立離散的状態を持つ；
・無通信時状態が一定時間継続すると(上位層では接続したままでも)低レイヤの接続について一旦接続が切れ、サイドパケットを送る際に一定の接続遅延がかかる(例えば、GSMA Smarter apps for Smarter phones, http://www.gsma.com/technicalporojects/wp-content/uploads/2012/04/gsmasmarterappsforsmarterphones0112.v.0.14.pdf 等参照)；
・通常の通信時においても、ふいに接続が切れて（「疑似接続断」状態）、一定の接続遅延（疑似接続断回復時間）の後に、疑似接続断の間に送られたパケットがまとめて送られてくる；
・上記の状態が時間と共に変わったり、だんだん悪化する；
本発明は、上記の点に鑑みなされたもので、
・ネットワーク内部の品質状態が複数の独立離散的状態を持つこと；
・無線通信時状態が一定時間継続すると（上位層では接続したままでも）低レイヤの接続については一旦接続が切れ、再度パケットを送る際に一定の接続遅延が係ること；
・通常の通信時においても、突然、接続が切れて（「疑似接続断」状態」、一定の接続遅延（疑似接続断回復時間）のあとに疑似接続断の間に送られたパケットがまとめて送られてくること；
をエミュレーション装置上に反映させることが可能なモバイルネットワーク品質エミュレーション装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明（請求項１）は、モバイルネットワークを対象とした品質エミュレーションを行うモバイルネットワーク品質エミュレーション装置であって、
予め、定常的パケット転送状態の複数のエミュレーション特性プロファイル、各種状態遷移確率を格納した記憶手段と、
前記エミュレーション特性プロファイルを動的に与えた確率で遷移させて、パケットの複数の転送状態をエミュレーションするエミュレーション制御手段と、
前記記憶手段の前記エミュレーション特性プロファイル、前記各種状態遷移確率を時間経過と共に一定の分布で変化させるプロファイル変更手段と、を有する。
【００１０】
また、本発明（請求項２）は、所定の時間「通信がない状態」が継続した場合には「接続断状態」に遷移する接続断状態遷移手段を有し、
前記接続断状態遷移手段は、
前記プロファイル変更手段を用いて、前記「通信がない状態」から前記「接続断状態」になるまで継続時間に応じて、該「接続断状態」の複数のプロファイルを切り替え、接続断状態解消時には、定常的パケット転送状態に遷移するまでに要した接続遅延時間に溜め込まれたパケットをまとめて転送する手段を含む。
【００１１】
また、本発明（請求項３）は、前記エミュレーション制御手段において、
最初のパケット転送時において、前記「接続断状態」から一旦接続遅延とし、定常状態に遷移する手段を含む。
【００１２】
また、本発明（請求項４）は、前記エミュレーション制御手段において、
定常状態における内部の品質状態を切り替える場合には、一定時間毎に状態遷移確率を計算し、該状態遷移確率に応じて状態を決定する手段を更に有する。
【発明の効果】
【００１３】
上述のように本発明によれば、モバイルネットワークにおいて、ネットワーク内部の品質状態が複数の独立離散的状態を持つこと、無線通信時状態が一定時間継続すると（上位層では接続したままでも）低レイヤの接続については一旦接続が切れ、再度パケットを送る際に、一定の接続遅延がかかること、通常の通信時においても、突然接続が切れた疑似接続断状態、一定の接続遅延の後に疑似接続断までの間に送られたパケットをまとめて送られることをエミュレーションに反映させることが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施の形態におけるネットワークエミュレータの構成図である。
【図２】本発明の一実施の形態における状態遷移図である。
【図３】本発明の一実施の形態における定常状態の内部遷移を示す図である。
【図４】本発明の一実施の形態における状態遷移フロー図である。
【図５】本発明の一実施の形態における定常状態にある場合の内部状態遷移パターン（図４中の「定常状態」の内容）である。
【発明を実施するための形態】
【００１５】
以下、図面と共に本発明の実施の形態を説明する。
【００１６】
図１は、本発明の一実施の形態におけるネットワークエミュレータの構成を示す。
【００１７】
同図に示すネットワークエミュレータ１００（以下、単に「エミュレータ」と記す）は、複数のパケット入出力インタフェース１０、パケットを受信、転送するパケット処理部本体２０、後述する機能を有する状態遷移制御部３０、接続遅延を求める際に乱数を生成する乱数生成部４０、時間の経過を計測するタイマ部５０、状態遷移パラメータ記憶部６０を有する。
【００１８】
本発明では、モバイル網における特性を反映したネットワークエミュレーションを実現するため、状態遷移制御部３０に以下の機能を追加する。
【００１９】
●離散的状態遷移機能：
定常的パケット転送状態のエミュレーション特性プロファイルを（損失・遅延・遅延ゆらぎ等について）単一の分布特性でなく、複数の独立したエミュレーション特性プロファイルを用意し、それらを動的に与えた確率で遷移させて複数の転送状態をエミュレーションする。また、これらのプロファイルのパラメータ、及び、遷移確率も時間経過と共に一定の分布で変化する。
【００２０】
●無通信による接続断と接続遅延機能：
タイマ部５０により、事前に設定した一定の時間の間「通信がない」状態が継続したことを検出した場合、「接続断」状態に遷移し、また、「通信なし状態」の継続時間によって（継続時間が長くなるとともに）遷移先の接続断状態は複数のプロファイルが切り替わり、再びパケット通信が発生した際（接続断状態解消）には定常的パケット転送状態に移るまでに一定の分布を持つ「接続遅延」の時間を要し、その間のパケットが遅延され、接続が回復した際にまとめて転送される仕組みを持つ。
【００２１】
●最初の接続遅延機能：
最初のパケット転送時についても、接続断状態からの接続遅延が必要であるので、同様に一定の分布を持つ接続遅延を加味する。
【００２２】
●疑似接続断による遅延機能：
通信が継続的に行われている状態でも、接続断は発生するため、通信時にも設定したパラメータに基づく確率で「疑似接続断」による遅延を発生させる。こちらも無通信接続断からの復帰時と同じくその間のパケットが遅延され、接続が回復した際に、まとめて転送される仕組みを持つ。
【００２３】
状態遷移等パラメータ記憶部６０には、以下の（１）〜（３）に示す、転送状態のプロファイルセット、各種状態遷移確率、接続遅延時間の確率分布等の各パラメータが格納される。以下の設定パラメータの詳細を示す。
【００２４】
（１）転送状態プロファイルセット：
離散的状態遷移を実現するため、複数の転送状態プロファイルのセットを持つ。
【００２５】
転送状態レベル数：ｎ
停止状態レベル数：ｍ
ここでは、例として、n=3のセット（SA, SB, SC）を定義する例では、以下のようになる。（正規分布などはこの定義例以外では関係ないが、正規分布をとる場合には付随するパラメータが平均損失・分散の２つになるという具体例などを示す例として記載する）。
【００２６】
・セットA(SA)：
損失率分布：正規分布（SA,Lf）
パラメータ：平均損失率（Sa,la），分散（SA,lb）
遅延分布：正規分布(SA,Df) 
パラメータ：平均遅延(SA,da)，分散(SA,db) 
帯域：
パラメータ：帯域(SA,B) 
・セット B(SB))
損失率分布：一様分布(SB,Lf) 
パラメータ：最小損失率(SB,la)，最大損失率(SB,lb) 
遅延分布：指数分布＋オフセット(SB,Df) 
パラメータ：オフセット値（最小遅延値：(SB,da)，分散(SB,db) 
帯域：
パラメータ：帯域(SB,B) 
・セットC(Sc) 
損失率分布：生起分布(SC,Lf) 
パラメータ：平均損失率(SC,la)，分散(SC,lb) 
遅延分布：指数分布＋オフセット(Sc,Df) 
パラメータ：オフセット値（最小遅延値：SC,da），分散(SC,db) 
帯域：
パラメータ：帯域(SC,B) 
また、上記のパラメータは、帯域以外はいずれも時間変化する関数である（時間経過しても変わらない場合を含む）。
【００２７】
（２）各種状態遷移確率：
・定常状態間遷移確率関数Psij(t)（i,jは状態を表す添え字、tは時間）
例）時刻５において、状態Aにあるときに、別の状態B,Cに切り替わる確率はそれぞれ次のように与えられる：PsAB(5), PsAC(5)
３つの状態であれば組み合わせで、3×２の６つの遷移確率があり、時間と共に変化する（変化しない状態を定数関数で表現してもよい：だんだん時間と共に悪い状態の比率が上がっていくような状態をエミュレーションするための時間の関数となっている）。
【００２８】
・疑似断状態遷移確率：
Pdi(t) (iは上記例では状態A,B,Cに対応)
当然、各時点での各状態（A,B,C）の状態遷移確率の和（Σj Pxij (t)+pdi (t)は1.0以下である）（iはA,B,Cのいずれか、Σjはｊに関する和）
・状態遷移再計算時間：Z
（Z毎に状態遷移するかをエミュレータ内部で計算し、必要に応じて状態遷移する）
（３）接続遅延時間の確率分布
・ｍ個の停止状態レベル（I=L1, L2…Lm）に対し、それぞれ接続遅延時間関数（接続遅延時間の確率密度累積分布の逆関数）を予め設定する。
【００２９】
Cl(r,t)
ここで例えば、「L1状態の時刻ｔにおける接続遅延」の関数はCL1(r,t)で与えられ、
入力：t=時間（０〜無限大）
r=乱数（０〜１）
である。即ち、L1状態の時刻５の状態で、乱数計算した結果が0.4だった時の）接続遅延は、
出力：C L1 (0.4, 5)
として与えられる。
【００３０】
・無通信時の状態遷移時間：
無通信時間がこの時間継続すると各停止状態レベルに段階的に遷移する。
【００３１】
TI（但し、I=L1, L2…Lm）
・疑似接続断時間は以下で与えられる。
【００３２】
CR(r,t)
入力：t=時間（０〜無限大）
r=乱数（０〜１）
以下に、状態遷移制御部３０における動作を図２に基づいて説明する。
【００３３】
実際の動作は、図２の状態遷移図の初期状態から出発し、最初の接続遅延計算処理を経て、定常通信状態（以下、単に「定常状態」と記す）となる。定常状態における状態遷移は、状態遷移するかどうかの確率（状態遷移確率）に基づいて遷移する。具体的には、一定時間毎に乱数生成部４０において乱数を振り、所定の閾値を超えれば状態遷移する。定常状態内では、状態遷移等パラメータ記憶部６０に設定されたパケット損失分布・遅延分布・帯域等のパラメータで（既存の）ネットワークエミュレータ機構が動作する。図３に示すように、定常状態における内部遷移は、各状態（状態S1, S2, S3）毎に、以下の各分布をパラメータとして保持する。
【００３４】
・転送遅延の分布（当該分布は、時間と共に分布関数の形が変わる）
・損失率（時間依存）
・帯域（時間非依存）
・疑似断状態への遷移確率（時間依存）
・疑似断状態になった場合の疑似断継続時間分布（時間依存）
定常状態における内部遷移では、どの状態に遷移するかの確率は元の状態毎に決められており、当該確率によって遷移する状態を選択する。
【００３５】
また、時間Z毎に定期的に内部状態遷移と疑似接続断の発生をエミュレートし、タイマ部５０によりパケット通信のない無通信時間が一定時間経過したことが検出されると、「接続断状態」に遷移していき、そこでパケットが送られてきた際には、接続遅延が発生する、という状態遷移を繰り返す。
【００３６】
この状態遷移の詳細及び具体的動作を図２を参照して、以下に個別に説明する。
【００３７】
［１］無通信時の停止状態への遷移：
通信状態において、送受信いずれかについて最後のパケットが通ってから無通信がT L1時間経過すると、
［通信状態］→［停止状態レベルL1］へ遷移
となる。
【００３８】
その後、さらに追加でTL2時間経過してもパケットの送受信が行われなければ、
［停止状態レベルL1］→［停止状態レベル２］へ遷移
となり、最終停止状態レベルLｍは状態タイマなしに次に通信が発生するまでその状態にとどまる。
【００３９】
通信が発生（最初にパケットが入力された）段階で、各停止状態レベルに応じた接続遅延を算出し、その遅延時間で［２］の「接続遅延＆疑似接続断状態における制御」の内容に移る。
【００４０】
［２］接続遅延＆疑似接続断状態における制御
パケットの処理において、接続遅延・疑似接続断については同様の処理であるため、まとめて記述する。
【００４１】
「接続が切れている状態」に近いが、エミュレーションとしては接続が切れている（＝パケットが廃棄される）状態ではだめで、破棄せずにその間受信したパケットを溜め込んでおき、「再接続」状態に戻ったときに溜っていたパケットを送出する必要がある。
【００４２】
新たにそのための実装をエミュレーションで追加してもよいが、ここでは、既存のネットワークエミュレータの遅延制御を利用して実現する方法を示す。
【００４３】
図４に状態遷移フローを示す。
【００４４】
まず、「接続遅延」ないし、「疑似接続断状態」になった時点で「再接続の所要時間」を各状態（に応じた接続遅延時間の確率分布から決定する。例えば、状態遷移制御部３０は、乱数生成部４０で生成された乱数を用いて、その時点で与えられた分布形から遅延時間を決定する。例えば、時刻53の時に、停止状態L1に到った場合、乱数を振った結果が0.3なら、再接続時間はC L1 (0.3, 53)である。
【００４５】
同様に、時刻53の時に、疑似接続断状態になった場合、同じく乱数を振った結果が0.3なら、再接続遅延はCR(0.3, 53)である。
【００４６】
この算出された遅延時間をτとする。
【００４７】
最初にエミュレータ１００の接続遅延パイプの時間長さをτとして、その後τ経過するまで徐々に遅延時間を線形で小さく設定していき（τ−１後には遅延設定時間もτ−１）、本状態に遷移してτ後に遅延０となるようにする。
【００４８】
完全に連続的に遅延時間設定を変化させる機構があれば、元にしているエミュレータに存在すればそれを利用すればよく、無い場合にも十分に細かい時間単位で、接続遅延パイプの長さを一定時間経過後に経過した時間分だけ遅延設定時間を減算すればよい。
【００４９】
疑似接続断状態の場合は、τ経過時点で遅延時間０となった時点で、溜められたパケットは一括して送出され、接続遅延なり疑似接続断状態は「定常状態」に戻る。
【００５０】
停止状態L1, L2…L(m-1)にある場合については、最初のパケットを待ってから、パケット遅延の処理を上記と同様に行う。
【００５１】
最初のパケット待ち処理は、各停止状態に応じたT1(例えばL1ならT L1)待ち時間として設定する。T Iの時間内に「（その状態に移ってから）最初のパケット」が到着すればそこから上記のτの接続遅延パイプでの遅延処理に移る。
【００５２】
T Iの時間内にパケットが一つもない場合、上述の遅延減算モードに遷移せず、一つ上の状態（L1なら次のL2レベルへ）に遷移する。
【００５３】
停止状態Lm(最上位の停止状態)である場合は、「次のパケット」が到着するまで無限に待ち続け、最初のパケットが到着してからCLm( )による「接続遅延」とする。
【００５４】
［３］定常状態における内部の品質状態の遷移
通常のパケット転送状態においては、図５に示すように、定常状態の内部状態が複数あり（例えばn=3のと場合、S A, S B, S Cの３種）、定常状態においてはそのいずれかとなっているものとする。
【００５５】
この状態の切り替えは、一定時間Z毎に状態遷移確率を計算するものとする。（初期状態や接続断状態から接続遅延を経て）定常状態に遷移すると、最初の状態を乱数で決定する。
【００５６】
最初の状態は（仮に状態Aに居たとして）、状態Aからの状態遷移確率でどの状態にあるかを計算する。
【００５７】
PsAB(0)=0.2, PsAC(0)=0.1, PdA(0)=0.05
だった場合は、区間０〜１の乱数ｒが0.0≦ｒ＜0.2だった場合、状態Bへ遷移し、区間０〜１の乱数ｒが0.2≦ｒ＜（0.2＋0.1）だった場合、状態Cへ遷移し、区間０〜１の乱数rが0.3≦ｒ＜(0.3+0.05)だった場合、疑似接続断状態へ遷移し、それ以外は状態Aに遷移する。即ち、例えば、ｒ＝0.2だった場合には、状態Cが選択される。
【００５８】
その後一定時間Z毎に同様の状態遷移確率を計算し、別の状態に遷移するか、また、元状態に留まるかを判断する。
【００５９】
各状態では、セットA(S A)等で決められたパケット損失確率分布、設定帯域に応じたネットワーク品質状態のエミュレーションが行われる（この各状態内でのエミュレーションは既存技術の範囲であるのでここでは詳細は言及しない）。
【００６０】
なお、状態切り替えのための時間Zごとの処理と同時にパケット損失確率分布、遅延確率分布について（時間変化により）分布が変わるので、その時点でのパケット損失確率分布、遅延確率分布に設定を更新する。これにより損失分布などの時間変化に対応していないネットワークエミュレータを用いつつ、時間変化を擬似的に実現する。
【００６１】
上記の図1に示すネットワークエミュレータの各構成要素の動作をプログラムとして構築し、ネットワークエミュレータとして利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【００６２】
なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【００６３】
１０  パケット入・出力インタフェース
２０  パケット処理部本体
３０  状態遷移制御部
４０  乱数生成部
５０  タイマ部
６０  状態遷移等パラメータ記憶部
【図１】
2014216722.tif 000003
【図２】
2014216722.tif 000004
【図３】
2014216722.tif 000005
【図４】
2014216722.tif 000006
【図５】
2014216722.tif 000007