国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

智能網(wǎng)關(guān)中基于UPnP的數(shù)字媒體服務(wù)技術(shù)的研究與實(shí)現(xiàn)

2015-03-15 08:12:58王志軍
新技術(shù)新工藝 2015年1期

周 鋮,王志軍

(1.武漢郵電科學(xué)研究院,湖北 武漢 430073; 2.烽火通信科技股份有限公司,湖北 武漢 430073)

智能網(wǎng)關(guān)中基于UPnP的數(shù)字媒體服務(wù)技術(shù)的研究與實(shí)現(xiàn)

周鋮1,王志軍2

(1.武漢郵電科學(xué)研究院,湖北 武漢 430073; 2.烽火通信科技股份有限公司,湖北 武漢 430073)

摘要:主要介紹了UPnP協(xié)議的組成單元,對UPnP協(xié)議的結(jié)構(gòu)以及UPnP網(wǎng)絡(luò)的工作原理做了詳細(xì)分析,同時(shí)還對DLNA架構(gòu)進(jìn)行了介紹;最后,在Linux平臺上,利用開源軟件進(jìn)行了數(shù)字媒體服務(wù)器的實(shí)現(xiàn)并給出了演示的結(jié)果。

關(guān)鍵詞:即插即用;數(shù)字生活網(wǎng)絡(luò)聯(lián)盟;數(shù)字媒體服務(wù)

隨著網(wǎng)絡(luò)和各種智能消費(fèi)電子設(shè)備的迅猛發(fā)展,ios移動設(shè)備和android智能終端已成為人們生活中的重要組成部分,尤其是在現(xiàn)在家庭網(wǎng)絡(luò)中,媒體共享已成為人們迫切的需求。通過智能網(wǎng)關(guān)的媒體共享服務(wù),可以實(shí)現(xiàn)家庭網(wǎng)絡(luò)對于視頻和圖片等媒體的共享,滿足人們的工作和生活需求。

UPnP(即插即用)技術(shù)是微軟提出的一種用于 PC 機(jī)和智能設(shè)備的常見對等網(wǎng)絡(luò)連接體系結(jié)構(gòu),其應(yīng)用范圍非常廣,能實(shí)現(xiàn)家庭自動化、視頻/音樂娛樂和圖片處理等功能。使用支持UPnP的設(shè)備就意味這可即插即用,這對日常工作和生活來說都是極大的便利。在UPnP的架構(gòu)中是沒有設(shè)備驅(qū)動的,功能均是通過現(xiàn)有的普通協(xié)議實(shí)現(xiàn),可以使用包括C、C++和JAVA在內(nèi)的語言進(jìn)行軟件開發(fā)[1]。

1UPnP

1.1UPnP組成單元

UPnP由下述3個基本單元組成[2]。

1)設(shè)備(devices)。設(shè)備是UPnP中最基本的單元,其代表著一個物理設(shè)備或者代表著一個邏輯設(shè)備,可以看成一個包含服務(wù)并嵌套了常規(guī)設(shè)備的“容器”,其還具有服務(wù)的功能。

2)服務(wù)(services)。服務(wù)是UPnP網(wǎng)絡(luò)中最小的控制單元,對外表現(xiàn)為具體的行為、模式,而行為或者模式可以用狀態(tài)和變量值來描述。

3)控制點(diǎn)(control points)。在UPnP規(guī)范中,控制點(diǎn)是UPnP網(wǎng)絡(luò)中的控制者,用戶請求設(shè)備執(zhí)行的控制是通過控制點(diǎn)來實(shí)現(xiàn)的。

1.2UPnP協(xié)議結(jié)構(gòu)

對于實(shí)現(xiàn)網(wǎng)絡(luò)中設(shè)備、服務(wù)和控制點(diǎn)之間的互通互聯(lián),UPnP提供了一套很完整的協(xié)議棧,下面對UPnP所使用到的協(xié)議做簡單的介紹與分析。

UPnP體系結(jié)構(gòu)使用的協(xié)議棧中,在最底部的是IP層,所有上層數(shù)據(jù)的收發(fā)均是通過IP協(xié)議進(jìn)行的;在傳輸層,使用TCP/UDP協(xié)議進(jìn)行傳輸??梢钥闯觯琓CP/IP協(xié)議是UPnP設(shè)備工作的基礎(chǔ)。作為UPnP結(jié)構(gòu)中的核心部分,HTTP協(xié)議以及HTTPMU、HTTPU協(xié)議被UPnP協(xié)議所使用,所有的UPnP上層消息均通過HTTP協(xié)議及其衍生協(xié)議來傳輸。HTTP協(xié)議及其衍生協(xié)議在格式上與HTTP協(xié)議是一樣的,只是HTTPMU、HTTPU協(xié)議可以通過UDP發(fā)送消息,而HTTP協(xié)議只能通過TCP發(fā)送消息。

