JP2006506738A - トランスコード可能なキャッシングプロキシおよびその方法 - Google Patents
トランスコード可能なキャッシングプロキシおよびその方法 Download PDFInfo
- Publication number
- JP2006506738A JP2006506738A JP2004553560A JP2004553560A JP2006506738A JP 2006506738 A JP2006506738 A JP 2006506738A JP 2004553560 A JP2004553560 A JP 2004553560A JP 2004553560 A JP2004553560 A JP 2004553560A JP 2006506738 A JP2006506738 A JP 2006506738A
- Authority
- JP
- Japan
- Prior art keywords
- version
- caching
- content
- caching proxy
- proxy
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000003139 buffering effect Effects 0.000 claims 2
- 238000004891 communication Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000004044 response Effects 0.000 description 8
- 230000006399 behavior Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17336—Handling of requests in head-ends
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/756—Media network packet handling adapting media to device capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/764—Media network packet handling at the destination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23113—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving housekeeping operations for stored content, e.g. prioritizing content for deletion because of storage space restrictions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Business, Economics & Management (AREA)
- Business, Economics & Management (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【解決手段】 キャッシングプロキシ(120)において、コンテンツソース(110)からコンテンツオブジェクトの第1のバージョンが受信される。コンテンツオブジェクトの第1のバージョンはキャッシングプロキシにおいてトランスコードされ、第2のバージョンが作成される。キャッシングプロキシにおいて第1のバージョンおよび第2のバージョンのうちの少なくとも一方をキャッシュするか否かが決定される。その決定は、キャッシング方法に従って行われ、その後、実施される。
Description
より具体的には、本発明の実施形態はキャッシングプロキシに関する。
コンテンツソースおよびクライアントは典型的には、互いからかなり離れて位置しており、その結果として多くの場合に、応答時間が遅くなり、帯域幅が狭くなり、ロスレートが高くなり、スケーラビリティを欠いていた。
応答時間、帯域幅およびロスレートは、多数のクライアントが、コンテンツソースから1つのオブジェクトを同時に要求しようとするときにも、大きく影響を及ぼされる可能性があった。
一般的に、コンテンツデリバリネットワークは、クライアントの近くにサーバ、さらに具体的にはキャッシングプロキシとも呼ばれるサーバを配置する。
コンテンツオブジェクトは各キャッシングプロキシにおいて複製され、キャッシュされることができる。
クライアントの近くにあるキャッシングプロキシ上にコンテンツをキャッシュすることは、応答時間が短くなる、帯域幅が広くなる、ロスレートが低くなる、スケーラビリティが改善される、ネットワーク(バックボーン)リソースのための要件が緩和されることを含む、数多くの改善に繋がってきた。
たとえば、ウエブページは一般的に、そのサイズが1メガバイトよりもはるかに小さい。
したがって、各キャッシングプロキシにおいて、この種のコンテンツを実際に複製することができる。
ウエブコンテンツの多数のインスタンスを、大量のメモリ資源を必要とすることなく、あるいは利用可能なメモリのかなりの部分を消費することなく、各キャッシングプロキシ上に記憶することができる。
キャッシュが大きい場合であっても、マルチメディアコンテンツの少数のアイテムを保持しただけで、一杯になってしまう可能性がある。
たとえば、DVD(デジタルビデオディスク)品質の映像は最大で、サイズが4.7ギガバイト(GB)および長さが2時間(MPEG(Moving Picture Expert Group)−2圧縮に基づく)に達する場合がある。
結果として、50GBキャッシュは、DVD品質の映像を約10個しか保持することができない。
したがって、マルチメディアデータの場合、クライアントの近くにあるキャッシングプロキシにおいて多数のDVD品質の映像を複製し、各映像のコピーを記憶することは実用的な解決策ではない。
非常に大きなメモリが必要とされるようになるか、あるいは少数の映像しか記憶することができないであろう。
一方、中央のソースあるいは限られた数のキャッシングプロキシのみにマルチメディアコンテンツの多数のアイテムを記憶するだけでは、先に記載し
た問題が再び生じる。
エンドユーザによって利用される多種多様なタイプのネットワーク接続に対応するために、種々のバージョンが存在する場合がある。
たとえば、各コンテンツオブジェクトが、ダイヤルアップ接続用のあるビットレートと、ブロードバンド接続用の別のビットレートとで符号化される場合がある。
さらに、現時点で利用されている種々のタイプのクライアント装置(たとえば、デスクトップ、ラップトップ、携帯情報端末、携帯電話など)によって提供される種々の能力に対応するために、種々のバージョンが存在する場合がある。
装置の種類が異なると通常は処理および表示能力が異なる。
たとえば、携帯情報端末はストリーミング型の映像を受信し、表示することはできるが、デスクトップの処理および表示能力は持たない。
したがって、携帯情報端末用に、その映像のビットレートが低く/解像度が低いバージョンが作成され、一方、デスクトップは、ビットレートが高く、かつ解像度が高い異なるバージョンを利用する。
一般的に、使用されている種々のタイプのクライアント装置および種々のタイプの接続に対応するために、典型的には各コンテンツオブジェクトの種々のバージョンが存在するであろう。
それゆえ、各キャッシングプロキシは、同じオブジェクトの種々のバージョンを記憶している可能性が高い。
またコンテンツソースにも、同じオブジェクトの種々のバージョンが存在する場合がある。
先に説明されたように、キャッシングプロキシにおいて記憶することは、コンテンツソースにおいて記憶するよりも優れたいくつかの利点を提供する。
しかしながら、いずれの場合でも、記憶空間が非効率的に利用されている。
本発明の実施形態はそのような改善を提供する。
キャッシングプロキシにおいて、コンテンツソースからコンテンツオブジェクトの第1のバージョンが受信される。
コンテンツオブジェクトの第1のバージョンはキャッシングプロキシにおいてトランスコードされ、第2のバージョンが作成される。
キャッシングプロキシにおいて第1のバージョンおよび第2のバージョンのうちの少なくとも一方をキャッシュするか否かが決定される。
その決定は、キャッシング方法に従って行われ、その後、実施される。
本発明はこれらの実施形態とともに説明されることになるが、本発明をこれらの実施形態に限定することは意図していないことは理解されよう。
それどころか、本発明は、添付の特許請求の範囲によって規定されるような、本発明の精神および範囲内に含まれる場合がある、代替形態、変更形態および同等形態を網羅することが意図されている。
さらに、本発明の以下の説明では、本発明を完全に理解してもらうために、数多くの具体的な細部が述べられる。
他の事例では、既知の方法、手順、構成要素および回路は、本発明の態様を不必要に曖昧にしないように詳細には説明されていない。
明瞭かつ簡潔にするために、以下の説明および例は時に、具体的には映像データを取り扱う。
しかしながら、本発明の実施形態は、映像データで用いることに限定されない。
システム100は図示されるもの以外の構成要素を含むことができることは理解されたい。
またシステム100は、図示される種々の構成要素を2つ以上含むこともできる。
これらの構成要素のそれぞれの機能は後に説明する。
これらの構成要素は、説明される機能以外の機能を実施することができることは理解されたい。
すなわち、本実施形態では、コンテンツソース110はキャッシングプロキシ120と通信し、キャッシングプロキシはさらに、通信チャネル125を介してクライアント装置130と通信する。
一般的には、キャッシングプロキシ120は典型的には、ネットワークあるいはシステム100の端に配置され、コンテンツソース110に対するトラフィックおよびコンテンツソース110からのトラフィックを低減するとともに、クライアント装置130によって認識される待ち時間も低減する。
後に明らかになるように、本発明の種々の実施形態によれば、キャッシングプロキシ120はトランスコーダの機能を組み込む。
したがって、キャッシングプロキシ120はトランスコーディングおよびキャッシングを実行する。
先に述べたように、実際には、キャッシングプロキシ120にアクセスする数多くのクライアント装置が存在する場合がある。
異種ネットワークでは、これらのクライアント装置はそれぞれ異なる属性およびプロファイルを有することができる。
これらの属性は、限定はしないが、種々のクライアント装置の表示、電力、通信および計算能力および特性を含む。
また通信は有線または無線、あるいは有線および無線の組み合わせを用いることができる。
一実施形態では、通信はワールド・ワイド・ウエブ(あるいはインターネット)上で行われる。
実際には、キャッシングプロキシ120の下流に数多くの通信チャネルが存在する場合がある。
異種ネットワークでは、これらの通信チャネル(通信チャネル125によって例示される)はそれぞれ種々の属性を有することができる。
たとえば、1つのチャネルが、別のチャネルよりも帯域幅が広い(データ転送速度が高い)という特徴を有することができる。
本実施形態では、キャッシングプロキシ120は、クライアントインターフェース210と、入力バッファ220と、トランスコーダ230と、キャッシングシステム240と、出力バッファ250と、サーバインターフェース260とを含む。
これらの要素は、図示および説明を明瞭にするために個別に描かれている。
しかしながら、これらの要素がキャッシングプロキシ120内に個別の実体として存在しない場合もあることは理解されたい。
たとえば、入力バッファ220、キャッシングシステム240および出力バッファ250は単一のメモリユニットにおいて具現される場合があり、トランスコーダ230は、ハードウエア、ファームウエア、あるいはおそくらキャッシングシステムおよびバッファと同じメモリユニット内のコンピュータ読取り可能命令として記憶されるソフトウエアにおいて具現される場合がある。
同様に、クライアントインターフェース210およびサーバインターフェース260は、個別の要素あるいは同じ要素内のソフトウエア、ファームウエアあるいはハードウエアとして具現される場合がある。
一般的に、本発明の種々の実施形態によれば、キャッシングプロキシ120は、図2の種々の要素によって提供される能力および機能を提供する。
さらに、キャッシングプロキシ120は、本明細書に説明するものに加えて、他の能力および機能を提供することができる。
一実施形態では、クライアントインターフェース210はHTTP(ハイパーテキスト転送プロトコル)クライアントとして、あるいはRTP/RTSP(リアルタイムプロトコル/リアルタイムストリーミングプロトコル)クライアントとして機能する。
ある程度同じようにして、サーバインターフェース260によって、キャッシングプロキシ120は、エンドユーザ(たとえば、クライアント装置130)に対するサーバとして機能できるようになる。
一実施形態では、サーバインターフェース260は、HTTPクライアントとして、あるいはRTP/RTSPクライアントとして機能する。
クライアントインターフェース210およびサーバインターフェース260とともに他のプロトコルを用いることができる。
コンテンツソース110からリンク(あるいはアップリンク)上でストリーミング型コンテンツが受信される。
そのコンテンツは圧縮(符号化)されても、されなくてもよい。
そのコンテンツは暗号化されても、されなくてもよい。
受信されたストリーム(具体的には、受信されたストリームのある部分)は、入力バッファ220にバッファリングされるか、キャッシングシステム240にキャッシュされるか、あるいはトランスコーダ230に直に送信される場合がある。
また受信されたストリームは、サーバインターフェース260を介して、リンク(あるいはダウンリンク)上でクライアント装置130に送信される場合もある。
またトランスコーダ230は、トランスコードするために、キャッシングシステム240からキャッシュされたオブジェクトを検索することもできる。
トランスコードされたビットは、トランスコーダ230からキャッシングシステム240に、あるいは出力バッファ250に、あるいはサーバインターフェース260に送信されることができる。
キャッシングプロキシ120は、コンテンツオブジェクトを、入力バッファ220、出力バッファ250、あるいはトランスコーダ230(トランスコードされたバージョンが生成されるとき)のいずれからキャッシュするかを決定することができる。
サーバインターフェース260は、出力バッファ250から、あるいはキャッシングシステム240から(直に、あるいは出力バッファ250を介して)、トランスコードされたビットを受信することもできる。
多数の異なるストリームをキャッシングプロキシ120によって同時に処理することができる。
同時に処理されるが、あるストリームはある処理段階にあり、一方、別のストリームは異なる段階にある場合がある。
高いビットレートから低いビットレートへのトランスコーディング、高い解像度から低い解像度へのトランスコーディング、あるいは両方の組み合わせを用いることができる。
種々のトランスコーディング方式のうちの任意のものをトランスコーダ230によって用いることができる。
一実施形態では、当該技術分野において知られている圧縮領域トランスコーディング方式が用いられる。
圧縮領域トランスコーディングでは、入力映像(典型的には符号化されている)の一部だけが復号化(圧縮解除)される。
動き情報を再利用しながら、圧縮領域においてレート適応化が実行される。
圧縮領域トランスコーディングは、映像が復号化され、トランスコードされ、その後、再符号化される他の方式に対して、トランスコーディング速度を大幅に改善することができる。
トランスコーディングビットレートがアップリンクあるいはダウンリンク帯域幅のいずれかの最小帯域幅以上である場合、トランスコーダ230によって、コンテンツソース110からクライアント装置130へのコンテンツオブジェクトの配信に遅れは生じないであろう。
キャッシングプロキシ120は、異種ネットワーク(すなわち、種々の属性を有するクライアント装置から構成され、さらに種々のタイプの通信チャネルから構成されるネットワーク)においてエンドユーザを満足させるために、コンテンツオブジェクトを異なるバージョン(あるいは異なる形態)にトランスコードすることができる。
クライアント装置130との接続のタイプ(たとえば速度)、およびクライアント装置130の属性に応じて、キャッシングプロキシ120は、コンテンツソース110あるいはキャッシングシステム240のいずれかから受信されるコンテンツオブジェクトを(必要に応じて)トランスコードし、コンテンツオブジェクトの適当なバージョンをクライアント装置130に配信することができる。
しかしながら、先に説明したように、いくつかの例では、トランスコーディングに関連する計算の負荷によって、コンテンツソース110からクライアント装置130へのコンテンツオブジェクトの配信に遅れは生じないであろう。
後に明らかになるように、これにより、キャッシングプロキシ120上で利用可能なキャッシュ空間をさらに効率的に使用できるようになる。
また、キャッシングプロキシ120によって提供されるトランスコーディング能力のために、各コンテンツオブジェクトの種々のバージョンをコンテンツソース110において記憶する必要はない。
代わりに、コンテンツソース110において1つのバージョン(一般的には、最も高いビットレートのもの)が記憶される。
こうして、コンテンツソース110において利用可能なメモリ空間も、さらに効率的に利用される。
ある特定のコンテンツオブジェクトの種々のバージョンが確かに可能であり、存在する場合がある。
キャッシングプロキシ120において、1つあるいは複数のどのバージョンがキャッシングされるべきであるかを判定するために、種々のキャッシング方式あるいは方法を用いることができる。
キャッシングプロキシ120は、使用中のキャッシング方式に従って、ある特定のバージョンをキャッシングしないものと判定することができることに留意されたい。
また、キャッシングプロキシ120は、あるコンテンツオブジェクトのあるバージョンがコンテンツソース110から検索されている間に、アップリンクにおいてパケットロスがあったことを確認することもできるので、たとえば、映像品質に影響を及ぼすほどパケットロスが大きい場合には、そのバージョンをキャッシングしないものと判定することができる。
逆に、バージョンXはバージョンYのトランスコードバージョンと呼ぶことができる。
ビデオトランスコーディングでは、ビットレートが高いバージョンを、ビットレートが低いバージョンにトランスコードすることができる。
たとえば、64Kbps(キロビット/秒)のビットレートの映像を、128Kbpsのビットレートの同じ映像からトランスコードすることができる。
しかしながら、トランスコードされたバージョンは、トランスコード可能なバージョンに対して、いくらか忠実度を失う場合がある。
図2のキャッシングプロキシ120は、1〜N−1個の忠実度を失ったトランスコードされたバージョンを生成することができる。
ただしNは可能なバージョンの総数である。
ビデオトランスコーディングの場合、この忠実度損失は、特にビットレート低下が解像度低下に結び付けられるときには、無視できるものと考えられる。
たとえば、1Mbps(メガビット/秒)においてCIF(一般交換形式)解像度(352×288)のビデオクリップがQCIF(クォータCIF、176×144)の解像度の能力を有する装置に配信されることになるとき、解像度の低下によって、ビットレートが約4分の1に低下するだけである。
前者の場合、クライアント装置130の能力および接続のタイプを知っているユーザが、コンテンツオブジェクトのある特定のバージョンを(たとえばメニューから)選択することができる。
後者の場合、キャッシングプロキシ120が、クライアント装置130の接続のタイプおよび能力に対応するバージョンを選択することができる。
ただし、B1>B2>...BNである。
ビットレートBJのバージョンがクライアント装置130によって要求されるとき、種々のタイプの応答が可能である。
第1のタイプの応答では、バージョンBJは、キャッシングプロキシ120のキャッシングシステム240から入手できる場合がある。
すなわちバージョンBJはコンテンツソース110から予め受信されている。
別法では、BJのトランスコード可能なバージョンがコンテンツソース110から受信されている場合があり、そのトランスコード可能なバージョンはバージョンBJにトランスコードされ、その後、バージョンBJがキャッシングシステム240にキャッシングされた。
いずれの場合でも、バージョンBJはキャッシングプロキシ120から入手可能である。
あるコンテンツオブジェクトの要求されたバージョンがキャッシングシステム240内に存在する場合は、本明細書において正確なヒットと呼ばれる。
しかしながら、トランスコード可能なバージョン(たとえば、BJよりも高いビットレートを有するバージョンBI)をキャッシングシステム240から入手することができる。
すなわち、バージョンBIはコンテンツソース110から予め受信されている。
別法では、BIのトランスコード可能なバージョンがコンテンツソース110から受信されている場合があり、そのトランスコード可能なバージョンはバージョンBIにトランスコードされ、その後、バージョンBIがキャッシングシステム240にキャッシュされた。
いずれも場合でも、バージョンBIはキャッシングプロキシ120から入手することができる。
したがって、キャッシングプロキシ120は、コンテンツソース110からバージョンBJを受信する(取り込む)代わりに、バージョンBIをバージョンBJにトランスコードすることができる。
要求されたバージョンがキャッシングシステム240内に存在しないが、トランスコード可能なバージョンが存在する場合、それは本明細書においてトランスコードヒットと呼ばれる。
この場合は、本明細書においてミスと呼ばれる。
この場合、要求されたバージョンあるいは要求されたバージョンのトランスコード可能なバージョンがコンテンツソース110から検索される。
キャッシングプロキシ120はトランスコーディング機能を提供するので、コンテンツソース110は、コンテンツオブジェクトの単一のビットレートバージョン(複数のビットレートが低いバージョンにトランスコードすることができるバージョンを提供するために、最も可能性が高いのは、ビットレートが高いバージョンである)のみを記憶することができる。
一実施形態では、各コンテンツオブジェクトの1つのバージョンのみをキャッシングシステム240に記憶することができるキャッシング方法が用いられる。
別の実施形態では、キャッシングシステム240に各コンテンツオブジェクトの多数のバージョンを記憶することができるキャッシング方法が用いられる。
あるオブジェクトの1つのバージョンのみがキャッシュされるキャッシング方法を最初に説明し、あるオブジェクトの多数のバージョンを記憶するためのキャッシング方法をさらに後に説明する。
しかしながら、そのようなキャッシング方法の難問の1つは、オブジェクトのどのバージョンがキャッシュされるべきであるかを決定することである。
いくつかの例では、キャッシングシステム240に最もビットレートが高いバージョンをキャッシュすることが望ましいかもしれないが、これは常に望ましいとは限らないかもしれない。
最もビットレートが高いバージョンをキャッシュする結果として、より頻繁にトランスコードする可能性が高くなるであろう。
また、最もビットレートが高いバージョンをキャッシュすることは、より多くのメモリを消費することになるので、キャッシングシステム240を最も効率的に使用することにならない場合もある。
アクセス記録は、キャッシュされたバージョンに関連する履歴を記録するために用いられる。
たとえば、アクセス記録は、ある特定のバージョンが要求された各時刻を示すタイムスタンプなどを含むことができる。
アクセス記録は、ある特定のバージョンが何回要求されたかを示す情報も含むことができる。
本実施形態のキャッシング方法によれば、バージョンBKがキャッシングシステム240から削除され、バージョンBJがコンテンツソース110から受信され、バージョンBJがキャッシングシステム240にキャッシュされる(必ずしもその順序ではない)。
こうして、本実施形態では、ミスの場合に、キャッシングシステム240から、ビットレートが低いバージョンが除去され、ビットレートが高いバージョンで置き換えられる。
本実施形態では、キャッシングプロキシ120は、キャッシュされたバージョンBJを適当なビットレートBKにトランスコードするであろう。
さらに、キャッシングプロキシ120は、バージョンBJあるいはBKのいずれがキャッシュされるかを決定する。
別の実施形態では、キャッシングプロキシ120は、キャッシングシステム240からトランスコード可能なバージョンBJを除去し、トランスコードされたバージョンBKをキャッシュする。
多数のバージョンをキャッシュすることにより、正確なヒットの可能性が高くなるので、トランスコーディングの量を低減することができる。
また、ある特定のコンテンツオブジェクトの複数の異なる形態(バージョン)へのアクセスの局時性が高い場合には、多数のバージョンをキャッシュすることによって、キャッシング効率も高めることができる。
たとえば、多種多様なタイプのクライアント装置(異なる属性を有する)から、相対的に短い時間の間に、ある特定のオブジェクトを得るために相対的に多数の要求を受信する場合がある。
そのような状況では、そのオブジェクトの多数のバージョンがキャッシングシステム240内に存在することが望ましいであろう。
本実施形態では、トランスコードヒットの場合に、キャッシングプロキシ120はトランスコード可能なバージョンを要求されたバージョンにトランスコードし、キャッシングシステム240にトランスコードされたバージョンを記憶する。
正確なヒットは、先に説明したように取り扱われる。
すなわち、要求されたオブジェクトバージョンのためのアクセス記録が更新され、そのオブジェクトバージョンがキャッシングシステム240に保持される。
たとえば、キャッシングプロキシ120と通信するユーザが類似のネットワーク能力を有するとき、1つのみのオブジェクトバージョンがキャッシュされるキャッシング方法は、多数のオブジェクトバージョンがキャッシュされる方法よりも良好な性能を提供することができる。
クライアントによって主にどの接続帯域幅が用いられるかがわかっているキャッシングプロキシは、その帯域幅に相当するビットレートに適したコンテンツオブジェクトのバージョンのみをキャッシュすることができる。
一方、キャッシングプロキシ120が異種ネットワーク(種々のクライアント装置および接続タイプが用いられる)に接続され、かつアクセス行動が強い局時性を示す場合には、多数のオブジェクトバージョンを記憶することによって、オブジェクトの1つのバージョンが記憶されるキャッシング方法よりも結果として性能を高めることができる。
さらに、コンテンツオブジェクトを予め取り込んでおくことによって、あるいはプレフィックスキャッシングを導入することによって(その場合には、待ち時間を少なくするために、オブジェクトの最初の部分が記憶される)、キャッシング方法の有効性を高めることができる。
たとえば、ユーザの行動に応じてリアルタイムに、別のキャッシング方法よりも優れたキャッシング方法を選択することができる。
その後、アクセス行動が監視される。
アクセス行動が変化する場合に、たとえば、上記の要因に基づいて、キャッシングプロキシ120によって異なるキャッシング方法が選択される。
この場合には、当該技術分野において知られている種々のキャッシュ置換え方式のうちの任意のものを用いることができる。
これらのキャッシュ置換え方式は、最長未使用時間(LRU)方式、最小使用頻度(LFU)方式、LRU−K方式、貪欲双対(GD:Greedy Dual)方式などを含む。
流れ図300の具体的なステップが開示されるが、そのようなステップは例示である。
すなわち、本発明の実施形態は、種々の他のステップ、あるいは流れ図300に記載されるステップの変形を実行するためにも適している。
流れ図300のステップは、提供されるのとは異なる順序で実行される場合があること、および流れ図300のステップは全て実行されるとは限らないことは理解されたい。
流れ図300によって説明される方法の全て、あるいは一部を、たとえば、コンピュータシステムあるいは類似の装置のコンピュータ利用可能媒体内に常駐するコンピュータ読取り可能およびコンピュータ実行可能命令を用いて実施することができる。
一般的には、流れ図300は、図1および図2のキャッシングプロキシ120のような装置によって実施される。
またキャッシングプロキシは、クライアント装置の属性、およびキャッシングプロキシとクライアント装置との間の接続のタイプも受信するか、あるいは別の方法で知る。
その結果として、キャッシングプロキシは、クライアント装置に送信するためのコンテンツオブジェクトのバージョンを選択することができる。
別法では、クライアント装置からの要求によって、コンテンツオブジェクトのバージョンが特定される場合もある。
ステップ310において特定されたオブジェクトバージョンがキャッシュされている場合には、クライアント装置に送信することができる(ステップ360)。
そうでない場合には、流れ図300はステップ330に進む。
オプションでは、キャッシングプロキシによってクライアント装置に送信されるのに応じて、オブジェクトバージョンの一部をバッファリングすることができる(たとえば図2の出力バッファ250)。
ステップ310において特定されたオブジェクトバージョンのトランスコード可能なバージョンがキャッシュされている場合には、それをトランスコードし(ステップ350)、その後、クライアント装置に送信する(ステップ360)ことができる。
そうでない場合には、流れ図300はステップ340に進む。
コンテンツソースによってどのバージョンが提供されるべきかに関する決定は、たとえばアクセス行動に基づいて、キャッシングプロキシが行うことができる。
オプションでは、コンテンツソースから受信されるコンテンツオブジェクトの一部を、キャッシングプロキシによって受信されるのに応じてバッファリングすることができる(たとえば、図2の入力バッファ220)。
別法では、そのオブジェクトのトランスコード可能なバージョンが受信された場合には、トランスコードして(ステップ350)、その後、クライアント装置に送信することができる(ステップ360)。
流れ図400において具体的なステップが開示されるが、そのようなステップは例示である。
すなわち、本発明の実施形態は、種々の他のステップ、あるいは流れ図400に記載されるステップの変形を実行するためにも適している。
流れ図400のステップは、提供されるのとは異なる順序で実行される場合があること、および流れ図400のステップは全て実行されるとは限らないことは理解されたい。
流れ図400によって説明される方法の全て、あるいは一部を、たとえば、コンピュータシステムあるいは類似の装置のコンピュータ利用可能媒体内に常駐するコンピュータ読取り可能およびコンピュータ実行可能命令を用いて実施することができる。
一般的には、流れ図400は、図1および図2のキャッシングプロキシ120のような装置によって実施される。
すなわち、ステップ340では、コンテンツソースから、コンテンツオブジェクトの第1のバージョンがキャッシングプロキシにおいて受信される。
ここでは、第1のバージョンは、第2のオブジェクトバージョンのトランスコード可能なバージョンである。
本明細書において先に記載したように、第2のバージョンは、クライアント装置に提供されることになるバージョンとして特定される。
ステップ350では、キャッシングプロキシによって第1のバージョンがトランスコードされて、第2のバージョンが生成される。
この決定を行うために、キャッシングプロキシによって、先に記載したような種々のキャッシング方法が用いられる場合がある。
実施されるキャッシング方法に応じて、その決定によって、第1のバージョンのみがキャッシュされるか、第2のバージョンのみがキャッシュされるか、第1および第2の両方のバージョンがキャッシュされるか、あるいは第1および第2のバージョンのいずれもキャッシングされない場合がある。
一実施形態では、アクセス行動のような要因に応じて、既に実施されているキャッシング方法とは異なる第2のキャッシング方法に切り替えることができる。
ステップ380では、ステップ370においてなされた決定がキャッシングプロキシによって実施される。
したがって、キャッシングプロキシ上の利用可能なキャッシュ空間がさらに効率的に利用される。
また、コンテンツソースに対して行われる必要がある要求の数も低減され、コンテンツソースの負荷が小さくなり、利用可能な帯域幅がさらに効率的に利用される。
これを言い換えると、キャッシングプロキシおよびコンテンツソースの性能が改善され、同じくクライアント装置における遅れが小さくなる。
さらに、トランスコーディングをエンドユーザ(たとえばクライアント装置)の近くで行うことができるので、クライアントとローカル装置(たとえばキャッシングプロキシ)との間のやりとりが改善される。
これらの実施形態によれば、キャッシングプロキシにトランスコーディング能力を追加することにより、クライアント装置およびネットワーク接続が異種であっても柔軟に対処される。
コンテンツソースは、必要に応じてトランスコードすることができるコンテンツオブジェクトの単一の「マスター」コピーを生成するように選択することができ、コンテンツ作成者を解放してコンテンツの作成に集中できるようにする。
本発明は特定の実施形態において説明されてきたが、本発明はそのような実施形態に限定されるものと解釈されるべきではなく、むしろ添付の特許請求の範囲に従って解釈されるべきであることは理解されたい。
120・・・キャッシングプロキシ,
130・・・クライアント装置,
Claims (10)
- コンテンツを配信する方法(400)であって、
キャッシングプロキシにおいて、コンテンツソースからコンテンツオブジェクトの第1のバージョンを受信することと(340)、
前記キャッシングプロキシにおいて前記第1のバージョンをトランスコードし、前記コンテンツオブジェクトの第2のバージョンを作成することと(350)、
前記キャッシングプロキシにおいて前記第1のバージョンおよび前記第2のバージョンのうちの少なくとも一方をキャッシュするか否かを決定することであって、第1のキャッシング方法に従って行われる、該決定することと
前記決定を実施することと(380)
を含む方法。 - 前記キャッシングプロキシにおいて前記第1のバージョンをキャッシュすること(370)と、
クライアント装置から前記コンテンツオブジェクトの要求を受信すること(310)であって、該クライアント装置は、前記第1のバージョンからトランスコード可能である、前記コンテンツオブジェクトのバージョンに対応する属性を有することと、
前記属性に従って、前記第1のバージョンをトランスコードすること(350)と
を含む請求項1に記載の方法。 - 前記キャッシングプロキシにおいて、前記第1のバージョンをキャッシュすることと(370)、
クライアント装置から前記コンテンツオブジェクトの要求を受信すること(310)であって、該クライアント装置は、前記第1のバージョンからトランスコードすることができない前記コンテンツオブジェクトのバージョンに対応する属性を有することと、
前記属性に対応する前記コンテンツオブジェクトのバージョンを、前記コンテンツソースから検索することと(340)
を含む請求項1に記載の方法。 - 前記キャッシングプロキシにおいて、前記第2のバージョンをキャッシュすること(380)
を含む請求項1に記載の方法。 - クライアント装置から前記コンテンツオブジェクトの要求を受信すること(310)であって、前記クライアント装置は、前記第2のバージョンからトランスコード可能である前記コンテンツオブジェクトのバージョンに対応する属性を有することと、
前記属性に従って、前記第2のバージョンをトランスコードすることと(350)
を含む請求項4に記載の方法。 - 前記キャッシングプロキシにおいて、前記第1のバージョンおよび前記第2のバージョンの両方をキャッシュすること(380)
を含む請求項1に記載の方法。 - 前記コンテンツオブジェクトは、
ビデオデータ
を含む
請求項1に記載の方法。 - 前記第1のキャッシング方法とは異なる第2のキャッシング方法を選択すること(370)
を含む請求項1に記載の方法。 - 前記キャッシングプロキシにおいて、前記トランスコードする前に、前記コンテンツオブジェクトの前記第1のバージョンの一部をバッファリングすること(340)
を含む請求項1に記載の方法。 - 前記キャッシングプロキシにおいて、前記トランスコードに続いて、前記コンテンツオブジェクトの前記第2のバージョンの一部をバッファリングすること(320)
を含む請求項1に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/300,246 US20040098463A1 (en) | 2002-11-19 | 2002-11-19 | Transcoding-enabled caching proxy and method thereof |
PCT/US2003/035791 WO2004046968A2 (en) | 2002-11-19 | 2003-11-07 | Transcoding-enabled caching proxy and method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006506738A true JP2006506738A (ja) | 2006-02-23 |
Family
ID=32297878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004553560A Pending JP2006506738A (ja) | 2002-11-19 | 2003-11-07 | トランスコード可能なキャッシングプロキシおよびその方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20040098463A1 (ja) |
EP (1) | EP1581891A2 (ja) |
JP (1) | JP2006506738A (ja) |
AU (1) | AU2003295446A1 (ja) |
WO (1) | WO2004046968A2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010273298A (ja) * | 2009-05-25 | 2010-12-02 | Broad Earth Inc | コンテンツ配信システム、配信制御装置及び配信制御プログラム |
WO2011024949A1 (ja) * | 2009-08-31 | 2011-03-03 | 日本電気株式会社 | コンテンツ配信装置、コンテンツ配信方法、およびプログラム |
JP2012501493A (ja) * | 2008-08-29 | 2012-01-19 | アリババ・グループ・ホールディング・リミテッド | 画像処理方法、画像処理装置および画像処理システム |
KR101490516B1 (ko) * | 2013-08-19 | 2015-02-05 | 주식회사 솔박스 | 객체 및 속성 정보를 이용한 컨텐츠 제공 방법 및 이를 이용한 http 프록시 서버 |
JP7477251B2 (ja) | 2019-09-24 | 2024-05-01 | インターナショナル・ビジネス・マシーンズ・コーポレーション | シングル・ページ・アプリケーションのキャッシャビリティの改善方法、システム、プログラム |
Families Citing this family (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040225728A1 (en) * | 2003-05-05 | 2004-11-11 | Huggins Guy Dwayne | Network and communications system for streaming media applications |
TWI269598B (en) * | 2003-08-22 | 2006-12-21 | Sk Telecom Co Ltd | Method and system for transmitting multimedia message transmitted from transmitting mobile station of higher version to receiving mobile station of lower version |
US7574514B2 (en) * | 2003-09-30 | 2009-08-11 | Sharp Laboratories Of America, Inc. | Systems and methods for identifying original streams of media content |
US7251649B2 (en) * | 2003-10-31 | 2007-07-31 | Hewlett-Packard Development Company, L.P. | Method for prioritizing content |
US7590704B2 (en) * | 2004-01-20 | 2009-09-15 | Microsoft Corporation | Systems and methods for processing dynamic content |
EP2249529B1 (en) * | 2004-03-23 | 2019-01-16 | NDS Limited | Optimally adapting multimedia content for mobile subscriber device playback |
US7650432B2 (en) * | 2004-05-20 | 2010-01-19 | Bea Systems, Inc. | Occasionally-connected application server |
US20060031264A1 (en) * | 2004-05-20 | 2006-02-09 | Bea Systems, Inc. | Synchronization protocol for occasionally-connected application server |
US7899492B2 (en) | 2004-07-16 | 2011-03-01 | Sellerbid, Inc. | Methods, systems and apparatus for displaying the multimedia information from wireless communication networks |
US7957733B2 (en) | 2004-07-16 | 2011-06-07 | Sellerbid, Inc. | Method and apparatus for multimedia communications with different user terminals |
US20140071818A1 (en) | 2004-07-16 | 2014-03-13 | Virginia Innovation Sciences, Inc. | Method and system for efficient communication |
US20060174314A1 (en) * | 2004-07-21 | 2006-08-03 | Jacobs Paul E | Methods and apparatus for hybrid multimedia presentations |
US7644358B2 (en) * | 2004-11-01 | 2010-01-05 | Sap Ag | Usability of a portal application |
US7711799B2 (en) * | 2004-11-22 | 2010-05-04 | Alcatel-Lucent Usa Inc. | Method and apparatus for pre-packetized caching for network servers |
US8218439B2 (en) * | 2004-11-24 | 2012-07-10 | Sharp Laboratories Of America, Inc. | Method and apparatus for adaptive buffering |
US20060167956A1 (en) * | 2005-01-27 | 2006-07-27 | Realnetworks, Inc. | Media content transfer method and apparatus (aka shadow cache) |
US8438297B1 (en) | 2005-01-31 | 2013-05-07 | At&T Intellectual Property Ii, L.P. | Method and system for supplying media over communication networks |
US7937753B2 (en) * | 2005-03-25 | 2011-05-03 | Microsoft Corporation | Method and apparatus for distributed information management |
US7644108B1 (en) | 2005-09-15 | 2010-01-05 | Juniper Networks, Inc. | Network acceleration device cache supporting multiple historical versions of content |
US7979509B1 (en) | 2005-09-15 | 2011-07-12 | Juniper Networks, Inc. | Clustered network acceleration devices having shared cache |
US7676554B1 (en) | 2005-09-15 | 2010-03-09 | Juniper Networks, Inc. | Network acceleration device having persistent in-memory cache |
US20070086431A1 (en) * | 2005-10-13 | 2007-04-19 | Abu-Amara Hosame H | Privacy proxy of a digital security system for distributing media content to a local area network |
US8612619B2 (en) | 2006-03-31 | 2013-12-17 | Alcatel Lucent | Method and apparatus for improved multicast streaming in wireless networks |
KR100754431B1 (ko) * | 2006-04-10 | 2007-08-31 | 삼성전자주식회사 | Dlna 시스템에서 dmr의 처리용량에 따른 컨텐츠변환방법 |
US20090210631A1 (en) | 2006-09-22 | 2009-08-20 | Bea Systems, Inc. | Mobile application cache system |
US7865585B2 (en) * | 2007-03-12 | 2011-01-04 | Citrix Systems, Inc. | Systems and methods for providing dynamic ad hoc proxy-cache hierarchies |
US7827237B2 (en) * | 2007-03-12 | 2010-11-02 | Citrix Systems, Inc. | Systems and methods for identifying long matches of data in a compression history |
US8255570B2 (en) * | 2007-03-12 | 2012-08-28 | Citrix Systems, Inc. | Systems and methods of compression history expiration and synchronization |
US7532134B2 (en) * | 2007-03-12 | 2009-05-12 | Citrix Systems, Inc. | Systems and methods for sharing compression histories between multiple devices |
US7619545B2 (en) * | 2007-03-12 | 2009-11-17 | Citrix Systems, Inc. | Systems and methods of using application and protocol specific parsing for compression |
US7460038B2 (en) * | 2007-03-12 | 2008-12-02 | Citrix Systems, Inc. | Systems and methods of clustered sharing of compression histories |
US9819984B1 (en) | 2007-03-26 | 2017-11-14 | CSC Holdings, LLC | Digital video recording with remote storage |
KR100870617B1 (ko) | 2007-10-22 | 2008-11-25 | 에스케이 텔레콤주식회사 | 실시간 트랜스코딩 장치 및 그의 운용 방법 |
US8762553B2 (en) * | 2008-01-11 | 2014-06-24 | Telefonaktiebolaget L M Ericsson (Publ) | Message handling in an IP multimedia subsystem |
WO2012029248A1 (ja) * | 2010-09-02 | 2012-03-08 | 日本電気株式会社 | データ転送システム |
US9002826B2 (en) | 2010-10-27 | 2015-04-07 | Qualcomm Incorporated | Media file caching for an electronic device to conserve resources |
US8782165B2 (en) | 2011-01-26 | 2014-07-15 | Openwave Mobility, Inc. | Method and transcoding proxy for transcoding a media stream that is delivered to an end-user device over a communications network |
JP5720787B2 (ja) | 2011-07-05 | 2015-05-20 | 日本電気株式会社 | コンテンツ配信システム、キャッシュサーバおよびコンテンツ配信方法 |
US8661479B2 (en) | 2011-09-19 | 2014-02-25 | International Business Machines Corporation | Caching large objects with multiple, unknown, and varying anchor points at an intermediary proxy device |
US9519453B2 (en) | 2011-09-21 | 2016-12-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods, devices and computer programs for transmitting or for receiving and playing media streams |
US9641637B1 (en) * | 2011-09-27 | 2017-05-02 | Amazon Technologies, Inc. | Network resource optimization |
US9330188B1 (en) | 2011-12-22 | 2016-05-03 | Amazon Technologies, Inc. | Shared browsing sessions |
JP5961850B2 (ja) | 2012-07-18 | 2016-08-02 | オペラ ソフトウェア アイルランド リミテッドOpera Software Ireland Limited | ジャストインタイムの分散型ビデオキャッシュ |
US9924164B2 (en) * | 2013-01-03 | 2018-03-20 | Disney Enterprises, Inc. | Efficient re-transcoding of key-frame-aligned unencrypted assets |
WO2014123527A1 (en) * | 2013-02-07 | 2014-08-14 | Nokia Siemens Networks Oy | Local media loading adaptation |
US8869218B2 (en) * | 2013-03-15 | 2014-10-21 | Wowza Media Systems, LLC | On the fly transcoding of video on demand content for adaptive streaming |
US10152463B1 (en) | 2013-06-13 | 2018-12-11 | Amazon Technologies, Inc. | System for profiling page browsing interactions |
US9578137B1 (en) | 2013-06-13 | 2017-02-21 | Amazon Technologies, Inc. | System for enhancing script execution performance |
EP2819367A1 (en) * | 2013-06-28 | 2014-12-31 | Thomson Licensing | Method for retrieving, by a client terminal, a content part of a multimedia content |
US20150006621A1 (en) * | 2013-07-01 | 2015-01-01 | Futurewei Technologies, Inc. | Adaptive Video Streaming for Information Centric Networks |
US9800822B2 (en) * | 2013-07-22 | 2017-10-24 | Qualcomm Incorporated | Method and apparatus for resource utilization in a source device for wireless display |
CA2878754A1 (en) * | 2014-01-19 | 2016-06-19 | Fabrix Tv Ltd. | Methods and systems of storage level video fragment management |
US20150271072A1 (en) * | 2014-03-24 | 2015-09-24 | Cisco Technology, Inc. | Method and apparatus for rate controlled content streaming from cache |
WO2017036568A1 (en) * | 2015-09-04 | 2017-03-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Improved cloud dvr storage |
US10904329B1 (en) * | 2016-12-30 | 2021-01-26 | CSC Holdings, LLC | Virtualized transcoder |
US11146608B2 (en) * | 2017-07-20 | 2021-10-12 | Disney Enterprises, Inc. | Frame-accurate video seeking via web browsers |
US10452563B1 (en) | 2018-05-07 | 2019-10-22 | Akamai Technologies, Inc. | Cache eviction scheme for acceptable substitutes in online media |
US11284165B1 (en) | 2021-02-26 | 2022-03-22 | CSC Holdings, LLC | Copyright compliant trick playback modes in a service provider network |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11110186A (ja) * | 1997-10-02 | 1999-04-23 | Nippon Telegr & Teleph Corp <Ntt> | ブラウザシステム、音声プロキシサーバ、リンク項目の読み上げ方法及びリンク項目の読み上げプログラムを格納した記憶媒体 |
JP2000090001A (ja) * | 1998-08-05 | 2000-03-31 | Spyglass Inc | 変換設定を使用した電子デ―タの変換方法およびシステム |
JP2000092424A (ja) * | 1998-06-26 | 2000-03-31 | Hewlett Packard Co <Hp> | イメ―ジサ―バ |
JP2000358230A (ja) * | 1999-06-16 | 2000-12-26 | Toshiba Corp | ビデオサーバおよびビデオオンデマンドシステム |
JP2001069485A (ja) * | 1999-08-31 | 2001-03-16 | Oki Electric Ind Co Ltd | インターネット経由のビデオオンデマンドシステム用プロキシ |
JP2001127790A (ja) * | 1999-11-01 | 2001-05-11 | Matsushita Electric Ind Co Ltd | 情報伝送方法 |
JP2001256098A (ja) * | 2000-03-09 | 2001-09-21 | Hitachi Ltd | プロキシサーバにおけるキャッシの制御方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5918013A (en) * | 1996-06-03 | 1999-06-29 | Webtv Networks, Inc. | Method of transcoding documents in a network environment using a proxy server |
US6311215B1 (en) * | 1997-03-25 | 2001-10-30 | Intel Corporation | System for dynamic determination of client communications capabilities |
US6421733B1 (en) * | 1997-03-25 | 2002-07-16 | Intel Corporation | System for dynamically transcoding data transmitted between computers |
US6345303B1 (en) * | 1997-03-25 | 2002-02-05 | Intel Corporation | Network proxy capable of dynamically selecting a destination device for servicing a client request |
US6563517B1 (en) * | 1998-10-02 | 2003-05-13 | International Business Machines Corp. | Automatic data quality adjustment to reduce response time in browsing |
US6345279B1 (en) * | 1999-04-23 | 2002-02-05 | International Business Machines Corporation | Methods and apparatus for adapting multimedia content for client devices |
EP1126716A1 (en) * | 2000-02-18 | 2001-08-22 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for controlling a processing of video data |
US7565450B2 (en) * | 2000-03-16 | 2009-07-21 | Adara Networks Inc. | System and method for using a mapping between client addresses and addresses of caches to support content delivery |
EP1346289A1 (en) * | 2000-11-30 | 2003-09-24 | Appfluent Technology, Inc. | System and method for delivering dynamic content |
US6407680B1 (en) * | 2000-12-22 | 2002-06-18 | Generic Media, Inc. | Distributed on-demand media transcoding system and method |
US20030028643A1 (en) * | 2001-03-13 | 2003-02-06 | Dilithium Networks, Inc. | Method and apparatus for transcoding video and speech signals |
US7099873B2 (en) * | 2002-05-29 | 2006-08-29 | International Business Machines Corporation | Content transcoding in a content distribution network |
-
2002
- 2002-11-19 US US10/300,246 patent/US20040098463A1/en not_active Abandoned
-
2003
- 2003-11-07 JP JP2004553560A patent/JP2006506738A/ja active Pending
- 2003-11-07 AU AU2003295446A patent/AU2003295446A1/en not_active Abandoned
- 2003-11-07 WO PCT/US2003/035791 patent/WO2004046968A2/en active Application Filing
- 2003-11-07 EP EP03786632A patent/EP1581891A2/en not_active Ceased
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11110186A (ja) * | 1997-10-02 | 1999-04-23 | Nippon Telegr & Teleph Corp <Ntt> | ブラウザシステム、音声プロキシサーバ、リンク項目の読み上げ方法及びリンク項目の読み上げプログラムを格納した記憶媒体 |
JP2000092424A (ja) * | 1998-06-26 | 2000-03-31 | Hewlett Packard Co <Hp> | イメ―ジサ―バ |
JP2000090001A (ja) * | 1998-08-05 | 2000-03-31 | Spyglass Inc | 変換設定を使用した電子デ―タの変換方法およびシステム |
JP2000358230A (ja) * | 1999-06-16 | 2000-12-26 | Toshiba Corp | ビデオサーバおよびビデオオンデマンドシステム |
JP2001069485A (ja) * | 1999-08-31 | 2001-03-16 | Oki Electric Ind Co Ltd | インターネット経由のビデオオンデマンドシステム用プロキシ |
JP2001127790A (ja) * | 1999-11-01 | 2001-05-11 | Matsushita Electric Ind Co Ltd | 情報伝送方法 |
JP2001256098A (ja) * | 2000-03-09 | 2001-09-21 | Hitachi Ltd | プロキシサーバにおけるキャッシの制御方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012501493A (ja) * | 2008-08-29 | 2012-01-19 | アリババ・グループ・ホールディング・リミテッド | 画像処理方法、画像処理装置および画像処理システム |
JP2010273298A (ja) * | 2009-05-25 | 2010-12-02 | Broad Earth Inc | コンテンツ配信システム、配信制御装置及び配信制御プログラム |
WO2011024949A1 (ja) * | 2009-08-31 | 2011-03-03 | 日本電気株式会社 | コンテンツ配信装置、コンテンツ配信方法、およびプログラム |
KR101490516B1 (ko) * | 2013-08-19 | 2015-02-05 | 주식회사 솔박스 | 객체 및 속성 정보를 이용한 컨텐츠 제공 방법 및 이를 이용한 http 프록시 서버 |
JP7477251B2 (ja) | 2019-09-24 | 2024-05-01 | インターナショナル・ビジネス・マシーンズ・コーポレーション | シングル・ページ・アプリケーションのキャッシャビリティの改善方法、システム、プログラム |
Also Published As
Publication number | Publication date |
---|---|
EP1581891A2 (en) | 2005-10-05 |
AU2003295446A1 (en) | 2004-06-15 |
US20040098463A1 (en) | 2004-05-20 |
WO2004046968A2 (en) | 2004-06-03 |
WO2004046968A3 (en) | 2004-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2006506738A (ja) | トランスコード可能なキャッシングプロキシおよびその方法 | |
JP4972409B2 (ja) | ノード及びネットワークの特性を考慮したサービスロケーション管理を行うためのシステム | |
KR100734629B1 (ko) | 부분 캐싱 방법 및 이를 이용한 적응형 콘텐츠 전송 방법 | |
KR101330052B1 (ko) | 적응형 컨텐츠 전송 방식을 지원하는 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치 | |
US8670456B2 (en) | Method and system for transparently transcoding a multicast stream | |
US20170149860A1 (en) | Partial prefetching of indexed content | |
US20140365560A1 (en) | System for providing policy based content service in a mobile network | |
US8090761B2 (en) | Storage and distribution of segmented media data | |
JP2006520039A (ja) | メディアデータストリームを処理するための方法、データ構造、及びシステム | |
US10747723B2 (en) | Caching with dynamic and selective compression of content | |
US9665646B1 (en) | Method and system for providing bit rate adaptaion to video files having metadata | |
US7660877B2 (en) | Systems and methods in which a provider is selected to service content requested by a client device | |
EP1625724B1 (en) | System and method for selecting a service provider | |
JP2007523424A (ja) | 状態メモリ管理の方法及び装置 | |
WO2016063161A1 (en) | Partial prefetching of indexed content | |
US8560629B1 (en) | Method of delivering content in a network | |
KR101888982B1 (ko) | 적응형 컨텐츠 제공을 위한 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치 | |
Shen et al. | Transcoding-enabled Caching Proxy for Video Delivery in Heterogeneous Network Environments. | |
US20040236847A1 (en) | Systems and methods for performing a service on content requested by a client device | |
KR101971595B1 (ko) | 적응형 컨텐츠 제공을 위한 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치 | |
Hsu et al. | A Transcoding Architecture for Adapting MPEG-21 Digital Items in Mobile Networks | |
KR20090059477A (ko) | 트랜스코딩 프락시에서 혼합 세그먼트 관리 방법 및 장치 | |
Shen et al. | Streaming media caching with transcoding-enabled proxies | |
Liu et al. | An efficient Wireless Internet access scheme |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060911 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090313 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090402 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090626 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100525 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20100610 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20100723 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120228 |