TW201527979A - 調適快取行為之方法及對應之快取 - Google Patents

調適快取行為之方法及對應之快取 Download PDF

Info

Publication number
TW201527979A
TW201527979A TW103121791A TW103121791A TW201527979A TW 201527979 A TW201527979 A TW 201527979A TW 103121791 A TW103121791 A TW 103121791A TW 103121791 A TW103121791 A TW 103121791A TW 201527979 A TW201527979 A TW 201527979A
Authority
TW
Taiwan
Prior art keywords
cache memory
type
content portion
server
content
Prior art date
Application number
TW103121791A
Other languages
English (en)
Inventor
Stephane Gouache
Charline Taibi
Remi Houdaille
Original Assignee
Thomson Licensing
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 Thomson Licensing filed Critical Thomson Licensing
Publication of TW201527979A publication Critical patent/TW201527979A/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2183Cache memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/44Browsing; Visualisation therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • 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
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2885Hierarchically arranged intermediate devices, e.g. for hierarchical 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/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (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)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本發明涉及一種調適一第一類型快取記憶體行為之方法,該快取記憶體定位於沿著一用戶端與一伺服器間之傳輸路徑上,此一用戶端能自該伺服器接收一多媒體內容之數個內容部分,其特徵在於,該方法包括以下步驟:- 一第一用戶端一旦提出一初始請求(S0)以用於該第一類型快取記憶體中未儲存之一內容部分,一旦傳輸至該第一用戶端,即在該快取記憶體中儲存(S2)該內容部分,及記錄(S3)該快取記憶體自該伺服器接收該內容部分之至少一特徵,該伺服器對該初始請求(S0)之回應包括進一步資訊,防止在該第一用戶端與該伺服器間設置之一第二類型快取記憶體儲存該內容部分;- 一第二用戶端一旦提出一後續請求(S4)以用於如該第一類型快取記憶體中儲存之相同內容部分,在將該儲存內容部分自該快取記憶體傳送至該第二用戶端之同時,根據該記錄特徵以控制(S5)該資料傳送速度。

Description

