【手続補正書】
【提出日】平成20年12月12日(2008.12.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
少なくとも１つのアップデートを記憶するためのキャッシュを有する第１のコンピューティングデバイスおよびホストを備えたネットワークにおける前記第１のコンピューティングデバイスを更新する方法であって、
（Ａ）前記ホストから、利用可能なアップデートのリストを前記第１のコンピューティングデバイスで受け取るステップと、
（Ｂ）前記（Ａ）に応答して、前記利用可能なアップデートのリストから必要なアップデートを前記第１のコンピューティングデバイスで判定するステップであって、該必要なアップデートは、複数の部分（ピース）に区分されるステップと、
（Ｃ）前記ホストから、前記複数の部分（ピース）それぞれにつきその部分（ピース）をダウンロードできるようにしている少なくとも１つのコンピューティングデバイスを識別する前記ネットワーク内のコンピューティングデバイスのリストを前記第１のコンピューティングデバイスで受け取るステップと、
（Ｄ）前記キャッシュ内の利用可能なスペースを生成するように決定された場合、前記キャッシュ内のコンポーネントを前記第１のコンピューティングデバイスによって削除するステップと
（Ｅ）前記コンピューティングデバイスのリストの少なくともいくつかのコンピューティングデバイスから前記複数の部分（ピース）を前記第１のコンピューティングデバイスにダウンロードするステップであって、前記複数の部分（ピース）の少なくとも２つは、異なるコンピューティングデバイスからダウンロードされるステップと、
（Ｆ）前記ダウンロードされた複数の部分（ピース）を利用して、前記第１のコンピューティングデバイスのソフトウェアを更新するステップと
を備えることを特徴とする方法。
【請求項２】
前記必要なアップデートのアップデートオプションのリストを受け取るステップであって、各該アップデートオプションは、複数の部分に区分されるステップと、
前記アップデートオプションのリストからアップデートオプションを選択するステップと
をさらに備え、
前記ホストから前記ネットワーク内のコンピューティングデバイスのリストを前記第１のコンピューティングデバイスで受け取るステップは、前記選択されたアップデートオプションそれぞれについて、少なくとも１つのコンピューティングデバイスを識別するコンピューティングデバイスのリストを受け取るステップを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記アップデートオプションリストは、前記必要なアップデートについて、フルパッチと少なくとも１つの細部パッチを含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記細部パッチは、ファイルのファイル名と予定ハッシュ値を含むことを特徴とする請求項３に記載の方法。
【請求項５】
前記必要なアップデートを前記（Ａ）に応答して前記第１のコンピューティングデバイスで判定するステップは、前記第１のコンピューティングデバイスをスキャンしてその現在の状態を判定し、前記現在の状態を前記利用可能アップデートのリストと比較することを含み、
前記（Ｄ）は、
前記キャッシュ内に記憶された各アップデートに優先度を割り当てることによって、前記キャッシュ内に記憶されたアップデートのための優先度リストを生成するステップと、
前記複数の部分（ピース）をダウンロードするための利用可能なスペース持つキャッシュかどうかを判定するステップと、
前記キャッシュが利用可能なスペースを持っていない場合に、削除するためのコンポーネントであって、前記優先度リスト内の低い優先度を持つアップデートに対応するコンポーネントを選択するステップと、
を含み、
前記各アップデートのための優先度の割り当ては各アップデートに対してのリクエストの頻度に基づく
ことを特徴とする請求項１に記載の方法。
【請求項６】
前記コンピューティングデバイスのリストは、前記複数の部分の少なくとも１つについて、複数のコンピューティングデバイスの識別を含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記コンピューティングデバイスは、インターネットプロトコルアドレスで識別されることを特徴とする請求項１に記載の方法。
【請求項８】
前記ソフトウェアを更新するステップは、
前記ダウンロードされた部分を組み合わせてパッチにするステップと
前記パッチをインストールするステップと
を含むことを特徴とする請求項１に記載の方法。
【請求項９】
前記ダウンロードされた各部分は、前記部分のハッシュに基づいて確認されることを特徴とする請求項１に記載の方法。
【請求項１０】
前記ダウンロードされた複数の部分の識別を提供するステップと、
前記識別されたダウンロードされた複数の部分を他のコンピューティングデバイスと共有するステップと
をさらに備えることを特徴とする請求項１に記載の方法。
【請求項１１】
前記ダウンロードされた複数の部分の識別は、ダウンロードされた各部分のハッシュ値を含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
所定の時点には、前記識別されたダウンロードされた複数の部分は共有されていないことを特徴とする請求項１に記載の方法。
【請求項１３】
キャッシュを有するクライアントとホストを備えたネットワークにおけるソフトウェアアップデートをダウンロードするために前記クライアントにピアリストを提供する方法であって、
利用可能なアップデートを識別するリストを前記ホストによって前記クライアントに送信するステップと、
前記クライアントから、前記利用可能なアップデートについてのピアリスト要求を前記ホストで受け取るステップと、
複数のピアを識別するピアリストを前記ホストで生成するステップであって、識別される各ピアは、前記利用可能なアップデートの少なくとも一部分をダウンロードできるようにしているステップと、
前記ピアリストを前記ホストによって前記クライアントに送信するステップと、
前記キャッシュ内の利用可能なスペースを生成するように決定された場合、前記キャッシュ内のコンポーネントを削除するステップと
を備えることを特徴とする方法。
【請求項１４】
前記利用可能なアップデートを識別する前記リストは、複数の利用可能なアップデートを識別することを特徴とする請求項１３に記載の方法。
【請求項１５】
前記リストは、前記利用可能なアップデートについて、複数のアップデートオプションを識別することを特徴とする請求項１３に記載の方法。
【請求項１６】
前記複数のアップデートオプションは、フルパッチと少なくとも１つの細部パッチを含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
前記利用可能なアップデートを識別するリストを前記ホストによって前記クライアントに送信するのに応答して、前記利用可能なアップデートのアップデートオプションの要求を受け取るステップと、
前記利用可能なアップデートについての複数のアップデートオプションを識別するリストを生成するステップと、
複数のアップデートオプションを識別する前記リストを送信するステップと
をさらに備えることを特徴とする請求項１３に記載の方法。
【請求項１８】
前記クライアントから前記ピアリスト要求を前記ホストで受け取るステップは、
前記複数のアップデートオプションの１つについてのピアリスト要求を受け取るステップ
を含むことを特徴とする請求項１７に記載の方法。
【請求項１９】
前記利用可能なアップデートのキャッシュされた部分の識別を受け取るステップと、
前記利用可能アップデートのマスタピアリストを更新するステップと
をさらに備えることを特徴とする請求項１３に記載の方法。
【請求項２０】
前記利用可能なアップデートは、複数の部分に分割され、前記ピアリストは、前記複数の部分それぞれにつき少なくとも１つのピアを識別することを特徴とする請求項１３に記載の方法。
【請求項２１】
前記識別されるピアの１つはホストコンピュータであることを特徴とする請求項２０に記載の方法。
【請求項２２】
アップデートを記憶するためのキャッシュを有するコンピュータシステムおよびホストを備えるネットワークにおけるアップデートを取得する方法を行うコンピュータ実行可能プログラムを含むコンピュータ可読媒体を有するコンピュータシステムであって、前記方法は、
（Ａ）前記ホストから、利用可能なアップデートのリストを前記コンピュータシステムで受け取るステップと、
（Ｂ）前記（Ａ）に応答して、前記利用可能なアップデートのリストから必要なアップデートを前記コンピュータシステムで識別するステップと、
（Ｃ）前記必要なアップデートのピアリストを前記ホストから前記コンピュータシステムによって要求するステップと、
（Ｄ）前記必要なアップデートのピアリストを前記ホストから前記コンピュータシステムで受け取るステップであって、前記ピアリストは、前記必要なアップデートの複数の部分を識別し、各部分につき、その部分をダウンロードできるようにしている前記ネットワーク内のコンピューティングデバイスを識別するステップと、
（Ｅ）前記キャッシュ内の利用可能なスペースを生成するように決定された場合、前記キャッシュ内のコンポーネントを前記コンピュータシステムによって削除するステップと、
（Ｆ）前記識別されたコンピューティングデバイスから前記各部分を前記コンピュータシステムにダウンロードするステップと
を備えることを特徴とするコンピュータシステム。
【請求項２３】
前記ピアリストは、前記複数の部分それぞれにつき、複数の二次分割部分を識別し、各二次分割部分につき、その二次分割部分をダウンロードできるようにしているコンピューティングデバイスを識別することを特徴とする請求項２２に記載のコンピュータシステム。
【請求項２４】
前記ピアリストは、前記複数の二次分割部分それぞれにつき、複数の三次分割部分を識別し、各三次分割部分につき、その三次分割部分をダウンロードできるようにしているコンピューティングデバイスを識別することを特徴とする請求項２３に記載のコンピュータシステム。
【請求項２５】
前記ピアリストは、各部分のハッシュ値を識別することを特徴とする請求項２２に記載のコンピュータシステム。
【請求項２６】
前記（Ｆ）は、
前記ダウンロードされた部分のハッシュ値を計算して第２のハッシュ値を得るステップと、
前記ピアリストの第１のハッシュ値と前記第２のハッシュ値を比較して、前記ダウンロードされた部分の有効性を確認するステップと、
を含み、
前記（Ｅ）は、
前記キャッシュ内に記憶された各アップデートに優先度を割り当てることによって、前記キャッシュ内に記憶されたアップデートのための優先度リストを生成するステップと、
前記複数の部分（ピース）をダウンロードするための利用可能なスペース持つキャッシュかどうかを判定するステップと、
前記キャッシュが利用可能なスペースを持っていない場合に、削除するためのコンポーネントであって、前記優先度リスト内の低い優先度を持つアップデートに対応するコンポーネントを選択するステップと、
を含み、前記各アップデートのための優先度の割り当ては各アップデートに対してのリクエストの頻度に基づく
ことを特徴とする請求項２５に記載のコンピュータシステム。
【請求項２７】
前記ダウンロードされた部分それぞれを組み合わせるステップと、
前記アップデートをインストールするステップと
をさらに備えることを特徴とする請求項２２に記載のコンピュータシステム。
【請求項２８】
前記ピアリストは、前記アップデートの第１のハッシュ値を含み、前記方法はさらに、
前記組み合わせられた部分のハッシュ値を計算して第２のハッシュ値を得るステップと、
前記第１のハッシュ値と前記第２のハッシュ値を比較して前記アップデートの有効性を確認するステップと
を含むことを特徴とする請求項２７に記載のコンピュータシステム。
【請求項２９】
前記ダウンロードされた部分の少なくとも１つをキャッシュに記憶するステップと、
前記キャッシュされた部分の識別を送信するステップと、
前記キャッシュされた部分をダウンロードに供するステップと
をさらに備えることを特徴とする請求項２２に記載のコンピュータシステム。
【請求項３０】
前記識別されたコンピューティングデバイスから前記部分それぞれを前記コンピュータシステムにダウンロードするステップは、
ダウンロードされる部分の真正性を確認するステップ
を含むことを特徴とする請求項２２に記載のコンピュータシステム。
【請求項３１】
前記部分それぞれを前記コンピュータシステムにダウンロードするステップは、
ダウンロードする部分を無作為に選択するステップと、
前記部分をダウンロードするコンピューティングデバイスを無作為に選択するステップと
を含むことを特徴とする請求項２２に記載のコンピュータシステム。
【請求項３２】
前記部分それぞれを前記コンピュータシステムにダウンロードするステップは、
その部分をダウンロードできるようにしている必要最小限のコンピューティングデバイスを有する部分を識別するステップと、
その部分をダウンロードできるようにしている必要最小限のコンピューティングデバイスを有する部分をダウンロードするステップと
を含むことを特徴とする請求項２２に記載のコンピュータシステム。