欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

將內容分發(fā)網(wǎng)絡(cdn)擴展到移動或有線網(wǎng)絡的制作方法

文檔序號:6360957閱讀:181來源:國知局
專利名稱:將內容分發(fā)網(wǎng)絡(cdn)擴展到移動或有線網(wǎng)絡的制作方法
將內容分發(fā)網(wǎng)絡(CDN)擴展到移動或有線網(wǎng)絡
本申請基于2010年6月18日提交的序號61/356,306。技術領域
本申請一般涉及將內容分發(fā)網(wǎng)絡(content delivery network, Q)N)的功能性擴展到在其中提供基于因特網(wǎng)的管理的CDN服務是不現(xiàn)實的或不可能的諸如移動網(wǎng)絡之類的網(wǎng)絡。
背景技術
分布式計算機系統(tǒng)是現(xiàn)有技術中眾所周知的。一種這樣的分布式計算機系統(tǒng)是由服務提供商操作和管理的“內容分發(fā)網(wǎng)絡”或“CDN”。服務提供商通常代表諸如內容提供商顧客之類的第三方提供內容分發(fā)服務。該類型的“分布式系統(tǒng)”通常指通過一個網(wǎng)絡或多個網(wǎng)絡鏈接的一群自治計算機,連同被設計以便于各種服務(諸如內容分發(fā)或外包 (outsourced)站點基礎設施的支持之類)的軟件、系統(tǒng)、協(xié)議和技術。通常,“內容分發(fā)”指代表內容提供商對于內容、流媒體和應用的存儲、高速緩存、或者傳輸,包括與其一起使用的諸如DNS查詢處理、供應(provisioning)、數(shù)據(jù)監(jiān)視和報告、內容定向和個性化、以及商業(yè)智能之類的輔助技術。
將因特網(wǎng)內容分發(fā)網(wǎng)絡(I⑶N)擴展到可能位于企業(yè)防火墻后面的企業(yè)計算環(huán)境在現(xiàn)有技術中是已知的。在共同擁有的美國專利No. 7,600, 025中描述了一個例子。將第三方高速緩存與內容分發(fā)網(wǎng)絡以諸如在美國專利No. 7,010, 578 (其也是共同擁有的)中描述的方式那樣的方式相關聯(lián)也是已知的。
由于固定或無線移動網(wǎng)絡被構建和操作的方式,導致在其中(即,靠近端用戶)部署被全面管理的CDN服務器不總是可能的或者現(xiàn)實的。例如,在占主流的3G移動技術即 UMTS (通用移動電信系統(tǒng))的情況下,移動設備經由空氣連接到塔臺,塔臺經由被稱作UTRAN (UMTS地面無線電接入網(wǎng)絡)的地面網(wǎng)絡連接到RNC (無線電網(wǎng)絡控制器),RNC通過分組核心網(wǎng)連接到服務節(jié)點,服務節(jié)點通過網(wǎng)關連接到因特網(wǎng)。典型的移動網(wǎng)絡僅有少量的這些因特網(wǎng)網(wǎng)關,這些因特網(wǎng)網(wǎng)關可以距離端用戶有幾千英里和幾十甚至幾百毫秒,但是這些網(wǎng)關可能是CDN的被全面管理的服務器能夠被部署的僅有位置。在這些位置之外,在分組核心網(wǎng)和UTRAN中,通常不能部署具有到因特網(wǎng)的可公共路由的IP地址和開放端口的設備。
有線網(wǎng)絡通常也有不能部署被全面管理的⑶N服務器的壁壘。有線網(wǎng)絡中的該壁壘一般比移動網(wǎng)絡情況下的壁壘更深、更靠近端用戶,但是在許多情況下,它仍然代表對于全面實現(xiàn)CDN或其它分布式網(wǎng)絡的好處的真正阻礙。還值得注意的是,即使當沒有這種技術壁壘時,也經常有文化或商業(yè)壁壘。具體地,許多網(wǎng)絡運營商高度保護他們的網(wǎng)絡并且將不允許被全面管理的設備超越其中 的某個壁壘。發(fā)明內容
內容分發(fā)網(wǎng)絡(⑶N)包括一組邊緣服務器、以及由⑶N提供的對于內容提供商域有權威的域名服務(DNS)。CDN被擴展到不能或不支持被全面管理的CDN邊緣服務器的一個或多個移動或有線網(wǎng)絡。具體地,“擴展器(Extender)”被部署在移動或有線網(wǎng)絡中,優(yōu)選地作為處在CDN的邊緣之外但是在CDN的控制下提供CDN-供應的內容的被動web高速緩存代理者(proxy)。擴展器也可被用于透明地高速緩存和提供非⑶N內容。在擴展器和 CDN之間建立信息通道以便于擴展器功能性。
在一個實施例中,所述信息通道便于下面的高速緩存方法。該方法當在擴展器處接收到對于內容的請求時開始。然后對于該內容是第一類型的還是第二類型的作出確定, 第一類型是適于在內容分發(fā)網(wǎng)絡(⑶N)上分發(fā)的內容。如果該內容是第一類型的(⑶N內容)并且位于高速緩存中,則擴展器使用信息通道從CDN獲得高速緩存處理指示。然后該 CDN供給的指示被應用,并且該內容被提供。但是,如果該內容是第二類型的(非CDN內容), 則擴展器響應于該請求來透明地高速緩存并且提供該內容,但是使用的不是從CDN (例如, 從源服務器)接收的高速緩存處理指示。
以上已經概述了本發(fā)明的較切題的特征中的一些。這些特征應當被認為僅是示例性的??赏ㄟ^以不同的方式應用所公開的發(fā)明或者通過修改將被描述的發(fā)明而得到許多其它的有益結果。


