基于類別請求路由的制作方法
【專利說明】
【背景技術(shù)】
[0001]—般而言,可以利用計算設(shè)備和通信網(wǎng)絡(luò)來交換信息。在通常應(yīng)用中,計算設(shè)備可以經(jīng)由通信網(wǎng)絡(luò)向另一計算設(shè)備請求內(nèi)容。例如,個人計算設(shè)備處的用戶可以利用軟件瀏覽器應(yīng)用經(jīng)由互聯(lián)網(wǎng)向服務(wù)器計算設(shè)備請求網(wǎng)頁。在這種情況下,用戶計算設(shè)備可以稱作客戶計算設(shè)備,服務(wù)器計算設(shè)備可以稱作內(nèi)容提供商。
[0002]通常,考慮到向客戶計算設(shè)備有效地發(fā)送所請求的內(nèi)容和/或考慮到與內(nèi)容的發(fā)送相關(guān)聯(lián)的成本,一般激發(fā)內(nèi)容提供商將所請求的內(nèi)容提供給客戶計算設(shè)備。對于大規(guī)模的實現(xiàn),內(nèi)容提供商可以從大量的客戶計算設(shè)備接收內(nèi)容請求,大量的客戶計算設(shè)備可以使內(nèi)容提供商的計算資源緊張。另外,客戶計算設(shè)備所請求的內(nèi)容可以具有多個組成部分,這些組成部分可以進(jìn)一步使內(nèi)容提供商的計算資源緊張。
[0003]參考示例,所請求的網(wǎng)頁或初始內(nèi)容可以與將用網(wǎng)頁來顯示的多個附加資源(如,圖像或視頻)相關(guān)聯(lián)。在一個具體實施例中,網(wǎng)頁的附加資源由多個嵌入式資源標(biāo)識符(如,統(tǒng)一資源定位符“URL”)來標(biāo)識。客戶計算設(shè)備上的軟件典型地處理嵌入式資源標(biāo)識符以產(chǎn)生對內(nèi)容的請求。通常,與嵌入式資源相關(guān)的資源標(biāo)識符引用與內(nèi)容提供商相關(guān)聯(lián)的計算設(shè)備,使得客戶計算設(shè)備向所引用的內(nèi)容提供商計算設(shè)備發(fā)送對附加資源的請求。因此,為滿足內(nèi)容請求,內(nèi)容提供商將提供與網(wǎng)頁相關(guān)聯(lián)的客戶計算設(shè)備數(shù)據(jù)以及與嵌入式資源相關(guān)聯(lián)的數(shù)據(jù)。
[0004]—些內(nèi)容提供商嘗試通過使用內(nèi)容傳遞網(wǎng)絡(luò)(“CDN”)服務(wù)提供商來便于傳送對所請求的內(nèi)容(如,網(wǎng)頁和/或在網(wǎng)頁中標(biāo)識的資源)XDN服務(wù)器提供商典型地在通信網(wǎng)絡(luò)中維持多個計算設(shè)備,通信網(wǎng)絡(luò)可以維持來自不同內(nèi)容提供商的內(nèi)容。內(nèi)容提供商可以命令或者建議客戶計算設(shè)備向CDN服務(wù)提供商的計算設(shè)備請求內(nèi)容提供商的內(nèi)容的一些或者全部。
[0005]關(guān)于內(nèi)容提供商,通??紤]到向客戶計算設(shè)備有效地發(fā)送所請求的內(nèi)容和/或考慮到與內(nèi)容的發(fā)送相關(guān)聯(lián)的成本,一般還激發(fā)CDN提供商向客戶計算設(shè)備提供所請求的內(nèi)容。因此,CDN服務(wù)提供商常??紤]例諸如傳遞所請求內(nèi)容的等待時間等因素,以便滿足服務(wù)水平協(xié)定或一般地提高傳遞服務(wù)的質(zhì)量。
【附圖說明】
[0006]參考以下的詳細(xì)說明并結(jié)合附圖,本發(fā)明的上述方面和許多伴隨的優(yōu)點將變得更容易理解,在附圖中:
[0007]圖1示出了包括多個客戶計算設(shè)備、內(nèi)容提供商和內(nèi)容傳遞網(wǎng)絡(luò)服務(wù)提供商的內(nèi)容傳遞環(huán)境的框圖;
[0008]圖2是圖1的內(nèi)容傳遞環(huán)境的框圖,示出了內(nèi)容提供商向內(nèi)容傳遞服務(wù)提供商的注
ΠΠ.冊;
[0009]圖3是圖1的內(nèi)容傳遞環(huán)境的框圖,示出了從客戶計算設(shè)備到內(nèi)容提供商的內(nèi)容請求的產(chǎn)生和處理;
[0010]圖4是圖1的內(nèi)容傳遞環(huán)境的框圖,示出了從客戶計算設(shè)備到內(nèi)容傳遞網(wǎng)絡(luò)服務(wù)提供商的與嵌入式資源相對應(yīng)的DNS查詢的產(chǎn)生和處理的一個實施例;
[0011]圖5A-5C是圖1的內(nèi)容傳遞環(huán)境的框圖,示出了從客戶計算設(shè)備到內(nèi)容傳遞網(wǎng)絡(luò)服務(wù)提供商的與嵌入式資源相對應(yīng)的DNS查詢的產(chǎn)生和處理、以及從客戶計算設(shè)備到內(nèi)容傳遞網(wǎng)絡(luò)的與第一和第二備選資源標(biāo)識符相對應(yīng)的DNS查詢的產(chǎn)生和處理的另一實施例;
[0012]圖6是圖1的內(nèi)容傳遞環(huán)境的框圖,示出了從客戶計算設(shè)備到內(nèi)容傳遞網(wǎng)絡(luò)服務(wù)提供商的嵌入式資源請求的產(chǎn)生和處理;
[0013]圖7示出了由內(nèi)容傳遞網(wǎng)絡(luò)服務(wù)提供商實現(xiàn)以選擇高速緩存服務(wù)器組件的請求路由例程的流程圖;以及
[0014]圖8示出了由內(nèi)容傳遞網(wǎng)絡(luò)服務(wù)提供商實現(xiàn)以更新路由信息的請求路由例程的流程圖。
【具體實施方式】
[0015]一般而言,本公開涉及對于從客戶計算設(shè)備向內(nèi)容傳遞網(wǎng)絡(luò)(“CDN”)服務(wù)提供商作出的資源請求的管理和處理。具體地,將關(guān)于基于客戶計算設(shè)備的群來路由與資源請求相關(guān)聯(lián)的信息,來描述本公開的不同方面。盡管通過示例和實施例來描述本公開的不同方面,但相關(guān)領(lǐng)域技術(shù)人員應(yīng)理解,所公開的實施例和示例不應(yīng)被理解為是限制性的。
[0016]圖1示出了用于管理和處理內(nèi)容請求的內(nèi)容傳遞環(huán)境100的框圖。如圖1所示,內(nèi)容傳遞環(huán)境100包括用于向內(nèi)容提供商和/或CDN服務(wù)提供商請求內(nèi)容的多個客戶計算設(shè)備102(通常稱作客戶端)。在說明性實施例中,客戶計算設(shè)備102可以對應(yīng)于多種計算設(shè)備,包括個人計算設(shè)備、膝上型計算設(shè)備、手持計算設(shè)備、終端計算設(shè)備、移動設(shè)備、無線設(shè)備、多種電子設(shè)備和裝置等等。在說明性實施例中,客戶計算設(shè)備102包括用于在諸如廣域網(wǎng)或局域網(wǎng)等通信網(wǎng)絡(luò)108上建立通信的必要硬件和軟件組件。例如,客戶計算設(shè)備102可以配備有便于經(jīng)由互聯(lián)網(wǎng)或內(nèi)聯(lián)網(wǎng)來通信的連網(wǎng)裝置和瀏覽器軟件應(yīng)用。
[0017]盡管圖1中沒有示出,每個客戶計算設(shè)備102使用某種類型的本地DNS解析器組件,如,DNS名稱服務(wù)器,該本地DNS解析器組件產(chǎn)生屬于客戶計算設(shè)備的DNS查詢。在一個實施例中,本地DNS解析器組件可以由客戶計算設(shè)備102所屬的企業(yè)網(wǎng)來提供。在另一實施例中,本地DNS解析器組件可以由互聯(lián)網(wǎng)服務(wù)提供商(ISP)來提供,互聯(lián)網(wǎng)服務(wù)提供商(ISP)向客戶計算設(shè)備102提供網(wǎng)絡(luò)連接。
[0018]內(nèi)容傳遞環(huán)境100還可以包括內(nèi)容提供商104,內(nèi)容提供商104經(jīng)由通信網(wǎng)絡(luò)108與一個或多個客戶計算設(shè)備102通信。圖1所示的內(nèi)容提供商104與跟內(nèi)容提供商相關(guān)聯(lián)的一個或多個計算設(shè)備的邏輯關(guān)聯(lián)性相對應(yīng)。具體地,內(nèi)容提供商104可以包括web服務(wù)器組件110,web服務(wù)器組件110與用于獲得和處理來自客戶計算設(shè)備102的對內(nèi)容(如,網(wǎng)頁)的請求的一個或多個服務(wù)器計算設(shè)備相對應(yīng)。內(nèi)容提供商104還可以包括原始服務(wù)器組件112和關(guān)聯(lián)的存儲組件114,原始服務(wù)器組件112和關(guān)聯(lián)的存儲組件114與用于獲得和處理來自⑶N服務(wù)提供商的對網(wǎng)絡(luò)資源的請求的一個或多個計算設(shè)備相對應(yīng)。相關(guān)領(lǐng)域技術(shù)人員應(yīng)理解,內(nèi)容提供商104可以與多種附加計算資源相關(guān)聯(lián),如,用于管理內(nèi)容和資源的附加計算設(shè)備、DNS名稱服務(wù)器等等。例如,盡管圖1中未示出,然而內(nèi)容提供商104可以與一個或多個DNS名稱服務(wù)器組件相關(guān)聯(lián),所述一個或多個DNS名稱服務(wù)器之間將有權(quán)解析與內(nèi)容提供商的域相對應(yīng)的客戶計算設(shè)備DNS查詢。
[0019]繼續(xù)參考圖1,內(nèi)容傳遞環(huán)境100還可以包括⑶N服務(wù)提供商106,⑶N服務(wù)提供商106經(jīng)由通信網(wǎng)絡(luò)108與一個或多個客戶計算設(shè)備102和內(nèi)容提供商104通信。圖1所示的⑶N服務(wù)提供商106與跟CDN服務(wù)提供商相關(guān)聯(lián)的一個或多個計算設(shè)備的邏輯關(guān)聯(lián)性相對應(yīng)。具體地,CDN服務(wù)提供商106可以包括與通信網(wǎng)絡(luò)108上的節(jié)點相對應(yīng)的多個存在點(“POP” )位置116、122、128。每個POP 116、122、128包括DNS組件118、124、130,DNS組件118、124、130 由用于對來自客戶計算機(jī)102的DNS查詢進(jìn)行解析的多個DNS服務(wù)器計算設(shè)備構(gòu)成。每個POP116、122、128還包括資源高速緩存組件120、126、132,資源高速緩存組件120、126、132由用于存儲來自內(nèi)容提供商的資源并將所請求的不同資源發(fā)送至不同客戶計算機(jī)的多個高速緩存服務(wù)器計算設(shè)備構(gòu)成。DNS組件118、124、130和資源高速緩存組件120、126、132還可以包括便于通信的附加軟件和/或硬件組件,包括但不限于負(fù)載平衡或負(fù)載共享軟件/硬件組件。
[0020]在說明性實施例中,認(rèn)為DNS組件118、124、130和資源高速緩存組件120、126、132是被邏輯分組的,而不管組件或組件的部分是否是物理分離的。此外,盡管POP 116、122、128在圖1中被示為邏輯地與CDN提供商106相關(guān)聯(lián),然而POP以最適合客戶計算設(shè)備102的各種人口統(tǒng)計特征的方式,在地理上遍及通信網(wǎng)絡(luò)108而分布。此外,相關(guān)領(lǐng)域技術(shù)人員應(yīng)理解,CDN服務(wù)提供商106可以與多種附加計算資源相關(guān)聯(lián),如,用于管理內(nèi)容和資源的附加計算設(shè)備等。
[0021]相關(guān)領(lǐng)域技術(shù)人員應(yīng)理解,圖1中提供的組件和配置本質(zhì)上是說明性的。因此,可以使用附加的或備選的組件和/或配置,尤其是與用于促進(jìn)通信的附加組件、系統(tǒng)和子系統(tǒng)有關(guān)的組件和/或配置。
[0022]現(xiàn)在參考圖2至6,將示出圖1的內(nèi)容傳遞環(huán)境100的不同組件之間的交互。然而,為示例的目的,圖已經(jīng)被簡化,使得許多用于便于通信的組件并沒有被示出。相關(guān)領(lǐng)域技術(shù)人員應(yīng)理解,可以使用這種組件,相應(yīng)地在不脫離本公開的精神和范圍的情況下,將發(fā)生另外的交互。
[0023]參考圖2,將描述內(nèi)容提供商104向⑶N服務(wù)提供商106的注冊的說明性交互。如圖2所示,CDN內(nèi)容注冊過程開始于內(nèi)容提供商104向CDN服務(wù)提供商106的注冊。在說明性實施例中,內(nèi)容提供商104利用注冊應(yīng)用程序界面(“API”)來向CDN服務(wù)提供商106注冊,使得CDN服務(wù)提供商106可以代表內(nèi)容提供商104來提供內(nèi)容。注冊API包括內(nèi)容提供商104的原始服務(wù)器112的標(biāo)識,內(nèi)容提供商104將把所請求的資源提供給CDN服務(wù)提供商106。
[0024]相關(guān)領(lǐng)域技術(shù)人員應(yīng)理解,當(dāng)識別合適的原始服務(wù)器112時,內(nèi)容提供商104可以開始將來自客戶計算設(shè)備102的對內(nèi)容的請求發(fā)往CDN服務(wù)提供商106 ο具體地,根據(jù)DNS路由原則,與資源標(biāo)識符相對應(yīng)的客戶計算設(shè)備請求最終將被發(fā)往與CDN服務(wù)提供商106相關(guān)聯(lián)的POP 116、122、128。如果所選擇的POP的資源高速緩存組件120、126、132沒有客戶計算設(shè)備102所請求的資源的副本,則資源高速緩存組件將向內(nèi)容提供商104先前注冊的原始服務(wù)器112請求資源。
[0025]繼續(xù)參考圖2,當(dāng)接收注冊API時,CDN服務(wù)提供商106獲取并處理注冊信息。在說明性實施例中,CDN服務(wù)提供商106可以產(chǎn)生將由客戶計算設(shè)備102使用的附加信息作為內(nèi)容請求的一部分。附加信息可以包括而不限于客戶標(biāo)識符(如,客戶標(biāo)識碼)、內(nèi)容提供商標(biāo)識符(如,內(nèi)容提供商標(biāo)識碼)、用于處理資源標(biāo)識符的可執(zhí)行代碼(如,基于腳本的指令)等等。相關(guān)領(lǐng)域技術(shù)人員應(yīng)理解的是,不同類型的附加信息可以由CDN服務(wù)提供商106產(chǎn)生,并且附加信息可以以多種格式中的任何一種格式來體現(xiàn)。
[0026]⑶N服務(wù)提供商106向內(nèi)容提供商104返回⑶N服務(wù)提供商的可應(yīng)用域的標(biāo)識(除非先前已經(jīng)為提供過了)以及任何附加信息。內(nèi)容提供商104可以利用內(nèi)容提供商特定信息來處理所存儲的內(nèi)容。在一個示例中,如圖