ネットワーク上の装置を接続する方法であって、アドレス登録サーバーにより、ホスト装置からの該ホスト装置の公衆網アドレスを含む通信、およびエンドポイント装置からの該エンドポイント装置の公衆網アドレスおよび私設網アドレスを含む通信を受け取ることと、前記アドレス登録サーバーにより、前記ホスト装置と前記エンドポイント装置が単一ローカルエリアネットワークに接続しているか、前記ホスト装置の公衆網アドレスおよび前記エンドポイント装置の公衆網アドレスに基づいて判断するとともに、前記ホスト装置および前記エンドポイント装置がそれぞれ機能的に適合したアプリケーションを実行しているか判断することと、前記エンドポイント装置と前記ホスト装置が前記ローカルエリアネットワークに接続しており、かつそれぞれが機能的に適合したアプリケーションを実行していると判断された場合、前記ホスト装置に前記エンドポイント装置の前記私設網アドレスを与えることにより、前記ローカルエリアネットワークを介した前記エンドポイント装置と前記ホスト装置間のネットワーク接続を容易にすることとを含む、方法。請求項1に記載の方法であって、前記受け取るステップにおいて、前記エンドポイント装置および前記ホスト装置からの前記通信は、前記エンドポイント装置上、前記ホスト装置上、またはその両方で実行中のアプリケーションを識別するように構成されたアプリケーションIDを含む、前記方法。請求項2に記載の方法であって、前記判断するステップは、前記ホスト装置から受け取った前記アプリケーションIDを前記エンドポイント装置から受け取った前記アプリケーションIDと比較することを含む、前記方法。請求項1に記載の方法であって、前記ホスト装置により、Webブラウザ内でブラウザアプリケーションを実行することと、前記エンドポイント装置により、前記ブラウザアプリケーションの内容を制御するように構成されたアプリケーションを実行することとをさらに含む、前記方法。請求項4に記載の方法であって、前記ブラウザアプリケーションを実行することは、フラッシュアプリケーション、Unityアプリケーション、Webスクリプト、およびHTML5アプリケーションの中の1つを実行することを含む、前記方法。請求項4に記載の方法であって、前記判断するステップは、前記ブラウザアプリケーションと前記ブラウザアプリケーションの内容を制御するように構成された前記アプリケーションが機能的に適合したアプリケーションであるか判断することを含む、前記方法。請求項4に記載の方法であって、前記ブラウザアプリケーションを実行することはゲームアプリケーションを実行することを含み、前記アプリケーションを実行することはゲームコントローラアプリケーションを実行することを含む、前記方法。請求項4に記載の方法であって、前記Webブラウザのセキュリティポリシーを変更し、前記ブラウザアプリケーションと前記ブラウザアプリケーションの内容を制御するように構成された前記アプリケーション間の通信を可能にすることをさらに含む、前記方法。請求項8に記載の方法であって、前記変更するステップは、前記ホスト装置に対し、前記エンドポイント装置上で実行中の前記アプリケーションが前記Webブラウザのセキュリティ機構を通って前記ブラウザアプリケーションにアクセスすることを可能にするように構成されたポリシーファイルを送信すること、および前記ホスト装置および前記エンドポイント装置により、HTML5ポリシーハンドシェイクを実行することの中の1つを含む、前記方法。ネットワーク上の装置を接続するシステムであって、私設網アドレスおよび公衆網アドレスを有するエンドポイント装置と、公衆網アドレスを有するホスト装置と、前記エンドポイント装置と前記ホスト装置がそれぞれ単一ローカルエリアネットワークに接続され、かつそれぞれが機能的に適合したアプリケーションを実行していると判断された場合、前記エンドポイント装置の前記私設網アドレスを前記ホスト装置に与えることにより、前記単一ローカルエリアネットワークを介した前記エンドポイント装置と前記ホスト装置間のネットワーク接続を容易にするように構成されたアドレス登録サーバーとを含む、システム。請求項10に記載のシステムであって、前記ホスト装置と前記エンドポイントはそれぞれ、前記エンドポイント装置上、前記ホスト装置上、またはその両方で実行中のアプリケーションを識別するように構成されたアプリケーションIDを伝達する、前記システム。請求項11に記載のシステムであって、前記アドレス登録サーバーは、前記エンドポイント装置と前記ホスト装置がそれぞれ機能的に適合したアプリケーションを実行しているか、前記ホスト装置から受信した前記アプリケーションIDと前記エンドポイント装置から受信した前記アプリケーションIDの比較に基づいて判断するようにさらに構成されている、前記システム。請求項10に記載のシステムであって、前記ホスト装置は、Webブラウザ内でブラウザアプリケーションを実行するようにさらに構成されている、前記システム。請求項13に記載のシステムであって、前記エンドポイント装置は、前記ブラウザアプリケーションの内容を制御するように設計されたアプリケーションを実行するようにさらに構成されている、前記システム。請求項13に記載のシステムであって、前記ブラウザアプリケーションは、フラッシュアプリケーション、Unityアプリケーション、Webスクリプト、およびHTML5アプリケーションの中の1つを含む、前記システム。請求項13に記載のシステムであって、前記ホスト装置は、前記Webブラウザ内でゲームアプリケーションを実行するようにさらに構成され、前記エンドポイント装置は、前記ゲームアプリケーションの内容を制御するためのゲームコントローラアプリケーションを実行するようにさらに構成されている、前記システム。請求項14に記載のシステムであって、前記ホスト装置および前記エンドポイント装置は、前記Webブラウザのセキュリティポリシーを変更して、前記ブラウザアプリケーションと前記ブラウザアプリケーションの内容を制御するように構成された前記アプリケーション間の通信を可能にするように構成されている、前記システム。請求項17に記載の方法であって、前記ホスト装置および前記エンドポイント装置は、前記エンドポイント装置上で実行中の前記アプリケーションがWebブラウザのセキュリティ機構を通して前記ブラウザアプリケーションにアクセスすることを可能にするように構成されたポリシーファイルを前記エンドポイント装置から前記ホスト装置に送信すること、およびHTML5ポリシーハンドシェイクを実行することの中の1つを含む動作を実行することにより、前記セキュリティポリシーを変更するようにさらに構成されている、前記方法。本発明は、ネットワークを介して装置を接続するシステムおよび方法を提供することができる。より具体的には、本発明を使用して、Webブラウザ内で実行中のブラウザアプリケーションとエンドポイント装置上で実行中のアプリケーションを接続し、2つのアプリケーション間の通信を容易にすることができる。多くの場合、Webブラウザは、ブラウザアプリケーションがローカルマシンに害を及ぼすことがないようにするためのセキュリティ方式サンドボックスセキュリティと呼ばれることがあるを採用している。これらのセキュリティ方式は、コンピュータのハードドライブ、I/O、ネットワーク機能などのローカルマシンの資源について、ブラウザアプリケーションによる使用を制限することができる。典型的には、ネットワーク上の装置は、ネットワーク上の自らの存在をブロードキャストし、他の装置からのブロードキャストを監視することにより、ネットワーク上の他の装置を発見することができる。しかし、ネットワークに接続されたマシンにおいて、ブラウザアプリケーション、たとえばFLASHアプリケーションがWebブラウザ内で実行中の場合、Webブラウザのセキュリティ機構は、そのブラウザアプリケーションがネットワークに接続された他装置を発見し、またはそれらの装置と通信するのを防ぐことができる。それらの他装置がそのブラウザアプリケーションと別の形で送受信可能なアプリケーションを実行していたとしても同様である。システムアーキテクチャ次に図1を参照すると、一実施形態において、本発明はWebブラウザの内容制御のためのシステムおよびアーキテクチャ10を提供する。本システムは、ホスト装置12を含むことができ、このホスト装置12は、Webブラウザ16内でブラウザアプリケーション14を実行することができる。図1はデスクトップコンピュータとしてのホスト装置12を示しているが、ホスト装置12はデスクトップコンピュータに限定されない。たとえば、ホスト装置12は、ラップトップコンピュータ、サーバーコンピュータ、ゲームコンソール、モバイル機器、スマートフォン、インターネットテレビ、家電製品、ネットワーク対応およびプロセッサ内蔵の遠隔操作玩具、インターネット対応の広告板、医療用表示装置、iPad登録商標、その他、Webブラウザ16内でブラウザアプリケーション14を実行することができる任意の他の装置であってよい。図1は、エンドポイント装置18、20も示している。エンドポイント装置18はアプリケーション22を実行することができる。アプリケーション22は、たとえば、ブラウザアプリケーション14と通信するように構成されたアプリケーションである。エンドポイント装置は、典型的にはPDAまたはスマートフォンなどのネットワーク対応の無線ハンドヘルド装置であり、アプリケーション22は、典型的にはモバイルアプリケーションである。しかし、ラップトップまたはデスクトップコンピュータ、ゲーム用コンソール、ゲームコントローラなど、アプリケーション22を実行するとともに私設網24に接続することができる任意の種類の装置もエンドポイント装置になりえる。エンドポイント装置20は、システム10内の別のエンドポイント装置でもよい。図のエンドポイント装置20は、他の装置をシステム10に加えて私設網24に接続できるという単なる例示のために示したものである。図示していないが、エンドポイント装置20は、たとえば、アプリケーション22などのアプリケーションを実行できるほか、ブラウザアプリケーション14と通信できる他のアプリケーションを実行したり、または別のブラウザアプリケーションと通信できるアプリケーションを実行することができる。ホスト装置12およびエンドポイント装置18、20を私設網24に接続することができる。私設網24は、典型的にはローカルエリアネットワークLANでありえるが、有線LAN、1つ以上のLANセグメント、無線LAN、ワイドエリアネットワーク、Bluetooth登録商標ネットワーク、USBネットワークなど、他の種類のネットワークであってもよい。したがって、接続26、28は有線接続または無線接続のいずれでもよく、また、装置間の通信を可能にする任意の適切な通信テクノロジーおよびプロトコルを利用することができる。私設網24は、複数のLANセグメントなど、連結された複数のネットワークも含むことができる。簡単のために、本開示では、私設網24をインターネット接続された家庭および企業の典型例である有線/無線EthernetLANとして説明する。たとえば、Linksys登録商標およびその他の会社の製品のような有線/無線ルーターがそのようなネットワークを提供することができる。しかし、当業者によって認識されるように、本発明は、さまざまな異なる種類のネットワークトポロジー内で動作することが可能である。私設網24は、ネットワークインタフェース装置32によって公衆網30から分離されたものとして示してある。公衆網30は、任意の種類のLANまたはWANであってよい。この例において、公衆網30はインターネットなどの公衆ネットワークに相当しえる。ネットワークインタフェース装置32は、私設網24と公衆網30間のブリッジを提供することができ、また、ファイアウォールなど、私設網24とインターネット間の防護壁を提供することもできる。ネットワークインタフェース装置32の典型的な例は、ケーブルモデム、DSLモデム、T1接続などである。公衆網30すなわちインターネットに接続された装置は、典型的には、ネットワークインタフェース装置32の防護壁を突破して私設網24上の装置を発見したり、それらの装置と通信することはできない。しかし、一実施形態において、ネットワークインタフェース装置32は、私設網24上の装置が公衆網30にアクセスできるようにすることができる。これにより、それらの装置は、インターネットの閲覧、アプリケーションのダウンロード、およびインターネット上の装置との通信を実行できるようになる。ネットワークインタフェース装置32は、単一のネットワークインタフェース装置であるか、あるいは私設網24とインターネット間の複数アクセスポイントを提供する複数のネットワークインタフェース装置でありえる。私設網24に接続された装置は私設網アドレスを受け取ることができ、公衆網30に接続された装置は公衆網アドレスを受け取ることができる。私設網アドレスは、私設網24に固有のアドレスである。私設網24から私設網アドレスを受け取る装置は、典型的には私設網24上の他の装置と自由に通信することができる。しかし、公衆網30上の装置は、典型的には、ネットワークインタフェース装置32内のセキュリティ機構の働きにより、私設網アドレスを有する私設網24上の装置を発見し、またはそれらの装置と通信することができない。典型的な例は家庭内LANまたは企業LANであり、そのLAN上の装置は互いに通信することができ、インターネットにアクセス可能であるが、インターネット上の装置は、そのLAN上の装置を発見し、またはそれらの装置との通信を開始することができない。ネットワークインタフェース装置32は公衆網30に接続されているため、この装置は公衆網アドレスを受け取ることができる。公衆網アドレスは、公衆網30上および/または私設網24上の装置によってアクセス可能なアドレスである。この例において、公衆網30はインターネットを表すため、ネットワークインタフェース装置が受け取る公衆網アドレスは公衆インターネットアドレスであり、そのアドレスは他のインターネット上の装置によってアクセス可能である。その逆も成立しえる。言い換えれば、公衆網30上の装置すなわちインターネット装置にとって、ネットワークインタフェース装置32およびその公衆網アドレスは見ることができるが、私設網24上の装置を見ることはできない。私設網24上の装置にとって私設網24上の他の装置は見ることができ、私設網アドレスを使用してそれらの装置にアクセスできるだけでなく、公衆網30上の装置も見ることができ、公衆網アドレスを使用してそれらの装置にアクセスすることができる。同じく図1に示すサーバー34は、アドレス登録プロセス36を実行している。サーバー34は、アドレス登録プロセス36を実行できる任意の種類のコンピューティング装置または装置のグループであってよい。典型的には、サーバー34は、サーバーコンピュータ、インターネットサーバー、サーバーのグループ、サーバーのクラスタ、または任意の構成のサーバーコンピュータである。システム10は、本明細書に説明する発明の典型的な構成を示す。しかし、システム10は、本明細書に説明する発明が動作可能な唯一のアーキテクチャではない。当業者によって認識されるように、さまざまなシステムアーキテクチャが本明細書に説明するシステム、方法、および装置をサポートすることができる。また、図示していないが、当該アプリケーションおよびプロセスのいずれも、システム10内の任意のコンピューティング装置によって、または当該アプリケーションおよびプロセスを実行できる任意のコンピューティング装置によって実行可能である。たとえば、ホスト装置12は、アドレス登録プロセス36および/またはアプリケーション22を実行することができる。エンドポイント装置18、20は、Webブラウザ16、ブラウザアプリケーション14、および/またはアドレス登録プロセス36を実行することができる。また、サーバー34は、Webブラウザ16、ブラウザアプリケーション14、および/またはアプリケーション22を実行することができる。前述のとおり、ブラウザアプリケーション14はWebブラウザ16のセキュリティ方式の内部で実行されるため、ブラウザアプリケーション14は、アプリケーション22を発見し、またはアプリケーション22と通信することができない可能性があり、また、アプリケーション22は、ブラウザアプリケーション14を発見し、またはブラウザアプリケーション14と通信することができない可能性がある。コンピュータ処理装置本発明は、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアの組み合わせとして実装することができる。図2は、ソフトウェアアプリケーションおよびプロセスを実行することができる典型的な処理アーキテクチャのブロック図を示す。コンピュータ処理装置200は、グラフィック出力用のディスプレイ202に結合されている。プロセッサ204は、ソフトウェアを実行することができるコンピュータプロセッサである。その典型的な例は、コンピュータプロセッサたとえばIntel登録商標またはAMD登録商標プロセッサ、ASIC、マイクロプロセッサなどである。プロセッサ204はメモリ206に結合されている。このメモリ206は、典型的には、プロセッサ204の実行中に命令およびデータを格納するための揮発性RAMメモリである。プロセッサ204は記憶装置208にも結合されている。この記憶装置208は、たとえばハードドライブ、フラッシュドライブ、テープドライブ、DVDROM、または類似装置を含む不揮発性記憶媒体である。プログラム210は、命令および/またはデータが入っているコンピュータプログラムであり、記憶装置208に格納されている。典型的なシナリオにおいて、プロセッサ204は、実行のためにプログラム210の命令および/またはデータの一部または全部をメモリ206にロードすることができる。プログラム210は、Webブラウザ16、ブラウザアプリケーション14、アドレス登録プロセス36、アプリケーション22、その他任意のコンピュータアプリケーションまたはプロセスを非限定的に含む、任意のコンピュータプログラムまたはプロセスである。プログラム210は、各種の命令およびサブルーチンを含むことができ、それらは、メモリ206にロードされてプロセッサ204によって実行される時点で、プロセッサ204にさまざまな処理動作を実行させ、その一部または全部により、本発明に関連した方法が実現されうる。図示していないが、コンピュータ処理装置200は、典型的には、さまざまな形の入出力を含む。そのI/Oには、ネットワークアダプタ、USBアダプタ、Bluetooth無線、マウス、キーボード、タッチパッド、ディスプレイ、タッチスクリーン、LED、振動装置、スピーカー、マイクロフォン、センサー、その他、コンピュータ処理装置200とともに使用される任意の入力または出力装置が含まれる。内容制御プロセス図3は、Webブラウザの内容を制御するプロセスを示したフローチャートである。このプロセスは、1つ以上の装置上で実行されるソフトウェアとして実装することができる。たとえば、ホスト装置12、エンドポイント装置18、20、サーバー34、またはそれらの任意の組み合わせによってこのプロセスを実行することができる。その他任意の適合装置上または任意の適切なアーキテクチャ内にこのプロセスを実装することもできる。1つの実施形態において、この内容制御プロセスは、Webブラウザの内容を制御するように動作することができる。特定の実施形態において、本プロセスは、ブラウザアプリケーション14とアプリケーション22の接続および通信を容易にすることができ、また、ブラウザアプリケーション14によって表示されるWebブラウザの内容をアプリケーション22が制御できるようにすることができる。1つの例において、ブラウザアプリケーション14は、ユーザーによってダウンロードされるビデオゲームである。そのビデオゲームは、Webブラウザ16内のブラウザアプリケーション例:FLASHアプリケーションとして実行され、Webブラウザのセキュリティ上の制限の適用を受ける。同じ例において、エンドポイント装置18上で動作するアプリケーション22は、ユーザーによってダウンロードされるゲームコントローラアプリケーションである。このコントローラアプリケーションは、ゲームコントローラとして機能し、ユーザーがFLASHゲームを制御および/またはプレイできるようにする。ユーザーはそのゲームコントローラアプリケーションをビデオゲームに接続してプレイしたいと考えるかもしれない。しかし、そのビデオゲームはWebブラウザ16のセキュリティ機構の内部で実行されているため、そのコントローラアプリケーションとビデオゲームは互いに相手を発見して通信することができない。アプリケーションが通信するために、サーバー34および/またはアドレス登録プロセス36は、エンドポイント装置18上で動作しているアプリケーション22からの通信を受け取る302ことができる。一実施形態において、アプリケーション22は、自分のアドレスをサーバー34に登録するために送信することができる。したがって、その通信にはエンドポイント装置18の私設網アドレスすなわち私設網24内部の私設網アドレスが含まれ、また、エンドポイント装置18の公衆網アドレスが含まれることもある。この例において、ネットワークインタフェース装置32は私設網24と公衆網30間のブリッジであるため、エンドポイント装置18の公衆網アドレスおよび私設網アドレスの少なくとも一部がネットワークインタフェース装置32の公衆網アドレスと一致することがありえる。場合によっては、その通信にアプリケーションIDが含まれることもある。アプリケーション22は、アプリケーションIDを有することができ、それを公衆網および私設網アドレスとともにサーバー34に送信する。ブラウザアプリケーション14ホスト装置12上のブラウザ16内で動作中は、サーバー34に通信を送ることもできる。同様に、ブラウザアプリケーション14からの通信は、ブラウザアプリケーション14をアドレス登録プロセス36に登録する役割を果たすことができる。その通信には、ホスト装置12の公衆網アドレスが含まれることがあり、また、ブラウザアプリケーション14を一意に識別するアプリケーションIDが含まれることもある。この場合、上述のように、ネットワークインタフェース32がホスト装置12と公衆網30間のインタフェースを提供するため、ホスト装置12の公衆網アドレスは、その全体または一部がネットワークインタフェース装置32の公衆網アドレスと一致する可能性がある。いくつかの実施形態において、ブラウザアプリケーション14および/またはアプリケーション22からの通信には上記以外の情報が含まれ、たとえば、ホスト装置12の私設網アドレス、ホスト装置12に関するその他の情報、アプリケーションデータ、ユーザーデータ、その他任意の種類の情報がこれに含まれる。図4は、エンドポイント装置18、ホスト装置12、およびサーバー34間の通信の例を示す。図のように、通信402には、エンドポイント装置18の公衆網アドレスおよび私設網アドレスとともにアプリケーション22のアプリケーションIDが含まれる。同様に、通信404には、ホスト装置12の公衆網アドレスおよびブラウザアプリケーション14のアプリケーションIDが含まれる。その逆も成立しえる。サーバー34は、他のエンドポイント装置およびホスト装置図示せずからの通信を受け取ることができる。一実施形態において、サーバー34は、サイバースペース全体のさまざまな私設網に接続された装置からの通信ネットワークアドレスおよびアプリケーションIDを含むを受け取るインターネットサーバーである。サーバー34は、これらの各種装置から受信した情報を、たとえばデータベースまたは他のデータストレージに記録して整理することができる。通信を受け取ったサーバー34は、その通信に含まれる公衆網アドレスに基づいて、エンドポイント装置18およびホスト装置12が同じローカルネットワークに接続しているか判定する304ことができる。上述のように、公衆網アドレスは、典型的には、ローカルネットワークに接続された公衆向けの装置と関連づけられている。図1において、その装置はネットワークインタフェース装置32である。したがって、この例において、サーバー34がエンドポイント装置18から通信402を受け取った時、その通信はネットワークインタフェース装置32を経由しているため、エンドポイント装置18が私設網24に接続していることが公衆網アドレスによって示されうる。同様に、ホスト装置12からの通信404に含まれる公衆網アドレスにより、ホスト装置12が私設網24に接続していること、および通信404がネットワークインタフェース装置32を経由していることが示されうる。このようにして各種装置の公衆網アドレスを比較することにより、サーバー34は、どの装置が私設網に接続されているか判断することができる。それらの公衆網アドレスは、その全体または一部が一致しているか、あるいは一致していない場合でも関係している可能性がある。たとえば、サーバー34は、2つの装置の公衆網アドレスが一致していれば、その2つの装置が同じ私設網に接続されていると判断することができる。別の例において、サーバー34は、2つの装置の公衆網アドレスが同じサブネットアドレスを有している場合、その2つの装置が同じ私設網に接続していると判断することができる。サーバー34は、どの公衆網アドレスが各種私設網と関連づけられているかについての情報を与えるルックアップテーブルまたはその他の装置を備えることもできる。そのルックアップテーブルまたはその他の機構を利用することにより、サーバー34は、受信した公衆網アドレスから各装置が同じ私設網に接続されているか判断することができる。システム10は、エンドポイント装置18の私設網アドレスをブラウザアプリケーション14に与える308ことにより、ブラウザアプリケーション14とアプリケーション22間のネットワーク接続を容易にすることもできる。上述のように、ブラウザアプリケーション14とアプリケーション22は、Webブラウザ16のセキュリティによって通信が妨げられることにより、互いに接続し、または通信することができない可能性がある。たとえば、Webブラウザ16のセキュリティにより、ブラウザアプリケーション14が私設網24上で自らの存在をブロードキャストすることが妨げられる場合がある。同様に、Webブラウザ16のセキュリティにより、ブラウザアプリケーション14がアプリケーション22からブロードキャストを受信することが妨げられる場合がある。しかし、ブラウザアプリケーション14がエンドポイント装置18の私設網アドレスを知っていれば、ブラウザアプリケーション14がアプリケーション22と直接通信できる可能性がある。エンドポイント装置18の私設網アドレスをブラウザアプリケーション14に与えることにより、システムは、Webブラウザ16のセキュリティポリシーに変更を加え、ブラウザアプリケーション14とアプリケーション22間の通信を可能にすることができる。いくつかの実施形態において、アドレス登録プロセス36および/またはサーバー34は、アプリケーション22とブラウザアプリケーション14が機能的に適合したアプリケーションである場合にのみ、ブラウザアプリケーション14にエンドポイント装置18の私設網アドレスを与える。たとえば、ブラウザアプリケーション14がゲームアプリケーションであり、アプリケーション22がそのゲームのためのコントローラアプリケーションであるとアドレス登録プロセス36が判断した場合、アドレス登録プロセス36は、アプリケーション22とブラウザアプリケーション14が適合アプリケーションであると判断し、ブラウザアプリケーション14にエンドポイント装置18の私設網アドレスを送信して、ブラウザアプリケーション14とアプリケーション22が互いに通信できるようにすることができる。しかし、ブラウザアプリケーション14とアプリケーション22が機能的に適合していない場合には、アドレス登録プロセスは、ブラウザアプリケーション14に私設網アドレスを送信しなくともよい。たとえば、ブラウザアプリケーション14がビデオゲームであっても、アプリケーション22が絵を描くためのアプリケーションであれば、その2つは適合しない可能性が高い。その場合、ブラウザアプリケーション14とアプリケーション22間の通信を開始するためにエンドポイント装置18の私設網アドレスをブラウザアプリケーション14に送信する必要はない。アドレス登録プロセス36は、アプリケーションが機能的に適合しているかどうかをさまざまな方法で判定する310ことができる。一実施形態において、アドレス登録プロセス36は、アプリケーション22およびブラウザアプリケーション14から受信したアプリケーションIDを比較することができる。それらのアプリケーションIDにより、2つのアプリケーションが適合することが示されていれば、アドレス登録プロセスは、ブラウザアプリケーション14にエンドポイント装置18の私設網アドレスを与える308ことができる。たとえば、2つのアプリケーションIDが一致していれば、アプリケーションIDによってアプリケーションの適合が確認されることになる。他の実施形態において、2つが他の何らかの形で関連付けられている場合、それらのアプリケーションIDによって適合性が示されることもある。たとえば、アドレス登録プロセス36は、機能的に適合したアプリケーションIDをリンクするものとして、アプリケーションIDのルックアップテーブルまたはハッシュテーブルを保持することができる。アプリケーションIDは、任意の一意の識別子であってよく、アプリケーションおよび/またはそのバージョン番号を表すコード、アプリケーションの名前などの情報を含むことができる。その逆も成立しえる。いくつかの実施形態において、アドレス登録プロセス36は、さまざまな方法でブラウザアプリケーション14に私設網アドレスを与える308ことができる。1つの実施形態において、ブラウザアプリケーション14は、アドレス登録プロセス36を定期的にポーリングし、アドレスを返すように求めることができる。その要求を受信したアドレス登録プロセス36は、適合アプリケーションを実行しており、かつ私設網24に接続しているすべてのエンドポイント装置の私設網アドレスのリストをブラウザアプリケーション14に送信することができる。別の実施形態において、アドレス登録プロセス36は、適合アプリケーションを実行しており、かつ私設網24に接続しているエンドポイント装置がアドレス登録プロセス36に登録されている場合には必ずブラウザアプリケーション14にエンドポイント装置の私設網アドレスを送信する。さらに別の実施形態では、アドレス登録プロセス36が私設網アドレスのリストを定期的にブロードキャストし、適切な時点でブラウザアプリケーション14がそれを取り出せるようにすることができる。ブラウザアプリケーション14に私設網アドレスを与える308上記以外の方式を用いることもできる。Webブラウザ16のセキュリティによってブラウザアプリケーション14とアプリケーション22間の通信が妨げられる場合、本システムは、通信を可能にするようにWebブラウザ16のセキュリティポリシーを変更する312ことができる。たとえば、エンドポイント装置18は、ホスト装置12にポリシーファイルを送信する314ことができる。図3および図4に示す一実施形態において、エンドポイント装置18は、Webサーバーを介してポリシーファイルを送るという方法でホスト装置12にポリシーファイル406を送信する314ことができる。エンドポイント装置18はWebサーバーアプリケーションを実行することができ、そのWebサーバーアプリケーションは、アプリケーション22に組み込まれているか、あるいはスタンドアロン型または既製のWebサーバーアプリケーションであってもよい。典型例な既製Webサーバーアプリケーションには、Apache登録商標Webサーバー、MicrosoftIIS登録商標Webサーバーなどが含まれる。当業者によって認識されるように、エンドポイント装置20またはサーバー34など、上記以外の装置もWebサーバーアプリケーションを実行して、ホスト装置12にポリシーファイル406を送信する314ことができる。エンドポイント装置18の私設網アドレスを受信したブラウザアプリケーション14は、エンドポイント装置18上で実行中のWebサーバーにアクセスし、ポリシーファイル406をダウンロードすることができる。典型的には、ポリシーファイルは当技術分野で知られているものである。この例において、ポリシーファイル406には、Webブラウザ16に関する新しいセキュリティポリシーまたはブラウザアプリケーション14とアプリケーション22間の通信を可能にするWebブラウザ16のセキュリティポリシー変更情報が入っている。ブラウザアプリケーション14は、ポリシーファイル406を受信すると、そのポリシーファイルをWebブラウザ16のセキュリティポリシーに適用して、当該の通信を可能にすることができる。別の実施形態において、HTML5ハンドシェイクを通じてWebブラウザ16のセキュリティポリシーを変更する312ことができる。典型的には、HTML5ハンドシェイクは当技術分野で知られているものである。この場合、アプリケーション22およびブラウザアプリケーション14は、Webブラウザ16のセキュリティプロファイルに変更を加えてブラウザアプリケーション14とアプリケーション22間の通信を可能にする目的で、HTML5ハンドシェイクを実行することができる。ブラウザアプリケーション14とアプリケーション22は、ネットワーク通信を確立したあと、片方向通信、双方向通信、またはその両方を開始することができる。たとえば、ブラウザアプリケーション14はアプリケーション22にデータおよび/または命令を送信することができ、その逆も可能である。そのデータおよび/または命令は、2つのアプリケーション間の通信のための任意の種類のデータまたは命令である。たとえば、そのデータおよび/または命令には、損失耐性のあるデータ音声または動画ストリームなどおよび損失の影響が大きいデータコマンドまたは制御データなどが含まれうる。それらのデータおよび命令は、アプリケーション22からブラウザアプリケーション14に、ブラウザアプリケーション14からアプリケーション22に、またはその両方向に流れる。いくつかの実施形態では、そのデータにゲームデータが含まれる。たとえば、Webブラウザアプリケーション14がゲームであり、アプリケーション22がゲームコントローラアプリケーションである場合、Webブラウザ14は、ブラウザアプリケーション14がどのような種類のゲームデータおよび命令を予期しているかアプリケーション22に知らせるためのデータをアプリケーション22に送信することができる。このようにして、ブラウザアプリケーション14および/またはアプリケーション22は、双方向に送信されるデータの種類をカスタマイズすることができる。上記の説明では単一のエンドポイント装置、単一のホスト装置、および単一のサーバーという例を示しているが、当業者によって認識されるように、単一または複数の装置を利用する任意の組み合わせが可能である。単一または複数のエンドポイント装置、単一または複数のホスト装置、単一または複数のアドレス登録サーバー装置の任意の組み合わせが本発明の範囲に含まれうる。たとえば、複数のエンドポイント装置を単一のホスト装置に接続すること、単一のエンドポイント装置を単一のホスト装置に接続すること、単一または複数のホストおよび/またはエンドポイント装置が単一または複数のアドレス登録サーバー装置と通信することなどが可能である。それ以外の組み合わせも本発明の範囲に含まれる。ゲーム例以下の例は本発明の一実施形態を示す。本発明の動作を例示するためにビデオゲームアプリケーションを用いている。この例における架空のプレイヤーは、Webブラウザ内でビデオゲームをプレイし、そのゲームを制御するためのゲームコントローラとしてスマートフォンを使用したいと考えている。ホスト装置12はすでに私設網24に接続しているため、プレイヤーは、Webブラウザ16を開き、自分が選択したビデオゲームをホスティングするWebサイトに接続させる。この例におけるビデオゲームは、FLASHブラウザアプリケーションである。Webブラウザ16は、そのゲームアプリケーションをダウンロードした後、Webブラウザ16内でそのゲームの実行を開始する。しかし、Webブラウザ16が有するセキュリティポリシーは、そのゲームが私設網24に接続された他の装置を発見すること、または私設網24を介して自らの存在をブロードキャストすることを制限している。したがって、プレイヤーのスマートフォンをゲームコントローラとして使用するためには、その前に特定の操作が必要とされる。そのゲームはロード後にメッセージを送信し、自らの存在をサーバー34に登録する。そのメッセージには、ホスト装置12の公衆網アドレスおよびそのゲームのアプリケーションIDが含まれる。そのアプリケーションIDによってサーバー34はゲームが実行中であることを認識し、公衆網アドレスによってホスト装置12が私設網24に接続されていることを認識する。次に、プレイヤーは自分のスマートフォンすなわちエンドポイント装置18を手に取り、そのゲーム用のゲームコントローラアプリケーションすなわちアプリケーション22をインターネットからダウンロードする。プレイヤーのスマートフォンは私設網24にも接続しており、自分の私設網アドレスをすでに受け取っている。プレイヤーがゲームコントローラアプリケーションをロードすると、そのゲームコントローラアプリケーションは、スマートフォンの公衆網アドレスおよび私設網アドレスとともにそのゲームコントローラアプリケーションのアプリケーションIDが入っている通信をサーバー34に送る。そのアプリケーションIDによってサーバー34はどのゲームコントローラアプリケーションが実行中であるかを認識し、公衆網アドレスによってスマートフォンが私設網24に接続されていることを認識する。それらの通信の受信後、サーバー34は、受け取った公衆網アドレスおよびアプリケーションIDに基づいて、ゲームコントローラとゲームアプリケーションが機能的に適合しており、また、ホスト装置12とスマートフォンが同じローカルネットワークに接続しているという判定を行うことができる。そのような判定がなされた場合、サーバー34は、スマートフォンの私設網アドレスをゲームアプリケーションに与え、ゲームとゲームコントローラアプリケーション間の通信を容易にすることができる。必要ならば、ゲームアプリケーションおよび/またはゲームコントローラアプリケーションは、アプリケーション間のネットワーク通信を可能にする目的でWebブラウザのセキュリティポリシーに変更を加えることができる。たとえば、スマートフォンまたは他の装置は、ポリシーファイルを与えるか、またはHTML5ハンドシェイクを開始して、Webブラウザ16のセキュリティプロファイルを変更することができる。続いてゲームアプリケーションとゲームコントローラアプリケーションは、たとえば、1つ以上のソケット接続を開くことにより、互いにネットワーク通信を確立することができる。ネットワークを介してアプリケーションが接続すると、プレイヤーは、自分のスマートフォンで実行中のゲームコントローラアプリケーションを使用して、Webブラウザ内で実行中のゲームを制御およびプレイすることができる。次にゲームコントローラアプリケーションとゲームアプリケーションは、ゲーム制御データ、映像データ、音声データ、ボタン押下データ、加速度計データなどのデータを相互間でやりとりすることができる。システムおよび方法の動作以下の例は、本発明のいくつかの実施形態の動作を示す。ブラウザアプリケーション14は、ホスト装置12において実行中のWebブラウザ16の内部で動作しているブラウザアプリケーションである。ブラウザアプリケーション14は、ホスト装置12の公衆網アドレスとともにサーバー34に通信を送る。アプリケーション22は、ブラウザアプリケーション14と通信して、ブラウザアプリケーション14の表示内容を制御するアプリケーションであり、エンドポイント装置18上で実行されている。アプリケーション22は、エンドポイント装置18の公衆網アドレスおよび私設網アドレスとともにサーバー34に通信を送ることができる。サーバー34は、アプリケーション22とブラウザアプリケーション14が同じローカルネットワークに接続された装置上で実行されている、機能的に適合したアプリケーションであるという判定を行うことができる。そのように判定された場合、サーバー34は、エンドポイント18の私設網アドレスをブラウザアプリケーション14に送信して、2つのアプリケーション間の接続を容易にすることができる。続いてブラウザアプリケーション14とアプリケーション22は、私設網24を介して互いに通信することができ、また、Webブラウザ16のセキュリティポリシーに変更を加え、ブラウザアプリケーション14とアプリケーション22間の双方向通信を可能にすることができる。本開示では、さまざまなブロック図およびフローチャートに言及している。当業者によって認識されるように、これらのブロック図内の構成要素およびフローチャート内のステップの順序および構成は限定要件ではなく、例示のみを目的としたものである。コンポーネントおよび装置の各種の適切な構成および実行動作のさまざまな順序およびシーケンスが本願請求項の範囲に含まれうる。以上、本発明をその具体的な実施形態に関連して説明したが、当然ながら、さらなる改変が可能である。また、本願は、本発明が関係する技術分野における既知の方法または慣行のような本開示からの逸脱を含め、本発明のあらゆる変形、使用または翻案を包含することを意図している。