(57)【要約】  通信装置（１０）は、ピアツーピア方式によりネットワークを構築する通信装置である。該通信装置は、当該通信装置である自ノードのユーザである自ユーザと関わりのあるユーザである一以上の関連ユーザを識別するための一以上の識別情報を取得する第１取得手段（１１４）と、該取得された一以上の識別情報に基づいて、ネットワークを介して、（ｉ）一以上の関連ユーザが使用するノードである関連ノードに係るノード情報を含むと共に、（ｉｉ）一以上の関連ユーザに係るユーザ情報である、一以上の関連ユーザ情報を取得する第２取得手段（１１１）と、該取得された一以上の関連ユーザ情報に基づいて、一以上の関連ノードのうち少なくとも一つの関連ノードを、自ノードの隣接ノードに決定する決定手段（１１１）と、決定された隣接ノードに係る情報を保持する保持手段（１４）と、を備える。
2013001589.tif 000002
【特許請求の範囲】
【請求項１】
ピアツーピア方式によりネットワークを構築する通信装置であって、
当該通信装置である自ノードのユーザである自ユーザと関わりのあるユーザである一以上の関連ユーザを識別するための一以上の識別情報を取得する第１取得手段と、
前記取得された一以上の識別情報に基づいて、前記ネットワークを介して、（ｉ）前記一以上の関連ユーザが使用するノードである関連ノードに係るノード情報を含むと共に、（ｉｉ）前記一以上の関連ユーザに係るユーザ情報である、一以上の関連ユーザ情報を取得する第２取得手段と、
前記取得された一以上の関連ユーザ情報に基づいて、前記一以上の関連ノードのうち少なくとも一つの関連ノードを、前記自ノードの隣接ノードに決定する決定手段と、
前記決定された隣接ノードに係る情報を保持する保持手段と、
を備えることを特徴とする通信装置。
【請求項２】
前記第２取得手段は、前記自ユーザに係るユーザ情報である自ユーザ情報を更に取得し、
前記決定手段は、前記取得された自ユーザ情報と、前記取得された一以上の関連ユーザ情報と、に基づいて、前記自ノードと、前記一以上の関連ノード各々との関連の程度を示す指標であるソーシャル距離を算出する算出手段を含み、
前記決定手段は、前記算出されたソーシャル距離に基づいて、前記一以上の関連ノードのうち少なくとも一つの関連ノードを、前記自ノードの隣接ノードに決定する
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記自ユーザ情報、及び前記一以上の関連ユーザ情報は、夫々、前記自ユーザ又は前記一以上の関連ユーザに係る特徴を夫々示すパラメータである複数の特徴量を含んでおり、
前記算出手段は、前記複数の特徴量各々に対して重み付けを行い、前記ソーシャル距離を算出する
ことを特徴とする請求項２に記載の通信装置。
【請求項４】
前記関連ユーザには、前記自ユーザが現在居る場所の近傍に居るユーザが含まれることを特徴とする請求項１に記載の通信装置。
【請求項５】
ピアツーピア方式によりネットワークを構築する通信装置における通信方法であって、
前記通信装置である自ノードのユーザである自ユーザと関わりのあるユーザである一以上の関連ユーザを識別するための一以上の識別情報を取得する第１取得工程と、
前記取得された一以上の識別情報に基づいて、前記ネットワークを介して、（ｉ）前記一以上の関連ユーザが使用するノードである関連ノードに係るノード情報を含むと共に、（ｉｉ）前記一以上の関連ユーザに係るユーザ情報である、一以上の関連ユーザ情報を取得する第２取得工程と、
前記取得された一以上の関連ユーザ情報に基づいて、前記一以上の関連ノードのうち少なくとも一つの関連ノードを、前記自ノードの隣接ノードに決定する決定工程と、
前記決定された隣接ノードに係る情報を保持する保持工程と、
を備えることを特徴とする通信方法。
【請求項６】
コンピュータを、
ピアツーピア方式によりネットワークを構築する通信装置であって、
当該通信装置である自ノードのユーザである自ユーザと関わりのあるユーザである一以上の関連ユーザを識別するための一以上の識別情報を取得する第１取得手段と、
前記取得された一以上の識別情報に基づいて、前記ネットワークを介して、（ｉ）前記一以上の関連ユーザが使用するノードである関連ノードに係るノード情報を含むと共に、（ｉｉ）前記一以上の関連ユーザに係るユーザ情報である、一以上の関連ユーザ情報を取得する第２取得手段と、
前記取得された一以上の関連ユーザ情報に基づいて、前記一以上の関連ノードのうち少なくとも一つの関連ノードを、前記自ノードの隣接ノードに決定する決定手段と、
前記決定された隣接ノードに係る情報を保持する保持手段と、
を備える通信装置
として機能させることを特徴とするコンピュータプログラム。
【請求項７】
請求項６に記載のコンピュータプログラムが記録されたことを特徴とする情報記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ピアツーピア（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ：Ｐ２Ｐ）方式によりデータの送受信を行う通信装置及び方法、並びにコンピュータプログラムの技術分野に関する。
【背景技術】
【０００２】
この種の通信装置で用いられるピアツーピア方式として、例えば、分散ハッシュテーブル（Ｄｉｓｔｒｉｂｕｔｅｄ  Ｈａｓｈｉｎｇ  Ｔａｂｌｅ：ＤＨＴ）にスモールワールド性を持たせた方式が提案されている（非特許文献１参照）。【０００３】
或いは、この種の通信装置で用いられる従来のピアツーピア技術を利用したアプリケーションソフトとして、例えば、ファイルの共有に中央サーバを必要としないピュアピアツーピア方式で動作するソフトが提案されている（非特許文献２参照）。【０００４】
ここでは特に、（ｉ）一のノードから該一のノードに隣接するノードに対して定期的にデータが転送されることにより、ピアツーピアネットワーク内にデータが流通されること、（ｉｉ）一のノードが所望のデータを取得する場合には、一のノードは、先ず、隣接ノードに対して該所望のデータを所有するノードの検索依頼をし、次に、検索結果に基づいて、該所望のデータを所有するノードから直接データを取得すること、（ｉｉｉ）隣接ノードが設定される際には、ユーザにより入力されたキーワードとの相関の高いノードが隣接ノードとして設定されること、等が記載されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Ｇ．Ｓ．Ｍａｎｋｕ，  Ｍ．Ｂａｗａ，  ａｎｄ  Ｐ．Ｒａｇｈａｖａｎ，  “Ｓｙｍｐｈｏｎｙ：  Ｄｉｓｔｒｉｂｕｔｅｄ  Ｈａｓｈｉｎｇ  ｉｎ  ａ  Ｓｍａｌｌ  Ｗｏｒｌｄ，”  ｉｎ  ＵＳＩＴＳ  ２００３  （４ｔｈ  ＵＳＥＮＩＸ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｉｎｔｅｒｎｅｔ  Ｔｅｃｈｎｏｌｏｇｉｅｓ  ａｎｄ  Ｓｙｓｔｅｍｓ），  ｐ１２７−１４０，  Ｍａｒｃｈ  ２００３．
【非特許文献２】金子勇著、「Ｗｉｎｎｙの技術」、アスキー書籍編集部編集、株式会社アスキー、２００５年１０月２５日初版発行
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、ネットワーク上において、友人・知人間のコミュニケーションを促進・サポートするコミュニティ型のサービスとして、ソーシャル・ネットワーキング・サービス（Ｓｏｃｉａｌ  Ｎｅｔｗｏｒｋ  Ｓｅｒｖｉｃｅ：ＳＮＳ）が存在する。【０００７】
ＳＮＳにおけるデータの送受信にピアツーピア方式を適用する場合、通信効率が低下する可能性があるという技術的問題点がある。これは、ＳＮＳにおいては、友人・知人間のデータの送受信が大半を占めることに対して、上述の非特許文献１及び非特許文献２に記載されているピアツーピア方式では、人間関係とは無関係にピアツーピアネットワークの各ノードが設定されているからである。【０００８】
本発明は、例えば上記問題点に鑑みてなされたものであり、ＳＮＳにおけるデータの送受信にピアツーピア方式を適用した場合であっても、通信効率の低下を抑制することができる通信装置及び方法、並びにコンピュータプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００９】
本発明の通信装置は、上記課題を解決するために、ピアツーピア方式によりネットワークを構築する通信装置であって、当該通信装置である自ノードのユーザである自ユーザと関わりのあるユーザである一以上の関連ユーザを識別するための一以上の識別情報を取得する第１取得手段と、前記取得された一以上の識別情報に基づいて、前記ネットワークを介して、（ｉ）前記一以上の関連ユーザが使用するノードである関連ノードに係るノード情報を含むと共に、（ｉｉ）前記一以上の関連ユーザに係るユーザ情報である、一以上の関連ユーザ情報を取得する第２取得手段と、前記取得された一以上の関連ユーザ情報に基づいて、前記一以上の関連ノードのうち少なくとも一つの関連ノードを、前記自ノードの隣接ノードに決定する決定手段と、前記決定された隣接ノードに係る情報を保持する保持手段と、を備える。【００１０】
本発明の通信装置によれば、当該通信装置は、ピアツーピア方式によりネットワークを構築する。本発明に係る「ネットワーク」とは、典型的には、既存のネットワークを基盤として、該既存のネットワーク上に構築された仮想的なネットワーク（所謂、オーバーレイネットワーク）を意味する。【００１１】
例えばメモリ、プロセッサ等を備えてなる第１取得手段は、自ノード（即ち、当該通信装置）のユーザである自ユーザと関わりのあるユーザである一以上の関連ユーザを識別するための一以上の識別情報を取得する。【００１２】
「関連ユーザ」は、例えば、自ユーザの家族・友人・知人、又は、自ユーザが居住している地域の住人、或いは、自ユーザが参加している既存のネットワーク上のコミュニティの参加者、或いは、自ユーザが現在居る場所に近い所に居る人、自ユーザが好きな場所若しくは該好きな場所に近い場所が好きな人、自ユーザと趣味が似ている人、等である。このような関連ユーザに係る識別情報は、例えば、自ノードに格納されているアドレスデータや、ＳＮＳサーバに格納されているデータ等から取得すればよい。【００１３】
例えばメモリ、プロセッサ等を備えてなる第２取得手段は、取得された一以上の識別情報に基づいて、既存のネットワークを介して、（ｉ）一以上の関連ユーザが使用するノードである関連ノードに係るノード情報を含むと共に、（ｉｉ）一以上の関連ユーザに係るユーザ情報である、一以上の関連ユーザ情報を取得する。「関連ユーザ情報」は、典型的には、自ノードとは異なるノードである他ノード（関連ノード含む）、又は、ピアツーピア方式のネットワークを構築する管理サーバ、から取得される。【００１４】
例えばメモリ、プロセッサ等を備えてなる決定手段は、取得された一以上の関連ユーザ情報に基づいて、一以上の関連ノードのうち少なくとも一つの関連ノードを、自ノードの隣接ノードに決定する。例えばメモリ、プロセッサ等を備えてなる保持手段は、決定された隣接ノードに係る情報を保持する。【００１５】
このように、本発明の通信装置では、自ユーザが、比較的頻繁にデータの送受信を行うであろう複数の関連ユーザが夫々使用する複数の関連ノードのうち少なくとも一つの関連ノードが、自ノードの隣接ノードとして決定される。この結果、ピアツーピア方式のネットワーク上においては、自ノードと、該自ノードが比較的頻繁にデータの送受信を行う他ノードと、の間に介在するノードの数が比較的少なくなるので、通信効率の低下を好適に抑制することができる。【００１６】
特に、関連ユーザとして、自ユーザが現在居る場所に近い所に居る人が選択された場合、自ユーザと関連ユーザとの物理的な距離が近くなるため、自ノードと関連ノードとの間に余計なルータが介在する可能性を抑制することができる。この結果、通信効率の向上を図ることができ、実用上非常に有利である。【００１７】
本発明の通信装置の一態様では、前記第２取得手段は、前記自ユーザに係るユーザ情報である自ユーザ情報を更に取得し、前記決定手段は、前記取得された自ユーザ情報と、前記取得された一以上の関連ユーザ情報と、に基づいて、前記自ノードと、前記一以上の関連ノード各々との関連の程度を示す指標であるソーシャル距離を算出する算出手段を含み、前記決定手段は、前記算出されたソーシャル距離に基づいて、前記一以上の関連ノードのうち少なくとも一つの関連ノードを、前記自ノードの隣接ノードに決定する。【００１８】
この態様によれば、特に、隣接ノード数に上限値が設定されている場合に、自ノードの隣接ノードにより適した関連ノード（つまり、自ユーザがより頻繁にデータの送受信を行う関連ユーザが使用する関連ノード）を選択することができ、実用上非常に有利である。【００１９】
この態様では、前記自ユーザ情報、及び前記一以上の関連ユーザ情報は、夫々、前記自ユーザ又は前記一以上の関連ユーザに係る特徴を夫々示すパラメータである複数の特徴量を含んでおり、前記算出手段は、前記複数の特徴量各々に対して重み付けを行い、前記ソーシャル距離を算出してよい。【００２０】
このように構成すれば、比較的容易にしてソーシャル距離を算出することができ、実用上非常に有利である。【００２１】
本発明の通信装置の他の態様では、前記関連ユーザには、前記自ユーザが現在居る場所の近傍に居るユーザが含まれる。【００２２】
この態様によれば、通信効率の向上を図ることができ、実用上非常に有利である。【００２３】
本発明の通信方法は、上記課題を解決するために、ピアツーピア方式によりネットワークを構築する通信装置における通信方法であって、前記通信装置である自ノードのユーザである自ユーザと関わりのあるユーザである一以上の関連ユーザを識別するための一以上の識別情報を取得する第１取得工程と、前記取得された一以上の識別情報に基づいて、前記ネットワークを介して、（ｉ）前記一以上の関連ユーザが使用するノードである関連ノードに係るノード情報を含むと共に、（ｉｉ）前記一以上の関連ユーザに係るユーザ情報である、一以上の関連ユーザ情報を取得する第２取得工程と、前記取得された一以上の関連ユーザ情報に基づいて、前記一以上の関連ノードのうち少なくとも一つの関連ノードを、前記自ノードの隣接ノードに決定する決定工程と、前記決定された隣接ノードに係る情報を保持する保持工程と、を備える。【００２４】
本発明の通信方法によれば、上述した本発明の通信装置と同様に、通信効率の低下を好適に抑制することができる。【００２５】
尚、本発明の通信方法においても、上述した本発明の通信装置における各種態様と同様の各種態様を採ることが可能である。【００２６】
本発明のコンピュータプログラムは、上記課題を解決するために、コンピュータを、ピアツーピア方式によりネットワークを構築する通信装置であって、当該通信装置である自ノードのユーザである自ユーザと関わりのあるユーザである一以上の関連ユーザを識別するための一以上の識別情報を取得する第１取得手段と、前記取得された一以上の識別情報に基づいて、前記ネットワークを介して、（ｉ）前記一以上の関連ユーザが使用するノードである関連ノードに係るノード情報を含むと共に、（ｉｉ）前記一以上の関連ユーザに係るユーザ情報である、一以上の関連ユーザ情報を取得する第２取得手段と、前記取得された一以上の関連ユーザ情報に基づいて、前記一以上の関連ノードのうち少なくとも一つの関連ノードを、前記自ノードの隣接ノードに決定する決定手段と、前記決定された隣接ノードに係る情報を保持する保持手段と、
を備える通信装置として機能させる。【００２７】
本発明のコンピュータプログラムによれば、上述した本発明の通信装置と同様に、通信効率の低下を好適に抑制することができる。【００２８】
尚、本発明のコンピュータプログラムにおいても、上述した本発明の通信装置における各種態様と同様の各種態様を採ることが可能である。【００２９】
本発明の情報記録媒体は、上記課題を解決するために、上述した本発明のコンピュータプログラム（但し、その各種態様を含む）が記録されている。【００３０】
本発明の情報記録媒体によれば、上述した本発明のコンピュータプログラムと同様に、通信効率の低下を好適に抑制することができる。【００３１】
本発明の作用及び他の利得は次に説明する実施するための形態から明らかにされる。
【図面の簡単な説明】
【００３２】
【図１】第１実施形態に係るデータ通信装置の概略を示す概略図である。
【図２】第１実施形態に係るデータ通信装置の構成を示すブロック図である。
【図３】第１実施形態に係る第１の隣接ノード設定処理を示すフローチャートである。
【図４】第１実施形態に係る第２の隣接ノード設定処理を示すフローチャートである。
【図５】第２実施形態に係るデータ通信装置の構成を示すブロック図である。
【図６】第２実施形態に係るユーザ情報に含まれるデータの一例である。
【図７】第３実施形態に係るデータ通信装置の構成を示すブロック図である。
【図８】第４実施形態に係るデータ通信装置の構成を示すブロック図である。
【発明を実施するための形態】
【００３３】
以下、本発明の通信装置に係る実施形態について、図面に基づいて説明する。
【００３４】
＜第１実施形態＞
（データ通信装置の構成）
先ず、本実施形態に係るデータ通信装置の構成について、図１及び図２を参照して説明する。図１は、第１実施形態に係るデータ通信装置の概略を示す概略図であり、図２は、第１実施形態に係るデータ通信装置の構成を示すブロック図である。尚、図１及び図２には、本実施形態に直接関係する部材のみを示し、その他の部材については図示を省略している（以降の図において同じ）。
【００３５】
図１に示すように、本実施形態に係るデータ通信装置１０は、例えばＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等であるネットワーク３０を介して、他のデータ通信装置２１及びノード管理サーバ２２と接続されている。ノード管理サーバ２２には、ピアツーピア方式によるネットワークを構成するノードに係る情報が格納されている。尚、データ通信装置２１の構成は、データ通信装置１０の構成と同様であるので、その詳細については説明を割愛する。また、ノード管理サーバ２２は、データ通信装置としての機能も併せ持つことができ、ノードとなり得る。
【００３６】
データ通信装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１、ユーザメモリ１２、コンテンツメモリ１３、ノードメモリ１４及びネットワークＩＦ（Ｉｎｔｅｒｆａｃｅ）１５を備えて構成されている。該ＣＰＵ１１、ユーザメモリ１２、コンテンツメモリ１３、ノードメモリ１４及びネットワークＩＦ１５は、バス１６を介して相互に接続されている。
【００３７】
ユーザメモリ１２には、例えばデータ通信装置１０のユーザ（以降、適宜“自ユーザ”と称する）と関わりのあるユーザ（例えば、友人・知人、会社の同僚、学校の同級生、等）に係る情報であるユーザ情報（以降、適宜、“ソーシャルユーザ情報”と称する）が格納されている。
【００３８】
ユーザ情報には、例えば、一のユーザを他のユーザから識別するための識別情報としてのユーザＩＤ、該一のユーザが利用しているノードのリスト、該一のユーザのプロフィール、等が含まれている。尚、ユーザ情報は、例えば、自ユーザにより入力されてもよいし、ネットワーク３０を介して、ノード管理サーバ２２若しくはデータ通信装置２１から取得されてもよい。
【００３９】
コンテンツメモリ１３には、例えば画像データ、テキストデータ、楽曲データ、動画データ等のコンテンツに係る情報であるコンテンツ情報が格納されている。コンテンツ情報には、例えば、一のコンテンツを他のコンテンツから識別するための識別情報としてのコンテンツＩＤ、該一のコンテンツのデータ容量を示す容量情報、該一のコンテンツに係る説明、該一のコンテンツの実体データ、等が含まれている。
【００４０】
ノードメモリ１４には、隣接ノードが設定されていれば、データ通信装置１０の隣接ノードに係る情報であるノード情報が格納されている。尚、ノードメモリ１４には、データ通信装置１０の隣接ノードに係るノード情報だけでなく、該隣接ノードの隣接ノードに係るノード情報も格納されてよい。このように構成すれば、データ通信装置１０が、当該データ通信装置１０近傍のクラスタ関係を比較的容易に認識することができる。
【００４１】
ノード情報には、例えばノードＩＤ、ＩＰアドレス、ポート番号、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）、メーカー名、機種情報、等が含まれてもよい。
【００４２】
次に、データ通信装置１０の詳細な構成について、図２を参照して説明する。
【００４３】
図２において、ＣＰＵ１１は、ソーシャル管理部１１１、コンテンツ管理部１１２、隣接ノード管理部１１３、ソーシャルユーザ取得部１１４、コンテンツ入出力部１１５、コンテンツ検索・流通依頼入力部１１６及びユーザ検索依頼入力部１１７を備えて構成されている。
【００４４】
ソーシャルユーザ取得部１１４は、他のユーザに係るユーザＩＤ、及び該他のユーザに係るソーシャル関係（即ち、自ユーザとの関係性）を示す情報を取得する。ここで、ソーシャル関係としては、例えば、友人・知人、自ユーザが興味を持っている人物、自ユーザが参加するネットワーク上のコミュニティの参加者、自ユーザが所有するコンテンツやデバイスに類似するコンテンツやデバイスを所有する人物、自ユーザの居住地若しくは現在地近傍に存在する人物、等が挙げられる。
【００４５】
ソーシャル管理部１１１は、ユーザメモリ１２に格納されているユーザ情報（即ち、ソーシャルユーザ情報）を管理すると共に、ソーシャルユーザ取得部１１４により取得されたユーザＩＤに基づいてソーシャルユーザ情報を取得し、ユーザメモリ１２に格納する。ソーシャル管理部１１１は、更に、ユーザメモリ１２に格納されているソーシャルユーザ情報に基づいて、データ通信装置１０の隣接ノードを設定する。
【００４６】
隣接ノード管理部１１３は、ソーシャル管理部１１１により設定され、ノードメモリ１４に格納された隣接ノードに係るノード情報を管理する。
【００４７】
コンテンツ入出力部１１５は、具体的には例えば、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）デコーダ及びビデオ端子、ＤＡ（Ｄｉｇｉｔａｌ  ｔｏ  Ａｎａｌｏｇ）コンバータ及びスピーカ出力、動画データ、楽曲データ、テキストデータ等を所定のファイル形式で出力可能な出力部、ビデオ入力端子、オーディオ入力端子、所定のファイル形式を入力可能な入力部、等により構成すればよい。
【００４８】
尚、ソーシャルユーザ取得部１１４、コンテンツ入出力部１１５、コンテンツ検索・流通依頼入力部１１６、及びユーザ検索依頼入力部１１７の各々は、バス１６（図１参照）を介して、例えばユーザインターフェース（図示せず）等にも接続されている。
【００４９】
ネットワークＩＦ１５は、ノード情報送受信部１５１、データ検索・取得部１５２及びデータ流通部１５３を備えて構成されている。
【００５０】
ノード情報送受信部１５１は、ユーザメモリ１２に格納されているソーシャルユーザ情報に含まれるノードＩＤ（即ち、一のユーザが利用しているノードのリストを構成するノードＩＤ）に基づいて、該ノードＩＤに対応するノードに係るアドレスやポート番号を含むノード情報を取得する。尚、ノード情報は、例えば、ネットワーク３０を介して、ノード管理サーバ２２若しくはデータ通信装置２１から取得すればよい。
【００５１】
データ検索・取得部１５２は、他のユーザ（即ち、一のデータ通信装置２１を使用するユーザ）に係るユーザ情報等を、データ通信装置１０が取得するために、該データ通信装置１０の隣接ノードに対して、該他のユーザに係る検索リクエストを送信すると共に、検索リクエストに対する回答としての該他のユーザに係るユーザ情報を取得する。データ検索・取得部１５２は、更に、他のノードから要求されたユーザに係るユーザ情報等を、他のノードに対して送信する。
【００５２】
データ流通部１５３は、自ユーザに係るユーザ情報等を、データ通信装置１０の隣接ノードに対して送信すると共に、他のユーザに係るユーザ情報等を、データ通信装置１０の隣接ノードから受信する。
【００５３】
（隣接ノード設定処理）
以上のように構成されたデータ通信装置１０における隣接ノード設定処理について、図３及び図４のフローチャートを参照して説明する。
【００５４】
（ノードメモリにノード情報が格納されていない場合）
図３において、先ず、ソーシャルユーザ取得部１１４は、自ユーザと関わりのあるユーザに係るユーザＩＤを取得する（ステップＳ１０１）。次に、ソーシャル管理部１１１は、取得されたユーザＩＤに基づいて、ノード管理サーバ２２から、該ユーザＩＤに対応するソーシャルユーザ情報を取得する（ステップＳ１０２）。
【００５５】
次に、ソーシャル管理部１１１は、取得されたソーシャルユーザ情報を、ユーザメモリ１２に格納する（ステップＳ１０３）。続いて、ソーシャル管理部１１１は、格納されたソーシャルユーザ情報に係るユーザが使用しているノードを隣接ノードに決定する（ステップＳ１０４）。次に、ノード管理部１１３は、ソーシャル管理部１１１により決定された隣接ノードに係るノード情報をノードメモリ１４に格納する（ステップＳ１０５）。
【００５６】
（ノードメモリにノード情報が格納されている場合）
図４において、上述したステップＳ１０１の処理の後、ソーシャル管理部１１１は、ソーシャル管理部１１４により取得されたユーザＩＤに基づいて、ノードメモリ１４に格納されている一又は複数のノード情報に夫々対応する隣接ノードのうち少なくとも一の隣接ノードに対して、該取得されたユーザＩＤに対応するソーシャルユーザ情報の取得を依頼する。そして、ソーシャル管理部１１１は、隣接ノードからソーシャルユーザ情報を取得する（ステップＳ２０１）。その後、ソーシャル管理部１１１は、上述したステップＳ１０３以降の処理を実行する。
【００５７】
以上の結果、本実施形態に係るデータ通信装置１０により、自ユーザと関わりのあるユーザが使用するノードが隣接ノードとして設定されるので、自ユーザと全く関わりのないユーザが使用するノードが隣接ノードとして設定される場合と比較して、無駄なトラフィックの発生を抑制することができる。従って、比較的高速なデータ通信を行うことができる。更に、スモールワールド性、スケールフリー性、及びクラスタ性を有するピアツーピア方式のネットワークを比較的容易に構築することができ、実用上非常に有利である。
【００５８】
尚、本実施形態に係る「データ通信装置１０」、「ソーシャルユーザ取得部１１４」、「ノードメモリ１４」及び「自ユーザと関わりのあるユーザ」は、夫々、本発明に係る「自ノード」、「第１取得手段」、「保持手段」及び「関連ユーザ」の一例である。本実施形態に係る「ソーシャル管理部１１１」は、本発明に係る「第２取得手段」及び「決定手段」の一例である。
【００５９】
＜第２実施形態＞
本発明に係る通信装置の第２実施形態を、図５及び図６を参照して説明する。第２実施形態では、データ通信装置の構成が一部異なっている以外は、第１実施形態の構成と同様である。よって、第２実施形態について、第１実施形態と重複する説明を省略すると共に、図面上における共通箇所には同一符号を付して示し、基本的に異なる点についてのみ、図５及び図６を参照して説明する。図５は、図２と同様の、第２実施形態に係るデータ通信装置の構成を示すブロック図である。
【００６０】
（データ通信装置の構成）
図５において、データ通信装置１０のＣＰＵ１１は、当該データ通信装置１０のユーザである自ユーザに係るユーザ情報（以降、適宜、“自ユーザ情報”と称する）を取得する自ユーザ情報取得部１１８を更に備える。ここで、自ユーザ情報には、自ユーザに係るユーザＩＤ、自ユーザのプロフィール、自ユーザが、データ通信装置１０以外に使用しているノードに係る情報、等が含まれる。
【００６１】
ソーシャル管理部１１１は、自ユーザ情報と、ソーシャルユーザ情報と、に基づいてデータ通信装置１０の隣接ノードを設定する。
【００６２】
（隣接ノード設定処理）
ここで、本実施形態に係る隣接ノードの設定方法について、図６を参照して説明を加える。図６は、ユーザ情報に含まれるデータの一例である。尚、図６において、ユーザＡ（（ａ）参照）は、自ユーザ情報の一例であり、ユーザＢ及びＣ（（ｂ）及び（ｃ）参照）は、ソーシャルユーザ情報の一例である。
【００６３】
隣接ノードを設定する際、ソーシャル管理部１１１は、先ず、ユーザＡと、ユーザＢ及びユーザＣ各々とのソーシャル距離を計算する。尚、「ソーシャル距離」とは、自ユーザと、該自ユーザと関わりのあるユーザとの関連の程度を示す指標である。
【００６４】
具体的には例えば、ユーザＡとユーザＢとのソーシャル距離は、以下のように計算される。即ち、１（“ユーザＡのソーシャル値”の“親しさ”参照）＋１／１０００（“ユーザＡのソーシャル値”の“アクセス回数”参照）＋｛（９−８）２＋（３−９）２＋（−４＋１）２｝０．５（“ユーザＡのソーシャル値”の“好きな音楽”と“ユーザＢのソーシャル値”の“好きな音楽”参照）＋１４０（“ユーザＡのソーシャル値”の“好きな場所”と“ユーザＢのソーシャル値”の“好きな場所”との距離）＋１（“ユーザＡのソーシャル値”の“参加コミュニティ”と“ユーザＢのソーシャル値”の“参加コミュニティ”との共通項の数）。
【００６５】
同様に、ユーザＡとユーザＣとのソーシャル距離は、３０＋１／３＋｛（９―（―９））２＋（３−５）２＋（−４−７）２｝０．５＋１３００＋０。
【００６６】
次に、ソーシャル管理部１１１は、計算されたソーシャル距離に基づいて、ソーシャル距離が小さいユーザに対応するノードを隣接ノードとして設定する。図６に示した例では、ユーザＢに係るソーシャル距離が、ユーザＣに係るソーシャル距離よりも小さくなるので、ユーザＢに対応するノードが、ユーザＡ（即ち、自ユーザ）が使用するデータ通信装置１０の隣接ノードとして設定される。
【００６７】
以上の結果、本実施形態によれば、ソーシャル距離の近いノードを優先的に隣接ノードに設定することができるので、ピアツーピア方式のネットワーク内により効率的にデータを流通させることができる。
【００６８】
尚、図６に示した各種パラメータ（“親しさ”、“アクセス回数”、“好きな音楽”、“好きな場所”及び“参加コミュニティ”）は、本発明に係る「特徴量」の一例である。
【００６９】
＜第３実施形態＞
本発明に係る通信装置の第３実施形態を、図７を参照して説明する。第３実施形態では、データ通信装置の構成が一部異なっている以外は、第２実施形態の構成と同様である。よって、第３実施形態について、第２実施形態と重複する説明を省略すると共に、図面上における共通箇所には同一符号を付して示し、基本的に異なる点についてのみ、図７を参照して説明する。図７は、図５と同様の、第３実施形態に係るデータ通信装置の構成を示すブロック図である。
【００７０】
（データ通信装置の構成）
図７において、データ通信装置１０のＣＰＵ１１は、当該データ通信装置１０で利用されているアプリケーションプログラム毎に設定された重み値、及びコンテンツメモリ１３に格納されているコンテンツ毎に設定された重み値を保持する重み保持部１１９を更に備える。
【００７１】
ソーシャル管理部１１１は、ソーシャル距離を計算して隣接ノードを設定する際に、重み保持部１１９に保持されている重み値を参照して、自ユーザが利用するアプリケーションプログラム、及びピアツーピア方式のネットワークに流通するコンテンツ、各々に最適な隣接ノードを設定する。
【００７２】
このように構成すれば、アプリケーションプログラム毎、及び／又は、コンテンツ毎に、最適な隣接ノードに切り替えることができ、実用上非常に有利である。
【００７３】
＜第４実施形態＞
本発明に係る通信装置の第４実施形態を、図８を参照して説明する。第４実施形態では、データ通信装置の構成が一部異なっている以外は、第２実施形態の構成と同様である。よって、第４実施形態について、第２実施形態と重複する説明を省略すると共に、図面上における共通箇所には同一符号を付して示し、基本的に異なる点についてのみ、図８を参照して説明する。図８は、図５と同様の、第４実施形態に係るデータ通信装置の構成を示すブロック図である。
【００７４】
（データ通信装置の構成）
図８において、データ通信装置１０のネットワークＩＦ１５は、ソーシャル承認部１５４を更に備える。ソーシャル承認部１５４は、ソーシャル管理部１１１が隣接ノードに設定しようとするノードに対して、隣接ノードに設定したい旨の信号を送信すると共に、該送信された信号を受信したノードからの応答を受信する。
【００７５】
このように構成すれば、ソーシャル管理部１１１が隣接ノードに設定しようとしているノードが、ピアツーピア方式のネットワークに現在参加しているか否かを事前に確認することができるので、離脱中（例えば、電源ＯＦＦ状態等）のノードが隣接ノードとして設定されることを防止することができる。
【００７６】
本発明は、上述した実施形態に限られるものではなく、請求の範囲及び明細書全体から読み取れる発明の要旨或いは思想に反しない範囲で適宜変更可能であり、そのような変更を伴う通信装置及び方法、並びにコンピュータプログラムもまた本発明の技術的範囲に含まれるものである。
【符号の説明】
【００７７】
１０、２１…データ通信装置、１２…ユーザメモリ、１３…コンテンツメモリ、１４…ノードメモリ、２２…ノード管理サーバ、３０…ネットワーク、１１１…ソーシャル管理部、１１２…コンテンツ管理部、１１３…隣接ノード管理部、１１４…ソーシャルユーザ取得部、１１５…コンテンツ入出力部、１１６…コンテンツ検索・流通依頼入力部、１１７…ユーザ検索依頼入力部、１１８…自ユーザ情報取得部、１１９…重み保持部、１５１…ノード情報送受信部、１５２…データ検索・取得部、１５３…データ流通部、１５４…ソーシャル承認部
【図１】
2013001589.tif 000003
【図２】
2013001589.tif 000004
【図３】
2013001589.tif 000005
【図４】
2013001589.tif 000006
【図５】
2013001589.tif 000007
【図６】
2013001589.tif 000008
【図７】
2013001589.tif 000009
【図８】
2013001589.tif 000010
【国際調査報告】
2013001589.tif 000011
2013001589.tif 000012
2013001589.tif 000013