(57)【要約】【課題】ユーザ・ノードのネットワーク中の要求側ユーザ・ノードからの資源要求に応答する方法を提供すること。【解決手段】この方法によれば、資源要求に対する応答がネットワークの第１ユーザ・ノードで受信され、要求側ユーザ・ノードに応答を送り戻すか否かが（例えばランダムに）判定される。要求側ユーザ・ノードに応答を送信しないと判定されるとき、直接接続を介してネットワークの第２ユーザ・ノードに応答が転送される。要求側ユーザ・ノードに応答を送信すると判定されるとき、応答が要求側ユーザ・ノードに送り戻される。直接接続を介して他のユーザ・ノードにそれぞれ接続されるユーザ・ノードを有するコンピュータ・ネットワークで使用されるユーザ・ノードも提供される。
2005501311.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ・ノードのネットワーク中の要求側ユーザ・ノードからの資源要求に応答する方法であって、
前記ネットワークの第１ユーザ・ノードで前記資源要求に対する応答を受信するステップと、
前記応答を前記要求側ユーザ・ノードに送り戻すか否かを判定するステップと、
前記応答を前記要求側ユーザ・ノードに送信しないと判定したとき、直接接続を介して前記応答を前記ネットワークの第２ユーザ・ノードに転送するステップと、
前記応答を前記要求側ユーザ・ノードに送信すると判定したとき、前記応答を前記要求側ユーザ・ノードに送り戻すステップと
を含む方法。
【請求項２】
前記判定するステップにおいて、前記応答を前記要求側ユーザ・ノードに送信するか否かについての前記判定が、前記第１ユーザ・ノードによって行われるランダムな判定である請求項１に記載の方法。
【請求項３】
前記判定するステップにおいて、前記ランダムな判定が、前記第１ユーザ・ノードが前記応答を前記要求側ユーザ・ノードに送り戻すと判定する確率に対応する重み因子に基づいて行われる請求項２に記載の方法。
【請求項４】
前記転送するステップが、
前記第２ユーザ・ノードとなる、前記第１ユーザ・ノードが接続されるユーザ・ノードのうち１つをランダムに選択するステップと、
前記第１ユーザ・ノードからの前記応答を、直接接続を介して前記第２ユーザ・ノードに転送するステップと
を含む請求項１に記載の方法。
【請求項５】
前記判定するステップにおいて、前記応答を受信したユーザ・ノードが前記応答を前記要求側ユーザ・ノードに送り戻すと判定するまで、判定する前記ステップおよび転送する前記ステップを反復するステップをさらに含む請求項１に記載の方法。
【請求項６】
前記応答を前記要求側ユーザ・ノードに送り戻す前記ステップが、
先に公開を求めて前記資源要求をサーバ・ノードに送信した前記ネットワークの第３ユーザ・ノードに、直接接続を介して前記応答を直接送信するステップと、
前記第３ユーザ・ノードから前記要求側ユーザ・ノードに前記応答を伝播させるステップと
を含む請求項１に記載の方法。
【請求項７】
前記応答を前記要求側ユーザ・ノードに送り戻す前記ステップが、
先に公開を求めて前記資源要求を前記サーバ・ノードに送信した前記ネットワークの第３ユーザ・ノードに、サーバ・ノードを介して前記応答を送信するステップと、
前記第３ユーザ・ノードから前記要求側ユーザ・ノードに前記応答を伝播させるステップと
を含む請求項１に記載の方法。
【請求項８】
前記応答が、要求された資源を含む請求項１に記載の方法。
【請求項９】
前記ネットワークの第３ユーザ・ノードで前記資源要求を受信するステップと、
前記資源要求をサーバ・ノードに送信するか否かを判定するステップと、
前記資源要求を前記サーバ・ノードに送信しないと判定したとき、直接接続を介して前記資源要求を前記ネットワークの第４ユーザ・ノードに転送するステップと、
前記資源要求を前記サーバ・ノードに送信すると判定したとき、公開を求めて前記資源要求を前記サーバ・ノードに送信するステップと
をさらに含む請求項１に記載の方法。
【請求項１０】
判定する各ステップにおいて、前記判定がランダムな判定である請求項９に記載の方法。
【請求項１１】
前記資源要求を転送する前記ステップが、
前記第４ユーザ・ノードとなる、前記第３ユーザ・ノードが接続されるユーザ・ノードのうち１つをランダムに選択するステップと、
前記第３ユーザ・ノードからの前記資源要求を、直接接続を介して前記第４ユーザ・ノードに転送するステップと
を含み、
前記応答を転送する前記ステップが、
前記第２ユーザ・ノードとなる、前記第１ユーザ・ノードが接続されるユーザ・ノードのうち１つをランダムに選択するステップと、
前記第１ユーザ・ノードからの前記応答を、直接接続を介して前記第２ユーザ・ノードに転送するステップと
を含む請求項９に記載の方法。
【請求項１２】
前記サーバ・ノードを介して前記ネットワークの前記ユーザ・ノードの少なくとも一部に前記資源要求を公開するステップをさらに含む請求項９に記載の方法。
【請求項１３】
ユーザ・ノードのネットワーク中の要求側ユーザ・ノードからの資源要求に応答するためのプログラムで符号化された機械可読媒体であって、前記プログラムが、
前記ネットワークの第１ユーザ・ノードで前記資源要求に対する応答を受信するステップと、
前記応答を前記要求側ユーザ・ノードに送り戻すか否かを判定するステップと、
前記応答を前記要求側ユーザ・ノードに送信しないと判定したとき、直接接続を介して前記応答を前記ネットワークの第２ユーザ・ノードに転送するステップと、
前記応答を前記要求側ユーザ・ノードに送信すると判定したとき、前記応答を前記要求側ユーザ・ノードに送り戻すステップと
を実行する命令を含む機械可読媒体。
【請求項１４】
前記判定するステップにおいて、前記応答を前記要求側ユーザ・ノードに送信するか否かについての前記判定が、前記第１ユーザ・ノードによって行われるランダムな判定である請求項１３に記載の機械可読媒体。
【請求項１５】
前記判定するステップにおいて、前記ランダムな判定が、前記第１ユーザ・ノードが前記応答を前記要求側ユーザ・ノードに送り戻すと判定する確率に対応する重み因子に基づいて行われる請求項１４に記載の機械可読媒体。
【請求項１６】
前記転送するステップが、
前記第２ユーザ・ノードとなる、前記第１ユーザ・ノードが接続されるユーザ・ノードのうち１つをランダムに選択するステップと、
前記第１ユーザ・ノードからの前記応答を、直接接続を介して前記第２ユーザ・ノードに転送するステップと
を含む請求項１３に記載の機械可読媒体。
【請求項１７】
前記プログラムが、前記判定するステップにおいて、前記応答を受信したユーザ・ノードが前記応答を前記要求側ユーザ・ノードに送り戻すと判定するまで、判定する前記ステップおよび転送する前記ステップを反復するステップを実行する命令をさらに含む請求項１３に記載の機械可読媒体。
【請求項１８】
前記応答を前記要求側ユーザ・ノードに送り戻す前記ステップが、
先に公開を求めて前記資源要求をサーバ・ノードに送信した前記ネットワークの第３ユーザ・ノードに、直接接続を介して前記応答を直接送信するステップと、
前記第３ユーザ・ノードから前記要求側ユーザ・ノードに前記応答を伝播させるステップと
を含む請求項１３に記載の機械可読媒体。
【請求項１９】
前記応答を前記要求側ユーザ・ノードに送り戻す前記ステップが、
先に公開を求めて前記資源要求を前記サーバ・ノードに送信した前記ネットワークの第３ユーザ・ノードに、サーバ・ノードを介して前記応答を送信するステップと、
前記第３ユーザ・ノードから前記要求側ユーザ・ノードに前記応答を伝播させるステップと
を含む請求項１３に記載の機械可読媒体。
【請求項２０】
前記応答が、要求された資源を含む請求項１３に記載の機械可読媒体。
【請求項２１】
複数のユーザ・ノードを含むタイプのコンピュータ・ネットワークで使用するためのユーザ・ノードであって、それぞれが直接接続を介して少なくとも１つの他のユーザ・ノードに接続され、
要求側ユーザ・ノードからの資源要求に対する応答を受信する受信インターフェースと、
前記応答を前記要求側ユーザ・ノードに送り戻すか否かを判定する制御手段と、
選択的に、直接接続を介して前記応答を前記ネットワークの第２ユーザ・ノードに転送し、または前記応答を前記要求側ユーザ・ノードに送り戻す少なくとも１つの送信インターフェースとを備え、
前記送信インターフェースが、前記応答を前記要求側ユーザ・ノードに送り戻さないと前記制御手段が判定したときに前記応答を前記第２ユーザ・ノードに転送し、前記応答を前記要求側ユーザ・ノードに送り戻すと前記制御手段が判定したときに前記応答を前記要求側ユーザ・ノードに送り戻すユーザ・ノード。
【請求項２２】
前記制御手段が、前記応答を前記要求側ユーザ・ノードに送り戻すか否かをランダムに判定する請求項２１に記載のユーザ・ノード。
【請求項２３】
前記制御手段が、重み因子に基づいてランダムに判定する請求項２１に記載のユーザ・ノード。
【請求項２４】
前記制御手段が、前記応答が転送される前記第２ユーザ・ノードとなる、前記ネットワークの他のユーザ・ノードのうち１つをランダムに選択する請求項２１に記載のユーザ・ノード。
【請求項２５】
前記送信インターフェースが、先に公開を求めて前記資源要求をサーバ・ノードに送信した前記ネットワークの第３ユーザ・ノードに直接接続を介して前記応答を直接送信し、それによって次いで前記応答が、前記第３ユーザ・ノードから前記要求側ユーザ・ノードに伝播することができるようにすることにより、前記要求側ユーザ・ノードに前記応答を送り戻す請求項２１に記載のユーザ・ノード。
【請求項２６】
前記送信インターフェースが、先に公開を求めて前記資源要求をサーバ・ノードに送信した前記ネットワークの第３ユーザ・ノードにサーバ・ノードを介して前記応答を送信し、それによって次いで前記応答が、前記第３ユーザ・ノードから前記要求側ユーザ・ノードに伝播することができるようにすることにより、前記要求側ユーザ・ノードに前記応答を送り戻す請求項２１に記載のユーザ・ノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータ・ネットワークに関し、より詳細には、分散コンピュータ・ネットワーク内の資源要求に応答するシステムおよび方法に関する。
【背景技術】
【０００２】
インターネットなどのコンピュータ・ネットワークは、ユーザがファイルやハードウェアなどの資源を共用することを可能にする。インターネットの拡大と、ワールド・ワイド・ウェブ用の規格の採用により、ユーザがほとんど労力を払うことなくファイルを閲覧し、ダウンロードできるようになった。ユーザは、プログラミング言語を知っている必要はない。単にインターネット・ブラウザを実行すれば、ユーザが所望のファイルを閲覧し、ダウンロードするのに必要なのは、ポイントし、クリックすることだけである。そのようなプログラムが利用可能であることにより、事実上地球全体に広がる分散コンピュータ・ネットワークを介して、遠距離で隔てられた同じ考えを持つ人々の間で共同作業やファイルの共用が容易となる。
【０００３】
従来の方式では、分散コンピュータ・ネットワークは、クライアント／サーバ・フレームワークを有するようにセットアップされる。具体的には、各ユーザは、ネットワークを介してサーバ・ノードにアクセスすることができ、適切な権限を用いてサーバ・ノードにファイルを公開することができるクライアントである。ファイルをサーバ・ノードに公開すると、ネットワーク上の他のクライアントが、サーバ・ノードにアクセスしてファイルを閲覧またはダウンロードすることができる。加えて、サーバ・ノードにより、クライアントが、ネットワークを介して到達可能な他のクライアントにファイルを自動的に送信することが可能となる。クライアントは単に、所望の受信側を識別する情報と共にファイルをサーバ・ノードに送信し、サーバ・ノードは、そのファイルを対応するクライアントに送信する。サーバ・ノードを使用して、プリンタなどのハードウェア資源を各クライアントが共用できるようにすることもできる。
【０００４】
そのようなクライアント／サーバ・フレームワークでは、セキュリティを提供することがサーバ・ノードに委ねられる。例えば、サーバ・ノードは、許可されたクライアントだけがネットワーク資源を使用する（例えばファイルをダウンロードする）ことができ、適切なファイルだけが公開されることを保証しなければならない。加えて、サーバ・ノードは単一障害点を表す。したがって、信頼性が要求されるどんなクライアント／サーバ環境においても、サーバ・ノードは産業用強度を有さなければならず、かつシステム・シャットダウンやデータ紛失を防止するために冗長なシステムを有さなければならない。さらに、クライアントからクライアントへのすべての資源転送がサーバ・ノードを通過するので、別のクライアントをネットワークに追加することは、サーバ・ノードにとって追加の負担となり、ネットワーク性能が損なわれる。
【０００５】
そのようなクライアント／サーバ・フレームワークでは、クライアントはほとんどプライバシーを有さない。通常、サーバ・ノードは、クライアントがネットワーク資源にアクセスすることを許可する前に認証を要求する。クライアントが認証証明書を提供すると、サーバ・ノードは、クライアントのネットワーク活動のすべてを容易に記録することができる。例えば、サーバ・ノードは、クライアントがアップロードおよびダウンロードしたすべてのファイルのログを維持することができる。非認証クライアントによるアクセスが許可される場合であっても、サーバ・ノードは、様々な独自の識別技法のいずれかを用いて、経時的にクライアントの活動を追跡することができる。例えば、サーバ・ノードは、独自のクッキーをクライアント上に配置することができ、後にクッキーを使用して、クライアントがサーバにアクセスするたびにクライアントを識別することができる。
【０００６】
従来のクライアント／サーバ・フレームワークの欠点のいくつかに対する解決策は、「バイラル」ネットワークによって得られる。そのようなネットワークでは、ユーザ・ノードが、高度に相互接続された仮想ネットワークに参加している１つまたは複数の既知のホストに接続する。次いで、ユーザ・ノード自体が、資源や使用可能なホストを求める要求に応答することができるホスト・ノードとなる。ネットワーク中の各ユーザは、既知のすべての近隣ノードに資源要求を転送し、それによって、潜在的にネットワーク全体にわたって各要求が伝播する。例えば、Gnutellaシステムはそのようなバイラル・ネットワーク・フレームワークを利用する。Gnutellaは、公開されたネットワーク・プロトコルを有し、各ユーザがファイル共用ネットワーク中のホスト・ノードとして振る舞うことを可能にするクライアント／サーバ・アプリケーション（http://Gnutella.wego.comから入手可能）をユーザに提供する。暗号化およびライセンス交付によって保護された市販のコンテンツを安全に配布するためにGnutellaシステムを使用することができる。
【０００７】
バイラル・ネットワークはピアツーピア通信に基づく。ピアツーピアは、各パーティが同様の機能を有し、どちらのパーティも通信セッションを開始することができる通信モデルである。例えば、Gnutellaアプリケーションはピアツーピア通信を使用して、インターネットを介して各ユーザが互いにファイルを交換することを可能にする。バイラル・ネットワークで使用されるピアツーピア・モデルは、ネットワーク中の他のピアのうち少なくとも１つについての知識を有する各ピア（すなわちユーザ・ノード）に依拠する。ファイルなどの資源を探索するとき、ピアは、他の既知のピアに対して資源要求を送信し、他の既知のピアは、そのピアにとって既知のピアに資源要求を渡し、以下同様に続いて、ネットワーク全体にわたって要求が伝播する。資源を有し、かつ要求を受信したピアは、資源（またはその可用性を示すメッセージ）を要求側ピアに送り戻すことができる。そのようなフレームワークは、中央ネットワーク機関（すなわちサーバ・ノード）とは無関係であるので、バイラル・ネットワーク中のユーザのプライバシーが向上し、単一障害点が解消される。
【０００８】
図１に例示的バイラル・ネットワークを示す。ネットワーク中の各ノードは、クライアントとホストのどちらとしても振る舞うユーザを表し、１つまたは複数の他のノードと接続される。第１ノード２１０が特定の資源（例えばファイル）を希望するとき、第１ノード２１０は既知のすべてのノード２０２、２０４、２０６、および２０８に対して要求を公開し、それらのノードも同じことを行う。例えば要求は、ノード２０８、２１６、および２１８を介して次々と渡されることによって第２ノード２１２に到達する。要求された資源を第２ノード２１２が有する場合、第２ノード２１２は、適切なメッセージを（例えば、要求が来たのと同じ経路を戻って）第１ノード２１０に送信することによって応答する。要求された資源を有するノードが識別されたので、第１ノード２１０は、資源をダウンロードするために第２ノード２１２と直接ピアツーピア接続を開始することができる。バイラル・ネットワーク全体にわたって、そのような任意の数の資源要求、肯定応答、および転送を同時に行うことができる。
【０００９】
バイラル・ネットワークはプライバシーを改善し、かつ単一障害点を解消するが、このフレームワークはスケーラビリティに関する欠点を有する。大規模な非集中型バイラル・ネットワークでは、参加ノードの数が増加するときに、効率的な資源発見が破綻する。より具体的には、資源要求が伝播することができるのはノード間のみであり、各ノードが要求を伝播させるのは、比較的少数の他のノードに対してだけである。ネットワーク・トラフィックを制御し、応答時間が不合理となるのを防止するため、実際のシステムは、「存続時間（time-to-live）」、または要求を転送することができる回数に関する何らかの制限（すなわち、ピア・ホップの最大数）を使用しなければならない。これにより、不合理に多数の中間ノードを介して要求が伝播することが必要な経路によって分離した任意の２つのノード、またはノードのグループが事実上切断される。さらに、要求の伝播に関するそのような任意の制限により、資源を求める網羅的な探索が不可能となる。そのような探索は、ネットワーク中のノードのすべてに要求を伝播させることが必要となるからである。
【００１０】
加えて、情報フロー・グラフを利用するコンテンツ・ベースの公開／加入メッセージ交換インフラストラクチャ（publish-subscribe messaging infrastructure）が最近提案された。例えば、本発明の譲受人により、Gryphonシステム（http://www.research.ibm.com/Gryphonで説明されている）が開発された。このシステムは、分散公開／加入通信とデータベース技術の機能を組み合わせることにより、コンテンツ・ベースの加入サービスを提供し、メッセージ・ブローカリングを実施する。Gryphonシステムの中核は、イベントの選択的送達、イベントの変換、および新しいイベントの生成を指定する情報フロー・グラフである。
【００１１】
図２に、情報フロー・グラフを使用する例示的なコンテンツ・ベースの公開／加入メッセージ交換インフラストラクチャを示す。このシステムでは、２つの情報源ＮＹＳＥおよびＮＡＳＤＡＱから得られる証券取引が組み合わされ、変換され、フィルタされ、加入クライアントに送達される。例えば、あるユーザ３１２はメッセージ・ブローカリング・サーバ３０２に加入して、ＮＹＳＥとＮＡＳＤＡＱの両方についての、１００万ドルを超える値を有するすべての証券取引を受信することを要求することができる。メッセージ・ブローカ３０２は、ＮＹＳＥ  ３２４とＮＡＳＤＡＱ  ３２６から、価格や出来高などの生の証券取引情報を受信する。
【００１２】
ユーザ３１２の情報要求に基づいて、サーバ３０２は、２つの情報源からの証券取引情報を組み合わせ、生の価格情報および出来高情報を各取引についての値情報に変換し、次いで得られた値をフィルタして、１００万ドル超と評価される取引の部分集合を生成する。同様にして、各加入ユーザ（例えばノード３０４、３０６、および３０８）は、各加入ユーザ自身の基準を指定し、メッセージ・ブローカリング・サーバ３０２が、要求された情報を各ユーザに提供するために情報選択、変換、フィルタリング、および送達を実施する。
【発明の開示】
【発明が解決しようとする課題】
【００１３】
図２の公開／加入メッセージ交換インフラストラクチャは、多数のユーザを有するメッセージ交換システムに対して良好なスケーラビリティを提供するが、従来のクライアント／サーバ・フレームワークと同様に、ユーザはプライバシーをほとんど有さない。すべてのユーザは、システムに加入し、すべての情報が中央サーバを介してユーザに送達されるときにユーザ自身を明らかにしなければならない。したがって、中央サーバは、システムの全ユーザのログと、それぞれが希望し、受信する正確な情報とを容易に維持することができる。中央メッセージ・ブローカリング・サーバはまた、システムについての単一障害点を表す。
【課題を解決するための手段】
【００１４】
本発明の一実施形態は、ユーザ・ノードのネットワーク中の要求側ユーザ・ノードからの資源要求に応答する方法を提供する。この方法によれば、資源要求に対する応答がネットワークの第１ユーザ・ノードで受信され、要求側ユーザ・ノードに応答を送り戻すか否かが判定される。要求側ユーザ・ノードに応答を送信しないと判定されるとき、直接接続を介してネットワークの第２ユーザ・ノードに応答が転送される。要求側ユーザ・ノードに応答を送信すると判定されるとき、応答が要求側ユーザ・ノードに送り戻される。好ましい実施形態では、要求側ユーザ・ノードに応答を送信するか否かについての判定は、第１ユーザ・ノードによって行われるランダムな判定である。
【００１５】
本発明の別の実施形態は、直接接続を介して少なくとも１つの他のユーザ・ノードにそれぞれ接続されるユーザ・ノードを含むタイプのコンピュータ・ネットワークで使用されるユーザ・ノードを提供する。このユーザ・ノードは、要求側ユーザ・ノードからの資源要求に対する応答を受信する受信インターフェースと、要求側ユーザ・ノードに応答を送り戻すか否かを判定する制御手段と、選択的に、直接接続を介してネットワークの第２ユーザ・ノードに応答を転送し、または要求側ユーザ・ノードに応答を送り戻す少なくとも１つの送信インターフェースとを含む。送信インターフェースは、制御手段が要求側ユーザ・ノードに応答を送り戻さないと判定したとき、第２ユーザ・ノードに応答を転送し、制御手段が要求側ユーザ・ノードに応答を送り戻すと判定したとき、要求側ユーザ・ノードに応答を送り戻す。ある好ましい実施形態では、制御手段は、応答が転送される第２ユーザ・ノードとなる、ネットワークの他のユーザ・ノードのうち１つをランダムに選択する。
【発明を実施するための最良の形態】
【００１６】
図３に、本発明の好ましい実施形態によるスケーラブル・ネットワーク・フレームワークを示す。図示するように、このフレームワークは公開／加入サーバ・ノード４０２と、複数のユーザ・ノード（例えば４０４、４０６、および４１０）を含む。本発明の実施形態では、単一のサーバによって、または任意の数のサーバから構成される「サーバ・クラウド（server cloud）」によってサーバ・ノード４０２を実装することができる。適切なレベルのサービスと、データや経路冗長度などの有利な特徴とを提供するようにこのようなサーバ・クラウドの個々のサーバを互いに接続することができ、様々な方式でインターネットに接続することができ、さらには遠距離に分離することができる。
【００１７】
このフレームワーク内では、ユーザ・ノード４１６は、公開／加入サーバ・ノード４０２と連絡を取り、かつメッセージのある「チャネル」に加入することによってネットワークに加入する。加えて、加入側ユーザ・ノード４１６は接続を請求し、次いで（例えば、地理的位置、接続速度、共通の関心などの何らかの基準に基づいて）少なくとも１つの他のユーザ・ノード４１０、４１８、および４２０と直接接続する。このようにして、ネットワーク中のユーザ・ノードのすべては、メッセージ交換のために中央公開／加入サーバ・ノードに接続され（図が見やすいように図示していない）、かつ非集中型バイラル・タイプ資源共用ネットワークを形成するピアツーピア接続を介して互いに接続される。
【００１８】
図４は、本発明の第１実施形態によるそのようなスケーラブル・ネットワーク・フレームワーク内の資源を得るプロセスの流れ図である。ネットワーク中の第１ユーザ・ノード４１６が資源（例えばファイル）を希望するときはいつでも、資源要求（または照会）がサーバ・ノード４０２に送信され（ステップＳ１０）、サーバ・ノード４０２は、そのタイプの要求に対応するチャネルに加入しているユーザ・ノードのすべてに資源要求を送信することによって資源要求を公開する（ステップＳ１２）。要求を受信して、資源を提供しようとする第２ユーザ・ノード４２２は第１ユーザ・ノード４１６と連絡を取り（ステップＳ１４）、第１ユーザ・ノード４１６と第２ユーザ・ノード４２２がピアツーピア接続をセットアップして、要求された資源が第１ユーザ・ノード４１６に提供される（ステップＳ１６）。このようにして、公開／加入メッセージ交換インフラストラクチャ層により、多数の中間ノードを含む直接接続経路によって要求側ノードから分離した各ノードに資源要求が到達することが可能となる。
【００１９】
したがって、本発明によって提供されるスケーラブル・ネットワーク・フレームワークでは、ネットワーク中のユーザ・ノードの数が増加するときに、効率的な資源発見が維持される。同時に、資源自体はサーバに公開されず、実際の資源共用はサーバを必要とせず、したがってサーバに対する要求は、従来のクライアント／サーバ・フレームワークよりも低い。さらに、各探索要求が、関係するチャネルに加入するユーザ・ノードのすべてに対して公開されるので、非常に多数のユーザ・ノードを含むネットワークにおいて、許容される時間フレーム内で、要求された資源を求める網羅的な（または少なくとも非常に広範囲にわたる）探索を実施することが可能である。
【００２０】
好ましい実施形態では、公開／加入メッセージ交換インフラストラクチャは２つのタイプの「チャネル」すなわち共用データ・ストリームをサポートする。第１のタイプのチャネルは、非集中型ネットワーク中の他のユーザ・ノードの発見をサポートするのに使用される「ノード発見チャネル」である。ネットワークに加入するために、ユーザ・ノードは、サーバ・ノードの公開／加入メッセージ交換インフラストラクチャを使用してユーザ・ノード自体を公表する。具体的には、他のユーザ・ノードに接続を請求するため、新しいユーザ・ノードからの加入告知が、サーバ・ノードを介してノード発見チャネルのうちの１つまたは複数に向けて送られる。したがって、公開／加入インフラストラクチャは、他のユーザ・ノードへの接続を確立して加入告知の同報通信を実施する（ＩＰの上の層と同様の）汎用トランスポート層として機能する。
【００２１】
そのような加入告知は、地理的位置、またはネットワーク接続速度、または使用可能な資源のタイプ、または共通の関心、あるいはそれらの組合せなどのカテゴリに基づいて個々のノード発見チャネルに分割することができる。したがって、新しいユーザ・ノードは、リモート・ユーザ・ノードを（地理的にも、ネットワーク・ホップに関しても）発見することができ、接続するとき、所望のタイプの資源、または許容される接続属性を有するノードを選ぶことができる。さらに、各参加告知は、あるチャネルに加入するユーザ・ノードにのみ送信されるので、非常に大規模なネットワークのユーザ・ノードで常に加入告知が氾濫することはない。
【００２２】
第２のタイプのチャネルは、資源要求の公開を最適化するのに使用される「資源要求チャネル」である。前述のように、サーバ・ノードは、特定の１つ（または複数）のチャネルに加入しているユーザ・ノードのすべてに各資源要求を送信することによって各資源要求を公開する。望ましくない要求をユーザ・ノードが効率的にフィルタすることができるように、これらの資源要求チャネルを多数の資源タイプに分割することができる。さらに、ネットワーク中のあらゆるユーザ・ノードに到達するのではなく、資源要求チャネルの使用により、関連するユーザ・ノード（すなわち関連するチャネルに加入しているユーザ・ノード）の部分集合だけに資源要求が到達することが可能となる。
【００２３】
したがって、技術文書を共用することだけを希望するユーザ・ノードは、マルチメディア・コンテンツを求める多数の要求を受けることがない。応用例に応じて、ユーザ・ノードまたはサーバ・ノードあるいはその両方は、個々の告知または資源要求を公開するチャネルを決定することができる。さらに、好ましい実施形態では、チャネルは単にユーザ・ノードによって公開されることによって存在する。したがって、任意のユーザ・ノードが新しい資源チャネルを作成することができ、次いで従来の任意の方式で（例えば、ウェブ・サイト、ニュースグループ、テレビジョン、または直接のメール広告を介して）、加入のためにその新しい資源チャネルが利用可能であることを宣伝することができる。
【００２４】
図５は、本発明の第２実施形態によるスケーラブル・ネットワーク・フレームワーク内の資源を得るプロセスの流れ図である。ネットワーク中の第１ユーザ・ノード４１６が資源（例えばファイル）を希望するときはいつでも、資源要求がサーバ・ノード４０２に送信され（ステップＳ１０）、サーバ・ノード４０２は、そのタイプの要求に対応するチャネルに加入しているユーザ・ノードのすべてに資源要求を送信することによって資源要求を公開する（ステップＳ１２）。加えて、第２実施形態では、第１ノード４１６も、非集中型ネットワーク中で第１ノード４１６が接続されるユーザ・ノード４１０、４１８、および４２０のすべてに資源要求を送信する。
【００２５】
このプロセスは、要求を受信して、接続されているユーザ・ノードに要求を渡す各ユーザ・ノードで反復され、それによって非集中型ネットワークのユーザ・ノードを介して要求が伝播する（ステップＳ１１）。例えば、ノード４１０と４１４を介して次々と渡されることにより、要求が第２ユーザ・ノード４０４に到達する。さらに、ある実施形態では、サーバ・ノードから資源要求を受信する各ユーザ・ノード（例えばユーザ・ノード４２２）も、非集中型ネットワーク中で各ユーザ・ノードが接続されるユーザ・ノードのすべてに資源要求を送信する。第２ユーザ・ノード４０４が（ユーザ・ノード伝播を介して、またはサーバ・ノードから）要求を受信して、資源を提供しようとする場合、第２ユーザ・ノード４０４は第１ユーザ・ノード４１６と連絡を取り（ステップＳ１４）、ピアツーピア接続をセットアップして、要求された資源を共用する（ステップＳ１６）。
【００２６】
したがって、第２実施形態では、資源要求は、（第１実施形態と同様に）メッセージ交換インフラストラクチャ層を介して公開され、かつ非集中型ネットワークのユーザ・ノードを介して伝播する。この２重経路プロセスにより、中央サーバ・ノードを通過する要求伝播経路の代替経路が提供されるので、単一障害点が解消される。言い換えれば、資源要求は、サーバ・ノードがダウンしているときであっても他のユーザ・ノードに伝播する。さらに第２実施形態では、ユーザ・ノードのすべてを公開／加入インフラストラクチャに接続する必要はなく、さらにはユーザ・ノードのすべてが公開／加入インフラストラクチャの存在を認識している必要はない。このようなユーザ・ノードの行えることは、単にそのユーザ・ノードに接続されるユーザ・ノードのすべてに資源要求を転送することだけである。この特徴により、すべてのユーザ・ノードを変更する必要なしに第２実施形態を既存のネットワークで実施することが可能となる。
【００２７】
図６は、本発明の第３実施形態によるそのようなスケーラブル・ネットワーク・フレームワーク内の資源を得るプロセスの流れ図である。この実施形態では、要求側ユーザ・ノードのプライバシーを高めるために、資源要求はサーバ・ノードに直接送信されない。第３実施形態で資源（例えばファイル）を希望するときはいつでも、要求側第１ユーザ・ノード４１０は、図７の破線の矢印で示すように、非集中型ネットワーク中で要求側第１ユーザ・ノード４１０が接続される第２ユーザ・ノード４１４に資源要求を送信する（ステップＳ２０）。次いで第２ユーザ・ノード４１４は、公開／加入サーバ・ノード４０２に要求を送信するか、それとも非集中型ネットワーク中で第２ユーザ・ノード４１４が接続される別のユーザ・ノードに要求を送信するかを判定する。好ましくは、メッセージ交換のために中央公開／加入サーバ・ノードにユーザ・ノードのすべてが接続される（図が見やすいように図示していない）。
【００２８】
サーバ・ノード４０２に送信しないと判定した場合、図７に示すように、第２ユーザ・ノード４１４は、第２ユーザ・ノード４１４が接続される別のユーザ・ノード４２０に資源要求を転送する（ステップＳ２０）。この転送プロセスが、資源要求を受信して同じ判定を行う各ユーザ・ノードで反復される（ステップＳ２２）。第３ユーザ・ノード４１６がサーバ・ノード４０２に送信すると判定したとき、資源要求がサーバ・ノード４０２に送信され（ステップＳ２４）、サーバ・ノード４０２は、そのタイプの要求に対応するチャネルに加入しているユーザ・ノードのすべてに資源要求を送信することによって資源要求を公開する（ステップＳ２６）。
【００２９】
好ましい実施形態では、公開／加入サーバ・ノードに要求を送信するか否かについての各判定は、要求がサーバ・ノードに送信される確率を与える０から１の間の重み因子に基づいてユーザ・ノードによって行われる「ランダムな」判定である。例えば、重み因子が０．２５である場合、ユーザ・ノードが要求をサーバ・ノードに送信する確率が２５％であり、要求が別のユーザ・ノードに転送される確率が７５％である。したがって平均すると、重み因子０．２５では、資源要求が公開／加入サーバ・ノードに送信されるまでに、資源要求が他のユーザ・ノードに３回転送される。重み因子の値は、所望のレベルのプライバシーなどの因子に基づいて設定される。さらに、重み因子は、ネットワーク全体で使用される固定値でよく、またはメッセージごとにユーザ・ノードが重み因子を設定することもできる。要求を受信する各ユーザ・ノードによって行われる判定に、最大転送数または最大経過時間などの他の基準を組み込むこともできる。
【００３０】
別の実施形態では、公開／加入サーバ・ノードに要求を送信するか否かについての判定が、固定の転送数などの何らかの他の基準に基づいて行われる。例えば一実施形態では、各資源要求が、常に３つのユーザ・ノードを介して転送され、次いで公開／加入サーバ・ノードに送信される。好ましくは、資源要求を別のユーザ・ノードに転送すべきときはいつでも、転送される要求を他のどのユーザ・ノードが受信するかについての選択が、転送側ユーザ・ノードが接続されるユーザ・ノードのうち１つをランダムに選択することによって行われる。
【００３１】
資源要求がサーバ・ノード４０２によって公開された後、要求を受信し、資源を提供しようとする第４ユーザ・ノード４２２が第１ユーザ・ノード４１０と連絡を取る。より具体的には、図８に示すように、第４ユーザ・ノード４２２が、公開を求めてサーバ・ノード４０２に資源要求を送信した第３ユーザ・ノード４１６に応答を送信する（ステップＳ２８）。第３ユーザ・ノード４１６は、資源要求を受信したユーザ・ノード４２０に応答を転送し、応答が第１ユーザ・ノード４１０に到達するまでこの転送プロセスが反復される（ステップＳ３０）。この時点で、第１ユーザ・ノード４１０は第４ユーザ・ノード４２２と連絡を取って直接ピアツーピア接続をセットアップし、要求した資源を共用することができる（ステップＳ３２）。
【００３２】
好ましい実施形態では、資源を有するユーザ・ノードからの応答は、資源マッチに関するメタデータを含む。応答を受信したとき、要求側ユーザ・ノードはメタデータを評価し、次いで応答ノードと直接接続を行って資源自体を共用する（例えば、要求したファイルをダウンロードする）か否かを判定する。複数の応答を受信した場合、要求側ユーザ・ノードは、各応答中のメタデータを評価し、次いで任意の基準（例えば、過去の経験、受信した順序、接続速度、または物理的位置）に基づいて、応答側ユーザ・ノードのうち１つまたは複数を選択することができる。
【００３３】
加えて、好ましい実施形態では、資源を有するユーザ・ノードからの応答が、既存の接続（サーバ・ノードを介して要求が伝わってきた接続など）を介して送られ、資源を実際に転送するためだけに新しいポイント・ツー・ポイント接続が確立される。そうでない場合、各応答側ユーザ・ノードが新しいポイント・ツー・ポイント接続を開始して、応答を受信するユーザ・ノードが、多数の応答を受信するたびに圧倒されてしまう可能性がある。あるいは、サーバ・ノードは、資源要求に応答するユーザ・ノードが使用するマッチング「ワン・タイム」応答チャネルまたは永続応答チャネルをセットアップすることができる。永続応答チャネルを介して応答を公開することにより、将来の使用のために可能性のある関心の応答を保存する「受動的」ユーザ・ノードが促進される。
【００３４】
資源要求は、サーバ・ノードに直接送信されるのではなく、１つまたは複数の他のユーザ・ノードを介して転送されるので、第３実施形態は、要求側ユーザ・ノードのプライバシーを実現する。資源を要求する実際のユーザ・ノードはサーバ・ノードにとって匿名のままであるので、サーバ・ノードはどのユーザがどの資源を共用しているかを（さらには要求しているかも）追跡することができない。従来のバイラル・ネットワークと同様に、第３実施形態では、資源共用や要求側ノードの識別についての知識を有するのは、資源を実際に提供するユーザ・ノードだけである。さらに、従来のバイラル・ネットワークとは異なり、第３実施形態では、公開／加入メッセージ交換インフラストラクチャ層の使用により、非常に多数のユーザ・ノードを有するネットワークで効率的な資源発見が可能となる。したがって本発明により、非集中型ネットワークでスケーラビリティを達成することが可能となると共に、ユーザ・プライバシーの向上が維持される。
【００３５】
図９は、本発明の第４実施形態によるスケーラブル・ネットワーク・フレームワーク内の要求された資源を提供するプロセスの流れ図である。この実施形態では、応答側ユーザ・ノードのプライバシーを高めるために、資源要求に対する応答が要求側ユーザ・ノードに直接戻されない。資源（例えばファイル）を希望するときはいつでも、要求側第１ユーザ・ノード４１０は、図７の破線の矢印で示すように、非集中型ネットワーク中で要求側第１ユーザ・ノード４１０が接続される第２ユーザ・ノード４１４に資源要求を送信する（ステップＳ２０）。第３実施形態と同様に、次いで第２ユーザ・ノード４１４は、公開／加入サーバ・ノード４０２に要求を送信するか、それとも非集中型ネットワーク中で第２ユーザ・ノード４１４が接続される別のユーザ・ノードに要求を送信するかを判定する（ステップＳ２２）。
【００３６】
サーバ・ノード４０２に送信しないと判定した場合、図７に示すように、第２ユーザ・ノード４１４は、第２ユーザ・ノード４１４が接続される別のユーザ・ノード４２０に資源要求を転送する（ステップＳ２０）。この転送プロセスが、資源要求を受信して同じ判定を行う各ユーザ・ノードで反復される（ステップＳ２２）。第３ユーザ・ノード４１６がサーバ・ノード４０２に送信すると判定したとき、資源要求がサーバ・ノード４０２に送信され（ステップＳ２４）、サーバ・ノード４０２は、そのタイプの要求に対応するチャネルに加入しているユーザ・ノードのすべてに資源要求を送信することによって資源要求を公開する（ステップＳ２６）。
【００３７】
資源要求がサーバ・ノード４０２によって公開された後、要求を受信し、資源を提供しようとする第４ユーザ・ノード４２２が応答を準備する。前述のように、この実施形態では第４ユーザ・ノード４２２からの応答は直接送り戻されない。その代わりに、第４ユーザ・ノード４２２は、図１０の破線の矢印で示すように、非集中型ネットワーク中で第４ユーザ・ノード４２２が接続される第５ユーザ・ノード４２６に応答を送信する（ステップＳ４０）。資源要求を伝播させるプロセスと同様に、第５ユーザ・ノード４２６は、要求側ユーザ・ノード４１０に応答を送り戻すか、それとも非集中型ネットワーク中で第５ユーザ・ノード４２６が接続される別のユーザ・ノードに応答を送信するかを判定する（ステップＳ４２）。
【００３８】
要求側ユーザ・ノード４１０に送信しないと判定した場合、図１０に示すように、第５ユーザ・ノード４２６は、第５ユーザ・ノード４２６が接続される別のユーザ・ノード４２８に応答を転送する（ステップＳ４０）。この転送プロセスが、応答を受信して同じ判定を行う各ユーザ・ノードで反復される（ステップＳ４２）。第６ユーザ・ノード４２４が応答を要求側ユーザ・ノード４１０に送信すると判定したとき、応答は要求側ユーザ・ノード４１０に戻される（ステップＳ４４）。より具体的には、図１０に示す例示的実施形態では、第６ユーザ・ノード４２４は、公開を求めてサーバ・ノード４０２に資源要求を送信した第３ユーザ・ノード４１６に応答を直接送信する。
【００３９】
図１１に示す代替実施形態では、第６ユーザ・ノード４２４は、サーバ・ノード４０２を介して第３ユーザ・ノード４１６に応答を送信する。この代替方法により、応答源を匿名に保ち続けると共に、サーバ・ノードが応答についてのある知識を一般的に得ることが可能となる。いずれの場合でも、次いで第３ユーザ・ノード４１６は、資源要求を受信したユーザ・ノード４２０に応答を戻し、元の要求を作成した第１ユーザ・ノード４１０に応答が到達するまでこの転送プロセスが反復される。
【００４０】
好ましい実施形態では、資源を有するユーザ・ノードからの応答は、実際の資源自体（例えば要求されたファイル）を含む。したがって、応答が要求側ユーザ・ノードに到達したとき、資源が直ちに利用可能となり、資源を共用するためにさらに行動を起こす必要がない。加えて、これにより、応答側ノードに対する高度な匿名性が実現される。別の実施形態では、応答は、資源マッチに関するメタデータを含む。応答を受信したとき、要求側ユーザ・ノードはメタデータを評価し、次いで応答側ユーザ・ノードから資源自体を取り出すか否かを判定する。このような実施形態では、様々な方式で応答側ユーザ・ノードから資源を取り出すことができる。
【００４１】
例えば、要求側ユーザ・ノード４１０は、要求側ユーザ・ノード４１０に戻すために第３ユーザ・ノード４１６に応答を送信した第６ユーザ・ノード４２４との直接接続を使用して、応答側ユーザ・ノード４２２に受諾を送り戻すことができる。あるいは、要求側ユーザ・ノード４１０は、応答が来たのと同じ経路（すなわち、ノード４１４、４２０、４１６、４２４、４２８、および４２６）に沿って応答側ユーザ・ノード４２２に受諾を戻すことができる。さらに、プライバシーを高めるため、要求側ユーザ・ノード４１０は再び間接転送プロセスを利用することができ、その結果、第６ユーザ・ノード４２４に送信されるまで、受諾が１つまたは複数の他のユーザ・ノードを介して転送され、応答側ユーザ・ノード４２２に戻される。受諾を受信したとき、応答側ユーザ・ノード４２２は、実際の資源を要求側ユーザ・ノード４１０に戻すために使用することができる類似の１組の応答代替方法を有する。
【００４２】
別の実施形態では、要求側ユーザ・ノードは、資源要求と共に「ワン・タイム」公開鍵を含み、応答側ユーザ・ノードは、要求側ユーザ・ノードしか応答を読み取ることができないように応答を暗号化する。したがって、応答側ユーザ・ノードは、応答でユーザ・ノード自体を明らかにすることができ、かつ応答側ユーザ・ノードは、要求側ユーザ・ノードを除くすべてにとって匿名のままである。加えて、この実施形態により、要求側ユーザ・ノードが応答側ユーザ・ノードと直接連絡を取り、要求した資源を共用するためのピアツーピア接続をセットアップすることが可能となる。
【００４３】
資源要求と同様に、多数の応答を受信するたびにユーザ・ノードが圧倒されてしまうことを防止するために、既存の接続またはマッチング応答チャネルを介して経路指定される応答を有することが好ましい。同様に、好ましくは、要求側ユーザ・ノードに応答を送り戻すか否かについての各判定は、要求が要求側ユーザ・ノードに送り戻される確率を表す重み因子に基づいてユーザ・ノードによって行われる「ランダムな」判定である。しかし、ユーザ・ノードによって行われる判定に、他の基準（最大転送数または最大経過時間など）を組み込むこともでき、または判定が、何らかの他の基準（固定の転送数など）だけに基づいてもよい。さらに、応答を別のユーザ・ノードに転送すべきときはいつでも、好ましくは、転送された応答を他のどのユーザ・ノードが受信するかについての選択が、転送側ユーザ・ノードが接続されるユーザ・ノードのうち１つをランダムに選択することによって行われる。
【００４４】
応答が要求側ユーザ・ノードに直接戻されるのではなく、１つまたは複数の他のユーザ・ノードを介して転送されるので、第４実施形態は、応答側ユーザ・ノードのプライバシーを実現する。資源を提供する（または提供しようとする）実際のユーザ・ノードは、要求側ユーザ・ノードおよびサーバ・ノードにとって匿名のままである。したがって、要求側ユーザ・ノードもサーバ・ノードも、どのユーザがどの資源を提供しているかを（さらには所有していることさえ）追跡することができない。実際、第４実施形態では、応答側ノードが要求側ノードの識別を認識するのを防止し、要求側ノードが応答側ノードの識別を認識するのを防止することが可能である。さらに、従来のバイラル・ネットワークとは異なり、第４実施形態では、公開／加入メッセージ交換インフラストラクチャ層の使用により、非常に多数のユーザ・ノードを有するネットワークでの効率的な資源発見が可能となる。したがって本発明により、非集中型ネットワークでスケーラビリティを達成することが可能となると共に、ユーザ・プライバシーの向上が維持される。
【００４５】
上記の本発明の実施形態は、個々のメッセージを識別するための何らかの機構を必要とする。好ましい実施形態では、あらゆるメッセージ（すなわち資源要求または資源応答）に固有の識別番号が割り当てられる。例えば、一実施形態では、Microsoft Corporationによって開発された、グローバルに一意である可能性が非常に高いグローバル固有メッセージ識別子（ＧＵＩＤ）を各ユーザ・ノードが個々に生成することを可能にするアルゴリズムが使用される。加えて、各ユーザ・ノードは、メッセージを送信したユーザ・ノードに同じ経路を介して応答（場合によって資源自体を含む）が到達することができるように、転送したメッセージの少なくとも限定的な履歴を（例えばテーブル中に）格納しなければならない。さらに、ある実施形態は、資源要求のループを防止する機構を含む。例えば、グローバル固有メッセージ識別子ＧＵＩＤおよびノード履歴テーブルを使用して、容易にアンチ・ループ機構を作成することができる。
【００４６】
上記の本発明の実施形態は単一のサーバ・ノードに関するものであるが、「障害点」の問題をさらに最小限に抑えるために、ネットワーク中に複数の公開／加入サーバ・ノードを設けることができる。さらに、様々なサーバ・ノードを運用し、ユーザ・ノードの加入を競合することにより、競合プロバイダがネットワーク中に共存することができる。加えて、別の応用例では、上記の様々な実施形態の特徴を組み合わせることができる。例えば、本発明の一実施形態は、第４実施形態のランダム化された応答転送と、第２実施形態の２重伝播／公開を共に含む。ネットワーク・プロトコル、転送基準、およびメンバシップ基準などの他の設計の選択肢を容易に適合させることができる。
【００４７】
本発明は、ハードウェア、ソフトウェア、あるいはハードウェアとソフトウェアの組合せとして実現することができる。本明細書で説明した方法を実施するように適合されたどんな種類のコンピュータ・システムまたはその他の機器も適している。ハードウェアとソフトウェアの典型的な組合せは、ロードされ、実行されたとき、本明細書で説明した方法を実施するようにコンピュータ・システムを制御するコンピュータ・プログラムを有する汎用コンピュータ・システムでよい。
【００４８】
本発明は、本明細書で説明した方法の実施を可能にする機能すべてを備え、かつコンピュータ・システム内にロードされたときにその方法を実施することができるコンピュータ・プログラム製品に組み込むこともできる。現在の状況では、「コンピュータ・プログラム」は、情報処理能力を有するシステムに特定の機能を直接実行させ、あるいはａ）別の言語、コード、または表記への変換と、ｂ）異なる素材形式での再現の一方または両方の後に実行させるように意図された、任意の言語、コード、または表記の１組の命令を含む。
【００４９】
各コンピュータ・システムは、コンピュータがコンピュータ可読媒体からデータ、命令、メッセージまたはメッセージ・パケット、ならびに他のコンピュータ可読情報を読み取ることを可能にする１つまたは複数のコンピュータおよびコンピュータ可読媒体を含むことができる。コンピュータ可読媒体は、ＲＯＭ、フラッシュ・メモリ、ハード・ディスクまたはフロッピィ・ディスク、ＣＤ−ＲＯＭ、あるいは他の永続記憶装置などの不揮発性メモリを含むことができる。加えて、コンピュータ可読媒体は、ＲＡＭ、バッファ、キャッシュ・メモリ、およびネットワーク回路などの揮発性記憶装置を含むことができる。さらにコンピュータ可読媒体は、コンピュータがコンピュータ可読情報を読み取ることを可能にするネットワーク・リンクまたはネットワーク・インターフェース（有線ネットワークまたは無線ネットワークを含む）あるいはそれらの組合せなどの過渡状態媒体中に、コンピュータ可読情報を含むことができる。
【図面の簡単な説明】
【００５０】
【図１】例示的バイラル・ネットワークの図である。
【図２】例示的なコンテンツ・ベースの公開／加入メッセージ交換インフラストラクチャの図である。
【図３】本発明の好ましい実施形態によるスケーラブル・ネットワーク・フレームワークの図である。
【図４】本発明の第１実施形態によるスケーラブル・ネットワーク・フレームワーク内の資源を得るプロセスの流れ図である。
【図５】本発明の第２実施形態によるスケーラブル・ネットワーク・フレームワーク内の資源を得るプロセスの流れ図である。
【図６】本発明の第３実施形態によるスケーラブル・ネットワーク・フレームワーク内の資源を得るプロセスの流れ図である。
【図７】図６のプロセスの一部の例示的実装を示すスケーラブル・ネットワーク・フレームワークの図である。
【図８】図６のプロセスの別の部分の例示的実装を示すスケーラブル・ネットワーク・フレームワークの図である。
【図９】本発明の第４実施形態によるスケーラブル・ネットワーク・フレームワーク内の要求された資源を提供するプロセスの流れ図である。
【図１０】図９のプロセスの一部の例示的実装を示すスケーラブル・ネットワーク・フレームワークの図である。
【図１１】図９のプロセスの一部の代替実装を示すスケーラブル・ネットワーク・フレームワークの図である。
【図１】
2005501311.tif 000003
【図２】
2005501311.tif 000004
【図３】
2005501311.tif 000005
【図４】
2005501311.tif 000006
【図５】
2005501311.tif 000007
【図６】
2005501311.tif 000008
【図７】
2005501311.tif 000009
【図８】
2005501311.tif 000010
【図９】
2005501311.tif 000011
【図１０】
2005501311.tif 000012
【図１１】
2005501311.tif 000013
【国際公開パンフレット】
2005501311.tif 000014
2005501311.tif 000015
2005501311.tif 000016
2005501311.tif 000017
2005501311.tif 000018
2005501311.tif 000019
2005501311.tif 000020
2005501311.tif 000021
2005501311.tif 000022
2005501311.tif 000023
2005501311.tif 000024
2005501311.tif 000025
2005501311.tif 000026
2005501311.tif 000027
2005501311.tif 000028
2005501311.tif 000029
2005501311.tif 000030
2005501311.tif 000031
2005501311.tif 000032
2005501311.tif 000033
2005501311.tif 000034
2005501311.tif 000035
2005501311.tif 000036
2005501311.tif 000037
2005501311.tif 000038
2005501311.tif 000039
2005501311.tif 000040
2005501311.tif 000041
2005501311.tif 000042
2005501311.tif 000043
2005501311.tif 000044
2005501311.tif 000045
2005501311.tif 000046
【国際公開パンフレット（コレクトバージョン）】
2005501311.tif 000047
2005501311.tif 000048
【国際調査報告】
2005501311.tif 000049
2005501311.tif 000050