海量存儲(chǔ)等級(jí)vs.媒體傳輸協(xié)議
海量存儲(chǔ)等級(jí)(Mass Storage Class,MSC)是USB第一個(gè)標(biāo)準(zhǔn)化的規(guī)格,目前海量存儲(chǔ)裝置都能通過USB物理連接支持這項(xiàng)傳輸協(xié)議。另一方面,由于數(shù)字版權(quán)管理與內(nèi)容保護(hù)需要考慮特殊的通訊協(xié)議,微軟因此又推出了媒體傳輸協(xié)議(MTP)作為傳統(tǒng)大容量存儲(chǔ)裝置的替代方案。
本文引用地址:http://cafeforensic.com/article/9146.htm數(shù)字版權(quán)管理(DRM)與內(nèi)容保護(hù)需要運(yùn)用特別的通訊協(xié)議,在微軟的DRM引擎Janus中,底層采用的技術(shù)為MTP。MTP可被視為取代傳統(tǒng)MSC的方案,能傳送受保護(hù)的內(nèi)容。圖1是傳統(tǒng)海量存儲(chǔ)裝置應(yīng)用以及相關(guān)的軟件堆棧。
主流操作系統(tǒng)與海量存儲(chǔ)裝置都能通過USB物理連接支持MSC,USB閃存盤、iPod及USB DVD刻錄機(jī)都使用與USB Zip-100磁盤驅(qū)動(dòng)器完全相同的指令。USB閃存盤與iPod甚至包括特殊的USB控制器,如Cypress半導(dǎo)體公司的EZ-USB AT2LP能將SCSI指令轉(zhuǎn)譯成閃存或硬盤的原生指令。
制定一套新協(xié)議的決策不能等閑視之,當(dāng)微軟決定要針對(duì)便攜式媒體裝置制定一套新標(biāo)準(zhǔn)時(shí),等于是對(duì)抗整個(gè)USB市場(chǎng)的成功基礎(chǔ)。既然如此,為何要大費(fèi)周章改變一套發(fā)展相當(dāng)成功的標(biāo)準(zhǔn)呢?
事實(shí)上,對(duì)于掌上型便攜式媒體裝置這種需要更精密的系統(tǒng)存取機(jī)制而言,MSC并不是理想的方案。MSC為硬盤配備的接口僅允許一個(gè)裝置與磁盤驅(qū)動(dòng)器進(jìn)行傳輸,磁盤驅(qū)動(dòng)器無法通過USB接口或DSP在音樂播放器中共用硬盤。由于USB接口無法探測(cè)裝置硬盤里的檔案系統(tǒng),因此所有讀寫作業(yè)都是在邏輯塊地址(Logical Block Address,LBA)中進(jìn)行。這意味著USB裝置無法得知寫入作業(yè)何時(shí)完成,因此不能預(yù)測(cè)何時(shí)能與主控端切斷聯(lián)機(jī)。
MSC也有受困于設(shè)計(jì)而無法達(dá)到的功能,例如未設(shè)立調(diào)整音量或關(guān)閉影片播放裝置屏幕的功能,也沒有專門的機(jī)制向主控端發(fā)送更多指令。此外,MSC本身也不適合支持USB聯(lián)機(jī)。在裝置寫入數(shù)據(jù)途中拔掉USB接線時(shí),USB裝置所使用的大多數(shù)檔案系統(tǒng)都無法做出適當(dāng)?shù)姆磻?yīng)。
通過修改現(xiàn)有的MSC協(xié)議來達(dá)成上述功能是很困難的,任何延伸方案都無法與現(xiàn)有基礎(chǔ)同時(shí)運(yùn)作。Mass Storage DWG多年來一直嘗試制定USB裝置開機(jī)的標(biāo)準(zhǔn),但至今仍未達(dá)成目標(biāo)。與此同時(shí),微軟決定在現(xiàn)有基礎(chǔ)上建置MTP。
圖3展示了一個(gè)典型的MTP系統(tǒng)。通過系統(tǒng)中的USB串行接口引擎(SIE),CPU可控制USB總線的通訊協(xié)議。系統(tǒng)中的CPU可連接至主控端作為一個(gè)MTP裝置,也可配合設(shè)計(jì)的需要作為海量存儲(chǔ)裝置。
MTP與MSC在不同層面上通過USB進(jìn)行通訊,MSC針對(duì)系統(tǒng)中的存儲(chǔ)單元放置一個(gè)極薄的數(shù)據(jù)容器,USB Mass Storage裝置不知道存儲(chǔ)裝置的檔案系統(tǒng)。這種設(shè)計(jì)讓USB裝置擁有極高的彈性,主控端可通過不同的方法 來控制存儲(chǔ)單元。固定功能的USB-to-ATA橋接控制芯片可對(duì)硬盤進(jìn)行格式化或?qū)VD-R設(shè)定成任何專利型格式,甚至是芯片在出廠時(shí)尚未問市的格式。
這是如何實(shí)現(xiàn)的呢?橋接芯片以透明化的模式將邏輯塊尋址層級(jí)的指令傳送給磁盤驅(qū)動(dòng)器,而不會(huì)嘗試了解檔案系統(tǒng)的結(jié)構(gòu)。反觀圖像傳輸協(xié)議(Picture Transport Protocol,PTP)與MTP協(xié)議,則能在更高的功能層上進(jìn)行通訊。
圖像傳輸協(xié)議是相機(jī)與掃描儀用來傳送數(shù)據(jù)的通訊協(xié)議,擁有許多MTP需要的功能,支持雙向控制機(jī)制,計(jì)算機(jī)可控制掃描儀,也可在掃描儀上設(shè)計(jì)一個(gè)按鈕向PC要求進(jìn)行掃描。設(shè)計(jì)這套協(xié)議主要針對(duì)高速、無錯(cuò)的數(shù)據(jù)傳輸,這也是掃描儀與便攜式媒體播放器所追求的目標(biāo)。
PTP與MTP協(xié)議允許主控端通過任何格式與存儲(chǔ)裝置進(jìn)行通訊,其中包括專利型相機(jī)檔案系統(tǒng)以及各種新推出的閃存裝置。PTP與MTP在這方面采用類似FTP協(xié)議的方法,這些協(xié)議將檔案視為對(duì)象而不是邏輯塊尋址。
圖4左圖顯示了轉(zhuǎn)譯至FAT格式硬盤數(shù)據(jù)的一個(gè)典型檔案讀取流程。在此之前,主控端已找到讀取目標(biāo)檔案所在目錄的邏輯塊地址。當(dāng)?shù)弥夸浰诘刂泛螅骺囟司涂梢蚤_始讀取檔案數(shù)據(jù)。若檔案中有更多數(shù)據(jù),主控端就會(huì)讀取FAT(再次通過特定的邏輯塊地址)并判斷檔案數(shù)據(jù)所在的下一個(gè)叢集,將叢集編號(hào)轉(zhuǎn)譯成邏輯塊地址,然后讀取另一個(gè)特定的邏輯塊地址。這些功能都融入至主控端,USB橋接芯片僅擷取邏輯塊地址。
圖4右圖中顯示MTP或PTP裝置上類似的傳輸流程。USB聯(lián)機(jī)的裝置端必須充分了解裝置上的檔案結(jié)構(gòu)。第一個(gè)指令(get object handles)的功能較類似“read directory”,不像“read address 1234”。其后指令(GetObjectInfo)的功能較接近“dir mysong.mp3”,不像“read address 1234”。最后的指令(GetObject)要求裝置以串行模式傳出整個(gè)檔案,主控端不必瀏覽整個(gè)FAT表在裝置中找出所要的檔案。
MTP適合應(yīng)用在復(fù)雜的高端裝置,由于會(huì)增加設(shè)備的負(fù)擔(dān),因此會(huì)產(chǎn)生較高的整體系統(tǒng)成本以及較長的研發(fā)時(shí)間。然而MTP也有許多優(yōu)勢(shì),它支持各種功能,例如讓音樂播放設(shè)備能同時(shí)通過PC喇叭播放音樂以及下載檔案,并提供一套標(biāo)準(zhǔn)機(jī)制,可通過PC或裝置來控制音量,還能針對(duì)編輯后的播放清單進(jìn)行同步化處理。MTP讓USB傳輸成為媒體播放器的延伸功能,而不是一種“特殊模式”。
MSC則較適合簡(jiǎn)單的媒體播放器,并鎖定各種海量存儲(chǔ)裝置應(yīng)用。例如Sony的DVDirect DVD錄像機(jī),可搭載足夠的智能功能,能刻錄DVD,并利用Roxio與Nero等商業(yè)DVD刻錄軟件的各種功能,這些軟件可以和各種高容量裝置進(jìn)行通訊。
MTP裝置的市場(chǎng)持續(xù)擴(kuò)張,加上數(shù)字音樂與影片內(nèi)容如雨后春筍般地成長,MSC與新型媒體傳輸協(xié)議的硬件平臺(tái)發(fā)展空間值得期待。MSC將繼續(xù)堅(jiān)守傳統(tǒng)角色,扮演搭載硬盤裝置的最佳選擇,并提供其他功能。MTP則將繼續(xù)擴(kuò)展高端、復(fù)雜型媒體播放裝置市場(chǎng),在各種多功能硬件上提供極佳的使用者體驗(yàn)。
評(píng)論