專利名稱::媒體服務(wù)器的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明有關(guān)一種媒體隨選系統(tǒng),特別是該系統(tǒng)中的媒體服務(wù)器,以一種即時(shí)且隨選隨傳的方式,來傳送儲存于該服務(wù)器內(nèi)的多種數(shù)字位元數(shù)據(jù)流,與本發(fā)明有密切關(guān)系的是媒體服務(wù)器,它可用于改進(jìn)多媒體數(shù)據(jù)傳送系統(tǒng),以服務(wù)于很大數(shù)量的用戶。相互對話式的多媒體服務(wù)如隨選視訊、遠(yuǎn)端購物、數(shù)字電視廣播及遠(yuǎn)距教學(xué)已經(jīng)是時(shí)代發(fā)展的趨勢。而其中,多媒體服務(wù)器,已逐漸變成該服務(wù)的主要技術(shù)。媒體服務(wù)器,就如一個(gè)引擎一樣,從磁盤儲存裝置,將多媒體數(shù)據(jù)流讀出,然后以一適當(dāng)速率,將這些數(shù)據(jù)流傳至用戶端,多媒體數(shù)據(jù),為一些數(shù)字位元數(shù)據(jù)流,如影像、聲音及其它不同型式的數(shù)據(jù),通常每一個(gè)多媒體數(shù)據(jù)流都以一定的服務(wù)質(zhì)量來傳送,如平均傳送速率或最大延遲差異,而相互對話的多媒體系統(tǒng)中,最重要的效能指標(biāo),即是同一時(shí)間內(nèi),能支援的即時(shí)多媒體數(shù)據(jù)流的最大數(shù)目,一媒體服務(wù)器,通常必須以一固定速率傳送數(shù)據(jù)流,并且能維持同一時(shí)間服務(wù),最多的數(shù)據(jù)流個(gè)數(shù),然而,有一些環(huán)節(jié),限制了數(shù)據(jù)流的讀取與傳送,如儲存裝置輸入/輸出限制,網(wǎng)絡(luò)頻寬限制及中央處理器的處理能力等。圖1表示一個(gè)先前技術(shù)范例,其一多媒體傳送系統(tǒng),所用的視訊服務(wù)器10,包含一個(gè)微處理機(jī)12及其所連接的存儲器14、一儲存裝置控制器16,用以控制多媒體數(shù)據(jù),從磁盤儲存裝置18的讀取,裝置18亦可以是一多磁盤機(jī)陣列,服務(wù)器10亦包含一個(gè)網(wǎng)絡(luò)控制器20,藉此可以將數(shù)據(jù)送到數(shù)個(gè)用戶端,微處理機(jī)12、儲存裝置控制器16及網(wǎng)絡(luò)控制器20,是由一系統(tǒng)總線22所連接,網(wǎng)絡(luò)控制器20,由網(wǎng)絡(luò)接收用戶端的視訊存取要求,并將此訊息由總線22傳于微處理機(jī)12,微處理機(jī)12以一磁盤排程方法,來產(chǎn)生存取指令,然后將這些指令,放至儲存裝置控制器16,以便從儲存裝置18將數(shù)據(jù)流讀取出來,服務(wù)器10可以設(shè)定可同時(shí)存取多個(gè)數(shù)據(jù)流,服務(wù)器10的詳細(xì)操作可參考,F(xiàn).A.Tobagi,andJ.Pang,″Starworks-AVideoAplicationServer,″IEEECOMPCON,Spring′93,pp.4-11,及W.TsengandJ.Huang,″AHightPerformanceVideoServerForKaraokeSystems,″IEEETransactionsonConsumerElectronics,Vol.40,No.3,August1994,pp.329-336。圖1中服務(wù)器10的問題,在于它無法同時(shí)支援來自多位用戶,對即時(shí)影像讀取的要求,服務(wù)器10通常較適用于較少數(shù)量用戶的個(gè)人電腦或工作站的區(qū)域網(wǎng)上。圖2說明了一個(gè)先前技術(shù)的結(jié)構(gòu)。該結(jié)構(gòu)為圖1中的服務(wù)器10,以達(dá)到同時(shí)間內(nèi)數(shù)據(jù)流存取及可支援用戶數(shù)的增加。圖2的服務(wù)器網(wǎng)絡(luò),包含了服務(wù)器10-i中的m端及其所連接的交換網(wǎng)絡(luò)24。交換網(wǎng)絡(luò)24與用戶26-i的n端連接。交換網(wǎng)絡(luò)24,依據(jù)用戶要求將服務(wù)器10-i的輸出傳送至用戶26-i,因此同一時(shí)間內(nèi),可支援用戶的數(shù)量稍有增加。不過這些及其他以交換為基礎(chǔ)的可放大式服務(wù)器,通常無法提供可供大量用戶使用的多媒體分配系統(tǒng)。另一種先前曾被提出的技術(shù),在USPatentNo.5,528,435,issuedMay21,1996toM.H.Anderson,assignedtoMicropolisCorp.andentitled″Multi-user,On-demandVideoStorageandRetrialSystemIncludingVideoSignatureComputationforPreventingExcessiveInstantaneousServerDataRate,″USPatentNo,5,510,905issuedApril23,1996toYitzhakBirkandentitle″VideoStorageServerUsingTrack-Pairing,″USPatentNo.5,517,652issuedMay14,1996toTakanoriMiyamotoetal,assignedtoHitachiLtd.Andentitled″MultimediaServerforTreatingMulti-mediaInformationandCommunicationSystemEmployingtheMulti-mediaServer,″andUSPatentNo,5,43,362issuedDecember5,1995toR.P.Fitzgeraldetal.,assignedtoMicrosoftCorp.andentitled″VideoonDemandSystemComprisingStrippedDataAcrossPluralStorableDevicesWithMultiplexScheduling″上發(fā)表過。上述皆以datastripping方法儲存多媒體數(shù)據(jù)流以增進(jìn)即時(shí)媒體隨選服務(wù)器服務(wù)。不過,因?yàn)榇疟P儲存系統(tǒng),無可避免的機(jī)械延遲問題,將導(dǎo)致數(shù)據(jù)流產(chǎn)出量的改善相當(dāng)有限。上述問題詳細(xì)內(nèi)容可參考C.S.Wuetal.,″PerformanceEvaluationofaDiskArrayforVideo-on-DemandSystems.″Proceedingsof10thInternationalConferenceofInformantionNetworking(ICOIN-10),Kyung-Ju,Korea,1996,pp.351-358。此外,其它的先前技術(shù)系統(tǒng)提供了與網(wǎng)絡(luò)連合的即時(shí)影像隨選服務(wù)結(jié)構(gòu)。該類系統(tǒng)在USPatentNo.5,442,749issuedAugust15,1995toJ.D.Northcuttetal.,assignedtoSunMicrosystemsInc.andentitled″NetworkVideoServerSystemReceivingRequestsFromClientsforSpecificFormattedDataThroughaDefaultChannelandEstablishingCommunicationThroughSeparateControlandDataChannels,″USPatentNo.,5,508,732issuedApril16,1996toJ.F.Bottomleyetal.,assignedtoIBMCorp.andentitled″DataServer,ControlServerandGatewayArchitectureSystemandMethodforBroadcastingDigitalVideoonDemand,″USPatentNo.,5,521,631issuedMay28,1996toH.S.Budowetal.,assignedtoSpectraVisionInc.andentitled″InteractiveDigitalVideoServicesSystemWithStoreandForwardCapabilities,″USPatentNo.,5,471,318issuedNovember28,1995toS.R.Ahujaetal.,assignedtoAT&TCorp.andentitled″MuitimediaCommunicationsNetwork,″andRepublicofChinaPatentNo.,244224885110129-072228,July1995。但是前述系統(tǒng),都未對可放大性問題加以討論并解決此問題,因此前述系統(tǒng),也都無法同時(shí)支援大量用戶的使用。綜上所述,一種用于制造可同時(shí)存取即時(shí)數(shù)據(jù)流,并支援大量用戶的多媒體傳送系統(tǒng)的可放大的多媒體服務(wù)器,的確有其存在的必要。本發(fā)明的多媒體服務(wù)器,可用以制作一放大服務(wù)器同時(shí)讀取及傳送大量的媒體數(shù)據(jù)流。本發(fā)明在許多方面,都與位元流推動引擎的設(shè)計(jì)有關(guān)。位元流推動引擎,是建構(gòu)可放大媒體服務(wù)器的基本方塊,多個(gè)可放大服務(wù)器,可藉它相互聯(lián)接,構(gòu)成一個(gè)放大的服務(wù)器,來達(dá)到想要的傳送能力。多個(gè)可放大服務(wù)器,可藉它彼此聯(lián)接構(gòu)成一個(gè)位元流多工器。該位元流多工器,可從放大的服務(wù)器中,依據(jù)事先同意的服務(wù)器質(zhì)量限制,來傳送多個(gè)媒體數(shù)據(jù)流。本發(fā)明的較佳實(shí)施例敘述如下,一可放大媒體服務(wù)器,包括多個(gè)位元流推動引擎。每一個(gè)位元流推動引擎,連接著儲存系統(tǒng)的儲存裝置與可放大服務(wù)器的系統(tǒng)總線。位元流推動引擎,自其所連接的儲存裝置中,讀取儲存于其中的所要數(shù)據(jù)流,并將此數(shù)據(jù)流傳送至一適當(dāng)?shù)挠脩舳恕4丝煞糯笫椒?wù)器,亦可包括一個(gè)服務(wù)器處理器,經(jīng)由系統(tǒng)總線與位元流推動引擎聯(lián)結(jié)。此服務(wù)器處理器,自用戶端接收到讀取的要求,并根據(jù)此要求,導(dǎo)引數(shù)個(gè)位元流推動引擎動作。位元流推動引擎,亦包含一個(gè)與對應(yīng)的儲存裝置聯(lián)結(jié)的儲存控制裝置,以及一個(gè)與此儲存控制裝置聯(lián)結(jié)的網(wǎng)絡(luò)控制器。該儲存控制裝置,自對應(yīng)的儲存裝置,接收一數(shù)據(jù)流以回應(yīng)特定的讀取要求,而該網(wǎng)絡(luò)控制器,則將讀取出的數(shù)據(jù)流傳送至適當(dāng)用戶可進(jìn)入的網(wǎng)絡(luò)上。該位元流推動引擎,亦包含一個(gè)聯(lián)結(jié)儲存控制器與網(wǎng)絡(luò)控制器的位元流推動引擎處理器,以引導(dǎo)那些要素運(yùn)作。該位元流推動引擎,也可包括一個(gè)共享存儲器。服務(wù)器處理器,可藉由一個(gè)主要系統(tǒng)總線取得此共享存儲器,而位元流推動引擎處理器,則可經(jīng)由位元流推動引擎的內(nèi)部總線取得。因此可放大式服務(wù)器中之各個(gè)位元流推動引擎,將可互相溝通,所有用戶便可取得通往該儲存系統(tǒng),所有儲存裝置的途徑。本發(fā)明另可包含數(shù)個(gè)可放大式媒體服務(wù)器相互連接,以使放大的媒體服務(wù)器,適用于大量用戶的服務(wù)。以利用一組位元流多工器與數(shù)個(gè)媒體服務(wù)器主機(jī)交叉連接。每一個(gè)媒體服務(wù)器主機(jī)包含多個(gè)以前述方式設(shè)定之位元流推動引擎。位元流多工器的輸入端至少與每一個(gè)可放大式媒體服務(wù)器主機(jī)的一個(gè)數(shù)據(jù)流存取輸出端交叉連接,并依照服務(wù)質(zhì)量的限制傳送讀取出的數(shù)據(jù)流。每一個(gè)位元流多工器,可包括多個(gè)封包分配電路及多個(gè)封包輸入單元。該封包分配電路將與讀取出的數(shù)據(jù)流對應(yīng)之封包,分配至特定的封包輸入單元,因此每一封包輸入單元,只接收一個(gè)讀取的位元流的封包。封包輸入單元,依據(jù)對特定位元流的服務(wù)質(zhì)量需求處理封包,并將封包傳送至對應(yīng)的輸出緩沖器。本發(fā)明亦可另與位元流多工器的封包輸入單元有關(guān)。封包輸入單元,決定應(yīng)用的封包是否處于最高速率、中間速率或是在過高狀態(tài),并將處于中間速率狀態(tài)的封包,循線遞送至中間速率輸出端,將處于最高速率的封包也循線遞送至最高速率輸出端,至于處于過高狀態(tài)的封包,則會被延遲或丟棄。封包輸入單元,運(yùn)用一種兩段式桶漏裝置,來決定封包所處的狀態(tài)。本發(fā)明采取如下具體結(jié)構(gòu)本發(fā)明的一自儲存系統(tǒng)讀取數(shù)據(jù)位元流的媒體服務(wù)器,其特征在于,媒體服務(wù)器為一可擴(kuò)充式的服務(wù)器,包括至少一個(gè)位元流推動引擎,每個(gè)位元流推動引擎,連接儲存系統(tǒng)中的儲存裝置及此擴(kuò)充式媒體服務(wù)器的系統(tǒng)總線,且每個(gè)位元流推動引擎,可自所連接的儲存裝置將數(shù)據(jù)位元流取出,并將此位元流送至適當(dāng)?shù)目蛻?;以及至少有一服?wù)器處理器,其經(jīng)由系統(tǒng)總線與位元流推動引擎相連,處理器可接收來自客戶端的位元流讀取要求,并指揮位元流推動引擎的運(yùn)作以配合客戶端的要求。所述的媒體服務(wù)器,其特征在于,所述位元流推動引擎,包括至少一儲存裝置控制器,其連接到與所述位元流推動引擎相關(guān)的儲存裝置,以回應(yīng)客戶端的要求,而讀取位元流;至少一網(wǎng)絡(luò)控制器,其與儲存裝置控制器連接,以接收儲存裝置讀取的數(shù)據(jù)位元流,并將其傳遞至網(wǎng)絡(luò)中經(jīng)客戶端從網(wǎng)絡(luò)拾取;以及至少一位元流推動引擎處理器,其連接于所述儲存裝置控制器及網(wǎng)絡(luò)控制器,并指揮它們的運(yùn)作。所述的媒體服務(wù)器,其特征在于,所述位元流推動引擎,更包括至少一個(gè)共享存儲器,此存儲器,被所述位元流推動引擎處理器或服務(wù)器處理器存取。本發(fā)明的另一種媒體服務(wù)器,用來從儲存系統(tǒng)拾取其中的數(shù)據(jù)位元流,其特征在于,服務(wù)器為一可擴(kuò)充式的服務(wù)器,包括至少二個(gè)可擴(kuò)充式的媒體服務(wù)器主機(jī),每個(gè)媒體服務(wù)器主機(jī),包括至少二個(gè)位元流推動引擎,該位元流推動引擎,可自相關(guān)儲存系統(tǒng)內(nèi)的儲存裝置中,拾取所要求的數(shù)據(jù)位元流,并將每個(gè)位元流導(dǎo)至相關(guān)的位元流推動引擎的輸出端;以及至少二個(gè)位元流多工器,此位元流多工器上有至少二個(gè)輸入端,這些輸入端以相互交錯(cuò)的方式與至少一個(gè)可擴(kuò)充式媒體服務(wù)器上的數(shù)據(jù)位元流的輸出相連,此位元流多工器,以符合服務(wù)質(zhì)量要求的方式來傳遞讀出的數(shù)據(jù)位元流。結(jié)合附圖及實(shí)施例,對本發(fā)明說明如下圖1為一先前技術(shù)中的視頻服務(wù)器電腦。圖2為以圖1的視頻服務(wù)器電腦為基礎(chǔ)的數(shù)據(jù)傳輸系統(tǒng)示意圖。圖3為本發(fā)明較佳實(shí)施例的可放大式媒體服務(wù)器主機(jī)的電路方框圖。圖4為一位元流推動引擎的電路方框圖,該位元流推動引擎適用于圖3的可放大式媒體服務(wù)器主機(jī)。圖5為一方塊圖,描述圖3中可放大式媒體服務(wù)器主機(jī)與多個(gè)用戶端連接的方式。圖6為本發(fā)明一較佳實(shí)施例,適用于住宅的媒體服務(wù)器。圖7適用于圖6媒體的服務(wù)器中位元流多工器的封包再分配裝置。圖8為一適用于圖7封包再分配裝置的封包輸入單元的運(yùn)作示意圖。圖9為適用于圖6媒體服務(wù)器的位元流多工器程序示意圖。本發(fā)明以媒體服務(wù)器的應(yīng)用加以說明,該媒體服務(wù)器通過網(wǎng)絡(luò),傳送多媒體數(shù)據(jù)流至用戶端。不過,此處所描述的技術(shù),多被應(yīng)用在任何其他數(shù)據(jù)存取的應(yīng)用上,亦即多個(gè)多媒體數(shù)據(jù)流,自一媒體儲存裝置,同時(shí)被一服務(wù)器讀取,而且被傳送至一個(gè)或多個(gè)用戶處。這里所謂“服務(wù)器”一詞,至少可包含一部電腦、設(shè)計(jì)的集成電路、能執(zhí)行此處所述的數(shù)據(jù)存取運(yùn)作的任何其他數(shù)位數(shù)據(jù)處理器的微處理機(jī)?!坝脩簟币辉~則包括多媒體分配系統(tǒng)的訂戶或任何其他電腦網(wǎng)絡(luò)、有線電視網(wǎng)絡(luò)、電話網(wǎng)絡(luò)或其他形式的數(shù)據(jù)分配網(wǎng)絡(luò)的使用者或終端。圖3為本發(fā)明的一個(gè)放大式媒體服務(wù)器主機(jī)50的一較佳實(shí)施例??煞糯笫矫襟w服務(wù)器主機(jī)50,包含了N個(gè)位元流推動引擎52-i,i=1,2,位元流推動引擎52-i,可自一包含N個(gè)磁盤式的儲存裝置54-i的媒體儲存副系統(tǒng)54,讀取數(shù)據(jù)流并儲存數(shù)據(jù)流到此媒體儲存副系統(tǒng)54。數(shù)據(jù)流可以被儲存在以磁盤為基礎(chǔ)的儲存裝置54-i中,可參考USPatentApplicationSerialNo.08/657,739ofShiao-LiTsaoetal.,entitled″ImprovedMethodofDataPlacementofContinuousMediatoUtilizeBandwithEfficiency″。每一位元流推動引擎52-i,將數(shù)據(jù)流自54-i儲存裝置,讀取出來并傳送至裝備有可放大式服務(wù)器主機(jī)的多媒體數(shù)據(jù)傳送系統(tǒng)的用戶端。位元流推動引擎52-i與用戶對應(yīng)的連結(jié)面通過一主機(jī)系統(tǒng)總線56相戶連結(jié)。媒體服務(wù)器主機(jī)50,包括一個(gè)與存儲器60聯(lián)結(jié)的微處理機(jī)58、一個(gè)與控制儲存裝置64聯(lián)結(jié)的儲存控制裝置62以及連接一個(gè)向上位元流控制單元66,以便接收自用戶的數(shù)據(jù)傳送系統(tǒng),所發(fā)出的向上位元流讀取需求。微處理機(jī)58、儲存控制裝置62以及向上位元流控制器66,都與主機(jī)系統(tǒng)總線56相連。微處理機(jī)58控制向上位元流控制器66,對用戶向上位元流讀取需求的接收與處理??刂苾Υ嫜b置64,則儲存了微處理機(jī)58導(dǎo)引讀取運(yùn)作的控制軟件,此于下將有更詳細(xì)的敘述。圖4為本發(fā)明的較佳實(shí)施例的位元流推動引擎52-i的示意圖。位元流推動引擎52-i,經(jīng)由儲存控制裝置70與以磁盤為基礎(chǔ)的儲存裝置54-i聯(lián)結(jié)。內(nèi)部總線74將儲存控制裝置72與網(wǎng)絡(luò)控制器72、總線橋接器76連接。網(wǎng)絡(luò)控制72,則如圖所示將讀出的數(shù)據(jù)流傳至用戶端的網(wǎng)絡(luò)上。儲存控制裝置70和網(wǎng)絡(luò)控制器72是由微處理機(jī)78控制??偩€橋接器74,是內(nèi)部總線74與媒體主機(jī)50的主機(jī)系統(tǒng)總線56之間數(shù)據(jù)傳輸?shù)拿浇榫彌_器。而通過直接存儲器存取控制單元81及地址轉(zhuǎn)換單元82、83可從主機(jī)系統(tǒng)總線56或內(nèi)部總線74通往共享存儲器80。地址轉(zhuǎn)換單元82、83,則負(fù)責(zé)共享存儲器80與其他通過主機(jī)系統(tǒng)總線56或內(nèi)部總線74和共享存儲器80相通的其他裝置之間的地址定位。存取指令可自微處理機(jī)78,并經(jīng)由內(nèi)部總線74傳送至儲存控制裝置70。在讀取與儲存之間,位元流推動引擎54-i中讀出的數(shù)據(jù)流可能需要緩沖。如上所述,位元流推動引擎52-i中的共享存儲器80與主機(jī)系統(tǒng)總線56及內(nèi)部總線74聯(lián)結(jié),媒體服務(wù)器主機(jī)50中的微處理機(jī)58以及位元流推動引擎微處理機(jī)78都可至共享數(shù)據(jù)80存取數(shù)據(jù)。因此共享存儲器80就可根據(jù)所需般被當(dāng)作讀出位元流的緩沖器。依據(jù)本發(fā)明,位元流推動引擎,可經(jīng)由橋接器76,讓位元流推動引擎52-i與其它位元流推動引擎52-i溝通,總線橋接器76,可于媒體服務(wù)器主機(jī)50中的主機(jī)系統(tǒng)總線56存取。圖4中的位元流推動引擎52-i,可當(dāng)做一個(gè)控制面板,以便從儲存裝置54-i讀取所需的數(shù)據(jù)流,以及導(dǎo)引讀出的位元流,經(jīng)由用戶網(wǎng)絡(luò)到適當(dāng)?shù)挠脩舳?。位元流推動引擎微處理機(jī)78,導(dǎo)引位元流推動引擎52-i的其它成份,以提供下列處理功能,例如(1)利用儲存控制裝置70,自媒體儲存裝置讀取所需的數(shù)據(jù)流方塊;(2)將讀出的數(shù)據(jù)流方塊,經(jīng)由內(nèi)部總線74,運(yùn)輸至共享存儲器80;(3)如所需數(shù)據(jù)流被連續(xù)存取,則連續(xù)重覆步驟(1)和(2);(4)讀自共享存儲器80,取出的數(shù)據(jù)流方塊,并將其經(jīng)由網(wǎng)絡(luò)控制器72,傳送至適當(dāng)?shù)挠脩艟W(wǎng)絡(luò);(5)如取出的媒體位元流必須被連續(xù)傳送,重覆步驟(4)。如此一來,位元流推動引擎52-i允許其所在的媒體儲存裝置54-i,通過用戶網(wǎng)絡(luò)可直接被存取。每一個(gè)位元流推動引擎52-i,可支援多數(shù)個(gè)讀出位元流到多數(shù)用戶的傳送。圖3所示的媒體服務(wù)器主機(jī)50,將數(shù)個(gè)位元充推動引擎合并組成一個(gè)通過位元流推動引擎52-i,可同時(shí)服務(wù)大量用戶的較大型媒體服務(wù)器。媒體服務(wù)器主機(jī)50,接收并處理從用戶端傳來的要求,使得儲存副系統(tǒng)54中的媒體位元流,能通過位元流推動引擎52-i,以隨選的方式被互動地存取。媒體服務(wù)器主機(jī)50上的微處理機(jī)58指揮媒體服器主機(jī)50上的組成元素及相關(guān)的位元流推動引擎52-i,以提供以下的處理功能(1)控制位元流推動引擎52-i對位元流推動引擎52-i的相互通訊,如利用直接儲存器存取(DMA,DirectMemoryAccess)(2)允入控制,并處理經(jīng)由向上位元流控制單元66,所收到來自用戶端的上游數(shù)據(jù)存取要求,及(3)其他存取的管理。兩個(gè)位元流,推動引擎之間的通訊是必的,如某一位元流推動引擎之下的用戶,可能需要讀取由另一位元流推動引擎所控制的儲存裝置,這種通訊可藉由直接存儲器存取來完成,一位元流推動引擎52-i上的共享存儲器80,可被另一位元流推動引擎52-i直接存取,此動作是經(jīng)由媒體服務(wù)器主機(jī)50上的主機(jī)系統(tǒng)總線56、直接存儲器存取控制單元81及地址轉(zhuǎn)換單元83。此種方式的數(shù)據(jù)移動,是利用一塊被兩個(gè)微處理機(jī),所對映的共享存儲器來達(dá)成,目前,有國際組織正在制定其標(biāo)準(zhǔn),見“IntelligentI/O(I2O)ArchitectureSpecification″,I2OSIG,Rev.1.0,March1996,圖3及圖4中的媒體服務(wù)器主機(jī)50及位元流推動引擎52-i,提供了服務(wù)管理與數(shù)據(jù)存取之間的一個(gè)清楚的功能分割,而且仍然維持系統(tǒng)的可擴(kuò)充性,因此,位元流推動引擎的動作,便可以被最佳化,以保證服務(wù)質(zhì)量。圖5說明一多媒體數(shù)據(jù)傳遞系統(tǒng)84,其中圖3中的可擴(kuò)充式媒體服務(wù)器主機(jī)50,用來將所讀出的位元流傳遞至P個(gè)用戶端,P可以是一個(gè)很大的數(shù)目,可擴(kuò)充式媒體服務(wù)器主機(jī)50,利用位元流推動引擎52-i,從儲存副系統(tǒng)54將所讀出的位元流,傳遞至數(shù)個(gè)用戶85-i,其中i=1,2,”P,如前面敘述的方式,用戶85-i的存取要求,是經(jīng)由上游網(wǎng)絡(luò)的連線89,傳送至媒體服務(wù)器主機(jī)50,而且用戶85-i是經(jīng)由下游網(wǎng)絡(luò)的連線87,接收從媒體服務(wù)器主機(jī)50,傳遞過來的位元數(shù)據(jù)流,媒體服務(wù)器主機(jī)50,隨時(shí)可以加裝額外的位元流推動引擎52-i或連接其他類型的服務(wù)器主機(jī)來擴(kuò)充服務(wù)容量。圖6以另一較佳實(shí)施例,來說明本發(fā)明的住宅區(qū)媒體服務(wù)器90,此服務(wù)器90主要是用來服務(wù)于圖5中系統(tǒng)84所服務(wù)的區(qū)域范圍,還要廣大的區(qū)域,此服務(wù)器90可包含K個(gè)可擴(kuò)充的媒體服務(wù)器主機(jī)與M個(gè)位元流多工器100-i,而用戶均連結(jié)到這M個(gè)位元流多工器100-i的其中之一,且這K個(gè)可擴(kuò)充的媒體服務(wù)器主機(jī)與M個(gè)位元流多工器100-i以交錯(cuò)式連結(jié),使得每一個(gè)用戶,均可經(jīng)由這K個(gè)可擴(kuò)充的媒體服務(wù)器主機(jī)讀取每一個(gè)儲存副系統(tǒng)541至54K,在服務(wù)器90中讀取的數(shù)據(jù),均裝在封包中,因此,服務(wù)器90以一類似封包交換機(jī)的方式運(yùn)作,每個(gè)讀出位元流,均須滿足服務(wù)質(zhì)量變數(shù)的需求,如最大傳輸延遲、最小傳輸效能等等,服務(wù)器90傳送并交換的媒體位元流封包,同時(shí)必須保持服務(wù)質(zhì)量變數(shù)的需求,服務(wù)器90中的位元流多工器100-i在處理封包時(shí),會針對服務(wù)質(zhì)量變數(shù),而避免過長的封包延遲、延遲變異及其他不正常的變數(shù),這些于下文有更詳細(xì)的說明。位元流多工器100-i處理兩種位元流型別、變速率(VBR,Variable-bie-rate)位元流及定速率(CBR,Constent-bit-rate)位元流,若周期Cycle表示一固定的時(shí)間長,且一周期包含固定多數(shù)個(gè)媒體封包,一變速率數(shù)據(jù)源可用下列兩個(gè)變數(shù)表示(1)BPi=變速率數(shù)據(jù)源i的最大速率,即在任一周期中,變速率數(shù)據(jù)源i被允許傳送的最大封包個(gè)數(shù),(2)BMi=變速率數(shù)據(jù)i的平均速率,即在任一周期中,變速率數(shù)據(jù)庫i,被允許傳送的平均封包個(gè)數(shù)。對于一定速率數(shù)據(jù)庫i,則以BPi=BMi表示之,位元流多工器100-i,可被被視為一M×N的交換機(jī),其中M可大于N以允許擴(kuò)充儲存空間,如前所述,位元流多工器100-i,必須保證封包傳送的服務(wù)質(zhì)量例如小于某種延遲及延遲變異下的傳輸效能,傳輸?shù)姆獍喙ぜ夹g(shù),如循環(huán)法(RoundRobin)、加權(quán)循環(huán)法(WeightedRoundRobin)均無法提供變速率傳輸?shù)姆?wù)保證,本發(fā)明提出的位元流多工器100-i封包流量控制法、“桶漏原理(LeakyBucket)”為基礎(chǔ)而設(shè)計(jì)的方式達(dá)成所需目的。圖7詳細(xì)的表示位元流多工器100-i的一范例,此位元流多工器100-i,從住宅區(qū)媒體服務(wù)器90上的服務(wù)器主機(jī)50-i中的位元流推動引擎52-i,接收一序列的連續(xù)數(shù)據(jù)封包,這些連續(xù)數(shù)據(jù)封包,可能包含多個(gè)媒體位元流,因此,這些連續(xù)數(shù)據(jù)封包,會被進(jìn)一步送入封包分配電路110-i,以便將各別的媒體位元流導(dǎo)入各別的封包輸入單元120-i,只須獨(dú)立處理一個(gè)媒體位元流。圖8詳細(xì)的表示為封包輸入單元120-i的一范例,每個(gè)大服務(wù)器90上的媒體數(shù)據(jù)庫i,均對應(yīng)一個(gè)封包輸入單元120-i,而且封包是經(jīng)由輸入單元120-i中的輸入端Ii輸入的,輸入的封包,會根據(jù)其狀態(tài)選擇適當(dāng)?shù)妮敵龆薖′i或M′i,每個(gè)封包有三種狀態(tài)尖峰速率狀態(tài)P、平均速率狀態(tài)M及異常狀態(tài)N,可以下列方式用來決定每一封包的狀態(tài)在一周期當(dāng)中,若收到此封包之前所收到的封包累積個(gè)數(shù)小于BMi,則令此封包具有平均速率狀態(tài)M,若收到此封包之前所收到的封包累積個(gè)數(shù)小于BPi且大于BMi,則使此封包具有平均速率狀態(tài)P,若不滿足以上兩種狀況,則屬于異常狀態(tài)N。具有P狀態(tài)的封包,會選擇輸出端P′i輸出,具有M狀態(tài)的封包,會選擇輸出端M′i輸出,而具有N狀態(tài)的封包,會被丟棄或延后傳送。圖8中封包輸入單元120-i的輸出端選擇,是以一種兩級桶漏電路(Two-stageLeakyBucket)為例,來據(jù)以實(shí)施的,在第一級中,第一根漏電路130的作用,是一個(gè)P狀態(tài)判斷器,它被第一符號產(chǎn)生器所控制,其中包括一個(gè)符號計(jì)數(shù)器131,在一個(gè)周期中,符號計(jì)數(shù)器131內(nèi)有BP′i個(gè)符號,當(dāng)封包來時(shí),而且當(dāng)時(shí)符號計(jì)數(shù)器131內(nèi)仍有符號時(shí),該封包會被導(dǎo)入第二桶漏電路136,若當(dāng)時(shí)符號計(jì)數(shù)器131內(nèi)沒有符號時(shí),該封包會被丟棄,或者根據(jù)即時(shí)需求程序?qū)⑵溲雍髠魉?,第二根漏電?36的作用,是一個(gè)M狀態(tài)判斷器,它被第一符號產(chǎn)生器,所控制而選擇將封包送到輸出端P′i或M′i,其中包括一個(gè)符號計(jì)數(shù)器137,在一個(gè)周期中,符號計(jì)數(shù)器137內(nèi)有BMi個(gè)符號,當(dāng)封包來時(shí),而且當(dāng)時(shí)符號計(jì)數(shù)器137內(nèi)仍有符號時(shí),該封包會被送到輸出端M′i,若當(dāng)時(shí)符號計(jì)數(shù)器137內(nèi)已經(jīng)沒有符號時(shí),該封包會被送到輸出端P′i,在封包輸入單元120-i中,以上的選擇方法,是由一具選擇電路來完成的,該電路是根據(jù)兩個(gè)位元的操作而設(shè)計(jì)的,即符號位元T及排隊(duì)暫存器排頭狀態(tài)位元H,T=1表示符號計(jì)數(shù)器137內(nèi)仍有符號,H=1表示至少有一封包,等待于排隊(duì)暫存器的排頭,第一桶漏電路130中處理完畢的封包,會被轉(zhuǎn)往第二桶漏電路136或者根據(jù)與門132的輸出狀態(tài),而決定是否將該封包丟棄,另一個(gè)與門134的作用,是當(dāng)排隊(duì)暫存器中無封包抵達(dá)時(shí),將符號回授至符號計(jì)數(shù)器131,與門132及134兩個(gè)輸入分別為位元T及H,其真值表如表1表1</tables>同樣的方法,亦使用于第二桶漏電路136、第一符號產(chǎn)生器既計(jì)數(shù)器137及與門138及140,以便選擇輸出端P′i或M′i,一脈沖訊號Clk,是用來控制封包輸入單元120-i的動作,一歸零訊號rest,是當(dāng)一周期結(jié)束時(shí),用來將符號計(jì)數(shù)器131、137歸零。圖9為一適合用于圖6中的可放大式服務(wù)器90上的位元流多工器100-i的范例圖,此便中,若最多有J個(gè)媒體數(shù)據(jù)庫可以通過服務(wù)器90提供讀取服務(wù),每個(gè)封包輸入單元120-i的動作,是被Clk信號所啟動的,一延遲電路150,用來將多個(gè)封包輸入單元120-i,串聯(lián)起來使得這些封包輸入單元120-i能順序地操作,在一位元流多工器100-i中,總共使用了J個(gè)封包輸入單元120-i,且每個(gè)封包輸入單元120-i,都對應(yīng)一個(gè)延遲電路150,這J個(gè)延遲電路150被順序地串聯(lián)起來,使得每一個(gè)封包輸入單元120-i,能順序地操作,延遲電路150的延遲信號長度D可以設(shè)為T/J,其中,T為在一位元流多工器100-i中、一個(gè)封包的傳送時(shí)間(等于一個(gè)脈沖時(shí)間),每個(gè)封包輸入單元120-i有兩個(gè)輸出,分別將P狀態(tài)的封包,導(dǎo)入一個(gè)P暫存器152或?qū)狀態(tài)的封包,導(dǎo)入一個(gè)M暫存器154,這兩個(gè)暫存器152及154提供了兩種優(yōu)先權(quán),在M暫存器154中的封包,比在P暫存器152中的封包,具有較高的優(yōu)先權(quán),能被傳送至位元流多工器100-i的輸出連結(jié),如此,便可保證可放大服務(wù)器90上的J個(gè)媒體,均有一定的平均傳送效能,而數(shù)據(jù)的最高傳送效能,取決于允入控制演算法,可根據(jù)允許的最大封包延遲及數(shù)據(jù)個(gè)數(shù)而得最高傳送效能?,F(xiàn)在說明圖9的位元流多工器100-i的一個(gè)實(shí)施范例,此范例中的位元流多工器100-i,使用長度為64位元的封包及一32位元寬的數(shù)據(jù)總線,輸出連結(jié)的速度,可為符合非同步傳輸模式(ATM)OC-3標(biāo)準(zhǔn)和155Mbps,每個(gè)位元流的最高傳送效能,若為25.6Mbps,然而,一般高畫質(zhì)的MPEG-2數(shù)字影像在12Mbps之下,即可完美的傳送,在一封包輸入單元中,將一封包從輸入送到輸出(P暫存器152或M暫存器154)所需的脈沖個(gè)數(shù)為64×8/32=16,既然總共有J個(gè)位元流,則將封包輸入單元中,每個(gè)封包從輸入送到輸出(P暫存器152或M暫存器154)所需的總脈沖個(gè)數(shù)為16J,T為在一位元流多工器100-i中、一個(gè)封包的傳送時(shí)間(等于一個(gè)脈沖時(shí)間),故將封包輸入單元中,每個(gè)封包從輸入送到輸出所需的總時(shí)間為16JT,在16JT的時(shí)間內(nèi),若只有一個(gè)封包到達(dá)其中的一個(gè)封包輸入單元,則此封包必須能在1/(25.6×106/(8X64))=2.0×10-5秒內(nèi)傳至輸出連結(jié),即16JT必須小于2.0×10-5秒,若J選定為126,則T值必須小于10-8秒、即10ns,亦即此實(shí)施例,所需要的脈沖速率為100MHz。本發(fā)明的效果如下本發(fā)明較佳實(shí)施例的位元流多工器100-i,不需要復(fù)雜的硬件設(shè)計(jì),如圖8,每一個(gè)封包輸入單元120-i,只用了少數(shù)個(gè)與門及暫存器,例如,一個(gè)輸出連結(jié)速率為155MbpsATMOC-3的位元流多工器欲處理100個(gè)1.5MbpsPEG-1數(shù)字影像時(shí),僅需100個(gè)封包輸入單元,可節(jié)省相關(guān)硬件的使用成本。最后要提及的是,上述較佳實(shí)施例描述,僅為說明本發(fā)明的特點(diǎn),任何熟知此技術(shù)的人士,所做的任何潤飾、修改,皆應(yīng)涵蓋在本發(fā)明的保護(hù)范圍內(nèi)。權(quán)利要求1.一自儲存系統(tǒng)讀取數(shù)據(jù)位元流的媒體服務(wù)器,其特征在于,媒體服務(wù)器為一可擴(kuò)充式的服務(wù)器,包括至少一個(gè)位元流推動引擎,每個(gè)位元流推動引擎,連接儲存系統(tǒng)中的儲存裝置及此擴(kuò)充式媒體服務(wù)器的系統(tǒng)總線,且每個(gè)位元流推動引擎,可自所連接的儲存裝置將數(shù)據(jù)位元流取出,并將此位元流送至適當(dāng)?shù)目蛻?;以及至少有一服?wù)器處理器,其經(jīng)由系統(tǒng)總線與位元流推動引擎相連,處理器可接收來自客戶端的位元流讀取要求,并指揮位元流推動引擎的運(yùn)作以配合客戶端的要求。2.根據(jù)權(quán)利要求1所述的媒體服務(wù)器,其特征在于,所述位元流推動引擎,包括至少一儲存裝置控制器,其連接到與所述位元流推動引擎相關(guān)的儲存裝置,以回應(yīng)客戶端的要求,而讀取位元流;至少一網(wǎng)絡(luò)控制器,其與儲存裝置控制器連接,以接收儲存裝置讀取的數(shù)據(jù)位元流,并將其傳遞至網(wǎng)絡(luò)中經(jīng)客戶端從網(wǎng)絡(luò)拾??;以及至少一位元流推動引擎處理器,其連接于所述儲存裝置控制器及網(wǎng)絡(luò)控制器,并指揮它們的運(yùn)作。3.根據(jù)權(quán)利要求2所述的媒體服務(wù)器,其特征在于,所述位元流推動引擎,更包括至少一個(gè)共享存儲器,此存儲器,被所述位元流推動引擎處理器或服務(wù)器處理器存取。4.根據(jù)權(quán)利要求1所述的媒體服務(wù)器,其特征在于,所述服務(wù)器,包括至少兩個(gè)相互通訊的位元流推動引擎。5.根據(jù)權(quán)利要求1所述的媒體服務(wù)器,其特征在于,進(jìn)一步包括至少一連接于系統(tǒng)總線的儲存裝置控制器,接收來自所述控制儲存裝置的控制指令。6.根據(jù)權(quán)利要求1所述的媒體服務(wù)器,其特征在于,進(jìn)一步包括至少一連結(jié)于系統(tǒng)總線的上游控制器,以接收來自客戶網(wǎng)絡(luò)的拾取要求,并可將此要求由系統(tǒng)總線,傳給所述服務(wù)器處理器。7.一種媒體服務(wù)器,用來從儲存系統(tǒng)拾取其中的數(shù)據(jù)位元流,其特征在于,服務(wù)器為一可擴(kuò)充式的服務(wù)器,包括至少二個(gè)可擴(kuò)充式的媒體服務(wù)器主機(jī),每個(gè)媒體服務(wù)器主機(jī),包括至少二個(gè)位元流推動引擎,該位元流推動引擎,可自相關(guān)儲存系統(tǒng)內(nèi)的儲存裝置中,拾取所要求的數(shù)據(jù)位元流,并將每個(gè)位元流導(dǎo)至相關(guān)的位元流推動引擎的輸出端;以及至少二個(gè)位元流多工器,此位元流多工器上有至少二個(gè)輸入端,這些輸入端以相互交錯(cuò)的方式與至少一個(gè)可擴(kuò)充式媒體服務(wù)器上的數(shù)據(jù)位元流的輸出相連,此位元流多工器,以符合服務(wù)質(zhì)量要求的方式來傳遞讀出的數(shù)據(jù)位元流。8.根據(jù)權(quán)利要求7所述的媒體服務(wù)器,其特征在于,所述可擴(kuò)充式媒體服務(wù)器主機(jī),進(jìn)一步包括至少二個(gè)位元流推動引擎,每個(gè)位元流推動引擎,連接儲存系統(tǒng)中的儲存裝置及此擴(kuò)充式媒體服務(wù)器的系統(tǒng)總線,而且每個(gè)位元流推動引擎,可自連接的儲存裝置,將數(shù)據(jù)位元流取出,并將此位元流輸送至客戶;以及一服務(wù)器處理器,其經(jīng)由系統(tǒng)總線與位元流推動引擎相連,其可接收來自客戶端的位元流讀取要求。9.根據(jù)權(quán)利要求8所述的媒體服務(wù)器,其特征在于,所述位元流推動引擎,進(jìn)一步包括至少一與位元流推動引擎相關(guān)的特定儲存裝置連接的儲存裝置控制器,以接收與特定讀取要求對應(yīng)的數(shù)據(jù)位元流;至少一與儲存裝置控制器連結(jié)的網(wǎng)絡(luò)控制器,以接收被讀取的數(shù)據(jù)位元流,并將此被讀取來的位元流,送至客戶可拾取的網(wǎng)絡(luò)中;以及至少一與儲存裝置控制器及網(wǎng)絡(luò)控制器連接的位元流推動引擎處理器。10.根據(jù)權(quán)利要求9所述的媒體服務(wù)器,其特征在于,所述位元流推動引擎,進(jìn)一步包括至少一共享存儲器,其可被所述位元流推動引擎處理器或服務(wù)器處理器用于存取。11.根據(jù)權(quán)利要求8所述的媒體服務(wù)器,其特征在于,所述服務(wù)器處理器,用于指揮在至少兩個(gè)位元流推動引擎間的通訊。12.根據(jù)權(quán)利要求7所述的媒體服務(wù)器,其特征在于,所述位元流多工器,進(jìn)一步包括至少二個(gè)封包分配電路;以及至少二具封包輸入單元,封包分配電路將承載讀取數(shù)據(jù)位元流的封包分配至封包輸入單元,且每一封包輸入單元,依序以封包接著封包的方式,接收一特別的媒體位元流,可依該媒體位元流要求的服務(wù)質(zhì)量來處理封包,并將封包傳遞至相關(guān)的輸出暫存器。13.根據(jù)權(quán)利要求12所述的媒體服務(wù)器,其特征在于,所述封包分配電路,檢查每個(gè)自可擴(kuò)充式服務(wù)器主機(jī)中的位元流推動引擎接收的封包,并將這些封包分配至相應(yīng)的封包輸入單元,使每個(gè)封包輸入單元,能獨(dú)立地處理不同的數(shù)據(jù)位元流。14.根據(jù)權(quán)利要求12所述媒體服務(wù)器,其特征在于,所述封包輸入單元,進(jìn)一步包括至少一接收特定數(shù)據(jù)位元流的封包輸入;至少一平均速率狀態(tài)輸出;至少一最高速率狀態(tài)輸出;以及所述封包輸入單元,可決定收進(jìn)來的封包,是處于最高率狀態(tài)、平均速率狀態(tài)或異常狀態(tài),將處于平均速率狀態(tài)的封包,送至平均速率輸出端或?qū)⑻幱谧罡咚俾薁顟B(tài)的封包送至最高速率輸出端,并允許處于異常狀態(tài)的封包,被遲延或暫存。15.根據(jù)權(quán)利要求14所述的媒體服務(wù)器,其特征在于,所述封包輸入單元,包括一雙級桶漏電路裝置以決定封包的狀態(tài)。16.根據(jù)權(quán)利要求12所述的媒體服務(wù)器,其特征在于,自所述每一個(gè)位元流多工器拾取J個(gè)影像信號來源,并且每一個(gè)位元流多工器,至少包括J個(gè)封包輸入單元。17.根據(jù)權(quán)利要求12所述的媒體服務(wù)器,其特征在于,所述位元流多工器的J個(gè)封包輸入單元,依序相互與J個(gè)遲延電路連接,使每一個(gè)J個(gè)封包輸入單元都能依序運(yùn)作。18.根據(jù)權(quán)利要求12所述的媒體服務(wù)器,其特征在于,所述每一個(gè)多工器包括第一及第二暫存器,以分別維持最高速率狀態(tài)與平均速率狀態(tài)的封包,以此兩個(gè)特定優(yōu)先階段用來傳輸封包至用戶端。全文摘要一種可擴(kuò)充式的媒體服務(wù)器,包括至少一個(gè)位元流推動引擎及至少一服務(wù)器處理器,處理器,接收來自用戶端的位元流讀取要求,并指揮位元流推動引擎運(yùn)作;每一個(gè)位元流推動引擎,進(jìn)一步包括一儲存裝置控制器,其連接到此推動引擎,進(jìn)一步包括一儲存裝置控制器,此控制器連接到與此位元流推動引擎相關(guān)的儲存裝置,又包含一網(wǎng)絡(luò)控制器,其與儲存裝置控制器連接,以接收從儲存裝置讀取的數(shù)據(jù)位元流并將其傳遞至網(wǎng)絡(luò)中為客戶拾取。文檔編號G06F15/16GK1180967SQ97115149公開日1998年5月6日申請日期1997年7月30日優(yōu)先權(quán)日1996年10月23日發(fā)明者吳炯憲,馬金溝,楊木榮申請人:財(cái)團(tuán)法人工業(yè)技術(shù)研究院