調適快取行為之方法及對應之快取
本發明一般相關例如但非專特在HTTP(超文件傳輸協定)上的適應性串流技術領域,尤其相關用以調適一快取記憶體行為的方法,該快取記憶體定位在沿著一用戶端與一或多個伺服器之間的傳輸路徑上。
本段落希望介紹讀者此藝中的各種不同方面,係相關本發明在以下說明及/或申請專利範圍中的各種不同方面,相信本討論有助於提供讀者背景資訊,俾更瞭解本發明的各種方面。因此,應瞭解這些敍述將由這個觀點閱讀,並非要作為先前技術的認可。
在HTTP上的適應性串流正迅速成為多媒體內容分配的主要技術,在已使用的HTTP適應性串流協定之中,最有名的是源自蘋果電腦公司(Apple)的HTTP即時串流(HLS),源自微軟公司(Microsoft)的銀光平滑串流(SSS),Adobe公司的Adobe動態串流(ADS),及由3GPP SA4群組所研發在HTTP上的動態適應性串流(DASH)。
當一用戶端希望播放在適應性串流中的一影音內容(或A/V內容)時,首先必須得到一檔案描述如何可取得此A/V內容,完成此步驟通常是藉由透過HTTP協定從一URL(全球資源定址器)得到一描述檔,即所謂的載貨清單,但也可藉由其他方式來達成(例如廣播,電子郵件,SMS(簡訊服務)等)。載貨清單基本上列出此一A/V內容(依照位元率、解析度及其他特性)的可用表徵(亦稱為例子或版本);每一品質等級(位元率)有一表徵。各表徵係由一系列相等持續時間的資料塊所作成,可由一分開的URL存取,並具有一組附加的描述元件供客戶端選取,該載貨清單例如是由一遠端伺服器預先產生並傳給用戶端。
在一HTTP伺服器上的確可利用不同品質取得對應到A/V內容的資料流,最高品質是與一高位元率相關聯;最低品質是與一低位元率相關聯,這允許對許多不同終端機的分配可取決於高度多樣化的網路條件。
將各表徵的整個資料流分割成數個相等持續時間的資料塊,如此形成資料塊,使一用戶端可在二資料塊之間平順地從一品質等級切換到另一品質等級,結果,視訊品質在播放時會有不同卻極少受到中斷之苦(亦稱停格)。
習知一用戶端是根據其可用頻寬在一已知時間點選擇最佳表徵,針對網路變化使品質(如視訊品質)與堅韌度之間的平衡最佳化。可用頻寬是在每一接收到的資料塊動態地判定,通常的確是測量在發出一HTTP請求以用於一已知資料塊與接收到對應HTTP回應之間的來回時間(RTT),並用以估測沿著傳輸路徑的可用頻寬。
在用戶端的接收速度在下載一資料塊時會有不同,在開始時,用戶端發出一HTTP請求以用於一資料塊,首先有一,,閒置,,時期以對應到該HTTP請求的RTT(來回時間),接著接收到該資料塊的數個封包,這些封包以該連結的最高速度傳來,最後,接收速度在完成該資料塊下載時再降到零。
因此用戶端能估測一HTTP請求的RTT及可用最大頻寬兩者,然後使用這些估測值以判定在一資料塊持續時間內利用一接收高可能性可請求的最大資料塊大小。
此外,數個用戶端亦可使用一些緩衝器以防護突然缺少頻寬,為填滿緩衝器,此類終端機請求數個小資料塊是足以在比該資料塊持續時間更短的時間內接收,只要一收到前一資料塊立即要求下一資料塊。當緩衝器是在它的正常大小時,用戶端嘗試下載適合該資料塊持續時間的數個資料塊,若某個資料塊下載太慢,會消耗緩衝器,用戶端將嘗試利用後續資料塊再把它填滿。
當一快取記憶體是在沿著一用戶端與一遠端伺服器之間的傳輸路徑上時,常是如此發生,倘若另一用戶先前已請求具有相同表徵的同一資料塊,或倘若一內容傳送網路(CDN)已在該快取記憶體提供該資料塊,則該資料塊可已經儲存在該快取記憶體中。
因此,用於該已知資料塊的一HTTP請求,比起若該資料塊係來自該遠端伺服器,回應會更快。由於傳輸路徑較短,HTTP請求在用戶端與快取記憶體之間的RTT(來回時間)比起用戶端與遠端伺服器之間 的RTT更小許多,如用戶端所觀測的此傳輸參數修改是由於快取記憶體尋求儘快提供該快取內容的固有行為。
此外,倘若沿著該傳輸路徑存在一快取記憶體(請求的資料塊係儲存在該快取記憶體中),最高速度會較佳,尤其是位在該快取記憶體與該遠端伺服器之間的傳輸路徑上有擁塞的時候。
由於一用戶端通常不區別一遠端伺服器或一中間快取記憶體傳送的回覆,而將一頻寬變化錯誤地解釋為端對端網路條件的變化,然而事實上是觀測到傳輸路徑從,,用戶端到伺服器,,路徑交換到”用戶端到快取記憶體,,路徑。
結果,用戶端執行的頻寬估測是高估的,並未準確地反映如預期的端對端傳輸路徑,倘若是快取內容,用戶端通常估測一較大頻寬,比連接到一遠端伺服器的預期頻寬大。
此一高估通常導致終端用戶不佳的使用經驗,若估測頻寬高於預期,適應性串流用戶端的確通常從一較高品質表徵(例如較高位元率)請求一資料塊,請求的此資料塊因該表徵改變因此在一快取記憶體的可能性較低(藉由假定因前一用戶端在一致位元率播放同一多媒體內容而填滿該快取記憶體)。與該請求資料塊相關聯的下載時間應該比預期更久,造成請求的資料塊太慢到達,該用戶端接著將切換回到一較低品質表徵,其係有可能在該快取記憶體再發現的表徵。
利用目前數個快取記憶體的實施方式,數個HTTP適應性串流(HAS)用戶端所作的錯誤決定使快取的效果消失,導致更多快取失誤,最後並導致快取潰敗(快取內容一直被取代),並導致該快取記憶體與伺服器之間的網路段上負載較高,有造成擁塞的風險。
結果,用戶端在高低品質資料塊之間來回切換(由於快取失誤而一直中斷),完全危害到快取的有利點。
本發明努力補救上述至少一些關連以改善終端用戶的經驗品質。
本發明涉及一種調適一第一類型快取記憶體(以下亦稱為 智慧型快取記憶體)行為的方法,該快取記憶體定位在沿著一用戶端與一伺服器之間的傳輸路徑上,此一用戶端能自該伺服器接收一多媒體內容的數個內容部分,其特徵在於,該方法包括以下步驟:- 一旦一第一用戶端請求該第一類型快取記憶體中未儲存的一內容部分,一旦傳輸到該第一用戶端,就在該第一類型快取記憶體中儲存該內容部分(檢索自一或多個伺服器),及記錄該第一類型快取記憶體自該伺服器接收該內容部分的至少一特徵,該伺服器對該初始請求的回應包括進一步資訊,防止在該第一用戶端與該伺服器之間設置的一第二類型快取記憶體(以下亦稱為舊有快取記憶體)儲存該內容部分;- 一旦一第二用戶端後續請求如該第一類型快取記憶體中儲存的相同內容部分,在將該儲存內容部分從該第一類型快取記憶體傳送到該第二用戶端的同時,根據該記錄特徵以控制該資料傳送速度。
由於本發明,數個用戶端可自快取得益處,結果為例如位在一住宅閘道器或在一企業代理器中的一快取記憶體省下重大存取頻寬,並為一網際網路服務供應商省下重大輸送流量。
此外,由於本發明,單一資料流可透過存取網路傳送而由二或多個用戶端消費,只要該等用戶端朝該快取記憶體具有相似的連接關係。
此外,本發明可藉由調適該快取記憶體提供快取內容服務時的行為,例如在請求尚未從一遠端伺服器快取到的一內容時模擬所觀測到的網路條件,以避免該快取記憶體為延遲高靈敏度資料(如HTTP適應性串流內容)而有加速效應,此可防止頻寬高估。
在根據本發明的一較佳實施例中,該第一類型快取記憶體傳送到該第二用戶端的回應包括該進一步資訊,防止在該用戶端與該第一類型快取記憶體之間設置的一第二類型快取記憶體儲存該內容部分。
此外,該第二用戶端傳送的後續請求可包括輔助資訊,允許該第二用戶端要求一已知資料傳送速度從該第一類型快取記憶體傳來該內容部分。
尤其地,該第一類型快取記憶體傳送到該第二用戶端的回 應尚可包括該輔助資訊,用以指明實際資料傳送速度。
此外,該第一類型快取記憶體傳送到該第二用戶端的回應可包括增補資訊,用以指明所記錄的資料傳送速度就如該第一類型快取記憶體在該內容部分自該伺服器接收期間所觀測的。
在該較佳實施例的又一方面,在將該快取記憶體中儲存的該內容部分傳送到第二用戶端的同時,調適該內容部分的資料傳送速度,使在該快取記憶體所傳送資料流上測得考慮周全的特徵等於該記錄特徵,藉此,相同多媒體內容消費兩次的一用戶端可真正觀測到相同傳輸條件以用於各內容傳送,其留下頻寬可用於其他應用程式。
作為該較佳實施例的一變化或作為一補充,可根據至少一效能標準以放大或縮小該內容部分的資料傳送速度。
較佳地,該記錄特徵可對應到該快取記憶體在每一時間間隔接收的位元組數目,尤其地,使用的時間間隔可依所請求內容部分的本質而定。
此外,作為又一變化或作為又一補充,可由形成該內容部分的數個資料封包的到達時間得出該特徵,在該較佳實施例的另一方面,可如該快取記憶體所觀測以記錄該特徵。
在另一變化中,不用到達時間,而改使用存在於時下流行的網路分析工具像tcpdump及NetMate中的習知技術,在考慮周全的時間間隔上算出代表該傳輸的一組統計參數,這些統計參數是隨同該內容一起記錄,並使用習知的網路模擬工具如NetEM來重播。
在該較佳實施例的又一方面,該方法可有利地又包括一偵測步驟,用以偵測該內容部分是否對沿著該傳輸路徑的傳輸條件具高靈敏度。
尤其地,該偵測步驟可依賴該第一用戶端所傳送請求的一檢查。
此外,倘若使用HTTP協定傳送該多媒體內容,該內容部分的檢查就可以是在於分析對應的HTTP回應。
有利地,當該內容部分對傳輸條件具高靈敏度時,可觸發該特徵的記錄。
此外,本發明亦可涉及一種第一類型快取記憶體(或智慧型快取記憶體),定位在沿著一用戶端與一伺服器之間的傳輸路徑上,此一用戶端能從該伺服器接收一多媒體內容的數個內容部分。根據本發明,該第一類型快取記憶體包括:- 儲存模組,一旦一第一用戶端提出一初始請求以用於該第一類型快取記憶體中未儲存的一內容部分,就用以儲存該伺服器所提供的該內容部分,該伺服器對該初始請求的回應包括進一步資訊,防止在該第一用戶端與該伺服器之間設置的一第二類型快取記憶體儲存該內容部分;- 一記錄模組,在該初始請求上,一旦傳輸到該第一用戶端,用以記錄接收該內容部分的至少一特徵;- 一控制模組,一第二用戶端一旦後續請求該第一類型快取記憶體中所儲存的相同內容部分,在將該儲存內容部分從該第一類型快取記憶體傳送到該第二用戶端的同時,用以根據該記錄特徵以控制該資料在一速度傳送。
此外,該控制模組可配置用以調適該內容部分的資料傳送速度,在將該第一類型快取記憶體中儲存的該內容部分傳送到第二用戶端的同時,使在資料傳送速度上測得考慮周全的特徵等於該記錄特徵。
此外,作為一變化或作為一補充,該控制模組可根據至少一效能標準以放大或縮小資料傳送速度。
此外,該第一類型快取記憶體傳送到該第一用戶端的回應可包括該進一步資訊,防止在該用戶端與該第一類型快取記憶體之間設置的一第二類型快取記憶體儲存該內容部分。
在又一方面,該第一類型快取記憶體傳送到該第一用戶端的回應尚可包括輔助資訊,允許該第一類型快取記憶體指明實際的資料傳送速度。
以下提出與所揭露實施例範圍相當的數個特定方面,應瞭解提出此等方面僅為提供讀者一簡短概要以說明本發明可採取的某些形式,及此等方面並非希望限制本發明的範圍,實際上,本發明可涵蓋未在以下提出的各種不同方面。
1‧‧‧偵測模組
2‧‧‧儲存模組
3‧‧‧記錄模組
4‧‧‧控制模組
B1‧‧‧內部匯流排
C1,C2‧‧‧用戶端
GW‧‧‧閘道器
M‧‧‧調適機構
n‧‧‧資料塊
N1,N2‧‧‧網路
R‧‧‧快取記憶體
r,r’‧‧‧表徵
S‧‧‧伺服器
S0,S1,S2,S3,S4,S5‧‧‧步驟
以下將參考附圖並藉由一實施例及數個執行範例以描述本發明,俾審查委員能更進一步瞭解本發明的技術特徵,圖中:圖1係以示意圖描繪一主從式(Client-Server)網路架構,其中可實施本發明;圖2係根據本發明的一較佳實施例以方塊圖描繪一快取記憶體範例;圖3以流程圖描繪藉由圖2的快取記憶體所實施的行為調適演算法。
在圖1及圖2中,所示方塊單純是功能實體,不必對應到實質分開的實體,意即,它們可在軟體、硬體的形式中研發,或在一或多個積體電路中實施,包括有一或多個處理器。
在任何可能情況下,全部附圖中將使用相同參考數字符號以表示相同或類似的零件。
應瞭解,為求清楚瞭解本發明,已簡化本發明的附圖及說明以描述數個相關元件,並為求清晰,已將典型數位多媒體內容傳送方法及系統中發現的許多其他元件消去未顯示。然而,因為此類元件為此藝所熟知,本文中不再提供此類元件的詳細討論,本揭露內容目標是熟諳此藝者習知的所有此類變化及修改。
根據一較佳實施例,描述本發明相關HTTP適應性串流協定,本發明的確並非侷限於此一特定環境,當然可考量及實施其他適應性串流協定。
如圖1所示,主從式(Client-Sever)網路架構,其中可實施本發明,包括數個用戶端C1及C2,一閘道器GW及一或多個HTTP伺服器S(圖1中只顯示一個伺服器)。
該等用戶端C1及C2透過一第一網路N1(例如一家庭網路或一企業網路)連接到閘道器GW,會希望透過一第二網路N2(例如網際網路)連接到一HTTP伺服器S,第一網路N1是由於閘道器GW而連接到第二網路N2。
尤其地,數個用戶端C1及C2可以是可攜式媒體裝置、行動電話、平板電腦或膝上型電腦,用戶端當然可不包括一完整視訊播放器,而僅是一些次元件,例如將媒體內容解多工及解碼給終端用戶的那些次元件,在此情況,用戶端係能解碼HTTP適應性串流(HAS)的視訊解碼器,如機上盒。
HTTP伺服器S依照用戶端請求,經由一TCP/IP連接,使用HTTP適應性串流協定以串流提供數個資料塊到一用戶端C1,C2。
根據圖2所述的較佳實施例,閘道器GW包括一第一類型快取記憶體R(或智慧型快取記憶體,其根據DASH(動態適應性串流)亦稱為DANE(以用於察覺DASH網路元件))。換句話說,快取記憶體R係設置在沿著該等用戶端C1及C2與一伺服器S之間的傳輸路徑上,在一變化中,該快取記憶體R可設置在第一網路N1的一代理器中。
以下假定一用戶端C1,C2向一遠端伺服器S請求一HTTP適應性串流多媒體內容,及後續另一用戶端C2,C1請求相同HAS多媒體內容,或至少一部分該多媒體內容。
根據本發明,快取記憶體R包括一偵測模組1,調適用以偵測一用戶端C1,C2請求的一已知多媒體內容,對沿著該用戶端C1,C2與一伺服器S之間的傳輸路徑的數個傳輸條件是否具高靈敏度。
由於快取記憶體R可觀測到數個用戶端C1及C2傳來的所有請求,因此偵測模組1配置用以檢查該等請求URL位址,為要識別與對應到HAS流量的檔案延伸檔名相匹配的請求。
例如,以下表格(為說明而顯示,不需詳盡列舉)列出識別為對數個傳輸條件具高靈敏度的通用檔案延伸檔名:
若遭遇任何此等延伸檔名,偵測模組1就假定請求的多媒 體內容係一HAS(HTTP適應性串流)內容,藉由定義係對該等傳輸條件具高靈敏度的內容。因此,一偵測到此類請求(即此類延伸檔名),快取記憶體R就將該請求轉寄到一伺服器S,就像一習知快取記憶體(例如一第二類型快取記憶體或舊有快取記憶體,其根據DASH(動態適應性串流)亦稱為RNE(以用於普通網路元件)),但另外也觸發一記錄模組3(將在以下說明)記錄一或多個特徵(以下只說明一特徵)。
在一變化中或作為一補充,偵測模組1可檢查一伺服器S在回應中傳送的HTTP回應或HTTP回應檔頭,尤其地,當一HTTP回應檔頭指明一內容類型對應到一載貨清單列出的一HAS內容的可用表徵(例如當該檔頭等於"application/vnd.ms-sstr+xml(應用程式/vnd.ms-sstr+xml)”時),或當該HTTP回應的內容包括相關一HAS協定的一字串(例如"SmoothStreamingMedia(平滑串流媒體)”字串)時,識別出一HAS載貨清單且將對應的多媒體內容視為對傳輸條件具高靈敏度。
此外,伺服器S傳送的HTTP回應可包括一”no-cache(無快取記憶體)”指示(定義進一步資訊),是具有"unless-smartcache(除非是智慧型快取記憶體)"延伸檔名,防止一第二類型快取記憶體(或舊有快取記憶體)儲存該(等)資料塊。此外,當此一指示包括在該用戶端傳送的一請求(以用於一已知資料塊)中時,允許該用戶端只從伺服器S請求該已知資料塊,除非是一第一類型快取記憶體R(且並非是一舊有快取記憶體)已快取到此已知資料塊。在該情形中,該智慧型快取記憶體R較佳是藉由包含有一延伸檔頭"x-smartcache(x-智慧型快取記憶體)”來回覆,用以指明該回應是由一智慧型快取記憶體提供。
此外,伺服器S傳送的HTTP回應可包括一”no-cache(無快取記憶體)指示,是具有”must-revalidate(必須再確認)”指示,用以強迫該智慧型快取記憶體R再確認資料塊,此允許伺服器S監控資料塊的存取(例如為會計目的)。為減低伺服器路徑的來回負載,有利的是只將此”must-revalidate(必須再確認)”指示附加在該等回應的一子集上,如定期地。
在又一變化中,伺服器S傳送的HTTP回應可包括多個指示的結合”no-cache,unless-smartcache,must-revalidate(無智慧型快取記憶 體,除非是智慧快取記憶體,必須再確認)”。
此外,根據該較佳實施例,快取記憶體R包括一儲存模組2,如一揮發性記憶體及/或一永久性記憶體,在傳輸此類多媒體內容到請求該多媒體內容的數個用戶端C1及C2前,用以儲存自一或多個伺服器S接收的數個多媒體內容資料塊。
尤其地,一用戶端C1,C2一旦請求快取記憶體R中尚未儲存的一多媒體內容的表徵r的一資料塊n,儲存模組2即配置成用以儲存該資料塊n。
此外,快取記憶體R尚包括一記錄模組3,能依照一第一用戶端C1的請求,記錄與該資料塊n(自伺服器S)傳到第一用戶端C1在伺服器S與快取記憶體R之間的鏈結相關的一特徵,當然在一變化中,可使用超過一個接收特徵。在該較佳實施例中,由於偵測模組1,當該已知多媒體內容已評估為對傳輸條件具高靈敏度時,就觸發該特徵記錄,因此,對於偵測模組1不認為是具高靈敏度的一多媒體內容或一部分該多媒體內容,就不觸發記錄模組3。明顯地,可了解到對於具高靈敏度及不具高靈敏度的多媒體內容兩者都能觸發記錄模組3。
例如,較佳可如快取記憶體R所觀測以記錄該特徵,該特徵可對應到:- 快取記憶體R在接收第一用戶端C1所請求表徵r的資料塊n期間在每一時間間隔接收的位元組數目,尤其地,使用的時間間隔可依該資料塊n(如HAS資料塊)的本質而定,在一繪示但非限制的範例中,從該伺服器接收的位元組數目是每100分鐘取樣,以減少儲存的資訊量以及額外的處理負載。這個間隔用以重製HAS內容的傳輸條件是合理的,但用於其他類型流量會太粗略;及/或- 由形成所請求表徵r的資料塊n的數個資料封包到達時間得出該特徵,為此目的,可使用一封包捕捉工具,造成該傳輸的更高傳真捕捉,提供機會準確地重製傳輸條件,說明如下。
較佳地,一旦記錄就將該特徵的值與該URL位址及實際回應資料一起儲存成一資料結構(以下稱為”樣本扇區”),說明如下:
此一資料結構儲存到儲存模組2中為以後使用,在該較佳實施例中,該相同資料結構使用在"正常"流量(偵測模組1認為是對傳輸條件不具高靈敏度),該樣本扇區係例如簡單地左邊空白。
根據該較佳實施例,快取記憶體R亦包括一控制模組4,一旦一第二用戶端C2後續請求如今已記錄在快取記憶體R中的相同資料塊n,就在資料塊n傳送到第二用戶端C2的同時,形成用以在該記錄特徵的函數中調適資料塊n的資料傳送速度。
更精確地,在將快取記憶體R中儲存的該內容部分傳送到第二用戶端C2的同時,控制模組4配置用以調適該內容部分的資料傳送速度,俾在該快取記憶體傳送的資料流上測得考慮周全的特徵等於該記錄特徵。
一旦第二用戶端C2以後請求已儲存在快取記憶體R中的資料塊n,控制模組4就查出相關聯特徵的值,並照所記錄的準確地使用這些值,以便努力重製對應到直接連接到伺服器S的網路條件(先前是由第一用戶端C1到達)。在該記錄特徵上未執行任何修改,對於不具高靈敏度的內容,由於無該特徵的記錄,因此亦無處理。
此外,作為一變化或作為一補充,控制模組4亦能根據一或多個效能標準(例如沿著用戶端/伺服器的傳輸路徑的負載條件)放大或縮小傳送速度,用以影響第二用戶端C2所請求資料塊n的接收。
達成資料傳送速度的修改係藉由在記錄的特徵上(例如每一時間間隔的位元組數目)施加一預定縮放因子,接著由控制模組4使用算出的特徵用以判定資料傳送速度,及用以傳送想要用於各時間間隔(例如每100分鐘)的資料量到第二用戶端C2。
例如,當依第一用戶端C1請求,在高負載條件(例如許多應用程式正在使用且存取頻寬飽和)之下自伺服器S檢索出快取資料塊n時,並當第二用戶端C2請求快取資料塊n時該等負載條件已回到正常條 件時,根據該縮放因子,控制模組4可放大該傳送速度,使其達到存取頻寬。第二用戶端C2相信可用頻寬係較高,因此請求具一較高品質表徵r’的資料塊n,可能未快取到此一資料塊,由於頻寬是可用的,因此不作議題討論。
在一改良中,第二用戶端C2傳送的後續請求可有利地包括"no-cache(無快取記憶體)"指示,是具有延伸檔名"smartcache-speed(智慧型快取記憶體速度)",若所要求的資料塊已快取到智慧型快取記憶體R中,用以允許終端機C2控制資料傳送速度。可指定該資料傳送速度作為一浮點值,1.0係所記錄的資料傳送速度。在該情形中,智慧型快取記憶體R較佳可利用包括有一延伸檔頭"x-smartcache-speed(x-智慧型快取記憶體速度)”的回應來回覆,指明所使用的實際資料傳送速度值。此外,智慧型快取記憶體R的回應可包括一延伸檔頭"x-origin-speed(x-原速度)”,指明所記錄的資料傳送速度就如智慧型快取記憶體R在從伺服器S接收該資料塊時所觀測到的。
能從一智慧型快取記憶體控制資料傳送速度可允許一用戶端將資料塊的傳送加速到任一選取值,例如為要填滿它的緩衝器(以用於快速啟動或一擁塞後的恢復)。
在符合本發明的又一方面,可使用一排程機構以減少對多個用戶端的回應重疊,本排程機構的結果是在該記錄特徵中加入一位移量,同時維持相同的資料傳送速度。
如圖3所示,快取記憶體R配置成傳送數個快取內容到一用戶端C1,C2時調適其快取行為,更精確地,快取記憶體R可實施以下調適機構M,包括以下步驟:- 從一第一用戶端C1接收(步驟S0)一HTTP請求以用於未儲存在快取記憶體R中的表徵r的一資料塊n;- 偵測(步驟S1)如請求的多媒體內容是否對沿著該傳輸路徑的數個傳輸條件具高靈敏度;- 從一伺服器S檢索出資料塊n後,儲存(步驟S2)該資料塊;- 倘若該多媒體內容對數個傳輸條件具高靈敏度,一旦傳輸到第一用戶端C1,記錄(步驟S3)與快取記憶體R接收資料塊n相關聯的至少一特 徵;- 從一第二用戶端C2接收(步驟S4)一後續HTTP請求以用於快取記憶體R中儲存的相同特徵r的相同資料塊n;- 將資料塊n傳送到第二用戶端C2的同時,根據該記錄特徵以控制(步驟S5)傳送速度:■藉由調適該傳送速度,在該快取記憶體所傳送資料流上測得考慮周全的特徵等於該記錄特徵;及/或■藉由根據該效能標準以放大或縮小傳送速度。
應瞭解到,不用背離本發明,可改變步驟S0到S5的順序。
此外,快取記憶體R另外包括一內部匯流排B1,用以連接各種不同模組1至4與熟諳此藝者習知用以執行一般快取功能的所有裝置(在圖2中未顯示)。
如所述,本發明未侷限於HAS多媒體內容,但亦可涉及對傳輸條件具高靈敏度的每一內容。
本說明書所揭露的參考資料、申請專利範圍及附圖可獨立地提供或以任何適當結合方式來提供,只要適當,數個特徵可在硬體、軟體或結合兩者的方式中實施。
本申請專利範圍中出現的參考數字符號僅為描繪說明,在本申請專利範圍的範疇上並不具有限制效果。
本發明已在其較佳實施例中加以說明,明顯地,在熟諳此藝者的能力範圍內並不需運用發明能力即能夠作出許多修改及實施例,因此,本發明的範圍將由以下申請專利範圍的範疇來界定。
在本申請專利範圍中,任何元件描述作為執行一特定功能的一裝置(如偵測模組2、控制模組4等),希望用以涵蓋執行該功能的任何方式,例如,a)執行該功能的數個電路元件(例如一或多個處理器)的組合,或b)任何形式的軟體,因此包括韌體、微碼或類似物,結合適當電路設計用以執行該軟體以施行該功能。本發明由此類申請專利範圍所界定的原則存在以下事實:各種引用裝置所提供的功能是在本申請專利範圍要求的方式中合併及結合起來,因此任何可提供該等功能的裝置應視為同等於本文所示者。
M‧‧‧調適機構
S0,S1,S2,S3,S4,S5‧‧‧步驟

