IGRS和UPnP協(xié)議互連機制分析
作者:北京郵電大學(xué)自動化學(xué)院 徐剛
北京六合萬通微電子技術(shù)有限公司 楊軍
摘 要:IGRS(信息設(shè)備資源共享協(xié)同服務(wù)協(xié)議)與UPnP是數(shù)字家庭網(wǎng)絡(luò)中的兩大主流協(xié)議,本文從組成機制的角度對兩個協(xié)議進(jìn)行了對比和抽象,闡述了兩種協(xié)議互連的可行性,并提出了設(shè)備互連的解決方案。
關(guān)鍵詞:IGRS;UPnP;協(xié)議機制;設(shè)備互連
引言
隨著各種信息設(shè)備的功能越來越強大以及網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,設(shè)備間如何更加方便、智能的互聯(lián)以及更好的協(xié)同工作已經(jīng)成為人們關(guān)注的焦點。同時,在以知識經(jīng)濟(jì)和信息網(wǎng)絡(luò)發(fā)展為主題的今天,技術(shù)標(biāo)準(zhǔn)已成為經(jīng)濟(jì)全球化競爭的重要手段。由國內(nèi)“閃聯(lián)”提出的IGRS協(xié)議和由國際17大廠商聯(lián)盟提出的UPnP技術(shù)應(yīng)運而生,在這種競爭中扮演著重要的角色。如何解決好兩大協(xié)議設(shè)備之間的互連互通,將成為今后一段時間內(nèi)研究和討論的重要課題。
圖1 IGRS體系結(jié)構(gòu)圖 |
IGRS協(xié)議簡介
IGRS協(xié)議可以在有限范圍網(wǎng)絡(luò)域(有線、無線)內(nèi),支持多種信息設(shè)備、家用電器、通訊設(shè)備之間的設(shè)備自動發(fā)現(xiàn)、動態(tài)組網(wǎng)、資源共享和協(xié)同服務(wù),從而提高這些設(shè)備間的互操作性和易用性,并創(chuàng)造出新的應(yīng)用模式和豐富的應(yīng)用。IGRS協(xié)議的體系結(jié)構(gòu)如圖1所示。
UPnP協(xié)議簡介
UPnP 使用標(biāo)準(zhǔn)的 IP 協(xié)議集,從而保持了網(wǎng)絡(luò)媒體的不可知性, 使用開放的標(biāo)準(zhǔn)協(xié)議,如 TCP/IP、HTTP 和 XML。UPnP 利用了多種現(xiàn)有的標(biāo)準(zhǔn)協(xié)議,使用這些標(biāo)準(zhǔn)化的協(xié)議有助于確保供應(yīng)商之間的互操作性。由于許多協(xié)議已在使用之中,因此,幾乎不需要執(zhí)行任何操作就可以讓 UPnP 設(shè)備在現(xiàn)有的網(wǎng)絡(luò)化環(huán)境中工作?!?
IGRS和UPnP設(shè)備互連的可行性基礎(chǔ)
IGRS與UPnP協(xié)議組成機制抽象
IGRS和UPnP協(xié)議都是使用了許多標(biāo)準(zhǔn)的協(xié)議機制,通過對兩個協(xié)議的分析,可以建立抽象協(xié)議模型。
IGRS與UPnP互操作實現(xiàn)基礎(chǔ)
兩個協(xié)議都是由設(shè)備間尋址機制、設(shè)備/服務(wù)發(fā)現(xiàn)機制、設(shè)備/服務(wù)描述機制、服務(wù)間控制和調(diào)用機制、服務(wù)事件與通知機制組成。可以從各個機制是如何實現(xiàn)的這一角度上對兩個協(xié)議進(jìn)行簡單比較,從而找出兩個協(xié)議互連的可行性:
(1)設(shè)備間尋址機制,UPnP的尋址方式由靜態(tài)IP、動態(tài)DHCP和Auto-IP分配相結(jié)合組成,而IGRS協(xié)議中并沒有限定設(shè)備間尋址的問題,設(shè)備間的尋址可以由IGRS協(xié)議以外的機制來實現(xiàn)。所以兩個協(xié)議都支持設(shè)備使用靜態(tài)IP、動態(tài)DHCP和Auto-IP的尋址方式。
(2)設(shè)備/服務(wù)發(fā)現(xiàn)機制,IGRS的設(shè)備/服務(wù)發(fā)現(xiàn)機制包括了基于全局對等組和基于主從設(shè)備組的設(shè)備/服務(wù)發(fā)現(xiàn)機制。UPnP的設(shè)備/服務(wù)發(fā)現(xiàn)機制使用SSDP協(xié)議,以UDP多播為基礎(chǔ)。IGRS基于全局對等組的設(shè)備/服務(wù)發(fā)現(xiàn)機制也建立在SSDP協(xié)議基礎(chǔ)上。通過SSDP協(xié)議,IGRS與UPnP可以實現(xiàn)設(shè)備/服務(wù)的相互發(fā)現(xiàn)。
(3)設(shè)備/服務(wù)描述機制, UPnP和IGRS都采用XML模板定義了設(shè)備描述模板,用于描述設(shè)備的各種信息,兩種模板在格式定義上有所區(qū)別,但是IGRS設(shè)備描述模板是可擴(kuò)展的,可以在其中加入UPnP所能識別的描述元素。
IGRS采用WSDL作為服務(wù)描述模板,UPnP則使用自定義的UPnP Template Language for services做為服務(wù)描述模板,這兩種模板格式存在較大差異。但是,IGRS的服務(wù)描述中可以加入相應(yīng)的UPnP描述擴(kuò)展,從而使得UPnP設(shè)備可以識別IGRS服務(wù);IGRS設(shè)備對UPnP服務(wù)的識別是通過引入UPnP服務(wù)描述文檔解析引擎來實現(xiàn)的。
(4)服務(wù)間控制和調(diào)用機制,UPnP的服務(wù)調(diào)用機制采用SOAP協(xié)議實現(xiàn),IGRS則定義了基于會話的服務(wù)調(diào)用機制,同時支持基于非安全管道的客戶/服務(wù)間交互作為擴(kuò)展接口。IGRS服務(wù)可以在IGRS設(shè)備描述文檔中的服務(wù)描述中加入相應(yīng)的UPnP客戶訪問接口描述,從而實現(xiàn)與UPnP客戶間的交互和控制。
(5)服務(wù)事件與通知機制,UPnP采用GENA機制實現(xiàn)服務(wù)事件與通知機制,IGRS則采用基于管道(安全/非安全)的機制實現(xiàn)。但通過非安全管道機制,IGRS服務(wù)可以向UPnP客戶暴露事件訪問接口,實現(xiàn)與UPnP客戶間的事件交互、服務(wù)的事件訂閱并接收相應(yīng)的事件通知。
IGRS和UPnP設(shè)備
互連的解決方案
圖2為IGRS與UPnP設(shè)備互連的設(shè)備交互圖 |
IGRS協(xié)議中指出,IGRS與UPnP協(xié)議的消息接口為239.255.255.250:1900,雙方設(shè)備可以通過偵聽該地址而獲得對方設(shè)備/服務(wù)的在線宣告,通過向239.255.255.250:1900發(fā)送多播設(shè)備/服務(wù)查找消息,等待符合查找條件的對方設(shè)備/服務(wù)的查找響應(yīng),從而發(fā)現(xiàn)所需要的設(shè)備/服務(wù)。
當(dāng)設(shè)備離開網(wǎng)絡(luò)時,向239.255.255.250:1900發(fā)送設(shè)備離線宣告消息即可。對方設(shè)備通過偵聽該離線消息,可以發(fā)現(xiàn)設(shè)備離線。
設(shè)備/服務(wù)描述獲得及解析
當(dāng)設(shè)備發(fā)現(xiàn)對方設(shè)備/服務(wù)在線宣告消息后,IGRS設(shè)備可通過非安全管道向消息中的相關(guān)字段所指向的URL地址發(fā)出獲取設(shè)備描述的HTTP請求,獲取其設(shè)備描述文檔后,可以根據(jù)UPnP設(shè)備描述文檔格式定義并解析UPnP設(shè)備/服務(wù)的詳細(xì)信息,通過對描述文檔的解析,可以得到UPnP服務(wù)的描述文件獲取URL地址,UPnP服務(wù)控制入口URL地址,UPnP服務(wù)的事件訂閱入口地址。通過向UPnP服務(wù)的描述文件獲取URL地址,然后發(fā)送HTTP請求即可獲得該服務(wù)的描述文檔,通過對服務(wù)描述文檔的解析,即可獲知該服務(wù)所支持的詳細(xì)信息。
UPnP設(shè)備也可以獲取并解析IGRS的設(shè)備描述文檔,因為IGRS設(shè)備描述模板支持IGRS設(shè)備在IGRS設(shè)備描述中加入UPnP所定義的各種用于描述UPnP設(shè)備和服務(wù)的元素,以實現(xiàn)同一個描述文檔,這樣,既可以描述IGRS設(shè)備,同時也可以將IGRS設(shè)備以UPnP設(shè)備形式進(jìn)行描述。
服務(wù)控制和事件機制
IGRS設(shè)備發(fā)現(xiàn)并獲取了UPnP服務(wù)的服務(wù)描述、服務(wù)訪問控制入口地址和服務(wù)事件訂閱入口地址后,可根據(jù)UPnP服務(wù)訪問機制向UPnP服務(wù)訪問控制入口地址發(fā)送SOAP調(diào)用請求,以實現(xiàn)對UPnP服務(wù)的調(diào)用;再通過向服務(wù)事件訂閱入口發(fā)送事件訂閱請求,即可實現(xiàn)對UPnP服務(wù)的事件訂閱。
UPnP設(shè)備可以獲得IGRS服務(wù),通過IGRS設(shè)備描述文檔中發(fā)布的服務(wù)訪問控制接口及事件訂閱接口,這些接口地址所包含的IP地址和端口信息應(yīng)該包含在IGRS設(shè)備在線宣告消息當(dāng)中,這樣,UPnP客戶可以通過非安全管道實現(xiàn)與IGRS服務(wù)的控制和事件訂閱。
結(jié)語
本文介紹了IGRS和UPnP協(xié)議的主要組成機制,并通過對這些機制的分析建立了抽象的協(xié)議模型,從組成機制的實現(xiàn)角度解決了兩個協(xié)議互連的可行性問題,最后提出了兩個協(xié)議互連的具體方案。
雖然目前可以證明這兩個協(xié)議可以互連,但是在實現(xiàn)的細(xì)節(jié)上,有很多問題仍有待于進(jìn)一步解決,如互連過程中的安全問題。
評論