本文作者J.Walker 先生,英國NDS公司成員;O.J. Morries先生,英國Philips公司成員;B.Marusic先生,斯洛文尼亞Lijubljana大學成員。原文刊登于《IBC 2003論文集》,版權(quán)歸IBC所有。孫松林先生譯。
五 端到端的結(jié)構(gòu)
在分析完系統(tǒng)設計要求后,我們需要設計端到端的系統(tǒng)體系結(jié)構(gòu)。為此,首先定義一個分層模型,分析現(xiàn)有的候選技術(shù),并將他們映射到以前確定的各個層,為了更好地選擇硬件,需要再一步步細化各種選擇,并確定解決方案之間存在的差距,進而開發(fā)新技術(shù)或修改已有的技術(shù)。
從最終系統(tǒng)結(jié)構(gòu)的最高層來看如圖5所示。
圖5 系統(tǒng)結(jié)構(gòu)圖
1. 系統(tǒng)概念和標識符
很多對等網(wǎng)絡的核心思想,就是將擁有相似喜好的對等組或?qū)Φ葓F體集中起來。在Share it!中,這一思想仍然有效,但是我們將其擴展到用戶組上。用戶組具有三個屬性,它們定義了用戶如何在該用戶組中和其他用戶之間進行交互。這些屬性分別是:
●成員資格—受限的或不受限的;
●發(fā)布權(quán)限—有節(jié)制的和無節(jié)制的;
●可見性—隱藏或可見。
這些屬性的各種不同組合產(chǎn)生了不同的組類型,例如:
●不受限、無節(jié)制的可見組,例如,法拉利愛好組就是一個簡單的自管理組,組成員對一個既定的主題感興趣。所有的組成員都可以說明組關(guān)心的內(nèi)容;
●不受限、有節(jié)制的可見組,例如,BBC EastEnders欄目組,一個簡單實體(如BBC)就能表明組成員都感興趣的公共內(nèi)容;
●受限、無節(jié)制的隱藏組,例如,家庭組本身就對非組成員不可見,任何組成員都可以在組內(nèi)發(fā)布內(nèi)容。
在Share it!里,我們需要支持一系列內(nèi)容共享的模型,如廣播內(nèi)容和家庭制作的內(nèi)容。他們存在不同的可見性要求,比如,家庭制作的內(nèi)容可能會有一些隱私要求,而對于廣播內(nèi)容就不需要。到此為止,我們已經(jīng)定義了公共內(nèi)容和私有內(nèi)容——用戶可以隨意觀看公共內(nèi)容,而私有內(nèi)容則不可以(注意:即使你可以看到公共或私有內(nèi)容,你也有可能不具有獲取、消費或共享它的權(quán)限)。
公共內(nèi)容可以從任何一種用戶組中訪問,然而私有內(nèi)容只對有限的擁有成員資格的用戶組開放。一般而言,廣播內(nèi)容可以公開;但家庭制作的內(nèi)容既可能是私有的,也可能是公開的。原則上講,私有內(nèi)容可能被用作非法傳播的一種途徑(就像今天不受限的對等網(wǎng)絡那樣),所以需要一個檢查跟蹤機制以指明私有內(nèi)容的網(wǎng)絡出處。
該系統(tǒng)還需要用很多標識符來表示各種不同的實體,比如用戶、設備、內(nèi)容等,特別是內(nèi)容標識最容易出問題。在證實系統(tǒng)中,我們采用TV-Anytime內(nèi)容參考標識符(CRID),但是這卻把CRID的范圍延伸到原本希望的運用之外了。當用在對等內(nèi)容中時,CRID就存在缺陷;最初它只是用在受限實體上,用在廣播網(wǎng)而不是用在分布式網(wǎng)絡中的實體上。
2. 對等協(xié)議,發(fā)現(xiàn)和搜索內(nèi)容
在測試階段,該項目確定了一些候選對等協(xié)議,包括JXTA、UPnP和Gnutella。雖然UPnP是家庭內(nèi)部網(wǎng)絡結(jié)構(gòu)中常用的協(xié)議,但由于不具有可擴展性,所以限制了它在這種家庭到家庭網(wǎng)絡結(jié)構(gòu)中的應用。Gnutella協(xié)議比JXTA更基本,因而我們最初想擴展Gnutella來支持所需的功能,或者使用更完善但是較“笨重”的解決方案—JXTA。最終,我們選擇JXTA,是因為它是一個公開的對等協(xié)議,并由Sun微系統(tǒng)公司初創(chuàng)。
JXTA提供一個用于分布應用的平臺,互聯(lián)的對等端可以在對等系統(tǒng)中互相定位、參加團體活動并相互提供服務。JXTA是與編程語言、系統(tǒng)和網(wǎng)絡平臺無關(guān)的協(xié)議。
對等組是JXTA底層結(jié)構(gòu)的核心,一個對等組是全局內(nèi)所有對等成員的一個子集。單個參加者可以同時屬于多個組。JXTA提供協(xié)議核以實現(xiàn)對等成員的發(fā)現(xiàn)、資格認證和監(jiān)控。JXTA使用異步方式、單向通信通道、呼叫管道來發(fā)送和接收消息。所有數(shù)據(jù)交互在JXTA中都是以XML格式文檔形式進行的。JXTA提供很多Share it!對等功能,還包括JXTA對等組和Share it!用戶組之間的直接映射。我們已經(jīng)開發(fā)了一個位于JXTA協(xié)議之上的軟件層并為Share it!定義一個新的JXTA對等成員和對等組服務。
●發(fā)布、搜索、建議和通知服務(位于JXTA解析服務之上使用TVA支持的應用消息格式);
●用戶組成員資格服務(包括集中式和分布式);
●權(quán)限交涉服務;
●帶有地址簿功能的聊天服務;
●隱藏用戶組推薦服務。
Share it!按照TV-Anytime規(guī)范定義了查詢和應答的格式,并將其封裝到JXTA格式中,因此我們就可以借用JXTA機制在網(wǎng)絡中承載這些格式。
對于每個對等網(wǎng)絡,性能擴展性是很關(guān)鍵的問題,當考慮一個擁有很多對等用戶設備的潛在的大網(wǎng)絡時,就更要注意這個問題了。JXTA結(jié)構(gòu)包括兩種具有可擴展性的解決方案:除了前面提到的組概念,還有一種是超對等用戶覆蓋網(wǎng),稱為聚集對等用戶,它能提供一種有效的方法來緩存和轉(zhuǎn)發(fā)系統(tǒng)消息。雖然用戶還需要知道去查哪個對等用戶組,但JXTA對等組機制的應用為用戶搜索結(jié)果提供了附加價值。更重要的是,為對等用戶提供了一種有效的機制以生成查詢范圍,這些用戶往往擁有相關(guān)的內(nèi)容。盡管在保證擴展性上更加有效,但由于JXTA提供的搜索中心本身具有集中特性,所以我們并沒有考慮它們。
當考慮目前典型機頂盒產(chǎn)品中的資源時,完整的JXTA實現(xiàn)參考的確有很大的影響,并且我們將繼續(xù)考察如何改變這個影響,使它更加適用于該項目的STB設備。
3. 內(nèi)容傳送
在很多著名的IP內(nèi)容傳送協(xié)議中,我們選擇HTTP作為內(nèi)容下載協(xié)議以及RTP/RTSP協(xié)議作為實時流協(xié)議。如果當前內(nèi)部網(wǎng)和寬帶網(wǎng)的帶寬給定,媒體流很可能只在內(nèi)部網(wǎng)和網(wǎng)絡服務器到內(nèi)部網(wǎng)的連接上得以應用(正如大多數(shù)寬帶網(wǎng)絡的上行速率比下行速率低)。
然而原則上在Share it!系統(tǒng)中,如MPEG-2、MPEG-4的第二部分、MPEG-4第十部分,都可以支持多個視頻編解碼器。我們的樣品主要使用MPEG-2視頻,因為它是目前DVB唯一支持的標準。很顯然,基于盒式的轉(zhuǎn)碼比不編解碼和/或更低比特率效率要高,并可以在速率受限的鏈路上更快地傳輸。我們的系統(tǒng)支持這一技術(shù),但這不是我們實現(xiàn)的重點。
我們定義的“內(nèi)容集”允許多個媒體元素作為一個文件來傳送。這樣的元素包括MHP Xlet、靜止圖像等。
4. 元數(shù)據(jù)和元數(shù)據(jù)管理
在Share it!項目中,我們已經(jīng)盡可能地使用TV-Anytime作為元數(shù)據(jù)的標準。TV-Anytime的元數(shù)據(jù)形成了JXTA內(nèi)容廣告的集成,廣告是用來發(fā)布和搜索對等網(wǎng)絡上的內(nèi)容的。同時,我們也實現(xiàn)了兼容TV-Anytime SP006的元數(shù)據(jù)服務器以支持Share it!機頂盒的查詢及返回廣播元數(shù)據(jù)。
5. 權(quán)限管理和安全性
DRM是非常復雜的領(lǐng)域,有很多標準小組都在研究它。Share it!的重點是設計一個合適的模型支持家庭到家庭的共享,并擴展當前廣播權(quán)限模型。
至此,我們定義了兩種適合不同條件的應用,即:松接觸和緊接觸方法。
在松接觸模型中,權(quán)限協(xié)商和確認都是直接在互相信任的對等用戶間進行的。一般地,對等請求方已經(jīng)具有所需內(nèi)容的使用權(quán)限,同時它也要滿足對等服務方相應的權(quán)限要求才能獲得該內(nèi)容。
在緊接觸模型中,權(quán)限協(xié)商包括一個受信任的第三方作權(quán)限代理角色。一般來說,對等請求方不具有所需內(nèi)容的使用權(quán)限,而需要通過這個第三方代理才能達到對等服務方相應的權(quán)限要求,并獲得該內(nèi)容。
在系統(tǒng)內(nèi)部,我們定義了使用和共享準則。使用準則管理每個對等用戶使用內(nèi)容的能力,而共享準則決定對等用戶和其他對等用戶分享內(nèi)容的能力。這個系統(tǒng)的目標就是支持合理的全部內(nèi)容的分布模型,包括從優(yōu)質(zhì)電影到家庭制作的內(nèi)容。緊接觸方法使復雜交織的業(yè)務模型變得重要,并提供了一個收費的途徑。應用于給定內(nèi)容的具體模型,將由該內(nèi)容授權(quán)的用戶定義。對等用戶內(nèi)容共享權(quán)利的管理,可能是未來內(nèi)容提供商的一種新的的分銷方式。
該項目樣品實現(xiàn)了DRM協(xié)議,采用簡單的XML和JXTA業(yè)務,但是原則上DRM數(shù)據(jù)可以封裝到不同的權(quán)限描述語言中。
雖然我們的重點在于DRM,而不是安全性,但是我們也關(guān)注安全性和隱私問題(特別是對內(nèi)容的保護和DRM方案對應攻擊的魯棒性),而且該平臺正在加進入侵分析部分。
在系統(tǒng)結(jié)構(gòu)中,我們假設每個內(nèi)部網(wǎng)絡的Internet連接由網(wǎng)關(guān)保護,那么對等用戶和內(nèi)容傳輸協(xié)議必須支持網(wǎng)關(guān)和網(wǎng)絡地址解析(NAT)。
構(gòu)建管理權(quán)限的安全平臺的一個關(guān)鍵問題就是信任。管理和維護值得信任的設備,是實現(xiàn)內(nèi)容共享受限的先決條件。在典型的垂直電視平臺中,平臺運行商和安全技術(shù)提供商可以清晰地進行信任度管理。在水平市場上就不可能如此清晰地進行類似管理,然而可能有新辦法來提供這種服務。
6. APIs
在Share it!機頂盒的實現(xiàn)中,定義了很多Java API,使交互應用程序員可以利用Share it!的系統(tǒng)功能。這些擴展的MHP棧及支持的功能包括:
●TVAnytime位置解析;
●內(nèi)容訪問、控制和獲;
●元數(shù)據(jù)查詢(本地數(shù)據(jù)庫、對等用戶和TVA SP006服務器);
●Share it!用戶組訪問(注意:對于應用不是暴露JXTA的完整實現(xiàn),而是簡化抽象的版本);
●地址簿和用戶間的消息。
六 搜索、獲取內(nèi)容及權(quán)限——一個示例
討論完系統(tǒng)結(jié)構(gòu)的幾個問題之后,我們給出一個搜索、獲取內(nèi)容及權(quán)限的示例(如圖6)。這個例子說明了從另一個對等端搜索、獲取內(nèi)容及權(quán)限所要采取的步驟。例中,機頂盒A的用戶在搜索機頂盒B上的內(nèi)容。
七 結(jié)論
該項目研究了很多關(guān)于設計和應用的問題,涉及以電視為中心、連接家庭的對等網(wǎng)絡等比較廣的范圍。本文首先提出了有潛在的應用方案集,然后優(yōu)化使用模型,設計并修改P2P內(nèi)容共享協(xié)議、DRM協(xié)議和APIs來訪問這些新功能。我們正在開發(fā)一系列基于這些使用方案的測試應用,用于評價這個新業(yè)務思想和基本技術(shù)的價值。