(57)【要約】【課題】  サービスを受ける側の環境を考慮して応答品質を正確に推定可能にすること。【解決手段】  応答品質推定装置４１は、プロセッサ４０ａ、メインメモリ４０ｃおよび補助記憶装置４０ｄを備える通信端末（ユーザ端末４０）に、サービサからローカルネットワーク５０経由で提供されるサービスの応答品質を推定する。応答品質推定装置４１は、サービスの提供に係わる応答時間の指標値を算出する指標値算出部（応答品質指標値算出部４１ｂ）と、応答時間の実効値を算出する実効値算出部（応答品質推定部４１ｃ）と、応答時間の指標値と応答時間の実効値との比率に基づいて応答品質の推定値を算出する推定値算出部（応答品質推定部４１ｃ）とを具備する。【選択図】  図３
2015141624.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサ、メインメモリおよび補助記憶装置を備える通信端末にサービサから提供されるサービスの応答品質を推定する応答品質推定装置であって、
前記サービスの提供に係わる応答時間の指標値を算出する指標値算出部と、
前記応答時間の実効値を算出する実効値算出部と、
前記応答時間の指標値と前記応答時間の実効値との比率に基づいて前記応答品質の推定値を算出する推定値算出部とを具備し、
前記指標値算出部は、
前記プロセッサのデータ処理時間の指標値を算出し、
前記通信端末の属するローカルネットワークにおけるデータ伝送時間の指標値を、前記サービスの提供に係わるデータのデータ量に基づいて算出し、
前記プロセッサと前記補助記憶装置との間でのメモリスワップ処理にかかるデータ転送に要するデータ転送時間の指標値を算出し、
前記データ処理時間の指標値と、前記データ伝送時間の指標値と、前記データ転送時間の指標値とを合計して前記応答時間の指標値を算出し、
前記実効値算出部は、
前記プロセッサのデータ処理時間の実効値を算出し、
前記ローカルネットワークにおけるデータ伝送時間の実効値を前記データ量に基づいて見積もり、
前記プロセッサと前記補助記憶装置との間でのメモリスワップ処理にかかるデータ転送に要するデータ転送時間の実効値を算出し、
前記データ処理時間の実効値と、前記データ伝送時間の実効値と、前記データ転送時間の実効値とを合計して前記応答時間の実効値を算出することを特徴とする、応答品質推定装置。
【請求項２】
さらに、前記応答品質の推定値が既定の閾値よりも低下すると、その旨を示すメッセージを前記通信端末のユーザおよび前記サービサの少なくともいずれか一方に通知する通知部を具備することを特徴とする、請求項１に記載の応答品質推定装置。
【請求項３】
プロセッサ、メインメモリおよび補助記憶装置を備える通信端末にサービサから提供されるサービスの応答品質を推定する応答品質推定方法であって、
前記サービスの提供に係わる応答時間の指標値を算出することと、
前記応答時間の実効値を算出することと、
前記応答時間の指標値と前記応答時間の実効値との比率に基づいて前記応答品質の推定値を算出することとを有し、
前記指標値を算出部することは、
前記プロセッサのデータ処理時間の指標値を算出し、
前記通信端末の属するローカルネットワークにおけるデータ伝送時間の指標値を、前記サービスの提供に係わるデータのデータ量に基づいて算出し、
前記プロセッサと前記補助記憶装置との間でのメモリスワップ処理にかかるデータ転送に要するデータ転送時間の指標値を算出し、
前記データ処理時間の指標値と、前記データ伝送時間の指標値と、前記データ転送時間の指標値とを合計して前記応答時間の指標値を算出し、
前記実効値を算出することは、
前記プロセッサのデータ処理時間の実効値を算出し、
前記ローカルネットワークにおけるデータ伝送時間の実効値を前記データ量に基づいて見積もり、
前記プロセッサと前記補助記憶装置との間でのメモリスワップ処理にかかるデータ転送に要するデータ転送時間の実効値を算出し、
前記データ処理時間の実効値と、前記データ伝送時間の実効値と、前記データ転送時間の実効値とを合計して前記応答時間の実効値を算出することを特徴とする、応答品質推定方法。
【請求項４】
請求項１または２に記載の装置が備える各部の処理をコンピュータに実行させるための命令を含む、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばインターネットなどの広域ネットワークを利用して提供される通信サービスの品質を向上させるための技術に関する。
【背景技術】
【０００２】
通信プラットフォームを利用してスポーツやコンサートなどのイベントを中継したり、道路・河川・工場などを監視したり、あるいは介護・ヘルス管理などのサービスを提供する技術が発展してきている。この種の通信サービスはインターネットに代表される広域ネットワークを利用するので、広域ネットワークの回線帯域が狭くなったり、回線が輻そうしたり、パケット損失が発生したりするとサービスの品質が容易に低下する。
【０００３】
サービスの提供者（サービサ）は、サービスを享受する者（ユーザ）の満足度を高めるために努力している。サービスの品質を客観的に評価するための技術が重要である。サービスの品質は例えば応答品質という概念で表すことができる。以下の記述では、ユーザがサービスを要求してからサービサが当該サービスに関係するデータをユーザに返す（応答する）までの経過時間を、応答品質とする。経過時間が短いほど応答品質は高いと評価でき、ユーザの体感する品質も高くなるといえる。
【０００４】
特許文献１によれば、通信者が体感する音声品質評価値、映像品質評価値、応答品質評価値の各重み付けした値と、前者２つ、または３つの評価値の積を重み付けした値とを加算した値に基づいて、音声・映像の通信サービスに対する総合的な品質が推定される。
【０００５】
特許文献２によれば、広域ネットワークから取得した映像パケットを品質パラメータに基づいて解析し、確認された映像パケットの損失に応じた劣化ブロック数を集計し、劣化ブロック数に対応する映像品質が推定される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−２４４３２１号公報
【特許文献２】特開２００８−３０１０２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
サービサが通信サービスの品質を保つためには、ユーザが受けているサービスの応答品質を実態に即して把握する必要がある。しかしながら既存の技術は、大雑把な観点からの品質や、広域ネットワークの伝送品質を評価するという、いわばサービサ側に偏った視点でサービス品質を評価するに過ぎなかった。つまりユーザの置かれた環境に因ってサービス品質が低下することが考慮されていなかった。
【０００８】
例えば、広域ネットワークの通信速度が速くてもユーザ宅内のローカルでの通信環境が悪ければ応答品質は低くなる。また、広域ネットワークおよびローカルネットワークの双方の通信速度が速くても、データを受信するユーザ端末の性能が低ければやはり応答品質は低い。既存の技術ではこのような要因を的確に捉えることが難しいので、応答品質を正しく推定することが困難であった。
【０００９】
この発明は上記事情によりなされたもので、その目的は、サービスを受ける側の環境を考慮できるようにし、これにより応答品質を正確に推定することの可能な応答品質推定装置、応答品質推定方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
本発明に係る応答品質推定装置は、例えば以下のような態様とする。  
（１）  応答品質推定装置は、プロセッサ、メインメモリおよび補助記憶装置を備える通信端末に、サービサから提供されるサービスの応答品質を推定する。
【００１１】
この応答品質推定装置は、サービスの提供に係わる応答時間の指標値を算出する指標値算出部と、応答時間の実効値を算出する実効値算出部と、応答時間の指標値と応答時間の実効値との比率に基づいて応答品質の推定値を算出する推定値算出部とを具備する。
【００１２】
指標値算出部は、プロセッサのデータ処理時間の指標値を算出し、通信端末の属するローカルネットワークにおけるデータ伝送時間の指標値を、サービスの提供に係わるデータのデータ量に基づいて算出し、プロセッサと補助記憶装置との間でのメモリスワップ処理にかかるデータ転送に要するデータ転送時間の指標値を算出し、データ処理時間の指標値と、データ伝送時間の指標値と、データ転送時間の指標値とを合計して応答時間の指標値を算出する。
【００１３】
実効値算出部は、プロセッサのデータ処理時間の実効値を算出し、ローカルネットワークにおけるデータ伝送時間の実効値をデータ量に基づいて見積もり、プロセッサと補助記憶装置との間でのメモリスワップ処理にかかるデータ転送に要するデータ転送時間の実効値を算出し、データ処理時間の実効値と、データ伝送時間の実効値と、データ転送時間の実効値とを合計して応答時間の実効値を算出する。  
従って（１）によれば、通信端末の状態とローカルネットワークの状態とを考慮して応答品質を推定することができる。
【００１４】
（２）  応答品質推定装置は、（１）において、さらに、算出された応答品質の推定値が既定の閾値よりも低下すると、その旨を示すメッセージを通信端末のユーザおよびサービサの少なくともいずれか一方に通知する通知部を具備する。  
従って（２）によれば、応答品質が閾値を超えて劣化したことを通知することが可能になる。
【００１５】
（３）  応答品質推定方法は、プロセッサ、メインメモリおよび補助記憶装置を備える通信端末に、サービサから提供されるサービスの応答品質を推定する方法である。
【００１６】
応答品質推定方法は、サービスの提供に係わる応答時間の指標値を算出することと、応答時間の実効値を算出することと、応答時間の指標値と応答時間の実効値との比率に基づいて応答品質の推定値を算出することとを有する。
【００１７】
指標値を算出することは、プロセッサのデータ処理時間の指標値を算出し、通信端末の属するローカルネットワークにおけるデータ伝送時間の指標値を、サービスの提供に係わるデータのデータ量に基づいて算出し、プロセッサと補助記憶装置との間でのメモリスワップ処理にかかるデータ転送に要するデータ転送時間の指標値を算出し、データ処理時間の指標値と、データ伝送時間の指標値と、データ転送時間の指標値とを合計して応答時間の指標値を算出する。
【００１８】
実効値を算出することは、プロセッサのデータ処理時間の実効値を算出し、ローカルネットワークにおけるデータ伝送時間の実効値をデータ量に基づいて見積もり、プロセッサと補助記憶装置との間でのメモリスワップ処理にかかるデータ転送に要するデータ転送時間の実効値を算出し、データ処理時間の実効値と、データ伝送時間の実効値と、データ転送時間の実効値とを合計して応答時間の実効値を算出する。  
従って（３）によれば、通信端末の状態とローカルネットワークの状態とを考慮して応答品質を推定することができる。
【００１９】
（４）  プログラムは、（１）または（２）に記載の装置が備える各部の処理をコンピュータに実行させるための命令を含むプログラムである。  
従って（４）のプログラムによれば、コンピュータに、通信端末の状態とローカルネットワークの状態とを考慮して応答品質を推定させることができる。
【発明の効果】
【００２０】
本発明によれば、サービスを受ける側の環境を考慮できるようになり、応答品質を正確に推定することの可能な応答品質推定装置、応答品質推定方法およびプログラムを提供することが可能になる。
【図面の簡単な説明】
【００２１】
【図１】図１は、第１の実施形態に係る応答品質推定装置を適用可能な通信システムの一例を示す図である。
【図２】図２は、図１に示されるユーザ端末４０の一例を示す機能ブロック図である。
【図３】図３は、図１に示される応答品質推定装置４１の一例を示す機能ブロック図である。
【図４】図４は、図３に示される応答品質指標値算出部４１ｂの処理手順の一例を示すフローチャートである。
【図５】図５は、図３に示される応答品質推定部４１ｃの処理手順の一例を示すフローチャートである。
【図６】図６は、応答品質が低下したことを通知する際の処理手順の一例を示すフローチャートである。
【図７】図７は、第２の実施形態に係る応答品質推定装置を適用可能な通信システムの一例を示す図である。
【図８】図８は、第３の実施形態に係る応答品質推定装置を適用可能な通信システムの一例を示す図である。
【発明を実施するための形態】
【００２２】
［第１の実施形態］
図１は、第１の実施形態に係る応答品質推定装置を適用可能な通信システムの一例を示す図である。図１において、サービサ側はサービサ端末１０を備える。サービサ端末１０は広域ネットワーク２０を介して、ユーザ側にサービスを提供する。映像配信、スポーツ、コンサートなどのイベント中継、道路・河川・工場などの監視、介護・ヘルス管理などの通信サービスを、サービスの一例として挙げることができる。広域ネットワーク２０は例えばＮＧＮ（Next Generation Network：次世代ネットワーク）である。
【００２３】
サービサ端末１０は、メディアデータを含む各種のデータ、および、データごとのデータ量などの管理情報を管理する。サービサ端末１０は、これらのデータや管理情報などを要求に応じてユーザに提供する。サービサ端末１０とユーザ端末４０とは、広域ネットワーク２０を介して常時、あるいは必要な都度に接続される。
【００２４】
ユーザ側は中継器３０、ユーザ端末４０およびローカルネットワーク（ＮＷ）５０を備える。中継器３０は例えばルータ、ホームゲートウェイ、あるいはオフィスゲートウェイなどである。中継器３０は広域ネットワーク２０に接続され、ユーザ端末４０と広域ネットワーク２０およびサービサ端末１０との通信を仲介する。ローカルＮＷ５０は例えば有線ＬＡＮ（Local Area Network）あるいは無線ＬＡＮであり、中継器３０とユーザ端末４０とをローカルで接続する。
【００２５】
図２は、図１に示されるユーザ端末４０の一例を示す機能ブロック図である。ユーザ端末４０は、ローカルネットワーク５０に属する通信端末として理解される。ユーザ端末４０は、ＣＰＵ（Central Processing Unit）４０ａ、入力部４０ｂ、メインメモリ４０ｃ、補助記憶装置（ＨＤＤ（Hard Disk Drive）など）４０ｄ、および、インタフェース部４０ｅを備える、いわばコンピュータである。
【００２６】
このコンピュータは、これらのハードウェア資源と、ＯＳ（Operation System）やファームウェア、アプリケーションソフトウェアなどのソフトウェアとが協調して動作することでユーザ端末４０の機能を実現する。このうち入力部４０ｂは、マウスやキーボードなどの入力デバイスである。インタフェース部４０ｅは例えば中継器３０に接続され、通信インタフェース機能を担う。
【００２７】
ところでユーザ端末４０は、応答品質推定装置４１を備える。この応答品質推定装置４１は、上記ハードウェア資源とソフトウェアとが協調動作して実現される機能の一例である。
【００２８】
図３は、図１に示される応答品質推定装置４１の一例を示す機能ブロック図である。応答品質推定装置４１は、情報保存部４１ａ、応答品質指標値算出部４１ｂ、応答品質推定部４１ｃおよびサービスレベル判定部４１ｄを備える。
【００２９】
情報保存部４１ａは例えば不揮発性メモリであり、少なくとも、ユーザ端末４０のメインメモリ４０ｃのメモリ容量の規格値、補助記憶装置４０ｄの物理的な接続規格に基づくデータ転送速度の規格値、補助記憶装置（例えばＨＤＤ）の書込速度および読込速度の規格値、およびローカルネットワーク５０の伝送速度の規格値を記憶する。これらの各量はユーザ端末４０の出荷時などに予め書き込まれても良いし、ユーザがマニュアルで入力してもよい。
【００３０】
応答品質指標値算出部４１ｂは、ユーザ端末４０から取得したＣＰＵの性能を示す情報（動作周波数、データバス幅、コア数、１コア当たりの最大動作スレッド数など）、情報保存部４１ａから取得した、メモリ容量の規格値、ＣＰＵと補助記憶装置との間の物理的な接続規格に基づくデータ転送速度の規格値、補助記憶装置（例えばＨＤＤ）の書込速度および読込速度の規格値、ローカルネットワーク５０の伝送速度の規格値、およびユーザ端末４０上で動作中のサービス用のアプリケーションを介してサービサから取得した、ユーザがサービサに要求した映像等（要求データ）のデータ量（以後、要求データ量と呼ぶ）から、データ処理時間とデータ伝送時間、ＣＰＵと補助記憶装置との間でのメモリスワップ処理が発生した場合のデータ転送に要する転送時間を算出し、それらの和をユーザ端末４０の応答時間の指標値として算出する。算出したデータ処理時間、応答時間の指標値、およびサービサから取得した要求データ量を応答品質推定部４１ｃに出力する。
【００３１】
つまり応答品質指標値算出部４１ｂは、ＣＰＵの性能情報と、メインメモリの記憶容量と、ＣＰＵと補助記憶装置との間の物理的な接続規格に基づくデータ転送速度の規格値、補助記憶装置（例えばＨＤＤ）の書込速度および読込速度の規格値と、ローカルネットワーク５０の伝送速度の規格値と、サービスの提供に係わるデータ量とに基づいて、ＣＰＵのデータ処理時間の指標値や応答時間の指標値などを算出する。
【００３２】
応答品質推定部４１ｃは、ユーザ端末４０から取得した、ユーザ端末４０の稼働中のＣＰＵ使用率、メモリ使用率、応答品質指標値算出部４１ｂから入力された、データ処理時間、応答時間の指標値、要求データ量、および情報保存部４１ａから取得した、メモリ容量、ＣＰＵと補助記憶装置との間の物理的な接続規格に基づくデータ転送速度、補助記憶装置（例えばＨＤＤ）の書込速度および読込速度、ローカルネットワークの伝送速度の各々の規格値から、実効上のデータ処理時間とデータ伝送時間、およびＣＰＵと補助記憶装置との間でのメモリスワップ処理が発生した場合のデータ転送に要するデータ転送時間を算出し、それらの和をユーザ端末４０の応答時間の実効値とする。つまり応答品質推定部４１ｃは、応答時間の実効値を見積もる。そして応答品質推定部４１ｃは、応答時間の実効値と指標値との比率（割合）を算出し、この値を応答品質の推定値として出力する。
【００３３】
サービスレベル判定部４１ｄは、応答品質推定部４１ｃから出力される応答品質の推定値と、既定のサービスレベル閾値とを比較する。この閾値は例えばサービサから取得される。そしてサービスレベル判定部４１ｄは、比較の結果、応答品質の推定値が閾値よりも低下すると、その旨を示すメッセージをユーザ端末４０のユーザ、およびサービサの少なくともいずれか一方に通知する。次に、上記構成における作用を説明する。
【００３４】
図４は、図３に示される応答品質指標値算出部４１ｂの処理手順の一例を示すフローチャートである。図４に示される手順は、例えば、ユーザがサービサにサービスの提供を要求したことを契機（トリガ）として開始される。  
図４において、応答品質指標値算出部４１ｂは、ユーザ端末４０からＣＰＵの性能（動作周波数［Ｈｚ］、データバス数［ｂｉｔ］、コア数［個］、１コア当たりの最大動作スレッド数［個］）を取得する。また応答品質指標値算出部４１ｂは、メモリ容量［ｂｉｔ］の規格値、ＣＰＵと補助記憶装置との間の物理的な接続規格に基づくデータ転送速度［ｂｉｔ／ｓ］の規格値、補助記憶装置（例えばＨＤＤ）の書込速度および読込速度［ｂｉｔ／ｓ］の規格値、ローカルネットワーク５０の伝送速度［ｂｉｔ／ｓ］の規格値を情報保存部４１ａから取得する。さらに応答品質指標値算出部４１ｂは、要求データ量［ｂｉｔ］をサービサから取得する。
【００３５】
特に、要求データ量は、例えばユーザ端末４０上で動作中のサービス用のアプリケーションによりサービサから取得される。例えばネットワークと通信するアプリケーションでは通信状況をテキストログとして出力することができる。このテキストログから要求データ量を取得することが可能である。
【００３６】
次に、応答品質指標値算出部４１ｂは、ステップＳ１で取得された各量に基づいて、ユーザ端末４０のＣＰＵの性能におけるデータ処理時間（ｔ１−ｐ）を式（１）を用いて算出する（ステップＳ２）。なおｔ１−ｐは計算上の値であり実態を反映しているとは必ずしも言えないことに注意する。実施形態では（１）〜（６）の式を用いて算出された値を指標値と称して取り扱う。
【００３７】
【数１】
2015141624.tif 000003
【００３８】
次に、応答品質指標値算出部４１ｂは、ローカルネットワーク５０の伝送速度の規格値と要求データ量とに基づいて、ローカルネットワーク５０の伝送速度の規格値におけるデータ伝送時間（ｔ１−ｔ）を式（２）を用いて算出する（ステップＳ３）。ｔ１−ｔも指標値である。
【００３９】
【数２】
2015141624.tif 000004
【００４０】
次に、応答品質指標値算出部４１ｂは、メモリ容量の規格値に対する要求データ量の比率（要求データ量／メモリ容量の規格値）を算出し、その値が１未満であるか、または１以上かを判断する（ステップＳ４）。これはメモリスワップ処理の有無を判断するためである。
【００４１】
つまり計算された比率が１未満であれば取得した要求データの全てをメインメモリ４０ｃに格納できるので、メモリスワップ処理は生じない。逆に、計算された比率が１以上であれば取得した要求データの全てメインメモリ４０ｃに格納できないので、余ったデータがメモリスワップ処理により補助記憶装置４０ｄ（例えばＨＤＤ）に一時的に格納される。もちろん、メモリスワップ処理が生じるとユーザ端末４０内部でのデータ転送時間は格段に増加する。
【００４２】
メモリスワップ処理が生じなければ（比率が１未満）、データ転送時間はメモリからＣＰＵへのデータ転送にかかる時間だけなので実質的に０時間であり、応答品質指標値算出部４１ｂはそのことを仮定する（ステップＳ５）。メモリスワップ処理が生じれば（比率が１以上）、データ転送時間は、ＣＰＵから補助記憶装置４０ｄへ上記の余ったデータを転送する時間および補助記憶装置４０ｄ上に書き込む時間と、補助記憶装置４０ｄから上記の余ったデータを読み出す時間およびメインメモリ４０ｃへ再度転送する時間と、メモリからＣＰＵへのデータ転送にかかる時間（実質的に０時間）とを含む。よって応答品質指標値算出部４１ｂは、ＣＰＵがメインメモリ４０ｃを介して補助記憶装置４０ｄとの間でデータを送受信することによって発生するデータ転送時間を、ＣＰＵと補助記憶装置との間でのメモリスワップ処理で生じるデータ転送時間（ｔ１−ＨＣｔ）として式（３）を用いて算出する（ステップＳ８）。ｔ１−ＨＣｔも指標値である。
【００４３】
【数３】
2015141624.tif 000005
【００４４】
式（３）は補助記憶装置４０ｄがＨＤＤの場合を示し、ｔ１−ＨＣｔは、ＨＤＤの書込速度および読込速度と、ＣＰＵと補助記憶装置４０ｄとの物理的な接続規格に基づくデータ転送速度によって決定される。例えば補助記憶装置がＳＳＤ（シリコンディスク）であれば、ＳＳＤとＣＰＵとの間のメモリスワップ処理で生じるデータ転送時間（ｔ１−HＣｔ）は式（４）で表すことができる。ＳＳＤの場合は、ＳＳＤの書込速度および読込速度と、ＣＰＵと補助記憶装置４０ｄとの物理的な接続規格に基づくデータ転送速度によって決定される。
【００４５】
【数４】
2015141624.tif 000006
【００４６】
次に、応答品質指標値算出部４１ｂは、算出したデータ処理時間（ｔ１−ｐ）、データ伝送時間（ｔ１−ｔ）、およびＣＰＵと補助記憶装置との間でのメモリスワップ処理で生じるデータ転送時間（ｔ１−ＨＣｔ）から、応答時間の指標値（ｔ１）を算出する。ステップＳ４で算出された比率が１未満か、あるいは１以上かに応じて異なる式が用いられる。比率が１未満であれば、ｔ１は式（５）を用いて算出される（ステップＳ６）。
【００４７】
【数５】
2015141624.tif 000007
【００４８】
比率が１以上であれば、ｔ１は式（６）を用いて算出される（ステップＳ９）。
【００４９】
【数６】
2015141624.tif 000008
【００５０】
式（５）、または式（６）で得られた値を応答時間の指標値（ｔ１）とする。最後に、応答品質指標値算出部４１ｂは、データ処理時間（ｔ１−ｐ）、応答時間の指標値（ｔ１）、および要求データ量を応答品質推定部４１ｃに出力する（ステップＳ７）。
【００５１】
図５は、図３に示される応答品質推定部４１ｃの処理手順の一例を示すフローチャートである。応答品質推定部４１ｃは、データ処理時間（ｔ１−ｐ）、応答時間の指標値（ｔ１）、および要求データ量を応答品質指標値算出部４１ｂから渡されると、処理を開始する。
【００５２】
応答品質推定部４１ｃは、まず、稼働中のＣＰＵ使用率とメモリ使用率、メモリ容量［ｂｉｔ］の規格値、ＣＰＵと補助記憶装置との間の物理的な接続規格に基づくデータ転送速度［ｂｉｔ／ｓ］の規格値、ＨＤＤなどの補助記憶装置の書込速度および読込速度［ｂｉｔ／ｓ］の規格値、およびローカルネットワークの伝送速度［ｂｉｔ／ｓ］の規格値をユーザ端末４０から取得する（ステップＳ１０）。このうちメモリ容量の規格値、データ転送速度の規格値、補助記憶装置の書込速度および読込速度の規格値、およびローカルネットワークの伝送速度の規格値は情報保存部４１ａから取得されてもよい。
【００５３】
ＣＰＵ使用率とは、ユーザ端末４０において、ＯＳや各種アプリケーションなどのソフトウェアの動作により占用される、ＣＰＵ４０ａの使用率［％］である。仮に、ＣＰＵ４０ａが複数のコアを持ち、各コアがそれぞれ１つ以上のスレッドを並列処理可能であれば、全てのコアおよびスレッドで動作中のＣＰＵ４０ａの利用率を累計した値を全てのコア数およびコア毎の最大処理スレッド数の乗算値で除算した平均値を、ＣＰＵ使用率として適用することができる。
【００５４】
メモリ使用率とは、ユーザ端末４０において、ＯＳや各種アプリケーションなどのソフトウェアの動作領域およびそれらソフトウェアが利用するデータ領域などにより占用される、メインメモリ４０ｃのメモリ領域の大きさをメモリ容量で除算した値［％］である。
【００５５】
次に、応答品質推定部４１ｃは、応答品質指標値算出部４１ｂから取得したデータ処理時間（ｔ１−ｐ）とＣＰＵ使用率とに基づいて、ＣＰＵ使用率の残量における実効上のデータ処理時間（ｔ２−ｐ：データ処理時間（実効値））を式（７）を用いて算出する（ステップＳ１１）。
【００５６】
【数７】
2015141624.tif 000009
【００５７】
次に、応答品質推定部４１ｃは、ローカルネットワーク５０の実効上の伝送速度と、応答品質指標値算出部４１ｂから渡された要求データ量とに基づいて、実効上のデータ伝送時間（データ伝送時間（実効値））を算出する（ステップＳ１２）。
【００５８】
ローカルネットワーク５０が有線ネットワーク（有線ＬＡＮ）か、無線ネットワーク（無線ＬＡＮ）であるかに拠って実効上の伝送速度は異なると考えられる。実施形態では、実効上の伝送速度（Ｓｒｅａｌ）を、有線ＬＡＮでは規格値の９０％程度と仮定して式（８）を用いて算出する。また無線ＬＡＮではＳｒｅａｌを規格値の５０％程度と仮定し、式（９）を用いて算出する。
【００５９】
【数８】
2015141624.tif 000010
【００６０】
【数９】
2015141624.tif 000011
【００６１】
次に、応答品質推定部４１ｃは、式（８）または式（９）を式（１０）に適用して、データ伝送時間（実効値）を算出する（ステップＳ１３）。
【００６２】
【数１０】
2015141624.tif 000012
【００６３】
次に、応答品質推定部４１ｃは、メモリ容量の残量を、メモリ使用率とメモリ容量の規格値とに基づき式（１１）を用いて算出する（ステップＳ１４）。
【００６４】
【数１１】
2015141624.tif 000013
【００６５】
次に、応答品質推定部４１ｃは、算出されたメモリ容量の残量に対する要求データ量の比率（要求データ量／メモリ容量の残量）が１未満、または１以上を判断し（ステップＳ１５）、その結果からＣＰＵと補助記憶装置との間でのメモリスワップ処理が発生した場合のデータ転送に要するデータ転送時間を算出する。
【００６６】
上記比率が１未満であれば、１回の転送で要求データをメインメモリ４０ｃに格納することができるので、メインメモリ４０ｃからＣＰＵ４０ａへのデータ転送だけを考慮すれば済む。この処理にかかる時間は極めて短いので無視でき、０時間と仮定することができる（ステップＳ１６）。
【００６７】
上記比率が１以上であれば、要求データを１回の転送でメインメモリ４０ｃに格納することはできない。よってメモリスワップ処理が生じる。（ステップＳ２０）  
メモリスワップ処理により、メインメモリ４０ｃに格納できないデータは補助記憶装置４０ｄに一時的に転送され、補助記憶装置４０ｄからＣＰＵ４０ａに再度転送される。よってデータ転送時間として、ＣＰＵから補助記憶装置４０ｄへ上記の格納できないデータを転送する時間および補助記憶装置４０ｄ上に書き込む時間と、補助記憶装置４０ｄから上記のデータを読み出す時間およびメインメモリ４０ｃへ再度転送する時間と、メモリからＣＰＵへのデータ転送にかかる時間（実質的に０時間）とが生じる。よってＣＰＵと補助記憶装置４０ｄ（ＨＤＤ）との間でのメモリスワップ処理で生じるデータ転送時間（ｔ２−ＨＣｔ）は、式（１２）により算出することができる。
【００６８】
【数１２】
2015141624.tif 000014
【００６９】
式（１２）は補助記憶装置４０ｄがＨＤＤの場合を示したものであり、ＨＤＤの書込速度および読込速度と、ＣＰＵと補助記憶装置４０ｄとの物理的な接続規格に基づくデータ転送速度によって決定される。
【００７０】
例えば、補助記憶装置４０ｄがＳＳＤ（シリコンディスク）であれば、ＳＳＤからＣＰＵへとの間のメモリスワップ処理で生じるデータ転送時間（ｔ２−HＣｔ）は式（１３）により得られる。
【００７１】
【数１３】
2015141624.tif 000015
【００７２】
式（１３）において、ＳＳＤの場合は、ＳＳＤの書込速度および読込速度と、ＣＰＵと補助記憶装置４０ｄとの物理的な接続規格に基づくデータ転送速度によって決定される。
【００７３】
次に、応答品質推定部４１ｃは、算出したデータ処理時間（実効値）ｔ２−ｐ、データ伝送時間（実効値）ｔ２−ｔ、ＣＰＵと補助記憶装置（ＨＤＤ）との間でのメモリスワップ処理で生じるデータ転送時間（ｔ２−ＨＣｔ）に基づいて、応答時間（実効値）を算出する（ステップＳ１７，ステップＳ２１）。先に述べたように、応答時間はメモリスワップ処理の有無、つまりメモリ容量の残量に対するデータ量の比率が１未満であるか、あるいは１以上かによって異なる。
【００７４】
上記比率が１未満であれば応答時間は式（１４）と表せる。
【００７５】
【数１４】
2015141624.tif 000016
【００７６】
上記比率が１以上であれば応答時間は式（１５）と表せる。
【００７７】
【数１５】
2015141624.tif 000017
【００７８】
式（１４）または式（１５）で得られた値を応答時間の実効値（ｔ２）とする。
【００７９】
次に、応答品質推定部４１ｃは、式（１６）に示されるように、応答品質指標値算出部４１ｂから取得した応答時間の指標値（ｔ１）と、算出された応答時間の実効値（ｔ２）との比率（応答時間の実効値／応答時間の指標値）（ｔ２／ｔ１）を算出し（ステップＳ１８）、その値を応答品質の推定値（ｔ３）とする。
【００８０】
【数１６】
2015141624.tif 000018
【００８１】
ステップＳ１８で算出された値が、応答品質推定値（ｔ３）として出力される（ステップＳ１９）。
【００８２】
以上の手順は、例えばユーザ端末４０の補助記憶装置４０ｄからメインメモリ４０ｃにロードされたプログラムに記述される命令に従ってＣＰＵ４０ａが演算処理を行うことにより、実現される。
【００８３】
以上の手順において、要求データが中継器３０からユーザ端末４０に到達するまでのデータ伝送時間、ユーザ端末４０のＣＰＵ４０ａが要求データを取得し処理をする時間（データ処理時間）、および、メモリスワップ処理も考慮したＣＰＵ４０ａのメインメモリ４０ｃまたは補助記憶装置（ＨＤＤ）４０ｄからＣＰＵ４０ａにデータを転送するのに要する時間を考慮して、応答品質を算出した。これによりユーザ端末の性能情報や、ローカルネットワーク５０の回線情報を考慮した応答品質を推定することが可能になる。なお広域ネットワーク２０側で消費される時間、例えば、サービサ側からユーザ側の中継器３０までのデータ伝送にかかる時間などは数式に含めていないが、これらの要素を加味することも可能である。
【００８４】
ステップＳ１９において出力された応答品質の推定値（ｔ３）は、例えば、サービス品質の一つとして応答品質を保証する場合のサービスレベル（ＳＬ）を決定するために用いることも可能となる。一例として、応答品質の推定値（ｔ３）が過度に低下した場合の処理手順について説明する。
【００８５】
図６は、応答品質が低下したことを通知する際の処理手順の一例を示すフローチャートである。サービスレベル判定部４１ｄは例えばサービサにより設定されたサービスレベル閾値を取得し、このサービスレベル閾値と、応答品質の推定値（ｔ３）とを比較する（ステップＳ２２）。
【００８６】
応答品質の推定値（ｔ３）がサービスレベル閾値未満でなければ（ステップＳ２３でＮｏ）処理手順は終了する。応答品質の推定値（ｔ３）がサービスレベル閾値未満であれば（ステップＳ２３でＹｅｓ）、サービスレベル判定部４１ｄは例えばユーザ端末４０のユーザに警告を発し、応答品質が劣化していることを通知する（ステップＳ２４）。通知の一例としては、ユーザ端末４０のアプリケーションやＯＳを利用した画面表示や、音声による警告などでもよい。通知を行うことで、ユーザは、不要な他のアプリケーションを強制停止させたりして応答品質を確保するための行為を実施することができる。
【００８７】
また、応答品質の劣化をサービサ端末１０に通知するようにしても良い。このケースでは、サービスレベル判定部４１ｄは応答品質が閾値よりも劣化したことを、ＩＰ（Internet Protocol）パケットのペイロードなどに記載し、このＩＰパケットを、ローカルネットワーク５０、中継器３０および広域ネットワーク２０を介してサービサ端末１０に伝送する。ユーザ端末４０が複数有るシステムにおいて各ユーザ端末４０のそれぞれからこの警告通知を実施すれば、サービサ端末は、応答品質の劣化に関するデータベースを蓄積することができる。このデータベースを用いてサービサは、提供中のサービスが必要なサービスレベルを満たしているか否かを判断し、場合によっては適切なサービスレベルになるようサービスやデータ量を見直すなどの処理が可能になる。
【００８８】
以上述べたように第１の実施形態では、ユーザ端末４０のＣＰＵ４０ａの性能（動作周波数、データバス幅、コア数、１コア当たりの最大動作スレッド数）、メインメモリ４０ｃの容量の規格値、ＣＰＵ４０ａと補助記憶装置４０ｄとの間の物理的な接続規格に基づくデータ転送速度の規格値、補助記憶装置４０ｄ（例えばＨＤＤ）の書込速度および読込速度の規格値、ローカルネットワーク５０の伝送速度の規格値、および、サービサに要求した要求データ量に基づいて、指標となるデータ処理時間、データ伝送時間、およびメモリスワップ処理も考慮したメインメモリ４０ｃまたは補助記憶装置４０ｄからＣＰＵ４０ａへのデータ転送時間を算出し、それらの和をユーザ端末４０の応答時間の指標値として算出する。
【００８９】
一方、ユーザ端末４０のＣＰＵ４０ａのＣＰＵ使用率と、メインメモリ４０ｃのメモリ使用率、データ処理時間（指標値）、応答時間（指標値）、およびメインメモリ４０ｃのメモリ容量の規格値、ＣＰＵ４０ａと補助記憶装置４０ｄとの間の物理的な接続規格に基づくデータ転送速度の規格値、補助記憶装置４０ｄ（例えばＨＤＤ）の書込速度および読込速度の規格値、ローカルネットワーク５０の伝送速度の規格値、要求データ量に基づいて、ＣＰＵ４０ａの稼働中におけるデータ処理時間（実効値）、データ伝送時間（実効値）、およびメモリスワップ処理も考慮したメインメモリ４０ｃまたは補助記憶装置４０ｄからＣＰＵ４０ａへのデータ転送時間を算出し、それらの和をユーザ端末の応答時間の実効値として算出する。  
そして、算出した応答時間の実効値と指標値との比率から、応答品質を推定するようにしている。
【００９０】
すなわち、ユーザ側がサービス側に要求した要求データ量に対する、ユーザ端末４０のＣＰＵ４０ａのデータ処理時間、ローカルネットワーク５０のデータ伝送時間、および、メモリスワップ処理も考慮したメインメモリ４０ｃと補助記憶装置４０ｄとのデータ転送時間、の各量を加算した値について指標値と実効値とを算出し、その比率を、応答品質の推定値とした。
【００９１】
このように、主にユーザ側のハードウェアリソースに起因する要素を数値化して応答品質を算出しているので、ユーザ端末の状態などを含む、サービスを受ける側の環境を総合的に考慮して応答品質を推定することが可能になる。
【００９２】
既存の技術ではユーザ側に起因するサービス品質の低下を考慮していない。よってサービサ側が高速通信を達成していたとしても、ユーザ側の処理速度が低速であることにより広域ネットワーク２０の品質を十分に享受することができない、という事象が生じうる。例えばユーザが通信サービスを利用するときに用いるパソコン等の端末のＣＰＵの性能や状態、ローカルネットワーク５０の伝送状態は、ユーザが要求する映像や音声、情報などの応答性に影響するので、ユーザの体感品質の低下要因になりうる。
【００９３】
例えば、ユーザ端末４０において映像・音声による通信サービスを実行するためにＣＰＵ４０ａが一定のメモリ空間を必要とするとき、ＣＰＵ４０ａのメモリ空間に空きがなければ補助記憶装置４０ｄ上の仮想メモリ空間とのスワップ処理を行う場合がある。この処理が高速に実行できるかはＣＰＵ４０ａの性能および使用率や、ＣＰＵ４０ａと補助記憶装置４０ｄとの伝送速度が大きく影響する。メモリ空間が十分でなくスワップ処理も高速に実行できない場合には、映像・音声通信サービスにおける映像再生の品質が劣化したり、音声明瞭性が低下したりする。
【００９４】
つまり、ユーザ端末４０の応答品質を評価することは総合的なサービス品質の把握のために重要であるが、既存の技術ではユーザの端末情報やローカルネットワーク５０の回線情報は考慮されていないので、十分に達成されていたとは言い難い面があった。
【００９５】
これに対し第１の実施形態によれば、ユーザが通信サービスを利用する際に、ユーザの端末状態とローカルネットワークの状態とを考慮して応答品質を推定することができる。これにより、サービサはユーザの端末やローカルネットワークの状態を考慮した応答品質を把握することができるので、サービサがユーザに応答品質を保証する場合のサービスレベルを応答品質の推定値から決定することが可能となる。
【００９６】
しかも第１の実施形態では応答品質が既定のサービスレベルから低下したことを検知し、ユーザとサービサとの双方、あるいは少なくともその一方にそのことを通知するようにしている。このようにしたので、サービス品質をリアルタイムでモニタし、必要であれば直ちに改善することなども可能になる。
【００９７】
これらのことから実施形態によれば、サービスを受ける側の環境を考慮し、応答品質を正確に推定することの可能な応答品質推定装置、応答品質推定方法およびプログラムを提供することが可能となる。
【００９８】
［第２の実施形態］
図７は、第２の実施形態に係る応答品質推定装置を適用可能な通信システムの一例を示す図である。図７において図１と共通する部分には同じ符号を付して示し、ここでは異なる部分についてのみ説明する。
【００９９】
図７に示されるシステムは、応答品質推定装置（符号を３１とする）を、中継器３０に備える。すなわち中継器３０はＣＰＵやメモリなどを備えるコンピュータである。応答品質推定装置３１は、中継器３０のハードウェアリソース上で処理されるプログラムにより、その機能を実現される。
【０１００】
応答品質推定装置３１は、ユーザ端末４０のＣＰＵ４０ａの性能情報、メモリ容量、内部バスのデータ転送速度など、必要な情報をローカルネットワーク５０を介してユーザ端末４０から取得する。そして第１の実施形態で説明したのと同様の手順で応答品質の推定値を算出し、必要であればサービスレベル閾値との比較も行い、通知処理を実施する。
【０１０１】
上記構成によれば、第１の実施形態で得られる効果に加えてユーザ端末４０の処理負荷を格段に軽減することができる。従って同時起動中のアプリケーションの速度低下などのおそれを無くすことができる。
［第３の実施形態］
図８は、第３の実施形態に係る応答品質推定装置を適用可能な通信システムの一例を示す図である。図８において図１と共通する部分には同じ符号を付して示し、ここでは異なる部分についてのみ説明する。
【０１０２】
図８に示されるシステムは、応答品質推定装置（符号を６０とする）を、サービサ側に備える。応答品質推定装置６０は、サービサ側のハードウェアリソース（例えばサービサ端末１０）上で処理されるプログラムにより、その機能を実現される。
【０１０３】
応答品質推定装置６０は、ユーザ端末４０のＣＰＵ４０ａの性能情報、メモリ容量、内部バスのデータ転送速度など、必要な情報を中継器３０及び広域ネットワーク２０を介してユーザ端末４０から取得する。そして第１の実施形態で説明したのと同様の手順で応答品質の推定値を算出し、必要であればサービスレベル閾値との比較も行い、ユーザ端末４０への通知処理を実施する。
【０１０４】
上記構成によれば、第１の実施形態と同様に、ユーザ端末４０の処理負荷を格段に軽減することができる。従って同時起動中のアプリケーションの速度低下などのおそれを無くすことができる。
【０１０５】
なお、この発明は上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示される複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、各実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【０１０６】
１０…サービサ端末、２０…広域ネットワーク、３０…中継器、３１…応答品質推定装置、４０…ユーザ端末、４０ａ…ＣＰＵ、４０ｂ…入力部、４０ｃ…メインメモリ、４０ｄ…補助記憶装置、４０ｅ…インタフェース部、４１…応答品質推定装置、４１ａ…情報保存部、４１ｂ…応答品質指標値算出部、４１ｃ…応答品質推定部、４１ｄ…サービスレベル判定部、５０…ローカルネットワーク、６０…応答品質推定装置
【図１】
2015141624.tif 000019
【図２】
2015141624.tif 000020
【図３】
2015141624.tif 000021
【図４】
2015141624.tif 000022
【図５】
2015141624.tif 000023
【図６】
2015141624.tif 000024
【図７】
2015141624.tif 000025
【図８】
2015141624.tif 000026