JP4363520B2 - ピアツーピア・ネットワークにおけるリソース検索方法 - Google Patents

ピアツーピア・ネットワークにおけるリソース検索方法 Download PDF

Info

Publication number
JP4363520B2
JP4363520B2 JP2003577499A JP2003577499A JP4363520B2 JP 4363520 B2 JP4363520 B2 JP 4363520B2 JP 2003577499 A JP2003577499 A JP 2003577499A JP 2003577499 A JP2003577499 A JP 2003577499A JP 4363520 B2 JP4363520 B2 JP 4363520B2
Authority
JP
Japan
Prior art keywords
client
signal
resources
resource
searching
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003577499A
Other languages
English (en)
Other versions
JP2005521143A (ja
Inventor
グッドマン、ブライアン
ルーニィ、ジョン、ウオーレン
サブラマニアン、ラメッシュ
スウィーニィ、ウィリアム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2005521143A publication Critical patent/JP2005521143A/ja
Application granted granted Critical
Publication of JP4363520B2 publication Critical patent/JP4363520B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1068Discovery involving direct consultation or announcement among potential requesting and potential source peers

Description

本発明はピアツーピア・ネットワークの分野に関する。
現在に至るまで、地球規模の大組織または他の大組織内の全組織レベルのデータとコンテンツの配付は中央化されたコンテンツ・リポジトリを用いてそのようなデータとコンテンツを複製して配付することにより行なっていた。すなわち、データは地球規模で分散しているにもかかわらず、特定の地域内に位置するクライアントにコンテンツを供給する任に当たる中央サーバを用いていたから地理的領域のある場所内でしか当該データを利用することができなかった。
ピアツーピア(P2P)コンピューティングの登場によって、この方式が変化した。すなわち、中央化されたサーバにコンテンツを格納しそこから供給する方式からクライアント側にコンテンツの少なくとも一部を格納しそこから供給する方式に力点が移動した。P2Pモデルでは、コンテンツ提供者はローカルのクライアントにおいてコンテンツを管理し、コンテンツにアクセスするすべての者とコンテンツを共用する。このモデルでは、コンテンツの作成、蓄積、およびセキュリティについてクライアント側に重点が置かれる。
このP2P方式にはいくつかの利点かある。コンテンツに対する責任をクライアント側に移動させることにより、様々なリソースに対するサーバ側の管理を大幅に低減させることができる。サーバのマネージャはコンテンツの保全性に責任を負う必要がない。コンテンツの中央化された配付によって生じる問題点を無くすことができる。
ピアツーピア・リソース共用システムには少なくとも3つのアーキテクチャ上の方式がある。すなわち、中央化された制御を伴うP2P、中央化された制御を伴わない純粋なP2P、そして前2者の側面の一部を組み込んだハイブリッド方式である。
中央化されたコントローラを備えたP2Pの一例としてNapsterと呼ばれているシステムを挙げることができる。Napsterでは、接続されているクライアントのリストを保守するために中央サーバを用いている。すべてのクライアントは中央サーバに接続している。中央サーバは共用リソースを求めてクライアントのディスクを走査するとともに、共用リソースのディレクトリとインデックスを保持している。リソースを検索するクライアントは中央サーバが保持しているディレクトリとインデックスについてその検索を実行する。クライアントは自分が求めているリソースが存在する場所が分かったら(すなわち自分が検索しているファイルを保持しているクライアントが分かったら)、その適切なクライアントに直接に接続して当該リソースを転送する。
Napsterはウェブに基づいていないから、ブラウザで実行するものではない。それは個別のクライアントで実行するスタンドアーン型のアプリケーションであり、データ通信とデータ転送用にTCP/IPを使用している。Napsterは情報の収集者と規制者として機能する中央サーバに依存しているから、クライアントは匿名性を保証されない。また、中央サーバが故障した場合、Napsterシステムは脆弱である。
中央化された制御を備えない純粋なP2Pの好例としてGnutellaと呼ばれているシステムを挙げることができる。GnutellaはGnutellaプロトコルを使用するようなP2Pシステムを特定するために使用する一般用語である。そのプロトコルが実際に何であるかという単一の解釈はない。しかし、Gnutellaに基づいたシステムで明示されている共通の構成要素がいくつか存在する。それらのうちで主要なものはGnutellaには中央サーバがいらないという点である。このシステムでは、各クライアントはシステム中の既知のクライアントをピング(ping)することにより他のクライアントを継続的に追跡している。分散検索はあるクライアントから増大し続ける環におけるすぐ隣のクライアントへ答がみつかるまで、あるいはその検索がタイムアウトになるまで伝搬される。検索応答は同様にして検索者に返送される。
Napsterと同様に、Gnutellaもウェブに基づいていないから、クライアント環境でアプリケーションとして実行する。Gnutellaは真に匿名のリソース共用システムである。検索を容易にするためのサーバを使用していないから、クライアントは臨時のピア情報(peer information)を確立する必要がある。検索者は応答者のアイデンティティを知らず、応答者は検索者のアイデンティティを知らない。したがって、認証(authentication)または許可(authorization)のための検査はなく、信頼は暗に仮定されているにすぎない。
Gnutellaに基づいたシステムの深刻な問題点は信頼性がないことによる評価である。どのクライアントが接続されておりどのクライアントがそうでないのかを追跡する中央サーバがないから、クライアントは隣接するクライアントが活動中で接続されているのか否かを知る術がない。これでは、信頼性のあるパフォーマンスはとても得られない。
P2Pシステムを実現する第3の方法はWeb Mkと呼ばれているものである。これは実際の製品というよりは実現方法であり、「分散コンテンツ管理およびピアツーピア・コンテンツ・ネットワークの出現」(2001年1月)(The Emergence of Distributed Content Management and Peer-to-Peer Content Networks, January 2001)なる名称のP2Pコンピューティングの登場に関するガートナーの報告書(Gartner Report)に記載されている。これはウェブ・サーバとウェブ・ブラウザを使用するウェブに基づいた方式である。これらのウェブ・ブラウザはユーザによって構成可能であるとともに、リソース共用機能を組み込んでいるものが望ましい。上記ウェブ・サーバは複数のインデックスを保持しており、様々な種類のデータにアクセスすることができる。この種のシステムはソフトウェア・エージェントすなわちロボット(Bot)を用いてサービス(たとえば複数のリソースの抽出と統合、チャト機能、変更の通知など)を提供する。検索要求はサーバに格納し、リアルタイムまたはバッチ・プロセスで実行しうるように設定することができる。検索結果は適切なクライアントに通知する。
ウーヤン・キムら「インターネットにおけるピアツーピア・コンピューティング用の安全なプラットフォーム」(システム科学に関する第35回年次ハワイ国際会議の会報、第3948〜3957頁、XPP00225 2002年10月18日、ロス アラミトス、カリフォルニア州、アメリカ合衆国、アイトリプルイー・コンピュータ科学、アメリカ合衆国 ISBN:0−7695−1435−9)(Wooyoung Kim et al:"a secure platform for peer-to-peer computing in the Internet" Proceeding of the 35th annual Hawaii International conference on system science, pages 3948-3957, XP00225 1810 2002, Los Alamitos, CA, USA, IEEE Compt. Soc, USA ISBN:0-7695-1435-9)には、サービスが広告をするeサービス・インフラストラクチャが開示されている。発見し、動的かつ安全な方法で相互運用する。
アドバンスト・リアリティ「アドバンスト・リアリティはすべてのアプリケーションを協働的にするピアツーピア協働プラットフォームを発表する」(アドバンスト・リアリティ出版発行、2001年12月10日、XP002251811)(Advanced reality:"Advanced Reality Introduces Peer-to-peer collaboration platform that makes any application collaborative", Advanced Reality Press Release, 10 December 2001, XP002251811)には、企業とソフトウェア開発者が既存のアプリケーションおよび新たなアプリケーションを安全なリアルタイム協働機能で強化しうるようにするプレゼンスARが開示されている。
「分散コンテンツ管理およびピアツーピア・コンテンツ・ネットワークの出現」(2001年1月、ガートナーの報告書)(The Emergence of Distributed Content Management and Peer-to-Peer Content Networks, January 2001, Gartner Report) ウーヤン・キムら「インターネットにおけるピアツーピア・コンピューティング用の安全なプラットフォーム」(システム科学に関する第35回年次ハワイ国際会議の会報、第3948〜3957頁、XPP00225 2002年10月18日、ロス アラミトス、カリフォルニア州、アメリカ合衆国、アイトリプルイー・コンピュータ科学、アメリカ合衆国 ISBN:0−7695−1435−9)(Wooyoung Kim et al:"a secure platform for peer-to-peer computing in the Internet" Proceeding of the 35th annual Hawaii International conference on system science, pages 3948-3957, XP002251810 2002, Los Alamitos, CA, USA, IEEE Compt. Soc, USA ISBN:0-7695-1435-9) アドバンスト・リアリティ「アドバンスト・リアリティはすべてのアプリケーションを協働的にするピアツーピア協働プラットフォームを導入する」(アドバンスト・リアリティ出版発行、2001年12月10日、xp002251811)(Advanced reality:"Advanced Reality Introduces Peer-to-peer collaboration platform that makes any application collaborative", Advanced Reality Press Release, 10 December 2001, xp002251811)
現在のP2Pシステムの弱点を解決しながら、P2Pネットワークの利点に適合しうるシステムが求められている。また、中央サーバの効率性を犠牲にすることなく、必要な中央サーバが少なくて済むという純粋なP2Pネットワークの利点を利用したP2Pネットワークが求められている。さらに、中央サーバを必要とすることなく、クライアントのリソースに安全にアクセスするとともにそれを安全に制御するP2Pネットワークが求められている。
第1の側面において、本発明はピアツーピア・ネットワークにおいて、第1のクライアントが開始したリソース検索を安全に実行する方法を提供する。前記リソース検索は前記第1のクライアントを表わす証明書信号を有する検索要求に含まれている。
前記方法は、
前記検索要求を前記第1のクライアントから第2のクライアントへ転送するステップであって、前記第2のクライアントは複数の第1のリソースを有し、前記複数の第1のリソースの各々は少なくとも1つの対応するアクセス属性を備えている、ステップと、
前記証明書信号と前記複数の第1のリソースの各々の前記少なくとも1つのアクセス属性とを比較することにより、前記第2のクライアントにおいて、前記複数の第1のリソースを選択的に検索するステップと、
前記検索要求を前記第2のクライアントから第3のクライアントへ転送するステップであって、前記第3のクライアントは複数の第2のリソースを有し、前記複数の第2のリソースの各々は少なくとも1つの対応するアクセス属性を備えている、ステップと、
前記証明書信号と前記複数の第2のリソースの各々の前記少なくとも1つのアクセス属性とを比較することにより、前記第3のクライアントにおいて、前記複数の第2のリソースを選択的に検索するステップと
を備えている。
前記方法は、さらに、
前記第3のクライアントにおいて、前記複数の第2のリソースを選択的に検索する前記ステップによってリソース一致を確認するステップと、
前記リソース一致を表わす一致信号を前記第3のクライアントから前記第1のクライアントへ転送するステップと
を備えているのが望ましい。
望ましくは、
前記証明書信号は前記第1のクライアントを表わすID信号を含み、
前記第1のリソースの前記アクセス属性および前記第2のリソースの前記アクセス属性は複数のクライアントのうちの少なくとも1つに付随する許可信号を含み、前記複数のクライアントは前記第1のクライアントを含み、
さらに、
前記第2の複数のリソースを選択的に検索する前記ステップでは、前記ID信号が前記許可信号と実質的に一致する場合、前記第2の複数のリソースのうちの1つを検索し、
前記第3の複数のリソースを選択的に検索する前記ステップでは、前記ID信号が前記許可信号と実質的に一致する場合、前記第3の複数のリソースのうちの1つを検索する。
望ましくは、
前記証明書信号は前記第1のクライアントを表わすID信号を含み、
前記第1のリソースの前記アクセス属性および前記第2のリソースの前記アクセス属性は複数のクライアントのうちの少なくとも1つに付随する許可信号を含み、前記複数のクライアントは前記第1のクライアントを含み、
前記第2の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第2のクライアントから前記第1のクライアント、前記第2のクライアント、および前記第3のクライアントの外部にある認証プロセスへ前記ID信号を転送するステップと、
これに応答して、前記認証プロセスから前記第1のクライアントに付随する認証信号を受信するステップと、
前記認証信号が前記許可信号と実質的に一致する場合、前記第2の複数のリソースのうちの1つを検索するステップと
を含み、
前記第3の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第3のクライアントから前記許可プロセスへ前記ID信号を転送するステップと、
これに応答して、前記許可プロセスから前記第1のクライアントに付随する認証信号を受信するステップと、
前記認証信号が前記許可信号と実質的に一致する場合、前記第3の複数のリソースのうちの1つを検索するステップと
を含む。
前記方法は望ましくは、さらに、
前記第2のクライアントにおいて、前記ID信号および前記受信した認証信号をキャッシュ・メモリに格納するステップと、
前記第2のクライアントにおいて、前記第2のクライアントから前記認証プロセスへ転送する前記ステップの前に、前記ID信号および前記受信した認証信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ID信号および前記受信した認証信号を見つけた場合、前記第2のクライアントから前記認証プロセスへ転送する前記ステップを実行せず、
前記第2の複数のリソースのうちの1つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記認証信号を使用する。
前記方法は、さらに、
前記第3のクライアントにおいて、前記ID信号および前記受信した認証信号をキャッシュ・メモリに格納するステップと、
前記第3のクライアントにおいて、前記第3のクライアントから前記認証プロセスへ転送する前記ステップの前に、前記ID信号および前記受信した認証信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ID信号および前記受信した認証信号を見つけた場合、前記第3のクライアントから前記認証プロセスへ転送する前記ステップを実行せず、
前記第3の複数のリソースのうちの1つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記認証信号を使用する。
望ましくは、
前記第2のクライアントが前記認証プロセスから前記認証信号を受信しなかった場合、前記検索要求を前記第2のクライアントから前記第3のクライアントへ転送する前記ステップ、および前記複数の第2のリソースを選択的に検索する前記ステップを実行しない。
望ましくは、
前記証明書信号が前記第1のクライアントを表わすID信号を含み、
前記第1のリソースの前記アクセス属性および前記第2のリソースの前記アクセス属性が複数のクライアント・クラスのうちの少なくとも1つに付随する認証信号を含み、
前記第2の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第2のクライアントから前記第2のクライアントの外部にある許可プロセスへ前記ID信号を転送するステップと、
前記複数のクライアント・クラスのうち前記ID信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
前記クライアント・クラス信号が前記許可信号と実質的に一致する場合、前記第2の複数のリソースのうちの1つを検索するステップと
を備え、
前記第3の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第3のクライアントから前記第3のクライアントの外部にある許可プロセスへ前記ID信号を転送するステップと、
前記複数のクライアント・クラスのうち前記ID信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
前記クライアント・クラス信号が前記許可信号と実質的に一致する場合、前記第3の複数のリソースのうちの1つを検索するステップと
を備えている。
前記方法は望ましくは、さらに、
前記第2のクライアントにおいて、前記ID信号および前記受信したクライアント・クラス信号を前記第2のクライアントのキャッシュ・メモリに格納するステップと、
前記第2のクライアントにおいて、前記第2のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ID信号および前記受信したクライアント・キャッシュ信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって、前記キャッシュ・メモリに格納されている前記ID信号および前記受信したクライアント・キャッシュ信号を見つけた場合、前記第2のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
前記第2の複数のリソースのうちの1つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記クライアント・キャッシュ信号を使用する。
前記方法は望ましくは、さらに、
前記第3のクライアントにおいて、前記ID信号および前記受信したクライアント・クラス信号を前記第3のクライアントのキャッシュ・メモリに格納するステップと、
前記第3のクライアントにおいて、前記第3のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ID信号および前記受信したクライアント・キャッシュ信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ID信号および前記受信したクライアント・クラス信号を見つけた場合、前記第3のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
前記第3の複数のリソースのうちの1つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記クライアント・クラス信号を使用する。
前記ピアツーピア・ネットワークは第1のクライアント,第2のクライアント、および第3のクライアントを含む複数のクライアント(前記複数のクライアントの各々は一意のクライアント・アドレスを有する)とクライアント・アドレスのリストを有するサーバとを備えているのが望ましい。
前記方法はさらに、
クライアント・アドレスの前記リストの第1の部分を備えた第1のシード・リストを前記サーバから前記第1のクライアントへ転送するステップと、
クライアント・アドレスの前記リストの第2の部分を備えた第2のシード・リストを前記サーバから前記第2のクライアントへ転送するステップと
を備え、
前記第1のシード・リストは前記第2のクライアントに対応する第2のクライアント・アドレスを含み、前記第2のシード・リストは前記第3のクライアントに対応する第3のクライアント・アドレスを含み、
前記検索要求を前記第1のクライアントから前記第2のクライアントへ転送する前記ステップにおいて、前記第1のシード・リストに含まれる前記第2のクライアント・アドレスによって前記第2のクライアントへ転送し、
前記検索要求を前記第2のクライアントから前記第3のクライアントへ転送する前記ステップにおいて、前記第2のシード・リストに含まれる前記第3のクライアント・アドレスによって前記第3のクライアントへ転送する。
前記複数のクライアントの各々は常時、前記ピアツーピア・ネットワークに接続している、または前記ピアツーピア・ネットワークから切断されているのが望ましい。
前記方法は、さらに、
前記サーバにおいて、前記複数のクライアントのうち前記ピアツーピア・ネットワークに接続しているものを確認するステップと、
前記サーバにおいて、確認する前記ステップによって接続クライアントのアドレスのリストを作成するステップと、
前記サーバにおいて、前記接続クライアントのアドレスのリストから前記第1のシード・リストおよび前記第2のシード・リストを作成するステップと
を備えている。
前記方法は、さらに、
前記複数のクライアントのうちの1つが前記ピアツーピア・ネットワークに接続したことに応答して、接続信号を前記複数のクライアントのうちの前記1つから前記サーバへ転送するステップと、
前記サーバにおいて、これに応答して、前記複数のクライアントのうちの前記1つに対応する新たに接続したクライアントのアドレスを接続クライアントのアドレスの前記リストに付加するステップと
を備えているのが望ましい。
第2の側面において、本発明は複数のクライアントを有するピアツーピア・ネットワークに含まれるクライアント装置を提供する。
前記クライアント装置は、
前記複数のクライアントのうちの第2のクライアントからリソース検索要求を受信するピアツーピア・ネットワーク・ディスパッチャであって、前記検索要求は前記複数のクライアントのうちの開始クライアントから開始し、前記検索要求は前記開始クライアントを表わすID信号を含む証明書信号を含む、ピアツーピア・ネットワーク・ディスパッチャと、
複数のリソースを格納するメモリであって、前記複数のリソースの各々は少なくとも1つの対応するアクセス属性を備えている、メモリと、
前記証明書信号と前記複数のリソースの各々の前記少なくとも1つのアクセス属性とを比較することにより、前記複数のリソースのうちの少なくとも1つを選択的に検索する検索エンジンと
を備えている。
望ましくは、
前記ピアツーピア・ネットワーク・ディスパッチャは、
前記ID信号を前記クライアントの外部にある認証プロセスへ転送し、
前記認証プロセスが前記ID信号を認証した場合、認証済み信号を受信し、
前記検索エンジンは、
前記認証プロセスから前記認証済み信号を受信しない場合、前記複数のリソースをすべて検索しない。
望ましくは、
前記認証プロセスから前記認証済み信号を受信しない場合、前記ピアツーピア・ネットワーク・ディスパッチャは前記リソース検索を前記複数のクライアントのうちの第3のクライアントへ転送しない。
望ましくは、
前記アクセス属性は前記対応するリソースへのアクセスを許可されたクライアントのクラスを表わすものであり、
前記ピアツーピア・ネットワーク・ディスパッチャは、
前記ID信号を前記クライアントの外部にある認証プロセスへ転送し、
これに応答して、クライアント・クラス信号を受信し、
前記検索エンジンは、
前記クライアント・クラス信号と前記複数のリソースの各々の前記少なくとも1つのアクセス属性とを比較することにより、前記複数のリソースのうちの前記少なくとも1つを選択的に検索する。
望ましくは、
前記ピアツーピア・ネットワークはさらにサーバと一意のクライアント・アドレスを有する複数のクライアントの各々とを備え、
前記クライアントはさらに前記サーバからクライアント・アドレスのシード・リストを受信して格納するシード・リスト受信器を備え、
前記ピアツーピア・ネットワーク検索ディスパッチャは前記リソース検索要求を前記シード・リストのクライアント・アドレスへ転送する。
ピアツーピア・ネットワークにおいて第1のクライアントが開始したリソース検索を安全に実行する方法を実現することは好都合である。前記リソース検索は前記第1のクライアントを表わす証明書信号を有する検索要求に含まれている。
前記方法は、
前記検索要求を前記第1のクライアントから第2のクライアントへ転送するステップと、
前記検索要求を前記第2のクライアントから第3のクライアントへ転送するステップであって、前記第3のクライアントは複数の第3のリソースを有し、前記複数の第3のリソースの各々は対応する少なくとも1つのアクセス属性を備えている、ステップと、
前記第3のクライアントにおいて、前記証明書信号と前記複数の第3のリソースの各々の前記少なくとも1つのアクセス属性とを比較することにより、前記複数の第3のリソースを選択的に検索するステップと
を備えている。
前記ピアツーピア・ネットワークは第1のクライアント,第2のクライアント、および第3のクライアントを含む複数のクライアント(前記複数のクライアントの各々は一意のクライアント・アドレスを有する)とクライアント・アドレスのリストを有するサーバとを備えているのが望ましい。
前記方法はさらに、
クライアント・アドレスの前記リストの第1の部分を備えた第1のシード・リストを前記サーバから前記第1のクライアントへ転送するステップと、
クライアント・アドレスの前記リストの第2の部分を備えた第2のシード・リストを前記サーバから前記第2のクライアントへ転送するステップと
を備え、
前記第1のシード・リストは前記第2のクライアントに対応する第2のクライアント・アドレスを含み、前記第2のシード・リストは前記第3のクライアントに対応する第3のクライアント・アドレスを含み、
前記検索要求を前記第1のクライアントから前記第2のクライアントへ転送する前記ステップにおいて、前記第1のシード・リストに含まれる前記第2のクライアント・アドレスによって前記第2のクライアントへ転送し、
前記検索要求を前記第2のクライアントから前記第3のクライアントへ転送する前記ステップにおいて、前記第2のシード・リストに含まれる前記第3のクライアント・アドレスによって前記第3のクライアントへ転送する。
本発明の好適な実例はピアツーピア・ネットワークにおいて第1のクライアントが開始したリソース検索を安全に実行する方法を提供する。前記リソース検索は前記第1のクライアントを表わす証明書信号を有する検索要求に含まれている。
前記方法は、
前記検索要求を前記第1のクライアントから第2のクライアントへ転送するステップと、
前記検索要求を前記第2のクライアントから第3のクライアントへ転送するステップであって、前記第3のクライアントは複数の第3のリソースを有し、前記複数の第3のリソースの各々は対応する少なくとも1つのアクセス属性を備えている、ステップと、
前記第3のクライアントにおいて、前記証明書信号と前記複数の第3のリソースの各々の前記少なくとも1つのアクセス属性とを比較することにより、前記複数の第3のリソースを選択的に検索するステップと
を備えている。
本発明の別の実例は複数のクライアントを有するピアツーピア・ネットワークに含まれるクライアントを提供する。
前記クライアントは、
前記複数のクライアントのうちの第2のクライアントからリソース検索要求を受信するピアツーピア・ネットワーク・ディスパッチャであって、前記検索要求は前記複数のクライアントのうちの開始クライアントから開始し、前記検索要求は前記開始クライアントを表わすID信号を含む証明書信号を含む、ピアツーピア・ネットワーク・ディスパッチャと、
複数のリソースを格納するメモリであって、前記複数のリソースの各々は少なくとも1つの対応するアクセス属性を備えている、メモリと、
前記証明書信号と前記複数のリソースの各々の前記少なくとも1つのアクセス属性とを比較することにより、前記複数のリソースのうちの少なくとも1つを選択的に検索する検索エンジンと
を備えている。
本発明の別の実例はピアツーピア・ネットワークにおいて第1のクライアントが開始したリソース検索を安全に実行する方法を提供する。前記リソース検索は前記第1のクライアントを表わす証明書信号を有する検索要求に含まれている。
前記方法は、
前記リソース要求を前記第1のクライアントから第2のクライアントへ転送するステップ
を備えており、
前記第2のクライアントは複数の第2のリソースを有し、
前記複数の第2のリソースの各々は少なくとも1つの対応するアクセス属性を備えている。
前記方法は、
前記第2のクライアントにおいて、前記証明書信号と前記複数の第2のリソースのうちの前記少なくとも1つのアクセス属性とを比較することにより、前記複数の第2のリソースを選択的に検索するステップ
を備えている。
前記方法は、さらに、
前記検索要求を前記第2のクライアントから第3のクライアントへ転送するステップ
を備えており、
前記第3のクライアントは複数の第3のリソースを有し、
前記複数の第3のリソースの各々は少なくとも1つの対応するアクセス属性を備えている。
前記方法は、さらに、
前記第3のクライアントにおいて、前記証明書信号と前記複数の第3のリソースのうちの前記少なくとも1つのアクセス属性とを比較することにより、前記複数の第3のリソースを選択的に検索するステップ
を備えている。
これらの実施形態はここに示した革新的な教示の多くの有利な使用方法の例示にすぎないということに留意することが重要である。一般に、本願の明細書でなされた記述は均等物および特許請求の範囲に記載された様々な発明を必ずしも限定するものではない。また、一部の記述は一部の発明的特徴に適用しうるが他の発明的特徴には適用できない。一般に、特に反対の意が示されていない限り、単数の構成要素は複数形をしており逆もまた真であるが、これにより一般性が失われることはない。
好適な実施形態は全組織レベルのイントラネット環境内のピーツーピア(P2P)型のリソース共用に関する。好適な実施形態はP2P型リソース共用のためのハイブリッド・システムである。それはサーバおよびクライアント・コンポーネントの双方から成る。それは上述した3つのP2Pアーキテクチャの機能をサポートするのに加え、追加の機能をいくつかサポートしている
クライアントはクライアント・コンピュータで実行されるアプリケーションであり、修正された純粋なP2Pクライアントとして動作する。システムは信頼できるIPリポジトリ、全組織的システムによるセキュリティ統合、検索結果をより良好にする拡張クライアント側データベース、および基本的なネットワーク動作軽減策を備えている。そして、これらの特性が相まって全組織的環境用のP2Pサービスを実現している。
〔好適な実施形態の特徴〕
信頼できるIPリポジトリ−−−各クライアントは始めにサーバに「名乗り」、接続されているクライアントのIPアドレスのリストを要求する。サーバは接続されているクライアントのシード(seed)リストを送付する。(シード・リストなる用語を用いたのは各クライアントは接続されている他のクライアントのうち限られた数のものしか知る必要がないからである。)サーバはクライアントのリストを保持し各クライアントを周期的にピングすることにより、接続されているクライアントの現在のリストを保守している。
認証および許可−−−各リソースに付随するメタデータにはファイル記述の他にセキュリティ情報およびアクセス制御情報がある。セキュリティ検査はローカル・アカウントに基づいてもよいし、全組織レベルのセキュリティに基づいてもよい。
拡張クライアント・データベース−−−各クライアントは自分が共用しているリソースのデータベースを保持している。このデータベースはファイルの名前と特徴を含んでいるだけでなくファイルを説明するユーザ定義のメタデータも含んでいる。
軽減されたネットワーク動作−−−純粋なP2Pネットワークと異なり、クライアントは他のクライアントを継続的にピングする必要はない。その代わり、クライアントはサーバからIPアドレスのリストを周期的にダウンロードすることにより、接続されている他のクライアントを常時監視している。各クライアントは受信したリスト中の各クライアントにハンドシェークを送信する。別のクライアントから確認応答を受信したら、当該クライアントを元のクライアントのリストに付加する。
純粋なP2Pプロトコルに基づいている−−−大部分のパケット通信と同様に、検索と検索応答はクライアントの間で純粋なP2Pプロトコルに類似したプロトコルを用いて行なう。
この方式によれば、P2P環境内で中央サーバの概念を使用することが可能になる。その結果、高度に拡張されたP2Pリソース共用システムが実現する。したがって、このシステムは既存のP2P方式の上に構築するものであるが、追加の機能を備えている。
図1は本発明の好適な実施形態に従って動作するP2Pネットワークとシステムのブロック図である。イントラネット・バックボーン100はP2Pサーバ102および認証・許可プロセス104を複数のクライアント1〜Y(106〜120)に接続している。各クライアントはIP 1〜IP Yで示す、当該クライアントを表わす対応するアドレスを備えている。また、イントラネット100はクライアント間の通信も容易にしている。これにより、P2P通信が可能になる。
図2は本発明の好適な実施形態に従って動作するP2Pネットワークとシステムにおけるサーバのブロック図である。サーバ102はイントラネットおよびクライアントとの通信を容易にするネットワーク・インタフェース202によってイントラネット・バックボーン100に接続されている。クライアントがイントラネットに接続すると、ネットワーク・インタフェース202がクライアント接続信号を受信し、クライアント接続機能204がそれを処理して接続したクライアントのアドレスを接続クライアント・リスト206に付加する。接続信号に応答して、シード・リスト生成器208が、接続したクライアント用にシード・リストを生成する。このシード・リストはサーバがクライアントに供給した複数のシード・リスト210の一部である。好適な実施形態では、このシード・リストはすべてのシード・リストを格納しているメモリに格納されているように示されている。メモリへの記憶は任意構成要素である。シード・リストはランダムに生成してもよいし、多数の基準に従って生成してもよい。基準の例としては地理的特徴やクライアントの特徴などがある。たとえば、シード・リストは特定の国または地域(たとえばアメリカ合衆国や欧州など)に存在するクライアントに限定することができる。あるいは、シード・リストは共通の属性(たとえば技術や販売など)を共有する接続クライアント・クラスに限定することができる。また、シード・リストはクライアントからの距離(この距離にはネットワーク応答時間が含まれる)に従って生成してもよい。この場合、近接しているクライアントをシード・リストに含める。別の実施形態では、単位検索時間内に検索しうるクライアント数を最大化して最適なネットワーク相互接続を生成するために、以前のシード・リストに従ってシード・リストを生成している。さらに、このような方法を用いてP2Pネットワーク内に検索アイランド(island)を形成してもよい。また、サーバ102は接続したクライアントが予期される確認応答信号を出すか否かをテストすることにより、接続クライアントIPアドレス206を保守している。確認応答信号を受信しない場合、当該クライアントのアドレスをリストから削除する。サーバは接続クライアントにPING信号を周期的に送信するが、所定時間内に確認応答PONG信号を受信しない場合、サーバは当該クライアントが非接続であると判断して当該クライアントのアドレスをリスト206から削除するのが望ましい。
図3は本発明の好適な実施形態に従って動作するP2Pネットワークとシステムの認証・許可プロセスのブロック図である。認証・許可プロセス104は別のネットワーク・セキュリティ・サーバに存在するのが望ましいが、サーバ102中に存在してもよい。認証・許可プロセスはイントラネットおよびクライアントとの通信を容易にするネットワーク・インタフェース302によってイントラネット・バックボーン100に接続されている。クライアントはリソース検索を行なう前に、認証・許可プロセスがリソース検索の認証および/または許可を与えるように要求する。(「Aおよび/またはB」は「AおよびB、A、またはB」を表わす。)
認証が必要な場合、クライアントは認証要求信号をプロセス104に送付する。ネットワーク・インタフェース302がこの認証要求を受信し、それを認証証明書検査304へ転送する。その証明書はSEARCH要求を開始したクライアントを表わすものであり、SEARCH要求信号中に含まれている。あるクライアントがこのSEARCH要求を受信し要求元クライアントの認証を望む場合、証明書をプロセス104に転送する。証明書には検索を開始したクライアントのクライアントIDと対応するパスワードが含まれているのが望ましい。プロセス104は所定のクライアントIDとパスワードから成るテーブルを備えている。クライアントID306とパスワード308が認証要求信号に含まれているものと一致したら、要求元クライアントは確認される。そして、プロセス104は認証信号を要求元クライアントに返送する。当業者が認識しうるように、他に多くの認証プロセスが知られており、上述した認証プロセスはそれらのものと置換することができる。
許可が必要な場合、クライアントは許可要求信号をプロセス104に送付する。ネットワーク・インタフェース302がこの許可要求を受信し、それを許可プロセス310へ転送する。証明書はSEARCH要求を開始したクライアントを表わすものであり、SEARCH要求信号中に含まれている。あるクライアントが、SEARCH要求を受信し、要求元クライアントはどのリソースに対してアクセスが許可されているのかを確認することを望む場合、証明書はプロセス104に転送される。証明書にはSEARCHを開始したクライアントのクライアントIDが含まれているのが望ましい。プロセス104は所定のクライアントID312とアクセス制御314から成るテーブルを備えている。許可要求に応答して、プロセス104は対応するアクセス制御信号を有する許可信号を要求元クライアントに返送する。アクセス制御信号314はあるクライアントが自分のピア(peer)で検索するのを許可されたリソースの種別すなわちクライアント・クラスを表わすものである。様々なアクセス制御すなわちクライアント・クラスの例として、技術に関するリソース、市場調査に関するリソース、および人事管理に関するリソースが挙げられる。各アクセス制御は多数のサブカテゴリを有する。たとえば、技術にはネットワーク、集積回路、およびオペレーティング・システムの各サブカテゴリが含まれる。各クライアントは各サブカテゴリに対して一意にアクセスしうるように許可されている。たとえば、技術部門に属すクライアントは技術ネットワークに関するリソースおよびオペレーティング・システムに関するリソースを検索しうるように許可されているが、人事問題に関する管理上のリソースおよび技術上の集積回路に関するリソースを検索しうるようには許可されていない。
好適な実施形態では、認証プロセスおよび許可プロセスの双方をクライアントが出す単一の要求信号によって行なうとともに、SEARCH要求およびGET要求の双方について行なうことができる。別の実施形態では、許可のみまたは認証のみを使用する。また、引き続くSEARCH要求およびGET要求の認証および/または許可のための通信が重複するのを避けるために、認証および/または許可をクライアントのキャッシュに格納してもよい。これにより、ネットワークの通信量を低減することができる。
図4は本発明の好適な実施形態に従って動作するP2Pネットワークとシステムにおけるクライアントのブロック図である。このクライアントはイントラネット・バックボーン100に接続されたパーソナル・コンピュータで動作するプロセスであるのが望ましい。別の実施形態では、このプロセスは他のコンピューティング装置(たとえばラップトップ型PC、PDA、および対話型民生用装置〔たとえばセット・トップ・ボックス、テレビ、ステレオ、携帯電話機、または他の種類のリソース格納装置〕)で動作可能である。ディスパッチャ/ネットワーク・インタフェース402はサーバ、認証・許可プロセス、および他のクライアントとイントラネット・バックボーン100を介して通信するのを容易にしている。ディスパッチャはイントラネット・バックボーン上で受信する少なくとも3つの信号に応答する。3つの信号とはPING、SEARCH、およびGETである。また、クライアントはPING、SEARCH、およびGETの各コマンドを開始するのに加え、サーバ102および認証・許可プロセス104と通信する。コマンドに応答して、ディスパッチャ402はPINGコマンドをピング/ポング・プロセス404へ転送する。ピング/ポング・プロセス404はPINGコマンドの受領に対して確認応答のPONGコマンドを用いて応答する。SEARCHコマンドとGETコマンドはディスパッチャ402が検索プロセッサ405と取得プロセッサ406へ転送する。しかし、SEARCHコマンドまたはGETコマンドを処理する前に、認証・許可プロセス408がこれらのコマンドを評価する。プロセス408は少なくとも3つのコンポーネントを備えているが、それらはすべて任意コンポーネントである。許可の第1のコンポーネントは予め定められているとともに、要求元クライアントのIDに基づくものである。この実施形態では、外部の認証プロセス104を必要としない。第2のコンポーネントと第3のコンポーネントは外部の認証・許可104が実行する認証と許可である。これら3つのコンポーネントを様々に組み合わせることにより、多数の実施形態を実現することができる。また、認証・許可は許可済みのクライアントのIDおよび/またはクライアントID412に付随するアクセス制御を格納する任意構成要素のキャッシュを備えていてもよい。この情報をキャッシュ410に格納することにより、図3のプロセスに対して認証要求および/または許可要求を繰り返す回数を低減することが可能になる。
SEARCHコマンドが認証されなかったら、P2Pシステムにおける次のピアにそれを伝搬させる必要はない。これにより、ネットワークの通信量を低減することができる。また、認証の失敗は要求元クライアントに通知する必要はない。これにより、イントラネットのハッキング(hacking)を防止することができる。なぜなら、検索要求者は検索の結果が得られなかった理由(リソースが存在しなかったのか、あるいは検索者が認証されなかったのか)を知ることができないからである。SEARCH要求が認証されたら、当該SEARCH要求に合致するリソース422を求めてクライアントのメモリ320を検索する。リソースの検索はアクセス制御とリソース属性を備えたメタデータ424を検索することにより行なうのが望ましい。検索プロセス404は認証されたアクセス制御と各リソースに付随するアクセス制御とを比較することにより、検索しうるのはどのリソースであるのかを判断する。一致したら、そのリソースを検索する。検索はリソースの属性を検索することにより行なうのが望ましい。属性にはファイル種別、ファイル・サイズ、日付、作成者などがある。属性にはリソースに関する追加の情報を提供する(たとえば作成者が手動で作成した)注釈や要約も含まれる。これにより、キーワード検索が容易になる。あるいは、リソース自体のより徹底した検索を実行してもよい。一致したら、検索を開始したクライアントに肯定信号を返送する。
GET要求を開始するのは通常、SEARCH要求を開始し、さらにGET要求を受信したクライアントから肯定的な検索結果を受信したクライアントである。取得プロセス406による実行の前に、GET要求を許可および/または認可する。その後、GET要求によって特定された特定のリソースを要求元クライアントに転送する。
留意点を挙げると、PINGコマンドはディスパッチャ402が直接に転送するが、SEARCH要求とGET要求は事実上、カスタム・ファイアウォール408の後ろに隠されている。すべての要求(PING、SEARCH、GET)は他のすべてのクライアントに利用可能に見える。しかし、クライアントから応答がないということはGETまたはSEARCHを保護するセキュリティ措置が講じられていたということも意味する。たとえば、検索が失敗しても「該当項目なし(no items found)」信号を返送しない。したがって、クライアントは検索から応答を受信しない場合であっても、項目が保護されていたのか、あるいは項目が単に存在しないだけなのかを知ることができない。
図4のクライアントはSEARCH要求とGET要求の開始も行なう。SEARCH要求を開始するとき、検索用語は通常、クライアントの操作者から受領する。SEARCH・GET要求プロセッサ430はその検索用語を、クライアントIDおよびパスワードに加えそのIPアドレスを含む、クライアントの証明書432とともにパッケージする。次いで、検索要求をシード・リスト434に含まれるIPアドレスを有するクライアントに転送する。シード・リスト434にはサーバ102から受信したIPアドレスを含まれている。証明書432は上述した認証プロセスと許可プロセスで使用する。検索結果として特定のクライアントにある特定のリソースが必要な場合、SEARCH・GET要求プロセッサ430はそのリソースIDを証明書情報とともにGET要求中にパッケージし、そのGET要求を対応するクライアントに送付する。
P2P検索伝搬プロセスのさらなる部分として、検索プロセス405が処理するSEARCH要求をシード・リスト434に含まれている他のアドレスにも転送する。これにより、リソース検索をシード・リストのクライアント・アドレスに転送するピーツーピア型ネットワーク検索ディスパッチャを実現すことができる。しかし、タイムアウトが発生した場合または認証プロセスが失敗した場合には、SEARCH要求を伝搬しない。
図5は本発明の好適な実施形態に従ってシード・リストを生成して保守する、クライアントとサーバとの間の相互作用を含むプロセス・フロー図である。表示を明確にするために、クライアント内で実行するプロセスを左にサーバ内で実行するプロセスを右に示す。ステップ500で開始する。クライアントはネットワークに接続するまでステップ500に留まる。接続にはP2Pネットワークへの接続を容易にするプログラムの実行が含まれるのが望ましい。そのようなプログラムは電源投入後のデスクトップ型パーソナル・コンピュータにおいて実行することができる。同様に、そのようなプログラムはバックボーンに物理的に接続した後の携帯型ラップトップ・パーソナル・コンピュータ上のクライアントにおいて実行することができる。
その後、ステップ502において、クライアントは当該クライアントのアドレスを含む接続信号をサーバに送信する。サーバはステップ504において接続信号を受信したのち、クライアントのアドレスを接続クライアント・アドレス・リストに付加する(ステップ506)。ステップ508において、上述したシード・リスト作成方法を含む任意の方法を用いて当該クライアント用のシード・リストを作成する。このシード・リストはステップ510においてサーバから送信し、ステップ512において当該クライアントが受信する。ステップ512ではさらにシード・リストに搭載されているクライアントにPING信号を送信し、それらがP2Pネットワークに接続されているか否かを検査する。ステップ522において、確認応答を返さないクライアントをシード・リストから削除する。ステップ514において当該クライアントが切断していたら、プロセスはステップ500に戻って再接続を待ち受ける。切断は常に起こりうる。切断は多数の異なるイベント(たとえば、クライアントの電源をOFFした場合、操作者がクライアントのP2Pプログラムを終了した場合など)の結果である可能性がある。クライアントは自分がネットワークから切断されたことをサーバに自発的に通知する必要はない。接続中の場合、ステップ516において、クライアントは受信したすべてのPING信号に対して確認応答する。PING信号はサーバまたは他のクライアントから受信する。PING信号に対しては通常、PONG信号を用いて確認応答する。ステップ520において、PING要求、SEARCH要求、およびGET要求を実行して他のクライアントと通信する。シード・リストに搭載されているクライアントがPING要求、SEARCH要求、またはGET要求に応答しない場合、あるいは接続すなわち束縛されていない場合、当該クライアントはネットワークから切断されているものと判断されるから、ステップ522においてシード・リストから削除する。ステップ524において、シード・リストをリフレッシュする必要があるか否かを判断する。YESの場合、ステップ526において、シード・リストをリフレッシュする要求をサーバに送信する。シード・リストをリフレッシュするのはステップ522において少なくとも1つのクライアントを削除したことを含むいくつかの理由からである。あるいは、シード・リストのリフレッシュは操作者からの特定の入力や新たな検索の開始に応答して、またはある期間の後もしくは不活動の後に行なってもよい。他の実施形態では、サーバはネットワークの振舞いを再構成するためにリフレッシュを開始する。シード・リストのリフレッシュは全体リフレッシュまたは部分リフレッシュとして行なう。たとえば、シード・リストが始めに10個のクライアントを含んでおり、そのうちの4つのクライアントが切断している場合、シード・リストのリフレッシュによって新たに4つのクライアント・アドレスを要求することができるようになる。あるいは、最初に開始した検索が技術に関するリソースに基づくものであり、2番目に開始した検索が販売に関するリソースに基づくものであった場合、それに従ってシード・リスト全体を置換して異なる種類のリソースを求める検索を最適化することができる。サーバでは、ステップ528において、接続クライアント・アドレス・リストを保守する。これはサーバから接続リストに搭載されているクライアントにPING信号を周期的に送信することにより行なう。予期した確認応答信号(たとえばPONG信号)を受信しない場合、当該クライアントを接続クライアント・リストから削除する。次いで、ステップ530において、サーバはシード・リスト・リフレッシュ要求を受信済みである否かを判断する。NOの場合、ステップ504に戻る。YESの場合、サーバはステップ532において接続クライアントIPアドレス・リストからシード・リスト・リフレッシュを作成し、ステップ534において要求元クライアントに当該シード・リストを送付する。ステップ536において、クライアントはリフレッシュ済みのシード・リストを受信し、新たなクライアントにPING信号を送信する。ステップ522において、確認応答しない新たなクライアントはすべてシード・リストから削除する。図5のプロセスによれば、シード・リストはクライアントにおいて確立・保守し、接続クライアントIPアドレス・リストはサーバにおいて保守する。認識すべき点を挙げると、別の実施形態では、サーバはPING信号に対する非応答を含むすべての非確認応答に応答して接続リストからクライアントを削除する。たとえば、クライアントがサーバからのPINGを必要とすることなく確認応答信号を周期的に送信するようにしてもよい。そして、所定時間内に確認応答を受信しない場合、ステップ528において当該クライアントを接続リストから削除する。あるいは、条件が許す場合にはクライアントが切断信号を自発的に送信するようにしてもよい。そして、サーバはそれに応答して接続リストから当該クライアントを削除する。留意点を挙げると、好適な実施形態では、シード・リストに搭載されているクライアントには通常、PING要求を送信しない。なぜなら、ステップ512とステップ536のPING要求で十分だからである。これにより、分散検索型P2Pネットワークにおけるネットワーク通信量を顕著に低減できるという利点が得られる。
図6は本発明の好適な実施形態に従いクライアントがPING、SEARCH、GETの各要求を処理するプロセス・フロー図である。ステップ600においてクライアントがPINGを受信したら、当該クライアントはステップ602でPONGを送信する。ステップ604においてSEARCHを受信したら、ステップ606で認証を実行し、ステップ608で検索タイムアウトを検査する。認証については下で詳述する。認証に合格し検索がタイムアウトしていない場合、ステップ610において検索要求をシード・リスト中の他のクライアントに転送する。ステップ612において、検索を要求または開始したクライアントが検索しうるのはどのリソースであるのかを確認する。選定または許可されたリソースについて、ステップ614において、検索要求との一致を求めてリソースのメタデータを検索する。ステップ616においてリソース一致があったら、ステップ608において、要求元クライアントへ返送するためにリソース一致を表わす信号を用いてクライアントに応答する。プロセスはステップ604、606、608、618のいずれかからステップ620に進み、GET要求を受信しているか否かを判断する。GET要求は通常、クライアントが、SEARCH要求を開始しステップ618で生成された一致信号を受信したのちに開始する。GET要求を受信したら、ステップ622において、要求元クライアントが当該リソースを受領しうるように許可されているか否かを判断する。許可されている場合、ステップ624において、GET要求を開始したクライアントに当該リソースを送付する。認識すべき点を挙げると、ステップ608においてタイムアウトした場合、またはステップ606において認証に失敗した場合、検索を伝搬しない。当業者がさらに認識すべき点を挙げると、認証に失敗した場合に検索の伝搬を禁止しながら、ステップ606の認証プロセスとステップ612の確認プロセスとを組み合わせてもよい。
図7はクライアントの外部にある認証プロセスと通信する必要のない認証プロセスのプロセス・フロー図である。図7のプロセスは図6のステップ612とステップ622においてクライアントで実行する。ステップ700において、検索要求を開始したクライアントのID証明書を検査する。この証明書の検査はクライアントIDと所定のリストとの単純な比較、要求元クライアントのIPアドレスの確認、チェックサムの検査、暗号手法、セキュリティ証明書、またはSEARCH要求もしくはGET要求に応答する、クライアントの外部のプロセスによる認証を必要としない他の方法によって行なうことができる。ステップ702において、リソース・アクセス制限と開始したクライアントの証明書とを比較する。たとえば、クライアント1はリソース2とリソース3にアクセスすることができ、クライアント2はリソース5とリソース6にアクセスすることができる、と事前に定めることができる。あるいは、あるIPゲートウェイを出たクライアントはリソースに対して限定されたアクセス権しか有さず、他のクライアントはリソースに対して無制限のアクセス権を有する、というように予め定めることもできる。これに応じて、ステップ704では要求元クライアントが検索しうる特定のリソースまたは要求元クライアントに送付しうる特定のリソースを確認する。図7に示すプロセスには外部の許可プロセスおよび/または認証プロセスを必要とすることなく、分散P2Pネットワークにおいて選択的リソース共用を実現できるという利点がある(上記選択は要求元クライアントを表わす証明書に従って行なう)。
図8は本発明の好適な実施形態に従う、クライアントと当該クライアントの外部にある認証プロセスとの間の通信のプロセス・フロー図である。説明を明確にするために、クライアント・プロセスは図8の左側で処理し、外部認証プロセスは図8の右側で処理する。図8のプロセスは図6のステップ612またはステップ622に示すプロセスをより詳細に示すものである。ステップ800において、以前のSEARCH要求またはGET要求の際に実行したID証明書の以前の認証を求めてクライアント・キャッシュを検査する。以前の認証がない場合、ステップ802においてID証明書を外部認証プロセス(たとえば図1のプロセス104)に送付する。ステップ804において、外部認証プロセスは上記証明書を受信したのち、上記証明書に含まれている名前およびパスワードが当該外部認証プロセスに格納されている名前およびパスワードと一致するか否かを検査する。一致する場合、ステップ806において、認証信号を当該クライアントに返す。一致しない場合、認証を拒否する。この認証信号はステップ808において当該クライアントが受信したのち、ステップ810において、SEARCH要求またはGET要求の際に受信した証明書とともにクライアント・キャッシュに格納する。その後、ステップ812において、リソース・アクセス制御とID証明書とを比較する。たとえば、クライアント1はリソース2とリソース3にアクセスすることができ、クライアント2はリソース5とリソース6にアクセスすることができる、と事前に定めることができる。あるいは、あるIPゲートウェイを出たクライアントはリソースに対して限定されたアクセス権しか有さず、他のクライアントはリソースに対して無制限のアクセス権を有する、というように予め定めることもできる。ステップ814において、要求元クライアントが検索しうるリソースまたは要求元クライアントに送付しうるリソースを確認する。図8に示すプロセスには中央制御された認証プロセスを用いて分散P2Pネットワークにおいて選択的リソース共用を実現できるという利点がある。従業員が日常的に採用されたり退職したりしている大組織では、認証の中央制御によって、分散検索型P2Pネットワーク・システムにおいて検索を実行しうる者を安全に管理することが可能になる。また、以前の認証をキャッシングすることにより、認証に要するネットワーク通信量を顕著に低減することが可能になる。
図9は本発明の好適な実施形態に従う、クライアントと当該クライアントの外部にある許可プロセスとの間の通信のプロセス・フロー図である。説明を明確にするために、クライアント・プロセスは図9の左側で処理し、外部許可プロセスは図9の右側で処理する。図9のプロセスは図6のステップ612またはステップ622に示すプロセスをより詳細に示すものである。ステップ900において、以前のSEARCH要求またはGET要求の際に実行したID証明書の以前の許可アクセス制限を求めてクライアント・キャッシュを検査する。以前の許可がない場合、ステップ902においてID証明書を外部許可プロセス(たとえば図1のプロセス104)に送付する。ステップ904において、外部許可プロセスはID証明書を受信したのち、ID証明書に付随するアクセス制御を確認する。これに応答して、ステップ906において、許可アクセス制御信号を当該クライアントに返送する。この許可アクセス制御信号はステップ908において当該クライアントが受信したのち、ステップ910において、SEARCH要求またはGET要求の際に受信した証明書とともにクライアント・キャッシュに格納する。その後、ステップ912において、要求元クライアントに付随する許可アクセス制御とリソース・アクセス制御とを比較する。ステップ914において、要求元クライアントが検索しうるリソースまたは要求元クライアントに送付しうるリソースを確認する。図9に示すプロセスには中央制御された許可プロセスを用いて分散P2Pネットワークにおいて選択的リソース共用を実現できるという利点がある。従業員が職能を定期的に変更し、それにより異なる種類の情報にアクセスすることが必要になる大組織では、許可の中央制御によって、分散検索型P2Pネットワーク・システムにおいて人が検索しうるリソースの種別を安全に管理することが可能になる。また、以前の許可をキャッシングすることにより、許可に要するネットワーク通信量を顕著に低減することが可能になる。
したがって、提供するものは現在のP2Pシステムの弱点を解決しながら上述したP2Pネットワークの利点に適合するシステムである。このP2Pネットワークは中央サーバの効率性を犠牲にすることなく純粋なP2Pネットワークの、必要とする中央サーバ数の少なさを利用している。また、このP2Pネットワークは中央サーバを必要とすることなくクライアント・リソースに対する安全なアクセスと制御を実現している。サーバ機能とセキュリティ機能は独立に動作することができる。たとえば、図1のP2Pネットワークは拡張P2P検索伝搬をサーバに提供する認証・許可機能104がなくとも動作させることができる。あるいは、図1のP2Pネットワークは認証機能および/または許可機能を用いてP2P検索伝搬を提供するP2Pサーバがなくとも動作させることができる。サーバ102と認証・許可104とを組み合わせると、効率的で安全なP2P検索伝搬ネットワークが実現する。このような組み合わせシステムには地球規模の大組織または他の大組織用のイントラネット・アプリケーションに有利な用途がある。
当業者が理解しうるように、本発明はハードウェアまたはソフトウェアで、あるいはハードウェアとソフトウェアの組み合わせで実現することができる。好適な実施形態とともに開示した本発明の原理に従うシステムまたは方法は上述したもしくは特許請求の範囲に記載した個々の機能またはステップを実行する個別の構成要素、または開示したもしくは特許請求の範囲に記載した機能もしくはステップのうちの任意のもののパフォーマンスを組み合わせた少なくとも1つの構成要素を備えた単一のコンピュータ・システムで実現することができ、あるいは、当業者に公知の任意の好適な手段によって相互接続された分散コンピュータ・システム中に構成することができる。
当業者が理解しうるように、好適な実施形態とともに開示した本発明の原理によれば、本発明および本発明の原理は特定の種類のコンピュータ・システムに限定されず、上述した機能および上述した方法ステップを実行しうるように構成された任意の汎用コンピュータで使用することができる。当業者が理解しうるように、上述したようなコンピュータの操作は当該コンピュータの操作または制御で使用する、媒体に格納されたコンピュータ・プログラムによって行なう。当業者が理解しうるように、このコンピュータ媒体はコンピュータ・プログラム製品を保持または格納するために使用することができ、コンピュータの備品(たとえばメモリ)の形をとることができ、あるいは、可搬媒体(たとえばディスク)の形をとることができる。
本発明は特定のコンピュータ・プログラム、論理もしくは言語、または命令に限定されないが、当業者に公知の好適なプログラム、論理もしくは言語、または命令を用いて実施することができる。ここに開示した発明の原理を限定することなく、そのようなコンピュータ・システムは特に少なくとも1つのコンピュータ読み取り可能な媒体を備えている。このコンピュータ読み取り可能な媒体はコンピュータにデータ、命令、メッセージまたはメッセージ・パケット、および他のコンピュータ読み取り可能な情報を当該コンピュータ読み取り可能な媒体から読み取ることを可能にするものである。コンピュータ読み取り可能な媒体には不揮発性メモリ(たとえばROM、フラッシュ・メモリ、フロッピー(登録商標)・ディスク、ディスク駆動装置メモリ、CDROM、および他の永続記憶装置)が含まれる。また、コンピュータ読み取り可能な媒体にはたとえば揮発性記憶装置(たとえばRAM、バッファ、キャッシュ・メモリ、およびネットワーク回路)も含まれる。
また、コンピュータ読み取り可能な媒体には一時状態媒体中のコンピュータ読み取り可能情報も含まれる。一時状態媒体にはコンピュータがこのようなコンピュータ読み取り可能情報を読み取るのを可能にするネットワーク・リンクおよび/またはネットワーク・インタフェース(たとえば有線ネットワークまたは無線ネットワーク)が含まれる。
以上、本発明の特定の実施形態を開示したが、当業者が理解しうる点を挙げると、本発明の範囲の内でこの特定の実施形態を変更することができる。したがって、本発明の範囲は特定の実施形態に限定されない。特許請求の範囲は本発明の範囲の内の任意のそしてすべての応用、変更、および実施形態を包含するものである。
本発明の好適な実施形態に従って動作するP2Pネットワークのブロック図である。 本発明の好適な実施形態に従って動作するP2Pネットワークにおけるサーバのブロック図である。 本発明の好適な実施形態に従って動作するP2Pネットワークにおける認証・許可プロセスのブロック図である。 本発明の好適な実施形態に従って動作するP2Pネットワークにおけるクライアントのブロック図である。 本発明の好適な実施形態に従いシード・リストを生成・保守する、クライアントとサーバとの間の相互作用を含むプロセス・フロー図である。 本発明の好適な実施形態に従う、クライアントによるPING、SEARCH、GETの各要求の処理のプロセス・フロー図である。 クライアントの外部にある認証プロセスと通信する必要のない認証プロセスのプロセス・フロー図てある。 本発明の好適な実施形態に従う、クライアントと当該クライアントの外部にある認証プロセスとの間の通信のプロセス・フロー図である。 本発明の好適な実施形態に従う、クライアントと当該クライアントの外部にある許可プロセスとの間の通信のプロセス・フロー図である。
符号の説明
100 イントラネット・バックボーン
102 P2Pサーバ
104 認証・許可プロセス
106 クライアント1
108 クライアント2
110 クライアント3
112 クライアント4
114 クライアント5
116 クライアント6
118 クライアントX
120 クライアントY
202 ネットワーク・インタフェース
204 クライアント接続信号
206 接続クライアントIPアドレス
208 シード・リスト生成器
210 シード・リスト
302 ネットワーク・インタフェース
304 認証証明書検査
306 クライアントID
308 パスワード
310 認証プロセス
312 クライアントID
314 アクセス制御
402 ディスパッチャ/ネットワーク・インタフェース
404 ピング/ポング・プロセス
405 検索プロセッサ
406 取得プロセッサ
408 認証・許可プロセス
410 キャッシュ
420 メモリ
422 リソース
424 メタデータ
430 SEARCH要求/GET要求
432 クライアントの証明書
434 シード・リスト

Claims (11)

  1. ピアツーピア・ネットワークにおいて、第1のクライアントによって開始されたリソース検索を安全に実行する方法であって、前記リソース検索は前記第1のクライアントを表わす証明書信号を有する検索要求に含まれており、該証明書信号は前記第1のクライアントを表わすID信号を含み、
    前記方法は、
    前記検索要求を前記第1のクライアントから第2のクライアントへ転送するステップであって、前記第2のクライアントは複数の第1のリソースを有し、前記複数の第1のリソースそれぞれは少なくとも1つの対応するアクセス属性を有し、前記第1のリソースそれぞれの前記アクセス属性は、複数のクライアントのうちの少なくとも1つに関連付けられたアクセス制御情報を有する、前記転送するステップと、
    前記証明書信号と前記複数の第1のリソースそれぞれの少なくとも1つの前記アクセス属性とを比較することにより、前記第2のクライアントにおいて、前記複数の第1のリソースを選択的に検索するステップであって、さらに、
    前記第2のクライアントから許可プロセスへ前記ID信号を転送するステップであって、該許可プロセスは、前記第1のクライアント、前記第2のクライアント及び第3のクライアントの外部にある、前記転送するステップと、
    これに応答して、前記許可プロセスから前記第1のクライアントに関連付けられたアクセス制御信号を有する許可信号を受信するステップと、
    前記受信した許可信号が前記複数の第1のリソースそれぞれの少なくとも1つのアクセス属性中のアクセス制御情報と実質的に一致する場合、前記複数の第1のリソースのうちの1つを検索するステップと
    を含む、前記検索するステップと、
    前記検索要求を前記第2のクライアントから第3のクライアントへ転送するステップであって、前記第3のクライアントは複数の第2のリソースを有し、前記複数の第2のリソースそれぞれは少なくとも1つの対応するアクセス属性を有し、前記第2のリソースそれぞれの前記アクセス属性は、複数のクライアントのうちの少なくとも1つに関連付けられたアクセス制御情報を有する、前記転送するステップと、
    前記証明書信号と前記複数の第2のリソースそれぞれの少なくとも1つの前記アクセス属性とを比較することにより、前記第3のクライアントにおいて、前記複数の第2のリソースを選択的に検索するステップであって、さらに、
    前記第3のクライアントから前記許可プロセスへ前記ID信号を転送するステップと、
    これに応答して、前記許可プロセスから前記第1のクライアントに関連付けられたアクセス制御信号を有する許可信号を受信するステップと、
    前記受信した許可信号が前記複数の第2のリソースそれぞれの少なくとも1つの前記アクセス属性中のアクセス制御情報と実質的に一致する場合、前記複数の第2のリソースのうちの1つを検索するステップと
    を含む、前記検索するステップと
    を含む、前記方法。
  2. 前記第2のクライアントにおいて、前記ID信号および前記受信した許可信号を該第2のクライアントのキャッシュ・メモリに格納するステップと、
    前記第2のクライアントにおいて、前記第2のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ID信号および前記受信した許可信号を求めて前記第2のクライアントのキャッシュ・メモリを検索するステップと
    をさらに含み、
    前記第2のクライアントの前記キャッシュ・メモリを検索する前記ステップによって前記第2のクライアントの前記キャッシュ・メモリに格納されている前記ID信号および前記受信した許可信号が見つけられた場合、前記第2のクライアントから前記許可プロセスへ転送する前記ステップが実行されず、
    前記複数の第1のリソースのうちの1つを検索する前記ステップでは前記第2のクライアントの前記キャッシュ・メモリに格納されている前記許可信号を使用し、それによって前記第2のクライアントと前記許可プロセスとの間の転送を低減する、
    請求項1に記載の方法。
  3. 前記第3のクライアントにおいて、前記ID信号および前記受信した許可信号を該第3のクライアントのキャッシュ・メモリに格納するステップと、
    前記第3のクライアントにおいて、前記第3のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ID信号および前記受信した許可信号を求めて前記第3のクライアントのキャッシュ・メモリを検索するステップと
    をさらに含み、
    前記第3のクライアントの前記キャッシュ・メモリを検索する前記ステップによって前記第3のクライアントの前記キャッシュ・メモリに格納されている前記ID信号および前記受信した許可信号が見つけられた場合、前記第3のクライアントから前記許可プロセスへ転送する前記ステップが実行されず、
    前記複数の第2のリソースのうちの1つを検索する前記ステップでは前記第3のクライアントの前記キャッシュ・メモリに格納されている前記許可信号を使用し、それによって前記第3のクライアントと前記許可プロセスとの間の転送を低減する、
    請求項1に記載の方法。
  4. 前記第2のクライアントが前記許可プロセスから前記許可信号を受信しなかった場合、前記検索要求を前記第2のクライアントから前記第3のクライアントへ転送する前記ステップ、および前記複数の第2のリソースを選択的に検索する前記ステップが実行されない、請求項1に記載の方法。
  5. ピアツーピア・ネットワークにおいて、第1のクライアントによって開始されたリソース検索を安全に実行する方法であって、前記リソース検索は前記第1のクライアントを表わす証明書信号を有する検索要求に含まれており、該証明書信号は前記第1のクライアントを表わすID信号を含み、
    前記方法は、
    前記検索要求を前記第1のクライアントから第2のクライアントへ転送するステップであって、前記第2のクライアントは複数の第1のリソースを有し、前記複数の第1のリソースそれぞれは少なくとも1つの対応するアクセス属性を有し、前記第1のリソースそれぞれの前記アクセス属性は、複数のクライアント・クラスのうちの少なくとも1つに関連付けられたアクセス制御情報を有する、前記転送するステップと、
    前記証明書信号と前記複数の第1のリソースそれぞれの少なくとも1つの前記アクセス属性とを比較することにより、前記第2のクライアントにおいて、前記複数の第1のリソースを選択的に検索するステップであって、さらに、
    前記第2のクライアントから前記第2のクライアントの外部にある許可プロセスへ前記ID信号を転送するステップと、
    前記複数のクライアント・クラスのうち前記ID信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
    前記受信したクライアント・クラス信号が前記複数の第1のリソースそれぞれの少なくとも1つのアクセス属性中のアクセス制御情報と実質的に一致する場合、前記複数の第1のリソースのうちの1つを検索するステップと
    を含む、前記検索するステップと、
    前記検索要求を前記第2のクライアントから第3のクライアントへ転送するステップであって、前記第3のクライアントは複数の第2のリソースを有し、前記複数の第2のリソースそれぞれは少なくとも1つの対応するアクセス属性を有し、前記第2のリソースそれぞれの前記アクセス属性は、複数のクライアント・クラスのうちの少なくとも1つに関連付けられたアクセス制御情報を有する、前記転送するステップと、
    前記証明書信号と前記複数の第2のリソースそれぞれの少なくとも1つの前記アクセス属性とを比較することにより、前記第3のクライアントにおいて、前記複数の第2のリソースを選択的に検索するステップであって、さらに、
    前記第3のクライアントから前記第3のクライアントの外部にある前記許可プロセスへ前記ID信号を転送するステップと、
    前記複数のクライアント・クラスのうち前記ID信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
    前記受信したクライアント・クラス信号が前記複数の第2のリソースそれぞれの少なくとも1つのアクセス属性中のアクセス制御情報と実質的に一致する場合、前記複数の第2のリソースのうちの1つを検索するステップと
    を含む、前記検索するステップと
    を含む、前記方法。
  6. 前記第2のクライアントにおいて、前記ID信号および前記受信したクライアント・クラス信号を前記第2のクライアントのキャッシュ・メモリに格納するステップと、
    前記第2のクライアントにおいて、前記第2のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ID信号および前記受信したクライアント・キャッシュ信号を求めて前記第2のクライアントのキャッシュ・メモリを検索するステップと
    をさらに含み、
    前記第2のクライアントの前記キャッシュ・メモリを検索する前記ステップによって、前記第2のクライアントの前記キャッシュ・メモリに格納されている前記ID信号および前記受信したクライアント・キャッシュ信号を見つけた場合、前記第2のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
    前記第2の複数のリソースのうちの1つを検索する前記ステップでは前記第2のクライアントの前記キャッシュ・メモリに格納されている前記クライアント・キャッシュ信号を使用する、
    請求項5に記載の方法。
  7. 前記第3のクライアントにおいて、前記ID信号および前記受信したクライアント・クラス信号を前記第3のクライアントのキャッシュ・メモリに格納するステップと、
    前記第3のクライアントにおいて、前記第3のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ID信号および前記受信したクライアント・キャッシュ信号を求めて前記第3のクライアントのキャッシュ・メモリを検索するステップと
    をさらに含み、
    前記第3のクライアントの前記キャッシュ・メモリを検索する前記ステップによって、前記第3のクライアントの前記キャッシュ・メモリに格納されている前記ID信号および前記受信したクライアント・クラス信号を見つけた場合、前記第3のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
    前記複数の第2のリソースのうちの1つを検索する前記ステップでは前記第3のクライアントの前記キャッシュ・メモリに格納されている前記クライアント・クラス信号を使用する、
    請求項5に記載の方法。
  8. 複数のクライアントを含むピアツーピア・ネットワークにおいて、第1のクライアントによって開始されたリソース検索を安全に実行する方法であって、前記リソース検索は前記第1のクライアントを表わす証明書信号を有する検索要求に含まれており、前記複数のクライアントは、第1のクライアント、第2のクライアント及び第3のクライアントを含み、前記複数のクライアントそれぞれは、一意のクライアント・アドレスを有し、及び前記サーバは、クライアント・アドレスのリストを有し、
    前記方法は、
    前記リストの第1の部分を含む第1のシード・リストを前記サーバから前記第1のクライアントへ転送するステップであって、前記第1のシード・リストは前記第2のクライアントに対応する第2のクライアント・アドレスを含む、前記転送するステップと、
    前記第1のシード・リストに含まれる第2のクライアント・アドレスに応じて、前記検索要求を前記第1のクライアントから第2のクライアントへ転送するステップであって、前記第2のクライアントは複数の第1のリソースを有し、前記複数の第1のリソースそれぞれは少なくとも1つの対応するアクセス属性を有し、前記第1のリソースそれぞれの前記アクセス属性は、複数のクライアントのうちの少なくとも1つに関連付けられたアクセス制御情報を有する、前記転送するステップと、
    前記証明書信号と前記複数の第1のリソースそれぞれの少なくとも1つの前記アクセス属性とを比較することにより、前記第2のクライアントにおいて、前記複数の第1のリソースを選択的に検索するステップであって、さらに、
    前記第2のクライアントから許可プロセスへ前記ID信号を転送するステップであって、該許可プロセスは、前記第1のクライアント、前記第2のクライアント及び前記第3のクライアントの外部にある、前記転送するステップと、
    これに応答して、前記許可プロセスから前記第1のクライアントに関連付けられたアクセス制御信号を有する許可信号を受信するステップと、
    前記受信した許可信号が前記複数の第1のリソースそれぞれの少なくとも1つのアクセス属性中のアクセス制御情報と実質的に一致する場合、前記複数の第1のリソースのうちの1つを検索するステップと
    を含む、前記検索するステップと、
    前記リストの第2の部分を含む第2のシード・リストを前記サーバから前記第2のクライアントへ転送するステップであって、前記第2のシード・リストは前記第3のクライアントに対応する第3のクライアント・アドレスを含む、前記転送するステップと、
    前記第2のシード・リストに含まれる第3のクライアント・アドレスに応じて、前記検索要求を前記第2のクライアントから第3のクライアントへ転送するステップであって、前記第3のクライアントは複数の第2のリソースを有し、前記複数の第2のリソースそれぞれは少なくとも1つの対応するアクセス属性を有し、前記第2のリソースそれぞれの前記アクセス属性は、複数のクライアントのうちの少なくとも1つに関連付けられたアクセス制御情報を有する、前記転送するステップと、
    前記証明書信号と前記複数の第2のリソースそれぞれの少なくとも1つの前記アクセス属性とを比較することにより、前記第3のクライアントにおいて、前記複数の第2のリソースを選択的に検索するステップであって、さらに、
    前記第3のクライアントから前記許可プロセスへ前記ID信号を転送するステップと、
    これに応答して、前記許可プロセスから前記第1のクライアントに関連付けられたアクセス制御信号を有する許可信号を受信するステップと、
    前記受信した許可信号が前記複数の第2のリソースそれぞれの少なくとも1つの前記アクセス属性中のアクセス制御情報と実質的に一致する場合、前記複数の第2のリソースのうちの1つを検索するステップと
    を含む、前記検索するステップと
    を含む、前記方法。
  9. 前記複数のクライアントの各々は前記ピアツーピア・ネットワークに、常時、接続している又は前記ピアツーピア・ネットワークから切断されており、
    前記方法は、
    前記サーバにおいて、前記複数のクライアントのうち前記ピアツーピア・ネットワークに接続しているものを確認するステップと、
    前記サーバにおいて、前記接続していると確認された接続クライアントのアドレスのリストを作成するステップと、
    前記サーバにおいて、前記接続クライアントのアドレスのリストから前記第1のシード・リスト及び前記第2のシード・リストを作成するステップと
    を含む、請求項8に記載の方法。
  10. 前記複数のクライアントのうちの1つが前記ピアツーピア・ネットワークに接続したことに応答して、接続信号を前記複数のクライアントのうちの前記1つから前記サーバへ転送するステップと、
    前記サーバにおいて、前記転送された接続信号を受信することに応じて、前記複数のクライアントのうちの前記1つに対応する新たに接続したクライアントのアドレスを接続クライアントのアドレスの前記リストに付加するステップと
    を含む、請求項9に記載の方法。
  11. 複数のクライアントを含むピアツーピア・ネットワークにおいて、第1のクライアントによって開始されたリソース検索を安全に実行する方法であって、前記リソース検索は前記第1のクライアントを表わす証明書信号を有する検索要求に含まれており、前記複数のクライアントは、第1のクライアント、第2のクライアント及び第3のクライアントを含み、前記複数のクライアントそれぞれは、一意のクライアント・アドレスを有し、及び前記サーバは、クライアント・アドレスのリストを有し、
    前記方法は、
    前記検索要求を前記第1のクライアントから前記第2のクライアントへ転送するステップであって、前記第2のクライアントは複数の第1のリソースを有し、前記複数の第1のリソースそれぞれは少なくとも1つの対応するアクセス属性を有する、前記転送するステップと、
    前記リストの第1の部分を含む第1のシード・リストを前記サーバから前記第1のクライアントへ転送するステップであって、前記第1のシード・リストは前記第2のクライアントに対応する第2のクライアント・アドレスを含む、前記転送するステップと、
    前記第1のシード・リストに含まれる第2のクライアント・アドレスに応じて、前記検索要求を前記第1のクライアントから第2のクライアントへ転送するステップであって、前記第2のクライアントは複数の第1のリソースを有し、前記複数の第1のリソースそれぞれは少なくとも1つの対応するアクセス属性を有する、前記転送するステップと、
    前記証明書信号と前記複数の第1のリソースそれぞれの少なくとも1つの前記アクセス属性とを比較することにより、前記第2のクライアントにおいて、前記複数の第1のリソースを選択的に検索するステップであって、さらに、
    前記第2のクライアントから許可プロセスへ前記ID信号を転送するステップであって、該許可プロセスは、前記第1のクライアント、前記第2のクライアント及び前記第3のクライアントの外部にある、前記転送するステップと、
    これに応答して、前記許可プロセスから前記第1のクライアントに関連付けられたアクセス制御信号を有する許可信号を受信するステップと、
    前記受信した許可信号が前記複数の第1のリソースそれぞれの少なくとも1つのアクセス属性と実質的に一致する場合、前記複数の第1のリソースのうちの1つを検索するステップと
    を含む、前記検索するステップと、
    前記検索要求を前記第2のクライアントから前記第3のクライアントへ転送するステップであって、前記第3のクライアントは複数の第2のリソースを有し、前記複数の第2のリソースそれぞれは少なくとも1つの対応するアクセス属性を有する、前記転送するステップと、
    前記リストの第2の部分を含む第2のシード・リストを前記サーバから前記第2のクライアントへ転送するステップであって、前記第2のシード・リストは前記第3のクライアントに対応する第3のクライアント・アドレスを含む、前記転送するステップと、
    前記第2のシード・リストに含まれる第3のクライアント・アドレスに応じて、前記検索要求を前記第2のクライアントから第3のクライアントへ転送するステップであって、前記第3のクライアントは複数の第2のリソースを有し、前記複数の第2のリソースそれぞれは少なくとも1つの対応するアクセス属性を有し、前記第2のリソースそれぞれの前記アクセス属性は、複数のクライアントのうちの少なくとも1つに関連付けられたアクセス制御情報を有する、前記転送するステップと、
    前記証明書信号と前記複数の第2のリソースそれぞれの少なくとも1つの前記アクセス属性とを比較することにより、前記第3のクライアントにおいて、前記複数の第2のリソースを選択的に検索するステップであって、さらに、
    前記第3のクライアントから前記許可プロセスへ前記ID信号を転送するステップと、
    これに応答して、前記許可プロセスから前記第1のクライアントに関連付けられたアクセス制御信号を有する許可信号を受信するステップと、
    前記受信した許可信号が前記複数の第2のリソースそれぞれの少なくとも1つの前記アクセス属性と実質的に一致する場合、前記第3の複数のリソースのうちの1つを検索するステップと
    を含む、前記検索するステップと
    を含む、前記方法。
JP2003577499A 2002-03-15 2003-02-24 ピアツーピア・ネットワークにおけるリソース検索方法 Expired - Fee Related JP4363520B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/098,976 US7120691B2 (en) 2002-03-15 2002-03-15 Secured and access controlled peer-to-peer resource sharing method and apparatus
PCT/GB2003/000776 WO2003079635A1 (en) 2002-03-15 2003-02-24 Secured and access controlled peer-to-peer resource sharing method and apparatus

Publications (2)

Publication Number Publication Date
JP2005521143A JP2005521143A (ja) 2005-07-14
JP4363520B2 true JP4363520B2 (ja) 2009-11-11

Family

ID=28039483

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003577499A Expired - Fee Related JP4363520B2 (ja) 2002-03-15 2003-02-24 ピアツーピア・ネットワークにおけるリソース検索方法

Country Status (9)

Country Link
US (2) US7120691B2 (ja)
JP (1) JP4363520B2 (ja)
KR (1) KR100702427B1 (ja)
CN (1) CN100542166C (ja)
AU (1) AU2003207337A1 (ja)
CA (1) CA2477197A1 (ja)
IL (1) IL164065A0 (ja)
TW (1) TWI221979B (ja)
WO (1) WO2003079635A1 (ja)

Families Citing this family (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7120691B2 (en) * 2002-03-15 2006-10-10 International Business Machines Corporation Secured and access controlled peer-to-peer resource sharing method and apparatus
US7444413B2 (en) * 2002-06-26 2008-10-28 Microsoft Corporation Authorization access controlled content exchange
US20040019640A1 (en) * 2002-07-25 2004-01-29 Bartram Linda Ruth System and method for distributing shared storage for collaboration across multiple devices
US7376749B2 (en) * 2002-08-12 2008-05-20 Sandvine Incorporated Heuristics-based peer to peer message routing
US7549080B1 (en) 2002-08-27 2009-06-16 At&T Corp Asymmetric data mirroring
US7392375B2 (en) * 2002-09-18 2008-06-24 Colligo Networks, Inc. Peer-to-peer authentication for real-time collaboration
US7451217B2 (en) * 2002-12-19 2008-11-11 International Business Machines Corporation Method and system for peer-to-peer authorization
FR2855691B1 (fr) * 2003-06-02 2005-11-11 Canon Kk Securisation de la distribution de documents numeriques dans un reseau pair a pair
US7792915B2 (en) * 2003-06-04 2010-09-07 Sony Computer Entertainment Inc. Content distribution overlay network and methods for operating same in a P2P network
US8009572B2 (en) * 2003-07-16 2011-08-30 Skype Limited Peer-to-peer telephone system
US20050182755A1 (en) * 2004-02-14 2005-08-18 Bao Tran Systems and methods for analyzing documents over a network
WO2005103929A1 (en) * 2004-04-20 2005-11-03 Pluck Corporation Method, system, and computer program product for sharing information within a global computer network
US20050268102A1 (en) * 2004-05-07 2005-12-01 Downey Kyle F Method and system for secure distribution of content over a communications network
US20060095365A1 (en) * 2004-06-29 2006-05-04 Damaka, Inc. System and method for conducting an auction in a peer-to peer network
US8009586B2 (en) 2004-06-29 2011-08-30 Damaka, Inc. System and method for data transfer in a peer-to peer hybrid communication network
US7778187B2 (en) * 2004-06-29 2010-08-17 Damaka, Inc. System and method for dynamic stability in a peer-to-peer hybrid communications network
US7623516B2 (en) * 2004-06-29 2009-11-24 Damaka, Inc. System and method for deterministic routing in a peer-to-peer hybrid communications network
US7570636B2 (en) 2004-06-29 2009-08-04 Damaka, Inc. System and method for traversing a NAT device for peer-to-peer hybrid communications
US20070078720A1 (en) * 2004-06-29 2007-04-05 Damaka, Inc. System and method for advertising in a peer-to-peer hybrid communications network
US20060206310A1 (en) * 2004-06-29 2006-09-14 Damaka, Inc. System and method for natural language processing in a peer-to-peer hybrid communications network
US7656870B2 (en) * 2004-06-29 2010-02-02 Damaka, Inc. System and method for peer-to-peer hybrid communications
US8050272B2 (en) * 2004-06-29 2011-11-01 Damaka, Inc. System and method for concurrent sessions in a peer-to-peer hybrid communications network
US7933260B2 (en) * 2004-06-29 2011-04-26 Damaka, Inc. System and method for routing and communicating in a heterogeneous network environment
US7623476B2 (en) * 2004-06-29 2009-11-24 Damaka, Inc. System and method for conferencing in a peer-to-peer hybrid communications network
US7596690B2 (en) * 2004-09-09 2009-09-29 International Business Machines Corporation Peer-to-peer communications
TWI264658B (en) * 2004-11-04 2006-10-21 Universal Scient Ind Co Ltd Method for universal storage
EP1684481B1 (en) * 2005-01-21 2007-03-14 Research In Motion Limited System and Method for selecting an active connection
JP2006260535A (ja) * 2005-02-15 2006-09-28 Canon Inc 検索処理を実行するための情報処理装置、検索処理方法、及びプログラム
JP4719935B2 (ja) * 2005-03-07 2011-07-06 Kddi株式会社 ハイブリッド型ピア・ツー・ピア通信ネットワークシステム、およびそのインデックスサーバ、ならびに端末装置、同システムにおけるミラーピアの作成方法
US7350074B2 (en) * 2005-04-20 2008-03-25 Microsoft Corporation Peer-to-peer authentication and authorization
DE102005037874B4 (de) * 2005-08-10 2008-07-24 Nokia Siemens Networks Gmbh & Co.Kg Verfahren und Anordnung zur Kontrolle und Vergebührung von Peer to Peer-Diensten in einem IP-basierten Kommunikationsnetzwerk
WO2007033338A2 (en) * 2005-09-14 2007-03-22 O-Ya!, Inc. Networked information indexing and search apparatus and method
US20070086435A1 (en) * 2005-10-19 2007-04-19 Microsoft Corporation Sharing devices on peer-to-peer networks
WO2007049388A1 (ja) * 2005-10-24 2007-05-03 Sony Computer Entertainment Inc. 検索仲介装置、検索仲介方法、分散検索システム、分散処理装置及び分散処理装置の制御方法
US20070168419A1 (en) * 2005-12-19 2007-07-19 Sciammarella Eduardo A System, method, and article of manufacture for a network media channel
US8966537B2 (en) * 2005-12-19 2015-02-24 Eduardo Sciammarella System, method, and article of manufacture for a user interface for a network media channel
JP4396643B2 (ja) * 2006-01-23 2010-01-13 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置、インターフェース情報公開プログラムおよびインターフェース情報公開方法
CN100458721C (zh) * 2006-02-17 2009-02-04 深圳奇峰创智科技有限公司 利用计算机网络自动备份的方法
JP4256897B2 (ja) * 2006-06-16 2009-04-22 インターナショナル・ビジネス・マシーンズ・コーポレーション マッチング・サービスを提供するための装置、方法及びプログラム
US8572387B2 (en) * 2006-07-26 2013-10-29 Panasonic Corporation Authentication of a peer in a peer-to-peer network
US7853150B2 (en) 2007-01-05 2010-12-14 Emcore Corporation Identification and authorization of optoelectronic modules by host system
US20080160911A1 (en) * 2006-12-27 2008-07-03 Goosean Media Inc. P2P-based broadcast system and method using the same
US8181213B2 (en) * 2006-12-27 2012-05-15 Avermedia Technologies, Inc. IP-based hometown TV program delivery system
US20090232032A1 (en) * 2007-01-17 2009-09-17 Verbal World, Inc. Methods and Apparatus for the Manipulation of Conferenced Data
US8122488B2 (en) * 2007-05-18 2012-02-21 Yangaroo, Inc. Media file distribution system and method
US8266323B2 (en) * 2007-06-09 2012-09-11 Apple Inc. System connections and user interfaces
US8296833B2 (en) 2007-06-09 2012-10-23 Apple Inc. System connections and user interfaces
US20080307314A1 (en) * 2007-06-09 2008-12-11 Pavel Cisler System connections and user interfaces
US20080307504A1 (en) * 2007-06-09 2008-12-11 Pavel Cisler System connections and user interfaces
CN101330593B (zh) * 2007-06-22 2011-11-23 中兴通讯股份有限公司 分布式p2p媒体源检索系统
US8619730B2 (en) * 2007-07-20 2013-12-31 Broadcom Corporation Method and system for establishing a connection outside a mesh by including network connectivity information in router configuration messages
US20090037970A1 (en) * 2007-07-31 2009-02-05 Goosean Media Inc. IP-based hometown TV program delivery system
US8271649B2 (en) * 2007-08-30 2012-09-18 Nokia Corporation Access rights used for resource discovery in peer-to-peer networks
CA2701894C (en) 2007-09-03 2015-11-17 Damaka, Inc. Device and method for maintaining a communication session during a network transition
TWI384801B (zh) * 2007-09-07 2013-02-01 Avermedia Tech Inc 使用ip網路實現之電視節目傳送系統
US8862164B2 (en) 2007-09-28 2014-10-14 Damaka, Inc. System and method for transitioning a communication session between networks that are not commonly controlled
US8380859B2 (en) * 2007-11-28 2013-02-19 Damaka, Inc. System and method for endpoint handoff in a hybrid peer-to-peer networking environment
US20090187978A1 (en) * 2008-01-18 2009-07-23 Yahoo! Inc. Security and authentications in peer-to-peer networks
US8254577B2 (en) * 2008-02-20 2012-08-28 International Business Machines Corporation Validation of encryption key
US20090281833A1 (en) * 2008-05-09 2009-11-12 Tele Video Md, Inc. System and method for secure multi-party medical conferencing
US8196186B2 (en) * 2008-05-20 2012-06-05 Microsoft Corporation Security architecture for peer-to-peer storage system
US20100088520A1 (en) * 2008-10-02 2010-04-08 Microsoft Corporation Protocol for determining availability of peers in a peer-to-peer storage system
US9026656B2 (en) 2008-11-04 2015-05-05 Qualcomm Incorporated Resource sharing over wireless personal area networks
US8224962B2 (en) * 2009-11-30 2012-07-17 International Business Machines Corporation Automatic network domain diagnostic repair and mapping
US8874785B2 (en) 2010-02-15 2014-10-28 Damaka, Inc. System and method for signaling and data tunneling in a peer-to-peer environment
US8725895B2 (en) 2010-02-15 2014-05-13 Damaka, Inc. NAT traversal by concurrently probing multiple candidates
US8892646B2 (en) 2010-08-25 2014-11-18 Damaka, Inc. System and method for shared session appearance in a hybrid peer-to-peer environment
US8689307B2 (en) * 2010-03-19 2014-04-01 Damaka, Inc. System and method for providing a virtual peer-to-peer environment
US9043488B2 (en) 2010-03-29 2015-05-26 Damaka, Inc. System and method for session sweeping between devices
US9191416B2 (en) 2010-04-16 2015-11-17 Damaka, Inc. System and method for providing enterprise voice call continuity
US8352563B2 (en) 2010-04-29 2013-01-08 Damaka, Inc. System and method for peer-to-peer media routing using a third party instant messaging system for signaling
US8446900B2 (en) 2010-06-18 2013-05-21 Damaka, Inc. System and method for transferring a call between endpoints in a hybrid peer-to-peer network
US8611540B2 (en) 2010-06-23 2013-12-17 Damaka, Inc. System and method for secure messaging in a hybrid peer-to-peer network
DE102010039519A1 (de) * 2010-08-19 2012-02-23 Siemens Aktiengesellschaft System mit einem Produktivsystem und einem Prototypsystem, sowie ein Verfahren hierzu
US8468010B2 (en) 2010-09-24 2013-06-18 Damaka, Inc. System and method for language translation in a hybrid peer-to-peer environment
US8743781B2 (en) 2010-10-11 2014-06-03 Damaka, Inc. System and method for a reverse invitation in a hybrid peer-to-peer environment
US8930469B2 (en) 2011-02-02 2015-01-06 Microsoft Corporation Functionality for sharing items using recipient-specific access codes
US8407314B2 (en) 2011-04-04 2013-03-26 Damaka, Inc. System and method for sharing unsupported document types between communication devices
US10406791B2 (en) * 2011-05-12 2019-09-10 Elantas Pdg, Inc. Composite insulating film
US8694587B2 (en) 2011-05-17 2014-04-08 Damaka, Inc. System and method for transferring a call bridge between communication devices
US8478890B2 (en) 2011-07-15 2013-07-02 Damaka, Inc. System and method for reliable virtual bi-directional data stream communications with single socket point-to-multipoint capability
CN102271165B (zh) * 2011-09-06 2014-02-12 中国电信股份有限公司 互联网搜索资源的分享管理装置及方法
KR20130029190A (ko) * 2011-09-14 2013-03-22 삼성전자주식회사 사용자 자원 접근 제어 시스템 및 방법
US20130110920A1 (en) * 2011-10-27 2013-05-02 Alcatel-Lucent Usa Inc. Network-assisted peer-to-peer secure communication establishment
GB2500720A (en) * 2012-03-30 2013-10-02 Nec Corp Providing security information to establish secure communications over a device-to-device (D2D) communication link
US8811950B2 (en) * 2012-03-30 2014-08-19 Qualcomm Incorporated Methods and apparatus for controlling devices with no or limited WWAN capability in peer to peer communication
CN103200045B (zh) * 2013-03-22 2016-04-20 汉柏科技有限公司 一种基于实时行为特征识别p2p流量的方法
US9027032B2 (en) 2013-07-16 2015-05-05 Damaka, Inc. System and method for providing additional functionality to existing software in an integrated manner
US9467450B2 (en) * 2013-08-21 2016-10-11 Medtronic, Inc. Data driven schema for patient data exchange system
US9357016B2 (en) 2013-10-18 2016-05-31 Damaka, Inc. System and method for virtual parallel resource management
WO2016022574A1 (en) 2014-08-05 2016-02-11 Damaka, Inc. System and method for providing unified communications and collaboration (ucc) connectivity between incompatible systems
US10250698B2 (en) * 2014-08-25 2019-04-02 Futurewei Technologies, Inc. System and method for securing pre-association service discovery
CN106295410B (zh) * 2015-06-05 2019-04-12 宇龙计算机通信科技(深圳)有限公司 双系统下载文件的方法及其装置
US10091025B2 (en) 2016-03-31 2018-10-02 Damaka, Inc. System and method for enabling use of a single user identifier across incompatible networks for UCC functionality
US10382355B2 (en) 2016-06-02 2019-08-13 Electronics And Telecommunications Research Institute Overlay management server and operating method thereof
CN106790262B (zh) * 2017-02-07 2022-02-11 腾讯科技(深圳)有限公司 一种鉴权方法及装置
CN110710171B (zh) * 2017-03-28 2021-12-21 依斯塔国际有限公司 信号通信系统
US10853115B2 (en) 2018-06-25 2020-12-01 Amazon Technologies, Inc. Execution of auxiliary functions in an on-demand network code execution system
US11099870B1 (en) 2018-07-25 2021-08-24 Amazon Technologies, Inc. Reducing execution times in an on-demand network code execution system using saved machine states
US11943093B1 (en) 2018-11-20 2024-03-26 Amazon Technologies, Inc. Network connection recovery after virtual machine transition in an on-demand network code execution system
US11861386B1 (en) * 2019-03-22 2024-01-02 Amazon Technologies, Inc. Application gateways in an on-demand network code execution system
US11119809B1 (en) 2019-06-20 2021-09-14 Amazon Technologies, Inc. Virtualization-based transaction handling in an on-demand network code execution system
US11714682B1 (en) 2020-03-03 2023-08-01 Amazon Technologies, Inc. Reclaiming computing resources in an on-demand code execution system
US11593270B1 (en) 2020-11-25 2023-02-28 Amazon Technologies, Inc. Fast distributed caching using erasure coded object parts
US11550713B1 (en) 2020-11-25 2023-01-10 Amazon Technologies, Inc. Garbage collection in distributed systems using life cycled storage roots
TWI750973B (zh) * 2020-12-25 2021-12-21 扉睿科技股份有限公司 基於安全導向暨群組分享之物聯網系統
US11902343B1 (en) 2021-04-19 2024-02-13 Damaka, Inc. System and method for highly scalable browser-based audio/video conferencing
US11770584B1 (en) 2021-05-23 2023-09-26 Damaka, Inc. System and method for optimizing video communications based on device capabilities
CN116776016B (zh) * 2023-06-06 2024-02-27 广东保伦电子股份有限公司 一种无需注册特定人员访问浏览器页面的实现方法及终端

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5216162A (en) * 1992-08-28 1993-06-01 American Home Products Corporation Substituted pyrrolo[3,2-c]quinolines
US5469575A (en) * 1992-10-16 1995-11-21 International Business Machines Corporation Determining a winner of a race in a data processing system
WO1996032685A1 (en) * 1995-04-11 1996-10-17 Kinetech, Inc. Identifying data in a data processing system
US5586121A (en) * 1995-04-21 1996-12-17 Hybrid Networks, Inc. Asymmetric hybrid access system and method
US6041343A (en) * 1996-12-19 2000-03-21 International Business Machines Corp. Method and system for a hybrid peer-server communications structure
US6098091A (en) * 1996-12-30 2000-08-01 Intel Corporation Method and system including a central computer that assigns tasks to idle workstations using availability schedules and computational capabilities
US6233686B1 (en) 1997-01-17 2001-05-15 At & T Corp. System and method for providing peer level access control on a network
US5944783A (en) * 1997-07-29 1999-08-31 Lincom Corporation Apparatus and method for data transfers through software agents using client-to-server and peer-to-peer transfers
US5960404A (en) * 1997-08-28 1999-09-28 International Business Machines Corp. Mechanism for heterogeneous, peer-to-peer, and disconnected workflow operation
JP2000112860A (ja) * 1998-10-01 2000-04-21 Mitsubishi Electric Corp 安全な情報発信・共有サービス方法
US6216162B1 (en) 1998-10-19 2001-04-10 International Business Machines Corp. Extending alias support to heterogeneous servers
WO2001013201A2 (en) * 1999-08-12 2001-02-22 Sarnoff Corporation Peer-to-peer network user authentication protocol
US20020049760A1 (en) * 2000-06-16 2002-04-25 Flycode, Inc. Technique for accessing information in a peer-to-peer network
US6647448B1 (en) * 2000-06-29 2003-11-11 Sony Corporation Method and apparatus for managing resource schedules in a peer to peer distributed networking environment
US7072982B2 (en) * 2000-11-22 2006-07-04 Microsoft Corporation Universal naming scheme for peer to peer resources
AU2002234258A1 (en) * 2001-01-22 2002-07-30 Sun Microsystems, Inc. Peer-to-peer network computing platform
US20020116533A1 (en) * 2001-02-20 2002-08-22 Holliman Matthew J. System for providing a multimedia peer-to-peer computing platform
US7721110B2 (en) * 2001-04-06 2010-05-18 Mcafee, Inc. System and method for secure and verified sharing of resources in a peer-to-peer network environment
US7062555B1 (en) * 2001-04-06 2006-06-13 Networks Associates Technology, Inc. System and method for automatic selection of service provider for efficient use of bandwidth and resources in a peer-to-peer network environment
US7272636B2 (en) * 2001-04-24 2007-09-18 Sun Microsystems, Inc. Peer group name server
US7013303B2 (en) * 2001-05-04 2006-03-14 Sun Microsystems, Inc. System and method for multiple data sources to plug into a standardized interface for distributed deep search
US20030065774A1 (en) * 2001-05-24 2003-04-03 Donald Steiner Peer-to-peer based distributed search architecture in a networked environment
US20020198929A1 (en) * 2001-06-25 2002-12-26 International Business Machines Corporation Method and apparatus to encourage client into a distributed peer to peer sharing technology
US7440994B2 (en) * 2001-07-06 2008-10-21 Intel Corporation Method and apparatus for peer-to-peer services to shift network traffic to allow for an efficient transfer of information between devices via prioritized list
US20030028610A1 (en) * 2001-08-03 2003-02-06 Pearson Christopher Joel Peer-to-peer file sharing system and method using user datagram protocol
US20030088571A1 (en) * 2001-11-08 2003-05-08 Erik Ekkel System and method for a peer-to peer data file service
US7120691B2 (en) * 2002-03-15 2006-10-10 International Business Machines Corporation Secured and access controlled peer-to-peer resource sharing method and apparatus

Also Published As

Publication number Publication date
TW200401201A (en) 2004-01-16
KR20040089664A (ko) 2004-10-21
US7120691B2 (en) 2006-10-10
US7475139B2 (en) 2009-01-06
CN1762138A (zh) 2006-04-19
AU2003207337A1 (en) 2003-09-29
KR100702427B1 (ko) 2007-04-04
US20070016655A1 (en) 2007-01-18
IL164065A0 (en) 2005-12-18
CN100542166C (zh) 2009-09-16
US20030177186A1 (en) 2003-09-18
JP2005521143A (ja) 2005-07-14
CA2477197A1 (en) 2003-09-25
TWI221979B (en) 2004-10-11
WO2003079635A1 (en) 2003-09-25

Similar Documents

Publication Publication Date Title
JP4363520B2 (ja) ピアツーピア・ネットワークにおけるリソース検索方法
US7130921B2 (en) Centrally enhanced peer-to-peer resource sharing method and apparatus
Trautwein et al. Design and evaluation of IPFS: a storage layer for the decentralized web
US7213047B2 (en) Peer trust evaluation using mobile agents in peer-to-peer networks
US8108455B2 (en) Mobile agents in peer-to-peer networks
US8037202B2 (en) Presence detection using mobile agents in peer-to-peer networks
US7328243B2 (en) Collaborative content coherence using mobile agents in peer-to-peer networks
CN101068245B (zh) 共享文件的发布、下载方法及文件共享可控系统
US7275102B2 (en) Trust mechanisms for a peer-to-peer network computing platform
US8554827B2 (en) Virtual peer for a content sharing system
US20040088348A1 (en) Managing distribution of content using mobile agents in peer-topeer networks
US10356153B2 (en) Transferring session data between network applications accessible via different DNS domains
US20050216473A1 (en) P2P network system
US20050044146A1 (en) Protection of the distribution of digital documents in a peer to peer network
JP2010505201A (ja) セキュア・ピアツーピア・キャッシュ共有
JP2001521717A (ja) ダイナミック・グループ・レジストリ装置及び方法
CA2506536A1 (en) Method and system for peer-to-peer authorization
JP2002511961A (ja) ユニバーサルドメインルーティング及び発行制御システム
JP2008533879A (ja) 身元情報とディレクトリ管理とを備える通信方法及びシステム
US9325679B2 (en) Method and apparatus for communicating information between devices
Verma Legitimate applications of peer-to-peer networks
US20060026216A1 (en) Server-assited communication among clients
JP2004023597A (ja) ネットワークシステムおよびプログラム
Shen et al. Freeweb: P2p-assisted collaborative censorship-resistant web browsing
Tsesmetzis et al. Distributed search in P2P networks through secure-authenticated content management systems (CMSs)

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080729

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081006

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20081006

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20081006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20081007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090311

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090513

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090513

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090805

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090805

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20090805

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090811

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120828

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees