(57)【特許請求の範囲】
【請求項１】
アプリケーションプロトコルによる通信に対し、通信の途中でユーザ端末から切断される途中切断の統計情報を取得し、当該統計情報に基づいて、アプリケーションプロトコル毎のユーザ不満度を算出して当該ユーザ不満度に対応するペーシング閾値をアプリケーションプロトコル毎に管理する統計情報処理手段と、
前記ユーザ端末への通信トラフィックが所定の帯域上限値を超えず、かつ各アプリケーションプロトコルの前記ユーザ不満度が一致するペーシング閾値を前記アプリケーションプロトコル毎に決定し、前記アプリケーションプロトコル毎の前記通信トラフィックが、決定した前記ペーシング閾値を下回るようにペーシング処理を実行する呼処理手段
を備えるトラフィック最適化装置。
【請求項２】
前記ユーザ不満度は、ペーシング処理の適用時の帯域であるペーシング閾値に帯域削減した時に発生する途中切断の割合から、ペーシングをかけていない帯域削減未実施状態で発生する途中切断の割合を除いた数値であって、当該ペーシング処理を適用した時のペーシング閾値による通信状態に対するユーザの不満度を表す指標であることを特徴とする請求項１に記載のトラフィック最適化装置。
【請求項３】
前記呼処理手段が、
セッションを監視して識別した当該セッションのアプリケーションプロトコル種別、当該セッションの切断時に判定した正常切断または途中切断を示す切断種別、および当該切断時に適用していたトラフィック制御状況情報を含む切断情報を出力するセッション監視部を備え、
前記統計情報処理手段が、
前記切断情報に基づいて、アプリケーションプロトコル毎に、前記トラフィック制御状況情報がペーシングをかけていない帯域削減未実施状態で発生する途中切断の割合と、前記トラフィック制御状況情報がペーシング処理の適用時の帯域であるペーシング閾値に帯域削減した時に発生する途中切断の割合を登録する途中切断割合管理テーブルを生成する統計情報管理部と、
前記途中切断割合管理テーブルの登録情報に基づいて前記ユーザ不満度を算出し、算出した前記ユーザ不満度と、アプリケーションプロトコル毎の当該ユーザ不満度に対応する前記ペーシング閾値を対応付けて登録するユーザ不満度テーブルを生成する統計情報算出部を備える
ことを特徴とする請求項２に記載のトラフィック最適化装置。
【請求項４】
前記呼処理手段が、
トラフィックがシステムに規定されている監視対象の帯域上限値を超えると、設定されているセッション数およびアプリケーションプロトコル種別を識別し、前記ユーザ不満度テーブルを参照して、前記ユーザ不満度毎に登録されている各アプリケーションプロトコルの前記ペーシング閾値の合計が前記監視対象の帯域上限値を下回る条件の前記ユーザ不満度を選択し、当該選択したユーザ不満度に対応して登録されている各アプリケーションプロトコルの前記ペーシング閾値を、アプリケーションプロトコル毎のペーシング閾値として決定してペーシング処理を実行するペーシング処理部を備える
ことを特徴とする請求項３に記載のトラフィック最適化装置。
【請求項５】
前記途中切断割合管理テーブルと前記ユーザ不満度テーブルは、前記セッション監視部が出力する前記切断情報を用いて所定のタイミングで更新されることを特徴とする請求項３または請求項４に記載のトラフィック最適化装置。
【請求項６】
アプリケーションプロトコルによる通信に対し、通信の途中でユーザ端末から切断される途中切断の統計情報を取得し、
前記統計情報に基づいて、アプリケーションプロトコル毎のユーザ不満度を算出して当該ユーザ不満度に対応するペーシング閾値をアプリケーションプロトコル毎に管理し、
前記ユーザ端末への通信トラフィックが所定の帯域上限値を超えず、かつ各アプリケーションプロトコルの前記ユーザ不満度が一致するペーシング閾値を前記アプリケーションプロトコル毎に決定し、
前記アプリケーションプロトコル毎の前記通信トラフィックが、決定した前記ペーシング閾値を下回るようにペーシング処理を実行する
ことを特徴とするトラフィック最適化方法。
【請求項７】
前記ユーザ不満度は、ペーシング処理の適用時の帯域であるペーシング閾値に帯域削減した時に発生する途中切断の割合から、ペーシングをかけていない帯域削減未実施状態で発生する途中切断の割合を除いた数値であって、当該ペーシング処理を適用した時のペーシング閾値による通信状態に対するユーザの不満度を表す指標であることを特徴とする請求項６に記載のトラフィック最適化方法。
【請求項８】
セッションを監視して識別した当該セッションのアプリケーションプロトコル種別、当該セッションの切断時に判定した正常切断または途中切断を示す切断種別、および当該切断時に適用していたトラフィック制御状況情報を含む切断情報を出力し、
前記切断情報に基づいて、アプリケーションプロトコル毎に、前記トラフィック制御状況情報がペーシングをかけていない帯域削減未実施状態で発生する途中切断の割合と、前記トラフィック制御状況情報がペーシング処理の適用時の帯域であるペーシング閾値に帯域削減した時に発生する途中切断の割合を登録する途中切断割合管理テーブルを生成し、
前記途中切断割合管理テーブルの登録情報に基づいて前記ユーザ不満度を算出し、算出した前記ユーザ不満度と、アプリケーションプロトコル毎の当該ユーザ不満度に対応する前記ペーシング閾値を対応付けて登録するユーザ不満度テーブルを生成する
ことを特徴とする請求項７に記載のトラフィック最適化方法。
【請求項９】
トラフィックがシステムに規定されている監視対象の帯域上限値を超えると、設定されているセッション数およびアプリケーションプロトコル種別を識別し、
前記ユーザ不満度テーブルを参照して、前記ユーザ不満度毎に登録されている各アプリケーションプロトコルの前記ペーシング閾値の合計が前記監視対象の帯域上限値を下回る条件の前記ユーザ不満度を選択し、
当該選択したユーザ不満度に対応して登録されている各アプリケーションプロトコルの前記ペーシング閾値を、アプリケーションプロトコル毎のペーシング閾値として決定してペーシング処理を実行する
ことを特徴とする請求項８に記載のトラフィック最適化方法。
【請求項１０】
前記途中切断割合管理テーブルと前記ユーザ不満度テーブルは、前記切断情報を用いて所定のタイミングで更新されることを特徴とする請求項８または請求項９に記載のトラフィック最適化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トラフィック最適化装置およびトラフィック最適化方法に関し、特に、プロトコル毎のペーシング処理を、ユーザ行動を反映した統計情報に基づいて実行するトラフィック最適化装置およびトラフィック最適化方法に関する。
【背景技術】
【０００２】
ペーシング（Pacing）は、パケットの送信間隔を制御することにより、バーストトラフィックを抑えることでトラフィックの平滑化を行い、ネットワークの利用を効率化する技術である。
【０００３】
例えば、複数のリンクからのトラフィックを入力して１つのリンクにまとめて出力するようなスイッチにおいて、バーストトラフィックが入力するとバッファオーバフローとなりパケットロスが発生してしまう。そのため、ペーシングにより送信データ量を定められた閾値の帯域を超えないように制御することで、ネットワークの途中経路での輻輳の発生を防ぎ、ネットワークの利用を効率化することができる。ペーシングでバーストトラフィックを抑制して経路途中でのバッファオーバフローを防ぐには、個々のパケットの送信を開始するタイミングを正確に制御する必要がある。そして、ペーシングは、通信データ量がごく短い時間でも既定の帯域を超えることがないように送信帯域を精密に制御する。
【０００４】
サーバからユーザ端末に流れる映像ファイルのパケットの流量を制御する映像レート変換装置が特許文献１に開示されている。
【０００５】
特許文献１は、サーバからの映像ファイルのダウンロード速度に対しユーザ端末での映像ファイルの再生速度がダウンロード速度よりも所定の値だけ低い値で追随するようなペーシング処理を行う映像レート変換装置を開示する。
【０００６】
特許文献１が開示する映像レート変換装置のペーシング部は、例えば、ダウンロード速度が「１０」の場合に、再生速度が「４」のように開きがある場合はダウンロード速度を「５」のように所定値に近づくように落とす。また、その後、ダウンロード速度が、再生速度「４」よりも遅い「３」に落ちた場合、ペーシング部は、再生速度をダウンロード速度「３」よりも遅い「２」に落とすような追随制御を行う。
【０００７】
通信網に接続された端末で実行中の複数のアプリケーションに対して通信網の使用状態に応じて適切に通信品質を制御する通信制御装置が特許文献２に開示されている。
【０００８】
アプリケーション毎に要求される通信品質は異なるので、特許文献２が開示する通信制御装置は、実行中のアプリケーション毎に異なる通信帯域、遅延時間、廃棄率等の通信品質を適切に制御することで、通信サービスの体感品質を向上させている。
【０００９】
この通信制御装置は、アプリケーションの実行状況に応じてアプリケーション毎に必要な通信品質を推定し、アプリケーションの優先度と網資源に応じて通信帯域、遅延時間、廃棄率等を変更する制御を行う。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開2015-154395号公報
【特許文献２】特開2011-155600号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
ペーシングは、同一の端末・サーバ間でのトラフィックの使用帯域が所定のペーシング閾値を上回らないように、使用帯域を制限するというように動作する。そして、ペーシング閾値は、通常は固定的に設定されている。
【００１２】
そのため、ストリーミング再生で使われる動画が高画質化されてデータ量が増大するような傾向にある環境においては、ペーシング閾値が固定的に設定されたままでは、ユーザ端末での動画再生の停止が頻発してしまう可能性がある。このような場合、ネットワークプロバイダーは、インターネット上で配信されている動画コンテンツの動向調査を継続的に行って、必要とされるペーシング閾値を適宜設定しなおす必要がある。
【００１３】
また、一般的にアプリケーションプロトコルによってサービスの内容が異なるため、同じペーシング閾値でペーシングをかけてしまうと、特定のサービスを利用しているユーザの不満が急激に増加してしまう可能性がある。
【００１４】
例えば、ＦＴＰ（File Transfer Protocol）のように大容量のデータのダウンロードで使われるものは、使用帯域の減少によりダウンロード速度が落ちる。そのため、ペーシングで使用帯域が削減されることに比例してユーザが体感するストレスが上がることが予想される。それに対し、ＨＴＴＰ（Hyper Text Transfer Protocol）のように動画のストリーミング再生に使われるものは、動画のビットレート以上の配信レートが確保されている限りにおいてはユーザが体感するストレスは高くない。しかし、ペーシングで使用帯域が削減されて動画のビットレート未満に配信レートが落ちると、動画の再生が途中停止を繰り返すことになり、ユーザストレスが急激に高くなることが予想される。
【００１５】
したがって、ペーシング閾値の設定を市場の変化に対応させたり、異なるアプリケーションプロトコルを利用しているそれぞれのユーザに対して与えるストレスが偏らないように、ペーシング閾値を動的に設定する制御が求められる。
【００１６】
特許文献１や特許文献２のいずれにも、異なるアプリケーションプロトコルを利用しているそれぞれのユーザに対して、与えるストレスが偏らないようにペーシング閾値を動的に設定する制御を行うことは開示されていない。
【００１７】
本発明は、異なるアプリケーションプロトコルを利用しているそれぞれのユーザに対して、与えるストレスが偏らないようにペーシング閾値を動的に設定する制御を行うトラフィック最適化装置およびトラフィック最適化方法を提供する。
【課題を解決するための手段】
【００１８】
上記の目的を実現するために、本発明の一形態であるトラフィック最適化装置は、アプリケーションプロトコルによる通信に対し、通信の途中でユーザ端末から切断される途中切断の統計情報を取得し、当該統計情報に基づいて、アプリケーションプロトコル毎のユーザ不満度を算出して当該ユーザ不満度に対応するペーシング閾値をアプリケーションプロトコル毎に管理する統計情報処理手段と、前記ユーザ端末への通信トラフィックが所定の帯域上限値を超えず、かつ各アプリケーションプロトコルの前記ユーザ不満度が一致するペーシング閾値を前記アプリケーションプロトコル毎に決定し、前記アプリケーションプロトコル毎の前記通信トラフィックが、決定した前記ペーシング閾値を下回るようにペーシング処理を実行する呼処理手段を含むことを特徴とする。
【００１９】
また、本発明の他の形態であるトラフィック最適化方法は、アプリケーションプロトコルによる通信に対し、通信の途中でユーザ端末から切断される途中切断の統計情報を取得し、前記統計情報に基づいて、アプリケーションプロトコル毎のユーザ不満度を算出して当該ユーザ不満度に対応するペーシング閾値をアプリケーションプロトコル毎に管理し、前記ユーザ端末への通信トラフィックが所定の帯域上限値を超えず、かつ各アプリケーションプロトコルの前記ユーザ不満度が一致するペーシング閾値を前記アプリケーションプロトコル毎に決定し、前記アプリケーションプロトコル毎の前記通信トラフィックが、決定した前記ペーシング閾値を下回るようにペーシング処理を実行することを特徴とする。
【発明の効果】
【００２０】
本発明は、異なるアプリケーションプロトコルを利用しているそれぞれのユーザに対して、与えるストレスが偏らないようにペーシング閾値を動的に設定する制御を行うことができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１の実施形態に係るトラフィック最適化装置の構成を例示するブロック図である。
【図２】本発明の第１の実施形態に係るトラフィック最適化方法の動作を例示するフロー図である。
【図３】本発明の第２の実施形態に係るトラフィック最適化装置の構成を例示するブロック図である。
【図４】ペーシング閾値と各アプリケーションプロトコルにおけるユーザ不満度の関係を説明する図である。
【図５】ユーザ不満度の定義を説明する図である。
【図６】切断情報取得処理を説明するフロー図である。
【図７】途中切断割合管理テーブル作成処理を説明するフロー図である。
【図８】途中切断割合管理テーブルの内容を例示する図である。
【図９】ユーザ不満度テーブル作成処理を説明するフロー図である。
【図１０】ユーザ不満度テーブルの内容を例示する図である。
【図１１】ペーシング閾値を決定する処理概要を説明する図である。
【図１２】ペーシング閾値決定処理を説明するフロー図である。
【図１３】本発明の第２の実施形態に係るトラフィック最適化装置と関連装置との間の信号送受と内部処理の概要を例示するシーケンス図である。
【図１４】プロトコル内のサービスの変化に伴って、設定すべきペーシング閾値が変化する様子を説明する図である。
【発明を実施するための形態】
【００２２】
本発明を実施するための形態について以下に図面を参照して詳細に説明する。
【００２３】
なお、実施の形態は例示であり、開示の装置及び方法等は、以下の実施の形態の構成には限定されない。また、図に付した参照符号は理解を助けるための一例として便宜上付記したものであり、なんらの限定を意図するものではない。更に、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
【００２４】
（第１の実施形態）
図１は、本発明の第１の実施形態に係るトラフィック最適化装置の構成を例示するブロック図である。
【００２５】
第１の実施形態に係るトラフィック最適化装置１０は、呼処理手段１０１と統計情報処理手段１０２を含む構成になっている。
【００２６】
統計情報処理手段１０２は、アプリケーションプロトコルによる通信に対し、通信の途中でユーザ端末から切断される途中切断の統計情報を取得し、当該統計情報に基づいて、アプリケーションプロトコル毎のユーザ不満度を算出する。そして、統計情報処理手段１０２は、当該ユーザ不満度に対応するペーシング閾値をアプリケーションプロトコル毎に管理する。
【００２７】
呼処理手段１０１は、ユーザ端末への通信トラフィックが所定の帯域上限値を超えず、かつ各アプリケーションプロトコルのユーザ不満度が一致するペーシング閾値をアプリケーションプロトコル毎に決定する。そして、呼処理手段１０１は、アプリケーションプロトコル毎の前記通信トラフィックが、決定した前記ペーシング閾値を下回るようにペーシング処理を実行する。
【００２８】
図２は、本発明の第１の実施形態に係るトラフィック最適化方法の動作を例示するフロー図である。第１の実施形態に係るトラフィック最適化方法は、トラフィック最適化装置が下記の動作を行うことで実行される。
【００２９】
第１の実施形態に係るトラフィック最適化方法は、統計情報処理とトラフィック最適化処理を含む。図２のステップＳ１０１とステップＳ１０２が統計情報処理を示し、ステップＳ１１１とＳ１１２がトラフィック最適化処理を示す。
【００３０】
統計情報処理は次のように動作する。
【００３１】
アプリケーションプロトコルによる通信に対し、通信の途中でユーザ端末から切断される途中切断の統計情報を取得する（Ｓ１０１）。
【００３２】
当該統計情報に基づいて、アプリケーションプロトコル毎のユーザ不満度を算出して当該ユーザ不満度に対応するペーシング閾値をアプリケーションプロトコル毎に管理する（Ｓ１０２）。
【００３３】
また、トラフィック最適化処理は次のように動作する。
【００３４】
ユーザ端末への通信トラフィックが所定の帯域上限値を超えず、かつ各アプリケーションプロトコルのユーザ不満度が一致するペーシング閾値をアプリケーションプロトコル毎に決定する（Ｓ１１１）。
【００３５】
アプリケーションプロトコル毎の通信トラフィックが、決定したペーシング閾値を下回るようにペーシング処理を実行する（Ｓ１１２）。
【００３６】
以上のように、本実施形態では、ユーザ端末による通信の途中放棄を統計的に処理したユーザ不満度が算出されて数値化される。さらに、ユーザ不満度に対応するペーシング閾値がアプリケーションプロトコル毎に管理される。そして、このユーザ不満度を用いてアプリケーション毎のペーシング閾値が決定される。このとき、ユーザ端末への通信トラフィックが所定の帯域上限値を超えず、かつ各アプリケーションプロトコルのユーザ不満度が一致するペーシング閾値がアプリケーションプロトコル毎に決定される。アプリケーションプロトコル毎に決定したペーシング閾値を用いて、各アプリケーションプロトコルの通信トラフィックが、決定した当該ペーシング閾値を下回るようにペーシング制御を実行する。
そのため、本実施形態は、異なるアプリケーションプロトコルを利用しているそれぞれのユーザに対して、与えるストレスが偏らないようにペーシング閾値を動的に設定する制御を行うことができる。
【００３７】
（第２の実施形態）
図３乃至図１４を参照して第２の実施形態を説明する。
【００３８】
図３は、本発明の第２の実施形態に係るトラフィック最適化装置の構成を例示するブロック図である。
【００３９】
トラフィック最適化装置２０は、例えば、移動体データ通信事業者やＩＳＰ（Internet Service Provider）事業者が提供する通信網の中に設置される。トラフィック最適化装置２０は、当該通信網のユーザ端末３０とインターネット内のＷｅｂ（ウェブ）サーバ４０との間に位置して、ユーザ端末３０とＷｅｂサーバ４０との間に流れるトラフィック量の最適化を行う。
【００４０】
例えば、当該通信網が、無線通信インフラをＭＮＯ事業者から借り受けてサービスを提供するＭＶＮＯ事業者であれば、トラフィック最適化装置２０は、ＭＮＯ事業者との契約帯域を基準にして所定の上限値を超えないように使用帯域の最適化を行う。なお、ＭＮＯは「Mobile Network Operator」の略称で、無線通信インフラを自社で持って通信サービスを提供する事業者であり、ＭＶＮＯは「Mobile Virtual Network Operator」の略称である。
【００４１】
トラフィック最適化装置２０は、呼処理部２１０と統計情報処理部２２０を含む構成になっている。
【００４２】
呼処理部２１０は、ユーザ端末３０とＷｅｂサーバ４０との間の通信に係る呼処理を実行する処理部で、パケット送受信部２１１、セッション監視部２１２、ペーシング処理部２１３を含む構成になっている。
【００４３】
パケット送受信部２１１は、ユーザ端末３０とＷｅｂサーバ４０との間でパケットを送受信する。
【００４４】
セッション監視部２１２は、ユーザ端末３０とＷｅｂサーバ４０との間のＴＣＰ（Transmission Control Protocol）セッションの設定や切断を監視する。
【００４５】
ペーシング処理部２１３は、後述するペーシング閾値を決定し、当該トラフィック最適化装置２０を通過するトラフィック量が所定の上限値を超えないようにペーシング処理を実行する。
【００４６】
また、統計情報処理部２２０は、トラフィック最適化処理に必要なペーシング閾値を決めるために必要な統計情報を蓄積、管理する処理部で、統計情報管理部２２１と統計情報算出部２２２を含む構成になっている。
【００４７】
統計情報管理部２２１は、後述する途中切断割合管理テーブル２２１１を備え、アプリケーションプロトコル毎に途中切断の情報を収集して蓄積する。
【００４８】
統計情報算出部２２２は、途中切断割合管理テーブル２２１１に蓄積したアプリケーションプロトコル毎の途中切断の情報に基づいて、アプリケーションプロトコル毎にユーザ不満度を算出する。算出したユーザ不満度は、アプリケーションプロトコル毎にペーシング閾値と対応付けられて後述するユーザ不満度テーブル２２２１で管理される。
【００４９】
なお、以降の説明においては、アプリケーションプロトコルを単にプロトコルと称する場合もある。
【００５０】
まず、図４および図５を参照してユーザ不満度について説明する。
【００５１】
図４は、ペーシング閾値と各アプリケーションプロトコルにおけるユーザ不満度の関係を説明する図である。
【００５２】
図４では、横軸をペーシング閾値、縦軸をユーザ不満度として、ペーシング閾値を図の左方向に設定するほど使用可能な帯域が削減され、それに伴ってユーザ不満度が増加する様子を示している。つまり、ペーシング閾値は、ユーザ端末３０に送るデータのスループットの上限値を規定するもので、スループットが少なくなるほどユーザ不満度が増加する。
【００５３】
また、図４ではＨＴＴＰストリーミング再生の場合も、ＦＴＰファイルダウンロードの場合も同じペーシング閾値を用いた例を示している。
【００５４】
アプリケーションプロトコルによってサービスの内容が異なるため、同じペーシング閾値でペーシングをかけてしまうと、プロトコルによってユーザ不満度に差が出てくる。例えば、図４では、同じペーシング閾値を用いた場合、ＨＴＴＰストリーミング再生の場合のユーザ不満度が「Ｍ」であるのに対し、ＦＴＰファイルダウンロードの場合のユーザ不満度は「Ｎ」となっている。
【００５５】
また、あるペーシング閾値を境に、特定のサービスを利用しているユーザの不満が急激に増加してしまう可能性もある。例えば図４では、ＨＴＴＰストリーミング再生の場合には、ペーシング閾値が「Ｘ」を下回ると、動画のビットレート未満に配信レートが落ちてしまい、動画の再生が途中停止を繰り返すことになり、ユーザ不満度が急激に高くなる様子を示している。
【００５６】
ユーザがネットワークの状態に不満を感じる時の行動として、データ受信中のセッションの途中切断がある。例えば、ストリーミング動画再生中に再生が頻繁に止まる場合には、動画の視聴を諦めてしまい、セッションを途中切断してしまう可能性が高い。また、ファイルダウンロードの速度が遅くなり、ダウンロードに時間がかかるような場合もダウンロードを諦めて途中切断する可能性が高い。
【００５７】
そのため、セッションの接続数のうちの途中切断されたセッションの数の割合は、ユーザ不満度と相関性が高いことが予想される。
【００５８】
セッションの途中切断の割合をユーザ不満度と捉え、途中切断の割合を最小限に抑えることは、ネットワークの状態に不満を感じるユーザの数を最小限にすることにもつながる。また、データ受信中にユーザが途中切断することは、ユーザに送るべきデータを送ることができなかったことになる。そのため、通信事業者としては、途中切断の数を抑えることでユーザのデータ通信量の減少を抑えることができる。その結果として、通信事業者のユーザ１契約あたりの月間売上高であるＡＲＰＵ（Average Revenue Per User）の向上にもつながる。
【００５９】
このように、本実施形態では、セッションの途中切断の割合をユーザ不満度としてとらえるようにしている。
【００６０】
図５は、ユーザ不満度の定義を説明する図である。
【００６１】
セッションの途中切断は通信状態への不満だけでなく、利用しているアプリケーションの挙動の要因もある。そのため、セッションの途中切断の割合をユーザ不満度としてとらえるに際しては、利用しているアプリケーションの影響を考慮する必要がある。
【００６２】
そこで、プロトコル毎に、非輻輳状態でペーシングをかけていない状態（帯域削減未実施状態）で発生する途中切断の割合を測定しておき、その値を通信状態によらない途中切断の割合とする。そして、ペーシングを実施した時に発生する途中切断の割合から通信状態によらない途中切断の割合を除いた数値を通信状態への不満を起因とする途中切断の割合とみなし、その値をユーザ不満度と定義する。
【００６３】
つまり、図５における「Ａ」が通信状態によらない途中切断の割合で、「Ｂ」がペーシングを実施した時に発生する途中切断の割合となる。そして、「Ｂ」−「Ａ」＝「ユーザ不満度」となる。
【００６４】
このように、ユーザ不満度は、ペーシング処理の適用時の帯域であるペーシング閾値に帯域削減した時に発生する途中切断の割合から、ペーシングをかけていない帯域削減未実施状態で発生する途中切断の割合を除いた数値である。そして、ユーザ不満度は、当該ペーシング処理を適用した時のペーシング閾値による通信状態に対するユーザの不満度を表す指標である。
【００６５】
上述したセッションの途中切断の割合やユーザ不満度は、統計情報処理部２２０で随時蓄積されて管理される。
【００６６】
次に、図６乃至図１０を参照してセッションの途中切断の割合の算出やユーザ不満度の算出およびその管理について説明する。
【００６７】
上述したように、ユーザ不満度を算出するためには、プロトコル毎に、ペーシングをかけていない状態で発生する途中切断の割合とペーシングを実施した時に発生する途中切断の割合を常時把握しておく必要がある。そして、把握したそれぞれの途中切断の割合に基づいてユーザ不満度が算出される。
【００６８】
図６は、切断情報取得処理を説明するフロー図である。この処理は、呼処理部２１０のセッション監視部２１２により実行される。
【００６９】
まず、ＴＣＰセッションを監視している呼処理部２１０のセッション監視部２１２は、ユーザ端末３０によるＴＣＰセッションの設定を監視する（Ｓ２０１）。
【００７０】
セッション監視部２１２は、ＴＣＰセッションが設定されると（Ｓ２０１、設定）、その設定に際して受信したパケットのネットワークアドレスの送信元、送信先ポート番号（Well-Knownポート）からプロトコルを識別する（Ｓ２０２）。例えば、ポート番号２０であればＦＴＰ、ポート番号８０であればＨＴＴＰ、ポート番号４４３であればＨＴＴＰＳ、ポート番号２２であればＳＦＴＰといように識別する。なお、ＨＴＴＰＳは、「HTTPS over SSL/TLS」の略称で、ＨＴＴＰがＳＳＬ（Secure Socket Layer）やＴＬＳ（Transport Layer Security）で暗号化されたプロトコルである。また、ＳＦＴＰは、「SSH File Transfer Protocol」の略称で、ＳＳＨ（Secure Shell）の通信を使って、ＦＴＰを行うアプリケーションである。
【００７１】
その後、セッション監視部２１２は、設定されているＴＣＰセッションの切断を監視し（Ｓ２０３）、設定されていたＴＣＰセッションの切断が発生すると（Ｓ２０３、切断）、その切断種別（正常切断／途中切断）を判定する（Ｓ２０４）。
【００７２】
セッション監視部２１２は、ＴＣＰセッションの正常切断と途中切断を、例えば、次のように判別している。セッション監視部２１２は、Ｗｅｂサーバ４０から送信されたデータをユーザ端末３０に送りきった状態でＴＣＰセッションが切断されたときを正常切断として判別する。一方、セッション監視部２１２は、Ｗｅｂサーバ４０から送信されたデータがパケット送受信部２１１のバッファに溜まっており、ユーザ端末３０にそのデータを送っていない状態でＴＣＰセッションが切断されたときを途中切断として判別する。
【００７３】
さらに、セッション監視部２１２は、切断発生時のトラフィック制御状況を把握する（Ｓ２０５）。切断発生時のトラフィック制御状況とは、ペーシングをかけていない状態（帯域削減未実施状態）で発生した切断なのか、それともペーシングを実施している時に発生した切断なのかを示す情報である。ペーシングを実施している時に発生した切断の場合には、ペーシングを実施した際のペーシング閾値をペーシング処理部２１３から取得する。
【００７４】
上記の情報が揃うと、セッション監視部２１２は、識別したプロトコル、判別した切断種別、切断発生時刻、切断発生時のトラフィック制御状況に関する情報を切断情報として統計情報処理部２２０の統計情報管理部２２１に通知する（Ｓ２０６）。
【００７５】
続いて、図７を参照して統計情報管理部２２１が実行する途中切断割合管理テーブル２２１１の作成処理を説明する。
【００７６】
図７は、途中切断割合管理テーブル作成処理を説明するフロー図である。そして、図８は、途中切断割合管理テーブル２２１１の内容を例示する図である。
【００７７】
統計情報管理部２２１は、セッション監視部２１２から上述した切断情報を受信する（Ｓ２１１）。
【００７８】
つまり、プロトコル種別、切断種別、切断発生時刻、切断発生時のトラフィック制御状況を取得し、図示しない任意の記憶部に蓄積する（Ｓ２１２）。
【００７９】
統計情報管理部２２１は、セッション監視部２１２から切断情報を随時受信して蓄積している。そして、統計情報管理部２２１は、蓄積した情報について所定時間に発生した正常切断数と途中切断数との関係で算出された途中切断割合を算出し（Ｓ２１３）、途中切断割合管理テーブル２２１１を作成する（Ｓ２１４）。例えば、同一のトラフィック制御状況下における所定の観測時間中に発生した、コネクションの「正常切断数」と「途中切断数」を計数し、途中切断割合を「途中切断数」／（「正常切断数」＋「途中切断数」）のように求める。
【００８０】
途中切断割合管理テーブル２２１１は、プロトコル毎に、ペーシングをかけていない帯域削減未実施状態で発生する途中切断の割合と、ペーシング処理の適用時の帯域であるペーシング閾値に帯域削減した時に発生する途中切断の割合を登録する。
【００８１】
このように、統計情報管理部２２１は、蓄積した切断情報に対して所定のタイミングで随時途中切断割合の算出を実行して途中切断割合管理テーブル２２１１を更新する（Ｓ２１４）。なお、途中切断割合管理テーブル２２１１には、直近の一週間分のデータを蓄積しておくとよい。
【００８２】
図８の途中切断割合管理テーブル２２１１の内容例では、ＨＴＴＰに対してはペーシング制御なしの状態で１０％の途中切断割合があり、５００ｋｂｐｓのペーシング閾値でペーシングを実施したときに３０％の途中切断割合があったことを示す。
【００８３】
他のプロトコルに対しても同様の情報を示している。ＨＴＴＰＳに対してはペーシング制御を行っていない状態で５％の途中切断割合があり、１Ｍｂｐｓのペーシング閾値でペーシングを実施したときに４０％の途中切断割合が発生した。ＦＴＰに対してはペーシング制御を行っていない状態で６％の途中切断割合があり、２Ｍｂｐｓのペーシング閾値でペーシングを実施したときに１６％の途中切断割合が発生した。
【００８４】
続いて、統計情報算出部２２２は、統計情報管理部２２１が途中切断割合管理テーブル２２１１により管理している途中切断割合に基づいて、ユーザ不満度を算出してユーザ不満度デーブル２２２１を作成する。
【００８５】
図９は、ユーザ不満度テーブル作成処理を説明するフロー図である。そして、図１０は、ユーザ不満度テーブル２２２１の内容を例示する図である。
【００８６】
統計情報算出部２２２は、途中切断割合管理テーブル２２１１で管理している切断発生時のトラフィック制御状況に対応する途中切断割合に基づいて、ユーザ不満度を算出する。
【００８７】
まず、統計情報算出部２２２は、統計情報管理部２２１が管理している途中切断割合管理テーブル２２１１の情報を取得する（Ｓ２２１）。
【００８８】
統計情報算出部２２２は、途中切断割合管理テーブル２２１１で管理しているペーシング閾値に対応するユーザ不満度をプロトコル毎に算出する（Ｓ２２２）。
【００８９】
例えば、図８に示す例では、ＨＴＴＰのペーシング閾値５００ｋｂｐｓにおけるユーザ不満度は「２０」となる。同様に、ＨＴＴＰＳのペーシング閾値１Ｍｂｐｓにおけるユーザ不満度は「３５」となり、ＦＴＰのペーシング閾値２Ｍｂｐｓにおけるユーザ不満度は「１０」となる。
【００９０】
ここで、算出したユーザ不満度とペーシング閾値を集計したときに、同一のユーザ不満度に対して複数のペーシング閾値が対応する場合は統計的処理をすれば良い。例えば、対応する複数のペーシング閾値の平均値や最小値をそのユーザ不満度に対するペーシング閾値とすれば良い。
【００９１】
このように、途中切断割合管理テーブル２２１１の登録情報に基づいてユーザ不満度が算出される。
【００９２】
続いて、統計情報算出部２２２は、算出したユーザ不満度をエントリーとして、プロトコル毎のそのユーザ不満度に対応するペーシング閾値を登録してユーザ不満度テーブル２２２１を作成する（Ｓ２２３）。
【００９３】
図１０のユーザ不満度テーブル２２２１の内容例では、ユーザ不満度「１０」に対応する各プロトコルにおけるペーシング閾値は、ＨＴＴＰでは１．５Ｍｂｐｓ、ＦＴＰでは２Ｍｂｐｓ、ＨＴＴＰＳでは２．４Ｍｂｐｓであることを示している。言い換えれば、ＨＴＴＰでは１．５Ｍｂｐｓ、ＦＴＰでは２Ｍｂｐｓ、ＨＴＴＰＳでは２．４Ｍｂｐｓでペーシングをかけるとユーザ不満度が「１０」になることを示している。他のユーザ不満度に対しても同様の見方をする。
【００９４】
つまり、ユーザ不満度テーブル２２２１は、算出したユーザ不満度と、プロトコル毎の当該ユーザ不満度に対応するペーシング閾値を対応付けて登録する。
【００９５】
また、統計情報算出部２２２は、統計情報管理部２２１が更新管理している途中切断割合管理テーブル２２１１を所定の頻度で随時取得してユーザ不満度を算出し、ユーザ不満度デーブル２２２１の内容を更新する（Ｓ２２３）。例えば、一日に一回更新するようにしても良い。
【００９６】
トラフィックの最適化の処理において、ペーシング処理を適用すると通信網の輻輳は回避されるが、ユーザ行動として途中切断を行う頻度が増える。この輻輳回避と途中切断発生頻度とのトレードオフの最適値を求めるため、本実施形態のトラフィック最適化装置２０は、ペーシング処理の適用時の帯域であるペーシング閾値と途中切断の割合で定義したユーザ不満度との関連をユーザ不満度テーブルで管理する。さらに、本実施形態のトラフィック最適化装置２０は、プロトコル毎にユーザ不満度とペーシング閾値との対応を管理し、同一のユーザ不満度を与えるプロトコル毎のペーシング閾値を容易に取得できるように構成している。
【００９７】
次に、呼処理部２１０のペーシング処理部２１３が、システムとして許容されている規定の帯域の上限値を監視し、ペーシング閾値を決定してペーシング処理を実行する動作について図１１および図１２を参照して説明する。
【００９８】
図１１は、ペーシング閾値を決定する処理概要を説明する図である。
【００９９】
また、図１２は、ペーシング閾値決定処理を説明するフロー図である。
【０１００】
本実施形態のトラフィック最適化装置２０は、異なるプロトコルを利用しているそれぞれのユーザに対して、与えるストレスが偏らないようにペーシング閾値を決定する。従って、トラフィック最適化装置２０は、ペーシング閾値を決定する際に、どのプロトコルに対しても同じユーザ不満度になるようにペーシング閾値を決定する。
【０１０１】
例えば、ペーシング閾値とユーザ不満度がプロトコル毎に図１１に示すような対応関係になっている場合、条件１として、各プロトコルでのユーザ不満度が等しくなるように、プロトコル１のペーシング閾値とプロトコル２のペーシング閾値を決める。また、このとき、条件２として、プロトコル１のペーシング閾値とプロトコル２のペーシング閾値の合計がシステムとして許容されている帯域の上限値を超えないように決める必要もある。つまり、ペーシング処理の対象となるそのときのＴＣＰセッションの数やプロトコルの種別に応じて、合計のペーシング閾値が所定の上限値を超えないように考慮しつつ、各プロトコルでのユーザ不満度が等しくなるようにペーシング閾値を決定する。
【０１０２】
図１２を参照して、ペーシング処理部２１３が実行するペーシング閾値決定処理を説明する。
【０１０３】
ペーシング処理部２１３は、パケット送受信部２１１を流れるパケットの流量が、システムとして規定された帯域の上限値を超えないように監視している（Ｓ２３１）。例えば、パケットの流量がシステムに許容された帯域の上限値の９０％に達した時にペーシング制御を開始するように設定されているものとする。この場合、システムに許容された帯域の上限値の９０％を監視対象の帯域上限値と称する。
【０１０４】
この監視している帯域の上限値を超えると（Ｓ２３１、超えた）、ペーシング処理部２１３は、プロトコル毎のペーシング閾値を決定し、各ＴＣＰセッションを流れるパケットの流量がそのペーシング閾値を超えないようにペーシング制御する。
【０１０５】
まず、ペーシング処理部２１３は、ペーシング制御の対象となる、設定されているＴＣＰセッションのプロトコルの種別を識別する（Ｓ２３２）。これは、前述したように、セッション監視部２１２がポート番号から識別したプロトコルの種別情報をもらえば良い。
【０１０６】
続いて、ペーシング処理部２１３は、統計情報処理部２２０の統計情報算出部２２２が管理しているユーザ不満度テーブル２２２１の情報を取得する。
【０１０７】
ペーシング処理部２１３は、ユーザ不満度テーブル２２２１のエントリーにおいて、各プロトコルのペーシング閾値の合計が監視対象の帯域上限値を下回る条件のユーザ不満度を選択する（Ｓ２３３）。このことは、ペーシング制御の対象となるＴＣＰセッション数およびプロトコルの種別に応じて、ユーザ不満度テーブル２２２１で管理しているプロトコル毎のペーシング閾値を合計して判断する。
【０１０８】
例えば、監視対象の帯域上限値を１０Ｍｂｐｓと仮定する。そして、ペーシング制御の対象となるプロトコルの種別とそのＴＣＰセッション数が、ＨＴＴＰＳは使われておらず、ＨＴＴＰが４セッション、ＦＴＰが３セッションであったとする。このとき、ユーザ不満度「１０」を満足しようとすると、プロトコル毎のペーシング閾値の合計は１．５Ｍｂｐｓ×４＋２Ｍｂｐｓ×３＝１２Ｍｂｐｓとなり、監視対象の帯域上限値（１０Ｍｂｐｓ）を下回ることができない。そこで、ユーザ不満度を「１５」まで落とすことで、プロトコル毎のペーシング閾値の合計は１Ｍｂｐｓ×４＋１．８Ｍｂｐｓ×３＝９．４Ｍｂｐｓとなり、監視対象の帯域上限値（１０Ｍｂｐｓ）を下回ることができるようになる。そのため、ペーシング処理部２１３は、適用するユーザ不満度として「１５」を選択する。
【０１０９】
ペーシング処理部２１３は、選択したユーザ不満度「１５」に対応するＨＴＴＰに対するペーシング閾値を１Ｍｂｐｓ、ＦＴＰに対するペーシング閾値を１．８Ｍｂｐｓと決定する（Ｓ２３４）。
【０１１０】
そして、ペーシング処理部２１３は、決定したペーシング閾値を用いて、各セッションのパケット流量が対応するプロトコルのペーシング閾値に達したら、ペーシング閾値以下となるようにペーシング制御を実施する。パケット流量の制御は、例えばトークンバケット方式を用いて行われる。
【０１１１】
以上のように、本実施形態では、パケット送受信部２１１を流れるパケットの流量が監視対象の帯域上限値を超えた場合に、ペーシング閾値を減少させてユーザ端末３０とトラフィック最適化装置２０との間のスループットの上限値を減少させる。そのときに、ユーザ不満度テーブル２２２１で管理しているユーザ不満度と各プロトコルのペーシング閾値の対応関係に基づいて、監視対象の帯域上限値を超えることなく、かつ、各プロトコルでのユーザ不満度が同じとなるようにペーシング閾値を決定する。
【０１１２】
なお、図示しないが、ペーシング処理部２１３は、パケット送受信部２１１を流れるパケットの流量が監視対象の帯域上限値を所定の値を超えて下回った場合には、ユーザ不満度を低くするようにペーシング閾値の再設定を行うこともできる。
【０１１３】
上述した本実施形態のトラフィック最適化装置２０について、関連装置との間の信号送受の観点で説明する。
【０１１４】
図１３は、第２の実施形態に係るトラフィック最適化装置と関連装置との間の信号送受と内部処理の概要を例示するシーケンス図である。
【０１１５】
ＴＣＰセッションの開始にあたり、ユーザ端末３０はトラフィック最適化装置２０の呼処理部２１０に対して、セッション設定のリクエストを送信する（Ｓ２４１）。
【０１１６】
呼処理部２１０は、リクエストに含まれる送信元、送信先ポート番号からプロトコルの種別を識別する（Ｓ２４２）。続いて、呼処理部２１０は通信相手先となるＷｅｂサーバ４０にセッション設定のリクエストを送信し、そのレスポンスを受信する（Ｓ２４３）。
【０１１７】
呼処理部２１０は、Ｗｅｂサーバ４０から送信されてくるデータを中継してユーザ端末３０にデータ配信する。そして、ユーザ端末３０から切断情報を受信して当該セッションの終了となる（Ｓ２４４）。この切断情報は、ユーザ行動に伴う正常切断または途中切断である。そして、切断情報は、統計情報処理部２２０にペーシング未実施時の統計情報として送られる（Ｓ２４７）。
【０１１８】
また、呼処理部２１０は、パケット流量の制御のために必要に応じてペーシング処理を行う（Ｓ２４５）。ここで行われるペーシング処理は、上述した本実施形態のペーシング処理に限ることなく、任意に設定したペーシング閾値を用いたペーシング処理であって良い。
【０１１９】
呼処理部２１０は、設定したペーシング閾値を上限としたスループットでユーザ端末３０に対してペーシング配信を行う。そして、ユーザ端末３０から切断情報を受信して当該セッションの終了となる（Ｓ２４６）。この切断情報は、ユーザ行動に伴う正常切断または途中切断である。この場合も、切断情報は、統計情報処理部２２０に統計情報として送られる（Ｓ２４７）。なお、このときは、適用したペーシング閾値の情報も統計情報として送られる。
【０１２０】
統計情報処理部２２０は、以上のようにして随時収集した統計情報に基づいて、前述した途中切断割合管理テーブルを作成し、さらにユーザ不満度を算出してユーザ不満度テーブルを作成する（Ｓ２４８）。
【０１２１】
ユーザ不満度テーブルが作成されると、呼処理部２１０は、本実施形態のトラフィック最適化処理を実行する（Ｓ２４９）。つまり、監視対象の帯域上限値を超えることなく、かつ、各プロトコルでのユーザ不満度が同じとなるようにペーシング閾値を決定する。
【０１２２】
呼処理部２１０は、トラフィック最適化処理用に設定したペーシング閾値を用いてユーザ端末３０に対してペーシング配信を行う。そして、ユーザ端末３０から切断情報を受信して当該セッションの終了となる（Ｓ２５０）。この切断情報は、ユーザ行動に伴う正常切断または途中切断である。この場合も、切断情報は、統計情報処理部２２０に統計情報として送られ、途中切断割合管理テーブルやユーザ不満度テーブルの更新に使われる（Ｓ２４７）。
【０１２３】
以上のように、トラフィック最適化装置２０は、プロトコル毎、ペーシング閾値毎の切断情報を統計情報として取得し、プロトコル毎、ペーシング閾値毎の途中切断割合を算出して途中切断割合管理テーブルを作成する。さらに、トラフィック最適化装置２０は、途中切断割合管理テーブルに登録された情報を用いて、ユーザ不満度を算出し、プロトコル毎のペーシング閾値とユーザ不満度の統計情報をユーザ不満度テーブルとして作成する。トラフィック最適化装置２０は、ペーシング処理を行うときには、ユーザ不満度テーブルの内容に基づいて、監視対象の帯域上限値を超えることなく、かつ、各プロトコルでのユーザ不満度が同じとなるようにペーシング閾値を決定する。このようにして実行されたペーシング処理の結果におけるプロトコル毎、ペーシング閾値毎の切断情報も統計情報としてフィードバックされ、途中切断割合管理テーブルやユーザ不満度テーブルの更新に使われる。
【０１２４】
このように、本実施形態のトラフィック最適化装置２０は、統計情報に基づいてペーシング閾値を決定するための途中切断割合管理テーブルやユーザ不満度テーブを随時更新している。従って、ユーザ行動に変化があった場合には、その変化に追随してペーシング閾値を動的に変化させることができる。
【０１２５】
図１４は、プロトコル内のサービスの変化に伴って、設定すべきペーシング閾値が変化する様子を説明する図である。
【０１２６】
プロトコル内のサービスやコンテンツの動向が変化した場合、ユーザ行動がそれに伴って変化するので、統計情報も変化する可能性が高い。例えば、ストリーミング再生で使われる動画が高画質化されてデータ量が増大したような場合、従来と同じペーシング閾値を用いてスループットを削減すると動画のビットレート未満に配信レートが落ちてしまうことが起こり得る。そのようになった場合、ユーザストレスが急激に高くなり、それが途中切断頻度の増加につながる。そのため、途中切断割合管理テーブルやユーザ不満度テーブルの内容はフィードバックされたユーザ行動に追随して変化する。
【０１２７】
図１４の例では、プロトコル１のサービス内容が変化して、より多くのスループットがないとユーザの不満度が増大する傾向になっていることを示している。つまり、プロトコル２と同じユーザ不満度になるようにペーシング閾値を決めるにあたり、サービス変更前は閾値Ｍでよかったものが、サービス変更後は閾値Ｎまで増大させる必要がある。
【０１２８】
このように、本実施形態では統計情報をフィードバックした管理テーブルを用いてプロトコル毎のペーシング閾値を決定するので、市場の変化にも早急に対応でき、常に最適なペーシング閾値を決定することができる。
【０１２９】
以上に説明したように、本実施形態では、ペーシングを適用したときの帯域であるペーシング閾値とそのときの途中切断の割合を統計的に把握してユーザ不満度を定義する。そして、ペーシングを適用するときには、このユーザ不満度を用いてアプリケーション毎のペーシング閾値を決定する。つまり、定義したユーザ不満度をプロトコル毎に把握し、どのプロトコルにおいてもユーザ不満度が同じになるように、ペーシング適用時のペーシング閾値を決める。そのため、本実施形態は、異なるアプリケーションプロトコルを利用しているそれぞれのユーザに対して、与えるストレスが偏らないようにペーシング閾値を動的に設定する制御を行うことができる。
【符号の説明】
【０１３０】
１０、２０    トラフィック最適化装置
３０    ユーザ端末
４０    Ｗｅｂサーバ
１０１    呼処理手段
１０２    統計情報処理手段
２１０    呼処理部
２１１    パケット送受信部
２１２    セッション監視部
２１３    ペーシング処理部
２２０    統計情報処理部
２２１    統計情報管理部
２２２    統計情報算出部
２２１１    途中切断割合管理テーブル
２２２１    ユーザ不満度テーブル
【図１】
0006645864.tif 000002
【図２】
0006645864.tif 000003
【図３】
0006645864.tif 000004
【図４】
0006645864.tif 000005
【図５】
0006645864.tif 000006
【図６】
0006645864.tif 000007
【図７】
0006645864.tif 000008
【図８】
0006645864.tif 000009
【図９】
0006645864.tif 000010
【図１０】
0006645864.tif 000011
【図１１】
0006645864.tif 000012
【図１２】
0006645864.tif 000013
【図１３】
0006645864.tif 000014
【図１４】
0006645864.tif 000015