(57)【要約】アクセスポイントの機能を有する第１の通信端末が、アクセスポイントの機能を有する第２の通信端末との間でネゴシエーションを行って第１の通信端末または第２の通信端末をアクセスポイントとして決定する。ネゴシエーションでは、第１の通信端末と第２の通信端末との間でそれぞれが保有するデータの数に依存する指標値を交換し、それぞれの指標値に基づいてアクセスポイントを決定する。
2014174746.tif 000002
【特許請求の範囲】
【請求項１】
無線ネットワークのアクセスポイントを決定する方法であって、
前記アクセスポイントの機能を有する第１の通信端末が、前記アクセスポイントの機能を有する第２の通信端末との間でネゴシエーションを行って前記第１の通信端末または前記第２の通信端末を前記アクセスポイントとして決定し、
前記ネゴシエーションでは、前記第１の通信端末と前記第２の通信端末との間でそれぞれが保有するデータの数に依存する指標値を交換し、それぞれの前記指標値に基づいて前記アクセスポイントを決定する
アクセスポイント決定方法。
【請求項２】
前記ネゴシエーションに先だって、前記第１の通信端末が、周囲の複数の通信端末の中から前記ネゴシエーションを行う前記第２の通信端末を決定し、
前記決定では、前記周囲の複数の通信端末の保有するデータの数に依存する前記指標値を取得し、該取得した前記指標値に基づいて前記ネゴシエーションを行う前記第２の通信端末を決定する
請求項１に記載のアクセスポイント決定方法。
【請求項３】
前記第１の通信端末は、前記指標値の取得では、前記ネゴシエーションに先だって、自通信端末から周囲に存在する複数の他の通信端末へ送出した要求に対する応答から前記指標値を取得する
請求項２に記載のアクセスポイント決定方法。
【請求項４】
前記無線ネットワークは、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する無線ネットワークである
請求項１乃至３の何れかに記載のアクセスポイント決定方法。
【請求項５】
無線ネットワークのアクセスポイント機能を有する通信端末であって、
前記無線ネットワークを形成する他の通信端末との間で通信メッセージを授受する無線通信部と、
自通信端末が保有するデータの数を記憶する保有データ数記憶部と、
前記無線ネットワークを形成する他の通信端末とネゴシエーションを行って自通信端末または相手通信端末を前記アクセスポイントとして決定し、前記ネゴシエーションでは、自通信端末の保有するデータの数に依存する指標値を前記他の通信端末へ通知すると共に前記他の通信端末の保有するデータの数に依存する前記指標値を取得し、自通信端末の前記指標値と相手通信端末の前記指標値とに基づいて前記アクセスポイントを決定する制御部と
を有する通信端末。
【請求項６】
前記制御部は、前記ネゴシエーションに先だって、自通信端末の周囲に存在する複数の他の通信端末の保有するデータの数に依存する前記指標値を取得し、該取得した前記指標値に基づいて前記ネゴシエーションを行う相手通信端末を決定する
請求項５に記載の通信端末。
【請求項７】
前記制御部は、前記指標値の取得では、前記ネゴシエーションに先だって、自通信端末から周囲に存在する複数の他の通信端末へ送出した要求に対する応答から前記指標値を取得する
請求項６に記載の通信端末。
【請求項８】
前記他の通信端末との間で前記無線通信部を通じて前記データの授受を行うデータ交換部
を有する
請求項５乃至７の何れかに記載の通信端末。
【請求項９】
前記無線ネットワークは、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する無線ネットワークである
請求項５乃至９の何れかに記載の通信端末。
【請求項１０】
無線ネットワークのアクセスポイント機能を有する通信端末を構成するコンピュータを、
前記無線ネットワークを形成する他の通信端末との間で通信メッセージを授受する無線通信部と、
自通信端末が保有するデータの数を記憶する保有データ数記憶部と、
前記無線ネットワークを形成する他の通信端末とネゴシエーションを行って自通信端末または相手通信端末を前記アクセスポイントとして決定し、前記ネゴシエーションでは、自通信端末の保有するデータの数に依存する指標値を前記他の通信端末へ通知すると共に前記他の通信端末の保有するデータの数に依存する前記指標値を取得し、自通信端末の前記指標値と相手通信端末の前記指標値とに基づいて前記アクセスポイントを決定する制御部と
して機能させるためのプログラム。
【請求項１１】
無線ネットワークのアクセスポイント機能を有する通信端末の制御方法であって、
前記通信端末が、前記アクセスポイントの機能を有する他の通信端末との間でネゴシエーションを行って前記通信端末または前記他の通信端末を前記アクセスポイントとして決定し、
前記ネゴシエーションでは、前記通信端末と前記他の通信端末との間でそれぞれが保有するデータの数に依存する指標値を交換し、それぞれの前記指標値に基づいて前記アクセスポイントを決定する
通信端末の制御方法。
【請求項１２】
前記ネゴシエーションに先だって、前記通信端末が、周囲の複数の他の通信端末の中から前記ネゴシエーションを行う前記他の通信端末を決定し、
前記決定では、前記周囲の複数の他の通信端末の保有するデータの数に依存する前記指標値を取得し、該取得した前記指標値に基づいて前記ネゴシエーションを行う前記他の通信端末を決定する
請求項１１に記載の通信端末の制御方法。
【請求項１３】
前記指標値の取得では、前記ネゴシエーションに先だって、前記通信端末から周囲に存在する複数の他の通信端末へ送出した要求に対する応答から前記指標値を取得する
請求項１２に記載の通信端末の制御方法。
【請求項１４】
前記無線ネットワークは、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する無線ネットワークである
請求項１１乃至１３の何れかに記載の通信端末の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線ネットワークのアクセスポイントを決定するアクセスポイント決定方法、通信端末、通信端末の制御方法、およびプログラムに関する。
【背景技術】
【０００２】
複数の通信端末間でアクセスポイントを決定する無線ネットワークとして、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する無線ネットワークがある。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様では、或る１つのネットワークに参加する各通信端末をＰ２Ｐデバイスとして定義し、そのネットワークをＰ２Ｐグループとして定義している。またＰ２Ｐグループにおいて、実際にアクセスポイントの機能を用いるＰ２ＰデバイスをＰ２Ｐグループオーナー（Ｇｒｏｕｐ  Ｏｗｎｅｒ（ＧＯ）。以下、単にグループオーナーと記す）、グループオーナー以外のＰ２ＰデバイスをＰ２Ｐクライアント（以下、単にクライアントと記す）として定義している。さらに、２個のＰ２Ｐデバイスからグループオーナーを決定する手順をグループオーナーネゴシエーションとして定義している。【０００３】
上記グループオーナーネゴシエーションでは、グループオーナーになることを希望する度合いを表す指標値であるインテント（Ｉｎｔｅｎｔ）値、タイブレークビット（Ｔｉｅ  Ｂｒｅａｋ  Ｂｉｔ）値などの情報を通信端末間で交換する。ここで、上記インテント値およびタイブレークビット値は、ランダムに設定されるか、或いは手動で設定される。そして、以下の判定基準に従って、グループオーナーを決定する。【０００４】
（１）インテント値の大きい通信端末をグループオーナーとする。
（２）インテント値が同じであり、共に１５より小さい場合は、タイブレークビット値が１である通信端末をグループオーナーとする。
（３）インテント値が同じであり、共に１５であればグループオーナーの決定手順を失敗とする。【０００５】
上述したグループオーナーネゴシエーションでは、グループオーナーを決める判断基準として、各通信端末のインテント値およびタイブレークビット値を用いているが、それ以外の情報を用いてグループオーナーを決定する技術が種々提案されている。【０００６】
例えば、通信端末のアプリケーションがコンテンツの提供側または利用側のいずれであるかを示すアプリケーション情報を通信端末間で交換し、各通信端末は、自通信端末および周囲の通信端末のうちで、アプリケーションがコンテンツの提供側である提供側端末の数、および利用側である利用側端末の数の関係に応じ、グループオーナー、即ちアクセスポイントとして動作する優先度を示すパラメータを設定し、この設定されたパラメータを用いてアクセスポイントとして動作する通信端末を決定するための周囲の通信端末との交渉を行うことが、本発明に関連する第１の関連技術として提案されている（例えば特許文献１参照）。【０００７】
また、接続可能な最大クライアント数を示すクライアント許容数を通信端末間で交換し、クライアント許容数のより多い通信端末をアクセスポイントとして決定することが、本発明に関連する第２の関連技術として提案されている（例えば特許文献２参照）。【０００８】
さらに、通信端末の伝送処理能力を表すパラメータ（例えばＴＣＰ／ＩＰ層のスループット値など）を通信端末間で交換し、伝送処理能力のより高い通信端末をアクセスポイントとして決定することが、本発明に関連する第３の関連技術として提案されている（例えば特許文献３参照）。【０００９】
他方、複数の通信端末間でデータを共有する方式の一種に、サーバ等の中央管理装置を使用せずに、個々の通信端末で分散的にデータを共有する方式がある。例えば、通信端末同士が移動により接触した際に、Ｅｐｉｄｅｍｉｃ法を使用して、お互いの情報を交換し保有情報の同期を行うことが本発明に関連する第４の関連技術として提案されている（例えば非特許文献１参照）。Ｅｐｉｄｅｍｉｃ法では、図１３に示すように、ネットワーク内の通信端末は他の通信端末を検知すると、自身が保有するデータ（コンテンツ）のリストである保有リスト（サマリーベクタとも呼ぶ）を交換し、他の通信端末の保有リストの内容を把握する。そして、通信端末は、自通信端末の保有リストと一致しない保有リストを有する他の通信端末との間で通信メッセージを授受してデータの共有を行う。即ち、データを保有する通信端末が当該データを保有していない通信端末に対して当該データを送信する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１２−１９９８８４号公報
【特許文献２】特開２０１２−１８６５５５号公報
【特許文献３】特開２０１２−１８６６４３号公報
【非特許文献】
【００１１】
【非特許文献１】Ａ. Ｖａｈｄａｔ, Ｄ. Ｂｅｃｋｅｒ, “Ｅｐｉｄｅｍｉｃ Ｒｏｕｔｉｎｇ ｆｏｒ Ｐａｒｔｉａｌｌｙ−Ｃｏｎｎｅｃｔｅｄ Ａｄ Ｈｏｃ Ｎｅｔｗｏｒｋｓ, ” Ｔｅｃｈ. Ｒｅｐｏｒｔ ＣＳ−２００００６, Ｄｕｋｅ  Ｕｎｉｖｅｒｓｉｔｙ, Ａｐｒ. ２０００
【発明の概要】
【発明が解決しようとする課題】
【００１２】
無線ネットワークのアクセスポイント機能を有する複数の通信端末間でアクセスポイントを決定する方法として上述した各種の方法が提案ないし実用化されているけれども、上記第４の関連技術に記載されるような無線ネットワークを形成する通信端末間でそれぞれが有するデータを共有する場合、第１乃至第３の関連技術の何れの技術によっても、データ共有のためにアクセスポイント経由でデータが転送される無駄を削減することは困難である。その理由は、第１乃至第３の関連技術では、データの保有数が最小の通信端末がグループオーナー、すなわちアクセスポイントとして選出される可能性があるためである。【００１３】
本発明の目的は、上述した課題、すなわち、無線ネットワークを形成する通信端末間でそれぞれが有するデータを共有する場合、アクセスポイント経由でデータが転送される無駄がある、という課題を解決するアクセスポイント決定方法を提供することにある。
【課題を解決するための手段】
【００１４】
本発明の第１の観点に係るアクセスポイント決定方法は、
無線ネットワークのアクセスポイントを決定する方法であって、
上記アクセスポイントの機能を有する第１の通信端末が、上記アクセスポイントの機能を有する第２の通信端末との間でネゴシエーションを行って上記第１の通信端末または上記第２の通信端末を上記アクセスポイントとして決定し、
上記ネゴシエーションでは、上記第１の通信端末と上記第２の通信端末との間でそれぞれが保有するデータの数に依存する指標値を交換し、それぞれの上記指標値に基づいて上記アクセスポイントを決定する。【００１５】
また本発明の第２の観点に係る通信端末は、
無線ネットワークのアクセスポイント機能を有する通信端末であって、
上記無線ネットワークを形成する他の通信端末との間で通信メッセージを授受する無線通信部と、
自通信端末が保有するデータの数を記憶する保有データ数記憶部と、
上記無線ネットワークを形成する他の通信端末とネゴシエーションを行って自通信端末または相手通信端末を上記アクセスポイントとして決定し、上記ネゴシエーションでは、自通信端末の保有するデータの数に依存する指標値を上記他の通信端末へ通知すると共に上記他の通信端末の保有するデータの数に依存する上記指標値を取得し、自通信端末の上記指標値と相手通信端末の上記指標値とに基づいて上記アクセスポイントを決定する制御部と
を有する。
また本発明の第３の観点に係るプログラムは、
無線ネットワークのアクセスポイント機能を有する通信端末を構成するコンピュータを、
上記無線ネットワークを形成する他の通信端末との間で通信メッセージを授受する無線通信部と、
自通信端末が保有するデータの数を記憶する保有データ数記憶部と、
上記無線ネットワークを形成する他の通信端末とネゴシエーションを行って自通信端末または相手通信端末を上記アクセスポイントとして決定し、上記ネゴシエーションでは、自通信端末の保有するデータの数に依存する指標値を上記他の通信端末へ通知すると共に上記他の通信端末の保有するデータの数に依存する上記指標値を取得し、自通信端末の上記指標値と相手通信端末の上記指標値とに基づいて上記アクセスポイントを決定する制御部と
して機能させる。
また本発明の第４の観点に係る通信端末の制御方法は、
無線ネットワークのアクセスポイント機能を有する通信端末が実行するアクセスポイント決定方法であって、
上記通信端末が、上記アクセスポイントの機能を有する他の通信端末との間でネゴシエーションを行って上記通信端末または上記他の通信端末を上記アクセスポイントとして決定し、
上記ネゴシエーションでは、上記通信端末と上記他の通信端末との間でそれぞれが保有するデータの数に依存する指標値を交換し、それぞれの上記指標値に基づいて上記アクセスポイントを決定する。
【発明の効果】
【００１６】
本発明は上述した構成を有するため、複数の通信端末が特定の通信端末をアクセスポイントとして通信を行うネットワークを形成してデータ共有を行う場合、データ共有のためにアクセスポイント経由でデータが転送される無駄を削減することが可能である。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１の実施形態にかかる通信端末のブロック図である。
【図２】本発明の第１の実施形態において、保有データ数に従ってインテント値を決定するためのテーブルの一例を示す図である。
【図３】本発明の第１の実施形態にかかる通信端末の動作を示すフローチャートである。
【図４】本発明の第１の実施形態におけるデバイスディスカバリプロシージャーとグループオーナーネゴシエーションの概要を示すシーケンス図である。
【図５】本発明の第１の実施形態におけるグループオーナーネゴシエーションにおいてグループオーナーを決定する手順を示すフローチャートである。
【図６】本発明の第１の実施形態においてデータ共有のために必要なデータ転送コストの説明図である。
【図７】保有データ数が最小の通信端末がアクセスポイントになった場合に必要なデータ共有のためのデータ転送コストの説明図である。
【図８】本発明の第２の実施形態にかかる通信端末のブロック図である。
【図９】本発明の第２の実施形態にかかる通信端末の動作を示すフローチャートである。
【図１０】本発明の第２の実施形態におけるデバイスディスカバリプロシージャーとグループオーナーネゴシエーションの概要を示すシーケンス図である。
【図１１】本発明の第３の実施形態にかかる通信端末のブロック図である。
【図１２】本発明の他の実施形態において、保有データ数に従ってインテント値とタイブレークビット値を決定するためのテーブルの一例を示す図である。
【図１３】Ｅｐｉｄｅｍｉｃ法によるデータ共有の手順の一例を示す図である。
【発明を実施するための形態】
【００１８】
次に本発明の実施の形態について図面を参照して詳細に説明する。
[第１の実施形態]
図１を参照すると、本発明の第１の実施形態にかかる通信端末１１０は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する無線ネットワークを形成する無線通信端末である。通信端末１１０は、無線通信部１１１とデータ記憶部１１２とデータ交換部１１３と保有データ数記憶部１１４と制御部１１５とアンテナ１１６とを有する。
【００１９】
無線通信部１１１は、他の通信端末との間で無線によって通信メッセージを授受する機能を有する。無線通信部１１１は、送信時には、制御部１１５やデータ交換部１１３などの上位レイヤからの要求に応じて通信メッセージのパケットを作成し、作成したパケットに対してヘッダや誤り検出符号の付加などの処理を行い、処理後のデータから搬送波の周波数帯の変調信号を生成し、アンテナ１１６から無線信号として送信する。また、無線通信部１１１は、受信時には、アンテナ１１６により受信した無線信号を復調して通信メッセージのパケットを復号し、誤り検出符号に基づいて誤りがないことを確認した通信メッセージを制御部１１５やデータ交換部１１３などの上位レイヤに通知する。
【００２０】
データ記憶部１１２は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やハードディスクなどの記憶装置で構成され、１以上のデータを記憶する。個々のデータは任意である。例えば、テキストデータ、画像データ、音声データの何れであっても良いし、それらが混在していても良い。また、データは、コンテンツと呼ばれるものであっても良い。
【００２１】
データ交換部１１３は、データ記憶部１１２に記憶されているデータの個数（保有データ数）を検出し、保有データ数記憶部１１４に保存する機能を有する。またデータ交換部１１３は、他の通信端末との間で、無線通信部１１１を通じて通信メッセージを授受してデータの共有を行う機能を有する。データ交換部１１３は、例えば本発明に関連する第４の関連技術に示されるＥｐｉｄｅｍｉｃ法を使用して、お互いの保有するデータを交換する。すなわち、データ交換部１１３は、データ記憶部１１２に記憶されているデータのリストである保有リストを無線通信部１１１を通じて他の通信端末へ定期的に送信し、上記保有リストを受信した他の通信端末からデータ取得要求を受信すると、当該データ取得要求で指定されたデータをデータ記憶部１１２から読み出し、無線通信部１１１を通じて要求元の他の通信端末へ送信する。また、データ交換部１１３は、他の通信端末から保有リストを無線通信部１１１を通じて受信すると、自端末の上記保有リストと受信した他の通信端末の保有リストとを比較し、自端末が保有せず他の通信端末が保有するデータを指定したデータ取得要求を無線通信部１１１を通じて他の通信端末へ送信し、当該データ取得要求に対する応答を受信すると、当該応答中からデータを取得し、データ記憶部１１２に保存する。このときデータ交換部１１３は、保存したデータ数に応じて保有データ数記憶部１１４に記憶されている保有データ数を更新する。
【００２２】
但し、本発明はＥｐｉｄｅｍｉｃ法に限定されず、その他任意のデータ共有方法を使用することが可能である。
【００２３】
保有データ数記憶部１１４は、ＲＡＭやハードディスクなどの記憶装置で構成され、データ交換部１１３から与えられた保有データ数を記憶する機能を有する。
【００２４】
制御部１１５は、無線通信部１１１における利用周波数の決定、各種制御メッセージの作成と送信指示、受信した各種制御メッセージの解釈、接続処理の制御など、通信端末１１０全体の制御を司る機能を有する。例えば、制御部１１５は、無線ネットワークを形成する他の通信端末とネゴシエーションを行って自通信端末または相手通信端末をグループオーナーとして決定する制御を行う。このネゴシエーションでは、制御部１１５は、保有データ数記憶部１１４に記憶されているデータ数に依存する指標値を無線通信部１１１を通じて他の通信端末１１０へ通知すると共に、他の通信端末１１０の保有するデータの数に依存する指標値を無線通信部１１１を通じて当該他の通信端末１１０から取得し、自通信端末の上記指標値と相手通信端末の上記指標値とに基づいてグループオーナーを決定する。また制御部１１５は、上記決定したグループオーナーの情報を保持し、自通信端末１１０がグループオーナーとして決定された場合、無線通信部１１１を制御して自通信端末１１０を無線ネットワークのアクセスポイントとして機能させる。
【００２５】
本実施形態では、上記指標値としてインテント値を使用する。インテント値は０以上、１５以下の整数であり、保有データ数記憶部１１４に記憶されているデータ数に依存して決定される。具体的には、保有データ数がより多いほどより大きなインテント値が決定される。
【００２６】
図２は、保有データ数に従ってインテント値を決定するためのテーブルの一例を示す。この例では、保有データ数を１６区分に分類し、保有データ数が小さい区分から順にインテント値を０から順に割り当てている。例えば、１６区分中の１つの区分は保有データ数が２１〜４０であり、この区分に対してインテント値１を割り当てている。制御部１１５は図２に示したようなテーブルを記憶し、保有データ数記憶部１１４に記憶された保有データ数と上記テーブルとに基づいて、保有データ数に依存するインテント値を決定する。
【００２７】
次に、本実施形態に係る通信端末１１０の動作を説明する。
【００２８】
通信端末１１０は起動されると、図３に示す処理の実行を開始する。まず、通信端末１１０のデータ交換部１１３は、データ記憶部１１２に記憶されているデータを走査してデータの個数を検出し、保有データ数記憶部１１４に保存する（ステップＳ１０１）。
【００２９】
次に通信端末１１０の制御部１１５は、周囲の通信端末を発見する（ステップＳ１０２）。この周囲の通信端末の発見は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様のＤｅｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｃｅｄｕｒｅに準拠して行われる。図４は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様のＤｅｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  ＰｒｏｃｅｄｕｒｅとＧｒｏｕｐ  Ｏｗｎｅｒ  Ｎｅｇｏｔｉａｔｉｏｎの概要を示すシーケンス図である。例えば、通信端末１１０が探索動作を開始した場合、図４に示すように、プローブ要求（Ｐｒｏｖｅ  Ｒｅｑｕｅｓｔ）を周囲に送信する。若し、通信端末１１０と同じ構成を有する他の通信端末１２０が周囲に存在する場合、当該他の通信端末１２０の制御部（１１５）は上記プローブ要求を検出すると、図４に示すようにプローブ応答（Ｐｒｏｖｅ  Ｒｅｓｐｏｎｓｅ）を返信する。通信端末１１０は、プローブ応答を受信することで、自端末の周囲に他の通信端末１２０が存在することを認識する。
【００３０】
次に通信端末１１０の制御部１１５は、発見した通信端末１２０との間でグループオーナーを決定するためのネゴシエーションを行う（ステップＳ１０３）。このネゴシエーションは、基本的にＷｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様のＧｒｏｕｐ  Ｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｄｕｒｅに準拠して行われる。
【００３１】
上記ネゴシエーションでは、まず通信端末１１０の制御部１１５が、図４に示すように、ネゴシエーション要求（ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｑｕｅｓｔ）を通信端末１２０へ送信する。このネゴシエーション要求には、インテント値とタイブレークビット値などの情報が含まれている。インテント値は、前述したように保有データ数に依存して決定される。他方、タイブレークビット値は、本実施形態では、ネゴシエーション要求を送信した通信端末１１０がランダムに１または０に設定する。
【００３２】
またネゴシエーション要求を受信した通信端末１２０の制御部（１１５）は、図４に示すように、ネゴシエーション応答（ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅ）を返信する。このネゴシエーション応答には、インテント値とタイブレークビット値などの情報が含まれている。通信端末１１０と同様に、インテント値は通信端末１２０が保有するデータの個数に依存して決定される。また、タイブレークビット値は、受信したネゴシエーション要求に含まれるタイブレークビット値を反転（トグル）した値が設定される。
【００３３】
そして、ネゴシエーション応答を受信した通信端末１１０の制御部１１５は、図５に示すフローチャートの手順に従ってグループオーナーを決定し、その結果を図４に示すようにネゴシエーション完了（ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｃｏｎｆｉｒｍａｔｉｏｎ）により通信端末１２０に通知する。またネゴシエーション要求を受信した通信端末１２０の制御部（１１５）は、通信端末１１０と同様に図５に示したフローチャートの手順に従ってグループオーナーを決定する。
【００３４】
図５に示したグループオーナーを決定する手順は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様のＧｒｏｕｐ  Ｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｄｕｒｅに準拠している。図５中、Ｘ１は通信端末１１０のインテント値、Ｘ２は通信端末１２０のインテント値である。制御部１１５は、双方のインテント値が相違し（ステップＳ１２１でＮＯ）、Ｘ１＜Ｘ２ならば（ステップＳ１２２でＹＥＳ）、通信端末１２０をグループオーナーに決定し（ステップＳ１２３）、Ｘ１＞Ｘ２ならば（ステップＳ１２２でＮＯ）、通信端末１１０をグループオーナーに決定する（ステップＳ１２４）。他方、双方のインテント値が同じならば（ステップＳ１２１でＹＥＳ）、インテント値が１５未満であるか否かを判定する（ステップＳ１２５）。そして、１５未満であれば（ステップＳ１２５のＹＥＳ）、タイブレークビット値を１に設定した通信端末をグループオーナーに決定する（ステップＳ１２６）。また、双方のインテント値が１５であれば（ステップＳ１２５のＮＯ）、グループオーナーの決定手順を失敗とする（ステップＳ１２７）。
【００３５】
その後、通信端末１１０の制御部１１５は、決定したグループオーナーに従って通信端末１２０と通信グループを形成するための接続手続きを制御する（図３のステップＳ１０４）。
【００３６】
こうして本実施形態では、グループオーナーネゴシエーションにおいて、通信端末１１０、１２０が保有データ数に依存するインテント値を交換し、インテント値のより大きい通信端末をグループオーナーに決定する。このため、その後にグループオーナーからの誘いに応じて或いは自発的に他の通信端末が当該グループにクライアントとして参加しても、当該グループ形成する前段階のデータ保有数が最小の通信端末がグループオーナーになることはない。従って、データ交換部１１３によって自端末のデータ記憶部１１２に記憶されているデータを他の通信端末へ送信してグループ内でデータ共有を行う場合、アクセスポイント経由でデータが転送される無駄を削減することが可能になる。以下、簡単な例を挙げて本実施形態の効果を説明する。
【００３７】
今、図６に示すように、通信端末１１０の周囲に２台の通信端末１２０、１３０が存在し、通信端末１１０と通信端末１２０との間でグループオーナーネゴシエーションを行われて通信端末１１０がグループオーナーに決定され、次いで、残りの通信端末１３０がグループオーナーである通信端末１１０のクライアントとしてグループに参加した状況を想定する。また、このときの保有データ数は、通信端末１１０が１２０個、通信端末１２０が１０個、通信端末１３０が４０個とし、これら合計１７０個のデータ中に同一のデータは存在しないものとする。また、データのサイズは全て同じとする。
【００３８】
図６に示す３台の通信端末間で保有するデータを交換し、全ての通信端末が合計１７０個のデータを保有する状態になるためには、通信端末間で以下のようなデータ転送のコストが発生する。なお、本例における保有データの交換では、データは必ず当初保有していた通信端末から転送されるものとする。
【００３９】
まず、通信端末１１０に対しては、通信端末１２０から合計１０個のデータを１ホップで転送し、通信端末１３０から合計４０個のデータを１ホップで転送するので、転送コストは（１０データ×１ホップ）＋（４０データ×１ホップ）＝５０になる。次に、通信端末１２０に対しては、通信端末１１０から合計１２０個のデータを１ホップで転送し、通信端末１３０から合計４０個のデータを２ホップで転送するので、転送コストは（１２０データ×１ホップ）＋（４０データ×２ホップ）＝２００となる。次に、通信端末１３０に対しては、通信端末１１０から合計１２０個のデータを１ホップで転送し、通信端末１１０から合計１０個のデータを２ホップで転送するので、転送コストは（１２０データ×１ホップ）＋（１０データ×２ホップ）＝１４０となる。結局、転送コストの合計は３９０になる。
【００４０】
これに対して、通信端末の保有データ数を考慮せずにグループオーナーネゴシエーションを行う場合、図７に示すように、保有データ数が最小の通信端末１２０がグループオーナーに決定されるケースが発生する。図７に示す３台の通信端末間で保有するデータを交換し、全ての通信端末が合計１７０個のデータを保有するためには、通信端末間で以下のようなデータ転送のコストが発生する。
【００４１】
まず、通信端末１１０に対しては、通信端末１２０から合計１０個のデータを１ホップで転送し、通信端末１３０から合計４０個のデータを２ホップで転送するので、転送コストは（１０データ×１ホップ）＋（４０データ×２ホップ）＝９０になる。次に、通信端末１２０に対しては、通信端末１１０から合計１２０個のデータを１ホップで転送し、通信端末１３０から合計４０個のデータを１ホップで転送するので、転送コストは（１２０データ×１ホップ）＋（４０データ×１ホップ）＝１６０となる。次に、通信端末１３０に対しては、通信端末１１０から合計１２０個のデータを２ホップで転送し、通信端末１２０から合計１０個のデータを１ホップで転送されるので、転送コストは（１２０データ×２ホップ）＋（１０データ×１ホップ）＝２５０となる。結局、転送コストの合計は、図６に比べて約３割増しの５００になる。
【００４２】
このように本実施形態を適用することにより、データ共有のためにアクセスポイント経由でデータが転送される無駄なコストを削減することが可能になる。
【００４３】
[第２の実施形態]
図８を参照すると、本発明の第２の実施形態にかかる通信端末２１０は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する無線ネットワークを形成する無線通信端末であり、無線通信部２１１とデータ記憶部２１２とデータ交換部２１３と保有データ数記憶部２１４と制御部２１５とアンテナ２１６とを有する。このうち、無線通信部２１１とデータ記憶部２１２とデータ交換部２１３と保有データ数記憶部２１４とアンテナ２１６とは、図１に示した通信端末１１０の無線通信部１１１とデータ記憶部１１２とデータ交換部１１３と保有データ数記憶部１１４とアンテナ１１６と同じ機能を有する。
【００４４】
制御部２１５は、図１に示した通信端末１１０の制御部１１５が有する機能に加えてさらに、交渉相手決定部２１７を有する。交渉相手決定部２１７は、グループオーナーを決定するためのネゴシエーションに先だって、自通信端末の周囲に存在する複数の他の通信端末の保有データ数に依存するインテント値を取得し、ネゴシエーションを行う相手通信端末を決定する機能を有する。具体的には、交渉相手決定部２１７は、自通信端末の周囲に存在する複数の他の通信端末のうちインテント値が最大の通信端末を交渉相手に決定する。
【００４５】
次に、本実施形態に係る通信端末２１０の動作を説明する。
【００４６】
通信端末２１０は起動されると、図９に示す処理の実行を開始する。まず、通信端末２１０のデータ交換部２１３は、データ記憶部２１２に記憶されているデータを走査してデータの個数を検出し、保有データ数記憶部２１４に保存する（ステップＳ２０１）。
【００４７】
次に通信端末２１０の制御部２１５は、周囲の通信端末を発見する（ステップＳ２０２）。この周囲の通信端末の発見は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様のＤｅｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｃｅｄｕｒｅに準拠して行われる。図１０は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様のＤｅｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  ＰｒｏｃｅｄｕｒｅとＧｒｏｕｐ  Ｏｗｎｅｒ  Ｎｅｇｏｔｉａｔｉｏｎの概要を示すシーケンス図である。例えば、通信端末２１０が探索動作を開始した場合、図１０に示すように、プローブ要求（Ｐｒｏｖｅ  Ｒｅｑｕｅｓｔ）を周囲に送信する。若し、通信端末２１０と同じ構成を有する他の通信端末が周囲に存在する場合、当該他の通信端末の制御部（２１５）は上記プローブ要求を検出すると、プローブ応答（Ｐｒｏｖｅ  Ｒｅｓｐｏｎｓｅ）を返信する。本実施形態では、このプローブ応答は保有データ数に依存するインテント値を有している。図１０に示す例では、通信端末２１０の周囲に通信端末２２０と通信端末２３０との２台の通信端末が存在しており、それぞれの通信端末２２０、２３０からインテント値を含むプローブ応答が通信端末２１０へ送信されている。
【００４８】
通信端末２１０の制御部２１５は、インテント値を有するプローブ応答を受信することで、自端末の周囲に他の通信端末２２０、２３０が存在することを認識でき、また、それら通信端末２２０、２３０のインテント値を認識することができる。
【００４９】
次に通信端末２１０の制御部２１５は、交渉相手決定部２１７を使用して、発見した通信端末からグループオーナーを決定するためのネゴシエーションを行う交渉相手を決定する（ステップＳ２０３）。具体的には、交渉相手決定部２１７は、プローブ応答に含まれるインテント値が最も大きい通信端末を交渉相手に決定する。例えば、通信端末２２０から受信したプローブ応答に含まれるインテント値が１、通信端末２３０から受信したプローブ応答に含まれるインテント値が０とすると、通信端末２２０が交渉相手に決定される。なお、インテント値が最大の通信端末が複数存在していれば、それらの中の任意の通信端末を交渉相手に決定する。
【００５０】
次に通信端末２１０の制御部２１５は、交渉相手に決定した通信端末２２０との間でグループオーナーを決定するためのネゴシエーションを行い（ステップＳ２０４）、その後、通信端末２１０の制御部２１５は、決定したグループオーナーに従って通信端末２２０と通信グループを形成するための接続手続きを制御する（ステップＳ２０５）。これらのステップＳ２０４、Ｓ２０５の動作は、図３に示すステップＳ１０３、Ｓ１０４の動作と同じである。
【００５１】
こうして本実施形態では、グループオーナーを決定するためのネゴシエーションに先だって、自通信端末の周囲に存在する複数の他の通信端末の中から保有データ数に依存するインテント値が最大の通信端末を交渉相手に決定する。そして、グループオーナーネゴシエーションにおいて、第１の実施形態と同様に、交渉相手の通信端末との間で保有データ数に依存するインテント値を交換し、インテント値のより大きい通信端末をグループオーナーに決定する。このため、自通信端末を含め周囲に存在する複数の通信端末の中でデータ保有数が最大の通信端末をグループオーナー、すなわちアクセスポイントとして選出することができる。従って、データ交換部２１３によって自端末のデータ記憶部２１２に記憶されているデータを他の通信端末へ送信してデータ共有を行う場合、アクセスポイント経由でデータが転送される無駄を削減することが可能になる。
【００５２】
[第３の実施形態]
図１１は、上述した各実施形態における通信端末をコンピュータ等の電子情報処理装置で構成した場合のハードウェア構成の一例を示す。この例の通信端末３１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）周辺部と、入出力部と、レガシー入出力部とを備える。ＣＰＵ周辺部は、ホスト・コントローラ９０１により相互に接続されるＣＰＵ９０２、ＲＡＭ９０３、グラフィック・コントローラ９０４、及び表示装置９０５を有する。入出力部は、入出力（Ｉ／Ｏ）コントローラ９０６によりホスト・コントローラ９０１に接続される通信インターフェイス（Ｉ／Ｆ）９０７、ハードディスクドライブ９０８、及びＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）ドライブ９０９を有する。レガシー入出力部は、入出力コントローラ９０６に接続されるＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１０、フレキシブルディスク（ＦＤ）ドライブ９１１、及び入出力（Ｉ／Ｏ）チップ９１２を有する。
【００５３】
ホスト・コントローラ９０１は、ＲＡＭ９０３と、高い転送レートでＲＡＭ９０３をアクセスするＣＰＵ９０２、及びグラフィック・コントローラ９０４とを接続する。ＣＰＵ９０２は、ＲＯＭ９１０、及びＲＡＭ９０３に格納されたプログラムに基づいて動作して、各部の制御をする。グラフィック・コントローラ９０４は、ＣＰＵ９０２等がＲＡＭ９０３内に設けたフレーム・バッファ上に生成する画像データを取得して、表示装置９０５上に表示させる。これに代えて、グラフィック・コントローラ９０４は、ＣＰＵ９０２等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【００５４】
入出力コントローラ９０６は、ホスト・コントローラ９０１と、比較的高速な入出力装置であるハードディスクドライブ９０８、通信インターフェイス９０７、ＣＤ−ＲＯＭドライブ９０９を接続する。ハードディスクドライブ９０８は、ＣＰＵ９０２が使用するプログラム、及びデータを格納する。通信インターフェイス９０７は、他の通信端末３２０に接続してプログラム又はデータを送受信する。ＣＤ−ＲＯＭドライブ９０９は、ＣＤ−ＲＯＭ９９２からプログラム又はデータを読み取り、ＲＡＭ９０３を介してハードディスクドライブ９０８、及び通信インターフェイス９０７に提供する。
【００５５】
入出力コントローラ９０６には、ＲＯＭ９１０と、フレキシブルディスク・ドライブ９１１、及び入出力チップ９１２の比較的低速な入出力装置とが接続される。ＲＯＭ９１０は、通信端末３１０が起動時に実行するブート・プログラム、あるいは通信端末３１０のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ９１１は、フレキシブルディスク９９３からプログラム又はデータを読み取り、ＲＡＭ９０３を介してハードディスクドライブ９０８、及び通信インターフェイス９０７に提供する。入出力チップ９１２は、フレキシブルディスク・ドライブ９１１、あるいはパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を接続する。
【００５６】
ＣＰＵ９０２が実行するプログラムは、フレキシブルディスク９９３、ＣＤ−ＲＯＭ９９２、又はＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード等の記録媒体に格納されて利用者によって提供される。記録媒体に格納されたプログラムは圧縮されていても非圧縮であってもよい。プログラムは、記録媒体からハードディスクドライブ９０８にインストールされ、ＲＡＭ９０３に読み出されてＣＰＵ９０２により実行される。ＣＰＵ９０２により実行されるプログラムは、通信端末３１０を、前述した各実施形態における無線通信部、データ記憶部、データ交換部、保有データ数記憶部、制御部等として機能させる。
【００５７】
以上に示したプログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク９９３、ＣＤ−ＲＯＭ９９２の他に、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）又はＰＤ（Ｐｈａｓｅ  Ｄｉｓｋ）等の光学記録媒体、ＭＤ（ＭｉｎｉＤｉｓｋ）等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークあるいはインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶媒体を記録媒体として使用して、ネットワークを介したプログラムとして情報共有システムを提供してもよい。
【００５８】
[他の実施形態]
本発明は以上の実施形態に限定されず、その他各種の付加変更が可能である。例えば、以下のような実施形態も本発明に含まれる。
【００５９】
例えば、上記第１および第２の実施形態では、保有データ数に従ってインテント値を決定したが、保有データ数に従ってインテント値およびタイブレークビット値を決定しても良い。図１２は、保有データ数に従ってインテント値とタイブレークビット値とを決定するためのテーブルの一例を示す。この例では、保有データ数を１６区分に分類し、保有データ数が小さい区分から順にインテント値を０から順に割り当て、更に同じ１区分を２分割し、保有データ数の少ない側にタイブレークビット値０を割り当て、保有データ数の多い側にタイブレークビット値１を割り当てている。例えば、１６区分中の１つの区分は保有データ数が２１〜４０であり、この区分に対してインテント値１を割り当て、当該区分を保有データ数２１〜３０の区分と保有データ数３１〜４０の区分とに２分割し、前者の区分にタイブレークビット値０を割り当て、後者の区分にタイブレークビット値１を割り当てている。通信端末の制御部１１５、２１５は図１２に示したテーブルを記憶し、保有データ数記憶部１１４、２１４に記憶された保有データ数と上記テーブルとに基づいて、インテント値とタイブレークビット値とを決定する。この例のようにインテント値だけでなくタイブレークビット値も保有データ数に依存して決定する場合、ネゴシエーションを行う通信端末間でタイブレークビット値が同じになるケースが発生する。このため、図５のステップＳ１２６において、双方のタイブレークビット値が同じならば、グループオーナーの決定手順を失敗とする。
【００６０】
また、例えばインテント値の最大値（１５）や最小値（０）など、特定のインテント値は管理者権限でしか割り当てないようにしてもよい。
【００６１】
また、保有データ数に従ってインテント値（およびタイブレークビット値）を決定する方法は、図２や図１２に示すようなテーブルを利用する方法以外に、計算式によって算出する方法等、他の方法を利用してもよい。
【００６２】
また、保有データ数によってタイブレークビット値のみ決定し、インテント値はランダムあるいは手動で設定するようにしてもよい。
【００６３】
また、上記第２の実施形態では、保有データ数に依存して決定されたインテント値をプローブ応答に含めるようにした。しかし、グループオーナーを決定するためのネゴシエーションに先だって、自通信端末の周囲に存在する他の通信端末のインテント値を知る方法としては、他に、サービスディスカバリクエリ（Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｑｕｅｒｙ）やサービスディスカバリレスポンス（Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｒｅｓｐｏｎｓｅ）に、保有データ数に依存して決定されたインテント値（およびタイブレークビット値）を含めるようにしてもよい。
【００６４】
また、上記実施形態では、インテント値を保有データ数のみに依存して決定したが、保有データ数以外の情報を考慮してインテント値を決定してもよい。例えば、インテント値を、保有データ数と通信端末の移動速度（０を含む）とに依存して決定し、保有データ数がより多いほど、そして、移動速度がより低いほど、より大きなインテント値を決定するようにしてよい。あるいは、インテント値を、保有データ数とその保有データのデータサイズとに依存して決定し、保有データの総データサイズがより大きいほど、より大きなインテント値を決定するようにしてよい。
【００６５】
なお、本発明は、日本国にて２０１３年４月２２日に特許出願された特願２０１３−０８９３８８の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願に記載された内容は、全て本明細書に含まれるものとする。
【産業上の利用可能性】
【００６６】
本発明は、自動車等の車両に搭載された通信端末間や、持ち運び可能な通信端末間において、各種コンテンツ等のデータの共有を行う場合に適用可能である。
【符号の説明】
【００６７】
１１０…通信端末
１１１…無線通信部
１１２…データ記憶部
１１３…データ交換部
１１４…保有データ数記憶部
１１５…制御部
１１６…アンテナ
１２０…通信端末
１３０…通信端末
２１０…通信端末
２１１…無線通信部
２１２…データ記憶部
２１３…データ交換部
２１４…保有データ数記憶部
２１５…制御部
２１６…アンテナ
２１７…交渉相手決定部
２２０…通信端末
２３０…通信端末
３１０…通信端末
９０１…ホスト・コントローラ
９０２…ＣＰＵ
９０３…ＲＡＭ
９０４…グラフィック・コントローラ
９０５…表示装置
９０６…入出力（Ｉ／Ｏ）コントローラ
９０７…通信インターフェイス（Ｉ／Ｆ）
９０８…ハードディスクドライブ
９０９…ＣＤ−ＲＯＭドライブ
９１０…ＲＯＭ
９１１…フレキシブルディスク（ＦＤ）ドライブ
９１２…入出力（Ｉ／Ｏ）チップ
９９２…ＣＤ−ＲＯＭ
９９３…フレキシブルディスク
【図１】
2014174746.tif 000003
【図２】
2014174746.tif 000004
【図３】
2014174746.tif 000005
【図４】
2014174746.tif 000006
【図５】
2014174746.tif 000007
【図６】
2014174746.tif 000008
【図７】
2014174746.tif 000009
【図８】
2014174746.tif 000010
【図９】
2014174746.tif 000011
【図１０】
2014174746.tif 000012
【図１１】
2014174746.tif 000013
【図１２】
2014174746.tif 000014
【図１３】
2014174746.tif 000015
【国際調査報告】
2014174746.tif 000016
2014174746.tif 000017
2014174746.tif 000018
2014174746.tif 000019