專利名稱:用于處理環(huán)的實(shí)時(shí)消息隊(duì)列的制作方法
技術(shù)領(lǐng)域:
本公開(kāi)總體上涉及處理網(wǎng)絡(luò),并且但并非限制地涉及來(lái)自內(nèi)容傳遞網(wǎng)絡(luò)(⑶N)的數(shù)據(jù)流傳輸。
背景技術(shù):
CDN提供了用于其他方面的內(nèi)容的增強(qiáng)的傳遞。每一個(gè)CDN從內(nèi)容提供者獲取內(nèi)容,并且有效地向請(qǐng)求內(nèi)容的終端使用者提供內(nèi)容。服務(wù)質(zhì)量(QoS)可以當(dāng)使用CDN時(shí)改變。在一些情況下,由終端使用者使用的存在點(diǎn)(POP)可能不是接收內(nèi)容的最有利的位置。例如,在鳳凰城的使用者可以使用在一些情況下可能提供弱于最佳QoS的在紐約的POP。內(nèi)容的傳遞被較寬的因特網(wǎng)如何實(shí)時(shí)地或近乎實(shí)時(shí)地作為大大地影響。存在向因特網(wǎng)提供被收集并且周期地使得可獲得的健康信息的服務(wù)。這可以在某種程度上有益,但是未提供用于CDN或因特網(wǎng)的其他大型使用者提供高QoS水平所需的許多決定的足夠近來(lái)的信息。通過(guò)不頻繁的更新提供的一般趨勢(shì)未提供用于進(jìn)行CDN的一些傳遞決定的及時(shí)信肩、O
發(fā)明內(nèi)容
在一個(gè)實(shí)施例中,本公開(kāi)描述了用于從耦合到多個(gè)處理用戶的消息隊(duì)列的多個(gè)數(shù)據(jù)代理收集分布式信息的系統(tǒng)和方法。所述數(shù)據(jù)代理向由API限定的接口提供它們的收集的信息。在向所述消息隊(duì)列加上所述收集的信息之前,所述收集的數(shù)據(jù)可以被重新格式化或進(jìn)一步處理。多個(gè)處理用戶收聽(tīng)由所述消息隊(duì)列產(chǎn)生的內(nèi)容流,以接收它們已經(jīng)預(yù)訂的數(shù)據(jù)。一旦所述處理用戶接收到所述內(nèi)容流,則所述處理用戶向所述內(nèi)容流應(yīng)用算法,以執(zhí)行一個(gè)或多個(gè)其他功能。例如,所述處理用戶可以向所述消息隊(duì)列內(nèi)反饋處理的數(shù)據(jù),并且/或者至少部分地基于所述內(nèi)容流來(lái)執(zhí)行行為。在各種程度的處理和聚集中的信息可以在處理環(huán)中通過(guò)任何數(shù)量的循環(huán)傳送,以允許信息的交換中心實(shí)時(shí)或近乎實(shí)時(shí)地流動(dòng)。在另一個(gè)實(shí)施例中,本公開(kāi)描述了一種內(nèi)容傳遞網(wǎng)絡(luò)(CDN),用于信息的及時(shí)交換以用于該信息的分布式處理。所述⑶N包括第一和第二接口、消息隊(duì)列與第三和第四接口。所述第一接口耦合到第一數(shù)據(jù)代理,所述第一數(shù)據(jù)代理向所述第一接口提供第一數(shù)據(jù)。所述第二接口耦合到第二數(shù)據(jù)代理,所述第二數(shù)據(jù)代理向所述第二接口提供第二數(shù)據(jù)。在所述CDN內(nèi)的所述消息隊(duì)列產(chǎn)生根據(jù)所述第一數(shù)據(jù)和所述第二數(shù)據(jù)的流。所述消息隊(duì)列耦合到所述第一接口和所述第二接口。所述第三接口耦合到所述消息隊(duì)列和接收所述流的第一處理用戶。在所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)被所述第一數(shù)據(jù)代理和/或第二數(shù)據(jù)代理收集后,所述第一處理用戶在不到10秒內(nèi)在所述流中接收所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)。所述第四接口耦合到所述消息隊(duì)列和接收所述流的第二處理用戶。在所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)被所述第一數(shù)據(jù)代理和/或第二數(shù)據(jù)代理收集后,所述第一處理用戶在不到10秒內(nèi)在所述流中接收所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)。在另一個(gè)實(shí)施例中,本公開(kāi)描述了一種用于使用CDN來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法。從耦合到第一數(shù)據(jù)代理的第一接口接收第一數(shù)據(jù)。從耦合到第二數(shù)據(jù)代理的第二接口接收第二數(shù)據(jù)。處理所述第一數(shù)據(jù)和第二數(shù)據(jù)。使用所述CDN的消息隊(duì)列來(lái)將形成根據(jù)所述第一數(shù)據(jù)和所述第二數(shù)據(jù)的流。所述消息隊(duì)列耦合到所述第一接口和所述第二接口。所述流被發(fā)送到第三接口,所述第三接口耦合到第一處理用戶以接收所述流。在所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)被所述第一數(shù)據(jù)代理和/或第二數(shù)據(jù)代理收集后,所述第一處理用戶在不到10秒內(nèi)在所述流中接收所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)。 在另一個(gè)實(shí)施例中,本公開(kāi)描述了一種用于使用POP的分布式網(wǎng)絡(luò)來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法。從第一 POP的第一接口接收第一數(shù)據(jù),其中,所述第一接口耦合到第一數(shù)據(jù)代理。從第二POP的第二接口接收第二數(shù)據(jù)。所述第二接口耦合到第二數(shù)據(jù)代理。所述POP的分布式網(wǎng)絡(luò)包括所述第一 POP和所述第二 POP。所述第一 POP在地理上遠(yuǎn)離所述第二 POP。處理所述第一數(shù)據(jù)和第二數(shù)據(jù)。使用所述⑶N的消息隊(duì)列來(lái)形成根據(jù)所述第一數(shù)據(jù)和所述第二數(shù)據(jù)的流。所述消息隊(duì)列耦合到所述第一接口和所述第二接口。所述流被發(fā)送到第三接口,所述第三接口耦合到處理用戶以接收所述流。通過(guò)以下提供的詳細(xì)描述,本公開(kāi)的另外的適用領(lǐng)域?qū)⒆兊们宄?。?yīng)當(dāng)明白,詳細(xì)說(shuō)明和具體示例在指示不同的實(shí)施例的同時(shí)意欲僅用于說(shuō)明的目的,而不意欲必然地限制本公開(kāi)的范圍。
結(jié)合附圖描述本公開(kāi);圖I描述了內(nèi)容分發(fā)系統(tǒng)的實(shí)施例的框圖;圖2描述了數(shù)據(jù)處理系統(tǒng)的實(shí)施例的框圖;圖3描述了演示數(shù)據(jù)流的實(shí)施例的圖;圖4描述了處理環(huán)的實(shí)施例的框圖;圖5描述了詳細(xì)描述內(nèi)容傳遞網(wǎng)絡(luò)(CDN)的部分的實(shí)施例的框圖;圖6圖示用于數(shù)據(jù)處理系統(tǒng)的操作的處理的實(shí)施例的流程圖;圖7圖示配置內(nèi)部處理用戶的處理的實(shí)施例的流程圖;圖8圖示用于設(shè)置數(shù)據(jù)代理并且使用該數(shù)據(jù)代理來(lái)向消息隊(duì)列報(bào)告信息的處理的實(shí)施例的流程圖;以及圖9A和9B圖不用于改善任播路由的處理的實(shí)施例的流程圖。
在附圖中,類似部件和/或特征可以具有相同的附圖標(biāo)記。而且,可以通過(guò)在附圖標(biāo)記后跟隨劃線和在類似的部件之間區(qū)分的第二標(biāo)記來(lái)區(qū)分相同類型的各個(gè)部件。如果僅在說(shuō)明書(shū)中使用第一附圖標(biāo)記,則該描述適用于具有同一第一附圖標(biāo)記的類似部件的任何一種,而與第二附圖標(biāo)記無(wú)關(guān)。
具體實(shí)施例方式接下來(lái)的說(shuō)明僅提供了優(yōu)選示例性實(shí)施例,并且不意欲限制本公開(kāi)的范圍、適用性或配置。而是,接下來(lái)的優(yōu)選示例性實(shí)施例的說(shuō)明向本領(lǐng)域內(nèi)的技術(shù)人員提供了用于使得能夠?qū)崿F(xiàn)優(yōu)選示例性實(shí)施例的說(shuō)明??梢悦靼?,在不偏離在所附權(quán)利要求中給出的精神和范圍的情況下,可以在元件的功能和布置上進(jìn)行各種改變。首先參見(jiàn)圖1,示出內(nèi)容分發(fā)系統(tǒng)100的實(shí)施例的框圖。在這個(gè)實(shí)施例中,內(nèi)容始發(fā)者106向內(nèi)容傳遞網(wǎng)絡(luò)(⑶N) 110卸下內(nèi)容對(duì)象的傳遞。內(nèi)容始發(fā)者106產(chǎn)生和/或分 發(fā)內(nèi)容對(duì)象,并且包括內(nèi)容提供者108、內(nèi)容站點(diǎn)116和源服務(wù)器112。⑶N 110可以在各個(gè)實(shí)施例中高速緩存、重新分發(fā)和/或容納第三方的內(nèi)容,以卸下傳遞,并且通常提供較好的服務(wù)質(zhì)量(QoS)。在這個(gè)實(shí)施例中,內(nèi)容分發(fā)系統(tǒng)100定位內(nèi)容對(duì)象(或其多個(gè)部分),并且向終端使用者102或處理用戶(未示出)分發(fā)內(nèi)容對(duì)象。內(nèi)容對(duì)象在CDN 110內(nèi)動(dòng)態(tài)地被高速緩存或處理,以改善QoS,而不復(fù)制整個(gè)內(nèi)容對(duì)象,除非隨后被終端使用者128請(qǐng)求。內(nèi)容對(duì)象是任何內(nèi)容文件或內(nèi)容流,并且可以例如包括視頻、圖片、數(shù)據(jù)、音頻、軟件和/或文本。例如,內(nèi)容對(duì)象可以是收集的信息或來(lái)自消息隊(duì)列的內(nèi)容流。內(nèi)容對(duì)象可以是現(xiàn)場(chǎng)的、延遲的或存儲(chǔ)的。內(nèi)容對(duì)象可以是收集的信息,該收集的信息實(shí)時(shí)或近乎實(shí)時(shí)地被流傳送CDN 110至或自CDN 110流傳送。貫穿本說(shuō)明書(shū),可以參考內(nèi)容對(duì)象、內(nèi)容、內(nèi)容流和/或內(nèi)容文件,但是應(yīng)當(dāng)明白,那些術(shù)語(yǔ)每當(dāng)它們可以出現(xiàn)時(shí)可以可交換地被使用。許多內(nèi)容提供者108使用⑶N 110通過(guò)因特網(wǎng)104向終端使用者128傳遞內(nèi)容對(duì)象。⑶N 110包括多個(gè)存在點(diǎn)(P0P)120,該多個(gè)POP 120在地理上遍布內(nèi)容分發(fā)系統(tǒng)100,以傳遞內(nèi)容。各個(gè)實(shí)施例可以在⑶N 110內(nèi)具有任何數(shù)量的POP 120,該任何數(shù)量的POP 120通常分布在因特網(wǎng)104周?chē)咏K端使用者系統(tǒng)102的各個(gè)位置。多個(gè)POP 120使用同一IP地址,使得任播路由方案用于對(duì)于每一個(gè)請(qǐng)求找到在網(wǎng)絡(luò)含義上可能接近終端使用者的POP 120。除了因特網(wǎng)104之外,廣域網(wǎng)(WAN)114或其他主干網(wǎng)可以將POP 120彼此耦合,并且也將POP 120與⑶N 110的其他部分耦合。當(dāng)終端使用者128通過(guò)其各自的終端使用者系統(tǒng)102請(qǐng)求網(wǎng)頁(yè)時(shí),將對(duì)于網(wǎng)頁(yè)的請(qǐng)求經(jīng)由因特網(wǎng)104直接地或間接地傳送到內(nèi)容始發(fā)者106。內(nèi)容始發(fā)者106是內(nèi)容對(duì)象的來(lái)源或再分發(fā)者。內(nèi)容站點(diǎn)116是終端使用者系統(tǒng)102可訪問(wèn)的網(wǎng)站。在一個(gè)實(shí)施例中,內(nèi)容站點(diǎn)116可以是其中使用萬(wàn)維網(wǎng)瀏覽器能夠觀看內(nèi)容的網(wǎng)站。在其他實(shí)施例中,可以使用應(yīng)用軟件而不是萬(wàn)維網(wǎng)瀏覽器來(lái)訪問(wèn)內(nèi)容站點(diǎn)116。在這個(gè)實(shí)施例中,內(nèi)容提供者108將內(nèi)容請(qǐng)求在其作出后引導(dǎo)到CDN 110,或者通過(guò)將傳遞路徑嵌入網(wǎng)頁(yè)的URL內(nèi)來(lái)形成傳遞路徑。在任何情況下,在這個(gè)實(shí)施例中,通過(guò)使用與兩個(gè)或更多POP 120對(duì)應(yīng)的任播IP地址來(lái)向⑶N 110傳遞對(duì)于內(nèi)容的請(qǐng)求?!?duì)于內(nèi)容對(duì)象的請(qǐng)求被傳送到⑶N 110,則該請(qǐng)求與在使用任播路由方案的⑶N 110內(nèi)的特定POP 120相關(guān)聯(lián)。特定POP 120可以檢索內(nèi)容對(duì)象的來(lái)自內(nèi)容提供者108的部分。替代地,內(nèi)容提供者108可以通過(guò)預(yù)先填充,即在第一請(qǐng)求之前,直接地向⑶N 110和其相關(guān)聯(lián)的POP 120提供內(nèi)容對(duì)象。在這個(gè)實(shí)施例中,內(nèi)容對(duì)象被提供到⑶N 110,并且被存儲(chǔ)在一個(gè)或多個(gè)CDN服務(wù)器中,使得可以從CDN 110供應(yīng)所請(qǐng)求的內(nèi)容的部分。CDN服務(wù)器包括實(shí)際處理終端使用者請(qǐng)求的邊緣服務(wù)器。源服務(wù)器112保存內(nèi)容始發(fā)者106的每一個(gè)內(nèi)容對(duì)象的拷貝。周期地,源服務(wù)器112的內(nèi)容可以通過(guò)高速緩存、容納和/或預(yù)先填充算法與⑶N 110—致。一些內(nèi)容提供者可以使用在⑶N 110內(nèi)的源服務(wù)器來(lái)容納內(nèi)容,并且避免維持拷貝的必要。一旦⑶N 110從源服務(wù)器112檢索到內(nèi)容對(duì)象,則將內(nèi)容對(duì)象存儲(chǔ)在特定的POP120內(nèi),并且從那個(gè)POP 120向終端使用者系統(tǒng)102供應(yīng)該內(nèi)容對(duì)象。流內(nèi)容對(duì)象可以具有實(shí)時(shí)或近乎實(shí)時(shí)的信息或可以被預(yù)先存儲(chǔ)。終端使用者系統(tǒng)102接收內(nèi)容對(duì)象,并且處理它以由終端使用者128或自動(dòng)化處理系統(tǒng)使用。終端使用者系統(tǒng)102可以是個(gè)人計(jì)算機(jī)、媒體播放機(jī)、手持計(jì)算機(jī)、因特網(wǎng)設(shè)備、電話、IPTV機(jī)頂盒、萬(wàn)維網(wǎng)服務(wù)器、處理系統(tǒng)、流無(wú)線電或接收和/或播放內(nèi)容對(duì)象的任何其他裝置。在一些實(shí)施例中,多個(gè)終端使用者系統(tǒng)102 可以聯(lián)網(wǎng)在一起。雖然這個(gè)實(shí)施例僅示出單個(gè)內(nèi)容始發(fā)者106和單個(gè)CDN 110,但是應(yīng)當(dāng)明白,在各個(gè)實(shí)施例中可以有每種的許多個(gè)。這個(gè)⑶N 110允許有效地收集實(shí)時(shí)信息以在⑶N 110之內(nèi)或⑶NllO之外分發(fā)。外部數(shù)據(jù)代理可以向在不同城市中的不同POP 120提供信息,該信息被⑶N 110通過(guò)從近處的POP 120接收內(nèi)容流而聚集為來(lái)自消息隊(duì)列226的內(nèi)容流,以在另一個(gè)位置中處理。當(dāng)在實(shí)施例中在POP 120之間分發(fā)內(nèi)容時(shí),WAN 114可以有效和安全得多。另外,處理用戶可以獲得在內(nèi)容流中可獲得類似信息的益處,以提供信息的較寬采樣,以將處理決定基于它。參見(jiàn)圖2,示出數(shù)據(jù)處理系統(tǒng)200的實(shí)施例,數(shù)據(jù)處理系統(tǒng)200使用⑶N 110基礎(chǔ)架構(gòu)來(lái)實(shí)時(shí)地或近乎實(shí)時(shí)地高效共享信息。在這個(gè)實(shí)施例中,數(shù)據(jù)處理系統(tǒng)200與外部數(shù)據(jù)收集和處理一起執(zhí)行流內(nèi)容的內(nèi)部數(shù)據(jù)收集和處理。其他實(shí)施例可以具有或者全部外部或者全部?jī)?nèi)部數(shù)據(jù)收集。數(shù)據(jù)處理系統(tǒng)200允許及時(shí)向報(bào)告方或其他方報(bào)告可能感興趣的及時(shí)信息。數(shù)據(jù)處理系統(tǒng)200可以監(jiān)控從幾個(gè)來(lái)源收集的信息,以允許它基于那個(gè)信息及時(shí)地作出商務(wù)和/或處理決定。例如,可以從多個(gè)來(lái)源收集和向數(shù)據(jù)處理系統(tǒng)200報(bào)告關(guān)于在因特網(wǎng)上的各個(gè)鏈路的健康的報(bào)告,以允許數(shù)據(jù)處理系統(tǒng)200將傳遞請(qǐng)求路由到相對(duì)沒(méi)有因特網(wǎng)擁塞的邊緣服務(wù)器。在一個(gè)實(shí)施例中,通過(guò)從許多來(lái)源收集信息,所收集的信息的可靠性在聚集中增加,使得用戶可以使用聚集的信息或內(nèi)容流來(lái)進(jìn)行較好的決定。⑶N 110用于多個(gè)目的,包括如上所述的收集的信息的聚集和分發(fā)。另外,在這個(gè)實(shí)施例中,CDN 110執(zhí)行收集的信息的處理以用于內(nèi)部目的或作為用于其他方面的服務(wù)。雖然在圖2中未詳細(xì)描述,但是CDN 110可以執(zhí)行更多的傳統(tǒng)任務(wù),例如,通過(guò)高速緩存來(lái)自源服務(wù)器的內(nèi)容或作為源服務(wù)器容納內(nèi)容來(lái)對(duì)于其他方面分發(fā)內(nèi)容。在圖2中所示的CDN 110中未詳細(xì)描述與分發(fā)內(nèi)容相關(guān)聯(lián)的那些塊。CDN的其他實(shí)施例可以不執(zhí)行傳統(tǒng)的內(nèi)容傳遞,而是將CDN聚焦在作為在處理和聚集的各個(gè)階段中用于收集的信息的交換中心執(zhí)行。內(nèi)部地,⑶N 110從一個(gè)或多個(gè)內(nèi)部數(shù)據(jù)代理208B收集信息。內(nèi)部數(shù)據(jù)代理208B收集與諸如傳遞性能、資源裝載、帶寬消耗、客戶服務(wù)、商業(yè)智能等的事務(wù)相關(guān)的信息。圖2為了簡(jiǎn)單而示出單個(gè)內(nèi)部和外部數(shù)據(jù)代理208,但是應(yīng)當(dāng)明白,可以有任何數(shù)量的內(nèi)部和外部數(shù)據(jù)代理208。內(nèi)部數(shù)據(jù)代理208B可以實(shí)時(shí)地、近乎實(shí)時(shí)地或沿著另一條時(shí)間線報(bào)告收集的信息。為了說(shuō)明在報(bào)告信息中的任何延遲,時(shí)間戳或陳舊指示符可以向其他方面通知信息多及時(shí)地被采樣。⑶N 110可以選擇允許第三方通過(guò)用于第三方的外部處理用戶212A的預(yù)訂來(lái)使用在CDN 110內(nèi)聚集的內(nèi)部或外部收集的信息。命令和控制(CC)接口 238配置收集的輸入信息到⑶N 110和從⑶NI 10輸出內(nèi)容流。用于接受收集的信息并且提供內(nèi)容流的API被提供到在CDN 110外部的、要預(yù)訂內(nèi)容流的第三方。⑶N 110或第三方可以被設(shè)計(jì)為使用CC接口 238的還未定義的API。⑶N 110也可以定義使用CC接口 238的授權(quán)和認(rèn)證參數(shù),諸如認(rèn)證、授權(quán)、登錄和/或數(shù)據(jù)加密。在這個(gè)實(shí)施例中,CC信息通過(guò)與收集的信息或內(nèi)容流分離的信道被傳送到各個(gè)數(shù)據(jù)代理208和處理用戶212,但是其他實(shí)施例可以將CC信息嵌入在這些通信信道中。CC信息允許調(diào)節(jié)信息報(bào)告頻率、指定信息和內(nèi)容流的格式、停止數(shù)據(jù)代理208或處理用戶212、更新認(rèn)證和授權(quán)等??梢酝ㄟ^(guò)CC接口 238來(lái)研究和探索可獲得的各種內(nèi)容流。特定處理用戶212的 那些內(nèi)容流選擇被存儲(chǔ)在隊(duì)列預(yù)訂信息222中。CDN 110然后將所選擇的內(nèi)容流路由到已經(jīng)選擇了給定內(nèi)容流的傳遞的處理用戶212。另外,⑶N 110也支持由檔案數(shù)據(jù)代理208C收集的、在歷史數(shù)據(jù)存儲(chǔ)區(qū)234中存儲(chǔ)的各種內(nèi)容流的歷史查詢。檔案數(shù)據(jù)代理208C支持相對(duì)于歷史消息隊(duì)列信息運(yùn)行假設(shè)查詢,以測(cè)試在處理用戶212處運(yùn)行的算法如何對(duì)于例如在過(guò)去收集的內(nèi)容流作出反應(yīng)。通過(guò)CC接口 238,可以選擇各種內(nèi)容流來(lái)歸檔到歷史數(shù)據(jù)存儲(chǔ)區(qū)234內(nèi)。外部數(shù)據(jù)代理208A也可以實(shí)時(shí)地、近乎實(shí)時(shí)地或沿著另一條時(shí)間線來(lái)收集向⑶N110報(bào)告的信息。在數(shù)據(jù)代理208和⑶N 110之間存在定義的API。由⑶N 110收集的每種類型的信息或變量落在定義的API或多個(gè)API內(nèi)。在一些情況下,CC接口 238用于定義另外的變量以修改可能為處理用戶212使用的API。另外的變量可以被傳送到所有的處理用戶212或僅子集。例如,數(shù)據(jù)代理208可以報(bào)告獲得的最后一英里帶寬和與測(cè)試相關(guān)聯(lián)的用戶標(biāo)識(shí)符,但是將用戶標(biāo)識(shí)符定義為私有變量,該私有變量將不被傳送到在其域之外的處理用戶212。在其域內(nèi)的處理用戶212將與由其本身的數(shù)據(jù)代理208報(bào)告的帶寬報(bào)告一起接收用戶標(biāo)識(shí)符。內(nèi)容流或子流的加密和/或唯一尋址可以用于將私有變量隱藏在消息隊(duì)列內(nèi)。一些類型的信息可以具有標(biāo)準(zhǔn)API。當(dāng)表征和提供新的信息源時(shí),開(kāi)發(fā)者可以通過(guò)CC接口 238指定或提出新的API。報(bào)告?zhèn)鬟f健康信息的API的示例可以是接受源IP地址、目的地IP地址、流速率、延遲、可靠性和采樣時(shí)間的API。在足夠的數(shù)據(jù)代理208從⑶N110內(nèi)或外部報(bào)告?zhèn)鬟f健康的情況下,可以將那個(gè)信息的聚集用于任何數(shù)量的目的。一些實(shí)施例對(duì)于通過(guò)外部處理用戶212A接收內(nèi)容流收費(fèi)。計(jì)價(jià)可以是每一個(gè)記錄、每一個(gè)字節(jié)或每一個(gè)預(yù)訂。一些實(shí)施例相對(duì)于向外部處理用戶212A的內(nèi)容流的收費(fèi)對(duì)于從外部數(shù)據(jù)代理208A提供的收集的信息抵消信貸。例如,在一個(gè)實(shí)施例中,每向CDN 110提供的每一個(gè)收集的信息的記錄將導(dǎo)致來(lái)自內(nèi)容流的一個(gè)免費(fèi)數(shù)據(jù)記錄。通常,在聚集的內(nèi)容流中的數(shù)據(jù)對(duì)于報(bào)告信息的越多實(shí)體變?yōu)樵娇煽康牟蓸印DN 110可以通過(guò)經(jīng)由CC接口 238可訪問(wèn)的成本核算信息來(lái)協(xié)商所提供的信息和所消耗的信息的計(jì)價(jià)。
外部數(shù)據(jù)代理208A通過(guò)接口或數(shù)據(jù)輸入適配器230與⑶N 110進(jìn)行通信。圖2僅示出單個(gè)外部數(shù)據(jù)代理208A,但是應(yīng)當(dāng)明白,在不同的實(shí)施例中,可以存在幾百、幾千或幾百萬(wàn)個(gè)外部數(shù)據(jù)代理208。與數(shù)據(jù)輸入適配器230的通信可以被加密或不加密。例如,可以使用利用TCP連接的套接字。除了 TCP之外,可以在一些實(shí)施例中使用諸如SCTP和UDP的其他傳輸層協(xié)議來(lái)吸收收集的信息。諸如SSL的協(xié)議可以用于保護(hù)在TCP連接上的信息。可以對(duì)于與⑶N 110對(duì)接的任何外部數(shù)據(jù)代理208A執(zhí)行認(rèn)證和授權(quán)。數(shù)據(jù)輸入適配器230通過(guò)提供API和任何加密、授權(quán)和/或認(rèn)證來(lái)從外部數(shù)據(jù)代理208A接收信息。在一些情況下,數(shù)據(jù)輸入適配器230重新格式化或重新布置來(lái)自外部數(shù)據(jù)代理208A的信息。雖然未示出,但是一些實(shí)施例可以使用數(shù)據(jù)輸入適配器230來(lái)用于內(nèi)部數(shù)據(jù)代理208B。⑶N 110具有多個(gè)POP 120,該多個(gè)POP 120在地理上分布使得大多數(shù)外部數(shù)據(jù)代理208A和處理用戶212A與POP 120較為接近。使用任播、DNS解析、重新定向或其他方法將外部數(shù)據(jù)代理208A和外部處理用戶212A分配到特定的POP 120,以使用具有足夠的QoS的近處的POP 120。用于收集的信息或內(nèi)容流的POP 120可以被選擇來(lái)減少發(fā)送特定流的POP120的數(shù)量,限制POP 120的加載、在信息的收集或流傳送中的速度延遲或滿足其他要、求。處理環(huán)可以被固定到指定的Ρ0Ρ,以用于每一個(gè)數(shù)據(jù)代理208和處理用戶212。消息隊(duì)列226從數(shù)據(jù)代理208獲取所有的信息,并且向已經(jīng)從消息隊(duì)列226請(qǐng)求內(nèi)容流的任何處理用戶212分發(fā)作為內(nèi)容流的收集的信息。消息隊(duì)列226可以在單個(gè)POP120中、中心位置或分布在多個(gè)POP 120之間。如果全部被接收,則僅僅特定處理用戶212已經(jīng)預(yù)訂的在消息隊(duì)列226內(nèi)的內(nèi)容流可以被那個(gè)處理用戶212讀取。被發(fā)送到消息隊(duì)列226的收集的信息被消息隊(duì)列226在一秒的一部分中處理和在內(nèi)容流中返回??梢允褂酶鞣N組播和路由技術(shù)來(lái)從消息隊(duì)列226分發(fā)多個(gè)處理用戶212已經(jīng)請(qǐng)求的內(nèi)容流。諸如組播或多個(gè)單播的協(xié)議可以用于在消息隊(duì)列226內(nèi)分發(fā)流。另外,可以在各個(gè)實(shí)施例中使用諸如TCP、SCTP和UDP的傳輸層協(xié)議。通過(guò)CC接口 238,可以向外部或內(nèi)部處理用戶212A、212B分配在消息隊(duì)列226內(nèi)的一個(gè)或多個(gè)內(nèi)容流。內(nèi)容流是在特定類別中的特定類型的消息。例如,6個(gè)數(shù)據(jù)代理208可以全部報(bào)告作為通過(guò)消息隊(duì)列226向給定的內(nèi)容流內(nèi)傳送的信息的內(nèi)容傳遞度量。一個(gè)或多個(gè)處理用戶212可以預(yù)訂和接收內(nèi)容流,以處理信息并且作出決定和/或供應(yīng)作為被反饋回消息隊(duì)列226內(nèi)的收集的信息的來(lái)自處理的輸出。通過(guò)CC接口 238,開(kāi)發(fā)者可以搜索可獲得的內(nèi)容流或指定新的內(nèi)容流和其API。可以通過(guò)使用處理用戶212處理多個(gè)現(xiàn)有的內(nèi)容流來(lái)確定新的內(nèi)容流。⑶N 110具有內(nèi)部處理用戶212B,該內(nèi)部處理用戶212B處理所分配的內(nèi)容流以執(zhí)行在⑶N 110內(nèi)的功能。內(nèi)部處理用戶212B可以基于來(lái)自消息隊(duì)列226的一個(gè)或多個(gè)內(nèi)容流來(lái)執(zhí)行諸如提供新帳戶或改善路由的功能。處理規(guī)則216-2被提供到內(nèi)部處理用戶212B,以提供限定如何處理預(yù)訂的內(nèi)容流的算法、規(guī)則、指令和/或軟件。處理規(guī)則216-2可以確定來(lái)自內(nèi)容流的記錄的濾波和加權(quán)。在基于內(nèi)容流的分析而作出決定的情況下,例如每一個(gè)數(shù)據(jù)記錄被加上時(shí)間戳,以反映何時(shí)收集該信息,使得可以向最近的結(jié)果提供附加的可信性。其他實(shí)施例可以濾除來(lái)自不可靠來(lái)源或陳舊的內(nèi)容流中的記錄。例如,信息的特定貢獻(xiàn)者可以證明具有次于最佳的收集的信息,并且該信息可以被很低地加權(quán)或一起去除。對(duì)于外部處理用戶212A,可以通過(guò)數(shù)據(jù)輸出適配器242來(lái)進(jìn)行濾波,以減少?gòu)蘑荖 110通過(guò)的帶寬。內(nèi)部處理用戶212B可以另外處理一個(gè)或多個(gè)內(nèi)容流,以提供不同信息以反饋到消息隊(duì)列226來(lái)作為不同內(nèi)容流的一部分。例如,成百的外部數(shù)據(jù)代理208可以提供在地理上相關(guān)的溫度測(cè)量,該溫度測(cè)量被置于在消息隊(duì)列226上的內(nèi)容流內(nèi)。內(nèi)部處理用戶212B可以接收內(nèi)容流,并且將其處理為地形熱圖,該地形熱圖被作為傳送到消息隊(duì)列226上的收集的信息被提供回以用于其他內(nèi)部和外部處理用戶212可能的使用。以鏈狀排列的各種數(shù)據(jù)代理208和處理用戶212形成處理環(huán)路。外部處理用戶212A與內(nèi)部處理用戶212A類似地作為,但是是對(duì)于不是⑶N 110的一部分的第三方如此作為。外部處理用戶212A通過(guò)數(shù)據(jù)輸出適配器242來(lái)與⑶N 110對(duì)接。數(shù)據(jù)輸出適配器242可以執(zhí)行認(rèn)證、授權(quán)、重新格式化、濾波、加密等。外部處理用戶212A可以從消息隊(duì)列226吸收內(nèi)容流,但是它們也可以在一些情況下通過(guò)向消息隊(duì)列226內(nèi)返回處理的信息來(lái)作為外部數(shù)據(jù)代理。處理規(guī)則216-1定義了外部處理用戶212A如何處理所預(yù)訂的內(nèi)容流。
如上所述,CC接口 238允許⑶N 110查詢歷史消息隊(duì)列226信息。檔案數(shù)據(jù)代理208C收聽(tīng)消息隊(duì)列226,以在歷史數(shù)據(jù)庫(kù)234中存儲(chǔ)內(nèi)容流。歷史數(shù)據(jù)庫(kù)234可以將內(nèi)容流存儲(chǔ)不同的時(shí)間量,并且可以不存儲(chǔ)所有的內(nèi)容流。不同的內(nèi)容流可以被存儲(chǔ)不同的時(shí)間量。例如,冰箱的溫度讀取可以被置于消息隊(duì)列226上,但是僅在超過(guò)對(duì)應(yīng)于故障的某個(gè)閾值的情況下被存儲(chǔ)。參考圖3,示出用于演示數(shù)據(jù)流的圖300的實(shí)施例。來(lái)自多個(gè)數(shù)據(jù)代理208 (未示出)的收集的信息304被發(fā)送到⑶N 110。如上所述,內(nèi)部數(shù)據(jù)代理208B可以在⑶N 110內(nèi)收集附加的收集的信息304。具有多個(gè)內(nèi)容流308的⑶N 110產(chǎn)生消息隊(duì)列226。在⑶N110之外和之內(nèi)的處理用戶212 (未示出)實(shí)時(shí)地或近乎實(shí)時(shí)地接收流308。接下來(lái)參見(jiàn)圖4,示出處理環(huán)400的一個(gè)實(shí)施例的框圖。處理環(huán)400的這個(gè)示例從η個(gè)數(shù)據(jù)代理208收集信息304。信息304的一些在達(dá)到處理環(huán)的尾部之前通過(guò)多達(dá)三輪處理。處理用戶212-2、212-3、212-m、212-5的一些不向消息隊(duì)列提供回它們的進(jìn)一步處理的信息,以作為信息流的終點(diǎn),這些處理用戶在此有時(shí)被稱為“收聽(tīng)用戶”。雖然示出三個(gè)消息隊(duì)列226,但是應(yīng)當(dāng)明白,這些可以是相同的消息隊(duì)列或任何數(shù)量的不同的消息隊(duì)列。在不同的實(shí)施例中,消息隊(duì)列226可以全部位于⑶N 110內(nèi)或部分地位于⑶N 110之外。當(dāng)然,外部處理用戶212A能夠訪問(wèn)作為內(nèi)容流308的消息隊(duì)列226的部分。在一個(gè)示例中,數(shù)據(jù)代理208可以報(bào)告它查驗(yàn)(ping)給定地址所花費(fèi)的時(shí)間。這個(gè)收集的信息304被實(shí)時(shí)(S卩,小于I秒)或近乎實(shí)時(shí)地(S卩,在收集后不到10秒)被報(bào)告,并且耦合到消息隊(duì)列226。在大多數(shù)情況下,收集的信息304被加上時(shí)間戳,以指示原始信息的新鮮度。例如,執(zhí)行測(cè)試的時(shí)間可以被存儲(chǔ)在時(shí)間戳中。在這個(gè)示例中,每一個(gè)數(shù)據(jù)代理208向消息隊(duì)列226報(bào)告其地址,要查驗(yàn)的給定地址、查驗(yàn)的時(shí)間和何時(shí)完成查驗(yàn)測(cè)試。各種數(shù)據(jù)代理208可以在⑶N 110的幾個(gè)POP 120和耦合到⑶NI 10的第三方系統(tǒng)中,例如,容納內(nèi)容的源服務(wù)器可以報(bào)告從其位置查驗(yàn)的響應(yīng)能力。在這個(gè)示例中,通過(guò)許多查驗(yàn)結(jié)果的聚集,可以實(shí)時(shí)地或近乎實(shí)時(shí)地監(jiān)控因特網(wǎng)的健康。在這個(gè)示例中,存在收聽(tīng)正在報(bào)告查驗(yàn)結(jié)果的內(nèi)容流308的兩個(gè)處理用戶212-1、212-2。第二處理用戶212-2是不向消息隊(duì)列226提供另外的信息而是獲取流308并使用它來(lái)例如更新路由器的路由表的收聽(tīng)用戶。例如,可以通過(guò)第二處理用戶212-2來(lái)更新路由表,以實(shí)時(shí)地或近乎實(shí)時(shí)地指定哪些最可能是在因特網(wǎng)上的最有響應(yīng)能力的路由。第一處理用戶212從多個(gè)數(shù)據(jù)源獲取具有查驗(yàn)結(jié)果的流308,并且通過(guò)按照自治系統(tǒng)(AS)號(hào)碼分組結(jié)果來(lái)進(jìn)一步處理它,并且向消息隊(duì)列226內(nèi)報(bào)告回收集和處理的信息304。通過(guò)AS號(hào)碼分組的平均結(jié)果是需要很少的帶寬來(lái)向其他方面報(bào)告并且避免處理用戶212必須進(jìn)一步沿著處理環(huán)400查看在內(nèi)容流308中的每一個(gè)記錄的收集的信息。存在收聽(tīng)由AS號(hào)碼匯總的查驗(yàn)結(jié)果的內(nèi)容流308的m個(gè)處理用戶212。第四處理用戶212-4通過(guò)增加用于AS號(hào)碼的地理信息來(lái)進(jìn)一步處理流308。這個(gè)處理將查驗(yàn)結(jié)果與用于AS號(hào)碼的地理估計(jì)相關(guān)。那個(gè)收集的信息304被提供回消息隊(duì)列226。第五消息隊(duì)列212-5收聽(tīng)來(lái)自消息隊(duì)列226的內(nèi)容流308,以接收在地理上相關(guān)的查驗(yàn)結(jié)果。雖然這個(gè)處理環(huán)400具有三個(gè)處理級(jí),但是其他實(shí)施例可以具有更多或更少。另外,數(shù)據(jù)代理208可以提供在處理中使用的任何數(shù)量的不同信息304。接下來(lái)參見(jiàn)圖5,圖5是詳細(xì)描述⑶N 110的部分的框圖的實(shí)施例。⑶N 110的 這個(gè)實(shí)施例示出兩個(gè)POP 120,但是通常有在因特網(wǎng)104上分布的更多的POP 120,以增加P0P120(在網(wǎng)絡(luò)意義上)接近終端使用者系統(tǒng)102、外部處理用戶212A或外部數(shù)據(jù)代理208A的可能。每一個(gè)P0P120可以使用因特網(wǎng)104和WAN 114之間POP 120傳送請(qǐng)求、內(nèi)容對(duì)象、狀態(tài)信息、收集的信息304、內(nèi)容流308等。在這個(gè)實(shí)施例中,WAN 114使用私有的主干線來(lái)將POP 120耦合在一起,但是在其他實(shí)施例中,WAN114可以包括公共網(wǎng)絡(luò)。每一個(gè)POP 120包括服務(wù)于來(lái)自終端使用者系統(tǒng)102的請(qǐng)求的多個(gè)邊緣服務(wù)器530。通過(guò)任播路由方案,對(duì)于內(nèi)容的請(qǐng)求找到有可能在網(wǎng)絡(luò)意義上接近請(qǐng)求者的⑶N 110的POP 120。這經(jīng)常是良好地適合于提供內(nèi)容對(duì)象的POP 120,但是在一些情況下另一個(gè)POP因?yàn)槟撤N原因而更好地適合。例如,因特網(wǎng)服務(wù)提供商(ISP)可以使用在地理上遠(yuǎn)離終端使用者系統(tǒng)102的位置的代理,這使得當(dāng)使用任播解析來(lái)尋找近處POP 120時(shí),對(duì)于內(nèi)容的請(qǐng)求找到接近代理的POP 120,而不是接近終端使用者系統(tǒng)102的POP 120。邊緣服務(wù)器530供應(yīng)內(nèi)容對(duì)象、接收生成的信息304并且中繼內(nèi)容流308。在這個(gè)實(shí)施例中,可以在邊緣服務(wù)器530內(nèi)實(shí)現(xiàn)數(shù)據(jù)輸入適配器230和數(shù)據(jù)輸出適配器242功能。通常以未濾波的形式從WAN 114可獲得消息隊(duì)列226。在這個(gè)實(shí)施例中,被預(yù)訂的那些單獨(dú)的內(nèi)容流308被邊緣服務(wù)器530提供到外部處理用戶212A。在實(shí)用的情況下,預(yù)訂給定的內(nèi)容流308的處理用戶212可以被分組到單個(gè)邊緣服務(wù)器530。在這個(gè)實(shí)施例中,交換結(jié)構(gòu)540接收對(duì)于內(nèi)容對(duì)象的請(qǐng)求,并且分配通常位于原始接收該請(qǐng)求的POP 120中的邊緣服務(wù)器530,但是不必然如此。交換結(jié)構(gòu)540可以或者向在另一個(gè)POP 120中的邊緣服務(wù)器530分配請(qǐng)求。在交換結(jié)構(gòu)540內(nèi)的表格指示用于特定IP地址、AS號(hào)碼和/或IP地址范圍的喜好POP 120。當(dāng)沒(méi)有指示的喜好的POP或原始接收該請(qǐng)求的喜好的POP時(shí),假定任播正確地作為,并且接收請(qǐng)求的POP 120將該請(qǐng)求路由到邊緣服務(wù)器530以完成。內(nèi)部數(shù)據(jù)代理208B監(jiān)控進(jìn)入的對(duì)于內(nèi)容的請(qǐng)求,并且記錄任播如何解析。其他實(shí)施例可以使用其他方式來(lái)向POP 120解析,諸如單級(jí)DNS、雙級(jí)DNS、請(qǐng)求重新定向等。內(nèi)部數(shù)據(jù)代理208B記錄請(qǐng)求者的IP地址、解析技術(shù)和請(qǐng)求的時(shí)間以向消息隊(duì)列226報(bào)告那個(gè)收集的信息308。雖然未示出,但是外部數(shù)據(jù)代理208A可以觀察任播如何對(duì)于來(lái)自不同IP地址的請(qǐng)求解析,并且向消息隊(duì)列226報(bào)告收集的信息304。收集的信息在每一個(gè)記錄中包括請(qǐng)求的IP地址、使用任播找到的POP 120的位置、在請(qǐng)求中使用的協(xié)議、特定請(qǐng)求、接收請(qǐng)求的時(shí)間和延遲、帶寬、分組損失、抖動(dòng)和與傳遞相關(guān)的其他QoS因素。向消息隊(duì)列226的API用于收集記錄。為了確定未原始接收對(duì)于內(nèi)容對(duì)象的請(qǐng)求的POP 120是否更好地適用于供應(yīng)內(nèi)容對(duì)象,存在用于選擇更好的POP 120的多種技術(shù)。第三方位置服務(wù)提供了用于IP地址、AS號(hào)碼和/或IP地址的部分的近似地理位置。當(dāng)IP地址、AS號(hào)碼和/或IP地址組與地理位置相關(guān)時(shí),具有位置服務(wù)的外部數(shù)據(jù)代理208A提供信息304。由于服務(wù)進(jìn)行在位置和IP地址之間的相關(guān),所以外部數(shù)據(jù)代理208A提供收集的信息304。內(nèi)部處理用戶212B與來(lái)自報(bào)告任播解析的、在每一個(gè)POP 120中的內(nèi)部數(shù)據(jù)代理208B的內(nèi)容流一起從位置服務(wù)接收內(nèi)容流308。除了使用在⑶N 110外部的第三方位置服務(wù)之外,來(lái)自傳遞的反饋可以用于確定用于特定IP地址和/或地址范圍的更好POP 120。在每一個(gè)邊緣服務(wù)器530內(nèi)的內(nèi)部數(shù)據(jù) 代理208B (未示出)可以確定用于從POP 120和邊緣服務(wù)器530至特定IP地址的特定傳遞的延遲、帶寬、分組丟失、抖動(dòng)和其他QoS因素??梢詫⒛莻€(gè)收集的信息304封裝到被內(nèi)部處理用戶212B接收的內(nèi)容流308內(nèi)。另外,使用其本身的服務(wù)器或使用另一個(gè)CDN在CDN110外部進(jìn)行傳遞的第三方可以使用通過(guò)消息隊(duì)列226耦合到內(nèi)部處理用戶212B的外部數(shù)據(jù)代理208A來(lái)提供信息。交換結(jié)構(gòu)540可以根據(jù)位置服務(wù)的建議來(lái)路由,并且當(dāng)沒(méi)有建議時(shí),交換結(jié)構(gòu)可以基于來(lái)自內(nèi)容流308的信息將請(qǐng)求路由到提供對(duì)于那個(gè)IP地址或類似IP地址的最佳QoS的POP 120。在這個(gè)實(shí)施例中,內(nèi)部處理用戶212B從一個(gè)或多個(gè)地理位置服務(wù)接收內(nèi)容流308,另外,在一個(gè)或多個(gè)流308中向在每一個(gè)POP 120中的內(nèi)部處理用戶212B發(fā)送來(lái)自在⑶N 110之內(nèi)或之外的單獨(dú)傳遞的收集的信息304。處理規(guī)則516指示如何解釋流308。例如,可以在處理規(guī)則中存在加權(quán)以推崇在⑶N 110內(nèi)收集的傳遞結(jié)果,而不是在⑶N 110之外收集的傳遞結(jié)果。在一個(gè)實(shí)施例中,來(lái)自傳遞或來(lái)自地理位置服務(wù)的結(jié)果可以老化,以有利于因?yàn)樵谝蛱鼐W(wǎng)104上的改變的條件導(dǎo)致的更新結(jié)果。孫·........用于交換結(jié)構(gòu)的路由偏好...........................................................................................................................................
POP內(nèi)容對(duì)象類型喜好的POP
000-063.xxx.xxx.xxx丹傭064-127全部紐約
128-1'71.xx\.\xx.XXX 全部風(fēng)凰域
172-256.xxx.xxx.xxx 金部圣何塞
128.234.343.xxx高比特率流化芝加哥小文件下載坦佩 VoIP電話呼叫洛杉礬 網(wǎng)買(mǎi)ΛΛΑ
128.234.343.123高Λ特率流化紐轉(zhuǎn)
賴##
VoIP電話呼叫丹佛
剩余圣何塞
129.xxx.ixx.ixx高比特率流化坦佩
小文件下載坦佩
大文件下載丹佛 剩余芝加哥
130J01.xxx.xxx低I*特率流化洛杉風(fēng) 小文件下載圣何塞
游戲洛杉磯
賨圣何塞對(duì)不同類型的內(nèi)容對(duì)象,不同的度量可能對(duì)于確定喜好的POP更重要。例如,流視頻通常相對(duì)于延遲喜好較高帶寬。當(dāng)交換結(jié)構(gòu)540接收對(duì)于流視頻的請(qǐng)求時(shí),交換結(jié)構(gòu)540可以喜好一個(gè)POP 120,但是可以對(duì)于對(duì)小內(nèi)容文件下載或內(nèi)容流308的請(qǐng)求偏好不同的POP 120。上面的表格示出在可以在POP 120之間選擇邊緣服務(wù)器530中使用的交換結(jié)構(gòu)540中的路由偏好的一些的示例。應(yīng)當(dāng)明白,在路由偏好的典型實(shí)施例中有更多的表格條目。在一些情況下,存在各種大小的范圍和甚至對(duì)于使用交換結(jié)構(gòu)540的特殊處理指定的特定地址。
當(dāng)存在用于特定IP地址的多個(gè)條目時(shí),在較寬的范圍上喜好最特定的范圍。例如,來(lái)自IP地址128. 234. 343. 123的請(qǐng)求具有用于那個(gè)特定地址的條目和用于128-171.XXX. XXX. XXX和128. 234. 343. xxx范圍的條目。在該情況下,將使用128. 234. 343. 123條目來(lái)取代用于任何范圍的條目,因?yàn)镮P地址更具體。然而,如果請(qǐng)求是用于小文件下載,則將使用用于128. 234. 343. xxx范圍的條目,因?yàn)?28. 234. 343. 123條目沒(méi)有用于小文件下載的路由偏好,使得傳遞將來(lái)自坦佩Ρ0Ρ,而與哪個(gè)POP 120使用任播原始接收該請(qǐng)求無(wú)關(guān)。當(dāng)接收到內(nèi)容流308時(shí),內(nèi)容流308被處理和應(yīng)用到用于與對(duì)于特定地址收集的信息對(duì)應(yīng)的所有條目的路由偏好,使得該表格實(shí)時(shí)或近乎實(shí)時(shí)地改變。這個(gè)實(shí)施例示出在每一個(gè)POP 120中的內(nèi)部處理用戶212B,該內(nèi)部處理用戶212B本地處理內(nèi)容流308,以對(duì)于任播不向喜好的POP 120解析請(qǐng)求的那些時(shí)間調(diào)整交換結(jié)構(gòu)540。其他實(shí)施例可以以不同的方式調(diào)整交換結(jié)構(gòu)540如何解析請(qǐng)求??梢杂性诿恳粋€(gè)POP120中沒(méi)有用于編程交換結(jié)構(gòu)540的內(nèi)部處理用戶212B的實(shí)施例。在⑶N 110中的一個(gè)位置具有內(nèi)部處理用戶212B,該內(nèi)部處理用戶212B也包括內(nèi)部數(shù)據(jù)代理208B (未示出),該內(nèi)部數(shù)據(jù)代理208B向未本地處理規(guī)則以影響交換邏輯540的那些POP 120發(fā)送信息304。
在每一個(gè)POP 120中的內(nèi)部處理用戶212B可以根據(jù)向內(nèi)容流308施加的處理規(guī)貝IJ 516來(lái)產(chǎn)生優(yōu)選的POP 120的表格。用于請(qǐng)求的各個(gè)IP地址的優(yōu)選的POP 120的表格被交換結(jié)構(gòu)540路由到優(yōu)選的POP 120,以有效地推翻請(qǐng)求的任播分布。有時(shí),地理位置服務(wù)和任播路由可能找不到具有足夠的QoS、更好的QoS或最好的QoS的POP 120。當(dāng)QoS在一個(gè)或多個(gè)度量中落在閾值之下,并且任播和地理位置服務(wù)未尋找大于閾值的足夠解時(shí),可以使用另一種算法來(lái)找到更好的POP 120以執(zhí)行對(duì)于IP地址或IP地址范圍的傳遞。交換結(jié)構(gòu)540可以以任意的、不可預(yù)測(cè)的或循環(huán)的方式將這個(gè)算法分配到POP 120。一個(gè)實(shí)施例可以分配下一個(gè)最近的P0P120。在使用以這些方式的任何一種選擇的POP 120的傳遞后,如何執(zhí)行傳遞的結(jié)果使用適當(dāng)?shù)膬?nèi)容流308被報(bào)告回內(nèi)部處理用戶212B。如果傳遞具有較高的QoS,則POP 120將變?yōu)橛糜陬愃普?qǐng)求的新選擇。在一些情況下,可以使用內(nèi)容對(duì)象的實(shí)際傳遞或測(cè)試傳遞來(lái)測(cè)試多個(gè)不同的POP 120。可以周期地進(jìn)行對(duì)于更好的POP 120分配的探測(cè),即使當(dāng)因特網(wǎng)104的性能隨著時(shí)間改變時(shí),QoS未落在閾值之下。來(lái)自具有在歷史上不可預(yù)測(cè)的QoS的IP地址的請(qǐng)求可以更經(jīng)常地被作為目標(biāo)以探測(cè)更好的POP 120。參考圖6,示出用于數(shù)據(jù)處理系統(tǒng)200的操作的處理600的一個(gè)實(shí)施例。所描述的該處理的部分在塊604開(kāi)始,其中,開(kāi)發(fā)者使用CC接口 238來(lái)管理在數(shù)據(jù)代理208和消息隊(duì)列226之間的交互。開(kāi)發(fā)者向CC接口 238內(nèi)輸入API設(shè)計(jì),其中,沒(méi)有數(shù)據(jù)代理108的一個(gè)預(yù)定義的地址、用于任何外部數(shù)據(jù)代理208A的認(rèn)證和授權(quán)信息等。該API設(shè)計(jì)指定變量的類型、如何格式化它們和其他信息,以描述在向消息隊(duì)列226的數(shù)據(jù)饋送中的收集的信息304。該API設(shè)計(jì)也定義了當(dāng)收集的信息304作為內(nèi)容流308被從消息隊(duì)列226發(fā)送時(shí)如何描繪收集的信息304。內(nèi)容流308具有由API設(shè)計(jì)限定的記錄或采樣.在塊608中,開(kāi)發(fā)者選擇在消息隊(duì)列226中的可用內(nèi)容流308以由特定的處理用戶212使用。所選擇的給定的內(nèi)容流308可以僅具有來(lái)自在塊604中預(yù)先配置的數(shù)據(jù)代理208的記錄,或者可以包括來(lái)自其他數(shù)據(jù)代理208的第三方的記錄。在內(nèi)容流308中的每一個(gè)記錄可以被串行化或包括數(shù)據(jù)代理地址來(lái)作為用于區(qū)分記錄的機(jī)制。另外,開(kāi)發(fā)者可與數(shù)據(jù)處理系統(tǒng)200交互以向CC接口 238內(nèi)輸入API信息、處理用戶212的地址、認(rèn)證和/或授權(quán)信息等,以配置特定的處理用戶212來(lái)與⑶N 110的消息隊(duì)列226交互。對(duì)于在隊(duì)列預(yù)訂信息數(shù)據(jù)庫(kù)222中的每一個(gè)處理用戶212記錄所有的隊(duì)列預(yù)訂信息。用于消息隊(duì)列226的輸入的收集的信息304和輸出的內(nèi)容流308在這一點(diǎn)被開(kāi)發(fā)者配置。開(kāi)發(fā)者也配置用于處理用戶212的處理規(guī)則216,以當(dāng)操作來(lái)自消息隊(duì)列226的它的內(nèi)容流308時(shí)使用。處理規(guī)則216可以或可以不被存儲(chǔ)在⑶N 110內(nèi)。開(kāi)發(fā)者當(dāng)設(shè)計(jì)規(guī)則以提供來(lái)自先前的內(nèi)容流308的測(cè)試結(jié)果時(shí)可能發(fā)現(xiàn)相對(duì)于歷史數(shù)據(jù)存儲(chǔ)區(qū)234查看規(guī)則操作是有益的。可以在塊604和608中定義數(shù)據(jù)代理208和處理用戶212的許多級(jí)別,以限定處理環(huán)。參考?jí)K612,當(dāng)數(shù)據(jù)代理208報(bào)告收集的信息304時(shí),開(kāi)發(fā)者的數(shù)據(jù)處理系統(tǒng)的操作開(kāi)始。數(shù)據(jù)處理系統(tǒng)200可以具有在CDN 110內(nèi)部或外部的任何數(shù)量的數(shù)據(jù)代理208。外部數(shù)據(jù)代理208A通常使用如上所述的數(shù)據(jù)輸入適配器230。外部處理用戶212A通常使用數(shù)據(jù)輸出適配器242??梢允褂肅C接口 238來(lái)執(zhí)行外部數(shù)據(jù)代理208A或外部處理用戶212A的任何配置。 當(dāng)如在塊628中確定數(shù)據(jù)代理208是外部數(shù)據(jù)代理208A時(shí),在塊616中,數(shù)據(jù)適配器230查看、重新格式化收集的信息304和/或?qū)τ谑占男畔?04執(zhí)行其他處理。該查看可以例如包括認(rèn)證和/或授權(quán)或關(guān)于格式化、數(shù)據(jù)類型、有效數(shù)據(jù)范圍等的查看。在塊628中確定的內(nèi)部數(shù)據(jù)代理208B可以可選地跳過(guò)塊616,直接地到達(dá)塊620。在數(shù)據(jù)在⑶N110內(nèi)可獲得并且可選地被數(shù)據(jù)適配器230查看后,在塊620收集的信息304被注入消息隊(duì)列226內(nèi)。在塊624,消息隊(duì)列226分發(fā)收集的信息,該收集的信息包括被通稱為內(nèi)容流308的、在特定類別中的一系列消息、分組、采樣或記錄。因?yàn)槭占男畔?04經(jīng)常被數(shù)據(jù)代理208實(shí)時(shí)地產(chǎn)生并且無(wú)延遲地被報(bào)告到消息隊(duì)列226,所以實(shí)時(shí)地或近乎實(shí)時(shí)地迅速使得可獲得收集的信息304,例如,數(shù)據(jù)當(dāng)它進(jìn)入消息隊(duì)列226時(shí)可以小于1、2、5、10或20秒舊。在塊624,根據(jù)預(yù)訂信息212,以組播和/或單播方式將內(nèi)容流308分布到在⑶N110內(nèi)的各個(gè)處理用戶212或在因特網(wǎng)上的任何位置。通常,組播用于在⑶N 110內(nèi)或具有支持組播的網(wǎng)絡(luò)的處理用戶212,并且并行單播流用于沒(méi)有用于組播的網(wǎng)絡(luò)支持的外部處理用戶212B。每一個(gè)處理用戶212可以僅在塊628中讀取它預(yù)訂的內(nèi)容流308。使用例如加密的認(rèn)證和/或授權(quán)可以用于保護(hù)流308或子流以免暴露到非用戶。在塊632,根據(jù)處理規(guī)則216,每一個(gè)處理用戶212作用于來(lái)自消息隊(duì)列226的其一個(gè)或多個(gè)內(nèi)容流308。在塊636,處理用戶212可以通過(guò)下述方式可選地將處理的信息304返回到消息隊(duì)列226中也作為數(shù)據(jù)代理208,而不像不包括作為數(shù)據(jù)代理208的能力的收聽(tīng)用戶那樣。雖然不要求,但是處理用戶212通常至少部分地基于從內(nèi)容流308收集的信息304來(lái)在塊640中執(zhí)行操作或行為。在各個(gè)實(shí)施例中,可以執(zhí)行任何類型的行為,諸如訂貨、許可訪問(wèn)、向客戶供應(yīng)、關(guān)閉系統(tǒng)、不同的路由流量、選擇或再利用資源等。接下來(lái)參見(jiàn)圖7,示出處理700的實(shí)施例,該處理配置內(nèi)部處理用戶212B以有助于將對(duì)于內(nèi)容的請(qǐng)求改善地路由到服務(wù)于那個(gè)請(qǐng)求的邊緣服務(wù)器530。當(dāng)說(shuō)明處理700時(shí),結(jié)合在圖5中所示的實(shí)施例來(lái)使用改善任播路由的示例。所描述的處理700的部分在塊704開(kāi)始,其中,內(nèi)容流308被選擇來(lái)被提供到每一個(gè)POP 120的內(nèi)部處理用戶212B。具有傳遞度量和位置估計(jì)的內(nèi)容流308被選擇來(lái)從消息隊(duì)列226傳遞到內(nèi)部處理用戶212B。例如,來(lái)自下述來(lái)源的收集的信息可以被從消息隊(duì)列226傳送到內(nèi)部處理用戶212B : (I)基于IP地址提供位置的估計(jì)的地理位置服務(wù),和/或(2)關(guān)于兩個(gè)IP地址之間的內(nèi)容傳遞的收集的內(nèi)部/外部信息。在這個(gè)示例中,每一個(gè)POP 120包括收集關(guān)于每一個(gè)內(nèi)容傳遞的信息304的內(nèi)部數(shù)據(jù)代理208B。雖然與內(nèi)部處理用戶212B分離地示出,內(nèi)部數(shù)據(jù)代理208B可以集成到內(nèi)部處理用戶212B。內(nèi)部數(shù)據(jù)代理208B被配置來(lái)向消息隊(duì)列226報(bào)告內(nèi)容傳遞結(jié)果信息304。這個(gè)實(shí)施例可以使用從在⑶N 110外部的傳遞收集的收集的信息304,但是這當(dāng)可以僅從由每一個(gè)POP 120提供的內(nèi)部收集的信息304改善任播路由時(shí)是不必要的。在塊708中,設(shè)計(jì)處理規(guī)則516。內(nèi)部處理用戶212B使用處理規(guī)則516來(lái)將預(yù)訂的內(nèi)容流308分析、處理、重新格式化等。例如,報(bào)告在兩個(gè)IP地址之間的外部傳遞結(jié)果的 內(nèi)容流308可以具有處理規(guī)則,該處理規(guī)則通過(guò)推斷源IP地址接近POP的IP地址來(lái)將源IP地址與最類似地定位的POP 120匹配,并且如果沒(méi)有被認(rèn)為更可靠的任何內(nèi)部收集的傳遞結(jié)果,則那些傳遞結(jié)果可以被那個(gè)POP 120使用。例如,特定傳遞的源的IP地址可以被確定為對(duì)應(yīng)于位于丹佛的POP 120,并且可以假定該傳遞結(jié)果類似于來(lái)自CDN 110的丹佛POP 120的傳遞結(jié)果。如果來(lái)自丹佛源IP地址的傳遞比從⑶N 110的其他POP 120看到者更好,則可以更新路由偏好表以改善當(dāng)?shù)し餚OP 120有可能對(duì)于請(qǐng)求者的IP地址或類似地定位的IP地址的范圍具有較高的QoS時(shí)交換結(jié)構(gòu)540如何向邊緣服務(wù)器530分配下一個(gè)請(qǐng)求。如果鳳凰城POP 120接收到例如指示被傳遞到請(qǐng)求的IP地址的丹佛POP 120更好的請(qǐng)求,則交換結(jié)構(gòu)540將向丹佛POP 120發(fā)送該請(qǐng)求以得到滿足。消息隊(duì)列226向已經(jīng)請(qǐng)求那些內(nèi)容流308的各個(gè)處理用戶212分發(fā)各個(gè)內(nèi)容流308。在塊712中,當(dāng)通過(guò)消息隊(duì)列226報(bào)告信息304時(shí),接收內(nèi)部處理用戶212B已經(jīng)簽約的各個(gè)流308。在這個(gè)示例中,在每一個(gè)POP120中的內(nèi)部處理用戶212B從支持組播協(xié)議的WAN 114接收組播的內(nèi)容流308。當(dāng)信息被內(nèi)部處理用戶212B接收時(shí),處理規(guī)則516被應(yīng)用到流308。當(dāng)在內(nèi)容流308中的信息被處理以提供對(duì)于因特網(wǎng)104在任何時(shí)刻如何傳遞內(nèi)容的實(shí)時(shí)或近乎實(shí)時(shí)的反應(yīng)時(shí),在塊720中更新在交換結(jié)構(gòu)540中的路由偏好表。在塊720后,處理循環(huán)回塊712,以從內(nèi)容流308收集更多的記錄,以在塊712、716和720的循環(huán)中進(jìn)行處理。參考圖8,示出用于建立數(shù)據(jù)代理208并且使用該數(shù)據(jù)代理208來(lái)向消息隊(duì)列226報(bào)告收集的信息304的處理800的實(shí)施例。當(dāng)說(shuō)明處理800時(shí),將與在圖5中所示的實(shí)施例相結(jié)合地使用用于改善任播路由的示例,但是應(yīng)當(dāng)明白,消息隊(duì)列226的一般思想可以用于許多不同的目的。所描述的處理800的部分在塊804開(kāi)始,其中,數(shù)據(jù)代理208被配置來(lái)收集信息。數(shù)據(jù)代理804通常是可以與各種配置的傳感器、數(shù)據(jù)感測(cè)設(shè)備和/或數(shù)據(jù)收集設(shè)備對(duì)接的軟件。在這個(gè)示例中,數(shù)據(jù)代理208測(cè)量與在兩個(gè)IP地址之間傳遞內(nèi)容對(duì)象相關(guān)聯(lián)的各種參數(shù)。也可以已知并且向API報(bào)告作為在收集的信息304中的數(shù)據(jù)記錄的、源IP地址的物理位置并且可能甚至目的地IP地址的位置。除了物理位置之外,可以報(bào)告關(guān)于發(fā)送者和/或接收者的其他人口統(tǒng)計(jì)信息。用于特定傳遞的記錄作為收集的信息304被發(fā)送,并且可以使用邊緣服務(wù)器530和/或來(lái)自終端使用者系統(tǒng)102的信息來(lái)確定該記錄。例如,作為終端使用者系統(tǒng)102的機(jī)頂盒可以向邊緣服務(wù)器530報(bào)告內(nèi)容對(duì)象的傳遞的延遲和數(shù)據(jù)速率。一些實(shí)施例可以測(cè)試在邊緣服務(wù)器530和終端使用者系統(tǒng)102之間的鏈路。數(shù)據(jù)代理208被配置來(lái)根據(jù)⑶N110的API來(lái)重新格式化收集的信息。在塊808,數(shù)據(jù)代理208被集成到⑶N 110內(nèi)。集成可以包括與如上所述的CC接口 238的交互。數(shù)據(jù)代理208可以是專用服務(wù)器或一個(gè)測(cè)試設(shè)備,或者可以是在現(xiàn)有服務(wù)器或測(cè)試設(shè)備上運(yùn)行的軟件。數(shù)據(jù)代理208的集成可以包括提供外部數(shù)據(jù)代理208A當(dāng)向⑶N 110報(bào)告信息時(shí)將使用的授權(quán)和/或認(rèn)證信息。在塊812,在兩個(gè)IP地址之間監(jiān)控傳遞性能。傳遞的監(jiān)控可以在傳遞的任何一端發(fā)生,并且在記錄中被報(bào)告。在塊816,數(shù)據(jù)代理208向消息隊(duì)列226報(bào)告關(guān)于每一個(gè)傳遞的信息304。在塊820,所收集的傳遞信息304被⑶N 110轉(zhuǎn)換為流308來(lái)作為消息隊(duì)列226。一些實(shí)施例可以通過(guò)修改和隱藏IP地址、商業(yè)名稱、標(biāo)識(shí)符或可以跟蹤回提供者的其他信息來(lái)掩蔽收集的信息304的提供者。另外,隱私規(guī)則可以被應(yīng)用到收集的信息以在達(dá)到流308之前審查它。隱私規(guī)則可以允許一些用戶看到某些信息,而其他用戶不能看到那個(gè)信息。在塊824,使用并行單播流、廣播和/或組播將請(qǐng)求內(nèi)容流308的各個(gè)處理用戶212發(fā)送到內(nèi)容流308。對(duì)于在⑶N 110內(nèi)的處理用戶212,在一個(gè)實(shí)施例中,可以在⑶N 110外部使用組播和使用并行單播來(lái)發(fā)送流。在塊824后,處理循環(huán)回塊812,以循環(huán)通過(guò)塊812、816,820和824以報(bào)告作為收集的信息304的記錄以被消息隊(duì)列226分發(fā)為內(nèi)容流308。接下來(lái)參見(jiàn)圖9A,示出用于改善任播路由的處理900-1的實(shí)施例的流程圖。所描述的處理900-1的部分在塊904開(kāi)始,其中,終端使用者系統(tǒng)102請(qǐng)求將域名從域名服務(wù)(DNS)轉(zhuǎn)換為IP地址。在塊908中,DNS執(zhí)行查找以找到用于域的IP地址。IP地址根據(jù)任播路由方案對(duì)應(yīng)于用于⑶N 110的多個(gè)POP 120。一旦已知IP地址,則終端使用者系統(tǒng)102在塊912請(qǐng)求在許多POP 120的IP地址處的內(nèi)容對(duì)象。當(dāng)各個(gè)路由器選擇路由以找到POP 120時(shí),僅一個(gè)POP 120最終接收到內(nèi)容請(qǐng)求。在塊916,從POP請(qǐng)求內(nèi)容。在塊920中,交換結(jié)構(gòu)540確定將請(qǐng)求要路由到的邊緣服務(wù)器530。如果還沒(méi)有推翻任播路由,則邊緣服務(wù)器530在當(dāng)前的POP 120中。加載、邊緣服務(wù)器能力、高速緩存利用、帶寬利用、隨機(jī)或循環(huán)方案可以用于從在特定POP 120中的許多邊緣服務(wù)器選擇特定邊緣服務(wù)器?;趦?nèi)容流的分析,當(dāng)認(rèn)為向終端使用者系統(tǒng)102的IP地址的傳遞可以更好的工作時(shí),可以選擇在另一個(gè)POP 120中的另一個(gè)邊緣服務(wù)器530。在另一個(gè)POP 120中的邊緣服務(wù)器530在那種情況下將被路由該請(qǐng)求。根據(jù)一個(gè)實(shí)施例,另一個(gè)POP 120選擇邊緣服務(wù)器530,但是在這個(gè)實(shí)施例中,當(dāng)前POP 120的交換結(jié)構(gòu)540選擇在另一個(gè)POP 120中的特定邊緣服務(wù)器530。在塊924中,交換結(jié)構(gòu)540將該請(qǐng)求路由到所選擇的邊緣服務(wù)器530。在塊928中,邊緣服務(wù)器滿足對(duì)于內(nèi)容對(duì)象的請(qǐng)求。參考圖9B,示出用于改善任播路由的處理900-2的另一個(gè)實(shí)施例的流程圖。所描述的處理900-2的部分遵循圖9A的實(shí)施例的塊904、908、912和916。在塊916后,交換結(jié)構(gòu)540在塊918中向在當(dāng)前的POP 120中的邊緣服務(wù)器530分配請(qǐng)求。推崇不同的POP120傳遞不同的內(nèi)容對(duì)象。在這個(gè)實(shí)施例中,在塊922中,被推崇傳遞內(nèi)容對(duì)象的邊緣服務(wù)器530被發(fā)現(xiàn)位于⑶N 110內(nèi),而與POP 120無(wú)關(guān)。可以推崇被推崇的邊緣服務(wù)器530,因 為它已經(jīng)存儲(chǔ)了內(nèi)容對(duì)象,被較少地加載資源和/或帶寬,有可能傳遞較高的QoS,在網(wǎng)絡(luò)意義上更接近請(qǐng)求者、具有較好的資源、具有用于支持該請(qǐng)求的專用軟件或具有某種其他因素或特性。如果未推崇邊緣服務(wù)器530傳遞所請(qǐng)求的內(nèi)容,則邊緣服務(wù)器530通過(guò)⑶N查詢以找到另一個(gè)邊緣服務(wù)器530。在這個(gè)實(shí)施例中,當(dāng)邊緣服務(wù)器還沒(méi)有高速緩存或存儲(chǔ)內(nèi)容對(duì)象時(shí),不推崇該邊緣服務(wù)器。每個(gè)邊緣服務(wù)器530可以具有如下的表格該表格用于指定父服務(wù)器以查詢來(lái)找到已經(jīng)高速緩存或存儲(chǔ)內(nèi)容對(duì)象的推崇的邊緣服務(wù)器530。該表格可以具有用于內(nèi)容對(duì)象或內(nèi)容對(duì)象組的不同的父服務(wù)器。那個(gè)父服務(wù)器可以向另一個(gè)父服務(wù)器查詢是否未存儲(chǔ)或高速緩存內(nèi)容對(duì)象。這個(gè)處理可以持續(xù),直到甚至源服務(wù)器被確定為存儲(chǔ)了內(nèi)容對(duì)象的在鏈中的唯一服務(wù)器。一旦找到內(nèi)容對(duì)象的源,則該源通過(guò)祖先的鏈被中繼回初始被分配請(qǐng)求的原始邊緣服務(wù)器530。在塊926中,原始邊緣服務(wù)器530向終端使用者系統(tǒng)102返回重新定向。該重新定向使得終端使用者系統(tǒng)102從內(nèi)容源請(qǐng)求內(nèi)容對(duì)象。在塊930中,內(nèi)容源滿足對(duì)于內(nèi)容對(duì)象的請(qǐng)求。以這種方式,終端使用者系統(tǒng)102可以被引導(dǎo)到另一個(gè)POP、主服務(wù)器或、甚至源服務(wù)器。也可以使用所公開(kāi)的實(shí)施例的多種改變和修改。例如,CDN可以操作作為在因特網(wǎng)上的服務(wù)的消息隊(duì)列進(jìn)入和退出。實(shí)體或企業(yè)的任何集合可以使用CDN來(lái)以集體的方式共享信息,這將受益于特定的信息,即使它來(lái)自競(jìng)爭(zhēng)者。在消息隊(duì)列上存在的流的不同類別和類型的數(shù)量增加的情況下,當(dāng)進(jìn)行決定時(shí)可以考慮更多的不同類型的信息。一些實(shí)施例使用處理規(guī)則來(lái)不同地加權(quán)在流中的不同源。路由例如可以具有加權(quán)算法,以相對(duì)于來(lái)自收集的信息的另一個(gè)源的結(jié)果推崇內(nèi)部收集的結(jié)果。在上面的說(shuō)明中給出了具體細(xì)節(jié),以提供實(shí)施例的徹底的理解。然而,可以明白,可以在沒(méi)有這些具體細(xì)節(jié)的情況下實(shí)施實(shí)施例。例如,可以以框圖示出電路,以便不以不必要的細(xì)節(jié)混淆實(shí)施例。在其他情況下,可以沒(méi)有不必要的細(xì)節(jié)地示出公知電路、處理、算法、結(jié)構(gòu)和技術(shù),以便避免混淆實(shí)施例。此外,注意,實(shí)施例可以被描述為作為流程圖、流程圖表、數(shù)據(jù)流圖、結(jié)構(gòu)圖或框圖描述的處理。雖然流程圖可以將操作描述為順序處理,但是可以并行地或同時(shí)地許多操作。另外,可以重新布置操作的順序。當(dāng)完成處理的操作時(shí)結(jié)束該處理,并且該處理可以具有未在附圖中包括的另外的步驟。處理可以對(duì)應(yīng)于方法、功能、過(guò)程、子例程、子程序等。當(dāng)處理對(duì)應(yīng)于功能時(shí),其結(jié)束對(duì)應(yīng)于該功能向調(diào)用功能或主功能的返回。此外,可以通過(guò)硬件、軟件、腳本語(yǔ)言、固件、中件、微碼、硬件描述語(yǔ)言和/或其任何組合來(lái)實(shí)現(xiàn)實(shí)施例。當(dāng)以軟件、固件、中件、腳本語(yǔ)言和/或微碼來(lái)實(shí)現(xiàn)時(shí),可以在諸如存儲(chǔ)介質(zhì)的機(jī)器可讀介質(zhì)中存儲(chǔ)用于執(zhí)行必要任務(wù)的程序代碼或代碼段。代碼段或機(jī)器可執(zhí)行指令可以表示過(guò)程、功能、子程序、程序、例程、子例程、模塊、軟件包、腳本、類或指令、數(shù)據(jù)結(jié)構(gòu)和/或程序語(yǔ)句的任何組合。代碼段可以通過(guò)傳送和/或接收信息、數(shù)據(jù)、自變量、參數(shù)和/或存儲(chǔ)器內(nèi)容而耦合到另一個(gè)代碼段或硬件電路??梢越?jīng)由包括存儲(chǔ)器共享、消息傳送、令牌傳送、網(wǎng)絡(luò)傳輸?shù)鹊娜魏芜m當(dāng)手段來(lái)傳送、轉(zhuǎn)發(fā)或發(fā)送信息、自變量、參數(shù)、數(shù)據(jù)等。雖然已經(jīng)結(jié)合特定設(shè)備和方法如上描述了本公開(kāi)的原理,但是應(yīng)當(dāng)清楚地明白,僅通過(guò)示例而不是作為對(duì)于本公開(kāi)的范圍的限制地進(jìn)行本說(shuō)明。
權(quán)利要求
1.一種內(nèi)容傳遞網(wǎng)絡(luò)(CDN),用于信息的及時(shí)交換以用于所述信息的分布式處理,所述⑶N包括 第一接口,其耦合到第一數(shù)據(jù)代理,所述第一數(shù)據(jù)代理向所述第一接口提供第一數(shù)據(jù); 第二接口,其耦合到第二數(shù)據(jù)代理,所述第二數(shù)據(jù)代理向所述第二接口提供第二數(shù)據(jù); 在所述CDN內(nèi)的消息隊(duì)列,所述消息隊(duì)列產(chǎn)生根據(jù)所述第一數(shù)據(jù)和所述第二數(shù)據(jù)的流,其中所述消息隊(duì)列耦合到所述第一接口和所述第二接口 ; 第三接口,其耦合到所述消息隊(duì)列和接收所述流的第一處理用戶,其中在所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)被所述第一數(shù)據(jù)代理和/或第二數(shù)據(jù)代理收集后,所述第一處理用戶在不到10秒內(nèi)在所述流中接收所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù);以及 第四接口,其耦合到所述消息隊(duì)列和接收所述流的第二處理用戶,其中在所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)被所述第一數(shù)據(jù)代理和/或第二數(shù)據(jù)代理收集后,所述第一處理用戶在不到10秒內(nèi)在所述流中接收所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)。
2.根據(jù)權(quán)利要求I所述的用于信息的及時(shí)交換以用于所述信息的分布式處理的CDN,進(jìn)一步包括在所述第一接口和所述消息隊(duì)列之間耦合的輸入適配器,其中,所述輸入適配器查看和/或重新格式化所述第一數(shù)據(jù)。
3.根據(jù)權(quán)利要求I所述的用于信息的及時(shí)交換以用于所述信息的分布式處理的CDN,其中,處理所述第一數(shù)據(jù)以在所述第一數(shù)據(jù)到達(dá)所述流之前隱藏信息。
4.根據(jù)權(quán)利要求I所述的用于信息的及時(shí)交換以用于所述信息的分布式處理的CDN,其中,所述第一數(shù)據(jù)代理和/或所述第二數(shù)據(jù)代理的至少一個(gè) 在所述⑶N之外,并且 在不在所述CDN的控制下的域內(nèi)。
5.根據(jù)權(quán)利要求I所述的用于信息的及時(shí)交換以用于所述信息的分布式處理的CDN,其中,所述第一處理用戶和所述第二處理用戶的至少一個(gè) 在所述⑶N之外,并且 在不在所述CDN的控制下的域內(nèi)。
6.根據(jù)權(quán)利要求I所述的用于信息的及時(shí)交換以用于所述信息的分布式處理的CDN,進(jìn) 一步包括歷史數(shù)據(jù)存儲(chǔ)區(qū),所述歷史數(shù)據(jù)存儲(chǔ)區(qū)存儲(chǔ)所述消息隊(duì)列的至少一部分,并且允許查詢所述至少一部分。
7.根據(jù)權(quán)利要求I所述的用于信息的及時(shí)交換以用于所述信息的分布式處理的CDN,進(jìn)一步包括處理規(guī)則,其中所述處理規(guī)則指令所述第一處理用戶如何處理所述流。
8.根據(jù)權(quán)利要求I所述的用于信息的及時(shí)交換以用于所述信息的分布式處理的CDN,其中所述第一至第四接口的至少兩個(gè)使用同一通信媒體。
9.根據(jù)權(quán)利要求I所述的用于信息的及時(shí)交換以用于所述信息的分布式處理的CDN,其中所述消息隊(duì)列從所述第一處理用戶接收根據(jù)所述流的第三數(shù)據(jù)。
10.一種用于使用CDN來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法,所述方法包括 從耦合到第一數(shù)據(jù)代理的第一接口接收第一數(shù)據(jù);從耦合到第二數(shù)據(jù)代理的第二接口接收第二數(shù)據(jù); 處理所述第一數(shù)據(jù)和第二數(shù)據(jù); 使用所述CDN的消息隊(duì)列來(lái)形成根據(jù)所述第一數(shù)據(jù)和所述第二數(shù)據(jù)的流,其中所述消息隊(duì)列耦合到所述第一接口和所述第二接口; 將所述流發(fā)送到第三接口,所述第三接口耦合到第一處理用戶以接收所述流,其中在所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)被所述第一數(shù)據(jù)代理和/或第二數(shù)據(jù)代理收集后,所述第一處理用戶在不到10秒內(nèi)在所述流中接收所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)。
11.根據(jù)權(quán)利要求10所述的用于使用CDN來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法,其中 所述第一接口至第一存在點(diǎn)(POP), 所述第二接口至第二 POP,并且 所述第一 POP在地理上遠(yuǎn)離所述第二 POP。
12.根據(jù)權(quán)利要求10所述的用于使用CDN來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法,進(jìn)一步包括使用所述第一處理用戶來(lái)處理所述流。
13.根據(jù)權(quán)利要求10所述的用于使用CDN來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法,進(jìn)一步包括向第四接口發(fā)送所述流,所述第四接口耦合到第二處理用戶以接收所述流,其中在所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)被所述第一數(shù)據(jù)代理和/或第二數(shù)據(jù)代理收集后,所述第一處理用戶在不到10秒內(nèi)在所述流中接收所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)。
14.根據(jù)權(quán)利要求10所述的用于使用CDN來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法,進(jìn)一步包括基于所述流使用所述第一處理用戶執(zhí)行行為。
15.根據(jù)權(quán)利要求10所述的用于使用CDN來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法,進(jìn)一步包括 使用所述第一處理用戶來(lái)處理所述流;以及 從使用所述第一處理用戶的所述處理產(chǎn)生第三數(shù)據(jù),其中所述第三數(shù)據(jù)耦合到在所述⑶N內(nèi)的所述處理隊(duì)列。
16.根據(jù)權(quán)利要求10所述的用于使用CDN來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法,進(jìn)一步包括從耦合到所述第一處理用戶的第三接口接收第三數(shù)據(jù),其中所述第三數(shù)據(jù)根據(jù)所述流。
17.一種用于使用POP的分布式網(wǎng)絡(luò)來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法,所述方法包括 從第一 POP的第一接口接收第一數(shù)據(jù),其中所述第一接口耦合到第一數(shù)據(jù)代理; 從第二 POP的第二接口接收第二數(shù)據(jù),其中 所述第二接口耦合到第二數(shù)據(jù)代理, 所述POP的分布式網(wǎng)絡(luò)包括所述第一 POP和所述第二 Ρ0Ρ,并且 所述第一 POP在地理上遠(yuǎn)離所述第二 POP ; 處理所述第一數(shù)據(jù)和第二數(shù)據(jù); 使用消息隊(duì)列來(lái)形成流,所述流根據(jù)所述第一數(shù)據(jù)和所述第二數(shù)據(jù),其中所述消息隊(duì)列耦合到所述第一接口和所述第二接口;以及將所述流發(fā)送到第三接口,所述第三接口耦合到處理用戶以接收所述流。
18.根據(jù)權(quán)利要求17所述的用于使用POP的分布式網(wǎng)絡(luò)來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法,其中在所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)被所述第一數(shù)據(jù)代理和/或第二數(shù)據(jù)代理收集后,所述第一處理用戶在不到10秒內(nèi)在所述流中接收所述第一數(shù)據(jù)和/或所述第二數(shù)據(jù)。
19.根據(jù)權(quán)利要求17所述的用于使用POP的分布式網(wǎng)絡(luò)來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息的方法,其中,所述第三接口用于第三Ρ0Ρ,所述第三POP在地理上遠(yuǎn)離所述第一 POP和所述第二 POP的至少一個(gè)。
20.一種機(jī)器可讀介質(zhì),具有機(jī)器可執(zhí)行指令,所述機(jī)器可執(zhí)行指令被配置來(lái)執(zhí)行根據(jù)權(quán)利要求17所述的可機(jī)器實(shí)現(xiàn)的方法,所述可機(jī)器實(shí)現(xiàn)的方法用于使用POP的分布式網(wǎng)絡(luò)來(lái)聚集信息以便以分布式的方式及時(shí)地交換所述信息。
全文摘要
公開(kāi)了用于從耦合到多個(gè)處理用戶的消息隊(duì)列的多個(gè)數(shù)據(jù)代理收集分布式信息的系統(tǒng)和方法。所述數(shù)據(jù)代理向由API限定的接口提供它們的收集的信息。在向所述消息隊(duì)列加上所述收集的信息之前,所述收集的數(shù)據(jù)可以被重新格式化或進(jìn)一步處理。多個(gè)處理用戶收聽(tīng)由所述消息隊(duì)列產(chǎn)生的內(nèi)容流,以接收它們已經(jīng)預(yù)訂的數(shù)據(jù)。一旦所述處理用戶接收到所述內(nèi)容流,則所述處理用戶向所述內(nèi)容流應(yīng)用算法,以執(zhí)行一個(gè)或多個(gè)其他功能。例如,所述處理用戶可以向所述消息隊(duì)列內(nèi)反饋處理的數(shù)據(jù),并且/或者至少部分地基于所述內(nèi)容流來(lái)執(zhí)行行為。在各種程度的處理和聚集下的信息可以在處理環(huán)中通過(guò)任何數(shù)量的循環(huán)傳送,以允許信息的交換中心實(shí)時(shí)或近乎實(shí)時(shí)地流動(dòng)。
文檔編號(hào)H04L12/58GK102714634SQ201080051870
公開(kāi)日2012年10月3日 申請(qǐng)日期2010年10月1日 優(yōu)先權(quán)日2009年10月2日
發(fā)明者內(nèi)森·F·拉奇博爾斯基, 布賴恩·D·布萊克, 懷利·斯旺森, 科林·雷澤, 艾伯特·P·托比, 雅各布·S·羅厄斯馬 申請(qǐng)人:杰出網(wǎng)絡(luò)公司