專利名稱:分布式發(fā)送媒體數(shù)據(jù)的體系結(jié)構(gòu)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及分布式發(fā)送媒體數(shù)據(jù),尤其通過不作為限止的例子,涉及用于分布式發(fā)送媒體數(shù)據(jù)的體系結(jié)構(gòu)。
發(fā)明的背景基于電視的娛樂系統(tǒng)傳統(tǒng)地依賴有線網(wǎng)絡(luò),其中相同的電視節(jié)目向每個客戶播放。換言之,同樣的電視頻道及按電影付費的節(jié)目同時向連接到該有線網(wǎng)絡(luò)的每個客戶播放。
用有線網(wǎng)絡(luò)廣播的方法產(chǎn)生兩個缺點。首先,因為所有節(jié)目內(nèi)容在單一時間廣播,觀看者不能控制觀看一節(jié)目的時間。其次,所有節(jié)目對每個客戶廣播,帶寬限止使得只對電影不可能做到真正的視頻點播(VOD),一般對電視節(jié)目帶寬要小得多。
圖1示出對電視節(jié)目傳播的現(xiàn)有方法101。電視節(jié)目傳播方法101是考慮上述缺點的現(xiàn)有方法。多個電視節(jié)目源103(1),103(2),...103(j)存儲并提供電視節(jié)目。中央收集器和轉(zhuǎn)發(fā)器105確定何時需要通過網(wǎng)絡(luò)交換機經(jīng)網(wǎng)絡(luò)(未示出)將電視節(jié)目發(fā)送給客戶(也未示出)。
對電視節(jié)目的每個請求109(1,2,...j)從中央收集器和轉(zhuǎn)發(fā)器105發(fā)送到對應(yīng)的電視節(jié)目源103(1,2,...j)。作為響應(yīng),每個對應(yīng)的電視節(jié)目源103(1,2,...j)將請求的電視節(jié)目部分作為合成的通訊111(1,2,...j)提供給中央收集器和轉(zhuǎn)發(fā)器105。中央收集器和轉(zhuǎn)發(fā)器105隨后將那些電視節(jié)目部分作為轉(zhuǎn)發(fā)通訊113(1,2,...j)轉(zhuǎn)發(fā)到網(wǎng)絡(luò)交換機107,并從而通過某個網(wǎng)絡(luò)轉(zhuǎn)發(fā)到客戶。
因而每個請求的電視節(jié)目部分通過中央收集器和轉(zhuǎn)發(fā)器105路由,后者在通過網(wǎng)絡(luò)交換機107發(fā)送到客戶之前能成為瓶頸。此外,圖1中示出的電視節(jié)目傳播方法101是有些簡化的。雖然不是那樣明確說明,作為合成通訊111(1,2,...j)的請求的電視節(jié)目部分實際上通過網(wǎng)絡(luò)交換機107從電視節(jié)目源103(1,2,...j)提供給中央收集器及轉(zhuǎn)發(fā)器105。
因而,指定給各個客戶的電視節(jié)目部分兩次穿過網(wǎng)絡(luò)交換機107。電視節(jié)目部分第一次作為合成通訊111(1,2,...j)通過交換機107發(fā)送到中央收集器和轉(zhuǎn)發(fā)器105,并隨后第二次作為轉(zhuǎn)發(fā)通訊113(1,2,...j)從中央收集器和轉(zhuǎn)發(fā)器105發(fā)送。(i)中央收集和匯集和(ii)兩次穿過交換機機提出了附加的限止因素。因此,用電視節(jié)目傳播方法101,仍然出現(xiàn)帶寬和瓶頸問題。
發(fā)明的內(nèi)容媒體數(shù)據(jù)通過多個設(shè)備分布,并形成分散化的媒體數(shù)據(jù)傳播體系結(jié)構(gòu)。多個對應(yīng)的發(fā)送器與媒體數(shù)據(jù)的多個對應(yīng)的分布部分關(guān)聯(lián)。多個調(diào)度器與諸客戶關(guān)聯(lián),并能調(diào)度到那里的媒體數(shù)據(jù)的發(fā)送。調(diào)度器構(gòu)成發(fā)送請求,后者規(guī)定特定的媒體數(shù)據(jù)部分并指定目標(biāo)客戶。這些發(fā)送請求結(jié)合每個發(fā)送請求的規(guī)定的特定媒體數(shù)據(jù)部分,按照相關(guān)的對應(yīng)分布的部分被發(fā)送到多個發(fā)送者。那些發(fā)送器能夠發(fā)送所發(fā)送請求的規(guī)定的特定媒體數(shù)據(jù)部分到指定的目標(biāo)客戶而不必通過調(diào)度器路由。在描述的實施中,發(fā)送器和調(diào)度器出現(xiàn)在多個設(shè)備的每個設(shè)備中。
這里描述其他方法,系統(tǒng),措施,裝置,服務(wù)器,設(shè)備,媒體,過程,安排等實施。
附圖簡述在所有附圖中,相同的序號用于引用類似和/或?qū)?yīng)的方面,特征和組件。
圖1示出電視節(jié)目傳播的現(xiàn)有方法。
圖2是用于媒體數(shù)據(jù)傳播結(jié)構(gòu)的示例性環(huán)境。
圖3示出示例性媒體數(shù)據(jù)傳播的體系結(jié)構(gòu),它包括用于分布式發(fā)送媒體數(shù)據(jù)的設(shè)備。
圖4示出用于分布式發(fā)送媒體數(shù)據(jù)的示例設(shè)備,數(shù)據(jù)在設(shè)備間分成條(Striped)。
圖5示出分布式媒體數(shù)據(jù)傳播的示例方法,它包括由多個設(shè)備使用的消息。
圖6示出對分布式發(fā)送媒體數(shù)據(jù)的優(yōu)先級機制的示例方法的第一方面。
圖7示出對分布式發(fā)送媒體數(shù)據(jù)的優(yōu)先級機制的示例方法的第二方面。
圖8是示出對分布式發(fā)送媒體數(shù)據(jù)的優(yōu)先級機制的示例方法的流程圖。
圖9示出示例的發(fā)送每時隙協(xié)商(Send negotiation Per-time slot),它包括用于分布式發(fā)送媒體數(shù)據(jù)的優(yōu)先級機制。
圖10示出媒體數(shù)據(jù)的示例性邏輯組織。
圖11示出物理上定位包括散列表的媒體數(shù)據(jù)的示例方法。
圖12示出對媒體數(shù)據(jù)的普遍性確定的示例方法。
圖13示出用于定位包括復(fù)制的媒體數(shù)據(jù)的示例散列表。
圖14示出媒體數(shù)據(jù)的支持信息的示例組織。
圖15示出示例媒體數(shù)據(jù)特征,包括朝前看區(qū)域,它表明不同的媒體數(shù)據(jù)處理階段。
圖16是示例順序圖,它包括在調(diào)度器和發(fā)送器之間的朝前看過程。
詳細(xì)描述圖2是用于媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202的示例環(huán)境200。除媒體數(shù)據(jù)體系結(jié)構(gòu)202以外,環(huán)境還包括網(wǎng)絡(luò)204和多個客戶機206(1),206(2),...206(m)。客戶機206能接收和處理媒體數(shù)據(jù)(圖2中未唯一地示出)。客戶機206可任選地能顯示和/或產(chǎn)生要被顯示的媒體數(shù)據(jù)。這種媒體數(shù)據(jù)通常包括聲頻和視頻信息,以及可任選地包括控制信息以便于處理和/或顯示它們。雖然在圖2中只明確地畫出3個客戶機206(1,2,m),客戶機206實際上能是數(shù)萬臺到數(shù)十萬臺(如m能等于10,000到100,000或更多)。
如圖所示,媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202通過一個或多個連接鏈路208耦合到網(wǎng)絡(luò)204??头繖C206通過一個或多個網(wǎng)絡(luò)鏈路210耦合到網(wǎng)絡(luò)204。因而,媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202通過網(wǎng)絡(luò)204耦合到客戶機206并與其通訊。網(wǎng)絡(luò)204能支持單播通訊并在下面描述的某些實施例中可任選地支持多播通訊。
在所描述的實施的操作中,特定的客戶機206請求發(fā)送給它所希望的媒體數(shù)據(jù)資產(chǎn)(asset)。媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202接收該請求并在連接鏈路208,網(wǎng)絡(luò)204和網(wǎng)絡(luò)鏈路210上使用重復(fù)的單播通信,將所請求的媒體數(shù)據(jù)資產(chǎn)發(fā)送給特定客戶機206。媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202適應(yīng)于實施到各客戶機206的分布式媒體數(shù)據(jù)發(fā)送,使得減輕通訊話務(wù)帶寬和/或在其他情況內(nèi)含于媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202的瓶頸。
分布式發(fā)送媒體數(shù)據(jù)的體系結(jié)構(gòu)圖3示出示例的媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202,它包括用于分布式發(fā)送媒體數(shù)據(jù)的設(shè)備302。媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202包括多個設(shè)備302(1),302(2),...302(n)。每個對應(yīng)的設(shè)備302(1,2,...n)包括對應(yīng)的發(fā)送器304(1,2,...n)和對應(yīng)的調(diào)度器306(1,2,...n)。媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202還包括交換機308和媒體數(shù)據(jù)(MD)的海量存儲310。
如圖所示,媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202通過在交換機308的連接鏈路耦合到網(wǎng)絡(luò)204。交換機308通過媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202內(nèi)部的對應(yīng)的鏈路314(1,2,...n)耦合到每個對應(yīng)的設(shè)備302(1,2,...n)。交換機308也耦合到媒體數(shù)據(jù)的海量存儲310。
媒體數(shù)據(jù)的海量存儲310在如磁盤陣列那樣的某些海量存儲設(shè)備中存儲大量媒體數(shù)據(jù)。磁盤陣列能是如唯一磁盤的冗余陣列(RAID),光纖通道存儲系統(tǒng)等。僅作為例子,媒體數(shù)據(jù)的海量存儲310可具有5-6萬億字節(jié)(TB)的存儲容量。然而,媒體數(shù)據(jù)總量的大部分被高速緩存在設(shè)備302,所以媒體數(shù)據(jù)的海量存儲310主要為非預(yù)期和/或不常見的媒體數(shù)據(jù)資產(chǎn)請求提供媒體數(shù)據(jù)并為重新構(gòu)筑失敗的設(shè)備302而被訪問。
在描述的實施例中,媒體數(shù)據(jù)被高速緩存在設(shè)備302(1,2,...n)的隨機存儲器(RAM)(圖3中未具體示出)。僅作為例子,若有500個設(shè)備302(如n=500)每臺機器包括4千兆(GB)RAM,則約有2TB的RAM可用于RAM高速緩存媒體數(shù)據(jù)。每個設(shè)備302(1,2,...n)高速緩存由所有設(shè)備302高速緩存的總的媒體數(shù)據(jù)的一部分。
使用散列方法將不同的媒體數(shù)據(jù)塊分配到不同的設(shè)備302。此散列方法和相關(guān)的媒體數(shù)據(jù)組織在下面名為“用于分布式媒體數(shù)據(jù)的媒體組織”的章節(jié)中進(jìn)一步闡述。此媒體數(shù)據(jù)組織討論在媒體組織段,媒體數(shù)據(jù)段,媒體數(shù)據(jù)資產(chǎn),媒體數(shù)據(jù)塊,和媒體數(shù)據(jù)子塊之間的差別和關(guān)系。
每個對應(yīng)的發(fā)送器304與由其對應(yīng)設(shè)備302高速緩存的媒體數(shù)據(jù)關(guān)聯(lián)。每個發(fā)送器304負(fù)責(zé)存儲分配到那里的媒體數(shù)據(jù)并負(fù)責(zé)以分布方式向客戶機206發(fā)送對應(yīng)于來自于調(diào)度器306中任一調(diào)度器306的請求的媒體數(shù)據(jù)。
每個調(diào)度器與多個客戶機206相關(guān)。對與特定調(diào)度器306關(guān)聯(lián)的每個給定的客戶機206,該特定調(diào)度器306負(fù)責(zé)滿足給客戶機206的媒體數(shù)據(jù)傳播請求。為此,特定調(diào)度器306需知道影響及時傳播媒體數(shù)據(jù)到給定客戶機206的能力的網(wǎng)絡(luò)204中和沿網(wǎng)絡(luò)鏈路210的潛在的阻塞點。因此,當(dāng)調(diào)度器306調(diào)度媒體數(shù)據(jù)從發(fā)送器304發(fā)送到它相關(guān)的客戶機206時,能夠考慮這些阻塞點。與阻塞點相關(guān)的的美國專利申請的題為“Media Stream Scheduling for Hiccup-FreeFast-Channel-Charge in the Presense of Network Chokepoints”,發(fā)明者是Dustin L.Green,2003年10月10日歸檔,美國專利申請?zhí)枮镹o10/683,132。此No10/683,132的美國專利申請與本專利申請有共同的微軟公司的代理人,作為整體加入這里作為參考。
因為媒體數(shù)據(jù)在設(shè)備302之間分成條,請求的調(diào)度器306使媒體數(shù)據(jù)向多個發(fā)送器304發(fā)送請求。在調(diào)度傳遞與特定發(fā)送器304關(guān)聯(lián)的一部分媒體信息塊時,請求的調(diào)度器306使用鏈路314及交換機308發(fā)送一發(fā)送的請求到該特定的發(fā)送器。發(fā)送請求指定目標(biāo)客戶機206并規(guī)定/調(diào)度希望的媒體數(shù)據(jù)塊部分(包括子塊,子塊范圍或其各部分)。
然后特定發(fā)送器304使用鏈路314和交換機308轉(zhuǎn)發(fā)規(guī)定的媒體數(shù)據(jù)子塊到指定的客戶機206,而不必通過請求調(diào)度器306路由媒體數(shù)據(jù)子塊并不必兩次通過交換機308來發(fā)送媒體數(shù)據(jù)子塊。用于請求和發(fā)送媒體數(shù)據(jù)塊的示例消息組在下面進(jìn)一步描述,包括在本章節(jié)內(nèi)參考圖5的描述。
如圖所示,在每個設(shè)備302處包括發(fā)送器304和調(diào)度器306。然而,因為發(fā)送器304和調(diào)度器在邏輯上是分開的,它們在物理上也能是分開的。例如,若干設(shè)備302或每個設(shè)備302可以只包括一個發(fā)送器304或一個調(diào)度器306(但不是包括兩者)。然而,描述的實施在每個設(shè)備302上包括一個發(fā)送器304和一個調(diào)度器306,以便相對有效地使用每個設(shè)備302的處理、存儲器、和鏈路帶寬的資源。
對于每個對應(yīng)的發(fā)送器302(1,2,...n)和調(diào)度器306(1,2,...n)還示出為兩者共享的對應(yīng)接口(1,2,...n)另選地,每個能具有它自己的接口312和到交換機308的鏈路314。僅作為例子,交換機308可使用帶數(shù)百端口的千兆以太網(wǎng)交換機實現(xiàn)。每個這樣的端口對應(yīng)一個鏈路314并提供每個方向1Gb/s的雙向通訊帶寬,它被發(fā)送器304和調(diào)度器306共享,用于兩個協(xié)調(diào)以及與媒體數(shù)據(jù)相關(guān)的通訊。
另選地,調(diào)度器306(以及發(fā)送器304)可采用帶分開的交換機(如100兆以太網(wǎng)交換機)或路由器的分別的內(nèi)部通訊網(wǎng)絡(luò),它們對在調(diào)度器306和發(fā)送器304之間發(fā)送的協(xié)議消息提供分別的通訊信道。在圖4中示出對調(diào)度器306和發(fā)送器304的示例的分別鏈接314,它們可對應(yīng)于分別的接口312和/或?qū)γ襟w數(shù)據(jù)傳播體系結(jié)構(gòu)202是內(nèi)部的分別的通訊網(wǎng)絡(luò)。
圖4示出用于分布式發(fā)送媒體數(shù)據(jù)406的示例設(shè)備302。媒體數(shù)據(jù)在設(shè)備302之間分成條。設(shè)備301(1)包括一個或多個處理器402(1)和至少一個存儲器404(1)。雖然未能唯一示出,存儲器404(1)包括處理器可執(zhí)行指令,它們由處理器402(1)執(zhí)行以完成下面進(jìn)一步描述的功能。存儲器404(1)能作為不同類型,特征和功能的存儲器的組合實現(xiàn)。然而,存儲器404與媒體數(shù)據(jù)的海量存儲310比較通常是相對低等待延時的具有相當(dāng)大數(shù)據(jù)的吞吐量的存儲器,海量存儲310是具有相對小的吞吐量的相對高等待延時的存儲器。
在描述的實施中,這些處理器可執(zhí)行指令可包括硬件,固件,軟件和它們的某些組合等。存儲在存儲器404(1)的一部分中具有處理器可執(zhí)行指令的模塊包括發(fā)送器304(1),調(diào)度器306(1),和媒體數(shù)據(jù)(MD)406(1)。媒體數(shù)據(jù)406(1)包括處理器可執(zhí)行指令的數(shù)據(jù)結(jié)構(gòu)類型模塊。在所述的實施中,媒體數(shù)據(jù)存儲在RAM中。這些模塊的每一個在下面作進(jìn)一步描述。
發(fā)送器304(1)使用鏈路314(1)-MD耦合到交換機308用于媒體數(shù)據(jù)通訊,而調(diào)度器306(1)使用鏈路314(1)-P用于協(xié)議通訊。因此,調(diào)度器306(1)經(jīng)鏈路(1)-P發(fā)送和接收與協(xié)議有關(guān)的消息。發(fā)送器304(1)經(jīng)過鏈路314(1)-MD從設(shè)備302(1)發(fā)送媒體數(shù)據(jù)406(1)。如由可任選的鏈路314(1)-P*表示的鏈路304(1)-P可作為具有分別的交換機的分別的網(wǎng)絡(luò)實現(xiàn),交換機專用于在發(fā)送器304和調(diào)度器306之間的協(xié)議通訊。若對發(fā)送器304(1)不存在其他唯一的鏈路314(1)(如鏈路314(1)-P*),發(fā)送器304(1)也能通過鏈路314(1)-MD發(fā)送和接收與協(xié)議相關(guān)的消息。
媒體數(shù)據(jù)406(1)包括用于媒體數(shù)據(jù)408X的媒體數(shù)據(jù)塊和用于媒體數(shù)據(jù)408Y的媒體數(shù)據(jù)塊。具體說來,媒體數(shù)據(jù)406(1)包括媒體數(shù)據(jù)塊408(X)和媒體數(shù)據(jù)塊408(Y)。因此發(fā)送器304(1)適應(yīng)于存儲媒體數(shù)據(jù)塊408(X)和408(Y),并能響應(yīng)從調(diào)度器306收到的請求將它們發(fā)送到客戶機206。
設(shè)備302(2)包括到那些設(shè)備302(1)的模擬組件。這些組件包括一個或多個處理器402(2)和至少一個存儲器404(2),它包括發(fā)送器304(2),調(diào)度器306(2),和媒體數(shù)據(jù)406(2)。然而,與作為媒體數(shù)據(jù)的部分存儲在設(shè)備302(1)的那些媒體數(shù)據(jù)塊[即媒體數(shù)據(jù)塊408(X)和408(Y)]比較,媒體數(shù)據(jù)406(2)包括對媒體數(shù)據(jù)408X和408Y不同的媒體數(shù)據(jù)塊。
如圖所示,發(fā)送器304(2)作為媒體數(shù)據(jù)406(2)的部分存儲媒體數(shù)據(jù)塊408(X+1)和媒體數(shù)據(jù)塊408(Y+1)。沿著媒體數(shù)據(jù)流408X,媒體數(shù)據(jù)塊408(X+1)在媒體數(shù)據(jù)塊408(X)之后。沿著媒體數(shù)據(jù)流408Y,媒體數(shù)據(jù)塊408(Y+1)在媒體數(shù)據(jù)塊408(Y)之后。因此,當(dāng)媒體數(shù)據(jù)408X和媒體數(shù)據(jù)408Y分別穿過設(shè)備302(1)和302(2)的存儲器404(1)和404(2)的RAM部分分成條時,媒體數(shù)據(jù)(不必需是線性的)跨過RAM被分條。在描述的實施中,媒體數(shù)據(jù)在媒體數(shù)據(jù)塊粒度上被分成條。下面參考圖5描述媒體數(shù)據(jù)408X的分布式發(fā)送。
圖4的圖示不試圖給出在順序的媒體數(shù)據(jù)塊和設(shè)備302之間任何必要的順序?qū)?yīng)關(guān)系。換言之,分別存儲媒體數(shù)據(jù)塊X/Y和X+1/Y+1的設(shè)備302(1)和302(2)僅是一例。順序的媒體數(shù)據(jù)塊不必須順序地分成條,且它們實際上如在題為“用于分布式發(fā)送媒體數(shù)據(jù)的媒體組織”章節(jié)中參考圖11所述,不象是順序使用“散列分條”方法。
圖5示出對分布式媒體數(shù)據(jù)傳播的示例方法500,它包括由多個設(shè)備302使用的消息504和506。媒體數(shù)據(jù)資產(chǎn)408X的分布式發(fā)送代表客戶機206執(zhí)行的。它與調(diào)度器306(n)關(guān)聯(lián)并已請求傳遞媒體數(shù)據(jù)資產(chǎn)408X。圖例502表明,空心箭頭表示協(xié)議消息504,而實心箭頭表示媒體數(shù)據(jù)消息506。
在描述的實施中,調(diào)度器306(n)通過交換機308發(fā)送一發(fā)送請求協(xié)議消息504(1)到發(fā)送器304(1)。發(fā)送請求協(xié)議消息504(1)規(guī)定媒體數(shù)據(jù)塊408(X)并指定所規(guī)定的媒體數(shù)據(jù)塊408(X)將發(fā)送到的客戶機(如使用識別的網(wǎng)址)。作為響應(yīng),發(fā)送器304(1)通過交換機308發(fā)送媒體數(shù)據(jù)消息506(1)到指定的客戶機206,而不必引導(dǎo)它通過發(fā)送器304(n)或設(shè)備302(n)。媒體數(shù)據(jù)(內(nèi)容)消息506(1)包括規(guī)定的媒體數(shù)據(jù)塊408(X)。
類似地,調(diào)度器306(n)通過交換機308發(fā)送一發(fā)送請求協(xié)議消息504(2)到發(fā)送器304(2)。發(fā)送請求協(xié)議消息504(2)規(guī)定媒體數(shù)據(jù)塊408(X+1),并指定該規(guī)定的媒體數(shù)據(jù)塊408(X+1)要發(fā)送到的客戶機206。作為響應(yīng),發(fā)送器304(2)通過交換機308發(fā)送媒體數(shù)據(jù)消息506(2)到指定的客戶機206,而不必引導(dǎo)它們通過發(fā)送器304(n)或設(shè)備302(n)。媒體數(shù)據(jù)(內(nèi)容)消息506(2)包括規(guī)定的媒體數(shù)據(jù)塊408(X+1)。
為清楚起見,圖5的消息504和506忽略了某些細(xì)節(jié)。例如如上所述,消息504和506能實際上可以針對整個媒體數(shù)據(jù)塊408(X)或408(X+1)的一部分或子塊。此外,每個唯一消息504能請求發(fā)送整個媒體數(shù)據(jù)塊的多個這種部分或子塊。下面特別參考圖10進(jìn)一步描述媒體數(shù)據(jù)子塊。
采用分布式媒體傳播方法500改善了潛在的瓶頸問題。不幸的是瓶頸仍能發(fā)生,尤其是當(dāng)前非常流行的媒體數(shù)據(jù)塊。通過在多個設(shè)備302之間以媒體數(shù)據(jù)塊級分布(如使用散列分條)媒體數(shù)據(jù),能采用分布式發(fā)送,這伴隨著分別在許多設(shè)備302和鏈路之間分配了工作負(fù)擔(dān)及帶寬限止。不幸的是,此分配能危及很流行的媒體數(shù)據(jù)塊。
例如,實況媒體數(shù)據(jù)表現(xiàn)能成為各客戶機206請求的重要部分,各客戶機不僅同時請求同一媒體數(shù)據(jù)資源,而且還同時請求實際上同一媒體數(shù)據(jù)塊。因為整個媒體數(shù)據(jù)塊在具有有限發(fā)送帶寬的單臺設(shè)備302上,難以同時服務(wù)所有關(guān)注的客戶機206。因而通常對流行的媒體數(shù)據(jù)塊,尤其是實況媒體數(shù)據(jù)表現(xiàn),在描述的實施中采用多播和/或塊復(fù)制。
多播通過使設(shè)備302能發(fā)送媒體數(shù)據(jù)塊的每個子塊的一個拷貝(或經(jīng)縮減的拷貝數(shù))緩解了由于對單個媒體塊的同時請求產(chǎn)生的瓶頸。媒體數(shù)據(jù)子塊被發(fā)送到單個復(fù)制點(或與關(guān)注的客戶機206的總數(shù)相比較低數(shù)目的復(fù)制點),它從交換機308并在網(wǎng)絡(luò)204的多播使能的實現(xiàn)中向下游流出。
使用多播的意愿能事先人工確定,尤其對如已知體育比賽的實況媒體數(shù)據(jù)表現(xiàn)。媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202還能夠或另選地能監(jiān)視媒體數(shù)據(jù)塊(或整個媒體數(shù)據(jù)資產(chǎn))的即時普遍性,且當(dāng)對單個媒體數(shù)據(jù)塊的即時普遍性達(dá)到預(yù)定級(如40%,60%等)時從單播媒體數(shù)據(jù)發(fā)送轉(zhuǎn)移到多播媒體數(shù)據(jù)發(fā)送。
通常,媒體數(shù)據(jù)塊復(fù)制通過使多個設(shè)備302能發(fā)送復(fù)制的塊而緩解由于對單個媒體數(shù)據(jù)塊的同時請求引起的瓶頸。對實況媒體數(shù)據(jù)表現(xiàn),多個設(shè)備302能經(jīng)過多播獲得復(fù)制的塊。具有復(fù)制的媒體數(shù)據(jù)塊的拷貝的多個設(shè)備302可以是所有設(shè)備302(1,...n)或僅是總設(shè)備的子集。下面參考圖11-13進(jìn)一步描述媒體數(shù)據(jù)塊的復(fù)制。
雖然對非實況媒體數(shù)據(jù)表現(xiàn)瓶頸通常不是問題,仍然要談及媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202內(nèi)在的帶寬限止,以便總體上相對可靠和有效地分布式發(fā)送媒體數(shù)據(jù)表現(xiàn)。例如,每個鏈路314具有最大輸出帶寬,且每個對應(yīng)的發(fā)送器304從不同的調(diào)度器306接收多個發(fā)送請求協(xié)議消息504。因而單個調(diào)度器306都不知道給定的發(fā)送器304有多少可用帶寬。此每發(fā)送器304/每鏈路314的帶寬問題在題為“分布式發(fā)送媒體數(shù)據(jù)的優(yōu)先級機制”的章節(jié)中討論。
分布式發(fā)送媒體數(shù)據(jù)的優(yōu)先級機制在描述的實施中,優(yōu)先級機制使得能相對有效和充分地利用來自發(fā)送器304的可供使用的媒體數(shù)據(jù)發(fā)送帶寬。
圖6示出對分布式發(fā)送媒體數(shù)據(jù)的優(yōu)先級機制的示例方法的第一方面600。示出調(diào)度器306和發(fā)送器304耦合到鏈路314。鏈路314具有有限輸出帶寬602。發(fā)送器304接收多個發(fā)送請求604(1),604(2),604(3),...604(v)。
每個發(fā)送請求604能對應(yīng)于發(fā)送請求協(xié)議消息504,它規(guī)定媒體數(shù)據(jù)塊(包括其一部分)并指定該媒體數(shù)據(jù)塊的至少一部分要發(fā)送到的客戶機206。每個發(fā)送請求來源于多個調(diào)度器306的一個調(diào)度器306(圖6中未示出)并從它發(fā)送。
在描述的實施中,發(fā)送器304包括一發(fā)送帶寬606,發(fā)送請求排序器608,和閾值優(yōu)先級確定器610。發(fā)送帶寬606是在發(fā)送媒體數(shù)據(jù)到客戶機206時分給發(fā)送器306使用的輸出帶寬的數(shù)量(如百分比)。通常,發(fā)送帶寬606小于輸出帶寬602,以保留某些輸出帶寬602用于協(xié)議消息504并加強保障系統(tǒng)來減少數(shù)據(jù)流失誤的似然率。例如,發(fā)送帶寬606可以是輸出帶寬602的95%。
發(fā)送請求排序器608適應(yīng)于以優(yōu)先級次序排序發(fā)送請求604。每個發(fā)送請求604關(guān)聯(lián)唯一的全局優(yōu)先級。唯一的全局優(yōu)先級根據(jù)各種因素的一個或多個計算。首先,優(yōu)先級取決于請求的媒體數(shù)據(jù)子塊是否最后期限(Deadline)數(shù)據(jù)或早期數(shù)據(jù)。最后期限數(shù)據(jù)是在當(dāng)前時隙期間必須發(fā)送的媒體數(shù)據(jù),否則看來極有可能發(fā)生數(shù)據(jù)流錯誤。早期數(shù)據(jù)是在成最后期限時隙之前應(yīng)發(fā)送的數(shù)據(jù)。最后期限數(shù)據(jù)比早期數(shù)據(jù)有更高優(yōu)先級。
優(yōu)先級還取決于是否兩個(或更多)設(shè)備302存儲所請求的媒體數(shù)據(jù)子塊。例如,對高度流行的媒體數(shù)據(jù)塊,媒體數(shù)據(jù)復(fù)制到第二設(shè)備302。復(fù)制的媒體數(shù)據(jù)比在單個設(shè)備302,或更一般地只與單個發(fā)送器304相關(guān)聯(lián)的媒體數(shù)據(jù)具有更低的原始優(yōu)先級。然而,若在兩個可能的設(shè)備計及或考慮優(yōu)先級化時,兩個設(shè)備302均不發(fā)送復(fù)制的媒體數(shù)據(jù),挑選一特定的設(shè)備302,并告知該特定設(shè)備302,只有一個可用的設(shè)備。
反映能發(fā)送數(shù)據(jù)的設(shè)備302(或發(fā)送器304)數(shù)的優(yōu)先級確定過程的部分稱之為“任選計數(shù)”。任選計數(shù)等于存儲給定媒體數(shù)據(jù)塊的拷貝的設(shè)備302的數(shù)目。通常能從相對較少設(shè)備(對應(yīng)于相對較低的任選計數(shù))起動的媒體數(shù)據(jù)發(fā)送比能從相對更多設(shè)備(對應(yīng)于相對較高的任選計數(shù))起動的媒體數(shù)據(jù)發(fā)送具有較高優(yōu)先級。在下面題為“分布式發(fā)送媒體數(shù)據(jù)的媒體組織”的章節(jié)中進(jìn)一步描述復(fù)制和普遍程度。
優(yōu)先級確定過程還包括考慮,數(shù)據(jù)請求在不是最后期數(shù)據(jù)請求時有多早。例如,相對較緊迫的早期數(shù)據(jù)比相對較晚的早期數(shù)據(jù)分配更高的優(yōu)先級。作為解釋,緊迫的早期數(shù)據(jù)在較晚的早期數(shù)據(jù)之前被客戶機使用。因此,雖然兩者均在最后期限之后,緊迫的早期數(shù)據(jù)比較晚的早期數(shù)據(jù)在時間上更靠近最后期限。下面在題為“分布式發(fā)送媒體數(shù)據(jù)的調(diào)度方案”的章節(jié)中進(jìn)一步討論最后期限數(shù)據(jù)和早期數(shù)據(jù)。
至少在其他導(dǎo)致持平的情況,優(yōu)先級還取決于網(wǎng)址和/或其他唯一的ID值。例如,設(shè)備302的地址,調(diào)度器306的地址,發(fā)送器304的地址(如若與設(shè)備302和/或調(diào)度器306分開),目標(biāo)客戶機206的地址,這些的某種組合等可以被加入到優(yōu)先級計算中。例如對帶較低互聯(lián)網(wǎng)協(xié)議(IP)地址的設(shè)備302(或其調(diào)度器306)的媒體數(shù)據(jù)發(fā)送比對帶較高IP地址的設(shè)備302的媒體數(shù)據(jù)發(fā)送分配更高的優(yōu)先級。
當(dāng)計算發(fā)送請求604的唯一優(yōu)先級時也可考慮其他優(yōu)先級因素。簡言之,優(yōu)先級因素的示例列表是·最后期限數(shù)據(jù)對早期數(shù)據(jù),最后期限數(shù)據(jù)具有更高優(yōu)先級;·較少可用的發(fā)送器對較多可用的發(fā)送器,較少可用發(fā)送器具有更高優(yōu)先級;·較緊迫早期數(shù)據(jù)對較晚早期數(shù)據(jù)(它能建立成連續(xù)性),較緊迫早期數(shù)據(jù)具有較高優(yōu)先級;·調(diào)度器ID(它能從如IP地址加上端口序號或?qū)γ總€唯一調(diào)度器306唯一的某些其他ID形成);·唯一化請求ID(通過調(diào)度器306保持所有其自己的請求互相不同來分配,從而因為不同的調(diào)度器ID保證與其他調(diào)度器的請求的唯一性);和·其它。
在描述的實施中,每個調(diào)度器306計算與它發(fā)送的每個發(fā)送情況請求604有關(guān)的唯一優(yōu)先級,此有關(guān)的唯一優(yōu)先級包括在每個發(fā)送請求604中。發(fā)送調(diào)度器306知道可請求的媒體數(shù)據(jù)是否是最后期限數(shù)據(jù),早期數(shù)據(jù),早期數(shù)據(jù)如何緊迫等。然而,發(fā)送器304能另外方式完成優(yōu)先級計算,尤其在其他情況不具有的任何有關(guān)因素被提供給發(fā)送器304時。
因而發(fā)送請求排序器608使用對應(yīng)發(fā)送請求604的對應(yīng)相關(guān)的唯一優(yōu)先級來排序相關(guān)的發(fā)送請求604。發(fā)送請求604從最重要到最不重要排序。如這里使用,最高優(yōu)先級等價于最重要,較大優(yōu)先級等價于較重要,較低優(yōu)先級等價于較不重要。
閾值優(yōu)先級確定器610配置成根據(jù)排序的發(fā)送請求604并對應(yīng)于發(fā)送帶寬606確定對發(fā)送器304的閾值優(yōu)先級。具體說來,由發(fā)送請求604消費的帶寬首先從更重要的那些發(fā)送請求604累計,然后其次從較不重要的那些發(fā)送請求604累計,當(dāng)累計的帶寬達(dá)到或超過發(fā)送帶寬606時,關(guān)于發(fā)送請求604的發(fā)送請求被截止被檢測到。應(yīng)在發(fā)送帶寬606并因此使發(fā)送請求截止的“最后”(即最不重要)發(fā)送請求的有關(guān)唯一的優(yōu)先級被確定為閾值優(yōu)先級。發(fā)送請求的截止點和閾值優(yōu)先級的確定在下面參考圖7描述。
圖7示出分布式發(fā)送媒體數(shù)據(jù)的優(yōu)先級機制的示例方法的第二方面700。發(fā)送帶寬606被畫成一管子,它能充滿到邊緣,但任何溢出的發(fā)送請求當(dāng)前不能發(fā)送。由發(fā)送請求排列序器608從最重要(底部)到最不重要(頂部)排序之后,示出四個發(fā)送請示604(1,2,3,...v)。雖然在優(yōu)先級排序器706只明顯畫出4個發(fā)送請求604,許多那樣的請求604通常由發(fā)送器304在每個時隙內(nèi)處理。
如圖所示,發(fā)送請求604(1)與(唯一的)優(yōu)先級A相關(guān),而發(fā)送請求604(2)與優(yōu)先級B相關(guān)。而發(fā)送請求604(3)與優(yōu)先級C相關(guān),發(fā)送請求604(V)與優(yōu)先級D相關(guān)。在此圖示的例中,優(yōu)先級A比優(yōu)先級B不重要,優(yōu)先級B比優(yōu)先級C不重要,而優(yōu)先級C比優(yōu)先級D不重要。因此,發(fā)送請求604(V)首先被應(yīng)用到發(fā)送帶寬606。
因此,帶寬累計從發(fā)送請求604(V)開始并向上到發(fā)送請求604(3)再向上直到發(fā)送請求604(2),它不能完全裝入發(fā)送帶寬606。在這一點,不能完全裝入發(fā)送帶寬606的發(fā)送請求604[即在圖中例子的發(fā)送請求604(1)和604(2)]被實現(xiàn)優(yōu)先級機制的這一方面的發(fā)送器304舍棄,因為在當(dāng)前的時隙不能承擔(dān)它們的發(fā)送請求。
然而,發(fā)送請求604(2)另一種方式是能夠由發(fā)送器部分地舍棄,使得請求的媒體數(shù)據(jù)的一部分能在當(dāng)前的時隙內(nèi)發(fā)送。部分地舍棄一發(fā)送請求但承擔(dān)其余部分似乎在大多數(shù)情況是局部優(yōu)化,所以可以增加的信息吞吐量要與處理劃分發(fā)送請求增加的復(fù)雜性權(quán)衡。
應(yīng)當(dāng)注意,若每個媒體數(shù)據(jù)子塊是有相同大小且若發(fā)送請求都規(guī)定單個數(shù)據(jù)子塊(對描述的實施不是那樣,且通常不是最大化實際吞吐量的優(yōu)化實施),則帶寬累計能通過將發(fā)送帶寬606除以每個媒體數(shù)據(jù)子塊的帶寬消費大小來實現(xiàn),從而產(chǎn)生可以承擔(dān)的發(fā)送請求604的選定的數(shù)。在數(shù)值上等于選擇的數(shù)的相對較重要的發(fā)送請求604被識別為在發(fā)送請求截止點702之下。
發(fā)送請求截止點702對應(yīng)于所接收的發(fā)送請求604(1,2,3,...4)的最不重要的發(fā)送請求604,它能包括在發(fā)送媒體數(shù)據(jù)消息506的當(dāng)前輪次中而不超過發(fā)送帶寬606。任何完全或部分地超過帶寬606的發(fā)送請求在發(fā)送情況截止702之上,并不能(按操作協(xié)議)被承擔(dān)(至少完全地)用于在發(fā)送媒體數(shù)據(jù)消息506的當(dāng)前輪次中發(fā)送。
對于所考慮的當(dāng)前時隙或輪次的閾值優(yōu)先級704對應(yīng)于裝入預(yù)定的發(fā)送帶寬606的最低優(yōu)先級發(fā)送請求604的唯一優(yōu)先級。在另一實施中,閾值優(yōu)先級704能對應(yīng)于未裝入預(yù)定的發(fā)送帶寬606的最高優(yōu)先級發(fā)送請求604的唯一優(yōu)先級,只要調(diào)度器306知道發(fā)送器304在使用哪個方案來通訊發(fā)送請求截止點702。而且,若在給定發(fā)送器304接收的所有發(fā)送請求604不等于或超過給定的發(fā)送器的發(fā)送帶寬606,則該給定的發(fā)送器304可以考慮(且因而廣播)等于最小可能閾值優(yōu)先級值的閾值優(yōu)先級704。
在圖示的例子中,閾值優(yōu)先級704對應(yīng)于發(fā)送請求604(3)的優(yōu)先級(C)。至少直到閾值優(yōu)先值704(如初始閾值優(yōu)先級)被確定的點,此閾值優(yōu)先級704由發(fā)送器304發(fā)送到多個調(diào)度器306,作為一指示哪個發(fā)送請求604不能被承擔(dān)/選擇用于由該發(fā)送器304在當(dāng)前時隙內(nèi)發(fā)送;以及哪個可以被承擔(dān)/選擇。
調(diào)度器306在從給定的發(fā)送器304接收最終的閾值優(yōu)先級之前,不知道哪個發(fā)送請求604實際上被承擔(dān)/選擇用于由給定的發(fā)送器304在當(dāng)前的時隙內(nèi)發(fā)送。下面參考圖9進(jìn)一步描述初始,中間,和最終的閾值優(yōu)先級704。從接收到最終的閾值優(yōu)先級704,調(diào)度器306知道(i)任何至少象最終閾值優(yōu)先級704一樣重要,且對它已接收到的ACK通知的發(fā)送請求已被承擔(dān)/選擇,(ii)任何至少象最終閾值優(yōu)先級704一樣重要,且對它既未接收ACK通知也未接收不發(fā)送的通知的發(fā)送請求可能已被承擔(dān)/選擇或未被承擔(dān)/選擇,(iii)任何至少象最終閾值優(yōu)先級704一樣重要,且對它已收到不發(fā)送的通知的發(fā)送請求為某種原因未被承擔(dān)/選擇,如由于由發(fā)送請求604的發(fā)送器的遲到接收(即在最終閾值優(yōu)先級704被確定的截止時刻之后,和在媒體塊的子塊被剛發(fā)出之前發(fā)送請求604可能被接收),和(iv)任何比最終閾值704不重要的任何發(fā)送請求604(如上所述)不被承擔(dān)/選擇,不論它是否已接收對該發(fā)送請求的ACK通知。
閾值優(yōu)先級704能作為單播通訊或多播通信由發(fā)送器304發(fā)送。例如,發(fā)送器304能單播閾值優(yōu)先級704到每個提交發(fā)送請求604的調(diào)度器306,到它們提交的發(fā)送請求604未被承擔(dān)的每個調(diào)度器306,到它們提交的發(fā)送請求604正要被承擔(dān)的每個調(diào)度器306,到一般的調(diào)度器306(如用多個單播通訊來“廣播”)等。另外,發(fā)送器304能多播閾值優(yōu)先級704到一般的調(diào)度器306(如用多播通訊的廣播)。下面參考圖8(并進(jìn)一步參考圖9)描述,調(diào)度器306如何能夠利用發(fā)送的閾值優(yōu)先級704的一個實施方法。
圖8是流程圖800,示出用于分布式發(fā)送媒體數(shù)據(jù)的優(yōu)先級機制的示例方法。流程圖800包括11個框802-822。雖然流程圖800的活動能在另外環(huán)境中用各種硬件實施方法完成,特別地使用圖5-7說明該方法的某些方面和例子。例如,(第一設(shè)備302的)調(diào)度器306能完成框802-810和822的動作,而(第一或第二設(shè)備302的)發(fā)送器304能完成框812-820的動作。
在框802,發(fā)送具有唯一優(yōu)先級的發(fā)送請求。例如,調(diào)度器306能發(fā)送與一優(yōu)先級相關(guān)的發(fā)送請求604(*),該優(yōu)先級不同于每個其他的發(fā)送請求604(至少在當(dāng)前的時隙中)。
在框812,接收具有唯一優(yōu)先級的發(fā)送請求。例如,發(fā)送器304能從調(diào)度器306接收發(fā)送請求604(*)。在框802,該發(fā)送請求的接收的ACK被發(fā)送到該調(diào)度器。例如,可選地根據(jù)發(fā)送請求604(*)的唯一優(yōu)先級和發(fā)送器304當(dāng)前閾值優(yōu)先級704,發(fā)送器304能發(fā)送確認(rèn)接收到發(fā)送請求604(*)ACK到調(diào)度器306。接收在框804,從發(fā)送器接收發(fā)送請求的接收的ACK。例如,調(diào)度器306可以接收ACK,確認(rèn)接收來自發(fā)送器304的發(fā)送請求604(*)的接收。接收對發(fā)送請求604(*)的ACK也可以是如下描述的框808的發(fā)送選擇確定中的一個因素。
發(fā)送器304也能從調(diào)度器306和其他調(diào)度器接收多個其他發(fā)送請求604(1,2,3,...V)。在框814,按照有關(guān)的唯一的優(yōu)先級排序多個發(fā)送請求。例如,發(fā)送器304的發(fā)送請求排序器608能將多個發(fā)送請求604(1,2,3,...V),包括發(fā)送請求604(*)排序到優(yōu)先級排序706中。
在框816,根據(jù)排序的發(fā)送請求并響應(yīng)于發(fā)送帶寬確定閾值優(yōu)先級。例如,閾值優(yōu)先級確定器610能根據(jù)在優(yōu)先級排序706中的排序的發(fā)送請求604(1,2,3,...V)并響應(yīng)于發(fā)送帶寬606確定閾值優(yōu)先級704。例如,若發(fā)送請求604與來自那些落到由發(fā)送帶寬606設(shè)置或建立的發(fā)送請求截止點702之下(或更一般落在其中)的發(fā)送請求604的最低的優(yōu)先級相關(guān),則該發(fā)送請求604的優(yōu)先級,如發(fā)送請求604(3)的優(yōu)先級C,能被確定為閾值優(yōu)先級704。
在框818,廣播該確定的閾值優(yōu)先級。例如,發(fā)送器304能多播閾值優(yōu)先級704到諸調(diào)度器306。該確定的和廣播的閾值優(yōu)先級被多個調(diào)度器接收。例如,調(diào)度器306能接收閾值優(yōu)先級704。應(yīng)該注意,如由箭頭824指出并在下面參考圖9描述,發(fā)送器304根據(jù)新到達(dá)的發(fā)送請求604繼續(xù)進(jìn)行閾值優(yōu)先級分析。
在框806,發(fā)送請求的唯一優(yōu)先級與閾值優(yōu)先級比較。例如,與發(fā)送請求604(*)相關(guān)的優(yōu)先級能與閾值優(yōu)先級704比較。在框808,根據(jù)此比較,確定發(fā)送請求是否已被選擇來發(fā)送(即將被承擔(dān))[例如假設(shè)對該發(fā)送請求已接收了ACK通知(如在框804),且所接收的閾值優(yōu)先級是該時隙的最終閾值優(yōu)先級]。例如,若與發(fā)送請求604(*)相關(guān)的優(yōu)先級大于閾值優(yōu)先級704,調(diào)度器306可確定,發(fā)送請求604(*)已被選擇用于發(fā)送。
在描述的實施中,當(dāng)發(fā)送器304閾值優(yōu)先級704不能排除發(fā)送發(fā)送請求604的媒體數(shù)據(jù)時,ACK通知從發(fā)送器304發(fā)送到調(diào)度器(如在框820中)。若當(dāng)前的閾值優(yōu)先級704已確實排除了媒體數(shù)據(jù)的發(fā)送,則不發(fā)送ACK,因為由于請求的媒體數(shù)據(jù)無論如何不被發(fā)送,廣播閾值優(yōu)先級704將通知調(diào)度器306,其發(fā)送請求604是否被發(fā)送器304接收已無關(guān)緊要。
雖然是可能的,對發(fā)送請求完全取消ACK通知(如框820和804所示)在大多數(shù)可靠的消息傳遞不能保證的情況(如沒有內(nèi)置的實質(zhì)性的可靠性的網(wǎng)絡(luò)中)可能是下策。更具體說,當(dāng)包丟失率是大時(如高于約一半百分比),那樣的消除是下策,因為請求者無法通知哪個請求應(yīng)被重新發(fā)送。
因此更一般地,若下面確認(rèn)條件滿足,調(diào)度器306能確定,發(fā)送請求604(*)已被選擇用于發(fā)送如果(i)與發(fā)送請求604(*)相關(guān)的優(yōu)先級大于或等于閾值優(yōu)先級704,(ii)對發(fā)送請求604(*)ACK已從發(fā)送器304到達(dá),和(iii)閾值優(yōu)先級704被標(biāo)記為最終的。若與發(fā)送請求604(*)相關(guān)的優(yōu)先級低于閾值優(yōu)先級704,調(diào)度器306可判定,發(fā)送請求604(*)未被選擇來發(fā)送。
此外,在下面情況調(diào)度器306能判斷,尚沒有可能確定,發(fā)送請求是否未被選擇來發(fā)送;(i)與發(fā)送器604(*)相關(guān)的優(yōu)先級大于或等于閾值優(yōu)先級704,(ii)對發(fā)送請求604(*)未從發(fā)送器304接收到ACK通知,(iii)對發(fā)送請求604(*)未接收到不發(fā)送通知,和(iv)閾值優(yōu)先級704被標(biāo)記為最終的。在這種情況下,對大多數(shù)關(guān)注的情況是少見的,調(diào)度器306可認(rèn)為發(fā)送請求已被或未被選擇用于發(fā)送,哪一個更合適取決于給定的若作出不正確的假定招致的代價。而且在某些實施中,即使在最終閾值優(yōu)先級704被收到之后,調(diào)度器306可繼續(xù)重發(fā)發(fā)送請求604(*),這簡單地為了確定發(fā)送請求604(*)是否被選擇來發(fā)送;然而,當(dāng)不正確的假定的代價與在一個時刻保持對多于一個時隙保持跟蹤所必須的存儲器與處理需求相比是合算時,這基本上是有益的。
因此簡言之,若所有上述確認(rèn)條件(i)-(iii)未滿足,調(diào)度器306延時確定,發(fā)送請求604(*)是否已被選擇來發(fā)送。在能確定發(fā)送請求604(*)是否已被選擇來發(fā)送之前發(fā)生超時的罕見事件中,調(diào)度器306可能不正確地(i)認(rèn)為發(fā)送請求604(*)未被選擇,在那種情況調(diào)度器306將隨后再次請求(其可能的結(jié)果是被發(fā)送兩次),或(ii)認(rèn)為該發(fā)送請求604(*)被選擇,在那種情況下,客戶機能發(fā)送重試請求,以填入任何丟失的媒體數(shù)據(jù)。
繼續(xù)流程圖800,若判定該發(fā)送請求已被選擇來發(fā)送(框808中的“Yes”),則在框822等待來自目標(biāo)客戶機的確認(rèn)(ACK)或監(jiān)視目標(biāo)客戶機的通訊是否有可能出現(xiàn)的NACK。例如,調(diào)度器306能等待來自客戶機206的接收確認(rèn)消息,該客戶機206是在發(fā)送請求604(*)中規(guī)定的媒體數(shù)據(jù)的指定目標(biāo)。媒體數(shù)據(jù)由發(fā)送器304發(fā)送到客戶機206。另選地,當(dāng)調(diào)度器306未收到所期待的信息時,它能監(jiān)視來自客戶機206的通訊是否有客戶機206發(fā)出的潛在NACK,客戶機206是在發(fā)送請求604(*)中規(guī)定的媒體數(shù)據(jù)的指定目標(biāo),媒體數(shù)據(jù)由發(fā)送器304發(fā)送到客戶機206。
如由虛線框822中兩種任選項指出,某些傳遞協(xié)議不需要來自客戶機的ACK,它們能取代地依靠NACK消息來填入間隙。在那樣情況,在注意到發(fā)送請求604(*)已被選擇來發(fā)送,且除非客戶機特地請求某些或所有引用的媒體數(shù)據(jù),所引用的媒體數(shù)據(jù)不需要再次發(fā)送的情況,在框808的“Yes”分支轉(zhuǎn)移后調(diào)度器306不采取專門的肯定的動作。因此,用基于NACK協(xié)議,一旦發(fā)送請求604被選擇來發(fā)送,調(diào)度器306從事相對被動的對NACK通知的監(jiān)視。
另一方面若(在框808)判定“No”,發(fā)送請求未被選擇來發(fā)送,則在框810校驗,是否其他發(fā)送器具有小于該發(fā)送請求的唯一優(yōu)先級和/或小于對該發(fā)送請求的最高可指定的唯一優(yōu)先級。例如,調(diào)度器306可校驗也存儲該規(guī)定的媒體數(shù)據(jù)的另外的發(fā)送器304’,判斷是否發(fā)送器304’的閾值優(yōu)先級704’低于已于發(fā)送請求604(*)相關(guān)的優(yōu)先級和/或低于能對發(fā)送請求604(*)指定的最高優(yōu)先級。若存在另選的發(fā)送器304,從調(diào)度器306發(fā)送帶有同樣發(fā)送優(yōu)先級或更高的的發(fā)送優(yōu)先級(如若合理地可調(diào)整且必須找到可用的發(fā)送器)的另外發(fā)送請求604(*)’(即流程圖800的方法能在框802繼續(xù),若發(fā)送優(yōu)先級不增加,帶有新的發(fā)送請求和新的目標(biāo)發(fā)送器會繼續(xù),若發(fā)送優(yōu)先級增加,相同的或新的目標(biāo)發(fā)送器會繼續(xù))。
合理地調(diào)節(jié)發(fā)送請求604的發(fā)送優(yōu)先級的一種方法是向下調(diào)度任選計數(shù)(即當(dāng)前高速緩存所希望的媒體數(shù)據(jù)的設(shè)備302的數(shù)目)到低于初始的或以前使用的值。換言之,為了增加發(fā)送優(yōu)先級,能潛在地發(fā)送引用的媒體數(shù)據(jù)塊的發(fā)送器數(shù)目可以“實際地”減少。這是允許的,因為否則會引起一種情況,若該發(fā)送請求具有足夠高的優(yōu)先級,有兩個或更多發(fā)送器能發(fā)送一塊的數(shù)據(jù),但若任選計數(shù)設(shè)置成理論上能夠發(fā)送媒體數(shù)據(jù)塊的媒體數(shù)據(jù)的發(fā)送器的實際數(shù)目,它們中沒有能夠接收發(fā)送請求。
在參考框810的另選的描述的實施中,唯一優(yōu)先級能在框808之后框810之前調(diào)節(jié)(如通過降低任選記數(shù))。若可能是發(fā)送請求的增加的唯一優(yōu)先級導(dǎo)致具有較低閾值優(yōu)先級的可能的發(fā)送器,則新的發(fā)送請求能發(fā)送到此另外的可能發(fā)送器(如通過重復(fù)框802的動作)。
簡言之,如下提到并在下面題為“分布式發(fā)送媒體數(shù)的媒體組織”章節(jié)中作進(jìn)一步闡述那樣,一個或多個其他發(fā)送器304能存儲媒體數(shù)據(jù)的復(fù)制拷貝。具有那樣復(fù)制拷貝的每個發(fā)送器304的閾值優(yōu)先級704能與合理地與發(fā)送請求604(*)關(guān)聯(lián)的當(dāng)前優(yōu)先級和/或最高優(yōu)先級比較(如通過臨時使用降低的任選計數(shù),如任選計數(shù)1)。若發(fā)現(xiàn)更低的閾值優(yōu)先級704’,則第二發(fā)送請求604(*)能發(fā)送到具有設(shè)置成足夠低值的任選計數(shù)的發(fā)送器304’,使得該發(fā)送請求604(*)具有比閾值優(yōu)先級704’更高或更重要的相關(guān)優(yōu)先級。在下面參考圖9描述的發(fā)送協(xié)商能一直進(jìn)行到多個發(fā)送器304的發(fā)送帶寬606被充滿和/或進(jìn)行到可用于協(xié)商當(dāng)前時隙的時間期滿的時間。
圖9示出每時隙的示例發(fā)送協(xié)商900,它涉及分布式發(fā)送媒體數(shù)據(jù)的優(yōu)先級機制。對每個發(fā)送時隙,執(zhí)行一協(xié)商,試圖填滿在每個設(shè)備302處每個發(fā)送器304的發(fā)送帶寬606,而不會單獨用最后期限數(shù)據(jù)發(fā)送請求過度填入可用的帶寬。該體系結(jié)構(gòu)力圖通過若干方案利用每個發(fā)送帶寬606的主要百分比(即使不是全部的話)。
例如,這些帶寬利用方案包括媒體數(shù)據(jù)復(fù)制,它增加了以某些或所有媒體數(shù)據(jù)塊的可用發(fā)送器304的潛在數(shù)目。(媒體數(shù)據(jù)復(fù)制也增加了能受到服務(wù)的客戶機的總數(shù))。另外方案關(guān)系到在媒體數(shù)據(jù)的發(fā)送最后期限之前較早地發(fā)送數(shù)據(jù)。使得在當(dāng)前時隙發(fā)送必須(若數(shù)據(jù)流故障要被避免)在或用未來最后期限時隙發(fā)送給客戶機206的媒體數(shù)據(jù)子塊。
又另一個帶寬利用方案當(dāng)總計跨多個發(fā)送器304的各個最后期限發(fā)送帶寬606時,需要調(diào)度器306在總體考慮時防止分配比總的可用發(fā)送帶寬容量的某個百分比(如85%)更多的帶寬。每個調(diào)度器306用影響在未來時隙中最后期限發(fā)送分配的“僅是最后期限的阻塞點-deadline-only chokepoint”,但不考慮何時分配在當(dāng)前時隙內(nèi)的較早的發(fā)送。雖然這不保證每個或甚至任何唯一的發(fā)送器304將被請求發(fā)送不大于其唯一發(fā)送帶寬606的85%,(只計算不能從任何其他設(shè)備302發(fā)送的最后期限發(fā)送),這確實大大降低了任何發(fā)送器304被請求發(fā)送超過其發(fā)送帶寬606的100%的概率(只計算不能從任何其他設(shè)備302發(fā)送的最后期限發(fā)送)。
因為常常請求發(fā)送器304通過發(fā)送早期數(shù)據(jù)利用其發(fā)送帶寬606的余下部分,從而計算發(fā)送器304的最后期限和非最后期限發(fā)送的總的發(fā)送常?;旧咸顫M發(fā)送器304的發(fā)送帶寬,顯然,防止多個發(fā)送器304的發(fā)送帶寬606的累計最后期限數(shù)據(jù)利用超過例如85%不排除對早期數(shù)據(jù)使用余下的15%,下面在題為“分布式發(fā)送媒體數(shù)據(jù)的調(diào)度方案”章節(jié)中進(jìn)一步描述示例調(diào)度方案及流水線管理方法。
如圖所示,發(fā)送協(xié)商900占據(jù)至少部分時隙。在發(fā)送協(xié)商900上部的活動由發(fā)送器304實行。在發(fā)送協(xié)商900下部的活動由調(diào)度器306實行。
調(diào)度器306最初基于最后期限,網(wǎng)絡(luò)阻塞點等確定它們希望將什么媒體數(shù)據(jù)發(fā)送到哪個客戶機206。根據(jù)這些確定,調(diào)度器306構(gòu)成了發(fā)送請求604(在圖9不分別示出)。這里根據(jù)默認(rèn)值而不是閾值優(yōu)先級信息的發(fā)送請求604作為初始發(fā)送請求902從調(diào)度器306被發(fā)送。應(yīng)該注意,在每個時隙開始處所有發(fā)送器304的閾值優(yōu)先級704可以被認(rèn)為是由給定的系統(tǒng)設(shè)計所設(shè)置的最小閾值優(yōu)先級。期待的各唯一發(fā)送器304接收原始的發(fā)送請求902。
如上參考圖6-8所述,對應(yīng)的發(fā)送器304確定響應(yīng)于初始發(fā)送請求902的對應(yīng)閾值優(yōu)先級704。這些確定的對應(yīng)閾值優(yōu)先級704作為初始閾值優(yōu)先級904從對應(yīng)的發(fā)送器304被發(fā)送。調(diào)度器306接收初始的閾值優(yōu)先級904。
響應(yīng)于該接收的初始閾值優(yōu)先級904,調(diào)度器306能估計任選項906。換言之,通過對當(dāng)前時隙發(fā)送器304的初始閾值優(yōu)先級904的知識,使調(diào)度器306能估計哪些方便發(fā)送帶寬606的利用和/或到有關(guān)客戶機206的媒體數(shù)據(jù)傳播的任選項。例如,若對來自被拒絕的發(fā)送請求604的規(guī)定的媒體數(shù)據(jù)的復(fù)制媒體數(shù)據(jù)出現(xiàn)在不同設(shè)備302的不同發(fā)送器304上,可以形成對該不同的發(fā)送器304的新的發(fā)送請求604。若被拒絕的發(fā)送請求604的發(fā)送優(yōu)先級已經(jīng)或能調(diào)節(jié)到(如通過降低任選計數(shù)來產(chǎn)生一優(yōu)先級)高于該不同發(fā)送器304的閾值優(yōu)先級704,形成新發(fā)送新求是合適的。另外,帶著即使在直到較晚時間以前目標(biāo)客戶機206不要求的較晚的最后期限的媒體數(shù)據(jù)可以在另外發(fā)送請求中規(guī)定,這取決于與那個較晚的早期數(shù)據(jù)相關(guān)聯(lián)的其他發(fā)送器304的閾值優(yōu)先級。
這些新的發(fā)送請求604作為后續(xù)的發(fā)送請求908從調(diào)度器306發(fā)送。期待的唯一發(fā)送器304接收后續(xù)的發(fā)送請求908。在添加可能落入對應(yīng)的發(fā)送請求截止點702的這些后續(xù)的發(fā)送請求之后,對應(yīng)的發(fā)送器304確定新的對應(yīng)閾值優(yōu)先級704。這些新的確定的對應(yīng)閾值優(yōu)先級704作為中間(非最終的)閾值優(yōu)先級910從對應(yīng)的發(fā)送器304被發(fā)送。調(diào)度器306接收中間的閾值優(yōu)先級910。以這樣的描述實施的方式,在發(fā)送協(xié)商900期間,對發(fā)送器304的閾值優(yōu)先級704在每個時隙內(nèi)增加了而不會減少。這就方便了快速的穩(wěn)定性并從而完成發(fā)送協(xié)商900。
如由橢圓912所示,發(fā)送協(xié)商900能繼續(xù)進(jìn)行附加的后續(xù)發(fā)送請求908與對應(yīng)的中間*閾值優(yōu)先級910的交換,直到一個中間*閾值優(yōu)先級被標(biāo)記為最終的。換言之,當(dāng)協(xié)商時間接近終點,發(fā)送器304將它們的閾值優(yōu)先級標(biāo)記為最終閾值優(yōu)先級914并將它們發(fā)送到調(diào)度器306。在接收最終閾值優(yōu)先級914之后,調(diào)度器306中止重新估計發(fā)送任選項,中止形成新的發(fā)送請求,并中止發(fā)送那樣的新發(fā)送請求。然而在下一個相繼時隙內(nèi)調(diào)度器306確實形成和發(fā)送新的初始發(fā)送請求902。應(yīng)該注意當(dāng)所有調(diào)度器306已確定,對當(dāng)前時隙沒有考慮中的媒體數(shù)據(jù)具有比任何可用的發(fā)送器的當(dāng)前(不必需是最終的)的閾值優(yōu)先級704的唯一調(diào)度器的范圍更大的最大可分配的優(yōu)先級時,發(fā)送協(xié)商900也終止(若不是正式停止也是事實上停止)。
雖然示出3個后續(xù)的發(fā)送請求908發(fā)送和3個中間閾值優(yōu)先級910發(fā)送,另外也能發(fā)生0個,1個,2個或大于3個。若發(fā)生0個,則初始閾值優(yōu)先級904也是最終閾值優(yōu)先級914。應(yīng)該理解,在每個時隙內(nèi)部不需要正式的循環(huán)。每個時隙的發(fā)送協(xié)商900是一有機過程,其中發(fā)送器304和調(diào)度器306通訊它們的新發(fā)送請求604和當(dāng)前的閾值優(yōu)先級704,直到時間結(jié)束并且當(dāng)前的閾值優(yōu)先級704被標(biāo)記為最終的。因此,在不同調(diào)度器306和發(fā)送器304之中或之間的消息交換可以是非同步的并可以被覆蓋的。
在更具體的描述的實施中,向后和向前的消息交換協(xié)商可發(fā)生數(shù)次而不僅一次或二次。如果發(fā)送請求604第一次被接收且若閾值優(yōu)先級704因而受影響,發(fā)送器304確認(rèn)(ACK)發(fā)送請求604,它大于它們當(dāng)前的閾值優(yōu)先級704,同時可能更新它們新的當(dāng)前閾值優(yōu)先級704。若發(fā)送請求604以前尚未導(dǎo)致接收到ACK,調(diào)度器306重新發(fā)送發(fā)送請求604,它仍具有比該發(fā)送器的當(dāng)前閾值優(yōu)先級704的調(diào)度器的范圍更大的唯一優(yōu)先級。當(dāng)帶有比發(fā)送器的最終閾值優(yōu)先級914更高的唯一優(yōu)先級的發(fā)送請求604(如后續(xù)的發(fā)送請求908)在發(fā)送了它的最終閾值優(yōu)先級914之后到達(dá)發(fā)送器304,則可發(fā)送NON-SENT(不發(fā)送)消息,但這是可任選的。若來自發(fā)送器304的“最終”閾值優(yōu)先級尚未被收到,調(diào)度器306在最終閾值優(yōu)先級914發(fā)送之后可以發(fā)送NON-FINAL消息到發(fā)送器304,但這也是可任選的。作為有關(guān)的任選項,若發(fā)送器304接收一NON-FINAL消息,它們能重發(fā)它們的最終閾值優(yōu)先級914。
如上所述,發(fā)送協(xié)商900最終結(jié)束,所以經(jīng)調(diào)度和接收的媒體數(shù)據(jù)塊部分916能從發(fā)送器304發(fā)送到客戶機206。例如,發(fā)送協(xié)商900可以在預(yù)定時間周期(如時隙的一部分)經(jīng)過后結(jié)束,參考當(dāng)前時隙在時間周期終止時通過的任何消息被忽略,可以準(zhǔn)備對緊接相繼時隙的初始發(fā)送請求902并隨后發(fā)送。另選地可實行另外的終止約定。
分布式發(fā)送媒體數(shù)據(jù)的媒體組織圖10示出媒體數(shù)據(jù)的示例邏輯組織1000。媒體數(shù)據(jù)(MD)段1002被分成一個或多個媒體數(shù)據(jù)資產(chǎn)(asset)1004。作為面向內(nèi)容的例子,媒體數(shù)據(jù)段1002可對應(yīng)新聞頻道的一天,在任何給定24小時周期或任何其他長度周期(如16小時)中對主要網(wǎng)絡(luò)的全國性廣播節(jié)目,按次付費電影等。例如,每個媒體數(shù)據(jù)資產(chǎn)1004能是媒體數(shù)據(jù)段1002的某個分割的部分(如子區(qū)),或整個媒體數(shù)據(jù)段1002??赡艿拿襟w數(shù)據(jù)資產(chǎn)1004的面向內(nèi)容的例子包括所有新聞頻道的30分鐘部分,來自網(wǎng)絡(luò)電視的一小時長的戲劇等。
然而根據(jù)媒體數(shù)據(jù)的內(nèi)容媒體數(shù)據(jù)資產(chǎn)1004在概念上是靈活的。例如媒體數(shù)據(jù)資產(chǎn)1004能是媒體數(shù)據(jù)的相當(dāng)短的片段,如電影短片,唯一的新聞故事等。另一方面,媒體數(shù)據(jù)資產(chǎn)1004能是媒體數(shù)據(jù)的相當(dāng)長的片段,如整個全長的電影。整個全長電影的媒體數(shù)據(jù)資產(chǎn)1004也能對應(yīng)于整個媒體數(shù)據(jù)段1002。
從技術(shù)角度看,媒體數(shù)據(jù)段1002能是來自編碼器的媒體數(shù)據(jù)的連續(xù)時間流,它能被連續(xù)地解碼。若編碼器停止編碼,很大地更改其編碼參數(shù),或改變到另外編碼器,就開始了不同的媒體數(shù)據(jù)段1002。通常保持每個希望的媒體數(shù)據(jù)段1002的整體性。然而,它們能劃分成能夠具體并唯一引用的子區(qū)域,如媒體數(shù)據(jù)資產(chǎn)1004,所以普遍性至少能被關(guān)注到每個媒體數(shù)據(jù)資產(chǎn)1004的級。也能在更精細(xì)的細(xì)節(jié)級上跟蹤普遍性,如在每塊,在每半小時,每子塊,每字節(jié),或每個其它細(xì)節(jié)級的基礎(chǔ)上.不管實際被跟蹤的普遍性的細(xì)節(jié)的級,能容易地導(dǎo)出具體塊的估計的普遍性。在下面特別參考圖12和13進(jìn)一步描述普遍性。
每個媒體數(shù)據(jù)段1002被細(xì)分成一個或多個媒體數(shù)據(jù)塊...1006(W-1),1006(W),1006(W+1),...。雖然大多數(shù)媒體數(shù)據(jù)段1002看來包含許多媒體數(shù)據(jù)塊1006,給定的媒體數(shù)據(jù)段1002能包含少到3個,2個或甚至單個媒體數(shù)據(jù)塊1006。在描述的實施中,媒體數(shù)據(jù)塊1006是分布到各設(shè)備302中的媒體數(shù)據(jù)粒度級。例如,在圖4和5中分布式媒體數(shù)據(jù)塊1006的出現(xiàn)由媒體數(shù)據(jù)塊408(X),408(X+1),408(Y)和408(Y+1)表示。媒體數(shù)據(jù)塊1006幾乎是1兆字節(jié)(NB)大小,但另選其它大小也能實現(xiàn)。在同一段中對視頻數(shù)據(jù)的媒體數(shù)據(jù)塊大小能不同于對聲頻數(shù)據(jù)的媒體數(shù)據(jù)塊大小。在單個數(shù)據(jù)流中,媒體數(shù)據(jù)塊大小也能變化,但這是少見的。
如媒體數(shù)據(jù)塊1006(W)的每個媒體數(shù)據(jù)塊被進(jìn)一步劃分成媒體數(shù)據(jù)子塊1008(1),1008(2),1008(3),...1008(S)。在描述的實施中,媒體數(shù)據(jù)子塊1008是媒體數(shù)據(jù)粒度級,它被規(guī)定用于在給定時隙內(nèi)發(fā)送到客戶機206。因此,媒體數(shù)據(jù)子塊1008是被規(guī)定來在每個發(fā)送請求中發(fā)送的媒體數(shù)據(jù)單位(例如是用于發(fā)送的媒體數(shù)據(jù)粒度的級別)。然而單個發(fā)送請求504/604能請求發(fā)送多個媒體數(shù)據(jù)子塊1008,而不是只請求發(fā)送單個媒體數(shù)據(jù)子塊1008。換言之,雖然每個媒體數(shù)據(jù)子塊1008可以是分組大小,單個發(fā)送請求604能導(dǎo)致發(fā)送多個那樣的媒體數(shù)據(jù)子塊1008(和它們的分組)到客戶機206。
圖11示出物理地定位包括散列表1114的媒體數(shù)據(jù)的示例方法1100。媒體數(shù)據(jù)段1002的媒體數(shù)據(jù)塊1006(w)被示出位于設(shè)備302上,在本例中是設(shè)備302(2)。物理上定位媒數(shù)據(jù)可以指的是定位媒體數(shù)據(jù)(例如媒體數(shù)據(jù)塊1006)(i)是為了在設(shè)備302位置上放置媒體數(shù)據(jù)或(ii)是為了請求具有媒體數(shù)據(jù)位置的設(shè)備302發(fā)送媒體數(shù)據(jù)到客戶機206。
在描述的實施中,每個媒體數(shù)據(jù)段1002和唯一的媒體數(shù)據(jù)塊1006包括或?qū)?yīng)一個識別號。如圖所示,媒體數(shù)據(jù)段1002包括媒體數(shù)據(jù)段號1102,而媒體數(shù)據(jù)塊1006(W)包括媒體數(shù)據(jù)塊號1104。在系統(tǒng)中每個媒體數(shù)據(jù)塊1002能以順序方式或通過使用全局唯一的ID,或以某些其他方式只要它們是唯一的來分配唯一的媒體數(shù)據(jù)段號1102。在給定的媒體數(shù)據(jù)段1002中,每個媒體數(shù)據(jù)塊1006被順序地分配唯一的媒體數(shù)據(jù)塊號1104。順序分配的媒體數(shù)據(jù)塊號1104也能用于視頻處理排序。
媒體數(shù)據(jù)段號1102和媒體數(shù)據(jù)塊號1104組合起來(如加上,級聯(lián)等)以導(dǎo)出媒體數(shù)據(jù)識別(ID)值1106。媒體數(shù)據(jù)識別值1106被應(yīng)用于散列函數(shù)1108以產(chǎn)生媒體數(shù)據(jù)散列值1110。在描述的實施中,散列函數(shù)1108采用來自媒體數(shù)據(jù)段號1102和媒體數(shù)據(jù)塊號1104的帶32比特值的線性反饋移住寄存器(LFSR)。然而,作為替代可采用另外的散列函數(shù)1108,包括非LFSR函數(shù)和/或使用不同比特長度的值的函數(shù)。
媒體數(shù)據(jù)散列值1110在映射操作1112處被映射到散列表1114。散列表1114包括多個區(qū)段,1116(1),1116(2),1116(3)...1116(b)。具體說來,媒體數(shù)據(jù)散列值1110被映射1112到散列表1114的區(qū)段1116上。在描述的實施例中,映射1112包括當(dāng)媒體數(shù)據(jù)散列值1110除以散列表1114的大小“b”時,取余數(shù)。如圖所示,媒體數(shù)據(jù)散列值1110被映射1112到散列表1114的區(qū)段1116(2)上。
散列表1114的每個區(qū)段1116具有與至少一個設(shè)備302的關(guān)聯(lián)。在下面參考圖13作進(jìn)一步描述的實施中,每個區(qū)段1116具有與2個設(shè)備302的關(guān)聯(lián)。例如,第一設(shè)備302能具有與給定區(qū)段1116的主要作用,而第二設(shè)備302具有與給定區(qū)段1116的次要作用。與區(qū)段1116的作用和關(guān)聯(lián)可以另選地關(guān)于發(fā)送器304而不是實際設(shè)備302而被定義;在區(qū)段1116和發(fā)送器304之間具有關(guān)聯(lián)1118的例子在下面參考圖13描述。
如圖所示,區(qū)段1116(2)與設(shè)備302(2)關(guān)聯(lián)1118。因此,設(shè)備302(2)具有與區(qū)段1116(2)的主要和次要作用。因而媒體數(shù)據(jù)塊1006(W)可定位在設(shè)備302(2),并存儲在RAM條的實施中的RAM中。
在描述的實施中,區(qū)段1116的數(shù)目“b”大于設(shè)備302的號“n”。例如,若n=500,則b可等于131,071。結(jié)果,如由從散列表1114延伸到關(guān)聯(lián)1118的第二箭頭所示,每個設(shè)備302與多個區(qū)段1116相關(guān)聯(lián)。將多個區(qū)段1116與每個設(shè)備302關(guān)聯(lián)方便了從設(shè)備302的故障的恢復(fù),因為故障設(shè)備302的媒體數(shù)據(jù)存儲和發(fā)送的責(zé)任能很快地分散到與每個設(shè)備302相關(guān)聯(lián)的許多區(qū)段1116一樣多的設(shè)備302中。然而,散列表1114的區(qū)段1116的數(shù)“b”是足夠小,使得每個設(shè)備302能承擔(dān)存儲散列表1114的一個拷貝,用于快速引用。
每個與給定區(qū)段116關(guān)聯(lián)(1118)的設(shè)各302負(fù)責(zé)讓最終映射(1112)(在散列1108之后)到給定區(qū)段1116的媒體數(shù)據(jù)存入RAM。若請求的媒體數(shù)據(jù)塊1006不在RAM中,則相關(guān)聯(lián)的設(shè)備302從(圖3的)媒體數(shù)據(jù)的海量存儲310檢索它。無論如何,關(guān)聯(lián)的設(shè)備302具有主要責(zé)任作用,將映射(1112)到給定區(qū)段1116的媒體數(shù)據(jù)塊1006發(fā)送到客戶機206。然而,對高度普遍的媒體數(shù)據(jù),另一個設(shè)備302具有次要責(zé)任作用,來發(fā)送映射(1112)到給定區(qū)段1116的媒體數(shù)據(jù)。下面參考圖13進(jìn)一步描述主要及次要作用,并參考圖12描述確定媒體數(shù)據(jù)的確定方法。
圖12示出對媒體數(shù)據(jù)的普遍性確定的示例方法1200。媒體數(shù)據(jù)普遍性的給定百分比不必需等于媒體數(shù)據(jù)存儲器大小或媒體數(shù)據(jù)資產(chǎn)部分的同樣的百分比。示例的普遍性確定1200確定數(shù)量達(dá)普遍性Z%的媒體數(shù)據(jù)塊。普遍性確定能另外地按每個資產(chǎn),將每個道(如在特定語言中的聲道對在另一種語言中的聲道),按每個子塊按,每個字節(jié)或任何細(xì)節(jié)/存儲器大小的其他等級完成,其方法是將在那個細(xì)節(jié)等級的所有媒體數(shù)據(jù)的普遍性大概作為相等。
媒體數(shù)據(jù)塊1006在普遍性排序1202中是從最普遍到最不普遍排序。如圖所示,媒體數(shù)據(jù)塊1006的排序是從媒體數(shù)據(jù)塊1006(1)到媒體數(shù)據(jù)塊1006(2)到媒體數(shù)據(jù)塊1006(3),到媒體數(shù)據(jù)塊1006(V)。應(yīng)該注意,普遍性排序1202不必需包括小于Z%普遍性級(1206)媒體數(shù)據(jù)1006。應(yīng)該注意,若普遍確定1200按段,按資產(chǎn),按道實行,或按比媒體數(shù)據(jù)塊任何更大的細(xì)節(jié)級別來實行,媒體數(shù)據(jù)塊1006不需要唯一考慮。
每個對應(yīng)的媒體數(shù)據(jù)塊1006(1,2,3...V)已被相應(yīng)數(shù)目的客戶1024(1,2,3,…V)所請求,媒體數(shù)據(jù)塊1006的普遍性排序1202考慮請求的客戶1204(1,2,3...V)的數(shù)目來實行。換言之,請求客戶1204(1)的數(shù)目大于請求客戶1204(2)的數(shù)目,后者又大于請求客戶1204(3)的數(shù)目,如此等等。
如圖所示,請求客戶機1204(1),1204(2)和1204(3)的數(shù)目總計為當(dāng)前向其傳播媒體數(shù)據(jù)的客戶機1208的總數(shù)的Z%。因此,媒體數(shù)據(jù)塊1006(1),1006(2),和1006(3)包括在系統(tǒng)中普遍性1206的Z%。如下參考圖13所述,普遍性1206的Z%被復(fù)制。
在描述的實施中,被復(fù)制的普遍性1206的Z%對應(yīng)于15%。應(yīng)該理解,15%的請求可以是對5%的媒體數(shù)據(jù),在此情況復(fù)制5%的媒體數(shù)據(jù)以便復(fù)制15%的普遍性。能按媒體數(shù)據(jù)塊1006完成普遍性跟蹤,但為了普遍性及復(fù)制的目的,可另選地跟蹤其他媒體數(shù)據(jù)粒度。不論在哪個粒度跟蹤普遍性,普遍性能在按字節(jié)的普遍性上作比較。
為清楚起見,圖12示出的普遍性確定1200隱去了更復(fù)雜的細(xì)節(jié)。在描述的實施中,普遍性按等長度塊(因此按字節(jié))確定,以便至少改善(若不是優(yōu)化)RAM的使用。在此描述的實施中,按請求的普遍性是基于按媒體數(shù)據(jù)資產(chǎn)1004被跟蹤。
然而,普遍性排序1202也是對應(yīng)于按字節(jié)基礎(chǔ)上創(chuàng)建的。例如,客戶機1204的數(shù)目(它在媒體數(shù)據(jù)資產(chǎn)1004級被跟蹤并代表有效觀看該媒體數(shù)據(jù)資產(chǎn)的客戶機的數(shù)目,或那樣數(shù)目在近期內(nèi)的平均),除以在對應(yīng)的媒體數(shù)據(jù)資產(chǎn)1004中媒體數(shù)據(jù)塊1006的總數(shù),且其結(jié)果再除之每個媒體數(shù)據(jù)塊1006的字節(jié)長度。使用得到的每字節(jié)的普遍性值,在普遍性確定1200中創(chuàng)建媒體數(shù)據(jù)塊1006的普遍性排序1202。
為提供說明的例子,較短的媒體數(shù)據(jù)資產(chǎn)1004具有比較長媒體數(shù)據(jù)資產(chǎn)1004更高的每字節(jié)普遍性,后者具有當(dāng)前客戶請求者的相等的數(shù)目。若(i)較短的媒體數(shù)據(jù)資產(chǎn)1004具有2個媒體數(shù)據(jù)塊1006且較長的媒體數(shù)據(jù)資產(chǎn)1004具有10個同樣大小的媒體數(shù)據(jù)塊1006,和(ii)每個媒體數(shù)據(jù)資產(chǎn)1004具有100個當(dāng)前請求的客戶機206,則在任何給定瞬間對較短的媒體數(shù)據(jù)資產(chǎn)1004存在更多對每個媒體數(shù)據(jù)塊1006(每字節(jié))的當(dāng)前請求客戶機206。在此情況使得較短的媒體數(shù)據(jù)資產(chǎn)1004和媒體數(shù)據(jù)塊1006具有更高的普遍性,導(dǎo)致RAM-高速緩存的媒體數(shù)據(jù)的更有效的使用。提供等價的每字節(jié)的普遍性排序結(jié)果的另選方法是跟蹤在自從普遍性度量的最新更新以來的會話期間由客戶請求的媒體數(shù)據(jù)資產(chǎn)的字節(jié)總數(shù)。此媒體數(shù)據(jù)資產(chǎn)的請求的字節(jié)的總數(shù)除以該媒體數(shù)據(jù)資產(chǎn)的字節(jié)總長度,然后周期地或在會話結(jié)束之后將此商作為因子加入普遍性度量中。
使用每字節(jié)的普遍性值,媒體數(shù)據(jù)能在對應(yīng)于當(dāng)前的普遍性的媒體數(shù)據(jù)級1006上處理。下面參考圖13描述包括復(fù)制和高速緩存數(shù)據(jù)的溢出清除的媒體數(shù)據(jù)處理。
雖然上述實施依賴于按媒體數(shù)據(jù)資產(chǎn)1004粒度上的普遍性跟蹤,普遍性可以另選地在另外的媒體數(shù)據(jù)粒度的級上跟蹤。例如,媒體數(shù)據(jù)普遍可在媒體數(shù)據(jù)塊1006粒度級上跟蹤(在此情況用于普遍性排序1202的目的,普遍性百分比隱含地按每個媒體數(shù)據(jù)塊1006的)。此外,媒體數(shù)據(jù)普遍性能在按媒體數(shù)據(jù)塊組的粒度級上跟蹤,其中該組是預(yù)定數(shù)目的媒體數(shù)據(jù)塊1006,如10個媒體數(shù)據(jù)塊1006。
圖13示出用于定位包括復(fù)制的媒體數(shù)據(jù)的媒體數(shù)據(jù)的示例散列表1114。替代與單個發(fā)送器304關(guān)聯(lián)的每個區(qū)段1116,每個區(qū)段1116關(guān)聯(lián)(1118)主要發(fā)送器304(P),次要發(fā)送器304(S)和可任選的第三發(fā)送器和更多的發(fā)送器。通常,每個區(qū)段1116被劃分成主要發(fā)送器作用1304和次要發(fā)送器作用1302。
具有主要發(fā)送器作用1304的主要發(fā)送器304(P)負(fù)責(zé)映射到給定區(qū)段1116的媒體數(shù)據(jù)塊1006的100%。具有次要發(fā)送器作用1302的次要發(fā)送器304(S)負(fù)責(zé)映射到給定區(qū)段1116的普遍的媒體數(shù)據(jù)塊1006的頂部Z%。因而,任何給定區(qū)段1116的普遍性的Z%具有次要發(fā)送器作用1302的發(fā)送器304被復(fù)制。如上所述,復(fù)制媒體數(shù)據(jù)的普遍性的Z%然等于必須復(fù)制Z%小的媒體數(shù)據(jù)。
特別參考區(qū)段1116(1),主要發(fā)送器304(P)被關(guān)聯(lián)成具有主要發(fā)送器作用1304,而次級發(fā)送器304(S)與區(qū)段1116被關(guān)聯(lián)成具有次級發(fā)送器作用1302。因此,(如通過散列)映射到區(qū)段1116(1)的媒體數(shù)據(jù)塊1006能從主要發(fā)送器304(P)發(fā)送。映射到區(qū)段1116(1)并作為在區(qū)段1116(1)中當(dāng)前的普遍性的頂部Z%的部分那些媒體數(shù)據(jù)塊1006在次要發(fā)送器304(S)復(fù)制,并從那里被發(fā)送。
因而,次要發(fā)送器304(S)能用于發(fā)送作為當(dāng)前普遍性的頂部Z%的部分的給定區(qū)段1116的媒體數(shù)據(jù)塊1006。這對那些后續(xù)發(fā)送請求908(圖9)特別有用,那個請求在調(diào)度器306根據(jù)從主要發(fā)送器304(P)接收的初始閾值優(yōu)先級904,知道原始的發(fā)送請求902未被主要發(fā)送器304(P)承擔(dān)時被發(fā)送。
雖然圖13未示出,對映射到區(qū)段1116的媒體數(shù)據(jù)可以有由散列表1114確定的另外的發(fā)送器作用(例如第三個,第四個等)。而且,每個附加的發(fā)送器作用可以任選地用于不同的普遍性百分比。例如第三發(fā)送器作用能復(fù)制普遍性的頂部10%。在那樣的例子中,三個發(fā)送器負(fù)責(zé)普遍性的頂部10%,二個發(fā)送器負(fù)責(zé)普遍性的頂部15%,一個發(fā)送器負(fù)責(zé)普遍性的所部100%的媒體數(shù)據(jù),調(diào)度器306因而有3個發(fā)送器304任選項,倘若發(fā)送器請求是對普遍性的頂部10%的媒體數(shù)據(jù)。另選地可使用其他發(fā)送器304數(shù)目和普遍性復(fù)制百分比。
主要發(fā)送器304(P)負(fù)責(zé)映射到給定區(qū)段1116的媒體數(shù)據(jù)塊的100%。然而,對應(yīng)主要發(fā)送器304(P)的對應(yīng)設(shè)備302可能不具有足夠的RAM來恒定地存儲給定區(qū)段1116的所有媒體數(shù)據(jù)塊1006。因而,當(dāng)從調(diào)度器306請求時,主要發(fā)送器304(P)將請求的媒體數(shù)據(jù)塊1006從媒體數(shù)據(jù)的海量存儲310加載到主要發(fā)送器304(P)的對應(yīng)設(shè)備302。由于訪問媒體數(shù)據(jù)的海量存儲310引起的延時通過使用朝前看(look-ahead)方案得以改善。在下面題為“分布式發(fā)送媒體數(shù)據(jù)的調(diào)度方案”的章節(jié)中進(jìn)一步描述朝前看方案以及有關(guān)的媒體數(shù)據(jù)鎖定。
在描述的實施中,當(dāng)由發(fā)送器304加載“新”媒體數(shù)據(jù)塊1006時,“老”媒體數(shù)據(jù)塊1006被刪除以便在發(fā)送器304的設(shè)備302的存儲器404中提供空間。根據(jù)媒體數(shù)據(jù)的普遍性作出擬刪除的老的媒體數(shù)據(jù)塊1006的選擇。例如,在給定的區(qū)段1116中選擇最不普遍的媒體數(shù)據(jù)塊1006來刪除和替代。然而,若最不普遍的媒體數(shù)據(jù)塊1006由于朝前看過程被鎖定,考慮下一最不普遍的媒體數(shù)據(jù)塊來替代地刪除,如此等等。
圖14示出媒體數(shù)據(jù)支持信息的示例組織1400。媒體數(shù)據(jù)支持信息包括支持聲頻/視頻媒體數(shù)據(jù)信息的呈現(xiàn)的信息。組織1400包括媒體數(shù)據(jù)流調(diào)度1402和媒體數(shù)據(jù)流索引1406。每個媒體數(shù)據(jù)流調(diào)度1402與特定的媒體數(shù)據(jù)段1002關(guān)聯(lián),且每個對應(yīng)的媒體數(shù)據(jù)流索引1406(若也存在)同樣與特定的媒體數(shù)據(jù)段1002關(guān)聯(lián)。
在描述的實施中,每個媒體數(shù)據(jù)流調(diào)度1402包括由調(diào)度器306用來建立流調(diào)度的信息,它滿足對被指定的相關(guān)聯(lián)的目標(biāo)客戶機206的責(zé)任。調(diào)度器306使用媒體數(shù)據(jù)流調(diào)度1402來確保,媒體數(shù)據(jù)408/1004/1006/1008及時到達(dá)以便處理和顯示而沒有流的故障。每個媒體數(shù)據(jù)流索引1406指出對相關(guān)聯(lián)的媒體數(shù)據(jù)段1002的隨機訪問的多個點,例如,媒體數(shù)據(jù)流索引1406能包括對某些類型編碼媒體數(shù)據(jù)(如MPEG-編碼媒體數(shù)據(jù))的I幀的位置。
如圖所示,媒體數(shù)據(jù)流調(diào)度1402包括多個調(diào)度單元1404,包括調(diào)度單元1404(q-1),1404(q)...1404(q+1)。媒體數(shù)據(jù)流索引1406包括多個索引單元1408,包括索引單元1408(r-1),1408(r)...1408(r+1)。調(diào)度單元1404和索引單元1408的數(shù)目不必需對應(yīng)于在相關(guān)媒體數(shù)據(jù)段1002中的媒體數(shù)據(jù)塊1006的數(shù)目。因此,單個調(diào)度單元1404能對多個媒體數(shù)據(jù)塊1006提供支持信息,雖然媒體數(shù)據(jù)流調(diào)度1402看來比媒體數(shù)據(jù)流索引1406更大,它們的相對大小不必需如圖14中指出那樣。
每個媒體數(shù)據(jù)流調(diào)度1402能整體存儲在每個設(shè)備302處以備調(diào)度器306就地訪問。對3小時媒體數(shù)據(jù)段1002,其相關(guān)聯(lián)的媒體數(shù)據(jù)流調(diào)度1402約為200KB,對于帶有每個調(diào)度單元1404為約1-8KB的相對小的媒體數(shù)據(jù)系統(tǒng),這是可管理的。然而,為了改善在描述實施中的規(guī)??煽s放性,每個媒體數(shù)據(jù)調(diào)度1402的調(diào)度單元1404分布在多個設(shè)備302中。當(dāng)調(diào)度器306希望訪問特定調(diào)度單元1404時,使用散列表1114對它定位。
因此,調(diào)度單元1404使用同一散列函數(shù)1108和散列表1114分布到各設(shè)備302,就好象用于分布媒體數(shù)據(jù)塊1006那樣。因而,每個媒體數(shù)據(jù)流調(diào)度1402和其單一的調(diào)度單元1404具有用于確定對散列函數(shù)1108應(yīng)用的識別值的數(shù)。這些數(shù)可以獨立于有關(guān)的媒體數(shù)據(jù)1002和媒體數(shù)據(jù)塊1006,它們由調(diào)節(jié)單元1404支持,或它們是有關(guān)的。
例如對特定媒體數(shù)據(jù)流調(diào)度1402的序號能等同或類似于相關(guān)聯(lián)的特定媒體數(shù)據(jù)段1002的媒體數(shù)據(jù)段序號,調(diào)度單元1404的編號延續(xù)媒體數(shù)據(jù)塊1006的編號,另選地,媒體數(shù)據(jù)段1002能具有做成模形(overarching)的識別序號,每個媒體數(shù)據(jù)資產(chǎn)1004,媒體數(shù)據(jù)流調(diào)度1402和媒體數(shù)據(jù)流索引1406(若包括)具有基于拱形識別號的子流識別符。也可實現(xiàn)其他排序關(guān)系。
更具體說,媒體數(shù)據(jù)流索引1406是一文件,它列出在相關(guān)媒體數(shù)據(jù)段1002的搜索點(隨機搜索點),并給出對該搜索點到相關(guān)媒體數(shù)據(jù)段1002的偏移量。媒體數(shù)據(jù)流索引1406的條目按媒體的時間排序。媒體數(shù)據(jù)流調(diào)度1402是媒體數(shù)據(jù)流索引1406的更詳細(xì)的形式。媒體數(shù)據(jù)流調(diào)度1402包括確定用于在相關(guān)聯(lián)的媒體數(shù)據(jù)庫1002中搜索的同步點的信息,但對于搜索它們通常比媒體數(shù)據(jù)流索引1406更麻煩,因為它們還包括非隨機訪問的位置。
媒體數(shù)據(jù)流調(diào)度1402處理相關(guān)媒體數(shù)據(jù)段1002的幀或大量(視頻或聲頻)幀。它還包括每個幀的解碼時間標(biāo)簽(DTS)和每個幀按字節(jié)或分組的大小。它按解碼時間標(biāo)簽(DTS)排序,可能包括逆向DTS。
媒體數(shù)據(jù)流調(diào)度1402的突出特性能使由調(diào)度器306執(zhí)行的調(diào)度算法從相關(guān)聯(lián)的媒體數(shù)據(jù)段1002的聲頻/視頻信息中分離出來。應(yīng)該理解,媒體數(shù)據(jù)流調(diào)度1402和/或媒體數(shù)據(jù)流索引1406是組織媒體數(shù)據(jù)信息的示例方法,那些媒體數(shù)據(jù)信息支持聲頻/視頻數(shù)據(jù)信息的表示并能改為利用另選的組織實施方法。
分布式發(fā)送媒體數(shù)據(jù)的調(diào)度方案圖15示出示例媒體數(shù)據(jù)特征1500,包括朝前看區(qū)域1502,它表明不同的媒體數(shù)據(jù)處理階段。一個媒體數(shù)據(jù)資產(chǎn)1004包括多個媒體數(shù)據(jù)塊1006(1),1006(2),...1006(7)1006(8)...。每個媒體數(shù)據(jù)塊1006與發(fā)送器304關(guān)聯(lián),并通過散列分條的媒體數(shù)據(jù)分布方法(如上面特別參考圖11-13描述的方法),存儲在設(shè)備302上。
雖然媒體數(shù)據(jù)特征1500被圖示為在媒體數(shù)據(jù)CR1006(1)處開始,這可推廣到在任何給定的媒體數(shù)據(jù)塊1006處開始。媒體數(shù)據(jù)資產(chǎn)1004被分成當(dāng)前塊1506,另選地發(fā)送請求區(qū)域1504,和朝前看區(qū)域1502。
當(dāng)前塊1506對應(yīng)于媒體數(shù)據(jù)塊1006(1)。媒體數(shù)據(jù)塊1006(1)的展開的視圖包括多個媒體數(shù)據(jù)子塊1008(1),1008(2),1008(3),...1008(5)。作為當(dāng)前塊1506,媒體數(shù)據(jù)塊1006(1)是正要由遠(yuǎn)程客戶機206(圖15中未示出)處理的媒體數(shù)據(jù)塊1006,應(yīng)該注意,由于從另外的發(fā)送請求區(qū)1504發(fā)送的早期請求,由客戶機206處理的媒體數(shù)據(jù)塊1006可能在客戶機206處理第一媒體數(shù)據(jù)子塊1008(1)的時刻,對客戶機206已經(jīng)完全是本地的。
另一方面,若當(dāng)客戶機206在處理媒體數(shù)據(jù)塊1006(1)時某些媒體數(shù)據(jù)子塊1008仍然在向客戶機206發(fā)送,則一個或多個媒體數(shù)據(jù)子塊1008可以是最后期限數(shù)據(jù)1514。對那樣最后期限數(shù)據(jù)1514(圖6等)的發(fā)送請求604被賦予最高發(fā)送優(yōu)先級以避免流故障。
若當(dāng)前沒有最后期限數(shù)據(jù),且對至少一個非最后期限媒體數(shù)據(jù)子塊1008的至少一個發(fā)送請求604不具有超過相關(guān)發(fā)送器304的閾值優(yōu)先級704的足夠高的優(yōu)先級,則調(diào)度器306能在每時隙的發(fā)送協(xié)商期間900(圖9)考慮另外的發(fā)送請求區(qū)域1504。(如上參考圖9的任選項估計906所述,調(diào)度器306也能考慮增加指定的發(fā)送優(yōu)先級)。為了考慮另外的發(fā)送請求區(qū)域1504,對潛在的發(fā)送請求604考慮(1)早期數(shù)據(jù)1508;(2)較晚的早期數(shù)據(jù)1510;和(3)更晚的早期數(shù)據(jù)1512。例如,較晚的早期數(shù)據(jù)1510在早期數(shù)據(jù)1508之后考慮,因為較晚的早期數(shù)據(jù)離最后期限的時間更遠(yuǎn)。
若與對應(yīng)媒體數(shù)據(jù)塊1006(2),1006(3),或1006(4)關(guān)聯(lián)的對應(yīng)發(fā)送器304具有的閾值優(yōu)先級704低于規(guī)定對應(yīng)媒體數(shù)據(jù)塊1006的來自調(diào)度器306的發(fā)送請求應(yīng)有的閾值優(yōu)先級,則調(diào)度器306構(gòu)成并發(fā)送一發(fā)送請求604到對應(yīng)的發(fā)送器304作為后續(xù)發(fā)送908的一部分,試圖便于向發(fā)送器提供足夠的發(fā)送請求604(每個具有關(guān)聯(lián)的優(yōu)先級),使得通過在此時隙內(nèi)將所有容納在其輸出帶寬602內(nèi)的最高優(yōu)先級數(shù)據(jù)發(fā)送到客戶機602,發(fā)送器304能在此時隙內(nèi)充分并恰當(dāng)?shù)乩闷漭敵鰩?02。
在另選的發(fā)送請求區(qū)1504的媒體數(shù)據(jù)塊1006(2,3,和4)中,具有最早數(shù)據(jù)1508/1510/1512及足夠高的對應(yīng)發(fā)送優(yōu)先級的對應(yīng)媒體數(shù)據(jù)塊1006被選作用于發(fā)送請求604的目標(biāo)。包括另選的發(fā)送請求區(qū)域1504的選中的媒體數(shù)據(jù)塊1006的下一個未發(fā)送的媒體數(shù)據(jù)子塊1008的一個或多個媒體數(shù)據(jù)子塊1008由發(fā)送請求604規(guī)定發(fā)送到客戶機206。以此方式,調(diào)度器306能貢獻(xiàn)于來自發(fā)送器306的圖3-6的鏈路314的飽和程度,同時保持客戶機206的接收緩存器盡可能滿(如存儲約2個媒體數(shù)據(jù)塊1006或10秒媒體。
朝前看區(qū)域1502能有助于減少等待延遲時間。用保留和/或預(yù)加載實施朝前看區(qū)域1502也使媒體數(shù)據(jù)(圖3的)海量存儲310在穩(wěn)鍵及能力方面比RAM差得不多。
調(diào)度器306通過力圖確保未來需要的媒體數(shù)據(jù)塊1006出現(xiàn)在相關(guān)發(fā)送器304(例如由散列分條媒體數(shù)據(jù)分布方法所確定的),在朝前看區(qū)域1502保持保留/預(yù)加載區(qū)。調(diào)度器306使用朝前看過程(如朝前看請求,朝前看操作等),使發(fā)送器304能保留(需要時預(yù)加載),媒體數(shù)據(jù)塊1006在朝前看區(qū)域1502,下面參考圖16進(jìn)一步描述朝前看保留和/或預(yù)加載的諸方面。
應(yīng)該注意,示出的數(shù)據(jù)和塊類型,消息區(qū)域等的集合僅是示例的描述實施,其他配置也另選地可以實施。此外,對實際上動態(tài)改變的示例配置,示出的集合實際上表示時間上的一個快照。例如,當(dāng)由于完成發(fā)送當(dāng)前塊1506到客戶機206,當(dāng)前塊1506沿媒體數(shù)據(jù)資產(chǎn)1004移動時,早期媒體數(shù)據(jù)1508,較晚的早期媒體1510,和更晚的早期媒體數(shù)據(jù)1512沿媒體數(shù)據(jù)資產(chǎn)移動。而且,另選的發(fā)送請求區(qū)域1504能覆蓋朝前看區(qū)域1502。此外,這些區(qū)域能從2個擴展到16個來自當(dāng)前塊1506的媒體數(shù)據(jù)塊1006;然而2到8媒體數(shù)據(jù)塊看來是足夠了。
圖16是示例的時序圖1600,它包括調(diào)度器306和發(fā)送器304之間的朝前看過程。發(fā)送器304包括有效地用作在對應(yīng)的媒體數(shù)據(jù)塊1006(圖16中未示出)上的保留鎖定的塊使用計數(shù)(BUC)1602。如上所述,給定的發(fā)送器304由于其設(shè)備302的存儲器限止,可能不(也許不能夠)在該設(shè)備302的RAM中保持散列(1108)到給定發(fā)送器304的所有媒體數(shù)據(jù)塊1006。因此,這些媒體數(shù)據(jù)塊1006的至少某些在設(shè)備302在存儲器404和媒體數(shù)據(jù)的海量存儲310之間流轉(zhuǎn)。如上注意,可以清除(i)不普遍或最不普遍的和(ii)未鎖定的媒體數(shù)據(jù)塊1006。
當(dāng)一個或多個調(diào)度器306保存某些媒體數(shù)據(jù)塊1006時,它們被鎖定,能使用朝前看請求1604(如一類協(xié)議消息504)實現(xiàn)此保存。簡言之,朝前看請求1604增量塊使用計數(shù)器1602,且當(dāng)其對應(yīng)的塊使用計數(shù)器1602非零時,媒體數(shù)據(jù)塊1006不能被清除。因而對每個媒體數(shù)據(jù)塊1006存在對應(yīng)的塊使用計數(shù)器1602。然而,塊使用計數(shù)器能另選地應(yīng)用在不同于媒體數(shù)據(jù)塊1006的媒體數(shù)據(jù)粒度級。
如下描述朝前看過程的一個例子在任何調(diào)度器306在其對應(yīng)的媒體數(shù)據(jù)塊1006上請求朝前看之前,塊使用計數(shù)器1602等于0。因此在時間t=0,塊使用計數(shù)器1602(t=0)示作等于0。當(dāng)調(diào)度器306準(zhǔn)備好在特定媒體數(shù)據(jù)塊1006朝前看時[如朝前看區(qū)域1502的媒體數(shù)據(jù)塊1006(7)],調(diào)度器306構(gòu)成識別關(guān)注的媒體數(shù)據(jù)塊1006朝前看請求1604,并將其發(fā)送給負(fù)責(zé)排序和發(fā)送該媒體數(shù)據(jù)塊1006的發(fā)送器304。
響應(yīng)于接收該朝前看請求1604,發(fā)送器304增量了塊使用計數(shù)器1602。因此,在時間=t1,塊使用計數(shù)1602(t=t1)示出等于1。而且發(fā)送器304執(zhí)行朝前看操作1606。發(fā)送器304校驗/判斷被識別的媒體數(shù)據(jù)塊1006是否已在存儲器404的RAM部分中。若是,發(fā)送器304已完成朝前看操作1606(一旦在完成朝前看操作1606之前,之后或期間,塊使用計數(shù)器已被遞增。
另一方面,若識別媒體數(shù)據(jù)塊1006尚未在存儲器404的RAM部分,除了遞增塊使用計數(shù)器1602之外,發(fā)送器304使得被識別的媒體數(shù)據(jù)塊從媒體數(shù)據(jù)的海量存儲310加載到RAM。在確保媒體數(shù)據(jù)塊1006出現(xiàn)在RAM之后(如通過驗證其存在和/或通過加載它),發(fā)送器304能可任選地通知調(diào)度器關(guān)于成功的鎖定。另選地,調(diào)度器306能配置成足夠早地發(fā)送朝前看請求1604,使得相對無關(guān)地呈現(xiàn)此確認(rèn)。
在某個時間周期之后,調(diào)度器306發(fā)送一發(fā)送請求1608(如發(fā)送請求604)到發(fā)送器304,后者通過一個或多個媒體數(shù)據(jù)子塊1008規(guī)定較早識別的媒體數(shù)據(jù)塊1006。由于媒體數(shù)據(jù)塊1006出現(xiàn)并憑借塊使用計數(shù)器1602鎖定,發(fā)送器304能發(fā)送被請求的一個或多個媒體數(shù)據(jù)子塊1008到指定客戶機206(如1610指出)而沒有可能對媒體數(shù)據(jù)加載產(chǎn)生的延時。
在重試周期1612之后(如在調(diào)度器306確認(rèn)發(fā)送成功之后),調(diào)度器306發(fā)送一朝前看取消1614(例如另外類型的協(xié)議消息504)到發(fā)送器。朝前看取消1614識別不再需要由調(diào)度器306保留的媒體數(shù)據(jù)塊1006。響應(yīng)朝前看取消1614,發(fā)送器304遞減塊使用計數(shù)器1602。在此例中,無其他調(diào)度器將一鎖定放在識別的媒體數(shù)據(jù)塊1006上。因此,在時間=t2時,塊使用計數(shù)器1602(t=t2)示出為又等于0,這里t2比t1晚。當(dāng)塊使用計數(shù)器1602等于0,對應(yīng)的媒體數(shù)據(jù)塊可考慮按照給定的替換策略(例如根據(jù)普遍性)予以清除(例如與不同的媒體數(shù)據(jù)塊1006交換位置)。
盡管調(diào)度器306實際上請求媒體數(shù)據(jù)子塊1008每次從一個發(fā)送器304發(fā)送,調(diào)度器306具有若干任選項,關(guān)于何時/是否在多個發(fā)送器304上鎖定一媒體數(shù)據(jù)塊1006;或者在請求媒體數(shù)據(jù)子塊1008發(fā)送的時間到達(dá)時調(diào)度器306實際上沒有多個發(fā)送器304作為多個發(fā)送選項。而且,當(dāng)在調(diào)度器306在鎖定的媒體數(shù)據(jù)塊1006中進(jìn)行初始媒體數(shù)據(jù)子塊1008級的發(fā)送請求902時,調(diào)度器306能在它用已鎖定媒體數(shù)據(jù)塊1006的發(fā)送器304之間任意選擇。
雖然由于初始和中間閾值優(yōu)先級904和910的約束,后續(xù)發(fā)送請求908可以限制到特定發(fā)送器304,在每個時隙的開始處初始發(fā)送請求902具有在媒體數(shù)據(jù)塊1006已知被請求調(diào)度器306鎖定的那些發(fā)送器中任意選擇的發(fā)送器304。在媒體數(shù)據(jù)不是傳送很多的低負(fù)載情況,調(diào)度器306能選擇放棄鎖定所有可能的媒體數(shù)據(jù)塊1006任選項,且在任何情況,即使有更多的任選項可用,調(diào)度器306能自己限止只鎖定2個(或其他個數(shù))媒體數(shù)據(jù)塊1006。例如,可實施此不利用所有鎖定可能性的選擇,以避免總體上鎖定太多的媒體數(shù)據(jù)并為了減少協(xié)議的總開銷。
應(yīng)該注意,這里的某些描述[如針對根據(jù)普遍性的媒體數(shù)據(jù)復(fù)制,針對媒體數(shù)據(jù)散列分配(如分條),針對媒體數(shù)據(jù)組織等的描述]。也有益地應(yīng)用,和/或較好地結(jié)合中央集中器類型的媒體數(shù)據(jù)的傳播來實施。
包括各個設(shè)備302的媒體數(shù)據(jù)傳播體系結(jié)構(gòu)202能包括各種處理器可訪問的媒體和/或可以與那樣的處理器可訪問媒體通訊。處理器可訪問媒體能是可由計算或其他(如電子)設(shè)備訪問的任何媒體。因此,那樣的處理器可訪問媒體能包括易失性和非易失性媒體,可移動及不可移動媒體,存儲(如存儲器404和310)和和傳輸(如鏈路208,210,314等)媒體,它們的某種組合等。任何那樣的媒體可以包括處理器可執(zhí)行指令。
實際上,分布式發(fā)送媒體數(shù)據(jù)的實施能以處理器可執(zhí)行指令的一般情況描述,通常,處理器可執(zhí)行指令包括例行程序,程序,協(xié)議,對象,接口,組件,數(shù)據(jù)結(jié)構(gòu)等(如以應(yīng)用軟件/模塊的形式),它們執(zhí)行和/或使能特定任務(wù)和/或?qū)嵤┨囟ǖ某橄髷?shù)據(jù)類型。如這里某些實施所述,分布式發(fā)送媒體數(shù)據(jù)也能在分布式處理環(huán)境實現(xiàn),其中任務(wù)由通過通訊鏈路和/或網(wǎng)絡(luò)連結(jié)的遠(yuǎn)程鏈接處理設(shè)備完成。尤其,但不是必須的,在分布式計算環(huán)境中,處理器可執(zhí)行指令能位于分開的存儲媒體,由不同處理器執(zhí)行,和/經(jīng)傳輸媒體傳播。
圖2-16的設(shè)備,動作,方面,特征,過程,組件等在分成多個框的圖中示出。然而,圖2-16描述和/或示出的次序,互連,互相關(guān)系,布局等不試圖構(gòu)成限制,且任何數(shù)目的塊能以任何方式修改,組合,重新安排,增擴,略去等來實現(xiàn)用于分布式發(fā)送媒體數(shù)據(jù)的一個或多個系統(tǒng),方法,設(shè)備,過程,媒體,裝置,服務(wù)器,安排等。此外,雖然這里的描述包括對特定實施方法的引用,示出和/或描述的實施方法能以任何合適的硬件,軟件,固件或其組合并使用任何合適的計算體系結(jié)構(gòu),網(wǎng)絡(luò)單元和/或組織,視頻編碼標(biāo)準(zhǔn),多播和單播方案等來實施。
雖然以針對結(jié)構(gòu),邏輯,算法,和功能特征和/或圖表的語言描述了系統(tǒng),媒體,設(shè)備,方法,過程,裝置,技術(shù),方案,方法,過程,安排,和其他實施方法,可以理解,以所附的權(quán)利要求定義的本發(fā)明不一定限于所描述的特定特征或圖示。相反,特定的特征和圖示被看成實施本發(fā)明的專利范圍的示例方式。
權(quán)利要求
1.一個系統(tǒng),其特征在于包括包括與一客戶機相關(guān)聯(lián)并負(fù)責(zé)為發(fā)送到該客戶機的媒體數(shù)據(jù)流服務(wù)的調(diào)度器的多個調(diào)度器,所述調(diào)度器適應(yīng)于構(gòu)成一發(fā)送請求,所述發(fā)送請求指定所述用戶為所述媒體數(shù)據(jù)流的媒體數(shù)據(jù)部分的目的地;和包括與包括所述媒體數(shù)據(jù)部分的媒體數(shù)據(jù)相關(guān)聯(lián)的發(fā)送器的多個發(fā)送器,所述發(fā)送器適應(yīng)于響應(yīng)于所述發(fā)送請求將所述媒體數(shù)據(jù)部分發(fā)送到所述客戶機。
2.如權(quán)利要求1的系統(tǒng),其特征在于還包括媒體數(shù)據(jù)的海量存儲;其中所述發(fā)送器還適應(yīng)于從所述媒體數(shù)據(jù)的海量存儲獲取與所述發(fā)送器相關(guān)聯(lián)的媒體數(shù)據(jù)的多個部分。
3.如權(quán)利要求1的系統(tǒng),其特征在于所述調(diào)度器和所述發(fā)送器在單個設(shè)備上運作。
4.如權(quán)利要求1的系統(tǒng),其特征在于所述調(diào)度器在第一設(shè)備上運作,而所述發(fā)送器在第二設(shè)備上運作。
5.如權(quán)利要求4的系統(tǒng),其特征在于還包括通過網(wǎng)絡(luò)耦合到所述第二設(shè)備和所述客戶機的交換機;其中所述發(fā)送器還適應(yīng)于通過所述交換機經(jīng)網(wǎng)絡(luò)將所述媒體數(shù)據(jù)部分發(fā)送到所述客戶機而不必通過所述第一設(shè)備路由所述媒體數(shù)據(jù)部分。
6.如權(quán)利要求4的系統(tǒng),其特征在于還包括耦合到所述第二設(shè)備和所述客戶機的第一交換機;和耦合到所述第一設(shè)備的第二交換機;其中所述發(fā)送器還適應(yīng)于通過所述第一交換機發(fā)送所述媒體數(shù)據(jù)部分到所述客戶機,而所述調(diào)度器還適應(yīng)于通過第二交換機發(fā)送所述發(fā)送請求到所述發(fā)送器。
7.如權(quán)利要求4的系統(tǒng),其特征在于,另一個調(diào)度器在所述第二設(shè)備上運作,而另一個發(fā)送器在所述第一設(shè)備上運作;且其中所述其它調(diào)度器與另一個客戶機關(guān)聯(lián),且所述其它發(fā)送器與其它的媒體數(shù)據(jù)相關(guān)聯(lián)。
8.如權(quán)利要求1的系統(tǒng),其特征在于,所述媒體數(shù)據(jù)流對應(yīng)于由所述系統(tǒng)存儲的媒體數(shù)據(jù)段,且其中所述發(fā)送器在第一設(shè)備上運作;其中多個發(fā)送器還包括在第二設(shè)備上運作的另一個發(fā)送器,所述與其它媒體數(shù)據(jù)相關(guān)聯(lián)的其它發(fā)送器包括另一個媒體數(shù)據(jù)部分;和其中所述媒體數(shù)據(jù)部分和其他媒體數(shù)據(jù)部分均是所述媒體數(shù)據(jù)段的各部分。
9.如權(quán)利要求8的系統(tǒng),其特征在于,所述調(diào)度器還適應(yīng)于構(gòu)成另一個發(fā)送請求,它將所述客戶機指定為所述媒體數(shù)據(jù)流的所述其他媒體數(shù)據(jù)部分的目的地;以及其中響應(yīng)于所述其他發(fā)送請求,所述其他發(fā)送器還適應(yīng)于發(fā)送所述其他媒體數(shù)據(jù)部分到所述客戶機。
10.如權(quán)利要求1的系統(tǒng),其特征在于,還包括多個設(shè)備;其中多個發(fā)送器的對應(yīng)發(fā)送器在多個設(shè)備的對應(yīng)設(shè)備上運作,且對應(yīng)設(shè)備存儲對應(yīng)發(fā)送器對應(yīng)與其關(guān)聯(lián)的并適應(yīng)于將其發(fā)送到各客戶機的對應(yīng)的媒體數(shù)據(jù)部分。
11.一個系統(tǒng),其特征在于包括具有第一發(fā)送器的第一設(shè)備,它適應(yīng)于存儲媒體數(shù)據(jù)段的第一媒體數(shù)據(jù)塊,并發(fā)送所述第一媒體數(shù)據(jù)塊到對應(yīng)于發(fā)送請求的客戶機;具有第二發(fā)送器的第二設(shè)備,它適應(yīng)于存儲所述媒體數(shù)據(jù)段的第二媒體數(shù)據(jù)塊,并發(fā)送所述第二媒體數(shù)據(jù)塊到對應(yīng)于發(fā)送請求的客戶機;和適應(yīng)于向第一發(fā)送器發(fā)送第一發(fā)送請求并向第二發(fā)送器發(fā)送第二發(fā)送請求的調(diào)度器,所述第一發(fā)送請求指定目標(biāo)客戶并規(guī)定第一媒體數(shù)據(jù)塊而所述第二發(fā)送請求指定目的地客戶機并規(guī)定第二媒體數(shù)據(jù)塊。
12.如權(quán)利要求11的系統(tǒng),其特征在于,在所述第一設(shè)備處所述第一媒體數(shù)據(jù)存儲在其隨機存儲器(RAM)中,而在第二設(shè)備處所述第二媒體數(shù)據(jù)塊存儲在其RAM中。
13.如權(quán)利要求11的系統(tǒng),其特征在于,所述調(diào)度器在第一設(shè)備、第二設(shè)備、或第三設(shè)備的至少一個處運作。
14.如權(quán)利要求11的系統(tǒng),其特征在于,所述第一發(fā)送器還適應(yīng)于發(fā)送所述第一媒體數(shù)據(jù)塊到所述目的地客戶機,而不必通過所述調(diào)度器在其上運作的設(shè)備定向所述第一媒體數(shù)據(jù)塊。
15.如權(quán)利要求11的系統(tǒng),其特征在于,所述第一發(fā)送器還適應(yīng)于用具有包括所述目的地客戶機的網(wǎng)址的目的地地址的分組將所述第一媒體數(shù)據(jù)塊發(fā)送到所述目的地客戶機。
16.如權(quán)利要求11的系統(tǒng),其特征在于,還包括另一個調(diào)度器,它適應(yīng)于向所述第一發(fā)送器發(fā)送第三發(fā)送請求并向第二發(fā)送器發(fā)送第四發(fā)送請求,所述第三發(fā)送請求指定另一個的目的地客戶機并規(guī)定所述第一媒體數(shù)據(jù)塊,而所述第四發(fā)送請求指定其它目的地客戶機并規(guī)定所述第二媒體數(shù)據(jù)塊。
17.包含處理器可執(zhí)行指令的一個或多個處理器可訪問媒體,處理器可執(zhí)行指令在執(zhí)行時引導(dǎo)系統(tǒng)完成下列動作從第一設(shè)備發(fā)送一發(fā)送請求到第二設(shè)備,所述發(fā)送請求指定目標(biāo)客戶機并規(guī)定媒體數(shù)據(jù)部分;和響應(yīng)所述發(fā)送請求,從所述第二設(shè)備向所述目的地客戶機發(fā)送所述規(guī)定的媒體數(shù)據(jù)部分。
18.如權(quán)利要求17的一個或多個處理器可訪問媒體,其特征在于,還包括處理器可執(zhí)行指令,后者在執(zhí)行時還引導(dǎo)系統(tǒng)完成下列動作從所述第一設(shè)備發(fā)送另一個發(fā)送請求到所述第二設(shè)備,所述其它發(fā)送請求指定所述目的地客戶機并規(guī)定另一個媒體數(shù)據(jù)部分;和響應(yīng)所述其它的發(fā)送請求從所述第二設(shè)備發(fā)送所述另外的規(guī)定媒體數(shù)據(jù)部分到所述目的地客戶機。
19.如權(quán)利要求17的一個或多個處理器可訪問媒體,其特征在于,還包括處理器可執(zhí)行指令,后者在執(zhí)行時還引導(dǎo)系統(tǒng)實行下列動作,包括從所述第一設(shè)備發(fā)送另一個發(fā)送請求到所述第三設(shè)備,所述其它的發(fā)送請求指定所述目的地客戶機并規(guī)定另一個媒體數(shù)據(jù)部分;和響應(yīng)于所述其他發(fā)送請求,從所述第三設(shè)備發(fā)送所述其他規(guī)定的媒體數(shù)據(jù)部分到所述的目的地客戶機。
20.如權(quán)利要求19的一個或多個處理器可訪問媒體,其特征在于,還包括處理器可執(zhí)行指令,其中所述規(guī)定的媒體數(shù)據(jù)部分和其它規(guī)定的媒體數(shù)據(jù)部分均是單個媒體數(shù)據(jù)段的部分。
21.如權(quán)利要求17的一個或多個處理器可訪問媒體,其特征在于,還包括處理器可執(zhí)行指令,后者在執(zhí)行時還引導(dǎo)系統(tǒng)實行下列動作,包括從第三設(shè)備發(fā)送另一個的目標(biāo)請求到第二設(shè)備,所述其它的發(fā)送請求指定一個目的地客戶機并規(guī)定所述媒體數(shù)據(jù)部分;和響應(yīng)所述其它發(fā)送請求從所述第二設(shè)備向其他目的地客戶機發(fā)送所述規(guī)定的媒體數(shù)據(jù)部分。
22.如權(quán)利要求17的一個或多個處理器可訪問媒體,其特征在于,還包括處理器可執(zhí)行指令,后者在執(zhí)行時還引導(dǎo)系統(tǒng)實行下列動作,包括從第三設(shè)備發(fā)送另一個發(fā)送請求到第四設(shè)備,所述其它發(fā)送請求指定另一個目的地客戶機并規(guī)定另一個媒體數(shù)據(jù)部分;和響應(yīng)所述其它發(fā)送請求從所述第四設(shè)備向其他目的地客戶機發(fā)送所述其它規(guī)定的媒體數(shù)據(jù)部分。
23.如權(quán)利要求17的一個或多個處理器可訪問媒體,其特征在于,還包括處理器可執(zhí)行指令,后者在執(zhí)行時還引導(dǎo)系統(tǒng)實行下列動作,包括在第一設(shè)備處從目的地客戶機接收一命令,以開始媒體數(shù)據(jù)資產(chǎn)流傳送,所述媒體數(shù)據(jù)資產(chǎn)包括媒體數(shù)據(jù)部分。
24.如權(quán)利要求23的一個或多個處理器可訪問媒體,其特征在于,還包括處理器可執(zhí)行指令,后者在執(zhí)行時還引導(dǎo)系統(tǒng)進(jìn)一步實行下列動作,包括在對應(yīng)于所述接收命令的所述第一設(shè)備處調(diào)度媒體數(shù)據(jù)部分,用于發(fā)送到所述目的地客戶機。
25.如權(quán)利要求24的一個或多個處理器可訪問媒體,其特征在于,還包括處理器可執(zhí)行指令,后者在執(zhí)行時還引導(dǎo)系統(tǒng)進(jìn)一步實行下列動作,包括從所述第一設(shè)備發(fā)送多個發(fā)送請求的對應(yīng)發(fā)送請求到多個設(shè)備的對應(yīng)設(shè)備,每個對應(yīng)設(shè)備存儲構(gòu)成至少部分所述媒體數(shù)據(jù)資產(chǎn)的多個媒體數(shù)據(jù)部分的對應(yīng)媒體數(shù)據(jù)部分。
26.如權(quán)利要求17的一個或多個處理器可訪問媒體,其特征在于,發(fā)送一發(fā)送請求的動作包括下述動作從在所述第一設(shè)備上運作的調(diào)度器發(fā)送一發(fā)送請求,所述調(diào)度器與指定的目標(biāo)設(shè)備相關(guān)聯(lián),并負(fù)責(zé)對在所述系統(tǒng)處指定的目的地設(shè)備接收的媒體數(shù)據(jù)請求提供服務(wù)。
27.如權(quán)利要求17的一個或多個處理器可訪問媒體,其特征在于,還包括處理器可執(zhí)行指令,后者在執(zhí)行時還引導(dǎo)系統(tǒng)進(jìn)一步實行下列動作,包括在第二設(shè)備的發(fā)送器處接收所述發(fā)送請求,所述發(fā)送器與所述規(guī)定的媒體數(shù)據(jù)部分相關(guān)聯(lián)并負(fù)責(zé)高速緩存規(guī)定的媒體數(shù)據(jù)部分到所述第二設(shè)備處的隨機存儲器(RAM)中,并響應(yīng)導(dǎo)向那里的發(fā)送請求,將所述規(guī)定的媒體數(shù)據(jù)部分發(fā)送到客戶機。
28.如權(quán)利要求17的一個或多個處理器可訪問媒體,其特征在于,包括所述處理器可執(zhí)行指令,其中所述規(guī)定的媒體數(shù)據(jù)部分包括媒體數(shù)據(jù)段的媒體數(shù)據(jù)塊的一個或多個媒體數(shù)據(jù)子塊,所述媒體數(shù)據(jù)塊高速緩存在所述第二設(shè)備的隨機存儲器(RAM)中。
29.如權(quán)利要求17的一個或多個處理器可訪問媒體,其特征在于,所述一個或多個處理器可訪問媒體包括(i)一個或多個存儲媒體和(ii)一個或多個傳輸媒體中的至少一個。
30.用于構(gòu)筑分布式發(fā)送媒體數(shù)據(jù)的安排,其特征在于所述安排包括用于調(diào)度擬發(fā)送到與調(diào)度器裝置相關(guān)聯(lián)的多個客戶機的媒體數(shù)據(jù)的調(diào)度器裝置,所述調(diào)度器裝置包括用于請求發(fā)送所述媒體數(shù)據(jù)到多個客戶機的發(fā)送請求裝置;和用于按由所述調(diào)度器裝置調(diào)度的那樣發(fā)送媒體數(shù)據(jù)部分到客戶機的發(fā)送器裝置,所述發(fā)送器裝置包括用于將媒體數(shù)據(jù)的被分布部分作為媒體數(shù)據(jù)部分高速緩存的高速緩存裝置,其中所述發(fā)送器裝置響應(yīng)于從所述發(fā)送請求裝置接收的發(fā)送請求發(fā)送來自媒體數(shù)據(jù)的被分布部分的媒體數(shù)據(jù)部分。
31.如權(quán)利要求30的安排,其特征在于,還包括用于按由所述調(diào)度器裝置調(diào)度的那樣發(fā)送對應(yīng)的媒體數(shù)據(jù)部分到客戶機的多個對應(yīng)的發(fā)送器裝置,所述多個對應(yīng)的發(fā)送器裝置包括多個對應(yīng)的高速緩存裝置,用于將對應(yīng)的媒體數(shù)據(jù)的被分布部分緩存為它們對應(yīng)的媒體數(shù)據(jù)部分,其中所述多個對應(yīng)的發(fā)送器裝置的對應(yīng)發(fā)送器裝置響應(yīng)于從所述發(fā)送請求裝置接收的對應(yīng)發(fā)送請求,發(fā)送來自它們對應(yīng)的媒體數(shù)據(jù)的被分布部分的它們對應(yīng)的媒體數(shù)據(jù)部分。
32.如權(quán)利要求31的安排,其特征在于,來自所述多個發(fā)送器裝置的每個對應(yīng)的發(fā)送器裝置的每個的對應(yīng)媒體數(shù)據(jù)部分的對應(yīng)媒體數(shù)據(jù)部分被發(fā)送到唯一的客戶機,以構(gòu)成媒體數(shù)據(jù)資產(chǎn)的至少一部分。
33.如權(quán)利要求30的安排,其特征在于,還包括用于調(diào)度擬發(fā)送到每個對應(yīng)的調(diào)度器裝置與其對應(yīng)相關(guān)的對應(yīng)的多個客戶機的多個對應(yīng)的調(diào)度器裝置,所述多個對應(yīng)的調(diào)度器裝置的每個對應(yīng)的調(diào)度器裝置包括多個對應(yīng)的發(fā)送請求裝置的一個對應(yīng)的發(fā)送請求裝置,用于從發(fā)送器裝置請求發(fā)送所述媒體數(shù)據(jù)到它們對應(yīng)的多個客戶機的每一個。
34.如權(quán)利要求30的安排,其特征在于,所述安排包括下列的至少一個(i)一個或多個處理機可訪問媒體和(ii)至少一個設(shè)備。
35.如權(quán)利要求30的安排,其特征在于,所述發(fā)送請求裝置包括用于構(gòu)成發(fā)送請求的裝置,其中每個發(fā)送請求包括多個客戶機的指定的一個目的地客戶機,和給定的發(fā)送請求指向的所述發(fā)送器裝置的所述媒體數(shù)據(jù)部分的一個規(guī)定的媒體數(shù)據(jù)部分。
36.一個或多個處理器可訪問媒體,包括處理器可執(zhí)行指令,后者在執(zhí)行時使得系統(tǒng)在多個設(shè)備的對應(yīng)設(shè)備上分布媒體數(shù)據(jù)段的對應(yīng)媒體數(shù)據(jù)塊在所述多個設(shè)備的對應(yīng)設(shè)備上建立對應(yīng)的發(fā)送器,每個對應(yīng)的發(fā)送器能夠發(fā)送所述諸媒體數(shù)據(jù)塊的對應(yīng)媒體數(shù)據(jù)塊;并在所述多個設(shè)備的至少一個設(shè)備上建立一調(diào)度器,所述調(diào)度器適應(yīng)于請求將來自所述對應(yīng)發(fā)送器的對應(yīng)媒體數(shù)據(jù)塊發(fā)送到目的地客戶機;其中所述對應(yīng)的發(fā)送器能夠不使用所述調(diào)度器將所述對應(yīng)的媒體數(shù)據(jù)塊發(fā)送到所述目的地客戶機。
37.如權(quán)利要求36的一個或多個包括處理器可執(zhí)行指令的處理器可訪問媒體,其特征在于,所述對應(yīng)的發(fā)送器還能夠不使用所述調(diào)度器的至少一個設(shè)備,發(fā)送對應(yīng)的媒體數(shù)據(jù)塊到所述的目的地客戶機。
38.如權(quán)利要求36的一個或多個處理器可訪問媒體,其特征在于,包括處理器可執(zhí)行指令,后者在執(zhí)行時引起所述系統(tǒng)創(chuàng)建多個調(diào)度器,多個調(diào)度器的至少一個調(diào)度器出現(xiàn)在多個設(shè)備的多個設(shè)備上;且其中多個調(diào)度器的每個調(diào)度器適應(yīng)于請求將來自對應(yīng)發(fā)送器的所述對應(yīng)的媒體數(shù)據(jù)塊發(fā)送到不同的目的地客戶機。
39.如權(quán)利要求38的一個或多個處理器可訪問媒體,包括處理器可執(zhí)行指令其特征在于,所述對應(yīng)的發(fā)送器還能夠發(fā)送所述對應(yīng)的媒體數(shù)據(jù)塊到對應(yīng)于從所述多重調(diào)度器的每個調(diào)度器接收的發(fā)送請求的不同的目的地客戶機。
40.如權(quán)利要求36的一個或多個處理器可訪問媒體,其特征在于,包括處理器可執(zhí)行指令,后者在執(zhí)行時引起所述系統(tǒng)在多個設(shè)備的對應(yīng)諸對應(yīng)設(shè)備上分布另一個媒體數(shù)據(jù)段的對應(yīng)媒體數(shù)據(jù)塊;其中每個對應(yīng)的發(fā)送器還能發(fā)送所述其它媒體數(shù)據(jù)段的所述諸媒體數(shù)據(jù)塊的一對應(yīng)媒體數(shù)據(jù)塊,且所述調(diào)度器適應(yīng)于請求將來自所述對應(yīng)諸發(fā)送器的其他媒體數(shù)據(jù)段的所述諸對應(yīng)媒體數(shù)據(jù)塊發(fā)送到另一個目的地客戶機。
全文摘要
媒體數(shù)據(jù)分布在多個設(shè)備中,且形成非集中式的媒體數(shù)據(jù)傳輸體系結(jié)構(gòu)。多個對應(yīng)的發(fā)送器與媒體數(shù)據(jù)的多個對應(yīng)的分布式部分相關(guān)聯(lián)。多個調(diào)度器與諸客戶機相關(guān)聯(lián),并能調(diào)度對它們的媒體數(shù)據(jù)的發(fā)送。調(diào)度器構(gòu)成發(fā)送請求,它規(guī)定特定的媒體數(shù)據(jù)部分并指定目的地客戶機。這些發(fā)送請求結(jié)合規(guī)定的每個發(fā)送請求的特定媒體數(shù)據(jù)部分,按照關(guān)聯(lián)的對應(yīng)分布部分被發(fā)送到多個發(fā)送器。發(fā)送器能將發(fā)送請求的規(guī)定的特定媒體數(shù)據(jù)部分發(fā)送到指定的目的地客戶機而不必通過該調(diào)度器路由。在描述的實施方法中,發(fā)送器和調(diào)度器出現(xiàn)在多個設(shè)備的每個設(shè)備上。
文檔編號H04N7/173GK1612610SQ200410085600
公開日2005年5月4日 申請日期2004年10月9日 優(yōu)先權(quán)日2003年10月10日
發(fā)明者D·L·格林, J·A·巴爾德文, P·T·巴雷特 申請人:微軟公司