Claims (15)

  1. 一種調適一第一類型快取記憶體(R)行為之方法,該快取記憶體定位於沿著一用戶端(C1,C2)與一伺服器(S)間之傳輸路徑上,此一用戶端(C1,C2)能自該伺服器(S)接收一多媒體內容之數個內容部分,該方法包括以下步驟:- 一第一用戶端一旦提出一初始請求(S0)以用於該第一類型快取記憶體中未儲存之一內容部分,一旦傳輸至該第一用戶端,即在該第一類型快取記憶體中儲存(S2)該內容部分,及記錄(S3)該第一類型快取記憶體自該伺服器接收該內容部分之至少一特徵,該伺服器對該初始請求(S0)之回應包括進一步資訊,防止在該第一用戶端與該伺服器間設置之一第二類型快取記憶體儲存該內容部分;- 一第二用戶端一旦提出一後續請求(S4)以用於如該第一類型快取記憶體中儲存之相同內容部分,在將該儲存內容部分自該第一類型快取記憶體傳送至該第二用戶端之同時,根據該記錄特徵以控制(S5)該資料傳送速度。
  2. 如申請專利範圍第1項所述之方法,其中該第一類型快取記憶體(R)傳送至該第一用戶端(C2)之回應包括進一步資訊,防止在該用戶端與該第一類型快取記憶體(R)間設置之一第二類型快取記憶體儲存該內容部分。
  3. 如申請專利範圍第1或2項所述之方法,其中該第二用戶端(C2)傳送之後續請求(S4)包括輔助資訊,允許該第二用戶端(C2)要求一已知資料傳送速度自該第一類型快取記憶體(R)傳送該內容部分。
  4. 如申請專利範圍第3項所述之方法,其中該第一類型快取記憶體(R)傳送至該第二用戶端(C2)之回應尚包括該輔助資訊用以指明實際資料傳送速度。
  5. 如申請專利範圍第1至4項中任一項所述之方法,其中該第一類型快取記憶體(R)傳送至該第二用戶端(C2)之回應包括增補資訊,用以指明所記錄之資料傳送速度如該第一類型快取記憶體(R)於該內容部分自該伺服器(S)接收期間所觀測到的。
  6. 如申請專利範圍第1至5項中任一項所述之方法,其中在將該快取記憶體(R)中儲存之該內容部分傳送至該第二用戶端(C2)之同時,調適該內容部分之資料傳送速度,俾在該快取記憶體傳送之資料流上測得考慮周全之特徵等於該記錄特徵。
  7. 如申請專利範圍第1至6項中任一項所述之方法,其中根據至少一效能標準以放大或縮小該內容部分之資料傳送速度。
  8. 如申請專利範圍第1至7項中任一項所述之方法,其中該記錄特徵對應至該快取記憶體(R)在每一時間間隔接收之位元組數目。
  9. 如申請專利範圍第1至8項中任一項所述之方法,其中由形成該內容部分之數個資料封包之到達時間得出該特徵。
  10. 如申請專利範圍第1至9項中任一項所述之方法,其中如該快取記憶體(R)所觀測以記錄該特徵。
  11. 一種第一類型快取記憶體,定位於沿著一用戶端(C1,C2)與一伺服器(S)間之傳輸路徑上,此一用戶端(C1,C2)能自該伺服器(S)接收一多媒體內容之數個內容部分,其特徵在於,該快取記憶體包括:- 儲存模組(2),一旦一第一用戶端(C1)提出一初始請求(S0)以用於該第一類型快取記憶體(R)中未儲存之一內容部分,即用以儲存該伺服器(S)提供之該內容部分,該伺服器(S)對該初始請求(S0)之回應包括進一步資訊,防止在該第一用戶端(C1)與該伺服器(S)間設置之一第二類型快取記憶體儲存該內容部分;- 一記錄模組(3),在該初始請求上,一旦傳輸至該第一用戶端(C1),即用以記錄接收該內容部分之至少一特徵;- 一控制模組(4),一第二用戶端(C2)一旦後續請求該第一類型快取記憶體(R)中所儲存之相同內容部分,在將該儲存內容部分自該第一類型快取記憶體(R)傳送至該第二用戶端(C2)之同時,用以根據該記錄特徵以控制該資料在一速度傳送。
  12. 如申請專利範圍第11項所述之第一類型快取記憶體,其中該控制模組(4)配置用以調適該內容部分之資料傳送速度,俾儲存於該第一類型快取記憶體(R)中之該內容部分傳送至該第二用戶端(C2)之同時,於該資料傳 送速度上測得該考慮周全之特徵等於該記錄特徵。
  13. 如申請專利範圍第11或12項所述之第一類型快取記憶體,其中該控制模組(4)配置用以根據至少一效能標準以放大或縮小該資料傳送速度。
  14. 如申請專利範圍第11至13項中任一項所述之第一類型快取記憶體,其中該第一類型快取記憶體(R)傳送至該第二用戶端(C2)之回應包括該進一步資訊,防止在該用戶端與該第一類型快取記憶體(R)間設置之一第二類型快取記憶體儲存該內容部分。
  15. 如申請專利範圍第11至14項中任一項所述之第一類型快取記憶體,其中該第一類型快取記憶體(R)傳送至該第二用戶端(C2)之回應尚包括輔助資訊,允許該第一類型快取記憶體指明實際資料傳送速度。