為了更全面地理解本發(fā)明及其優(yōu)點,現(xiàn)在將結合附圖進行以下描述,其中
圖1示出了其中可以實現(xiàn)示例性實施例的例示性方面的分布式計算機系統(tǒng)環(huán)境的例示性框圖2是圖1中的內容分發(fā)網(wǎng)絡中的邊緣服務器機器的例示性框圖3是示例了如何根據(jù)本公開的技術來擴展因特網(wǎng)內容分發(fā)網(wǎng)絡(CDN)的框圖4示例了根據(jù)本公開,本文描述的擴展器如何可以與CDN邊緣服務器互操作;
圖5是用于確定特定域是否屬于CDN顧客的名稱服務器查找操作;
圖6示例了網(wǎng)絡內支持的多個擴展器;以及
圖7示例了代表性的擴展器架構。
具體實施方式
在例如圖1所示的已知系統(tǒng)中,分布式計算機系統(tǒng)100被配置為CDN并且假設具有圍繞著因特網(wǎng)分布的一組機器102a-n。通常,這些機器中的大多數(shù)是位于因特網(wǎng)的邊緣附近(即,在端用戶接入網(wǎng)絡處或臨近端用戶接入網(wǎng)絡處)的服務器。網(wǎng)絡操作命令中心 (NOCC) 104管理系統(tǒng)中的各種機器的操作。第三方站點,例如web站點106將內容(例如, HTML、嵌入式頁面對象、流媒體、軟件下載等)的分發(fā)卸載到分布式計算機系統(tǒng)100,具體地講,卸載到“邊緣”服務器。通常,內容提供商通過將給定的內容提供商域或子域(例如,通過 DNSCNAME)化名為被服務提供商的有權威的域名服務管理的邊緣流量域來卸載它們的內容分 發(fā)。期望得到內容的端用戶被引導到分布式計算機系統(tǒng)以更可靠且有效地獲得該內容。 盡管沒有詳細地示出,但是,分布式計算機系統(tǒng)還可包括其它基礎設施,例如從邊緣服務器收集使用情況和其它數(shù)據(jù)、聚集一個區(qū)或一組區(qū)上的該數(shù)據(jù)、并且將該數(shù)據(jù)傳送給其它后端系統(tǒng)110、112、114和116以便于監(jiān)視、記錄、報警、計費、管理、以及其它操作和管理功能的分布式數(shù)據(jù)收集系統(tǒng)108。分布式網(wǎng)絡代理118監(jiān)視網(wǎng)絡以及服務器負載并且向DNS機制115供應網(wǎng)絡、流量和負載數(shù)據(jù),所述DNS機制115對于由⑶N管理的內容域是有權威的。 分布式數(shù)據(jù)運輸機制120可被用于向邊緣服務器發(fā)布控制信息(例如,用于管理內容、便于負載均衡等的元數(shù)據(jù))。
在一個實施例中,上面描述的⑶N資源被實現(xiàn)為在現(xiàn)有因特網(wǎng)基礎設施(第三方網(wǎng)絡、協(xié)同定位(co-location)設施、服務器、路由器等)上的“覆蓋”(overlay)。
如圖2所示,給定的機器200包括在支持一個或多個應用206a_n的操作系統(tǒng)內核 (例如Linux或變型)204上運行的商用硬件(例如因特爾奔騰處理器)202。為了便于內容分發(fā)服務,例如,給定的機器通常運行一組應用,例如HTTP (web)代理者207、名稱服務器 208、本地監(jiān)視進程210、分布式數(shù)據(jù)收集進程212等。對于流媒體,該機器通常包括被支持的媒體格式所要求的一個或多個媒體服務器,比如Windows媒體服務器(麗S)或Flash服務器。
CDN邊緣服務器被配置成提供一個或多個擴展的內容分發(fā)特征,優(yōu)選地在域特定、顧客特定的基礎上,優(yōu)選地使用通過用配置系統(tǒng)分發(fā)給邊緣服務器的配置文件。給定的配置文件優(yōu)選地是基于XML的,并且包括便于一個或多個高級內容處理特征的一套內容處理規(guī)則和指令。該配置文件可經由數(shù)據(jù)運輸機制被分發(fā)給⑶N邊緣服務器。美國專利 No. 7,111,057示例了用于分發(fā)和管理邊緣服務器內容控制信息的有用基礎設施,并且這個和其它邊緣服務器控制信息可由CDN服務提供商自己供應或者由操作源服務器的內容提供商顧客(經由外聯(lián)網(wǎng)等)供應。用于將該內容控制信息應用于在邊緣服務器處接收的內容請求的技術在美國專利No. 7,240,100中被描述,該美國專利的公開通過引用被并入本文。 根據(jù)該公開,客戶端請求在被CDN的有權威的DNS識別的邊緣服務器處被接收??蛻舳苏埱蟀℉TTP主機報頭,所述HTTP主機報頭的內容先被檢查以便確認(verify)該請求針對的是正被CDN管理的內容(并且由此,如果該內容之前被另一個請求過并且仍然還在邊緣服務器高速緩存中,則其在該高速緩存中可能是可用的)。如果該請求針對的是被CDN管理的內容,則XML配置文件中的規(guī)則被應用于該請求,并且,針對該客戶端請求返回適當?shù)捻憫?br> ⑶N可包括例如在美國專利No. 7,472,178中描述的存儲子系統(tǒng)。⑶N可操作服務器高速緩存層級(hierarchy)以提供顧客內容的中間高速緩存;在美國專利No. 7,376,716 中描述了一種這樣的高速緩存層級子系統(tǒng)。CDN可在客戶端瀏覽器、邊緣服務器和顧客源服務器之間以在美國公布No. 20040093419中描述的方式提供安全的內容分發(fā)。其中描述的安全的內容分發(fā)一方面在客戶端和邊緣服務器進程之間實施基于SSL的鏈接,另一方面在邊緣服 務器進程和源服務器進程之間實施基于SSL的鏈接。這使得受到SSL保護的網(wǎng)頁和 /或其組件能夠經由邊緣服務器被分發(fā)。
擴展器
現(xiàn)在以上面這些為背景來描述本公開的主題。根據(jù)本公開,⑶N“擴展器”是一個軟件或設備(例如包括這種軟件的裝有架子(rack)的裝置),該軟件或設備(I)能夠提供CDN 供應的內容,(2)在⑶N的控制下這么做,但是(3)不一定是作為⑶N的一部分被被全面管理的。下面來解釋這些性質。如從圖3可以看出的,擴展器300將⑶N的分發(fā)能力更深地擴展到其中(由于技術或其它原因)不能部署CDN的被全面管理的服務器的網(wǎng)絡。該能力可被實現(xiàn)在移動網(wǎng)絡中,有線網(wǎng)絡中,或者CDN覆蓋網(wǎng)絡資源和服務不可用或未被實現(xiàn)的任何其它聯(lián)網(wǎng)環(huán)境中。
術語“擴展器”是為了描述性的目的而取的,不應當用它來限制所公開的主題的范圍。
一般地,擴展器操作為⑶N的邊緣之外的被動web高速緩存代理者。通常,擴展器不能直接訪問CDN中的顧客配置元數(shù)據(jù),并且它通過將請求轉發(fā)給CDN邊緣并且基于從所述邊緣接收的響應報頭而高速緩存/提供內容來與CDN進行交互。
優(yōu)選地,擴展器不需要作為CDN的一部分被全面管理,盡管如將要描述的那樣,擴展器利用了其中的某些功能性。因此,擴展器不需要具有對于因特網(wǎng)的可公開路由的因特網(wǎng)協(xié)議(IP)地址或者開放端口。⑶N網(wǎng)絡操作命令中心(例如圖1中的NOCC 104)不需要監(jiān)視它。擴展器也不需要在分布式數(shù)據(jù)收集服務(例如圖1中的系統(tǒng)108)中報告。同樣地,⑶N NOCC 104將不需要為了配置、供應和/或管理而安全接入到擴展器(例如,經由SSH 等)。NOCC將不需要對于擴展器安裝軟件更新,并且,擴展器將不必接收配置數(shù)據(jù)更新或其它控制數(shù)據(jù)。它將不必處于CDN映射服務提供的任何映射控制之下。簡而言之,擴展器不需要作為服務被管理。而是如將要描述的那樣,擴展器是提供給網(wǎng)絡運營商的軟件或設備, 由該網(wǎng)絡運營商來管理它和監(jiān)視它。
盡管不一定作為⑶N的一部分被管理或全面管理,擴展器優(yōu)選地分發(fā)所有形式的 ⑶N內容(即,為了由⑶NSP在⑶N上進行分發(fā)而已被內容提供商卸載的內容)。此外,擴展器能夠高速緩存和分發(fā)可高速緩存的內容,包括按需媒體。它還能夠分發(fā)不能高速緩存的內容、安全的內容和現(xiàn)場直播的媒體。
為了分發(fā)⑶N內容,擴展器在⑶N的控制下動作。該控制是必需的,因為通常(⑶N 顧客)期望根據(jù)顧客元數(shù)據(jù)規(guī)則而分發(fā)的是正確的內容。另外,CDNSP期望為了該內容的分發(fā)而向其顧客(例如,內容提供商)收費,即使它是從擴展器的高速緩存被分發(fā)的。同樣,CDN 顧客(內容提供商)期望對于它們的內容的分發(fā)進行監(jiān)視和報告。
為了便于該控制,擴展器優(yōu)選地與⑶N資源(例如,被全面管理和配置的⑶N服務器)通信,優(yōu)選地每個請求都進行,并且優(yōu)選地使用基于HTTP的應用編程接口(API),有時本文將其稱為“信息通道”。特別地,根據(jù)本文的技術,無論何時擴展器接收到對于CDN內容的請求,不管它是否已經高速緩存了該內容,優(yōu)選地,擴展器都向CDN服務器作出HTTP請求。通常被全面管理的CDN服務器然后使用(應用)其元數(shù)據(jù)規(guī)則(對于該內容)并且發(fā)回 HTTP答復,就它應當如何響應它所接收的請求來指示擴展器。優(yōu)選地,CDN服務器的HTTP答復還包括當需要時要被分發(fā)的數(shù)據(jù)、以及當被要求時適當?shù)母咚倬彺?鍵,該高速緩存-鍵使得擴展器能夠在其本地高速緩存中正確地索弓I該數(shù)據(jù)對象。CDN服務器(通常,邊緣服務器)還使用該請求中的信息來寫日志(例如,用于計費和歷史報告),將數(shù)據(jù)寫入數(shù)據(jù)收集系統(tǒng)108以便實時報告,并且執(zhí)行任何其它需要的動作。
除了提供CDN顧客內容之外,擴展器還可對于可高速緩存的非CDN顧客內容提供透明的高速緩存。對于透明的高速緩存,通過接收一組端用 戶的所有HTTP請求,擴展器被內聯(lián)(in-line)實現(xiàn)。在請求是針對⑶N內容的情況下,擴展器使用擴展器API并且像上面描述的那樣行動。在非CDN內容的情況下,擴展器像傳統(tǒng)的透明高速緩存那樣行動。但是,與傳統(tǒng)的透明高速緩存不同,除了 URI之外,擴展器還可使用信息(例如內容長度和校驗和) 以唯一地標識和高速緩存數(shù)據(jù)對象。
圖4示出了以該雙重方式操作以處理CDN內容和非CDN內容兩者的擴展器的代表性操作。該操作作為在處理器中執(zhí)行的一組程序指令以軟件實現(xiàn)。當在擴展器處接收到來自端用戶的請求時,該操作在步驟400開始。如上面所述,擴展器位于與CDN覆蓋網(wǎng)絡不同的網(wǎng)絡內或者與該網(wǎng)絡相關聯(lián),但是,擴展器具有經由擴展器API與CDN交互操作的能力。 在步驟402,執(zhí)行測試以確定該請求是否是針對CDN顧客內容的。用于作出該確定的簡單的技術在下面關于圖5進行描述,如將要描述的那樣。如果步驟402處的測試結果指示該請求是針對CDN顧客內容的,那么例程分支到步驟404。在步驟404,執(zhí)行測試以確定所請求的內容是否已經存在于擴展器的高速緩存中。如果是,則通過向⑶N (并且,具體地是由 CDN DNS確定的CDN邊緣服務器)發(fā)送if-modif ied_since (MS)請求,例程在步驟406繼續(xù)?;趶腃DN接收的響應,例程然后在步驟408繼續(xù),即,擴展器向請求端用戶提供適當?shù)腍TTP響應代碼和/或內容請求。但是,如果步驟404的測試結果指示被請求的內容不在擴展器高速緩存中(或者,如果內容存在卻是陳舊的),則例程分支到步驟410。在該步驟,擴展器向CDN發(fā)送HTTP GET請求以取得內容?;趶腃DN接收的響應,處理在如前面描述的那樣的步驟408繼續(xù)。
如果步驟402的測試結果指示被請求的內容不是CDN顧客內容,則例程分支到步驟412。在該步驟,執(zhí)行測試以確定內容是否在擴展器高速緩存中。如果步驟412的測試結果為否,則擴展器向源服務器(有權威的實體)發(fā)送GET請求。這是步驟414?;陧憫桃郧懊婷枋龅姆绞皆诓襟E408繼續(xù)。但是,如果步驟412的測試結果指示內容是可從擴展器的高速緩存被提供而可用的,則在步驟416執(zhí)行測試以確定內容是否有效。如果是,則在步驟418,向請求的端用戶提供內容。如果內容在高速緩存中但不是有效的,則擴展器向源服務器發(fā)送MS以確定內容是否可被生效。這是步驟420?;陧憫?,例程然后以前面描述的方式在步驟408繼續(xù)。這完成了處理。
以該方式,擴展器對于非⑶N內容用作智能的透明web代理者同時還提供(并且在適當時,高速緩存)CDN顧客內容。處理流程中的步驟402涉及確定與端用戶請求相關聯(lián)的域是否屬于CDN顧客。該域可包括在HTTP主機報頭中。執(zhí)行該確定的一種簡單卻有效的方式是使擴展器對于該域執(zhí)行DNS查找。通常,對于⑶N顧客,規(guī)范名(CNAME)的頂級域 (TLD)后綴將是屬于一組一個或多個⑶N邊緣流量域的一個名稱。通過比較最終CNAME的 TLD域與邊緣流量域的列表(其應當相對較短,因為這樣的名稱將很少改變),擴展器能夠確定內容是⑶N顧客內容還是非⑶N顧客內容。圖5示出了對于顧客域“….bestbuy. com”的范例DNS查找,結果是返回一個包括與⑶N相關聯(lián)(S卩,標識⑶N)的TLD后綴“akama1. net” 的最終CNAME。執(zhí)行DNS查找的可替換的方法是通過公布擴展器可訂閱的邊緣流量域的列表而在HTTP報頭中傳遞這樣的信息,等等。上述方法(使用DNS查找)是有利的,因為該信息(顧客是否對于CDN采用CNAME方式命名了特定的域)能夠在一個DNS存活時間(TTL)內被傳播到每個擴展器實例,并且進一步因為來自擴展器的DNS查找還捕獲基于內容提供商的地理的策略以便提供流量。
如上所述,擴展器基于它從CDN邊緣服務器接收的關于內容和高速緩存控制指示方面的信息來高速緩存并且提供⑶N顧客內容。因此,實際上, ⑶N (具體地,邊緣服務器)充當擴展器的“源”服務器。每當擴展器接收到對于CDN顧客(如上面所述的那樣通過DNS 查找而確定的)的內容的請求,擴展器轉發(fā)到⑶N服務器(由DNS查找所返回的IP中的一個)以取得該內容或者如果該內容已經在高速緩存中,則使其生效(優(yōu)選地,通過MS)。默認情況下,該轉發(fā)的請求甚至對于擴展器的高速緩存中的多個對象同步地進行;可替換地, 轉發(fā)操作可不同步地實施,例如,在與擴展器所在的網(wǎng)絡相關聯(lián)的網(wǎng)絡運營商或內容提供商等請求時實施。優(yōu)選地,為了使得邊緣服務器能夠精確地記錄多少字節(jié)被提供給端用戶, 來自擴展器的轉發(fā)請求包含指示端用戶是否已作出了 MS請求的適當?shù)腍TTP報頭。當部分對象被提供到端用戶時,擴展器可向CDN邊緣服務器作出HTTPP0ST請求以精確地表明代表內容提供商提供了多少字節(jié)。
當⑶N邊緣服務器對擴展器作出響應時,優(yōu)選地,它在一個或多個HTTP響應報頭中傳達一些或所有可用的高速緩存控制信息。所述高速緩存控制信息包括例如存活時間 (TTL)截止時間、(當需要時)內容提供商顧客特有的適當?shù)母咚倬彺?鍵、對象是否“未存儲”(no-store)、高速緩存的對象是否應當被清出(對于清出不需要明確的報頭,因為提供 HTTP 404會向擴展器發(fā)出對象應當從高速緩存被刪除的信號)等。如果希望,CDN邊緣服務器可用包含應當預先被擴展器取得的對象的列表的報頭進行響應。另外,CDN邊緣服務器可將特定的元數(shù)據(jù)標簽傳達給擴展器以進一步定制其內容處理操作。在又一個可替換的方法中,CDN邊緣服務器包括向擴展器給出關于對象的流行度的線索的報頭;該信息然后被用于擴展器的高速緩存-更換算法。
優(yōu)選地,擴展器透明地高速緩存和提供包含(但不限于)用戶產生的內容的第三方內容。如果期望,擴展器可被配置為高速緩存僅來自一個目標組的(非CDN)內容提供商的內容。以該方式,擴展器比現(xiàn)成的透明高速緩存提供高得多的高速緩存命中率。為此,擴展器優(yōu)選地包括基于web的或命令行配置界面,通過該界面,操作者動態(tài)地配置應當通過擴展器部署被高速緩存的域的所述列表、子目錄、和內容類型/文件擴展。在一個實施例中, 該目標透明配置或者由網(wǎng)絡運營商或者由CDN手動地產生。該配置可與運營商網(wǎng)絡中的擴展器實例相同或不同。
通過使用良好定義的基于HTTP的API,對于⑶N,擴展器看起來很像一個普通的瀏覽器。在一個實施例中,通過使用常規(guī)的基于CDN的映射技術(例如在美國專利 No. 6,108,703和相關專利中描述的基于⑶N的映射技術),來自擴展器的(到⑶N的)HTTP 請求被映射到最近的CDN邊緣服務器,盡管這沒有被要求??赡苡袛U展器位于特定的CDN 邊緣服務器或邊緣服務器集群中的其它方式。如果需要,擴展器可以在其與CDN服務器的通信中使用持久連接和其他優(yōu)化的協(xié)議??梢葬槍δ承┯蚧蚰承╊惖膬热菔褂贸志眠B接。 范例的優(yōu)化協(xié)議可以是其中TCP窗口大小和RTO基于歷史數(shù)據(jù)等被調整的協(xié)議。擴展器可以并行于使吞吐量最大化地從多個邊緣服務器取得內容。
優(yōu)選地,擴展器在它們被允許與⑶N邊緣服務器交互之前被認證和授權。這確保 CDN服務器僅向合法的擴展器分發(fā)響應??梢詾榇四康亩褂肏MAC密鑰交換協(xié)議。同樣, 優(yōu)選地,⑶N可以審計擴展器實例,如果被發(fā)現(xiàn)是非法的,則撤銷證書。為了實現(xiàn)這一點,針對API和用于定義怎么樣是合法的擴展器的行為規(guī)范 來評估測試套件。擴展器證書僅給予通過該測試套件的軟件或設備,并且如果之后對于該軟件或設備的利用該測試套件的審計失敗,則撤銷證書。在一個非限制性實施例中,證書采用共享秘密或憑據(jù)的形式,使用用于認證和授權的標準機制。證書可以包括用于每個CDN擴展器或擴展器群的標識符。例如, 部署在給定網(wǎng)絡中的所有擴展器可以為報告的目的而共享共同的標識符。當這些擴展器調用API時,該標識符在⑶N中被記錄,這于是使得能夠例如經由⑶N外聯(lián)網(wǎng)(比如基于web 的、安全的顧客入口)進行報告。然后,網(wǎng)絡運營商能夠訪問該入口并且看到顯示在其網(wǎng)絡中從擴展器分發(fā)了多少流量的報告。優(yōu)選地,通過擴展器提供的所有第三方流量也被報告給CDN(邊緣服務器)以使得其能夠通過數(shù)據(jù)收集系統(tǒng)被記錄并且之后被處理以便報告。為了減少記錄量,數(shù)據(jù)(關于邊緣請求和被提供的字節(jié)、源請求和所取得的字節(jié)等方面的)被成組地報告,而不是每單次命中(hit)就單獨地報告。
優(yōu)選地,擴展器支持網(wǎng)絡特定的協(xié)議優(yōu)化。在許多情況下,與上游段(在擴展器與擴展器被映射到的CDN邊緣服務器之間)相比,網(wǎng)絡屬性(帶寬、反應時間和抖動等)在下游段(在擴展器與端用戶設備之間)將非常不同。通過在擴展器處終止TCP,不同的TCP參數(shù)和不同的優(yōu)化能夠被應用在這兩個段之間,由此提高總體吞吐量和效率。
擴展器還可為了內容適應或認證的目的而具有捕獲下層網(wǎng)絡信息并將其傳達到應用層的能力。例如,集成到移動網(wǎng)絡的擴展器可看到嵌入在移動通信協(xié)議中的下層設備信息。為了獲得設備標識和相關信息,擴展器可以訪問網(wǎng)絡運營者的控制通道。在該情況下,擴展器可以被配置為提取該信息并且將其包括在HTTP API調用中,然后擴展器對于 ⑶N進行HTTP API調用。設備信息現(xiàn)在在HTTP報頭中,這樣的信息可被在⑶N (或在客戶的原有基礎設施)中被使用以便為目標移動設備做內容適應。
類似地,為了認證,存在于下層移動通信協(xié)議中的標識符(例如,S頂標識符)可被提取并且包含在HTTP API調用中回到⑶N。該標識符現(xiàn)在在HTTP報頭中,此標識符可被用作顧客的認證系統(tǒng)的一部分。這些SIM標識符使認證者(authenticator)變強,并且由此允許簡單形式的雙重認證。例如,在移動電子銀行應用中,用戶可以通過具有移動設備加密碼而被認證。此外,在HTTP層處的該集成意味著顧客(本例子中為銀行)只需要與CDN做單一整合。他們將不需要與每個移動網(wǎng)絡運營商分別做整合。
由此,當擴展器前進到CDN邊緣服務器時,邊緣服務器可確認它正在與合法的擴展器通信,并且該邊緣服務器可識別該擴展器所屬的運營商。
可以用按比例縮小的方式將擴展器實現(xiàn)為“微型擴展器”。再一次地,這里使用的術語不應當被看作是限制性的。通常,微型擴展器提供基本擴展器功能性的子集,比如識別對于CDN內容的請求和將那些請求轉發(fā)給附近的CDN邊緣服務器。在UMTS網(wǎng)絡的情況下, 通過這樣的機制,⑶N相關的請求將不必通過分組核心網(wǎng)到達可能非常遠的因特網(wǎng)網(wǎng)關。而是CDN相關的請求可以去近得多的CDN服務器。另外,請求可以包括下層協(xié)議參數(shù),如上所述。
一組擴展器可以在集群中彼此位于附近或者位于同一地點,在該情況下,可以在它們上實現(xiàn)負載共享例程。這將允許單個位置具有多個擴展器以便處理另外的負載或者為了失效備援或者是既為了處理另外的負載又為了失效備援。未存儲的內容可從集群中的擴展器被取得(例如,在ICP上)。
更一般地, 特定的網(wǎng)絡實現(xiàn)可以根據(jù)運營商期望如何集成到目標網(wǎng)絡并且流量如何被重定向而使用一些不同類型的擴展器。簡單的集成使用基于DNS的重定向。在該情況下,擴展器僅接收對于CDN內容的請求。它們將不執(zhí)行透明高速緩存或拾取下層協(xié)議參數(shù)。另一個可能的集成使用Web高速緩存通信協(xié)議(WCCP)來將某些端口上的所有HTTP請求重定向到擴展器。圖6提供使用該技術的代表性的實現(xiàn)。在該例子中,擴展器602、604和606 與網(wǎng)絡內的路由器608相關聯(lián)。如眾所周知的,WCCP是用于將流量引導到透明高速緩存代理者的最常用的方法。它允許一個(WCCPvI)或多個(WCCPv2)路由器使用高速緩存服務器的集群作為本地內容代理者。在高速緩存服務器的集群中,一個服務器被選作首領。該集成能夠實現(xiàn)透明高速緩存但是不能實現(xiàn)下層協(xié)議參數(shù)的拾取。最后,可以通過直接內聯(lián)在通信路徑上的擴展器來完成集成。該集成要求擴展器對于該路徑上的協(xié)議的專門化。在該情況下,擴展器拾取下層協(xié)議參數(shù)。該后一種類型的集成對于否則便不可訪問的網(wǎng)絡內的深入是方便的。
擴展器的每個上述處理優(yōu)選地以可在一個或多個作為專用機器的處理器中執(zhí)行的作為一組程序指令的計算機軟件被實現(xiàn)。在其上提供本文的主題的代表性的機器可以是運行Linux或Linux變型操作系統(tǒng)和一個或多個應用以執(zhí)行所描述的功能性的基于Intel 奔騰的計算機。上面描述的處理中的一個或多個被實現(xiàn)為用于執(zhí)行所描述的功能性的計算機程序,即一組計算機指令。圖7示出了被實現(xiàn)為安裝了架子的硬件設備的代表性的擴展器。擴展器700包括一個或多個處理器702、磁盤存儲704、存儲器706、操作系統(tǒng)708、透明連接的高速緩存710、應用和插件712、基于web的配置器714和網(wǎng)絡I/O支持716。透明連接的高速緩存710可用已知的諸如Apache流量服務器(一種HTTP/1.1兼容的高速緩存代理者服務器)的代理者高速緩存軟件(被一個或多個應用712修改或控制來提供本文描述的功能性)實現(xiàn)。高速緩存710可被細分(劃分)成用于高速緩存CDN顧客內容的第一部分和用于高速緩存非CDN內容的第二部分。
此外,本文的主題不限于用于任何特定類型的電信網(wǎng)絡、協(xié)議或技術。僅為了例示性的目的,本公開在以UMTS/GSM網(wǎng)絡為代表性的移動服務提供商的聯(lián)網(wǎng)環(huán)境的上下文中來描述本發(fā)明。本發(fā)明可同樣在CDMA聯(lián)網(wǎng)環(huán)境中、或者在其他已知的或以后開發(fā)的包括但不限于演進的分組核心網(wǎng)(EPC)、4G/LTE、WLAN (包括WiFi)等的環(huán)境中或其上被實現(xiàn)。同樣,CDN實施例也是例示性的,因為其它形式的CDN架構(例如,在少量的數(shù)據(jù)中心中部署大服務器集群的架構,將服務器置于大的對等點處或者其附近的架構等)也可以按照本文描述的方式與移動或有線網(wǎng)絡互操作。
在一個示例場景中,擴展器與運營商的核心網(wǎng)基礎設施(例如,移動運營商的網(wǎng)關站點,其可包括SGSN、GGSN等)相關聯(lián)地被實現(xiàn)在UMTS 3G兼容的網(wǎng)絡內并且被用來便于將內容(包括CDN內容)分發(fā)到移動連接的設備(例如智能型手機或平板電腦)。
如所描述的,優(yōu)選地,擴展器包括例如能夠通過網(wǎng)絡運營商實現(xiàn)動態(tài)配置管理的基于web的配置界面。該動態(tài)配置包括一些選項。一個選項是指定允許高速緩存哪種⑶N 顧客內容(被指定為內容類型和域的列表)的能力。默認選項是基于來自CDN邊緣服務器的高速緩存控制指令而顛覆性地(with overrides)高速緩存所有的⑶N顧客內容。另一個選項是指定允許高速緩存哪種第三方內容(被指定為內容類型和域的列表)的能力。默認選項是高速緩存所有的第三方內容。再另一個選項是為CDN顧客內容與第三方內容劃分磁盤高速緩存空間,和/或為特定的域或域的集合劃分磁盤高速緩存空間。又另一個選項是為 CDN顧客內容和第三方透明 高速緩存的內容劃分擴展器的可用吞吐量以獲得期望的吞吐量的水平/百分比。
優(yōu)選地,網(wǎng)絡運營商能夠從運營商的擴展器部署確定⑶N正在提供多少流量。這些報告是基于被分布式數(shù)據(jù)系統(tǒng)處理的日志或其它數(shù)據(jù)的。它們可以包括例如被提供的總的流量、CDN顧客流量與非CDN顧客流量、用于所識別網(wǎng)站的流量、被端用戶地理耗費掉的流量、和被擴展器集群或地理耗費掉的流量等。擴展器可以借助于SNMP或者其它網(wǎng)絡管理軟件或系統(tǒng)來輸出這樣的數(shù)據(jù)。
如上面描述的,擴展器實現(xiàn)高速緩存。高速緩存是透明連接(到⑶N)的高速緩存, 如已經描述的。如果需要,擴展器可以實現(xiàn)高速緩存驅逐率,所述高速緩存驅逐率受到全局流行度(基于由CDN提供的信息)的影響,并且運營商可以使用配置界面來共享在擴展器部署中產生的流行度數(shù)據(jù)。如果需要,CDN邊緣服務器可被編程為向擴展器提供另外的數(shù)據(jù), 例如網(wǎng)絡狀況、預測數(shù)據(jù)、和內容規(guī)則等,以關于CDN流量和非CDN流量兩者影響擴展器的操作。
如果CDN邊緣服務器不向客戶端提供響應,則擴展器不向客戶端提供響應。優(yōu)選地,擴展器從其高速緩存提供響應,如果其指向的CDN邊緣服務器向客戶端提供相同的響應。在上面描述的方法中,當在擴展器中存在高速緩存命中時,擴展器詢問CDN邊緣服務器;CDN邊緣服務器(具體地,其web高速緩存代理者)決定對于該特定請求,擴展器是應當使用高速緩存的內容還是提供從CDN邊緣服務器接收的新內容。在該上下文中,決定對于任何給定的請求什么是能夠高速緩存的和能夠存多長的業(yè)務邏輯在CDN邊緣服務器中被實現(xiàn)。換句話說,擴展器將該處理委托給CDN。一種可替換的方法是將該業(yè)務邏輯中的一些移到擴展器以使得它不需要對于每個請求都聯(lián)系CDN。在該變型中,擴展器得到關于CDN 邊緣服務器如何處理某些請求(并且由此自己可接管該功能性)、或者它(從邊緣服務器)接收對于自身如何執(zhí)行這種處理的指令方面的那些不變型的先驗知識。在再另一個可替換方法中,擴展器從CDN邊緣服務器接收足夠的信息以便能夠對于客戶端請求獨立地決定向客戶端提供高速緩存的響應是否是安全的。如果擴展器不能確定從其高速緩存對于特定請求進行響應是安全的,則它轉發(fā)到CDN。該方法可能在當對于CDN邊緣服務器已知的信息在邊緣服務器將其傳達給擴展器之后發(fā)生了改變的情形下具有限制。為了解決這個問題,可以強加擴展器使高速緩存的內容重新生效(不管其他考慮)的最小頻率。
在一個⑶N-擴展器運行場景中,如果⑶N邊緣服務器能夠確定(根據(jù)可適于被請求的URL的顧客元數(shù)據(jù))響應僅取決于該URL,則邊緣服務器優(yōu)選地在響應報頭中向擴展器傳遞所取得的對象的剩余TTL和可高速緩存性。然后,擴展器知道對于剩余TTL的持續(xù)時間來說,高速緩存這樣的對象是安全的。但是,如果CDN邊緣服務器不能確定響應僅取決于請求URL,則它在響應報頭中向擴展器傳遞該事實,在該情況下,擴展器可能不高速緩存該響應。如果CDN邊緣服務器能夠確定(例如,根據(jù)可適于被請求的URL的顧客元數(shù)據(jù))響應由請求URL并且由特定的請求報頭字段完全確定,則優(yōu)選地,邊緣服務器在 Vary響應報頭中列出特定的請求報頭字段。其中響應改變的標志出現(xiàn)在安全匹配以外的匹配(狀況)(比如,關于主機請求報頭的匹配,或者關于URL的匹配)內的CDN邊緣服務器中的任何顧客配置優(yōu)選地使CDN邊緣服務器響應于擴展器而設定專門的控制比特。
雖然上面描述了由本發(fā)明的一些實施例執(zhí)行的操作的特定順序,但應理解,這樣的順序是例示性的,因為可替換的實施例可能以不同的順序執(zhí)行操作,組合某些操作,或重疊某些操作等。說明書中提到給定實施例表明所描述的實施例可以包括特定的特征、結構或特性,但是每個實施例可以不一定包括所述特定的特征、結構或特性。
雖然所公開的主題已經以方法或處理的上下文被描述,但是本公開還涉及用于執(zhí)行本文的操作的裝置。該裝置可以為了所需要的目的而專門構建,或者它可包括專用計算機,所述專用計算機被存儲在該計算機中的計算機程序選擇性地激活或重新配置。這樣的計算機程序可被存儲在計算機可讀存儲介質(比如但不限于包含光盤、CD-ROM、磁光盤的任何類型的磁盤、只讀存儲器(ROM)、隨機訪問存儲器(RAM)、磁卡或光卡)或適于存儲電子指令的任何類型的介質中,并且,每個耦接到計算機系統(tǒng)總線。
盡管分散地描述了系統(tǒng)的給定部件,但是本領域普通技術人員將明白,一些功能可以在給定的指令、程序序列、和代碼部分等中被組合或共享。
在描述了本發(fā)明 之后,現(xiàn)在將在下面附上權利要求。
權利要求
1.一種裝置,包括處理器;高速緩存;計算機存儲器,保存由處理器執(zhí)行的計算機程序指令以執(zhí)行方法,所述方法包括接收對于內容的請求;確定所述內容是第一類型的還是第二類型的,所述第一類型是適于在與該裝置不同的內容分發(fā)網(wǎng)絡(CDN)上分發(fā)的內容,所述第二類型與所述第一類型不同;如果所述內容是第一類型的并且位于高速緩存中,則從所述CDN接收高速緩存處理指示;應用從所述CDN接收的高速緩存處理指示并且根據(jù)所述高速緩存處理指示來提供所述內容;以及如果所述內容是第二類型的,則透明地高速緩存并且響應于請求而提供所述內容。
2.根據(jù)權利要求1所述的裝置,其中,接收高速緩存處理指示的步驟包括以下子步驟接收標識所述CDN中的邊緣資源的信息;將生效請求引導到標識的邊緣資源;以及接收響應于所述生效請求的所述高速緩存處理指示,所述高速緩存處理指示已通過應用顧客特定的配置數(shù)據(jù)而在所述邊緣資源處被確定。
3.根據(jù)權利要求1所述的裝置,其中,所述高速緩存被分成第一部分和第二部分,所述第一部分用于高速緩存第一類型的內容,所述第二部分用于高速緩存所述第二類型的內容。
4.根據(jù)權利要求1所述的裝置,其中,確定內容是否是第一類型的步驟將與請求相關聯(lián)的域和CDN邊緣流量域的列表進行比較。
5.根據(jù)權利要求4所述的裝置,其中,所述與請求相關聯(lián)的域是規(guī)范名(CNAME)的頂級域(TLD)。
6.根據(jù)權利要求1所述的裝置,其中,從所述CDN接收的所述高速緩存處理指示是以下之一存活時間(TTL)截止時間 不存儲”指示、以及表示內容是否應當從高速緩存被清出的數(shù)據(jù)。
7.根據(jù)權利要求1所述的裝置,其中,所述高速緩存與所述CDN同步地或異步地通信以從所述CDN接收所述高速緩存處理指示。
8.根據(jù)權利要求1所述的裝置,其中,所述方法還包括向所述CDN認證所述高速緩存。
9.根據(jù)權利要求1所述的裝置,其中,所述方法還包括向所述CDN提供數(shù)據(jù)。
10.根據(jù)權利要求9所述的裝置,其中,所述數(shù)據(jù)標識從所述高速緩存提供的所述第一類型的數(shù)據(jù)以及從所述高速緩存提供的所述第二類型的數(shù)據(jù)。
11.根據(jù)權利要求1所述的裝置,其中,所述高速緩存處理指示包括唯一地與和CDN顧客關聯(lián)的特定域相關聯(lián)的高速緩存密鑰。
12.—種內容分發(fā)方法,所述內容分發(fā)方法與第三方內容分發(fā)網(wǎng)絡(CDN)相關聯(lián)地實施,所述CDN包括一組邊緣服務器和對于由所述CDN提供的一個或多個內容提供商域有權威的DNS,所述方法包括在與所述CDN不同的網(wǎng)絡中部署高速緩存;在所述高速緩存和至少一個邊緣服務器之間建立信息通道;以及使用所述信息通道來控制與所述內容提供商域相關聯(lián)的內容如何從所述高速緩存被提供。
13.根據(jù)權利要求12所述的方法,其中,所述網(wǎng)絡是移動網(wǎng)絡。
14.根據(jù)權利要求12所述的方法,其中,所述網(wǎng)絡是有線網(wǎng)絡。
15.根據(jù)權利要求12所述的方法,還包括透明地高速緩存并且從所述高速緩存提供與所述內容提供商域以外的域相關聯(lián)的內容。
16.根據(jù)權利要求12所述的方法,其中,所述高速緩存將所述內容分發(fā)網(wǎng)絡擴展到所述網(wǎng)絡。
全文摘要
內容分發(fā)網(wǎng)絡(CDN)包括一組邊緣服務器和對由CDN提供的內容提供商域有權威的域名服務(DNS)。CDN被擴展到不能或者不支持被全面管理的CDN邊緣服務器的一個或多個移動或有線網(wǎng)絡。特別地,“擴展器”被部署在移動或有線網(wǎng)絡中,優(yōu)選地作為在CDN的邊緣之外但是在CDN的控制之下提供CDN供應的內容的被動的web高速緩存代理者。擴展器也可被用于透明地高速緩存和提供非CDN內容。在擴展器和CDN之間建立信息通道以便于擴展器功能性。
文檔編號G06Q50/00GK103069776SQ201180029965
公開日2013年4月24日 申請日期2011年6月20日 優(yōu)先權日2010年6月18日
發(fā)明者R·D·布盧莫菲, V·卡尼特卡, D·S·沃爾瑟 申請人:阿卡麥科技公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
富顺县| 宁都县| 石台县| 虹口区| 迁安市| 南昌市| 澳门| 西青区| 祁连县| 柘荣县| 明水县| 台中县| 灵武市| 固始县| 两当县| 余庆县| 峡江县| 寻甸| 平潭县| 泾阳县| 集安市| 民权县| 镇赉县| 方山县| 莱阳市| 石门县| 德安县| 禹城市| 丹江口市| 长岛县| 定边县| 泸西县| 湖南省| 左贡县| 邻水| 巨鹿县| 晋州市| 三原县| 吉安县| 吐鲁番市| 隆德县|