資源請求及資源的路由代理的制作方法
【專利說明】資源請求及資源的路由代理
[0001]本申請是2011年12月12日遞交的第201110412705.0號發(fā)明專利申請的分案申請。
技術(shù)領(lǐng)域
[0002]本發(fā)明大體上涉及網(wǎng)絡(luò)中的數(shù)據(jù)傳輸,尤其涉及用于動態(tài)資源路由的方法和設(shè)備。
【背景技術(shù)】
[0003]服務(wù)提供商是出售與其相關(guān)的網(wǎng)絡(luò)(例如,互聯(lián)網(wǎng)、數(shù)據(jù)網(wǎng)絡(luò)、電信網(wǎng)絡(luò)等)所提供的帶寬或訪問上述網(wǎng)絡(luò)的實體(例如,企業(yè)或組織)。服務(wù)提供商可以包括電信公司、數(shù)據(jù)載體、無線通信提供商、互聯(lián)網(wǎng)服務(wù)提供商、提供高速互聯(lián)網(wǎng)接入的有線電視運營商等。諸如視頻、音頻、圖像、軟件下載的內(nèi)容使用的快速增長對服務(wù)提供商提出更高的帶寬需求,該帶寬需求對于重大內(nèi)容和事件具有尖峰。
[0004]內(nèi)容可以從諸如安裝于服務(wù)提供商的網(wǎng)絡(luò)中的源服務(wù)器、鏡像服務(wù)器、緩存服務(wù)器等服務(wù)器提供給客戶端設(shè)備??蛻舳嗽O(shè)備可以使用諸如超文本傳輸協(xié)議(HTTP)、實時消息協(xié)議(RTMP)等互聯(lián)網(wǎng)協(xié)議請求訪問這些內(nèi)容。在客戶端設(shè)備請求訪問內(nèi)容時,該請求必須路由至網(wǎng)絡(luò)中合適的服務(wù)器。路由該請求需考慮數(shù)個因素,諸如,提高客戶端設(shè)備的體驗(例如,等待時間、內(nèi)容傳輸速度等)、網(wǎng)絡(luò)和內(nèi)容傳輸基礎(chǔ)設(shè)施的成本及其擴(kuò)展性等。然而,由于服務(wù)提供商網(wǎng)絡(luò)的復(fù)雜性和載荷變動性日益增加,因此對于服務(wù)提供商來說,越來越難以將請求路由到合適的服務(wù)器。此外,客戶端設(shè)備的數(shù)量和類型,還有內(nèi)容量也在飛速增長。另外,服務(wù)提供商有必要將其服務(wù)聯(lián)合以提供全球性方案。
[0005]為了解決這些問題,服務(wù)提供商目前采用了不同類型的方案,諸如基于域名系統(tǒng)(DNS)的方案、基于邊界網(wǎng)關(guān)協(xié)議(BGP)的方案,以及基于應(yīng)用級的方案等。每個方案利用手動提供(manual provis1ning)在現(xiàn)有網(wǎng)絡(luò)路由基礎(chǔ)設(shè)施的頂部提供覆蓋。手動提供涉及服務(wù)提供商通告服務(wù)器的互聯(lián)網(wǎng)協(xié)議(IP)地址。對于較大的內(nèi)容類型(如視頻、下載等),該方案并不能提供任何機(jī)會以在單個請求語境內(nèi)進(jìn)一步優(yōu)化路由。在服務(wù)提供商有必要聯(lián)合其服務(wù)的情況下,該方案也不起作用。
[0006]在基于DNS的方案中,客戶端設(shè)備通常執(zhí)行DNS查找,將域名解析為IP地址。DNS服務(wù)專用于基于諸如地理位置、服務(wù)器載荷、內(nèi)容位置等因素來動態(tài)地選擇服務(wù)器IP地址。然而,基于DNS的方案僅提供以域級粗粒度的路由。
[0007]在基于BGP的方案中,在多個位置中支持給定的服務(wù)器IP地址。例如,每個不同區(qū)域可以包括具有相同IP地址的服務(wù)器,且服務(wù)器可以通告該IP地址。然而,基于BGP的方案僅提供以服務(wù)器水平的粗粒度的路由,并且尤其不能處理網(wǎng)絡(luò)問題(例如,網(wǎng)絡(luò)阻塞、服務(wù)器故障等)。
[0008]關(guān)于基于應(yīng)用級的方案,服務(wù)器能夠經(jīng)由(例如)HTTP協(xié)議將客戶端設(shè)備重新定向至不同的服務(wù)器。例如,一些服務(wù)提供商以應(yīng)用級采用在其網(wǎng)絡(luò)中的內(nèi)容服務(wù)器。可以通過顯式地將內(nèi)容請求路由(例如,經(jīng)由DNS或BGP)至以應(yīng)用級實現(xiàn)的內(nèi)容路由器來執(zhí)行基于應(yīng)用級的方案。另一個應(yīng)用級路由實例包括門戶服務(wù)器,它基于內(nèi)容請求源自何處而在門戶服務(wù)器返回的超文本標(biāo)記語言(HTML)頁面中嵌入不同的統(tǒng)一資源定位器(URL)。
[0009]然而,由于與內(nèi)容服務(wù)器相關(guān)的連接設(shè)置和額外路由,因此基于應(yīng)用級的方案增加了客戶端設(shè)備的等待時間。此外,基于應(yīng)用級的方案難于擴(kuò)展,如果所有請求必須路由到內(nèi)容服務(wù)器,則該內(nèi)容服務(wù)器可能會變成網(wǎng)絡(luò)的瓶頸。
【發(fā)明內(nèi)容】
[0010]根據(jù)一方面,一種由計算設(shè)備執(zhí)行的方法可以包括:由計算設(shè)備從客戶端設(shè)備接收對于資源的請求;由計算設(shè)備基于請求中提供的信息確定是否在該計算設(shè)備處終止針對該請求的連接;如果在該計算設(shè)備處未終止連接,計算設(shè)備將請求轉(zhuǎn)發(fā)至網(wǎng)絡(luò);如果在該計算設(shè)備處終止連接,計算設(shè)備將為資源選擇目標(biāo)設(shè)備;計算設(shè)備將請求提供至選定的目標(biāo)設(shè)備;計算設(shè)備從選定的目標(biāo)設(shè)備接收資源;以及計算設(shè)備將資源提供至客戶端設(shè)備。
[0011]根據(jù)另一方面,網(wǎng)絡(luò)設(shè)備可以包括:用于存儲資源的本地緩存的存儲器和處理器。該處理器可以接收來自客戶端設(shè)備的對于資源的請求,并可以基于請求中提供的信息在網(wǎng)絡(luò)設(shè)備處終止對于該請求的連接。該處理器可以確定資源是否存儲在本地緩存中,如果資源存儲在本地緩存中,則可以選擇本地緩存作為資源的目標(biāo)設(shè)備,如果資源未存儲在本地緩存中,則可以從存儲了資源的多個設(shè)備中選擇目標(biāo)設(shè)備。該處理器可以將請求提供至選定的目標(biāo)設(shè)備,可以接收來自選定的目標(biāo)設(shè)備的資源,并且可以向客戶端設(shè)備提供資源。
[0012]根據(jù)又一方面,一個或多個非易失性計算機(jī)可讀介質(zhì)可以存儲由邊緣設(shè)備的一個或多個處理器可執(zhí)行的指令。該介質(zhì)可以包括:一個或多個指令,用于接收來自客戶端設(shè)備的資源請求;一個或多個指令,用于基于請求中提供的信息在該邊緣設(shè)備處終止對于該請求的連接;一個或多個指令,用于在該邊緣設(shè)備處終止連接的情況下,為資源選擇目標(biāo)設(shè)備;一個或多個指令,用于將請求提供至選定的目標(biāo)設(shè)備;一個或多個指令,用于從選定的目標(biāo)設(shè)備接收資源;以及一個或多個指令,用于將資源提供至客戶端設(shè)備。
【附圖說明】
[0013]并入且構(gòu)成該說明書一部分的附圖示出本文描述的一個或多個實施方式,連同這些描述一起解釋這些實施方式。在圖中:
[0014]圖1是在其中可以實現(xiàn)本文描述的系統(tǒng)和/或方法的示例性網(wǎng)絡(luò)的示圖;
[0015]圖2是圖1中描述的客戶端設(shè)備、緩存服務(wù)器、源設(shè)備、路由中介服務(wù)器(routingbroker server)、或其他設(shè)備的示例性部件的示圖;
[0016]圖3是圖1中描述的網(wǎng)絡(luò)設(shè)備的示意性部件的示圖;
[0017]圖4是能夠由圖1中示出的網(wǎng)絡(luò)的示例性部分執(zhí)行的示例性操作的示圖;
[0018]圖5A和圖5B是能夠由圖1中示出的網(wǎng)絡(luò)的示例性部分執(zhí)行的另一示例性操作的示圖;
[0019]圖6是能夠由圖1中示出的網(wǎng)絡(luò)的示例性部分執(zhí)行的又一示例性操作的示圖;
[0020]圖7是能夠由圖1中示出的網(wǎng)絡(luò)的示例性部分執(zhí)行的示例性操作的示圖;
[0021]圖8是能夠由圖1中示出的網(wǎng)絡(luò)的示例性部分執(zhí)行的另一示例性操作的示圖;
[0022]圖9是圖1中示出的網(wǎng)絡(luò)設(shè)備的應(yīng)用代理的示例性功能部件的示圖;
[0023]圖10至圖13是根據(jù)本文描述的實施方式、用于提供網(wǎng)絡(luò)集成動態(tài)資源路由的示例性處理的流程圖。
【具體實施方式】
[0024]參照附圖進(jìn)行下面詳細(xì)的描述。不同附圖中的相同參考標(biāo)號可以表示相同或類似的元件。
[0025]本文描述的系統(tǒng)和/或方法通過在核心網(wǎng)絡(luò)的邊緣網(wǎng)絡(luò)設(shè)備中添加應(yīng)用級智能從而可以將資源路由集成至核心網(wǎng)絡(luò)(例如,服務(wù)提供商網(wǎng)絡(luò))的基礎(chǔ)設(shè)施。應(yīng)用級智能可以包括應(yīng)用代理,其終止與所有客戶端設(shè)備資源請求或其子集相關(guān)的給定應(yīng)用的連接。對每個資源請求,該應(yīng)用代理可以確定存儲了資源的目標(biāo)服務(wù)器,可以連接到確定的服務(wù)器,并且可以在客戶端設(shè)備與確定的服務(wù)器之間代理(proxy)資源請求以及返回的資源。
[0026]在示例性實施方式中,系統(tǒng)和/或方法可以接收來自客戶端設(shè)備的資源請求,進(jìn)而基于請求的IP信息確定是否終止針對該請求的連接。如果針對該請求的連接未被終止,可以將該請求轉(zhuǎn)發(fā)至核心網(wǎng)絡(luò)(諸如,服務(wù)提供商網(wǎng)絡(luò))用于額外的路由。如果針對該請求的連接被終止,可以為資源確定目標(biāo)源設(shè)備(target source device),進(jìn)而可以向確定的目標(biāo)源設(shè)備提供請求??梢越邮諄碜阅繕?biāo)源設(shè)備的資源,并可以將其提供給客戶端設(shè)備。
[0027]圖1是在其中可以實現(xiàn)本文描述的系統(tǒng)和/或方法的示例性網(wǎng)絡(luò)100的示圖。如圖所示,網(wǎng)絡(luò)100可以包括客戶端設(shè)備110 ;緩存服務(wù)器設(shè)備120 (本文稱作“緩存服務(wù)器120”);源設(shè)備(origin device) 130 ;路由中介服務(wù)器設(shè)備140 (本文稱作“路由中介服務(wù)器140”);其他設(shè)備150 ;網(wǎng)絡(luò)160 ;以及設(shè)置在或附接至網(wǎng)絡(luò)160的網(wǎng)絡(luò)設(shè)備170。如圖1所示,網(wǎng)絡(luò)設(shè)備170可以包括應(yīng)用代理172和本地緩存174。
[0028]網(wǎng)絡(luò)100的設(shè)備可以經(jīng)由有線和/或無線連接或鏈路互連。為簡單起見,已經(jīng)在圖1中示出單個客戶端設(shè)備110、緩存服務(wù)器120、源設(shè)備130、路由中介服務(wù)器140、其他設(shè)備150、網(wǎng)絡(luò)160、以及網(wǎng)絡(luò)設(shè)備170。實際上,可以存在更多的客戶端設(shè)備110、緩存服務(wù)器120、源設(shè)備130、路由中介服務(wù)器140、其他設(shè)備150、網(wǎng)絡(luò)160和/或網(wǎng)絡(luò)設(shè)備170。同樣地,在某些情況下,網(wǎng)絡(luò)100的一個或多個設(shè)備可以執(zhí)行被描述為由網(wǎng)絡(luò)100的另一個或多個設(shè)備執(zhí)行的一個或多個任務(wù)。
[0029]客戶端設(shè)備110可以包括能夠經(jīng)由網(wǎng)絡(luò)160和/或網(wǎng)絡(luò)設(shè)備170訪問緩存服務(wù)器120、源設(shè)備130和/或其他設(shè)備150的任何設(shè)備。例如,客戶端設(shè)備110可以包括:無線電話(rad1telephone),可以將蜂窩無線電話(cellular rad1telephone)與數(shù)據(jù)處理和數(shù)據(jù)通信功能結(jié)合的個人通信系統(tǒng)(PCS)終端,可以包括無線電話、尋呼機(jī)、互聯(lián)網(wǎng)/內(nèi)聯(lián)網(wǎng)訪問等的個人數(shù)字助理(PDA),例如無線電話(wireless telephone)的無線設(shè)備(wirelessdevice),智能電話,工作站電腦,膝上型電腦,個人計算機(jī),或其他類型的計算或通信設(shè)備。
[0030]緩存服務(wù)器120可以包括以本文描述的方式收集、處理、搜索和/或提供信息的一個或多個服務(wù)器設(shè)備、或其他類型的計算或通信設(shè)備。在一個示例性實施方式中,緩存服務(wù)器120可以充當(dāng)來自客戶端設(shè)備110的、尋找來自源設(shè)備130資源的請求的中介。本文使用的術(shù)語“資源”旨在廣泛地理解為包括:諸如視頻、音頻、圖像、軟件下載等的內(nèi)容;諸如傳送高清晰度和用戶生成的內(nèi)容、消費者和商業(yè)新聞以及信息服務(wù)、電子郵件系統(tǒng)等的服務(wù);和/或內(nèi)容與服務(wù)的組合??蛻舳嗽O(shè)備110可以經(jīng)由網(wǎng)絡(luò)160和/或網(wǎng)絡(luò)設(shè)備170連接至緩存服務(wù)器120,并且可以請求從源設(shè)備130可得到的一些資源。緩存服務(wù)器120可以評價請求(例如,根據(jù)過濾規(guī)則,諸如通過IP地址或協(xié)議對通信量進(jìn)行過濾)。如果請求有效,則緩存服務(wù)器120可以通過連接至源設(shè)備130并且代表客戶端設(shè)備110請求資源,從而提供所請求的資源。緩存服務(wù)器120可以滿足該請求而不聯(lián)系源設(shè)備130。在這種情況下,緩存服務(wù)器120可以緩存(或存儲)先前請求的、來自源設(shè)備130的特定資源,并且可以經(jīng)由網(wǎng)絡(luò)設(shè)備170向客戶端設(shè)備110提供特定資源而不涉及源設(shè)備130。
[0031]源設(shè)備130可以包括以本文描述的方式收集、處理、搜索和/或提供信息的一個或多個服務(wù)器設(shè)備、或其他類型的計算或通信設(shè)備。在一個示例性實施方式中,源設(shè)備130可以包括客戶端設(shè)備110經(jīng)由網(wǎng)絡(luò)160和/或網(wǎng)絡(luò)設(shè)備1