JP2017539029A - コンテンツ配信フレームワークにおけるキャッシング - Google Patents

コンテンツ配信フレームワークにおけるキャッシング Download PDF

Info

Publication number
JP2017539029A
JP2017539029A JP2017530734A JP2017530734A JP2017539029A JP 2017539029 A JP2017539029 A JP 2017539029A JP 2017530734 A JP2017530734 A JP 2017530734A JP 2017530734 A JP2017530734 A JP 2017530734A JP 2017539029 A JP2017539029 A JP 2017539029A
Authority
JP
Japan
Prior art keywords
content
cache policy
cdn
caching
cached
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.)
Granted
Application number
JP2017530734A
Other languages
English (en)
Other versions
JP6699664B2 (ja
JP2017539029A5 (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 JP2017539029A publication Critical patent/JP2017539029A/ja
Publication of JP2017539029A5 publication Critical patent/JP2017539029A5/ja
Application granted granted Critical
Publication of JP6699664B2 publication Critical patent/JP6699664B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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
    • 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
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

コンテンツ配信ネットワーク(CDN)で動作可能な、コンピュータにより実施される方法は、キャッシングポリシーの遅延結合を使用し、上記CDNにおけるキャッシングノードにより、コンテンツについてのリクエストに応答して、上記コンテンツがローカルにキャッシュされたかどうかを判断する。上記コンテンツがローカルにキャッシュされたと判断された場合には、上記コンテンツに関連付けられている現在のキャッシュポリシーを判断し、次に、上記コンテンツに関連付けられている上記現在のキャッシュポリシーに基づいて、ローカルにキャッシュされた上記コンテンツを供給することが許容可能かどうかを判断し、上記判断に基づいて、ローカルにキャッシュされた上記コンテンツを供給することが許容可能ではない場合、上記コンテンツの新たなバージョンを取得し、次に、上記コンテンツの上記新たなバージョンを供給し、そうでなく、ローカルにキャッシュされた上記コンテンツを供給することが許容可能である場合、ローカルにキャッシュされた上記コンテンツを供給する。

Description

関連出願の相互参照 本特許協力条約(PCT)特許出願は、2015年12月15日に出願された、"CACHING IN A CONTENT DELIVERY FRAMEWORK"と題する米国特許非仮出願第14/570,512号の優先権を主張する。当該非仮出願は、その全体がここに参照により組み込まれる。
著作権の宣言 本特許文献は、著作権保護の対象となる資料を含む。著作権者は、本特許文献または米国特許商標局のファイルにおけるあらゆる関連資料の複製に対して異議を唱えるものではないが、そうでなければ、いかなる理由があろうとも全ての著作権を留保する。
参照による組み込み 以下の米国特許出願および米国特許出願公開は、ここに、全ての目的で、参照により本明細書に完全に組み込まれる。1. 2012年12月12日に出願された、"Content Delivery Network"という発明の名称の米国特許出願公開第2013/0159472号明細書、2. 2012年12月12日に出願された、"Content Delivery Network"という発明の名称の米国特許出願公開第2013−0159473号明細書、3. 2014年6月17日に出願された、"Origin Server‐Side Channel In A Content Delivery Framework"という発明の名称の米国特許出願公開第2014/0344399号明細書、および4. 1998年2月10日に出願された、"Optimized Network Resource Location"という発明の名称の米国特許第6,185,598号明細書。
本発明は、コンテンツ配信およびコンテンツ配信ネットワークに関し、より具体的には、コンテンツ配信ネットワークにおけるキャッシングに関する。
本発明のその他の目的、特徴、および特性、並びに、関連する構造の要素の動作および機能に関する方法、製造の部分および経済性の組み合わせは、添付の図面を参照して以下の記載および添付の特許請求項を考慮することによって、より明らかになるであろう。これらの全てが、本明細書の一部分を形成する。
本明細書の例示的な実施形態に従った例示的なコンテンツ配信フレームワークの態様を示す。
本明細書の例示的な実施形態に従った例示的なコンテンツ配信ネットワーク(CDN)の態様を示す。
本明細書の例示的な実施形態に従った処理の態様のフローチャートである。
本明細書の例示的な実施形態に従ったコンピューティングの態様を示す。
用語解説 そうでないように使用されない限り、本明細書において使用されるように、以下の用語または略語は、以下の意味を有する。
CDは、コンテンツ配信を意味する。
CDNは、コンテンツ配信ネットワークを意味する。
HTTPは、ハイパーテキストトランスファープロトコルを意味する。
HTTPSは、HTTPセキュリティを意味する。
TTLは、生存時間を意味する。
URIは、ユニフォームリソース識別子を意味する。
URLは、ユニフォームリソースロケータを意味する。
背景および概要 コンテンツ配信ネットワーク(CDN)は、1または複数のコンテンツプロバイダの代わりに、好ましくは公衆インターネットを介して、クライアントに効率的にコンテンツ(例えばリソース)を配信する。コンテンツプロバイダは、オリジンソース(オリジンサーバまたはオリジン)を介して、自身のコンテンツ(例えばリソース)を提供する。CDNは、反対方向に(クライアントからオリジンサーバに)コンテンツを効率的に送信するためのオーバー・ザ・トップ搬送メカニズムも提供し得る。エンドユーザ(クライアント)およびコンテンツプロバイダの両方が、CDNを使用することから恩恵を受ける。CDNを使用することで、コンテンツプロバイダは、自身のサーバ(例えば、自身のオリジンサーバ)から負担を取り除くこと(および、それにより、サーバにかかる負荷を低減すること)が可能である。クライアントは、より短い遅延でコンテンツを取得することが可能なことにより恩恵を受ける。
本明細書の例示的な実施形態に従った例示的なコンテンツ配信フレームワーク100を示す図1を参照すると、1または複数の加入者104に関連付けられているコンテンツ102は、1または複数のCDN108を介して、クライアント106に配信され得る。CDN108は、あらゆる種類のCDNであり得、サブCDN、デリゲートCDN、部分的CDN等を含み得る。例示的なCDNは、両方とも2012年12月12に出願された米国特許出願公開第2013/0159472号明細書および第2013/0159473号明細書、ならびに2014年6月17日に出願された米国特許出願公開第2014/0344399号明細書、および1998年2月10日に出願された米国特許第6,185,598号明細書において説明されている。これらのそれぞれの全内容は、全ての目的で、参照により本明細書に完全に組み込まれている。図2は、本明細書の例示的な実施形態に従った例示的なCDN108の態様を示す。
本明細書において使用されるように、クライアントは、例えばエンドユーザがシステム内でリクエスト(例えば、DNSリクエストおよびHTTPリクエスト)を出すべく使用するエージェント(例えば、ブラウザ、セットトップボックス、または他のアプリケーション)である。CDNまたは他の中継手段が使用されない場合、そのようなリクエストは、加入者自身のサーバ(例えば、加入者のオリジンサーバ)またはインターネット上の他のコンポーネントに直接向かい得る。コンテンツプロバイダが(例えば、米国特許出願公開第2013/0159472号明細書および第2013/0159473号明細書において説明されるように)CDサービスに加入している場合、エンドユーザのリクエストを、ともすると途中でコンテンツを変換およびキャッシングして、オリジンリクエストにマッピングし得る中間CDサービスに様々なリクエストが向かい得る。
それぞれの別個のオリジン(例えばオリジンサーバ)は通常、一加入者に関連付けられているが、加入者は、加入者が所有しCDNが提供するオリジンを含む、任意の数のオリジンに関連付けられ得る。
CDNがインタラクトし得る物理オリジンは、実際には、一連の中継手段からコンテンツ(おそらく例えば、加入者の実際のオリジンサーバで最終的に終わる違うコンテンツ取得システムの要素)を取得する中継手段であり得る。しかしながら、CDNの内部構成要素が関係している限り、オリジンは、コンテンツが直接取得されるシステム上の境界の外にあるサービスである。
本明細書において使用されるように、エンドユーザは、サービスプロバイダエンティティにより提供されるいくつかのインターネットサービス(例えば、ウェブサイト、ストリーミングサービス等)を最終的に消費するエンティティ(例えば、人または組織)である。このプロバイダエンティティは、場合によっては、本説明において加入者と称される。なぜなら、プロバイダエンティティは、自身のコンテンツを(例えば自身のオリジンから自身の消費者へ)効率的に配信するためにCDNサービスに加入しているからである。CDNは、自身の加入者と加入者のエンドユーザとの間に付加価値のある媒介(例えば、キャッシング、変形等)を提供し得る。
キャッシング コンテンツ(例えばリソース)は、CDN内のみならず、当該コンテンツが供給されているクライアントを含む他のエンティティによってもキャッシュされ得る。理解されるべきであるように、クライアントは、CDN内のエンティティでもあり得る。いくつかの場合において、コンテンツは、CDNの内部および外部の両方で、中継手段によりキャッシュされ得る。再び図1のコンテンツ配信フレームワーク100を参照すると、少なくともいくつかのコンテンツ102は、CDN108(例えばCDNキャッシュまたはキャッシュサービス110)内でキャッシュされ得る。
キャッシュされ、かつキャッシュ可能なコンテンツは通常、当該コンテンツに関連付けられたキャッシングポリシーを有する。そのようなコンテンツを処理するエンティティは、それらのキャッシングポリシーに従うであろうことが一般に予想される。ここで特定の関心の対象となるキャッシングポリシーは、コンテンツの期限切れに関連するポリシーを含む。古いコンテンツもしくは期限切れのコンテンツを供給すること、またはコンテンツを当該コンテンツに関連付けられているキャッシングポリシーとは整合性がないやり方で供給することは一般に望ましくないことが理解されよう。
キャッシングポリシーは、コンテンツと関連付けられているキャッシュディレクティブとして指定され得る。キャッシュディレクティブは、例えばリソースのタイプに依存し得る。例えば、HTTPリソース(HTTPSリソースを含む)は、その全内容が全ての目的でここに参照により本明細書に完全に組み込まれているInternet Engineering Task Force(IETF) Request for Comments(RFC) 7234, "Hypertext Transfer Protocol(HTTP/1.1):Caching"において説明されているもののような従来のHTTPキャッシングディレクティブを使用するのが好ましい。知られているように、HTTPリソースの場合、キャッシュディレクティブは、リソースに関連付けられているヘッダを介して提供され得る。キャッシュディレクティブがリソースに提供されなかった場合には、エンティティ(例えばキャッシュノード)は、当該タイプの、または当該プロバイダからのリソースについて、デフォルトキャッシングポリシーを使用し得る。エンティティは、デフォルトキャッシングポリシーを別のソースから判断し得る。一般に、コンテンツ(例えば、1つのリソース、またはリソースのセット)に関連付けられているキャッシュディレクティブ(またはキャッシングポリシー)は、(例えば、HTTPリソースの場合には、ヘッダとして)当該コンテンツが提供され得、および/または当該コンテンツとは別個の位置もしくはエンティティ(例えばデータベース等)から入手可能であり得る。
CDNは、自身の加入者の代わりにコンテンツをキャッシュし得うる。CDNは、例えばCDNノード内で、当該CDNが自身の加入者の代わりにキャッシュするコンテンツのキャッシュ期限切れポリシーの指定を可能にすることが好ましい。CDNは、コンテンツ(例えば、1つのリソース、もしくはリソースのセット)についての内部キャッシングポリシーを有し得、またはサポートし得る。これは、当該内部キャッシングポリシーが、CDNのキャッシュが順守するポリシーであって、同一のコンテンツについての外部キャッシングポリシーとは違う、ともすると別個のもの(例えば、クライアントに配信される時にコンテンツと共に送られるキャッシングポリシー)である場合である。
いくつかの実施形態において、CDNは、加入者、またはリソースについての内部キャッシングポリシーを設定またはオーバーライドしている他のユーザもしくはエンティティをサポートし得る。例えば、そのようなシステムにおいて、CDNの顧客/加入者は、(例えばアプリケーションプログラム(プログラミング)インタフェース(API)を介して)セルフサービスポータル等にアクセスし得、自身のコンテンツのいくつかまたは全てについてのオリジンサーバからキャッシングポリシーをオーバーライドし得る。例えば、特定のCDN加入者は、ポータルを使用して、特定の種類の自身のコンテンツ(例えば自身のPDFファイル等)についてのキャッシングポリシーを設定し得る。これにより、例えば、それらのファイルは、特定の期間(例えば、1週間、1時間等)キャッシュされる。
キャッシュされたコンテンツ(例えばリソース)を、当該コンテンツについてのキャッシングポリシーが設定される毎に無効化を試すよりむしろ、本明細書において説明されるように、CDNの内部リクエスト処理プロセスにより、フィル時よりむしろリクエスト時に、リクエストされたコンテンツのキャッシングポリシーが判断され得る。実際には、リクエスト処理は、キャッシングポリシーの遅延結合を使用することにより、無効化(ともすると高価な処理)を強制する必要なく最新の内部キャッシングポリシーが使用されることを保証する。
外部キャッシングに使用されるものと類似するキャッシュディレクティブは、内部キャッシュポリシーに使用され得る。しかしながら、内部キャッシュポリシーディレクティブを外部キャッシュポリシーディレクティブと都合良く区別するため、CDNは、内部キャッシュポリシー用に異なる名称を使用し、および/またはこれらのポリシーを(例えば、内部で使用されるHTTPヘッダを介して)提供するであろうことが理解されるべきである。このやり方で、外部キャッシュポリシーが外部エンティティに提供され得るものの、内部キャッシュポリシーは、CDNエンティティ(例えばキャッシュ)が従い得る。
例えば、再び図1のコンテンツ配信フレームワーク100を参照すると、加入者104からのコンテンツ102は、それに関連付けられている内部および/または外部キャッシュポリシー(例えばキャッシュディレクティブ)を有し得る。CDN108によりクライアント106に提供されるコンテンツ102'は、外部キャッシュポリシー(例えばキャッシュディレクティブ)を含むことが好ましい。内部キャッシュポリシーは、クライアント106へのコンテンツ102'に提供され得る。なぜなら、これらのポリシーは、クライアントが認識しないであろう、または従わないであろうディレクティブを使用することが好ましいからである。特定のコンテンツに関連付けられているキャッシュポリシーは、当該コンテンツに(例えば、HTTPリソースの場合、HTTPヘッダとして)含まれ得るか、または他の箇所に配置され得る。コンテンツに関連付けられている特定のディレクティブが存在しない場合、CDNは、当該コンテンツにデフォルトキャッシングポリシーを適用し得る。
本明細書のいくつかの実施形態において、コンテンツ(例えば、1つのリソース、またはリソースのグループ)と関連付けられている(内部および外部)キャッシングポリシーは、データベース(場合によっては、本明細書においてルールベースと称される)に格納され得る。リソースについてのクライアントリクエストが処理されている場合、要求された(内部および外部)キャッシングポリシーを検索/取得するため、ルールベースがアクセスされ得る。再び図1を参照すると、キャッシュ110は、コンテンツに関連付けられている内部および/または外部キャッシングポリシーについての情報を取得するため、1または複数のデータベース112にアクセスし得る。
上述のように、いくつかの実施形態において、CDNは、加入者、または、例えばセルフサービスポータル等を介して(例えばAPIを介して)リソースについての内部キャッシングポリシーを設定またはオーバーライドしている他のユーザもしくはエンティティをサポートし得る。例示的なポータル114が図1に示される。ポータル114により、加入者は、自身のコンテンツに(すなわち、CDNにより自身の代わりに供給されるコンテンツに)関連付けられているキャッシングポリシーにアクセスし得、および/または当該キャッシングポリシーを変更し得る。
故に、本明細書の例示的な実施形態に従って、コンテンツについてのリクエストがクライアントからのCDNノードで受信されると、ノードは、当該コンテンツについてのキャッシング期限切れポリシーを判断するであろう(例えば、オーバーライドポリシーが存在するか、そうである場合それは何かである。そうでなければ、オリジンサーバにより提供されたポリシーが順守されるべきである)。コンテンツについてのキャッシングポリシーは、例えばルールベースへのアクセスにより、判断され得る。
次に、このポリシーは、例えば1または複数のキャッシュ制約として、キャッシングノード(キャッシュとも称される)に送られる。次に、キャッシュは、それらの制約を使用して、自身が保有しているコンテンツ(存在する場合)がリクエスティングクライアントに戻され得るかどうか、またはリフレッシュ/リロード等が必要かどうかを判断し得る。理解されるべきように、入手可能なリソースをノードが有していない場合には、ノードは、内部キャッシングポリシーに拘らずリソースを取得する必要があるが、その時点のキャッシングポリシーを順守し得る。
例えば、構成により「1時間」という内部キャッシングポリシーが指定されているときには、アプリケーションがリソースをリクエストしている場合、当該ポリシーはキャッシュに送られる。キャッシュがリソースを有している場合には、自身が有するリソースのオリジナルフィル時間(および現在の時間)を、指定されたポリシーと比較して、キャッシュされたリソースから自身が有するリソースが供給され得るかどうか、またはそれが最初に(もしくはともすると非同期的に)リフレッシュ/リロードされる必要があるかどうかを判断する。
リクエストされたリソースがキャッシュに無い場合において、指定されたポリシーによりそれが許容または要求されているときには、そのときにのみ、フィルが行われ、キャッシュに格納される(例えば、応答が未格納と示されているものの、キャッシングポリシーを指定する内部ポリシーが提供されていない場合には、応答を格納しない等)。
いかなる内部キャッシングポリシーもオーバーライドされていなければ、オリジンからの応答のキャッシングルールが依然として適用されるであろう(すなわち、リソースが未使用であり、制約がないと認識した場合、キャッシュはリソースを戻すであろう)。
リソースがクライアントに配信される場合、任意の外部ポリシーが適用されるであろう。これは、異なるクラスのクライアントが異なる制約を指定することを見込んでいる。例えば、いくつかの場合において、リソースについての内部リクエストは、リフレッシュの発生を常に防止するようなやり方でリソースをリクエストし得、または、リソースの期限切れをキャッシュがどうみなすかに拘らず、リフレッシュを同様に要求し得る。
図3は、本明細書の例示的な実施形態に従った処理の態様のフローチャートである。図3のフローチャートに示されるように、CDNにおけるキャッシュ(キャッシングノード)は(302で)、コンテンツ(C)についてのリクエストを受信する。リクエストは、任意のやり方で(例えば、CDNのランデブーシステムを介して)、キャッシングノードに到達済みである可能性がある。コンテンツCは、1または複数のリソースであり得るか、1または複数のリソースを含み得る。リクエストは、それらのリソースを指定しているURIまたはURLの形式を取り得る。キャッシュは(304で)、リクエストされたコンテンツがローカルにキャッシュされたかどうかを判断する。Cのローカルにキャッシュされたコピーが入手可能ではないと(304で)判断された場合には、ノードは(306で)、好ましくはC'のキャッシングポリシーに沿って、コンテンツCのコピーを取得する。ノードは、CDNにおける適切なフィル権限保有ノードからCのコピーを取得し得る。フィル権限保有ノードはまた、そのキャッシュされたバージョン(存在する場合)が古くないことを確認するであろうことが理解されよう。言い換えると、遅延結合キャッシュポリシーの確認は、リクエストされたコンテンツのコピーを提供する全ての中間ノードにより、それらの中間ノードが当該コンテンツを外部クライアントまたは内部クライアントのどちらに提供していようと実行されることが好ましい。
一方、リクエストされたコンテンツのローカルにキャッシュされたコピーが存在すると(304で)判断された場合には、ノードは、(例えばデータベース112から)コンテンツCに関連付けられている現在のキャッシュポリシーを(310で)取得する。次に、現在のキャッシュポリシーは、リクエストされたコンテンツの現在キャッシュされているバージョンをノードが供給し得るかどうかを判断すべく(312で)使用される。310で取得/判断された現在のキャッシュポリシーに基づいて、リクエストされたコンテンツCのローカルにキャッシュされたバージョンを供給するのが不都合な場合には、ノードは、上記で説明されるように(306で)コンテンツCの現在のバージョンを取得し、(308で)Cの現在のバージョンを供給する。一方、ノードがコンテンツCの現在キャッシュされているバージョンを供給するのは許容可能であると(310で取得されたCについての現在のキャッシュポリシーに少なくとも部分的に基づいて)(312で)判断された場合には、(308で)コンテンツCの現在キャッシュされているバージョンが供給される。
ルールベースにおいて指定されるキャッシングポリシー、例えば、MIME(Multipurpose Internet Mail Extensions)タイプおよび/またはステータスコードに基づいて指定されるポリシー(ネガティブキャッシングはこの特定の場合である)は、キャッシュに渡される制約を拡張することにより対処され得る。例えば、「キャッシュされたのが1時間以内であった場合、それがtext/HTMLでない限り、そのような場合には、それをキャッシュ不能またはtext/*とみなし、そのような場合には1日キャッシュ可能とみなすこと」のようにである。そのような制約には簡潔な構文が適用され、かつ、簡潔な構文が使用されるのが好適であろうことが理解されるべきである。
いくつかの場合において、ルールベースの制約セットは、シーケンス生成時にコンパイル可能であり得る。なぜなら、当該制約セットは通常、プロパティ全体に適用されるからである。しかしながら、追加のフィルタについての規定が必要であろう(セットは、限定されるべきであり、リクエスト作成の間に容易に選択可能であるべきである)。ネガティブキャッシングは、制約セットに負のTTL値およびステータスコードのリストを含めることにより、同様に処理され得る。
理解されるであろうように、この手法の欠点は、あらゆるリクエストについてキャッシングポリシーの判断を行わなくてはならないことである。これは自由になる見込みがなく、比較的費用のかかるものになり得る。一方、比較的即時にポリシーの更新を行うことの恩恵は、大きくない可能性がある。なぜなら、ポリシーの更新はまれである可能性があるからである。当該コストを低減するべく、実装は、各リソースと共に構成バージョン番号を格納し得、構成が変更された場合にのみ、構成バージョン番号を再計算し得る。例えば、そのような手法では、現在の構成バージョン番号が付されたキャッシングエンジンにコールを出し、現在の構成バージョン番号とリソースと関連付けられている構成番号とをキャッシュに比較させるであろう。構成番号が同一である場合には、リソースに添付されたポリシー情報を使用し、そうでなければ、コールバックして、制約の現在の設定を取得する。この手法では、制約が変更されたと見受けられる場合に、効果的にルールベースを処理して制約を取得するのみということになる。いくつかの実装において、バージョン番号は、キャッシングポリシーのチェックサムまたはハッシュ等(並びにまたは代わりにシーケンス番号)であり得、またはそれらを含み得る。ハッシュは、MD5またはSHA等のような暗号ハッシュであり得る。このやり方で、引き続きなされていない変更は、前のバージョンに一致しているとみなされ得る。
そのようなシステムは、現在の制約をリクエストさせるいくつかのセンチネルシーケンス番号を入力することにより、奇数の制約(例えば、リフレッシュの発生を決して望まない、内部リクエストのタイプ)に対処するであろう。そのような手法をサポートするべく、キャッシュのインタフェースは、リクエストがシーケンス番号および/または制約のセットを送ることを許容されるであろうようであり得る。あらゆるリクエストについてルールベースがいずれにせよ処理される必要がある場合には、制約は、処理の間に集められ得、リクエスト時にキャッシュに送られ得る。シーケンス番号が変更になっていない場合、キャッシュから呼び出すよりむしろ、単に無視し得る。
コンピューティング 図4は、本明細書において説明された処理を実行するのに使用され得るプロキシ、親サーバまたは他のコンピューティングデバイスを実装したコンピューティングシステム400の例示的な概略図である。コンピューティングシステムは、バス402(すなわち相互接続)、少なくとも1つのプロセッサ404、少なくとも1つの通信ポート414、メインメモリ406、リムーバブルストレージ媒体410、リードオンリーメモリ408、および大容量ストレージデバイス412を含む。プロセッサ404は、これに限定されるものではないが、インテル(登録商標)Itanium(登録商標)もしくはItanium 2(登録商標)プロセッサ、AMD(登録商標)Opteron(登録商標)もしくはAthlon MP(登録商標)プロセッサ、またはモトローラ(登録商標)の一連のプロセッサ、のような任意の既知のプロセッサであり得る。通信ポート414は、モデムベースのダイヤルアップ接続と共に使用するためのRS‐232ポート、10/100イーサネット(登録商標)ポート、銅もしくはファイバを使用したギガビットポート、またはUSBポートのいずれでもあり得る。通信ポート414は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、またはコンピュータシステムが接続する任意のネットワーク、のようなネットワークに応じて選択されてよい。サーバは、入出力(I/O)ポート420を介して周辺機器(例えば、ディスプレイスクリーン416、入力デバイス418)と通信し得る。
メインメモリ406は、ランダムアクセスメモリ(RAM)または当技術分野において一般に知られている任意の他の動的ストレージデバイスであり得る。リードオンリーメモリ408は、プロセッサ404についての命令のような静的情報を格納するためのプログラマブルリードオンリーメモリ(PROM)チップのような、任意の静的ストレージデバイスであり得る。大容量ストレージデバイス412は、情報および命令を格納するのに使用され得る。例えば、Adaptec(登録商標)の小型コンピュータシリアルインタフェース(SCSI)ドライブのファミリのようなハードディスク、光学ディスク、Adaptec(登録商標)のRAID(Redundant Array of Independent Disks)ドライブのファミリのようなRAIDのような一連のディスク、または任意の他の大容量ストレージデバイスが使用され得る。
バス402は、プロセッサ404を他のメモリ、ストレージおよび通信ブロックと通信可能に連結する。バス402は、使用されるストレージデバイスに応じて、PCI/PCI‐X、SCSIもしくはユニバーサルシリアルバス(USB)ベースのシステムバス(またはその他)であり得る。リムーバブルストレージ媒体410は、あらゆる種類の外部ハードドライブ、フロッピー(登録商標)ドライブ、IOMEGA(登録商標)Zipドライブ、コンパクトディスク―リードオンリーメモリ(CD‐ROM)、コンパクトディスク―リライタブル(CD‐RW)、デジタルビデオディスク―リードオンリーメモリ(DVD‐ROM)等であり得る。
本明細書における実施形態は、コンピュータプログラムプロダクトとして提供され得る。コンピュータプログラムプロダクトは、プロセスを実行するようコンピュータ(または他の電子デバイス)をプログラムするのに使用され得る命令が格納された機械可読媒体を含み得る。機械可読媒体は、限定されるものではないが、フロッピー(登録商標)ディスク、光学ディスク、CD‐ROM、光磁気ディスク、ROM、RAM、消去可能プログラマブルリードオンリーメモリ(EPROM)、電気的消去可能プログラマブルリードオンリーメモリ(EEPROM)、磁気カードもしくは光カード、フラッシュメモリ、または電子命令を格納するのに適した他のタイプの媒体/機械可読媒体を含み得る。
示されるように、メインメモリは、様々な図面および他の箇所に関して上記で説明された機能をサポートする1または複数のアプリケーション/サービス422で符号化され得る。例えば、一実施形態において、アプリケーション422は、本明細書に記載される様々な処理および/または命令を含み得、またはそうでなければ実行し得る。アプリケーション422(および/または本明細書において説明される他のリソース)は、本明細書において説明される異なる実施形態に従った処理機能をサポートするデータおよび/または論理命令のようなソフトウェアコード(例えば、メモリに、またはディスクのような別のコンピュータ可読媒体に格納されたコード)として具現化され得る。一実施形態の動作の間、プロセッサ404は、アプリケーション422の論理命令を起動するため、動作させるため、実行するため、解釈するため、またはそうでなければ行うために、バス402の使用を介してメインメモリ406にアクセスする。アプリケーション422の実行により、アプリケーションプロセス424において、処理機能が生成される。言い換えると、プロセス424は、コンピュータシステム400のプロセッサ404内で、またはプロセッサ404上で動作しているアプリケーション422の1または複数の部分を表す。
上記説明は、本開示の技術を具現化する例示的なシステム、方法、技術、命令、シーケンスおよび/またはコンピュータプログラムプロダクトを含む。しかしながら、説明された開示はこれらの具体的詳細なく実施され得ることが理解されよう。本開示において、開示される方法は、デバイスにより読み取り可能な命令またはソフトウェアのセットとして実施され得る。さらに、開示される方法におけるステップの特定の順序または階層は例示的な手法の例であることが理解されよう。設計上の優先性に基づいて、方法におけるステップの特定の順序または階層は、再編成され得るものの、開示される主題内に留まることが理解されよう。添付の方法の請求項は、例としての順序での様々なステップの要素を示しており、示される特定の順序または階層に限定されることを必ずしも意味しない。
結論 特許請求の範囲を含め、本明細書において使用されるように、「少なくともいくつか」という表現は、「1または複数」を意味し、1つだけという場合を含む。故に、例えば、「少なくともいくつかのサービス」という表現は、「1または複数のサービス」を意味し、1つのサービスの場合を含む。
特許請求の範囲を含め、本明細書において使用されるように、「に基づいて」という表現は、「に部分的に基づいて」または「に少なくとも部分的に基づいて」を意味し、排他的なものではない。故に、例えば、「ファクタXに基づいて」という表現は、「ファクタXに部分的に基づいて」または「ファクタXに少なくとも部分的に基づいて」を意味する。「のみ」という文言を用いて具体的に述べられていない限り、「Xに基づいて」という表現は、「Xのみに基づいて」を意味するものではない。
特許請求の範囲を含め、本明細書において使用されるように、「を使用して」という表現は、「を少なくとも使用して」を意味し、排他的なものではない。故に、例えば、「Xを使用して」という表現は、「少なくともXを使用して」を意味する。「のみ」という文言を用いて具体的に述べられない限り、「Xを使用して」という表現は、「Xのみを使用して」を意味するものではない。
一般に、特許請求の範囲を含め、本明細書において使用されるように、「のみ」という文言が表現中で具体的に使用されない限り、その表現に解釈されるべきではない。
特許請求の範囲を含め、本明細書において使用されるように、「別個」という表現は、「少なくとも部分的に別個」を意味する。具体的に述べられない限り、別個は完全に別個を意味するものではない。故に、例えば、「XはYとは別個である」という表現は、「Xは少なくとも部分的にYとは別個である」を意味し、「XはYとは完全に別個である」を意味するものではない。故に、特許請求の範囲を含め、本明細書において使用されるように、「XはYとは別個である」という表現は、Xは少なくともいくつかの点でYとは異なることを意味する。
特許請求の範囲を含め、本明細書において使用されるように、リストはアイテムを1つだけ含んでよく、そうでないと述べられない限り、多数のアイテムのリストが任意の特定のやり方で順序付けられる必要はない。リストは、複製のアイテムを含んでよい。例えば、本明細書において使用されるように、「CDNサービスのリスト」という表現は、1または複数のCDNサービスを含んでよい。
説明および特許請求の範囲における「第1」および「第2」という文言は、区別または識別するために使用されるものであって、連続的または数的限定を示すものではないことが理解されるべきである。同様に、(「(a)」、「(b)」等のような)文字または数的符号の使用は、区別および/または識別を助けるために使用されるものであって、いかなる連続的または数的限定もしくは順序も示すものではない。
具体的に示され、述べられない限り、いずれのフロー図においても、符号付けされたボックスのいずれによっても、順序は示唆されない。切り離された複数のボックスが図中に示されている場合、それらのボックスに関連付けられている動作は、完全に、または部分的に並列である場合を含め、任意の順序で実行されてよい。
現在のところ最も実際的かつ好ましいと思われる実施形態に関連して本発明を説明してきたものの、本発明は、開示される実施形態に限定されるべきでなく、それどころか、添付の特許請求の主旨および範囲内に含まれる様々な変更および同等の構成を網羅することが意図されているということが理解されるべきである。

Claims (16)

  1. コンテンツ配信ネットワーク(CDN)で動作可能な、コンピュータにより実施される方法であって、
    前記CDNにおけるノードにより、
    (A)コンテンツについてのリクエストに応答して、前記コンテンツがローカルにキャッシュされたかどうかを判断する段階と、
    (B)前記コンテンツがローカルにキャッシュされたと判断された場合には、
    (B)(1)前記コンテンツに関連付けられている現在のキャッシュポリシーを判断し、次に、
    (B)(2)前記コンテンツに関連付けられている前記現在のキャッシュポリシーに基づいて、ローカルにキャッシュされた前記コンテンツを供給することが許容可能かどうかを判断し、
    (B)(3)(B)(2)での前記判断に基づいて、
    (i)ローカルにキャッシュされた前記コンテンツを供給することが許容可能ではない場合、前記コンテンツの新たなバージョンを取得し、次に、前記コンテンツの前記新たなバージョンを供給し、
    (ii)ローカルにキャッシュされた前記コンテンツを供給することが許容可能である場合、ローカルにキャッシュされた前記コンテンツを供給する段階と
    を備える方法。
  2. (C)前記コンテンツがローカルにキャッシュされなかったと判断された場合には、(C)(1)前記コンテンツを取得し、次に、(C)(2)(C)(1)において取得した前記コンテンツを供給する段階
    をさらに備える、請求項1に記載の方法。
  3. 前記リクエストはHTTPリクエストを含み、前記コンテンツは1または複数のリソースを含む、請求項1または2に記載の方法。
  4. 前記現在のキャッシュポリシーは、前記ノードとは別個の位置から判断される、請求項1から3のいずれか一項に記載の方法。
  5. 前記位置はデータベースである、請求項4に記載の方法。
  6. 前記キャッシュポリシーは、前記CDN内でのコンテンツのキャッシングに関する、請求項1から5のいずれか一項に記載の方法。
  7. 前記キャッシュポリシーは、前記CDN外でのコンテンツのキャッシングにも関する、請求項6に記載の方法。
  8. バージョン識別子はキャッシングポリシーに関連付けられ、(B)(1)において前記現在のキャッシュポリシーを判断する前記段階は、(i)前記現在のキャッシュポリシーと関連付けられている第1バージョン識別子を、前記CDNにおける前記ノードでの前記コンテンツに関連付けられているキャッシュポリシーに関連付けられている第2バージョン識別子と比較し、(ii)前記第1バージョン識別子が前記第2バージョン識別子と同一である場合、前記ノードでの前記コンテンツと関連付けられている前記キャッシュポリシーを前記現在のキャッシュポリシーとして使用し、そうでなければ、前記ノードとは別個の位置から前記現在のキャッシュポリシーを取得する段階を有する、請求項1から7のいずれか一項に記載の方法。
  9. コンテンツ配信サービス(CDN)において動作可能なコンピュータに、
    (A)コンテンツについてのリクエストに応答して、前記コンテンツがローカルにキャッシュされたかどうかを判断する段階と、
    (B)前記コンテンツがローカルにキャッシュされたと判断された場合には、
    (B)(1)前記コンテンツに関連付けられている現在のキャッシュポリシーを判断し、次に、
    (B)(2)前記コンテンツに関連付けられている前記現在のキャッシュポリシーに基づいて、ローカルにキャッシュされた前記コンテンツを供給することが許容可能かどうかを判断し、
    (B)(3)(B)(2)での前記判断に基づいて、
    (i)ローカルにキャッシュされた前記コンテンツを供給することが許容可能ではない場合、前記コンテンツの新たなバージョンを取得し、次に、前記コンテンツの前記新たなバージョンを供給し、
    (ii)ローカルにキャッシュされた前記コンテンツを供給することが許容可能である場合、ローカルにキャッシュされた前記コンテンツを供給する段階と
    を実行させるためのプログラム。
  10. (C)前記コンテンツがローカルにキャッシュされなかったと判断された場合には、(C1)前記コンテンツを取得し、次に、(C2)(C)(1)において取得した前記コンテンツを供給する段階を前記コンピュータにさらに実行させる、請求項9に記載のプログラム。
  11. 前記リクエストはHTTPリクエストを含み、前記コンテンツは1または複数のリソースを含む、請求項9または10に記載のプログラム。
  12. 前記現在のキャッシュポリシーは、前記CDNにおけるノードとは別個の位置から判断される、請求項9から11のいずれか一項に記載のプログラム。
  13. 前記位置はデータベースである、請求項12に記載のプログラム。
  14. 前記キャッシュポリシーは、前記CDN内でのコンテンツのキャッシングに関する、請求項9から13のいずれか一項に記載のプログラム。
  15. 前記キャッシュポリシーは、前記CDN外でのコンテンツのキャッシングにも関する、請求項14に記載のプログラム。
  16. バージョン識別子はキャッシングポリシーに関連付けられ、(B)(1)において前記現在のキャッシュポリシーを判断する前記段階は、(i)前記現在のキャッシュポリシーと関連付けられている第1バージョン識別子を、前記CDNにおけるノードでの前記コンテンツに関連付けられているキャッシュポリシーに関連付けられている第2バージョン識別子と比較し、(ii)前記第1バージョン識別子が前記第2バージョン識別子と同一である場合、前記ノードでの前記コンテンツと関連付けられている前記キャッシュポリシーを前記現在のキャッシュポリシーとして使用し、そうでなければ、前記ノードとは別個の位置から前記現在のキャッシュポリシーを取得する段階を有する、請求項9から15のいずれか一項に記載のプログラム。
JP2017530734A 2014-12-15 2015-12-14 コンテンツ配信フレームワークにおけるキャッシング Active JP6699664B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/570,512 US9648127B2 (en) 2014-12-15 2014-12-15 Caching in a content delivery framework
US14/570,512 2014-12-15
PCT/US2015/065476 WO2016100171A1 (en) 2014-12-15 2015-12-14 Caching in a content delivery framework

Publications (3)

Publication Number Publication Date
JP2017539029A true JP2017539029A (ja) 2017-12-28
JP2017539029A5 JP2017539029A5 (ja) 2019-01-31
JP6699664B2 JP6699664B2 (ja) 2020-05-27

Family

ID=56112349

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017530734A Active JP6699664B2 (ja) 2014-12-15 2015-12-14 コンテンツ配信フレームワークにおけるキャッシング

Country Status (8)

Country Link
US (5) US9648127B2 (ja)
EP (1) EP3234815A4 (ja)
JP (1) JP6699664B2 (ja)
CN (1) CN107111637B (ja)
CA (1) CA2970526A1 (ja)
HK (1) HK1245434A1 (ja)
SG (1) SG11201704604UA (ja)
WO (1) WO2016100171A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9648127B2 (en) 2014-12-15 2017-05-09 Level 3 Communications, Llc Caching in a content delivery framework
CN106997351B (zh) * 2016-01-22 2021-03-02 斑马智行网络(香港)有限公司 一种资源缓存管理方法及系统和装置
US11323862B2 (en) * 2016-05-06 2022-05-03 Convida Wireless, Llc Traffic steering at the service layer
US20190327140A1 (en) * 2018-04-24 2019-10-24 Level 3 Communications, Llc Subscriber configuration ingestion in a content delivery network
TWI732291B (zh) * 2019-09-11 2021-07-01 中華電信股份有限公司 依據角色權限提供預載內容的系統及方法
CN111399769B (zh) * 2020-02-26 2021-01-26 武汉思普崚技术有限公司 一种mime格式上传文件的存储方法及装置
US10942629B1 (en) * 2020-10-16 2021-03-09 Laitek, Inc. Recall probability based data storage and retrieval
US11843682B1 (en) * 2022-08-31 2023-12-12 Adobe Inc. Prepopulating an edge server cache

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000181843A (ja) 1998-12-18 2000-06-30 Toshiba Corp 情報中継装置及び記憶媒体
US6986018B2 (en) * 2001-06-26 2006-01-10 Microsoft Corporation Method and apparatus for selecting cache and proxy policy
US7412535B2 (en) * 2001-12-19 2008-08-12 International Business Machines Corporation Method and system for caching fragments while avoiding parsing of pages that do not contain fragments
US7509393B2 (en) * 2001-12-19 2009-03-24 International Business Machines Corporation Method and system for caching role-specific fragments
US7426534B2 (en) * 2001-12-19 2008-09-16 International Business Machines Corporation Method and system for caching message fragments using an expansion attribute in a fragment link tag
US20030188021A1 (en) * 2001-12-19 2003-10-02 International Business Machines Corporation Method and system for processing multiple fragment requests in a single message
US7730154B2 (en) * 2001-12-19 2010-06-01 International Business Machines Corporation Method and system for fragment linking and fragment caching
US7587515B2 (en) * 2001-12-19 2009-09-08 International Business Machines Corporation Method and system for restrictive caching of user-specific fragments limited to a fragment cache closest to a user
US6965968B1 (en) 2003-02-27 2005-11-15 Finjan Software Ltd. Policy-based caching
AU2010201379B2 (en) * 2010-04-07 2012-02-23 Limelight Networks, Inc. System and method for delivery of content objects
CA2513016A1 (en) * 2005-07-22 2007-01-22 Research In Motion Limited A secure method of synchronizing cache contents of a mobile browser with a proxy server
US8161549B2 (en) * 2005-11-17 2012-04-17 Patrik Lahti Method for defending against denial-of-service attack on the IPV6 neighbor cache
WO2008027349A2 (en) * 2006-08-28 2008-03-06 Dan Gerrity Method and device for adaptive control
JP4293227B2 (ja) * 2006-11-14 2009-07-08 セイコーエプソン株式会社 電子回路、電子装置、その駆動方法、電気光学装置および電子機器
US7752395B1 (en) * 2007-02-28 2010-07-06 Network Appliance, Inc. Intelligent caching of data in a storage server victim cache
DE102007035186A1 (de) * 2007-07-27 2009-01-29 Siemens Ag Verfahren zur Übertragung von Daten in einem drahtlosen Funknetz
US20120209942A1 (en) 2008-10-28 2012-08-16 Cotendo, Inc. System combining a cdn reverse proxy and an edge forward proxy with secure connections
US20100122429A1 (en) * 2008-11-14 2010-05-20 International Automotive Components Group North America, Inc Three piece floor mat retention system
CN101741715B (zh) * 2008-11-20 2013-03-20 华为技术有限公司 发送消息的方法、接入路由节点设备和数据缓存系统
US9270700B2 (en) * 2008-12-12 2016-02-23 Microsoft Technology Licensing, Llc Security protocols for mobile operator networks
US8407723B2 (en) * 2009-10-08 2013-03-26 Tibco Software, Inc. JAVA virtual machine having integrated transaction management system and facility to query managed objects
US8627063B2 (en) * 2009-12-23 2014-01-07 Citrix Systems, Inc. Systems and methods for flash crowd control and batching OCSP requests via online certificate status protocol
US8463887B2 (en) * 2009-12-23 2013-06-11 Citrix Systems, Inc. Systems and methods for server surge protection in a multi-core system
US20110161294A1 (en) * 2009-12-30 2011-06-30 Sun Microsystems, Inc. Method for determining whether to dynamically replicate data
US8358771B1 (en) * 2010-03-24 2013-01-22 Jpmorgan Chase Bank, N.A. System and method for managing customer communications over communication channels
CN102316135A (zh) * 2010-07-02 2012-01-11 深圳市快播科技有限公司 网络点播方法和系统
US8838724B2 (en) * 2010-07-02 2014-09-16 Futurewei Technologies, Inc. Computation of caching policy based on content and network constraints
US9154387B2 (en) * 2011-01-30 2015-10-06 Blue Coat Systems, Inc. System and method for distributed data collection and heuristic refinement in a network intermediary device
WO2012116078A1 (en) * 2011-02-23 2012-08-30 Level 3 Communications, Llc Analytics management
US9160799B2 (en) * 2011-05-26 2015-10-13 Sonus Networks, Inc. Systems and methods for authorizing services in a telecommunications network
WO2012167106A1 (en) * 2011-06-01 2012-12-06 Interdigital Patent Holdings, Inc. Content delivery network interconnection (cdni) mechanism
CA2859163C (en) * 2011-12-14 2020-03-31 Level 3 Communications, Llc Content delivery network
US9450826B2 (en) * 2012-02-22 2016-09-20 Rooundarch Corporation Device connectivity framework
US20130254343A1 (en) 2012-03-22 2013-09-26 Akamai Technologies Inc. Server with message exchange accounting
KR101630275B1 (ko) * 2012-03-27 2016-06-14 에스케이텔레콤 주식회사 캐시 동기화 시스템, 그의 캐시 동기화 방법 및 장치
US8984166B2 (en) * 2012-04-05 2015-03-17 Cloudflare, Inc. Method and apparatus for reducing network resource transmission size using delta compression
US8812695B2 (en) * 2012-04-09 2014-08-19 Seven Networks, Inc. Method and system for management of a virtual network connection without heartbeat messages
US9779029B2 (en) * 2012-11-06 2017-10-03 Facebook, Inc. Cache replacement policy for data with strong temporal locality
US9756142B2 (en) * 2013-03-14 2017-09-05 The Regents Of The University Of California System and method for delivering video data from a server in a wireless network by caching the video data
US9614865B2 (en) * 2013-03-15 2017-04-04 Mcafee, Inc. Server-assisted anti-malware client
US9509596B2 (en) * 2013-06-07 2016-11-29 Fasly, Inc. Domain name system bypass in user applications
US9241044B2 (en) * 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes
US9686358B2 (en) * 2014-01-22 2017-06-20 Alcatel Lucent Devices and methods for network-coded and caching-aided content distribution
US20150333930A1 (en) * 2014-05-15 2015-11-19 Akamai Technologies, Inc. Dynamic service function chaining
US9678841B2 (en) * 2014-05-30 2017-06-13 Fastly, Inc. Communication continuation during content node failover
US9565227B1 (en) * 2014-06-16 2017-02-07 Teradici Corporation Composition control method for remote application delivery
US20160072186A1 (en) * 2014-09-07 2016-03-10 James Wang Hierarchical Phase Shift Apparatus for Array Antenna Weight Look Ahead, Elaboration, and Beam-splitting Methods
US9984166B2 (en) * 2014-10-10 2018-05-29 Salesforce.Com, Inc. Systems and methods of de-duplicating similar news feed items
US9648127B2 (en) 2014-12-15 2017-05-09 Level 3 Communications, Llc Caching in a content delivery framework
CN104748013B (zh) * 2015-04-02 2018-05-25 深圳市华星光电技术有限公司 背光模组及显示装置
US10417134B2 (en) * 2016-11-10 2019-09-17 Oracle International Corporation Cache memory architecture and policies for accelerating graph algorithms
US10705973B2 (en) * 2017-09-19 2020-07-07 International Business Machines Corporation Initializing a data structure for use in predicting table of contents pointer values

Also Published As

Publication number Publication date
US20240080373A1 (en) 2024-03-07
HK1245434A1 (zh) 2018-08-24
SG11201704604UA (en) 2017-07-28
US9648127B2 (en) 2017-05-09
CA2970526A1 (en) 2016-06-23
EP3234815A1 (en) 2017-10-25
US11425223B2 (en) 2022-08-23
CN107111637B (zh) 2021-07-23
EP3234815A4 (en) 2018-05-30
JP6699664B2 (ja) 2020-05-27
US20220407941A1 (en) 2022-12-22
US10701173B2 (en) 2020-06-30
CN107111637A (zh) 2017-08-29
US20170244804A1 (en) 2017-08-24
US20200322446A1 (en) 2020-10-08
US20160173634A1 (en) 2016-06-16
US11818229B2 (en) 2023-11-14
WO2016100171A1 (en) 2016-06-23

Similar Documents

Publication Publication Date Title
US11818229B2 (en) Caching in a content delivery framework
AU2021240176B2 (en) System, method and computer-readable storage medium for customizable event-triggered computation at edge locations
US20210075881A1 (en) Customizable event-triggered computation at edge locations
JP5638082B2 (ja) 権利者向けデータのキャッシュ管理法
CA2732540C (en) Methods for optimizing a web content proxy server and devices thereof
JP5192798B2 (ja) サービス提供システム、ゲートウェイ、およびサーバ
US8447831B1 (en) Incentive driven content delivery
US11575773B2 (en) Request processing in a content delivery framework
US20100325208A1 (en) Methods and apparatus to forward documents in a communication network
CA2765957C (en) Methods and apparatus to forward documents in a communication network
JP6219547B2 (ja) コンテンツ配信ネットワーク(cdn)における無効化
Watts et al. A geometric projection method for designing three‐dimensional open lattices with inverse homogenization
US9798785B2 (en) Apparatus and method for searching for address book information
JP2008293281A (ja) キャッシュ装置、サーバ、キャッシュシステム、キャッシュ方法、及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181213

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200203

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: 20200331

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200413

R150 Certificate of patent or registration of utility model

Ref document number: 6699664

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250