(57)【要約】  ピアツーピアネットワークにおいてグループオーナ（ＧＯ）の消失時にグループ再形成時間を短縮しシームレスな接続性を維持する方法を提供する。それぞれが緊急リーダとして動作する意思を有するクライアントノードである所定数の緊急リーダノードを優先順位付けする緊急リーダリストが各ノードに提供され、該緊急リーダリストはグループ形成時に作成される。前記緊急リーダノードは、リーダノードが通知なしに前記グループから消失したときにビーコンをブロードキャストする。前記緊急リーダリストの第１優先度の緊急リーダノードを除く各クライアントノードが、該クライアントノードによって検出された緊急リーダノードのうちの最高優先度の緊急リーダノードに接続する。
2017511053.tif 000002
【特許請求の範囲】
【請求項１】
無線ピアツーピアノードのグループにおけるグループ再形成を制御する方法において、前記ノードの１つがリーダとして動作し、他のノードが前記グループのクライアントとして動作し、該方法が、
グループ形成時に、それぞれが緊急リーダとして動作する意思を有するクライアントノードである所定数の緊急リーダノードを優先順位付けする緊急リーダリストを作成するステップと、
リーダノードが通知なしに前記グループから消失したときに前記緊急リーダノードからビーコンをブロードキャストするステップと、
前記緊急リーダリストの第１優先度の緊急リーダノードを除く各クライアントノードを、該クライアントノードによって検出された緊急リーダノードのうちの最高優先度の緊急リーダノードに接続するステップと
を含むことを特徴とする、無線ピアツーピアノードのグループにおけるグループ再形成を制御する方法。
【請求項２】
前記緊急リーダリストの各緊急リーダノードが他のノードから到達可能であることを特徴とする請求項１に記載の方法。
【請求項３】
前記緊急リーダリストの緊急リーダノードがそれぞれの位置インデックスを含む因子に基づいて選択され、各位置インデックスはグループの残りのメンバからの平均相対距離を表すことを特徴とする請求項１または２に記載の方法。
【請求項４】
前記第１優先度の緊急リーダノードがデフォルトで新リーダとして動作することを特徴とする請求項１ないし３のいずれか１項に記載の方法。
【請求項５】
前記第１優先度の緊急リーダノードを除くクライアントノードが前記第１優先度の緊急リーダノードに直接接続されることを特徴とする請求項１ないし４のいずれか１項に記載の方法。
【請求項６】
前記第１優先度の緊急リーダノードを除くクライアントノードが、前のセッションのセキュリティキーを再利用してピアツーピアインビテーションを用いて前記第１優先度の緊急リーダノードに接続されることを特徴とする請求項５に記載の方法。
【請求項７】
クライアントノードが前記第１優先度の緊急リーダノードの検出に失敗したが次の優先度の緊急リーダノードの検出に成功した場合、該クライアントノードが前記次の優先度の緊急リーダノードを通じて前記第１優先度の緊急リーダノードに接続されることを特徴とする請求項１ないし４のいずれか１項に記載の方法。
【請求項８】
前記第１優先度の緊急リーダノードが自己の送信時間フレームを複数の時間フェーズに再分割し、それらの時間フェーズの１つが、前記次の優先度の緊急リーダノードを通じての前記クライアントノードへの送信に使用されることを特徴とする請求項７に記載の方法。
【請求項９】
前記グループがＷｉ−Ｆｉ  Ｄｉｒｅｃｔピアツーピアグループであり、前記リーダが該Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔピアツーピアグループのグループオーナであることを特徴とする請求項１ないし８のいずれか１項に記載の方法。
【請求項１０】
無線ピアツーピアノードのグループにおけるグループ再形成を制御するシステムにおいて、前記ノードの１つがリーダとして動作し、他のノードが前記グループのクライアントとして動作し、
それぞれが緊急リーダとして動作する意思を有するクライアントノードである所定数の緊急リーダノードを優先順位付けする緊急リーダリストが各ノードに提供され、該緊急リーダリストはグループ形成時に作成され、
前記緊急リーダノードは、リーダノードが通知なしに前記グループから消失したときにビーコンをブロードキャストし、
前記緊急リーダリストの第１優先度の緊急リーダノードを除く各クライアントノードが、該クライアントノードによって検出された緊急リーダノードのうちの最高優先度の緊急リーダノードに接続する
ことを特徴とする、無線ピアツーピアノードのグループにおけるグループ再形成を制御するシステム。
【請求項１１】
前記緊急リーダリストの各緊急リーダノードが他のノードから到達可能であることを特徴とする請求項１０に記載のシステム。
【請求項１２】
前記緊急リーダリストの緊急リーダノードがそれぞれの位置インデックスを含む因子に基づいて選択され、各位置インデックスはグループの残りのメンバからの平均相対距離を表すことを特徴とする請求項１０または１１に記載のシステム。
【請求項１３】
前記第１優先度の緊急リーダノードがデフォルトで新リーダとして動作することを特徴とする請求項１０ないし１２のいずれか１項に記載のシステム。
【請求項１４】
前記第１優先度の緊急リーダノード以外のクライアントノードが前記第１優先度の緊急リーダノードに直接接続されることを特徴とする請求項１０ないし１３のいずれか１項に記載のシステム。
【請求項１５】
前記第１優先度の緊急リーダノードを除くクライアントノードが、前のセッションのセキュリティキーを再利用してピアツーピアインビテーションを用いて前記第１優先度の緊急リーダノードに接続されることを特徴とする請求項１４に記載のシステム。
【請求項１６】
クライアントノードが前記第１優先度の緊急リーダノードの検出に失敗したが次の優先度の緊急リーダノードの検出に成功した場合、該クライアントノードが前記次の優先度の緊急リーダノードを通じて前記第１優先度の緊急リーダノードに接続されることを特徴とする請求項１０ないし１３のいずれか１項に記載のシステム。
【請求項１７】
前記第１優先度の緊急リーダノードが自己の送信時間フレームを複数の時間フェーズに再分割し、それらの時間フェーズの１つが、前記次の優先度の緊急リーダノードを通じての前記クライアントノードへの送信に使用されることを特徴とする請求項１６に記載のシステム。
【請求項１８】
前記グループがＷｉ−Ｆｉ  Ｄｉｒｅｃｔピアツーピアグループであり、前記リーダが該Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔピアツーピアグループのグループオーナであることを特徴とする請求項１０ないし１７のいずれか１項に記載のシステム。
【請求項１９】
無線ピアツーピアグループのノードデバイスにおいて、該ノードデバイスは前記グループのリーダまたはクライアントのいずれかとして動作し、
他のノードデバイスと通信する無線通信部と、
それぞれが緊急リーダとして動作する意思を有するクライアントノードである所定数の緊急リーダノードを優先順位付けする緊急リーダリストであって、グループ形成時に作成される緊急リーダリストと、
該ノードデバイスが前記緊急リーダリストの第１優先度の緊急リーダノードである状態でリーダノードが通知なしに前記グループから消失すると、前記無線通信部がビーコンをブロードキャストし他の各クライアントノードに接続するように制御するコントローラと
を備えたことを特徴とするノードデバイス。
【請求項２０】
無線ピアツーピアグループのノードデバイスにおいて、該ノードデバイスは前記グループのリーダまたはクライアントのいずれかとして動作し、
他のノードデバイスと通信する無線通信部と、
それぞれが緊急リーダとして動作する意思を有するクライアントノードである所定数の緊急リーダノードを優先順位付けする緊急リーダリストであって、グループ形成時に作成される緊急リーダリストと、
該ノードデバイスが前記緊急リーダリストの緊急リーダノードであるが第１優先度の緊急リーダノードでない状態でリーダノードが通知なしに前記グループから消失すると、前記無線通信部がビーコンをブロードキャストし前記第１優先度の緊急リーダノードに接続するように制御するコントローラと
を備えたことを特徴とするノードデバイス。
【請求項２１】
前記ビーコンブロードキャストに応答して他のノードデバイスに接続するとき、前記コントローラは、該ノードデバイスが前記他のノードデバイスと前記第１優先度の緊急リーダノードとの間のリレーとして動作するように制御することを特徴とする請求項２０に記載のノードデバイス。
【請求項２２】
無線ピアツーピアグループのノードデバイスにおいて、該ノードデバイスは前記グループのリーダまたはクライアントのいずれかとして動作し、
他のノードデバイスと通信する無線通信部と、
それぞれが緊急リーダとして動作する意思を有するクライアントノードである所定数の緊急リーダノードを優先順位付けする緊急リーダリストであって、グループ形成時に作成される緊急リーダリストと、
該ノードデバイスがクライアントであるが緊急リーダノードでない状態でリーダノードが通知なしに前記グループから消失すると、前記無線通信部が緊急リーダノードからのビーコンを聴取し前記緊急リーダノードのうち最高優先度の緊急リーダノードに接続するように制御するコントローラと
を備えたことを特徴とするノードデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信システムの分野に関し、より詳細には、無線ピアツーピア（peer-to-peer, Ｐ２Ｐ）ネットワークにおけるグループ再形成の方法およびシステムに関する。
【背景技術】
【０００２】
Ｗｉ−Ｆｉアライアンスによって公開・管理されているＷｉ−Ｆｉ  Ｄｉｒｅｃｔは、中心的なアクセスポイント（Access Point, ＡＰ）を必要とせずにピアツーピア方式で行うデバイス間通信の分野で最近策定された標準である。インフラストラクチャモードのＩＥＥＥ８０２．１１ベースのＷＬＡＮにおいて従来のＡＰがもっている特殊なハードウェア機能をソフトウェアに移行することによって、どのデバイスもＡＰの機能を備えることができる。この基本機能を使用することにより、Ｗｉ−Ｆｉ  ＤｉｒｅｃｔではＡＰが不要となり、ノードどうしの間でインターネット接続を必要とせずにグループを形成することが可能となる。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔにおけるこのようなピアツーピアグループは、標準仕様においてグループオーナ（Group Owner, ＧＯ）として定義されるリーダによって管理される。リーダは、ＧＯネゴシエーションによって選択される。グループが形成されると、ＧＯは従来のＡＰの役割を果たす。すなわち、周期的なビーコンを送出し、あるノードから別のノードへデータパケットをルーティングする。標準の現在のバージョンは、ＧＯがそのクライアントに通知する十分な時間をとらずにグループを退出するときに生じるグループ停止の問題に対処していない。ＧＯの欠如によって、クライアントノードは、互いを再発見しネゴシエーションをして新たなグループを形成するまでに相当の時間がかかるために機能停止に陥る。これは実質的に、スループットの低下とレイテンシ（待ち時間）の増大につながる。
【０００３】
ＧＯ欠如時のクライアントのサービス停止という問題に対する１つの解決法によれば、ＧＯに追加的な責任を課することなくクライアントが相互にシームレスに接続し続けることが可能となる。ＧＯがグループを退出しなければならなくなる理由はさまざまな可能性があるが、次の２つに大別することができる。すなわち、（ａ）無線チャネルのランダムな挙動、モビリティ、急な停電や人災／天災によって引き起こされる突然のリンク障害の場合と、（ｂ）セルフィッシュＧＯ（Selfish GO）の場合である。セルフィッシュＧＯは、グループに対するサービス要求が満たされるとすぐにグループを退出して新たなグループに加入するＧＯである。従来のインフラストラクチャベースのＷｉ−Ｆｉにおいて、アクセスポイントは、関連するクライアントがアクティブである限りアクティブであることが必要なハードウェアである。しかし、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔのようなピアツーピアネットワークでは、ＧＯはラップトップコンピュータやスマートフォンのような、人間が介在するデバイスであり得るので、セルフィッシュＧＯの場合が非常に一般的なケースとなり得る。同時にＧＯの側としても、グループに対するサービス要求がもはやなく、現在のグループで利用可能でない緊急サービスが必要となって別のグループに加入しなければならないのにグループ管理のサービスを継続するよう求められるとすれば不公平であろう。デバイスは、互いのサービスを必要とするときにピアツーピアグループに加入する。クライアントデバイスがそのサービス要求が満たされたら自由にグループを退出してもよいとすれば、同じルールがＧＯにも適用されるべきである。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔの元々の動機は、どのデバイスもＧＯとして動作できるようにすることによってＡＰの役割を一般化することであるから、次のステップはそれをさらに一般化して、ＧＯがグループ内の他のノードと同じようにいつでもグループから退出することもできるようにすることとなるはずである。
【０００４】
関連技術には、現在のグループを停止させずにＧＯが退出するための退出方式を提案するいくつかの文献がある。しかし、これらの文献は、ＧＯが退出するときに、その後継者を選択し、退出前にＧＯ権限を計画的に引き継ぐ場合を対象としている。例えば、特許文献１（米国特許出願公開第２０１２／０２７８３８９Ａ１号明細書）に開示された方式では、退出するＧＯが、複数のクライアントに対してＧＯインテントを尋ねた後で、退出することを決定し、すべてのノードのうちから次のＧＯとなる意思（インテント）を応答した最も適当なノードを選択する。そして、新たなＧＯに関する情報は、退出するＧＯによって退出前に共有される。特許文献２（国際公開第２０１３１６２４９６Ａ１号）に開示された方式では、退出するＧＯが、グループメンバに対して後継意思を尋ね、後継者ＧＯのリストを作成する。後継者ＧＯは、クレデンシャル（証明書）に基づいて優先順位付けされてもよい。そして、退出するＧＯは退出前にグループメンバとそのリストを共有する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許出願公開第２０１２／０２７８３８９Ａ１号明細書
【０００６】
【特許文献２】国際公開第２０１３１６２４９６Ａ１号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、特許文献１によって提案された方式は、退出するＧＯが退出前に後継者を選択する十分な時間があると暗黙のうちに仮定しているので、ＧＯが上記のような災害、急な停電、モビリティ、無線チャネルのランダムな挙動のような突然のイベントにより急に消失するケースあるいはセルフィッシュＧＯの場合には失敗する。特許文献２によって提案された方式も、ＧＯの急な消失によって生じる問題に対処できないので同じ欠点を有する。また、退出前に複数の後継者ノードを含むリストを共有することが提案されているが、すべてのノードがリスト内の第１のノードに接続するので、そのような共有を行う根拠も利益もない。したがって、複数の後継者ノードを含むリストを作成し共有することには利点がない。すなわち、本質的に、これは第１の考え方そのものに帰着する。
【０００８】
本発明の目的は、ピアツーピアネットワークにおいて、そのネットワークリーダが不意に退出するときに相互接続性を維持することである。
【０００９】
本発明のもう１つの目的は、ネットワークリーダの役割を一般化し、ネットワークリーダが、ピアツーピアグループ内の他のクライアントノードと全く同じようにいつでもグループを退出できるようにすることである。
【００１０】
上記の目的に加えて、本発明の他の明らかな利点は、詳細な説明および図面から理解されるであろう。
【課題を解決するための手段】
【００１１】
可能性のあるさまざまな理由によるリーダの不意の消失後にグループにおける急な停止が起こる問題を解決するため、緊急リーダとなる意思（インテント）がグループ形成と同時にグループ内で共有される。新たなクライアントがそのグループに追加される場合、リーダは、緊急リーダのインテントおよびメトリックに基づいて緊急リーダのリストを作成・更新してもよい。リストは、事前に決定されたリーダの退出時刻を待つ代わりに、グループセッションの継続時間中、関連するクライアントと周期的に共有されてもよい（または、リストが変更されたら直ちに共有されてもよい）。クライアントは、最後に受信した緊急リーダリストを保存する。
本発明による方法は、無線ピアツーピアノードのグループにおけるグループ再形成を制御する方法である。前記ノードの１つがリーダとして動作し、他のノードが前記グループのクライアントとして動作する。該方法は、それぞれが緊急リーダとして動作する意思を有するクライアントノードである所定数の緊急リーダノードを優先順位付けする緊急リーダリストを前記ノードに提供するステップと、リーダノードが通知なしに前記グループから消失したときに前記緊急リーダノードからビーコンをブロードキャストするステップと、前記緊急リーダリストの第１優先度の緊急リーダノードを除く各クライアントノードを、該クライアントノードによって検出された緊急リーダノードのうちの最高優先度の緊急リーダノードに接続するステップとを含む。
本発明によるシステムは、無線ピアツーピアノードのグループにおけるグループ再形成を制御するシステムである。前記ノードの１つがリーダとして動作し、他のノードが前記グループのクライアントとして動作する。それぞれが緊急リーダとして動作する意思を有するクライアントノードである所定数の緊急リーダノードを優先順位付けする緊急リーダリストが各ノードに提供される。前記緊急リーダノードは、リーダノードが通知なしに前記グループから消失したときにビーコンをブロードキャストする。前記緊急リーダリストの第１優先度の緊急リーダノード以外の各クライアントノードが、該クライアントノードによって検出された緊急リーダノードのうちの最高優先度の緊急リーダノードに接続する。
【発明の効果】
【００１２】
本発明によれば、ピアツーピアネットワークにおいて、そのネットワークリーダが不意に退出するときに相互接続性を迅速に回復することができる。
【００１３】
本発明は、以上のように複数のステップおよびそのようなステップの相互関係と、そのようなステップを実行するように適応した構成、要素の組合せおよび部品の配置を実現する装置とを含み、これらはすべて、以下の詳細な説明と、特許請求の範囲に記載される本発明の技術的範囲とにおいて具体化される。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態による無線ピアツーピア（Ｐ２Ｐ）ネットワークを示す模式図である。
【図２】本発明の実施形態によるノードの機能的構成を示すブロック図である。
【図３】本発明の実施形態によるノードに提供されるＥＧＯリストの例を示す模式図である。
【図４】本発明の実施形態によるグループ再形成方法を示すフローチャートである。
【図５】本発明の実施形態による、ＧＯが急に消失したときに行われるネットワークのグループ再形成の例を示す模式図である。
【図６】本発明の実施形態によるシステムの可能なネットワークトポロジーの例を示す模式図である。
【図７】本発明の実施形態によるシステムの可能なネットワークトポロジーの別の例を示す模式図である。
【図８】本発明の実施形態による、グループが存在しないときにＥＧＯリストを生成する動作を示すフローチャートである。
【図９】本発明の実施形態による、グループが既に存在するときにＥＧＯリストを生成する動作を示すフローチャートである。
【図１０】実施形態の動作を説明するための、ノードの送信領域を示す模式図である。
【図１１】実施形態により提案される考え方を用いたＷｉＦｉ  Ｄｉｒｅｃｔを示すタイミングシーケンスである。
【図１２】実施形態の動作を説明するための、ノードの送信領域の例を示す模式図である。
【図１３】実施形態の動作を説明するための、システムの可能なネットワークトポロジーの例を示す模式図である。
【図１４】実施形態の動作を説明するための、システムの可能なネットワークトポロジーの別の例を示す模式図である。
【発明を実施するための形態】
【００１５】
以下、本発明の例示的実施形態について、例としてＷｉＦｉ  Ｄｉｒｅｃｔ標準に従って説明する。例示的実施形態は、添付図面とともに十分詳細に記述され、最後に典型例ケースを用いて説明される。
【００１６】
前述のように、リーダ（ＧＯ：グループオーナ）の不意の消失後にグループにおける急な停止が起こる問題を解決するため、緊急リーダ（ＥＧＯ：緊急グループオーナ）となる意思がグループ形成と同時にコネクション要求フレームで共有される。ＧＯは、そのグループに新たなクライアントの追加を継続するとともに、ＥＧＯインテントおよびＥＧＯメトリックに基づいて、ｋ個のＥＧＯノードを含むリストの作成・更新を継続する。リストは、事前に決定されたＧＯの退出時刻を待つ代わりに、グループセッションの継続時間中、関連するクライアントと周期的に共有される。クライアントは、最後に受信したＥＧＯリストを保存する。
【００１７】
ＥＧＯリスト内のノードは、以下のセクションで詳細に説明するアルゴリズムに従ってＧＯによって決定される優先度順に配列される。
【００１８】
ＧＯが消失すると、ＥＧＯが自律的なグループオーナとなり、ビーコンの送信を開始する。クライアントは、好ましくは前のセッションのクレデンシャル（セキュリティキー）を用いて招待要求（invitation）を送信することによって、受信したすべてのＥＧＯビーコンのうちでＥＧＯメトリックの最も高いＥＧＯに接続する。こうして、内部レジストラにより認証キーを生成しエンローリー（Enrollee）と共有するためのＧＯネゴシエーションとＷＰＳ（Wireless Protected Setup）プロビジョニング段階の最初の部分を省略する。これにより、再接続時間がかなり短縮される。あらゆるノードが互いの送信範囲（送信到達距離）内にある小規模ネットワークでは、すべてのクライアントが必然的に第１のＥＧＯに接続することになる。残りのＥＧＯも通常のクライアントとして第１のＥＧＯに結合する。しかし、大規模な分散ネットワークでは、クライアントは、第１のＥＧＯを見つけられない場合、リスト内の次の優先度のＥＧＯに接続する。このような特別な場合、より優先度の低いＥＧＯが、クライアントと第１のＥＧＯとの間でコネクションを交互に切り替えることによって、第１のＥＧＯと遠隔クライアントとの間の中継（リレー）ノードとして動作する。特定のＥＧＯにクライアントが全く接続しない場合、そのＥＧＯは通常のクライアントとして第１優先度のＥＧＯに結合する。こうして、事前の情報なしにＧＯが急に退出した後であっても、関連するクライアントはばらばらにならない。また、ゼロからグループの形成を開始する必要もない。したがって、本方法は、大きいサイズのファイルのストリーミングや共有のために連続的な接続を必要とするアプリケーションにおいて、レイテンシを短縮しスループットを増大させるという目的に役立つ。
【００１９】
１．システム構成
図１に示すように、簡単のため、６個のノード１０１〜１０６が、本発明のメカニズムによって、通常のＷｉＦｉ  Ｄｉｒｅｃｔグループを形成すると仮定する。ここで、ノード１０１はグループオーナ（ＧＯ）として動作し、他のノード１０２〜１０６はそれぞれ関連するクライアントとして動作する。ＧＯノード１０１は、従来のインフラストラクチャベースのＷｉ−Ｆｉにおけるアクセスポイント（ＡＰ）と同様の役割を果たすとともに、緊急グループオーナのリスト（ＥＧＯリスト）を管理する。後述するように、ＥＧＯは、すべてのクライアントのＥＧＯメトリックと、緊急グループオーナとなるＥＧＯインテントとに基づいて選択される。ＥＧＯリストは、更新されるたびに、または周期的に、クライアントノード１０２〜１０６と共有される。
【００２０】
図２を参照すると、ノード１０１〜１０６は同じ構成を有するが、ＧＯまたはクライアントとして動作可能である。ノードは以下の機能、すなわち、無線システム２０１、ユーザコントローラ２０２、ＥＧＯリスト２０３、プロセッサ２０４、およびメモリ２０５を有する。無線システム２０１は、ＷｉＦｉ  Ｄｉｒｅｃｔ通信機能を有する。ユーザコントローラ２０２は、デバイスディスカバリ、ＧＯネゴシエーションおよびプロビジョニングサービスディスカバリのようなＷｉＦｉ  Ｄｉｒｅｃｔ接続手続きを制御する。ＥＧＯリスト２０３は、ＥＧＯインテントがゼロでないすべてのクライアントのＥＧＯメトリックを比較するアルゴリズムに従って選択されたＥＧＯを含む。プロセッサ２０４は、本実施形態によるグループ再形成を含め、メモリ２０５に保存されたオペレーティングシステムおよびアプリケーションを実行することができる。ＥＧＯリスト２０３は、メモリ２０５に含まれてもよいし、半導体メモリのような別個のストレージデバイスに含まれてもよい。
【００２１】
図３を参照すると、ＥＧＯリスト２０３は、少なくとも、ノード識別子（例えばＭＡＣアドレス）によって識別され優先順位付けされたＥＧＯの情報を含む。ＥＧＯ優先度は、ＥＧＯの位置インデックス、電力可用性、デバイスタイプ、処理速度、メモリサイズ、アンテナ利得等のような因子に基づいて決定可能である。ＥＧＯリスト２０３内のエントリの最大数を制限するのが好ましい。後述するように、ＥＧＯリスト２０３はＧＯノードに生成され、関連するすべてのクライアントノードと共有されることにより、クライアントノードは、ＧＯの消失時にグループ再形成を実行することができる。
【００２２】
２．グループ再形成
図４を参照すると、ＧＯの消失が検出されると（動作Ｓ３０１）、各ＥＧＯノードは自律的なＧＯとなり、ビーコンの送信を開始する（動作Ｓ３０２）。各クライアントノードは、ビーコンを聴取できた最高優先度のＥＧＯへ招待要求を送信する（動作Ｓ３０３）。クライアントノードが最高優先度ＥＧＯのビーコンを聴取できない場合、そのクライアントノードはＥＧＯリスト２０３内の次の優先度のＥＧＯに接続する。この場合、次の優先度のＥＧＯは、２つの状態、すなわち、一方から切断した状態と他方に接続した状態との間で交互に切り替わることによって、クライアントノードと新ＧＯ（最高優先度ＥＧＯ）との間の中継ノードとして動作する。
【００２３】
別の例として、ＥＧＯは、ビーコンブロードキャストを送信しなくてもよい。ＧＯが退出すると、グループのすべてのメンバが互いを発見するためにＰ２Ｐファインド（find）動作を開始する。そして、各クライアントノードが、聴取できた最高優先度のＥＧＯに接続する。
【００２４】
図１に示すようなネットワークトポロジーを例として、グループ再形成の概要について図５〜図７を参照して説明する。ＥＧＯリスト２０３において、クライアントノード１０６が最高優先度のＥＧＯであり、クライアントノード１０３が次の優先度のＥＧＯであると仮定する。
【００２５】
図５を参照すると、ＧＯノード１０１が急に消失すると、ＥＧＯノード１０３および１０６が、ＣＳＭＡ／ＣＡメカニズムを用いて同じ動作チャネル上でビーコンのブロードキャストを開始する。すべてのクライアントノードは、受信されるすべてのビーコンのうちで、ＥＧＯリストに保存された最高優先度のノード１０６を発見しようとする。クライアントは、各ビーコン期間にビーコンを聴取し続け、より高い優先度のＧＯが見つかればそれに切り替える。
【００２６】
図６を参照すると、すべてのクライアントノード１０２〜１０５が最高優先度のＥＧＯノード１０６を発見することに成功すると、ノード１０２〜１０５は、新ＧＯノード１０６に接続する。図６は、ＧＯノード１０６がＥＧＯリスト内の最高優先度ノードである緊急ＧＯの責任を負っているＷｉ−Ｆｉ  ＤｉｒｅｃｔグループＩＩを示している。また、すべてのクライアントノード１０２〜１０５がＥＧＯノード１０６のビーコンを聴取できるようなより単純なネットワークのケースでは、すべてのクライアントノード１０２〜１０５が、前のセッションのセキュリティキーを再利用してＰ２Ｐインバイト（invite）を用いてＥＧＯノード１０６に接続することができる。持続的なグループを再開するため、ＥＧＯは、前のセッションのネットワークｉｄおよび前のセッションのすべてのメンバのＭＡＣアドレスを含む設定ファイルを擬似的に生成することができる。クライアントも、このＥＧＯをＧＯとした（すなわち、ＥＧＯのＭＡＣアドレスをＢＳＳＩＤとした）仮想的な過去のセッションのクレデンシャルを含む設定ファイルを擬似的に生成することができる。これにより、ＥＧＯはあたかも前のセッションのＧＯであるかのように振る舞うことが可能となり、他のすべてのクライアントは単に招待要求を送信することで、持続的グループを再開することができる。このような持続的グループの生成は、再接続時間を短縮することを目指している。
【００２７】
しかし、ＥＧＯノード１０６がクライアントノードから到達不能であるとき、そのノードは、より低い優先度のＥＧＯに接続しようとする。図７に示すように、クライアントノード１０２がＥＧＯノード１０６のビーコンを聴取できないため、次の優先度のＥＧＯノード１０３に接続すると仮定する。すべてのＥＧＯは互いから到達可能であるので、クライアントノード１０３は、クライアントノード１０２と新ＧＯノード１０６との間の中継ノードとして動作する。この動作の詳細について次に説明する。
【００２８】
ＥＧＯノード１０６は、ＧＯを引き継ぐと、前のグループＩのすべてのクライアントからの加入要求を待機する。ＥＧＯノード１０６は、自己のビーコンをうまく聴取できなかったクライアントがあることを他の低優先度のＥＧＯを通じて知った場合、自己の送信レートを半分にする。
【００２９】
すなわち、図７に示すように、新ＧＯノード（すなわちＥＧＯノード１０６）は、通常のクライアントノード１０４および１０５へ完全な時間スーパーフレームでデータを送信する。時間スーパーフレームは、複数の時間スロットの集まりである。しかし、新ＧＯノード１０６は、低優先度ＥＧＯノード（ここではクライアントノード１０３）へは、１つの完全な時間スーパーフレームの一部（ここでは半分）だけデータを送信する。具体的には、新ＧＯノード１０６が１つの完全な時間スーパーフレームのうち前半はデータを送信し後半は停止することにより、低優先度ＥＧＯノード１０３は、ＲＴＳ−ＣＴＳメカニズムを用いたＣＳＭＡ／ＣＡのような衝突回避方式を用いることにより、同じチャネル上で、前半はデータを受信し、後半は遠隔クライアントノード（ここではノード１０２のみ）へデータを転送することが可能となる。換言すれば、低優先度ＥＧＯは、第１優先度のＥＧＯノード１０６および遠隔クライアント１０２に交互に接続・切断を行うメカニズムに従ってリレーとして動作する。時間フレームの前半で、第２優先度のＥＧＯノード１０３は、第１優先度のＥＧＯノード１０６のグループ内のクライアントとして、第１優先度のＥＧＯノード１０６からメッセージを受信する。しかし、後半では、第２優先度のＥＧＯノード１０３は第１優先度のＥＧＯノード１０６から切断し、遠隔クライアント１０２とグループを形成して情報を再送する。このメカニズムは、災害やノードモビリティの影響を受けやすいＷｉＦｉ  ＤｉｒｅｃｔベースのＰ２Ｐネットワークの通常の広域配備において、すべてではなくても最大限の数のノードと連絡をとることに関して、システムの堅牢性を大幅に向上させる。
【００３０】
３．ＥＧＯリストの生成およびＥＧＯの選択
前述のように、新グループＩの形成時に、グループを形成しようとするノードは、Ｐ２Ｐグループ形成の接続要求フレーム内にＥＧＯインテントを含める。ＧＯネゴシエーションに勝ったノード（ここではノード１０１）は、グループの開始時にただちに、その相手のＥＧＯインテント（ＥＧＯｉ）に基づいてＥＧＯリストを作成する。ＥＧＯｉは、クライアントがＥＧＯとして動作したい場合にそのクライアントによって１にセットされる１ビットのフラグである。ＥＧＯインテント情報（ＥＧＯフラグ）は、Ｐ２Ｐグループ形成のＰ２Ｐコネクトフレームに埋め込まれる。ＥＧＯｉは、２つのノードがグループを形成するときにＰ２Ｐコネクトフレームに含められ、ノードが既存のグループに加入する場合にプロビジョニングサービスディスカバリフレームに含められる。そこで、ＥＧＯ選択およびＥＧＯリスト生成の動作について、ＧＯネゴシエーションおよびプロビジョニングディスカバリを用いた上記のそれぞれの場合において説明する。
【００３１】
３．１）グループが存在しないときのＥＧＯリスト生成
図８を参照すると、例えばノード１０１および１０６がデバイスディスカバリ手続き（動作Ｓ４０１）を通じて互いを発見し、ノード１０１がＧＯネゴシエーション手続き（動作Ｓ４０２）を通じてグループＩのＧＯとなる。両方のノードとも、自己の接続要求フレーム内にＥＧＯｉを含める。ＧＯネゴシエーションに勝ったノードがＧＯとなり、ＧＯネゴシエーション中に交換されるＰ２Ｐコネクトフレームにおいて、他方のノードのＥＧＯｉフラグをチェックする（動作Ｓ４０３）。ＥＧＯｉは、クライアントがＥＧＯとして動作したい場合にそのクライアントによって１にセットされる１ビットのフラグである。別の可能な例として、ＧＯは、ＥＧＯインテントをＰ２Ｐコネクトフレームに含める代わりに、グループ形成後にＥＧＯインテントを尋ねてもよい。
【００３２】
ＧＯノード１０１がクライアントノード１０６からＥＧＯｉ＝１（非ゼロ）を受信した場合（動作Ｓ４０４：ＹＥＳ）、ＧＯノード１０１はＥＧＯクレデンシャルを要求する（動作Ｓ４０５）。ＥＧＯクレデンシャルは、クライアントノードの情報であって、以下のものを含み得るが、これらに限定されない：位置（ＥＧＯとなる可能性のあるノードは、ＧＰＳのようなメカニズムを備えていることが好ましい）、ＣＰＵ速度、一次メモリ、固定かモバイルか、残存電力（モバイルの場合）、アンテナ利得、送信電力、送信範囲および最大サポートデータレート。
【００３３】
クライアントノードからＥＧＯクレデンシャルを受信すると、ＧＯノード１０１は、受信した値に基づいてメトリックを計算し、自己のＥＧＯリスト２０３にデバイスＩＤを保存してから、ＥＧＯリスト２０３をクライアントノード１０６と共有する（動作Ｓ４０６）。ＥＧＯメトリックは、ＥＧＯインテントが１である各クライアントノードの属性情報から計算される。新たなデバイスがグループに加入すると、ＧＯノード１０１は、必要であれば、ＥＧＯメトリックを計算しＥＧＯリストを更新する。ＥＧＯリストはｋ個のノードからなり、ＥＧＯリストに更新があれば、または周期的ビーコンで、すべての関連するクライアントと共有される。ＥＧＯリストの更新は、後述するように、グループに加入する可能性の高い新ノードがある場合や、ＥＧＯリスト内のノードがグループを退出するか、または、既存のクライアントが、ＥＧＯインテントおよびグループ加入時よりも良好なクレデンシャルを送信する場合（例えば、そのノードはスマートフォンであって、グループ加入時にはバッテリ電力が非常に低かったが、その後に電源に差し込まれた場合）に行われ得る。ＧＯノード１０１がクライアントノード１０６からＥＧＯｉ＝０を受信すると（動作Ｓ４０４：ＮＯ）、クライアントノード１０６は通常のクライアントとしてグループに追加される（動作Ｓ４０７）。
【００３４】
３．２）グループが既に存在するときのＥＧＯリスト生成
図９を参照すると、例えばＧＯノード１０１およびノード１０３がデバイスディスカバリ手続き（動作Ｓ５０１）を通じて発見され、ＧＯノード１０１はプロビジョニングサービスディスカバリ手続き（動作Ｓ５０２）を通じてノード１０３をグループＩに追加する。クライアントノード１０３から受信されたプロビジョニングサービスディスカバリフレームにＥＧＯｉが埋め込まれているので、ＧＯノード１０１は、プロビジョニングサービスディスカバリ中にクライアントノード１０３のＥＧＯｉフラグをチェックする（動作Ｓ５０３）。別の可能な例として、ＧＯは、ＥＧＯインテントをプロビジョニングサービスディスカバリフレームに含める代わりに、グループ形成後にＥＧＯインテントを尋ねてもよい。
【００３５】
ＧＯノード１０１がクライアントノード１０３からＥＧＯｉ＝１（非ゼロ）を受信した場合（動作Ｓ５０４：ＹＥＳ）、ＧＯノード１０１はＥＧＯクレデンシャルを要求する（動作Ｓ５０５）。クライアントノード１０３からＥＧＯクレデンシャルを受信すると、ＧＯノード１０１は、受信したＥＧＯクレデンシャル情報に基づいてＥＧＯメトリックＭｎｅｗを計算した後（動作Ｓ５０６）、計算したＥＧＯメトリックＭｎｅｗをＥＧＯリスト２０３内のそれぞれの既存のＥＧＯノードのＥＧＯメトリックＭｉと比較する（動作Ｓ５０７）。
【００３６】
ＥＧＯメトリックＭｎｅｗが既存のＥＧＯノードのＥＧＯメトリックＭｉよりも良好である場合（動作Ｓ５０８：ＹＥＳ）、クライアントノード１０３は、ＥＧＯリスト２０３内の新エントリとして既存のＥＧＯノードと置き換わる（動作Ｓ５０９）。その後、置き換わったノード１０３は、自己のクレデンシャルを再度送信する（動作Ｓ５１０）。例えば、ノード１０３は、ＥＧＯノードによって空き（vacancy）がアドバタイズされるときに、自己のクレデンシャルを送信するように要求される。しかし、通常のクライアントがそのＥＧＯクレデンシャルをＧＯノードへ送信するように促すのが「空き」である必要はない。稀な場合として、ノードが、グループ加入時に比べて良好なクレデンシャルを後で獲得することがあり得る。例えば、スマートフォンやラップトップコンピュータが、グループ加入時には制限されたバッテリ電力で動作していて、そのＥＧＯメトリックは低かったとする。しかし、グループ加入後のある時に安定電源に接続されれば、今ではＥＧＯメトリックが上昇しているであろう。そこでクライアントは、空きを待つ代わりに、いつでも自己のクレデンシャルを再送することができる。換言すれば、クライアントは、自己のクレデンシャルを送信するためにＧＯノードからのＶＡＣＡＮＣＹ  ＮＯＴＩＣＥ（空き通知）を待たなくてもよく、代わりにクライアントは、自己のパラメータが正方向に更新されたら自己のクレデンシャルを直ちに送信することができる。これにより、ＧＯノード１０１はメトリックを迅速に計算し、それをＥＧＯリスト内のノードのメトリックと比較し、受け入れるか拒否するかを決定することができる。置き換わったノード１０３からクレデンシャルを受信した後、ＧＯノード１０１はＥＧＯリスト２０３を更新してから、ＥＧＯリスト２０３をすべてのクライアントノード１０６および１０３と共有する（動作Ｓ５１１）。
【００３７】
ＥＧＯメトリックＭｎｅｗが既存のＥＧＯノードのＥＧＯメトリックＭｉよりも良好でない場合（動作Ｓ５０８：ＮＯ）、クライアントノード１０３は通常のクライアントとして加入する（動作Ｓ５１２）。その後、新ノード１０３はそのクレデンシャルを送信する（動作Ｓ５１３）。例えば、ＥＧＯリストに空きがあるとき、ＧＯノード１０１は新ノード１０３に対して、一度そのクレデンシャルを送信するよう要求する。しかし、上記のように、通常のクライアントがそのＥＧＯクレデンシャルをＧＯノードへ送信するように促すのが「空き」である必要はない。その後、ＧＯノード１０１はＥＧＯリスト２０３を更新してから、ＥＧＯリスト２０３をすべてのクライアントノード１０６および１０３と共有する（動作Ｓ５１１）。ＧＯノード１０１がクライアントノード１０３からＥＧＯｉ＝０を受信すると（動作Ｓ５０４：ＮＯ）、クライアントノード１０３は通常のクライアントとしてグループに加入する（動作Ｓ５１４）。
【００３８】
３．３）ＥＧＯの選択
ＧＯは、ＥＧＯ候補の位置インデックス（position index, ｐ．ｉ．）を以下のように計算してもよい。
【００３９】
【数１】
2017511053.tif 000003
【００４０】
ここで、（ｘ，ｙ）はＥＧＯ候補の位置を表し、（ｘｉ′，ｙｉ′）はグループ内の各ノードの位置を表し、Ｎはグループ内のクライアント数を表す。位置インデックスｐ．ｉ．は、ＥＧＯを選択するために使用される。例えば、最小のｐ．ｉ．を有するノードは、一様分布したノードの場合にはネットワーク領域の中心近くに位置し、非一様なノード分布においては少なくとも大多数のノードに最も近いため、ｐ．ｉ．の高いノードよりも優先される。
【００４１】
ただし、ＥＧＯを選択するためにＧＯによって使用されるパラメータには他のさまざまなものがある。ＥＧＯリスト内の各ノードはＥＧＯリスト内の他のノードから必ず到達可能でなければならないため、次の条件も必要である。
【００４２】
【数２】
2017511053.tif 000004
【００４３】
ここで、（ｘｊ＾，ｙｊ＾）はｊ番目のＥＧＯの位置を表し、ｘ＾の記号「＾」は文字ｘの上のバーを示す。Ｒｊはｊ番目のＥＧＯの送信範囲であり、ｋはＥＧＯリスト内のＥＧＯの数である。これにより、前に説明したように、急な停止中に接続性を維持することに関して、本発明の方法の堅牢性が保証される。
【００４４】
図１０を参照して、ＥＧＯ条件が必要な理由を説明する。一般にスマートフォン、ラップトップコンピュータ、プリンタ、カメラ等のさまざまなデバイスからなるＰ２Ｐネットワークでは、各デバイスの通信範囲が相異なるのは全く普通である。ＧＯノードＡがクライアントノードＢおよびＣとともにＰ２Ｐグループを構成し、ノードＢおよびＣはＧＯノードＡの送信範囲Ｒａの内部に位置するが、ノードＣはノードＣの送信範囲Ｒｃの外部にあり、ノードＢもノードＢの送信範囲Ｒｂの外部にあると仮定する。そこで、図１０は、ＧＯノードＡがノードＢおよびＣの両方を検出することができるが、ノードＢおよびＣは互いを検出できない一般的状況を示している。したがって、ＧＯ権限がノードＢに引き継がれた場合、ノードＣはそれに接続できなくなり、逆も同様である。
【００４５】
このようなＰ２Ｐネットワークであってもシームレスな接続性を維持するため、単一のＥＧＯの代わりにＥＧＯのリストが各ノードごとに作成され、各ＥＧＯが他のすべてのＥＧＯから到達可能でなければならないことが義務づけられる。これにより、あるクライアントが最高優先度のＥＧＯからビーコンを聴取できない場合でも、少なくとも１つのＥＧＯからビーコンを受信できる可能性が高い。受信されるすべてのビーコンのうちから、クライアントは最高優先度のＥＧＯを選択し、それと結合する。すなわち、２個のノードＢおよびＣは同じＧＯノードＡに関連づけられているが、互いの送信範囲の外部にあるために直接には互いを聴取できない。このため、ＢまたはＣの一方がＥＧＯとして選択された場合、他方のノードはそのビーコンを受信できない。そこで、ネットワークの堅牢性および障害耐性を高めるため、（互いから到達可能な）複数のＥＧＯという考えが提案される。
【００４６】
４．例
図１１を参照して、フレーム交換の手順を、図１２〜図１４に示す典型例を用いて説明する。ＮＯＤＥ１およびＮＯＤＥ２は交互にプローブ要求を送信し、互いを発見するためにチャネルを聴取する（動作Ｓ６０１）。互いを発見すると、グループオーナ（ＧＯ）ネゴシエーションおよびＥＧＯ選択が行われる（動作Ｓ６０２）。すなわち、ＧＯネゴシエーションでは、ＮＯＤＥ２がＧＯとして選択され、ＮＯＤＥ１はＰ２Ｐコネクトメッセージ内で緊急グループオーナ（ＥＧＯ）となる意思を表示する。これは図１２（Ａ）に示されている。ＮＯＤＥ１は、図１２（Ｂ）に示すように、ＥＧＯとなるためにクレデンシャルをＮＯＤＥ２と共有する。図１２（Ｂ）のＥＧＯリストのノードＩＤは、例えば、ＥＧＯノード（ＮＯＤＥ１）のＭＡＣアドレスである。
【００４７】
次に、ＮＯＤＥ２がビーコンブロードキャストを送出し、これがＮＯＤＥ３およびＮＯＤＥ４によって聴取される（動作Ｓ６０３）。ＮＯＤＥ３およびＮＯＤＥ４は、Ｐ２Ｐコネクトフレーム（プロビジョニングディスカバリ要求）をＮＯＤＥ２へ送信し、ＧＯノードＮＯＤＥ２に接続する（動作Ｓ６０４およびＳ６０５）。ＮＯＤＥ３およびＮＯＤＥ４の両者はそれぞれ自己のＥＧＯクレデンシャルをＮＯＤＥ２と共有する。次に、ＮＯＤＥ２がビーコンブロードキャストを送出し、これがＮＯＤＥ５によって聴取される（動作Ｓ６０６）。ＮＯＤＥ５は、プロビジョニングディスカバリフレームをＮＯＤＥ２と交換し、ＧＯノードＮＯＤＥ２に接続する（動作Ｓ６０７）。ＮＯＤＥ５は自己のＥＧＯクレデンシャルをＮＯＤＥ２と共有する。ＮＯＤＥ２は自己のメトリックを計算し、ＥＧＯリストを更新し、ｋ個（この例ではｋ＝３）のＥＧＯからなるリストを含むブロードキャストメッセージを送出する。このようにしてＮＯＤＥ２は図１３（Ａ）に示すようにすべてのクライアントノードに接続され、図１３（Ｂ）に示すようなＥＧＯリストを共有する。図１３（Ｂ）のＥＧＯリストのノードＩＤは、例えば、各ＥＧＯノード（ＮＯＤＥ１，ＮＯＤＥ４，ＮＯＤＥ３）のＭＡＣアドレスである。
【００４８】
ＮＯＤＥ２が退出すると（動作Ｓ６０８）、すべてのＥＧＯ（すなわち、優先度順にＮＯＤＥ１、ＮＯＤＥ３およびＮＯＤＥ４）はＣＳＭＡ／ＣＡを用いて同じ動作チャネル上にブロードキャストビーコンを送出する（動作Ｓ６０９）。ＮＯＤＥ３およびＮＯＤＥ４は第１優先度のＥＧＯであるＮＯＤＥ１のビーコンを聴取でき、それに接続する。ＮＯＤＥ５はＮＯＤＥ１のビーコンを受信できず、図１４に示すように、次の優先度のＥＧＯすなわちＮＯＤＥ４に結合する。
【００４９】
好ましくは、ＧＯノード１０１が退出しＥＧＯが自律的なＧＯとしてビーコン送出を開始すると、クライアントノードは、Ｐ２Ｐコネクトフレームを交換して新しいキーを生成する代わりに、前のセッションのセキュリティキーを用いてＰ２Ｐ招待要求を送信してそれらのＥＧＯに接続する。これにより、新たなセキュリティキーを生成するＧＯネゴシエーションとＷＰＳ（Wireless Protected Setup）の最初の部分を取り除くことができる。こうして、ＧＯネゴシエーションを省略して旧キーを使用することにより、再接続時間を短縮することができる。
【００５０】
図１１〜図１３は、たまたまＮＯＤＥ２がグループのＧＯとなる例示的ケースを説明するためのものである。ＧＯは、ＮＯＤＥ１が第１優先度のＥＧＯでありＮＯＤＥ４が第２優先度のＥＧＯであるようなｋ個（この例ではｋ＝３）のＥＧＯからなるリストを管理する。ＧＯ（ＮＯＤＥ２）が消失すると、すべてのノードがＮＯＤＥ１に接続する。ＮＯＤＥ５は、ＮＯＤＥ１への接続に失敗した後にＮＯＤＥ４に接続する。
【産業上の利用可能性】
【００５１】
本発明は、無線ピアツーピア（Ｐ２Ｐ）ネットワークに適用可能である。
【符号の説明】
【００５２】
１０１−１０６  ノード
２０１  無線システム
２０２  ユーザコントローラ
２０３  ＥＧＯリスト
２０４  プロセッサ
２０５  メモリ
【図１】
2017511053.tif 000005
【図２】
2017511053.tif 000006
【図３】
2017511053.tif 000007
【図４】
2017511053.tif 000008
【図５】
2017511053.tif 000009
【図６】
2017511053.tif 000010
【図７】
2017511053.tif 000011
【図８】
2017511053.tif 000012
【図９】
2017511053.tif 000013
【図１０】
2017511053.tif 000014
【図１１】
2017511053.tif 000015
【図１２】
2017511053.tif 000016
【図１３】
2017511053.tif 000017
【図１４】
2017511053.tif 000018
【国際調査報告】
2017511053.tif 000019
2017511053.tif 000020