(57)【特許請求の範囲】
【請求項１】
第１電子装置上のサービスを提供する方法であって、
仮想アクセス・ポイント・インターフェース及び発見プロトコルを用いて、前記第１電子装置上の前記サービスを公示することであって、前記仮想アクセス・ポイント・インターフェースによって、第２電子装置による前記サービスの発見を、前記第１電子装置と前記第２電子装置との間でインフラストラクチャー接続せずに可能にすること、
前記仮想アクセス・ポイント・インターフェースを用いて、前記第１電子装置と前記第２電子装置との間の無線ピア・ツー・ピア接続を確立すること、
前記無線ピア・ツー・ピア接続を介して、前記サービスを前記第２電子装置に提供すること、
前記サービスの公示終了を検知することであって、前記検知が前記サービスの公示を中断するために前記アプリケーションからの要求を受信することを含むこと、
前記検知に基づき前記仮想アクセス・ポイント・インターフェースを無効にすること、
を含む、方法。
【請求項２】
前記インフラストラクチャー接続が前記無線ピア・ツー・ピア接続よりも堅牢であれば、前記インフラストラクチャー接続を用いて、前記サービスを前記第２電子装置に提供することを更に含む、請求項１に記載の方法。
【請求項３】
前記第１電子装置付近にある１つ以上の電子装置を検出すること、
前記第１電子装置付近にある前記１つ以上の電子装置を検知することに応じて、前記発見プロトコルを用いて、前記１つ以上の電子装置により公示される１組のサービスを取得すること、
を更に含む、請求項１に記載の方法。
【請求項４】
前記仮想アクセス・ポイント・インターフェース及び前記発見プロトコルを用いて、前記第１電子装置上の前記サービスを公示することは、
前記サービスを提供するアプリケーションからの前記サービスの公示要求に応じて、前記仮想アクセス・ポイント・インターフェースを有効とすること、
前記仮想アクセス・ポイント・インターフェースを介して前記第２電子装置から発見要求を受信することに応じて、前記仮想アクセス・ポイント・インターフェースを介して、前記発見要求に対する発見応答を送信すること、
を含み、前記発見応答は、前記サービスへとアクセスするために前記第２電子装置によって使用される、請求項１に記載の方法。
【請求項５】
前記広告要求は、非インフラストラクチャー機構を用いて前記サービスを公示するための要求を含む、請求項４に記載の方法。
【請求項６】
前記発見要求は、前記第２電子装置上の１つ以上のサービス提供を含む、請求項４に記載の方法。
【請求項７】
第１電子装置上のサービスを提供するシステムであって、
仮想アクセス・ポイント・インターフェース、及び発見プロトコルを用いて、前記第１電子装置上の前記サービスを公示するように構成された発見装置であって、前記仮想アクセス・ポイント・インターフェースによって、第２電子装置による前記サービスの発見を、前記第１電子装置と前記第２電子装置との間でインフラストラクチャー接続せずに可能とする、当該発見装置と、
通信装置であって、
前記仮想アクセス・ポイント・インターフェースを提供し、
前記仮想アクセス・ポイント・インターフェースを用いて、前記第１電子装置と前記第２電子装置との間の無線ピア・ツー・ピア接続を確立し、
前記無線ピア・ツー・ピア接続を介して、前記サービスを前記第２電子装置に提供すること、
前記サービスの公示終了を検知し、前記検知が前記サービスの公示を中断するために前記アプリケーションからの要求を受信することを含み、
前記検知に基づき前記仮想アクセス・ポイント・インターフェースを無効にする、
ように構成された当該通信装置と、
を備える、システム。
【請求項８】
前記通信装置は、
前記インフラストラクチャー接続が前記無線ピア・ツー・ピア接続よりも堅牢であれば、前記インフラストラクチャー接続を用いて、前記サービスを前記第２電子装置に提供するように更に構成される、請求項７に記載のシステム。
【請求項９】
前記発見装置は、
前記第１電子装置付近にある１つ以上の電子装置を検出し、
前記第１電子装置付近にある前記１つ以上の電子装置を検知することに応じて、前記発見プロトコルを用いて、前記１つ以上の電子装置により公示される１組のサービスを取得する、
ように更に構成される、請求項７に記載のシステム。
【請求項１０】
前記仮想アクセス・ポイント・インターフェース及び前記発見プロトコルを用いて、前記第１電子装置上の前記サービスを公示することは、
前記サービスを提供するアプリケーションからの前記サービスの公示要求に応じて、前記仮想アクセス・ポイント・インターフェースを有効とすること、
前記仮想アクセス・ポイント・インターフェースを介して前記第２電子装置から発見要求を受信することに応じて、前記仮想アクセス・ポイント・インターフェースを介して、前記発見要求に対する発見応答を送信すること、
を含み、前記発見応答は、前記サービスへとアクセスするために前記第２電子装置によって使用される、請求項７に記載のシステム。
【請求項１１】
前記広告要求は、非インフラストラクチャー機構を用いて前記サービスを公示するための要求を含む、請求項１０に記載のシステム。
【請求項１２】
前記発見要求は、前記第２電子装置上の１つ以上のサービス提供を含む、請求項１０に記載のシステム。
【請求項１３】
前記発見応答は、
前記サービスに関するブラウズされた識別子と、
前記サービスに関連するデータと、
を含む、請求項１０に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示実施形態は、無線ネットワークに関する。具体的には、本開示実施形態は、電子装置上の仮想アクセス・ポイント・インターフェースを介して、電子装置上のサービスを公示、及び使用するための技術に関する。
【背景技術】
【０００２】
近年の計算能力や無線ネットワーク技術の向上によって、電子装置の機能が著しく増強した。例えば、ラップトップ・コンピュータ、タブレット・コンピュータ、携帯型メディア・プレーヤ、スマートフォン、デジタル・メディア受信器、ビデオ・ゲーム・コンソール、及び／又は、他の最新型電子装置は、一般に、これらの電子装置がウェブページの取得、音声、及び／又は、映像のストリーム配信、ディスクトップ、及び／若しくはユーザ・インターフェース（ＵＩ（複数））の共有、及び／又は、互い同士のファイルの無線転送を可能とするＷｉＦｉ機能を備える。
【０００３】
だが、従来の無線ネットワーク技術は、電子装置を互いに接続するために、及び／又は、電子装置をインターネットに接続するために、既存のアクセス・ポイント、セルラー電波塔、及び／又は、他の構造化ネットワークの使用を要することがある。これでは、２つの電子装置間のネットワーク・トラフィック、及び／又は、通信は、ネットワーク・トラフィックの送信で使用される構造化ネットワーク構成要素の可用性、帯域、信号強度、及び／又は、機能によって制約される恐れがでてくる。
【０００４】
一方、最新の電子装置は、アクセス・ポイント、セルラー塔、及び／又は、構造化ネットワークの使用を避ける無線アドホック・ネットワークを形成して、この無線アドホック・ネットワークのノード間でネットワーク・トラフィックを送信できる場合もある。この代用法では、電子装置は、無線アドホック・ネットワークを用いて互いに直接通信可能であり、これにより、アクセス・ポイント、及び／又は、構造化ネットワークを介したデータ送信に関連するスループットの増加、及び／又は、制約の除去がもたらされる。結論として、電子装置間の通信は、電子装置による無線アドホック・ネットワークの使用を増加させるための機構によって支援可能である。
【発明の概要】
【０００５】
本開示実施形態では、第１電子装置上のサービスを提供するシステムを提供している。動作中、このシステムは、仮想アクセス・ポイント・インターフェース、及び発見プロトコルを用いて、第１電子装置上のサービスを公示する。仮想アクセス・ポイント・インターフェースによって、第２電子装置によるサービスの発見を第１、第２装置間でインフラストラクチャー接続を行わずに実行できる。次に、システムは、仮想アクセス・ポイント・インターフェースを用いて、第１電子装置と第２電子装置との間の無線ピア・ツー・ピア接続を確立する。最後に、システムは、無線ピア・ツー・ピア接続を介して、サービスを第２電子装置に提供する。
【０００６】
ある実施形態では、このシステムはまた、サービスの公示終了を検知する時、仮想アクセス・ポイント・インターフェースを無効にする。
【０００７】
ある実施形態では、インフラストラクチャー接続の方が無線ピア・ツー・ピア接続よりも堅牢性が高い場合（例えば、信号強度がより高い、帯域がより広い等）、このシステムはまた、インフラストラクチャー接続を用いて、サービスを第２電子装置に提供する。
【０００８】
ある実施形態では、このシステムはまた、第１電子装置付近にある１つ以上の電子装置をスキャン処理する。第１電子装置付近にある１つ以上の電子装置を検知する時、システムは、発見プロトコルを用いて、１つ以上の電子装置により公示される１組のサービスを取得する。例えば、第１電子装置上のサービスの公示中、システムは、付近の電子装置により公示されるサービスをブラウズ、及び／又は、発見できる。
【０００９】
ある実施形態では、発見プロトコル、及び仮想アクセス・ポイント・インターフェースを用いた第１電子装置上のサービスの公示は、
（ｉ）サービスを提供するアプリケーションからのサービスの公示要求に応じて、仮想アクセス・ポイント・インターフェースを有効とすることと、
（ｉｉ）仮想アクセス・ポイント・インターフェースを介して第２電子装置から発見要求を受信する時、仮想アクセス・ポイント・インターフェースを介して、発見要求に対する発見応答を送信することと、を含み、この発見応答は、サービスへとアクセスするために第２電子装置によって使用される。
【００１０】
ある実施形態では、公示要求には、非インフラストラクチャー機構を用いてサービスを公示するための要求が含まれる。
【００１１】
ある実施形態では、発見要求には、第２電子装置への１つ以上のサービス提供（例えば、公示サービス）が含まれる。サービス提供にはそれぞれ、サービス提供に関する公示識別子、及びサービス提供に関連するデータを含められる。この発見要求は、別の発見要求の送信を第１電子装置に要求して、第２電子装置から発見応答を受信することなく、第１電子装置によるサービス提供の発見を可能とする。
【００１２】
添付図面において、類似の参照数字が同じ図要素を指す。
【図面の簡単な説明】
【００１３】
【図１】開示の実施形態に係るシステムの概略図である。
【図２】開示の実施形態に係わる電子装置上のサービスを提供するシステムを示す図である。
【図３】開示の実施形態に係わる発見要求、及び発見応答を示す図である。
【図４】開示の実施形態に係わる第１電子装置上のサービスを提供するプロセスについて説明するフローチャートである。
【図５】開示の実施形態に係わる第１電子装置上のサービスを使用するプロセスについて説明するフローチャートである。
【図６】開示の実施形態に係るコンピュータ・システムを示す図である。
【図７】開示の実施形態に係わる仮想アクセス・ポイント・インターフェースを提供する例示的システムを示す図である。
【発明を実施するための形態】
【００１４】
以下の記述は、あらゆる当業者が実施形態を作成、使用できるように提示されており、特定の用途、及びその要件の状況内で提供されている。開示される実施形態に対する様々な改良は、当業者にはすぐ分かるであろう。本明細書において定義されている一般原理は、本開示の精神や範囲から逸脱することなく他の実施形態、及び応用に適用可能である。従って、本発明は、示されている実施形態のみに限定されるものではなく、本明細書で開示されている原理、及び特徴と矛盾しない最も広い範囲を許容するものとする。
【００１５】
この詳細な説明の中で記述されているデータ構造、及びコードは、主として、コンピュータ可読能記憶媒体上に記憶される。この記憶媒体は、コンピュータ・システムで使用されるコード、及び／又は、データを記憶可能とする任意のデバイス、又は、媒体であってもよい。コンピュータ可読記憶媒体には、揮発性メモリ、不揮発性メモリ、ディスク・ドライブ、磁気テープ、ＣＤ（コンパクトディスク）、ＤＶＤ（ディジタル多用途ディスク、若しくは、ディジタルビデオディスク）等の磁気、及び光学記憶デバイス、又は、現在公知とされるか、あるいは、今後開発されるコード、及び／又は、データを記憶可能とする他の媒体が含まれるが、これらに限定されるものではない。
【００１６】
この詳細な説明のセクションで述べられている方法、及びプロセスは、前述のコンピュータ可読記憶媒体に記憶可能なコード、及び／又は、データとして具体化できる。コンピュータ・システムが、コンピュータ可読記憶媒体上に記憶されたコード、及び／又は、データを読み取り、これを実行すると、コンピュータ・システムは、データ構造、及びコードとして具現化され、且つ、コンピュータ可読記憶媒体内に記憶される方法、及びプロセスを実行する。
【００１７】
更に、本明細書で述べられる方法、及びプロセスは、ハードウェア・モジュール、又は、装置に含めてもよい。これらのモジュール、又は、装置には、特定用途向け集積回路（ＡＳＩＣ）チップ、フィールド・プログラマブル・ゲートアレイ（ＦＰＧＡ）、特定時刻において特定のソフトウェア・モジュール、若しくは、コードの一部を実行する専用、あるいは、共用プロセッサ、及び／又は、現在公知とされるか、あるいは、今後開発される他のプログラマブル・ロジックデバイスを含むことが可能であるが、これらに限定されるものではない。ハードウェア・モジュール、又は、装置が動作すると、その内部に含まれている方法、及びプロセスを実行する。
【００１８】
開示の実施形態は、電子装置上のサービスを公示、発見、及び／又は、使用するための方法、並びに、システムを提供する。図１に示すように、多数のコンピュータ・システム１１０〜１１２が、無線アクセス・ポイント、セルラー電波塔、及び／又はルータ等の機器によって提供されるネットワーク・リンク１０６〜１０８を介してネットワーク１０４に接続する。電子装置１１０〜１１２は、パーソナル・コンピュータ、ラップトップ・コンピュータ、タブレット・コンピュータ、モバイル電話、携帯型メディア・プレーヤ、デジタル・メディア受信器、ビデオ・ゲーム・コンソール、プリンター、スキャナー、及び／又は、他のネットワーク対応電子装置に対応可能である。ネットワーク１０４には、ローカルエリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、パーソナルエリア・ネットワーク（ＰＡＮ）、仮想プライベート・ネットワーク、イントラネット、モバイル電話ネットワーク（例えば、セルラー・ネットワーク）、ＷｉＦｉネットワーク、イーサネット・ネットワーク、及び／又は、ネットワーク１０４に接続する電子装置（例えば、電子装置１１０〜１１２）間の通信を支援する既存のインフラストラクチャー（例えば、ネットワーク・リンク１０６〜１０８）を備えた他の形態のネットワークを含められる。
【００１９】
電子装置１１０〜１１２は、ネットワーク１０４を介して互いに、及び／又は、他の電子装置若しくはサーバと通信できる。例えば、電子装置１１０は、Ｂｏｎｊｏｕｒ（Ｂｏｎｊｏｕｒ（商標）は、アップル社の登録商標）等の発見プロトコルを用いて、電子装置１１０上のサービスを電子装置１１２、及び／又は、ネットワーク１０４上の他の電子装置に公示できる。同様に、電子装置１１２は、発見プロトコル、及びネットワーク１０４を用いて、電子装置１１０上のサービスを発見（例えば、検知）できる。最終的に、電子装置１１２は、ネットワーク１０４を介して電子装置１１０に接続し、サービスにアクセスすることで、このサービスを使うことができる。例えば、電子装置１１２は、発見プロトコル及びネットワーク１０４を用いて、ファイル転送、メディアのストリーム配信、印刷、文書の協調作業、及び／又は、電子装置１１０上でのディスクトップ共有を実行するためのサービスにアクセスできる。
【００２０】
だが、電子装置１１０〜１１２間の通信は、ネットワーク・リンク１０６〜１０８及び／若しくはネットワーク１０４の可用性、帯域、並びに／又は、機能によって制限されることがある。例えば、各電子装置１１０〜１１２は、電子装置を他の電子装置に接続する構造化ネットワーク（例えば、ネットワーク１０４）が無いと、他の電子装置上のサービスを発見、及び／又は、使用することができない。
【００２１】
１つ以上の実施形態において、電子装置１１０〜１１２には、電子装置１１０〜１１２間のネットワーク・リンク１０６〜１０８、及び／又は、他の既存ネットワーク・インフラストラクチャーが無い場合において、互いにサービスを公示、発見、及び／又は、利用し合うための機能が含まれる。図２で示すように、１組の電子装置２０２〜２０４は、図１のネットワーク１０４等の構造化ネットワークにおける１つ以上のネットワーク・リンク２０６（例えば、アクセス・ポイント、ルータ、セルラー電波塔等）を介して接続できる。逆に、ネットワーク・リンク２０６は、電子装置２０２〜２０４の一方、又は、両方から利用不可能であり（例えば、範囲外、保護下等）、電子装置２０２〜２０４は、構造化ネットワークを介して互いに接続することができない場合がある。
【００２２】
ネットワーク・リンク２０６、及び／又は、他の既存ネットワーク・インフラストラクチャーを介して通信せずに、電子装置２０２上のアプリケーション２２２から提供されるサービス２２６を電子装置２０４上のアプリケーション２２４によって利用可能となるよう、電子装置２０２は、仮想アクセス・ポイント・インターフェース２１６、及び発見プロトコル２３４（例えば、Ｂｏｎｊｏｕｒ（登録商標））を介してサービス２２６を公示できる。同様に、電子装置２０４は、発見プロトコル２３４、及び仮想アクセス・ポイント・インターフェース２１６を介して、サービス２２６を発見し、これを利用可能である。
【００２３】
具体的には、電子装置２０２上の発見装置２０８は、アプリケーション２２２からサービス２２６に関する公示要求を受信できる。この公示要求には、非インフラストラクチャー機構を用いてサービス２２６を公示する要求を含められる。例えば、公示要求は、仮想アクセス・ポイント・インターフェース２１６、及び／又は、他のアドホック・ピア・ツー・ピア機構を介してサービス２２６を公示するためのフラグ、及び／又は、インジケータを含むことができる。あるいは、アプリケーション２２２は、電子装置２０２上の仮想アクセス・ポイント・インターフェース２１６の可用性を認識してない場合があり、公示要求は、仮想アクセス・ポイント・インターフェース２１６を用いてサービス２２６を公示するための要求を省略できる。
【００２４】
公示要求に応じて、電子装置２０２上の発見装置２０８、及び／又は、通信装置２１２は、仮想アクセス・ポイント・インターフェース２１６を有効にできる。例えば、発見装置２０８から公示要求、及び／又は、仮想アクセス・ポイント・インターフェース２１６を起動するための要求の受信後、通信装置２１２は、仮想アクセス・ポイント・インターフェース２１６を起動できる。仮想アクセス・ポイント・インターフェース２１６を作成するため、通信装置２１２は、「軽量」アクセス・ポイントとして動作、及び／又は、無線アドホック・ネットワークを提供するよう、電子装置２０２上で無線装置を構成できる。
【００２５】
通信装置２１２には、仮想アクセス・ポイント・インターフェース２１６を提供する間、構造化ネットワーク（例えば、ネットワーク・リンク２０６を介して）に接続する機能も、含められる。例えば、通信装置２１２は、仮想アクセス・ポイント・インターフェース２１６を介してサービス２２６を公示するために、ＷｉＦｉネットワーク、及びアドホック機構との接続を介して、ネットワーク接続を同時に提供できる。
【００２６】
サービス２２６を公示するために、発見装置２０８、及び／又は、通信装置２１２は、電子装置２０２付近にある他の電子装置（例えば、電子装置２０４）による仮想アクセス・ポイント・インターフェース２１６、及び／又は、サービス２２６の検知が可能となる。例えば、発見装置２０８、及び／又は、通信装置２１２は、仮想アクセス・ポイント・インターフェース２１６、及び／又は、サービス２２６に関する情報を含むビーコン・フレームを、定期的に送信できる。ビーコン・フレームは、仮想アクセス・ポイント・インターフェース２１６に関する１組の機能、対応可能なデータ・レート、及び／又は、識別子（例えば、８０２．１１サービスセット識別子（ＳＳＩＤ））を指定できる。ビーコン・フレームはまた、サービス２２６、発見プロトコル２３４に関するサポート、及び／又は、仮想アクセス・ポイント・インターフェース２１６に関する他の一意な属性を記述する１つ以上の情報要素を含められる。発見装置２０８、及び／又は、通信装置２１２はまた、他の電子装置からプローブ要求フレームを受信して、ビーコン・フレームと同じ情報を含むプローブ応答フレームを他の電子装置に送信できる。
【００２７】
図２で示すように、電子装置２０４はまた、発見装置２１０、及び通信装置２１４も含められる。発見装置２１０、及び／又は、通信装置２１４は、電子装置２０４上に別個の仮想アクセス・ポイント・インターフェースを提供する機能を発見装置２１０、及び／又は、通信装置２１４に備えていない場合であっても、仮想アクセス・ポイント・インターフェース２１６を検知する機能を含められる。例えば、発見装置２１０は、電子装置２０２等の付近の電子装置上で公示されるサービスをブラウズ、及び／又は、スキャン処理するためのブラウズ要求を、アプリケーション２２４から受信できる。通信装置２１４は、通信装置２１４によりサポートされる１つ以上の８０２．１１バンドの各チャンネル上でプローブ要求フレームを送信することで、付近の電子装置をスキャン処理することができる。スキャン処理中、通信装置２１４は、通信装置２１２により使用されるチャンネル上でビーコン・フレーム、及び／又は、プローブ応答フレームを受信できる。ビーコン・フレーム、及び／又は、プローブ応答フレームはまた、上述の仮想アクセス・ポイント・インターフェース２１６、及び／又は、サービスに関する情報を含められる。
【００２８】
次に、発見装置２１０、及び／又は、通信装置２１４は、付近の電子装置のスキャン処理中に得られた情報を用いて、サービス２２６の発見を実行できる。サービス２２６の発見を始動するために、発見装置２１０、及び／又は、通信装置２１４は、発見プロトコル２３４を用いて、サービス２２６に関する発見要求２１８を電子装置２０２に送信できる。例えば、発見装置２１０、及び／又は、通信装置２１４は、サービス２２６に関するブラウズされた識別子を含む包括的公示サービス（ＧＡＳ）フレームとして発見要求２１８を送信できる。ブラウズされた識別子は、アプリケーション２２４によりブラウズ要求内で発見装置２１０へ提供可能である。即ち、ブラウズされた識別子は、アプリケーション２２４が利用に関心を示したサービスとしてサービス２２６を特定できる。
【００２９】
１つ以上の実施形態において、発見要求２１８は、電子装置２０４上の１つ以上のサービス提供も含む。例えば、発見要求２１８には、サービス提供に関する公示識別子（例えば、サービス種別）、サービス提供に関連するデータ、及び／又は、電子装置２０２によるサービス提供の発見を可能とする他の情報を含められる。即ち、発見要求２１８は、電子装置２０４上で公示されるサービスに関する情報を提供し、それと同時に、電子装置２０２上で公示されるサービスに関する情報も要求できる。従って、発見要求２１８は、電子装置２０２〜２０４間のサービスの相互的、及び／又は、「対称的」発見を支援可能であり、これについて、図３と関連して以下でより詳細に論じる。
【００３０】
発見要求２１８に応じて、発見装置２０８、及び／又は、通信装置２１２は、発見要求２１８に対する発見応答２２０を生成可能である。発見応答２２０は、サービス２２６に関連するデータを含めてもよい。例えば、発見応答２２０は、サービス２２６に関するブラウズされた識別子（例えば、サービス種別）、サービス２２６に関する一意な名称、及び／又は、電子装置２０４がサービス２２６を発見するのに十分な他の情報を含むことができる。そして、発見装置２０８、及び／又は、通信装置２１２は、発見応答２２０を電子装置２０４に送信することで、電子装置２０４によるサービス２２６の発見を完了可能である。
【００３１】
サービス２２６が公示中、及び／又は、発見中において、発見装置２０８、及び／又は、通信装置２１２は、電子装置２０４等の電子装置２０２付近にある電子装置により公示されるサービスの発見も実行できる。例えば、アプリケーション２２２は、ブラウズ要求を発見装置２０８に送信可能であり、発見装置２０８、及び／又は、通信装置２１２は、ある範囲の８０２．１１チャンネルを介してプローブ要求フレームを送信し、付近の電子装置からプローブ要求フレームに関するプローブ応答フレームを受信することで、付近の電子装置をスキャン処理できる。そして、発見装置２０８、及び／又は、通信装置２１２は、ブラウズ要求、プローブ応答フレーム、及び／又は、発見プロトコル２３４からの情報を用いて、発見要求を付近の電子装置に送信し、付近の電子装置から発見要求に対する発見応答を受信可能である。
【００３２】
サービス（例えば、サービス２２６）が、電子装置（例えば、電子装置２０４）によって発見されると、このサービスは、電子装置によって使用可能である。例えば、通信装置２１４は、発見応答２２０からのサービス２２６に関する一意な名称を使用して、電子装置２０２上のサービス２２６にアクセスするためのネットワーク・アドレス、ポート番号、及び／又は、他の構成情報のドメイン名称システム（ＤＮＳ）検索を実行できる。あるいは、通信装置２１４は、発見応答２２０から構成情報を直接取得できる。次に、通信装置２１４は、構成情報、及び仮想アクセス・ポイント・インターフェース２１６を用いて、電子装置２０２との無線ピア・ツー・ピア接続２２８を確立すると、電子装置２０４は、この無線ピア・ツー・ピア接続２２８を介してサービス２２６を使用できる。
【００３３】
前述の様に、電子装置２０２〜２０４はまた、ネットワーク・リンク２０６、及び／又は、他の既存のネットワーク・インフラストラクチャーにより提供されるインフラストラクチャー接続を介しても接続できる。インフラストラクチャー接続が利用可能で、且つ、無線ピア・ツー・ピア接続２２８よりも堅牢な接続（例えば、信号強度がより高い、帯域がより広い等）に関連する場合、通信装置２１２〜２１４は、このインフラストラクチャー接続を用いてサービス２２６を電子装置２０４に提供可能である。一方、利用できるインフラストラクチャー接続が無い場合、及び／又は、インフラストラクチャー接続が無線ピア・ツー・ピア接続２２８よりも堅牢性が低い場合、電子装置２０４は、電子装置２２４によるサービス２２６の使用が完了するまで、無線ピア・ツー・ピア接続２２８を用いてサービス２２６にアクセスできる。
【００３４】
発見装置２０８、及び／又は、通信装置２１２は、サービス２２６の公示の終了がアプリケーション２２２から受信されるまで、サービス２２６に関する公示、及び／又は、仮想アクセス・ポイント・インターフェース２１６の提供を継続して実行もできる。例えば、アプリケーション２２２は、サービス２２６に関する公示を終了させる要求を発見装置２０８に送信して、発見装置２０８は、仮想アクセス・ポイント・インターフェース２１６を介して、サービス２２６の公示を中断可能である。仮想アクセス・ポイント・インターフェース２１６を介して他のサービスが公示されていなければ、通信装置２１２はまた、仮想アクセス・ポイント・インターフェース２１６を無効にできる。
【００３５】
それ故、電子装置２０２〜２０４間のインフラストラクチャー接続が無ければ、仮想アクセス・ポイント・インターフェース２１６によって、電子装置２０２〜２０４は、サービス（例えば、サービス２２６）を互いに公示、発見、及び使用することが可能である。更に、各電子装置上のサービスの公示は、仮想アクセス・ポイント・インターフェースの提供者を選択するための他の電子装置との交渉後ではなくサービスの公示要求の受信時に、仮想アクセス・ポイント・インターフェース（例えば、仮想アクセス・ポイント・インターフェース２１６）を有効とすることで効率化できる。最終的に、サービス提供を含む発見要求（例えば、発見要求２１８）の送信によって、電子装置２０２〜２０４間のサービスの「対称的」発見を可能とし、電子装置２０２〜２０４上のサービスを相互に発見するため、電子装置２０２〜２０４双方による発見要求、及び発見応答の送信を必要とする従来の「非対称的」サービス発見に関連する遅延を低減することもできる。
【００３６】
図２のシステムが様々な様式で実施可能なことは、当業者に理解されるであろう。第１に、各電子装置２０２〜２０４上の発見装置２０８〜２１０、及び通信装置２１２〜２１４は、同一のソフトウェア、及び／又は、ハードウェア構成要素によって提供されるか、あるいは、発見装置２０８〜２１０、及び通信装置２１２〜２１４は、互いに独立して実行可能である。例えば、発見装置２０８〜２１０、及び通信装置２１２〜２１４は、アプリケーション・プロセッサ、ベースバンド・プロセッサ、マルチコア・プロセッサ、単一コア・プロセッサ、オペレーティング・システム・カーネル、独立アプリケーション、及び／又は、ドライバの種々の組み合わせを用いて実装できる。
【００３７】
第２に、電子装置２０２〜２０４は、種々の技術を用いて、サービスを公示、及び発見することができる。例えば、電子装置２０２〜２０４は、種々の種類、及び／又は、８０２．１１フレームの系列、及び／又は、他のネットワーク機構を用いて、他の電子装置のスキャン処理、他の電子装置上でのサービスの発見、及び／又は、他の電子装置でのサービスの公示を実行可能である。
【００３８】
図３は、開示の実施形態に係わる発見要求３０２、及び発見応答３０４を示す。発見要求３０２、及び発見応答３０４によって、第１電子装置（例えば、図２の電子装置２０２〜２０４）上のサービスを第２電子装置により発見できる。これにより、発見要求３０２は、第２電子装置により送信され、第１電子装置上のサービス発見を始動できる。サービスを特定するために、発見要求３０２には、サービスについてブラウズされた識別子３０６を含められる。例えば、第２電子装置は、サービス利用に関心を示した第２電子装置上のアプリケーションからこのサービスに関するＢｏｎｊｏｕｒ（登録商標）サービス種別を取得できる。第２電子装置には、サービスに関する情報をより多く要求するための発見要求３０２内のブラウズされた識別子としてＢｏｎｊｏｕｒ（登録商標）サービス種別を含められる。
【００３９】
図３で示す様に、発見要求３０２はまた、１組の公示識別子３０８、及び１組のデータ３１０も含められる。前述の様に、公示された識別子３０８、及びデータ３１０は、第２電子装置上の１つ以上のサービス提供（例えば、公示されたサービス）を指定できる。例えば、公示された識別子３０８は、サービス提供に関するサービス種別で良く、データ３１０は、サービス提供の一意な名称、サービス提供に関する詳細、及び／又は、第１電子装置、及び／又は、付近にある他の電子装置によるサービス提供の発見を可能とする他の情報を含められる。更に、公示された識別子３０８、及びデータ３１０は、サービスと類似、及び／又は、関連するサービス提供に適用可能であるか、あるいは、公示された識別子３０８、及びデータ３１０は、サービスに関連しないものも含めた第２電子装置上の種々のサービス提供を記述できる。
【００４０】
第１電子装置は、発見要求３０２に応じて、発見応答３０４を生成し、この発見応答３０４を第２電子装置に送信できる。発見要求３０２には、公示された識別子３０８、及びデータ３１０が含まれるので、第２電子装置により公示されるサービス（例えば、サービス提供）を発見する上で、第２電子装置への種々の発見要求の送信を省略することが可能である。
【００４１】
発見要求３０２と同様、発見応答３０４は、発見するサービスを特定するためのブラウズされた識別子３０６を含められる。発見応答３０４はまた、サービスに関連するデータ３１２も含むことが可能である。例えば、発見応答３０４は、サービスに関する一意な名称、サービスの詳細、サービスに関連するグラフィック（例えば、アイコン）、及び／又は、サービスの発見に関連する他の情報を含められる。発見応答３０４が第２電子装置により受信されると、各電子装置は、他の電子装置上の１つ以上のサービスを発見したであろう。
【００４２】
第１、及び／又は、第２電子装置は、発見要求３０２、及び／又は、発見応答３０４内の情報を用いて、サービスを利用できる。具体的には、第２電子装置は、発見応答３０４からのデータ３１２を用いて、第１電子装置とのネットワーク接続（例えば、無線ピア・ツー・ピア接続、インフラストラクチャー接続等）を確立できる。あるいは、第１電子装置は、発見要求３０２からのデータ３１０を用いて、第２電子装置とのネットワーク接続を始動する。ネットワーク接続が始動すると、第１電子装置は、ネットワーク接続を介してサービスを第２電子装置に提供できるか、又は、第１電子装置は、第２電子装置上の類似、及び／又は、関連するサービスの使用を始動できる。
【００４３】
例えば、第１及び第２電子装置は共に、ピア・ツー・ピア型ファイル転送サービスを公示し、発見要求３０２及び発見応答３０４を使用して、ピア・ツー・ピア型ファイル転送サービスに関する「対称型」発見を実行できる。そして、各電子装置は、発見要求３０２、及び／又は、発見応答３０４からの情報を用いて、他の電子装置とのピア・ツー・ピア接続を確立し、このピア・ツー・ピア接続を介してファイルを他の電子装置に転送できる。
【００４４】
図４は、開示の実施形態に係わる第１電子装置上のサービスを提供するプロセスについて説明するフローチャートを示す。１つ以上の実施形態において、１つ以上のステップの省略、反復実行、及び／又は、異なる順序での実行が可能である。従って、図４で示すステップの特定の構成は、実施形態の範囲を限定するものとして解釈すべきでない。
【００４５】
最初に、仮想アクセス・ポイント・インターフェース、及び発見プロトコルを用いて、第１電子装置上のサービスを公示する。サービスを公示するために、サービスを提供するアプリケーションからのサービスの公示要求に応じて、仮想アクセス・ポイント・インターフェースを有効とする（ステップ４００）。仮想アクセス・ポイント・インターフェースは、「軽量」アクセス・ポイントとして動作するよう、及び／又は、無線アドホック・ネットワークを提供するよう電子装置上で無線装置を構成することで有効にできる。この公示要求には、非インフラストラクチャー機構を用いてサービスを公示する要求を含められる。
【００４６】
ブラウズ要求はまた、アプリケーションから受信できる（ステップ４０２）。ブラウズ要求を受信したら、第１電子装置付近にある１つ以上の電子装置のスキャン処理を実行する（ステップ４０４）。このスキャン処理は、アプリケーションから第１電子装置へのブラウズ要求に応じて発生可能である。更に、スキャン処理は、アプリケーションにサービスを公示することから独立して実行できる。スキャン処理中、プローブ要求フレームは、第１電子装置による無線通信用に使用される１つ以上のバンドの各チャンネル上で送信可能である。そして、プローブ要求フレームに対するプローブ応答フレームは、第１電子装置付近にある１つ以上の電子装置から受信可能である。スキャン処理により電子装置（複数）が検知されると、発見プロトコルを用いて、電子装置（複数）により公示される１組のサービスを取得し（ステップ４０６）、これについて、図５を参考として以下でより詳細に論じる。即ち、他の電子装置上のサービスの発見は、他の電子装置へのサービスの公示と同時に第１電子装置により実行可能である。ブラウズ要求が受信されなければ、他の電子装置上のサービスのスキャン処理、及び／又は、ブラウジングは、第１電子装置によって実行できない。
【００４７】
発見要求は、第２電子装置から仮想アクセス・ポイント・インターフェースを介して受信可能である（ステップ４０８）。発見要求が受信されないと、サービスの発見を実行できない。発見要求が受信されると、発見要求に対する発見応答が送信される（ステップ４１０）。発見応答には、第２電子装置がサービスを発見可能とする情報を含められる。更に、発見要求は、第２電子装置上の１つ以上のサービス提供を含むことが可能であり、これにより、別個の発見要求を第２電子装置に送信して、第２電子装置から発見応答を受信することなく、第１電子装置上でのサービス提供（複数）の発見が可能となる。
【００４８】
次に、仮想アクセス・ポイント・インターフェースを用いて、第１、第２電子装置間の無線ピア・ツー・ピア接続を確立したら（ステップ４１２）、この無線ピア・ツー・ピア接続を介してサービスを第２電子装置に提供する（ステップ４１４）。例えば、第２電子装置は、第１電子装置からのプローブ応答フレーム内の情報で仮想アクセス・ポイント・インターフェースを接続することにより、無線ピア・ツー・ピア接続を確立できる。そして、第２電子装置は、発見応答からの情報、及び無線ピア・ツー・ピア接続を用いて、ファイルの転送、ディスクトップの共有、文書上での協調作業、音声、及び／又は、映像のストリーム配信、及び／又は、第１電子装置による印刷ジョブの実行を行う。
【００４９】
第１、第２電子装置間のインフラストラクチャー接続を利用でき、しかも、これは無線ピア・ツー・ピア接続よりも堅牢である場合もある（ステップ４１６）。例えば、第１、第２電子装置を無線ピア・ツー・ピア接続よりも高い信号強度、及び／又は、広い帯域を有するＷｉＦｉアクセス・ポイントを介して接続できる。インフラストラクチャー接続が無線ピア・ツー・ピア接続よりも堅牢であれば、このインフラストラクチャー接続を用いて、サービスを第２電子装置に提供する（ステップ４１８）。インフラストラクチャー接続が無線ピア・ツー・ピア接続よりも堅牢でなければ、引き続き、無線ピア・ツー・ピア接続を用いて、サービスを第２電子装置に提供する。
【００５０】
サービスの公示終了が検知される場合がある（ステップ４２０）。例えば、サービスの公示を中断するための要求をアプリケーションから受信する時、公示の終了を検知できる。サービスの公示の終了が検知されなければ、電子装置へのサービスの公示（ステップ４０８〜４１０）、及び他の電子装置によるサービスの利用（ステップ４１２〜４１８）と併せて、スキャン処理及びサービス発見を付近の電子装置上で実行し続ける（ステップ４０２〜４０６）。サービスの公示の終了が検知されると、仮想アクセス・ポイント・インターフェースは無効化されて（ステップ４２２）、サービスは、仮想アクセス・ポイント・インターフェースを介してこれ以上公示、及び／又は、提供されることはない。付近の電子装置からのサービスのスキャン処理、及び／又は、ブラウジング（ステップ４０２〜４０６）は、第１装置上でのサービスのブラウジングがまた無効となるまで継続できる。
【００５１】
図５は、開示の実施形態に係わる第１電子装置上のサービスを使用するプロセスについて説明するフローチャートを示す。１つ以上の実施形態において、１つ以上のステップの省略、反復実行、及び／又は、異なる順序での実行が可能である。従って、図５で示すステップの特定の構成は、実施形態の範囲を限定するものとして解釈すべきでない。
【００５２】
第１に、サービスについてブラウズされた識別子を含むブラウズ要求を、第２電子装置上で取得する（ステップ５００）。例えば、第２電子装置は、第１電子装置を含む付近の電子装置上のサービス利用に関心を示した第２電子装置上のアプリケーションからブラウズ要求を取得できる。
【００５３】
次に、第２電子装置付近にある１つ以上の電子装置のスキャン処理を用いて、第１電子装置を検知する（ステップ５０２）。例えば、第１電子装置は、この第１電子装置によって使用されるチャンネル上でプローブ要求を送信することで検知可能であり、第１電子装置からプローブ要求に対するプローブ応答を受信できる。
【００５４】
第１電子装置の検知後、発見プロトコルを用いて、ブラウズされた識別子を含む発見要求、及び第２電子装置上の１つ以上のサービス提供を第１電子装置へ送信する（ステップ５０４）。各サービス提供には、サービス提供に関する公示識別子、及びサービス提供に関連するデータを含められる。サービス提供（複数）によって、既存、及び／又は、従来型サービス発見法とは異なり、別個の発見要求を第２電子装置に送信して、第２電子装置から発見応答を取得することなく、第１電子装置は、第２電子装置により公示されるサービス（例えば、サービス提供）を発見することが可能である。即ち、サービス提供（複数）は、第１、第２電子装置上のサービスの「対称的」発見を支援できるのに対して、他の発見機構は、より時間がかかる「非対称的な」発見機構を使用する場合がある。
【００５５】
そして、発見要求に対する発見応答を、第１電子装置から受信したら（ステップ５０６）、これを用いて、第２電子装置から第１電子装置上のサービスにアクセスする（ステップ５０８）。例えば、発見応答には、ブラウズされた識別子、及びサービスに関連するデータを含められる。このデータによって、第２電子装置は、第１電子装置とのネットワーク接続を確立して（例えば、無線ピア・ツー・ピア接続、インフラストラクチャー接続）、このネットワーク接続を介してサービスにアクセスできる。第１電子装置はまた、第２電子装置の発見要求からのデータを用いて、第２電子装置に接続し、第２電子装置上のサービスを使用できる。
【００５６】
図６は、開示の実施形態に係るコンピュータ・システム６００を示す。コンピュータ・システム６００は、プロセッサ６０２、メモリ６０４、記憶装置６０６、及び／又は、電子計算装置内に見られる他の構成要素を含む装置に対応してもよい。プロセッサ６０２は、コンピュータ・システム６００内の他のプロセッサによる並列処理、及び／又はマルチスレッド動作をサポートできる。コンピュータ・システム６００はまた、キーボード６０８、マウス６１０、及びディスプレイ６１２等の入出力（Ｉ／Ｏ）装置も含められる。
【００５７】
コンピュータ・システム６００は、本実施形態の様々な構成要素を実行する機能を備えられる。具体的には、コンピュータ・システム６００は、コンピュータ・システム６００上のハードウェア資源、及びソフトウェア資源の使用を調整するオペレーティング・システム（図示せず）、並びに利用者向けに専用タスクを実行する１つ以上のアプリケーションを含むことができる。利用者用のタスクを実行するため、アプリケーションは、オペレーティング・システムからコンピュータ・システム６００上のハードウェア資源の使用を取得でき、並びに、オペレーティング・システムによって提供されるハードウェア・フレームワーク、及び／又はソフトウェア・フレームワークを介してユーザと相互作用することも可能である。
【００５８】
１つ以上の実施形態において、コンピュータ・システム６００は、第１電子装置上のサービスを提供するシステムを提供する。このシステムは、仮想アクセス・ポイント・インターフェース、及び発見プロトコルを用いて、第１電子サービス上のサービスを公示する発見装置を含められる。仮想アクセス・ポイント・インターフェースによって、第２電子装置によるサービスの発見を第１、第２装置間でインフラストラクチャー接続を行わずに実行できる。このシステムはまた、仮想アクセス・ポイント・インターフェースを提供し、この仮想アクセス・ポイント・インターフェースを用いて、第１電子装置と第２電子装置との間の無線ピア・ツー・ピア接続を確立する通信装置も含められる。この通信装置はまた、無線ピア・ツー・ピア接続を介してサービスを第２電子装置に提供することもできる。
【００５９】
加えて、コンピュータ・システム６００の１つ以上の構成要素を遠隔配置し、ネットワークを介して他の構成要素に接続することができる。本実施形態の一部（例えば、発見装置、通信装置、電子装置等）はまた、本実施形態を実施する分散システムの異なるノード上に配置することもできる。例えば、本実施形態は、複数の電子装置を１組の無線ピア・ツー・ピア接続、及び／又は、インフラストラクチャー接続を介して互いに接続することで実装可能である。
【００６０】
図７は、開示の実施形態に係わる仮想アクセス・ポイント・インターフェース７１２を提供する例示的なシステムを示す。このシステムは、図２の電子装置２０２の様な電子装置上で実装できる。図７で示す様に、システムには、アプリケーション７０２により提供されるサービスの公示要求２１６を生成するアプリケーション７０２が含まれる。例えば、アプリケーション７０２は、電子装置上のサービスを共有するピア・ツー・ピア・ファイルの公示を要求できる。
【００６１】
アプリケーション７０２は、公示要求２１６をアプリケーションによるサービスの公示を可能とするマルチキャスト・ドメイン名システム（ｍＤＮＳ）レスポンダ７０４へ提供し、ｍＤＮＳレスポンダ７０４は、プラグイン２１６を用いて、公示要求２１６をピア・ツー・ピア（Ｐ２Ｐ）スーパーバイザ７０６に送信する。アプリケーション７０２、ｍＤＮＳレスポンダ７０４、及びＰ２Ｐスーパーバイザ７０６は全て、電子装置上のユーザ空間７１６内に常駐可能である。
【００６２】
次に、Ｐ２Ｐスーパーバイザ７０６は、ベンダー抽象化レイヤー７０８（例えば、アプリケーション・プログラミング・インターフェース（ＡＰＩ））を介してメッセージをベンダー固有８０２．１１ドライバ７１０に送信可能であり、８０２．１１ドライバ７１０は、新規仮想アクセス・ポイント・インターフェース７１２を作成できる。例えば、付近の電子装置への「軽量」アクセス・ポイントとして動作することで、仮想アクセス・ポイント・インターフェース７１２を提供するよう、８０２．１１ドライバ７１０は、電子装置上で８０２．１１無線を構成できる。８０２．１１ドライバ７１０はまた、仮想アクセス・ポイント・インターフェース７１２を提供する間、構造化ＷｉＦｉネットワークに接続するよう、無線装置を構成できる。ベンダー抽象化レイヤー７０８、及び８０２．１１ドライバ７１０は、電子装置上のカーネル空間７１８内に常駐可能である。
【００６３】
そして、Ｐ２Ｐスーパーバイザ７０６は、仮想アクセス・ポイント・インターフェース７１２から付近の電子装置へと送信されるビーコン・フレーム、及び／又は、プローブ応答フレームを介してサービスを公示できる。Ｐ２Ｐスーパーバイザ７０６はまた、仮想アクセス・ポイント・インターフェース７１２を介して電子装置から発見要求を受信し、発見要求に対する発見応答を生成し、８０２．１１ドライバ７１０、及び／又は、仮想アクセス・ポイント・インターフェース７１２を介して、発見要求に対する発見応答を送信する。最終的に、Ｐ２Ｐスーパーバイザ７０６は、発見要求を電子装置に送信して、電子装置により公示されるサービスを含む発見応答を受信可能である。
【００６４】
アプリケーション７０２により提供されるサービスを使用するために、第２電子装置は、仮想アクセス・ポイント・インターフェース７１２を介して電子装置との無線Ｐ２Ｐ接続を確立し、仮想アクセス・ポイント・インターフェース７１２、及び電子装置上のネットワーク・スタック７１４を介してパケットをアプリケーション７０２へ送信可能である。アプリケーション７０２はまた、無線Ｐ２Ｐ接続、ネットワーク・スタック７１４、及び仮想アクセス・ポイント・インターフェース７１２を用いて、パケットを第２電子装置に送信することで、サービスを第２電子装置に提供できる。最終的に、２つの電子装置間のインフラストラクチャー接続を利用でき、無線Ｐ２Ｐ接続よりも堅牢であれば、このインフラストラクチャー接続を用いて、サービスを第２電子装置に提供可能である。
【００６５】
様々な実施形態に関する前述の説明を、例示と説明のためにのみに提示してきた。これらは、包括的とすること、或いは、本発明を開示した形態に制約することを意図していない。したがって、多くの改良、及び変形形態は、当業者には明らかであろう。更に、上記の開示は、本発明を制限することを意図していない。
【図１】
0005979460.tif 000002
【図２】
0005979460.tif 000003
【図３】
0005979460.tif 000004
【図４】
0005979460.tif 000005
【図５】
0005979460.tif 000006
【図６】
0005979460.tif 000007
【図７】
0005979460.tif 000008