JP5383704B2 - 予測キャッシング型コンテンツ配信ネットワーク - Google Patents

予測キャッシング型コンテンツ配信ネットワーク Download PDF

Info

Publication number
JP5383704B2
JP5383704B2 JP2010540212A JP2010540212A JP5383704B2 JP 5383704 B2 JP5383704 B2 JP 5383704B2 JP 2010540212 A JP2010540212 A JP 2010540212A JP 2010540212 A JP2010540212 A JP 2010540212A JP 5383704 B2 JP5383704 B2 JP 5383704B2
Authority
JP
Japan
Prior art keywords
content
content items
list
items
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010540212A
Other languages
English (en)
Other versions
JP2011511338A (ja
Inventor
シーゲル,ジヨナサン
Original Assignee
アルカテル−ルーセント
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アルカテル−ルーセント filed Critical アルカテル−ルーセント
Publication of JP2011511338A publication Critical patent/JP2011511338A/ja
Application granted granted Critical
Publication of JP5383704B2 publication Critical patent/JP5383704B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1076Resource dissemination mechanisms or network resource keeping policies for optimal resource availability in the overlay network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data

Description

本発明は一般に、コンテンツ配信ネットワークの1つまたは複数のノードにおける情報のキャッシングまたは一時的記憶に関する。
ブロードバンドインターネットが拡大し続ける中、マルチメディアコンテンツのリアルタイム配信を求めるユーザの数が絶えず増大している。コンテンツ配信ネットワークはこのニーズに対し、コンテンツアイテムをキャッシュできるネットワーク化されたコンピュータまたはノードのシステムを介して、エンドユーザにデジタルコンテンツを配信することによって対応している。コンテンツ配信ネットワークは、地理的に分散した記憶装置を利用することで、高品質の大量のコンテンツへのアクセスをユーザに提供する。
一般に、コンテンツの配信のために最適化されたネットワークを構築する理由が2つある。第一の目的は、帯域幅の拡大ならびに待機時間およびジッタの低減を通じてユーザ体験の質を向上させることである。第二の目的は、ネットワークサービスの収益性を最適化することである。
一般に、ネットワークサービスの収益性は、平均的な利用度に影響され、コストは、ピークのトラフィック負荷に対応する大きさの設定済みネットワーク容量に影響される。コンテンツ需要が利用可能なネットワーク容量に近づくと、サービスプロバイダはサービスセッションをさらに配信することはできず、その結果、収益とサービスの質が低下する。また、このサービスの質低下により、サービス価格が下がることや、高い費用をかけてネットワーク容量を拡大する必要が生じることもある。
ネットワークのコストを下げる一般的な技法は、トラフィック需要をピーク外時間に移行させてネットワークの拡大を延期し、ネットワークの輻輳を避けることである。記憶装置を組み込んでいるネットワークは、ピークをなくすために需要プロファイルを平滑化することができる。これらのネットワークは、コンテンツ配信ネットワークの実装コストを最小限に抑えつつ、サービス容量の拡大を実現することができる。
コンテンツ記憶の階層はしっかりと確立されている。階層システムでは、ユーザが映像や音声などの1つのマルチメディアコンテンツを要求したとき、コンテンツ配信ネットワークは、ネットワークの近接性の点で最も近いサーバを選択することによって効率性を最大化する。例えば、コンテンツ配信ネットワークは、要求側ノードとサーバノードとの間のホップ数またはネットワーク遅延時間の最小化を試みることができる。一方、ユーザが要求するコンテンツが、要求側ノードに極めて接近した場所にあるサーバノードで入手できない場合、コンテンツ配信ネットワークの非効率性が高まることがある。こうした状況では、サーバノードは別のノードからコンテンツを取り出さなければならず、その結果、コンテンツ配信ネットワーク全体のトラフィック需要が増加する。
現在の多くのコンテンツ配信ネットワークは、エンドユーザパフォーマンスの向上という目標を達成しているが、使用されていないコンテンツを複製し配信することや、かかるコンテンツをピーク時間に配信することによって、ネットワークサービスプロバイダに対するコストを増大させる場合もある。現在のコンテンツ配信ネットワークは、ネットワーク利用度または空き容量の知識を考慮してキャッシング対象とするコンテンツ、キャッシング量またはキャッシュの再ポピュレート時期を決めることがない。
コンテンツ配信ネットワークにおけるキャッシングはすべて、キャッシュに記憶されたコンテンツが今後使用されるだろうという前提に基づいているが、現在の実装は、かつて使用されたことのあるコンテンツアイテムが今後再び使用されること、またはあるユーザにとって興味深かったコンテンツアイテムが他のユーザにとっても興味深いことを想定して、どのコンテンツをキャッシュするかを決める。これらの実施形態は、単に直接的かつ非常に単純に将来のコンテンツ消費を予測しようとしており、そのために例えば、過去のコンテンツ消費を追跡して過去の消費アイテムのうちどれをキャッシュに保存すべきかを決める。
どのコンテンツをキャッシュするかを決めるこの単純なプロセスは、いくつかの理由で失敗することがある。例えば、最近公開された映画は将来多くの視聴者を有すると予想され得るが、過去には視聴者がいなかった。したがって、既存のコンテンツ配信ネットワークは一般に、かかるコンテンツを記憶することができないと思われる。一方で、大半のコンテンツ配信ネットワークは、過去に人気があったコンテンツが将来には人気がなくなることを判断できないだろう。例えば、選挙期間中に広く関心が持たれる選挙特集は、選挙が終わればほとんどまたはまったく関心を寄せられないだろう。
別の例を挙げると、あるコンテンツ配信ネットワークのローカルサービスエリアに住んでいる唯一のカンボジア人であるカンボジア人女性は、カンボジア語のコンテンツを定期的に要求するかもしれない。しかし、彼女のコンテンツは近隣のユーザにとって興味深いものではなく、彼女は以前見たコンテンツを見たがらないと思われるため、彼女に配信されるアイテムをキャッシュすることにはほとんど有用性がない。既存のコンテンツ配信ネットワークは一般に、彼女固有の視聴パターンが彼女向けのコンテンツのキャッシングを役立たないものにしていることを認識できないだろう。
また、既存のコンテンツ配信ネットワークが将来的に頻繁に使用される公算の大きいコンテンツアイテムを適切に特定した場合でも、こうしたネットワークはピーク使用時間中に当該アイテムを分散された記憶ポイントに送信する可能性があり、その結果、容量不足に拍車がかかることがある。また、既存のコンテンツ配信ネットワークは一般に、単一のネットワーキングモードで動作する。その結果、こうしたネットワークは、分散されたキャッシングポイントでブロードキャストネットワークから映画を記録することによってユニキャストダウンロードのネットワーク負荷の増大を回避できる場合でも、分散されたキャッシングポイントへの映画のユニキャストダウンロードを要求する可能性がある。
ピーク外時間中にコンテンツを自動的にキャッシュするため、またはブロードキャストネットワークからのコンテンツを送信時に捕捉するために、将来のコンテンツ消費の予測知識を使用することにより、コストを軽減する予測キャッシング型コンテンツ配信ネットワークが必要である。また、現在のユーザの関心内容に合う可能性が最も高いコンテンツの在庫を維持するためにキャッシングを利用する自己適応型コンテンツ配信ネットワークが必要である。また、コンテンツ配信ネットワーク内で需要のピークを移行させ、それにより所与のネットワークリンク容量で配信できるサービスセッションの数を最大化するために選択済みコンテンツをキャッシュする必要もある。
前述の本発明の目的および利点は、様々な例示的実施形態によって達成できるものの例であり、実現可能な考え得る利点を網羅することも限定することも意図していない。よって、様々な例示的実施形態の上述および他の目的および利点は、本明細書の説明から明らかであると思われ、様々な例示的実施形態を実施することによって把握可能であり、いずれも本明細書で具体化されるか、当業者には明らかであり得る変形形態を考慮して変更され得る。したがって、本発明は、本明細書で示し、様々な例示的実施形態で説明する新たな方法、配列、組み合わせおよび改良の中に存在する。
予測キャッシング型コンテンツ配信ネットワークに対する現在のニーズを踏まえ、様々な例示的実施形態の概要を示す。以下の概要ではいくつかの単純化および省略をしているが、これは様々な例示的実施形態のいくつかの態様を強調し紹介することを意図しており、その範囲を限定することは意図していない。当業者が発明の概念を形成し使用できるだけの好ましい例示的実施形態の詳細な説明は、後のセクションで行う。
様々な現在の実施形態では、コンテンツ配信ネットワークはネットワークの近接性によりノードの階層で配置される。そのため、こうしたネットワークにおいてノードは、より近い場所でコンテンツの写しが得られない場合にのみ遠隔ノードからコンテンツをダウンロードする。階層において遠隔のノードからコンテンツアイテムを得る必要性を最小限にするため、コンテンツ配信ネットワークは、コンテンツアイテムをローカルキャッシュすることにより、トラフィックをピーク時間からピーク外時間に移行させる。
現在の様々な実施形態では、コンテンツ配信ネットワークは中間ノードを「通過する」コンテンツアイテムのコピーを保存するため通過キャッシングを利用する。ノードは、当該ノードを介して送信されるコンテンツのコピーを、かかるコンテンツへのアクセスがない時間が所定の時間に達するまで維持し、その時点で当該ノードはキャッシュからかかるコンテンツを除外する。こうした実施形態は、管理が容易であり、追加のネットワークトラフィックを生まないが、所与のコンテンツアイテムに対する最初の要求ではなく後続の要求への負荷を軽減するのに有用であるにすぎない。
現在の様々な実施形態では、コンテンツ配信ネットワークは代わりに、ユーザが視聴する現在のアイテムに基づきコンテンツアイテムをキャッシュするため予測プリフェッチを利用する。こうした実施形態はユーザ体験を向上させるが、常にネットワーク負荷を増大させることになり、どのコンテンツをキャッシュすべきかを決めるために将来のコンテンツアイテムに関する確率の予測を使用することはない。
ブロードキャストコンテンツのキャッシングメカニズムは、インターネットプロトコルテレビジョン(IPTV)システムの現在の様々な実施形態で維持されている。かかるシステムでは、ビデオ画像を完全に更新するフレームを、10秒を超える間隔で送信することができる。介入データにより、完全更新フレームは漸進的に変化するにすぎない。こうした実施形態では、「Dサーバ」は少数のビデオフレームをキャッシュし、高速チャネル変更を実現するためこれらのフレームをユニキャスト伝送でクライアントのセットトップボックスに送信する。最初の全画面更新フレームでは、クライアントはマルチキャストチャネルに参加し、Dサーバからのユニキャストストリームは止まる。しかし、こうした実施形態では、ネットワークは厳密な階層で配置され、その結果各Dサーバは定められた単一の親サーバを有する。よって、親サーバでコンテンツが入手できないとき、Dサーバは他のピアネットワークノードからコンテンツを取り出すことができない。また、チャネルが変更されたときにDサーバからのユニキャストストリームは、クライアントが最終的に参加するマルチキャストチャネルよりも大きい帯域幅を占めるため、Dサーバでデータをキャッシュするとネットワークの効率性が損なわれる。さらに、ビデオチャネルの多くまたはすべてがDサーバのサービス提供領域でユーザによって見られない場合でも、Dサーバはキャッシュ済みコンテンツの新鮮さを保つために各ビデオチャネルの供給を要求するため、Dサーバは通常、コンテンツソースに面する側でネットワークの効率性を低下させる。
現在の様々な実施形態では、パーソナルビデオレコーダは、記録するコンテンツの希望リストを作成し、当該コンテンツをブロードキャストスケジュールに現れたときに記録する。だが、こうした実施形態は、将来の視聴を予想してコンテンツアイテムを積極的に要求するわけではない。また、コンテンツは、ローカルまたは遠隔の場所ではなくユーザのパーソナルビデオレコーダに記憶されるにすぎない。よって、コンテンツは決して共有されないため、記憶領域の点でコスト的にかなり不利である。
現在の様々な実施形態では、P2Pファイル共有ネットワークにより、ユーザは単数または複数の他のユーザから得ることになる所望のコンテンツのリストを定めることができる。だが、こうした実施形態では、ユーザはコンテンツを明白に要求しなければならない。また、転送はネットワークの負荷またはコストを考慮せず、そのためネットワークサービスプロバイダに大きな悪影響を及ぼす。よって、P2Pネットワークはユーザエンドにのみ記憶装置を備え、全体のネットワーク容量およびコスト問題を無視する。
現在の様々な実施形態は、コンテンツ配信メカニズムとしてP2Pファイル共有の悪影響を軽減しようとしている。現在の様々な実施形態は、仲介者による攻撃によりP2Pプロトコルをインターセプトする。こうした実施形態は、ユーザのローカルネットワーク内で要求されたファイルの断片を見つけ、ローカルネットワーク内からファイルを調達する要求をリダイレクトする。したがって、コンテンツ配信ネットワークは、ローカルで取得できたであろうデータを調達するために広域ネットワークの高価なリンクまたは相互接続点(peering points)をP2Pネットワークが使用することを妨げる。だが、こうした実施形態はネットワークでデータを実際に記憶することはなく、近接性を認識するデータの索引を提供するにすぎない。また、こうした実施形態は、アップロードがローカルの顧客からもたらされることを強いることによってローカルネットワークのコストを増大させ、これはアップロードの帯域幅に限りがあるネットワークでは特に厄介である。
現在の様々な実施形態は、複数のユーザへの配信用にP2Pファイルを記憶する、ローカル通過ネットワークのキャッシングポイントを作成する。こうした実施形態は、ローカルサーバ、典型的には中央局にファイルを格納し、それにより他のローカル顧客からの上流リンクの輻輳とWANリンクへの負荷の両方を回避する。だが、こうした実施形態は、事後にコンテンツをキャッシュするだけであり、それにより、達成可能な効率性を根本的に限定する。また、他のキャッシングシステムと同様、こうした実施形態はネットワーク負荷を考慮していない。
要約すると、上述の現在の実施形態は特に効果的なわけではなく、ネットワークの輻輳の増大につながることが多い。また、前述のキャッシングメカニズムのうち、キャッシングの効率性を最大化するためにユーザが要求しそうなコンテンツについて予測を利用するものはない。
上記にしたがい、様々な例示的実施形態は、経済的に最適な予測型コンテンツ配信ネットワークを作成すること、およびネットワーク状況が変化する中でこの最適状態を維持することを目的に、消費されそうなコンテンツアイテムの予測を利用するメカニズムを提供する。よって、決まった容量を持つネットワークリンクおよびコンテンツアイテムを記憶できるキャッシングノードからネットワークが成ることを踏まえ、様々な例示的実施形態は、ピーク時間に提供できるネットワークのサービス提供容量を最大化する。
様々な例示的実施形態は、ピーク外時間にコンテンツを動的に取り出すこと、またはブロードキャストネットワークから当該コンテンツを捕捉することを目的に、コンテンツアイテム消費の予測を利用する。様々な例示的実施形態では、各キャッシングノードは、こうした予測を利用してコンテンツアイテムをダウンロード、記録または除外するべきかを決定し、ピーク外時間に選択済みコンテンツアイテムをダウンロードする。
ブロードキャストネットワークから記録することは、ピーク負荷に影響を与えないため、所望のコンテンツアイテムが送信されるときはいつでも発生し得る。マルチキャストや交換ブロードキャストなどの選択的な1対多の配信ネットワークモードから記録することは、以下の状況においてピーク負荷に影響を与えることなく生じ得る。ネットワークの一部における少なくとも1人の顧客が、コンテンツアイテムが生じるチャネルを見ているとき、送信が生じる時間がピーク外であるとき、または交換ブロードキャストまたはマルチキャストの帯域幅が最悪のピークに備えて常に確保されているよう、帯域幅のハードパーティショニングがあるとき。よって、様々な例示的実施形態では、キャッシングメカニズムは、リンク容量、スイッチングまたはルーティングの容量、およびコンテンツサービス提供容量を含むコストおよびサービスの容量に影響を与えるネットワーク負荷の全要素を認識し調整する。
様々な例示的実施形態では、コンテンツはコンテンツ配信ネットワーク内の様々な場所に記憶される。そのため、様々な例示的実施形態では、コンテンツは親キャッシングノード、ピアキャッシングノードから引き出され、またはブロードキャストもしくはマルチキャストのネットワークから記録される。また、様々な例示的実施形態では、コンテンツをユーザの場所またはサービスプロバイダのネットワーク内の多くの層に記憶することができる。
様々な例示的実施形態では、コンテンツ配信ネットワークは、コンテンツの記憶を最適化するため1つまたは複数の処理を実行する。そのため、様々な例示的実施形態では、キャッシングメカニズムは、キャッシングノード間で更新プロトコルを実行することによって、コンテンツの不要な重複を回避する。また、様々な例示的実施形態では、キャッシング容量がほぼ一杯の場合、およびより価値のあるコンテンツアイテムが記憶可能である場合に、キャッシングメカニズムは、記憶済みコンテンツアイテムを除外するハウスキーピング機能を実行する。
様々な例示的実施形態について一層理解できるよう、添付の図面を参照する。
コンテンツの予測キャッシングを利用するコンテンツ配信ネットワークの例示的実施形態の概略図である。 コンテンツアイテムをユニキャストソースからキャッシュに追加またはキャッシュから除外する方法の例示的実施形態の流れ図である。 ユニキャストソースからコンテンツをキャッシュにダウンロードする方法の例示的実施形態の流れ図である。 コンテンツアイテムをブロードキャスト、交換ブロードキャストまたはマルチキャストのソースからキャッシュに追加またはキャッシュから除外する方法の例示的実施形態の流れ図である。 相互接続されたキャッシュのネットワークからコンテンツアイテムにアクセスする方法の例示的実施形態の流れ図である。 相互接続されたキャッシュのネットワークからコンテンツアイテムにアクセスする方法の例示的実施形態の流れ図である。 ノード間のアップデートの通信を行うコンテンツ配信ネットワークの例示的実施形態の概略図である。
次いで、同じ番号が同じ構成要素またはステップを指す図面を参照して、様々な例示的実施形態の幅広い態様を開示する。
本明細書で使用される以下の用語は、下記のとおり定義される。これらの定義の中で参照文字が指す対象については、以下でより詳細に説明する。
LinkCapacity(L→U)は、第1ローカルネットワーク記憶装置106から第1ユーザ記憶装置102へデータを送信するときの通信リンク120の容量を意味する。
LinkCapacity(U→L)は、第1ユーザ記憶装置102から第1ローカルネットワーク記憶装置106へデータを送信するときの通信リンク120の容量を意味する。
LinkCapacity(L→U)は、第1ローカルネットワーク記憶装置106から第2ユーザ記憶装置104へデータを送信するときの通信リンク122の容量を意味する。
LinkCapacity(U→L)は、第2ユーザ記憶装置104から第1ローカルネットワーク記憶装置106へデータを送信するときの通信リンク122の容量を意味する。
リLinkCapacity(L→L)は、第1ローカルネットワーク記憶装置106から第2ローカルネットワーク記憶装置108へデータを送信するときの通信リンク124の容量を意味する。
LinkCapacity(L→L)は、第2ローカルネットワーク記憶装置108から第1ローカルネットワーク記憶装置106へデータを送信するときの通信リンク124の容量を意味する。
LinkCapacity(L→D)は、第1ローカルネットワーク記憶装置106から第1遠隔ネットワーク記憶装置110へデータを送信するときの通信リンク126の容量を意味する。
LinkCapacity(D→L)は、第1遠隔ネットワーク記憶装置110から第1ローカルネットワーク記憶装置106へデータを送信するときの通信リンク126の容量を意味する。
ServicingCapacity(D)は、第1遠隔ネットワーク記憶装置110におけるコンテンツサービス提供容量を意味する。
ServicingCapacity(L)は、第1ローカルネットワーク記憶装置106におけるコンテンツサービス提供容量を意味する。
Storage(D)は、第1遠隔ネットワーク記憶装置110における記憶量を意味する。
Storage(L)は、第1ローカルネットワーク記憶装置106における記憶量を意味する。
Storage(U)は、第1ユーザ記憶装置102における記憶量を意味する。
Storage(U)は、第2ユーザ記憶装置104における記憶量を意味する。
SwitchCapacity(D)は、第1遠隔ネットワーク記憶装置110におけるスイッチングまたはルーティングの容量を意味する。
SwitchCapacity(L)は、第1ローカルネットワーク記憶装置106におけるスイッチングまたはルーティングの容量を意味する。
図1は、コンテンツの予測キャッシングを利用するコンテンツ配信ネットワーク100の例示的実施形態の概略図である。図1を参照して、例示的なコンテンツ配信ネットワーク100の一般的動作および予測キャッシングプロセスについて説明する。
例示的なコンテンツ配信ネットワーク100は、第1ユーザ記憶装置102、第2ユーザ記憶装置104、第1ローカルネットワーク記憶装置106、第2ローカルネットワーク記憶装置108、第1遠隔ネットワーク記憶装置110および第2遠隔ネットワーク記憶装置112を含む。様々な例示的実施形態において、記憶装置がマルチメディアコンテンツのキャッシュを維持することを可能にする永久記憶装置を備えることが明らかであろう。また、様々な例示的実施形態において、各記憶装置は、コンテンツアイテムが当該ノードにローカル保存されているかを判断するための索引、およびローカル保存されていないコンテンツアイテムを探す場所を判断するための索引を備える。
様々な例示的実施形態において、各記憶装置は、通信リンクを介して1つまたは複数の他の記憶装置と通信することができる。そのため、例示的なコンテンツ配信ネットワーク100において、第1ユーザ記憶装置102は通信リンク120を介して第1ローカルネットワーク記憶装置106と通信し、第2ユーザ記憶装置104は通信リンク122を介して第1ローカルネットワーク記憶装置106と通信し、第1ローカルネットワーク記憶装置106は通信リンク124を介して第2ローカルネットワーク記憶装置108と通信し、さらに通信リンク126を介して第1遠隔ネットワーク記憶装置110と通信し、第1遠隔ネットワーク記憶装置110は通信リンク128を介して第2遠隔ネットワーク記憶装置112と通信する。
したがって、例示的なコンテンツ配信ネットワーク100はキャッシングアーキテクチャにおいて4層を含む。キャッシングの第1レベルは第1ユーザ記憶装置102に対応しており、これは様々な例示的実施形態では、単一のユーザまたは世帯に固有のコンテンツを記憶する家庭用メディア記憶装置である。様々な例示的実施形態では、第1ユーザ記憶装置102はパーソナルコンピュータ、パーソナルビデオレコーダ、ホームメディアサーバ、内蔵記憶装置を備えたテレビ用セットトップボックス、ポータブルメディア装置、またはネットワーク通信能力を備えるその他の記憶装置であることが明らかであろう。
例示的なコンテンツ配信ネットワーク100では、キャッシングの第2レベルは第2ユーザ記憶装置104のようなネットワークにおけるピアに対応する。キャッシングの第3レベルは、第1ローカルネットワーク記憶装置106および第2ローカルネットワーク記憶装置108のような、多くのユーザが接続しているローカルネットワークの中の中央ノードにある。最後に、キャッシングの第4レベルは、第1遠隔ネットワーク記憶装置110および第2遠隔ネットワーク記憶装置112のような、多くのローカルネットワーク記憶装置が接続している地域または国のノードにある。例示的なコンテンツ配信ネットワーク100は、キャッシングにおいて4層を含むが、様々な例示的実施形態では、コンテンツ配信ネットワーク100が、さらに遠隔の場所における追加の中央キャッシングサーバを含むよう拡張されることが明らかであろう。また、様々な例示的実施形態において、コンテンツ配信ネットワーク100は、層の1つまたは複数において3つ以上のノードを含む。
図2は、コンテンツアイテムをユニキャストソースからキャッシュに追加またはキャッシュから除外する方法200の例示的実施形態の流れ図である。様々な例示的実施形態において、例示的方法200は、上流ソースからの新たなアイテムをキャッシュすべきか決定する。例示的実施方法200は、コンテンツをキャッシュする能力を有するコンテンツ配信ネットワーク内の任意のノードで実行できることが明らかであろう。そのため、様々な例示的実施形態では、例示的方法200は、第1ユーザ記憶装置102、第2ユーザ記憶装置104、第1ローカルネットワーク記憶装置106、第2ローカルネットワーク記憶装置108、第1遠隔ネットワーク記憶装置110および第2遠隔ネットワーク記憶装置112の1つまたは複数で実行される。
例示的方法200は、定期的な間隔で、または将来のコンテンツアクセスの確率に影響を与える変化が生じたときに、ステップ201で始まる。そのため、様々な例示的実施形態では、例示的方法200は、1時間に1回、1日1回、または他の所定の時間間隔で実行される。また、様々な例示的実施形態では、例示的方法200は、新たなマルチメディアコンテンツが公開されたとき、またはユーザが例えば特定のジャンルの映画もしくは音楽に関心を示したときに実行され、それによりこうした種類のコンテンツアイテムをキャッシュする価値の予測を変更する。
次いで例示的方法200はステップ202に進み、未使用容量、使用容量、およびノードに現在キャッシュされている全アイテムの有用性を判断するためのチェックが実行される。有用性は一般に、当該コンテンツアイテムを使用し得るユーザの数と各ユーザが当該コンテンツアイテムを使用する可能性との組み合わせに基づく。様々な例示的実施形態で、有用性はまた、ネットワークによるピーク需要を軽減する際、またはユーザに提供され得るコンテンツアイテムの品質を高める際の効果の点で、分散された記憶装置からコンテンツアイテムを入手できることの価値など、他の要素を含む。ステップ202に続き、例示的方法200はステップ204に進み、ノードは、有用性の最も高いコンテンツアイテムのリストを作成する。
キャッシュが第1ユーザ記憶装置102のようなユーザノードであるとき、様々な例示的実施形態では、有用性の最も高いコンテンツアイテムのリストは、そのユーザまたは世帯のみに関係する。様々な例示的実施形態において、キャッシュが第1ローカルネットワーク記憶装置106のようなネットワークノードであるとき、有用性の最も高いコンテンツアイテムのリストは、使用の累積確率、またはより一般的には、サポートされるユーザノードの各々からのリストによって形成される有用性を示す尺度である。一般に、こうしたユーザノードに記憶済みのコンテンツアイテムには、同じコンテンツアイテムの新たなコピーを保存することに伴う有用性はない。
そのため、様々な例示的実施形態において、有用性の最も高いコンテンツアイテムのリストは、あるアイテムがキャッシングノードに対し要求される確率またはかかるアイテムの新たなインスタンスをキャッシュする有用性を反映しており、その結果、ユーザの近くでキャッシュ済みのアイテムを排除する。様々な例示的実施形態において、ステップ204は、希少性に関する自立的な階層を生成する。つまり、アクセス確率の高いコンテンツアイテムは、ユーザの近くでキャッシュされる傾向があり、めったにアクセスされないアイテムは、より中心的な場所、例えば第1遠隔ネットワーク記憶装置110に記憶される。様々な例示的実施形態において、ごく一部のユーザにとってアクセス確率の高いコンテンツアイテムがあるときは、当該コンテンツアイテムは、好みによりレベル1、例えば第1ユーザ記憶装置102でキャッシュされる。一方、多くのユーザにとってアクセス確率の高いコンテンツアイテムがある場合、当該コンテンツアイテムは、好みによりレベル3、例えば第1ローカルネットワーク記憶装置106でキャッシュされる。
様々な例示的実施形態において、有用性の最も高いコンテンツアイテムのリストは、当該アイテムがピーク時間中にアクセスされる確率を反映するため、さらに精緻化される。そのため、様々な例示的実施形態において、有用性の最も高いコンテンツアイテムのリストは、負担軽減効果をさらに高める。
有用性の最も高いコンテンツアイテムのリストを作成した後、例示的方法200はステップ206に進み、ノードは、有用性の最も高いコンテンツアイテムのリストとノードに現在キャッシュされているコンテンツのリストとを比較する。様々な例示的実施形態において、ノードに現在キャッシュされているコンテンツのリストは、図4を参照して以下でさらに説明するとおり、将来のある時点におけるブロードキャスト、交換ブロードキャストまたはマルチキャストのネットワークからの記録がスケジュールされているアイテムを含む。
比較後、例示的方法200はステップ208に進み、ノードはキャッシング候補のコンテンツアイテムの順位リストを生成し、このリストは、様々な実施形態において、有用性の最も高いコンテンツアイテムのリストから当該ノードで現在キャッシュされているコンテンツのリストを除いたものを含む。そのため、様々な例示的実施形態において、キャッシング候補のコンテンツアイテムの順位リストは、有用性の最も高いコンテンツアイテムのリストの中で当該ノードで現在キャッシュされていない全アイテムを含む。様々な例示的実施形態において、キャッシング候補リストは、コンテンツアイテムの識別子および各コンテンツアイテムの使用確率を示す有用性の尺度を含む。
様々な例示的実施形態において、ステップ208では、キャッシング候補リストの順位付けにおいて各アイテムの大きさを考慮することもできる。そのため、様々な例示的実施形態において、大きなコンテンツアイテムと、アクセス確率がほぼ同じでこれより小さいコンテンツアイテムのグループとの間でノードが選択しなければならない場合、小さいコンテンツアイテムのグループがより高い順位を付けられ、それにより複数のアイテムのうちの1つがアクセスされる確率が高まる。
キャッシング候補リストの生成後、例示的方法200はステップ210に進み、ノードは、現在の時間がピーク外時間にあるか判断する。ステップ210において、現在の時間はピーク外時間でないとノードが判断したとき、ノードはコンテンツをダウンロードしない。その結果、例示的方法200はステップ213に進み、例示的方法200は終了する。様々な例示的実施形態において、次の時間帯がピーク時間であっても、例示的方法200はステップ212に進むが、それは将来のピーク外時間におけるダウンロードをスケジュールできるようにするためにすぎないことが明らかであろう。
ステップ210において、次の時間帯がピーク外時間であるとノードが判断したとき、例示的方法200はステップ212に進み、ノードはキャッシュにコンテンツをダウンロードする。様々な例示的実施形態では、最小限の時間でダウンロードが完了する場合、または将来のある時点でのダウンロードがスケジュールされている場合、当該ノードのコンテンツインベントリへの入力では、コンテンツアイテムを「保留」として記録し、その結果、同じコンテンツアイテムを取り出そうとする並行した試みは阻止される。次いで例示的方法はステップ213に進み、例示的方法200は終了する。
図3は、ユニキャストソースからコンテンツをキャッシュにダウンロードする方法212の例示的実施形態の流れ図である。例示的方法212はステップ301で始まり、ステップ302に進み、リンク、スイッチおよびサーバを含むすべての上流構成要素が空き容量を示しているかをノードが判断する。ステップ302において、1つまたは複数のリンク、スイッチまたはサーバが空き容量のないことを示しているとノードが判断した場合、例示的方法212はステップ314に進み、例示的方法212は終了する。ステップ302においてすべてのリンク、スイッチおよびサーバが空き容量を示しているとノードが判断した場合、例示的方法212はステップ304に進む。
様々な例示的実施形態では、ステップ304において、キャッシング候補コンテンツアイテムのリストによる最高順位のコンテンツアイテムを記憶する十分な空き記憶容量をキャッシュが有するかをノードが判断する。ステップ304において、十分な空き容量があるとノードが判断した場合、例示的方法212はステップ310に進み、ノードは上流ノードからキャッシュに最高順位のアイテムをダウンロードする。
様々な例示的実施形態では、ステップ310においてアイテムがダウンロードされると、例示的方法212はステップ312に進み、コンテンツアイテムは、当該アイテムが置換されない保持時間を割り当てられる。かかる実施形態では、保持時間が終了していない場合、新たなアイテムの確率から保存済みアイテムの確率を差し引いた値が所定のスワップしきい値を超えていない限り、コンテンツアイテムはキャッシュから除外されない。そのため、こうした実施形態では、例示的方法212は「チャーニング(churning)」というプロセスを回避する。チャーニングプロセスでは、コンテンツアイテムは繰り返しダウンロードされ、同程度の順位の別のコンテンツアイテムを優先して除外される。次いで、例示的方法212はさらなる処理のためステップ302に戻る。
ステップ304において、空き記憶容量が不十分だとノードが判断した場合、例示的方法212はステップ306に進む。様々な例示的実施形態では、ステップ306において、最高順位の候補コンテンツアイテムの有用性が、当該候補アイテムと同じかそれより大きい規模のキャッシュ済み最下位アイテム有用性を、少なくともスワップしきい値だけ高い有用性を有するかをノードが判断する。こうした有用性の低いキャッシュ済みアイテムが発見された場合、例示的方法212はステップ308に進み、有用性の低いキャッシュ済みアイテムは除外される。
有用性の低いキャッシュ済みアイテムが見つからなかった場合、最高順位の候補コンテンツアイテムは、当該候補コンテンツアイテムよりも全体として規模が大きい1組のキャッシュ済みアイテムと比較される。最高順位の候補コンテンツアイテムの有用性が、選択された1組のキャッシュ済みアイテムの全体の有用性を、少なくともスワップしきい値だけ上回る場合、例示的方法212はステップ308に進み、ノードは1組のキャッシュ済みの有用性の低いアイテムを除外する。
有用性の低いアイテムをキャッシュから除外した後、例示的方法212はステップ310に進み、ノードは最高順位のアイテムをダウンロードする。ダウンロードと除外の手順を実行した後、例示的方法212はアイテムのチャーニングの可能性を低下させるためアイテム最小保持時間を選択的に割り当て、キャッシュから新鮮でないコンテンツアイテムを定期的に除去できるよう最大保持時間を選択的に割り当てる。次いで、例示的方法212はステップ302に進み、ネットワークがピーク外時間にある場合には次の潜在的コンテンツアイテムが検討される。
ステップ306において、最高順位のコンテンツアイテムの規模より全体の規模が大きく、かつ有用性の低いアイテムをノードが見つけなかった場合、例示的方法はステップ314に進み、例示的方法212は終了する。
図4は、コンテンツアイテムをブロードキャストまたはマルチキャストのソースからキャッシュに追加またはキャッシュから除外する方法400の例示的実施形態の流れ図である。様々な例示的実施形態において、例示的方法400は、新たなアイテムをブロードキャスト、交換ブロードキャストまたはマルチキャストのソースから記録することによってキャッシュすべきかを判断する。例示的実施形態400は、コンテンツをキャッシュする能力を有するコンテンツ配信ネットワーク内の任意のノードで実行できることが明らかであろう。そのため、様々な例示的実施形態では、例示的方法400は、第1ユーザ記憶装置102、第2ユーザ記憶装置104、第1ローカルネットワーク記憶装置106、第2ローカルネットワーク記憶装置108、第1遠隔ネットワーク記憶装置110および第2遠隔ネットワーク記憶装置112の1つまたは複数で実行される。
例示的方法400は、定期的な間隔で、または将来のコンテンツアクセスの確率に影響を与える変化が生じたときに、ステップ401で始まる。そのため、様々な例示的実施形態では、例示的方法400は、1時間に1回、1日1回または他の所定の時間間隔で実行される。また、様々な例示的実施形態では、新たなマルチメディアコンテンツアイテムが公開されたとき、ブロードキャスト/交換ブロードキャスト/マルチキャストの配信スケジュールが変更もしくは延長されて将来に新たな時間帯を対象とするようになったとき、ユーザが例えば特定のジャンルの映画もしくは音楽に興味を示したとき、またはその他の動きがきっかけでユーザが所与のコンテンツアイテムにアクセスする確率を再評価することになったとき、例示的方法400は実行される。
次いで例示的方法400はステップ402に進み、未使用容量、使用容量、およびノードに現在キャッシュされている全アイテムの有用性を判断するためのチェックが実行される。ステップ402に続き、例示的方法400はステップ404に進み、ノードは、ブロードキャスト/マルチキャストの配信スケジュールに現れるコンテンツアイテムから有用性の最も高いコンテンツアイテムのリストを作成する。様々な例示的実施形態では、ステップ404において、ノードは例えば電子プログラムガイドからブロードキャストまたはマルチキャストのコンテンツ配信スケジュールを取得する。
様々な例示的実施形態では、ステップ404において、ノードは、ノードからコンテンツを引き出す全ユーザにおける特定のユーザの関心を、入手可能なブロードキャストまたはマルチキャストのコンテンツのスケジュールにおけるコンテンツアイテムと比較することによって、有用性の最も高いコンテンツアイテムのリストを作成する。様々な例示的実施形態において、ユーザの関心は、好みのジャンル、映画、テレビショー、チャネル、俳優、監督、およびコンテンツアイテムを分類または区別するために使用できるその他の基準の1つまたは複数を含む。また、様々な例示的実施形態では、関心は、ユーザによって特定され、またはユーザの過去のコンテンツ選択に基づき予測される。
キャッシュが第1ユーザ記憶装置102のようなユーザノードであるとき、様々な例示的実施形態では、有用性の最も高いコンテンツアイテムのリストは、そのユーザまたは世帯のみに関係する。様々な例示的実施形態において、キャッシュが第1ローカルネットワーク記憶装置106のようなネットワークノードであるとき、有用性の最も高いコンテンツアイテムのリストは、サポートされるユーザノードの各々からのリストによって形成される累積有用性を表す。
ステップ404において有用性の最も高いコンテンツアイテムのリストを作成した後、例示的方法400はステップ406に進み、ノードは、有用性の最も高いコンテンツアイテムのリストとノードに現在キャッシュされているコンテンツのリストとを比較する。比較後、例示的方法400はステップ408に進み、ノードは、様々な例示的実施形態において、有用性の最も高いコンテンツアイテムのリストから当該ノードで現在キャッシュされているコンテンツのリストを除いた、キャッシング候補の順位リストを生成する。そのため、様々な例示的実施形態において、キャッシング候補の順位リストは、有用性の最も高いコンテンツアイテムのリストの中で当該ノードで現在キャッシュされていないアイテムすべてを含む。様々な例示的実施形態では、キャッシング候補リストは、アイテムの大きさ、ユーザ数およびアイテムの使用可能性に基づくアイテムの有用性、ならびにアイテムがアクセスされ得る時間、日およびチャネルを含む。
次いで、例示的方法400はステップ410に進み、ノードは、キャッシング候補アイテムのリストが空であるか判断する。ステップ410において、キャッシング候補のリストが空であるとノードが判断した場合、例示的方法400はステップ421に進み、ノードは、新たなアイテムの場所を作るために除外がスケジュールされたアイテムを除外する。次いで、例示的方法400はステップ422に進み、記録がスケジュールされたアイテムが記録される。スケジュールされたアイテムを記録した後、例示的方法400はステップ424に進み、記録されたアイテムは保持時間を割り当てられる。ステップ424において、例示的方法400はアイテムのチャーニングの可能性を低下させるため最小保持時間をアイテムに選択的に割り当て、キャッシュから新鮮でないコンテンツアイテムを定期的に除去できるよう最大保持時間を選択的に割り当てる。次いで例示的方法400はステップ426に進み、例示的方法400は終了する。
ステップ410において、検討すべき候補コンテンツアイテムがあるとノードが判断した場合、例示的方法400はステップ412に進み、候補コンテンツアイテムがアクセスされ得る時がピーク外時間にあるかをノードは判断する。このステップは、マルチキャストネットワークや交換ブロードキャストネットワークなどの、配信が裁量的なネットワークに当てはまることが明らかであろう。一般にブロードキャストネットワークに当てはまるような、常に同じ容量(例:チャネル数)を使用するネットワークは、アイテムをキャッシュに記録してもネットワーク負荷に影響を与えないため、常にピーク外にあると考えることができる。また、交換ブロードキャストまたはマルチキャストのネットワークは、その時点で他の視聴者がいる場合に追加の負荷を経験せず、そのため、他の視聴者が予想される場合、コンテンツアイテムはいつアクセスされるかにかかわらずピーク外にあると考えられる。交換ブロードキャストまたはマルチキャストのネットワークはまた、ネットワークプロバイダが帯域幅のハードパーティショニングを行い、それにより帯域幅が常に最悪のチャネル負荷に備えて確保されている場合、ピーク外にあると考えられる。この場合、コンテンツアイテムを記録しても、必要な帯域幅に影響を与えない。
ステップ412において、コンテンツアイテムがアクセスされ得る時間がピーク時間であるとノードが判断した場合、ノードはコンテンツアイテムの記録をスケジュールせず、例示的方法400はステップ410に戻り、次の候補コンテンツアイテムが検討される。単一のコンテンツアイテムは異なる時点に複数のチャネルで配信することができるため、単一のコンテンツアイテムは、ステップ410で複数回、すなわち各々の可能な時間帯ごとに1回検討しなければならない場合もあることが明らかであろう。
ステップ412において、コンテンツアイテムがアクセスされ得る時間がピーク外時間であるとノードが判断した場合、例示的方法400はステップ414に進み、キャッシング候補コンテンツアイテムのリストによる最高順位のコンテンツアイテムを記憶するための十分な空き記憶容量がキャッシュにあるかをノードは判断する。ステップ414において、十分な空き記憶容量があるとノードが判断した場合、例示的方法400はステップ415に進み、記憶容量が確保される。次いで、例示的方法400はステップ420に進み、ノードは、最高順位のアイテムが送信される日、時間およびチャネルにおいて当該コンテンツアイテムをキャッシュに記録することをスケジュールする。次いで例示的方法400はステップ410に戻り、例示的方法400は他のコンテンツアイテムを検討する。
ステップ414において、空き記憶容量が不十分だとノードが判断した場合、例示的方法400はステップ416に進む。様々な例示的実施形態では、ステップ416において、最高順位の候補の新コンテンツアイテム有用性が、当該候補アイテムと同じかそれより大きい規模のキャッシュ済み最下位アイテム有用性を少なくともスワップしきい値だけ高い有用性を有するかをノードが判断する。こうした有用性の低いキャッシュ済み当該コンテンツアイテムが発見された場合、例示的方法400はステップ418に進み、有用性の低いキャッシュ済みアイテムの除外がスケジュールされる。次いで、例示的方法400はステップ420に進み、候補コンテンツアイテムの記録がスケジュールされ、そしてステップ410に進み、次の候補コンテンツアイテムが検討される。
有用性の低い単一コンテンツアイテムが現在記憶されていない場合、最高順位の候補の新コンテンツアイテムは、かかる候補の新コンテンツアイテムよりも全体的に大きい1組のキャッシュ済みアイテムと比較される。最高順位の候補の新コンテンツアイテムの有用性が、1組のキャッシュ済みアイテムの全体の有用性を少なくともスワップしきい値だけ上回る場合、例示的方法400はステップ418に進む。ステップ418では、有用性の低い1組のキャッシュ済みアイテムの除外がスケジュールされる。次いで、例示的方法400はステップ420に進み、候補コンテンツアイテムの記録がスケジュールされ、そしてステップ410に進み、次の候補コンテンツアイテムが検討される。
ステップ416において、既存の1つまたは複数のアイテムを除外しないことが決まった場合、例示的方法400はステップ410に戻り、次の候補コンテンツアイテムが検討される。
明確にするため別個に説明したが、様々な例示的実施では、図2および4を参照して説明した例示的方法200、400は、同じエンドユーザのために同じ記憶装置に情報をキャッシュすることが明らかであろう。また、様々な例示的実施形態では、図2−4を参照して説明した方法は、ステップ206および406において統合され、その結果、所与のコンテンツアイテムは1回だけ取り出され記憶される。また、様々な例示的実施形態では、例示的方法200、400はコンテンツアイテムの有用性を計算するのに同じ技法を利用し、その結果、記憶容量が限られている場合にどのコンテンツアイテムが最も価値があり保持すべきかについて常に合意がある。
図5Aおよび図5Bは、相互接続されたキャッシュのネットワークからコンテンツアイテムにアクセスする方法500の例示的実施形態の流れ図である。例示的方法500は、図5Aのステップ501で始まり、ステップ502に進み、ノードは第1ユーザ記憶装置102にアクセスする。次いで例示的方法はステップ504に進み、例示的方法500は、要求されたコンテンツが第1ユーザ記憶装置102で入手できるか判断する。ステップ504において、当該コンテンツが第1ユーザ記憶装置102で入手できるとノードが判断した場合、本方法はステップ525に進み、例示的方法500は終了する。
ステップ504において、要求されたコンテンツがユーザノードで入手できないとノードが判断した場合、本方法はステップ506に進み、ノードは第1ローカルネットワーク記憶装置106にアクセスする。次いで例示的方法500はステップ508に進み、様々な例示的実施形態において、例示的方法500は、要求されたコンテンツアイテムが第1ローカルネットワーク記憶装置106にキャッシュされているか、LinkCapacity(L→U)が通信リンク120の全セッションによって使用される容量より大きいか、またServicingCapacity(L)が第1ローカルネットワーク記憶装置106から提供される全ユーザセッションの合計より大きいかを判断する。ステップ508において、全条件が満たされている場合、例示的方法500は第1ローカルネットワーク記憶装置106からコンテンツをダウンロードし、ステップ525に進み、例示的方法500は終了する。
ステップ508において、1つまたは複数の条件が満たされていない場合、例示的方法500はステップ510に進み、ノードは第2ユーザ記憶装置104にアクセスする。次いで例示的方法500はステップ512に進み、様々な例示的実施形態では、例示的方法500は、要求されたコンテンツアイテムが第2ユーザ記憶装置104にキャッシュされているか、LinkCapacity(L→U)が通信リンク120の全セッションによって使用される容量より大きいか、LinkCapacity(U→L)が通信リンク122の全セッションによって使用される容量より大きいか、またSwitchCapacity(L)が第1ローカルネットワーク記憶装置106の交換トラフィック全体の合計よりも大きいかを判断する。ステップ512において、全条件が満たされている場合、例示的方法500は第1ローカルネットワーク記憶装置106を介して第2ユーザ記憶装置104からコンテンツをダウンロードし、ステップ525に進み、例示的方法500は終了する。
ステップ512において、1つまたは複数の条件が満たされていない場合、例示的方法500は図5Bのステップ514に進み、ノードは複数のユーザノードにアクセスする。次いで例示的方法500はステップ516に進み、様々な例示的実施形態では、例示的方法500は、要求されたコンテンツアイテムがユーザノードの2つ以上に断片的にキャッシュされているか判断する。様々な例示的実施形態では、ステップ516において、ノードはまた、LinkCapacity(L→U)が通信リンク120の全セッションによって使用される容量より大きいか、Uがi番目のユーザノードである場合にLinkCapacity(U→L)が各通信リンクの全セッションによって使用される容量より大きいか、またSwitchCapacity(L)が第1ローカルネットワーク記憶装置106の交換トラフィック全体の合計よりも大きいかを判断する。ステップ516において、全条件が満たされている場合、例示的方法500は分散されたユーザノードからコンテンツをダウンロードし、ステップ525に進み、例示的方法500は終了する。
ステップ516において、1つまたは複数の条件が満たされていない場合、例示的方法500はステップ518に進み、ノードは第2ローカルネットワーク記憶装置108にアクセスする。次いで例示的方法500はステップ520に進み、様々な例示的実施形態では、例示的方法500は、要求されたコンテンツアイテムが第2ローカルネットワーク記憶装置108にキャッシュされているか、LinkCapacity(L→U)が通信リンク120の全セッションによって使用される容量より大きいか、LinkCapacity(L→L)が通信リンク124の全セッションによって使用される容量より大きいか、またSwitchCapacity(L)が第1ローカルネットワーク記憶装置106の交換トラフィック全体の合計よりも大きいかを判断する。ステップ520において、全条件が満たされている場合、例示的方法500は第1ローカルネットワーク記憶装置106を介して第2ローカルネットワーク記憶装置108からコンテンツをダウンロードし、ステップ525に進み、例示的方法500は終了する。
ステップ520において、1つまたは複数の条件が満たされていない場合、例示的方法500はステップ522に進み、ノードは第1遠隔ネットワーク記憶装置110にアクセスする。次いで例示的方法500はステップ524に進み、様々な例示的実施形態では、例示的方法500は、要求されたコンテンツアイテムが第1遠隔ネットワーク記憶装置110にキャッシュされているか、LinkCapacity(L→U)が通信リンク120の全セッションによって使用される容量より大きいか、LinkCapacity(D→L)が通信リンク126の全セッションによって使用される容量より大きいか、LinkCapacity(L)が第1ローカルネットワーク記憶装置106の交換トラフィック全体の合計よりも大きいか、またServingCapacity(D)が第1遠隔ネットワーク記憶装置110から提供される全ユーザセッションの合計よりも大きいかを判断する。ステップ520において、全条件が満たされている場合、例示的方法500は第1ローカルネットワーク記憶装置106を介して第1遠隔ネットワーク記憶装置110からコンテンツをダウンロードし、ステップ525に進み、例示的方法500は終了する。
ステップ524において、1つまたは複数の条件が満たされていない場合、例示的方法500はユーザに対し、要求されたコンテンツアイテムが入手できないため、またはネットワーク容量が不十分なためダウンロードが不成功だったことを通知する。次いで例示的方法500はステップ525に進み、例示的方法500は終了する。
図6は、ノード間のアップデートの通信を行うコンテンツ配信ネットワーク600の例示的実施形態の概略図である。
例示的なコンテンツ配信ネットワーク600は、ユーザ記憶装置602、ローカル記憶装置604、ローカルピア記憶装置606および遠隔記憶装置608を含む。様々な例示的実施形態において、各記憶装置は、通信リンクを介して1つまたは他の記憶装置と通信することができる。そのため、例示的なコンテンツ配信ネットワーク600では、ユーザ記憶装置602は通信リンク610を介してローカル記憶装置604と通信し、ローカル記憶装置604は通信リンク612を介してローカルピア記憶装置606と通信し、ローカル記憶装置604は通信リンク614を介して遠隔記憶装置608と通信する。
様々な例示的実施形態では、コンテンツ配信ネットワーク600の各ノードは、当該ノードに記憶されているコンテンツについて近隣ノードに知らせるため1つまたは複数の形式のアップデートメッセージを提供する。そのため、様々な例示的実施形態では、コンテンツ配信ネットワーク600の各ノードは、当該ノードに記憶されており、各々が索引識別子によって識別されるコンテンツアイテムすべてのリストである完全なアップデートを提供する。様々な例示的実施形態では、任意のノードは1つまたは複数の近隣ノードに対し、いつでも完全なアップデートの要求を送信することができる。また、様々な例示的実施形態では、新たなノードがコンテンツ配信ネットワーク600にインストールされたときに完全アップデート手順が実行される。
様々な例示的実施形態では、コンテンツ配信ネットワーク600の各ノードは、前回のメッセージ以降に追加または除外されたコンテンツについて近隣ノードに知らせる増分アップデートを提供する。増分アップデートを通信するために、様々な例示的実施形態では、ノードは「追加a、b、c、除外e、f、g」(a−gはコンテンツアイテム識別子)という形式でメッセージを送信する。また、様々な例示的実施形態では、こうしたメッセージはXMLまたはSOAPファイルにASCIIテキスト列を組み込むことによって通信される。
様々な例示的実施形態では、アップデートの通知は、ユーザ記憶装置602とローカル記憶装置604との間で通信リンク610を介して双方向で発生する。また、様々な例示的実施形態では、アップデートの通知は、ローカル記憶装置604と遠隔記憶装置608との間で通信リンク614を介して双方向で発生する。様々な例示的実施形態では、アップデートの通知は、ローカル記憶装置604からローカルピア記憶装置606への方向でのみ通信リンク612を介して発生する。
様々な例示的実施形態では、各ノードはキャッシュする意向を通信する追加のメッセージ型をサポートする。そのため、様々な例示的実施形態では、ノードは他のノードに対し、今度のブロードキャストまたはマルチキャストのプログラムを記録する意向を示すメッセージを送信する。したがってノードは、人気のあるアイテムを特定するため近隣ノードからのキャッシング候補リストをチェックし、将来の要求を容易にするためにアイテムをキャッシュすることができる。
様々な例示的実施形態では、コンテンツ配信ネットワーク600の各ノードは、通信リンク610、通信リンク612および通信リンク614の1つまたは複数を介してネットワーク利用度に関して近隣ノードに知らせるため1つまたは複数の形式のアップデートメッセージを提供する。様々な例示的実施形態では、利用度は、リンク利用度、スイッチングまたはルーティングの利用度、およびコンテンツサーバ利用度を含む、コンテンツ配信能力を反映した全要素を組み込んだ個別的または複合的尺度である。そのため、様々な例示的実施形態では、利用度情報は、使用可能容量全体に対するノードで使用中の使用可能容量の一部を含む。また、様々な例示的実施形態では、利用度情報は、通信リンクを介して容量が使用可能か否かを示す真または偽の値である。
様々な例示的実施形態では、ノードは1つまたは複数の近隣ノードに対し、ネットワーク状況に関するアップデートの要求を送信することができる。対照的に、様々な例示的実施形態では、ノードは近隣ノードに対し自動的にアップデートを送信する。様々な例示的実施形態では、アップデートメッセージは定期的なアップデートであり、定期的な間隔で利用度状況を通知する。また、様々な例示的実施形態では、アップデートメッセージは警告型アップデートであり、ネットワーク利用度が臨界点に達したこと、および任意のトラフィックをすべて回避すべきことを近隣ノードに通知する。また、様々な例示的実施形態では、こうしたメッセージはXMLまたはSOAPファイルにASCIIテキスト列を組み込むことによって通信される。そのため、様々な例示的実施形態では、メッセージは「L1OK」または「L1→U165%、L1スイッチング43%、L1サーバ39%」と同様の形式である。
上記を踏まえ、コンテンツ配信ネットワークの機能の例は以下のとおりとなる。第1ユーザ記憶装置102に位置するユーザが新たなコメディ映画を好むことを示す特徴を有すると仮定する。新たなコメディ映画「エバンオールマイティ」は入手可能となり、そのため即座にユーザの「視聴見込み」リスト最上位近くに達する。
第1ユーザ記憶装置102はユーザのホームメディアサーバであり、フィルムが保持され得る第1ノードである。ユーザのホームメディアサーバを含むネットワークの各ノードは、以下を含むことができる:当該ノードにローカル保存されているコンテンツアイテムの記憶容量、コンテンツアイテムが当該ノードにローカル保存されているか判断するための索引、およびローカル保存されていないコンテンツアイテムを探す場所を判断するための索引。
第1ローカルネットワーク記憶装置106は、第2ユーザ記憶装置104、第2ローカルネットワーク記憶装置108および第1遠隔ネットワーク記憶装置110のどこで「エバンオールマイティ」を探すべきかを特定する索引を維持している。各ノードに記憶されているコンテンツは継続的に変化するため、ノードが隣接ノードに対し、当該ノードからまたは当該ノードを通じてどんなコンテンツに到達し得るかを通信できるよう、アップデートプロトコルが提供される。
どんなコンテンツが必要かについての決定は、単なる個々のユーザではなく各ユーザの需要予測を総合したものによってなされる。そのため、ネットワークまたは顧客の場所に位置する決定ポイントは、ユーザおよびその他の顧客の将来のコンテンツ需要を予測する。要求された1組のコンテンツは、より遠隔のノードにネットワークを介してカスケードし、他の対象ユーザの要求されたコンテンツを追加し、中間ノードにキャッシュ済みのコンテンツを除去する。
そのため、ネットワークはコンテンツの分散を自己最適化する。一般に、少数のユーザにとって特に興味深いアイテムは、ユーザベースの記憶装置で保持される。ローカルサービス提供エリア内で一般に関心が持たれるアイテムは、ローカル記憶装置で保持される。そのため、一部のローカル記憶装置は、例えば、サービス対象の近隣エリアにおける民族性または話し言葉に基づき、他のローカル記憶装置とは相当異なる数組のアイテムを保持する。事前に予測できない特別のまたは稀に関心が寄せられるアイテムは、遠隔記憶装置で保持される。
例に戻って、「エバンオールマイティ」が第1ユーザ記憶装置102にローカル保存されていないとコンテンツ配信ネットワーク100が判断すると仮定する。次いでユーザは、第1ローカルネットワーク記憶装置106から、第2ユーザ記憶装置104のような、第1ローカルネットワーク記憶装置106と結びついた別のユーザから、または第1遠隔ネットワーク記憶装置110のような、より遠隔のキャッシングノードからコピーを取得することができる。
コンテンツ配信ネットワーク100はまず、サービスプロバイダの現地交換拠点に位置する第1ローカルネットワーク記憶装置106への通信リンク120を確認する。「エバンオールマイティ」がユーザにとって有益であるとの情報に基づき、コンテンツ配信ネットワーク100はピーク外時間中にローカルキャッシュに「エバンオールマイティ」を追加することを試みる。こうしたピーク外時間は、ノード間で通信される容量情報に基づき特定される。
「エバンオールマイティ」は、当該ユーザにとどまらずより広く関心を持たれている場合、多くのユーザのキャッシュの容量を使用するのではなく、第1ローカルネットワーク記憶装置106に保持することができる。多くのローカルまたはユーザのノードがフィルムのコピーを欲しいと思った場合、ローカルネットワーク記憶装置106はマルチキャストまたはブロードキャストのモードで映画を送信することができ、それにより多くのノードで同時に当該コピーを入手することができる。
「エバンオールマイティ」のコピーがノードに保存されると、ノードが一杯になり、当該映画がより有益なコンテンツに取って代わられるまで、当該コピーはノードに保存される。そのときでも、新たなコンテンツは、関心のあるユーザの数、アクセス確率などに基づき「エバンオールマイティ」「より優れた」ものでなければならない。「より優れた」コンテンツによる場合を除きコンテンツの置換を回避するため、コンテンツ配信ネットワーク100は、有用性が同程度のアイテムがスワップインおよびスワップアウトされるときに生じるチャーニングを最小限に抑える。
上記にしたがい、様々な例示的実施形態は、複数のネットワークレベルにおけるキャッシングの効率性を高め、需要のピークの負荷を軽減するために、将来のコンテンツ消費確率についての予測情報を使用する。そのため、様々な例示的実施形態は、コンテンツ配信ネットワークで独自コンテンツがユーザに配信され得る際の費用対効果を改善する。
様々な例示的実施形態について、その特定の例示的態様に特に言及して詳しく説明してきたが、本発明は他の異なる実施形態も可能であり、その詳細は様々な明白な点で変更可能であることを理解すべきである。当業者はすぐに理解できることだが、本発明の精神および範囲内にとどまりながらも変形および変更を行うことが可能である。したがって、前述の開示、説明および図は、例示のためのものにすぎず、本発明を一切限定せず、本発明は特許請求の範囲によってのみ定められる。

Claims (25)

  1. 複数の層を有するコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法であって、
    現在キャッシュされているコンテンツアイテムのリストを第1ネットワークノードで特定することと、
    ユーザが第1ネットワークノードに対しコンテンツアイテムを要求する可能性に基づき希少性に関する自立的な階層として構成された、有用性の最も高いコンテンツアイテムのリストを作成することであって、より多くの数のユーザがあるコンテンツアイテムにアクセスすると予想される場合、より高い層にそのコンテンツがキャッシュされるようにコンテンツアイテムが複数の層にコンテンツアイテムがそれぞれキャッシュされることと、
    有用性の最も高いコンテンツアイテムのリストと現在キャッシュされているコンテンツアイテムのリストとを比較することと、
    有用性の最も高いコンテンツアイテムのリストにあって、現在キャッシュされているコンテンツアイテムのリストにないコンテンツアイテムを含む、キャッシング候補の順位リストを特定することと、
    キャッシング候補のリストによる選択済みコンテンツアイテムを第1ネットワークノードにおいて第2ネットワークノードから受信することと
    を含む、方法。
  2. コンテンツ配信ネットワークがユニキャスト、ブロードキャスト、交換ブロードキャストおよびマルチキャストのネットワークの1つである、請求項1に記載のコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法。
  3. 現在キャッシュされているコンテンツアイテムのリストを特定するステップが、第1ネットワークノードがコンテンツアイテムのアクセス確率の変化を識別したときに始まる、請求項1に記載のコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法。
  4. キャッシング候補のリストが、選択済みコンテンツアイテムがアクセスされる確率を示す有用性の尺度にしたがい順位付けされる、請求項1に記載のコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法。
  5. 選択済みコンテンツアイテムが、キャッシング候補のリストによる最高順位のコンテンツアイテムである、請求項4に記載のコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法。
  6. 選択済みコンテンツアイテムを記憶するには第1ネットワークノードの記憶容量が不十分なときに1つまたは複数のコンテンツアイテムを除外すること
    をさらに含む、請求項1に記載のコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法。
  7. 除外する1つまたは複数のコンテンツアイテムの全体的な有用性が、選択済みコンテンツアイテムの有用性を所定のしきい値だけ下回ったときのみ、1つまたは複数のコンテンツアイテムを除外するステップが発生する、請求項6に記載のコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法。
  8. 選択済みコンテンツアイテムを受信するステップがピーク外時間中にのみ発生する、請求項1に記載のコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法。
  9. 第2ネットワークノードに現在記憶されているコンテンツアイテムに関する情報を提供するアップデートを、第2ネットワークノードから第1ネットワークノードに送信すること
    をさらに含む、請求項1に記載のコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法。
  10. 第2ネットワークノードに現在記憶されている全コンテンツアイテムをアップデートがリストアップする、請求項9に記載のコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法。
  11. 第1ネットワークノードに対する前回アップデート以降の第2ネットワークノードにおける除外アイテムおよび記憶された追加アイテムのみをアップデートがリストアップする、請求項9に記載のコンテンツ配信ネットワークに記憶されたコンテンツアイテムを管理する方法。
  12. 複数の層を有するコンテンツ配信ネットワークにおけるコンテンツアイテムをキャッシュするネットワークノードであって、
    コンテンツアイテムを記憶する記憶部と、
    希少性に関する自立的な階層として構成された有用性の最も高いコンテンツアイテムのリストのアイテムと、現在キャッシュされているコンテンツアイテムのリストとを比較することによってキャッシング候補の順位リストを形成する監視部であって、有用性の最も高いコンテンツアイテムのリストが、ユーザがコンテンツアイテムを要求する可能性を示し、より多くの数のユーザがあるコンテンツアイテムにアクセスすると予想される場合、より高い層にそのコンテンツがキャッシュされるように複数の層にコンテンツアイテムがそれぞれキャッシュされる、監視部と、
    キャッシング候補のリストにおける選択済みコンテンツアイテムをサーバネットワークノードから受信する受信部と
    を備える、ネットワークノード。
  13. コンテンツ配信ネットワークがユニキャスト、ブロードキャスト、交換ブロードキャストおよびマルチキャストのネットワークの1つである、請求項12に記載のコンテンツ配信ネットワークにおけるコンテンツアイテムをキャッシュするネットワークノード。
  14. 選択済みコンテンツアイテムを記憶するには記憶部の記憶容量が不十分なときに1つまたは複数のコンテンツアイテムを記憶部が除外する、請求項12に記載のコンテンツ配信ネットワークにおけるコンテンツアイテムをキャッシュするネットワークノード。
  15. 複数の層を有するコンテンツ配信ネットワークにおけるコンテンツアイテムを配信するネットワークノードであって、
    コンテンツアイテムを記憶する記憶部と、
    希少性に関する自立的な階層として構成された有用性の最も高いコンテンツアイテムのリストのアイテムと、現在キャッシュされているコンテンツアイテムのリストとを比較することによってダウンロード要求を形成するクライアントネットワークノードから、ダウンロード要求を受信する受信部であって、有用性の最も高いコンテンツアイテムのリストが、ユーザがクライアントネットワークノードに対しコンテンツアイテムを要求する可能性を示し、より多くの数のユーザがあるコンテンツアイテムにアクセスすると予想される場合、より高い層にそのコンテンツがキャッシュされるように複数の層にコンテンツアイテムがそれぞれキャッシュされる、受信部と、
    記憶部に記憶されている、ダウンロード要求によって識別された選択済みコンテンツアイテムをクライアントネットワークノードに送信する送信部と
    を備える、ネットワークノード。
  16. 少なくとも1つの隣接ノードに対し、記憶部に記憶されたコンテンツのリストおよび到達可能な記憶ノードのリストを通信するアップデート部
    をさらに備える、請求項15に記載のコンテンツ配信ネットワークにおけるコンテンツアイテムを配信するネットワークノード。
  17. 選択済みコンテンツアイテムを記憶するにはクライアントネットワークノードの記憶容量が不十分なときに1つまたは複数のコンテンツアイテムをクライアントネットワークノードが除外する、請求項15に記載のコンテンツ配信ネットワークにおけるコンテンツアイテムを配信するネットワークノード。
  18. 複数の層においてコンテンツアイテムの記憶を動的に管理するコンテンツ配信ネットワークであって、
    現在キャッシュされているコンテンツアイテムのリストおよび有用性の最も高いコンテンツアイテムのリストを特定する第1ネットワークノードであって、希少性に関する自立的な階層として構成された有用性の最も高いコンテンツアイテムのリストが、ユーザが第1ネットワークノードに対しコンテンツアイテムを要求する可能性を示し、より多くの数のユーザがあるコンテンツアイテムにアクセスすると予想される場合、より高い層にそのコンテンツがキャッシュされるように複数の層にコンテンツアイテムがそれぞれキャッシュされる、第1ネットワークノードと、
    1つまたは複数のコンテンツアイテムを記憶する第2ネットワークノードとを備え、
    有用性の最も高いコンテンツアイテムのリストのアイテムと、現在キャッシュされているコンテンツアイテムのリストとを比較することによってキャッシング候補の順位リストを第1ネットワークノードが特定し、
    キャッシング候補のリストにおける選択済みコンテンツアイテムを第1ネットワークノードが第2ネットワークノードから受信する、コンテンツ配信ネットワーク。
  19. コンテンツ配信ネットワークがユニキャスト、ブロードキャスト、交換ブロードキャストおよびマルチキャストのネットワークの1つである、請求項18に記載のコンテンツアイテムの記憶を動的に管理するコンテンツ配信ネットワーク。
  20. 第1ネットワークノードが1つまたは複数のコンテンツアイテムのアクセス確率の変化を識別したときに第1ネットワークノードが現在キャッシュされているコンテンツアイテムのリストを特定する、請求項18に記載のコンテンツアイテムの記憶を動的に管理するコンテンツ配信ネットワーク。
  21. アクセス確率に基づく有用性によってキャッシング候補のリストが順位付けされる、請求項18に記載のコンテンツアイテムの記憶を動的に管理するコンテンツ配信ネットワーク。
  22. 選択済みコンテンツアイテムが、キャッシング候補のリストによる最高順位のコンテンツアイテムである、請求項21に記載のコンテンツアイテムの記憶を動的に管理するコンテンツ配信ネットワーク。
  23. 選択済みコンテンツアイテムを記憶するには第1ネットワークノードの記憶容量が不十分なときに1つまたは複数のコンテンツアイテムを第1ネットワークノードが除外する、請求項18に記載のコンテンツアイテムの記憶を動的に管理するコンテンツ配信ネットワーク。
  24. 除外する1つまたは複数のコンテンツアイテムの全体的な有用性が、選択済みコンテンツアイテムの有用性を所定のしきい値だけ下回ったときのみ、1つまたは複数のコンテンツアイテムを第1ネットワークノードが除外する、請求項23に記載のコンテンツアイテムの記憶を動的に管理するコンテンツ配信ネットワーク。
  25. ピーク外時間中にのみ第1ネットワークノードが選択済みコンテンツアイテムを受信する、請求項18に記載のコンテンツアイテムの記憶を動的に管理するコンテンツ配信ネットワーク。
JP2010540212A 2007-12-26 2008-12-22 予測キャッシング型コンテンツ配信ネットワーク Expired - Fee Related JP5383704B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/003,469 US7697557B2 (en) 2007-12-26 2007-12-26 Predictive caching content distribution network
US12/003,469 2007-12-26
PCT/IB2008/055688 WO2009083935A2 (en) 2007-12-26 2008-12-22 Predictive caching content distribution network

Publications (2)

Publication Number Publication Date
JP2011511338A JP2011511338A (ja) 2011-04-07
JP5383704B2 true JP5383704B2 (ja) 2014-01-08

Family

ID=40798361

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010540212A Expired - Fee Related JP5383704B2 (ja) 2007-12-26 2008-12-22 予測キャッシング型コンテンツ配信ネットワーク

Country Status (5)

Country Link
US (1) US7697557B2 (ja)
EP (1) EP2227888B1 (ja)
JP (1) JP5383704B2 (ja)
CN (1) CN101911636B (ja)
WO (1) WO2009083935A2 (ja)

Families Citing this family (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7515710B2 (en) 2006-03-14 2009-04-07 Divx, Inc. Federated digital rights management scheme including trusted systems
US8799396B2 (en) * 2008-02-04 2014-08-05 Cisco Technology, Inc. Method and system for an efficient distributed cache with a shared cache repository
US20090234945A1 (en) * 2008-03-14 2009-09-17 Suresh Balakrishnan Chande Method, apparatus and computer program product for active node selection
US8537835B2 (en) * 2008-06-20 2013-09-17 Alcatel Lucent Methods and apparatus for self-organized caching in a content delivery network
JP5075088B2 (ja) * 2008-10-28 2012-11-14 キヤノン株式会社 通信装置、通信制御方法及びプログラム
US7839801B2 (en) * 2008-12-12 2010-11-23 Verizon Patent And Licensing Inc. Distributing customer location access links across network provider nodes during network planning
TWI384812B (zh) * 2008-12-31 2013-02-01 Ind Tech Res Inst 運用暫存管理與資料傳輸負載平衡之點對點代理服務裝置與方法
CN105072454B (zh) 2009-01-07 2019-04-19 索尼克Ip股份有限公司 针对在线内容的媒体指南的特定化、集中式、自动化创建
US9369516B2 (en) 2009-01-13 2016-06-14 Viasat, Inc. Deltacasting
US8417816B2 (en) 2009-02-20 2013-04-09 Alcatel Lucent Topology aware cache cooperation
WO2010104927A2 (en) 2009-03-10 2010-09-16 Viasat, Inc. Internet protocol broadcasting
JP5321221B2 (ja) * 2009-04-22 2013-10-23 富士通株式会社 管理装置、管理方法、およびプログラム
EP2249550A1 (en) * 2009-05-04 2010-11-10 Thomson Licensing device and method for controlling dissemination of contents between peers having wireless communication capacities, depending on impatience reaction functions
US20130144750A1 (en) * 2009-07-28 2013-06-06 Comcast Cable Communications, Llc Content on demand edge cache recommendations
WO2011033565A1 (ja) * 2009-09-17 2011-03-24 株式会社 東芝 メタデータ収集装置
US20110107030A1 (en) * 2009-10-29 2011-05-05 Simon Borst Self-organizing methodology for cache cooperation in video distribution networks
EP2507995A4 (en) 2009-12-04 2014-07-09 Sonic Ip Inc SYSTEMS AND METHODS FOR TRANSPORTING ELEMENTARY BIT TRAIN CRYPTOGRAPHIC MATERIAL
US9071875B2 (en) * 2009-12-17 2015-06-30 At&T Intellectual Property I, L.P. Processing and distribution of video-on-demand content items
US8516253B1 (en) 2010-01-18 2013-08-20 Viasat, Inc. Self-keyed protection of anticipatory content
EP2372976B1 (en) * 2010-03-31 2013-05-08 Thomson Licensing Device and method for controlling dissemination of contents between peers having wireless communication capacities, depending on vote vectors
CN101764824B (zh) * 2010-01-28 2012-08-22 深圳市龙视传媒有限公司 一种分布式缓存控制方法、装置及系统
JP5765950B2 (ja) * 2010-01-28 2015-08-19 トムソン ライセンシングThomson Licensing 票ベクトルに従って、ワイヤレス・コミュニケーション能力を有するピア間のコンテンツ配布を制御するためのデバイス、及び方法
US9307003B1 (en) 2010-04-18 2016-04-05 Viasat, Inc. Web hierarchy modeling
US9385938B2 (en) 2010-06-22 2016-07-05 Blackberry Limited Information distribution in a wireless communication system
US8570962B2 (en) 2010-06-22 2013-10-29 Blackberry Limited Information selection in a wireless communication system
US9774670B2 (en) 2010-08-22 2017-09-26 Qwilt, Inc. Methods for detection of content servers and caching popular content therein
US11032583B2 (en) 2010-08-22 2021-06-08 QWLT, Inc. Method and system for improving high availability for live content
US10097428B2 (en) * 2010-08-22 2018-10-09 Qwilt, Inc. System and method for caching popular content respective of a content strong server in an asymmetrical routing topology
US10097863B2 (en) 2010-08-22 2018-10-09 Qwilt, Inc. System and method for live service content handling with content storing servers caching popular content therein
US10127335B2 (en) 2010-08-22 2018-11-13 Qwilt, Inc System and method of performing analytics with respect to content storing servers caching popular content
US9442671B1 (en) * 2010-12-23 2016-09-13 Emc Corporation Distributed consumer cloud storage system
US9247312B2 (en) 2011-01-05 2016-01-26 Sonic Ip, Inc. Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol
US8402112B2 (en) 2011-01-14 2013-03-19 Microsoft Corporation Inter-cache communication using HTTP resource
CN102439934A (zh) * 2011-01-24 2012-05-02 华为技术有限公司 一种cdn中边缘服务器的多级缓存管理方法与系统
WO2012153173A2 (en) * 2011-01-29 2012-11-15 Redthorne Media, Llc Feedback oriented private overlay network for content distribution
US8612550B2 (en) 2011-02-07 2013-12-17 Microsoft Corporation Proxy-based cache content distribution and affinity
US20120257560A1 (en) * 2011-04-07 2012-10-11 Sudharshan Srinivasan Cellular data bandwidth optimization using social networking concepts
US9912718B1 (en) 2011-04-11 2018-03-06 Viasat, Inc. Progressive prefetching
US9106607B1 (en) 2011-04-11 2015-08-11 Viasat, Inc. Browser based feedback for optimized web browsing
US9037638B1 (en) 2011-04-11 2015-05-19 Viasat, Inc. Assisted browsing using hinting functionality
US9456050B1 (en) 2011-04-11 2016-09-27 Viasat, Inc. Browser optimization through user history analysis
EP2702550A4 (en) * 2011-04-25 2014-10-01 Ikanos Communications Inc METHOD AND APPARATUS FOR CACHING IN A NETWORK ENVIRONMENT
US9137202B2 (en) 2011-06-09 2015-09-15 At&T Intellectual Property I, L.P. System and method for dynamically adapting network delivery modes of content
EP2536065B1 (en) 2011-06-14 2019-11-27 ViaSat, Inc. Transport protocol for anticipatory content
US9092491B2 (en) 2011-07-11 2015-07-28 International Business Machines Corporation Searching documentation across interconnected nodes in a distributed network
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US8964977B2 (en) 2011-09-01 2015-02-24 Sonic Ip, Inc. Systems and methods for saving encoded media streamed using adaptive bitrate streaming
CN102323898A (zh) * 2011-09-02 2012-01-18 深圳中兴网信科技有限公司 一种缓存调度方法和系统
US9407355B1 (en) 2011-10-25 2016-08-02 Viasat Inc. Opportunistic content delivery using delta coding
CN102523256B (zh) * 2011-11-30 2014-07-30 华为技术有限公司 内容的管理方法的方法、装置和系统
US20130267312A1 (en) * 2012-04-06 2013-10-10 Wms Gaming, Inc. Ordered loading of wagering game assets into memory
US8432808B1 (en) 2012-06-15 2013-04-30 Viasat Inc. Opportunistically delayed delivery in a satellite network
US9136958B2 (en) 2012-06-22 2015-09-15 Qualcomm Incorporated Methods and apparatus for providing hybrid unicast broadcast services
CN103546525B (zh) * 2012-07-17 2018-12-25 北京千橡网景科技发展有限公司 一种缓存调度方法和设备
US9246998B2 (en) 2012-10-16 2016-01-26 Microsoft Technology Licensing, Llc Load balancer bypass
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US9313510B2 (en) 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
US9467525B2 (en) * 2013-03-07 2016-10-11 Sap Se Shared client caching
US9906785B2 (en) 2013-03-15 2018-02-27 Sonic Ip, Inc. Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata
US10397292B2 (en) 2013-03-15 2019-08-27 Divx, Llc Systems, methods, and media for delivery of content
GB2513617A (en) * 2013-05-01 2014-11-05 Openwave Mobility Inc Caching of content
US9094737B2 (en) 2013-05-30 2015-07-28 Sonic Ip, Inc. Network video streaming with trick play based on separate trick play files
US9967305B2 (en) 2013-06-28 2018-05-08 Divx, Llc Systems, methods, and media for streaming media content
CN103338272B (zh) * 2013-07-23 2016-08-10 星云融创(北京)科技有限公司 一种内容分发网络及其缓存实现方法
US9848055B1 (en) 2013-09-20 2017-12-19 Google Inc. Local client discovery for content via cache
US20150188921A1 (en) * 2013-12-31 2015-07-02 Sonic Ip, Inc. Local distribution node in a content distribution network
US9930132B2 (en) 2014-01-10 2018-03-27 Facebook, Inc. Content specific router caching
US9787799B2 (en) 2014-02-27 2017-10-10 Dropbox, Inc. Systems and methods for managing content items having multiple resolutions
US9866878B2 (en) 2014-04-05 2018-01-09 Sonic Ip, Inc. Systems and methods for encoding and playing back video at different frame rates using enhancement layers
US9614724B2 (en) 2014-04-21 2017-04-04 Microsoft Technology Licensing, Llc Session-based device configuration
US10154110B2 (en) 2014-04-22 2018-12-11 Qwilt, Inc. System and methods thereof for delivery of popular content using a multimedia broadcast multicast service
US9430667B2 (en) 2014-05-12 2016-08-30 Microsoft Technology Licensing, Llc Managed wireless distribution network
US10111099B2 (en) 2014-05-12 2018-10-23 Microsoft Technology Licensing, Llc Distributing content in managed wireless distribution networks
US9384334B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content discovery in managed wireless distribution networks
US9384335B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content delivery prioritization in managed wireless distribution networks
US9874914B2 (en) 2014-05-19 2018-01-23 Microsoft Technology Licensing, Llc Power management contracts for accessory devices
US9547683B2 (en) * 2014-05-30 2017-01-17 Apple Inc. Application suggestion features
US10037202B2 (en) 2014-06-03 2018-07-31 Microsoft Technology Licensing, Llc Techniques to isolating a portion of an online computing service
US10855797B2 (en) 2014-06-03 2020-12-01 Viasat, Inc. Server-machine-driven hint generation for improved web page loading using client-machine-driven feedback
US9367490B2 (en) 2014-06-13 2016-06-14 Microsoft Technology Licensing, Llc Reversible connector for accessory devices
US10397357B2 (en) * 2014-07-23 2019-08-27 Facebook, Inc. Rural area network device
US10291735B2 (en) 2014-07-23 2019-05-14 Facebook, Inc. Residential cache appliance utilizing a social network
US10291737B2 (en) * 2014-08-08 2019-05-14 Facebook, Inc. Identifying and caching content for offline use
US9866602B2 (en) * 2014-10-16 2018-01-09 Kollective Technology, Inc. Adaptive bit rates during broadcast transmission in distributed content delivery networks
CN104410721B (zh) * 2014-12-23 2016-09-21 合一网络技术(北京)有限公司 根据更新内容支持自动缓存的方法及系统
US10205797B2 (en) 2014-12-29 2019-02-12 Facebook, Inc. Application service delivery through an application service avatar
US10200889B2 (en) * 2015-03-18 2019-02-05 Lg Electronics Inc. Method for receiving signal using distribution storage cache retention auxiliary node in wireless communication system, and apparatus therefor
CN116610884A (zh) 2015-10-20 2023-08-18 维尔塞特公司 使用自动浏览群集更新提示模型
US10198355B2 (en) * 2015-10-29 2019-02-05 Dropbox, Inc. Proving a dynamic digital content cache
US10257305B2 (en) 2016-02-08 2019-04-09 International Business Machines Corporation Preemptive content distribution
US10700894B2 (en) * 2016-06-01 2020-06-30 At&T Intellectual Property I, L.P. Network caching of outbound content from endpoint device to prevent unauthorized extraction
US10225361B2 (en) 2016-06-29 2019-03-05 International Business Machines Corporation Content management in caching services
CN106231622B (zh) * 2016-08-15 2018-02-23 北京邮电大学 一种基于缓存容量限制的内容存储方法
CN107870732B (zh) * 2016-09-23 2020-12-25 伊姆西Ip控股有限责任公司 从固态存储设备冲刷页面的方法和设备
CN106603702A (zh) * 2016-12-29 2017-04-26 北京奇艺世纪科技有限公司 资源数据下载方法及装置
US10498795B2 (en) 2017-02-17 2019-12-03 Divx, Llc Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming
US10645133B2 (en) 2017-07-12 2020-05-05 Loon Llc Method and system for delivering content over transient access networks
US11265585B2 (en) * 2017-09-15 2022-03-01 T-Mobile Usa, Inc. Tiered digital content recording
CN110875947A (zh) * 2018-09-03 2020-03-10 阿里巴巴集团控股有限公司 一种数据处理方法和边缘节点设备
JP7278367B2 (ja) * 2019-04-03 2023-05-19 三菱電機株式会社 接続管理装置、接続管理システム、接続管理方法及びプログラム
US11256624B2 (en) * 2019-05-28 2022-02-22 Micron Technology, Inc. Intelligent content migration with borrowed memory
US11061819B2 (en) 2019-05-28 2021-07-13 Micron Technology, Inc. Distributed computing based on memory as a service
US11334387B2 (en) * 2019-05-28 2022-05-17 Micron Technology, Inc. Throttle memory as a service based on connectivity bandwidth
US11100007B2 (en) 2019-05-28 2021-08-24 Micron Technology, Inc. Memory management unit (MMU) for accessing borrowed memory
US11438414B2 (en) 2019-05-28 2022-09-06 Micron Technology, Inc. Inter operating system memory services over communication network connections
CN110351780B (zh) * 2019-06-17 2020-12-15 中山大学 一种基于编码缓存的通信方法、系统及存储介质
US11070485B2 (en) * 2019-12-05 2021-07-20 Netflix, Inc. Multimedia content steering
CN111800771B (zh) * 2020-06-30 2021-09-21 深圳市中科蓝讯科技股份有限公司 蓝牙Mesh节点网络消息缓存的管理方法和系统

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098096A (en) * 1996-12-09 2000-08-01 Sun Microsystems, Inc. Method and apparatus for dynamic cache preloading across a network
US7529856B2 (en) * 1997-03-05 2009-05-05 At Home Corporation Delivering multimedia services
US6356283B1 (en) * 1997-11-26 2002-03-12 Mgi Software Corporation Method and system for HTML-driven interactive image client
US6405219B2 (en) * 1999-06-22 2002-06-11 F5 Networks, Inc. Method and system for automatically updating the version of a set of files stored on content servers
US6341304B1 (en) 1999-09-23 2002-01-22 International Business Machines Corporation Data acquisition and distribution processing system
US20020091792A1 (en) * 2001-01-09 2002-07-11 International Business Machines Corporation Method and apparatus for client sharing of cached content
JP2002259197A (ja) * 2001-02-27 2002-09-13 Nippon Telegr & Teleph Corp <Ntt> アクティブコンテンツキャッシュ制御システムと、アクティブコンテンツキャッシュ制御装置及び方法と、アクティブコンテンツキャッシュ制御処理用プログラム及びそのプログラムの記録媒体
JP4090711B2 (ja) * 2001-07-10 2008-05-28 日本電信電話株式会社 コンテンツ提供方法、コンテンツ提供装置、コンテンツ提供プログラム及びコンテンツ提供プログラムを記録した記録媒体
JP2003030087A (ja) * 2001-07-17 2003-01-31 Fujitsu Ltd コンテンツ配信ネットワークシステム
US7076544B2 (en) 2002-04-08 2006-07-11 Microsoft Corporation Caching techniques for streaming media
US7051161B2 (en) 2002-09-17 2006-05-23 Nokia Corporation Memory admission control based on object size or request frequency
JP2005063234A (ja) * 2003-08-15 2005-03-10 Ntt Comware Corp コンテンツ配信システムにおけるポータルサーバおよびキャッシュサーバ、ならびにコンテンツ配信方法、コンテンツ配信プログラム
JP2005100005A (ja) * 2003-09-24 2005-04-14 Hitachi Information Systems Ltd コンテンツ管理システムおよびコンテンツ管理方法ならびにそのためのプログラム
JP3990354B2 (ja) * 2003-12-26 2007-10-10 株式会社東芝 通信システム
CN1981501A (zh) * 2004-03-12 2007-06-13 汤姆森许可公司 调度内容文件的分发的方法和缓存服务器网络
CN100405773C (zh) * 2006-07-14 2008-07-23 北京时越网络技术有限公司 一种基于内容分发网络系统的点对点内容再分发方法

Also Published As

Publication number Publication date
EP2227888A2 (en) 2010-09-15
WO2009083935A2 (en) 2009-07-09
CN101911636B (zh) 2014-04-30
US7697557B2 (en) 2010-04-13
EP2227888B1 (en) 2012-11-21
US20090168795A1 (en) 2009-07-02
JP2011511338A (ja) 2011-04-07
WO2009083935A3 (en) 2009-09-24
CN101911636A (zh) 2010-12-08

Similar Documents

Publication Publication Date Title
JP5383704B2 (ja) 予測キャッシング型コンテンツ配信ネットワーク
US10667019B2 (en) Apparatus and methods for managing delivery of content in a network with limited bandwidth using pre-caching
US9462074B2 (en) Method and system for caching streaming multimedia on the internet
US9705951B2 (en) Method and apparatus for instant playback of a movie
KR101228230B1 (ko) 컨텐츠 전달 네트워크 내의 노드에서 하나 이상의 컨텐츠 아이템을 캐싱하는 방법, 장치 및 제품
US9264652B2 (en) Home and network video caching
US7860950B2 (en) Metadata enabled push-pull model for efficient low-latency video-content distribution over a network
EP2082557B1 (en) Method and apparatus for controlling information available from content distribution points
US7831989B1 (en) Intelligent asset management in a cable services system
US9380323B2 (en) Cache eviction
US20100058405A1 (en) Systems and Methods for Distributing Video on Demand
EP2290912A1 (en) Content distributing method, service redirecting method and system, node device
US20110107030A1 (en) Self-organizing methodology for cache cooperation in video distribution networks
JP2011502412A (ja) 管理型マルチメディア配信ネットワーク内の回復力の高いサービス品質
JP2006171822A (ja) コンテンツ配信方法
Claeys et al. Cooperative announcement-based caching for video-on-demand streaming
Kamiyama et al. Multicast pre-distribution in VoD services
Gramatikov et al. Popularity based distribution schemes for P2P assisted streaming of VoD contents
Kanrar et al. Efficient video streaming for interactive session
Rao et al. SURVEY ON CACHING AND REPLICATION ALGORITHM FOR CONTENT DISTRIBUTION IN PEER TO PEER NETWORKS
Kim et al. An efficient method for supporting multiple types of services on SMART server
So et al. Resource Provider Selection for Personal Live Content Delivery in User-Provided Platform

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130801

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130910

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131001

R150 Certificate of patent or registration of utility model

Ref document number: 5383704

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees