在邊緣網(wǎng)絡(luò)服務(wù)器中的多域配置處理的制作方法
【專利摘要】由提供者操作的互聯(lián)網(wǎng)基礎(chǔ)設(shè)施分發(fā)平臺(tái)實(shí)現(xiàn)大規(guī)模地到識(shí)別的第三方的基于HTTP的服務(wù)。平臺(tái)將此服務(wù)提供到一個(gè)或多個(gè)云提供者。該方法使得CDN平臺(tái)提供者(第一方)代表云提供者(第二方)服務(wù)第三方業(yè)務(wù)。在操作中,邊緣服務(wù)器處理機(jī)制利用DNS以確定具有未知主機(jī)報(bào)頭的請(qǐng)求是否應(yīng)當(dāng)被服務(wù)。在提供響應(yīng)、并且假定主機(jī)報(bào)頭包括未被識(shí)別的名稱之前,邊緣服務(wù)器解析主機(jī)報(bào)頭并且獲得中間響應(yīng),通常是假名(例如,DNS?CNAME)的列表。邊緣服務(wù)器檢查返回的CNAME列表以確定如何響應(yīng)原始請(qǐng)求。僅僅利用單個(gè)邊緣配置,CDN服務(wù)提供者可以支持云提供者的識(shí)別的第三方業(yè)務(wù)的即時(shí)提供。
【專利說(shuō)明】在邊緣網(wǎng)絡(luò)服務(wù)器中的多域配置處理
[0001]本申請(qǐng)基于并要求2011年11月2日提出的序列號(hào)N0.61/554,571的優(yōu)先權(quán)。
【技術(shù)領(lǐng)域】
[0002]本申請(qǐng)一般涉及使用共享基礎(chǔ)設(shè)施從多個(gè)內(nèi)容提供者域在線分發(fā)內(nèi)容。
【背景技術(shù)】
[0003]分布式計(jì)算機(jī)系統(tǒng)在現(xiàn)有技術(shù)中是公知的。一個(gè)這樣的分布式計(jì)算機(jī)系統(tǒng)是由服務(wù)提供者操作并管理的“內(nèi)容分發(fā)網(wǎng)絡(luò)”或“CDN”。服務(wù)提供者通常代表使用服務(wù)提供者的基礎(chǔ)設(shè)施的第三方(用戶)提供內(nèi)容分發(fā)服務(wù)。此類型的分布式系統(tǒng)通常是指由網(wǎng)絡(luò)或網(wǎng)絡(luò)與軟件、系統(tǒng)、協(xié)議和技術(shù)一起鏈接的自主計(jì)算機(jī)的集合,所述技術(shù)被設(shè)計(jì)以便于各種服務(wù),諸如內(nèi)容分發(fā)、網(wǎng)絡(luò)應(yīng)用加速、或外包源站點(diǎn)基礎(chǔ)設(shè)施的其它支持。CDN服務(wù)提供者通常經(jīng)由數(shù)字財(cái)產(chǎn)(諸如網(wǎng)站)提供服務(wù)分發(fā),其被在用戶門(mén)戶中提供并且然后被布置到網(wǎng)絡(luò)。數(shù)字財(cái)產(chǎn)通常被綁定到允許服務(wù)提供者負(fù)責(zé)業(yè)務(wù)并給它的用戶開(kāi)帳單的一個(gè)或多個(gè)邊緣配置。
[0004]云計(jì)算是用于實(shí)現(xiàn)對(duì)可配置計(jì)算資源(例如網(wǎng)絡(luò)、網(wǎng)絡(luò)帶寬、服務(wù)器、處理、存儲(chǔ)器、存儲(chǔ)設(shè)備、應(yīng)用、虛擬機(jī)、和服務(wù))的共享池進(jìn)行按需網(wǎng)絡(luò)訪問(wèn)的服務(wù)分發(fā)模型,其可以利用最小的管理努力或與服務(wù)的提供者的交互被快速地提供和釋放。可以被完全或部分地利用的可用服務(wù)模型包括:軟件作為服務(wù)(SaaS)(提供者的應(yīng)用運(yùn)行在云基礎(chǔ)設(shè)施上);平臺(tái)作為服務(wù)(PaaS)(用戶將可以利用提供者工具創(chuàng)建的應(yīng)用布置到云基礎(chǔ)設(shè)施上);基礎(chǔ)設(shè)施作為服務(wù)(IaaS)(用戶提供它自己的處理、存儲(chǔ)設(shè)備、網(wǎng)絡(luò)和其它計(jì)算資源并且可以布置并運(yùn)行操作系統(tǒng)和應(yīng)用)?;谠频姆?wù)的用戶已經(jīng)開(kāi)始期望可控的、開(kāi)放的、并且以“根據(jù)使用”為基礎(chǔ)的支付的“即時(shí)、不等待、自己動(dòng)手”的體驗(yàn)。由于這容易使用,單個(gè)云服務(wù)用戶(例如,網(wǎng)站托管提供者)可以利用云提供者的“自己動(dòng)手”配置機(jī)制提供數(shù)百乃至數(shù)千的第三方數(shù)字財(cái)產(chǎn)。
[0005]云提供者期望使用CDN服務(wù)提供者為云用戶提供對(duì)于他們網(wǎng)站的更好的綜合性能。但是,用于這些商業(yè)的現(xiàn)有配置模型沒(méi)有統(tǒng)一,因?yàn)橛散荖服務(wù)提供者使用的第二方模型(其中CDN用戶被以流量計(jì)費(fèi))不容易適應(yīng)與云提供者相關(guān)聯(lián)的第三方模型(其中云使用通常應(yīng)用于多個(gè)第三方)。換言之,使用云服務(wù)的各種數(shù)字財(cái)產(chǎn)不是CDN的用戶。然而,CDN服務(wù)提供者(并且具體地,它的邊緣配置)必須知道這些第三方數(shù)字財(cái)產(chǎn),因?yàn)镃DN將要適當(dāng)?shù)胤职l(fā)它們。
【發(fā)明內(nèi)容】
[0006]由服務(wù)提供者操作的互聯(lián)網(wǎng)基礎(chǔ)設(shè)施分發(fā)平臺(tái)使得基于HTTP的服務(wù)分發(fā)能夠大規(guī)模地識(shí)別第三方。該平臺(tái)向一個(gè)或多個(gè)云提供者(平臺(tái)用戶)提供此服務(wù),這些云提供者封裝HTTP服務(wù)(IaaS、PaaS和SaaS)作為特殊的數(shù)字財(cái)產(chǎn)。該方法使得⑶N平臺(tái)提供者(第一方)代表云提供者(第二方)服務(wù)第三方業(yè)務(wù)。[0007]分發(fā)平臺(tái)在可訪問(wèn)互聯(lián)網(wǎng)的位置處操作多個(gè)邊緣服務(wù)器機(jī)器。終端用戶客戶端(例如,瀏覽器或其它用戶代理)針對(duì)這些邊緣服務(wù)器機(jī)器以獲得內(nèi)容。通常,終端用戶請(qǐng)求是包括一個(gè)或多個(gè)主機(jī)報(bào)頭的HTTP GET請(qǐng)求。根據(jù)此公開(kāi),邊緣服務(wù)器處理機(jī)制利用DNS(域名服務(wù))以確定具有未知主機(jī)報(bào)頭的請(qǐng)求是否應(yīng)當(dāng)由邊緣服務(wù)器提供。在服務(wù)請(qǐng)求并且假定主機(jī)報(bào)頭包括未被識(shí)別的名稱之前,邊緣服務(wù)器解析主機(jī)報(bào)頭并且獲得中間響應(yīng),通常是假名(例如,DNS規(guī)范名稱或“CNAME”)的列表。邊緣服務(wù)器然后檢查返回的CNAME列表以確定如何響應(yīng)原始請(qǐng)求。利用此機(jī)制和僅僅單個(gè)邊緣配置,CDN服務(wù)提供者可以支持云提供者的識(shí)別的第三方業(yè)務(wù)的即時(shí)供應(yīng)。
[0008]上文已經(jīng)概述了本發(fā)明的更多相關(guān)特征中的一些。這些特征應(yīng)當(dāng)被解釋為僅僅是說(shuō)明性的。可以通過(guò)以不同的方式應(yīng)用公開(kāi)的發(fā)明或通過(guò)修改將描述的本發(fā)明獲得許多其它有益的結(jié)果。
【專利附圖】
【附圖說(shuō)明】
[0009]為了更完全地了解本發(fā)明和它的優(yōu)點(diǎn),現(xiàn)在結(jié)合附圖做出以下說(shuō)明書(shū)的參考,其中:
[0010]圖1是示出了被配置為內(nèi)容分發(fā)網(wǎng)絡(luò)(⑶N)的已知的分布式計(jì)算機(jī)系統(tǒng)的方框圖;
[0011]圖2是代表性的⑶N邊緣機(jī)器配置;
[0012]圖3示出了各個(gè)數(shù)字財(cái)產(chǎn)如何利用這里描述的方法被彼此關(guān)聯(lián);以及
[0013]圖4示出了根據(jù)公開(kāi)的實(shí)施例的在邊緣服務(wù)器處理機(jī)制中的詳細(xì)操作流程。
【具體實(shí)施方式】
[0014]圖1示出了已知的分布式計(jì)算機(jī)系統(tǒng),其(如下面描述的)是由這里所述技術(shù)擴(kuò)展以提供單個(gè)基于HTTP的平臺(tái),能夠?qū)V播觀眾規(guī)模的在線HD視頻分發(fā)到最流行的運(yùn)行時(shí)環(huán)境和固定線路和移動(dòng)環(huán)境中最新設(shè)備。
[0015]在已知的系統(tǒng)中,諸如圖1所示,分布式計(jì)算機(jī)系統(tǒng)100被配置為⑶N并且被假定為具有圍繞互聯(lián)網(wǎng)分布的一組機(jī)器102a-n。通常,大部分機(jī)器是位于互聯(lián)網(wǎng)的邊緣附近的服務(wù)器,即,在終端用戶接入網(wǎng)絡(luò)處或附近。網(wǎng)絡(luò)操作命令中心(NOCC) 104管理系統(tǒng)中各個(gè)機(jī)器的操作。諸如網(wǎng)站106之類的第三方站點(diǎn)將分發(fā)內(nèi)容(例如,HTML、嵌入的頁(yè)對(duì)象、流媒體、軟件下載、等等)卸載到分布式計(jì)算機(jī)系統(tǒng)100,并且具體地到“邊緣”服務(wù)器。通常,內(nèi)容提供者通過(guò)將給定內(nèi)容提供者域或子域化名為由服務(wù)提供者的權(quán)威域名服務(wù)管理的域(例如,由DNS CNAME)來(lái)卸載它們的內(nèi)容分發(fā)。期望內(nèi)容的終端用戶被引導(dǎo)到分布式計(jì)算機(jī)系統(tǒng)以更可靠并且高效地獲得那些內(nèi)容。盡管未詳細(xì)地示出,但是分布式計(jì)算機(jī)系統(tǒng)也可以包括其它基礎(chǔ)設(shè)施,諸如分布式數(shù)據(jù)收集系統(tǒng)108,其收集來(lái)自于邊緣服務(wù)器的使用和其它數(shù)據(jù),跨區(qū)域或區(qū)域集合聚集數(shù)據(jù),并且將數(shù)據(jù)傳遞到其它后端系統(tǒng)110、112、114和116以便于監(jiān)控、記錄、提醒、計(jì)費(fèi)、管理和其它操作和管理功能。分布式網(wǎng)絡(luò)代理118監(jiān)控網(wǎng)絡(luò)以及服務(wù)器負(fù)荷并提供網(wǎng)絡(luò)、業(yè)務(wù)和負(fù)荷數(shù)據(jù)到DNS查詢處理機(jī)構(gòu)115,其對(duì)于由⑶N管理的內(nèi)容域是權(quán)威性的。分布式數(shù)據(jù)傳輸機(jī)構(gòu)120可以用來(lái)將控制信息(例如,管理內(nèi)容、便于負(fù)荷平衡的元數(shù)據(jù),等等)分布到邊緣服務(wù)器。[0016]如圖2所示,給定機(jī)器200包括運(yùn)行支持一個(gè)或多個(gè)應(yīng)用206a_n的操作系統(tǒng)內(nèi)核(諸如Linux或變體)204的商品硬件(例如,Intel Pentium處理器)202。為了便于內(nèi)容分發(fā)服務(wù),例如,給定機(jī)器通常運(yùn)行一組應(yīng)用,諸如HTTP代理207 (有時(shí)被稱為“全球主機(jī)”或“重影”處理)、名稱服務(wù)器208、本地監(jiān)控處理210、分布式數(shù)據(jù)收集處理212,等等。對(duì)于流媒體,機(jī)器通常包括一個(gè)或多個(gè)媒體服務(wù)器,諸如Windows媒體服務(wù)器(WMS)或Flash服務(wù)器,根據(jù)支持的媒體格式的需要。
[0017]⑶N邊緣服務(wù)器被配置為提供一個(gè)或多個(gè)擴(kuò)展的內(nèi)容分發(fā)特征,優(yōu)選地以特定于域、特定于用戶為基礎(chǔ),優(yōu)選地利用使用配置系統(tǒng)分布給邊緣服務(wù)器的配置文件。給定配置文件優(yōu)選地是基于XML的并且包括便于一個(gè)或多個(gè)高級(jí)內(nèi)容處理特征的一組內(nèi)容處理規(guī)則和指令。配置文件可以經(jīng)由數(shù)據(jù)傳輸機(jī)制被分發(fā)到CDN邊緣服務(wù)器。美國(guó)專利N0.7,111,057示出了用于分發(fā)并管理邊緣服務(wù)器內(nèi)容控制信息的有用基礎(chǔ)設(shè)施,并且這個(gè)和其它邊緣服務(wù)器控制信息可以由CDN服務(wù)提供者本身、或(經(jīng)由外聯(lián)網(wǎng)等)操作源服務(wù)器的內(nèi)容提供者用戶提供。
[0018]⑶N可以包括存儲(chǔ)子系統(tǒng),諸如在美國(guó)專利N0.7,472,178中描述的,其公開(kāi)通過(guò)引用合并于此。
[0019]CDN可以操作服務(wù)器高速緩存分層結(jié)構(gòu)以提供用戶內(nèi)容的中間高速緩存;在美國(guó)專利N0.7,376,716中描述了一個(gè)這樣的高速緩存分層結(jié)構(gòu)子系統(tǒng),其公開(kāi)被通過(guò)引用合并于此。
[0020]⑶N可以在客戶端瀏覽器、邊緣服務(wù)器和用戶源服務(wù)器之間以在美國(guó)公布N0.20040093419中描述的方式提供安全內(nèi)容分發(fā)。這里描述的安全內(nèi)容分發(fā)一方面在客戶端與邊緣服務(wù)器處理之間、另一方面在邊緣服務(wù)器處理與源服務(wù)器處理之間實(shí)施基于SSL的鏈路。這使得SSL保護(hù)的網(wǎng)頁(yè)和/或它的組件被經(jīng)由邊緣服務(wù)器分發(fā)。
[0021]作為覆蓋,⑶N資源可以用來(lái)便于企業(yè)數(shù)據(jù)中心(其可以被私有地管理)與第三方軟件作為服務(wù)(SaaS)提供者之間的廣域網(wǎng)(WAN)加速服務(wù)。
[0022]在典型操作中,內(nèi)容提供者識(shí)別它期望由CDN服務(wù)的內(nèi)容提供者域或子域。CDN服務(wù)提供者關(guān)聯(lián)(例如,經(jīng)由規(guī)范名稱、或CNAME)內(nèi)容提供者域與邊緣網(wǎng)絡(luò)(CDN)主機(jī)名,并且CDN提供者然后向內(nèi)容提供者提供那個(gè)邊緣網(wǎng)絡(luò)主機(jī)名。當(dāng)向內(nèi)容提供者域或子域的DNS查詢?cè)趦?nèi)容提供者的域名服務(wù)器處被接收時(shí),那些服務(wù)器通過(guò)返回邊緣網(wǎng)絡(luò)主機(jī)名進(jìn)行響應(yīng)。邊緣網(wǎng)絡(luò)主機(jī)名指向⑶N,并且邊緣網(wǎng)絡(luò)主機(jī)名然后經(jīng)由⑶N名稱服務(wù)被解析。所以,⑶N名稱服務(wù)返回一個(gè)或多個(gè)IP地址。請(qǐng)求的客戶端瀏覽器然后對(duì)與IP地址相關(guān)聯(lián)的邊緣服務(wù)器做出內(nèi)容請(qǐng)求(例如,經(jīng)由HTTP或HTTPS)。該請(qǐng)求包括包含源內(nèi)容提供者域或子域的主機(jī)報(bào)頭。在接收到具有主機(jī)報(bào)頭的請(qǐng)求時(shí),邊緣服務(wù)器檢查它的配置文件以確定請(qǐng)求的內(nèi)容域或子域是否實(shí)際上由CDN處理。如果是的話,邊緣服務(wù)器將它的內(nèi)容處理規(guī)則和指令應(yīng)用于在配置中指定的域或子域。這些內(nèi)容處理規(guī)則和指令可以位于基于XML的“元數(shù)據(jù)”配置文件內(nèi)。
[0023]多域配置處理
[0024]利用以上作為背景,現(xiàn)在描述本公開(kāi)的主題。如上所述,多域配置(MDC,或mdc)特征允許無(wú)限數(shù)目的域(例如,通常與第三方相關(guān)聯(lián)或由第三方擁有)由單個(gè)配置(與第二方相關(guān)聯(lián))以可升級(jí)的方法支持。在代表性的但是非限制的實(shí)施例中,第二方是云服務(wù)提供者,并且第一方是操作諸如圖1所示的分布式網(wǎng)絡(luò)的CDN平臺(tái)服務(wù)提供者。如描述,邊緣服務(wù)器機(jī)器102提供實(shí)施下面描述的功能的處理機(jī)制。
[0025]如在這里使用的,以下提供相關(guān)術(shù)語(yǔ)的詞匯。
[0026]術(shù)語(yǔ)“MDC”是指服務(wù)特征的名稱,或“多域配置”,其是允許邊緣服務(wù)器配置文件通過(guò)執(zhí)行DNS查找來(lái)支持大量主機(jī)(和主機(jī)名)的服務(wù),DNS查找引起實(shí)際主機(jī)(主機(jī)名)用來(lái)查找用于特定請(qǐng)求的適當(dāng)內(nèi)容處理元數(shù)據(jù)文件。
[0027]“中間模式”是從主機(jī)報(bào)頭中未被識(shí)別的主機(jī)名的解析返回的DNS響應(yīng)。通常,中間模式被認(rèn)為是有效的響應(yīng),如果它具有特定格式的話,例如,config_name.mdc.service,net,其中config_name ig_name是將最終被使用以查找內(nèi)容處理元數(shù)據(jù)文件的主機(jī)報(bào)頭(數(shù)字財(cái)產(chǎn))。
[0028]“config_host name” 是指中間響應(yīng)的 config_name 段。
[0029]“主機(jī)CNAME鏈”是從主機(jī)報(bào)頭中的主機(jī)名的解析返回的DNS響應(yīng)。
[0030]“代理主機(jī)CNAME鏈”是從與“proxy-host”的前綴相結(jié)合的主機(jī)報(bào)頭中的主機(jī)名的解析返回的DNS響應(yīng)。DNS響應(yīng)可以包括中間CNAME假名,其包含可用到用于提取的內(nèi)容處理元數(shù)據(jù)文件的元數(shù)據(jù)。此DNS響應(yīng)是由MDC特征使用以確定c0nfig_h0St名稱和其它信息(例如,主機(jī)名到IP地址映射)的一個(gè)響應(yīng)。前綴的使用提供一種當(dāng)改變DNS記錄以將數(shù)字財(cái)產(chǎn)(例如,網(wǎng)站)移動(dòng)到CDN提供者或從CDN提供者移動(dòng)時(shí)阻止拒絕服務(wù)的方式。[0031 ] 如上所述,MDC使得操作基于SaaS的解決方案(包括站點(diǎn)托管)的⑶N用戶能夠使用CDN服務(wù)提供同時(shí)使得CDN提供者能夠捕獲并且適當(dāng)?shù)貙?duì)它的用戶(基于SaaS的解決方案的提供者)針對(duì)第三方業(yè)務(wù)計(jì)費(fèi)。此特征容易集成,因?yàn)樗鼉H僅需要特定域被CNAME到每配置公共域。如將看到的,MDC允許CDN用戶將大量唯一域映射到單個(gè)配置文件而不必改變他們的配置。這簡(jiǎn)化了提供,使得驗(yàn)證更容易,并且改善了用戶的性能同時(shí)顯著地降低了管理開(kāi)銷。
[0032]一般,本技術(shù)如下工作。當(dāng)諸如XYZ.com之類的⑶N用戶激活MDC時(shí),它使得XYZ.com將諸如Custl.saas.XYZ.com、Cust2.saas.XYZ.com之類的大量唯一域映射到單個(gè)配置文件。圖3示出了本公開(kāi)的多方身份斷定方法,其中CDN用戶是具有與CDN服務(wù)提供者(第一方)的商業(yè)布置的第二方,并且其中第二方具有與它的用戶(第三方)的每一個(gè)的單獨(dú)商業(yè)布置。在激活時(shí),CDN邊緣服務(wù)器高速緩存請(qǐng)求的主機(jī)報(bào)頭的完整規(guī)范名稱(CNAME)鏈(示例:WWW.Custl.com)并且將請(qǐng)求綁定到正確的配置文件。此后,請(qǐng)求解析到適當(dāng)?shù)蘑荖邊緣服務(wù)器網(wǎng)絡(luò)IP地址。然后請(qǐng)求被處理并且終端用戶被服務(wù)。
[0033]圖3示出了本公開(kāi)的多方身份斷定(CNAME鏈)方法,其中CDN用戶是具有與CDN服務(wù)提供者(第一方)的商業(yè)布置的第二方,并且其中第二方具有與它的用戶(第三方)的每一個(gè)的單獨(dú)商業(yè)布置。
[0034]可選地,來(lái)自于CNAME鏈的DNS記錄的標(biāo)簽可以在配置中被參考以支持安全性驗(yàn)證和應(yīng)用源路由。此方法的優(yōu)點(diǎn)是云提供者的源不需要集中地執(zhí)行此操作,使得整體應(yīng)用分發(fā)處理更高效。
[0035]該方法提供許多益處。第一個(gè)益處是更容易管理。該技術(shù)提供可升級(jí)的方式以在具有單個(gè)配置的⑶N上放置無(wú)限制的域以用于即時(shí)提供。對(duì)于新的附加域不需要附加配置改變,因?yàn)樗鼈冇傻诙皆黾?。該技術(shù)也在邊緣網(wǎng)絡(luò)處提供增強(qiáng)的安全性,因?yàn)橹悄艿倪吘壟渲每梢岳脕?lái)自于完整CNAME鏈的數(shù)據(jù),以在邊緣處使用簡(jiǎn)單信賴模型用于身份/安全綁定,因此實(shí)現(xiàn)源的安全性卸載。該技術(shù)也為第二方用戶提供更好的性能。智能的邊緣配置利用來(lái)自于完整CNAME鏈的數(shù)據(jù),以用于資源綁定和條件處理,改善整體性能并且還幫助源卸載。
[0036]在一個(gè)實(shí)施方式中,多域配置功能在⑶N邊緣網(wǎng)絡(luò)中的邊緣服務(wù)器處操作。它提供支持未知主機(jī)報(bào)頭(在具有客戶端瀏覽器GET請(qǐng)求的邊緣服務(wù)器處接收的)與可以(或可以不)在那里被支持的用戶配置文件之間的綁定的方法。當(dāng)沒(méi)有用戶配置被發(fā)現(xiàn)時(shí),對(duì)主機(jī)報(bào)頭值執(zhí)行DNS查找,并且分析結(jié)果CNAME鏈以確定使用哪一個(gè)用戶配置(如果有的話)。正負(fù)DNS查找可以被高速緩存。圖4詳細(xì)地示出了該處理。
[0037]優(yōu)選地,MDC利用DNS以確定具有未知主機(jī)報(bào)頭的請(qǐng)求是否應(yīng)當(dāng)由邊緣服務(wù)器ghost(網(wǎng)絡(luò)代理)處理來(lái)服務(wù)。在服務(wù)請(qǐng)求、并且假定與主機(jī)報(bào)頭的匹配沒(méi)有在服務(wù)器的配置文件中找到之前,解析未知主機(jī)報(bào)頭。該處理然后檢查返回的CNAME列表以檢查請(qǐng)求是否應(yīng)當(dāng)被服務(wù)以及并如何服務(wù)。以下是此處理的示例。
[0038]假定用戶(fo0 .com)將它的主機(jī)CNAME到新的⑶N邊緣域,如:
[0039]www.0dddomain.com.1NCNAME cfg.fo0.com.mdc.edgesuite.net.[0040]www.anotherdomain.com.1N CNAME cfg.fo0.com.mdc.edgesuite.net.
[0041]并且cfg.fo0.com.mdc.edgesuite.Net又被解析到特定于CDN的映射,諸如aX.s.akamaiedge.net,其中x是⑶N序列號(hào)分配(用于負(fù)荷平衡)并且s是用于此業(yè)務(wù)的可選的特殊映射。用于特定于CDN的映射的命名法不意指是限制的,因?yàn)樘囟ㄌ峁┱咄ǔJ褂貌煌姆桨?。利用此設(shè)置,優(yōu)選地操作流程如下。首先,終端用戶客戶端機(jī)器(或與其關(guān)聯(lián)的本地DNS)將www.0dddomain.com解析到IP地址并且發(fā)送請(qǐng)求。通常,IP地址與運(yùn)行在接近于終端用戶、不超負(fù)荷、并且預(yù)期托管期望內(nèi)容的特定邊緣服務(wù)器機(jī)器上的特定ghost進(jìn)程相關(guān)聯(lián)。
[0042]ghost (網(wǎng)絡(luò)代理)處理接收請(qǐng)求并且提取主機(jī)報(bào)頭。ghost進(jìn)程然后在它的配置文件(在此示例中稱為ar I index),通常表示為XML,中查找主機(jī)。如果主機(jī)報(bào)頭值被找到,則正常處理發(fā)生。如果沒(méi)有,則流程優(yōu)選地如下繼續(xù)。具體地,ghost進(jìn)程執(zhí)行主機(jī)報(bào)頭名稱的DNS解析。返回的CNAME然后被檢查用于兩個(gè)模式。首先,并且給定示例情況,ghost進(jìn)程尋找*.mdc.edgesuite.net模式。如上所述,此模式也稱config_host名稱。ghost然后尋找ax.s.akamaiedge.net映射(或另一個(gè)⑶N可識(shí)別的序列/映射模式)。如果ghost進(jìn)程然后發(fā)現(xiàn)業(yè)務(wù)被映射到有效的CDN序列/映射,則它使用C0nfig_h0st名稱執(zhí)行另一個(gè)配置文件查找以用于與其關(guān)聯(lián)的元數(shù)據(jù)文件?,F(xiàn)在,假定結(jié)果元數(shù)據(jù)文件被加載,則請(qǐng)求由ghost進(jìn)程正常處理(意思是說(shuō)在元數(shù)據(jù)文件中識(shí)別的內(nèi)容處理需要被應(yīng)用于請(qǐng)求的內(nèi)容并且內(nèi)容被服務(wù))。任何故障觸發(fā)ghost中的“未知主機(jī)”邏輯,其然后采取控制。注意,此動(dòng)作優(yōu)選地不是遞歸的;因此,在配置文件中的第二失敗的查找并不會(huì)引起嘗試未知主機(jī)名的新的DNS解析。
[0043]以上描述的進(jìn)程添加將某一時(shí)間添加到用于MDC請(qǐng)求的響應(yīng)。為了緩減這一點(diǎn),優(yōu)選地ghost進(jìn)程高速緩存正負(fù)查找。正的查找可以根據(jù)在來(lái)自于用戶的名稱服務(wù)器的DNS響應(yīng)中返回的生存時(shí)間(TTL)被高速緩存。優(yōu)選地,負(fù)的(NX)響應(yīng)默認(rèn)被高速緩存給定時(shí)間(例如,30分鐘)。諸如超時(shí)之類的錯(cuò)誤響應(yīng)優(yōu)選地不被高速緩存。對(duì)于正的響應(yīng),優(yōu)選地用于查找元數(shù)據(jù)的主機(jī)名(和CNAME假名)被高速緩存。專用的高速緩存可以被用于此目的。
[0044]此流程對(duì)于用戶是非常靈活的,因?yàn)樗鼰o(wú)需對(duì)將被服務(wù)的主機(jī)名的CDN預(yù)知,并且它可以容易地?cái)U(kuò)展到任何數(shù)目的主機(jī)名。
[0045]圖4更詳細(xì)地示出了示例邊緣服務(wù)器邏輯流程。流程從步驟400開(kāi)始,ghost接收具有主機(jī)報(bào)頭的HTTP GET。在步驟402處,ghost測(cè)試以確定主機(jī)報(bào)頭是否在它的索引中找到。此索引正常包括識(shí)別此特定邊緣配置(其可以包括所有CDN用戶或它的一些子集)服務(wù)的所有數(shù)字財(cái)產(chǎn)的主機(jī)報(bào)頭。如果主機(jī)報(bào)頭被識(shí)別,則正常處理在步驟404處繼續(xù),ghost加載用于識(shí)別的域(數(shù)字財(cái)產(chǎn))的邊緣配置。然后以平常的方式服務(wù)內(nèi)容(在應(yīng)用在邊緣配置中識(shí)別的任何內(nèi)容處理要求之后)。但是,如果在步驟402處的測(cè)試結(jié)果指示在GET請(qǐng)求中的主機(jī)報(bào)頭沒(méi)有被識(shí)別,則該過(guò)程分支到步驟410,其中g(shù)host檢查它的主機(jī)報(bào)頭高速緩存以看看它之前是否已經(jīng)解析了此主機(jī)報(bào)頭。然后該過(guò)程在步驟412繼續(xù)以看看是否有任何此類結(jié)果被否定地高速緩存。如果是的話,則該過(guò)程分支到步驟408并且發(fā)出HTTP400(壞的請(qǐng)求)并且該處理結(jié)束。如果事先解析已被找到并且沒(méi)有被肯定地高速緩存,如由在步驟414處的測(cè)試指示,則該過(guò)程然后分支到步驟416以嘗試解析主機(jī)報(bào)頭名稱。步驟416是如上所述經(jīng)由DNS的基本操作(未知“主機(jī)報(bào)頭”的解析)。
[0046]在步驟416處,ghost解析未知主機(jī)報(bào)頭。在步驟418處執(zhí)行測(cè)試以保證解析沒(méi)有費(fèi)時(shí)太久。如果在步驟416處的解析發(fā)生在超時(shí)時(shí)間段之內(nèi),則控制在步驟420繼續(xù)以確定解析的結(jié)果(通常一個(gè)或多個(gè)CNAMES)是否被識(shí)別為中間模式。如果結(jié)果不被識(shí)別為中間模式,則該過(guò)程在步驟422繼續(xù)以測(cè)試響應(yīng)(來(lái)自于步驟416)中的CNAME是否在主機(jī)報(bào)頭配置文件中找到。如果是的話,該過(guò)程分支到步驟426以提取C0nfig_h0st名稱。在步驟426之后,控制繼續(xù)在步驟406以確定提取的C0nfig_h0st名稱是否在邊緣服務(wù)器主機(jī)報(bào)頭配置文件中找到。如果在步驟406處的測(cè)試結(jié)果指示config_host名稱在索引文件中找至IJ,則控制在步驟404處繼續(xù),邊緣服務(wù)器應(yīng)用任何內(nèi)容處理要求并且服務(wù)響應(yīng)。否則,控制處理到步驟408并且利用如先前描述的HTTP400結(jié)束。
[0047]如果在步驟420處的測(cè)試結(jié)果指示中間模式已被識(shí)別,則ghost在步驟424處執(zhí)行測(cè)試以確定響應(yīng)(在步驟416處返回的)是否具有識(shí)別的序列/映射模式。如果是的話,控制在步驟426繼續(xù),如已被描述的。
[0048]如果步驟418的結(jié)果是肯定的,或如果步驟422或步驟424的結(jié)果是否定的,則控制在步驟428繼續(xù)。在此步驟處,ghost解析具有proxy-host前綴的主機(jī)報(bào)頭名稱。如上所述,前綴的使用提供一種當(dāng)改變DNS記錄以將數(shù)字財(cái)產(chǎn)(例如,網(wǎng)站)移動(dòng)到CDN提供者或從CDN提供者移動(dòng)時(shí)防止拒絕服務(wù)的方式。在步驟428處的解決方案的結(jié)果然后被傳遞通過(guò)一組操作(步驟430、434和438),它們鏡像步驟(418、420和424)的那些操作,例外的是,對(duì)步驟430處的超時(shí)測(cè)試的肯定響應(yīng)生成HTTP500代碼(因?yàn)闆](méi)有使用遞歸)。這完成處理。
[0049]遷移選項(xiàng)
[0050]通常,當(dāng)用戶正在使用另一個(gè)提供者時(shí),存在若干MDC遷移選項(xiàng):第二方遷移選項(xiàng)、和第三方遷移選項(xiàng)。第二方選項(xiàng)是如下一種情況:第二方表不用于將CNAME到它們的許多第三方網(wǎng)站的DNS權(quán)限。當(dāng)?shù)诙紺NAME的通過(guò)CDN時(shí),所有第三方網(wǎng)站被同時(shí)移動(dòng)。第三方情況是其中第三方表示CNAME的它的主機(jī)到第二方提供者的網(wǎng)站。
[0051]到第二方的解決方案的情況如下。首先,對(duì)主機(jī)報(bào)頭執(zhí)行DNS查找。假定未能尋找mdc后綴的一個(gè)。對(duì)于在DNS查找中向后返回的每個(gè)CNAME,ghost然后確定CNAME是否處于邊緣服務(wù)器主機(jī)報(bào)頭配置文件中。如果CNAME處于配置文件中,并且對(duì)于每個(gè)mdc后綴,ghost將mdc后綴附加到CNAME并且再次檢查結(jié)果是否處于主機(jī)報(bào)頭配置文件中。如果是,則此結(jié)果指示mdc用戶。然后,根據(jù)CNAME和mdc后綴而構(gòu)造的主機(jī)名用于查找然后應(yīng)用于請(qǐng)求的序列/映射。
[0052]以下是示例。假定⑶N用戶托管images, example, com并且它期望遷移到⑶N。舊的DNS CNAME鏈可以是:
[0053]c321.s21.cdn2.cpcloud.com a8.cdn.ccloud.com
[0054]a8.cdn.cpcloud.com.sp.net
[0055]基于所述迀移,新的DNS CNAME鏈然后可以如下:
[0056]c321.s21.cdn2.cpcloud.com a8.cdn.cpcloud.com
[0057]a8.cdn.cpcloud.com.mdc.edgesuite.net a8.s.akamaiedge.net
[0058]利用舊的DNS CNAME鏈,ghost可以在它的主機(jī)報(bào)頭索引中找到a8.cdn.cpcioud.com,附加 mdc.edgesuite.net 并且也在索引中找到 a8.cdn.cpcioud.com.mdc.edgesuite.net。然后,服務(wù)器使用a8.cdn.cpcioud.com.mdc.edgesuite.net以找到序列/映射,它的配置然后最終應(yīng)用于接收的請(qǐng)求。
[0059]為了便于第三方迀移情況,諸如proxy-host之類的專門(mén)化的前綴用于進(jìn)行所述查找。在這種情況下,用戶CNAME兩個(gè)主機(jī)名,例如:
[0060]proxy-host.www.0dddomain.com.1N CNAME cfg.fo0.com.mdc.edgesuite.net.[0061]www.0dddomain.com.1NCNAME cfg.fo0.com.mdc.edgesuite.net.[0062]cfg.fo0.com.mdc.edgesuite.net.1N CNAME aX.s.akamaiedge.net.[0063]只要 proxy-host.www.0dddomain.com 名稱在 www.0dddomain.com 之前被CNAME(或同時(shí),如果站點(diǎn)是第一次被假名為CDN),ghost服務(wù)器處理就獲得正確的CNAME鏈。以這種方式解耦主機(jī)名容易地允許迀移。一般前綴proxy-host的使用允許無(wú)縫迀移到多域配置的代理⑶N提供者。
[0064]在或者第二方或者第三方迀移情況中,CNAME鏈可以提供在高速緩存未中時(shí)需要被傳遞到源的元數(shù)據(jù)??紤]以下示例:
[0065]proxy-host, images, example, com.1NCNAME c321.s21.cdn2.cpcloud.com.[0066]images, example, com.1N CNAME c321.s21.cdn2.cpcloud.com.[0067]c321.s21.cdn2.cpcloud.com.1N CNAME a8.cdn.cpcloud.com.[0068]a8.cdn.cpcloud.com.1NCNAME
[0069]a8.cdn.cpcloud.com.mdc.edgesuite.net.[0070]a8.cdn.cpcloud.com.mdc.edgesuite.net.1N CNAME
[0071]aX.s.akamaiedge.net.[0072]其中c321是容器令牌,s21是共用的,并且cdn2是區(qū)帶.[0073]在此示例中,假定期望使得邊緣服務(wù)器能夠訪問(wèn)CNAME鏈,因此它可以提取元數(shù)據(jù)。因此,在MDC高速緩存中,諸如AK_MDC_DATA之類的變量被配置如下(并且,再一次,僅僅是示例):
[0074]AK—MDC—DATA = proxy-host, images, example, com.[0075]c321.s21.cdn2.cpcioud.com.[0076]a8.cdn.cpcioud.com.[0077]a8.cdn.cpcioud.com.mdc.edgesuite.net.[0078]邊緣服務(wù)器然后可以像這樣提取元數(shù)據(jù):
[0079]〈match:regex string = "% (AK—MDC—DATA) "regex ="
[0080](c\d+)\.(s\d+)\.(\s+) \.cpcloud"variable_list = "TOKEN SHARD ZONE"〉
[0081 ] </ match: regex〉
[0082]如上所述,⑶N可以在高速緩存分層結(jié)構(gòu)中操作邊緣服務(wù)器,其中邊緣ghost與也操作網(wǎng)絡(luò)代理處理(ghost)的父服務(wù)器進(jìn)行通信。因?yàn)?在此情況中)邊緣ghost已經(jīng)進(jìn)行工作以將主機(jī)報(bào)頭名稱映射到配置,所以不需要強(qiáng)迫任何父ghost同樣進(jìn)行。為了避免這一點(diǎn),優(yōu)選地邊緣ghost發(fā)送(高速緩存分層結(jié)構(gòu)根源)報(bào)頭中的config_host名稱(和CNAME鏈)。父ghost然后提取主機(jī)名和并且使用它代替主機(jī)報(bào)頭中的值。此類型的報(bào)頭可以被識(shí)別為x-Akama1-MDC-Data,如以下示例示出:
[0083]X-Akama1-MDC-Data:
[0084]proxy-host, images, example, com.c321.s21.cdn2.cp
[0085]cloud, com .a8.cdn.cpcioud.com.[0086]a8.cdn.cpcioud.com.mdc.edgesuite.net.[0087]在操作中,父ghost首先在它的主機(jī)報(bào)頭配置文件中查找通常的“Host: ”報(bào)頭主機(jī)名,并且如果失敗,則父嘗試使用從X-Akama1-MDC-Data報(bào)頭中提取的config_host。如果此操作失敗,則發(fā)出HTTP400響應(yīng)碼。
[0088]技術(shù)人員將理解,以上描述的MDC架構(gòu)的本質(zhì)實(shí)現(xiàn)用于簡(jiǎn)單的(但是靈活的)前向源網(wǎng)絡(luò)資源綁定解決方案和使用簡(jiǎn)單信賴模型的安全身份斷定的選項(xiàng)。元數(shù)據(jù)中的網(wǎng)絡(luò)資源綁定通過(guò)具有CDN用戶的身份屬性例如從DNS記錄標(biāo)簽的依賴性注入,而以分散的規(guī)模被增強(qiáng)。所述方法通過(guò)管理的命名約定和從DNS記錄標(biāo)簽中提取的安全令牌二者實(shí)現(xiàn)在MDC架構(gòu)中行為者之間穩(wěn)固的信賴模型(即,CDN — CDN (平臺(tái)內(nèi))、CDN —用戶、以及用戶一第二方)。
[0089]不限制地,MDC模塊的初始配置可以由用戶使用外聯(lián)網(wǎng)門(mén)戶配置管理器執(zhí)行。該配置管理器與“邊緣主機(jī)名”(或CNAME)工具和數(shù)字財(cái)產(chǎn)數(shù)據(jù)庫(kù)交互。如上所述,沒(méi)有MDC,邊緣配置被經(jīng)由數(shù)字財(cái)產(chǎn)綁定的概念從邊緣主機(jī)名管理脫離。當(dāng)邊緣配置被綁定到數(shù)字財(cái)產(chǎn)時(shí),門(mén)戶提供應(yīng)用在由邊緣服務(wù)器ghost進(jìn)程使用的配置文件(arlindex)中編碼此綁定以嘗試將HTTP主機(jī)報(bào)頭匹配到配置文件。對(duì)于MDC,優(yōu)選地引入稱為MDC數(shù)字財(cái)產(chǎn)的專門(mén)化的數(shù)字財(cái)產(chǎn)類型。如果綁定到配置的數(shù)字財(cái)產(chǎn)是MDC類型的數(shù)字財(cái)產(chǎn),則邊緣配置文件變?yōu)槟躆DC的。對(duì)于已經(jīng)購(gòu)買(mǎi)此模塊的用戶,用戶門(mén)戶可以顯示用于“多域數(shù)字財(cái)產(chǎn)”類型的增強(qiáng)的用戶接口。
[0090]在簡(jiǎn)單的情況中,用戶具有一個(gè)配置并且需要經(jīng)由MDC支持?jǐn)?shù)千的第三方無(wú)價(jià)值的CNAME。配置文件是prod-domains.customer, com.Xml,其可以是預(yù)先存在的或新的。當(dāng)創(chuàng)建多域數(shù)字財(cái)產(chǎn)類型時(shí),優(yōu)選地門(mén)戶通過(guò)在CDN網(wǎng)絡(luò)域名稱和用戶的數(shù)字財(cái)產(chǎn)名稱之間插入附加的預(yù)先定義的標(biāo)簽(形成MDC前綴),來(lái)與CNAME提供工具協(xié)調(diào)形成MDC邊緣主機(jī)名:
[0091]domains, customer, com.mdc-<MDC-AUTHZ-TOKEN>.edgesuite.net
[0092]在此令牌中的安全散列優(yōu)選地使用不變的業(yè)務(wù)身份屬性。CNAME工具然后使用此串創(chuàng)建CNAME。一旦這完成后,配置管理器應(yīng)用將配置文件與用戶賬戶關(guān)聯(lián)并且將它排隊(duì)以用于網(wǎng)絡(luò)部署(到邊緣服務(wù)器)。授權(quán)的邊緣主機(jī)名實(shí)施CDN —CDN(平臺(tái)內(nèi))信賴模型和CDN —用戶信賴模型兩者(通過(guò)我們的用戶可信地將他們的數(shù)字財(cái)產(chǎn)映射到我們的授權(quán)的邊緣主機(jī)名)。
[0093]ghost進(jìn)程經(jīng)由它的控制文件,具體地arlindex.xml,信賴MDC資格。在此設(shè)計(jì)選擇中,代替邊緣主機(jī)名中的散列,配置管理器(經(jīng)由MUI)將設(shè)置用于與此配置文件的arlindex.xml 條目相關(guān)聯(lián)的 CNAME 的屬性(flexible-host = 〃yes〃),所述 arlindex.xml條目指示用于它的“多域配置”特征的資格。利用以上示例名稱,arlindex.xml條目將看起來(lái)像:
[0094]〈akama1:1nclude type = 〃arldata〃file = 〃cfg.customer, com.xml〃>〈host flexible-host = 〃yes〃>customer.com.mdc.edgesuite.net</host></akama1:1nclude)
[0095]對(duì)于基本的MDC用戶,可以存在對(duì)用戶域可以被綁定到每個(gè)配置文件的限制以及配置可以轉(zhuǎn)發(fā)到多少源域的約束。例如,配置管理器可以允許每個(gè)配置文件僅僅一個(gè)源域。如果期望,用戶可以購(gòu)買(mǎi)此模塊的更多單元以支持多個(gè)源域,優(yōu)選地每個(gè)源域?qū)⒕哂兴约旱呐渲梦募?br>
[0096]優(yōu)選地,與配置文件相關(guān)聯(lián)的所有用戶(邊緣)主機(jī)名應(yīng)當(dāng)共享同樣的元數(shù)據(jù)規(guī)則。
[0097]如上所述,優(yōu)選地CNAME工具可以被配置管理器調(diào)用以便創(chuàng)建適當(dāng)?shù)陌踩吘壷鳈C(jī)名。該工具應(yīng)當(dāng)使用由配置管理器傳遞到它的串以創(chuàng)建所有用戶的域?qū)⒂成涞降腃NAME。
[0098]優(yōu)選地,第三方類型的域(云)或CDN用戶類型的多個(gè)域由于信賴模型將不會(huì)直接CNAME到CDN安全的邊緣主機(jī)名。
[0099]本公開(kāi)提供穩(wěn)固的邊緣服務(wù)器處理機(jī)制。如已被描述的,當(dāng)對(duì)用戶的域的客戶端請(qǐng)求獲得映射(由⑶N授權(quán)DNS)到ghost進(jìn)程時(shí),處理首先進(jìn)行查找(在它的arlindex.xml中)以尋找對(duì)主機(jī)報(bào)頭的匹配。此查找假定失敗。ghost然后對(duì)接收的主機(jī)報(bào)頭執(zhí)行DNS查找以檢查此主機(jī)名是否經(jīng)由中間CNAME解析到有效的⑶N服務(wù)提供者域,諸如以mdc.edgesuite.net結(jié)束的那一個(gè)。如果沒(méi)有,則ghost返回錯(cuò)誤(HTTP400代碼)并且還否定地高速緩存此主機(jī)名。此高速緩存幫助ghost在下次它查看對(duì)此主機(jī)名的請(qǐng)求時(shí)快速響應(yīng)(不需要DNS查找)。如果中間CNAME具有期望的后綴,則ghost使用返回的CNAME (例如,customer, com.mdc.edgesuite.net)以查找 arlindex.xml 以便到達(dá)期望的配置文件的名稱(例如,cfg.customer, com.xml)。隨著進(jìn)一步檢查,ghost可以驗(yàn)證內(nèi)部的flexible-host = “yes”屬性在將此文件用于元數(shù)據(jù)應(yīng)用之前被設(shè)置用于CNAME。在這種情況下,ghost高速緩存“主機(jī)名到配置文件”映射以用于將來(lái)更快速的響應(yīng)。ghost進(jìn)程可以利用中間CNAME導(dǎo)出元數(shù)據(jù)配置文件的名稱,因?yàn)榕渲霉芾砥饕呀?jīng)建立了文件命名約定并且經(jīng)由CNAME提供工具實(shí)施它。如果DNS查找時(shí)間到了,則ghost應(yīng)當(dāng)既不肯定又不否定地高速緩存此主機(jī)名,而是僅僅服務(wù)錯(cuò)誤。ghost請(qǐng)求處理的其余部分照常進(jìn)行。
[0100]盡管不需要,但是優(yōu)選地ghost使用單獨(dú)的處理線程以實(shí)行需要的DNS查找。此線程可以是速率限制的,其在拒絕服務(wù)(DoS)攻擊已被啟動(dòng)(通過(guò)利用大量無(wú)效的主機(jī)名做出請(qǐng)求)以采用此附加查找的情況下是有益的。壞的主機(jī)名的否定高速緩存和好的主機(jī)名的肯定高速緩存在這點(diǎn)上也是有益的。
[0101]如以上示出的,優(yōu)選地,中間CNAME以用于多域用戶的特殊商定的后綴(mdc.edgesuite.net)結(jié)束。
[0102]在代表性的實(shí)施方式中,主題功能以軟件實(shí)施,如由處理器執(zhí)行的計(jì)算機(jī)程序指令。
[0103]更一般地,這里描述的技術(shù)利用一個(gè)或多個(gè)計(jì)算有關(guān)的實(shí)體(系統(tǒng)、機(jī)器、進(jìn)程、程序、庫(kù)、功能、等)的集合提供,它們一起便于或提供上面描述的功能。在典型的實(shí)施方式中,軟件在其上運(yùn)行的代表性的機(jī)器包括商品硬件、操作系統(tǒng)、應(yīng)用運(yùn)行時(shí)環(huán)境、和應(yīng)用或進(jìn)程和關(guān)聯(lián)數(shù)據(jù)的集合,其提供給定系統(tǒng)或子系統(tǒng)的功能。如描述的,功能可以在獨(dú)立的機(jī)器中、或跨機(jī)器的分布式集合中實(shí)施。功能可以被提供為服務(wù),例如,作為SaaS解決方案。
[0104]雖然以上描述由本發(fā)明的某些實(shí)施例執(zhí)行的操作的特定順序,但是應(yīng)當(dāng)理解這樣的順序是示范性,因?yàn)榭商鎿Q實(shí)施例可以以不同的順序執(zhí)行操作、組合某些操作、重疊某些操作等。說(shuō)明書(shū)中對(duì)給定實(shí)施例的參考指示描述的實(shí)施例可以包括特定特征、結(jié)構(gòu)、或特性,但是每個(gè)實(shí)施例可以不一定包括所述特定特征、結(jié)構(gòu)、或特性。
[0105]雖然公開(kāi)的主題已經(jīng)在方法或過(guò)程的上下文中被描述,但是本公開(kāi)也涉及用于執(zhí)行這里操作的裝置。此裝置可以被專門(mén)地構(gòu)成以用于需要的目的,或它可以包括由存儲(chǔ)在計(jì)算機(jī)中的計(jì)算機(jī)程序選擇性地激活或重新配置的通用計(jì)算機(jī)。此類計(jì)算機(jī)程序可以被存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,諸如但是不局限于任何類型的盤(pán),包括光盤(pán)、⑶-ROM、和磁光盤(pán)、只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)、磁或光卡、或適合于存儲(chǔ)電子指令的任何類型的媒體、并且每個(gè)耦接到計(jì)算機(jī)系統(tǒng)總線。
[0106]雖然系統(tǒng)的給定組件已經(jīng)單獨(dú)地描述,但是普通的技術(shù)人員將理解,一些功能可以被在給定指示、程序序列、代碼部分等等中組合或共享。
[0107]優(yōu)選地,功能在應(yīng)用層解決方案中實(shí)施,盡管這不是限制,因?yàn)闃?biāo)識(shí)的功能的部分可以被內(nèi)建在操作系統(tǒng)等中。
[0108]功能可以被利用除HTTP之外的其它應(yīng)用層協(xié)議實(shí)施,諸如HTTPS、或具有類似操作特性的任何其它協(xié)議。
[0109]對(duì)可以實(shí)施連接的客戶端側(cè)或服務(wù)器側(cè)的計(jì)算實(shí)體的類型沒(méi)有限制。任何計(jì)算實(shí)體(系統(tǒng)、機(jī)器、設(shè)備、程序、進(jìn)程、功用、等)可以充當(dāng)客戶端或服務(wù)器。
【權(quán)利要求】
1.一種裝置,包括: 處理器; 保存被適配為由處理器執(zhí)行的計(jì)算機(jī)程序指令的計(jì)算機(jī)存儲(chǔ)器,所述計(jì)算機(jī)程序指令包括: 用于接收請(qǐng)求的代碼,所述請(qǐng)求具有與其關(guān)聯(lián)的主機(jī)報(bào)頭,所述主機(jī)報(bào)頭包括值; 用于確定主機(jī)報(bào)頭中的值是否被識(shí)別的代碼; 用于如果主機(jī)報(bào)頭中的值不被識(shí)別則對(duì)所述值執(zhí)行DNS查詢的代碼; 用于響應(yīng)于DNS查詢接收CNAME鏈的代碼; 用于分析CNAME鏈以確定預(yù)定模式是否被識(shí)別的代碼;以及 用于如果該預(yù)定模式被識(shí)別則使用該預(yù)定模式和其它數(shù)據(jù)來(lái)嘗試定位內(nèi)容處理元數(shù)據(jù)文件的代碼。
2.如權(quán)利要求1所述的裝置,其中所述計(jì)算機(jī)程序指令還包括: 用于應(yīng)用內(nèi)容處理元數(shù)據(jù)文件中的信息的代碼;以及 用于返回對(duì)該請(qǐng)求的響應(yīng)的代碼。
3.如權(quán)利要求1所述的裝置,還包括高速緩存。
4.如權(quán)利要求1所述的裝置,其中所述計(jì)算機(jī)程序指令還包括用于高速緩存該CNAME鏈以便再次使用的代碼。
5.如權(quán)利要求1所述的裝置,其中所述計(jì)算機(jī)程序指令包括用于如果內(nèi)容處理元數(shù)據(jù)文件不能從該預(yù)定模式和其它數(shù)據(jù)被定位則返回錯(cuò)誤的代碼。
6.如權(quán)利要求1所述的裝置,其中所述計(jì)算機(jī)程序指令還包括用于響應(yīng)于確定CNAME鏈不具有預(yù)定模式來(lái)嘗試驗(yàn)證與邊緣主機(jī)名相關(guān)聯(lián)的授權(quán)令牌的代碼。
7.如權(quán)利要求1所述的裝置,其中所述計(jì)算機(jī)程序指令還包括用于確定中間模式是否還包括前綴值的代碼。
8.一種由第一方操作的系統(tǒng),包括: 可網(wǎng)絡(luò)訪問(wèn)的提供軟件,其在硬件上執(zhí)行以使得第二方能夠提供與一組第三方域相關(guān)聯(lián)的多域配置(MDC)數(shù)字財(cái)產(chǎn);和 至少一個(gè)邊緣服務(wù)器機(jī)器,其包括在硬件上執(zhí)行以接收與第三方相關(guān)聯(lián)的域、并且作為響應(yīng)以確定域是否是與MDC數(shù)字財(cái)產(chǎn)相關(guān)聯(lián)的第三方域中的一個(gè)的軟件進(jìn)程。
9.如權(quán)利要求8所述的系統(tǒng),其中所述軟件進(jìn)程通過(guò)對(duì)該域執(zhí)行DNS查找以檢索至少一個(gè)中間CNAME來(lái)確定該域是否是第三方域中的一個(gè)。
10.如權(quán)利要求8所述的系統(tǒng),其中所述可網(wǎng)絡(luò)訪問(wèn)的提供軟件包括配置管理器,其建立用于MDC數(shù)字財(cái)產(chǎn)的命名約定并且經(jīng)由提供中間CNAME的CNAME提供工具實(shí)施該命名約定。
【文檔編號(hào)】G06F15/16GK103999071SQ201280060960
【公開(kāi)日】2014年8月20日 申請(qǐng)日期:2012年11月1日 優(yōu)先權(quán)日:2011年11月2日
【發(fā)明者】S·L.·路丁, P·拉加特, M·J.·史蒂文斯, F·R.·肖頓, J·阿塔拉 申請(qǐng)人:阿卡麥科技公司