本公開總體上涉及用于在內(nèi)容遞送網(wǎng)絡(luò)中監(jiān)測(cè)服務(wù)的方法和網(wǎng)絡(luò)節(jié)點(diǎn)。
背景技術(shù):
內(nèi)容遞送網(wǎng)絡(luò)或內(nèi)容分發(fā)網(wǎng)絡(luò)(cdn)是部署在互聯(lián)網(wǎng)和全球各地的多個(gè)數(shù)據(jù)中心中的大型分布式服務(wù)器系統(tǒng)。cdn用于遞送內(nèi)容,包括例如web對(duì)象(文本、圖形和腳本)、可下載對(duì)象(媒體文件、軟件、軟件升級(jí)、文檔等)、應(yīng)用(電子商務(wù)、門戶網(wǎng)站等)、現(xiàn)場(chǎng)流媒體、點(diǎn)播視頻、web加速、和社交網(wǎng)絡(luò)。向終端用戶遞送內(nèi)容應(yīng)當(dāng)以高可用性和高性能來完成。
內(nèi)容提供商(cp)(諸如媒體公司和電子商務(wù)供應(yīng)商)向cdn運(yùn)營(yíng)商付費(fèi)以向終端用戶遞送其內(nèi)容。反過來,cdn的運(yùn)營(yíng)商則向互聯(lián)網(wǎng)服務(wù)提供商(isp)、載體、網(wǎng)絡(luò)運(yùn)營(yíng)商和云擁有者付費(fèi),用于在其數(shù)據(jù)中心中托管其服務(wù)器。
例如,圖1示出了包括cdn12的傳統(tǒng)的通信系統(tǒng)10。cdn12包括請(qǐng)求路由器(rr)14、cdn監(jiān)測(cè)節(jié)點(diǎn)15、日志收集器(lc)16、以及多個(gè)遞送節(jié)點(diǎn)18。當(dāng)然,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,cdn可以包括用于執(zhí)行其標(biāo)準(zhǔn)程序和功能的其他元件,諸如數(shù)據(jù)庫(kù)。多個(gè)遞送節(jié)點(diǎn)18通常部署在邊緣和核心網(wǎng)絡(luò)二者處以向終端用戶遞送內(nèi)容。
cdn12通常與內(nèi)容提供商(cp)20達(dá)成協(xié)議或由內(nèi)容提供商(cp)20擁有,用于向終端用戶遞送內(nèi)容。cp20具有內(nèi)容門戶,例如,終端用戶設(shè)備22能夠從該內(nèi)容門戶瀏覽和請(qǐng)求內(nèi)容或服務(wù)。一旦終端用戶選擇特定的內(nèi)容或服務(wù),針對(duì)該服務(wù)的請(qǐng)求被發(fā)送到rr14。rr14選擇最適合于服務(wù)終端用戶的一個(gè)或多個(gè)遞送節(jié)點(diǎn)18。例如,rr14可以將服務(wù)請(qǐng)求動(dòng)態(tài)地重定向到更靠近發(fā)出請(qǐng)求的終端用戶的遞送節(jié)點(diǎn)18。遞送節(jié)點(diǎn)的重定向或選擇基于由cdn監(jiān)測(cè)節(jié)點(diǎn)15給出的可用遞送節(jié)點(diǎn)的列表來完成。更具體地,可以連接到rr14或與rr14在同一處的cdn監(jiān)測(cè)節(jié)點(diǎn)15動(dòng)態(tài)地來自計(jì)算列表18的哪個(gè)可用的遞送節(jié)點(diǎn)最接近請(qǐng)求的終端用戶,并且將遞送節(jié)點(diǎn)的列表傳輸?shù)絩r14。這些計(jì)算有助于減少內(nèi)容必須行進(jìn)的距離、以及數(shù)據(jù)分組必須做出的跳數(shù)。因此,減少了分組丟失、抖動(dòng)和延遲,同時(shí)提高了用戶體驗(yàn)。
遞送節(jié)點(diǎn)18具有存儲(chǔ)有不同內(nèi)容和服務(wù)的副本的高速緩存服務(wù)器。此外,每個(gè)遞送節(jié)點(diǎn)18產(chǎn)生日志文件或訪問日志文件。每當(dāng)服務(wù)請(qǐng)求被接收到時(shí),遞送節(jié)點(diǎn)18訪問日志文件以記錄服務(wù)請(qǐng)求。日志文件可以用于分析、計(jì)費(fèi)和數(shù)據(jù)挖掘等。更具體地,lc16從每個(gè)遞送節(jié)點(diǎn)18收集日志文件,并且將其重新格式化用于分析和審計(jì)目的。
通常,有兩種日志,一種是訪問日志。另一種是會(huì)話日志。每個(gè)日志可能具有不同的格式,這些格式可以是標(biāo)準(zhǔn)的(例如,icecast、apache)或定制的。
對(duì)于訪問日志,當(dāng)服務(wù)請(qǐng)求訪問遞送節(jié)點(diǎn)時(shí),它會(huì)記錄傳入的統(tǒng)一資源定位符(url)。遞送節(jié)點(diǎn)產(chǎn)生一個(gè)或幾個(gè)大的訪問日志文件。對(duì)于會(huì)話日志,它將同一會(huì)話中的所有傳入的url記錄到單個(gè)文件中。通常,遞送節(jié)點(diǎn)產(chǎn)生很多小的會(huì)話日志文件。
為了有效地利用遞送節(jié)點(diǎn),rr14需要具有關(guān)于遞送節(jié)點(diǎn)的可用性的準(zhǔn)確的信息和知識(shí)。然而,由于cdn的結(jié)構(gòu)和服務(wù)的動(dòng)態(tài)性質(zhì),具有遞送節(jié)點(diǎn)的可用性的準(zhǔn)確狀況并不容易。例如,當(dāng)前系統(tǒng)將帶寬預(yù)先分配給來自不同內(nèi)容提供商的服務(wù)。由于服務(wù)可以被動(dòng)態(tài)地添加或移除,因此,一些服務(wù)也可能被阻塞,即使一些遞送節(jié)點(diǎn)仍然具有帶寬,或者,即使一些遞送節(jié)點(diǎn)被分配給特定服務(wù),它們也可能被列入黑名單。
因此,期望提供一種能夠消除或減輕上述問題的系統(tǒng)和方法。
技術(shù)實(shí)現(xiàn)要素:
在本發(fā)明的第一方面,提供了一種用于在內(nèi)容遞送網(wǎng)絡(luò)(cdn)中監(jiān)測(cè)服務(wù)的方法,cdn具有用于遞送由終端用戶請(qǐng)求的服務(wù)的多個(gè)遞送節(jié)點(diǎn),每個(gè)服務(wù)用服務(wù)標(biāo)識(shí)(id)來標(biāo)識(shí)。該方法包括:當(dāng)服務(wù)請(qǐng)求到達(dá)多個(gè)遞送節(jié)點(diǎn)中的任何遞送節(jié)點(diǎn)時(shí),指令多個(gè)遞送節(jié)點(diǎn)將標(biāo)識(shí)符與服務(wù)請(qǐng)求相關(guān)聯(lián),標(biāo)識(shí)符和與其相關(guān)聯(lián)的服務(wù)請(qǐng)求一起被記錄在日志文件中:向日志收集器發(fā)送針對(duì)日志信息的請(qǐng)求,請(qǐng)求包括與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的服務(wù)id:響應(yīng)于請(qǐng)求,基于服務(wù)id和相關(guān)聯(lián)的標(biāo)識(shí)符來接收與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的日志信息:并且基于所接收的日志信息來確定用于遞送待監(jiān)測(cè)的服務(wù)的所需帶寬。
在本發(fā)明的第二方面,提供了一種用于在內(nèi)容遞送網(wǎng)絡(luò)中監(jiān)測(cè)服務(wù)的網(wǎng)絡(luò)節(jié)點(diǎn),內(nèi)容遞送網(wǎng)絡(luò)具有用于遞送由終端用戶請(qǐng)求的服務(wù)的多個(gè)遞送節(jié)點(diǎn),每個(gè)服務(wù)用服務(wù)標(biāo)識(shí)(id)來標(biāo)識(shí)。網(wǎng)絡(luò)節(jié)點(diǎn)包括:指令模塊,其用于當(dāng)服務(wù)請(qǐng)求到達(dá)多個(gè)遞送節(jié)點(diǎn)中的任何遞送節(jié)點(diǎn)時(shí),指令多個(gè)遞送節(jié)點(diǎn)將標(biāo)識(shí)符與服務(wù)請(qǐng)求相關(guān)聯(lián),標(biāo)識(shí)符和與其相關(guān)聯(lián)的服務(wù)請(qǐng)求一起被記錄在日志文件中:請(qǐng)求模塊,其用于向日志收集器發(fā)送針對(duì)日志信息的請(qǐng)求,請(qǐng)求包括與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的服務(wù)id:接收模塊,其用于基于服務(wù)id和相關(guān)聯(lián)的標(biāo)識(shí)符來接收與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的日志信息;以及確定模塊,其用于基于所接收的日志信息來確定用于遞送待監(jiān)測(cè)的服務(wù)的所需帶寬。
在本發(fā)明的第三方面,提供了一種用于在內(nèi)容遞送網(wǎng)絡(luò)中監(jiān)測(cè)業(yè)務(wù)的網(wǎng)絡(luò)節(jié)點(diǎn),內(nèi)容遞送網(wǎng)絡(luò)具有用于遞送由終端用戶請(qǐng)求的服務(wù)的多個(gè)遞送節(jié)點(diǎn),每個(gè)服務(wù)用服務(wù)標(biāo)識(shí)(id)來標(biāo)識(shí)。網(wǎng)絡(luò)節(jié)點(diǎn)包括被適配為引起網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行以下操作的電路:當(dāng)服務(wù)請(qǐng)求到達(dá)多個(gè)遞送節(jié)點(diǎn)中的任何遞送節(jié)點(diǎn)時(shí),指令多個(gè)遞送節(jié)點(diǎn)將標(biāo)識(shí)符與服務(wù)請(qǐng)求相關(guān)聯(lián),標(biāo)識(shí)符和與其相關(guān)聯(lián)的服務(wù)請(qǐng)求一起被記錄在日志文件中:向日志收集器發(fā)送針對(duì)日志信息的請(qǐng)求,請(qǐng)求包括與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的服務(wù)id:基于服務(wù)id和相關(guān)聯(lián)的標(biāo)識(shí)符來接收與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的日志信息:并且基于所接收的日志信息來確定用于遞送待監(jiān)測(cè)的服務(wù)的所需帶寬。
在第三方面的實(shí)施例中,電路包括處理單元、接口和存儲(chǔ)器,存儲(chǔ)器包含指令,指令在被執(zhí)行時(shí)引起處理單元:當(dāng)服務(wù)請(qǐng)求到達(dá)多個(gè)遞送節(jié)點(diǎn)中的任何遞送節(jié)點(diǎn)時(shí),指令多個(gè)遞送節(jié)點(diǎn)將標(biāo)識(shí)符與服務(wù)請(qǐng)求相關(guān)聯(lián),標(biāo)識(shí)符和與其相關(guān)聯(lián)的服務(wù)請(qǐng)求一起被記錄在日志文件中:向日志收集器發(fā)送針對(duì)日志信息的請(qǐng)求,請(qǐng)求包括與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的服務(wù)id:基于服務(wù)id和相關(guān)聯(lián)的標(biāo)識(shí)符來接收與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的日志信息;并且基于所接收的日志信息來確定用于遞送待監(jiān)測(cè)的服務(wù)的所需帶寬。
在結(jié)合附圖閱讀本發(fā)明的具體實(shí)施例的以下描述時(shí),本發(fā)明的其他方面和特征對(duì)于本領(lǐng)域普通技術(shù)人員將變得顯而易見。
附圖說明
現(xiàn)在將參考附圖僅示例性地來描述本發(fā)明的實(shí)施例,在附圖中:
圖1是包括標(biāo)準(zhǔn)cdn的通信系統(tǒng)的現(xiàn)有技術(shù);
圖2是根據(jù)本發(fā)明的實(shí)施例的通信系統(tǒng)的框圖;
圖3是根據(jù)本發(fā)明的實(shí)施例的用于啟用/停用服務(wù)監(jiān)測(cè)特征的方法的流程圖;
圖4是根據(jù)本發(fā)明的實(shí)施例的用于在cdn中監(jiān)測(cè)服務(wù)的方法的流程圖;
圖5是根據(jù)本發(fā)明的實(shí)施例的用于服務(wù)監(jiān)測(cè)的網(wǎng)絡(luò)節(jié)點(diǎn)的示意性框圖;
圖6是根據(jù)本發(fā)明的另一實(shí)施例的用于服務(wù)監(jiān)測(cè)的網(wǎng)絡(luò)節(jié)點(diǎn)的示意性框圖;
圖7是根據(jù)本發(fā)明的實(shí)施例的用于實(shí)現(xiàn)服務(wù)監(jiān)測(cè)特征的示例性方法的流程圖;
圖8示出了根據(jù)本發(fā)明的實(shí)施例的用于檢索由cdn的遞送節(jié)點(diǎn)產(chǎn)生的用于服務(wù)監(jiān)測(cè)的日志文件的示例性方法的流程圖;
圖9示出了在一些遞送節(jié)點(diǎn)中的用于遞送服務(wù)的帶寬的示例;以及
圖10示出了根據(jù)本發(fā)明的實(shí)施例的圖2的通信網(wǎng)絡(luò)中的服務(wù)監(jiān)測(cè)的詳細(xì)示例的流程圖。
具體實(shí)施方式
以下可以參考根據(jù)附圖編號(hào)的特定元件。以下討論應(yīng)當(dāng)被認(rèn)為在本質(zhì)上是示例性的,而不是對(duì)本發(fā)明的范圍的限制。本發(fā)明的范圍在權(quán)利要求中限定,并且不應(yīng)當(dāng)被視為受以下描述的實(shí)現(xiàn)細(xì)節(jié)的限制,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,這些實(shí)現(xiàn)細(xì)節(jié)可以通過用等效功能元件替換元件來修改。
如上所述,為了使cdn能夠正常工作并且有效地利用cdn中的資源,需要關(guān)于多個(gè)遞送節(jié)點(diǎn)的可用性的準(zhǔn)確概觀。在當(dāng)前系統(tǒng)中,僅在cpu容量、存儲(chǔ)器等方面執(zhí)行節(jié)點(diǎn)級(jí)別的監(jiān)測(cè),即監(jiān)測(cè)遞送節(jié)點(diǎn)的帶寬使用。沒有考慮服務(wù)級(jí)別的監(jiān)測(cè)。
例如,多個(gè)服務(wù)可以在單個(gè)遞送節(jié)點(diǎn)上運(yùn)行。服務(wù)可以被動(dòng)態(tài)地添加或移除。此外,相同的遞送節(jié)點(diǎn)可以具有一個(gè)或多個(gè)賬戶,并且服務(wù)的數(shù)目隨著賬戶變化。更具體地,遞送節(jié)點(diǎn)的帶寬與每個(gè)內(nèi)容提供商共享(例如,被預(yù)先分配給每個(gè)內(nèi)容提供商),用于遞送其服務(wù)。然而,由于服務(wù)的動(dòng)態(tài)性質(zhì),保證服務(wù)的帶寬并不容易,因?yàn)橐恍┓?wù)可能比其他服務(wù)占用更多帶寬。因此,服務(wù)可能被阻塞,因?yàn)檫f送節(jié)點(diǎn)已經(jīng)達(dá)到其最大帶寬容量,即使服務(wù)應(yīng)該被保證一定的帶寬。本發(fā)明的實(shí)施例能夠解決這樣的問題。
在術(shù)語方面,如果終端用戶點(diǎn)擊以下鏈接:www.youtube.com/video/episode1,youtubetm代表賬戶,視頻代表服務(wù),片段1代表服務(wù)下的資產(chǎn)。服務(wù)下可能有很多資產(chǎn),例如可能有片段2、3、4等
cdn監(jiān)測(cè)節(jié)點(diǎn)15可以用于監(jiān)測(cè)在遞送節(jié)點(diǎn)上運(yùn)行的服務(wù)。為此,它必須與遞送節(jié)點(diǎn)連接和通信。但是這些連接將消耗遞送節(jié)點(diǎn)的帶寬。因此,監(jiān)測(cè)所有服務(wù)而不會(huì)對(duì)遞送節(jié)點(diǎn)的業(yè)務(wù)負(fù)載產(chǎn)生影響是一種挑戰(zhàn)。換言之,設(shè)計(jì)一種能夠在服務(wù)級(jí)別而不是在節(jié)點(diǎn)級(jí)別監(jiān)測(cè)帶寬使用的機(jī)制是一種挑戰(zhàn)。
同樣地,在當(dāng)前系統(tǒng)中,cdn監(jiān)測(cè)節(jié)點(diǎn)15和lc16獨(dú)立地工作。cdn監(jiān)測(cè)節(jié)點(diǎn)15用于選擇用于rr14將服務(wù)請(qǐng)求重定向到的遞送節(jié)點(diǎn),并且lc16用于收集由每個(gè)遞送節(jié)點(diǎn)產(chǎn)生的日志文件用于分析目的。
一般來說,本公開提供了一種用于通過在cdn監(jiān)測(cè)節(jié)點(diǎn)15與lc16之間定義新的接口來在服務(wù)級(jí)別監(jiān)測(cè)cdn12的方法和網(wǎng)絡(luò)節(jié)點(diǎn)。新的接口允許cdn監(jiān)測(cè)節(jié)點(diǎn)15檢索由每個(gè)dn18記錄的信息。日志文件中的信息允許cdn監(jiān)測(cè)節(jié)點(diǎn)15在服務(wù)級(jí)別監(jiān)測(cè)帶寬使用,并且向rr14提供多個(gè)dn18上的資源可用性用于服務(wù)遞送。
更具體地,圖2示出了根據(jù)本發(fā)明的實(shí)施例的通信系統(tǒng)100。
與圖1中相同的元件具有相同的附圖標(biāo)記。除了在cdn監(jiān)測(cè)節(jié)點(diǎn)15與lc16之間定義的新的接口110之外,圖2的通信系統(tǒng)100類似于圖1的通信系統(tǒng)100。接口110的存在實(shí)現(xiàn)了多個(gè)遞送節(jié)點(diǎn)18上的服務(wù)監(jiān)測(cè)特征。此外。圖1示出了文件系統(tǒng)(fs)120和數(shù)據(jù)庫(kù)(121)。
接口110可以例如使用表征狀態(tài)轉(zhuǎn)移(rest)架構(gòu)以在cdn監(jiān)測(cè)節(jié)點(diǎn)15與lc16之間通信。當(dāng)然,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,其他架構(gòu)和協(xié)議可以用于通信目的。
服務(wù)監(jiān)測(cè)特征可以基于遞送節(jié)點(diǎn)級(jí)別的業(yè)務(wù)負(fù)載來被啟用或停用。當(dāng)cdn監(jiān)測(cè)節(jié)點(diǎn)15檢測(cè)到遞送節(jié)點(diǎn)18的帶寬使用接近極限或負(fù)載閾值時(shí),它將指令dn18打開服務(wù)監(jiān)測(cè)特征。當(dāng)節(jié)點(diǎn)級(jí)別的帶寬使用低于極限時(shí),cdn監(jiān)測(cè)節(jié)點(diǎn)15將指令遞送節(jié)點(diǎn)18關(guān)閉服務(wù)監(jiān)測(cè)特征。其他準(zhǔn)則也可以觸發(fā)服務(wù)監(jiān)測(cè)特征。例如,該特征可以默認(rèn)設(shè)置,而不是基于節(jié)點(diǎn)的帶寬來設(shè)置。
圖2的通信系統(tǒng)100還示出了內(nèi)容提供商20與cdn12之間的交互的細(xì)節(jié)。例如,lc16被連接到文件系統(tǒng)(fs)120,多個(gè)遞送節(jié)點(diǎn)18的日志信息被發(fā)送到fs120。cp20可以訪問存儲(chǔ)在fs120中的日志信息,以便獲得關(guān)于由cp20提供的服務(wù)的內(nèi)容的分析和統(tǒng)計(jì)數(shù)據(jù)。cdn監(jiān)測(cè)節(jié)點(diǎn)15可以與數(shù)據(jù)庫(kù)121通信,該數(shù)據(jù)庫(kù)121由cp20可訪問。統(tǒng)計(jì)數(shù)據(jù)允許cp20知道例如什么服務(wù)在終端用戶中最受歡迎。cdn監(jiān)測(cè)節(jié)點(diǎn)15可以關(guān)于在遞送節(jié)點(diǎn)18上運(yùn)行的服務(wù)的狀態(tài)來更新數(shù)據(jù)庫(kù)121。例如,對(duì)于諸如視頻服務(wù)等特定服務(wù),數(shù)據(jù)庫(kù)121包含該服務(wù)的狀態(tài),其指示哪些遞送節(jié)點(diǎn)18正在運(yùn)行該服務(wù)。此外,應(yīng)當(dāng)理解,在使用cdn12的遞送節(jié)點(diǎn)18之前,cp20與cdn12達(dá)成協(xié)議。例如,在該協(xié)議中,多個(gè)遞送節(jié)點(diǎn)18被預(yù)先分配(或指定)以服務(wù)來自cp20的服務(wù)。作為示例,圖2示出了僅一個(gè)cp20被連接到cdn12。當(dāng)然,可能有多于一個(gè)cp20被連接到cdn12。
在這種情況下,當(dāng)cdn監(jiān)測(cè)節(jié)點(diǎn)15從可用遞送節(jié)點(diǎn)的列表中選擇遞送節(jié)點(diǎn)用以遞送服務(wù)時(shí),它將選擇可用的并且被分配給提供該服務(wù)的特定cp20的遞送節(jié)點(diǎn)18。
現(xiàn)在轉(zhuǎn)到圖3,將描述用于在cdn12中的多個(gè)遞送節(jié)點(diǎn)18上啟用/停用服務(wù)監(jiān)測(cè)特征的方法200的流程圖。圖3示出了rr14、cdn監(jiān)測(cè)節(jié)點(diǎn)15與多個(gè)遞送節(jié)點(diǎn)18之間的交互。
方法200開始于步驟210,在步驟210中,cdn監(jiān)測(cè)節(jié)點(diǎn)15需要在多個(gè)遞送節(jié)點(diǎn)18的節(jié)點(diǎn)級(jí)別來監(jiān)測(cè)帶寬使用。為此,cdn監(jiān)測(cè)節(jié)點(diǎn)15向多個(gè)遞送節(jié)點(diǎn)18發(fā)送針對(duì)檢索帶寬使用信息的請(qǐng)求。多個(gè)遞送節(jié)點(diǎn)18具有計(jì)數(shù)器,計(jì)數(shù)器存儲(chǔ)帶寬使用或遞送節(jié)點(diǎn)18的帶寬使用的指示。
在步驟212中,響應(yīng)于步驟210的請(qǐng)求,多個(gè)遞送節(jié)點(diǎn)18向cdn監(jiān)測(cè)節(jié)點(diǎn)15發(fā)送其計(jì)數(shù)器的內(nèi)容。
在步驟214中,cdn監(jiān)測(cè)節(jié)點(diǎn)15基于從dn18的計(jì)數(shù)器收集的帶寬信息來計(jì)算每個(gè)dn18的當(dāng)前帶寬使用。由cdn監(jiān)測(cè)節(jié)點(diǎn)15執(zhí)行以獲得帶寬使用的計(jì)算類型在本領(lǐng)域是公知的,因此將不再進(jìn)一步描述。
在步驟216中,如果確定特定的dn18達(dá)到其最大帶寬容量,則該dn18被放在黑名單上。黑名單被更新,然后從cdn監(jiān)測(cè)節(jié)點(diǎn)15發(fā)送到rr14。
在步驟218中,rr14使用指示黑名單被接受的消息來回復(fù)。
然而,在步驟220中,對(duì)于被分配給特定服務(wù)的遞送節(jié)點(diǎn)18,如果所計(jì)算的節(jié)點(diǎn)級(jí)別的帶寬使用接近極限或負(fù)載閾值,例如,80%的最大帶寬容量,則cdn監(jiān)測(cè)節(jié)點(diǎn)15決定觸發(fā)該dn18上的服務(wù)監(jiān)測(cè)特征以監(jiān)測(cè)在其上運(yùn)行的服務(wù)。
為此,在步驟222中,cdn監(jiān)測(cè)節(jié)點(diǎn)15首先檢索當(dāng)前被分配給特定服務(wù)的所有遞送節(jié)點(diǎn)18的身份和其他有用信息。然后,在步驟224中,cdn監(jiān)測(cè)節(jié)點(diǎn)15向已經(jīng)被標(biāo)識(shí)為當(dāng)前被分配給特定服務(wù)的遞送節(jié)點(diǎn)18發(fā)送例如標(biāo)志形式的、用于激活服務(wù)監(jiān)測(cè)特征的指令。指令消息包含服務(wù)id,其允許標(biāo)識(shí)具體的服務(wù)。
在步驟226中,標(biāo)識(shí)的遞送節(jié)點(diǎn)18用“接受”消息回復(fù),并且在步驟227中激活服務(wù)監(jiān)測(cè)特征。監(jiān)測(cè)特征將用諸如監(jiān)測(cè)id等標(biāo)識(shí)符來標(biāo)志或標(biāo)記每個(gè)傳入的服務(wù)請(qǐng)求。
當(dāng)節(jié)點(diǎn)級(jí)別的帶寬使用回到給定極限時(shí),基于如步驟210至214中所描述的帶寬使用計(jì)算,在步驟228中觸發(fā)服務(wù)監(jiān)測(cè)特征的解激活。應(yīng)當(dāng)注意,cdn監(jiān)測(cè)節(jié)點(diǎn)15通過發(fā)送檢索其帶寬使用的請(qǐng)求來定期地監(jiān)測(cè)遞送節(jié)點(diǎn)18的帶寬。例如,請(qǐng)求可以在每個(gè)給定的時(shí)間段或者以由cdn12的運(yùn)營(yíng)商定義的其他時(shí)間間隔來發(fā)送。通過跟蹤遞送節(jié)點(diǎn)18的帶寬使用。cdn監(jiān)測(cè)節(jié)點(diǎn)15可以觸發(fā)服務(wù)監(jiān)測(cè)特征的激活或解激活。
為了解激活服務(wù)監(jiān)測(cè)服務(wù),在步驟230中,cdn監(jiān)測(cè)節(jié)點(diǎn)15首先檢索關(guān)于當(dāng)前被分配給特定服務(wù)的所有遞送節(jié)點(diǎn)18的身份和其他有用信息。注意,被分配的dn的數(shù)目可能已經(jīng)從步驟222發(fā)生改變。然后,在步驟232中,cdn監(jiān)測(cè)節(jié)點(diǎn)15向已經(jīng)被標(biāo)識(shí)為當(dāng)前被分配給服務(wù)的dn18發(fā)送解激活服務(wù)監(jiān)測(cè)特征的指令。
在步驟234中,所標(biāo)識(shí)的dn18使用“接受”消息來回復(fù),并且在步驟236中,它解激活服務(wù)監(jiān)測(cè)特征。
如在方法200中可以看到的,啟用和停用服務(wù)監(jiān)測(cè)特征基于遞送節(jié)點(diǎn)18的業(yè)務(wù)負(fù)載來自動(dòng)完成。由此,提高了在cdn內(nèi)處理的整體流量。
現(xiàn)在,轉(zhuǎn)到圖4,將描述用于在cdn中監(jiān)測(cè)服務(wù)的方法250。
假定服務(wù)監(jiān)測(cè)特征已經(jīng)在多個(gè)遞送節(jié)點(diǎn)18中被啟用。例如,多個(gè)遞送節(jié)點(diǎn)18已經(jīng)被標(biāo)識(shí)為被分配給特定服務(wù)的遞送節(jié)點(diǎn)。在服務(wù)監(jiān)測(cè)特征的激活期間,待監(jiān)測(cè)的服務(wù)的服務(wù)id從cdn監(jiān)測(cè)節(jié)點(diǎn)15被發(fā)送到多個(gè)遞送節(jié)點(diǎn)18。
方法250開始于步驟252,在步驟252中,當(dāng)服務(wù)請(qǐng)求到達(dá)多個(gè)dn18中的任何dn18時(shí),cdn監(jiān)測(cè)節(jié)點(diǎn)15指令多個(gè)dn18將標(biāo)識(shí)符與服務(wù)請(qǐng)求(或針對(duì)服務(wù)的請(qǐng)求)相關(guān)聯(lián)。作為示例,服務(wù)請(qǐng)求或針對(duì)服務(wù)的請(qǐng)求可能是從youtubetm請(qǐng)求視頻。
多個(gè)dn18可以將標(biāo)識(shí)符添加到傳入的服務(wù)請(qǐng)求。標(biāo)識(shí)符可以是指示符、標(biāo)志、標(biāo)簽、標(biāo)志等,只要它們?cè)试S標(biāo)識(shí)需要被監(jiān)測(cè)的所請(qǐng)求的服務(wù)。標(biāo)識(shí)符與其相關(guān)聯(lián)的服務(wù)請(qǐng)求一起被記錄在日志文件中。應(yīng)當(dāng)注意,每個(gè)服務(wù)請(qǐng)求包括與所請(qǐng)求的服務(wù)相對(duì)應(yīng)的服務(wù)id。服務(wù)id也與服務(wù)請(qǐng)求一起被記錄。標(biāo)識(shí)符和服務(wù)id由lc16使用以對(duì)cdn監(jiān)測(cè)節(jié)點(diǎn)15感興趣的信息進(jìn)行分類,例如對(duì)于特定待監(jiān)測(cè)的服務(wù)。另外,諸如帳號(hào)和服務(wù)資產(chǎn)信息等信息也可以由日志文件來提供。
在步驟254中,cdn監(jiān)測(cè)節(jié)點(diǎn)15向lc16發(fā)送針對(duì)日志信息的請(qǐng)求,請(qǐng)求包括與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的服務(wù)id。
在步驟256中,響應(yīng)于請(qǐng)求,cdn監(jiān)測(cè)節(jié)點(diǎn)15基于服務(wù)id和相關(guān)聯(lián)的標(biāo)識(shí)符來接收與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的日志信息。通常,日志信息來自于已經(jīng)被分配給待監(jiān)測(cè)的服務(wù)的遞送節(jié)點(diǎn)18。
在步驟258中,基于所接收的日志信息,cdn監(jiān)測(cè)節(jié)點(diǎn)15確定用于遞送待監(jiān)測(cè)的服務(wù)的所需帶寬。
在圖5中,將描述根據(jù)本發(fā)明的實(shí)施例的用于執(zhí)行圖4的方法250的網(wǎng)絡(luò)節(jié)點(diǎn)260。
例如,網(wǎng)絡(luò)節(jié)點(diǎn)260可以是cdn監(jiān)測(cè)節(jié)點(diǎn)15。
網(wǎng)絡(luò)節(jié)點(diǎn)260包括指令模塊262、接收模塊264、請(qǐng)求模塊266和確定模塊268。
指令模塊262用于在服務(wù)請(qǐng)求到達(dá)多個(gè)dn18中的任何dn18時(shí),指令多個(gè)dn18將標(biāo)識(shí)符與服務(wù)請(qǐng)求相關(guān)聯(lián)。
請(qǐng)求模塊266用于從lc16請(qǐng)求日志信息,請(qǐng)求包括待監(jiān)測(cè)的服務(wù)的服務(wù)id。
接收模塊264用于基于服務(wù)id和相關(guān)聯(lián)的標(biāo)識(shí)符來接收待監(jiān)測(cè)的服務(wù)的日志信息。另外,確定模塊266用于基于所接收的日志信息來確定用于遞送待監(jiān)測(cè)的服務(wù)的所需帶寬。應(yīng)當(dāng)注意,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,網(wǎng)絡(luò)節(jié)點(diǎn)可以具有用于執(zhí)行其標(biāo)準(zhǔn)程序和功能的其他部件。
圖6示出了根據(jù)本發(fā)明的另一實(shí)施例的用于執(zhí)行圖4的方法250的網(wǎng)絡(luò)節(jié)點(diǎn)280。
例如,網(wǎng)絡(luò)節(jié)點(diǎn)280可以是cdn管理節(jié)點(diǎn)15。
網(wǎng)絡(luò)節(jié)點(diǎn)280包括電路281,電路281具有處理單元282、存儲(chǔ)器284和接口286。
處理單元282與存儲(chǔ)器284和接口286連接。存儲(chǔ)器284包含指令,這些指令在被執(zhí)行時(shí)引起處理單元282:當(dāng)服務(wù)請(qǐng)求到達(dá)多個(gè)遞送節(jié)點(diǎn)中的任何遞送節(jié)點(diǎn)時(shí),指令多個(gè)遞送節(jié)點(diǎn)將標(biāo)識(shí)符與服務(wù)請(qǐng)求相關(guān)聯(lián),標(biāo)識(shí)符與其相關(guān)聯(lián)的服務(wù)請(qǐng)求一起被記錄在日志文件中:使用接口286向日志收集器發(fā)送針對(duì)日志信息的請(qǐng)求,請(qǐng)求包括與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的服務(wù)id;基于服務(wù)id和相關(guān)聯(lián)的標(biāo)識(shí)符來接收與待監(jiān)測(cè)的服務(wù)相對(duì)應(yīng)的日志信息;以及基于所接收的日志信息來確定用于遞送待監(jiān)測(cè)的服務(wù)的所需帶寬。應(yīng)當(dāng)注意,處理器單元282和存儲(chǔ)器284可以并置在一起或獨(dú)立地存在。而且,應(yīng)當(dāng)理解,如本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,網(wǎng)絡(luò)節(jié)點(diǎn)可以具有用以執(zhí)行其標(biāo)準(zhǔn)程序和功能的其他部件。另外,從上面可以看出,電路被適配為引起網(wǎng)絡(luò)節(jié)點(diǎn)280執(zhí)行上述不同的步驟。
特別地,圖7示出了用于觸發(fā)和實(shí)現(xiàn)服務(wù)監(jiān)測(cè)特征的示例性方法300的流程圖。例如,該方法涉及終端用戶設(shè)備22、rf14、多個(gè)dn18、cdn監(jiān)測(cè)節(jié)點(diǎn)15、fs120和cp20中的源服務(wù)器123。
在步驟310,終端用戶向rr14發(fā)送針對(duì)服務(wù)或內(nèi)容的請(qǐng)求,即終端用戶向rr14發(fā)送httpget請(qǐng)求。
基于終端用戶的位置和可用遞送節(jié)點(diǎn)18的列表,rr14選擇一個(gè)或多個(gè)dn18來服務(wù)終端用戶的請(qǐng)求。在步驟312中,它將服務(wù)請(qǐng)求與所選擇的dn的地址一起發(fā)送回終端用戶。
在步驟314中,將來自終端用戶的服務(wù)請(qǐng)求重定向到所選擇的dn18。
在步驟316中,在接收到請(qǐng)求之后,所選擇的dn18檢查服務(wù)請(qǐng)求中的統(tǒng)一資源定位符(url)以確定所請(qǐng)求的服務(wù)是否是必須被監(jiān)測(cè)的服務(wù)。例如,所選擇的dn18檢查所請(qǐng)求的服務(wù)的服務(wù)id是否與在圖3的步驟224中接收的服務(wù)id相同,其由cdn監(jiān)測(cè)節(jié)點(diǎn)15在激活服務(wù)監(jiān)測(cè)特征時(shí)發(fā)送到dn18。如果是,則意味著需要監(jiān)測(cè)該服務(wù)。為此,dn18在將http響應(yīng)32發(fā)送回終端用戶之前修改它。更具體地,在步驟318中,dn18將例如被稱為監(jiān)測(cè)id的標(biāo)識(shí)符插入或添加到服務(wù)請(qǐng)求的url中。例如,修改后的url可以看起來如下:
monitoringid/xyzl23/network/account/service/asset.m3u8,其中服務(wù)id是“xyzl23”。由此,dn18將標(biāo)識(shí)符與服務(wù)請(qǐng)求相關(guān)聯(lián)。
在步驟320中,dn18將修改后的服務(wù)請(qǐng)求重定向回終端用戶。
在步驟322中,終端用戶將修改后的服務(wù)請(qǐng)求發(fā)送回dn18。
應(yīng)當(dāng)注意,步驟320和322是實(shí)現(xiàn)示例。dn18可以僅接收所請(qǐng)求的服務(wù),并且然后將其遞送給終端用戶,而不將修改后的服務(wù)請(qǐng)求發(fā)送回終端用戶。
在步驟324中,一旦dn18接收到修改后的服務(wù)請(qǐng)求,dn18將來自服務(wù)請(qǐng)求的修改后的url記錄在訪問日志文件中。該url包含標(biāo)識(shí)符(例如監(jiān)測(cè)id)和服務(wù)id,其可以由lc16使用以濾除信息并且執(zhí)行針對(duì)cdn監(jiān)測(cè)節(jié)點(diǎn)15分析。例如,lc16將根據(jù)用于特定服務(wù)(其服務(wù)id為“xyzl23”)的以下字符串“/monitoringid/xyzl23”來對(duì)來自日志文件的記錄進(jìn)行分類。
在步驟326中,dn18檢查其高速緩存以查看所請(qǐng)求的服務(wù)/內(nèi)容是否存在。如果否,它們?cè)诓襟E328中聯(lián)系源服務(wù)器123(例如在cp20中)以檢索所請(qǐng)求的內(nèi)容/服務(wù)。然后,在步驟330中,源服務(wù)器123通過向dn18發(fā)送所請(qǐng)求的內(nèi)容/服務(wù)來回復(fù)。一旦dn18接收到所請(qǐng)求的內(nèi)容/服務(wù),在步驟332中將其放在高速緩存中。
在步驟334中,dn18向終端用戶發(fā)送所請(qǐng)求的內(nèi)容/服務(wù)。
為了監(jiān)測(cè)這些服務(wù),lc16時(shí)時(shí)地從多個(gè)遞送節(jié)點(diǎn)18檢索日志文件。檢索的頻率根據(jù)cdn12的大小和諸如時(shí)間間隔等其他參數(shù)來確定。當(dāng)分析日志文件時(shí),lc16使用標(biāo)識(shí)符(例如監(jiān)測(cè)id)和服務(wù)id來濾除日志記錄。由于cdn監(jiān)測(cè)節(jié)點(diǎn)15可以使用接口110向lc16查詢關(guān)于特定服務(wù)的日志信息,則它可以基于由lc16檢索的日志信息來執(zhí)行遞送節(jié)點(diǎn)的選擇。
更具體地,圖8示出了根據(jù)本發(fā)明的實(shí)施例的用于檢索由遞送節(jié)點(diǎn)18產(chǎn)生的、用于服務(wù)監(jiān)測(cè)的日志文件的示例性方法400的流程圖。在該示例中,服務(wù)監(jiān)測(cè)特征已經(jīng)在遞送節(jié)點(diǎn)18上被激活并且根據(jù)圖7的方法300被實(shí)現(xiàn)。因此,不同的所選擇的dn18已經(jīng)將來自服務(wù)請(qǐng)求的修改后的url(包括標(biāo)識(shí)符及其相關(guān)聯(lián)的服務(wù)請(qǐng)求)記錄在他們的訪問日志文件中。
方法400開始于步驟410,在步驟410中,時(shí)時(shí)地或定期地(在給定的時(shí)間段上),lc16向dn18發(fā)送檢索訪問日志文件的請(qǐng)求。
響應(yīng)于該請(qǐng)求,在步驟412中,dn18將它們的訪問日志文件發(fā)送到lc16。
一旦lc16接收到訪問日志文件,在步驟414中,它將通過使用相關(guān)聯(lián)的標(biāo)識(shí)符和服務(wù)id來檢索每個(gè)服務(wù)請(qǐng)求的記錄。標(biāo)識(shí)符和服務(wù)id在url中找到。
在步驟416中,lc16從url中移除監(jiān)測(cè)id。由于標(biāo)識(shí)符是內(nèi)部特征,因此在將日志信息發(fā)送到外部系統(tǒng)(如文件系統(tǒng))之前,將標(biāo)識(shí)符移除。
在步驟418中,lc16將沒有標(biāo)識(shí)符的日志文件發(fā)送到文件系統(tǒng)120用于分析。如果成功,則文件系統(tǒng)120在步驟420中將“成功”消息發(fā)送回lc16。
cdn監(jiān)測(cè)節(jié)點(diǎn)15在步驟422中向lc16發(fā)送請(qǐng)求,以便通過使用與特定服務(wù)相關(guān)聯(lián)的服務(wù)id來得到特定待監(jiān)測(cè)的服務(wù)的日志信息。
在步驟424中,響應(yīng)于該請(qǐng)求,lc16基于標(biāo)識(shí)符和服務(wù)id來發(fā)送與特定標(biāo)識(shí)符相關(guān)聯(lián)的記錄或日志信息。
在步驟426中,在接收到日志信息時(shí),cdn監(jiān)測(cè)節(jié)點(diǎn)15在所接收的日志信息與節(jié)點(diǎn)級(jí)別的持續(xù)/當(dāng)前帶寬使用之間執(zhí)行相關(guān)性。日志信息包括待監(jiān)測(cè)的服務(wù)的帶寬使用的指示。考慮到節(jié)點(diǎn)的持續(xù)帶寬使用和待監(jiān)測(cè)的服務(wù)的帶寬使用的指令,相關(guān)性可以示出dn18是否具有足夠的帶寬來提供給待監(jiān)測(cè)的服務(wù)。
在步驟428中,基于相關(guān)性,cdn監(jiān)測(cè)節(jié)點(diǎn)15可以決定dn18上的某些服務(wù)是否應(yīng)當(dāng)被列入黑名單。例如,如果dn18即將達(dá)到遞送節(jié)點(diǎn)的全部帶寬容量或?yàn)榇O(jiān)測(cè)的服務(wù)指定的帶寬容量,則該dn18將被阻塞,或者該dn將僅分別對(duì)于待監(jiān)測(cè)的服務(wù)被阻塞。如果黑名單有任何更改,則cdn監(jiān)測(cè)節(jié)點(diǎn)15通知rr14。當(dāng)rr14接收到更新后的dn18的黑名單時(shí),針對(duì)黑名單中的所有dn18,它將阻塞針對(duì)在待監(jiān)測(cè)的服務(wù)下的資產(chǎn)的任何請(qǐng)求。
現(xiàn)在,轉(zhuǎn)到圖9和圖10,將描述具有cdn12的通信網(wǎng)絡(luò)(諸如100)中的服務(wù)監(jiān)測(cè)的詳細(xì)示例。
假定有兩個(gè)內(nèi)容提供商cp1和cp2,cdn運(yùn)營(yíng)商已經(jīng)同意向這兩個(gè)內(nèi)容提供商協(xié)商提供一定的帶寬。例如,對(duì)于cp1,保證100gbps,并且對(duì)于cp2,保證1000gbps。這些分別是針對(duì)來自cp1和cp2的服務(wù)的預(yù)定義的帶寬。還假定每個(gè)遞送節(jié)點(diǎn)18具有例如400gbps的最大帶寬容量。
圖9示出了服務(wù)于內(nèi)容提供商cp1和cp2的多個(gè)遞送節(jié)點(diǎn)18,例如dn_1501、dn_2502、dn_3503。更具體地,假定來自內(nèi)容提供商1的視頻點(diǎn)播(vod)服務(wù)520(cp1-vod)被分配給兩個(gè)遞送節(jié)點(diǎn)dnl501和dn2502,每個(gè)50gbps。內(nèi)容提供商2的vod服務(wù)522(cp2-vod)被分配給三個(gè)節(jié)點(diǎn)dn_1501、dn_2502和dn_3503。由于服務(wù)是動(dòng)態(tài)的,所以可能會(huì)發(fā)生如下情況:在某個(gè)時(shí)刻,服務(wù)cp2-vod522按以下方式被分發(fā):dn_1501提供390gbps,dn_2502提供350gbps,dn_3503提供260gbps。對(duì)于cp1-vod520,dn_1501只能提供10gbps,因?yàn)槠渥畲髱捜萘繛?00gbps,dn_2502提供50gbps。dn_1501上的帶寬使用(cp1-vod520和cp2-vod522)的總和是最大帶寬容量。dn_2502上的帶寬使用(cp1-vod520和cp2-vod522)的總和是最大帶寬容量。在只有節(jié)點(diǎn)級(jí)別的監(jiān)測(cè)的情況下,此時(shí),dn_1501和dn_2502都被阻塞。并且cp1-vod520服務(wù)被完全阻塞,因?yàn)閐n_1501和dn_2502被阻塞。由于dn_3503尚未被分配給cp1,所以它不能用于運(yùn)行cp1-vod520。然而,cp1已經(jīng)被保證100gbps,但只接收60gbps。對(duì)于這種情況cp1-vod520將在執(zhí)行節(jié)點(diǎn)級(jí)別的監(jiān)測(cè)的當(dāng)前系統(tǒng)中被阻塞。
然而,利用業(yè)務(wù)監(jiān)測(cè)特征,如本公開中所述,cdn監(jiān)測(cè)節(jié)點(diǎn)15將能夠提前檢測(cè)這樣的問題,并且然后確保服務(wù)cp1-vod520將被提供。應(yīng)當(dāng)注意,當(dāng)激活服務(wù)監(jiān)測(cè)特征時(shí),cdn監(jiān)測(cè)節(jié)點(diǎn)15向遞送節(jié)點(diǎn)18提供與cp1-vod520相對(duì)應(yīng)的服務(wù)id。
該示例中用于執(zhí)行服務(wù)監(jiān)測(cè)的不同步驟在圖10中示出。更具體的地,圖10示出了終端用戶設(shè)備22、rr14、cdn監(jiān)測(cè)節(jié)點(diǎn)15、lc16、數(shù)據(jù)庫(kù)121、fs120、云管理器系統(tǒng)(clms)499和多個(gè)dn18之間的交互。假定服務(wù)監(jiān)測(cè)特征已經(jīng)在dn18中被激活。
在步驟602中,終端用戶向rr14發(fā)送針對(duì)內(nèi)容或服務(wù)的請(qǐng)求,諸如cp1-vod520。
一旦rr14接收到服務(wù)請(qǐng)求,它將在步驟604中檢查可用遞送節(jié)點(diǎn)18的服務(wù)列表。它選擇可用的dn18,諸如dn_1501,并且將服務(wù)請(qǐng)求重定向到該節(jié)點(diǎn)。假定此時(shí)dn_1501可用,即cp2-vod552尚未被請(qǐng)求。
為此,在步驟606中,rr14向終端用戶發(fā)送臨時(shí)指向消息307用于將服務(wù)請(qǐng)求重定向到dn_1501。
在步驟608中,一旦終端用戶接收到重定向消息,則在步驟608中將針對(duì)服務(wù)消息的請(qǐng)求重定向到dn_1501。
在接收到該重定向消息之后,在步驟610中,dn_1501將標(biāo)識(shí)符(例如監(jiān)測(cè)id)與針對(duì)服務(wù)的請(qǐng)求或服務(wù)請(qǐng)求相關(guān)聯(lián),并且向終端用戶發(fā)送永久指向消息302,該消息包括修改后的url。
作為接收到永久指向消息的結(jié)果,在步驟612中,終端用戶將服務(wù)請(qǐng)求發(fā)送回dn_1501。在步驟614中,dn_1501通過提供服務(wù)請(qǐng)求的內(nèi)容來響應(yīng)。
當(dāng)由rr14接收到針對(duì)cp2-vod522的請(qǐng)求時(shí),相同的步驟被執(zhí)行。而且,關(guān)于針對(duì)cp1-vod520和cp2-vod522的請(qǐng)求,針對(duì)dn_2502重復(fù)相同的步驟。
在步驟616中,cdn監(jiān)測(cè)節(jié)點(diǎn)15向dn_1501發(fā)送請(qǐng)求來獲取節(jié)點(diǎn)處的當(dāng)前帶寬使用。
在步驟618中,dn_1501用當(dāng)前帶寬使用來回復(fù)cdn監(jiān)測(cè)節(jié)點(diǎn)15。例如,通過將當(dāng)前帶寬使用與dn_1501的最大帶寬容量相比較,cdn監(jiān)測(cè)節(jié)點(diǎn)15確定dn_1501不再有剩余的可用帶寬,即dn_1501為滿容量。目前為止,假定dn_1501也用于遞送cp2-vod522(參見圖9)。
在步驟620中,cdn監(jiān)測(cè)節(jié)點(diǎn)15向dn_2502發(fā)送請(qǐng)求來獲取節(jié)點(diǎn)處的當(dāng)前帶寬使用。
在步驟622中,dn_2502向cdn監(jiān)測(cè)節(jié)點(diǎn)15回復(fù)帶寬使用。例如,通過將帶寬使用與dn_2502的最大帶寬容量相比較,cdn監(jiān)測(cè)節(jié)點(diǎn)15確定dn_2502的帶寬使用為滿容量。目前為止。假定dn_2502也用于遞送cp2-vod522(參見圖9)。
在步驟624中,lc16向dn_1501發(fā)送請(qǐng)求來收集其日志文件。
在步驟626中,dnl501用其日志文件來回復(fù)lc16。
在步驟628中,lc16向dn_2502發(fā)送請(qǐng)求來收集其日志文件。
在步驟630中,dn_2用其日志文件來回復(fù)lc16。
在步驟632中,lc16在所有所接收的日志文件中通過使用相關(guān)聯(lián)的標(biāo)識(shí)符(例如監(jiān)測(cè)id)和服務(wù)id來檢索每個(gè)服務(wù)的記錄。
在步驟634中,lc16從記錄中移除標(biāo)識(shí)符。
在步驟636中,lc16向文件系統(tǒng)(fs)120發(fā)送請(qǐng)求來發(fā)布日志文件用于分析。
在步驟638中,文件系統(tǒng)120向lc16發(fā)送回成功發(fā)布的消息。
在步驟640中,cdn監(jiān)測(cè)節(jié)點(diǎn)15通過提供它們的相關(guān)聯(lián)的標(biāo)識(shí)符和服務(wù)id,向lc16發(fā)送請(qǐng)求來查詢一些特定待監(jiān)測(cè)的服務(wù)的日志信息。例如,在這種情況下,與cp1-vod520相關(guān)聯(lián)的標(biāo)識(shí)符和服務(wù)id被包括在請(qǐng)求中。
響應(yīng)于該請(qǐng)求,lc16通過基于與cp1-vod520相關(guān)聯(lián)的標(biāo)識(shí)符和服務(wù)id對(duì)所有記錄進(jìn)行過濾,取回與cp1-vod520相對(duì)應(yīng)的日志信息。然后,在步驟642中,lc16向cdn監(jiān)測(cè)節(jié)點(diǎn)15發(fā)送與cp1-vod520相對(duì)應(yīng)的日志信息。日志信息包括帶寬使用的指示。
在步驟644中,cdn監(jiān)測(cè)節(jié)點(diǎn)15基于所接收的日志信息來確定遞送待監(jiān)測(cè)的服務(wù)的所需帶寬。更具體地,cdn監(jiān)測(cè)節(jié)點(diǎn)15計(jì)算遞送待監(jiān)測(cè)的服務(wù)(例如,cp1-vod520)的所需帶寬。在這種情況下,日志信息示出,dn_l501具有10gbps,dn2502具有50gbps。與預(yù)定義的100gbps的帶寬相比,cp1-vod520仍然需要40gbps。
在步驟646中,cdn監(jiān)測(cè)節(jié)點(diǎn)15檢查被指定或分配給待監(jiān)測(cè)的服務(wù)的遞送節(jié)點(diǎn)上是否存在可用帶寬。
在該示例中,dn_1501和dn_2502已經(jīng)達(dá)到其最大帶寬容量,因此,cdn監(jiān)測(cè)節(jié)點(diǎn)15得出結(jié)論:cp1-vod520沒有足夠的帶寬在這些節(jié)點(diǎn)上運(yùn)行。更具體地,cdn監(jiān)測(cè)節(jié)點(diǎn)15將所需帶寬與遞送節(jié)點(diǎn)上的可用帶寬相比較。在這種情況下,所需帶寬大于可用帶寬。
因此,在步驟648中,例如,cdn監(jiān)測(cè)節(jié)點(diǎn)15可以向云管理器系統(tǒng)(clms)499發(fā)送請(qǐng)求來啟動(dòng)新的虛擬機(jī)用于提供新的遞送節(jié)點(diǎn)?;蛘?,例如,cdn監(jiān)測(cè)節(jié)點(diǎn)15可以分配dn_3503以在非云環(huán)境中遞送cp1-vod520。響應(yīng)于請(qǐng)求,在步驟650中,clms499通過啟動(dòng)新的虛擬機(jī)來開始新的遞送節(jié)點(diǎn),諸如dn_k504。
在步驟652中,dn_k504一旦被啟動(dòng)就將“成功”消息發(fā)送回clms499。
在步驟654中,clms499將“成功”消息中繼到cdn監(jiān)測(cè)節(jié)點(diǎn)15。
在步驟656中,在接收到“成功”消息之后,cdn監(jiān)測(cè)節(jié)點(diǎn)15將待監(jiān)測(cè)的服務(wù)分配給dn_k504。例如,cp1-vod520被分配給該遞送節(jié)點(diǎn)。
在步驟658中,cdn監(jiān)測(cè)節(jié)點(diǎn)15更新數(shù)據(jù)庫(kù)120中的待監(jiān)測(cè)的服務(wù)的服務(wù)狀態(tài)。例如,cp1-vod520的服務(wù)狀態(tài)示出,該服務(wù)正在三個(gè)遞送節(jié)點(diǎn)dn_1501、dn_2502和dn_k504上運(yùn)行。
在步驟660中,一旦服務(wù)狀態(tài)被更新,數(shù)據(jù)庫(kù)120用“成功”消息回復(fù)。
在步驟662中,cdn監(jiān)測(cè)節(jié)點(diǎn)15向rr14發(fā)送消息,以向rr14通知用于運(yùn)行待監(jiān)測(cè)的服務(wù)的新添加的資源(即dn_k504)。
在確認(rèn)通知時(shí),rr14向cdn監(jiān)測(cè)節(jié)點(diǎn)15發(fā)送回“接受”消息。rr14還在其可用遞送節(jié)點(diǎn)的服務(wù)列表中添加新的遞送節(jié)點(diǎn)(dn_k504)。
可選地,在步驟666中,rr14可以向數(shù)據(jù)庫(kù)121發(fā)送請(qǐng)求來檢索服務(wù)狀態(tài)信息。在步驟668中,響應(yīng)于該請(qǐng)求,數(shù)據(jù)庫(kù)121發(fā)送所請(qǐng)求的信息。
在步驟670中,終端用戶例如從cp1向rr14發(fā)送針對(duì)另一vod的請(qǐng)求。
在步驟672中,響應(yīng)于該服務(wù)請(qǐng)求,rr14通過cdn監(jiān)測(cè)節(jié)點(diǎn)15來檢查服務(wù)列表并且確定dn_k504具有可用帶寬。因此,它選擇該遞送節(jié)點(diǎn)用于重定向。
在步驟674中,rr14發(fā)送用于臨時(shí)指向終端用戶的消息307。該消息包括dn_k的地址。
在接收到dn_k的地址之后,在步驟674中,終端用戶向dn_k發(fā)送他/她針對(duì)服務(wù)的請(qǐng)求。
在步驟676中,在接收到該請(qǐng)求之后,dn_k通過向終端用戶提供服務(wù)來回復(fù)。
現(xiàn)在,如果在步驟646中,當(dāng)cdn監(jiān)測(cè)節(jié)點(diǎn)15檢查是否有足夠的帶寬用于待監(jiān)測(cè)的服務(wù)時(shí),它可以確定在一個(gè)遞送節(jié)點(diǎn)或放在一起的幾個(gè)遞送節(jié)點(diǎn)上是否存在可用帶寬。如果一個(gè)遞送節(jié)點(diǎn)具有足夠的可用帶寬來運(yùn)行待監(jiān)測(cè)的服務(wù),則該遞送節(jié)點(diǎn)被選擇。但是,如果單個(gè)遞送節(jié)點(diǎn)的可用帶寬不夠,但是在將所有可用帶寬放在一起時(shí),總的可用帶寬大于待監(jiān)測(cè)的服務(wù)的所需帶寬,則在這種情況下,待監(jiān)測(cè)的服務(wù)在這些遞送節(jié)點(diǎn)之間被分配用于遞送。
從圖10可以看出,通過使用服務(wù)監(jiān)測(cè)特征,cdn監(jiān)測(cè)節(jié)點(diǎn)15具有與服務(wù)相關(guān)聯(lián)的帶寬使用的知識(shí),而不僅僅是與節(jié)點(diǎn)相關(guān)聯(lián)的帶寬。作為結(jié)果,cdn監(jiān)測(cè)節(jié)點(diǎn)15可以保證提供服務(wù),即使可用節(jié)點(diǎn)為滿容量,或者2)不同的遞送節(jié)點(diǎn)具有可用帶寬,但是每個(gè)可用帶寬小于遞送服務(wù)所需的帶寬。
在情況1)中,cdn監(jiān)測(cè)節(jié)點(diǎn)15可以請(qǐng)求新的遞送節(jié)點(diǎn),其將提供必要帶寬來遞送服務(wù)。
在情況2)中,cdn監(jiān)測(cè)節(jié)點(diǎn)15可以確定要使用的一定數(shù)目的遞送節(jié)點(diǎn),以便具有足以遞送服務(wù)的總帶寬。由此,可以實(shí)現(xiàn)遞送節(jié)點(diǎn)的優(yōu)化。
因此,通過使用服務(wù)監(jiān)測(cè)特征,終端用戶可以體驗(yàn)一致水平的qoe。作為結(jié)果,cp可以吸引更多訂閱者消費(fèi)其內(nèi)容。同樣地,通過允許服務(wù)帶寬使用的超尺寸,網(wǎng)絡(luò)基礎(chǔ)設(shè)施被更好地利用并且能夠在相同的遞送容量?jī)?nèi)處理更多的服務(wù)。
本發(fā)明的實(shí)施例可以被表示為存儲(chǔ)在非暫態(tài)機(jī)器可讀介質(zhì)(也稱為計(jì)算機(jī)可讀介質(zhì)、處理器可讀介質(zhì)、或其中實(shí)施有計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可用介質(zhì))中的軟件產(chǎn)品。機(jī)器可讀介質(zhì)可以是任何合適的有形介質(zhì),包括磁性、光學(xué)或電存儲(chǔ)介質(zhì),包括磁盤、光盤只讀存儲(chǔ)器(cd-rom)、數(shù)字通用盤只讀存儲(chǔ)器(dvd-rom)存儲(chǔ)器設(shè)備(易失性或非易失性)、或類似的儲(chǔ)存裝置。機(jī)器可讀介質(zhì)可以包含各種指令集、代碼序列、配置信息、或其他數(shù)據(jù),其在被執(zhí)行時(shí)引起處理器執(zhí)行根據(jù)本發(fā)明的實(shí)施例的方法的步驟。本領(lǐng)域普通技術(shù)人員應(yīng)當(dāng)理解,實(shí)現(xiàn)所描述的發(fā)明所需的其他指令和操作也可以存儲(chǔ)在機(jī)器可讀介質(zhì)上。從機(jī)器可讀介質(zhì)運(yùn)行的軟件可以與電路接口以執(zhí)行所描述的任務(wù)。
本發(fā)明的上述實(shí)施例僅僅是示例性的。在不脫離僅由所附權(quán)利要求限定的本發(fā)明的情況下,本領(lǐng)域技術(shù)人員可以對(duì)特定實(shí)施例進(jìn)行改變、修改和變化。