IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 合同会社on flowの特許一覧

特許7442775回線品質測定方法、回線品質測定装置及び回線品質測定プログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-26
(45)【発行日】2024-03-05
(54)【発明の名称】回線品質測定方法、回線品質測定装置及び回線品質測定プログラム
(51)【国際特許分類】
   H04L 43/045 20220101AFI20240227BHJP
   H04L 43/02 20220101ALI20240227BHJP
【FI】
H04L43/045
H04L43/02
【請求項の数】 7
(21)【出願番号】P 2023563364
(86)(22)【出願日】2021-11-23
(86)【国際出願番号】 JP2021042866
(87)【国際公開番号】W WO2023095185
(87)【国際公開日】2023-06-01
【審査請求日】2023-12-04
【早期審査対象出願】
(73)【特許権者】
【識別番号】521169882
【氏名又は名称】合同会社on flow
(74)【代理人】
【識別番号】100166279
【弁理士】
【氏名又は名称】前渋 正治
(72)【発明者】
【氏名】山本 博文
【審査官】鈴木 香苗
(56)【参考文献】
【文献】米国特許出願公開第2017/0223577(US,A1)
【文献】特開2002-157172(JP,A)
【文献】特開2009-037611(JP,A)
【文献】特開2013-128237(JP,A)
【文献】特開2005-269460(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 43/045
H04L 43/02
(57)【特許請求の範囲】
【請求項1】
電子機器がネットワークを介して通信する際のネットワークの回線品質を測定する回線品質測定方法であって、
回線品質を測定するための通信である測定用通信を前記電子機器において行う測定用通信処理と、
前記測定用通信の通信結果を回線品質測定結果として前記電子機器において取得する測定結果取得処理と、
前記測定用通信と並行して、前記電子機器において実行中のプログラムを示す実行中プログラム情報を前記電子機器において取得する実行中プログラム取得処理と、
前記電子機器がネットワークに接続するための回線に関する情報である回線情報を前記電子機器を操作するユーザの入力に応じて前記電子機器において取得し、前記回線品質測定結果及び前記実行中プログラム情報と関連付けて記憶媒体に記憶させる測定結果記憶処理と、
前記回線品質測定結果および前記実行中プログラム情報に基づき、前記回線品質の測定結果と前記電子機器におけるプログラムの実行状態とを関連付けて前記電子機器に接続された表示装置に表示するための情報を前記電子機器において生成する表示情報生成処理と、
複数の前記電子機器から前記回線情報、前記回線品質測定結果および前記実行中プログラム情報を収集する解析用のサーバにおいて、前記回線品質測定結果を集計した画面を前記電子機器に接続された表示装置に表示するための表示情報を生成する集計結果表示処理とを実行するものであり、
前記集計結果表示処理は、前記回線品質測定結果を、並行して実行されていた前記プログラム別に分類するとともに、更に、前記回線情報が含む情報のうち前記電子機器がネットワークに接続するための接続サービスを示す情報別に分類し、それぞれの分類結果別に集計した画面を表示するための表示情報を生成する処理であることを特徴とする回線品質測定方法。
【請求項2】
前記実行中プログラム取得処理は、実行状態を把握する対象のプログラムを前記電子機器内で特定するための文字列情報が記述された対象プログラム特定情報を参照し、前記文字列情報により前記電子機器において実行中であるプログラムを特定する処理であることを特徴とする請求項1に記載の回線品質測定方法。
【請求項3】
前記実行中プログラム取得処理は、前記電子機器において実行中のプログラムによる前記電子機器のハードウェアの使用状態を取得する処理を含み、
前記実行中プログラム情報は、前記電子機器において実行中のプログラムによる前記電子機器のハードウェアの使用状態を示すプログラム別使用状態情報を含むことを特徴とする請求項1に記載の回線品質測定方法。
【請求項4】
前記電子機器のハードウェアの使用状態と比較することにより、前記電子機器のハードウェア環境が不足していることを判断するための判断情報を参照し、前記プログラム別使用状態情報に基づいて前記電子機器のハードウェア環境が不足していることを判断してその結果を出力する環境判断処理を前記電子機器において実行することを特徴とする請求項3に記載の回線品質測定方法。
【請求項5】
前記回線情報、前記回線品質測定結果および前記実行中プログラム情報を前記電子機器からネットワークを介して受信し、その受信に際しての送信元の情報を解析して得られた情報と前記回線情報に含まれる情報とを比較することにより前記回線情報の正否を確認し、その確認結果に応じて前記集計から除外する回線情報判定処理を前記解析用のサーバにおいて実行することを特徴とする請求項1に記載の回線品質測定方法。
【請求項6】
ットワークを介して通信する際のネットワークの回線品質を測定する回線品質測定装置であって、
回線品質を測定するための通信である測定用通信を行う測定用通信部と、
前記測定用通信の通信結果を回線品質測定結果として取得する測定結果取得部と、
前記測定用通信と並行して、前記回線品質測定装置において実行中のプログラムを示す実行中プログラム情報を取得する実行中プログラム取得部と、
前記回線品質測定装置がネットワークに接続するための回線に関する情報である回線情報を、前記回線品質測定装置を操作するユーザの入力に応じて取得し、前記回線品質測定結果及び前記実行中プログラム情報と関連付けて記憶媒体に記憶させる測定結果記憶処理部と、
前記回線品質測定結果および前記実行中プログラム情報に基づき、前記回線品質の測定結果と前記回線品質測定装置におけるプログラムの実行状態とを関連付けて前記回線品質測定装置に接続された表示装置に表示するための情報を生成する表示情報生成部と、
記回線品質測定結果を集計した集計結果表示画面を表示するための表示情報を、複数の前記回線品質測定装置から前記回線情報、前記回線品質測定結果および前記実行中プログラム情報を収集する解析用のサーバから受信して前記回線品質測定装置に接続された表示装置に表示させる集計結果表示処理部とを含み、
前記集計結果表示画面は、前記回線品質測定結果を、並行して実行されていた前記プログラム別に分類するとともに、更に、前記回線情報が含む情報のうち前記回線品質測定装置がネットワークに接続するための接続サービスを示す情報別に分類し、それぞれの分類結果別に集計した画面であることを特徴とする回線品質測定装置。
【請求項7】
電子機器がネットワークを介して通信する際のネットワークの回線品質を測定する回線品質測定プログラムであって、
回線品質を測定するための通信である測定用通信を前記電子機器において行う測定用通信処理と、
前記測定用通信の通信結果を回線品質測定結果として取得する測定結果取得処理と、
前記測定用通信と並行して、前記電子機器において実行中のプログラムを示す実行中プログラム情報を取得する実行中プログラム取得処理と、
前記電子機器がネットワークに接続するための回線に関する情報である回線情報を前記電子機器を操作するユーザの入力に応じて取得し、前記回線品質測定結果及び前記実行中プログラム情報と関連付けて記憶媒体に記憶させる測定結果記憶処理と、
前記回線品質測定結果および前記実行中プログラム情報に基づき、前記回線品質の測定結果と前記電子機器におけるプログラムの実行状態とを関連付けて前記電子機器に接続された表示装置に表示するための情報を生成する表示情報生成処理と、
前記回線品質測定結果を集計した集計結果表示画面を表示するための表示情報を、複数の前記電子機器から前記回線情報、前記回線品質測定結果および前記実行中プログラム情報を収集する解析用のサーバから受信して前記電子機器に接続された表示装置に表示させる表示処理とを電子機器に実行させるものであり、
前記集計結果表示画面は、前記回線品質測定結果を、並行して実行されていた前記プログラム別に分類するとともに、更に、前記回線情報が含む情報のうち前記電子機器がネットワークに接続するための接続サービスを示す情報別に分類し、それぞれの分類結果別に集計した画面であることを特徴とする回線品質測定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、回線品質測定方法、回線品質測定システム及び回線品質測定装置に関する。
【背景技術】
【0002】
インターネットなどの広域ネットワークにおいて、ユーザはISP(Internet
Service Provider)と契約することによりインターネットを利用する。複数のISPにより様々なインターネット接続サービスが提供されており、サービスによって回線の品質も異なるため、ユーザは自身が契約しているISPの回線品質を調べるためにウェブサイトやアプリによって提供されている回線品質の測定サービスを用いる事がある(例えば、非特許文献1参照)。
【0003】
また、回線品質の測定において、通信の応答時間と、ファイルの転送速度とを取得することにより通信速度の正確な情報を効率的に収集する方法が提案されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2018-032983号公報
【非特許文献】
【0005】
【文献】みんなのネット回線速度<URL: https://minsoku.net/>
【発明の概要】
【発明が解決しようとする課題】
【0006】
ユーザがインターネットの回線品質を把握したい理由の1つとして、MMORPG(Massively Multiplayer Online Role-Playing
Game)等のインターネットを介したゲーム(以降、「オンラインゲーム」とする)をプレイする場合が挙げられる。オンラインゲームにおいてはクライアントとサーバの間で通信を行いながらゲームが進行することから、インターネットの通信速度によりゲーム進行のスムーズさに差が生じるためである。特に、FPS(First-person shooter)やTPS(Third-person shooter)等のリアルタイム性が要求されるオンラインゲームにおいては、コンマ1秒のオーダーでの遅延がゲームの勝敗を分けることもあるため、通常のウェブブラウジング等では気にならない程度の遅延の差が重要視される。
【0007】
このようなユーザの要求において、特許文献1や非特許文献1に開示されるような回線品質の測定サービスは有効に利用されるが、ユーザにとって最も重要なのはゲーム実行中における回線の品質であり、測定により収集される情報の第三者にとっての価値としても同様である。しかしながら、既存の回線品質測定サービスはそのようなニーズに応えたものにはなっていない。尚、このような課題や要望はMMORPGをはじめとしたゲームのソフトウェアに限らず、ゲーム以外のアプリケーションソフトウェアであっても同様である。
【0008】
例えば、PC(Personal Computer)において対象となるソフトウェアを実行した状態において、同一の端末で非特許文献1に開示されるような回線品質の測定サービスを実行することにより、測定の実行を指示したユーザ自身はその測定結果が特定のソフトウェアの実行中における測定結果であると認識することはできる。しかしながら、このような操作は煩雑であるし、測定により得られた測定結果の情報のみからはそのような事実を把握することはできず、利便性が低い。
【0009】
本発明は、上記実情を考慮してなされたものであり、アプリケーションの実行状態における回線品質の測定を簡易化することを目的とする。
【課題を解決するための手段】
【0010】
上記課題を解決するために、本発明の一態様は、電子機器がネットワークを介して通信する際のネットワークの回線品質を測定する回線品質測定方法であって、回線品質を測定するための通信である測定用通信を前記電子機器において行う測定用通信処理と、前記測定用通信の通信結果を回線品質測定結果として取得する測定結果取得処理と、前記測定用通信と並行して、前記電子機器において実行中のプログラムを示す実行中プログラム情報を取得する実行中プログラム取得処理と、前記回線品質測定結果と前記実行中プログラム情報とを関連付けて記憶媒体に記憶させる測定結果記憶処理と、前記回線品質測定結果および前記実行中プログラム情報に基づき、前記回線品質の測定結果と前記電子機器におけるプログラムの実行状態とを関連付けて表示するための情報を生成する表示情報生成処理とを実行することを特徴とする。
【発明の効果】
【0011】
本発明によれば、アプリケーションの実行状態における回線品質の測定を簡易化することができる。
【図面の簡単な説明】
【0012】
図1】本発明の実施形態に係るシステムの全体構成を示す図である。
図2】本発明の実施形態に係るシステムに含まれる情報機器のハードウェア構成を示す図である。
図3】本発明の実施形態に係る測定サービスサーバの機能構成を示すブロック図である。
図4】本発明の実施形態に係るユーザ端末の機能構成を示すブロック図である。
図5】本発明の実施形態に係る回線測定アプリの機能構成を示すブロック図である。
図6】本発明の実施形態に係るシステム全体の動作を示すシーケンス図である。
図7】本発明の実施形態に係る回線測定アプリのGUIを示す図である。
図8】本発明の実施形態に係る回線測定アプリがユーザの入力に応じて取得する環境情報の内容を示す図である。
図9】本発明の実施形態に係る回線測定アプリが1回のPingにより保存する測定情報の内容を示す図である。
図10】本発明の実施形態に係る回線測定アプリがプロセスチェックにおいて参照するプロセスリストの内容を示す図である。
図11】本発明の実施形態に係る回線測定アプリがプロセスチェックの結果として保存するプロセスチェック結果情報の内容を示す図である。
図12】本発明の実施形態に係る回線測定アプリのGUIを示す図である。
図13】本発明の実施形態に係る回線測定アプリが測定サービスサーバに送信する測定結果集計情報の内容を示す図である。
図14】本発明の実施形態に係る回線測定アプリが測定サービスサーバに送信するプロセスチェック結果集計情報を示す図である。
図15】本発明の実施形態に係る測定サービスサーバがISP判定において参照する判定ルール情報の内容を示す図である。
図16】本発明の実施形態に係る測定サービスサーバによるISP判定動作を示すフローチャートである。
図17】本発明の実施形態に係る解析結果表示画面の例を示す図である。
図18】本発明の実施形態に係る測定サービスサーバによるプロセス名情報の確認動作を示すフローチャートである。
図19】本発明の実施形態に係るプロセス名の確認動作において生成されるアプリ名毎のデータ数のリストの例を示す図である。
図20】本発明の実施形態に係るアプリ実行状態エラー報告画面の例を示す図である。
図21】本発明の実施形態に係るプロセスチェック結果に含まれる情報の例を示す図である。
図22】本発明の実施形態に係る回線測定アプリのGUIを示す図である。
図23】本発明の実施形態に係る回線測定アプリのGUIを示す図である。
図24】本発明の実施形態に係る改善提案機能の動作を示すフローチャートである。
図25】本発明の実施形態に係る要因特定情報の例を示す図である。
【発明を実施するための形態】
【0013】
実施の形態1.
以下、図面を参照して、本発明の実施形態を詳細に説明する。本実施形態においては、ユーザが使用する端末から特定の対象に対してPingを発信することにより回線の品質を測定するとともに、その端末において動作中のゲーム等のソフトウェアの実行状況をチェックする機能を実現する回線品質測定システムについて説明する。そのような回線品質測定方法において、ユーザが使用する端末におけるソフトウェアの実行状況をチェックする機能を提供することが本実施形態に係る要旨の1つである。
【0014】
図1は、本実施形態に係るシステムの全体構成を示す図である。図1に示すように、本実施形態に係る回線品質測定システムは、測定サービスサーバ1,測定対象サーバ2a、2b(以降、総じて「測定対象サーバ2」とする)、ユーザ端末3a、3b、3c(以降、総じて「ユーザ端末3」とする)といった複数の機器がインターネット等の広域ネットワークAを介して通信可能に接続されて構成されている。それぞれの機器は、ISP(Internet Service Provider)を介してインターネットに接続されるため、その通信の品質はISPのサービスに依存することとなる。このISPによる通信の品質、すなわち回線品質を測定することが本システムの主要な機能である。
【0015】
測定サービスサーバ1は、本システムに係る回線品質測定サービスを提供する主体が管理するサーバであり、主に測定結果の収集を行う他、態様によってはウェブサイトとして回線品質測定機能を実現するソフトウェア・プログラムを提供する。測定対象サーバ2は、本システムにおいて回線品質測定が実行される際に品質測定用の通信を行う通信対象として機能する。ユーザ端末3は、スマートホン、タブレット、ノートPC、デスクトップPC等の情報処理端末であり、本システムを利用するユーザが使用する電子機器である。
【0016】
図2は、本実施形態に係るシステムに含まれる測定サービスサーバ1、測定対象サーバ2およびユーザ端末3等の情報機器のハードウェア構成を示す図である。本実施形態に係るシステムは一般的な情報処理機器のハードウェア構成によって実現可能であり、図2に示すように、CPU(Central Processing Unit)10、RAM(Random Access Memory)20、ROM(Read Only Memory)30、HDD(Hard Disk Drive)40およびI/F50がバス80を介して接続されている。また、I/F50にはLCD(Liquid Crystal Display)60および操作部70が接続されている。
【0017】
CPU10は演算手段であり、情報機器全体の動作を制御する。RAM20は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、CPU10が情報を処理する際の作業領域として用いられる。ROM30は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。HDD40は、情報の読み書きが可能な不揮発性の記憶媒体であり、OS(Operating System)や各種の制御プログラム、アプリケーション・プログラム等が格納される。
【0018】
I/F50は、バス80と各種のハードウェアやネットワーク等を接続し制御する。LCD60は、ユーザが情報機器の状態を確認するための視覚的ユーザインタフェースである。操作部70は、キーボード、マウス、各種のハードボタン、タッチパネル等、ユーザが情報機器に情報を入力するためのユーザインタフェースである。尚、測定サービスサーバ1は、サーバとして運用されるため、LCD60や操作部70等のユーザインタフェースは省略可能である。
【0019】
このようなハードウェア構成において、ROM30やHDD40若しくは図示しない光学ディスク等の記憶媒体に格納されたプログラムがRAM20に読み出され、CPU10がそれらのプログラムに従って演算を行うことによりソフトウェアの機能が構成される。このようにして構成されたソフトウェアの機能と、ハードウェアとの組み合わせによって、本実施形態に係る回線品質測定システムを構成する各機器の機能を実現する機能ブロックが構成される。
【0020】
次に、本実施形態に係る測定サービスサーバ1の機能構成について、図3を参照して説明する。図3に示すように、本実施形態に係る測定サービスサーバ1は、サービスGUI(Graphical User Interface)提供部101、測定結果収集部102、測定結果情報記憶部103、回線種別判定部104および回線判定情報記憶部105を含む
【0021】
サービスGUI提供部101は、ユーザがユーザ端末3を介して本システムを利用する際のGUIを提供する。ユーザ端末3におけるGUIはユーザ端末3が測定サービスサーバ1にウェブアクセスすることによりJS(Java Script)等によりウェブアプリとして提供される場合の他、ユーザ端末3にダウンロードおよびインストールされるソフトウェア・プログラムの形態で提供される。
【0022】
測定結果収集部102は、ユーザ端末3において回線品質測定が実行されることにより保存される測定結果の情報を受信して測定結果情報記憶部103に記憶させる。回線種別判定部104は、測定結果情報記憶部103に記憶された測定結果の情報を参照し、それぞれの測定結果において指定されているISPの情報が正確か否かの検証を行う。その検証に際し、回線種別判定部104は回線判定情報記憶部105に記憶されている回線判定情報を参照する。
【0023】
次に、本実施形態に係るユーザ端末3の機能構成について、図4を参照して説明する。図4に示すように、本実施形態に係るユーザ端末3は、OS300、回線測定アプリ310の他、ユーザ端末3におけるユーザの使用目的に応じた種々のアプリを含む。本実施形態においては、ゲームAアプリ321、ゲームBアプリ322及び映像編集アプリ323が含まれる場合を例とする。
【0024】
OS300はユーザ端末3を動作させるための基本ソフトウェアであり、一般的に普及しているものが用いられる。回線測定アプリ310は本実施形態の用紙に係る機能を提供するソフトウェアであり、図3において説明したサービスGUI提供部101によって提供されるものである。上述した通り回線測定アプリ310は、ユーザ端末3が測定サービスサーバ1にウェブアクセスすることによりウェブアプリとして提供される場合の他、ユーザ端末3にダウンロードおよびインストールされるソフトウェア・プログラムの形態で提供される。回線測定アプリ310を実現するためのプログラムが回線品質測定プログラムであり、回線測定アプリ310が動作することにより、ユーザ端末3が回線品質測定装置として機能する。
【0025】
ゲームAアプリ321、ゲームBアプリ322及び映像編集アプリ323は、その名の通りゲームや映像編集等の機能を提供するソフトウェアであり、回線測定アプリ310が回線品質測定を行う際に実行されるプロセスチェックのチェック対象となる。回線測定アプリ310が回線品質の測定を行う際に、これらのアプリケーションが実行されているか否かをチェックし、且つ事後的に確認可能な形式の情報を保存することが本実施形態に係る要旨の一つである。
【0026】
次に、回線測定アプリ310の機能の詳細について図5を参照して説明する。図5に示すように、回線測定アプリ310は、測定結果表示処理部311、測定結果送信処理部312、回線品質測定部313、測定結果情報記憶部314、アプリ実行状態判定部315およびプロセス名情報記憶部316を含む。
【0027】
測定結果表示処理部311は、回線品質測定処理により測定結果情報記憶部314に記憶された情報に基づいて測定結果をユーザ端末3の表示部に表示させる。測定結果送信処理部312は、測定結果情報記憶部314に記憶された情報をまとめて測定サービスサーバ1に送信する。回線品質測定部313は、ユーザ端末3を操作するユーザの指示に基づき、測定対象サーバ2との間で通信を行って回線品質測定を実行し、その結果得られた情報を測定結果情報記憶部314に記憶させる。
【0028】
アプリ実行状態判定部315は、回線品質測定部313による回線品質測定の実行に応じて、OS300の機能を利用してユーザ端末3における他のゲームやアプリケーションの実行状態をチェックし、測定結果情報記憶部314に記憶させる。アプリ実行状態判定部315は、この実行状態のチェックに際して、プロセス名情報記憶部316に記憶されているプロセス名情報を参照する。
【0029】
次に、本実施形態に係るシステム全体の動作について図6を参照して説明する。図6は、本実施形態に係るシステム全体の動作を示すシーケンス図である。図6に示す動作の開始に際して、まずはユーザ端末3において回線測定アプリ310が動作してGUIが表示される。回線測定アプリ310は上述した通りウェブアプリ若しくはネイティブアプリとして実現される。ウェブアプリの場合、ユーザ端末3にインストールされているウェブブラウザの機能によりユーザ端末3が測定サービスサーバ1にウェブアクセスすることによって回線測定アプリ310を構成するためのプログラムがサービスGUI提供部101からユーザ端末3にダウンロードされ、ユーザ端末3において実行される。ネイティブアプリの場合、ユーザ端末3にインストールされている回線測定アプリ310がユーザ端末3においてRAM20にロードされ、それに従ってCPU10が演算を行うことにより実現される。
【0030】
図7は、本実施形態に係る回線測定アプリ310のGUIのうち、起動後の初期画面を示す図である。図7に示すように、回線測定アプリ310の初期画面においては、ユーザおよびユーザ端末3の回線環境についての情報を入力する入力欄が表示される。入力する情報としては、"都道府県"、"市区町村"、"回線タイプ"、"契約回線名"、"住宅タイプ"、"プロトコル"が含まれる。これらの情報が回線情報として用いられる。
【0031】
"都道府県"、"市区町村"はその名の通りである。"回線タイプ"は、「光回線」、「ADSL」、「携帯キャリア」、「モバイルWi-Fi」、「ケーブルテレビ」等、インターネット接続に用いられる回線の種類を入力する欄である。"契約回線名"は、ユーザがユーザ端末3を介してインターネットアクセスを行うために契約しているISPの名称やサービス名を入力する欄である。
【0032】
"住宅タイプ"は、「戸建て」、「マンション・集合住宅」等の住宅の種類を入力する欄である。"プロトコル"は、回線品質の測定に際して発信するPingを「IPv4」、「IPv6」のいずれを利用して発信するか選択する欄である。これらの入力欄はユーザによる自由入力の他、「その他」の選択肢を含めて予め用意されたリストからの選択式とすることにより、情報の正確性や事後的な情報の解析、統計に際しての利便性を向上することができる。
【0033】
図7に示すような入力画面においてユーザが情報を入力し「測定開始」の操作部がタッチやクリックにより操作されると、回線測定アプリ310の回線品質測定部313は入力された情報を環境情報として取得して測定結果情報記憶部314に記憶させる(S601)。これにより、図8に示すような情報が回線品質測定実行中の環境情報として測定結果情報記憶部314に一時的に記憶される。そして、回線品質測定部313が、測定対象サーバ2を対象としてPing送信および応答の受信処理を開始する(S602)。
【0034】
S602において、回線品質測定部313はOS300に備わっている機能を利用して測定対象サーバ2に対してPingを発信し、測定対象サーバ2からの応答、即ち通信結果を受信する処理を所定期間毎に実行する。即ち、回線品質測定部313が、測定用通信処理および測定結果取得処理を実行する。このPingの発信頻度はシステムの運用に応じて任意に設定可能であるが、例えば1回/秒である。また、Pingを発信する宛先として複数の測定対象サーバ2が設定されている場合、回線品質測定部313は、それぞれの宛先に対してPingを発信する。
【0035】
Pingを発信する宛先となる測定対象サーバ2のIPアドレスは、回線品質測定部313のパラメータとして予め設定されて記憶されているが、回線品質測定部313は、測定サービスサーバ1と定期的に通信することによりこのパラメータを更新する。これにより、サービス管理者によって定められた最新の情報に基づく回線品質測定処理が実行可能となる。測定サービスサーバ1が測定対象サーバ2を兼務することも可能であるが、測定対象サーバ2として、例えば実際にオンラインゲームを提供するサーバを用いることにより、よりゲームプレイに近い環境での回線品質の測定を実現することができる。
【0036】
尚、上記パラメータの更新タイミングは任意のタイミングであるが、例えば上述した回線測定アプリ310がプログラムとして実行されたタイミングである。また、回線測定アプリ310がウェブアプリとして実現される場合には、測定サービスサーバ1において最新のパラメータが設定されたプログラムがユーザ端末3にダウンロードされるため、このパラメータの更新処理は不要である。
【0037】
1回のPing発信に対する測定対象サーバ2からの応答により、回線品質測定部313は、"Ping値"および"パケットロス"の情報を取得する。"Ping値"は、Pingを発信した後に測定対象サーバ2からの応答を受信するまでの期間、即ち遅延値であり、正確にはRTT(Round-Trip Time)と呼ばれ、一般的にはms(ミリセコンド)のオーダーである。"パケットロス"は、Pingに対する応答を問題なく受信したか否か、すなわちパケットロスとなったか(True)否か(False)を示す情報である。
【0038】
本実施形態に係る回線品質測定部313は、1回/秒の頻度でPingを発信するので、それ未満の期間、例えば800msをしきい値としてタイムアウトを判断し、パケットロスを認識する。この他、パケットロスを認識する方法としては、Pingの発信に対して、経路途中のルータから宛先のIPに到達できなかった旨の通知が返ってきた場合や、発信したIPヘッダのTTL(Time to Live)値がゼロになった場合などである。
【0039】
このようにPingに対する応答を受信した回線品質測定部313は、1回のPing発信毎に図9に示すような情報を測定結果情報記憶部314に記憶させる。図9に示すように、1回のPingに応じて記憶される測定情報には、"サーバID"、"クライアント
IP"、"サーバIP"、"接続方式"、"IPv4/IPv6"、"通信方式"、"Ping値"
、"パケットロス"および"測定時刻"の情報を含む。
【0040】
"サーバID"は、測定対象サーバ2をインターネット上で一位に識別する識別子である。"クライアントIP"はユーザ端末3のグローバルIPアドレスであり、OS300の機能に基づいて取得可能な情報である。"サーバIP"は、そのPingを発信した対象の測定対象サーバ2のIPアドレスである。回線品質測定部313においてPingの発信先として複数のIPアドレスが設定されており、複数の測定対象サーバ2に対してPingが発信される場合、それぞれの発信先毎に図9に示す情報が保存される。
【0041】
"接続方式"は、ユーザ端末3が有線接続によりインターネットに接続されているか、Wi-Fiや携帯キャリア回線等の無線接続によりインターネットに接続されているかを示す情報である。"IPv4/IPv6"は、図7のGUIにおいてユーザにより選択され、Pingの発信に際して用いられたインターネットプロトコルである。
【0042】
"通信方式"は、TCP(Transmission Control Protocol)、UDP(User Datagram Protocol)、ICMP(Internet Control Message Protocol)等のプロトコルを示す情報であり、Pingを発信する際に用いられるプロトコルを示す。いずれの通信方式が用いられるかについては予め回線品質測定部313において設定されており、その情報が図9に示す"通信方式"として保存される。"Ping値"、"パケットロス"、"測定時刻"は上述した通りPingの発信に応じて取得された情報である。
【0043】
回線品質測定部313がS602において回線品質測定処理を開始すると、アプリ実行状態判定部315は、ユーザ端末3において実行されているプロセスのチェックおよび記録処理を開始する(S603)。S603において、アプリ実行状態判定部315は、OS300の機能を利用してユーザ端末3において実行されているプロセス名を所定期間毎に取得し、プロセス名情報記憶部316に記憶されているプロセス名情報と照らし合わせてチェックを行う。即ち、アプリ実行状態判定部315が、実行中プログラム取得処理を実行する。
【0044】
図10は、プロセス名情報記憶部316に記憶されているプロセス名情報の例を示す図である。図10に示すように、本実施形態に係るプロセス名情報においては、回線品質測定に際して実行状態をチェックする対象のゲームやアプリケーションの名称である"アプ
リ名"に識別子である"ID"が割り振られている。そして、それぞれの"アプリ名"に対し
てOS300の機能によるプロセスチェックによって得られる文字列に対応する"プロセ
ス名"が関連付けられている。
【0045】
図10に示すように「ゲームA」、「ゲームB」、「アプリA」としてプロセス名情報にリストアップされるゲームやアプリケーションは、本実施形態に係るシステムにおいて実行中の回線品質を測定する対象としてピックアップされたものである。従って、リストアップされたそれぞれのゲームやアプリケーションは、ネットワークの回線品質がそのパフォーマンスに影響する性質のものであり、主としてMMORPGやオンラインFPS等のオンラインゲームである。また、この"プロセス名"は、典型的にはそれぞれのプログラムがファイルとしてOS300において管理される際のファイル名である。即ち、図10に示すプロセス名情報は、実行状態を把握する対象のプログラムをユーザ端末3において特定するための文字列情報が記述された対象プログラム特定情報である。
【0046】
このように、図10に示すようなプロセス名情報を用い、予め特定されているゲームやアプリケーションの実行状態のみを把握することで、不必要な情報まで収集するような非効率な処理を回避して処理を効率化することができる。また、ユーザ端末3内でのファイル名である"プロセス名"に対して一般的に認識されるゲームやアプリケーションの名称を関連付けておくことで、ユーザに対して測定結果を提示する際のユーザによる理解を補助し、ユーザの利便性を向上することができる。
【0047】
プロセス名情報記憶部316に記憶されているプロセス名情報は、ネットワークを介して測定サービスサーバ1からダウンロードされることにより最新の情報に更新される。測定サービスサーバ1においてサービス管理者により最新のプロセス名情報が保存されて管理され、その情報がそれぞれのユーザ端末3における回線測定アプリ310内のプロセス名情報記憶部316にダウンロードされることにより、サービス管理者によって定められた最新の情報に基づくプロセス名チェックが実行可能となる。プロセス名情報の更新はアプリ実行状態判定部315によって任意のタイミングで実行されるが、そのタイミングは例えば回線測定アプリ310がプログラムとして実行されたタイミングである。
【0048】
アプリ実行状態判定部315は、例えばWindows(登録商標)OSの場合には"
tasklist"コマンドを用いることによりプロセス名を取得する処理を実行する。
その結果、ユーザ端末3において実行中のプロセス名が文字列情報として取得される。アプリ実行状態判定部315は、そのようにして取得された文字列を対照として、図10に示す"プロセス名"をキーとして文字列検索を行うことにより、"アプリ名"として登録されているそれぞれのゲームやアプリケーションが実行中か否かを判定する。
【0049】
その結果、実行中であると判定したゲームやアプリケーションの"アプリ名"毎に、チェックを行った時刻が関連付けられて図11に示すような形式で測定結果情報記憶部314にプロセスチェック結果として記録される。即ち、回線品質測定部313およびアプリ実行状態判定部315が連動して、測定結果記憶処理を実行する。また、図11に示すプロセスチェック結果が、実行中プログラム情報として用いられる。
【0050】
尚、上述した"tasklist"コマンド等により実行中のプロセス名を取得する処理は、ユーザ端末3においてOS300により認識され得るプロセス名を一括して取得する場合の他、図10に示す"プロセス名"を順番に参照し、それぞれの"プロセス名"を指定することによりその"プロセス名"が実行中か否かの判定結果を得る処理としても良い。たとえばOS300において認識され得るプロセス名の数が膨大な場合、このような手順のほうが処理を迅速に完了することが可能である。
【0051】
本実施形態に係るS603においてアプリ実行状態判定部315がプロセスチェックおよび記録の処理を実行する間隔は、S602において回線品質測定部313が回線品質の測定処理を実行する間隔よりも長く、例えば1回/分である。このようなS602およびS603の処理により、測定結果表示処理部311が、測定結果情報記憶部314に記憶された情報に基づいて回線測定アプリ310のGUIにおいて回線品質の測定結果をリアルタイムに表示する。即ち、測定結果表示処理部311が、表示情報生成処理を実行する。
【0052】
図12は、回線測定アプリ310のGUIにおいて表示される回線品質の測定結果のリアルタイム画面を示す図である。図12に示すように、測定結果のリアルタイム画面においては、"Ping値"、"パケットロス"および"ジッター"を選択して切り替える。そして"Ping値"の画面においては、図12に示すように測定によって得られたPing値が時系列に折れ線グラフとして表示される。図12の例においては、複数の測定対象サーバ2に対するPing値が実線と破線の異なる線種により表示されている。
【0053】
尚、"ジッター"とは、時系列に連続する測定情報の"Ping値"のブレ幅である、従って、測定結果表示処理部311は、測定結果情報記憶部314に新たな測定情報が記憶されるたびに、新たに記憶された測定情報における"Ping値"と、前回の測定情報における"Ping値"との差分を算出して"ジッター値"を算出する。
【0054】
また、図12に示すように、測定タイミング毎に得られたプロセスチェック結果に基づいてゲームやアプリケーションの実行状態が反映されて表示される。図12の例においては、タイミングtにおいてプロセス名が確認された「ゲームA」が、タイミングtまで継続して実行状態であったことが示されている。
【0055】
上述したように、本実施形態に係るアプリ実行状態判定部315は、1回/分の頻度でプロセスチェックを行い、図11に示す情報を測定結果情報記憶部314に記憶させる。そして、測定結果表示処理部311は、連続するタイミングにおいて同一の"アプリ名"が実行状態であった場合、その間連続してその"アプリ名"のゲームやアプリケーションが実行状態であったとして図12に示すような実行状態の表示情報を生成する。
【0056】
このように、本実施形態に係る回線品質測定システムにおいては、所定頻度でのPing発信による回線品質の測定処理と並行して、Pingを発信するユーザ端末3において実行されているソフトウェアプログラムのプロセス名をチェックし、図11のような情報を所定頻度で保存する。これにより、図12に示すようにユーザ端末3がインターネットにアクセスするための回線品質の測定結果と、ユーザ端末3におけるゲームやアプリケーションの実行状態とを時系列に照らし合わせた表示が可能となる。
【0057】
従来の回線品質測定サービス、つまり図12に示す画面において、タイミングtからtの間の「ゲームA」といった表示が無いサービスの場合、ユーザは回線品質測定に際してどのようなゲームやアプリケーションを実行していたかを自身で覚えておき、その記憶を前提として測定結果を参照する必要がある。これに対して、本実施形態に係るシステムの場合、図12に示すような表示により、回線品質の測定結果とゲームやアプリケーションの実行状態とをひと目で把握することが可能となる。
【0058】
また、リアルタイムに測定結果を参照する場合の他、事後的に測定結果を確認する場合においては、その回線品質測定に際してユーザ端末3において実行されていたゲームやアプリケーションをユーザが記憶していなくとも、客観的データとしてそれを把握することが可能となる。
【0059】
尚、図12に示す画面において"パケットロス"の表示が選択された場合には、"Pin
g値"と同様にパケットロスの値である「True/False」が時系列に表示される
。その他、所定期間毎にパケットロス率を計算して表示することも可能である。また、図12に示す画面において"ジッター"の表示が選択された場合には、上述したように測定結果表示処理部311によってジッターの値が計算された上で図12と同様に時系列に表示される。
【0060】
測定結果表示処理部311が図12に示すような画面の表示情報をリアルタイムに生成する処理と並行して、測定結果送信処理部312は、測定結果情報記憶部314に記憶された情報を集計し、測定結果情報として所定期間毎に測定サービスサーバ1に送信する処理を開始する(S604)。本実施形態に係るS604において測定結果送信処理部312が測定結果情報を送信する間隔は、S603においてアプリ実行状態判定部315がプロセスチェック処理を実行する間隔よりも長く、例えば1回/10分である。
【0061】
図13は、S604において測定結果送信処理部312が測定サービスサーバ1に送信する情報のうち、図9に示す測定結果の情報が集計された測定結果集計情報の内容を示す図である。図13に示すように、本実施形態に係る測定結果集計情報は、"平均Ping
値"、"平均ジッター値"、"平均パケットロス率"、"Ping回数"、"パケットロス回数"
、"Ping合計値"、"ジッター合計値"、"集計開始時刻"、"集計終了時刻"、"計測時間"といった測定結果を集計した情報を含む。また、測定結果集計情報は個別のデータを一意に識別する"データID"を含む。
【0062】
"平均Ping値"は、図9に示す"Ping値"の平均値である。"平均ジッター値"は、時系列に連続する測定情報の"Ping値"のブレ幅の平均値である。"平均パケットロス
率"は、集計対象となる測定情報全体のパケットロス率である。"Ping回数"はその名
のとおりであり、集計対象となる測定情報の個数に等しい。"パケットロス回数"は、集計対象となる測定情報において"パケットロス"が"True"であるデータの個数である。"
Ping合計値"は、集計対象となる測定情報に含まれる"Ping値"の合計値である。
【0063】
"ジッター合計値"は、時系列に連続する測定情報の"Ping値"のブレ幅の合計値である。"集計開始時刻"は、集計対象となる測定情報の"開始時刻"のうち最も早いタイミングの値である。"集計終了時刻"は、集計対象となる測定情報の"開始時刻"のうち最も遅いタイミングの値である。"計測時間"は、"集計開始時刻"から"集計終了時刻"までの時間である。これらの情報は、測定結果送信処理部312が、図9に示すように測定結果情報記憶部314に記憶された情報に基づいて集計を行うことにより生成される。
【0064】
また、本実施形態に係る測定結果集計情報は、図13に示すように、"サーバID"、"
サーバIP"、"クライアントIP"、"ネットワーク接続方式"、"IPv4/IPv6"、"通信方式"、"都道府県"、"市区町村"、"住宅タイプ"、"回線タイプ"、"契約回線名"とい
った情報を含む。これらの情報は図8図9において説明した情報と同一であり、それらの情報がコピーされる。
【0065】
その他、"ユーザID"、"CPU製造会社"、"CPU周波数"、"CPUコア数"、"CP
Uブランド名"、"PC製造者"、"PCモデル名"、"OS"、"OSバージョン"等の情報を
含む。"ユーザID"は、ユーザ端末3を操作するユーザによる本件システムの使用に際して登録されるユーザの識別子である。"CPU製造会社"、"CPU周波数"、"CPUコア
数"、"CPUブランド名"、"PC製造者"、"PCモデル名"、"OS"、"OSバージョン"
は、ユーザ端末3のハードウェアおよびソフトウェアの仕様に関する情報であり、OS300の機能に従って取得可能である。
【0066】
また、S604において測定結果送信処理部312は、アプリ実行状態判定部315によるプロセスチェック処理により測定結果情報記憶部314に記憶された情報を集計したプロセスチェック結果集計情報を測定サービスサーバ1に送信する。図14は、S604において送信されるプロセスチェック結果情報の内容を示す図である。本実施形態に係るプロセスチェック結果情報は、図10に示すプロセス名情報において"アプリ名"が特定されているそれぞれのゲームやアプリケーションが、ユーザ端末3において実行されていた期間を示す情報であり、それぞれの"アプリ名"ごとに生成される。
【0067】
図14に示すプロセスチェック結果情報の生成に際して、測定結果送信処理部312は、測定結果情報記憶部314に記憶された図11に示すプロセスチェック結果の情報を"
アプリ名"ごとに抽出する。そして、測定結果送信処理部312は、抽出された情報のう
ち"時刻"の情報が時系列に連続しているものをグループ化し、グループ化したものの中で最も早い時刻を"実行開始"とし、最も遅い時刻までの時間を"実行期間"として、図14に示す情報を生成する。
【0068】
これにより、それぞれの"アプリ名"が示すゲームやアプリケーションが連続して実行されていた期間毎に図14に示す情報が生成される。また、プロセスチェック結果集計情報は、図14に示すように"ユーザID"の情報を含むが、これは測定結果集計情報の
"ユーザID"に対応している。この"ユーザID"および"実行開始"、"実行期間"の情報により、それぞれのプロセスチェック結果集計情報が示すプロセスの実行状態の情報が、どの回線測定結果の情報に対応したものであるかを判別することができる。この他、"ユー
ザID"に代えて図13に示す"データID"がプロセスチェック結果集計情報に含まれる
ことにより、測定結果集計情報との対応関係を判断することも可能である。
【0069】
S604の処理により、測定サービスサーバ1に送信された図13の測定結果集計情報および図14のプロセスチェック結果集計情報は、測定サービスサーバ1において測定結果収集部102によって受信され、測定結果情報記憶部103に記憶される。すると、測定サービスサーバ1において回線種別判定部104が、測定結果情報記憶部103に記憶された図13に示す情報のうち"契約回線名"の情報の真偽を判定する回線種別判定処理を行う(S605)。
【0070】
図13に示す"契約回線名"の情報は、図7に示すGUIにおいてユーザにより選択された情報である。従って、その情報は必ずしも正しいとは限らない。S605の処理は、そのような"契約回線名"の真偽を確認すると供に、未知のISPの情報を収集する処理である。
【0071】
S605の処理において、回線種別判定部104は、回線判定情報記憶部105に記憶されている回線判定情報を参照する。図15は、本実施形態に係る回線判定情報の内容を示す図である。図15に示すように、本実施形態に係る回線判定情報は、"判定ルール"、"hostname"、"Who is"、"判定結果"の情報が関連付けられた情報である。
【0072】
"判定ルール"は、判定結果を確定するためのルールを示す情報であり、「hostname」、「Who is」、「hostname+Who is」といった値が指定される。例えば「hostname」であれば、IPアドレスに基づいて判明する[hostname]が一致すれば"判定結果"が判明することを示している。
【0073】
"hostname"、"Who is"は、それぞれユーザ端末3のグローバルIPアドレス、即ち図13に示す"クライアントIP"に基づいて得られるその名の通りのネットワーク上の情報を示す。"判定結果"は、"判定ルール"、"hostname"、"Who i
s"によって判定された結果のISPを示す情報である。この"判定結果"の情報と、図1
3に示す"契約回線名"の情報とを比較することにより、S605の回線種別判定処理が実行される。
【0074】
図16を用いて、回線種別判定部104による回線種別判定処理について説明する。図16に示すように、回線種別判定部104は、測定結果情報記憶部103に記憶された測定結果集計情報のうち未だ判定処理の終了していない情報を1つ対照として選択する。そして、選択した情報の"クライアントIP"、即ち情報の送信元に基づいて[Who is]の情報を取得し、その取得結果に基づいて回線種別判定情報を検索する(S1601)。
【0075】
その結果、図15に示すレコードが1つも抽出されない場合、若しくは2つ以上が抽出されて1つに定まらない場合(S1602/YES)、次に回線種別判定部104は、"
クライアントIP"に基づいて[hostname]の情報を取得し、その取得結果に基
づいて回線種別判定情報を検索する(S1603)。
【0076】
S1603の処理の結果、図15に示すレコードが1つも抽出されない場合、若しくは2つ以上が抽出された場合において、S1601において取得された[Who is]の情報と組み合わせることにより"判定ルール"が「hostname+Who is」となるレコードを抽出しても1つに定まらない場合(S1604/YES)、回線種別判定部104は、対象の測定結果集計情報に係るISPは未知のISPであると判断して、対象の測定結果集計情報にISPが未定であることを示すフラグ情報を設定し(S1605)、処理を終了する。
【0077】
他方、S1601やS1603の処理の結果、図15に示すレコードが1つに定まった場合(S1602/NO、S1604/NO)、回線種別判定部104は、1件のみ抽出されたレコードの"判定結果"が、対象の測定結果集計情報における"契約回線名"と一致するか否か、その正否を確認する(S1606)。その結果一致した場合(S1606/YES)、回線種別判定部104は、対象の測定結果集計情報におけるISPの情報は正しいものとして確認済みフラグを追加し(S1607)、処理を終了する。
【0078】
他方、"判定結果"が、"契約回線名"と一致しなかった場合(S1606/NO)、回線種別判定部104は、対象の測定結果集計情報におけるISPの情報は間違っているものとして除外フラグを追加し(S1608)、処理を終了する。即ち、回線種別判定部104が、回線情報判定処理を実行する。このような処理により、判定対象として選択した測定結果集計情報には、未定フラグ、確認済みフラグ、除外フラグのいずれかが付与されることとなり、図16の判定処理が終了していることが確認可能となる。
【0079】
広く一般に普及しているISPの場合、基本的には[hostname]や[Who is]を確認することにより、図15に示すような回線種別判定情報に基づいてISPを特定することが可能である。他方、インターネット上には膨大な種類のISPや一般にはサービスしていない接続サービスも存在し、継続的に新しいサービスも生まれるため、そのすべてを判別するための判定情報を構築することは現実的に難しい。これに対して、図16において説明したように判定不能であった場合には未定フラグを付加して抽出することにより、未知のISPを把握し、オペレータによる手動の確認を経て図15に示す回線種別判定情報をアップデートすることが可能となる。
【0080】
また、S1606の結果不一致となった場合は、即ち図7において入力、選択された情報が間違っていたということを示すが、その場合"契約回線名"のみならず他の情報も不正確である可能性が高い。従って、そのような情報には除外フラグを付し、全体的な情報の統計処理において集計の対象外とすることで、測定結果情報記憶部314に記憶される情報や、その解析結果に基づいて発信される情報の信頼性を向上することができる。
【0081】
尚、図16においては、先に「Who is」の確認処理を行い、次に「hostname」および「hostname+Who is」の確認処理を行う場合を例として説明したが、これは、図15に示す回線種別判定情報に記録されているレコードのうち、"判
例ルール"が[Who is]であるレコードが多い場合に有効であり、[hostna
me]若しくは[hostname+Who is]のレコードが多い場合にはそれを先に行うことが好ましい。これにより、判定処理を最短の手順で完了させる可能性を向上することができる。
【0082】
次に、測定サービスサーバ1が測定結果情報記憶部103に蓄積された情報に基づいて提供する解析結果について説明する。図17は、測定サービスサーバ1が提供する解析結果表示画面の例を示す図である。図17の画面は、例えば、ユーザ端末3がウェブブラウザを介して測定サービスサーバ1によって提供される特定のURL(Uniform Resource Locator)にアクセスすることによりウェブページの情報としてユーザ端末3にダウンロードされて表示される。
【0083】
その他、図17に示す画面は、回線測定アプリ310の測定結果表示処理部311に予め備わっている機能として、上記と同様に測定サービスサーバ1にアクセスしてユーザ端末3に情報がダウンロードされることにより回線測定アプリ310のGUIに表示される。そのような画面を表示するための情報はサービスGUI提供部101によって提供される。即ち、サービスGUI提供部101によって集計結果表示処理が実行される。
【0084】
図17に示すように、本実施形態に係る解析結果表示画面においては、測定結果情報記憶部103に蓄積された測定結果集計情報およびプロセスチェック結果集計情報に基づく解析結果が表示される。サービスGUI提供部101は、それぞれの測定結果集計情報を"契約回線名"ごとに分類してグループ化し、更に、それぞれの測定結果集計情報に対して"データID"で関連付けられているプロセスチェック結果集計情報の"アプリ名"でグループ化する。そして、サービスGUI提供部101は、このようにしてグループ化したデータ、即ち分類結果別にそれぞれに含まれる"平均Ping値"、"平均ジッター値"および"
平均パケットロス率"を更に平均化することにより図17に示すそれぞれの情報を生成す
る。
【0085】
図17に示すような表示により、それぞれのISPごとの"平均Ping値"、"平均ジ
ッター値"および"平均パケットロス率"を一括して把握することが可能となり、それぞれ
のISPの回線品質を比較することができる。また、それぞれのゲームやアプリケーションの実行状態における回線品質をISP別に非実行状態(図17中の"該当なし"の行)と比較することが可能となり、例えば「○×インターネットはゲームAに強い」といったISPとゲームとの相性等を認識することが可能となる。
【0086】
ユーザ端末3において実行されるそれぞれのゲームやアプリケーションを実行するためのプログラムのファイル名、つまり図10に示すプロセス名情報の"プロセス名"は、ゲームやアプリケーションのアップデートによって変更される可能性がある。その結果としてS603におけるプロセスチェック処理においてプロセス名が不一致となり、アプリ実行状態判定部315が実行中のゲームやアプリケーションとして認識できなくなる。
【0087】
このような問題は、上述したようにプロセス名情報記憶部316に記憶されているプロセス名情報が測定サービスサーバ1からの最新データのダウンロードによりアップデートされることで解決される。しかしながら、そのためには測定サービスサーバ1において、ユーザ端末3の回線測定アプリ310にダウンロードさせるためのプロセス名情報における"プロセス名"が常に最新に保たれている必要がある。それを実現するための測定サービスサーバ1の機能について図18を参照して説明する。
【0088】
図18は、測定サービスサーバ1が、ユーザ端末3の回線測定アプリ310にダウンロードさせるプロセス名情報における"プロセス名"を常に最新に保つための動作を示すフローチャートである。図18に示す処理は、測定サービスサーバ1において測定結果収集部102によって実行される。
【0089】
図18に示すように、本実施形態に係る測定結果収集部102は、1回/日の頻度で、図14に示すまとまりを1つのデータとして収集されるプロセスチェック結果集計情報のうち24時間以内に新たに保存されたものを"アプリ名"でグループ化してそのデータの数を集計し、図19に示すように"アプリ名"毎のデータ数のリストを生成する(S1801)。
【0090】
そして、測定結果収集部102は、S1801において生成した集計結果と、前回の処理、即ち1日前の処理において生成した集計結果とで同一の"アプリ名"についての"カウ
ント数"を比較する(S1802)。その結果、1日前の集計結果における"カウント数"
から大きく減少したものが無ければ(S1803/NO)、測定結果収集部102はそのまま処理を終了する。
【0091】
他方、1日前の集計結果における"カウント数"から大きく減少したものがあった場合(S1803/YES)、測定結果収集部102は、その"アプリ名"についてプロセス名情報において関連付けられている"プロセス名"がアップデートにより変更されている可能性があると判断してそのアプリ名を記録し(S1804)、処理を終了する。S1804において"アプリ名"が記憶される情報がプロセス名変更フラグリストである。
【0092】
このようにして、プロセス名変更フラグリストに"プロセス名"が定期的に追加されることにより、測定サービスサーバ1の管理者は、アップデート等により"プロセス名"が変更された可能性のある"アプリ名"を把握することができる。最終的なプロセス名情報の更新や追加は管理者が情報を確認し手動で行う必要があるが、プロセス名変更フラグリストにより管理者はその必要性を早期に認識することが可能となる。
【0093】
尚、S1803における急減少の判断は、例えば前回の集計結果における"カウント数"と、今回の集計結果における"カウント数"との比率に基づいて判断される。具体的には、今回の集計結果における"カウント数"が前回の集計結果における"カウント数"の50%以下であれば、急減少が発生していると判断することができる。この判断のしきい値は、日々の"カウント数"の変動幅に応じて任意に設定することが可能である。
【0094】
次に、上記のようにプロセス名が変更された場合のユーザ端末3における機能について説明する。プログラムのアップデートなどによりユーザ端末3にインストールされたゲームやアプリケーションのプロセス名が変更され、且つプロセス名情報記憶部316に記憶されているプロセス名情報がそれに対応して更新されていない場合、図6のS603におけるプロセスチェック処理において、"tasklis"コマンド等によりアプリ実行状態判定部315がOS300から取得したプロセス名が、プロセス名情報記憶部316に記憶されているプロセス名情報の"プロセス名"と不一致となる。
【0095】
その結果、アプリ実行状態判定部315は、その"アプリ名"に対応するゲームやプリケーションが仮に実行中であったとしても、"プロセス名"の不一致により実行状態を認識することができないため、図11において説明したプロセスチェック結果を生成しない。従って、図12において説明したGUIにおいては、例えば"ゲームA"がユーザ端末3において実行中であるにも関わらず、図12に示すように"ゲームA"が実行状態であることを示す表示にはならない。
【0096】
そのような表示により、ユーザ端末3を操作するユーザは、ゲームやアプリケーションの実行状態が正確に把握されていないことを認識することができる。本実施形態に係るシステムは、そのような状態をシステムの管理者に報告するためのGUIを回線測定アプリ310に設けることにより、多くのユーザによる情報提供を受け付け、図18において説明したような処理により蓄積されるプロセス名変更フラグリストに対応して新しいプロセス名を把握するための情報を収集することができる。
【0097】
具体的には、図12に示すようなGUIにおいて不具合を認識したユーザが不具合を報告するためにクリックやタッチ操作を行う操作部が設けられ、その操作部が操作されることにより図20に示すような画面が表示される。図20は、ユーザ端末3から測定サービスサーバ1に対して、プロセス名情報の更新を要望するアプリ実行状態エラー報告画面のGUIを示す図である。
【0098】
図20に示すように、アプリ実行状態エラー報告画面においては、ゲームやプログラムの実行状態が回線品質測定結果の画面において反映されない要因の説明とともに、該当のゲームやアプリケーションを実行状態として報告することを促すメッセージが表示される。また、図20に示すように、実行状態が反映されなくなった対象の"アプリ名"を入力若しくは選択する入力欄が表示される。図20に示す画面の表示は、例えば測定結果表示処理部311の機能によって実現される。
【0099】
図20に示す画面においてユーザが「送信」ボタンをクリック若しくはタップすると、操作を受け付けた測定結果表示処理部311は、S603におけるアプリ実行状態判定部315と同様に、OS300の機能を介してユーザ端末3において実行中であるソフトウェア・プログラムのリストであるプロセス名の文字列情報を取得する。そして、測定結果表示処理部311は、取得されたすべてのプロセス名の文字列情報と、図20に示す"ア
プリ名"の入力欄において入力若しくは選択された文字列情報とを測定サービスサーバ1
に送信する。
【0100】
その結果、測定サービスサーバ1においては、図20に示す入力欄において入力若しくは選択された"アプリ名"により、プロセス名が変更された可能性のあるゲームやアプリケーションを認識し、同時に受信したプロセス名の文字列情報の一覧から、その"アプリ名"に対応するプロセス名を調べて、プロセス名情報を更新し、若しくは新規に追加することが可能となる。このように、図18図20において説明した測定サービスサーバ1および回線測定アプリ310の機能により、管理者の手動によるプロセス名情報の更新を補助することが可能となる。
【0101】
以上、本実施形態に係る回線品質測定システムにおいては、ユーザ端末3におけるPingの応答結果の収集による回線品質の測定処理と並行して、端末内で実行されているプログラムの情報を収集して記録する。これにより、アプリケーションの実行状態における回線品質の測定を簡易化することが可能となる。
【0102】
実施の形態2.
実施の形態1においては、回線品質測定に合わせて行うプロセスチェックにより、図11に示すようにプロセスチェックを行った"時刻"と、プロセスが実行中であることが確認された"アプリ名"とが記録される場合を例として説明した。本実施形態においては、それぞれのプロセスが実行中であるか否かのみでなく、それぞれのプロセスがユーザ端末3の動作状態やスペックに与えている影響に関する情報を収集する例について説明する。
【0103】
そのため、本実施形態に係るアプリ実行状態判定部315は、図6のS603において、実施の形態1と同様の処理を行うとともに、実行状態であることが確認されたプロセスについてユーザ端末3におけるハードウェア資源の使用状態に関する情報を取得する。このハードウェア資源の使用状態に関する情報は、例えば"CPU使用率"、"メモリ使用量"、"ディスクアクセス"、"ネットワーク使用量"等の情報である。
【0104】
その結果、本実施形態に係るアプリ実行状態5は、図11に示すような情報に代えて図21に示すような情報を取得し、測定結果情報記憶部314に記憶させる。図21に示す情報のうち"CPU使用率"は、その"時刻"において"プロセス名"が示すプロセスのために、ユーザ端末3においてCPU10の計算力が消費されていた割合であり、単位は(%)で示される。"メモリ使用量"は、その"時刻"において"プロセス名"が示すプロセスのために、ユーザ端末3においてRAM20の容量が専有されている量であり、単位は(MB)で示される。
【0105】
"ディスクアクセス"は、その"時刻"において"プロセス名"が示すプロセスのために、
ユーザ端末3においてHDD40との間での情報転送量であり、単位は(MB/秒)で示される。"ネットワーク使用量"は、その"時刻"において"プロセス名"が示すプロセスのために、ユーザ端末3においてネットワークを介して行われている通信の情報転送量であり、単位は(Mbps)で示される。これらの情報は、OS300によって提供される機能に基づいて取得され、プログラム別使用状態情報として用いられる。
【0106】
図22は、実施の形態1の図12に代えてユーザ端末3において表示される回線品質の測定結果のリアルタイム画面を示す図である。図22に示すように、本実施形態に係る測定結果のリアルタイム画面においては、図12において説明した情報に加えて、実行状態が確認されたプロセスに関して図21に示すように記録されたプロセスチェック結果の情報に基づき、"CPU使用率"、"メモリ使用量"、"ディスクアクセス"、"ネットワーク使
用量"等の情報(以降、「リソース情報」とする)が、回線品質の測定結果に合わせてリ
アルタイムに時系列表示される。
【0107】
図22の例においては、上述したリソース情報のいずれか1つがユーザにより選択されて表示される場合が例として示されているが、複数のリソース情報が同時に表示されても良い。このような表示により、回線品質の時系列な変化とリソース情報の時系列な変化を比較することが可能となり、どのようなリソース情報が回線品質の時系列な変化に影響しているかを把握、検討する事が可能となる。
【0108】
また、実施の形態1において測定結果送信処理部312は、図14に示すようにプロセスチェック結果を集計して測定サービスサーバ1に送信したが、本実施形態に係る測定結果送信処理部312は、図21に示すように取得されたプロセスチェック結果を集計することなくそのまま測定サービスサーバ1に送信する。これにより、測定サービスサーバ1においても、ユーザ端末3と同様にリソース情報の時系列な変化を示す情報が記憶される。従って、図17において説明したようにISPと実行状態のゲームやアプリケーションとのマトリクスで表示された回線品質の測定結果におけるそれぞれのセルにおいて、リソース情報の時系列な変化を表示することが可能となる。
【0109】
例えば、図17に「○×インターネット」と「ゲームA」とで決定されるセルに示される回線品質の測定結果が他のセルに比べて悪かったとする。すると、それを確認したユーザとしては、その要因を知りたいと考える。そのような要望に対して、そのセルがクリックやタッチ操作などにより選択された場合に、上述したようなリソース情報の時系列な変化を示す画面(以降、「特定期間リソース変化画面」とする)を提供することにより、そのようなユーザの要望に応えることが可能となる。
【0110】
図23は、そのような特定期間リソース変化画面の例を示す図である。特定期間リソース変化画面を表示するための情報の生成に際して、サービスGUI提供部101は、まずユーザによる図17に示す解析結果表示画面に含まれるそれぞれのセルのうち1つを指定する操作を受け付け、その解析結果表示画面を表示するために集計の対象となっている測定結果集計情報の期間、即ち図13に示す"集計開始時刻"のうち最も早いものと"集計終
了時刻"のうち最も遅いものを取得すると供に、これが、図23に示す「*年*月*日~
*年*月*日」の表示に反映される。
【0111】
また、サービスGUI提供部101は、ユーザによって指定されたセルにおいて集計対象となっている測定結果集計情報の"契約回線名"を取得する。これが、図23に示す「○×インターネット」の表示に反映される。
【0112】
更に、サービスGUI提供部101は、ユーザによって指定されたセルにおいて集計対象となっている個々の測定結果集計情報ごとに、"集計開始時刻"、"集計終了時刻"および"ユーザID"を抽出して条件とすると供に、ユーザによって指定されたセルに対応するアプリ名の"プロセス名"を条件として収集されたプロセスチェック結果を絞り込み、集計の対象とするプロセスチェック結果の情報を抽出する。このようにして抽出したプロセスチェック結果に基づき、サービスGUI提供部101は、図22において"CPU使用率"等の時系列な変化を示す情報を表示する場合と同様に表示情報を生成する。
【0113】
尚、測定サービスサーバ1は複数のユーザ端末3からプロセスチェック結果の情報を収集するため、同一の"時刻"を示す情報が複数存在する場合があり得る。そのような場合、サービスGUI提供部101は、複数のデータの平均値を算出してそれぞれのタイミングにおける値を生成する。このような処理により、より多くのサンプル数に基づいた定量的な解析結果を提供することが可能となる。
【0114】
また、本実施形態に係る回線品質測定システムは、ユーザ端末3において収集された図21に示すようなプロセスチェック結果を解析することにより、ユーザに対してハードウェア環境の改善提案をすることが可能となる。図24を参照して、本実施形態に係る改善提案機能について説明する。
【0115】
図24は、本実施形態に係る改善提案機能の動作を示すフローチャートである。図24に示す動作は、図6において説明したS602の動作に応じて開始される。図24に示すように、本実施形態に係る回線品質測定部313は、S602の処理を開始すると、繰り返し取得されるPingの返り値に基づいて回線品質が低下したか否かを監視する(S2401)。
【0116】
S2401において回線品質測定部313が回線品質の低下を判断する条件は、例えばパケットロス率やPing値の変化量に対するしきい値で実現される。パケットロス率を用いる場合、回線品質測定部313は、1回/秒の頻度でPinの応答結果を取得するたびに、[パケットロス数/Ping回数]を計算してパケットロス率を計算する。そして、その計算結果として得られるパケットロス率が予め定められたしきい値を超えた場合に、回線品質が低下したと判断する。
【0117】
尚、パケットロス率の計算に際して参照するパケット数は、S602の動作を開始してから取得されたすべてのPingの応答を対象としても良いし、過去の所定回数分のPingの応答を対象としても良い。計算の対象とする過去のPingの回数としては、例えば100回であり、この場合過去100秒間におけるパケットロス率が判断の対象となる。
【0118】
他方、回線品質の低下の判断においてPing値を用いる場合、回線品質の低下を判断する条件はPing値の変化量に対するしきい値で実現される。Ping値の変化量を用いる場合、回線品質測定部313は、1回/秒の頻度でPinの応答結果を取得するたびに、その値が最低値若しくは最高値であるかを判断し、最低値および最高値を更新していく。
【0119】
そして、最低値と最高値との差が予め予め定められたしきい値を超えた場合に、回線品質測定部313は、回線品質が低下したと判断する。尚、この場合においても、上述したパケットロス率の場合と同様に、判断対象とする過去のPingの応答数に上限を設けても良い。この他、S2401における判断対象としてジッター値を用いて判断しても良い。
【0120】
S2401の判断の結果、回線品質が低下していると判断された場合(S2401/YES)、アプリ実行状態判定部315は、図21に示すように所定期間毎に取得されるプロセスチェック結果を参照して、ユーザ端末3のハードウェアリソースの状態を判断するためのリソース情報を取得する(S2402)。
【0121】
S2402の処理は、図21に示すそれぞれのリソース情報ごとに定められたルールに基づいて値を取得する。そのルールとは、例えば過去の所定期間におけるプロセスチェック結果の"CPU使用率"、"メモリ使用量"、"ディスクアクセス"、"ネットワーク使用量"の値について最も高い値や、所定期間の平均値などである。そのようにしてリソース情報を取得すると、アプリ実行状態判定部315は、リソース状態の変化に基づいてハードウェアリソースの改善点を判断するためのテーブルである要因特定情報を参照する。本実施形態において、要因特定情報はプロセス名情報記憶部316に記憶されている。
【0122】
図25は、本実施形態に係る要因特定情報の例を示す図である。図25に示すように、本実施形態に係る要因特定情報は、判定に際してどのリソース情報を判定対象とするかを示す"判定対象"、そのリソース情報と比較する"しきい値"、その条件が満たされた場合にユーザに対して提示するメッセージを特定する"判定結果"が関連付けられた情報である。即ち、図25に示す情報が、ユーザ端末3のハードウェア環境が不足していることを判断するための判断情報として用いられる。
【0123】
図25において、例えば"CPU使用率"の場合、S2402において取得された"CP
U使用率"の値が"しきい値"以上であれば、その条件が満たされ、「メッセージA」をユ
ーザに提示するべきであると判断される。「メッセージA」の具体的な内容は、例えば、「○○のアプリケーションのCPUの使用率が○○%を超え、パケットロス率が高くなっています。より性能の高いCPUを使用することにより、〇〇のアプリケーションをより快適に実行することが可能です。」といった内容である。
【0124】
また、要因特定情報を参照しても条件が一致するレコードが存在しない場合、"CPU
使用率"等のリソース情報には要因が存在しないものとして専用のメッセージが別途用意
されている。そのメッセージは例えば「パケットロス率が高くなっていますが、端末のハードウェア状況に問題はありません。ローカルネットワークもしくは外部のネットワークの状況に問題がある可能性があります。tracerouteを行って原因の切り分けを行いましょう。」といった内容である。
【0125】
このように、S2403の処理により要因特定情報を参照して判定結果のメッセージが特定されると、測定結果表示処理部311によってそのメッセージがユーザ端末3の表示部に表示される(S2404)。このような処理により、本実施形態に係る改善提案機能の動作が完了する。即ち、回線測定アプリ310の各部が連動して環境判断処理を実行する。
【0126】
このような機能により、本実施形態に係る回線皮質測定システムにおいては、上記と同様に回線品質の測定やそれと並行したプログラムの実行状態、並びにプログラムの実行に際して用いられているユーザ端末3のハードウェアリソースの状態を確認することが可能である。それに加えて、それぞれのプログラムをより快適に実行するための環境面の改善をユーザに対して提案することが可能となり、よりユーザの利便性を向上することができる。
【0127】
尚、上記実施形態においては、図25に示すように"CPU使用率"等のそれぞれの値をしきい値と比較する場合を例として説明した。この他、例えば多くのデータに基づいてそれぞれのリソース情報の通常の値(以降、「通常値」とする)を記録しておき、その通常値との差や、変化率をしきい値としても良い。これにより、値そのものに対してしきい値を設定するよりも、回線品質の低下に影響しているリソース状態の変化をより適切に判断することができる。
【0128】
また、上記実施形態においては、ユーザ端末3において実行中のプログラムそれぞれについて、図21に示すように"CPU使用率"等のハードウェアリソースの使用状況を取得し、その解析結果に基づいて図25に示すようなテーブルを利用して判断する場合を例として説明した。この他、例えばユーザ端末3全体での"CPU使用率"等のハードウェアリソースの使用状況を取得し、それぞれのプログラムの使用状況が全体に対して占める割合を参照するようにしても良い。これにより、それぞれのユーザによる電子機器の使用態様に応じたハードウェアリソースの改善提案を行うことが可能となる。
【0129】
また、上記の説明においては、ユーザ端末3において改善提案機能を実現する場合を例として説明した。この他、ユーザ端末3から測定サービスサーバ1に送信された情報に基づいて測定サービスサーバ1側で同様の処理を実行し、抽出されたメッセージをユーザ端末3に通知しても良い。
【符号の説明】
【0130】
1 測定サービスサーバ
2、2a、2b 測定対象サーバ
3、3a、3b ユーザ端末
10 CPU
20 RAM
30 ROM
40 HDD
50 I/F
60 LCD
70 操作部
80 バス
101 サービスGUI提供部
102 測定結果収集部
103 測定結果情報記憶部
104 回線種別判定部
105 回線判定情報記憶部
300 OS
310 回線測定アプリ
311 測定結果表示処理部
312 測定結果送信処理部
313 回線品質測定部
314 測定結果情報記憶部
315 アプリ実行状態判定部
316 プロセス名情報記憶部
321 ゲームAアプリ
322 ゲームBアプリ
323 映像編集アプリ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25