TW103121791A 2014-01-07 2014-06-25 調適快取行為之方法及對應之快取 TW201527979A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP14305015 2014-01-07

Publications (1)

Publication Number Publication Date
TW201527979A true TW201527979A (zh) 2015-07-16

Family

ID=49999852

Family Applications (2)

Application Number Title Priority Date Filing Date
TW103121791A TW201527979A (zh) 2014-01-07 2014-06-25 調適快取行為之方法及對應之快取
TW103121790A TWI634789B (zh) 2014-01-07 2014-06-25 提供多媒體內容之內容部分至用戶端之方法及對應之快取

Family Applications After (1)

Application Number Title Priority Date Filing Date
TW103121790A TWI634789B (zh) 2014-01-07 2014-06-25 提供多媒體內容之內容部分至用戶端之方法及對應之快取

Country Status (9)

Country Link
US (1) US10735544B2 (zh)
EP (1) EP3092811B1 (zh)
JP (1) JP6538061B2 (zh)
KR (1) KR102212973B1 (zh)
CN (1) CN105900433B (zh)
AU (1) AU2014377337B2 (zh)
BR (1) BR112016015878B1 (zh)
TW (2) TW201527979A (zh)
WO (1) WO2015104070A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10033824B2 (en) * 2014-06-30 2018-07-24 Samsung Electronics Co., Ltd. Cache manifest for efficient peer assisted streaming
US10152080B2 (en) 2015-09-23 2018-12-11 Adobe Systems Incorporated Power efficient multimedia content streaming based on media segment duration
WO2021009597A1 (en) 2019-07-12 2021-01-21 Carrier Corporation A system and a method for streaming videos by creating object urls at client

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8756342B1 (en) * 2000-02-07 2014-06-17 Parallel Networks, Llc Method and apparatus for content synchronization
GB2366965A (en) * 2000-09-01 2002-03-20 Ncr Int Inc Downloading data to a requesting client form the local cache of another client
US6820114B2 (en) * 2001-09-27 2004-11-16 Sap Aktiengesellschaft Identifying object suppliers in a network
US8650266B2 (en) * 2002-03-26 2014-02-11 At&T Intellectual Property Ii, L.P. Cache validation using smart source selection in a data network
US7076544B2 (en) 2002-04-08 2006-07-11 Microsoft Corporation Caching techniques for streaming media
US7085894B2 (en) * 2003-09-11 2006-08-01 International Business Machines Corporation Selectively accepting cache content
JP2006171822A (ja) 2004-12-13 2006-06-29 Nippon Telegr & Teleph Corp <Ntt> コンテンツ配信方法
WO2008098249A1 (en) 2007-02-09 2008-08-14 Dilithium Networks Pty Ltd. Method and apparatus for the adaptation of multimedia content in telecommunications networks
US20090094224A1 (en) * 2007-10-05 2009-04-09 Google Inc. Collaborative search results
US8799409B2 (en) * 2009-01-15 2014-08-05 Ebay Inc. Server side data cache system
US9310959B2 (en) * 2009-06-01 2016-04-12 Zya, Inc. System and method for enhancing audio
KR101218828B1 (ko) * 2009-07-02 2013-01-04 (주)에임투지 요청배정장치를 이용한 상호협력캐시 방법 및 컨텐츠 제공 방법
US8000259B2 (en) * 2009-09-04 2011-08-16 Viasat, Inc. Distributed cache—adaptive multicast architecture for bandwidth reduction
US8560598B2 (en) * 2009-12-22 2013-10-15 At&T Intellectual Property I, L.P. Integrated adaptive anycast for content distribution
EP2410744A1 (en) * 2010-07-23 2012-01-25 Alcatel Lucent Method for transferring video segments, client entity and proxy entity realizing such a method
US20120194534A1 (en) * 2011-02-02 2012-08-02 Alcatel-Lucent Usa Inc. System and Method for Managing Cache Storage in Adaptive Video Streaming System
EP2487609A1 (en) 2011-02-07 2012-08-15 Alcatel Lucent A cache manager for segmented multimedia and corresponding method for cache management
EP2924990A1 (en) * 2011-03-16 2015-09-30 Electronics and Telecommunications Research Institute Apparatus and method for providing streaming content using representations
US8812621B2 (en) * 2011-05-03 2014-08-19 Cisco Technology, Inc. Reducing fetching load on cache servers in adaptive streaming
WO2011157150A2 (zh) * 2011-05-31 2011-12-22 华为技术有限公司 数据处理方法、缓存节点、协作控制器及系统
JP2013069073A (ja) 2011-09-21 2013-04-18 Nec Corp 配信ネットワークとサーバ及び配信方法
US8977704B2 (en) * 2011-12-29 2015-03-10 Nokia Corporation Method and apparatus for flexible caching of delivered media
US9729603B2 (en) * 2012-09-27 2017-08-08 Alcatel Lucent Content stream delivery using variable cache replacement granularity
US9621399B1 (en) * 2012-12-19 2017-04-11 Amazon Technologies, Inc. Distributed caching system
EP2819368A1 (en) * 2013-06-28 2014-12-31 Thomson Licensing Method for providing a content part of a multimedia content to a client terminal, corresponding cache
US9887958B2 (en) * 2013-09-16 2018-02-06 Netflix, Inc. Configuring DNS clients
US8819187B1 (en) * 2013-10-29 2014-08-26 Limelight Networks, Inc. End-to-end acceleration of dynamic content
US9325639B2 (en) * 2013-12-17 2016-04-26 At&T Intellectual Property I, L.P. Hierarchical caching system for lossless network packet capture applications
US20160050112A1 (en) * 2014-08-13 2016-02-18 PernixData, Inc. Distributed caching systems and methods

