(57)【要約】【課題】各地域間のＰ２Ｐ通信の混雑度を解析する技術を提供する。【解決手段】通信解析装置は、各通信端末から通信履歴を取得する履歴取得部を備える。通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含む。通信解析装置は、履歴取得部によって取得された複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と送信先のＩＰアドレスが属する送信先地域とを特定する地域特定部と、送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力する出力部とを備える。【選択図】図２
2020108049.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信端末の各々から当該通信端末の通信履歴を取得するための履歴取得部を備え、前記複数の通信端末の各々は、他の通信端末とＰ２Ｐ（Peer to Peer）通信するように構成されており、前記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰ（Internet  Protocol）アドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含み、さらに、
前記履歴取得部によって取得された複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するための地域特定部と、
前記地域特定部によって特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するための混雑度推定部と、
前記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するための出力部とを備える、通信解析装置。
【請求項２】
前記通信解析装置は、前記複数の地域を含むマップデータを取得するためのマップ取得部をさらに備え、
前記出力部は、前記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を前記マップデータ上に表わした状態で、当該マップデータを前記情報として出力する、請求項１に記載の通信解析装置。
【請求項３】
前記マップデータ上に表わされる混雑度の各々は、前記複数の地域間を繋ぐ画像オブジェクトで表わされ、
前記画像オブジェクトは、Ｐ２Ｐ通信の混雑度に応じた表示態様で表わされる、請求項２に記載の通信解析装置。
【請求項４】
前記出力部は、前記複数の地域の各地域に属する通信端末の多さを前記マップデータ内の各地域にさらに表わした状態で当該マップデータを出力する、請求項２または３に記載の通信解析装置。
【請求項５】
前記複数の通信履歴に含まれる各ＩＰアドレスセットには、他の通信端末とのＰ２Ｐ通信時における通信時間がさらに対応付けられており、
前記混雑度推定部は、前記複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて前記地域特定部によって特定された前記送信元地域と前記送信先地域との各セットと、当該各ＩＰアドレスセットに対応付けられている前記通信時間とに基づいて、前記複数の地域間におけるＰ２Ｐ通信の混雑度の各々を推定する、請求項１〜４のいずれか１項に記載の通信解析装置。
【請求項６】
前記通信解析装置は、前記混雑度推定部による前記複数の地域の各地域間におけるＰ２Ｐ通信の混雑度の推定結果を時刻情報に対応付けて格納するための記憶装置をさらに備え、
前記出力部は、前記記憶装置に格納されている複数の前記推定結果の内の、指定された時刻に対応する推定結果を出力する、請求項１〜５のいずれか１項に記載の通信解析装置。
【請求項７】
通信解析システムであって、
複数の通信端末を備え、前記複数の通信端末の各々は、他の通信端末とＰ２Ｐ通信するように構成されており、
前記複数の通信端末と通信可能に構成される通信解析装置をさらに備え、
前記通信解析装置は、
前記複数の通信端末の各々から当該通信端末の通信履歴を取得するための履歴取得部を含み、前記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上有し、
前記通信解析装置は、さらに、
前記履歴取得部によって取得された複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するための地域特定部と、
前記地域特定部によって特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するための混雑度推定部と、
前記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するための出力部とを含む、通信解析システム。
【請求項８】
複数の通信端末の各々から当該通信端末の通信履歴を取得するステップを備え、前記複数の通信端末の各々は、他の通信端末とＰ２Ｐ（Peer to Peer）通信するように構成されており、前記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含み、さらに、
前記取得された複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するステップと、
前記特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するステップと、
前記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するステップとを備える、通信解析方法。
【請求項９】
コンピュータに実行される通信解析プログラムであって、
前記通信解析プログラムは、前記コンピュータに、
複数の通信端末の各々から当該通信端末の通信履歴を取得するステップを実行させ、前記複数の通信端末の各々は、他の通信端末とＰ２Ｐ（Peer to Peer）通信するように構成されており、前記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含み、
前記通信解析プログラムは、前記コンピュータに、さらに、
複数の前記通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するステップと、
前記特定するステップで特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するステップと、
前記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するステップとを実行させる、通信解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、Ｐ２Ｐ（Peer to Peer）通信に関する通信履歴を解析するための技術に関する。
【背景技術】
【０００２】
近年、ブロックチェーン技術が注目されている。ブロックチェーン技術は、たとえば、仮想通貨の取引に応用されている。
【０００３】
ブロックチェーンは、ひと繋ぎの複数のブロックで構成される。各ブロックには、仮想通貨の複数の取引情報など種々の情報が含まれており、ブロックチェーンには、取引が開始されてから現在までの全世界の全取引情報が記憶されている。
【０００４】
ブロックチェーンは、仮想通貨の取引に参加している全てのユーザ端末に保持される。仮想通貨の取引情報がユーザ端末同士で管理されることで、サーバーなどの管理端末が必要なくなる。これにより、仮想通貨の取引時において、他のユーザとのエンドツーエンドの取引が実現される。このようなエンドツーエンドの取引は、ユーザ端末間のＰ２Ｐ通信によって実現される。
【０００５】
このようなＰ２Ｐ通信に関し、種々の技術が開発されている。一例として、非特許文献１は、Ｐ２Ｐネットワークに参加しているユーザ端末の分布をマップ上に開示している。ユーザは、当該マップを確認することで、各地域においてＰ２Ｐネットワークに参加しているユーザ端末の数を容易に把握することができる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Supported by EARN.COM、"BITNODES"、[online]、[２０１８年１１月２１日検索]、インターネット（https://bitnodes.earn.com/）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
Ｐ２Ｐネットワークに流れている情報をいち早く受信するために、地域間のＰ２Ｐ通信の混雑度を把握することが求められている。非特許文献１に開示されるマップは、各地域におけるユーザ端末数を示しているだけで、地域間のＰ２Ｐ通信の混雑度を示しているわけではない。したがって、Ｐ２Ｐ通信の混雑度を示す技術が必要とされている。
【課題を解決するための手段】
【０００８】
本開示の一例では、通信解析装置は、複数の通信端末の各々から当該通信端末の通信履歴を取得するための履歴取得部を備える。上記複数の通信端末の各々は、他の通信端末とＰ２Ｐ（Peer to Peer）通信するように構成されている。上記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰ（Internet  Protocol）アドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含む。上記通信解析装置は、さらに、上記履歴取得部によって取得された複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するための地域特定部と、上記地域特定部によって特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するための混雑度推定部と、上記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するための出力部とを備える。
【０００９】
本開示の一例では、上記通信解析装置は、上記複数の地域を含むマップデータを取得するためのマップ取得部をさらに備える。上記出力部は、上記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を上記マップデータ上に表わした状態で、当該マップデータを上記情報として出力する。
【００１０】
本開示の一例では、上記マップデータ上に表わされる混雑度の各々は、上記複数の地域間を繋ぐ画像オブジェクトで表わされる。上記画像オブジェクトは、Ｐ２Ｐ通信の混雑度に応じた表示態様で表わされる。
【００１１】
本開示の一例では、上記出力部は、上記複数の地域の各地域に属する通信端末の多さを上記マップデータ内の各地域にさらに表わした状態で当該マップデータを出力する。
【００１２】
本開示の一例では、上記複数の通信履歴に含まれる各ＩＰアドレスセットには、他の通信端末とのＰ２Ｐ通信時における通信時間がさらに対応付けられている。上記混雑度推定部は、上記複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて上記地域特定部によって特定された上記送信元地域と上記送信先地域との各セットと、当該各ＩＰアドレスセットに対応付けられている上記通信時間とに基づいて、上記複数の地域間におけるＰ２Ｐ通信の混雑度の各々を推定する。
【００１３】
本開示の一例では、上記通信解析装置は、上記混雑度推定部による上記複数の地域の各地域間におけるＰ２Ｐ通信の混雑度の推定結果を時刻情報に対応付けて格納するための記憶装置をさらに備える。上記出力部は、上記記憶装置に格納されている複数の上記推定結果の内の、指定された時刻に対応する推定結果を出力する。
【００１４】
本開示の他の例では、通信解析システムは、複数の通信端末を備える。上記複数の通信端末の各々は、他の通信端末とＰ２Ｐ通信するように構成されている。上記通信解析システムは、上記複数の通信端末と通信可能に構成される通信解析装置をさらに備える。上記通信解析装置は、上記複数の通信端末の各々から当該通信端末の通信履歴を取得するための履歴取得部を含む。上記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上有する。上記通信解析装置は、さらに、上記履歴取得部によって取得された複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するための地域特定部と、上記地域特定部によって特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するための混雑度推定部と、上記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するための出力部とを含む。
【００１５】
本開示の他の例では、通信解析方法は、複数の通信端末の各々から当該通信端末の通信履歴を取得するステップを備える。上記複数の通信端末の各々は、他の通信端末とＰ２Ｐ（Peer to Peer）通信するように構成されている。上記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含む。通信解析方法は、さらに、上記取得された複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するステップと、上記特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するステップと、上記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するステップとを備える。
【００１６】
本開示の他の例では、上記通信解析プログラムは、上記コンピュータに、複数の通信端末の各々から当該通信端末の通信履歴を取得するステップを実行させる。上記複数の通信端末の各々は、他の通信端末とＰ２Ｐ（Peer to Peer）通信するように構成されている。上記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含む。上記通信解析プログラムは、上記コンピュータに、さらに、複数の上記通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するステップと、上記特定するステップで特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するステップと、上記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するステップとを実行させる。
【図面の簡単な説明】
【００１７】
【図１】通信解析システムの装置構成の一例を示す図である。
【図２】通信解析装置による通信混雑度の推定処理を実現するための機能モジュールの一例を示す図である。
【図３】通信端末のハードウェア構成の一例を示す模式図である。
【図４】通信解析装置のハードウェア構成の一例を示す模式図である。
【図５】ユーザ端末のハードウェア構成の一例を示す模式図である。
【図６】地域特定部の機能構成の一例を示す図である。
【図７】通信端末の各々から取得した通信履歴をマージする過程を示す図である。
【図８】マージ結果から解析結果を生成する過程を示す図である。
【図９】解析結果に基づいて、送信元地域および送信先地域を特定する過程を示す図である。
【図１０】混雑度推定部の機能構成の一例を示す図である。
【図１１】各ＩＰアドレスをマップデータに配置している様子を示す図である。
【図１２】混雑度演算部による処理を概略的に示す図である。
【図１３】配信情報の表示画面の一例を示す図である。
【図１４】通信端末が実行する処理の一部を表わすフローチャートである。
【図１５】通信解析装置が実行する処理の一部を表わすフローチャートである。
【図１６】ユーザ端末が実行する処理の一部を表わすフローチャートである。
【図１７】仮想通貨に利用されるブロックチェーンを示す図である。
【図１８】マイニング処理を概略的に示す図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。
【００１９】
＜Ａ．通信解析システム５００＞
図１を参照して、通信解析システム５００について説明する。図１は、通信解析システム５００の装置構成の一例を示す図である。
【００２０】
図１に示されるように、通信解析システム５００は、複数の通信端末１００と、１つ以上の通信解析装置２００と、１つ以上のユーザ端末３００とを含む。
【００２１】
通信端末１００は、たとえば、ノート型またはデスクトップ型のＰＣ（Personal Computer）、タブレット端末、スマートフォン、または、通信機能を有するその他の情報処理端末である。通信解析システム５００を構成する通信端末１００の数は任意であり、たとえば、数台〜数億台である。説明を簡素化するために、図１には６台の通信端末１００Ａ〜１００Ｆのみが示されている。通信端末１００Ａ〜１００Ｆは、それぞれ、異なる地域に配置されている。以下では、通信端末１００Ａ〜１００Ｆを総称して通信端末１００ともいう。
【００２２】
通信端末１００は、通信相手のＩＰアドレスを元に他の通信端末とのＰ２Ｐ通信を実現する。すなわち、通信端末１００は、通信相手のＩＰアドレスさえ把握していれば、任意の通信端末とＰ２Ｐ通信することができる。図１の例では、通信端末１００Ａは、通信端末１００ＢのＩＰアドレスと、通信端末１００ＦのＩＰアドレスと、通信端末１００ＦのＩＰアドレスとを保持しており、これらのＩＰアドレスを介して通信端末１００Ｂ，１００Ｅ，１００ＦのそれぞれとＰ２Ｐ通信を実現する。ある局面において、通信端末１００は、既存のＰ２Ｐネットワークに参加することで、他の通信端末とのＰ２Ｐ通信を実現する。この場合、通信端末１００は、対象のＰ２Ｐネットワークに参加している通信端末のＩＰアドレスのリストをサーバーなどから取得する。通信端末１００は、取得したリストに基づいて、対象のＰ２Ｐネットワークに参加している他の通信端末とのＰ２Ｐ通信を実現する。他の局面において、通信端末１００は、自らＰ２Ｐネットワークを構成し、当該Ｐ２Ｐネットワークに参加する他の通信端末とのＰ２Ｐ通信を実現する。
【００２３】
通信端末１００Ａ〜１００Ｆの一部または全部は、通信解析装置２００に通信履歴１３０を発信する機能を有する。図１の例では、通信端末１００Ａ，１００Ｃ，１００Ｅが通信履歴１３０を発信する機能を有する。より具体的には、発信用の通信端末１００Ａ，１００Ｃ，１００Ｅは、それぞれ、他の通信端末とのＰ２Ｐ通信時における通信内容を自端末の通信履歴１３０に書き込む。当該通信履歴１３０は、通信解析装置２００に定期的に送信される。
【００２４】
通信解析装置２００は、たとえば、ノート型またはデスクトップ型のＰＣ、タブレット端末、スマートフォン、または、通信機能を有するその他の情報処理端末である。図１には、１台の通信解析装置２００が示されているが、通信解析システム５００を構成する通信解析装置２００の数は任意である。
【００２５】
通信解析装置２００は、発信用の通信端末１００Ａ，１００Ｃ，１００Ｅの各々から収集した通信履歴１３０に基づいて、各地域間のＰ２Ｐ通信の混雑度を推定する。通信混雑度の推定処理の詳細については後述する。通信解析装置２００は、通信混雑度の推定結果を配信情報２３０としてユーザ端末３００に配信する。
【００２６】
ユーザ端末３００は、たとえば、ノート型またはデスクトップ型のＰＣ、タブレット端末、スマートフォン、または、通信機能を有するその他の情報処理端末である。図１には、２台のユーザ端末３００が示されているが、通信解析システム５００を構成するユーザ端末３００の数は任意である。
【００２７】
ユーザ端末３００は、通信解析装置２００から受信した配信情報２３０に基づいて、各地域間の通信混雑度をユーザに提示する。配信情報２３０の表示態様については後述する。
【００２８】
なお、図１の例では、通信端末１００およびユーザ端末３００が区別されているが、通信端末１００およびユーザ端末３００は、必ずしも区別される必要はない。すなわち、ユーザ端末３００は、通信端末１００と同様にＰ２Ｐネットワークを構成する１つの端末であってもよいし、Ｐ２Ｐネットワークを構成しない端末であってもよい。
【００２９】
＜Ｂ．通信解析装置２００の概要＞
次に、図２を参照して、上述の通信解析装置２００の機能の概要について説明する。図２は、通信解析装置２００による通信混雑度の推定処理を実現するための機能モジュールの一例を示す図である。
【００３０】
図２に示されるように、通信解析装置２００は、ハードウェア構成として、制御装置２０１を含む。制御装置２０１は、後述の通信解析プログラム２２２（図４参照）の実行時において、履歴取得部２５０、マップ取得部２５３、地域特定部２５４、混雑度推定部２５８、出力部２６６として機能する。
【００３１】
履歴取得部２５０は、複数の通信端末１００（図１参照）の各々から通信履歴１３０を取得する。通信履歴１３０の各々は、Ｐ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含む。通信履歴１３０は、ＩＰアドレスセットの他にも、送信元のＭＡＣ（Media  Access  Control）アドレス、送信先のＭＡＣアドレス、通信データの発信時刻、通信データの受信時刻、通信プロトコル、通信量、通信データの内容などを含んでもよい。取得された通信履歴１３０の各々は、地域特定部２５４に出力される。
【００３２】
マップ取得部２５３は、複数の地域を含むマップデータ２２８を取得する。マップデータ２２８の取得先は任意である。一例として、マップデータ２２８は、通信解析装置２００と通信可能な外部サーバ（図示しない）から取得される。あるいは、マップデータ２２８は、通信解析装置２００内の記憶装置に予め格納されていてもよい。この場合、マップ取得部２５３は、当該記憶装置からマップデータ２２８を取得する。取得されたマップデータ２２８は、地域特定部２５４に出力される。
【００３３】
地域特定部２５４は、履歴取得部２５０によって取得された複数の通信履歴１３０に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定する。送信元地域および送信先地域は、たとえば、ＩＰアドレスの値から特定される。地域特定部２５４によって特定された送信元地域および送信先地域は、混雑度推定部２５８に出力される。
【００３４】
なお、送信元地域および送信先地域は、取得されたＩＰアドレスセットの全てについて特定される必要はなく、ＩＰアドレスセットの一部について特定されてもよい。たとえば、重複するＩＰアドレスについては対応する地域が一度特定されれば２回目以降は特定される必要はない。この点に着目して、地域特定部２５４は、取得されたＩＰアドレスセットの一部について送信元地域および送信先地域を特定してもよい。
【００３５】
各ＩＰアドレスについて特定された送信元地域および送信先地域は、Ｐ２Ｐ通信の混雑度を示す指標になり得る。一例として、同一の地域間でＰ２Ｐ通信が行なわれている数が多いほど、当該地域間では通信が混雑していることとなる。他にも、送信元地域および送信先地域は、通信時における地理的な影響を反映している。これらの点に着目して、混雑度推定部２５８は、地域特定部２５４によって特定された送信元地域と送信先地域との各セットに基づいて、マップデータ２２８に規定される各地域間におけるＰ２Ｐ通信の混雑度を推定する。
【００３６】
出力部２６６は、各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力する。ここでいう「混雑度」とは、通信の遅延量（遅延時間）を表わす指標である。すなわち、「混雑度」が高いほど、応答時間が長いことを意味し、「混雑度」が低いほど、応答時間が短いことを意味する。出力態様の一例として、出力部２６６は、各地域間においてＰ２Ｐ通信の混雑度を表わしたマップデータ２３５を配信情報２３０としてユーザ端末３００（図１参照）に配信する。マップデータ２３５上に表わされる混雑度は、たとえば、画像オブジェクトＯＢで表わされる。画像オブジェクトＯＢは、画面を構成する部品（ＵＩ（User Interface）部品）である。画像オブジェクトＯＢは、たとえば、矢印や線などを含む。画像オブジェクトＯＢは、マップデータ２３５上の各地域間を繋ぐように配置され、Ｐ２Ｐ通信の混雑度に応じた表示態様で表わされる。
【００３７】
図２の例では、画像オブジェクトＯＢが矢印で示されている。Ｐ２Ｐ通信の混雑度は、たとえば、矢印の太さで表わされる。より具体的には、Ｐ２Ｐ通信の混雑度が高いほど矢印は細く表示され、混雑度が低いほど矢印は太く表示される。ユーザは、マップデータ２３５を確認することで、どの地域に属する通信端末１００に接続すると通信トラフィックが改善されるのかを容易に把握することができる。
【００３８】
なお、出力部２６６による通信混雑度の出力態様は、マップデータ２３５上に表わす例に限定されない。他の例として、各地域間における通信混雑度は、各地域の組み合わせごとに並べてリスト表示されてもよい。この場合、出力部２６６は、送信元地域の識別情報（たとえば、地域名）と、送信先地域の識別情報（たとえば、地域名）と、送信元地域および送信先地域間の通信混雑度とを送信元地域および送信先地域の組み合わせごとに示すリストをユーザ端末３００に出力する。
【００３９】
また、出力部２６６による通信混雑度の出力態様は、必ずしも、表示に限定されない。一例として、各地域間における通信混雑度は、何らかの指標を演算するための指標として用いられてもよい。このような場合も、出力部２６６による「出力」の概念に含まれ得る。
【００４０】
また、通信解析装置２００における機能構成の配置は、図２の例に限定されない。すなわち、履歴取得部２５０、マップ取得部２５３、地域特定部２５４、混雑度推定部２５８、出力部２６６の一部の機能モジュールは、通信解析装置２００ではなく、外部端末に実装されてもよい。当該外部端末は、必ずしも国内に設置される必要はなく、外国に設置されてもよい。そのような場合でも、本実施の形態に従う通信解析装置２００の趣旨を逸脱するものではない。また、これらの機能モジュールの一部または全部は、専用のハードウェアによって実現されてもよい。
【００４１】
＜Ｃ．ハードウェア構成＞
図３〜図５を参照して、上述の図１に示される通信端末１００と通信解析装置２００とユーザ端末３００とのハードウェア構成について順に説明する。
【００４２】
（Ｃ１．通信端末１００のハードウェア構成）
まず、図３を参照して、通信端末１００のハードウェア構成について説明する。図３は、通信端末１００のハードウェア構成の一例を示す模式図である。
【００４３】
通信端末１００は、制御装置１０１と、ＲＯＭ（Read  Only  Memory）１０２と、ＲＡＭ（Random  Access  Memory）１０３と、通信インターフェイス１０４と、表示インターフェイス１０５と、入力インターフェイス１０７と、記憶装置１２０とを含む。これらのコンポーネントは、バス１１０に接続される。
【００４４】
制御装置１０１は、たとえば、少なくとも１つの集積回路によって構成される。集積回路は、たとえば、少なくとも１つのＣＰＵ（Central  Processing  Unit）、少なくとも１つのＧＰＵ（Graphics Processing Unit）、少なくとも１つのＡＳＩＣ（Application  Specific  Integrated  Circuit）、少なくとも１つのＦＰＧＡ（Field  Programmable  Gate  Array）、またはそれらの組み合わせなどによって構成され得る。
【００４５】
制御装置１０１は、通信端末１００の通信監視プログラム１２２やオペレーティングシステムなどの各種プログラムを実行することで通信端末１００の動作を制御する。通信監視プログラム１２２は、通信端末１００のＰ２Ｐ通信を監視する。より具体的には、通信監視プログラム１２２は、通信内容を通信履歴１３０に書き込む機能や、通信履歴１３０を通信解析装置２００（図１参照）に定期的に送信する機能などを含む。典型的には、通信監視プログラム１２２は、Ｐ２Ｐ通信を実現するために世の中で配布されているＰ２Ｐプログラム（ノードプログラム）に組み込まれる。
【００４６】
制御装置１０１は、通信監視プログラム１２２の実行命令を受け付けたことに基づいて、記憶装置１２０またはＲＯＭ１０２からＲＡＭ１０３に通信監視プログラム１２２を読み出す。ＲＡＭ１０３は、ワーキングメモリとして機能し、通信監視プログラム１２２の実行に必要な各種データを一時的に格納する。
【００４７】
通信インターフェイス１０４には、ＬＡＮ（Local  Area  Network）やアンテナなどが接続される。通信端末１００は、通信インターフェイス１０４を介して、外部機器との間でデータをやり取りする。当該外部機器は、たとえば、他の通信端末１００や、上述の通信解析装置２００や、サーバーなどを含む。通信端末１００は、当該外部機器から通信監視プログラム１２２をダウンロードできるように構成されてもよい。
【００４８】
表示インターフェイス１０５には、ディスプレイ１０６が接続される。表示インターフェイス１０５は、制御装置１０１などからの指令に従って、ディスプレイ１０６に対して、画像を表示するための画像信号を送出する。ディスプレイ１０６は、たとえば、液晶ディスプレイ、有機ＥＬ（Electro  Luminescence）ディスプレイ、またはその他の表示機器である。なお、ディスプレイ１０６は、通信端末１００と一体的に構成されてもよいし、通信端末１００とは別に構成されてもよい。
【００４９】
入力インターフェイス１０７には、入力デバイス１０８が接続される。入力デバイス１０８は、たとえば、マウス、キーボード、タッチパネル、またはユーザの操作を受け付けることが可能なその他の装置である。なお、入力デバイス１０８は、通信端末１００と一体的に構成されてもよいし、通信端末１００とは別に構成されてもよい。
【００５０】
記憶装置１２０は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置１２０は、通信監視プログラム１２２、通信履歴１３０、およびＩＰアドレス情報１３２などを格納する。ＩＰアドレス情報１３２は、Ｐ２Ｐ通信を行なう相手のＩＰアドレスを規定する情報である。なお、通信監視プログラム１２２、通信履歴１３０およびＩＰアドレス情報１３２の格納場所は、記憶装置１２０に限定されず、制御装置１０１の記憶領域（たとえば、キャッシュメモリなど）、ＲＯＭ１０２、ＲＡＭ１０３、外部機器（たとえば、サーバー）などに格納されていてもよい。
【００５１】
通信監視プログラム１２２は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、通信監視プログラム１２２による通信監視処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う通信監視プログラム１２２の趣旨を逸脱するものではない。さらに、通信監視プログラム１２２によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも１つのサーバーが通信監視プログラム１２２の処理の一部を実行する所謂クラウドサービスのような形態で通信端末１００が構成されてもよい。
【００５２】
（Ｃ２．通信解析装置２００のハードウェア構成）
次に、図４を参照して、通信解析装置２００のハードウェア構成について説明する。図４は、通信解析装置２００のハードウェア構成の一例を示す模式図である。
【００５３】
通信解析装置２００は、制御装置２０１と、ＲＯＭ２０２と、ＲＡＭ２０３と、通信インターフェイス２０４と、表示インターフェイス２０５と、入力インターフェイス２０７と、記憶装置２２０とを含む。これらのコンポーネントは、バス２１０に接続される。
【００５４】
制御装置２０１は、たとえば、少なくとも１つの集積回路によって構成される。集積回路は、たとえば、少なくとも１つのＣＰＵ、少なくとも１つのＧＰＵ、少なくとも１つのＡＳＩＣ、少なくとも１つのＦＰＧＡ、またはそれらの組み合わせなどによって構成され得る。
【００５５】
制御装置２０１は、通信解析プログラム２２２やオペレーティングシステムなどの各種プログラムを実行することで通信解析装置２００の動作を制御する。制御装置２０１は、通信解析プログラム２２２の実行命令を受け付けたことに基づいて、記憶装置２２０またはＲＯＭ２０２からＲＡＭ２０３に通信解析プログラム２２２を読み出す。ＲＡＭ２０３は、ワーキングメモリとして機能し、通信解析プログラム２２２の実行に必要な各種データを一時的に格納する。
【００５６】
通信インターフェイス２０４には、ＬＡＮやアンテナなどが接続される。通信解析装置２００は、通信インターフェイス２０４を介して、外部機器との間でデータをやり取りする。当該外部機器は、たとえば、上述の通信端末１００や上述のユーザ端末３００やサーバーなどを含む。通信解析装置２００は、当該外部機器から通信解析プログラム２２２をダウンロードできるように構成されてもよい。
【００５７】
表示インターフェイス２０５には、ディスプレイ２０６が接続される。表示インターフェイス２０５は、制御装置２０１などからの指令に従って、ディスプレイ２０６に対して、画像を表示するための画像信号を送出する。ディスプレイ２０６は、たとえば、液晶ディスプレイ、有機ＥＬディスプレイ、またはその他の表示機器である。なお、ディスプレイ２０６は、通信解析装置２００と一体的に構成されてもよいし、通信解析装置２００とは別に構成されてもよい。
【００５８】
入力インターフェイス２０７には、入力デバイス２０８が接続される。入力デバイス２０８は、たとえば、マウス、キーボード、タッチパネル、またはユーザの操作を受け付けることが可能なその他の装置である。なお、入力デバイス２０８は、通信解析装置２００と一体的に構成されてもよいし、通信解析装置２００とは別に構成されてもよい。
【００５９】
記憶装置２２０は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置２２０は、通信解析プログラム２２２、マップデータ２２８、地域定義２３２、および通信混雑度の推定結果２３４などを格納する。なお、通信解析プログラム２２２、マップデータ２２８、地域定義２３２、および推定結果２３４の格納場所は、記憶装置２２０に限定されず、制御装置２０１の記憶領域（たとえば、キャッシュメモリなど）、ＲＯＭ２０２、ＲＡＭ２０３、外部機器（たとえば、サーバー）などに格納されていてもよい。
【００６０】
通信解析プログラム２２２は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、通信解析プログラム２２２による混雑度推定処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う通信解析プログラム２２２の趣旨を逸脱するものではない。さらに、通信解析プログラム２２２によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも１つのサーバーが通信解析プログラム２２２の処理の一部を実行する所謂クラウドサービスのような形態で通信解析装置２００が構成されてもよい。
【００６１】
（Ｃ３．ユーザ端末３００のハードウェア構成）
次に、図５を参照して、ユーザ端末３００のハードウェア構成について説明する。図５は、ユーザ端末３００のハードウェア構成の一例を示す模式図である。
【００６２】
ユーザ端末３００は、制御装置３０１と、ＲＯＭ３０２と、ＲＡＭ３０３と、通信インターフェイス３０４と、表示インターフェイス３０５と、入力インターフェイス３０７と、記憶装置３２０とを含む。これらのコンポーネントは、バス３１０に接続される。
【００６３】
制御装置３０１は、たとえば、少なくとも１つの集積回路によって構成される。集積回路は、たとえば、少なくとも１つのＣＰＵ、少なくとも１つのＧＰＵ、少なくとも１つのＡＳＩＣ、少なくとも１つのＦＰＧＡ、またはそれらの組み合わせなどによって構成され得る。
【００６４】
制御装置３０１は、通信解析装置２００からの配信情報２３０を表示するための表示プログラム３２２やオペレーティングシステムなどの各種プログラムを実行することでユーザ端末３００の動作を制御する。制御装置３０１は、表示プログラム３２２の実行命令を受け付けたことに基づいて、記憶装置３２０またはＲＯＭ３０２からＲＡＭ３０３に表示プログラム３２２を読み出す。ＲＡＭ３０３は、ワーキングメモリとして機能し、表示プログラム３２２の実行に必要な各種データを一時的に格納する。
【００６５】
通信インターフェイス３０４には、ＬＡＮやアンテナなどが接続される。ユーザ端末３００は、通信インターフェイス３０４を介して、外部機器との間でデータをやり取りする。当該外部機器は、たとえば、通信端末１００や通信解析装置２００やサーバーなどを含む。ユーザ端末３００は、当該外部機器から表示プログラム３２２をダウンロードできるように構成されてもよい。
【００６６】
表示インターフェイス３０５には、ディスプレイ３０６が接続される。表示インターフェイス３０５は、制御装置３０１などからの指令に従って、ディスプレイ３０６に対して、画像を表示するための画像信号を送出する。ディスプレイ３０６は、たとえば、液晶ディスプレイ、有機ＥＬディスプレイ、またはその他の表示機器である。なお、ディスプレイ３０６は、ユーザ端末３００と一体的に構成されてもよいし、ユーザ端末３００とは別に構成されてもよい。
【００６７】
入力インターフェイス３０７には、入力デバイス３０８が接続される。入力デバイス３０８は、たとえば、マウス、キーボード、タッチパネル、またはユーザの操作を受け付けることが可能なその他の装置である。なお、入力デバイス３０８は、ユーザ端末３００と一体的に構成されてもよいし、ユーザ端末３００とは別に構成されてもよい。
【００６８】
記憶装置３２０は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置３２０は、表示プログラム３２２などを格納する。なお、表示プログラム３２２の格納場所は、記憶装置３２０に限定されず、制御装置３０１の記憶領域（たとえば、キャッシュメモリなど）、ＲＯＭ３０２、ＲＡＭ３０３、外部機器（たとえば、サーバー）などに格納されていてもよい。
【００６９】
表示プログラム３２２は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、表示プログラム３２２による表示処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う表示プログラム３２２の趣旨を逸脱するものではない。さらに、表示プログラム３２２によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも１つのサーバーが表示プログラム３２２の処理の一部を実行する所謂クラウドサービスのような形態でユーザ端末３００が構成されてもよい。
【００７０】
＜Ｄ．地域特定部２５４の機能＞
次に、図６〜図９を参照して、図２に示される地域特定部２５４の機能の詳細について説明する。図６は、地域特定部２５４の機能構成の一例を示す図である。
【００７１】
図６に示されるように、地域特定部２５４は、機能モジュールとして、マージ部２５５と、解析部２５６と、住所特定部２５７とを含む。以下では、これらの機能モジュールについて順に説明する。
【００７２】
（Ｄ１．マージ部２５５）
まず、図７を参照して、マージ部２５５の機能について説明する。図７は、通信端末１００（図１参照）の各々から取得した通信履歴１３０をマージする過程を示す図である。
【００７３】
図７に示されるように、マージ部２５５は、Ｐ２Ｐ通信に関する複数の通信履歴１３０の入力を履歴取得部２５０（図２参照）から受ける。通信履歴１３０は、送信元のＩＰアドレスと、送信先のＩＰアドレスと、通信データの発信時刻と、通信データの受信時刻とを含む。これらの他にも、通信履歴１３０は、送信元のＭＡＣアドレス、送信先のＭＡＣアドレス、通信プロトコル、通信量、通信データの内容などを含んでもよい。
【００７４】
マージ部２５５は、入力として受けた複数の通信履歴１３０をマージし、マージ結果Ｄ１を生成する。マージ部２５５によるマージ方法は、任意である。一例として、マージ部２５５は、Ｎ（≧１）番目の通信履歴１３０の最後尾にＮ＋１番目の通信履歴１３０を追加することで、全ての通信履歴１３０をマージする。
【００７５】
図７には、通信履歴１３０のマージ結果Ｄ１が示されている。マージ結果Ｄ１は、所定のルールに従ってソートされてもよい。一例として、マージ結果Ｄ１は、発信時刻の順にソートされてもよいし、送信元ＩＰアドレスの順にソートされてもよい。マージ部２５５は、生成したマージ結果Ｄ１を解析部２５６に出力する。
【００７６】
（Ｄ２．解析部２５６）
次に、図８を参照して、図６に示される解析部２５６の機能について説明する。図８は、マージ結果Ｄ１から解析結果Ｄ２を生成する過程を示す図である。
【００７７】
図８に示されるように、解析部２５６は、マージ部２５５によって生成されたマージ結果Ｄ１を解析し、送信元と送信先との組み合わせごとに通信頻度を算出する。より具体的には、まず、解析部２５６は、マージ結果Ｄ１に含まれるＩＰアドレスセットの内、発信時刻が所定期間に含まれるＩＰアドレスセットを解析対象として抽出する。当該所定期間は、現在から所定の単位時間前（たとえば、１時間前）までの期間を示す。次に、解析部２５６は、解析対象として抽出されたＩＰアドレスセットの内、重複しているＩＰアドレスセットを探索する。ＩＰアドレスセットの重複数は、当該ＩＰアドレスセットに示される通信端末間の通信頻度を表わす。一例として、図８に示されるマージ結果Ｄ１には、送信元「ＩＰアドレス１」と送信先「ＩＰアドレス３」とのＩＰアドレスセットが２つ重複している。このことは、送信元「ＩＰアドレス１」と送信先「ＩＰアドレス３」との間で２回のＰ２Ｐ通信が行なわれたことを意味する。解析部２５６は、このような通信頻度の算出処理を重複する各ＩＰアドレスセットについて算出する。
【００７８】
また、解析部２５６は、マージ部２５５によって生成されたマージ結果Ｄ１を解析し、送信元と送信先との組み合わせごとに１回当たりの通信時間を算出する。より具体的には、まず、解析部２５６は、マージ結果Ｄ１に含まれるＩＰアドレスセットの内、発信時刻が所定期間に含まれるＩＰアドレスセットを解析対象として抽出する。次に、解析部２５６は、解析対象として抽出された各ＩＰアドレスセットについて、発信時刻および受信時刻から通信時間を算出する。典型的には、通信時間は、受信時刻から発信時刻を差分することで算出される。その後、解析部２５６は、重複するＩＰアドレスセットについて通信時間を合計し、その合計通信時間を通信頻度で除算する。これにより、１回当たりの通信時間が算出される。一例として、図８に示されるマージ結果Ｄ１には、送信元「ＩＰアドレス１」と送信先ＩＰアドレス「ＩＰアドレス３」とのＩＰアドレスセットが２つ重複している。解析部２５６は、これらの２つのＩＰアドレスセットについての合計通信時間を通信頻度で除算することで、送信元「ＩＰアドレス１」と送信先ＩＰアドレス「ＩＰアドレス３」との間の１回当たりの通信時間を算出する。解析部２５６は、このような１回当たりの通信時間をＩＰアドレスセットの各組み合わせについて算出する。
【００７９】
（Ｄ３．住所特定部２５７）
次に、図９を参照して、図６に示される住所特定部２５７の機能について説明する。図９は、解析部２５６による解析結果Ｄ２に基づいて、送信元地域および送信先地域を特定する過程を示す図である。
【００８０】
住所特定部２５７は、解析結果Ｄ２に規定される各ＩＰアドレスに基づいて、各ＩＰアドレスが属する送信元地域または送信先地域の住所を特定する。ＩＰアドレスから住所を特定する手段には任意の方法が採用され得る。
【００８１】
ある局面において、ＩＰアドレスから住所を特定するサービスが世の中に存在しており、地域特定部２５４は、そのサービスを利用することによりＩＰアドレスに対応する住所を特定する。
【００８２】
他の局面において、住所特定部２５７は、設置位置が既知の複数のサーバーから目的の通信端末宛て（ＩＰアドレス宛て）にｐｉｎｇを送信する。住所特定部２５７は、ｐｉｎｇに対するＲＴＴ（Round Trip Time）に基づいて、各サーバーについて、当該サーバーから目的の通信端末までの距離を推定する。その後、住所特定部２５７は、各サーバーからの各推定距離に基づいて、目的の通信端末のＩＰアドレスが属する住所を特定する。
【００８３】
住所特定部２５７は、各ＩＰアドレスについて特定した住所を解析結果Ｄ２に追加し、地域特定結果Ｄ３として出力する。これにより、解析結果Ｄ２に規定される各送信元ＩＰアドレスについては送信元地域が特定され、解析結果Ｄ２に規定される各送信先ＩＰアドレスについては送信先地域が特定される。送信元地域および送信先地域は、住所形式で地域特定結果Ｄ３に書き込まれてもよいし、緯度および経度などの座標形式で地域特定結果Ｄ３に書き込まれてもよい。
【００８４】
住所特定部２５７によって生成された地域特定結果Ｄ３は、混雑度推定部２５８に出力される。
【００８５】
＜Ｅ．混雑度推定部２５８の機能＞
次に、図１０〜図１２を参照して、図２に示される混雑度推定部２５８の機能について説明する。図１０は、混雑度推定部２５８の機能構成の一例を示す図である。
【００８６】
図１０に示されるように、混雑度推定部２５８は、機能モジュールとして、配置部２５９と、混雑度演算部２６０とを含む。以下では、これらの機能モジュールについて順に説明する。
【００８７】
（Ｅ１．配置部２５９）
まず、図１１を参照して、配置部２５９の機能について説明する。図１１は、各ＩＰアドレスをマップデータに配置している様子を示す図である。
【００８８】
図１１に示されるように、配置部２５９は、上述の地域特定部２５４によって生成された地域特定結果Ｄ３と、マップ取得部２５３によって取得されたマップデータ２２８との入力を受ける。
【００８９】
マップデータ２２８は、たとえば、マップ画像２２９と、地域定義２３２とを含む。マップ画像２２９の各画素値は、地表の状態を示す。一例として、マップデータ２２８の各画素値は、当該画素で特定される場所が海であるか陸であるかなどを示す。また、マップデータ２２８の各座標は、緯度および経度に関連付けられている。
【００９０】
地域定義２３２は、マップ画像２２９に含まれる各地域の範囲を特定するための情報を規定している。一例として、地域定義２３２において、地域の識別情報（たとえば、地域名や地域ＩＤ（Identification）など）ごとに、中心の位置情報および半径が関連付けられている。当該位置情報は、マップ画像２２９内の座標で表わされていてもよいし、緯度および経度で表わされていてもよい。なお、各地域の範囲は、必ずしも円形で規定される必要はなく、矩形やより複雑な形状で規定されてもよい。
【００９１】
配置部２５９は、地域特定結果Ｄ３に規定される送信元地域の各々をマップ画像２２９に反映するとともに、地域特定結果Ｄ３に規定される送信先地域の各々をマップ画像２２９に反映する。また、配置部２５９は、送信元地域と送信先地域との間のＰ２Ｐ通信の繋がりをマップ画像２２９に反映する。図１１には、その結果の一例がマップデータＤ４として示されている。
【００９２】
図１１の例では、マップデータＤ４において、ＩＰアドレス１〜５の通信端末Ｎ１〜Ｎ５が示されている。通信端末Ｎ１は、地域Ａに属し、通信端末Ｎ２〜Ｎ５のそれぞれとピアツーピアで繋がっている。通信端末Ｎ２は、地域Ｂに属し、通信端末Ｎ１，Ｎ３，Ｎ４のそれぞれとピアツーピアで繋がっている。通信端末Ｎ３は、地域Ｃに属し、通信端末Ｎ１，Ｎ２のそれぞれとピアツーピアで繋がっている。通信端末Ｎ４は、地域Ｂに属し、通信端末Ｎ１，Ｎ２のそれぞれとピアツーピアで繋がっている。通信端末Ｎ５は、地域Ｃに属し、通信端末Ｎ１，Ｎ２のそれぞれとピアツーピアで繋がっている。
【００９３】
（Ｅ２．混雑度演算部２６０）
次に、図１２を参照して、図１０に示される混雑度演算部２６０の機能について説明する。図１２は、混雑度演算部２６０による処理を概略的に示す図である。
【００９４】
混雑度演算部２６０は、地域定義２３２（図１１参照）に規定される各地域間のＰ２Ｐ通信の混雑度を算出する。より具体的には、混雑度演算部２６０は、地域特定結果Ｄ３に基づいて、２つの地域を跨がっている通信端末間の通信頻度や通信時間を統合する。
【００９５】
一例として、地域Ａ−Ｂを跨がる通信端末Ｎ１−Ｎ２間においては、通信頻度は「Ｎ１」であり、通信時間は「Ｔ１」である。また、同地域を跨がる通信端末Ｎ１−Ｎ４間においては、通信頻度は「Ｎ３」であり、通信時間は「Ｔ３」である。混雑度演算部２６０は、通信頻度「Ｎ１」，「Ｎ３」と、通信時間「Ｔ１」，「Ｔ３」との少なくとも一方に基づいて、地域Ａ−Ｂ間のＰ２Ｐ通信の混雑度を算出する。すなわち、地域Ａ−Ｂ間の通信混雑度の算出時には、通信頻度「Ｎ１」，「Ｎ３」だけが用いられてもよいし、通信時間「Ｔ１」，「Ｔ３」だけが用いられてもよいし、通信頻度「Ｎ１」，「Ｎ３」および通信時間「Ｔ１」，「Ｔ３」の両方が用いられてもよい。
【００９６】
ある局面において、地域Ａ−Ｂ間の通信混雑度の算出時において、通信頻度「Ｎ１」，「Ｎ３」だけが用いられる。この場合、通信頻度「Ｎ１」，「Ｎ３」の合計または平均が大きいほど、通信混雑度は高くなる。異なる言い方をすれば、通信頻度「Ｎ１」，「Ｎ３」の合計または平均が小さいほど、通信混雑度は低くなる。このように、通信頻度に着目して通信混雑度が算出される場合には、送信元地域および送信先地域が分かれば十分であるので、上述の通信履歴１３０において、送信元ＩＰアドレスと送信先ＩＰアドレスとが少なくとも含まれていればよい。
【００９７】
他の局面において、地域Ａ−Ｂ間の通信混雑度の算出時において、通信時間「Ｔ１」，「Ｔ３」だけが用いられる。この場合、通信時間は「Ｔ１」，「Ｔ３」の合計または平均が大きいほど、通信混雑度は高くなる。異なる言い方をすれば、通信時間は「Ｔ１」，「Ｔ３」合計または平均が小さいほど、通信混雑度は低くなる。このように、通信時間に着目して通信混雑度が算出される場合には、送信元地域および送信先地域が分かれば十分であるので、上述の通信履歴１３０において、送信元ＩＰアドレスと送信先ＩＰアドレスとこれらのＩＰアドレス間の通信時間とが少なくとも含まれていればよい。
【００９８】
混雑度演算部２６０は、地域Ａ−Ｂ間の通信混雑度と同様に、地域Ａ−Ｃ間の通信混雑度および地域Ｂ−Ｃ間の通信混雑度についても算出する。
【００９９】
混雑度演算部２６０は、地域間を繋ぐ画像オブジェクトで通信混雑度を表わす。図１２の例では、地域Ａ−Ｂ間においては画像オブジェクトＯＢ１が示されており、地域Ａ−Ｃ間においては画像オブジェクトＯＢ２が示されており、地域Ａ−Ｃ間においては画像オブジェクトＯＢ３が示されている。画像オブジェクトＯＢ１〜ＯＢ３は、通信混雑度に応じた表示態様で表わされる。
【０１００】
一例として、通信混雑度は、矢印の太さで表わされる。より具体的には、通信混雑度が高いほど、矢印は細く表示される。異なる言い方をすれば、通信混雑度が低いほど、矢印は太く表示される。他の例として、通信混雑度が高いほど、矢印は太く表示されてもよく、通信混雑度が低いほど、矢印は細く表示されてもよい。
【０１０１】
混雑度演算部２６０によって算出された各地域間の通信混雑度は、配信情報２３０としてユーザ端末３００に送信される。
【０１０２】
好ましくは、混雑度演算部２６０は、各地域に含まれる通信端末数を算出し、通信端末数の各々を配信情報２３０としてユーザ端末３００にさらに送信する。各地域に含まれる通信端末数は、たとえば、マップデータＤ４に示される各地域に含まれる通信端末の数をカウントすることで算出される。
【０１０３】
＜Ｆ．ユーザ端末３００の表示画面＞
ユーザ端末３００は、通信解析装置２００から受信した配信情報２３０をディスプレイ３０６に表示する。以下では、図１３を参照して、配信情報２３０の表示態様について説明する。図１３は、配信情報２３０の表示画面の一例を示す図である。
【０１０４】
図１３の例では、配信情報２３０の表示画面の一例として、表示画面３５０が示されている。表示画面３５０は、たとえば、上述の表示プログラム３２２（図５参照）を実行することで表示される。
【０１０５】
表示画面３５０は、通信解析装置２００から受信した配信情報２３０を表わすマップデータ２３５と、拡大率指定オブジェクト３３０と、時刻指定オブジェクト３３５と、ＩＰアドレスリスト３４０と、通信混雑度リスト３６０とを表示する。
【０１０６】
マップデータ２３５は、所定の時間間隔（たとえば、１０分ごと）に最新の情報にアップデートされる。マップデータ２３５には、地域間の通信混雑度を示す画像オブジェクトＯＢ４や、地域に含まれる通信端末数の多さを表わす画像オブジェクトＯＢ５が示されている。
【０１０７】
通信混雑度を示す画像オブジェクトＯＢ４は、マップデータ２３５上において各地域間を繋ぐように配置される。図１２の例では、画像オブジェクトＯＢ４が矢印で示されている。一例として、通信混雑度が高いほど矢印は細く表示され、混雑度が低いほど矢印は太く表示される。ユーザは、マップデータ２３５を確認することで、どの地域に属する通信端末１００に接続すると通信トラフィックが改善されるのかを容易に把握することができる。
【０１０８】
なお、通信混雑度は、必ずしも矢印の太さで表わされる必要はない。ある局面において、通信混雑度は、画像オブジェクトＯＢ４の色で表わされてもよい。より具体的には、通信混雑度が高い場合には画像オブジェクトＯＢ４が赤色で表示され、通信混雑度が低い場合には画像オブジェクトＯＢ４が青色で表示される。
【０１０９】
他の局面において、通信混雑度は、画像オブジェクトＯＢ４の濃さで表わされてもよい。より具体的には、通信混雑度が高いほど画像オブジェクトＯＢ４は濃く表示され、通信混雑度が低いほど画像オブジェクトＯＢ４は薄く表示される。
【０１１０】
さらに他の局面において、通信混雑度は、数値で示されても良い。この場合、たとえば、通信混雑度を示す数値が地域間を繋ぐ線に対応するように表示される。
【０１１１】
画像オブジェクトＯＢ５は、その配置位置に対応する地域の通信端末の多さを表わす。図１３の例では、画像オブジェクトＯＢ５は、円オブジェクトによって示されている。当該円オブジェクトは、その配置位置における地域で通信端末が多いほど大きく表示される。異なる言い方をすれば、当該円オブジェクトは、その配置位置における地域で通信端末が少ないほど小さく表示される。このような円オブジェクトを見たユーザは、各地域に属する通信端末数を容易に把握することができる。
【０１１２】
なお、各地域に属する通信端末の多さは、必ずしも円オブジェクで表わされる必要はない。ある局面において、通信端末数の多さは、画像オブジェクトＯＢ５の色で表わされてもよい。より具体的には、通信端末数が高い場合には画像オブジェクトＯＢ５が赤色で表示され、通信端末数が低い場合には画像オブジェクトＯＢ５が青色で表示される。
【０１１３】
他の局面において、通信端末数の多さは、画像オブジェクトＯＢ５の濃さで表わされてもよい。より具体的には、通信端末数が高いほど画像オブジェクトＯＢ５は濃く表示され、通信端末数が低いほど画像オブジェクトＯＢ５は薄く表示される。
【０１１４】
さらに他の局面において、通信端末数の多さは、数値で示されても良い。この場合、たとえば、通信端末数がマップデータ２３５内の各地域に表示される。
【０１１５】
拡大率指定オブジェクト３３０は、詳細ボタン３３１と、広域ボタン３３２と、拡大率指定バー３３３とを含む。ユーザは、詳細ボタン３３１を押下すると、マップデータ２３５が拡大表示され、より狭い範囲の地域間における通信混雑度を詳細に確認することができる。一方で、ユーザは、広域ボタン３３２を押下すると、マップデータ２３５が縮小表示され、より広い範囲における地域間の通信混雑度を確認することができる。また、ユーザは、拡大率指定バー３３３を上下に移動することで任意の拡大率を指定することができる。
【０１１６】
好ましくは、複数のマップ拡大率にそれぞれ対応するように上述の地域定義２３２（図１１参照）が準備されており、地域定義２３２は、マップ拡大率に応じて切り替えられる。これにより、マップデータ２３５内の各地域の範囲がマップ拡大率に応じて変わり、各地域間の通信混雑度が通信解析装置２００において再計算される。ユーザ端末３００は、再計算後の通信混雑度を通信解析装置２００から配信情報２３０として受信し、当該配信情報２３０を表示画面３５０に再表示する。
【０１１７】
時刻指定オブジェクト３３５は、時刻指定バー３３６と、再生ボタン３３７とを含む。ユーザは、時刻指定バー３３６を左右に移動することで任意の時刻における通信混雑度をマップデータ２３５に表示させることができる。より具体的には、通信解析装置２００の記憶装置２２０（図４参照）には、上述の混雑度推定部２５８による各地域間における通信混雑度の推定結果２３４（図４参照）が時刻情報に対応付けて格納されている。ユーザ端末３００は、時刻指定オブジェクト３３５で指定された時刻情報を通信解析装置２００に送信する。通信解析装置２００の出力部２６６（図２参照）は、記憶装置２２０に格納されている複数の推定結果２３４の中から、ユーザ端末３００によって指定された時刻に対応する推定結果２３４を選択し、その推定結果２３４をユーザ端末３００に配信する。ユーザ端末３００は、通信解析装置２００から受信した推定結果２３４を表示画面３５０に表示する。これにより、ユーザは、過去の任意のタイミングにおける通信混雑度をマップデータ２３５上で確認することができる。
【０１１８】
また、ユーザが再生ボタン３３７を押下すると、通信混雑度の推定結果が過去に遡って所定時間前から表示画面３５０に順次表示される。これにより、ユーザは、各地域における通信混雑度の推移を容易に確認することができる。
【０１１９】
ＩＰアドレスリスト３４０には、通信混雑度が少ないお勧めのＩＰアドレスがリストで表示される。ユーザ端末３００は、ＩＰアドレスリスト３４０に表示されているＩＰアドレスの通信端末１００を登録することで、Ｐ２Ｐネットワークに流れている情報をいち早く取得することが可能になる。
【０１２０】
通信混雑度リスト３６０上には、各地域間における通信混雑度がリストで表示される。より具体的には、通信混雑度リスト３６０上には、送信元地域と送信先地域との組み合わせごとに、送信元地域の識別情報（たとえば、地域名）と、送信先地域の識別情報（たとえば、地域名）と、送信元地域および送信先地域の間の通信混雑度とが並べて表示される。通信混雑度リスト３６０に表示される通信混雑度は、通信混雑度のレベル（たとえば、高レベル、中レベル、低レベル）で表されてもよいし、数値で表わされてもよい。また、通信混雑度リスト３６０の各行は、通信混雑度に応じて色分けされてもよい。より具体的には、通信混雑度リスト３６０において通信混雑度が高いことを示す行は赤色で表示され、通信混雑度が低いことを示す行は青色で表示される。
【０１２１】
なお、図１３の例では、時刻指定バー３３６によって時刻が分単位で指定可能に構成されているが、指定可能な時刻の単位は分単位に限定されない。たとえば、指定可能な時刻の単位は日単位であってもよいし、月単位であってもよいし、年単位であってもよい。また、時刻は、数値入力によって指定されてもよい。
【０１２２】
また、表示画面３５０は、特定の時間帯における通信混雑度の変化を表示してもよい。当該通信混雑度の変化は、上述の通信混雑度の推定結果２３４の履歴に基づいて通信解析装置２００によって算出される。
【０１２３】
＜Ｇ．フローチャート＞
以下では、図１４〜図１６を参照して、通信端末１００、通信解析装置２００、およびユーザ端末３００の制御構造について順に説明する。
【０１２４】
（Ｇ１．通信端末１００の制御フロー）
まず、図１４を参照して、通信端末１００の制御構造について説明する。図１４は、通信端末１００が実行する処理の一部を表わすフローチャートである。
【０１２５】
図１４に示される処理は、通信端末１００の制御装置１０１（図３参照）が上述の通信監視プログラム１２２（図３参照）を実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【０１２６】
ステップＳ１１０において、制御装置１０１は、他の通信端末とのＰ２Ｐ通信を確立するか否かを判断する。一例として、制御装置１０１は、他の通信端末から通信接続要求を受信したことに基づいて、当該通信端末とのＰ２Ｐ通信の確立処理を開始する。あるいは、制御装置１０１は、他の通信端末に通信接続要求を送信したことに基づいて、当該通信端末とのＰ２Ｐの確立処理を開始する。制御装置１０１は、他の通信端末とのＰ２Ｐ通信を確立すると判断した場合（ステップＳ１１０においてＹＥＳ）、制御をステップＳ１１２に切り替える。そうでない場合には（ステップＳ１１０においてＮＯ）、制御装置１０１は、制御をステップＳ１２０に切り替える。
【０１２７】
ステップＳ１１２において、制御装置１０１は、他の通信端末との通信内容を通信履歴１３０（図３参照）に書き込む。通信履歴１３０に書き込まれる内容は、たとえば、送信元のＩＰアドレスと、送信先のＩＰアドレスと、送信元のＭＡＣアドレスと、送信先のＭＡＣアドレスと、通信データの発信時刻と、通信データの受信時刻と、通信データの内容とを含む。
【０１２８】
ステップＳ１２０において、制御装置１０１は、通信履歴１３０の送信タイミングが到来したか否かを判断する。一例として、当該送信タイミングは、所定の周期ごと（たとえば、１０分ごと）に到来する。制御装置１０１は、通信履歴１３０の送信タイミングが到来したと判断した場合（ステップＳ１２０においてＹＥＳ）、制御をステップＳ１２２に切り替える。そうでない場合には（ステップＳ１２０においてＮＯ）、制御装置１０１は、制御をステップＳ１３０に切り替える。
【０１２９】
ステップＳ１２２において、制御装置１０１は、自端末の記憶装置１２０（図３参照）に格納されている通信履歴１３０を通信解析装置２００に送信する。
【０１３０】
ステップＳ１３０において、制御装置１０１は、通信監視プログラム１２２の実行を終了するか否かを判断する。一例として、制御装置１０１は、通信解析装置２００などの他の装置から実行終了命令を受けたことに基づいて、通信監視プログラム１２２の実行を終了すると判断する。制御装置１０１は、通信監視プログラム１２２の実行を終了すると判断した場合（ステップＳ１３０においてＹＥＳ）、図１４に示される処理を終了する。そうでない場合には（ステップＳ１３０においてＮＯ）、制御装置１０１は、制御をステップＳ１１０に戻す。
【０１３１】
（Ｇ２．通信解析装置２００の制御フロー）
次に、図１５を参照して、通信解析装置２００の制御構造について説明する。図１５は、通信解析装置２００が実行する処理の一部を表わすフローチャートである。
【０１３２】
図１５に示される処理は、通信解析装置２００の制御装置２０１（図４参照）が上述の通信解析プログラム２２２（図４参照）を実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【０１３３】
ステップＳ２１０において、制御装置２０１は、通信混雑度の推定タイミングが到来したか否かを判断する。一例として、当該推定タイミングは、所定の周期ごと（たとえば、１０分ごと）に到来する。制御装置１０１は、通信混雑度の推定タイミングが到来したと判断した場合（ステップＳ２１０においてＹＥＳ）、制御をステップＳ２１２に切り替える。そうでない場合には（ステップＳ２１０においてＮＯ）、制御装置２０１は、制御をステップＳ２３０に切り替える。
【０１３４】
ステップＳ２１２において、制御装置２０１は、上述の履歴取得部２５０（図２参照）として機能し、通信端末１００の各々から通信履歴１３０を受信する。
【０１３５】
ステップＳ２１４において、制御装置２０１は、上述のマップ取得部２５３（図２参照）として機能し、マップデータ２２８（図２参照）を取得する。
【０１３６】
ステップＳ２１６において、制御装置２０１は、上述の地域特定部２５４（図２参照）として機能し、ステップＳ２１２で取得した複数の通信履歴１３０に含まれる各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定する。送信元地域および送信先地域の特定方法については、上記「Ｄ．地域特定部２５４の機能」で説明した通りであるので、その説明については繰り返さない。
【０１３７】
ステップＳ２１８において、制御装置２０１は、上述の地域特定部２５４として機能し、ステップＳ２１６で特定された送信元地域と送信先地域との各セットに基づいて、マップデータ２２８に含まれる各地域間における通信混雑度を推定する。通信混雑度の推定方法については、上記「Ｅ．混雑度推定部２５８の機能」で説明した通りであるので、その説明については繰り返さない。
【０１３８】
ステップＳ２２０において、制御装置２０１は、ステップＳ２１８での通信混雑度の推定結果２３４（図４参照）を現時刻に対応付けた上で記憶装置２２０に格納する。
【０１３９】
ステップＳ２３０において、制御装置２０１は、通信混雑度の取得要求をユーザ端末３００から受信したか否かを判断する。制御装置２０１は、通信混雑度の取得要求をユーザ端末３００から受信したと判断した場合（ステップＳ２３０においてＹＥＳ）、制御をステップＳ２３２に切り替える。そうでない場合には（ステップＳ２３０においてＮＯ）、制御装置２０１は、制御をステップＳ２４０に切り替える。
【０１４０】
ステップＳ２３２において、制御装置２０１は、上述の出力部２６６（図２参照）として機能し、記憶装置２２０に格納されている複数の推定結果２３４の内、ユーザ端末３００によって指定された時刻に対応する推定結果２３４を、ユーザ端末３００に配信する。
【０１４１】
ステップＳ２４０において、制御装置２０１は、通信解析プログラム２２２の実行を終了するか否かを判断する。一例として、制御装置２０１は、通信解析装置２００の管理者から実行終了命令を受けたことに基づいて、通信解析プログラム２２２の実行を終了すると判断する。制御装置２０１は、通信解析プログラム２２２の実行を終了すると判断した場合（ステップＳ２４０においてＹＥＳ）、図１５に示される処理を終了する。そうでない場合には（ステップＳ２４０においてＮＯ）、制御装置２０１は、制御をステップＳ２１０に戻す。
【０１４２】
（Ｇ３．ユーザ端末３００の制御フロー）
次に、図１６を参照して、ユーザ端末３００の制御構造について説明する。図１６は、ユーザ端末３００が実行する処理の一部を表わすフローチャートである。
【０１４３】
図１６に示される処理は、ユーザ端末３００の制御装置３０１（図５参照）が上述の表示プログラム３２２（図５参照）を実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【０１４４】
ステップＳ３１０において、制御装置３０１は、通信混雑度の取得要求を通信解析装置２００に送信するか否かを判断する。一例として、当該取得要求は、ユーザが表示プログラム３２２を実行したタイミング、上述の表示画面３５０（図１３参照）の更新命令を受けたタイミングなどに発せられる。制御装置３０１は、通信混雑度の取得要求を通信解析装置２００に送信すると判断した場合（ステップＳ３１０においてＹＥＳ）、制御をステップＳ３１２に切り替える。そうでない場合には（ステップＳ３１０においてＮＯ）、制御装置３０１は、制御をステップＳ３２０に切り替える。
【０１４５】
ステップＳ３１２において、制御装置３０１は、通信混雑度の取得要求を通信解析装置２００に送信する。このとき、制御装置３０１は、表示画面３５０の時刻指定オブジェクト３３５（図１３参照）で指定された時刻情報を通信解析装置２００に送信する。
【０１４６】
ステップＳ３１４において、制御装置３０１は、通信解析装置２００から受信した通信混雑度の推定結果２３４を表示画面３５０に表示する。表示画面３５０の詳細については上記「Ｆ．ユーザ端末３００の表示画面」で説明した通りであるので、その説明については繰り返さない。
【０１４７】
ステップＳ３２０において、制御装置３０１は、表示プログラム３２２の実行を終了するか否かを判断する。一例として、制御装置３０１は、表示プログラム３２２の実行終了操作をユーザから受けたことに基づいて、表示プログラム３２２の実行を終了すると判断する。制御装置３０１は、表示プログラム３２２の実行を終了すると判断した場合（ステップＳ３２０においてＹＥＳ）、図１６に示される処理を終了する。そうでない場合には（ステップＳ３２０においてＮＯ）、制御装置３０１は、制御をステップＳ３１０に戻す。
【０１４８】
＜Ｈ．用途＞
上述の通信混雑度の推定処理は、たとえば、仮想通貨の取引、現実の通貨の取引、不動産の取引、物流管理、投票管理など、ブロックチェーンを利用する種々の用途に応用される。以下では、上述の通信混雑度の推定処理を仮想通貨の取引に応用する利点について説明する。
【０１４９】
なお、以下で説明する利点は、上述の通信混雑度の推定処理による利点の一例である。当該推定処理の用途は、仮想通貨に限定されない。当該推定処理の用途は、Ｐ２Ｐ通信を利用する種々の用途に応用され得る。
【０１５０】
図１７は、仮想通貨に利用されるブロックチェーンＢＣを示す図である。図１７に示されるように、ブロックチェーンＢＣは、ひと繋ぎの複数のブロックで構成される。各ブロックには、仮想通貨の複数の取引情報など種々の情報が含まれており、ブロックチェーンＢＣには、取引が開始されてから現在までの全世界の全取引情報が記憶されている。
【０１５１】
ブロックチェーンＢＣは、仮想通貨の取引に参加している全てのノード端末（たとえば、上述の通信端末１００やユーザ端末３００など）に保持される。これにより、ブロックチェーンＢＣが一のユーザによって改ざんされたとしても、他の複数のユーザのブロックチェーンＢＣを基準として改ざんが防止される。このように、仮想通貨の取引データがユーザ同士で管理されることで、サーバーなどの管理端末が必要なくなる。その結果、ユーザは、サーバーを介さずに、他のユーザとのＰ２Ｐ通信により仮想通貨の取引を実現することができる。
【０１５２】
ところで、取引情報は、Ｐ２Ｐネットワークに流れただけでは有効なものとは認められない。取引情報は、各ノード端末に保持されるブロックチェーンＢＣに追加されて初めて有効となる。このような未承認の取引情報は、新規のブロックＢｎ＋１に纏められ、ＰＯＦ（Proof of Work）と呼ばれるマイニング処理によって新規のブロックＢｎ＋１がブロックチェーンＢＣに追加される。
【０１５３】
ＰＯＦは、新規のブロックＢｎ＋１の追加を多数のノード端末間で競う仕組みである。ＰＯＦに参加するユーザは、一般的にマイナーと呼ばれる。新規のブロックＢｎ＋１を一番に生成したマイナーは、新たに発行される仮想通貨を報酬として受け取ることができる。この報酬を獲得するため、各マイナーは、新規のブロックＢｎ＋１をいち早く生成することを目指す。
【０１５４】
図１８を参照して、マイニング処理について説明する。図１８は、マイニング処理を概略的に示す図である。
【０１５５】
マイニング処理においては、正解のハッシュ値を探索するために大量のハッシュ計算が行なわれる。より具体的には、マイニング処理を行なうノード端末（以下、「マイニング端末」ともいう。）は、一つ前のブロックＢｎの生成時に得られた正解のハッシュ値と、未承認の取引情報と、ランダムな数値（以下、「ナンス」ともいう。）とを予め定められたハッシュ関数に入力する。その結果ハッシュ関数から得られる出力値が所定の目標値よりも大きい場合には、マイニング端末は、ハッシュ関数に入力するナンスを変更し、同様のハッシュ計算を再度実行する。このようなハッシュ計算は、ハッシュ関数の出力値が所定の目標値よりも小さくなるまで繰り返される。
【０１５６】
ハッシュ関数の出力値が所定の目標値よりも小さくなったナンスを最初に発見したマイニング端末は、正解のナンスと、未承認の取引情報と、一つ前のブロックＢｎにおけるハッシュ値とをＰ２Ｐネットワークに流す。他のマイニング端末は、これらの情報が正しいか否かを確認する。他のマイニング端末から承認が得られれば、これらの情報を含む新たなブロックＢｎ＋１がブロックチェーンＢＣに追加される。そして、正解のナンスを一番に発見したマイナーには、報酬が仮想通貨で支払われる。
【０１５７】
正解のナンスをいち早く発見するためには、正解のハッシュ値や取引情報などマイニングに必要な情報をいち早く取得する必要がある。マイニングに必要な情報をいち早く取得するためには、通信混雑度が低い地域に属するマイニング端末とＰ２Ｐ接続しておくことが重要である。また、取引量が多い地域に属するマイニング端末とＰ２Ｐ接続しておくことも重要である。上述の通信混雑度の推定処理により、マイナーは、通信混雑度が低い地域に存在するマイニング端末や、取引量が多い地域に存在するマイニング端末を容易に把握することができる。これらを把握したマイナーは、マイニングに必要な情報をいち早く収集することができ、他のマイナーよりも正解のナンスを早期に発見することが可能になる。
【０１５８】
＜Ｉ．変形例１＞
図７に示される通信履歴１３０は、送信元ＩＰアドレスと、送信先ＩＰアドレスと、通信データの発信時刻と、通信データの受信時刻とを含んでいた。この通信履歴１３０に規定される送信元ＩＰアドレスおよび送信先ＩＰアドレスは、自端末を基準とするＩＰアドレスを示す。すなわち、これらのＩＰアドレスのいずれかは、自端末のＩＰアドレスを示す。
【０１５９】
これに対して、本変形例に従う通信履歴１３０は、他の通信端末同士の通信情報をさらに含む。より具体的には、当該通信情報は、他の通信端末同士のＰ２Ｐ通信時における、送信元ＩＰアドレスと、送信先ＩＰアドレスとをさらに含む。このような通信履歴１３０に基づいて通信混雑度が推定されることで、Ｐ２Ｐネットワークの構成や、地域間の通信混雑度がより詳細に解析され得る。
【０１６０】
＜Ｊ．変形例２＞
上述の図１３では、地域間の通信混雑度が表示画面３５０のマップデータ２３５に表示されている例について説明した。これに対して、本変形例においては、Ｐ２Ｐネットワークの構成が表示画面３５０上のマップデータ２３５に表示される。すなわち、上述のマップデータＤ４（図１１参照）がそのまま表示画面３５０に表示されてもよい。このマップデータＤ４を確認したユーザは、Ｐ２Ｐネットワークの構成を視覚的に確認することができる。
【０１６１】
＜Ｋ．変形例３＞
通信解析装置２００は、Ｐ２Ｐネットワークの構成に基づいて、マイニングに必要な情報（以下、「お題」ともいう。）の発信元を推定してもよい。
【０１６２】
より具体的には、通信解析装置２００は、複数の通信端末１００から受信した通信履歴１３０に含まれる各通信内容を参照して、その通信内容がお題の発信を示すものか否かを判断する。そして、通信解析装置２００は、お題の発信を示す通信内容についてはお題の受信時刻（以下、「お題受信時刻」ともいう。）を特定する。当該受信時刻については通信履歴１３０に規定されている。お題到達時刻が早い通信端末は、Ｐ２Ｐネットワーク内においてお題の発信元に近い。反対に、お題到達時刻が遅い通信端末は、Ｐ２Ｐネットワーク内においてお題の発信元から遠い。この点に着目して、通信解析装置２００は、Ｐ２Ｐ通信のネットワーク構成と、各通信端末におけるお題到達時刻とに基づいて、お題の発信元を推定する。お題の発信元が分かれば、マイナーは、マイニングに必要な情報をいち早く収集することができ、他のマイナーよりも正解のナンスを早期に発見することが可能になる。
【０１６３】
好ましくは、通信解析装置２００は、推定したお題の発信元を記録しておく。通信解析装置２００は、記録したお題の発信元の変化に基づいて、次のお題の発信元を推定し、当該推定した発信元を配信情報２３０としてユーザ端末３００に配信する。
【０１６４】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１６５】
１００，１００Ａ〜１００Ｆ  通信端末、１０１，２０１，３０１  制御装置、１０２，２０２，３０２  ＲＯＭ、１０３，２０３，３０３  ＲＡＭ、１０４，２０４，３０４  通信インターフェイス、１０５，２０５，３０５  表示インターフェイス、１０６，２０６，３０６  ディスプレイ、１０７，２０７，３０７  入力インターフェイス、１０８，２０８，３０８  入力デバイス、１１０，２１０，３１０  バス、１２０，２２０，３２０  記憶装置、１２２  通信監視プログラム、１３０  通信履歴、１３２  アドレス情報、２００  通信解析装置、２２２  通信解析プログラム、２２８，２３５  マップデータ、２２９  マップ画像、２３０  配信情報、２３２  地域定義、２３４  推定結果、２５０  履歴取得部、２５３  マップ取得部、２５４  地域特定部、２５５  マージ部、２５６  解析部、２５７  住所特定部、２５８  混雑度推定部、２５９  配置部、２６０  混雑度演算部、２６６  出力部、３００  ユーザ端末、３２２  表示プログラム、３３０  拡大率指定オブジェクト、３３１  詳細ボタン、３３２  広域ボタン、３３３  拡大率指定バー、３３５  時刻指定オブジェクト、３３６  時刻指定バー、３３７  再生ボタン、３４０  アドレスリスト、３５０  表示画面、３６０  通信混雑度リスト、５００  通信解析システム。
【図１】
2020108049.tif 000003
【図２】
2020108049.tif 000004
【図３】
2020108049.tif 000005
【図４】
2020108049.tif 000006
【図５】
2020108049.tif 000007
【図６】
2020108049.tif 000008
【図７】
2020108049.tif 000009
【図８】
2020108049.tif 000010
【図９】
2020108049.tif 000011
【図１０】
2020108049.tif 000012
【図１１】
2020108049.tif 000013
【図１２】
2020108049.tif 000014
【図１３】
2020108049.tif 000015
【図１４】
2020108049.tif 000016
【図１５】
2020108049.tif 000017
【図１６】
2020108049.tif 000018
【図１７】
2020108049.tif 000019
【図１８】
2020108049.tif 000020
【手続補正書】
【提出日】令和1年9月12日(2019.9.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の通信端末の各々から当該通信端末の通信履歴を取得するための履歴取得部を備え、前記複数の通信端末の各々は、他の通信端末とＰ２Ｐ（Peer to Peer）通信するように構成されており、前記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰ（Internet  Protocol）アドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含み、さらに、
前記履歴取得部によって取得された複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するための地域特定部と、
前記地域特定部によって特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するための混雑度推定部と、
前記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するための出力部とを備える、通信解析装置。
【請求項２】
前記通信解析装置は、前記複数の地域を含むマップデータを取得するためのマップ取得部をさらに備え、
前記出力部は、前記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を前記マップデータ上に表わした状態で、当該マップデータを前記情報として出力する、請求項１に記載の通信解析装置。
【請求項３】
前記マップデータ上に表わされる混雑度の各々は、前記複数の地域間を繋ぐ画像オブジェクトで表わされ、
前記画像オブジェクトは、Ｐ２Ｐ通信の混雑度に応じた表示態様で表わされる、請求項２に記載の通信解析装置。
【請求項４】
前記出力部は、前記複数の地域の各地域に属する通信端末の多さを前記マップデータ内の各地域にさらに表わした状態で当該マップデータを出力する、請求項２または３に記載の通信解析装置。
【請求項５】
前記地域特定部によって特定される送信元地域と送信先地域とは、前記マップデータに含まれる前記複数の地域の内から特定される、請求項２〜４のいずれか１項に記載の通信解析装置。
【請求項６】
前記複数の通信履歴に含まれる各ＩＰアドレスセットには、他の通信端末とのＰ２Ｐ通信時における通信時間がさらに対応付けられており、
前記混雑度推定部は、前記複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて前記地域特定部によって特定された前記送信元地域と前記送信先地域との各セットと、当該各ＩＰアドレスセットに対応付けられている前記通信時間とに基づいて、前記複数の地域間におけるＰ２Ｐ通信の混雑度の各々を推定する、請求項１〜５のいずれか１項に記載の通信解析装置。
【請求項７】
前記通信解析装置は、前記混雑度推定部による前記複数の地域の各地域間におけるＰ２Ｐ通信の混雑度の推定結果を時刻情報に対応付けて格納するための記憶装置をさらに備え、
前記出力部は、前記記憶装置に格納されている複数の前記推定結果の内の、指定された時刻に対応する推定結果を出力する、請求項１〜６のいずれか１項に記載の通信解析装置。
【請求項８】
通信解析システムであって、
複数の通信端末を備え、前記複数の通信端末の各々は、他の通信端末とＰ２Ｐ通信するように構成されており、
前記複数の通信端末と通信可能に構成される通信解析装置をさらに備え、
前記通信解析装置は、
前記複数の通信端末の各々から当該通信端末の通信履歴を取得するための履歴取得部を含み、前記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上有し、
前記通信解析装置は、さらに、
前記履歴取得部によって取得された複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するための地域特定部と、
前記地域特定部によって特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するための混雑度推定部と、
前記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するための出力部とを含む、通信解析システム。
【請求項９】
複数の通信端末の各々から当該通信端末の通信履歴を取得するステップを備え、前記複数の通信端末の各々は、他の通信端末とＰ２Ｐ（Peer to Peer）通信するように構成されており、前記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含み、さらに、
前記取得された複数の通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するステップと、
前記特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するステップと、
前記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するステップとを備える、通信解析方法。
【請求項１０】
コンピュータに実行される通信解析プログラムであって、
前記通信解析プログラムは、前記コンピュータに、
複数の通信端末の各々から当該通信端末の通信履歴を取得するステップを実行させ、前記複数の通信端末の各々は、他の通信端末とＰ２Ｐ（Peer to Peer）通信するように構成されており、前記通信履歴は、他の通信端末とのＰ２Ｐ通信時における送信元のＩＰアドレスと送信先のＩＰアドレスとのＩＰアドレスセットを１つ以上含み、
前記通信解析プログラムは、前記コンピュータに、さらに、
複数の前記通信履歴に含まれる全部または一部の各ＩＰアドレスセットについて、当該ＩＰアドレスセットに規定される送信元のＩＰアドレスが属する送信元地域と、当該ＩＰアドレスセットに規定される送信先のＩＰアドレスが属する送信先地域とを特定するステップと、
前記特定するステップで特定された送信元地域と送信先地域との各セットに基づいて、複数の地域の各地域間におけるＰ２Ｐ通信の混雑度を推定するステップと、
前記複数の地域の内の各地域間におけるＰ２Ｐ通信の混雑度を表わした情報を出力するステップとを実行させる、通信解析プログラム。