在UPnP中,不同類別的應(yīng)用使用的上層控制協(xié)議是不同的,SSDP(simple service discovery protocol)提供了在局部網(wǎng)絡(luò)中發(fā)現(xiàn)設(shè)備的機(jī)制;GENA(generic event notification architecture)定義了事件訂閱者和事件發(fā)布者2個概念,提供了事件接收和發(fā)送的機(jī)制;SOAP(simple object access protocol)定義了使用XML和HTTP來進(jìn)行遠(yuǎn)程過程調(diào)用的方法。

UPnP自己定義的標(biāo)準(zhǔn)處于UPnP協(xié)議結(jié)構(gòu)的上層,在協(xié)議結(jié)構(gòu)的最頂層,設(shè)備制造商定義了各自設(shè)備的信息。

1.3UPnP工作流程

UPnP的主要工作流程如圖1所示。

圖1 UPnP工作流程

1) 尋址。尋址即獲取地址,TCP/IP協(xié)議族是UPnP網(wǎng)絡(luò)的基礎(chǔ),這就決定了UPnP設(shè)備必須獲得IP地址才能正常工作。

2)發(fā)現(xiàn)。當(dāng)UPnP設(shè)備正確接入網(wǎng)絡(luò)后,UPnP發(fā)現(xiàn)協(xié)議就會讓設(shè)備在網(wǎng)絡(luò)上將其服務(wù)通知給控制點(diǎn);同樣,當(dāng)控制點(diǎn)正常接入網(wǎng)絡(luò)后,UPnP發(fā)現(xiàn)協(xié)議就會讓控制點(diǎn)在網(wǎng)絡(luò)上搜尋自己感興趣的設(shè)備。

3)描述。當(dāng)控制點(diǎn)發(fā)現(xiàn)設(shè)備后,控制點(diǎn)需要從設(shè)備提供的發(fā)現(xiàn)消息中提供的URL中重新獲取設(shè)備的描述信息,這些描述信息都是以XML的格式提供的。

4) 控制。當(dāng)控制點(diǎn)獲取到了一個設(shè)備的描述信息之后,控制點(diǎn)就可以向設(shè)備發(fā)送適當(dāng)?shù)目刂葡???刂泣c(diǎn)和設(shè)備的交互過程是通過狀態(tài)值進(jìn)行標(biāo)識的。

5) 展示。如果一個設(shè)備由一個URL用來展示,則控制點(diǎn)可以從這個URL獲取1個頁面,將頁面載入瀏覽器中,用戶可以通過頁面來控制設(shè)備或者查看設(shè)備的狀態(tài)。

6)事件。在服務(wù)進(jìn)行的整個周期內(nèi),變量值的變化或者模式狀態(tài)的變化均可認(rèn)為是一個事件。數(shù)據(jù)格式為XML,被封裝在GENA中,通過HTTP協(xié)議進(jìn)行傳輸。

2數(shù)字生活網(wǎng)絡(luò)聯(lián)盟(DLNA)[3]

數(shù)字生活網(wǎng)絡(luò)聯(lián)盟(DLNA,全稱Digital Living Network Alliance)是索尼、英特爾和微軟等公司與2013年6月發(fā)起成立的,旨在實(shí)現(xiàn)個人PC、智能終端等通過無線網(wǎng)絡(luò)和有線網(wǎng)絡(luò)實(shí)現(xiàn)信息互聯(lián)。與UPnP一樣,DLNA使用的仍然是現(xiàn)有的網(wǎng)絡(luò)技術(shù),這樣就可以兼容各種不同類型的設(shè)備。DLNA由網(wǎng)絡(luò)連接、網(wǎng)絡(luò)協(xié)議、媒體傳輸、設(shè)備的發(fā)現(xiàn)控制和媒體管理以及媒體格式組成。

1) 網(wǎng)絡(luò)連接。網(wǎng)絡(luò)連接規(guī)定了所接入網(wǎng)絡(luò)的類型和協(xié)議,主要有802.11a/b/g/n、藍(lán)牙、802.3i/u和MoCA等。

2)網(wǎng)絡(luò)協(xié)議。IPv4是目前DLNA必須支持的,以后將擴(kuò)展支持IPv6。

3)設(shè)備發(fā)現(xiàn)、控制和媒體管理。設(shè)備之間的相互發(fā)現(xiàn)是通過UPnP實(shí)現(xiàn)的,DMP(digital media player)通過UPnP機(jī)制來搜索網(wǎng)絡(luò)上可以相互匹配的DMS(digital media server),成功連接之后即可以進(jìn)行視頻播放或者其他的傳輸工作。這些工作均是自動化的。

4)媒體傳輸。DLNA的媒體傳輸規(guī)定了所有的DLNA設(shè)備都必須支持使用HTTP協(xié)議進(jìn)行媒體的傳輸。

5)媒體格式。規(guī)定了進(jìn)行數(shù)字媒體和內(nèi)容的共享以及使用時(shí)候的媒體格式必須支持JPEG、MPEG、LPCM,還有GIF、MP3、AVC等可選支持。

3數(shù)字媒體服務(wù)器(DMS)的實(shí)現(xiàn)與演示

