(57)【特許請求の範囲】
【請求項１】
ネットワークの第１の部分に接続されており、第１のネットワークアドレスを有する受信システムと送信システムの間で、前記受信システムによってまだ受信されていないファイルの残りの部分のファイルセグメントを送信するためのセッションを開始することと、  前記ファイルセグメントの第１の部分が前記受信システムによって受信された後で、かつ前記ファイルセグメントの第２の部分が前記受信システムによってまだ受信されていないセッションの間に、前記受信システムを前記ネットワークの前記第１の部分から切断し、それによってファイル転送動作を終了させることと、
前記ネットワークの前記第１の部分から前記受信システムを切断した後に、前記第１のネットワークアドレスとは異なる第２のネットワークアドレスを有する前記受信システムを前記ネットワークの第２の部分に接続することと、
前記受信システムを前記ネットワークの前記第２の部分に接続した後に、前記セッションを自動的に再開し、前記ファイルセグメントの前記第２の部分を前記送信システムから前記受信システムに送信することと、
を含む方法。
【請求項２】
前記送信システムが、前記セッションを再開するために前記受信システムから前記第２のネットワークアドレスを受信する、請求項１に記載の方法。
【請求項３】
前記送信システムが、前記セッションを再開するために前記受信システムから要求を受信する、請求項１に記載の方法。
【請求項４】
実質的に前記ネットワークの前記第1の部分から前記受信システムを切断した時点の前記セッションの状態を保持することをさらに含む、請求項１に記載の方法。
【請求項５】
前記受信システムがカウントダウンタイマーを使用し、前記セッションを再開するために前記送信システムに要求を送信することを開始する、請求項１に記載の方法。
【請求項６】
前記セッション再開後に、前記ファイルセグメントの前記第２の部分だけが前記送信システムから前記受信システムに送信される、請求項１に記載の方法。
【請求項７】
前記ファイルの残りの部分の決められたサイズおよび前記ファイルの前記残りの部分を転送するために使用可能な時間の量を用いて、前記ファイルセグメントを転送するための最小転送速度を決定することと、
前記最小転送速度および前記送信システムの最大転送容量を用いて、前記ファイルの前記残りの部分の前記ファイルセグメントを転送するための最大転送速度を決定することと、
をさらに含む、請求項１に記載の方法。
【請求項８】
前記送信システムの記憶装置に保持されるセッション状態に基づいて、前記送信システムから前記受信システムへ前記ファイルセグメントの前記第２の部分を送信することをさらに含む、請求項１に記載の方法。
【請求項９】
前記ファイルセグメントの前記第２の部分を、前記送信システム以外の送信システムから前記受信システムに送信することをさらに含む、請求項１に記載の方法。
【請求項１０】
前記ファイルセグメントの前記第２の部分を受信することと、
前記ファイルセグメントのサイズ、および前記ファイルセグメントが前記送信システムから送信された時と前記ファイルセグメントが前記受信システムで受信された時の間の経過時間を用いて、前記ファイルセグメントが前記送信システムから前記受信システムに送信された実際の転送速度を決定することと、
最大転送速度、最小転送速度、および前記実際の転送速度に基づいて待機期間を決定することと、
前記受信システムで前記ファイルセグメントを受信した後に、前記受信システムによる前記ファイルセグメントの受信を肯定応答する肯定応答メッセージを前記受信システムから送信する前に待機期間、待機することと、
前記受信システムから前記肯定応答メッセージを送信することと、
をさらに含む、請求項１に記載の方法。
【請求項１１】
前記ネットワークの前記第１の部分が、前記ネットワークの前記第２の部分とは異なるタイプである、請求項１に記載の方法。
【請求項１２】
ネットワークの第１の部分に接続され、第１のネットワークアドレスを有する受信システムに、送信システムから、ファイルの複数のセグメントのうちの１つを送信することと、
前記ネットワークの前記第１の部分から前記受信システムを切断し、それによってファイル転送動作を終了させることと、
第２のネットワークアドレスを有する前記受信システムを前記ネットワークの第２の部分に接続することと、
前記第２のネットワークアドレスを有する前記送信システムから前記受信システムへ前記ファイルの前記複数のセグメントのうちの別のセグメントを送信することと、
を含む方法。
【請求項１３】
前記ネットワークの前記第１の部分が、前記ネットワークの前記第２の部分とは異なるタイプである、請求項１２に記載の方法。
【請求項１４】
前記送信システムが前記受信システムから前記第２のネットワークアドレスを受信し、前記受信システムへ前記ファイルの前記複数のセグメントの他のセグメントを送信することを開始する、請求項１２に記載の方法。
【請求項１５】
前記受信システムが前記ネットワークの前記第２の部分に接続すると、前記送信システムが前記受信システムから自動的に要求を受信し、前記ファイルの前記複数のセグメントのうちの別のセグメントを送信する、請求項１２に記載の方法。
【請求項１６】
実質的に前記ネットワークの前記第１の部分から前記受信システムを切断する時点において、前記ファイルの前記複数のセグメントのうちの前記１つを送信することに関する情報を保持することをさらに含む、請求項１２に記載の方法。
【請求項１７】
前記受信システムがカウントダウンタイマーを使用し、前記ファイルの前記複数のセグメントのうちの別のセグメントを送信するために、要求を前記送信システムに送信することを開始する、請求項１２に記載の方法。
【請求項１８】
前記受信システムが前記ネットワークの第２の部分に接続された後、前記ファイルの前記複数のセグメントのうちの別のセグメントが、前記複数のファイルセグメントのうちの前記１つを前記受信システムに再送することなく、前記受信システムに送信される、請求項１２に記載の方法。
【請求項１９】
まだ送信されていない前記ファイルの残りの部分の決定されたサイズ、および前記ファイルの前記残りの部分を転送するために使用可能な時間の量を用いて、前記ファイルの前記複数のセグメントのうちの前記１つを転送するための最小転送速度を決定することと、
前記最小転送速度、および前記送信システムの最大転送容量を用いて、前記ファイルの前記複数のセグメントのうちの前記一つを転送するための最大転送速度を決定することと、
をさらに含む、請求項１２に記載の方法。
【請求項２０】
前記送信システムの記憶装置に保持されるセッション状態に基づいて、前記送信システムから前記受信システムに前記ファイルの前記複数のセグメントのうちの別のセグメントを送信することをさらに含む、請求項１２に記載の方法。
【請求項２１】
前記送信システム以外の送信システムから前記受信システムに前記ファイルの前記複数のセグメントのうちの別のセグメントを送信することをさらに含む、請求項１２に記載の方法。
【請求項２２】
前記ファイルの前記複数のセグメントのうちの前記１つのサイズおよび送信された時刻および受信された時刻を用いて、前記送信システムから前記受信システムに、前記ファイルの前記複数のセグメントのうちの前記１つが送信された実際の転送速度を決定することと、
前記実際の転送速度を用いて待機期間を決定することと、
前記受信システムで前記ファイルの前記複数のセグメントの前記１つを受信した後に、前記受信システムによる前記ファイルセグメントの受信を肯定応答する肯定応答メッセージを前記受信システムから送信する前に前記待機期間が期限切れになるのを待つこと、
前記受信システムからの前記肯定応答メッセージを、前記第２のネットワークアドレスから送信することと、
をさらに含む、請求項１２に記載の方法。
【請求項２３】
複数の待機期間のうちの異なる待機期間が各伝送後に発生する複数の伝送によって、一度に１つづつ、複数のファイルセグメントを送信することを含む、複数のファイルセグメントから構成されるファイルの一部を、送信システムから受信システムに送信することと、
各ファイルセグメント伝送について、前記ファイルセグメントが前記送信システムから前記受信システムに送信された実際の転送速度を決定することと、
前記ファイルセグメント伝送のうちの少なくとも１つについて、第１のネットワークアドレスを有するネットワークの第１の部分に接続されている前記受信システムで前記ファイルセグメント伝送を受信し、前記受信システムを前記ネットワークの前記第１のネットワークアドレスから切断し、それによってファイル転送を終了させ、その後前記受信システムを第２のネットワークアドレスに接続することと、
前記ファイルセグメント伝送のうちの少なくとも１つについて、前記第２のネットワークアドレスを有する前記ネットワークの第２の部分に接続されている前記受信システムで前記ファイルセグメント伝送を受信することと、
前記第１のネットワークアドレスを有し、前記第１のネットワークアドレスへの以前のファイルセグメント伝送を有する前記受信システムへの各ファイルセグメント伝送について、前記第１のネットワークアドレスへの前記以前のファイルセグメント伝送の前記実際の転送速度を用いて、前記第１のネットワークアドレスを有する前記受信システムへの前記ファイルセグメント伝送で送信される前記ファイルセグメントのサイズを決定することと、
前記第２のネットワークアドレスを有し、前記第２のネットワークアドレスへの以前のファイルセグメント伝送を有する前記受信システムへの各ファイルセグメント伝送について、前記第２のネットワークアドレスへの前記以前のファイルセグメント伝送の前記実際の転送速度を用いて、前記第２のネットワークアドレスを有する前記受信システムへの前記ファイルセグメント伝送で送信される前記ファイルセグメントのサイズを決定することと、
を含む方法。
【請求項２４】
前記ネットワークの前記第１の部分が、前記ネットワークの前記第２の部分とは異なるタイプである、請求項２３に記載の方法。
【請求項２５】
要求後の少なくとも第１の複数時間に発生する送達期限までに送達されるファイルを要求することと、
前記送達期限までに送達されるように、複数時間の期間に渡って、一度に１ファイルセグメントづつ、前記ファイルを受信システムに電子的に送達し、ここで、前記期間のある部分の間、前記受信システムが第１のネットワークアドレスを有するネットワークの第１の部分に接続され、前記ネットワークの前記第１の部分から切断され、それによってファイル転送を終了させ、前記期間の別の部分の間、前記受信システムが、前記第１のネットワークアドレス以外の第２のネットワークアドレスを有する前記ネットワークの第２の部分に接続されることと、
を含む方法。
【請求項２６】
前記ネットワークの前記第１の部分が、前記ネットワークの前記第２の部分とは異なるタイプである、請求項２５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にコンピュータネットワークに関し、より具体的には、かかるネットワークを介したファイル伝送に関する。
【背景技術】
【０００２】
インターネットおよび広域ネットワーク（ＷＡＮ）等のネットワークは、ファイル転送サービスのようなサービスを提供するために相当量の設備を設置している。設置した設備の容量に基づいて、ある種のサイズのファイルは、ネットワークにあまり大きい影響を与えずに、従来の伝送方法を使用してこれらのネットワークを介して効率的に伝送できる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ファイル転送サービスに関与する他の所望されるシナリオは、大体は、相当大きなサイズのファイルの大規模なマルチキャスティングを用いる等、非常に大きいサイズの伝送されるファイルおよび／または配布要求のため、従来のファイル転送方法によって避けられてきた。かかる巨大なファイルサイズの例は、大きなフォーマットの高解像度音声ビデオファイルまたは電子ゲームファイルを含むことができる。有線（デジタル加入者回線（ＤＬＳ）、ケーブル、電力線）、ファイバー、無線、衛星およびセルラータイプを含むが、これに限定されるものではない、インターネットまたはＷＡＮ等のネットワーク向けの従来の方法を使用した巨大なサイズのファイルの伝送は、それらの所与の現在の設備基盤を考慮すると、特に頻繁に行われる場合、これらのネットワークに多大な影響を引き起こす可能性があるため、実践的、またはおそらく実行可能とも思えない。従来の解決策は、ピークトラフィック需要を満たすためにネットワーク伝送容量を拡大することを重視してきた。
【０００４】
残念なことに、これらの従来の解決策は、資源および資金の巨額の費用を必要とするため、大部分は疑問点の多い選択肢として残っている。
【図面の簡単な説明】
【０００５】
【図１】一般に、適応ファイル送達システムの例示的な実装を表す概略図である。
【図２】図１の適応ファイル送達システムによって使用される方法の例示的な実装を描く相互作用図である。
【図３】適応ファイル送達システムの例示的な実装の第1の集合体を示す概略図である。
【図４】適応ファイル送達システムの例示的な実装の第２の集合体を示す概略図である。
【図５】起動された送信システムとして適応ファイル送達システムの実装を示す相互作用図である。
【図６】ユーザによるブラウジングを伴う適応ファイル送達システムの実装を示す概略図である。
【図７】ユーザによる編集を伴う図６の実装の概略図である。
【図８】ユーザによるファイル選択を伴う図６の実装の概略図である。
【図９】ユーザによる優先順位付けを伴う図６の実装の概略図である。
【図１０】期限計算を伴う図６の実装の一部の概略図である。
【図１１】ステータス表示およびユーザ対話を伴う図６の実装の概略図である。
【図１２】ユーザによるファイル順序付けを伴う適応ファイル送達システムの実装の概略図である。
【図１３】順序付けられたファイルの送達を伴う図１２の適応ファイル送達システムの実装の概略図である。
【図１４】ファイルプレイバックの詳細を示す図１２の適応ファイル送達システムの実装の概略図である。
【図１５】暗号化されたファイルを伴い、かつ問い合わせ段階を示す適応ファイル送達システムの実装の概略図である。
【図１６】暗号化されたファイルの送達を示す図１５の適応ファイル送達システムの実装の概略図である。
【図１７】アクセス要求およびアクセス拒否を示す図１５の適応ファイル送達システムの実装の概略図である。
【図１８】アクセス要求およびアクセス許可を示す図１５の適応ファイル送達システムの実装の概略図である。
【図１９】ファイルプレイバックの詳細を示す図１５の適応ファイル送達システムの実装の概略図である。
【図２０】ファイルのプレロードを示す適応ファイル送達システムの実装の概略図である。
【図２１】送達の態様を示す適応ファイル送達システムの実装の概略図である。
【図２２】ネットワークの態様を示す適応ファイル送達システムの実装の概略図である。
【発明を実施するための形態】
【０００６】
本明細書に説明されるように、適応ファイル送達システムおよび方法は、音声ビデオファイル等のデータファイルを、各セグメントが異なる期間中に伝送されるセグメントで、ネットワークまたはネットワークの集合体を介して伝送する。各期間は、その関連付けられたファイルセグメントを伝送するための伝送部分と、その伝送されるセグメントに関してネットワークとの追加の相互作用が発生しない待機部分とを有する。いくつかの実装では、各期間の伝送部分の持続時間は、定常状態スループット状態に達するために十分であり、このことがファイルセグメント伝送の速度測定から１つまたは複数のネットワークのトラフィック負荷ステータスを決定できるようにする。各期間の待機部分の持続時間は、ファイル全体を所定の送達期限内に送達させる一方、少なくとも、ネットワークトラフィック負荷の変動に対処するファイルセグメント伝送の効果的な速度を提供するほど十分に長い。
【０００７】
一般に、大きなユーザ人口を有するネットワークは、毎日、毎週および毎年のような周期性で定期的なピーク輻輳期間を経験する。これらのピーク期間を乗り切るようにネットワークを設計することは、トラフィックエンジニアリングの領域である。ネットワーク設計者は、ネットワーク資源を増築し、これらの動作の例外的な期間中に負荷を適切に処理するためにピーク輻輳を重視しければならない。残念なことに、これは必ず、ネットワークが十分に活用されていないときには大きなギャップがあることを意味する。
【０００８】
さらには、データアプリケーションでは、ソースと宛先との間でどの程度多くの使用可能な帯域幅が必要とされるのかと、情報を送達するためにどの程度の時間がかかるのかとの間の二律背反がある。多くのアプリケーションの場合、情報の要求と情報の送達の間には、リアルタイムまたはほぼリアルタイムの遅延時間があると予想される。たとえば、パーソナルコンピュータ（ＰＣ）ユーザがウェブアドレスを入力するとき、数秒以下でページが取り出されるという予想がある。同様に、大きな電子メール転送の場合、いったん要求がなされると、ネットワークは、ネットワークが送達できるピーク速度で動作を完了すると予想される。しかしながら、送達期限が数時間または数日先である、リアルタイムではないアプリケーションでは、データ転送速度は、大きく削減できる。
【０００９】
適応ファイル送達システムおよび方法は、ネットワーク活動が最小の期間中の、大きなフォーマットの高解像度音声ビデオファイルおよび他の媒体のファイル等の巨大なファイルの送達の選択的スケジューリングを提供する。送達時間を延ばすことによって、送信者および受信者を接続する既存のネットワークにほとんどまたはまったく影響を与えずに、大量の情報の効率的なトランスポートを達成できる。適応ファイル送達システムは、多数のユーザが一度にアクティブにオンラインになっているときに生じるネットワークピークを平滑化しながら、巨大なファイル転送をサポートする。この適応ファイル送達システムおよび方法は、送達要件に応じてスケーラブルとすることもできる。
【００１０】
適応ファイル送達システムは、巨大ファイル転送のネットワーク影響を削減する上で、他のネットワークトラフィックによって引き起こされる輻輳に迅速に対応する上で、送達期限を維持するために転送速度を調整する上で、ならびに最悪のケースのネットワークモデルシナリオに影響を及ぼさずに、多数の受信システムおよび送信システムに拡張する上で貢献する。
【００１１】
適応ファイル送達システム１００は、ともにネットワーク１０６に通信可能にリンクされている送信システム１０２および受信システム１０４を含むように図１に示されている。送信システム１０２は、１つのコンピュータシステム、またはファイバー手段、有線手段、無線手段を介してネットワーク１０６に接続されるサーバ、データベース、記憶装置、ルータ、スイッチ、ファイアウォール、または他のかかる装置等の複数の一所に置かれたまたは分散されたコンピュータシステムから構成できる可能性がある。受信システム１０４は、ＤＶＲ、ＰＣ、ネットワーク記憶装置、クライアントワークステーション、テレビセットトップボックス、モデム、ゲートウェイ、または携帯情報端末（ＰＤＡ）、ポータブルオーディオビデオプレーヤー、携帯電話等のセルラー通信装置の他のかかる装置とともに、あるいは専用のハードウェア装置内に、一所に配置できる可能性がある。受信システム１０４は、ファイバー手段、有線手段、または無線手段を介してネットワーク１０６に接続できる可能性がある。ネットワーク１０６は、インターネット、あるいは有線（ＤＳＬ、ケーブル、パワーライン）、ファイバー、無線、衛星およびセルラータイプのネットワークを含むがこれに限定されない、ＷＡＮ等の他のネットワークからの１つまたは複数のネットワーク構成要素を含むことができる可能性がある。ネットワーク１０６は、モデム、ルータ、ブリッジ、ゲートウェイ、ネットワークインタフェース、電信伝送、無線伝送、ローカルエリアネットワーク（ＬＡＮ）、アクセスネットワーク、プロバイダネットワーク、およびピアツーピア構成等であるが、これに限定されない、他のかかるネットワーク構成要素を含む可能性がある。送信システム１０２は、受信システム１０４にネットワーク１０６を介してファイルセグメント１０８を送信するように図１に示されている。送信システム１０２は、ネットワーク１０６にアクセスするためのインタフェース１１０、プロセッサ１１２、およびネットワークを介して受信システム１０４へ送信されるファイル１１６を含み、適応ファイル送達方法を実施するための命令を伴う１つまたは複数のモジュールを含む記憶装置１１４を含む。受信システム１０４は、ネットワーク１０６にアクセスするためのインタフェース１１８、プロセッサ１２０、および送信システム１０２から受信されるファイル１１６の部分のコピーを格納するため、および適応ファイル送達方法に関する命令を実施するための１つまたは複数のモジュールを格納するための記憶装置１２２を含む。受信システム１０４が、たとえば複数のエンドユーザに地理的により近くにコンテンツを分散するためのキャッシングモードとして機能するために、エンドユーザの位置に位置できる、またはなんらかの仲介ネットワーク位置に位置できることが理解されよう。
【００１２】
ファイルセグメント１０８は、ファイル１１６の一部のコピーである。送信システム１０２は、ファイル１１６のコピーを、図１に示されるセグメント１０８を含む等の複数のセグメントにそのファイルコピーを分割することによって受信システム１０４に送信する。複数のセグメントは、受信システム１０４がファイル１１６のコピー全体を受け取るまで一度に１つづつネットワーク１０６を介して送信される。各セグメントは、複数の期間のうちの異なる期間に送信される。
【００１３】
期間は、それぞれ、ファイルセグメントのうちの１つが伝送される伝送部分、およびファイルセグメントのどれも伝送されない待機部分を有する。この待機部分は、セグメントがセグメントの１つの連続ストリームとして伝送されるよりもはるかに大きい期間にわたってファイルセグメントが伝送されるように、効果的に伝送部分に間隔をあけることができる。期間の伝送部分は、巨大ファイルの伝送に関連するネットワーク１０６のトラフィック負荷に対する悪影響を大幅に減少させるために一定の間隔をあけられる。以下にさらに説明される手法に基づき、ネットワークにかかる負荷が相対的に大きいときよりも、ネットワーク１０６にかかるトラフィック負荷が相対的に小さいときに、より大きなサイズのファイルセグメントおよび／またはより多数のファイルセグメントが伝送される。ネットワークトラフィックが少ない期間を少なくとも部分的に活用することによって、巨大ファイルを、ネットワーク１０６のトラフィック負荷に対する悪影響を少なくして送信することができる。
【００１４】
いくつかの実装形態では、受信システム１０４のユーザは、グラフィックユーザインタフェースを使用して、別々のコンテンツファイルに対する複数の類似したファイル要求の中で、関連付けられた送達期限および優先順位を伴うファイルを送信システム１０２に要求する。この要求を通して、送信システム１０２および受信システム１０４は、受信システムが要求されたファイルを受信する許可を有することを知らされ、転送構成の詳細を知らされる。適応ファイル送達で発生するイベントのいくつかの概要が以下に含まれるが、必ずしも以下の順序ではない。（１）受信システム１０４がファイルを要求する、（２）送信システムが要求されたファイルの送達に対する許可の位置を突き止め、入手し、いくつかの実装形態では、デジタル権利管理（ＤＲＭ）ライセンスを取得する、（３）送信システムの１つまたは複数の適応ファイル送達モジュールが、送達期限、クライアントＬＡＮアイドルスケジュールを含むクライアントプロファイル、プロバイダネットワーク１０６アイドルスケジュール、ファイルサイズ等の転送詳細を入手する、（４）受信システムの１つまたは複数の適応ファイル送達モジュールが送信システムの識別、ファイルサイズ等の転送詳細を入手する、（５）送信システムが要求された送達期限を満たすために必要とされる最小転送速度、およびファイルのセグメントの転送に許容できる最大速度を計算する。いくつかの実装形態は、サーバとしての送信システム１０２とクライアントとしての受信システムとの間の標準的なクライアント／サーバＴＣＰ／ＩＰまたはＵＤＰ／ＩＰ相互作用に基づいている。
【００１５】
例示的な適応ファイル送達方法１３０は、受信システム１０４が、ファイル要求および送達期限Ｔｄを送信システム１０２に送信する（ステップ１３２）ことを含むように図２に示されている。図２に示されているように時間の経過は下方への縦方向をたどるが、図２ではこの時間の経過は原寸に比例して示されていない。一般に、伝送期間の待機部分に関連付けられた期間Ｗ＿ｊ、および伝送期間のセグメント伝送部分に関連付けられた期間ｄＴ＿ｊに関連付けられた期間だけが、相対的に有意な量の時間が経過するのを必要とする。図２では、示されている他の活動も相対的に有意な量の時間を要するように見えることがあるが、一般に、これらの他の活動は相対的にわずかな量の時間を要し、これらの他の活動を相対的に有意な期間を要するとして表示することを意図するのではなく、描写の形式の制限のために活動を表示する上での便宜のためだけに図２の縦軸に沿って追加の空間を割り当てられている。
【００１６】
送達期限Ｔｄは、一般に、受信システム１０４のユーザが、それまでに受信システムがファイル１１６のすべてのセグメントを受け取っていることを所望するであろう時間である。いくつかの実装形態では、送達期限Ｔｄは、特定の持続時間（例えば、ファイルが最初に送信されることを要求された、または送信され始めた時間から、あるいは別の時間からの複数の時間数または日数）であるとシステム１００によって計算されてもよく、結果として、ある輻輳期間中に経験された、または他のネットワーク活動期間中に経験されたネットワークの容量をも下回る等、ネットワーク１０６の全体的に評価されたまたは経験された最小容量をも下回るレベルまでファイルの全体的な転送速度を効果的に削減する場合がある。次に、受信システム１０４は送信システム１０２に、送信システムによって送信される第1のファイルセグメントに対する要求として機能する初期肯定応答を送信する（ステップ１３４）。受信システム１０４から初期肯定応答を受信すると、送信システム１０２は、第1の最大セグメント伝送速度限度Ｒｍａｘ＿１、および第１の最小セグメント伝送速度限度、Ｒｍｉｎ＿１を決定する（ステップ１３６）。
【００１７】
一般に、最小セグメント伝送速度限度、Ｒｍｉｎは、２つの要因に基づいて送信システム１０２によって決定される。第１の要因は、送信システム１０２によって受信システム１０４にまだ送信されていないファイル１１６の残りの部分のファイルサイズＸｒｅｍである。第２の要因は、決定の現在の時刻Ｔｎｏｗと送達期限時間Ｔｄとの間の、送信システム１０２から受信システム１０４にファイルセグメントを伝送するために使用できる残り時間の量である。この使用可能な残り時間量は、ネットワーク１０６および／または送信システム１０２および／または受信システム１０２をセグメント伝送に利用できないために、適応ファイル送達が特定のファイル伝送について、設定可能な低転送速度閾値（ゼロ以上となる可能性がある）を超えて発生できないときに分かる、所定の時間量Ｔｕｎａｖａｉｌだけ、減少する場合がある。
【００１８】
これらの使用不可期間、Ｔｕｎａｖａｌは、通常、ネットワーク１０６および／または送信システム１０２にとってのビジー期間であってもよい。使用不可期間、Ｔｕｎａｖａｌは、送信システム１０２および／または受信システム１０４のプロファイルの中に事前設定できる。代わりに、使用不可期間、Ｔｕｎａｖａｌは、適応ファイル送達伝送を含む以前の伝送の履歴データを調べることによって、送信システム１０２および／または受信システム１０４によって決定できる。たとえば、適応ファイル送達のｊ番目のセグメントの伝送のうちの１つまたは複数の実際のセグメント伝送速度Ｒ＿ｊに関する履歴データは、送信システム１０２、および／または受信システム１０４、および／またはネットワーク１０６にとってのビジー時間を決定するために調べることができる可能性がある。
【００１９】
たとえば、受信システム１０４のユーザが、適応ファイル送達以外の受信システムにとってのタスクのユーザの要件が、毎平日午前９時から午前１１時の間に受信システムにとってローカルなネットワーク１０６の一部から最大の性能を必要とする場合に、その特定の期間中の適応ファイル送達を遮断することを希望することがある。その遮断された期間中、受信システム１０４のユーザは、転送がＲｍｉｎ＿ｊ未満の速度等の何らかの最小バックグラウンド速度でこの遮断期間中に進むことを許されていたかどうかを示すように受信システムのプロファイルを設定できる可能性がある。代わりに、ユーザは、この遮断期間中にいかなる適応ファイル送達をも受け取らないように受信システム１０４のプロファイルを設定してもよい。受信システム１０４のユーザが、ユーザが受信システムにファイルセグメントを受信してほしくない期間を指定しない場合には、受信システムは次に、ビジー期間、セグメント伝送速度の変動等について、受信システムおよび受信システムにとってローカルなネットワーク１０６の１つまたは複数の部分の使用を監視することによって、これらの遮断期間を知ることができる。同様に、アクセスネットワークプロバイダが、そうでなければプロバイダネットワークが関係のないトラフィックでビジーまたはほぼいっぱいの容量である場合に、毎日の間の特定のビジー時間期間、適応ファイル送達を遮断することを希望することがある。また、プロバイダがそのネットワーク全体での複数の適応ファイル送達ジョブを、総計的な最小バックグラウンド速度に制限することを希望することがある。
【００２０】
賢明な評価基準は、実際の実行が幸いにも保守的に予想されるよりも好ましい条件を有している場合に、送信システム１０２は、各最小転送速度Ｒｍｉｎ＿ｊの値が、要求された送達期限を満たすために必要となる可能性があるよりも長いと保守的に判断することを保証するだろう。Ｒｍｉｎ＿ｊの計算ではあ、通常、残りのファイルサイズおよびあらゆる予想アイドル期間に基づいて適応ファイル送達の「ジャストインタイムの」完了が前提とされることが、この保守的な手法によって理解される。
【００２１】
ネットワーク１０６は、保守的なＲｍｉｎ＿ｊの決定に考慮されられていない余剰容量を有することがあるため、適応ファイル送達は、適応ファイル送達に関与するすべてのＲｍｉｎ＿ｊの平均速度で排他的に実行されたセグメントの伝送に基づいた推定値よりも速く進むことがある。その結果、多様な巨大ファイルの多くの実際の転送は早期に終了することがある。Ｒｍｉｎ＿ｊを推定する保守的な手法を使用すると、予期せぬネットワーク輻輳に対する時間のバッファが提供され、要求された送達期限Ｔｄまでに適応ファイル送達を完了する予想が維持される。予期せぬ輻輳のために、転送がその最小速度スケジュールに後れを取る場合、適応ファイル送達の方法は、送達期限が近づくにつれて連続するｊ番目のセグメント各伝送の後に、最小転送速度Ｒｍｉｎ＿ｊを徐々に上昇させることによって自動的に補償する。この、連続的な最小転送速度Ｒｍｉｎ＿ｊを徐々に上昇させることは、時間通りのジョブまたは前倒しのジョブよりも遅れたジョブを優遇するために優先順位を調整する巧みな方法である。Ｒｍｉｎ＿ｊは、ファイルセグメントが送信システムから受信システムに送信されるたびに、送信システム１０２によって、あるいは代替実装形態では受信システム１０４によって評価される。
【００２２】
ｊ番目の伝送のＲｍｉｎの決定のための例示的な方程式は、以下のとおりである。
(1)  Rmin_j = Xrem_j/(Td - Tnow_j - Tunaval_j)
【００２３】
いくつかの実装形態では、送信システム１０２は、なんらかの遅延イベントがネットワーク１０６上で発生するかどうかに応じて、要求された送達期限Ｔｄと同じ、Ｔｄより早い、またはＴｄより遅いことがある推定送達時間に更新を送信できる。受信システム１０４を、推定送達時間に関して更新しておいた結果、実際には、推定送達時間に関する受信システムのユーザによる問い合わせの数は削減する可能性がある。
【００２４】
一般に、最大セグメント伝送速度限度、Ｒｍａｘは、最小セグメント伝送速度限度Ｒｍｉｎよりも、別の伝送タスクに割り当てられなかった送信システム１０２の何らかの追加の余剰伝送容量を含む多くの考えられる要因のうちの１つまたは複数に応じた量だけ大きい。Ｒｍａｘに影響を与えるために使用できる可能性がある他の考えられる要因は、ユーザのそのネットワークプロバイダとのサービス契約によって決定されるユーザに許容される最大転送速度、最後のセグメントの実際の測定速度または最後のＮ個のセグメントの平均速度、事前設定されたアクセスネットワークプロバイダプロファイル等を含む。したがって、最大セグメント伝送速度限度Ｒｍａｘは、３つの要因に基づいて送信システム１０２によって決定される。
【００２５】
第１の要因は、すでに決定された最小セグメント伝送速度限度Ｒｍｉｎである。第２の要因は、送信システム１０２の最大伝送速度容量Ｒｃａｐである。送信システム１０２の最大伝送容量は、送信システムのインタフェース１１０の伝送帯域幅容量のようなことによって影響を受ける。
【００２６】
第３の要因は、送信システム１０２が受信システム１０４にファイル１１６を伝送する現在のタスクを考慮に入れるだけではなく、ファイル１１６が送信されるべき期間中に別のファイルの少なくとも一部を受信システム１０４または任意の他の受信システムに伝送するために送信システムによって引き受けられる他のファイル伝送タスクのための任意の他のアクティブジョブも考慮に入れる。これらの他のタスクの数は、数Ｑが、ファイル１１６の伝送タスクを含むすべてのアクティブな伝送ジョブを含むように「Ｑ−１」として表すことができる。
【００２７】
１つの手法では、送信システム１０２のどのような余剰伝送容量も、Ｑ個の伝送タスクの間で等しく割り当てられるだろうと仮定する。この手法によって、ファイル１１６伝送タスクに割り当てられる伝送余剰は、Ｒｃａｐ／Ｑと、Ｑ個の伝送タスクの最小セグメント伝送速度限度＜Ｒｍｉｎ＞の平均の差異となるだろう。この平均＜Ｒｍｉｎ＞は、Ｓｕｍ（Ｒｍｉｎ）／Ｑとして表すことができ、この式ではＳｕｍ（Ｒｍｉｎ）は、そのＱ個の伝送タスクのすべての多様な最小セグメント伝送速度限度の総計を表す。
【００２８】
ファイル１１６の伝送タスクのｊ番目のセグメント伝送の最大セグメント伝送速度限度Ｒｍａｘを決定するための例示的な等式は、以下のとおりである。
Rmax_j = Rmin_j + Rcap/Q_j - Sum(Rmin)_j/Q_j.
【００２９】
方程式２で計算されるＲｍａｘ＿ｊが、Ｒｍｉｎ＿ｊに等しい、またはＲｍｉｎ＿ｊを超える値に制限されるだろうことが理解されよう。
【００３０】
方程式２は、送信システム１０２が実施してもよい方針の例であるが、Ｒｍａｘを計算するためには他の方針決定も等しく利用できる可能性がある。たとえば、代替手法は、余剰帯域幅を均等に共有するのではなく、むしろ選択された伝送ジョブに優先順位を与えるだろう。たとえば、一時的に特定のジョブに余剰伝送容量を与えるために、送信システム１０２は輻輳測定値を使用し、最大割り当て速度を利用できないジョブのＲｍａｘを削減することができるだろう。
【００３１】
方程式２に加えて、Ｒｍａｘ＿ｊは、ネットワーク１０６内で検知される輻輳にさらに対応することを目的とする多くの追加の制約を条件にできることがさらに理解されよう。ファイル１１６の転送タスクのｊ番目のセグメントの最大セグメント転送速度限度Ｒｍａｘを決定するための追加の例示的な方程式（２ａ）は、以下のとおりである。
(2a)  Rmax_j = H(R_(j-1))  * Rmax_j
ここで、方程式２ａの右側のＲｍａｘ＿ｊは、上記方程式２で計算される通りであり、Ｒ＿（ｊ−１）は、それが最初のセグメントである場合には以前送信されたセグメントの実際測定速度、またはゼロである。たとえば、
(2b)  H(R_(j-1)) = ( R_(j-1)/Rpeak)**n ,          n = 2, 3 . . . 
ここで、Ｒｐｅａｋは、たとえば受信システムのネットワーク１０６によって実施される所与の受信システム１０４に対して許容される最大スループットである。方程式２ｂにおけるような測定速度Ｒに対する他の機能上の依存性、および他の輻輳検知測定基準は、ネットワーク１０６のオペレータからの設定された時刻プロファイル、ネットワーク１０６内の輻輳検知エージェントのフィードバック等を含み、可能である。
【００３２】
ステップ１３６で第１の最大セグメント伝送速度限度Ｒｍａｘ＿１、および第１の最小セグメント伝送速度限度Ｒｍｉｎ＿１を決定した後、送信システム１０２は、ファイル１１６の第１のセグメント、Ｒｍａｘ＿１およびＲｍｉｎ＿１の値、および第１の伝送が送信システムから送信された時間を示すタイムスタンプを含む第１の伝送を伝送する（ステップ１３８）。この第１の伝送は、さらに以下に説明されるような待機部分も含む、第１の期間の伝送部分である。
【００３３】
第１のセグメントのファイルサイズＸ＿１は、所定のデフォルト値である。一般に、ファイルセグメントは、多くのより小さいファイルサブセグメント部分から構成される。いくかの実装形態では、送信システム１０２から受信システム１０２に伝送されるファイルは、送信システムの記憶装置１１４に格納され、連続番号が付けられた固定サイズのサブセグメント部分から成るセグメントにフォーマットされる。これらの実装形態では、サブセグメント部分のサイズは変化しないが、サブセグメント部分から構成される個々のセグメントは、異なる数のサブセグメント部分を含むことによって異なるサイズを有することができる。サブセグメント部分は、通常は、実用的な最小の値を有する所定の伝送容量を有するネットワークによって送信できるファイルの最小部分となるようなサイズにすることができる。
【００３４】
送信システム１０２から第１の伝送を受信すると、受信システム１０４は、（１）第１の伝送の実際の伝送速度Ｒ＿１、（２）第１の伝送の有効伝送速度［Ｒ＿１］、および（３）第１の伝送と関連付けられた総期間の第１の待機部分の持続時間Ｗ＿１に関して多くの決定を実行する（ステップ１４０）。
【００３５】
第１の伝送の実際の伝送速度を決定する際に、受信システム１０４は、受信システムによって測定される第１の伝送の完了時間と、受信システムによって受信された第１の伝送で検出されるタイムスタンプによって示される第１の伝送の開始時刻の時間差ｄＴ＿１を決定する。この時間差ｄＴ＿１は、受信システム１０４によって、第１の伝送の伝送時間として使用される。
【００３６】
受信システム１０４は、第１の伝送で送信される第１のセグメントのセグメントサイズＸ＿１を測定するか、第１の伝送とともに含まれるデータから読み取るかのどちらかである。その後、受信システム１０４は、ｊ番目の伝送のための以下の一般的な方程式によって第１の伝送の実際の伝送速度Ｒ＿１を計算することができる。
R_j = X_j/dT_j
【００３７】
次に、受信システム１０４は、送信システム１０２および送信システムに既知のネットワーク１０６に関して現在の状態に対応するために、第１の伝送の有効伝送速度［Ｒ＿１］を決定する。一般に、この有効伝送は、セグメントと関連付けられた期間の総持続時間で除算されるセグメントのファイルサイズである。上述されたこの期間は、セグメント伝送部分および待機部分を含む。この待機部分がゼロという持続時間を有する場合には、有効伝送速度は、それがＲｍａｘを超えている場合、巨大ファイルの伝送または相当大きなファイルのマルチキャスト伝送に対して有害なネットワーク影響を引き起こす可能性が高いであろう実際の伝送速度に等しくなるだろう。実際の伝送速度よりも著しく小さく、Ｒｍａｘと一貫している有効伝送速度を選択することによって、送信システム１０４は、巨大ファイルの伝送または相当大きなファイルのマルチキャスト伝送のネットワーク１０６に対する悪影響を減少させる、または実質的に排除することができる。
【００３８】
いくつかの実装形態では、ネットワーク１０６は、インターネット、リージョナルネットワーク、および受信システム１０４の役立つローカルネットワーク等を含む部分から構成できる可能性がある。第１の伝送の実際の伝送速度Ｒ＿１の決定された値、およびネットワークプローブ等の他の装置から入力される所与であっても良いステータス入力、または第１の伝送に含まれる送信システム１０２のステータス情報を考慮すると、受信システム１０４は、どのようなステータス情報が受信システムに既知であっても適切である第１の伝送の有効伝送速度［Ｒ＿１］を選択する。
【００３９】
第１の伝送の決定された実際の伝送速度Ｒ＿１、および可能な他の入力を使用することによって、輻輳がどこに位置していようとも、受信システム１０４は、送信システム１０２と受信システムの間の輻輳に対応できる。たとえば、受信システム１０４にとってローカルなネットワーク１０６の一部が関係のないトラフィックでビジーである場合、または受信システムに未知のステータスを有する場合、受信システムは、第１の最小セグメント伝送速度限度Ｒｍｉｎ＿１に等しい有効伝送速度［Ｒ＿１］を、第１の伝送のために選択できる。第１の最小セグメント伝送速度限度の選択により、送達期限Ｔｄを依然として満たしつつ、ネットワーク１０６に対する影響が最小量になる。
【００４０】
他方、ネットワーク１０６が受信システム１０４によって実際にはアイドルであることが既知である場合、受信システムは、第１の最大セグメント伝送速度限度Ｒｍａｘ＿１に等しい有効伝送速度［Ｒ＿１］を、第１の伝送のために選択できる。この第１の最大セグメント伝送速度限度は、任意の他のネットワークトラフィックが存在するとしてもほとんどないと考えれば、ネットワークには依然として有害な影響を及ぼさないだろう。通常、ネットワークの状態および送信システム１０２の状態は中間状態にあると思われ、したがって、この状態が受信システム１０４に知られると、受信システムは、第１の最小セグメント伝送速度限度Ｒｍｉｎ＿１と第１の最大セグメント伝送速度限度Ｒｍａｘ＿１との間で有効伝送速度［Ｒ＿１］を第１の伝送のために選択するだろう。
【００４１】
また、受信システム１０４は、他の適応ファイル送達、あるいはネットワーク１０６上および／または送信システム１０２上および／または受信システム１０４上での他の活動に対応するために、適応ファイル送達を完全に停止する、またはｊ番目の伝送のための最小セグメント伝送速度Ｒｍｉｎ＿ｊの値よりもなお低い速度でｊ番目の伝送について有効伝送速度［Ｒ＿ｊ］で進むことができる。たとえば、いくつかのバージョンでは、受信システムによって共用されるローカルエリアネットワークに接続されるソフトウェア輻輳検出エージェントにより、受信システムに、ローカルエリアネットワークが、関係がないネットワークトラフィックで混雑してきていると通知することができ、その結果受信システムは適応ファイル送達の有効伝送速度を停止または削減できる可能性がある。受信システム１０４がｊ番目の伝送のために、最小セグメント伝送速度Ｒｍｉｎ＿ｊ未満の、ｊ番目の伝送の有効伝送速度［Ｒ＿ｊ］を調整した場合、送信システム１０２は、残りのファイルサイズおよび送達期限に基づき、ｊ＋１番目のセグメントの伝送のために、増分的により大きな最小セグメント伝送速度、Ｒｍｉｎ＿ｊ＋１を計算し直す。その結果、セグメントの伝送のペーシングは、予期せぬネットワーク輻輳または伝送の中断に対応する傾向がある。他の実装形態では、ｊ番目の伝送の有効伝送速度［Ｒ＿ｊ］の選択は、つねに、関与する特定の伝送のために最小セグメント伝送速度限度と最大セグメント伝送速度限度との間に留まることが必要とされる可能性がある。
【００４２】
受信システム１０４は、適応速度で送信システム１０２からファイル１１６のコピーを転送するために有効伝送速度を選択することによってセグメントの伝送の速度を整え、送信システム１０２および／または受信システム１０４および／またはネットワーク１０６についての変化する状態に対応する。第１の伝送の実際の伝送速度Ｒ＿１の値および考えられる他の入力を使用することによって、受信システム１０４は、有効伝送速度の理性的な選択を行うことができる。これらの適応ファイル転送方法によって、セグメント伝送は、送信システム１０２から受信システム１０４へのエンドツーエンドダウンリンク接続容量のための実際のサウンディングシステムとして使用される。その後、適応ファイル送達システム１００は、輻輳の場所に関わりなく送信システム１０２と受信システム１０４との間の輻輳に対応できる。
【００４３】
第１の伝送の有効伝送速度［Ｒ＿１］に対する受信システム１０４による選択に基づいて、第１の伝送に関連付けられた総期間のうちの第１の待機部分の持続時間Ｗ＿１が、以下の一般的な方程式によってｊ番目の伝送について引き出すことができる。
W_j = X_j/[R_j] - X_j/R_j
【００４４】
ステップ１４０の一部として、受信システム１０４は、送信システム１０２によって送信される次のセグメント、つまり第２のセグメントサイズＸ＿２を有する第２のセグメントのサイズも計算する。これを行うために、受信システム１０４は、ネットワーク１０６がセグメントを伝送する際に定常状態条件に達するために要する時間量に、所定の一般的な値Ｔｓｓを使用する。たとえば、ＴＣＰ環境においては、Ｔｓｓは、約５秒に等しい可能性がある。第１の伝送の実際の伝送速度Ｒ＿１はＴｓｓで乗算され、以下の一般的な方程式によってＸ＿２を得る。
X_j+1 = R_j * Tss
【００４５】
１つのファイルの続いて起こる転送から次の転送までの実際の伝送速度の可変性が、Ｘ＿（ｊ＋１）の計算において望ましくない振動を引き起こす可能性があることも示されている。これを回避するための１つの実際的な方法は、実際の転送速度Ｒの最後のＮ個のサンプルのスライディングウィンドウ平均を使用することである。
【００４６】
第１の伝送に関連付けられた総期間のうちの第１の待機部分の持続時間Ｗ＿１を待機した（ステップ１４２）後、受信システム１０４は送信システム１０２に第２のセグメントサイズＸ＿２を含む第１のセグメント肯定応答を伝送する（ステップ１４４）。
【００４７】
送信システム１０２は、次に、方程式（１）を使用して第２の最小セグメント伝送速度限度Ｒｍｉｎ＿２を決定し、かつ方程式（２）を使用して第２の最大セグメント伝送速度限度Ｒｍａｘ＿２を決定する（ステップ１４６）。送信システム１０２は、第２の伝送において第２のセグメントサイズＸ＿２を有するファイル１１６の第２のセグメントを伝送する（ステップ１４８）。送信システム１０２は、Ｒｍａｘ＿２およびＲｍｉｎ＿２の値も伝送し、かつ第２の伝送が送信システム１０２から送信された時刻を示すタイムスタンプも伝送する。
【００４８】
受信システム１０４は、第２のセグメントを受信すると、第２のセグメント伝送のために要する時間ｄＴ＿２を計算し（ステップ１５０）、第２のセグメントサイズの値Ｘ＿２を使用して、方程式（３）から第２のセグメントの実際の伝送速度Ｒ＿２を決定する。また、ステップ１５０では、受信システム１０４は、上述された既知のネットワークトラフィック状態に基づいて第２のセグメントの有効伝送速度［Ｒ＿２］を選択し、次に方程式（４）に従って第２の伝送と関連付けられた総期間の第２の待機部分Ｗ＿２を決定する。受信システム１０４は、次に方程式（５）に従って第３のセグメントサイズＸ＿３を決定する。
【００４９】
第２の伝送と関連付けられた総期間の第２の待機部分Ｗ＿２を待機した（ステップ１５２）後、受信システム１０４は、第３のセグメントサイズＸ＿３の値を含む第２のセグメントの肯定応答を送信する（ステップ１５４）。
【００５０】
その後、送信システム１０２は、ファイル１１６の最後のｎ番目のセグメントが、任意選択でファイル終了の表示を含む、ｎ番目のセグメント伝送で受信システムに送信される（ステップ１５６）まで、上述された手順に従って受信システム１０４にファイル１１６の残りのセグメントを送信する。
【００５１】
適応ファイル送達は、適応ファイル送達が完了するまで、このようにして進行し、受信システム１０４によって速度を整えられる。適応ファイル送達がストールするまたはネットワーク故障によって中断される不運な場合には、受信システム１０４は、中断の時点で適応ファイル送達を再開し、帯域幅の無駄を最小限に抑えるまたは妨げるために、不揮発性メモリ等の記憶装置１２２内に転送の状態を保持する。受信システム１０４は、たとえば、記憶装置１２２内に格納され、プロセッサ１２０によって実装されるモジュール内で見つかるようなカウントダウンタイマーを維持することによって、ストールしたセッションを検出する。
【００５２】
このカウントダウンタイマーは、受信システム１０４が送信システム１０２に初期要求を行うと始動できる。次に、送信システム１０２は、カウントダウンタイマーがリセットされた後に期限切れになるたびに、適応ファイル送達のために所要の反復回数まで要求を繰り返すことができる。カウントダウンタイマーがリセットされるたびに、期限切れまでのカウントダウン時間は、たとえば指数因子によって等、大きな因数によって増加することができ、その結果、受信システム１０４による追加の要求は、相応して間隔をあけることができる。受信システム１０４による適応ファイル送達に対する最後の要求の終わりに、受信システムは、特定の適応ファイル送達セッションをストールすると宣言することができ、次に適応ファイル送達の継続のために、使用できる場合には送信システム１０２のうちの第２のシステムへの接続を試みることができる。受信システム１０４が送信システム１０２のうちの第２のシステムに連絡することができない場合、受信システムは、送達期限Ｔｄが過ぎるまで使用可能と示されている多くの送信システムのうちの１つに周期的に連絡を試み続けることができる。この送達期限後、その特定の適応ファイル送達ジョブは受信システムによって終了され、受信システムに格納されているファイル１１６のどのような部分も消去され、受信システムのユーザ（複数の場合がある）への通知のためにエラーが記録される。
【００５３】
上述されたように、送信システム１０２および受信システム１０４は、それぞれが、有線、ファイバー、または無線等の異なる種類であり、その間で通信するネットワーク１０６の異なる部分に結合できる。さらに、やはり本明細書に説明されるように、送信システム１０２と受信システム１０４の間のファイルセグメント送達セッションは、（ネットワーク故障による等あらゆる理由のために）中断され、のちに再開される可能性があり、ファイルセグメントの転送は、以前に送信され、受信された部分を再送する必要なしに中断の時点で進行する。適応ファイル送達システム１００の実装形態は、これらの２つの機能の両方を活用し、送信システム１０２または受信システム１０４がネットワーク１０６の第１の部分から切断され、後にネットワークの第２の部分に後に再接続されたときに、ネットワークの第１の部分およびネットワークの第２の部分が同じタイプ（たとえば、有線、ファイバー、無線他）であるかどうかに関係なく、ファイルセグメント送達セッションが完了できるようにする。中断されたファイルセグメント送達セッションの完了は、受信システム１０４または送信システム１０２のどちらかによって、ユーザが介入する必要なく、自動的に開始できる。
【００５４】
たとえば、受信システム１０４は、第１の部分が第１のネットワークタイプであるネットワーク１０６のその第１の部分に接続できる。また、送信システム１０２は、ネットワーク１０６の第１の部分に接続することもでき、あるいは送信システムはネットワークの第１の部分とは異なるネットワークタイプであるネットワークの第２の部分に接続することもできる。ファイルセグメント送達セッションの開始後、受信システム１０４がネットワーク１０６の第１の部分から切断されると、送信システム１０２は、送信システムが接続性のステータスを検出するために使用できるいくつかの監視プロセスのうちの１つを介して受信システムの切断を検出できる。たとえば、受信システム１０４のローカルネットワークインタフェースのステータスに関して、送信システム１０２によって定期的な問い合わせが実行できる可能性がある（たとえば、毎秒１回）。
【００５５】
代わりに、または加えて、受信システム１０４は、たとえば受信システム内に見出されるカウントダウンタイマーを使用することによって、ネットワーク１０６の第１の部分から受信システムが切断によりストールしているセッションを検出できる。受信システム１０４が切断を検出すると、受信システムは、次に、切断がファイルセグメント受信中に発生した場合にはそのファイルセグメントの残りの部分を要求する、または切断が２つのシーケンシャルファイルセグメント伝送の間のサイレント期間中に発生した場合には送信システム１０２によって送信される次のファイルセグメントを要求することができる。その後受信システム１０４のネットワーク１０６の第１の部分に対する接続、またはネットワーク１０６の第１の部分とは異なるネットワークタイプの同じネットワークの第２の部分に対する接続が確立されると、この要求は開始できる。受信システム１０４は、ネットワーク１０６に対する再接続が発生したことを、ローカルネットワークインタフェースのステータスを定期的に問い合わせることによる監視接続性ステータスによって検出できる。
【００５６】
代わりに、この要求がより速やかに始まり、ネットワーク１０６の部分の１つに対する接続が、その後、受信システム１０４で検出されたカウントダウンタイマーを使用することによって確立されるまでなんらかの方法で繰り返すことができる。カウントダウンタイマーは、受信システム１０４が中断の地点で追加のファイル内容を受信し続けるように、ストールしているセッションを再開するためにリトライ機能の速度を整えることができる。ときどき、セッション中断の前に使用されたインスタンス以外の送信システム１０２のインスタンスを、ファイルセグメント転送を再開するために使用できる。
【００５７】
受信システム１０４によるファイルセグメントの次の部分または次のファイルセグメントに対する要求は、要求が受信システム１０４から送信されている限り、送信システム１０２にとって重要ではない。要求がネットワーク故障、ネットワーク輻輳、受信システム１０４のネットワーク１０６の別の部分への意図的な移動のためであるか、それとも別の理由であるかどうかに関わらず、送信システム１０２は要求を満たすために依然として動作する。さらに、受信システム１０４による要求は、受信システム１０４の新しいネットワークの位置に一致する異なるソースネットワークアドレスで送信システム１０２に到達することができる。いくつかの実装形態では、送信システム１０２は、受信システム１０４の新しいネットワーク位置のネットワークソースアドレスを使用し、以後のファイルコンテンツをどこに送信するのかを知り、以前のセッションの性能レコードに基づいてその最大スループット容量等の接続についての他の詳細を推測することができる。別の実装形態では、オフラインからオンラインへのステータス変化を検出すると、受信システム１０４は、送信システム１０２に、セッションＩＤ、新しいネットワークアドレス、最大スループット容量等を含む新しい接続詳細を示すステータスメッセージを送信できる。
【００５８】
いくつかの例外的な状況では、受信システム１０４、あるいは送信システム１０２および受信システムを接続するネットワーク１０６の部分が、送達期限を超えて延長する期間、使用できないことがある。いくつかの実装形態では、これにより受信システム１０４をトリガし、転送の試行を打ち切り、セッションをリセットし、以前に受信された部分的なコンテンツを廃棄することができる。他の実装形態では、受信システム１０４または送信システム１０２は、送達例外を検出し、セッションを続行する、またはセッションを打ち切る、あるいは通知がトリガされたら自動的にセッションを継続するための要求の、システムのエンドユーザに対する通知をトリガできるシステムアラートを生成することができる。
【００５９】
ファイル送達セッションを中断し、再開するための一次シナリオは、受信システム１０４がそのネットワーク接続を変更することと一致する。ただし、送信システム１０２がそのネットワーク接続を変更する、またはネットワーク１０６の部分がステータスまたは接続性トポロジーを変更する等の他のシナリオも考えられる。いずれの場合も、中断されたセッションを検出し、のちにそれを再開する方法は、受信システムがそのネットワーク接続を変更するのと同じままである。
【００６０】
ｎ番目のセグメントはファイル１１６の最後のセグメントであるので、いくつかの実装形態では、受信システム１０４は、実際のｎ番目のセグメント伝送速度Ｒ＿ｎ、ｎ番目のセグメントの有効伝送速度［Ｒ＿ｎ］等に関する決定を実行するのではなく、むしろｎ番目の伝送の待機部分Ｗ＿ｎを実行せずに送信システム１０２にｎ番目のセグメントの肯定応答を送信する（ステップ１５８）。
【００６１】
適応ファイル送達システム１００の例示的な実装形態の第１の集合体３００は、インターネット３０４に通信可能にリンクされているアプリケーションサービスプロバイダ３０２に通信可能にリンクされている送信システム１０２の１つのインスタンスを有するとして図３に示されており、インターネット３０４は、代わりにリージョナルデータノード３０６に通信可能にリンクされている。送信システム１０２の別のインスタンスは、リージョナルデータノード３０６に直接的に通信可能にリンクされている。リージョナルデータノード３０６は、分散ハブ３１０に通信可能にリンクされているリージョナルネットワーク３０８に通信可能にリンクされており、分散ハブはハイブリッドファイバーケーブルネットワーク等のネットワーク３１２に通信可能にリンクされている。
【００６２】
デジタルビデオレコーダとしての受信システム１０４のインスタンスは、セットトップボックス３１４を通してケーブルネットワーク３１２に通信可能にリンクされている。受信システム１０４のデジタルビデオレコーダとして、およびポータルメディアセンターとしての他のインスタンスは、ケーブルモデム３１６およびローカルエリアネットワーク３１８を通してケーブルネットワーク３１２に通信可能にリンクされている。いくつかの実装形態では、輻輳検知エージェント３１９がローカルエリアネットワーク３１８に通信可能にリンクされ、いつファイルセグメント伝送が発生するのかの調整のために、送信システム１０２または受信システム１０４に、ローカルエリアネットワーク上でのネットワーク活動およびネットワーク輻輳を報告する。たとえば、輻輳検知エージェント３１９、またはローカルエリアネットワーク３１８に通信可能にリンクされている複数の同様のエージェントは、受信装置１０４への適応ファイル転送と関連付けられていないネットワーク活動のレポートをトリガするために最小スループット閾値を定義できる可能性がある。代わりに、ネットワーク活動レポートは、受信システムがレポートを、ローカルエリアネットワーク３１８の設定されたまたは測定されたピーク容量と比較することによってローカルエリアネットワークの輻輳を決定するために、輻輳検知エージェント３１９によって見られ、受信システム１０４に報告されるように、ローカルエリアネットワーク３１８の進入および退出トラフィック活動の評価基準を含むことができる可能性がある。いくつかのバージョンでは、スループット閾値を超え、受信システム１０４へのレポートをトリガした後に、測定されたネットワーク活動がトリガ閾値のすぐ下およびすぐ上を行き来するときに受信システムに過剰なレポートが送信されるのを防ぐために、輻輳検知エージェントが、それがデルタだけトリガ閾値を下回るネットワーク活動を測定するまで、その報告機構を再度備えさせないであろうことがさらに理解されよう。
【００６３】
いくつかのバージョンでは、分散ハブ３１０またはリージョナルネットワーク３０８またはインターネット３０４に通信可能にリンクされている、たとえば図３に示される１つまたは複数の輻輳検知エージェント３１９は、送信システム１０２にネットワーク活動の測定されたレポート提供するか、またはネットワーク輻輳を信号で知らせることができる可能性がある。これらの輻輳検知エージェントは、ネットワーク１０６における特定点でのネットワーク活動を信号で伝えるために、いくつかのバージョンでは送信システム１０２に対し、または他のバージョンでは受信システム１０４に対し報告するだろう。
【００６４】
適応ファイル送達システム１００の例示的な実装形態の第２の集合体４００は、公衆交換電話網（ＰＳＴＮ）４０４に通信可能にリンクされている地上局４０２に通信可能にリンクされている送信システム１０２の１つのインスタンスを有するとして図４に示されており、公衆交換電話網は、加入回線４０８に通信可能にリンクされている電話交換局４０６に通信可能にリンクされており、加入回線４０８は、たとえば非対称型デジタル加入者回線（ＡＳＤＬ）装置４１２等の加入者宅内機器を通して通信可能にリンクされている。
【００６５】
地上局４０２は、受信局４２２に信号４２２を中継する衛星１８に信号４１６を送信する衛星送信システム４１４にも通信可能にリンクされており、受信局４２２は加入者宅内機器４１２に通信可能にリンクされている。デジタルビデオレコーダとしておよびポータブルメディアセンターとしての受信システム１０４のインスタンスは、ローカルエリアネットワーク４２４を通して加入者宅内機器４１２に通信可能にリンクされている。また、地上局４０２は、無線パーソナル装置として受信システム１０４のインスタンスに無線信号４３２を送信するセルラーネットワーク４３０にも通信可能にリンクされている。
【００６６】
受信システム１０４は特定の実装形態で描かれてきたが、巨大ファイルを受信し、音声出力および／またはビデオ出力および／または他の出力を通してその巨大ファイルのコンテンツを出力するために、多数の他の実装形態も使用できる。一般に、手法は、受信システム１０４がクライアントであり、送信システム１０２がサーバであるクライアント／サーバモデルを実装できる。ただし、他のモデルを使用する他の手法も使用できる。
【００６７】
ネットワーク１０６の多様な実装形態も描かれてきたが、多数の他の実装形態も使用できる。たとえば、送信システムを受信システムに通信可能にリンクしているネットワーク１０６の基本的な送達アーキテクチャを変更しなくても、送信システム１０２が、代わりに受信システム１０４のローカルアクセスネットワーク内に位置できる可能性がある。
【００６８】
適応送達システムおよび方法は、本質的に、きわめてスケーラブルである。適応送達システムおよび方法は、送信システム１０２の１つ以上の数多くのインスタンスのうちの各インスタンスで実行されている適応送達方法の数多くの同時インスタンスをサポートするように拡張できる。適応送達方法の数多くの同時インスタンスを実行することによって、送信システム１０２の各インスタンスは数多くの受信システム１０４に巨大ファイルを送信できる。一般に、送信システム１０２のインスタンスのアレイは、適応ファイル送達方法の同時に実行されるインスタンスを通して、巨大ファイルを受信システム１０４の数多くのインスタンスに送信することをサポートするために別々の地域施設に位置付けることができる。送信システム１０２のためのこれらのアレイまたは他の種類の集合体は、ネットワーク１０６の中心位置に位置付けることができるか、またはネットワーク全体に分散できる可能性がある。送信システム１０２の多様な構成要素は、同じハードウェア装置内に設置することもできる可能性があり、または多様なハードウェア装置の間に分散することもできる可能性がある。また、送信システム１０４の複数のインスタンスを含む全体的なファイル送達システム１００が、浮動するネットワークトラフィック負荷に従ってネットワーク１０６の経路を使用して受信システム１０２に巨大ファイルのセグメントを送信できるように、巨大ファイルの多様なセグメントを送信システム１０４の複数のインスタンスの間で分散することができる可能性があり、または同じ巨大ファイルの複数のインスタンスを送信システム１０４の複数のインスタンスで格納することもできる可能性がある。たとえば、巨大ファイルの多様なセグメントは、所望される場合、セグメント伝送単位でのセグメント伝送の更新されるまたはほぼリアルタイムの監視およびフィードバック等の補助的な要因を使用することによって、ネットワーク１０６のすでに輻輳している任意の部分に対する影響の削減を保証するために、送信システム１０４の複数のインスタンスから送信できる。送信システム１０４のインスタンスのバランスを取ることは、ネットワーク１０６に対する全体的な帯域幅の影響を削減し、ネットワークの資源を効率的に使用するために実施できる可能性がある。送信システム１０４が最大容量にあるのかどうかを判定するための１つの手法は、送信システムが、関連付けられた最小転送速度Ｒｍｉｎで別のファイル転送ジョブに対処できるかどうかを検証することである。
【００６９】
上述された輻輳検知エージェント３１９を関与させる、または他の輻輳検知エージェントまたはサウンディングエージェントを関与させる等の追加の監視システム、および方法が、ｊ番目の待機期間ｗ＿ｊの受信システム１０４による決定を改善するために使用できる。たとえば、受信システム１０４の適応ファイル送達方法の部分を実施するためのコードを含む１つまたは複数のモジュールが、受信システム１０４にとってローカルなネットワーク１０６の部分を、送信システム１０２により近いネットワークの別の部分に通信可能にリンクするゲートウェイ装置上に常駐できる可能性がある。
【００７０】
一例として、かかる監視システムのホストとなるゲートウェイ装置は、ケーブルまたはＤＳＬモデムまたはＬＡＮスイッチ、ルータ、またはハブを含んでもよい。ゲートウェイ上のソフトウェアエージェントは、インターネットまたは他のローカルネットワークの使用量を監視できる可能性がある。ゲートウェイ上のソフトウェアエージェントは、送信システム１０２および受信システム１０４の組み合わせのうちの１つまたは複数に特定の適応ファイル送達伝送と関連付けられていない任意のネットワークトラフィックを監視できる可能性がある。受信システム１０４にローカルなローカルネットワークトラフィックをソフトウェアエージェントによって通知されると、ローカルネットワークの部分が再び別のセグメント伝送に妥当に対処するまで、受信システム１０２クライアントは、上述されたように、継続中のセグメント伝送を減速するまたは停止することによって適切な処置を講じることができる可能性がある。閾値を下回る重要ではないバックグラウンド活動を無視することができるように、適切なタイマーおよびより低い使用量限度が、ある期間（たとえば、５分および１０ｋｂｐｓ）に渡る平均的な使用量に対し実施できるだろう。
【００７１】
代わりに、いつインターネット部分等のネットワークの他の部分での活動が、セグメント伝送を受け入れることができないほどビジーであると、ワークステーションのうちの１つによって検出されるのかを発見し、ネットワークのローカル部分を介して受信側および／または送信システム１０２に報告できるソフトウェアエージェントが、受信システム１０４にとってローカルなネットワーク１０６の一部の上のコンピュータワークステーションにインストールできる可能性がある。
【００７２】
代わりに、ツーポートイーサネット（登録商標）ハードウェア／ソフトウェアモジュール等の装置を、受信システム１０４にとってローカルなゲートウェイまたはブロードバンドモデムとインラインで設置できる可能性がある。この装置は、それを通過するすべてのトラフィックを監視し、送信システム１０２から受信システム１０４へのセグメント伝送と関連付けられていない、インターネット活動等のネットワーク１０６の１つまたは複数の部分での活動を報告できる可能性がある。
【００７３】
適応ファイル送達方法の各セッションは、実際の転送性能を監視し、報告することによって、送達される各ファイルセグメントのアクセスネットワーク輻輳を調べ、対応することができる。これに加えて、ネットワーク１０６の容量／輻輳問題のグローバルビューが、ネットワークのアクセス部分を横切って戦略的に位置付けられ、送信システム１０２に返信として報告するソフトウェアサウンディングエージェントによって任意選択で強化できる場合がある。これらのサウンディングエージェントは、総計帯域幅および残りの容量のローカルビューを報告できる可能性がある。たとえば、ＤＳＬネットワークでは、これらのネットワーク活動を測定するサウンディングエージェントは、ＤＳＬアクセスマルチプレクサ（ＤＳＬＡＭ）に配置することができ、ケーブルネットワークの場合、それらは各ケーブルモデム終端システム（ＣＭＴＳ）に配置することができ、３Ｇ、セルラーの場合、それらは基地局またはアクセスサービスノードのゲートウェイに配置できる可能性がある。その後、送信システム１０２は、任意の時間に、ネットワーク１０６を横切って、またはある特定の部分に送達されているトラフィックセッションの総量を制限するために、特定のアクセスプロバイダのための方針プロファイル、またはネットワーク１０６の他の部分を改善するための追加情報をもつことができる可能性がある。たとえば、この制約は、ネットワーク１０６の時刻または使用可能な余剰容量のパーセンテージに基づいて実施できる可能性がある。
【００７４】
受信システム１０４がプロファイル５０３を更新し（ステップ５０２）、送信システム１０２にそのプロファイルを送信する（ステップ５０４）適応ファイル送達システム１００の実装形態５００が、図５に示されている。実装形態５００のいくつかのバージョンでは、定期的に、または他の継続的な方式で、プロファイル５０３を更新し、送信システム１０２に送信することができる。プロファイル５０３は、最初は空またはある種のデータを事前に入力されていることがあるが、経時的に、プロファイル内のデータは、さらに以下に説明されるように受信システム１０４の一人または複数のユーザの観察に従って、概して更新され、改善される。送信システム１０２は、受信システム１０４に送信されるプロファイル５０３との関連に従って二次ファイル５０７を選択する（ステップ５０６）。二次ファイル選択とプロファイル５０３との間の関連付けは、広告および／またはマーケティング戦略等の所定の戦略、またはそれ以外の場合は取得された戦略に応じて多様な方法のどれかで実行できる。
【００７５】
実装形態５００のいくつかのバージョンでは、送信システム１０２は、受信システム１０４に通知５０９を送信する（ステップ５０８）。受信システムは二次ファイルを要求していないので、通知５０９は、受信システム１０４に、送信システム１０２が適応ファイル送達を介して選択された二次ファイル５０７を受信システムに送信することを通知する。送信システム１０２は、ある期間に渡って、送信システムによって起動された適応ファイル送達を介して二次ファイル５０７を受信システム１０４に送信する（ステップ５１０）。送信システム１０２および／または受信システム１０４は、二次ファイル５０７のどのコンテンツが受信システム１０４に格納されたのかを記録する。
【００７６】
実装形態５００のいくつかのバージョンでは、二次ファイル５０７の記憶のための記憶装置１２２上の空き領域がきわめて注意深く調べられ、最小限に抑えられ、期限切れの二次ファイルがすぐに削除される。他の実装形態では、削除管理は、受信システム１０４のユーザに任されてもよい。次に受信システム１０４は、受信システムによって要求され、受け取られた他のファイルと混ぜられた二次ファイルを再生する（ステップ５１２）。
【００７７】
実装形態５００のバージョンは、受信システム１０４の記憶装置１２２に対する豊富なメディアコンテンツを有する広告および他のメッセージとしての二次ファイル５０７のキャッシングに使用できる。キャッシュに格納された二次ファイルは、後に、娯楽コンテンツ、教育コンテンツ、または映画、音楽、テキスト、ゲーム等のフォーマットを有する他のコンテンツを有するファイル等の受信システム１０４によって要求された、要求ファイルのプレイバックとともに挿入されるようにプレイバックすることができる。実装形態５００のバージョンは、たとえば加入およびペイパービューに加え、オペレータおよびコンテンツオーナーが、消費者にメディアを提供するコストを削減し、かつ／または自分のサービスの収益性を高めるために使用できる、財務収益モデルで使用できる。サードパーティは、実装形態５００の二次ファイル５０７の適応ファイル送達を介して、サードパーティのメッセージを受信システム１０４のユーザに送信するためにオペレータに資金を支払うことができる。
【００７８】
広告および他のメッセージコンテンツは、いくつかのバージョンでは、受信システムが、受信システムによって要求されたコンテンツをそうでなければ受信しない期間中に、送達期限があってもなくてもバックグラウンド転送として適応ファイル送達を使用して実装形態５００を通して受信システム１０４に送信される。実装形態５００を通して送信される二次ファイル５０７は、受信システム１０４にいったん格納されると、たとえば映画等の要求されたファイルの再生の前、再生の間、または再生の後に挿入できる。たとえば、娯楽コンテンツのプレイバックの前、プレイバックの間、またはプレイバックの後に、受信システム１０４は、その娯楽コンテンツのために再生されている要求されたファイルのプレイバックを休止することによって、広告ファイル等の二次ファイル５０７のうちの１つまたは複数にアクセスし、再生してもよい。受信システム１０４がどのようにして二次ファイル５０７を再生する機会を検出するのかは、結果としてフェードツーブラック効果または他のプログラムマーカー効果を生じさせる、娯楽コンテンツの中に明示的に埋め込まれた信号等の従来の放送産業の実施と同様に、類似した手法で行うことができる。再生される二次ファイルコンテンツは、プロファイル５０３に基づいて受信システム１０４によって選ばれることができるが、無作為、および／またはプレイバック装置のタイプ、および／または時刻、および／または再生されている娯楽または他のコンテンツのタイプ、および／または要求されるファイルコンテンツタイプ、および／またはユーザログオン識別、および／または他の基準に基づくことができる可能性がある。
【００７９】
二次ファイル５０７のコンテンツは、二次ファイル５０７の適応ファイル送達の前に受信システム１０４から送信システム１０２に送信されるプロファイル５０３に格納される特定の消費者データに調整されてもよい。プロファイル５０３の中のデータは、受信システム１０４によって、要求されたファイルコンテンツタイプ、オンライン注文習慣等に相互に関連付けることができる。広告のために使用されるとき、二次ファイル５０７は要求されたファイルとともに受信システム１０４に格納される。受信システム１０４のユーザは、潜在的なカスタマとなり得るため、二次ファイル５０７のコンテンツをこれらの潜在的なカスタマのプロファイルに調整することは、特定の視聴者に向けてより的が絞られるように、二次ファイルに含まれる広告の効果を増すために役立つことがある。
【００８０】
プロファイル５０７のコンテンツは、受信システムのユーザ識別、および／または対話型ブラウザインタフェースを介したオンライン注文を含むそれらの記録等の、購入記録を含むことがあるが、これに限定されない。他のデータは、娯楽コンテンツの説明（タイトル、ジャンル等）、再生日、ユーザの好み、購入習慣、表されている興味、広告コンテンツが再生された頻度等の調査からコンパイルされたデータの記録を含むことができる。適応ファイル送達システムの他の実装形態と同様に、記憶装置１１４を含む送信システム１０２が、ともにネットワーク化されているが、地理的には分離されている１台または複数の大量記憶装置を含むことがあることを理解されたい。
【００８１】
適応ファイル送達システム１００の実装形態６００は、図６から図１１に示されている。実装形態６００は、適応ファイル送達を介して送信システム１０２から受信システムに送信されるべきである多様なファイルの送達期限および送達順序を表示し、優先順位付けし、かつ操作する等の機能を実行するために、別々に設置されているか、または受信システム１０４の一部となるかのいずれかの、コンピュータワークステーション、携帯情報端末（ｐｄａ）、携帯電話、ゲームコンソール、または他の装置等の入力装置６０４を、ユーザ６０２が使用できるようにする。他の実装形態の場合と同様に、送信システム１０２は、通常の商業的なネットワーキング装置を使用して、ともにネットワーク化されていてもよいが、地理的には分離されてもよい１台または複数の物理ユニットとすることができる。
【００８２】
実装形態６００のバージョンは、ファイルの選択、送達、および再生等の互いから大きく分けられた異なる時間に発生する多様な活動を有する。ユーザ６０２は、送達されるファイルの選択、送達期限、ならびに優先順位および／または送達の順序を、入力装置６０４を通して制御することができる。
【００８３】
実装形態６００は、多様な形式の適応ファイル送達によって送達されるべきファイルの送達および送達ステータスを制御する。実装形態６００のシステム要件および目標のいくつかの態様は、ある程度まで、消費者に対する購入された商品の物理的な郵便配達と類似した言葉で理解できる。他方、実装形態６００の他の態様は、たとえば期限に間に合わせるためのデジタルコンテンツの電子送達を関与させる等、特有である。たとえば、この実装形態の１つの例示的な態様は、受信が単一のイベントではなく、ある間隔に渡って分散されるコンテンツファイルの受信を伴う。態様は、関連付けられた送達期限を伴う、メディアコンテンツファイル等のファイルの適応ファイル送達の間に、ユーザ６０２が実装形態６００と対話することと関連している。
【００８４】
図６に示されるように、ユーザ６０２は、無線、有線、ネットワーク、電話、または他の通信媒体を通して送信システム１０２に通信可能にリンクされている入力装置６０４を使用している。入力装置６０４は、ユーザ６０２が、適応ファイル送達に利用できる、送信システム１０２上に格納されたメディアコンテンツファイル等のファイルをブラウズする（ステップ６０６）のを支援するためにブラウザタイプのアプリケーションの形式を操作することができる。
【００８５】
図７に示されるように、ユーザ６０２は、ユーザ用の既存の個人メディアコンテンツライブラリを集合的に形成できる受信システム１０２にすでに送達されたコンテンツファイルを、入力装置６０４を通して任意選択で閲覧してもよい。ユーザ６０２は、受信システムに送達される新しいコンテンツファイルのための十分な記憶スペースがあるように、受信システム１０４上に格納されたある種のコンテンツファイルに、削除のために、入力装置６０４を用いて印を付ける（ステップ６１０）ことを任意選択で選んでもよい。
【００８６】
図８に示されるように、ユーザ６０２は入力装置６０４を使用することによって、送達のために１つまたは複数のメディアコンテンツファイルを選択できる（ステップ６１２）。実装形態６００のバージョンでは、選択されたファイルのオリジナルの送達順序が、ファイルが選択されたシーケンスに基づいて生成される。図９に示されるように、ユーザ６０２は、所望されるように、選択したメディアコンテンツファイルのオリジナルの送達順序の優先順位を任意選択で改訂してもよい（ステップ６１４）。
【００８７】
図１０に示されるように、送信システム１０２は、保留中の適応ファイル送達の予想送達期限を計算する（ステップ６１６）。送信システム１０２の予想される送達性能は、表示されたおよび／または入力された送達優先順位、ユーザ６０２の加入プロファイル、格納された履歴ネットワーク送達性能データ、および送信システムによって取得された現在のネットワーク状態に基づいてもよいが、これに限定されない。
【００８８】
いくつかのバージョンでは、送信システム１０２は、ユーザに、予測不可能なネットワークの低速化および／または故障を見越すための何らかの追加の時間デルタを加えた予想送達期限の総計から送信システムによって計算された送達期限を提示してもよい。
【００８９】
他のバージョンでは、送信システム１０２は、選択された送達期限が、なんらかの追加時間デルタが加えられた、送信システムによって計算された予想送達期限を超える限り、ユーザが送達期限を選択できるようにしてもよい。これらのバージョンでは、システム１００は、ユーザの選んだ送達期限の長さに従って記録し、ユーザに請求してもよい。
【００９０】
実装形態６００のいくつかのバージョンでは、最高の優先順位のファイルの送達は最も早期に行われ、次に高い優先順位の送達が続き、以下同様である。この予想送達期限の計算の結果は、グラフィックおよび／またはテキスト形式で入力装置６０４を通してユーザ６０２に提示できる。実装形態６００のいくつかのバージョンでは、ユーザ６０２は、適応ファイル送達をさらに開始するために送達計算結果を認めてもよい。
【００９１】
図１１に示されるように、適応ファイル送達は実装形態６００により発生するにつれ、送信システムは、ユーザ６０２が送達スケジュールを編集できる（ステップ６２０）ように、入力装置６０４を通して、適応ファイル送達と関連付けられた送達スケジュールを表示する（ステップ６１８）。表示される送達スケジュールの編集を通して、１つまたは複数の保留中の適応ファイル送達の優先順位を付け直すまたは取り消すことができる。
【００９２】
実装形態６００のいくつかのバージョンでは、ファイルの送達が、送達されるファイルの部分に関してある種の事前に選択された点を超えて進行した場合、ユーザ６０２はなんらかのサービスペナルティ無しに命令を取り消すことは許されない場合がある。コンテンツファイルの新しい選択は、入力装置６０４上に表示される送達スケジュールに追加され、同様にユーザ６０２によって優先順位を付け直され得る。
【００９３】
再優先順位付けの後、送信システム１０２は、保留中の適応ファイル送達の新しいスケジュールを、再び計算し（ステップ６１６）、新規に計算したスケジュールを入力装置６０４上でユーザ６０２に表示する（ステップ６１８）。ある最大部分を超えてすでに部分的に送達されたファイルを取り消す等、関与するなんらかのサービスペナルティがある場合があることを考慮して、表示された送達スケジュールの編集、編集したスケジュールの再計算、および再計算したスケジュールの表示のシーケンスは、ユーザ６０４によって所望されるだけ繰り返すことができる。
【００９４】
パーソナライズされたコンテンツライブラリ等ユーザによってカスタマイズされたメディアコンテンツのライブラリを可能にするように、実装形態７００は、図１２から図１４に示されている。パーソナライズされたコンテンツライブラリは、ユーザの家庭または会社で、受信システム１０２上、あるいは受信システムに加えて、デジタルビデオレコーダ（ＤＶＲ）、ポータブルメディアセンター（ＰＭＣ）、ネットワークに接続された記憶装置、ＰＣ、携帯電話等の大容量記憶装置によってイネーブルにされた装置等の、受信システムに関連付けられた、または通信可能にリンクされた多岐に渡るコンテンツ記憶装置上のどちらかに、ローカルに格納することができる。ユーザ６０２は、メディアファイルの選択、選択したメディアファイルの適応ファイル伝送、および送達されたコンテンツのプレイバックの３つの段階で実装形態７００と対話する。
【００９５】
図１２に示されるように、ユーザ６０２は、入力装置６０４を使用して、送信システム１０２からファイルを選択し、注文する（ステップ７０２）。ファイルの注文は、注文の時点で、加入者契約を通して、定期的に課金するように累積して、または別の取り決めでのいずれかの金銭的な取引を伴ってもよい。ユーザによるファイルの選択および注文は、ウェブブラウザを介して提示、またはメディアカタログ等のファイルリスティングの他の提示表示を提供できる入力装置６０４によってサポートされる。各ファイル選択は、送信システム１０２によって計算され、管理される送達期限と関連付けられる。
【００９６】
図１３に示されるように、送信システム１０２は、受信システム１０４のそれぞれの上にメディアファイルのパーソナルコンテンツライブラリ７０６を構築するために多様なユーザ６０２の受信システム１０２に対する注文されたファイル７０４、つまり選択したコンテンツファイルの適応ファイル送達を管理する。
【００９７】
代わりに、注文されたファイル７０４の適応ファイル送達は、単一のメインパーソナルコンテンツライブラリ７０６を構築するために受信システム１０４のうちの１つに対して行うことができる。代わりに、受信システム１０４は、より小さなパーソナルコンテンツライブラリ７０６に格納し、かつ／または送達されたファイルを再生するために複数の装置に通信可能にリンクすることができる。
【００９８】
図１４に示されるように、いったんメディアファイルが受信システム１０４に送達され、パーソナルコンテンツライブラリ７０６を構成すると、パーソナルコンテンツライブラリの選択されたファイル７０８は、受信システム１０４の一部としてまたは受信システム１０４とは別個としてのどちらかでプレイバック装置７１２上で再生できる（ステップ７１０）。ファイルはいったんパーソナルコンテンツライブラリ７０６に入ると、送達ネットワーク１０６または送信システム１０２とさらに対話しなくても、所望されるようにプレイバックできる。したがって、パーソナルコンテンツライブラリ７０６内のファイルの再生は、ネットワーク１０６および／または送信システム１０２上で経験される不利な状況から隔離することができる。
【００９９】
実装形態７００のバージョンは、期限によって規制される時間枠の中で家庭のコンテンツ記憶装置（たとえばＤＶＲ）に対する映画等の大きなメディアファイルの将来の送達を注文するために、ブラウザを介して遠隔オンラインストアサーバシステムとして、消費者が送信システム１０２と対話できるようにするための遠隔注文のために使用できる。
【０１００】
注文経験は、送信システム１０２が消費者にとって関心があると予想されるコンテンツの提案を提供することによって改良できる。たとえば、消費者は、送達のために１つまたは複数のコンテンツファイルを検索し、それによって受信システム１０４によって送信システム１０２に渡されるその消費者のプロファイルに基づいて提案されるコンテンツファイルのリストの提示を受けることができる。消費者プロファイルは、以前に注文されたコンテンツファイルのジャンル、信頼される友人の推薦、連載されたフィーチャ、依然に選択されたコンテンツの続き、購入習慣等に基づいてもよい。消費者は、また、タイトル、著者、監督、ジャンル、レーティング、セックス／バイオレンス／言語コンテンツプロファイル、出演者、言語、プレイバックフォーマット、消費者評価、レビュー評価等を含んでもよいが、これに限定されない検索用語を使用して利用可能なタイトルのデータベース内で入手できるコンテンツを検索できる。次に、消費者は、各コンテンツファイルと関連付けられた期限内での送達のために１つまたは複数のコンテンツファイルを選択することができる。
【０１０１】
人気のあるコンテンツに対する要求のピークを低減するまたは回避するのに役立てるために送達されたファイルを再生できる予定されている公開日から、予定されている送達期限を分離することを含む適応ファイル送達システム１００の実装形態８００が、図１５から図１９に示されている。実装形態８００は、所定の公開日に先行して、単一ネットワークまたはネットワークの集合体として、ネットワーク１０６上でコンテンツ記憶装置の集合体を含む、または通信可能にリンクできる受信システム１０４に、デジタル化されたメディアファイルを、適応ファイル送達を介して、電子的に送達できるようにする。公開日とは、以前利用できなかったコンテンツがユーザのグループによるプレイバックに利用できるようになる事前に予定される日付を指す。
【０１０２】
たとえば、送達されるファイルのコンテンツは、まだ一般に入手できない新しい映画または娯楽シリーズのエピソードである可能性がある。適応ファイル送達は、公開日前のファイル送達のきわめて可能性の高い保証を提供するために、送達されるファイルのコンテンツと関連付けられる公開日より十分に前に完了するように計画できる。適応ファイル送達による配布を公開日から分離することによって、消費者の大きいグループは、人気のあるコンテンツのための公開日に、大きな帯域幅同報通信送達システムを必要とせずに、またはそうでなければ需要の大きなピークに対処するために送達ネットワークに負担をかけることなく、ある特定の公開日にメディアに対する同時アクセスを有する場合がある。いったん配布されると、消費者は、公開日または公開日後に、所望されるように、または任意の他の購読計画に従ってコンテンツをプレイバックすることができる。
【０１０３】
図１５に示されるように、複数の受信システム１０４が、入手できるようになる可能性がある新しいコンテンツファイルについて送信側サーバ１０２に問い合わせる（ステップ８０２）。この問い合わせ（ステップ８０２）は、代わりに、前述されたように入力装置６０４上での使用によって行うこともできる可能性がある。これらの問い合わせは、受信システム１０４および／または入力装置６０２によって自動的に実行できるか、または受信システムおよび入力装置のユーザによって手動で実行できる可能性がある。送信システム１０２は、コンテンツ８０６、タイムスタンプ８０８、およびファイルコンテンツの暗号化を表すロック８１０を備えた暗号化ファイル８０４を有すると示されている。
【０１０４】
図１６に示されているように、送信システム１０２は、送信システムで入手可能になるどのようなファイルも送達すること、または送信システムの上に格納される、および／または受信システムの上に格納されるリストに従って選択されるそれらのファイルだけを送達すること、または受信システムのユーザによる手動選択に従ってそれらのファイルだけを送達すること等の任意の数の注文方式に基づいて、受信システム１０４に適応ファイル送達を介して暗号化ファイル８０４を送達する。たとえば、所与のコンテンツファイルに対する受信システム１０４の適格な受信システムの集合体は、ネットワーク１０６のある部分にリンクされた受信システムのグループのいくつかまたはすべてを含んでもよい事前に設定された定期購読リストを使用することによって決定されてもよい。
【０１０５】
この例では、暗号化ファイル８０４のコンテンツ８０６は、復号され、再生されるために、復号キーを必要とする通常のデジタル暗号化方法を介して早期公開から保護されている。暗号化ファイル８０４は、暗号化ファイルのコンテンツ８０６の将来の公開日を示すタイムスタンプ８０８を含むが、これに限定されない、暗号化されていないメタデータを関連付けている。いったん送達されると、受信システム１０４は、このメタデータにアクセスし、コンテンツがまだ入手できないことを示し、いつ公開日が起こるかを示すこのグラフィックブラウザタイプのインタフェースまたはテキストブラウザタイプのインタフェースを消費者に提供することができる。
【０１０６】
図１７に示されるように、暗号化ファイル１０４が適応ファイル送達を介して受信システム１０４に送信された後で、受信システムは、適切な復号キーを要求するためのライセンスシステム８１４に対するアクセス要求を実行する（ステップ８１２）ことによって暗号化ファイル８０４を再生しようと試みる。図１７に示されるように、適切な復号キーが、使用不可能な復号キー８１６としてライセンスシステム８１４に現在格納されている。実装形態８００のいくつかのバージョンでは、ライセンスシステム８１４は、送信システム１０２または別のシステムであってもよい。
【０１０７】
ライセンスシステム８１４は、アクセス拒否で応答する（ステップ８１８）。実装形態８００のいくつかのバージョンでは、受信システム１０４は、まず、それ自体の内蔵クロックを、受信システムにすでに格納されている暗号化ファイル８０４のタイムスタンプ８０８と比較することによって、アクセス要求を送信する前に検証する。実装形態８００のいくつかのバージョンでは、受信システムの内蔵クロックはハッキングまたはエラーを受けやすい場合があるので、意図されないアクセスに対する二次的な保護として、受信システム１０４は、暗号化ファイル８０４の復号キーを取得するために送信システム１０２とは別個のシステムとしてライセンスシステム８１４と取引を行う必要がある場合がある。これらのバージョンでは、ライセンスシステム８１４は、受信システム１０４による無効要求を拒絶するのに役立つであろうそれ自体の時間参照を維持するだろう。
【０１０８】
図１８に示されるように、受信システム１０４は、公開日にまたは公開日後に、使用可能な復号キー８２２として関連付けられた復号キーを格納しているライセンスシステム８１４に有効なアクセス要求を送信する（ステップ８２０）。ライセンスシステム８１４は、暗号化ファイル８０４の以後の復号およびプレイバックのために、受信システム１０４に使用可能な復号キー８２２を伝送することによって応答する。
【０１０９】
図１９に示されるように、受信システム１０４は、使用可能なライセンスキー８２２を取得し、格納している。使用可能なライセンスキー８２２の取得の後で、受信システム１０４が受信システム上に格納されている暗号化ファイル８０４の再生を開始するたびに、受信システムは、コンテンツの承認されたプレイバックを可能にするためにこのライセンスキーを参照する。実装形態８００のいくつかのバージョンでは、ライセンスキー８２２は、別の受信システムに対するこのライセンスキーの以後の許可されていない伝送を妨げるように受信システムに格納される。
【０１１０】
受信システムの製造時に受信システム１０４の中にコンテンツファイルを予めロードすることを目的とした適応ファイル送達システム１００の実装形態９００が、図２０に示されている。実装形態９００を通して、予めロードされたコンテンツライブラリは、受信システムの製造時に受信システム１０４の中にロードされる。
【０１１１】
パーソナライズされたコンテンツライブラリ７０６のうちの１つを初期に入力するために適応ファイル送達システム１００を使用するには、ある種の状況では望ましくない量の時間がかかる場合があるので、実装形態９００は、パーソナライズされたコンテンツライブラリのためのファイルの初期の集合体を適応ファイル送達へのジャンプスタートとして予めロードできるようにし、それ以後、適応ファイル送達の使用により予めロードされたパーソナライズされたコンテンツライブラリを更新し、さらに拡大する。パーソナライズされたコンテンツライブラリのためのファイルの選択は、個々の購入ユーザ、典型的なユーザタイプ、または典型的な集合体タイプ等の示されている要望のような多様なモデルに基づくことができる可能性がある。
【０１１２】
実装形態９００は、ロック９０８によって表されるように暗号化されているファイル９０６を暗号化し（ステップ９０４）関連付けられたキー９１０を生成するコンテンツサービスプロバイダ９０２を含む。実装形態９００は、さらにキー９１０のコピーを保持するためのキー記憶装置９１４を有するコンテンツライセンスプロバイダ９１２と、受信システム製造メーカ９１６と、ユーザ９１８とを含む。示されるように、暗号化はコンテンツサービスプロバイダ９０２で発生してもよいが、代替バージョンでは、暗号化はコンテンツライセンスプロバイダ９１２で発生する。一般に、キー９１０は、コンテンツライセンスプロバイダ９１２で格納される。
【０１１３】
暗号化（ステップ９０４）後、コンテンツサービスプロバイダは、キー記憶装置９１４内への格納（ステップ９２２）のためにコンテンツライセンスプロバイダ９１２にキー９１０のコピーを送信する（ステップ９２０）。コンテンツライセンスプロバイダ９１２が暗号化（ステップ９０４）を実行すると、ライセンスプロバイダは次にキー９１０の格納に進むことができる。コンテンツサービスプロバイダ９０２は、暗号化ファイル９０６のコピーを受信システムの製造メーカ９１６に送信し（ステップ９２４）、暗号化ファイル９０６を、製造されている受信システム１０４のコピーの中に統合する（ステップ９２６）。
【０１１４】
受信システム１０４のコピーは、通常、一連の商業的な交換を通して受信システム製造メーカ９１６からユーザ９１８に転送される（ステップ９２８）。ユーザ９１８がいったん受信システム１０４を取得すると、ユーザは通常受信システムを用いてインストール手順を実行し（ステップ９３０）、それによってコンテンツライセンスプロバイダ９１２からのキー９１０のコピーに対する要求が行われる（ステップ９３２）。いくつかのバージョンでは、予めロードされたコンテンツライブラリをイネーブルすることは任意選択であり、ユーザ９１８はそれを遂行することを拒否してもよい。実装形態９００のいくつかのバージョンでは、キー要求（ステップ９３２）は、コンテンツサービスプロバイダ９０２と関連付けられたオンラインストア（不図示）によりオンラインブラウザセッションを介して達成される。
【０１１５】
ブラウザセッション中、ユーザ９１８は、適切なバージョンのキー９１０を供給するためにライセンスプロバイダ９１２が使用できる受信システム１０４のハードウェア識別を示すことができる。キー９１０のコピーは、コンテンツライセンスプロバイダ９１２から受信システム１０４に送信される（ステップ９３４）。キー９１０のコピーは、次に、暗号化ファイル９０６のうちの１つまたは複数を復号し、再生する（ステップ９３６）ために使用される。実装形態９００のいくつかのバージョンでは、受信システム１０４が暗号化ファイル９０８のうちの１つを再生しようと初期に試みることで、キー要求９３２がトリガされる。ライセンスプロバイダ９１２が、ライセンスプロバイダによって維持される装置のサービス有効リストの中のキー要求９３２の中でハードウェア識別を提供されない場合、ライセンスプロバイダはキー要求を拒否する。いったん復号キー９１０が受信システム１０４によって取得されると、通常、さらなるキー要求（ステップ９３２）は必要とされない。
【０１１６】
本明細書で説明される適応ファイル送達システムおよび方法が、ファイルセグメント送信する等のための本明細書で説明される特定の手順以上を含むことをさらに示すために、適応ファイル送達システム１００の実装形態１０００が、適応ファイル送達システム１００の要素および関連付けられた方法を概して示す図２１に示されている。一般に、適応ファイル送達システム１００および方法は、ある送達期限までに区分的にファイルを電子的に送達しようとする。いくつかのバージョンでは、他の態様は、要求することによってまたは注文することによって適応ファイル送達を開始することを含むことができる。追加の態様は、受信されたファイルを再生することを含むことができる。実装形態１０００の示されているバージョンは、送達セッションにおける３つのイベント、つまりコンテンツを注文すること（ステップ１００４）、送達期限までにコンテンツを送達すること（ステップ１００６）、およびコンテンツをプレイバックすること（ステップ１００８）を含み、時系列１００２に沿った時間分離によって動作する。これらのイベントを分離することによって、送信システム１０２は、そうでなければ定期的に、および特定されない期間、予測不可能に使用できない１０１２ことがあるネットワーク可用性１０１０の間にコンテンツを送達できる。
【０１１７】
実装形態１０００は、サービスプロバイダが、格納されているメディアコンテンツファイルのライブラリと関連付けられたサーバとして送信システム１０４を操作することを含むことができる。送信システム１０００は、サービスプロバイダのカスタマを表す受信システム１０４の集合体にコンテンツファイルを送達する。送達されたコンテンツファイルは、それらが送達されるときに受信システム１０４でローカルに格納される。コンテンツを注文すること（ステップ１００４）は、送達段階を開始し、消費者によって直接的に、または消費者の代わりに活動する別の人または機械によるプロキシによって実行できる。送信システム１０２は、次にネットワーク可用性１０１０および／または非可用性１０１２の予測時間を想定して、クライアントにコンテンツファイルを送達するために必要とされる予想送達速度を計算する。ネットワーク送達の予測時間は、手動で設定されたプロファイル、以前の期間の履歴測定値、ネットワーク活動の傾向等に基づいてもよい。
【０１１８】
送達中のいつか、ネットワークが使用できない１０１２予測されない期間があることがある。これらの故障が予想外である場合、故障の終了時に、送信システム１０２は、送達期限を達成するために新しい必須送達速度を自動的に再計算し、メディアコンテンツファイルの残りの部分の送達を再開する。ファイル全体が受信システム１０４に送達される（ステップ１００６）と、送達は終了する。送達後の特定されない期間、注文する消費者または他のユーザによって操作される受信システム１０４は、受信システム１０４と送信システム１０２との間の送達ネットワークのあらゆる不利な性能にわずらわされずに、受信システム１０４上で、ローカルに格納されたメディアファイルの全てをプレイバックできる（ステップ１０１４）。
【０１１９】
送信システム１０２がバーチャルネットワークオペレータとして使用される実装形態１１００が図２２に示されている。適応ファイル送達手法を使用することによって、送信システム１０２は、ネットワーク１０６を、それぞれが、大きなファイルを多数の受信システム１０４に送信するために多様な異なるタイプのネットワークロードプロファイル１１０４を有する１つまたは複数の送達ネットワークまたはサービスプロバイダネットワーク１１０２を含むとして使用できる。
【０１２０】
さらなるネットワークロードの複雑さには、他のロードプロファイル１１０８がサービスプロバイダネットワーク１１０２の１つまたは複数のリンクされているＬＡＮ１１０６が含まれることがある。多様なネットワークロードの複雑さにも関わらず、送信システム１０２は、サービスを中断させる、またはこれらのサービスプロバイダネットワーク上での帯域幅を拡大する理由を与える程度までサービスプロバイダネットワーク１１０２に影響を及ぼさずに、設定された送達期限に間に合うように無事に大きなファイルを伝送できる。
【０１２１】
実装形態１１００では、送信システム１０２は、ネットワークアクセスプロバイダといかなる契約によっても関係しないことがある事業体が、ある期間中は余剰容量を有するが、他の期間には有さないサービスプロバイダネットワーク１１０２上で大きなメディアコンテンツ配布サービスを確立し、運営できるようにするために、バーチャルネットワークオペレータ構成を通して使用できる。一般に、実装形態１１００は、バーチャルネットワークオペレータサービスを支援するために追加容量の増築を必要とせずに、ネットワークの既存の容量の範囲内にとどまるために、図２２に示されるネットワーク１０６等のネットワークの、またはバーチャルネットワークオペレータとしての送信システム１０２とカスタマの間の他のネットワークのオフピークネットワーク容量を使用するために、適応ファイル送達を使用する。
【０１２２】
バーチャルネットワークオペレータとして、送信システム１０２は、１つまたは複数のコンテンツサーバ、またはカスタマによってアクセスできるコンテンツファイルのライブラリを格納する他の記憶装置を維持する。バーチャルネットワークオペレータのサービスは、ユーザのコンテンツ記憶装置（ＤＶＲ、ＰＭＣ、ネットワーク接続記憶装置、ＰＣ等）上での格納のための指定されたユーザへのメディアコンテンツファイルの送達として幅広く定義できる。したがって、バーチャルネットワークオペレータのサービスは、自らのコンテンツがその企業のカスタマに送達されること希望する企業にとっての送達エージェントサービスに類似している。
【０１２３】
適応ファイル送達システム１００の実装形態は、サービスプロバイダネットワーク１１０２、ＬＡＮ１１０６、他のネットワーク、および／またはＩＰまたはネットワークレイヤアドレスのうちの２つ以上の間で移動機能（たとえばラップトップ）が移動される、受信システム１０４の１つまたは複数を含むことができる。たとえば、ユーザは、ユーザの受信システム１０４を、サービスプロバイダネットワーク１１０２のうちの１つを通して通信可能にリンクされるＤＳＬモデムに接続するホームアクセスポイントに接続できる可能性がある。この場合、受信システム１０４と関連付けられたネットワークアドレスは、ＤＳＬモデムの広域ネットワークアドレスである可能性が高い。この例を続けると、ユーザは、次に受信システム１０４を、ユーザの仕事場所にある企業ＬＡＮ等のＬＡＮ１１０６のうちの１つに接続し、その結果受信システムのネットワークアドレスを変更する。
【０１２４】
さらに、ユーザは、次に、空港で３Ｇモデムを介して受信システム１０４を、サービスプロバイダネットワーク１１０２またはＬＡＮ１１０６のうちの別のものに接続し、アクセスネットワークのタイプを再度変更すると仮定する。この例に提供されるネットワーク接続のこれらの多様な変更を通して、送信システム１０２は、受信システム１０４と確立された多様なリンクのための記憶装置１１４の中にネットワークロードプロファイル１１０４の履歴を保持し、その履歴はこれらのリンクのそれぞれについて性能を追跡するために使用される。性能の追跡は、ある特定のリンクが無負荷状態でまたは輻輳がない状態でどれほどよく機能するのかを含むことがある。動作中、送信システム１０２は、リンクが現在の帯域幅の活用方法を決定するために、収集された履歴を活用できる。
【０１２５】
リンク性能の追跡は、ファイルセグメントのうちの１つが受信システムに転送されるたびに、受信システム１０４がスループットを測定することによって実行できる。受信システム１０４は、次に測定したスループットを送信システム１０２に報告できる。その結果、送信システム１０２は、次に、受信システム１０４からリアルタイムのリンク性能測定基準を受け取ることができる。
【０１２６】
性能追跡調査の特定の態様は、実装時に変わることがある。たとえば、送信システム１０２が受信システム１０４のうちの１つからダウンロード要求を受け取ると、送信システムは要求を認証できる。バリデーションは、受信システム１０４クライアントマシンの電子シリアルナンバー（ＥＳＮ）および受信システムのユーザに割り当てられるカスタマＩＤ（ＩＤ）で実行できるが、他のバリデーション方法も使用できる。
【０１２７】
バリデーション時、送信システム１０２は、次に、送信システムによって受信システムから受信されるダウンロード要求のネットワークパケットヘッダー部分の中の受信システム１０４の入信接続ソースＩＰアドレス情報を取得できる。送信システム１０２のプロセッサ１１２は、次に、送信システムの記憶装置１１４が、ダウンロード要求と関連付けられたＥＳＮおよびソースアドレスを含む記録をすでに含んでいるかどうかを判定できる。かかる記録が存在する場合、プロセッサは、その記録の性能情報を更新することができ、かかる記録が存在しない場合は、新しい記録を作成できる。いくつかの実装形態では、送信システム１０２は、それぞれが新しい記録を作成するのに役立てるために、ダウンロード要求のＥＳＮ以外のＥＳＮを除く同じソースアドレスを含む１つまたは複数の既存記録からの性能情報を使用できる。
【０１２８】
いくつかの実施形態では、現在のピーク帯域幅の値が、送信システム１０２の記憶装置１１４内で見出される記録に以前保持されていた履歴ピーク帯域幅の値に比して閾値よりも大きいときにのみ記録が更新される必要があるように、リンク性能は、現在のファイルセグメント転送のためのピーク帯域幅値に従って追跡される。たとえば、現在のピーク帯域幅の値が履歴ピーク帯域幅について格納されている値よりも大きい場合には、履歴ピーク帯域幅の値は、現在のピーク帯域幅の値で置換される。
【０１２９】
現在のピーク帯域幅の値が履歴ピーク帯域幅の値の何らかのパーセンテージ等の履歴閾値よりも大きい（たとえば、履歴ピーク帯域幅の値の９０％よりも大きい）場合には、現在の時間は、かかる発生を注記するために記録に記憶される。これは、履歴ピーク帯域幅の値が、ネットワーク構造の変化または打ち切られたネットワーク接続のために無関係になっているのかどうかを判定する場合に使用できる。とにかく、最後のアクティブダウンロードの時刻も、リンクがダウンロード中に期限切れになることを妨ぐために記録される。
【０１３０】
現在のピーク帯域幅の値が、履歴ピーク帯域幅の値の何らかのパーセンテージに満たない場合には、記録は最後のアクティブダウンロード時刻を現在のダウンロード時刻で置換するだけで更新される。新しい記録を作成するために、送信システム１０２は受信システム１０４のソースアドレスおよびＥＳＮを記憶し、現在時刻を、履歴閾値が超えられた最も最新の時刻として記憶できる。すべての場合において、最後のアクティブダウンロード時刻は、リンクがダウンタイム中に期限切れになることを防ぐためにも記録される。表１は、送信システム１０２の記憶装置１１４内の記録をどのようにして構造化できるかの代表的な例を示す。
【表１】
0005974373.tif 000002
【０１３１】
前述された手法を考えると、送信システム１０２は、すべての新しいダウンロードリンクを追跡し、それぞれのピーク性能を追跡できる。さらに、送信システム１０２は、受信システム１０４が確立された記録を有するリンクの間で切り替わるときに、そのリンクの性能を追跡し続けることができる。この手法は、送信システム１０２が、ある特定のリンクが新しいより低い性能レベルを有するときを認識し、気付くことができるようにする。一般に関連付けられた記録は、ある特定のソースアドレスまたはＥＳＮの比較性能分析のために使用されてもよい。さらに、２つ以上の送信システム１０４が、リンク状態認識を改善するために多様なリンクの情報を共有できる。リンクは（ＩＰアドレス等の）ソースアドレスおよび宛先アドレスによって定義されるので、ソースアドレスに関して事前に記憶された情報は、ソースアドレスおよびＥＳＮの新しい組み合わせのための記録を作成する上で有用である場合がある。
【０１３２】
前記から、本発明の特定の実施形態が本明細書で説明のために説明されてきたが、本発明の精神および範囲から逸脱することなく多様な変更が加えられてもよいことが理解されよう。したがって、本発明は、添付の特許請求の範囲によって以外制限されない。
【図１】
0005974373.tif 000003
【図２】
0005974373.tif 000004
【図３】
0005974373.tif 000005
【図４】
0005974373.tif 000006
【図５】
0005974373.tif 000007
【図６】
0005974373.tif 000008
【図７】
0005974373.tif 000009
【図８】
0005974373.tif 000010
【図９】
0005974373.tif 000011
【図１０】
0005974373.tif 000012
【図１１】
0005974373.tif 000013
【図１２】
0005974373.tif 000014
【図１３】
0005974373.tif 000015
【図１４】
0005974373.tif 000016
【図１５】
0005974373.tif 000017
【図１６】
0005974373.tif 000018
【図１７】
0005974373.tif 000019
【図１８】
0005974373.tif 000020
【図１９】
0005974373.tif 000021
【図２０】
0005974373.tif 000022
【図２１】
0005974373.tif 000023
【図２２】
0005974373.tif 000024