(57)【特許請求の範囲】
【請求項１】
少なくとも１つのデータ項目を記憶する要求を送信元システムから受信するステップと、
前記少なくとも１つのデータ項目に関する情報を、中央サーバに関連するストアに記憶するステップと、
前記送信元システムからの前記要求の受信に応じて、前記少なくとも１つのデータ項目を、前記ネットワークにおけるどんな固定記憶媒体にも記憶せず、相互接続されたコンピュータシステムノードのネットワークにおけるコンピュータシステムノード間で転送するステップであって、前記転送される少なくとも１つのデータ項目が、前記ネットワーク内でコンピュータシステムノードからコンピュータシステムノードに継続的にルーティングされ、前記転送される少なくとも１つのデータ項目が、前記データを検索する要求に応じて、検索のために利用可能である、ステップと、を含む方法であって、前記転送するステップが、
１つまたは複数の要因に基づいて、前記少なくとも１つのデータ項目および前記ストアを受信するために利用可能なコンピュータシステムノードのアドレスを決定するステップと、
前記少なくとも１つのデータ項目または前記ストアを転送するために前記送信元システム用の特定のコンピュータシステムノードのアドレスとともにメッセージを前記送信元システムに送信するステップと、
前記特定のコンピュータシステムノードにおいて前記少なくとも１つのデータ項目または前記ストアの存在を検出するステップと、
前記少なくとも１つのデータ項目または前記ストアを、前記少なくとも１つのデータ項目または前記ストアをどんな固定記憶媒体にも記憶せず、前記相互接続されたコンピュータシステムノードのネットワークにおける前記決定されたコンピュータシステムノードに転送するステップと、
を含む方法。
【請求項２】
前記１つまたは複数の要因が、ネットワークトラフィック解析および利用可能なメモリを含む、請求項１に記載の方法。
【請求項３】
前記少なくとも１つのデータ項目に関する前記情報が、タイプ、サイズまたは所有者の１つまたは複数を含む、請求項１に記載の方法。
【請求項４】
前記相互接続されたコンピュータシステムノードのネットワークにおいて転送されている前記少なくとも１つのデータ項目を検索する要求を前記送信元システムから受信するステップと、
前記少なくとも１つのデータ項目を検索する前記要求に応じて、コンピュータシステムノードから前記少なくとも１つのデータ項目を検索するステップと、
前記検索された少なくとも１つのデータ項目に関する情報を前記中央サーバに関連する前記ストアから削除するステップと、
をさらに含む、請求項１に記載の方法。
【請求項５】
前記要求した少なくとも１つのデータ項目が受信されたという確認応答を、前記送信元システムから受信するステップをさらに含む、請求項４に記載の方法。
【請求項６】
前記ストアにおけるデータ情報の要求を受信するステップと、
前記要求を解析して、何が要求されているかを決定するステップと、
前記要求に応じてコンピュータシステムノードから前記ストアにアクセスするステップと、
前記解析された要求と一致する、前記ストアにおける情報からレポートを作成するステップと、
前記レポートを前記送信元システムに転送するステップと、
をさらに含む、請求項１に記載の方法。
【請求項７】
前記レポートが、転送されているファイルの数、転送されているファイルタイプの数、転送されているデータの物理的サイズを表す数、ユーザ固有情報またはグループ固有情報の１つまたは複数を含む、請求項６に記載の方法。
【請求項８】
少なくとも１つのデータ項目を記憶する要求を送信元システムから受信するステップと、
前記少なくとも１つのデータ項目に関する情報を、中央サーバに関連するストアに記憶するステップと、
前記送信元システムからの前記要求の受信に応じて、前記少なくとも１つのデータ項目を、前記ネットワークにおけるどんな固定記憶媒体にも記憶せず、相互接続されたコンピュータシステムノードのネットワークにおけるコンピュータシステムノード間で転送するステップであって、前記転送される少なくとも１つのデータ項目が、前記ネットワーク内でコンピュータシステムノードからコンピュータシステムノードに継続的にルーティングされ、前記転送される少なくとも１つのデータ項目が、前記データを検索する要求に応じて、検索のために利用可能である、ステップと、
を含む動作をデータ処理装置に実行させるための命令を含むコンピュータ可読媒体であって、前記転送するステップが、
１つまたは複数の要因に基づいて、前記少なくとも１つのデータ項目および前記ストアを受信するために利用可能なコンピュータシステムノードのアドレスを決定するステップと、
前記少なくとも１つのデータ項目または前記ストアを転送するために前記送信元システム用の特定のコンピュータシステムノードのアドレスとともにメッセージを前記送信元システムに送信するステップと、
前記特定のコンピュータシステムノードにおいて前記少なくとも１つのデータ項目または前記ストアの存在を検出するステップと、
前記少なくとも１つのデータ項目または前記ストアを、前記少なくとも１つのデータ項目または前記ストアをどんな固定記憶媒体にも記憶せず、前記相互接続されたコンピュータシステムノードのネットワークにおける前記決定されたコンピュータシステムノードに転送する、ステップと、
を含む、コンピュータ可読媒体。
【請求項９】
前記少なくとも１つのデータ項目に関する前記情報が、タイプ、サイズまたは所有者の少なくとも１つを含む、請求項８に記載のコンピュータ可読媒体。
【請求項１０】
前記動作が、
前記相互接続されたコンピュータシステムノードのネットワークにおいて転送されている前記少なくとも１つのデータ項目を検索する要求を前記送信元システムから受信するステップと、
前記少なくとも１つのデータ項目を検索する前記要求に応じて、コンピュータシステムノードから前記少なくとも１つのデータ項目を検索するステップと、
前記検索された少なくとも１つのデータ項目に関する情報を前記中央サーバに関連する前記ストアから削除するステップと、
をさらに含む、請求項８に記載のコンピュータ可読媒体。
【請求項１１】
前記動作が、
前記ストアにおけるデータ情報の要求を受信するステップと、
前記要求を解析して、何が要求されているかを決定するステップと、
前記要求に応じてコンピュータシステムノードから前記ストアを検索するステップと、
前記解析された要求と一致する、前記ストアにおける情報からレポートを作成するステップと、
前記レポートを前記送信元システムに転送するステップと、
をさらに含む、請求項８に記載のコンピュータ可読媒体。
【請求項１２】
前記レポートが、転送されているファイルの数、転送されているファイルタイプの数、転送されているデータの物理的サイズを表す数、ユーザ固有情報またはグループ固有情報の１つまたは複数を含む、請求項１１に記載のコンピュータ可読媒体。
【請求項１３】
少なくとも１つのデータ項目を記憶する要求を送信元システムから受信するための手段と、
前記少なくとも１つのデータ項目に関する情報を、中央サーバに関連するストアに記憶するための手段と、
前記少なくとも１つのデータ項目を、前記ネットワークにおけるどんな固定記憶媒体にも記憶せず、相互接続されたコンピュータシステムノードのネットワークにおけるコンピュータシステムノード間で転送するための手段であって、前記転送される少なくとも１つのデータ項目が、前記ネットワーク内でコンピュータシステムノードからコンピュータシステムノードに継続的にルーティングされ、前記転送される少なくとも１つのデータ項目が、前記データを検索する要求に応じて、検索のために利用可能である、手段と、
を含むコンピューティングシステムであって、前記転送するための手段が、
１つまたは複数の要因に基づいて、前記少なくとも１つのデータ項目および前記ストアを受信するために利用可能なコンピュータシステムノードのアドレスを決定するための手段と、
前記少なくとも１つのデータ項目または前記ストアを転送するために前記送信元システム用の特定のコンピュータシステムノードのアドレスとともにメッセージを前記送信元システムに送信するための手段と、
前記特定のコンピュータシステムノードにおいて前記少なくとも１つのデータ項目または前記ストアの存在を検出するための手段と、
前記少なくとも１つのデータ項目または前記ストアを、前記少なくとも１つのデータ項目または前記ストアをどんな固定記憶媒体にも記憶せず、前記相互接続されたコンピュータシステムノードのネットワークにおける前記決定されたコンピュータシステムノードに転送するための手段と、
を含む、コンピュータシステム。
【請求項１４】
前記少なくとも１つのデータ項目に関する前記情報が、タイプ、サイズまたは所有者の１つまたは複数を含む、請求項１３に記載のコンピュータシステム。
【請求項１５】
前記ストアにおけるデータ情報の要求を受信するための手段と、
前記要求を解析して、何が要求されているかを決定するための手段と、
前記要求に応じてコンピュータシステムノードから前記ストアを検索するための手段と、
前記解析された要求と一致する、前記ストアにおける情報からレポートを作成するための手段と、
前記レポートを前記送信元システムに転送するための手段と、
をさらに含む、請求項１３に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に開示される少なくともいくつかの実施形態は、データ記憶に関し、特に、データ転送記憶における測定に関する。
【背景技術】
【０００２】
個人、組織、企業および政府が記憶しなければならないデータ量は、毎年増えている。単に要求に遅れずについていくことに加えて、組織は、他の記憶問題に直面する。オンライン上でのリアルタイムビジネスおよび政府への移行と共に、重要なデータを、ソフトウェアまたはハードウェア障害による損失またはアクセス不可能性から保護しなければならない。今日、多くのストレージ製品は、完全な障害保護を提供せず、データ損失または利用不可能性の危険にユーザをさらしている。例えば、今日市販されている多くのストレージソリューションは、プロセッサ障害などのいくつかの障害モードに対して保護を提供するが、しかしディスクドライブ障害などの他の障害に対しては提供しない。多くの組織が、そのデータ記憶システムにおけるコンポーネント障害ゆえのデータ損失またはデータ利用不可能性の危険にさらされている。
【０００３】
データ記憶市場は、典型的には、２つの主要な区分、すなわち直接接続ストレージ（ＤＡＳ）およびネットワークストレージに分割される。ＤＡＳには、サーバに直接接続されたディスクが含まれる。
【０００４】
ネットワークストレージにはディスクが含まれるが、これらのディスクは、特定のサーバではなくネットワークに接続され、さらに、そのネットワーク上の他の装置およびアプリケーションによってアクセスおよび共有することができる。ネットワークストレージは、典型的には、２つの区分、すなわちストレージエリアネットワーク（ＳＡＮ）およびネットワーク接続ストレージ（ＮＡＳ）に分割される。
【０００５】
ＳＡＮは、より大きなユーザネットワークのために、様々な種類のデータ記憶装置を関連データサーバと相互接続する高速な専用ネットワーク（またはサブネットワーク）である。典型的には、ＳＡＮは、企業用計算資源の全体的なネットワークの一部である。ストレージエリアネットワークは、通常、他の計算資源のすぐ近くに集められるが、しかしまた、ワイドエリア（ＷＡＮ）ネットワークキャリヤ技術を用いて、バックアップおよび保管記憶用に遠隔地に拡張してもよい。
【０００６】
ＮＡＳは、ネットワークのワークステーションユーザにアプリケーションを提供するローカルコンピュータに接続されるのではなく、それ自身のネットワークアドレスで設定されるハードディスクストレージである。記憶アクセスおよびその管理をローカルサーバから取り除くことによって、アプリケーションプログラミングおよびファイルの両方とも、より速くサービスすることができる。なぜなら、それらは、同じプロセッサ資源を求めて競合しないからである。ＮＡＳは、ローカルエリアネットワーク（典型的にはイーサネット（登録商標）ネットワーク）に接続され、かつＩＰアドレスを割り当てられる。ファイル要求は、メインサーバによってＮＡＳファイルサーバにマッピングされる。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記の全ては、１を超える点でアキレス腱になり得る１つの共通の特徴を共有する。すなわち、データが、ディスクドライブ、ＣＤドライブなどの物理的媒体に記憶されることである。
【０００８】
本発明は、データ転送記憶装置における測定のための、コンピュータプログラム製品を含む方法および装置を提供する。
【課題を解決するための手段】
【０００９】
一般に、一態様において、本発明は、相互接続されたコンピュータシステムノードのネットワークにおいて、データを記憶する要求を送信元システムから受信するステップと、データをコンピュータメモリに送るステップと、データに関する情報を中央サーバに関連するストアに記憶するステップと、データおよびストアを、ネットワークにおけるどんな物理的記憶装置にも記憶せず、相互接続されたコンピュータシステムノードのネットワークにおける一コンピュータメモリから別のコンピュータメモリへ継続的に転送するステップと、を含む方法を特徴とする。継続的に転送することには、１つまたは複数の要因に基づいて、データおよびストアを受信するために利用可能なノードのアドレスを決定するステップと、データまたはストアを転送するために要求者用の特定のノードのアドレスを備えたメッセージを送信元システムに送信するステップと、特定のノードのメモリにおいてデータまたはストアの存在を検出するステップと、データまたはストアを、どんな物理的記憶装置にも記憶せず、相互接続されたコンピュータシステムノードのネットワークにおけるノードの別のコンピュータメモリに転送するステップと、を含むことができる。
【００１０】
本発明の１つまたは複数の実施の詳細は、添付の図面および以下の説明で述べる。本発明のさらなる特徴、態様および利点は、説明、図面および特許請求の範囲から明白になるであろう。
【００１１】
実施形態は、添付の図面の図において限定ではなく例として示され、図面における同様の参照符号は、同様の要素を示す。
【図面の簡単な説明】
【００１２】
【図１】例示的なネットワークのブロック図である。
【図２】例示的なユーザシステムのブロック図である。
【図３】例示的なネットワークシステムのブロック図である。
【図４】プロセスの流れ図である。
【図５】プロセスの流れ図である。
【図６】プロセスの流れ図である。
【発明を実施するための形態】
【００１３】
データが結局はディスクドライブなどの物理的媒体に記憶される、過渡的な方法で（in a transient fashion）データ転送を用いるピアツーピアネットワークとは異なり、本発明は、継続的データ転送ネットワークである。すなわち、データは、一ノードメモリから別のノードメモリにデータを継続的に転送することによって、記憶される。
【００１４】
図１に示すように、例示的なネットワーク１０には、ユーザシステム１２および多数のネットワークシステム１４、１６、１８、２０、２２が含まれる。ネットワークシステム１４、１６、１８、２０、２２のそれぞれは、ネットワーク１０におけるノードと見なすことができ、かつネットワークシステム１４など、１つのかかるネットワークシステムは、ネットワーク１０において制御位置を占めることができる中央サーバとして指定してもよい。ノード１４、１６、１８、２０、２２のそれぞれは、中央サーバ１４の直接制御下でプライベート制御ピアネットワークとして確立してもよい。ピアノードはまた、プライベートノードおよびパブリックノードの混合であってもよく、したがって、中央サーバ１４の直接的な物理的制御下になくてもよい。ネットワーク１０はまた、完全にパブリックであってもよく、この場合には、中央サーバ１４（または複数サーバ）は、ピアノードのいずれの直接的な所有権も直接的な物理的制御も有しない。
【００１５】
図２に示すように、ユーザシステム１２には、プロセッサ３０、メモリ３２、および入力／出力（Ｉ／Ｏ）装置３４を含むことができる。メモリ３２には、以下で詳細に説明するように、Linux、Apple（登録商標）ＯＳまたはWindows（登録商標）などのオペレーティングシステム（ＯＳ）３６、１つまたは複数のアプリケーションプロセス３８、および記憶プロセス１００を含むことができる。アプリケーションプロセス３８には、OpenOfficeまたはMicrosoft（登録商標）Officeなどのユーザ生産性ソフトウェアを含むことができる。Ｉ／Ｏ装置３４には、ユーザ４２に表示するためのグラフィカルユーザインタフェース（ＧＵＩ）４０を含むことができる。
【００１６】
図３に示すように、ネットワークシステム１４など、ネットワークシステムのそれぞれには、プロセッサ５０およびメモリ５２を含むことができる。メモリ５２には、以下で詳細に説明するように、Linux、Apple（登録商標）ＯＳまたはWindows（登録商標）などのＯＳ５４、およびデータ転送プロセス２００を含むことができる。
【００１７】
従来のシステムでは、アプリケーションプロセス３８は、データを記憶および検索する必要がある。これらの従来のシステムでは、データは、ローカルまたはリモートの物理的装置に記憶される。いくつかのシステムでは、このデータは、異なる断片またはパケットにセグメント化し、ローカルまたはリモートの物理的記憶媒体に記憶することができる。固定した物理的データ記憶装置の使用は、それがユーザ４２の要望であろうとなかろうと、コスト、メンテナンス、管理を追加し、データの、固定した物理的記録を生成する。
【００１８】
本発明は、データを記憶するための固定した物理的データ記憶装置を用いない。データを記憶する要求が、記憶プロセス１００から中央サーバ１４によって受信されると、データは、ネットワーク１０におけるノードに送られ、次にそれは、ディスクドライブなどのどんな物理的記憶媒体にも記憶されることなく、ネットワークノードのそれぞれにおけるデータ転送プロセス２００によって、ネットワーク１０のノードメモリからノードメモリに継続的に転送される。転送されるデータは、ネットワーク１０における任意の一ノードのメモリに、非常に短い期間のみ常駐する。データは、どんなネットワークノードのどんな物理的記憶媒体にも記憶されない。
【００１９】
同じように、データを検索する要求が、記憶プロセス１００から中央サーバ１４によって受信されると、要求されたデータは、ネットワーク１０においてノードメモリからノードメモリに転送されているが、検索される。
【００２０】
このようにして転送されるデータは、上記のようにセグメント化することができ、セグメントは転送することができる。セグメント化されたデータは、やはり、どんなネットワークノードのどんな物理的記憶媒体にも記憶されず、単に、一ノードのメモリから別のノードのメモリに転送されるだけである。
【００２１】
図４に示すように、記憶プロセス１００には、データを記憶または検索する要求を中央サーバ１４に送信すること（１０２）が含まれる。要求がデータ検索要求である場合には、記憶プロセス１００は、要求したデータをネットワークにおける中央サーバ１４またはノードから受信する。
【００２２】
中央サーバ１４への要求が、データ記憶要求である場合には、記憶プロセス１００は、ノードのアドレスを中央サーバ１４から受信し（１０４）、受信したアドレスが表すノードメモリにデータを転送する（１０６）。
【００２３】
ネットワークにおいて転送されるデータを測定することができる。例えば、中央サーバ１４は、新しいデータが、ネットワークにおいて転送されるように要求されるたびに、データ統計のストアを維持する。ストアは、フラットファイル、表またはデータベースファイルとすることができ、かつディスクドライブなどのどんな物理的記憶媒体にも記憶されることなく、ネットワークのノードメモリからノードメモリに継続的に転送される。ファイルが、転送されるように要求されるたびに、ストアの内容は、ファイルの所有者、ファイルのタイプおよび／または追加情報を記録する。このようにして、中央サーバ１４は、要求された場合に、有用な情報のリストを生成することができる。より具体的には、中央サーバ１４は、全体としてまたはユーザグループのユーザごとに所有される、システムにおけるファイルの数、ファイルタイプの数、およびデータ総量（例えばメガバイト）を明らかにすることができる。中央サーバ１４は、ストアを用いて、追加データまたはネットワークから削除されたデータを追跡することができる。中央サーバ１４は、ネットワークにおいて転送されている全てのデータ、および／または特定のユーザもしくはユーザグループによって転送されているデータのリストを生成することができる。
【００２４】
図５に示すように、データ転送プロセス２００には、データを記憶または検索する要求を受信すること（２０２）が含まれる。受信された要求がデータを記憶する要求である場合には、データ転送プロセス２００は、メモリにデータを受信するために利用可能なノードのアドレスを決定する（２０４）。この決定（２０４）には、ネットワークをピングして、ネットワークにおけるどのノードが利用可能であるかを決定すること、またはネットワークにおけるどのノードが最小トラフィックを有するかを決定すること、またはネットワークにおけるどのノードが最大の利用可能なメモリを有するかを決定すること、またはこれらもしくは他の要因の任意の組み合わせを含むことができる。
【００２５】
プロセス２００は、データを転送するために要求者用の特定のノードのアドレスを備えたメッセージをユーザシステムに送信し（２０６）、かつデータに関する情報をローカルストアに保存する。この情報には、例えば、データのタイプ、所有者、サイズ等を含むことができる（２０７）。
【００２６】
プロセス２００は、ノードメモリにおけるデータの存在を検出する（２０８）。プロセス２００は、メモリにおけるデータをノードネットワークにおける別のノードに転送し（２１０）、引き続きデータの検出（２０８）およびノードメモリからノードメモリへのデータの転送（２１０）を繰り返す。データがいずれかのノードメモリに到達すると、プロセス２００は、タイムスタンプをデータに添付する（２１２）。
【００２７】
転送すること（２１０）には、ネットワークにおけるノードをピングして、ネットワークにおけるどのノードが利用可能であるかを決定すること、またはネットワークにおけるどのノードが最小トラフィックを有するかを決定すること、またはネットワークにおけるどのノードが最大の利用可能なメモリを有するかを決定すること、またはこれらもしくは他の要因の任意の組み合わせを含むことができる。
【００２８】
１つの特定の例では、ノードへのエントリポイントにおいて、分解データは、ノードまたは中央サーバ１４またはユーザとの暗号化された「ハンドシェイク」を受ける。これは、公開−秘密鍵を用いることができる、カシミヤシステムなどの公開または秘密暗号システムとすることができる。カシミヤは、暗号化された転送経路およびメッセージペイロードを分離するが、これは、送信元が、宛先の一意の公開鍵を用いる単一公開鍵暗号化を各メッセージに対して実行する必要があるだけなので、性能を改善する。これには、対応する中継グループの全てのノードではなく、真の宛先ノードだけが、メッセージペイロードを復号化できるという利点がある。カシミヤは、宛先が、送信元の識別情報を知らずに匿名の応答メッセージを送信できる能力を提供する。これは、送信元が、転送経路と同じように応答経路を作り、かつそれを暗号化する場合と同じように行われる。
【００２９】
別の例では、他のルーティング方式が利用される。
【００３０】
受信された要求が、ノードメモリからノードメモリに継続的に転送されているデータを検索する要求である場合には、データ転送プロセス２００は、暗号化ハンドシェイクを介してデータがノードに入るとノードが「感づく」ことができるハッシュマークまたは他の一意の符号を用いて、中央サーバ１４においてマッチングする（２１４）。これは、ネットワークにおけるノードをピングすることによって行うことができる。プロセス２００は、データが恐らく現れるだろうと中央サーバ１４が信じるノードまたはノード状態へ、データをユーザに返すためのメッセージを直接送信し（２１６）、このデータに関連する情報を中央サーバ１４におけるストアから削除する（２１７）。中央サーバ１４が、それがピングするノード状態を絞ることができればできるほど、検索は、それだけ効率的になり、かつ中央サーバ１４と、データを転送できるノードとの間のトランザクションには必要でないノードへの不必要なメッセージトラフィックによる負荷がそれだけ少なくなる。
【００３１】
ひとたび正しいノードが、ノードメモリにおけるデータを要求者に転送するメッセージを受信すると、プロセス２００は、ノードメモリのデータを要求者に転送し（２１８）、かつデータがユーザに送信されたという確認メッセージを転送する（２２０）。このルーティングメッセージは、中央サーバ１４に直接送信してもよく、またはネットワーク１０における他のノード（単複）もしくはスーパーノード（単複）を介して中央サーバ１４もしくは複数サーバに伝達してもよい。要求したデータをユーザが受信すると、ユーザのアプリケーションは、要求したデータが受信されたことを中央サーバ１４に自動的にピングするように機能する。したがって、ネットワーク１０は、どんな物理的記憶媒体にデータをキャッシング、ダウンロードおよび／または記憶することもなく、データ記憶を行う。データ記憶および管理は、ノードメモリからノードメモリへのデータの絶え間ないルーティングを介して達成され、転送されるデータは、ネットワーク１０からユーザにデータが返されることをユーザが要求する場合にのみダウンロードされる。
【００３２】
性能に基づいて新しいノードおよびノード状態をネットワーク１０に追加するか、かつ／またはそこから削除してもよい。ユーザは、全てのノードへのアクセスを有してもよく、または中央サーバ（単複）によって、もしくはプライベート、パブリック、もしくはプライベート−パブリックネットワークの特定のアーキテクチャを介して、あるノードもしくは「ノード状態」にセグメント化してもよい。
【００３３】
個別ノード、ノード状態およびスーパーノードはまた、パブリックまたはプライベートネットワークにおけるエクストラネットピア、無線ネットワークピア、サテライトピアノード、Ｗｉ−Ｆｉピアノード、広帯域ネットワークなどであってもよい。ピアノードまたはユーザは、同じセキュリティシステムを用いる任意の有効なピアポイントからの、ネットワーク１０におけるルーティング参加者としてと同様に、無線ピアのための無線暗号化方式など、特定の正確な配備に適したカスタムソリューションなどとして用いてもよい。
【００３４】
プロセス２００において、リモートサーバ、ハードドライブまたは他の固定記憶媒体にデータをキャッシュまたは保持するのではなく、データは、ノードメモリからノードメモリに伝達され、ルーティングされ、転送される。データは、認可されたユーザがデータを要求するまでは決してダウンロードされない。システム上のユーザは、１人を超えるユーザがデータへのアクセス権を有するのを認可してもよい。
【００３５】
プロセス２００における主な目標は、データ記憶および管理システムであって、データが物理的記憶装置には決して固定されず、実際には、ネットワークにおけるノードメモリからノードメモリに継続的にルーティング／転送されているデータ記憶および管理システムを生成することである。また、データが転送されるノードの経路を中央サーバ１４によって変更して、システム容量を調整し、この特徴なしではデータ経路の可能性の増加によりネットワークのセキュリティを弱める可能性があるデータの冗長な経路を、除去してもよい。
【００３６】
図６に示すように、中央サーバ１４において実行されるデータ情報プロセス３００には、データ情報の要求を受信すること（３０２）が含まれる。データ情報は、中央の管理でストアに常駐し、例えば、データタイプ、所有者、所有者グループ、サイズ等を含むことができる。
【００３７】
プロセス３００は、要求を解析して（３０４）、何が要求されているかを決定する。何が要求されているかがひとたび決定されると、プロセス３００は、ストアにおける情報からレポートを作成し（３０６）、そのレポートを要求者に転送する（３０８）。そのレポートは、ネットワークにおいて転送されているデータの総数、ネットワークにおいて転送されているデータの合計サイズ、ネットワークにおいて転送されている特定のデータタイプの数および／またはサイズ、特定のユーザまたはユーザグループ用のデータの数、サイズおよび／またはタイプなどを表すことができる。
【００３８】
本発明は、次の利点の１つまたは複数を実現するように実施することができる。ネットワークは、キャッシングもダウンロードもなしに、データ記憶を行う。データ記憶および管理は、データの絶え間ないルーティングを介して達成される。
【００３９】
本発明の実施形態は、デジタル電子回路、またはコンピュータハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせにおいて実施することができる。本発明の実施形態は、例えばプログラム可能プロセッサ、１つのコンピュータもしくは多数のコンピュータなどのデータ処理装置によって実行するための、またはこれらの動作を制御するためのコンピュータプログラム製品として、すなわち、例えば機械可読記憶装置などの情報キャリアにおいて実体的に具体化されるコンピュータプログラムとして、実施することができる。コンピュータプログラムは、コンパイラ型言語またはインタープリタ型言語を含む任意の形態のプログラミング言語で書くことができ、かつそれは、スタンドアローンプログラム、またはモジュール、コンポーネント、サブルーチンもしくはコンピュータ環境で使用するのに適した他の単位を含む任意の形態で配置することができる。コンピュータプログラムは、１つのサイトにおける１つのコンピュータもしくは多数のコンピュータ上で実行するように配置するか、または多数のサイトにわたって分散し通信ネットワークによって相互接続するように配置することができる。
【００４０】
本発明の実施形態の方法ステップは、入力データに作用して出力を生成することによって本発明の機能を実行するためにコンピュータプログラムを実行する１つまたは複数のプログラム可能プロセッサによって、実行することができる。方法ステップはまた、専用論理回路、例えばＦＰＧＡ（フィールドプログラマブルゲートアレイ）またはＡＳＩＣ（特定用途向け集積回路）によって実行することができ、かつ本発明の装置は、専用論理回路、例えばＦＰＧＡ（フィールドプログラマブルゲートアレイ）またはＡＳＩＣ（特定用途向け集積回路）として実現することができる。
【００４１】
コンピュータプログラムの実行に適したプロセッサには、例として、汎用および専用マイクロプロセッサの両方、ならびに任意の種類のデジタルコンピュータにおける任意の１つまたは複数のプロセッサが含まれる。一般に、プロセッサは、読み出し専用メモリまたはランダムアクセスメモリまたは両方から命令およびデータを受信する。コンピュータの本質的な要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための１つまたは複数のメモリ装置と、である。一般に、コンピュータはまた、データを記憶するための１つもしくは複数の大容量記憶装置、例えば磁気ディスク、光磁気ディスクもしくは光ディスクを含むか、またはこれらの大容量記憶装置からデータを受信するか、もしくはこれらにデータを転送するか、もしくは両方のために動作可能に結合される。コンピュータプログラム命令およびデータを具体化するのに適した情報キャリアには、例として半導体メモリ装置、例えばＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュメモリ素子と、磁気ディスク、例えば内部ハードディスクまたは取り外し可能ディスクと、光磁気ディスクと、ＣＤ  ＲＯＭおよびＤＶＤ−ＲＯＭディスクと、を含む不揮発性メモリの全ての形態が含まれる。プロセッサおよびメモリは、専用論理回路によって補足するか、または専用論理回路に組み込むことができる。
【００４２】
前述の説明が、本発明の範囲を限定するのではなく、例示するように意図され、本発明が、添付の特許請求の範囲によって定義されることを理解されたい。他の実施形態は、添付の特許請求の範囲の範囲内にある。
【図１】
0005140765.tif 000002
【図２】
0005140765.tif 000003
【図３】
0005140765.tif 000004
【図４】
0005140765.tif 000005
【図５】
0005140765.tif 000006
【図６】
0005140765.tif 000007