本文采用基于Linux平臺的開源軟件Ushare來實(shí)現(xiàn)數(shù)字媒體服務(wù)器。Ushare可以運(yùn)行在Linux內(nèi)核的主機(jī)上,但是系統(tǒng)需要支持fuse機(jī)制(2.6.14版本以上的內(nèi)核均支持fuse模塊);Ushare的編譯與運(yùn)行還需要依賴ffmpeg、libupnp和libdlna 3個庫來運(yùn)行;Ushare需要運(yùn)行在br0接口,所以需要確定橋代碼中將239.255.255.250的廣播報(bào)文廣播到CPU口,以供程序監(jiān)聽。

編譯Ushare之前,需要編譯ffmpeg、libupnp和libdlna 3個庫,其中ffmpeg庫是用來進(jìn)行用戶媒體文件格式識別的,libupnp是實(shí)現(xiàn)UPnP所依賴的庫和協(xié)議,libdlna是實(shí)現(xiàn)dlna所依賴的庫和協(xié)議。導(dǎo)入ffmpeg、libupnp和libdlna庫到相應(yīng)的目錄下,導(dǎo)入ffmpeg、libupnp和libdlna庫所在的環(huán)境變量的位置以供Ushare運(yùn)行時(shí)使用,在Ushare使用之前,還必須配置Ushare的命令參數(shù),例如共享目錄和頁面使用端口等參數(shù)都是必須配置的。

本文在運(yùn)行Linux系統(tǒng)的家庭網(wǎng)關(guān)(home gateway)上實(shí)現(xiàn)DMS,用1臺PC(運(yùn)行Win7系統(tǒng))做數(shù)字媒體播放器和控制點(diǎn),將電腦通過普通網(wǎng)線與網(wǎng)關(guān)的LAN側(cè)相連。要在Win7中進(jìn)行演示還需要打開Function Discovery Provider Host、Function Discovery Resource Publication、SSDP Discovery和UPnP Device Host 這4個服務(wù)。

網(wǎng)關(guān)啟動之后,就可以通過頁面進(jìn)行訪問這個DMS,并且可以修改共享目錄,效果如圖2所示。

圖2 頁面訪問DMS截圖

在網(wǎng)關(guān)LAN側(cè)的Win7系統(tǒng)中,從網(wǎng)上鄰居可以查看到媒體設(shè)備中出現(xiàn)了TestUShare設(shè)備,用WMP(windows media player)來播放此設(shè)備中的媒體文件,在整個試驗(yàn)過程中,WMP能正常播放TestUShare設(shè)備中的媒體文件。

4結(jié)語

本文主要介紹了UPnP的組成、協(xié)議結(jié)構(gòu)和工作流程以及DLNA,使用開源庫來進(jìn)行了功能開發(fā)。從測試結(jié)果可以看出,順利完成了DMS(數(shù)字媒體共享服務(wù)器)的設(shè)計(jì),實(shí)現(xiàn)了多媒體內(nèi)容的共享服務(wù)功能。

參考文獻(xiàn)

[1] 楊志明. 基于UPnP技術(shù)的媒體服務(wù)器的設(shè)計(jì)和實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2005, 22( 6): 126-127.

[2] 石勇,袁璐鳴. UPnP開發(fā)技術(shù)及應(yīng)用[J].計(jì)算機(jī)與數(shù)字工程,2008,222:158-160.

[3] 張容娟. DLNA數(shù)字媒體服務(wù)器的研究與實(shí)現(xiàn)[J]. 綿陽師范學(xué)院學(xué)報(bào),2012,31(11):94-97.

責(zé)任編輯李思文

Research and Implementation of Digital Media Service Technology based on UPnP in Intelligent Gateway

ZHOU Cheng1,WANG Zhijun2

(1.Wuhan Research Institute of Posts and Telecommunications, Wuhan 430073,China;2.FiberHome Telecommunication Technologies Co., Ltd , Wuhan 430073, China)

Abstract:The paper mainly introduced the components of UPnP protocol, and then made a detailed analysis of the structure of UPnP protocol and the working principle of UPnP network. The paper also introduced the architecture of DLNA in detail. Finally, realized the digital media server based on open source software in the Linux platform and gave concrete realization of the digital media server and the presentation of the results.

Key words:UPnP, DLNA, digital media services

收稿日期:2014-12-03

作者簡介:周鋮(1989-),男,碩士研究生,主要從事通信與信息系統(tǒng)等方面的研究。

中圖分類號:TN 919

文獻(xiàn)標(biāo)志碼:A

隆安县| 岱山县| 龙里县| 佛坪县| 文登市| 越西县| 巨鹿县| 广昌县| 广宁县| 砚山县| 灵武市| 怀远县| 沅陵县| 长顺县| 嵩明县| 石门县| 梅州市| 莲花县| 兴隆县| 黔西| 关岭| 清新县| 射阳县| 杂多县| 留坝县| 肥城市| 肥乡县| 清丰县| 喀什市| 濮阳县| 镇坪县| 平乡县| 华安县| 济源市| 延长县| 屯留县| 盘山县| 辽阳县| 潞城市| 五台县| 台中市|