(57)【要約】  オーバーレイ・ネットワークを使用してデバイスおよびサービスをプロキシ化するための方法および装置。プロキシを操作するための方法は、デバイスとサービスの少なくとも一方と関連したメタデータを取得することと、上記メタデータの検索可能なインデックスを生成することと、上記オーバーレイ・ネットワークの上記検索可能なインデックスを分散インデックスと集中インデックスの少なくとも一方として発行することとを含む。別の方法は、データとサービスの少なくとも一方を上記オーバーレイ・ネットワークから受信するというリクエストを、非オーバーレイ・プロトコルを使用してデバイスまたはサービスから受信することと、上記リクエストに基づいて、上記オーバーレイ・ネットワークでメタデータのインデックスを検索することと、上記インデックスに基づいて、上記データとサービスの少なくとも一方と関連したノードを識別することと、上記ノードとの直接接続を確立することと、上記直接接続を使用して、上記データとサービスの少なくとも一方を取得することとを含む。
2011524597.tif 000002
【特許請求の範囲】
【請求項１】
ピアツーピア・オーバーレイ・ネットワークにおいてプロキシを操作するための方法であって、
デバイスとサービスの少なくとも一方と関連したメタデータを取得することと、
前記メタデータの検索可能なインデックスを生成することと、
前記オーバーレイ・ネットワークの前記検索可能なインデックスを分散インデックスと集中インデックスの少なくとも一方として発行することとを備える方法。
【請求項２】
前記取得することは、非オーバーレイ・プロトコルを使用して、前記デバイスから前記メタデータを取得することを備える、請求項１に記載の方法。
【請求項３】
前記取得することは、前記メタデータを取得するために前記デバイスに問合せることを備える、請求項１に記載の方法。
【請求項４】
前記取得することは、前記メタデータを取得するために、前記デバイスからの広告をリッスンすることを備える、請求項１に記載の方法。
【請求項５】
前記デバイスからデータまたはサービスを取得するというリクエストをノードから受信することをさらに備えており、前記リクエストは前記オーバーレイ・ネットワークを介して受信される、請求項１に記載の方法。
【請求項６】
前記ノードとの直接接続を確立することと、
前記ノードによってプロキシ化された選択デバイスとの接続を確立することと、
前記直接接続を使用して、前記データまたはサービスを前記ノードに提供することとをさらに備える、請求項５に記載の方法。
【請求項７】
前記提供することは、前記データの選択データ要素を変換することを備える、請求項６に記載の方法。
【請求項８】
前記選択デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項７に記載の方法。
【請求項９】
前記デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項１に記載の方法。
【請求項１０】
ピアツーピア・オーバーレイ・ネットワークにおいてプロキシ化するための装置であって、
デバイスとサービスの少なくとも一方と関連したメタデータを取得する手段と、
前記メタデータの検索可能なインデックスを生成する手段と、
前記オーバーレイ・ネットワークの前記検索可能なインデックスを分散インデックスと集中インデックスの少なくとも一方として発行する手段とを備える装置。
【請求項１１】
前記取得手段は、非オーバーレイ・プロトコルを使用して、前記デバイスから前記メタデータを取得する手段を備える、請求項１０に記載の装置。
【請求項１２】
前記取得手段は、前記メタデータを取得するために前記デバイスに問合せる手段を備える、請求項１０に記載の装置。
【請求項１３】
前記取得手段は、前記メタデータを取得するために、前記デバイスからの広告をリッスンする手段を備える、請求項１０に記載の装置。
【請求項１４】
前記デバイスからデータまたはサービスを取得するというリクエストをノードから受信する手段をさらに備えており、前記リクエストは前記オーバーレイ・ネットワークを介して受信される、請求項１０に記載の装置。
【請求項１５】
前記ノードとの直接接続を確立する手段と、
前記ノードによってプロキシ化された選択デバイスとの接続を確立する手段と、
前記直接接続を使用して、前記データまたはサービスを前記ノードに提供する手段とをさらに備える、請求項１５に記載の装置。
【請求項１６】
前記提供手段は、前記データの選択データ要素を変換することを備える、請求項１５に記載の装置。
【請求項１７】
前記選択デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項１６に記載の装置。
【請求項１８】
前記デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項１０に記載の装置。
【請求項１９】
ピアツーピア・オーバーレイ・ネットワークにおいてプロキシ化するための装置であって、
デバイスとサービスの少なくとも一方と関連したメタデータを取得し、かつ前記メタデータの検索可能なインデックスを生成するように構成されたプロセッサと、
前記オーバーレイ・ネットワークの前記検索可能なインデックスを分散インデックスと集中インデックスの少なくとも一方として発行するように構成されたトランシーバとを備える装置。
【請求項２０】
前記プロセッサは、非オーバーレイ・プロトコルを使用して、前記デバイスから前記メタデータを取得するように構成される、請求項１９に記載の装置。
【請求項２１】
前記プロセッサは、前記メタデータを取得するために前記デバイスに問合せるように構成される、請求項１９に記載の装置。
【請求項２２】
前記プロセッサは、前記メタデータを取得するために、前記デバイスからの広告をリッスンするように構成される、請求項１９に記載の装置。
【請求項２３】
前記プロセッサは、前記デバイスからデータまたはサービスを取得するというリクエストをノードから受信するように構成されており、前記リクエストは前記オーバーレイ・ネットワークを介して受信される、請求項１９に記載の装置。
【請求項２４】
前記プロセッサは、
前記ノードとの直接接続を確立し、
前記ノードによってプロキシ化された選択デバイスとの接続を確立し、
前記直接接続を使用して前記データまたはサービスを前記ノードに提供するように構成される、請求項２３に記載の装置。
【請求項２５】
前記プロセッサは、前記データの選択データ要素を変換するように構成される、請求項２４に記載の装置。
【請求項２６】
前記選択デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項２５に記載の装置。
【請求項２７】
前記デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項１９に記載の装置。
【請求項２８】
ピアツーピア・オーバーレイ・ネットワークにおいてプロキシ化するためのコンピュータ・プログラム製品であって、
デバイスとサービスの少なくとも一方と関連したメタデータを取得し、
前記メタデータの検索可能なインデックスを生成し、
前記オーバーレイ・ネットワークの前記検索可能なインデックスを分散インデックスと集中インデックスの少なくとも一方として発行するように実行可能なコードを具現化するコンピュータ読み取り可能な媒体を備えるコンピュータ・プログラム製品。
【請求項２９】
前記コードは、非オーバーレイ・プロトコルを使用して前記デバイスから前記メタデータを取得するように構成される、請求項２８に記載のコンピュータ読み取り可能な媒体。
【請求項３０】
前記コードが、前記メタデータを取得することを前記デバイスに要求するように構成される、請求項２８に記載のコンピュータ読み取り可能な媒体。
【請求項３１】
前記コードは、前記メタデータを取得するために、前記デバイスからの広告をリッスンするように構成される、請求項２８に記載のコンピュータ読み取り可能な媒体。
【請求項３２】
前記コードは、前記デバイスからデータまたはサービスを取得するというリクエストをノードから受信するように構成されており、前記リクエストは前記オーバーレイ・ネットワークを介して受信される、請求項２８に記載のコンピュータ読み取り可能な媒体。
【請求項３３】
前記コードは、
前記ノードとの直接接続を確立し、
前記ノードによってプロキシ化された選択デバイスとの接続を確立し、
前記直接接続を使用して前記データまたはサービスを前記ノードに提供するように構成される、請求項３２に記載のコンピュータ読み取り可能な媒体。
【請求項３４】
前記コードは、前記データの選択データ要素を変換するように構成される、請求項３３に記載のコンピュータ読み取り可能な媒体。
【請求項３５】
前記選択デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項３４に記載のコンピュータ読み取り可能な媒体。
【請求項３６】
前記デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項２８に記載のコンピュータ読み取り可能な媒体。
【請求項３７】
ピアツーピア・オーバーレイ・ネットワークにおいてプロキシを操作するための方法であって、
データとサービスの少なくとも一方を前記オーバーレイ・ネットワークから受信するというリクエストを、非オーバーレイ・プロトコルを使用してデバイスとサービスの少なくとも一方から受信することと、
前記リクエストに基づいて、前記オーバーレイ・ネットワークでメタデータのインデックスを検索することであって、前記インデックスが分散インデックスと集中インデックスの少なくとも一方であることと、
前記インデックスに基づいて、前記データとサービスの少なくとも一方と関連したノードを識別することと、
前記ノードとの直接接続を確立することと、
前記直接接続を使用して前記データとサービスの少なくとも一方を取得することとを備える方法。
【請求項３８】
前記確立することは、前記オーバーレイ・ネットワークを使用して、前記データとサービスの少なくとも一方に対するオーバーレイ・リクエストを前記ノードに送信することを備える、請求項３７に記載の方法。
【請求項３９】
前記非オーバーレイ・プロトコルを使用して、前記データとサービスの少なくとも一方を前記デバイスに送信することをさらに備える、請求項３７に記載の方法。
【請求項４０】
前記送信することは、データ・フォーマットの変換と、ＩＰアドレスの変更と、サービスおよびデータ識別子の一意性とを提供するために、前記データとサービスの少なくとも一方を変換することを備える、請求項３９に記載の方法。
【請求項４１】
前記デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項３７に記載の方法。
【請求項４２】
ピアツーピア・オーバーレイ・ネットワークにおいてデバイスをプロキシ化するための装置であって、
データとサービスの少なくとも一方を前記オーバーレイ・ネットワークから受信するというリクエストを、非オーバーレイ・プロトコルを使用してデバイスとサービスの少なくとも一方から受信する手段と、
前記リクエストに基づいて、前記オーバーレイ・ネットワークでメタデータのインデックスを検索する手段であって、前記インデックスが、分散インデックスと集中インデックスの少なくとも一方である手段と、
前記インデックスに基づいて、前記データとサービスの少なくとも一方と関連したノードを識別する手段と、
前記ノードとの直接接続を確立する手段と、
前記直接接続を使用して、前記データとサービスの少なくとも一方を取得する手段とを備える装置。
【請求項４３】
前記確立手段は、前記オーバーレイ・ネットワークを使用して、前記データとサービスの少なくとも一方に対するオーバーレイ・リクエストを前記ノードに送信する手段を備える、請求項４２に記載の装置。
【請求項４４】
前記非オーバーレイ・プロトコルを使用して、前記データとサービスの少なくとも一方を前記デバイスに送信する手段をさらに備える、請求項４２に記載の装置。
【請求項４５】
前記送信手段は、データ・フォーマットの変換と、ＩＰアドレスの変更と、サービスおよびデータ識別子の一意性とを提供するために、前記データとサービスの少なくとも一方を変換する手段を備える、請求項４４に記載の装置。
【請求項４６】
前記デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項４２に記載の装置。
【請求項４７】
ピアツーピア・オーバーレイ・ネットワークにおいてデバイスをプロキシ化するための装置であって、
前記オーバーレイ・ネットワークからデータとサービスの少なくとも一方を受信するというリクエストを、非オーバーレイ・プロトコルを使用してデバイスとサービスの少なくとも一方から受信するように構成されるトランシーバと、
プロセッサであって、
前記リクエストに基づいて前記オーバーレイ・ネットワークにおいてメタデータのインデックスを検索することであって、前記インデックスが、分散インデックスと集中インデックスの少なくとも一方であることと、
前記インデックスに基づいて、前記データとサービスの少なくとも一方と関連したノードを識別することと、
前記ノードとの直接接続を確立することと、
前記直接接続を使用して、前記データとサービスの少なくとも一方を取得することとを実行するように構成されたプロセッサとを備える装置。
【請求項４８】
前記プロセッサは、前記オーバーレイ・ネットワークを使用して、前記データとサービスの少なくとも一方に対するオーバーレイ・リクエストを前記ノードに送信するように構成される、請求項４７に記載の装置。
【請求項４９】
前記トランシーバは、前記非オーバーレイ・プロトコルを使用して、前記データとサービスの少なくとも一方を前記デバイスに送信するように構成される、請求項４７に記載の装置。
【請求項５０】
前記プロセッサは、データ・フォーマットの変換と、ＩＰアドレスの変更と、サービスおよびデータ識別子の一意性とを提供するために、前記データとサービスの少なくとも一方を変換するように構成される、請求項４７に記載の装置。
【請求項５１】
前記デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項４７に記載の装置。
【請求項５２】
ピアツーピア・オーバーレイ・ネットワークにおいてデバイスをプロキシ化するためのコンピュータ・プログラム製品であって、
前記オーバーレイ・ネットワークからデータとサービスの少なくとも一方を受信するというリクエストを、非オーバーレイ・プロトコルを使用してデバイスとサービスの少なくとも一方から受信することと、
前記リクエストに基づいて、前記オーバーレイ・ネットワークでメタデータのインデックスを検索することであって、前記インデックスは、分散インデックスと集中インデックスの少なくとも一方であることと、
前記インデックスに基づいて、前記データとサービスの少なくとも一方と関連したノードを識別することと、
前記ノードとの直接接続を確立することと、
前記直接接続を使用して、前記データとサービスの少なくとも一方を取得することと、
を実行可能なコードを具現化するコンピュータ読み取り可能な媒体を備えるコンピュータプログラム製品。
【請求項５３】
前記コードは、前記オーバーレイ・ネットワークを使用して、前記データとサービスの少なくとも一方に対するオーバーレイ・リクエストを前記ノードに送信するように構成される、請求項５２に記載のコンピュータ読み取り可能な媒体。
【請求項５４】
前記コードが、前記非オーバーレイ・プロトコルを使用して、前記データとサービスの少なくとも一方を前記デバイスに送信するように構成される、請求項５２に記載のコンピュータ読み取り可能な媒体。
【請求項５５】
前記コードは、データ・フォーマットの変換と、ＩＰアドレスの変更と、サービスおよびデータ識別子の一意性とを提供するために、前記データとサービスの少なくとも一方を変換するように構成される、請求項５２に記載のコンピュータ読み取り可能な媒体。
【請求項５６】
前記デバイスは、ＩＰデバイスと非ＩＰデバイスの一方である、請求項５２に記載のコンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本特許出願は、「IPオーバーレイネットワークおよび非IPオデバイスを関連づける方法および装置（“Ｍｅｔｈｏｄｓ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｉｎｔｅｒｗｏｒｋｉｎｇ  ｂｅｔｗｅｅｎ  ＩＰ  Ｏｖｅｒｌａｙ  Ｎｅｔｗｏｒｋｓ  ａｎｄ  ｎｏｎ−ＩＰ  Ｄｅｖｉｃｅｓ”）」と題され、２００８年６月１７日に出願され、かつこの譲受人に譲渡された米国仮特許出願第６１／０７３，２１３号の優先権を請求するものであり、参照によってここに組み込まれている。
【０００２】
本特許出願は、「ピアツーピアネットワークにおけるプロキシ化（“Ｐｒｏｘｙｉｎｇ  ｉｎ  Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ  Ｎｅｔｗｏｒｋｓ”）」と題され、２００９年１月９日に出願され、かつこの譲受人に譲渡された米国仮特許出願第６１／１４３，７０４号の優先権を請求するものであり、参照によってここに組み込まれている。
【０００３】
本出願は一般的にはオーバーレイネットワークの動作に関し、さらに詳細には、オーバーレイ・ネットワークを使用してデバイスおよびサービスをプロキシ化する方法および装置に関する。
【背景技術】
【０００４】
サーバ・ベース・インフラストラクチャのない状況でメンバ・ノードがサービスを取得するネットワークは、「ピアツーピア」オーバーレイ・ネットワークと称される。ピアツーピア・オーバーレイにおいて、ピア・ノードは、サービスを提供するためおよびネットワークを維持するために協働する。ピアツーピア・オーバーレイ・ネットワークは、インターネット・プロトコル（ＩＰ）を利用するネットワークなどの基本ネットワーク上で構築可能である。
【０００５】
典型的には、ピアツーピア・オーバーレイ・ネットワークのノードは、相互に性能が異なり、各ノードの性能は経時的に変化することもある。例えば、ノードで使用可能な永久記憶量は、ファイルがファイル記憶デバイスによって記憶および削除されるのに伴って変化しうる。別の例では、ノードのバッテリ・レベルは経時的に低下するが、ノードは主電源から接続解除される。
【０００６】
オーバーレイで使用されているプロトコルをサポートしないという理由で、ピアツーピア・オーバーレイ・ネットワークに参加できないノードについて検討する。ノード（つまり、デバイス）は、オーバーレイ・ネットワークの別のノードをプロキシとして指定することによって、制限的にピアツーピア・オーバーレイ・ネットワークにサービスを提供し、かつここからサービスを受け取ることが依然として可能である。プロキシ・ノードは、プロキシ化ノードに代わり、オーバーレイ・ネットワークの他のノードに応答する。したがって、オーバーレイ・ネットワークの残りのノードが関与する限り、プロキシ・ノードはプロキシ化ノードのサービスを提供しているような状態である。
【０００７】
一般的に、ノードは、オーバーレイ・ネットワークで使用されているプロトコルと相容れない非オーバーレイ・プロトコルを使用して、自身のプロキシと通信可能である。プロキシは、パケットをプロキシ化ノードからオーバーレイの別のプロキシに転送するように動作し、この別のプロキシは、同一の非オーバーレイ・プロトコルを利用するノードにこれらのパケットを転送する。したがって、従来のシステムでは、プロキシは、同一の非オーバーレイ・プロトコルを利用するノードが、オーバーレイ・ネットワークを介して通信するように動作する。残念ながら、現在のシステムでは、異なる非オーバーレイ・プロトコルを利用するノードやデバイス間の通信は不可能である。
【０００８】
したがって、デバイスやサービスによって使用されている非オーバーレイ・プロトコルにかかわらず、ピアツーピア・オーバーレイ・ネットワークでデバイスおよびサービスをプロキシ化するように動作する簡単にして費用効果の高い機構を有することが望ましい。
【発明の概要】
【０００９】
デバイスおよびサービスによって使用されている非オーバーレイ・プロトコルに関係なく、ピアツーピア・オーバーレイ・ネットワークで該デバイスおよびサービスをプロキシ化するように動作する方法および装置を備える、プロキシ・システムが提供される。
【００１０】
１つの態様では、ピアツーピア・オーバーレイ・ネットワークでプロキシを操作する方法が提供される。その方法は、デバイスおよびサービスの少なくとも一方と関連したメタデータを取得することと、メタデータの検索可能なインデックスを生成することと、オーバーレイ・ネットワークの検索可能なインデックスを分散インデックスと集中インデックスの少なくとも一方として発行することとを備える。
【００１１】
１つの態様では、ピアツーピア・オーバーレイ・ネットワークでプロキシ化する装置が提供される。この装置は、デバイスおよびサービスの少なくとも一方と関連したメタデータを取得する手段と、メタデータの検索可能なインデックスを生成する手段と、オーバーレイ・ネットワークの検索可能なインデックスを分散インデックスと集中インデックスの少なくとも一方として発行する手段とを備える。
【００１２】
１つの態様では、ピアツーピア・オーバーレイ・ネットワークでプロキシ化する装置が提供される。その装置は、デバイスおよびサービスの少なくとも一方と関連したメタデータを取得し、かつメタデータの検索可能なインデックスを生成するように構成されているプロセッサと、オーバーレイ・ネットワークの検索可能なインデックスを分散インデックスと集中インデックスの少なくとも一方として発行するように構成されているトランシーバとを備える。
【００１３】
１つの態様では、ピアツーピア・オーバーレイ・ネットワークでプロキシ化するコンピュータ・プログラム製品が提供される。このコンピュータプログラム製品は、デバイスおよびサービスの少なくとも一方と関連したメタデータを取得し、メタデータの検索可能なインデックスを生成し、オーバーレイ・ネットワークの検索可能なインデックスを分散インデックスと集中インデックスの少なくとも一方として発行するように実行可能なコードを具現化するコンピュータ読み取り可能な媒体を備える。
【００１４】
１つの態様では、ピアツーピア・オーバーレイ・ネットワークでプロキシを操作する方法が提供される。この方法は、データとサービスの少なくとも一方をオーバーレイ・ネットワークから受信するというリクエストを、非オーバーレイ・プロトコルを使用してデバイスとサービスの少なくとも一方から受信することと、そのリクエストに基づいてオーバーレイ・ネットワークでメタデータのインデックスを検索することであって、そのインデックスが分散インデックスと集中インデックスの少なくとも一方であることと、前記インデックスに基づいてデータとサービスの少なくとも一方と関連したノードを識別することとを備える。前記方法はまた、ノードとの直接接続を確立することと、その直接接続を使用してデータとサービスの少なくとも一方を取得することとを備える。
【００１５】
１つの態様では、ピアツーピア・オーバーレイ・ネットワークでデバイスをプロキシ化する装置が提供される。この装置は、データとサービスの少なくとも一方をオーバーレイ・ネットワークから受信するというリクエストを、非オーバーレイ・プロトコルを使用してデバイスとサービスの少なくとも一方から受信する手段と、前記リクエストに基づいてオーバーレイ・ネットワークでメタデータのインデックスを検索する手段であって、そのインデックスが分散インデックスと集中インデックスの少なくとも一方である手段と、前記インデックスに基づいてデータとサービスの少なくとも一方と関連したノードを識別する手段とを備える。前記装置はまた、ノードとの直接接続を確立する手段と、その直接接続を使用してデータとサービスの少なくとも一方を取得する手段とを備える。
【００１６】
１つの態様では、ピアツーピア・オーバーレイ・ネットワークでデバイスをプロキシ化する装置が提供される。この装置は、オーバーレイ・ネットワークからデータとサービスの少なくとも一方を受信するというリクエストを、非オーバーレイ・プロトコルを使用してデバイスとサービスの少なくとも一方から受信するように構成されているトランシーバを備える。前記装置はまた、前記リクエストに基づいて、オーバーレイ・ネットワークでメタデータのインデックスを検索することであって、そのインデックスが分散インデックスと集中インデックスの少なくとも一方であることと、前記インデックスに基づいてデータとサービスの少なくとも一方と関連したノードを識別することと、ノードとの直接接続を確立することと、その直接接続を使用してデータとサービスの少なくとも一方を取得することとを実行するように構成されているプロセッサを備える。
【００１７】
１つの態様では、ピアツーピア・オーバーレイ・ネットワークでデバイスをプロキシ化するコンピュータ・プログラム製品が提供される。このコンピュータプログラム製品は、オーバーレイ・ネットワークからデータとサービスの少なくとも一方を受信するというリクエストを、非オーバーレイプロトコルを使用してデバイスとサービスの少なくとも一方から受信することと、そのリクエストに基づいてオーバーレイ・ネットワークでメタデータのインデックスを検索することであって、そのインデックスが分散インデックスと集中インデックスの少なくとも一方であることと、前記分散インデックスに基づいてデータとサービスの少なくとも一方と関連したノードを識別することと、ノードとの直接接続を確立することと、その直接接続を使用してデータとサービスの少なくとも一方を取得することとを実行可能なコードを具現化するコンピュータ読み取り可能な媒体を備える。
【００１８】
他の態様は、以下に記されている図面の簡単な説明、詳細な説明および請求項を検討することによって明らかになる。
【００１９】
ここに説明されている上記態様は、添付の図面と関連してなされている以下の説明を参照してより明らかになる。
【図面の簡単な説明】
【００２０】
【図１】図１は、プロキシ・システムの複数の態様を図示するネットワークを示している。
【図２】図２は、プロキシ・システムの複数の態様で使用するプロキシを示している。
【図３】図３は、プロキシ・システムの複数の態様でプロキシを操作する例示的方法を示している。
【図４】図４は、プロキシ・システムの複数の態様でプロキシを操作する例示的方法を示している。
【図５】図５は、プロキシ・システムの複数の態様で使用するプロキシを示している。
【図６】図６は、プロキシ・システムの複数の態様で使用するプロキシを示している。
【詳細な説明】
【００２１】
以下の説明は、デバイスおよびサービスによって使用されている非オーバーレイプロトコルに関係なく、ピアツーピア・オーバーレイ・ネットワークでデバイスおよびサービスをプロキシ化するように動作するプロキシ・システムの複数の態様について説明している。
【００２２】
図１は、プロキシ・システムの複数の態様を図示するピアツーピア・オーバーレイ・ネットワーク１００を示している。オーバーレイ・ネットワーク１００は、基本ネットワークの１サブセットのノード１０２がオーバーレイ・ネットワーク１００に参加できるようにするために、インターネット・プロトコル・ネットワークなどの基本ネットワーク１１２のインフラストラクチャを利用する。基本ネットワーク１１２は、ＷＡＮ、ＬＡＮ、無線ネットワーク、または他のタイプのＩＰネットワークなどの多数または複数タイプのネットワークを備えてもよい。１つの態様では、オーバーレイ・ネットワーク１００は分散型ハッシュ・テーブル（ＤＨＴ）・オーバーレイ・ネットワークであるが、プロキシ・システムは他のタイプのオーバーレイ・ネットワークとの併用に適している。
【００２３】
オーバーレイ・ネットワーク１００は、オーバーレイ・プロトコルを使用してオーバーレイ・ネットワーク１００で通信するように動作可能な第１のプロキシ（ＰＩ）を備える。デバイス（Ｄ１）は第１のプロキシ（Ｐ１）に結合され、第１の非オーバーレイ・プロトコルを使用して第１のプロキシと通信する。例えば、デバイスＤ１は、マルチメディア・ミュージック／ビデオ・プレイヤなどのＩＰプロトコルデバイスや、ユニバーサル・プラグ・アンド・プレイ（ＵＰｎＰ）・プロトコルを使用するデバイスであってもよい。オーバーレイ・ネットワーク１００はまた、オーバーレイ・プロトコルを使用してオーバーレイ・ネットワーク１００で通信するように動作可能な第２のプロキシ（Ｐ２）を備える。デバイス（Ｄ２）は第２のプロキシ（Ｐ２）に結合され、第２の非オーバーレイ・プロトコルを使用して第２のプロキシと通信する。例えば、デバイスＤ２は、ブルートゥス（Ｂｌｕｅｔｏｏｔｈ）（登録商標）やユニバーサル・シリアル・バス（ＵＳＢ）・デバイスなどの非ＩＰプロトコル・デバイスであってもよい。オーバーレイ・ネットワーク１００はまた、オーバーレイ・プロトコルを使用してオーバーレイ・ネットワークで通信する第３のデバイス（Ｄ３）を備える。デバイスＤ３は、ルーティング・ノードとしてオーバーレイ・ネットワーク１００でも動作するＩＰデバイスであってもよい。プロキシ・システムはデバイスおよびサービスの両方をプロキシ化するように適用可能である点にも注目すべきである。例えば、プロキシＰ１はまた、オーバーレイ・ネットワーク１００へのサービスをプロキシ化可能である。１つのインプリメンテーションでは、サービスはプロキシＰ１と併用され、後述のプロキシ・システムの種々の態様は、この構成や形状をカバーするためにほとんどまたは全く修正なしで適用されてもよい。
【００２４】
メタデータ・インデックスの生成
プロキシ・システムの動作時に、プロキシＰ１およびＰ２は、それぞれのプロキシ化デバイスと関連したメタデータの検索可能なインデックスを生成する。例えば、プロキシＰ１は、デバイスＤ１に関する情報と、これが提供するサービスとを特徴付けるメタデータ・インデックス１を生成するように動作する。同様に、プロキシＰ２は、デバイスＤ２に関する情報と、これが提供するサービスとを特徴付けるメタデータ・インデックス２を生成するように動作する。したがって、各メタデータ・インデックスは、関連デバイスから使用可能なデータおよび／またはサービスについて記述する。１つの態様では、プロキシＰ１およびＰ２は、メタデータを取得するために適切な非オーバーレイ・プロトコルを使用して、それぞれのデバイス（Ｄ１およびＤ２）との通信を開始する。別の態様では、各デバイスは、これ自体で、適切な非オーバーレイ・プロトコルを使用してそれぞれのプロキシにメタデータを送信または通信するように動作する。例えば、各プロキシ（Ｐ１、Ｐ２）は、メタデータを取得するために、それぞれのプロキシ化デバイスＤ１およびＤ２からの広告をリッスンする。
【００２５】
メタデータインデックスの発行
メタデータインデックスが生成された後、プロキシＰ１およびＰ２は、１０４および１０６として示されるオーバーレイ・ネットワークのメタデータ・インデックスを発行する。例えば、メタデータ・インデックスは分散インデックスとして発行されるため、インデックスの一部は、オーバーレイ・ネットワーク１００の１つまたはそれより多くのノードで維持される。別の態様では、メタデータ・インデックスは、集中インデックスとして、オーバーレイ・ネットワークの特定の場所で発行される。発行されたインデックスによってメタデータは、オーバーレイ・ネットワークの他のノードによって検索される。例えば、デバイスＤ３は、所望のデータがオーバーレイ・ネットワークのどこで発見可能かを判断するために、発行済みインデックスの検索を実行可能である。
【００２６】
インデックスの検索
メタデータ・インデックスが発行された後、オーバーレイ・ネットワーク１００上の任意のノードが、所望のデータやサービスを発見するためにインデックスを検索可能である。例えば、デバイスＤ２は、データ、特定のファイルまたは特定のサービスの検索を実行するというリクエストをプロキシＰ２に送信する。このリクエストは、第２の非オーバーレイ・プロトコルを使用して送信される。プロキシＰ２は、発行済みメタデータ・インデックスの検索を実行して、所望のデータやサービスの場所を発見するために、オーバーレイ・ネットワーク・プロトコルを使用してオーバーレイ・ネットワーク１００で通信する。この例に関して、この検索は、所望のデータやサービスがデバイスＤ１で発見可能であることを示しているとする。プロキシＰ２は、第２の非オーバーレイ・プロトコルを使用して、この情報をデバイスＤ２に通信する。
【００２７】
データを取得するための接続の確立
デバイスＤ２が、オーバーレイ・ネットワーク上のデータやサービスの場所を通知された後、デバイスＤ２は、デバイスＤ１からのデータやサービスの取得をリクエストするために、第２に非オーバーレイ・プロトコルを使用してプロキシＰ２と通信する。プロキシＰ２はオーバーレイ・プロトコルを使用して、デバイスＤ１との通信チャネルを確立するというリクエスト１０８を発行する。このリクエストは、プロキシＰ１に達するまで、オーバーレイ・ネットワーク（つまり、ホップツーホップ）でルーティングされる。プロキシＰ１とＰ２間の何らかの交渉後、基本ネットワーク（本例では、ＩＰネットワーク）のサービスが使用されて、これら２つのプロキシ間の直接の通信チャネル１１０を確立する。
【００２８】
データの変換
通信チャネル１１０が確立されると、プロキシＰ１およびＰ２は、適切な非オーバーレイ・プロトコルを使用してデバイスＤ１およびＤ２と通信する。選択されたデータ・ファイルやサービスへのリクエストはデバイスＤ１によって処理されて、このデータやサービスは、第１および第２の非オーバーレイ・プロトコルとオーバーレイ・プロトコルとの間で変換するために、通信チャネル１１０と、プロキシＰ１およびＰ２のサービスとを利用してデバイスＤ２に提供される。変換の態様は、データ・フォーマットの変換と、ＩＰアドレスの変更と、サービスおよびデータ識別子の一意性を保証するためのステップの実行とを含むが、これらに制限されない。
【００２９】
別の態様では、デバイスＤ３は、オーバーレイ・プロトコルを使用して、オーバーレイ・ネットワーク１００で動作する。デバイスＤ３は、オーバーレイ・ネットワーク１００へプロキシ化されているデバイスによって提供されたデータやサービスの場所を発見するために、プロキシＰ１およびＰ２と同様にインデックスを検索する。デバイスＤ３は次いで、オーバーレイ・ネットワークで適切なプロキシにルーティングされたデータやサービスへのリクエストを発行可能である。直接の通信チャネルは次いで、所望のデータやサービスのアクセスを容易にするために、デバイスＤ３と適切なプロキシ間で確立されてもよい。
【００３０】
したがって、プロキシ・システムは、デバイスによって使用されている非オーバーレイ・プロトコルに関係なく、ピアツーピア・オーバーレイ・ネットワーク上の異なるデバイスをプロキシ化する効率的な機構を提供するように動作する。
【００３１】
図２は、プロキシ・システムの複数の態様で使用するプロキシ２００を示している。例えば、プロキシ２００は、図１に示されているプロキシＰ１またはプロキシＰ２としての使用に適している。プロキシ２００は、プロセッサ２０２と、メモリ２０４と、トランシーバ２０６とを備えており、これらはすべてデータ・バス２０８に結合されている。プロキシ２００は１つのインプリメンテーションにすぎず、他のインプリメンテーションも可能である点に注目すべきである。
【００３２】
トランシーバ２０６は、ハードウェアおよび／または、プロキシ２００が、オーバーレイ・プロトコルを利用してピアツーピア・オーバーレイ・ネットワークの複数のノードとデータや他の情報を通信できるように動作するソフトウェアを実行するハードウェアを備える。例えば、トランシーバ２０６は、通信リンク２１０を使用してオーバーレイ・ネットワークのノードと通信する。トランシーバ２０６はまた、通信リンク２１０を使用して、オーバーレイ・ネットワークの別のノードやデバイスとの直接の通信リンクを確立するように動作可能である。例えば、直接の通信リンクは、根底にあるＩＰネットワーク・インフラストラクチャによってサポートされているＴＣＰやＵＤＰ接続であってもよい。
【００３３】
トランシーバ２０６はまた、プロキシ２００が、非オーバーレイ・プロトコルを利用して１つ以上のデバイスと通信するように動作する。例えば、トランシーバ２０６は、非オーバーレイ・プロトコルおよび通信リンク２１２を使用してＩＰまたは非ＩＰと通信する。１つの態様では、デバイスは、マルチメディア・デバイス、ブルートゥス（Ｂｌｕｅｔｈｏｏｔｈ）（登録商標）デバイス、ＵＳＢデバイスおよび他のタイプのＩＰまたは非ＩＰデバイスを備えるが、これらに制限されない。
【００３４】
メモリ・モジュール２０４は、１つ以上のデバイスと関連したインデックス化メタデータ２１４と、関連データまたはサービスとを記憶するように動作可能な適切な記憶デバイスを備える。例えば、メタデータは、デバイス記述子、データ記述子、タイトル、作者、期間、データ・レート、ジャンル、帯域幅または他のタイプの情報を備えているが、これらに制限されない。
【００３５】
メモリ２０４はまた、ここに説明されているプロキシ・システムの機能を実行するためにプロセッサ２０２によって実行可能な命令やコードを具現化する１つまたはそれより多くのモジュールを備えるプロキシ・モジュール２１６を記憶するように動作可能である。
【００３６】
１つまたはそれより多くの態様において、プロセッサ２０２は、ＣＰＵ、プロセッサ、ゲート・アレイ、ハードウェア論理、メモリ要素、および／またはソフトウェアを実行するハードウェアのうちの少なくとも１つを備える。１つの態様では、プロセッサ２０２は、プロキシ２００をコントロールして、上記機能を実行することによってオーバーレイ・ネットワークの１つまたはそれより多くのデバイスをプロキシ化するために、プロキシ・モジュール２１６のコードを実行するように動作する。プロキシ２００の動作に関するより詳細な説明はこの文書の別のセクションでなされる。
【００３７】
１つの態様では、プロキシ・システムは、マシーン読み取り可能な媒体に記憶または具現化されている１つまたはそれより多くのプログラム命令（「命令」）や複数セットの「コード」を有するコンピュータ・プログラム製品を備える。コードが少なくとも１つのプロセッサ、例えばプロセッサ２０２によって実行される場合、この実行によってプロキシ２００は、ここに説明されているプロキシ・システムの機能を提供する。例えば、マシーン読み取り可能な媒体は、フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭ、メモリカード、フラッシュ・メモリ・デバイス、ＲＡＭ、ＲＯＭ、光ディスク、あるいは、プロキシ２００にインタフェース接続する他のタイプのメモリ・デバイスまたはマシーン読み取り可能な媒体を備える。複数セットのコードは、実行されると、ここに説明されているように、プロキシ・システムの複数の態様を提供するように動作する。
【００３８】
図３は、プロキシ・システムの複数の態様を提供するようにプロキシを操作する例示的方法３００を示している。明確にするために、方法３００は、図２に示されているプロキシ２００を参照して後述される。１つの態様では、プロセッサ２０２は、プロキシ２００をコントロールして、後述されている機能を実行するために、プロキシ・モジュール２１６の１つまたはそれより多くのセットのコードを実行する。
【００３９】
ブロック３０２において、メタデータがデバイスから取得されて、オーバーレイ・ネットワークでプロキシ化される。例えば、プロセッサ２０２は、デバイスによってサポートされている非オーバーレイ・プロトコルを使用して、トランシーバ２０６および通信リンク２１２を介してデバイスと通信する。デバイスは、自身が提供またはサポートする複数タイプのデータまたはサービスに関する情報を提供する。１つの態様では、プロセッサ２０２は、デバイスによってサポートされている非オーバーレイ・プロトコルを使用して、デバイスからメタデータ情報をリクエストするように動作する。別の態様では、デバイスは、特別なリクエストをする必要なく、プロキシ２００にメタデータ情報を広告するか、他の方法で送信する。
【００４０】
ブロック３０４において、メタデータはインデックス化される。インデックス化は、高速かつ正確な情報検索を容易にする方法でデータが収集、解析および記憶されるプロセスである。一態様では、プロセッサ２０２は、メタデータ２１４の検索可能なインデックスを生成し、これをメモリ２０４に記憶する。
【００４１】
ブロック３０６において、メタデータの検索可能なインデックスはオーバーレイ・ネットワークで発行される。例えば、プロセッサ２０２は、トランシーバ２０６および通信リンク２１０を使用して、オーバーレイ・ネットワークでメタデータ２１４の検索可能なインデックスを発行する。１つのインプリメンテーションにおいて、メタデータのインデックスは分散インデックスとして発行されるため、オーバーレイ・ネットワークの種々のノードはインデックスの１つまたはそれより多くの部分を維持し、またオーバーレイ・ネットワークの全ノードはインデックスを容易に検索可能である。別のインプリメンテーションにおいて、メタデータのインデックスは集中インデックスとして発行されるため、オーバーレイネットワークの全ノードは、オーバーレイ・ネットワークの特定の位置のインデックスを容易に検索可能である。
【００４２】
ブロック３０８において、データまたはサービスを取得するというリクエストが受信される。例えば、オーバーレイ・ネットワークのノードは分散メタデータ・インデックスを検索しており、プロキシ化デバイスは、ノードが受信を望むデータを有していると判断している。ノードは次いで、データやサービスを取得するというリクエストをオーバーレイで送信する。このリクエストは、デバイスをサポートするプロキシに、オーバーレイ・ネットワークでルーティングされる。この場合、リクエストは、通信リンク２１０を使用してプロキシ２００によって受信される。
【００４３】
ブロック３１０において、データまたはサービスに対するリクエストは、デバイスによってサポートされている非オーバーレイ・プロトコルを使用して、プロキシ化デバイスに譲渡される。例えば、リクエストは、適切な非オーバーレイ・プロトコルを使用して、リンク２１２でプロキシ化デバイスに送信される。
【００４４】
ブロック３１２において、デバイスは、リクエストされたデータやサービスを提供することに同意し、プロキシに、リクエスト元のノードとの直接の通信リンクを確立するようにリクエストする。例えば、直接接続はプロキシ２００と、オーバーレイ・ネットワークのノードまたはオーバーレイ・ネットワークの他のプロキシとの間に確立される。一態様では、基本ネットワーク・インフラストラクチャは、直接接続を確立するために使用される。
【００４５】
ブロック３１４において、リクエストされたデータまたはサービスは、デバイスによってサポートされている非オーバーレイ・プロトコルを使用してデバイスからプロキシに送信される。プロキシは次いで、オーバーレイ・ネットワークで送信するためにデータを変換し、このデータやサービスを、直接の通信リンクを使用して、リクエスト元のノードに直接送信する。例えば、プロキシ２００は、通信リンク２１２および適切な非オーバーレイ・ネットワークを使用して、データをプロキシ化デバイスから受信する。プロキシ２００は次いで、通信リンク２１０を使用して、データを変換し、オーバーレイ・ネットワークで送信する。例えば、プロセッサ２０２はデータおよびサービスの変換を実行し、適切なデータ・フォーマットと、ＩＰアドレスの変更と、サービスおよびデータ識別子の一意性とを提供する。
【００４６】
したがって、方法３００は、プロキシ・システムの複数の態様を提供するようにあるプロキシにおいて動作可能である。方法３００は１つのインプリメンテーションにすぎず、方法３００の動作は、種々の態様の範囲内で並べ替えまたは修正されてもよい点に注目すべきである。したがって、他のインプリメンテーションが可能である。
【００４７】
図４は、プロキシ・システムの複数の態様で使用するプロキシを操作する例示的方法４００を示している。明確にするために、方法４００は、図２に示されているプロキシ２００を参照して後述される。１つの態様では、プロセッサ２０２は、プロキシ２００をコントロールして後述の機能を実行するために、プロキシ・モジュール２１６の１セット以上のコードを実行する。
【００４８】
ブロック４０２において、オーバーレイ・ネットワークのデータやサービスを検索するという、データまたはサービスからのリクエストは、非オーバーレイ・プロトコルを使用して受信される。例えば、デバイスＤ２は、第２の非オーバーレイ・プロトコルを使用して、このリクエストをプロキシＰ２に送信する。このリクエストは、通信リンク２１２でトランシーバ２０６によって受信され、プロセッサ２０２に渡される。
【００４９】
ブロック４０４において、このリクエストに応答して、オーバーレイ・ネットワークのインデックスが、オーバーレイ・プロトコルを使用して検索される。例えば、プロキシＰ２は、オーバーレイ・プロトコルを使用してオーバーレイ・ネットワーク上でインデックスを検索する。１つの態様では、プロセッサ２０２はトランシーバ２０６をコントロールして、通信リンク２１０を使用してオーバーレイ・ネットワークのインデックスを検索する。１つの態様では、インデックスは分散インデックスと集中インデックスの少なくとも一方である。
【００５０】
ブロック４０６において、所望のデータまたはサービスがオーバーレイ・ネットワークで発見可能なノードが識別される。一態様では、プロセッサ２０２はこの検索から、デバイスＤ１がリクエストされたデータまたはサービスを提供可能であるか否かを判断する。デバイスＤ１はプロキシＰ１を介してアクセス可能である。別の態様では、リクエストされたデータまたはサービスはＤ１ではなくＰ１に出現する。つまり、Ｐ１は、データまたはサービスがＤ１にあるという事実を隠してしまう恐れがある。
【００５１】
ブロック４０８において、所望のデータやサービスのオーバーレイ・リクエストはプロキシＰ２から送信されて、オーバーレイ・ネットワークを介してプロキシＰ１にルーティングされる。１つの態様では、プロセッサ２０２は、トランシーバ２０６と、オーバーレイ・プロトコルを利用する通信リンク２１０とを介してオーバーレイ・リクエストを送信する。
【００５２】
ブロック４１０において、このリクエストに応答して、直接の通信リンクが、プロキシＰ２とプロキシＰ１間で確立される。例えば、プロセッサ２０２およびトランシーバ２０６は通信リンク２１０およびオーバーレイ・プロトコルを使用して、基本ネットワーク・インフラストラクチャのサービスを使用する直接接続を行う。
【００５３】
ブロック４１２において、所望のデータやサービスがプロキシＰ２によって取得され、デバイスＤ２に渡される。例えば、データは、トランシーバ２０６によって直接の通信リンク２１０で受信され、プロセッサ２０２に渡される。プロセッサ２０２はデータまたはサービスを変換して、これらを、トランシーバ２０６と、非オーバーレイ・プロトコルを使用する通信リンク２１２とを介してデバイスＤ２に送信する。
【００５４】
したがって、方法４００は、プロキシ・システムの複数の態様を提供するためにあるプロキシで動作可能である。方法４００は１つのインプリメンテーションにすぎず、方法４００の動作は、種々の態様の範囲内で再編成または他の修正が可能である点に注目すべきである。したがって、他のインプリメンテーションが可能である。
【００５５】
図５は、プロキシ・システムの複数の態様で使用する例示的プロキシ５００を示している。例えば、プロキシ５００は、図２に示されているプロキシ２００として使用するのに適している。１つの態様では、プロキシ５００は、ここに説明されているようなピアツーピア・オーバーレイ・ネットワーク・プロキシシステムの複数の態様を提供するように構成されている１つまたはそれより多くのモジュールを備える少なくとも１つの集積回路によって具現化される。例えば、１つの態様では、各モジュールは、ハードウェアおよび／またはソフトウェアを実行するハードウェアを備える。
【００５６】
プロキシ５００は、デバイスまたはサービスと関連したメタデータを取得する手段（５０２）を備える第１のモジュールを備えており、これは、１つの態様では、プロセッサ２０２を備える。プロキシ５００はまた、メタデータの検索可能なインデックスを生成する手段（５０４）を備える第２のモジュールを備えており、これは、１つの態様では、プロセッサ２０２を備える。プロキシ５００はまた、オーバーレイ・ネットワークの検索可能なインデックスを分散インデックスと集中インデックスの少なくとも１つとして発行する手段（５０６）を備える第３のモジュールを備えており、これは、１つの態様では、トランシーバ２０６を備える。
【００５７】
図６は、プロキシ・システムの複数の態様で使用する例示的プロキシ６００を示している。例えば、プロキシ６００は、図２に示されているプロキシ２００として使用するのに適している。１つの態様では、プロキシ６００は、ここに説明されているようなピアツーピア・オーバーレイ・ネットワーク・プロキシの複数の態様を提供するように構成されている１つまたはそれより多くのモジュールを備える少なくとも１つの集積回路によってインプリメントされる。例えば、１つの態様では、各モジュールは、ハードウェアおよび／またはソフトウェアを実行するハードウェアを備える。
【００５８】
プロキシ６００は、オーバーレイ・ネットワークからデータとサービスの少なくとも一方を受信するというリクエストを、非オーバーレイ・プロトコルを使用してデバイスとサービスの少なくとも一方から受信する手段（６０２）を備える第１のモジュールを備えており、これは、１つの態様ではトランシーバ２０６を備える。プロキシ６００はまた、リクエストに基づいてオーバーレイ・ネットワークのメタデータのインデックスを検索する手段（６０４）であって、インデックスが分散インデックスと集中インデックスの少なくとも一方である手段を備える第２のモジュールを備えており、これは、１つの態様ではプロセッサ２０２を備える。プロキシ６００はまた、インデックスに基づいてデータとサービスの少なくとも一方と関連したノードを識別する手段（６０６）を備える第３のモジュールを備えており、これは、１つの態様ではプロセッサ２０２を備える。プロキシ６００はまた、ノードとの直接接続を確立する手段（６０８）を備える第４のモジュールを備えており、これは、１つの態様ではプロセッサ２０２を備える。プロキシ６００はまた、直接接続を使用してデータとサービスの少なくとも一方を取得する手段（６１０）を備える第５のモジュールを備えており、これは、１つの態様ではプロセッサ２０２を備える。
【００５９】
ここに開示されている複数の態様と関連して説明されている種々の例示的論理、論理ブロック、モジュールおよび回路が、汎用プロセッサ、ディジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）または他のプログラマブル論理デバイス、離散ゲートまたはトランジスタ論理、離散ハードウェア・コンポーネント、あるいはここに説明されている機能を実行するように設計されているこれらの組み合わせによってインプリメントまたは実行されてもよい。汎用プロセッサはマイクロプロセッサであってもよいが、代替例では、プロセッサは従来のプロセッサ、コントローラ、マイクロコントローラまたは状態マシンであってもよい。プロセッサはまた、コンピューティング・デバイスの組み合わせ、例えば、ＤＳＰおよびマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、ＤＳＰコアと関連した１つまたはそれより多くのマイクロプロセッサ、あるいは他のこのような構成としてインプリメントされてもよい。
【００６０】
ここに開示されている複数の態様と関連して説明されている方法やアルゴリズムのステップは、ハードウェアで直接、プロセッサによって実行されるソフトウェア・モジュールで、あるいはこれら２つの組み合わせで具現化されてもよい。ソフトウェア・モジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭ、あるいは当分野で既知の他の形態の記憶媒体に常駐可能である。例示的記憶媒体は、プロセッサが記憶媒体から情報を読み取り、かつこれに情報を書き込めるように、プロセッサに結合されている。代替例では、記憶媒体はプロセッサに一体的であってもよい。プロセッサおよび記憶媒体はＡＳＩＣに常駐可能である。ＡＳＩＣは無線通信デバイスに常駐可能である。代替例では、プロセッサおよび記憶媒体は無線通信デバイスの離散コンポーネントとして常駐可能である。
【００６１】
開示されている態様に関する説明は、当業者が本発明を実施または使用できるようにするために提供される。これらの態様の種々の修正は当業者には容易に明らかになり、ここに定義されている一般原理は、本発明の精神または範囲から逸脱することなく、他の態様、例えばインスタント・メッセージング・サービスや汎用無線データ通信用途に適用可能である。したがって、本発明は、ここに示されている態様に制限されることは意図されておらず、ここに開示されている原理および新規の特徴にしたがった広い範囲にしたがうものである。用語「例示的」は、「１つの実施例、事例または図示として作用する」ことを意味するためにのみにここでは使用されている。「例示的」としてここで説明されている態様は必ずしも、他の態様よりも好ましい、あるいは好都合であると解釈されるべきではない。
【００６２】
したがって、プロキシ・システムの複数の態様が図示および説明されてきたが、それらの精神または基本的特徴から逸脱することなく、これらの態様に種々の変更がなされてもよい点が認識されるであろう。したがって、本明細書の開示および説明は、以下の請求項に提示されている本発明の範囲を例証するためのものであり、限定する意図はない。
【図１】
2011524597.tif 000003
【図２】
2011524597.tif 000004
【図３】
2011524597.tif 000005
【図４】
2011524597.tif 000006
【図５】
2011524597.tif 000007
【図６】
2011524597.tif 000008
【国際調査報告】
2011524597.tif 000009
2011524597.tif 000010
2011524597.tif 000011