【手続補正書】
【提出日】平成20年3月17日(2008.3.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ローカルデバイスとリモートデバイスとの間で、ネットワーク上でオブジェクトを更新するためのシステムであって、該システムは、
前記ネットワーク上でオブジェクトの更新を円滑に行うよう配設されたリモートデバイスを含み、該リモートデバイスは、
前記ネットワーク上で通信を円滑に行うように配設された第１のネットワーク接続デバイスと、
第１のオブジェクトを記憶するように配設された第１のデータストーアと、
前記第１のデータストーアと前記第１のネットワーク接続装置とに連結する第１のプロセッサとを含み、該第１のプロセッサは、
前記リモートデバイス上の前記第１のオブジェクトのバイトオフセットごとに第１のフィンガプリント関数を計算し、
前記第１のフィンガプリント関数に基づいて前記リモートデバイス上の前記第１のオブジェクトをチャンキングし、
前記リモートデバイス上で前記第１のオブジェクトに関連するチャンクごとにリモートシグネチャを計算し、
前記リモートデバイス上で前記第１のオブジェクトに関連するリモートのシグネチャおよびチャンク長のリストを生成し、
前記リモートのシグネチャおよびチャンク長のリストを前記リモートデバイスを用いて前記ネットワークへ送信し、
少なくとも１つの更新されたオブジェクトチャンクを送信するための前記ネットワークからの要求を前記リモートデバイスを用いて受信し、かつ
前記ネットワーク上に少なくとも１つの更新されたオブジェクトチャンクを送信するように設定されており、
前記システムはさらに、前記リモートデバイスと有効な通信をして前記ネットワーク上にオブジェクトを円滑に更新するローカルデバイスを含み、該ローカルデバイスは、
前記ネットワーク上で通信を円滑に行うように配設された第２のネットワーク接続デバイスと、
第２のオブジェクトを記憶するように配設された第２のデータストーアと、
前記第２のデータストーアと前記第２のネットワーク接続装置とに連結する第２のプロセッサとを含み、該第２のプロセッサは、
前記ローカルデバイス上で前記第２のオブジェクトのバイトオフセットごとに第２のフィンガプリント関数を計算し、前記第１および第２のオブジェクトが互いに関連しており、ここで前記第１のフィンガプリント関数が前記第２のフィンガプリント関数にマッチングし、
前記第２のフィンガプリント関数に基づいて前記ローカルデバイス上で前記第２のオブジェクトをチャンキングし、ここで前記リモートデバイス上の前記第１のオブジェクトのチャンキングが前記ローカルデバイス上の前記第２のオブジェクトのャンキングとマッチングし
前記ローカルデバイス上で前記第２のオブジェクトに関連する各チャンクごとにローカルシグネチャを計算し、ここで該ローカルシグネチャの計算が、前記リモートシグネチャの計算とし、
前記ローカルデバイス上でローカルのシグネチャおよびチャンク長のリストを生成し、該ローカルのシグネチャおよびチャンク長のリストが前記第２のオブジェクトに関連し、
帯域幅の使用が前記ローカルデバイスへの前記リモートのシグネチャおよびチャンク長のリストの転送について最小になるように、前記ネットワーク上で前記リモートデバイスから前記ローカルデバイスへの前記リモートのシグネチャおよびチャンク長のリストのチャンキングされた伝送をネゴシエーションし、
前記ローカルデバイス上で前記ローカルのシグネチャおよびチャンク長のリストを前記リモートのシグネチャおよびチャンク長のリストと比較することによって前記第１のオブジェクトと前記第２のオブジェクトの間の差分を識別し、
前記第１のオブジェクトと前記第２のオブジェクトの間の差分が前記ローカルデバイスによって識別されるとき前記リモートデバイスから少なくとも１つの更新されたオブジェクトチャンクの伝送を要求し、
前記リモートデバイスからの前記少なくとも１つの更新されたオブジェクトチャンクを受信し、かつ
前記少なくとも１つの更新されたオブジェクトチャンクを用いて前記ローカルデバイス上で前記第１のオブジェクトのコピーを組立てすること
を特徴とするシステム。
【請求項２】
前記第２のプロセッサは、さらに前記リモートデバイスから前記第１のオブジェクトについての更新を要求するように設定されていることを特徴とする請求項１に記載のシステム。
【請求項３】
前記第１のプロセッサは、さらに前記ローカルデバイスから前記第１のオブジェクトについての更新を要求するように設定されていることを特徴とする請求項１に記載のシステム。
【請求項４】
前記リモートのシグネチャおよびチャンク長のリストを送信することは、前記リモートデバイスから前記ローカルデバイスに前記リモートのシグネチャおよびチャンク長のリストの少なくとも一部分を送信することを含むことを特徴とする請求項１に記載のシステム。
【請求項５】
前記ローカルデバイスおよび前記リモートデバイスのうちの一方は、クライアントであり、前記ローカルデバイスおよび前記リモートデバイスのうちの他方は、サーバであることを特徴とする請求項１に記載のシステム。
【請求項６】
前記ネットワークは、直接配線接続、パラレルポート、シリアルポート、ＵＳＢ（Universal Serial Bus）ポート、ＩＥＥＥ(Institute of Electrical and Electronic Engineers) １３９４ポート、無線接続、ＩＲ(赤外線)ポート、ブルートゥースポート、有線ネットワーク、無線ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、ウルトラワイドエリアネットワーク、インターネット、イントラネット、およびエクストラネットを含むグループの少なくとも１つのメンバーであることを特徴とする請求項１に記載のシステム。
【請求項７】
前記ローカルデバイス上で前記第２のオブジェクトに関連するチャンクごとに前記ローカルシグネチャを計算することは、強化ハッシング関数を前記ローカルデバイス上で前記チャンクに対して適用することを含むことを特徴とする請求項１に記載のシステム。
【請求項８】
前記ローカルデバイス上で前記第１のオブジェクトと前記第２のオブジェクトの間の差分を識別することは、
前記リモートのシグネチャおよびチャンク長のリストを前記ローカルのシグネチャおよびチャンク長のリストと比較し、
前記リモートのシグネチャおよびチャンク長のリストと前記ローカルのシグネチャおよびチャンク長のリストの間の少なくとも１つの差分を識別し、
前記リモートのシグネチャおよびチャンク長のリストに前記少なくとも１つの差分をマッピングし、
前記少なくとも１つの差分と前記リモートのシグネチャおよびチャンク長のリストの間での前記マッピングから前記少なくとも１つの更新されたオブジェクトチャンクを識別する
ことを含むことを特徴とする請求項１に記載のシステム。
【請求項９】
前記リモートデバイス上で前記第１のオブジェクトのバイトオフセットごとに前記第１のフィンガプリント関数を計算することは、
前記第１のオブジェクトに関連する各バイト位置の周囲で参照されるスモールウィンドウを提供し、
バイト位置ごとに前記スモールウィンドウを使用してフィンガプリントを生成する
ことを含むことを特徴とする請求項１に記載のシステム。
【請求項１０】
前記第１のプロセッサは、さらに、前記第１のオブジェクトに関連するデータタイプ、前記第２のオブジェクトに関連するデータタイプ、前記リモートデバイスに関連する環境制約、および前記ローカルデバイスに関連する環境制約と、前記ネットワークの特性と、前記第１のオブジェクトに関連する使用モデルと、前記第２のオブジェクトに関連する使用モデルを含むグループの少なくとも１つのメンバーに基づいて、前記スモールウィンドウに関連するウィンドウサイズを調整するように設定されていることを特徴とする請求項９に記載のシステム。
【請求項１１】
前記第１のフィンガプリント関数は、ラビン多項式を使用したハッシュ関数、循環シフティングハッシュ関数、３２ビットアドラーハッシュ関数を含むグループの少なくとも１つのメンバーからなることを特徴とする請求項１に記載のシステム。
【請求項１２】
前記リモートデバイス上で前記第１のオブジェクトをチャンキングすることは、少なくとも１つのチャンキングパラメータを決定することを含むことを特徴とする請求項１に記載のシステム。
【請求項１３】
前記リモートデバイス上で前記第１のオブジェクトをチャンキングすることは、さらに
前記少なくとも１つのチャンキングパラメータからチャンキングホライズンを決定し、
前記第１のオブジェクト内の各位置においてハッシュ値を計算し、
前記第１のオブジェクト内の各位置の周囲の前記チャンキングホライズン内に位置づけられたハッシュ値に数学関数を適用し、
前記数学関数が満たされるときにカットポイントおよびチャンキング境界のうちの少なくとも１つを指定し、
前記指定されたカットポイントを用いて前記第１のオブジェクトをチャンキングする
ことを含むことを特徴とする請求項１２に記載のシステム。
【請求項１４】
前記数学関数は、前記ホライズン内の最大値を決定すること、前記ホライズン内の最小値を決定すること、および前記ホライズン内のハッシュ値の間の差分を評価することを含むグループの少なくとも１つのメンバーからなることを特徴とする請求項１３に記載のシステム。
【請求項１５】
前記リモートデバイス上で前記第１のオブジェクトをチャンキングすることは、
前記少なくとも１つのチャンキングパラメータからホライズン、トリガ値、および他のトリガのリストを決定し、
前記第１のオブジェクト内の位置ごとにハッシュ値を計算し、
各計算済みのハッシュ値に数学関数を適用し、
前記数学関数が、所与のオフセットにおいて前記トリガ値を獲得し、前記ホライズンが提供するすべての対応するオフセットにおいて前記他のトリガを獲得するときにカットポイントチャンキング境界の少なくとも１つを指定し、
前記指定されたカットポイントを用いて前記第１のオブジェクトをチャンキングする
ことを含むことを特徴とする請求項１２に記載のシステム。
【請求項１６】
前記数学関数は、ハッシュ値をブール値にマッピングする述語、およびハッシュ値を適切な小さなドメイン中に区分する別の数学関数を含むグループの少なくとも１つのメンバーからなることを特徴とする請求項１３に記載のシステム。
【請求項１７】
前記第２のプロセッサは、さらに、前記第１のオブジェクトに関連するデータタイプ、前記第２のオブジェクトに関連するデータタイプ、前記リモートデバイスに関連する環境制約、前記ローカルデバイスに関連する環境制約、前記ネットワークの特性、前記第１のオブジェクトに関連する使用モデル、および前記第２のオブジェクトに関連する使用モデルを含むグループの少なくとも１つのメンバーに基づいて、前記少なくとも１つのチャンキングパラメータを調整するように設定されていることを特徴とする請求項１２に記載のシステム。
【請求項１８】
前記第１のプロセッサは、さらに、前記少なくとも１つの更新されたオブジェクトチャンクの伝送を求める前記受信された要求に応答して前記リモートデバイス上で前記第２のオブジェクトから前記少なくとも１つの更新されたオブジェクトチャンクを抽出するように設定されていることを特徴とする請求項１に記載のシステム。
【請求項１９】
前記第２のプロセッサは、さらに前記少なくとも１つの更新されたオブジェクトチャンクを用いて前記ローカルデバイス上で更新された第１のオブジェクトを組み立てるように設定されていることを特徴とする請求項１に記載のシステム。
【請求項２０】
前記更新された第１のオブジェクトを組み立てることは、さらに前記更新された第１のオブジェクトが、前記第１のオブジェクトからの少なくとも１つの変更されていないチャンクを含むように用意されていることを特徴とする請求項１９に記載のシステム。
【請求項２１】
前記第１のプロセッサは、さらに、
前記リモートのシグネチャおよびチャンク長のリストをチャンキングしてチャンキングされたリモートのシグネチャおよびチャンク長のリストを提供し、
前記チャンキングされたリモートのシグネチャおよびチャンク長のリストに関連するチャンクごとに再帰的リモートシグネチャを計算し、
前記再帰的リモートシグネチャを用いて再帰的リモートシグネチャおよびチャンク長のリストを生成し、
前記ローカルデバイス上で前記ローカルのシグネチャおよびチャンク長のリストをチャンキングし、ここで前記ローカルのシグネチャおよびチャンク長のリストのチャンキングが、前記リモートのシグネチャおよびチャンク長のリストのチャンキングにマッチングされられるように設定されており、かつ
前記第２のプロセッサが、さらに、
前記チャンキングされたローカルのシグネチャおよびチャンク長のリストに関連するチャンクごとに再帰的ローカルシグネチャを計算し、ここで前記再帰的ローカルシグネチャの計算が、前記再帰的リモートシグネチャの計算とマッチングし、
前記再帰的ローカルシグネチャと前記チャンキングされたローカルのシグネチャおよびチャンク長のリストとを用いて前記ローカルデバイス上で再帰的ローカルシグネチャおよびチャンク長のリストを生成し、ここで前記再帰的ローカルシグネチャおよびチャンク長のリストの生成が、前記再帰的リモートシグネチャおよびチャンク長のリストの生成とマッチングし、
前記ローカルデバイスへの前記再帰的リモートシグネチャおよびチャンク長のリストの前記転送についての帯域幅の使用が最小になるように、前記ネットワーク上で前記リモー
トデバイスから前記ローカルデバイスへの前記再帰的リモートシグネチャおよびチャンク長のリストの伝送をネゴシエーションし、
前記ローカルデバイス上で前記再帰的リモートシグネチャおよびチャンク長のリストと前記再帰的ローカルシグネチャおよびチャンク長のリストとの間の差分を識別し、
前記ローカルデバイスによって、前記再帰的リモートシグネチャおよびチャンク長のリストと前記再帰的ローカルシグネチャおよびチャンク長のリストとの間で差分が識別されるときに、前記リモートデバイスからの少なくとも１つの更新されたシグネチャチャンクの伝送を要求する
ように設定されていることを特徴とする請求項１に記載のシステム。
【請求項２２】
前記リモートデバイスから前記ローカルデバイスへの前記再帰的リモートシグネチャおよびチャンク長のリストの伝送をネゴシエーションすることは、前記ネットワーク上で前記リモートデバイスから前記ローカルデバイスに前記再帰的リモートシグネチャおよびチャンク長のリストの少なくとも一部分を送信するステップを含むことを特徴とする請求項２１に記載のシステム。
【請求項２３】
前記リモートデバイス上で前記リモートのシグネチャおよびチャンク長のリストをチャンキングすることは、
前記リモートデバイス上で前記リモートのシグネチャおよびチャンク長のリストのバイトオフセットごとに第３のフィンガプリント関数を計算し、
前記第３のフィンガプリント関数に基づいて前記リモートデバイス上で前記リモートのシグネチャおよびチャンク長のリストをチャンキングして、前記チャンキングされたリモートのシグネチャおよびチャンク長のリストを提供する
ように設定されていることを特徴とする請求項２１に記載のシステム。
【請求項２４】
前記ローカルデバイス上で前記ローカルのシグネチャおよびチャンク長のリストをチャンキングすることは、
前記ローカルデバイス上で前記ローカルのシグネチャおよびチャンク長のリストのバイトオフセットごとに第４のフィンガプリント関数を計算し、ここで前記第４のフィンガプリント関数が、前記第３のフィンガプリント関数にマッチングし、
前記第４のフィンガプリント関数に基づいて前記ローカルデバイス上で前記ローカルのシグネチャおよびチャンク長のリストをチャンキングして前記チャンキングされたローカルのシグネチャおよびチャンク長のリストを提供し、ここで前記ローカルデバイス上で前記ローカルのシグネチャおよびチャンク長のリストのチャンキングが、前記リモートデバイス上で前記リモートのシグネチャおよびチャンク長のリストのチャンキングとマッチングする
ように設定されていることを特徴とする請求項２３に記載のシステム。
【請求項２５】
前記リモートデバイス上で、前記第３のフィンガプリント関数を計算すること、および前記リモートのシグネチャおよびチャンク長のリストをチャンキングすることは、前記リモートデバイス上での前記第１のフィンガプリント関数を計算すること、および前記第１のオブジェクトをチャンキングすることとは異なる方法を使用することを特徴とする請求項２４に記載のシステム。
【請求項２６】
前記リモートデバイス上での前記第３のフィンガプリント関数を計算すること、および前記リモートのシグネチャおよびチャンク長のリストをチャンキングすることは、前記リモートデバイス上での前記第１のフィンガプリント関数を計算すること、および前記第１のオブジェクトをチャンキングすることと同じやり方を使用することを特徴とする請求項２３に記載のシステム。
【請求項２７】
前記リモートデバイス上で前記リモートのシグネチャおよびチャンク長のリストのバイトオフセットごとに前記第３のフィンガプリント関数を計算することは、
前記リモートのシグネチャおよびチャンク長のリストに関連する各バイト位置の周囲で参照されるスモールウィンドウを提供し、
バイト位置ごとに前記スモールウィンドウを使用してフィンガプリントを生成する
ことを含むことを特徴とする請求項２３に記載のシステム。
【請求項２８】
前記第１のプロセッサは、さらに、前記第１のオブジェクトに関連するデータタイプ、前記第２のオブジェクトに関連するデータタイプ、前記リモートデバイスに関連する環境制約、および前記ローカルデバイスに関連する環境制約と、前記ネットワークの特性と、前記第１のオブジェクトに関連する使用モデルと、前記第２のオブジェクトに関連する使用モデルを含むグループの少なくとも１つのメンバーに基づいて、前記スモールウィンドウに関連するウィンドウサイズを調整するように設定されていることを特徴とする請求項２７に記載のシステム。
【請求項２９】
前記第３のフィンガプリント関数は、ラビン多項式を使用したハッシュ関数、循環シフティングハッシュ関数、３２ビットアドラーハッシュ関数、循環シフトをもつ６２ビットランダムハッシュを含むグループの少なくとも１つのメンバーからなることを特徴とする請求項２３に記載のシステム。
【請求項３０】
前記リモートデバイス上で前記リモートのシグネチャおよびチャンク長のリストをチャンキングすることは、少なくとも１つの再帰的チャンキングパラメータを決定することを含むことを特徴とする請求項２１に記載のシステム。
【請求項３１】
前記リモートデバイス上で前記リモートのシグネチャおよびチャンク長のリストをチャンキングすることは、さらに、
前記少なくとも１つの再帰的チャンキングパラメータから再帰的チャンキングホライズンを決定し、
前記リモートのシグネチャおよびチャンク長のリスト内の各位置においてハッシュ値を計算し、
前記リモートのシグネチャおよびチャンク長のリスト内の各位置の周囲の前記再帰的チャンキングホライズン内に位置づけられたハッシュ値に数学関数を適用し、
前記数学関数が満たされるときに前記チャンキング境界中にカットポイントを指定し、
前記指定されたカットポイントを用いて前記リモートのシグネチャおよびチャンク長のリストをチャンキングする
ことを含むことを特徴とする請求項３０に記載のシステム。
【請求項３２】
前記リモートデバイス上で前記リモートのシグネチャおよびチャンク長のリストをチャンキングすることは、さらに、
前記少なくとも１つの再帰的チャンキングパラメータから再帰的ホライズン、再帰的トリガ値、および他の再帰的トリガのリストを決定し、
前記リモートのシグネチャおよびチャンク長のリスト内の各位置においてハッシュ値を計算し、
計算された各ハッシュ値に数学関数を適用し、
前記数学関数が、所与のオフセットにおいて前記再帰的トリガ値を獲得し、前記再帰的ホライズンが提供するすべての対応するオフセットにおいて前記他の再帰的トリガを獲得するときにおいて、少なくとも１つのカットポイントおよびチャンキング境界を指定し、
前記指定されたカットポイントを用いて前記リモートのシグネチャおよびチャンク長のリストをチャンキングする
ことを含むことを特徴とする請求項３０に記載のシステム。
【請求項３３】
前記数学関数は、ハッシュ値をブール値にマッピングする述語、およびハッシュ値を適切な小さなドメイン中に区分する他の任意の数学関数を含むグループの少なくとも１つのメンバーからなることを特徴とする請求項３１に記載のシステム。
【請求項３４】
前記数学関数は、前記ホライズン内の最大値の決定、前記ホライズン内の最小値の決定、前記ホライズン内のハッシュ値の間の差分の評価、前記ホライズン内のハッシュ値の合計、および前記ホライズン内のハッシュ値の平均値の計算を含むグループの少なくとも１つのメンバーからなることを特徴とする請求項３１に記載のシステム。
【請求項３５】
前記第１のプロセッサは、さらに、前記第１のオブジェクトに関連するデータタイプ、前記第２のオブジェクトに関連するデータタイプ、前記リモートデバイスに関連する環境制約、前記ローカルデバイスに関連する環境制約、前記ネットワークの特性、前記第１のオブジェクトに関連する使用モデル、前記第２のオブジェクトに関連する使用モデルを含むグループの少なくとも１つのメンバーに基づいて、前記少なくとも１つの再帰的チャンキングパラメータを調整するように設定されていることを特徴とする請求項３２に記載のシステム。
【請求項３６】
前記リモートデバイス上で前記チャンキングされたリモートのシグネチャおよびチャンク長のリストに関連するシグネチャチャンクごとに前記再帰的リモートシグネチャを計算することは、さらに、前記リモートデバイス上で前記シグネチャチャンクに対して強化ハッシング関数を適用することを含むことを特徴とする請求項２８に記載のシステム。
【請求項３７】
前記第１のプロセッサは、さらに、前記少なくとも１つの更新されたシグネチャチャンクの伝送を求める前記受信された要求に応答して前記リモートデバイス上で前記リモートのシグネチャおよびチャンク長のリストから前記少なくとも１つの更新されたシグネチャチャンクを抽出するように設定されていることを特徴とする請求項２１に記載のシステム。
【請求項３８】
前記ローカルのシグネチャおよびチャンク長のリストを組み立てることは、さらに、前記ローカルデバイス上で、前記リモートのシグネチャおよびチャンク長のリストの新しいコピーを提供することを含み、前記リモートのシグネチャおよびチャンク長のリストの前記新しいコピーは、前記少なくとも１つの更新されたシグネチャチャンクを含むことを特徴とする請求項３７に記載のシステム。
【請求項３９】
前記第２のプロセッサは、さらに、
前記ローカルデバイスを用いて前記ネットワークから前記少なくとも１つの更新されたシグネチャチャンクを受信し、
前記少なくとも１つの更新されたシグネチャチャンクを用いて前記ローカルデバイス上で前記リモートのシグネチャおよびチャンク長のリストのコピーを組み立てる
ように設定されていることを特徴とする請求項２１に記載のシステム。
【請求項４０】
前記リモートのシグネチャおよびチャンク長のリストが、前記ローカルのシグネチャおよびチャンク長のリストからの少なくとも１つの変更されていないチャンクを含むことを特徴とする請求項３７に記載のシステム。
【請求項４１】
前記ローカルデバイス上で前記再帰的リモートシグネチャおよびチャンク長のリストと前記再帰的ローカルシグネチャおよびチャンク長のリストとの間の差分を識別することは、さらに、
前記再帰的リモートシグネチャおよびチャンク長のリストを前記再帰的ローカルシグネチャおよびチャンク長のリストと比較し、
前記再帰的リモートシグネチャおよびチャンク長のリストと前記再帰的ローカルシグネチャおよびチャンク長のリストとの間の差分に関連する少なくとも１つのシグネチャチャンクを識別し、
前記少なくとも１つのシグネチャチャンクを前記リモートのシグネチャおよびチャンク長のリストにマッピングし、
前記少なくとも１つのシグネチャチャンクと前記リモートのシグネチャおよびチャンク長のリストの間の前記マッピングから前記少なくとも１つの更新されたシグネチャチャンクを識別する
ことを含むことを特徴とする請求項２１に記載のシステム。
【請求項４２】
前記ネットワーク上で前記リモートデバイスから前記ローカルデバイスへの前記リモートのシグネチャおよびチャンク長のリストのチャンキングされた伝送をネゴシエーションすることは、さらに、
前記第１のオブジェクトに関連するデータサイズ、前記第２のオブジェクトに関連するデータサイズ、前記リモートデバイスに関連する環境制約、および前記ローカルデバイスに関連する環境制約、前記ネットワークの特性、前記第１のオブジェクトに関連する使用モデル、前記第２のオブジェクトに関連する使用モデル、前記第１のオブジェクトに関連するチャンクシグネチャの数、ならびに前記チャンキングされたリモートのシグネチャおよびチャンク長のリストに関連するチャンクシグネチャの数を含むグループの少なくとも１つのメンバーに基づいて、再帰的処理のための反復の回数を決定することを含むことを特徴とする請求項１に記載のシステム。
【請求項４３】
前記が第１のプロセッサと前記第２のプロセッサは、さらに
前記シグネチャおよびチャンク長のリストをチャンキングしてチャンキングされたシグネチャおよびチャンク長のリストを提供し、
前記チャンキングされたシグネチャおよびチャンク長のリストに関連するチャンクごとに再帰的シグネチャを計算し、
前記再帰的シグネチャと前記チャンキングされたシグネチャおよびチャンク長のリストとを用いて、再帰的なシグネチャおよびチャンク長のリストを生成し、
追加の反復が再帰的な処理について必要とされるときに前記シグネチャおよびチャンク長のリストを前記再帰的なシグネチャおよびチャンク長のリストに初期化し、かつ
前記再帰的手続きが反復の回数を完了しているときに前記再帰的なシグネチャおよびチャンク長のリストを返すことを含んでいるシグネチャおよびチャンク長のリストを処理するための再帰的手続を実行するように設定されており、
前記第１のプロセッサは、さらに、前記リモートのシグネチャおよびチャンク長のリストを前記シグネチャおよびチャンク長のリストとして前記再帰的手続きに渡し、前記再帰的手続きから前記再帰的リモートシグネチャおよびチャンク長のリストを返すことにより、前記リモートデバイス上で前記再帰的手続きを用いて前記リモートのシグネチャおよびチャンク長のリストを処理するように設定されており、
前記第２のプロセッサは、さらに、前記ローカルのシグネチャおよびチャンク長のリストを前記シグネチャおよびチャンク長のリストとして前記再帰的手続きに渡し、前記再帰的手続きから前記再帰的ローカルシグネチャおよびチャンク長のリストを返すことにより、前記ローカルデバイス上で前記再帰的手続きを用いて前記ローカルのシグネチャおよびチャンク長のリストを処理するように設定されている
ことを特徴とする請求項４２に記載のシステム。
【請求項４４】
前記リモートデバイス上で前記リモートのシグネチャおよびチャンク長のリストを生成することは、さらに前記リモートのシグネチャおよびチャンク長のリストをコンパクトに符号化することを含むことを特徴とする請求項１に記載のシステム。
【請求項４５】
前記ローカルデバイス上で前記ローカルのシグネチャおよびチャンク長のリストを生成することは、さらに前記ローカルのシグネチャおよびチャンク長のリストをコンパクトに符号化することを含むことを特徴とする請求項１に記載のシステム。
【請求項４６】
前記リモートデバイス上で前記再帰的リモートシグネチャおよびチャンク長のリストを生成することは、さらに前記再帰的リモートシグネチャおよびチャンク長のリストをコンパクトに符号化することを含むことを特徴とする請求項２１に記載のシステム。
【請求項４７】
前記ローカルデバイス上で前記再帰的ローカルシグネチャおよびチャンク長のリストを生成することは、さらに前記再帰的ローカルシグネチャおよびチャンク長のリストをコンパクトに符号化することを含むことを特徴とする請求項２１に記載のシステム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００４５
【補正方法】変更
【補正の内容】
【００４５】
再帰的チャンキング動作の結果、そのオブジェクトに関連する再帰的シグネチャの数は、その平均チャンクサイズＣに等しいファクタだけ低減され、再帰的シグネチャのかなり小さな数がもたらされる（それぞれ、オブジェクトＯＡについてはｓ＜＜ｋ、オブジェクトＯＢについてはｒ＜＜ｎとなる）。一実施形態においては、最初のオブジェクトＯＡおよびＯＢをチャンキングするためのものと同じチャンキングパラメータを、これらのシグネチャをチャンキングするために使用することができる。代替実施形態においては、他のチャンキングパラメータを、再帰的ステップのために使用することができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００７１
【補正方法】変更
【補正の内容】
【００７１】
ステップ５１２において、このローカルデバイスは、この要求された再帰的チャンクデータを受信し伸張する。ステップ５１３において、そのシグネチャおよびチャンク長のリスト（（ＳｉｇＡ１，ＬｅｎＡ１）．．．（ＳｉｇＡｋ，ＬｅｎＡｋ））のそのローカルコピーとこの受信された再帰的チャンクデータとを使用して、このローカルデバイスは、そのシグネチャおよびチャンク長のリスト（（ＳｉｇＢ１，ＬｅｎＢ１）．．．（ＳｉｇＢｎ，ＬｅｎＢｎ））のローカルコピーを再組立てする。次いで、図４Ａ中のステップ４０５から実行が継続される。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０１１５
【補正方法】変更
【補正の内容】
【０１１５】
ステップ８０９における条件が偽である場合には、ステップ８１2から実行が継続され、ここでｍｉｎは、（ｍｉｎ＋１）％ｈに設定される。次いでステップ８０５に戻って実行が継続される。
【手続補正５】
【補正対象書類名】図面
【補正対象項目名】図８
【補正方法】変更
【補正の内容】
【図８】
2005302004.tif 000001