Also Published As

Publication number Publication date
BR112016015878A2 (zh) 2017-08-08
JP6538061B2 (ja) 2019-07-03
EP3092811A1 (en) 2016-11-16
BR112016015878B1 (pt) 2023-02-23
CN105900433B (zh) 2020-02-21
AU2014377337A1 (en) 2016-08-18
JP2017510120A (ja) 2017-04-06
AU2014377337B2 (en) 2019-08-01
WO2015104070A1 (en) 2015-07-16
US20160330289A1 (en) 2016-11-10
TWI634789B (zh) 2018-09-01
EP3092811B1 (en) 2020-02-12
KR102212973B1 (ko) 2021-02-04
KR20160105803A (ko) 2016-09-07
TW201528806A (zh) 2015-07-16
CN105900433A (zh) 2016-08-24
US10735544B2 (en) 2020-08-04

Similar Documents

Publication Publication Date Title
KR102197974B1 (ko) 멀티미디어 컨텐츠를 수신하도록 구성되는 클라이언트 단말기의 다운로딩 거동을 적응시키는 방법 및 대응 단말기
TW201527979A (zh) 調適快取行為之方法及對應之快取
AU2015276544B2 (en) Method for operating a network equipment arranged along a transmission path between a client terminal and at least one server, and corresponding network equipment
US20160352857A1 (en) Method for adapting the behavior of a cache, and corresponding cache
KR20150140230A (ko) 클라이언트 단말기들과 적어도 하나의 서버 사이의 송신 경로를 따라 배열된 캐시를 작동시키기 위한 방법, 및 대응하는 캐시
TW201501526A (zh) 提供多媒體內容之內容部分至用戶端之方法及對應之快取
TW201500924A (zh) 調適快取行為之方法及對應之快取
KR102237900B1 (ko) 클라이언트 단말에 의해 멀티미디어 콘텐츠의 콘텐츠 부분을 검색하기 위한 방법
EP2958301A1 (en) Method for operating a cache arranged along a transmission path between a client terminal and at least one server, and corresponding cache