本發(fā)明涉及用于在通信網(wǎng)絡(luò)中分配內(nèi)容的方法和系統(tǒng),并且更具體地涉及允許內(nèi)容分配節(jié)點(diǎn)在沿通信網(wǎng)絡(luò)的任何點(diǎn)處被實(shí)例化和配置的可擴(kuò)展框架。
背景技術(shù):
圖1描繪了常規(guī)通信網(wǎng)絡(luò)100,其中將內(nèi)容(例如,圖片、音樂、視頻等)從源服務(wù)器102分配到終端用戶裝置112a-112p。源服務(wù)器102可以由一或多個(gè)內(nèi)容提供商(例如,媒體公司、電子商務(wù)提供商等)來操作,其中一些示例包括加利福尼亞州洛斯蓋多斯市netflix,inc.tm;華盛頓州西雅圖市的amazon.com;紐約州紐約市cbstm;加利福尼亞州伯班克市華特迪士尼公司tm。
源服務(wù)器102可通過內(nèi)容遞送網(wǎng)絡(luò)(cdn)104和運(yùn)營商網(wǎng)絡(luò)110通信地耦合到終端用戶裝置112a-112p。cdn104可以包括分布式服務(wù)器系統(tǒng),其中服務(wù)器是物理服務(wù)器或托管在虛擬機(jī)上的進(jìn)程。這種服務(wù)器可以被稱為cdn服務(wù)器、cdn節(jié)點(diǎn)或內(nèi)容遞送節(jié)點(diǎn)。為了簡單起見,cdn104被描繪為具有兩個(gè)服務(wù)器:彼此通信耦合的cdn入口106和cdn出口108。cdn入口106被配置成從源服務(wù)器102接收內(nèi)容并且將內(nèi)容分配給cdn出口108。cdn出口108被配置成從cdn入口106接收內(nèi)容并且將內(nèi)容分配到運(yùn)營商網(wǎng)絡(luò)110。運(yùn)營商網(wǎng)絡(luò)110然后將內(nèi)容遞送到終端用戶112a-112p。
cdn在通信網(wǎng)絡(luò)100中服務(wù)若干個(gè)目的。首先,它可提供web高速緩存的功能,從而允許頻繁請求的內(nèi)容高速緩存在與源服務(wù)器102的位置相比地理上更靠近終端用戶裝置112a-112p的位置處。因此,內(nèi)容可能以更短的延遲供應(yīng)到終端用戶裝置112a-112p(與直接從源服務(wù)器102供應(yīng)內(nèi)容相比)。作為高速緩存功能的附加益處,可以減少源服務(wù)器102上的負(fù)載(即源服務(wù)器102可以經(jīng)歷較少的請求)。第二,它可以允許將動(dòng)態(tài)內(nèi)容(例如,互聯(lián)網(wǎng)協(xié)議電視(iptv)等)實(shí)時(shí)地(或近實(shí)時(shí)地)傳輸?shù)浇K端用戶裝置112a-112p。通過cdn入口106與cdn出口108之間的專用網(wǎng)絡(luò)可以部分地啟用內(nèi)容的快速遞送(即專用于cdn的運(yùn)營商)。cdn運(yùn)營商的示例包括馬薩諸塞州劍橋市akamaitechnologiestm;亞利桑那州坦佩市l(wèi)imelightnetworkstm;以及科羅拉多州布隆菲市l(wèi)evel3communications,inc.tm。
運(yùn)營商網(wǎng)絡(luò)110可以是有線和/或無線網(wǎng)絡(luò)。例如,運(yùn)營商網(wǎng)絡(luò)110可以包括運(yùn)營網(wǎng)絡(luò)、互聯(lián)網(wǎng)服務(wù)提供商(isp)等。根據(jù)習(xí)慣術(shù)語,運(yùn)營商網(wǎng)絡(luò)110可以由“網(wǎng)絡(luò)運(yùn)營商”或“運(yùn)營商”提供(勿與“cdn運(yùn)營商”混淆)。運(yùn)營商的示例包括德克薩斯州達(dá)拉斯市at&ttm;英國紐伯里市vodafonegroupplctm;以及美國華盛頓州貝爾維尤市t-mobileus,inc.tm。
終端用戶裝置112a-112p可以包括臺(tái)式計(jì)算機(jī)、膝上型計(jì)算機(jī)、平板計(jì)算裝置、移動(dòng)電話、電視等,其中的每個(gè)可以由一或多個(gè)終端用戶操作。
在通信網(wǎng)絡(luò)100中,內(nèi)容提供商可以為了cdn運(yùn)營商通過cdn104遞送其內(nèi)容(和/或?qū)⑵鋬?nèi)容高速緩存在cdn104內(nèi))而支付cdn運(yùn)營商。最近,一些內(nèi)容提供商(例如,netflix)已經(jīng)決定完全繞過cdn運(yùn)營商,從而選擇將其自己的cdn(例如,來自netflix的openconnecttmcdn)放置在運(yùn)營商網(wǎng)絡(luò)110內(nèi)部。這種操作模式的優(yōu)點(diǎn)是,不僅節(jié)省了否則將支付給cdn運(yùn)營商的資金而且還使內(nèi)容更接近終端用戶裝置112a-112p,從而導(dǎo)致更快傳輸,這改善了終端用戶(例如,內(nèi)容消費(fèi)者)的服務(wù)質(zhì)量以超過另外通過cdn104可能質(zhì)量。
圖2示出了根據(jù)繞過cdn運(yùn)營商的上述方案的一個(gè)實(shí)施方式的通信網(wǎng)絡(luò)200。在通信網(wǎng)絡(luò)200中,內(nèi)容提供商的源服務(wù)器102直接地耦合到運(yùn)營商網(wǎng)絡(luò)110(其間沒有cdn104)。由內(nèi)容提供商提供的cdn節(jié)點(diǎn)(例如,內(nèi)容提供商cdn入口202a-202n、內(nèi)容提供商cdn出口206a-206m)位于運(yùn)營商網(wǎng)絡(luò)110內(nèi)。內(nèi)容提供商cdn入口202a-202n中的每一個(gè)可以從源服務(wù)器102接收內(nèi)容,并且通過交換機(jī)204將所接收的內(nèi)容分配到內(nèi)容提供商cdn出口206a-206m中的一或多個(gè)。內(nèi)容提供商cdn出口206a-206m中的每一個(gè)進(jìn)而可以將源服務(wù)器102的內(nèi)容分配到終端用戶裝置112a-112p中的一或多個(gè)。
雖然通信網(wǎng)絡(luò)200向內(nèi)容提供商(其擁有插入運(yùn)營商網(wǎng)絡(luò)中的cdn節(jié)點(diǎn))提供上述優(yōu)點(diǎn),但是運(yùn)營商(即運(yùn)營商網(wǎng)絡(luò)110的運(yùn)營商)面臨著將來自越來越多的內(nèi)容提供商的越來越多的cdn節(jié)點(diǎn)集成在其網(wǎng)絡(luò)(即運(yùn)營商網(wǎng)絡(luò)110)內(nèi)的挑戰(zhàn)。雖然運(yùn)營商可受益于與內(nèi)容提供商的這種合作(例如,在減少到運(yùn)營商網(wǎng)絡(luò)的流量回程、從內(nèi)容提供商對運(yùn)營商的數(shù)據(jù)中心內(nèi)的主機(jī)cdn的支付的方面等),但是根據(jù)內(nèi)容提供商的要求,現(xiàn)有的運(yùn)營商網(wǎng)絡(luò)根本未設(shè)計(jì)用于將第三方cdn插入到運(yùn)營商網(wǎng)絡(luò)中。此外,在通信網(wǎng)絡(luò)100和200中,運(yùn)營商進(jìn)一步面臨以下兩難境地:被歸入于“啞管道”和放棄對cdn運(yùn)營商(圖1的通信網(wǎng)絡(luò)100中)和內(nèi)容提供商(圖2的通信網(wǎng)絡(luò)200中)更有利可圖的內(nèi)容遞送服務(wù)。以下描述的一些方面提供了緩解網(wǎng)絡(luò)運(yùn)營商的這些問題的解決方案,并且為內(nèi)容提供商提供便利。
附圖說明
圖1描繪了用于將內(nèi)容從源服務(wù)器分配到終端用戶裝置的通信網(wǎng)絡(luò)。
圖2描繪了用于將內(nèi)容從源服務(wù)器分配到終端用戶裝置的通信網(wǎng)絡(luò)。
圖3-4描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的系統(tǒng)的框圖,所述系統(tǒng)允許內(nèi)容提供商設(shè)計(jì)和部署內(nèi)容遞送網(wǎng)絡(luò)。
圖5a-5u描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的用于配置內(nèi)容遞送網(wǎng)絡(luò)的門戶網(wǎng)站的屏幕截圖。
圖6描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的可擴(kuò)展全局軟件負(fù)載平衡器(gslb)的框圖。
圖7描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的內(nèi)容分配節(jié)點(diǎn)。
圖8描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的通信地耦合到節(jié)點(diǎn)集群的負(fù)載平衡器,負(fù)載平衡器被配置成執(zhí)行新節(jié)點(diǎn)的動(dòng)態(tài)發(fā)現(xiàn)和自動(dòng)配置。
圖9a描繪了通信地耦合到節(jié)點(diǎn)集群的常規(guī)負(fù)載平衡器。
圖9b描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的在其中集成了負(fù)載平衡功能的節(jié)點(diǎn)集群。
圖10描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的增強(qiáng)插件功能的媒體適配器。
圖11描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的用于將內(nèi)容從源服務(wù)器分配到終端用戶裝置的通信網(wǎng)絡(luò)。
圖12描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的集成邊緣和無線電接入網(wǎng)絡(luò)(ran)服務(wù)的流程圖。
圖13a-13c示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的使用可信中介的兩方安全套接字層(ssl)處理的系統(tǒng)圖。
圖14描繪了計(jì)算機(jī)系統(tǒng)的部件,其中可以存儲(chǔ)和執(zhí)行實(shí)例化本發(fā)明的方法的計(jì)算機(jī)可讀指令。
具體實(shí)施方式
在優(yōu)選實(shí)施方式的以下詳細(xì)描述中,參考形成其一部分的附圖,并且在附圖中借助于圖示而示出了可實(shí)踐本發(fā)明的具體實(shí)施方式。應(yīng)當(dāng)理解,在不脫離本發(fā)明的范圍的情況下,可以利用其他實(shí)施方式并且可以做出結(jié)構(gòu)改變。與任何一個(gè)附圖相關(guān)聯(lián)的描述可應(yīng)用于包含類似或相似的部件/步驟的不同的附圖。雖然流程圖各自以特定順序呈現(xiàn)一系列步驟,但是步驟順序可以改變。
根據(jù)本發(fā)明的一個(gè)實(shí)施方式,提供了一種平臺(tái),其允許內(nèi)容提供商(或網(wǎng)絡(luò)運(yùn)營商或甚至cdn運(yùn)營商)沿內(nèi)容遞送鏈在任何地方(即包括源服務(wù)器102和終端用戶裝置112a-112p之間以及包括其的任何地方)處實(shí)例化節(jié)點(diǎn)。這些節(jié)點(diǎn)可以在運(yùn)營商網(wǎng)絡(luò)110內(nèi)實(shí)例化,而不要求內(nèi)容提供商將物理硬件塊放置在運(yùn)營商網(wǎng)絡(luò)110內(nèi)(如圖2的通信網(wǎng)絡(luò)110所要求的)。為了詳細(xì)說明,節(jié)點(diǎn)可以被實(shí)例化為云計(jì)算平臺(tái)(諸如amazonec2和amazons3)中的進(jìn)程。這些節(jié)點(diǎn)可以是源服務(wù)器、cdn入口、cdn出口等。平臺(tái)還允許內(nèi)容提供商通信地耦合已實(shí)例化的節(jié)點(diǎn),從而本質(zhì)上允許內(nèi)容提供商設(shè)計(jì)和部署覆蓋在運(yùn)營商網(wǎng)絡(luò)110上(或集成在運(yùn)營商網(wǎng)絡(luò)110內(nèi))的內(nèi)容遞送網(wǎng)絡(luò)。
圖3描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的系統(tǒng)300的高級框圖(即上述平臺(tái)的一個(gè)實(shí)施方式),所述系統(tǒng)300允許內(nèi)容提供商設(shè)計(jì)和部署內(nèi)容遞送網(wǎng)絡(luò)。首先,內(nèi)容提供商可以使用門戶304(例如,門戶網(wǎng)站)來指定每個(gè)節(jié)點(diǎn)(例如,每個(gè)節(jié)點(diǎn)是源服務(wù)器、cdn入口、cdn出口等中的一或多個(gè))的要求(例如,服務(wù))以及每個(gè)節(jié)點(diǎn)之間的特定耦合裝置。為了便于描述,說明書的其余部分將主要將內(nèi)容提供商關(guān)聯(lián)為門戶304的用戶,但是這不一定必需如此。如前所述,網(wǎng)絡(luò)運(yùn)營商或甚至cdn運(yùn)營商可以操作門戶304。在另一個(gè)實(shí)施方式中,門戶304的功能可以與另一個(gè)門戶(未描繪)或應(yīng)用程序(未描繪)集成。
本質(zhì)上,門戶304可以用于指定內(nèi)容遞送網(wǎng)絡(luò)的“藍(lán)圖”。門戶304可以通過(實(shí)例化模塊318的)守護(hù)程序314將該設(shè)計(jì)信息傳送到儲(chǔ)存庫312(以下描述)。然后,守護(hù)程序314可基于存儲(chǔ)在儲(chǔ)存庫312中的設(shè)計(jì)信息來創(chuàng)建映射文件316(映射文件定義應(yīng)當(dāng)在哪里構(gòu)建什么)。然后,可以將映射文件316作為輸入提供給中間件306,中間件可以部署由映射文件316指定的內(nèi)容分配網(wǎng)絡(luò)(具有一或多個(gè)節(jié)點(diǎn))。然后,中間件306可以注冊在全球軟件負(fù)載平衡器(gslb)308處供應(yīng)的每個(gè)節(jié)點(diǎn)的地址(例如,ip地址),以使得gslb可以使新配置的節(jié)點(diǎn)的服務(wù)可用于現(xiàn)有節(jié)點(diǎn)和終端用戶裝置112a。
以下是可由中間件306執(zhí)行的其他功能:例如,中間件306可以將國際航空運(yùn)輸協(xié)會(huì)(iata)代碼中指定的節(jié)點(diǎn)位置轉(zhuǎn)換為城市、州(或反之亦然)。更一般地,中間件306可以允許在任何云平臺(tái)上供應(yīng)節(jié)點(diǎn)(例如,紐約、紐約市digitalocean,inctm;amazonec2等)。然后,所供應(yīng)的節(jié)點(diǎn)可以被中間件306歸一化(例如,虛擬機(jī)的圖像操作系統(tǒng)(無論是否是windows、linux等)可以被歸一化,功能調(diào)用可以被歸一化,數(shù)據(jù)類型可以被歸一化),從而允許在任何云平臺(tái)上統(tǒng)一查看節(jié)點(diǎn)。此外,中間件306還可以允許在云平臺(tái)的各種虛擬機(jī)上調(diào)用功能。實(shí)質(zhì)上,中間件306是抽象層,從而允許控制器302與任何云平臺(tái)進(jìn)行通信。
節(jié)點(diǎn)310a和節(jié)點(diǎn)310b是兩個(gè)示例性節(jié)點(diǎn),這兩個(gè)節(jié)點(diǎn)已經(jīng)被守護(hù)程序314實(shí)例化并且可以是沿著內(nèi)容傳遞鏈描繪的任何節(jié)點(diǎn)。節(jié)點(diǎn)310a和節(jié)點(diǎn)310b可以各自通信地耦合到gslb308(作為圖6中討論的增強(qiáng)名稱解析的一部分),以使得請求可以被適當(dāng)?shù)芈酚傻矫總€(gè)節(jié)點(diǎn)。節(jié)點(diǎn)310a和節(jié)點(diǎn)310b還可以各自通信地耦合到守護(hù)程序314。每個(gè)節(jié)點(diǎn)可以配置為標(biāo)準(zhǔn)域名系統(tǒng)(dns)服務(wù)器、標(biāo)準(zhǔn)超文本傳輸協(xié)議(http)服務(wù)器、或增強(qiáng)節(jié)點(diǎn)。如果節(jié)點(diǎn)被配置為增強(qiáng)節(jié)點(diǎn),那么節(jié)點(diǎn)可以向gslb308將其自身識別為非標(biāo)準(zhǔn)dns服務(wù)器或非標(biāo)準(zhǔn)http服務(wù)器,并且提供附加元數(shù)據(jù)(例如,當(dāng)前網(wǎng)絡(luò)條件、精確位置信息、客戶訂閱級別、節(jié)點(diǎn)性能數(shù)據(jù)等),所述元數(shù)據(jù)允許gslb308提供附加響應(yīng)(例如,節(jié)點(diǎn)性能數(shù)據(jù)、替代內(nèi)容位置等)。
圖4描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的圖3的部件的另外細(xì)節(jié)。儲(chǔ)存庫502通??梢远xvcdn。在儲(chǔ)存庫312內(nèi)可以是儲(chǔ)存庫312a和312b,其包含封裝信息以及可以驅(qū)動(dòng)如何構(gòu)建封裝的元數(shù)據(jù)。例如,元數(shù)據(jù)可以指示正在其上構(gòu)建vcdn的平臺(tái)的類型(例如,windows、ubuntu等),以及正在構(gòu)建vcdn的環(huán)境(例如,制作、分級、開發(fā)、測試等)。儲(chǔ)存庫312內(nèi)可以是用于保存不同客戶(例如,內(nèi)容提供商或網(wǎng)絡(luò)運(yùn)營商)的數(shù)據(jù)的儲(chǔ)存庫312c-312g,并且每個(gè)儲(chǔ)存庫312c-312g可以被映射到不同的節(jié)點(diǎn)。簡而言之,儲(chǔ)存庫可以保存數(shù)據(jù)、配置/封裝信息、和/或驅(qū)動(dòng)應(yīng)如何構(gòu)建vcdn的元數(shù)據(jù)。
在圖4中,為實(shí)例化模塊318提供另外細(xì)節(jié)。除了先前描述的守護(hù)程序314(負(fù)責(zé)創(chuàng)建節(jié)點(diǎn)的實(shí)例)和映射文件316(指定除其他外應(yīng)實(shí)例化的位置)之外,實(shí)例化模塊318還可包括確保服務(wù)器(例如,vcdn節(jié)點(diǎn))正在運(yùn)行的監(jiān)視器402。實(shí)例化模塊318還可以包括注釋404,其提供守護(hù)程序314的進(jìn)一步細(xì)節(jié)。例如,在守護(hù)程序314的每個(gè)目錄(例如,開發(fā)、生產(chǎn)、分級、測試等的每個(gè)環(huán)境的一個(gè)目錄)內(nèi),可能存在安裝目、日志目錄、測試框架等。
在圖4中,提供了示例性映射文件,其指示了應(yīng)當(dāng)在分級環(huán)境中并且通過mediawarptm服務(wù)器的作用在舊金山(即iata代碼=sfo)中實(shí)例化一個(gè)vcdn節(jié)點(diǎn);應(yīng)當(dāng)在分級環(huán)境中并且通過mediawarp服務(wù)器的作用在荷蘭阿姆斯特丹市(即iata代碼=ams)中實(shí)例化vcdn節(jié)點(diǎn);并且應(yīng)當(dāng)在分級環(huán)境中并且通過mediawarp服務(wù)器的作用在紐約市(即iata代碼=j(luò)fk)中實(shí)例化一個(gè)vcdn節(jié)點(diǎn)。
為了提供某上下文,系統(tǒng)300可被視為“端到端解決方案”(即,能夠構(gòu)建從源服務(wù)器102直到通向終端用戶裝置112a-112p的網(wǎng)絡(luò)的內(nèi)容遞送網(wǎng)絡(luò)),其提供了非常不相交的網(wǎng)絡(luò)擴(kuò)建的管理概述。過去,網(wǎng)絡(luò)已演變成用于滿足特定需求,而不是從戰(zhàn)略角度進(jìn)行架構(gòu)。這樣做是為了允許某人(例如,內(nèi)容提供商、網(wǎng)絡(luò)運(yùn)營商等)對那些網(wǎng)絡(luò)施加策略。并非必須構(gòu)建遞送特定類型內(nèi)容、特定安全性要求、特定延遲要求等的解決方案,一方可以在需要時(shí)根據(jù)需要而僅供應(yīng)特定類型節(jié)點(diǎn)。
圖5a-5u描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的用于配置端到端解決方案的門戶網(wǎng)站304的屏幕截圖。如圖5a的屏幕截圖所描繪,可以向內(nèi)容提供商提供配置和部署虛擬cdn的選項(xiàng)(例如,用于路由和/或高速緩存來自源服務(wù)器的內(nèi)容的進(jìn)程、在云計(jì)算平臺(tái)上運(yùn)行的進(jìn)程)。還可以向內(nèi)容提供商提供配置和部署邊緣節(jié)點(diǎn)的選項(xiàng)(例如,用于路由和/或高速緩存來自虛擬cdn的內(nèi)容的進(jìn)程、在云計(jì)算平臺(tái)上運(yùn)行的進(jìn)程)。還可以向內(nèi)容提供商提供配置和部署無線電接入網(wǎng)絡(luò)(ran)節(jié)點(diǎn)的選項(xiàng)(例如,用于路由和/或高速緩存來自邊緣節(jié)點(diǎn)的內(nèi)容的進(jìn)程、在云計(jì)算平臺(tái)中運(yùn)行的進(jìn)程)。還可以向內(nèi)容提供商提供配置和部署源節(jié)點(diǎn)的選項(xiàng)(例如,用于存儲(chǔ)和提供內(nèi)容的進(jìn)行、在云計(jì)算平臺(tái)上運(yùn)行的進(jìn)程)。還可以向內(nèi)容提供商提供觀看已部署的內(nèi)容遞送網(wǎng)絡(luò)的分析的選項(xiàng)(例如,請求的平均延遲等)。還可以向內(nèi)容提供商提供配置和部署路由器的選項(xiàng)。還可以向內(nèi)容提供商提供訪問開發(fā)中心的選項(xiàng),所述開發(fā)中心為內(nèi)容提供商提供開發(fā)建議并且訪問內(nèi)容提供商可以在設(shè)計(jì)和部署服務(wù)時(shí)使用的第三方應(yīng)用程序。
圖5b描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5a的用戶界面中的“虛擬cdn(vcdn)”圖標(biāo)時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,內(nèi)容提供商可以提供vcdn的名稱。在本示例中,已將“節(jié)點(diǎn)1”的名稱分配給vcdn。內(nèi)容提供商可以選擇是否要在運(yùn)營商的地區(qū)網(wǎng)絡(luò)、運(yùn)營商的ran和/或公共云中實(shí)例化vcdn。在選擇“運(yùn)營商-地區(qū)”選項(xiàng)后,內(nèi)容提供商可以選擇要在其內(nèi)實(shí)例化vcdn的地區(qū)網(wǎng)絡(luò)的城市。在本示例中,已經(jīng)選擇城市芝加哥和西雅圖,并且可以將標(biāo)針放置在地圖上以便可視地指示內(nèi)容提供商的這種選擇。在選擇“運(yùn)營商-ran”選項(xiàng)后,內(nèi)容提供商可以同樣選擇要在其內(nèi)實(shí)例化vcdn的ran網(wǎng)絡(luò)的城市(未描繪)。選擇“公共云”選項(xiàng)后,內(nèi)容提供商可以同樣地選擇要在其內(nèi)實(shí)例化vcdn的公共云的城市(未描繪)。內(nèi)容提供商可以附加地選擇vcdn的資源分配級別,無論其是偏移、中等、快速還是更快。在本例中,選擇了便宜的資源分配。在高級配置屏幕(未描繪)中,代替呈現(xiàn)有便宜、中等、快速和更快的選項(xiàng),可以向內(nèi)容提供商呈現(xiàn)服務(wù)器定價(jià)選項(xiàng)列表,并且允許所述內(nèi)容提供商選擇特定的服務(wù)器。
圖5c描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5b的用戶界面中的“虛擬cdn(vcdn)”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,內(nèi)容提供商可以配置vcdn的服務(wù),特別是vcdn的基本cdn服務(wù)、媒體服務(wù)和/或ran服務(wù)。在選擇“基礎(chǔ)cdn服務(wù)”鏈接后,可以向內(nèi)容提供商呈現(xiàn)用cdn高速緩存和/或透明高速緩存的基礎(chǔ)cdn服務(wù)來配置vcdn的選項(xiàng)。在本示例中,選擇了cdn高速緩存的選項(xiàng)。
圖5d描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5c的用戶界面中的“媒體服務(wù)”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,可以向內(nèi)容提供商呈現(xiàn)用多屏遞送、wan加速、免費(fèi)數(shù)據(jù)、網(wǎng)頁優(yōu)化、邊緣dns和/或虛擬機(jī)(vm)托管的媒體服務(wù)來配置vcdn的選項(xiàng)。在本示例中,已選擇了多屏遞送和免費(fèi)數(shù)據(jù)的選項(xiàng)。
圖5e描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5d的用戶界面中的“ran服務(wù)”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,可以向內(nèi)容提供商呈現(xiàn)用ran智能內(nèi)容管理和/或ran高速緩存的ran服務(wù)來配置vcdn的選項(xiàng)。在本示例中,已選擇了ran智能內(nèi)容管理的選項(xiàng)。
圖5f描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5e的用戶界面中的“彈性”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,可以允許內(nèi)容提供商配置vcdn的彈性,vcdn應(yīng)當(dāng)具有高彈性、中等彈性、低彈性,以及要在彈性花費(fèi)的最大$/hr。在本示例中,已選擇了低彈性性能的選項(xiàng)。
圖5g描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5f的用戶界面中的“部署”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,可以向內(nèi)容提供商提供內(nèi)容提供商為vcdn選擇的配置的摘要。例如,對于“vcdn名稱”屬性,顯示“節(jié)點(diǎn)1”的參數(shù);對于“運(yùn)營商-地區(qū)”屬性,顯示“芝加哥、西雅圖”參數(shù)等。
圖5h描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5a的用戶界面中的“邊緣節(jié)點(diǎn)”圖標(biāo)時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,內(nèi)容提供商可以配置邊緣節(jié)點(diǎn)的多屏遞送的輸入。內(nèi)容提供商可以選擇輸入應(yīng)當(dāng)是視頻點(diǎn)播、直播和/或線性的。在本示例中,已選擇了視頻點(diǎn)播的輸入。也可以通過選擇“瀏覽媒體”圖標(biāo)向內(nèi)容提供商提供上傳媒體的選項(xiàng)。
圖5i描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5h的用戶界面中的“2輸出”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在所述用戶界面中,內(nèi)容提供商可以配置邊緣節(jié)點(diǎn)的多屏遞送的輸出。內(nèi)容提供商可以選擇輸出格式應(yīng)當(dāng)是hls、mss、dash和/或hds。在本示例中,已經(jīng)選擇了hls、mss和dash的輸出格式。內(nèi)容提供商還可以選擇輸出配置文件應(yīng)當(dāng)是移動(dòng)hd、家庭hd和/或桌面高清。在本示例中,已經(jīng)選擇了移動(dòng)hd的選項(xiàng)。
圖5j描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5i的用戶界面中的“3安全”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,內(nèi)容提供商可以配置在圖5i的用戶界面中選擇的輸出格式的設(shè)置。對于hls的輸出格式,內(nèi)容提供商可以選擇aes_128、播放就緒、adobe訪問和/或marlin的設(shè)置。對于mss的輸出格式,內(nèi)容提供商可以選擇播放就緒的設(shè)置(未描繪)。對于dash的輸出格式,內(nèi)容提供商可以選擇播放就緒、marlin和/或公共加密的設(shè)置(未描繪)。對于hds的輸出格式,內(nèi)容提供商可以選擇adobe訪問的設(shè)置(未描繪)。
圖5k描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5j的用戶界面中的“4廣告拼接”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,內(nèi)容提供商可以選擇要被拼接到已上傳媒體中的廣告資產(chǎn)。例如,內(nèi)容提供商可以選擇長度為32秒的“heinz.ismv”、長度為20秒的“dogs.ismv”等的廣告資產(chǎn)。對于每個(gè)廣告資產(chǎn),內(nèi)容提供商可以選擇在前貼片廣告、后貼片廣告和/或插播廣告中拼接廣告資產(chǎn)。
圖5l描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5k的用戶界面中的“網(wǎng)頁優(yōu)化”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,內(nèi)容提供商可以選擇用于邊緣節(jié)點(diǎn)的網(wǎng)頁優(yōu)化的域。內(nèi)容提供商可以選擇域是否應(yīng)當(dāng)被配置用于試用和/或生產(chǎn)。內(nèi)容提供商還可以輸入域的主url。在本示例中,提供了為www<dot>cnn<dot>operatorexchange<dot>org的主url。內(nèi)容提供商還可輸入域的源服務(wù)器。在本示例中,提供以下源服務(wù)器:我的源服務(wù)器1:8085和我的源服務(wù)器1:8085。內(nèi)容提供商還可以輸入待優(yōu)化的附加域。
圖5m描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5k的用戶界面中的“映射”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,內(nèi)容提供商可以輸入待優(yōu)化的附加域、以及應(yīng)排除的輸入路徑。
圖5n描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5m的用戶界面中的“優(yōu)化”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,可以向內(nèi)容提供商提供滑動(dòng)條以便選擇網(wǎng)站和/或移動(dòng)站點(diǎn)應(yīng)被優(yōu)化的程度(例如,優(yōu)化應(yīng)當(dāng)是安全的或激進(jìn)的程度)。
圖5o描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖4n的用戶界面中的“選項(xiàng)”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,可以向內(nèi)容提供商提供a/b測試,站點(diǎn)分析、外部部件、廣告插入和/或分析的選項(xiàng)。
圖5p描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5o的用戶界面中的“cdn高速緩存”鏈接時(shí)呈現(xiàn)給內(nèi)容提供商。在該用戶界面中,內(nèi)容提供商可以指定高速緩存覆蓋策略(例如,是否應(yīng)當(dāng)尊重所有現(xiàn)有的標(biāo)題,是否在1分鐘、5分鐘之后十家高速緩存覆蓋策略等)。內(nèi)容提供商可以附加地指定源保持活動(dòng)超時(shí)的持續(xù)時(shí)間(以秒為單位)、和/或客戶端保持活動(dòng)超時(shí)的持續(xù)時(shí)間(以秒為單位)。相對于令牌認(rèn)證,內(nèi)容提供商可以指定目標(biāo)url(用于創(chuàng)建md5散列)、共享秘密、令牌到期時(shí)間(日期/時(shí)間)、受限訪問url和/或推薦者url。此外,可以向內(nèi)容提供商提供用于生成作為md5散列輸出的散列的選項(xiàng)。
圖5q描繪了用戶界面的屏幕截圖,所述用戶界面可以在選擇圖5a的用戶界面中的“ran節(jié)點(diǎn)”圖標(biāo)時(shí)呈現(xiàn)給內(nèi)容提供商。該用戶界面呈現(xiàn)一個(gè)地圖,其中各種ran節(jié)點(diǎn)的位置被標(biāo)記在地圖上。節(jié)點(diǎn)可以是3g節(jié)點(diǎn)或4g節(jié)點(diǎn)。此外,可以指示與節(jié)點(diǎn)相關(guān)聯(lián)的流量,無論是高、中還是低。內(nèi)容提供商可以選擇一或多個(gè)ran節(jié)點(diǎn)以便合并到正在設(shè)計(jì)或配置的內(nèi)容遞送網(wǎng)絡(luò)中。
圖5r描繪了與圖5q的用戶界面中的內(nèi)容提供商已經(jīng)選擇的節(jié)點(diǎn)相關(guān)聯(lián)的流量的實(shí)時(shí)視圖(即,正在被主動(dòng)更新的)的截圖(即小區(qū)572)。實(shí)時(shí)視圖可以描繪與所選節(jié)點(diǎn)相關(guān)聯(lián)的擁塞程度、帶寬和活動(dòng)用戶數(shù)量。此外,實(shí)時(shí)視圖可以描繪節(jié)點(diǎn)隨時(shí)間的擁塞和往返時(shí)間(rtt)的圖。此外,實(shí)時(shí)視圖可以描繪節(jié)點(diǎn)隨時(shí)間的帶寬和用戶數(shù)量的曲線。
圖5s描繪了與圖5q的用戶界面中的內(nèi)容提供商已經(jīng)選擇的節(jié)點(diǎn)相關(guān)聯(lián)的流量的快照視圖(即,用于分析的數(shù)據(jù)的靜態(tài)視圖)的截圖(即小區(qū)572)。快照視圖可以描繪節(jié)點(diǎn)隨著時(shí)間的擁塞(例如,5分鐘持續(xù)時(shí)間內(nèi)的時(shí)間平均、或用戶可配置的時(shí)間標(biāo)度)和rtt(例如,1秒鐘持續(xù)時(shí)間內(nèi)的時(shí)間平均)的曲線。此外,實(shí)時(shí)視圖可以描繪節(jié)點(diǎn)隨時(shí)間的帶寬和用戶數(shù)量的曲線。ran集成的一個(gè)重要部分是可以使用網(wǎng)絡(luò)性能來實(shí)時(shí)調(diào)整vcdn服務(wù)。例如,當(dāng)存在網(wǎng)絡(luò)擁塞時(shí),內(nèi)容提供商可以限制提供的流視頻的質(zhì)量,在網(wǎng)頁中返回較低質(zhì)量的圖像,設(shè)置不同的網(wǎng)絡(luò)qos比特,延遲某些類型的流量等。
圖5t描繪了與圖5q的用戶界面中的內(nèi)容提供商已經(jīng)選擇的節(jié)點(diǎn)相關(guān)聯(lián)的流量的數(shù)據(jù)視圖的截圖(即,小區(qū)572)。數(shù)據(jù)視圖可以描繪節(jié)點(diǎn)隨時(shí)間的擁塞程度的曲線,包括每個(gè)時(shí)間的最小、平均和最大擁塞程度。數(shù)據(jù)視圖可以描繪節(jié)點(diǎn)隨時(shí)間的rtt的曲線,包括每個(gè)時(shí)間的最小、平均和最大rtt。數(shù)據(jù)視圖可以描繪節(jié)點(diǎn)隨時(shí)間的帶寬的曲線,包括每個(gè)時(shí)間的最小、平均和最大帶寬。數(shù)據(jù)視圖可以描繪節(jié)點(diǎn)隨時(shí)間的活動(dòng)用戶數(shù)量的曲線,包括每個(gè)時(shí)間的最小、平均和最大活動(dòng)用戶數(shù)量。
圖5u描繪了與圖5q的用戶界面中的內(nèi)容提供商已經(jīng)選擇的節(jié)點(diǎn)相關(guān)聯(lián)的流量的信令視圖的截圖(即,小區(qū)572)。信令視圖可以描繪節(jié)點(diǎn)隨時(shí)間處理的總呼叫的曲線,以及這些呼叫是否是來自漫游者。信令視圖還可指示是否存在任何失敗呼叫(在這種情況下沒有),以及是否存在任何失敗呼叫(在這種情況下沒有)。
圖6描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的全局軟件負(fù)載平衡器(gslb)308。gslb308可以包括核心服務(wù)602,其可以提供以下功能:協(xié)議處理(例如,dns、http、ldap、radis)、請求/響應(yīng)路由、插件管理、日志記錄、報(bào)告、負(fù)載平衡和集群管理。核心服務(wù)602可以通信地耦合到數(shù)據(jù)庫634,所述數(shù)據(jù)庫634存儲(chǔ)每個(gè)節(jié)點(diǎn)的地址、其正在管理的資源的地址轉(zhuǎn)換、和/或其他配置信息。為了清楚起見,應(yīng)當(dāng)注意,數(shù)據(jù)庫634與中間件306的儲(chǔ)存庫502是分離的。
核心服務(wù)602還可以通過api604通信地耦合到可擴(kuò)展前端接口610。前端接口610通常負(fù)責(zé)接收從客戶端(其可以是節(jié)點(diǎn)310a)接收請求,并且提供對這些請求的響應(yīng)。前端接口610在其功能可通過添加插件來擴(kuò)展的意義上,可以是可擴(kuò)展的。例如,可以包括dns插件612以便允許gslb308與dns服務(wù)器(未描繪)進(jìn)行通信;可以包括http插件614以允許gslb308與http服務(wù)器通信(未描繪);并且可以包括輕量級目錄訪問協(xié)議(ldap)插件以便允許gslb308與ldap服務(wù)器通信(未描繪)。
在一個(gè)實(shí)施方式中,前端接口610可以基于元數(shù)據(jù)(例如,命名的權(quán)限指針(naptr)記錄)向節(jié)點(diǎn)310a提供增強(qiáng)的響應(yīng)。naptr記錄可能包含:順序值(即,指定必須處理naptr記錄的順序的16位無符號整數(shù))、偏好(即,指定應(yīng)當(dāng)處理具有相等順序值的naptr記錄的順序的16位無符號整數(shù))、標(biāo)志集(即,用于控制記錄中的字段的重寫和解釋方面的標(biāo)志)、服務(wù)名稱(即,指定在重寫路徑下可用的服務(wù))、正則表達(dá)式規(guī)則(即包含施加到由客戶端保持的原始字符串以便構(gòu)造要查找的下一個(gè)域名的替換表達(dá)式的字符串)、以及替換模式(即,要查詢的naptr、srv的下一名稱,或根據(jù)標(biāo)志字段的值的地址記錄)。
核心服務(wù)602還可通過api606通信地耦合到可擴(kuò)展后端接口618。后端接口618通常負(fù)責(zé)與后端服務(wù)器(其可以是節(jié)點(diǎn)310b)接口連接以便確定對客戶端請求的響應(yīng)。后端接口618在其功能可以通過添加插件來擴(kuò)展的意義上,可以是可擴(kuò)展的。例如,可以包括地理插件620以便允許gslb308進(jìn)行基于地理位置的決定(例如,哪些資源在地理上最接近);可以包括健康插件622以便允許gslb308進(jìn)行基于健康的確定(例如,服務(wù)器向上或向下);可以包括成本插件624以便允許gslb308進(jìn)行基于成本的決定(例如,運(yùn)營商網(wǎng)絡(luò)是否比傳統(tǒng)cdn更昂貴);并且可以包括分配插件626以便允許gslb308進(jìn)行基于分配的決定(例如,一半的數(shù)據(jù)包應(yīng)分配給北美,一半的數(shù)據(jù)包應(yīng)分配給非洲)。在一個(gè)插件的輸出可以被設(shè)置為另一個(gè)插件的輸入的意義上,一或多個(gè)插件可以“鏈接在一起”。最后,可以為客戶(例如,內(nèi)容提供商或網(wǎng)絡(luò)運(yùn)營商)提供lua腳本部件628和外部接口630以便編寫實(shí)現(xiàn)其業(yè)務(wù)邏輯的腳本。通常,添加新代碼涉及編寫c或c++代碼,添加測試用例、以及進(jìn)行完整的產(chǎn)品交付周期。這里允許的是編寫簡單的腳本。腳本環(huán)境提供核心服務(wù)器與代碼之間的保護(hù)層,并且因此腳本的使用是安全的而不用抽出釋放進(jìn)程。
核心服務(wù)602還可以通過api608通信地耦合到守護(hù)程序314。
以下是節(jié)點(diǎn)如何與gslb308交互的一些具體示例。假設(shè)節(jié)點(diǎn)310a希望將請求中繼到另一個(gè)節(jié)點(diǎn),那么節(jié)點(diǎn)310a可以向gslb308詢問請求應(yīng)中繼到哪個(gè)節(jié)點(diǎn)。如果gslb308具有關(guān)于網(wǎng)絡(luò)故障和網(wǎng)絡(luò)路徑的信息,那么gslb308可以告訴節(jié)點(diǎn)310a到達(dá)節(jié)點(diǎn)b而不是節(jié)點(diǎn)a,因?yàn)橛幸粋€(gè)到節(jié)點(diǎn)b的良好路徑。假設(shè)節(jié)點(diǎn)310a想要在pod(即節(jié)點(diǎn)集群)中找到最少加載的服務(wù)器,那么gslb308可以構(gòu)建目標(biāo)列表,詢問每個(gè)目標(biāo)的當(dāng)前負(fù)載,然后將該列表提供回節(jié)點(diǎn)310a。節(jié)點(diǎn)310a可以選擇要返回期望數(shù)據(jù)的一或多個(gè)服務(wù)。它還可以向gslb308提供回有關(guān)未來請求或帶外請求的實(shí)際性能數(shù)據(jù)。這將覆蓋最少加載的服務(wù)器可能處于較不期望的網(wǎng)絡(luò)路徑(即,具有不良性能的網(wǎng)絡(luò))的情況??偠灾?,節(jié)點(diǎn)可以與gslb308通信以便找到最佳節(jié)點(diǎn),并且然后gslb308可以與目標(biāo)節(jié)點(diǎn)進(jìn)行通信以便確定實(shí)際上哪些節(jié)點(diǎn)是最佳節(jié)點(diǎn)。
圖7描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的節(jié)點(diǎn)310(例如,節(jié)點(diǎn)310a、節(jié)點(diǎn)310b或cdn上下文中的任何其他節(jié)點(diǎn))的框圖。節(jié)點(diǎn)310可以包括導(dǎo)體702,導(dǎo)體可以是用于遞送cdn服務(wù)的http代理。導(dǎo)體702可以通過帶外通信信道與提供商704通信。供應(yīng)器704可能負(fù)責(zé)管理cdn服務(wù)器上的內(nèi)容,并且可能試圖確保最受歡迎的內(nèi)容(例如,以文件的形式)存儲(chǔ)在最快形式存儲(chǔ)上,并且最不流行內(nèi)容存儲(chǔ)在最慢形式存儲(chǔ)上。圖7中示出了四種示例性存儲(chǔ)方式:存儲(chǔ)器706、固態(tài)驅(qū)動(dòng)器(ssd)708、sata驅(qū)動(dòng)器710和網(wǎng)絡(luò)攻擊存儲(chǔ)(nas)712(其中存儲(chǔ)器706是最快存儲(chǔ)形式,ssd是次快存儲(chǔ)形式等)。為了響應(yīng)內(nèi)容流行性(或其他度量)的增加,內(nèi)容可以提升到更快的存儲(chǔ)形式,或者響應(yīng)于內(nèi)容流行性(或其他度量)的減少,內(nèi)容可降級到較慢存儲(chǔ)形式。如果不再需要內(nèi)容,那么可以刪除內(nèi)容。供應(yīng)器60還可幫助導(dǎo)體80確定特定內(nèi)容是否存儲(chǔ)在存儲(chǔ)設(shè)備706、708、710和712中的一或多個(gè)中。
導(dǎo)體702可以附加地與web服務(wù)器714通信,所述web服務(wù)器714可以是允許直接提供內(nèi)容而不必通過代理傳遞內(nèi)容的標(biāo)準(zhǔn)web服務(wù)器。web服務(wù)器714可允許將節(jié)點(diǎn)310配置為源服務(wù)器。應(yīng)當(dāng)注意,web服務(wù)器714(和節(jié)點(diǎn)310的其他軟件部件)可以是在云計(jì)算平臺(tái)上運(yùn)行的一或多個(gè)進(jìn)程(其包括存儲(chǔ)器706、ssd708、sata驅(qū)動(dòng)器710、nas712中的一或多個(gè))。
導(dǎo)體702還可通過插件api716與多個(gè)插件(718a、718b和718c)進(jìn)行通信。雖然已描繪了三個(gè)插件,但是應(yīng)當(dāng)理解,節(jié)點(diǎn)310中可能存在任何數(shù)量插件。每個(gè)插件可以用c++和/或通過腳本進(jìn)行編寫。此外,每個(gè)插件可以彼此通信。例如,插件718a的輸出可以被設(shè)置為插件718b的輸入。
導(dǎo)體702可以附加地通過插件api716與插件服務(wù)720進(jìn)行通信。插件服務(wù)720允許將其他服務(wù)集成到節(jié)點(diǎn)310中。插件服務(wù)720的兩個(gè)特定服務(wù)可以是內(nèi)部客戶端和內(nèi)部源。為了說明內(nèi)部客戶端的功能,考慮的是,在web服務(wù)器724中,作為插件的一部分,該插件可能需要喚起http中的另一個(gè)web服務(wù)器執(zhí)行某個(gè)功能。它的一個(gè)重現(xiàn)是稱為互聯(lián)網(wǎng)內(nèi)容適配協(xié)議(icap)的協(xié)議,這個(gè)協(xié)議通常用于喚起安全裝置執(zhí)行諸如身份驗(yàn)證或病毒掃描的任務(wù)。內(nèi)部客戶端可以向安全裝置做出請求。作為另一個(gè)示例,內(nèi)部客戶端可喚起廣告服務(wù)器來確定要插入什么廣告。作為另一個(gè)示例,內(nèi)部源可以將新的應(yīng)用程序庫嵌入服務(wù)器中并且使其做出直接響應(yīng)。
為了說明內(nèi)部源的功能,僅考慮將流媒體轉(zhuǎn)換為期望任何輸出格式的即時(shí)封裝。的任務(wù)可以由內(nèi)部源執(zhí)行。代替向節(jié)點(diǎn)310外部的部件做出進(jìn)行該轉(zhuǎn)換的請求,可以存儲(chǔ)單一公共格式媒體,并且然后媒體可以期望輸出格式(即稱為轉(zhuǎn)換)重新封裝。內(nèi)部源允許一種非常靈活地將新的邏輯嵌入節(jié)點(diǎn)310的方式。此外,考慮兩個(gè)服務(wù)應(yīng)當(dāng)在同一個(gè)框上運(yùn)行的實(shí)例。假設(shè)您不想將開銷用于http,那么內(nèi)部源提供了一種與外部服務(wù)器(即節(jié)點(diǎn)310外部的服務(wù)器)靈活通信以便獲得對客戶端請求的響應(yīng)的方式。
內(nèi)部客戶端與內(nèi)部源之間的一個(gè)差異是內(nèi)部客戶端只能使用http進(jìn)行通信,而內(nèi)部源可以使用其決定實(shí)現(xiàn)的任何協(xié)議進(jìn)行通信。如果內(nèi)部源將要使用http,那么它將創(chuàng)建一個(gè)內(nèi)部客戶端的一個(gè)實(shí)例來進(jìn)行這個(gè)請求。另一個(gè)差異是,內(nèi)部客戶端只為一個(gè)請求而存在,而內(nèi)部源在導(dǎo)體啟動(dòng)時(shí)產(chǎn)生,并且一直存在,直到導(dǎo)體終止。
圖8描繪了請求流程800,請求流程由終端用戶裝置112a發(fā)起以訪問由中間件306提供的一或多個(gè)節(jié)點(diǎn)(例如,806a、806b、806c)。在步驟1,終端用戶裝置112a可以與gslb308進(jìn)行通信以便確定在哪里發(fā)送其請求。gslb然后可以向終端用戶裝置112a提供ip地址,ip地址可對應(yīng)于軟件負(fù)載平衡器的虛擬ip(vip)地址。在本示例中,假設(shè)ip地址對應(yīng)于軟件負(fù)載平衡器(slb)804的vip地址。(這個(gè)示例假設(shè)已供應(yīng)了節(jié)點(diǎn)集群,在這種情況下,終端用戶裝置112a不直接與節(jié)點(diǎn)通信,而是通過slb804與節(jié)點(diǎn)通信。)在步驟2,終端用戶裝置112a可以向slb804傳輸其請求。在步驟3中,slb804可以選擇一個(gè)后端服務(wù)器(806a、806b、806c)以便響應(yīng)終端用戶裝置112a的請求,并且將該請求轉(zhuǎn)發(fā)到所選擇的后端服務(wù)器。
根據(jù)本發(fā)明的一個(gè)實(shí)施方式,服務(wù)器群集的大小可動(dòng)態(tài)地改變(例如,增加和/或減小)。為了說明群集大小的動(dòng)態(tài)增加,假設(shè)正在添加服務(wù)器806d(例如,重新由中間件306實(shí)例化)。服務(wù)器806d可首先向我的db808注冊(例如,通過傳輸諸如其角色和位置的元數(shù)據(jù))其自身。slb804可以周期性地查詢我的db以便確定它(即slb804)是否應(yīng)當(dāng)基于其相應(yīng)作用和/或位置來管理任何服務(wù)器。一旦服務(wù)器806d已經(jīng)向我的db808注冊,slb804就可以通過我的db808發(fā)現(xiàn)服務(wù)器806d。然后,slb804可以管理服務(wù)器806d??梢灶愃品绞綄⒎?wù)器從集群移除??偠灾瑘D8示出了來自終端用戶的請求如何全局地路由到節(jié)點(diǎn),以及如何通過新節(jié)點(diǎn)的動(dòng)態(tài)而發(fā)現(xiàn)和自動(dòng)配置來實(shí)現(xiàn)負(fù)載平衡。
圖9(包括圖9a和圖9b)描述了圖8中描述的負(fù)載平衡技術(shù)的變型。圖9a給出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的某個(gè)背景信息,并且圖9b示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的負(fù)載平衡技術(shù)。圖9a描繪了如何通過f5負(fù)載平衡器(902)常規(guī)地執(zhí)行負(fù)載平衡(來自華盛頓西雅圖市f5networks,inc.tm)。gslb308可通過其vip將流量路由到負(fù)載平衡器902,并且負(fù)載平衡器902可以根據(jù)期望策略來平衡到后端服務(wù)器(904a、904b和904c)的流量。圖9a的配置900的一個(gè)缺點(diǎn)是f5負(fù)載平衡器是昂貴的,成本約為$25,000至$100,000。此外,負(fù)載平衡器902是物理設(shè)備(而不是虛擬設(shè)備),其需要人將設(shè)備物理地放置在數(shù)據(jù)中心(或其他位置)中并且將設(shè)備物理連接到網(wǎng)絡(luò)。在其他配置中,負(fù)載平衡器902可以是虛擬設(shè)備,但是仍然存在與獲取虛擬設(shè)備的許可相關(guān)的成本。
圖9b描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的用于執(zhí)行負(fù)載平衡的配置920。在配置920中,負(fù)載平衡器902的功能已并入每個(gè)節(jié)點(diǎn)922a、922b和922c中。代替將vip分配給軟件或物理負(fù)載平衡器,可以將vip臨時(shí)注冊到節(jié)點(diǎn)集群內(nèi)的一個(gè)節(jié)點(diǎn),并且從一個(gè)節(jié)點(diǎn)周期性地重新分配到另一個(gè)節(jié)點(diǎn)。
在配置920中,gslb308可以向vip指示請求,所述vip被注冊到節(jié)點(diǎn)集群中的一個(gè)節(jié)點(diǎn)(假設(shè)在該示例中其被分配給節(jié)點(diǎn)922a)。當(dāng)節(jié)點(diǎn)922a從gslb308接收請求時(shí),節(jié)點(diǎn)922a可能需要基于哪個(gè)節(jié)點(diǎn)具有所請求的內(nèi)容以及每個(gè)節(jié)點(diǎn)上的當(dāng)前負(fù)載來確定請求應(yīng)當(dāng)被路由到哪里。在確定用于處理請求的節(jié)點(diǎn)時(shí)(為了便于討論,將確定的節(jié)點(diǎn)稱為“目標(biāo)節(jié)點(diǎn)”),節(jié)點(diǎn)922a可以將請求重定向到目標(biāo)節(jié)點(diǎn)(假設(shè)在示例中目標(biāo)節(jié)點(diǎn)是節(jié)點(diǎn)922c)。
在過去方法中,可以通過http重定向來執(zhí)行這種重定向。例如,節(jié)點(diǎn)922a可以向客戶端(該客戶端發(fā)送請求,未描繪客戶端)發(fā)送響應(yīng),從而指引客戶端連接到節(jié)點(diǎn)922c。然而,這種方案具有大的性能影響。
與過去方法相反,根據(jù)本發(fā)明的一個(gè)實(shí)施方式的方法以如下方式重定向請求:首先,節(jié)點(diǎn)922a終止與客戶端的傳輸控制協(xié)議(tcp)連接。然后,節(jié)點(diǎn)922a從客戶端讀取足夠的請求(例如,包括在請求中指定的url)決定請求應(yīng)當(dāng)被發(fā)送到的位置。同時(shí),節(jié)點(diǎn)922a存儲(chǔ)來自與請求相關(guān)聯(lián)的客戶端的數(shù)據(jù)包流。一旦節(jié)點(diǎn)922a確定請求應(yīng)當(dāng)被發(fā)送到的位置,節(jié)點(diǎn)922a就可以停止從客戶端接收數(shù)據(jù)包(例如,停止接收syn-ack流)。然后,節(jié)點(diǎn)922a可以使用反向信道將記錄的數(shù)據(jù)包發(fā)送到目標(biāo)節(jié)點(diǎn)922c。當(dāng)目標(biāo)節(jié)點(diǎn)922c接收到記錄的數(shù)據(jù)包時(shí),它基本上重播連接的設(shè)置并重播到目標(biāo)節(jié)點(diǎn)922c,看起來連接剛剛啟動(dòng),并且目標(biāo)節(jié)點(diǎn)922c可以為客戶端生成響應(yīng)??偠灾?,該方法提供了一種將初始存在于第一節(jié)點(diǎn)與第二節(jié)點(diǎn)之間的tcp連接遷移到第一節(jié)點(diǎn)和第三節(jié)點(diǎn)的有效方式。該方法的一個(gè)優(yōu)點(diǎn)是不需要內(nèi)核級修改(即與每個(gè)節(jié)點(diǎn)相關(guān)聯(lián)的內(nèi)核)。此負(fù)載平衡方案可以在mac、windows和/或支持內(nèi)核模塊的任何操作系統(tǒng)上工作。
圖10描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的媒體適配器1002a-1002n,媒體適配器可以增強(qiáng)一或多個(gè)插件718a-718n的功能(例如,可以輔助一個(gè)插件解析http數(shù)據(jù)包的有效負(fù)載)。為了給即時(shí)媒體適配器提供某個(gè)上下文,在apachehttp服務(wù)器(以下稱為“apache”)的傳統(tǒng)插件中,apache將解析http請求/響應(yīng)并且使得應(yīng)用程序開發(fā)者訪問http數(shù)據(jù)包的標(biāo)頭。apache可以操縱標(biāo)頭,但是在了解http負(fù)載或正文的時(shí)候,apache不提供對其的任何訪問權(quán)限。因此,如果應(yīng)用程序開發(fā)者希望將廣告插入到流式視頻中,那么應(yīng)用程序開發(fā)者將需要具有專用于能解析視頻容器的域,并且編寫操縱方法以便在您想要的任何地方插入或播放,但這意味著應(yīng)用程序開發(fā)者需要具有專用于進(jìn)行任何類型的媒體操縱的許多域。例如,假設(shè)應(yīng)用程序開發(fā)者希望執(zhí)行媒體操縱(例如,想要插入廣告或彈窗或疊加層),但不了解http、html或css,那么媒體適配器將允許應(yīng)用程序開發(fā)者執(zhí)行這種操作,而不需要理解編碼有效負(fù)載所用語法。
返回到圖10,每個(gè)插件718a-718n可以通過其自己的媒體適配器1002a-1002n耦合到插件api716,從而為每個(gè)插件提供增強(qiáng)的功能。換句話說,每個(gè)媒體適配器1002a-1002n可以被解釋為插件api716的擴(kuò)展。例如,在插件718a被實(shí)例化時(shí),媒體適配器1002a可以向插件718a提供附加的功能。作為媒體適配器的結(jié)果,插件可以執(zhí)行否則其不能執(zhí)行的媒體處理。例如,媒體適配器1002可將xml結(jié)構(gòu)中的http數(shù)據(jù)包的有效負(fù)載返回給插件,并且還可以向插件提供操縱該有效負(fù)載的方法。媒體適配器1002可以包括定制邏輯,定制邏輯允許每個(gè)終端用戶裝置112a-112p的定制清單的生成、替代內(nèi)容插入、對響應(yīng)的重塑、限制根據(jù)網(wǎng)絡(luò)條件提供的比特率等。
為了詳細(xì)說明,媒體適配器1002可以被解釋為隱藏解析復(fù)雜文件的細(xì)節(jié)的抽象層,以使得插件可能以幾行代碼(例如,10行)而不是許多行代碼(例如,1000行)對http數(shù)據(jù)包的有效負(fù)載執(zhí)行操作。媒體適配器1002允許應(yīng)用程序開發(fā)者以低得多的專業(yè)知識級別編寫插件。媒體適配器1002為應(yīng)用程序開發(fā)者執(zhí)行重要提升。所有的應(yīng)用程序開發(fā)者需要知道的是他/她想插入廣告。媒體適配器1002可以從http數(shù)據(jù)包的有效負(fù)載確定何時(shí)存在廣告標(biāo)記,并且插件可以這種廣告標(biāo)記插入適當(dāng)廣告。
圖11描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的用于將內(nèi)容從源服務(wù)器分配到終端用戶裝置的通信網(wǎng)絡(luò)。例如,假設(shè)源服務(wù)器102(例如,托管cnn.com)希望向終端用戶裝置112a-112p提供6mb圖像。源服務(wù)器102不想向所有終端用戶裝置發(fā)送6mb圖像(因?yàn)橐恍┙K端用戶裝置可通過低帶寬鏈接來連接),因此當(dāng)高級源1102接收圖像時(shí),高級源1102將6mb圖像優(yōu)化成例如64kb的版本。存在執(zhí)行此類優(yōu)化的兩種模式。一般來說,網(wǎng)頁優(yōu)化已經(jīng)在源之前進(jìn)行(即,網(wǎng)頁優(yōu)化在源上物理地部署或作為源之前的反向代理)并且存在問題,因?yàn)樾碌膱D像(即,64kb圖像)具有指向回源服務(wù)器102的新的名稱。新的名稱就意味著由于cdn上的請求路由,將不通過優(yōu)化路徑遞送新的圖像。為了處理這個(gè)情況,url可以用cdn域名包裝,那么當(dāng)我們真的想要與源進(jìn)行交談時(shí),url可能被映射回原來的cnn.com。這意味著檢索優(yōu)化圖像的任何請求將一直返回到高級源1102(即,通常是最接近實(shí)際源的最近c(diǎn)dnpop)以便檢索它,并且如果攝取服務(wù)器在澳大利亞,那么這要花費(fèi)很長時(shí)間,所以在邊緣處提供cdn。因?yàn)閡rl(或html、href元素)已利用對其進(jìn)行優(yōu)化的服務(wù)器的名稱進(jìn)行重寫,所以每次它都將返回到源服務(wù)器102。
在優(yōu)化右側(cè)的邊緣部分上存在裝置(例如,112a-112p)。關(guān)于裝置的信息(例如,iphone與android、操作系統(tǒng)的版本、視網(wǎng)膜顯示器的存在等)可以通常源自http用戶代理標(biāo)頭,但是它也可以源自其他來源。例如,在移動(dòng)網(wǎng)絡(luò)中,我從手機(jī)id和策略數(shù)據(jù)庫得知確切裝置??赡苄枰诩夹g(shù)考慮(即,有關(guān)裝置的信息、網(wǎng)絡(luò)條件等)以及業(yè)務(wù)考慮(即,僅當(dāng)用戶訂閱某個(gè)計(jì)劃、sla等時(shí),才向用戶提供某程度的服務(wù))來定制遞送到裝置的內(nèi)容。在當(dāng)前cdn配置(例如像在圖1中)中,cdn節(jié)點(diǎn)無法訪問有關(guān)裝置的信息,所以cdn無法適當(dāng)?shù)囟ㄖ蒲b置的內(nèi)容。然而,在cdn節(jié)點(diǎn)放置在運(yùn)營商網(wǎng)絡(luò)中的實(shí)例中,cdn節(jié)點(diǎn)確實(shí)可以訪問關(guān)于裝置的上述信息,并且因此它可以適當(dāng)?shù)囟ㄖ蒲b置的內(nèi)容。例如,如果源服務(wù)器102提供jpeg圖像,并且終端用戶可能正在運(yùn)行chrome或internetexplorer(ie),并且ie不支持內(nèi)置,但是chrome確實(shí)支持在線,那么chrome瀏覽器的html可以提供內(nèi)置的圖像,從而保存瀏覽器不必在第二步驟中請求圖像。
期望的是,服務(wù)器(例如,圖11中的源服務(wù)器102、高級源1102和邊緣服務(wù)器1104,或圖1中描繪的任何服務(wù)器)一起工作。所期望的是,服務(wù)器一起工作以便在遞送鏈中的最佳位置處執(zhí)行適當(dāng)優(yōu)化。最好的示例將是http重復(fù)數(shù)據(jù)刪除,其中重復(fù)的內(nèi)容被標(biāo)簽(即沿路徑的任何裝置都可以用高速緩存的副本替換該標(biāo)簽)替換。您可將其視為子對象高速緩存。最好的方法是在源處進(jìn)行重復(fù)數(shù)據(jù)刪除,并且客戶端在其裝置上用其高速緩存副本填充片段。這將創(chuàng)建可能最小的數(shù)據(jù)傳輸,從而獲得最佳性能。然而,如果客戶端不支持該服務(wù),那么其可以由邊緣節(jié)點(diǎn)處理。另外,考慮到沿路徑的節(jié)點(diǎn)可能想要改變內(nèi)容,它可能會(huì)進(jìn)行重復(fù)數(shù)據(jù)刪除并且重新封裝客戶端的內(nèi)容。因此需要的是,源服務(wù)器102指引高級源1102在存在html內(nèi)容時(shí)不解析它,因?yàn)樗痛鎯?chǔ)器和cpu成本方面來說是非常昂貴的。在邊緣1104處,解析內(nèi)容。并且當(dāng)邊緣1104想要優(yōu)化的圖像并且已經(jīng)存在可用內(nèi)容的已優(yōu)化的版本時(shí),那么邊緣1104就返回到源服務(wù)器102,并且請求源服務(wù)器102從頭開始檢索原始圖像,以便優(yōu)化圖像,并且將其返回邊緣1104。而且,因此請求會(huì)被修改。此處就是您要給我的url,并且編碼具有對其進(jìn)行的優(yōu)化的編碼,并且表明您將要(即,源服務(wù)器102或高級源1102,這取決于我們的軟件部署的位置)去進(jìn)行優(yōu)化源不是我將要去優(yōu)化邊緣。
圖12描繪了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的集成邊緣和ran服務(wù)的流程圖。集成服務(wù)可以包括與服務(wù)遞送模塊通信的協(xié)調(diào)模塊。協(xié)調(diào)模塊可以被配置成執(zhí)行以下功能:發(fā)起、獲取、訂閱管理、分析、建議、播放列表、權(quán)利/drm、廣告模仿和體驗(yàn)質(zhì)量(qoe)模仿。服務(wù)遞送模塊可以包括四個(gè)關(guān)鍵部件:源管理模塊、分配管理模塊和客戶端管理模塊。在源管理模塊內(nèi)可以是以下模塊:攝取模塊、進(jìn)程模塊、存儲(chǔ)模塊、個(gè)性化模塊、封裝模塊和優(yōu)化模塊。這些模塊中的每一個(gè)可以通過協(xié)調(diào)中間件(包括一組api)與協(xié)調(diào)模塊進(jìn)行通信。在分配管理模塊內(nèi)可以是個(gè)性化模塊、封裝模塊和優(yōu)化模塊。這些模塊中的每一個(gè)可以通過管理內(nèi)容(cdn)和/或未管理內(nèi)容(tic)接口與源管理模塊通信。在客戶端管理模塊內(nèi)可以是視頻模塊、web模塊和游戲模塊。這些模塊中的每一個(gè)可以通過cdn權(quán)利和/或drm接口與分配管理模塊通信。在管理系統(tǒng)內(nèi)可能是執(zhí)行安全、跟蹤和會(huì)話識別的模塊;執(zhí)行流量工程、監(jiān)控、請求路由和供應(yīng)的分配管理模塊;以及執(zhí)行擁塞管理的qoe管理模塊。qoe管理模塊是一個(gè)策略插件,其與ran管理器進(jìn)行通信并且然后基于請求改變對請求的配置。
圖13a-13c示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的使用可信中介的兩方安全套接字層(ssl)處理的系統(tǒng)圖。在描述系統(tǒng)圖之前,首先提供一些背景。ssl的增加使用可以提高終端用戶的信任,其對于類似金融和電子商務(wù)的應(yīng)用至關(guān)重要。然而,ssl具有降低互聯(lián)網(wǎng)內(nèi)容提供商的體驗(yàn)質(zhì)量(qoe)的不利影響,從而導(dǎo)致內(nèi)容提供商內(nèi)容的消耗降低。
當(dāng)前,內(nèi)容提供商通常將其網(wǎng)絡(luò)和服務(wù)的安全性的管理委托給可信第三方提供商,諸如cdn運(yùn)營商。雖然已經(jīng)有用于解決增加的安全需要同時(shí)保持當(dāng)前qoe級別的若干種方法,但所有這些方法都沒有解決需要具有可信第三方的需求。許多現(xiàn)有可信第三方提供商在內(nèi)容提供商的安全證書的管理中存在重大漏洞(例如,安全證書的不安全存儲(chǔ);證書以藍(lán)色傳輸;認(rèn)證薄弱;在終止邊緣節(jié)點(diǎn)、內(nèi)部服務(wù)器、以及在某些情況下客戶源之間的降級安全性)。
所需要的是,并且由本發(fā)明的一個(gè)實(shí)施方式提供的是:
(1)可信全球服務(wù)提供商(gsp),其用作運(yùn)營商終端點(diǎn)與內(nèi)容/服務(wù)提供商之間的中介,
(2)在內(nèi)容提供商與可信gsp之間的安全證書的安全管理,
(3)在第二方的網(wǎng)絡(luò)上創(chuàng)建安全服務(wù),所述第二方能夠通過內(nèi)容/服務(wù)提供商證書為終端用戶提供服務(wù),而不將這些證書暴露給第二方,
(4)將用戶對服務(wù)或內(nèi)容的請求安全地路由到可信gsp或直接到內(nèi)容提供商,
(5)驗(yàn)證傳輸完整性和第二方,以及
(6)足以使遞送鏈中所有方受益的經(jīng)濟(jì)誘因。
現(xiàn)在描述可以結(jié)合圖13a-13c執(zhí)行的過程。在圖13a的“步驟a”中,內(nèi)容/服務(wù)提供商1316(源服務(wù)器102的示例)可以將安全證書上傳到vcdn服務(wù)1304、所選擇的可信提供商(例如,gsp1302)、和/或授權(quán)位置(al)1314。pk1312可能存在于gsp1302中,因?yàn)間sp可能充當(dāng)證書權(quán)威(ca)。提供的公鑰可以存儲(chǔ)在kmi1306中。更具體地,內(nèi)容/服務(wù)提供商1316可以打開諸如vpn或ssl的安全連接,并且然后轉(zhuǎn)移ssl證書(其是一個(gè)將放置在安全存儲(chǔ)裝置上的文件)。在“步驟b”中,vcdn服務(wù)1304可以生成用于由第二方服務(wù)使用的證書、以及用于認(rèn)證互聯(lián)網(wǎng)網(wǎng)絡(luò)服務(wù)啟用的非對稱密鑰。在“步驟c”中,所有密鑰可以存儲(chǔ)在安全的密鑰管理基礎(chǔ)設(shè)施(kmi)中,其存儲(chǔ)用于由gsp1302和第二方節(jié)點(diǎn)1324(圖13b、圖13c所示)訪問的私鑰(1306、1310)。
在(圖13b的)“步驟d”中,vcdn服務(wù)1304可以使用由內(nèi)容/服務(wù)提供商1316向gsp1302提供的證書來供應(yīng)vm/容器。在“步驟e”中,vcdn節(jié)點(diǎn)1326可以將客戶證書和非對稱通信密鑰安全地加載到kmi1306中。在“步驟f”中,vcdn節(jié)點(diǎn)1326可以向第二提供商節(jié)點(diǎn)1324注冊自身。在“步驟g”中,第二提供商節(jié)點(diǎn)1324可以從kmi1306讀取vcdn發(fā)布的證書(該第二提供商節(jié)點(diǎn)1324用于識別自身)。在“步驟h”中,第二提供商節(jié)點(diǎn)1324可以在路由器1322的bgp表中注冊vcdn節(jié)點(diǎn)1326的vip。
在(圖13c的)“步驟i”中,終端用戶裝置112a可以從gsp1302請求網(wǎng)絡(luò)資源。在“步驟j”中,基于策略的gslb1304可以將http請求(從終端用戶裝置112a)發(fā)送到地理定位的vcdn節(jié)點(diǎn)1326。在“步驟k”中,vcdn節(jié)點(diǎn)1326可以用gsp1302生成的、只有g(shù)sp1302才能解密的非對稱密鑰來加密http請求的有效負(fù)載。在http請求包括終端用戶裝置112a的私有信息(例如,密碼)的情況下,這種加密是有利的,并且期望在vcdn節(jié)點(diǎn)1326與出口1330之間的不安全網(wǎng)絡(luò)中不攔截這種私有信息。在“步驟k”中,vcdn節(jié)點(diǎn)1326可以將請求轉(zhuǎn)發(fā)到第二提供商節(jié)點(diǎn)1324,其驗(yàn)證請求的服務(wù)器證書以便避免中間人攻擊。在“步驟m”中,第二提供商節(jié)點(diǎn)1324可以打開到gsp1302的出口1330的安全連接。任播路由可以確保出口1330與第二節(jié)點(diǎn)1324之間的最短路由。同樣在“步驟m”中,具有加密的有效負(fù)載的請求(或響應(yīng))可以從次要提供商節(jié)點(diǎn)1324傳輸?shù)匠隹?330。在“步驟n”中,gsp1302可優(yōu)化出口1330和入口1332之間的路由(即協(xié)議和路徑),以確保最佳吞吐量和性能(即中間英里優(yōu)化)。同樣在“步驟n”中,請求的有效負(fù)載可以由gsp1302解密(在出口1330或入口1332處),以使得內(nèi)容/服務(wù)提供商1316可以讀取有效負(fù)載。在“步驟o”中,可以在入口1332與內(nèi)容/服務(wù)器提供商1316之間建立安全連接。同樣在“步驟o”中,具有解密的有效負(fù)載的請求(或響應(yīng))可以從gsp1302傳輸?shù)絻?nèi)容/服務(wù)提供商1316。
即時(shí)ssl方案的優(yōu)點(diǎn)可概括如下:假設(shè)gsp1302中的任何內(nèi)容都可以被信任。進(jìn)一步假設(shè)vcdn節(jié)點(diǎn)1326可以被信任。gsp1302的vcdn節(jié)點(diǎn)1326與出口1330之間的任何內(nèi)容可能是不可信任的,包括第二提供商節(jié)點(diǎn)1324(以及未描繪的其他中介)。雖然可以通過vcdn節(jié)點(diǎn)1326與出口1330之間的ssl鏈接安全地傳輸數(shù)據(jù)包(例如,vcdn節(jié)點(diǎn)1326與第二提供商節(jié)點(diǎn)1324之間的ssl鏈接、以及第二提供商節(jié)點(diǎn)1324與出口1330之間的ssl鏈接),數(shù)據(jù)包(包括其有效負(fù)載)在ssl鏈接終止的任何地方(例如,在第二提供商節(jié)點(diǎn)1324處)可能是脆弱的。為了解決這個(gè)安全問題,數(shù)據(jù)包的有效負(fù)載可以在vcdn節(jié)點(diǎn)1326處被僅由gsp1302知道的非對稱密鑰加密,之后將數(shù)據(jù)包(現(xiàn)在具有加密的有效負(fù)載)傳輸?shù)降诙峁┥坦?jié)點(diǎn)1324??梢栽诖渭壒?jié)點(diǎn)1324處處理數(shù)據(jù)包,如它通常將被處理(例如,其可以被路由、高速緩存),但是一個(gè)差異是第二提供商節(jié)點(diǎn)1324不能再讀取數(shù)據(jù)包的有效負(fù)載,因?yàn)榈诙峁┥坦?jié)點(diǎn)1324將不能解密有效負(fù)載。直到數(shù)據(jù)包到達(dá)gsp1302才能對其有效負(fù)載進(jìn)行解密。本解決方案提供的是雙重加密的形式。數(shù)據(jù)不僅通過安全鏈接發(fā)送,而且其有效負(fù)載也被加密。
從前面的討論可以看出,本發(fā)明的各方面涉及各種計(jì)算機(jī)系統(tǒng)和其上存儲(chǔ)有計(jì)算機(jī)可讀指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的使用。圖14提供代表本文討論的任何計(jì)算系統(tǒng)的系統(tǒng)1400的示例。應(yīng)當(dāng)注意,并非所有的各種計(jì)算機(jī)系統(tǒng)都具有系統(tǒng)1400的所有特征。例如,只要顯示功能可以由通信地耦合到計(jì)算機(jī)系統(tǒng)的客戶端計(jì)算機(jī)提供、或者顯示功能可能是不必要的,以上討論的某些計(jì)算機(jī)系統(tǒng)就可能不包括顯示器。這些細(xì)節(jié)對于本發(fā)明不是關(guān)鍵的。
計(jì)算機(jī)系統(tǒng)1400包括總線1402或其它用于傳達(dá)信息的通信機(jī)制,和與總線1402連接的用于處理信息的處理器1404。計(jì)算機(jī)系統(tǒng)1400還包括連接至總線1402的用于存儲(chǔ)將由處理器1404執(zhí)行的信息和指令的主存儲(chǔ)器1406,如隨機(jī)存取存儲(chǔ)器(ram)或其它動(dòng)態(tài)存儲(chǔ)設(shè)備。主存儲(chǔ)器1406還可用于在執(zhí)行將由處理器1404執(zhí)行的指令期間,存儲(chǔ)臨時(shí)變量或其他中間信息。計(jì)算機(jī)系統(tǒng)1400進(jìn)一步包括只讀存儲(chǔ)器(rom)1408或連接至總線1402的用于為處理器1404存儲(chǔ)靜態(tài)信息和指令的其它靜態(tài)存儲(chǔ)設(shè)備。存儲(chǔ)裝置1410被提供并且耦合到總線1402以用于存儲(chǔ)信息和指令(例如,操作系統(tǒng)、應(yīng)用程序等),所述存儲(chǔ)裝置1410可以是軟盤、柔性盤、硬盤、基于閃存的存儲(chǔ)介質(zhì)、磁帶或其他磁存儲(chǔ)介質(zhì)、壓縮盤(cd)-rom、數(shù)字通用盤(dvd)-rom、或其他光學(xué)存儲(chǔ)介質(zhì)、或處理器1404可以從其讀取的任何其他存儲(chǔ)介質(zhì)中的一或多個(gè)。
計(jì)算機(jī)系統(tǒng)1400可以經(jīng)由總線1402聯(lián)結(jié)到顯示器1412,如用于將信息顯示給計(jì)算機(jī)用戶的扁平面板顯示器。將包括字母數(shù)字鍵和其它鍵的輸入設(shè)備1414(諸如鍵盤)可連接至總線1402以將信息和命令選擇傳達(dá)至處理器1404。另一類型的用戶輸入設(shè)備是光標(biāo)控制裝置1416,如鼠標(biāo)、跟蹤球或光標(biāo)方向鍵,其用于將方向信息和命令選擇傳達(dá)到處理器1404并用于控制顯示器1412上的光標(biāo)移動(dòng)。其他用戶接口裝置(諸如麥克風(fēng)、揚(yáng)聲器等)不詳細(xì)顯示,但可能涉及用戶輸入的接收和/或輸出的呈現(xiàn)。
本文所述的進(jìn)程可以由處理器1404執(zhí)行,所述處理器1404執(zhí)行包含在主存儲(chǔ)器1406中的適當(dāng)計(jì)算機(jī)可讀指令序列。此類指令可以從另一個(gè)計(jì)算機(jī)可讀介質(zhì)(諸如存儲(chǔ)裝置1410)讀入主存儲(chǔ)器1406,并且包含在主存儲(chǔ)器1406中的指令序列的執(zhí)行致使處理器1404執(zhí)行相關(guān)聯(lián)的動(dòng)作。在替代實(shí)施方式中,可以使用硬連線電路或固件控制處理單元(例如,現(xiàn)場可編程門陣列)代替處理器1404及其相關(guān)聯(lián)的計(jì)算機(jī)軟件指令來實(shí)現(xiàn)本發(fā)明。計(jì)算機(jī)可讀指令可以以任何計(jì)算機(jī)語言呈現(xiàn),其包括但不限于c#、c/c++、fortran、cobol、pascal、匯編語言、標(biāo)記語言(例如,html、sgml、xml、voxml)等、以及諸如公共對象請求代理體系結(jié)構(gòu)(corba)、javatm等的面向?qū)ο蟮沫h(huán)境。一般來說,所有上述術(shù)語意在包括在序列中執(zhí)行以完成給定目的的任何邏輯步驟系列,這是任何計(jì)算機(jī)可執(zhí)行應(yīng)用程序的標(biāo)志。除非另有特別說明,應(yīng)當(dāng)理解,在本發(fā)明的整個(gè)描述中,使用諸如“處理”、“計(jì)算(computing)”、“計(jì)算(calculating)”、“確定”、“顯示”、“接收”、“傳輸”等術(shù)語是指適當(dāng)編程的計(jì)算機(jī)系統(tǒng)(諸如計(jì)算機(jī)系統(tǒng)700或類似的電子計(jì)算裝置)的動(dòng)作和過程,其將在其寄存器和存儲(chǔ)器內(nèi)表示為物理(電子)量的數(shù)據(jù)操縱和變換為類似地表示為其存儲(chǔ)器或寄存器或其他此類信息存儲(chǔ)、傳輸或顯示裝置內(nèi)的物理量的其他數(shù)據(jù)。
計(jì)算機(jī)系統(tǒng)1400還包括耦合到總線1402的通信界面1418。通信接口1418可以向計(jì)算機(jī)網(wǎng)絡(luò)提供雙向數(shù)據(jù)通信信道,其提供與上述各種計(jì)算機(jī)系統(tǒng)以及其間的連接。例如,通信界面1418可以是用于提供到兼容lan的數(shù)據(jù)通信連接的局域網(wǎng)(lan)卡,其本身通過一或多個(gè)互聯(lián)網(wǎng)服務(wù)提供商網(wǎng)絡(luò)通信地耦合到互聯(lián)網(wǎng)。這種通信路徑的精確細(xì)節(jié)對于本發(fā)明不是關(guān)鍵的。重要的是,計(jì)算機(jī)系統(tǒng)1400可以通過通信接口1418發(fā)送和接收消息和數(shù)據(jù),并且以該方式與通過互聯(lián)網(wǎng)可訪問的主機(jī)通信。
應(yīng)當(dāng)理解,上述描述意圖為說明性而非限制性的。在閱讀以上描述時(shí),許多其他實(shí)施方式對于本領(lǐng)域的那些技術(shù)人員而言將是顯而易見的。因此,本發(fā)明的范圍應(yīng)當(dāng)參考隨附權(quán)利要求以及包括被授權(quán)的此類權(quán)利要求的等同物的全部范圍確定。