




已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
山东大学硕士学位论文 摘要 随着宽带接入业务、智能家电等电子产品的普及以及用户对家庭电子产品的 监控和共享需求的上升,数字家庭网络的概念和应用越来越受到电信运营业、 和家电产业的关注。数字家庭网络的目的是打破各个家庭设备是“信息孤岛 的 事实,实现家庭中各种信息终端之间的资源共享和协同服务。其发展必将引发一 场全球范围的网络通信革命风暴。 数字家庭网络的实现需要一个能够使各种不同设备无缝联系、相互操作的开 放式标准。经过数字家庭网络几年的发展,国外的i 胁p ( u i 曲e r s a lp l u g 龇dp l a y , 即通用即插即用) 协议和国内的i g 壬峪( h l t e l l i g e n tg r o u p i n g 锄dr e s o u r c es h 撕n g ) 协议逐渐成了其中的两大主流协议标准。如何方便实现网络设备及家电设备之间 的自动发现、相互控制、资源共享及协同服务成为了热点。双协议栈概念的提出, 在实现解决这些热点问题方案的同时,探讨如何能够把i g r s 协议和i 胁p 协议 融合起来,抽象出其共同特点,解决其不同之处,生成一个能同时支持这两种协 议的双协议栈。双协议栈a v 应用框架是双协议栈平台中最重要的应用框架,也 是实现数字家庭网络中a v 媒体应用系统的基础。通过双协议栈的a v 应用框架, 我们可以实现有应用价值的双协议栈控制点和双协议栈媒体服务器等。 本文通过对i g r s 协议和u p i l p 协议的各相关层对比,分析其寻址、发现、 描述、控制等各个方面的特点,抽象出两个协议中相同的基础模块,解决了两种 协议在各个层次上的区别带来的问题,提出了一种数字家庭网络中i g r s 和u p i l p 双协议栈的实现方法。在此基础上,为了实现数字家庭协议在a v 方面的应用, 本文提出了一种有效的双协议栈a v 应用框架实现方案,在a v 框架层提出了双 协议栈控制点、双协议栈媒体服务器和双协议栈媒体播放器的实现方案,并分别 对这些划分提出具体的模块设计方案和实现流程。最后,本文以双协议栈a v 应 用框架为基础,构建了用于数字家庭网络的双协议栈控制点和媒体服务器。 双协议栈概念的提出和实现,目标是使得i g r s 和i j l h p 两种协议能够合理地 融合在一起,同时支持它们,而又比同时安装两个协议栈有更小的开销,这将会 是一个更为理想的实现状态,其实现具有很强的实用价值。 关键词数字家庭网络;lg r s 协议:u p n p 协议;双协议栈; l li 东大学硕士学位论文 a b s tr a c t w 油t h ed e v e l o p m e n to f b r o a d b 觚da c c e s s ,p o p u l 耐锣o fe l e c t r i cp r o d u c t ss u c h 私i m e l l e c t u a lh o m ea p p l i a l l c e sa n dg r o 谢n gd e m a i l d si 1 1m es u p e i s i o n 觚ds h 撕n g o f h o m ee l e c t r i cp r o d u c t s ,m ec o n c 印t 锄da p p l i c 撕o no fd i 百t a li i o m en 印r kh 嬲 i n c r e 嬲i n g l yd r a w lt h e 甜e n t i o no ft e l e c o mo p e r a t o r s ,i ta n dh o m ea p p l i a i l c 鼯 p r o d u c e r s 1 1 1 ep u r p o s eo fd 垮t a lh o m en e t w o r ki st 0b r e a l 【t t l ef 融so f 蛐硼撕o n i s o l a t e di s l a n d ,r e a l i z et h er e s o u r c es h 撕n g 锄ds e r v i c ec o o p e r a t i o no fv 缸o u s i n f o n 】l a t i o nt e h n i n a l s i t sd e v e l o p m 肌t 、访l li n 鲥t a b l yl e a dt oaw o d i l w i d er e v 0 1 u t i o n i nn e 咖r kc o n u n u n i c a t i o n s 1 1 l er e a l i 蒯o no f d i g i t a lh o m en 咖r k d 印e i l d so n 锄o p 锄s t a i l d a r d w h i c h e n a b l e ss e 砌e s sc o m l e c t i o na n dm u t i l a lo p e r a t i o no fd i f f e r e n tk i i l d so fd e v i c e s a r e r s o m ey e a r sd e v e l o p m e n to fd i g i t a lh o m en e t v 旧r k ,t l l ei 刀p n pm i v e r s a lp l u g 锄d p l a y ) a n di g r s ( h t e l l i g e n tg r o u p i n g 锄dr e s o u r c es h 撕n g ) h a v eg r a d u a l l yb e c o m e 血e 觚om a i np r o t o c o l s h o wt 0r e a l i z em ea u t o m 撕cd i s c 0 e 巧,m u t u a lc o n t r o l , r e s o u r c es h 撕n ga n dc o o p e r 撕v es e i c eo fn e t v v o r kd e v i c 鹤锄dh o m e 印p l i 粕c 懿 c o n v e n i e n t l yh a sb e e naf o c u s e dp r o b l e m t h e n c 印to fd u a lp r o t o c o ls t a c k ,s o l v e s m e s ef o c u s e dp r o b l e m s ;m e a i l w h i l e ,d i s c u s sh o wt 0 觚et l l ei 胁pp r o t o c o l 舭di g r s p r o t o c o l ,a b s 仃a c tm e c o m m o nf e 批e s ,t a c k l et h ed i f f e r e n c e s 觚dg e n e r a t eai ) u a l p r o t o c o ls t a c k 廿l a ts u p p o r t st h e 呐op r o t o c o l sa tt l l es 锄ed m e t h e d u a lp r o t o c o l s t a c ka va p p l i c a t i o nf r 锄e w o r ki sm em o s ti m p o n 觚t 印p l i c a 矗o n 仔a m e w o r ki n d u a lp r o t o c o ls t a c kp l a t f o r ma i l dm ee l e m e n t st or e a l i z ea vm e d i aa p p l i c 撕0 n 夥s t e mi nm ed 诤t a lh o m en e t w o r k w ec 锄r e a l i z e 也ed u a lp t o c o ls t a c kc o i l 仃o l p o i n ta i l dd u a lp r o t o c o is t a c km e d i as e r v e rt l l r o u 曲u s a g eo fd i l a lp r o t o c o ls t a c k a v a p p l i c a t i o nf r 锄e w o r k t h i sp a p e rc o m p a r e sm ec o l l r e s p o n d i n gl a y e r so fi g r sp r o t o c o l 锄di 册l p p r o t o c 0 1 ,a n a l y s e st h e i rf b a t u r e si na d 出e s s i n g ,d i s c o v e 巧,d e s c r i p t i o n ,c o n t r o la n d o n ,a b s t r a c t st l l es 锄ef 妇d 锄e n t a lm o d l l l e so fm e i i l t a c k l e st l l ep r o b l e 瞄b r o u 曲tb y m ed i 髓r e n c e si na l lt l l el a y e r s ,锄dp r e s e ma p r 甸e c tt 0r e a l i z et 量l ei g r sa 1 1 di 胁p i i 山东大学硕士学位论文 d u a lp r o t o c o ls t a c ki i ld i 酉t a lh o m en e t w o r k m e a n w h i l e ,i no r d e rt 0i m p l e m e n tt l l e a v 印p l i c 撕o n0 fd 画t a lh o m en e t v v o r k ,m ep 印e rp r e s e n t s 锄e 舭c t i v ep r o je c tt 0 r e a l i z e 吐l ed u a l 胁t o c o ls t a c ka va p p l i c 撕o nf r 锄e 、】v o r k m s 觚n e w o r kp r e s e i 】峪 m ew a yt 0r e a l i z em ei ) u a lp r o t o c 0 1s t a c kc o n t r o lp o i n t d u a lp r o t o c o ls t a c km e d i a s e e r 锄dd u a lp r o t o c 0 1s t a c km e d i ar e n d e r e l 锄d 西v e st h ed e t a i l e dm o d u l ed e s i g n a n di m p l e m 即t 撕o np r o c e s s f i n a l i y ,m ep a p e rc o n s t r i l c t sad u m p r o t o c o ls t a c k c 0 哪lp o i n ta n dad u a lp r o t o c o ls t a c km e d i as e e rb a s e do nm em i a lp r o t o c o ls t a c k a v a p p l i c a :c i o n 仃a m e w o r k k e y w o r d sd i g i t a ih o m en e t w o r k :i g r s :u p n p :d u a ip r o t o c o is t a c k : i i i 原创性声明和关于论文使用授权的说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下, 独立进行研究所取得的成果。除文中已经注明引用的内容外,本 论文不包含任何其他个人或集体已经发表或撰写过的科研成果。 对本文的研究做出重要贡献的个人和集体,均已在文中以明确方 式标明。本声明的法律责任由本人承担。 论文作者签名:垄垫垒透日期:丛星:垒:皇 关于学位论文使用授权的声明 本人完全了解山东大学有关保留、使用学位论文的规定,同 意学校保留或向国家有关部门或机构送交论文的复印件和电子 版,允许论文被查阅和借阅;本人授权山东大学可以将本学位论 文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印或其他复制手段保存论文和汇编本学位论文。 ( 保密论文在解密后应遵守此规定) 论文作者签名:蚴导师签名:玉3 型钆日 期:2 超:生兰 山东大学硕士学位论文 第一章绪论 1 1 数字家庭和数字家庭网络 数字家庭n 1 以计算机技术和网络技术为基础,各种家电通过不同的互连方式 进行通信及数据交换,实现家用电器之间的“互联互通 ,使人们足不出户就可 以更加方便快捷地获取信息,从而极大提高人类居住的舒适性和娱乐性。其特点 为各种设备实现互相识别、资源共享,具有高度的数字化和联网化。 “数字家庭 可以看作是信息产业向消费化发展的一个趋势,它侧重技术的 家庭应用,强调信息和控制的信息化,因此也可以把“数字家庭”看作是一个产 业。从用户的角度来讲,数字家庭应该是一种数字化生活,消费和娱乐数字化, 这是3 c 融合的一种具体体现。中国的数字家庭才刚起步,至今还没有一个公认 的“数字家庭定义,不过从现在看来最先和最快实现的数字家庭应用很可能是 家庭娱乐方面。 数字家庭网络【2 】是指通过家庭网关将公共网络功能和应用延伸到家庭,并以 有线网络或无线网络连接各种信息终端( 如家电、p c 等) ,提供语音、数据、多 媒体、控制和管理等功能,达到信息在家庭内部终端之间及其与外部公网的充分 流通和共享。从用户的角度来看,通过数字家庭网络可以享受以下服务:上网、 p 电话、v o d 点播、基于a s p 的海量存储和个性化的信息服务、互动的娱乐游戏、 远程网络上的家庭控制和安全服务管理等。 1 2i g r s 协议和u p n p 协议 在数字家庭领域,当今世界最主要的两种协议就是i g 】强【3 ,4 1 协议和i 刀抽p 【5 ,6 ,7 】 协议。它们为数字家庭网络中各种设备的互联互通、自动发现、资源共享、协同 服务定义了一组各自的标准和接口。 i g r s ( h l t e l l i g e n t u p i n ga 1 1 dr i e s o u r c es h 撕n g ) 是由国内几大主要家电厂 商在信息产业部支持下成立的“闪联 工作组所制定。它是一种架构于t c p 口 之上的网络应用层协议,其目标是在有限范围网络域( 有线、无线) 内,通过遵 山东大学硕七学位论文 循共同资源描述及功能服务接口标准,支持多种信息设备、家用电器、通讯设备 之间的设备自动发现、动态组网、资源共享和协同服务,从而提高这些设备间的 互操作性和易用性,并创造出新的应用模式和丰富的应用。 i 胁p ( u n i v e r s a lp l u ga i l dp l a y ) 面向的是口网络以上的各层,以t c p 】口和 整个h l t e m e t 为基础,主要规定了数字家庭中的设备将如何互联互通,设备如何 发现对方及对方的功能、内容与格式以实现相互通信。该标准能让具有不同操作 系统、程序语言或物理网络连接的设备相互发现和实时控制。 1 3 主要研究内容 i g r s 协议和i 刀如p 协议作为数字家庭领域的两大主流协议,它们的制定具有 相同的目标和相似的体系结构,甚至在它们的各层中的关键机制都使用了相同的 协议。但是,如果未经配置和处理,分别安装了上述两种协议的数字设备之间是 无法进行发现和控制的。而另一方面,人们希望数字家庭的这两种主流协议能够 实现互操作。这样,一个数字家庭网络中的设备不管安装了何种协议,在用户看 来都是透明的。在这种情况下,我们引出了本文双协议栈的概念。 本文通过对i g r s 协议和i 胁p 协议这两种协议的相关层进行对比分析【8 】,抽 象并融合两种协议的相同模块,同时处理它们的差别,提出了一种用数字家庭多 媒体双协议栈来实现两种协议互连互通的方式。 本文所作的主要研究工作概况如下: ( 1 ) 双协议栈系统框架的设计。通过对比i g r s 协议和u i i l i ,协议的寻址、设备 和服务发现、设备和服务描述、服务控制和调用、服务事件和通知这些工作 流程,设计双协议栈的系统框架。 ( 2 ) 双协议栈的消息生成与处理机制的实现。对双协议栈中的各种消息,包括广 播消息、服务调用请求消息、服务调用响应消息的定义、生成、解析,并进 行处理,以满足应用的需要。 ( 3 ) 双协议栈的应用框架设计。按照双协议栈控制点、双协议栈媒体服务器和双 协议栈媒体播放器三大模块分类设计,并对各模块进行具体的功能模块划分 和设计。 ( 4 ) 双协议栈应用程序的实现。在所设计的双协议栈及其a v 应用框架的基础上, 2 山东大学硕士学位论文 完成一个数字家庭中双协议栈应用的示例。 1 4 组织结构 本文第一章主要介绍了研究领域的一些概念,阐述了基本的研究领域和主要 内容;第二章通过两种协议组成机制的对比分析,来对双协议栈进行设计,解决 它们融合过程中的各种问题;第三章按照双协议栈控制点、双协议栈媒体服务器 和双协议栈媒体播放器三大模块划分,介绍双协议栈a v 应用框架的设计与实现; 第四章以双协议栈控制点和双协议栈媒体服务器为例,介绍了双协议栈应用的实 现;第五章进行总结和展望,总结论文工作,提出需要改进的地方。 1 5 本章小结 在信息技术正加快向网络化、数字化、智能化方向发展的今天,设备间如何 更加方便、智能的互联以及更好的协同工作成为人们关注的焦点。数字家庭网络 发展到今天,已经不再仅仅是概念上的东西。国内的i g r s 厂商和国外的i 】p 1 1 p 厂 商都已经有大量的数字家庭产品问世,这极大的加速了家庭的数字化进程。而对 于能够融合两种协议,同时支持两种协议的双协议栈的研究与设计,也必将成为 在数字家庭领域里人们关注的下一个焦点。 山东大学硕士学位论文 第二章i g r s 和u p n p 双协议栈的分析与研究 2 1 双协议栈概念的引入 正如第一章所讨论,i g r s 协议和i 刀抽p 协议虽然在相当多的地方具有相似性 甚至采用某些相同的协议,如h 兀p 1 1 【9 1 ,t c p p ,s s d p ,s o a p l 1 【1 0 川】,g e n a 等,但是未经配置和处理,安装了两种协议的设备是无法自动发现、动态联网、 资源共享的。而数字家庭产业化发展的大趋势必然决定,人们迫切的希望这两种 协议能够兼容,从而使得安装了两种协议的设备能够互相发现和利用对方的资 源。在这种情况下,我们提出了双协议栈的概念。它的提出,目标是使得i a 珞 协议和i 脚p 协议能够合理的融合在一起,同时支持它们,而又比同时安装两个 协议栈有更小的系统开销,因为两个协议有许多共同之处可以作为二者共同的模 块,从而提高数字家庭网络的效率和利用率。这是一个崭新的领域,目前尚没有 此方面的相关工作。 2 2i g r s 协议和u p n p 协议组成机制分析 i g r s 协议和i 胁p 协议的设计目标都是希望通过使各种设备遵循共同资源 描述及功能服务接口标准,支持它们的自动发现、动态组网、资源共享和协同服 务,从而提高这些设备间的互操作性。其目标相同,则必然决定了它们在结构和 设计上有一定的相似性。抽取两种协议的相似之处进行融合,是双协议栈分析与 研究的一个重要部分。 i g r s 协议和i 脚p 协议体系结构的各个层次中都使用了许多标准的协议机 制,如t p l 1 、t c p p 、s s d p 、s o a p l 1 ,g e n a 等,但是使用的方式会有 所不同。这些不同主要体现在:两种协议用这些机制生成了不同的消息模式和描 述模板:使用了有区别的服务调用方式。解决两种协议的区别带来的问题,是双 协议栈分析与研究的另一个重要部分。 按照i g r s 协议和i 胁p 协议的工作流程1 2 1 来划分,它们都包括如下几步:设 备寻址、设备和服务发现、设备和服务描述、服务控制和调用、服务事件和通知。 下面我就从这几个方面,对比两种协议的异同,探讨实现双协议栈的方式。 4 山东大学硕士学位论文 2 2 1 设备寻址 i 刀抽p 协议的寻址方式由静态d 、动态d h c p 和a u t 0 口分配相结合组成: i g r s 协议没有限定设备间寻址的问题,设备间寻址的方式可以由i g r s 协议以 外的机制实现。所以在寻址方式上,两种协议可以融合在一起。现在的实验环境 主要是采用静态口的方式。 2 2 2 设备和服务发现 i 胁p 协议的设备和服务发现机制【1 3 】是基于s s d p ( s i m p l es e i c ed i s c o v e 巧 p r o t o c 0 1 ) 协议,以i j l ) p 多播为基础,通过多播地址2 3 9 2 5 5 2 5 5 2 5 0 :1 9 0 0 向网络 中发送i 胁p 设备和服务的上下线广播消息;亦可以由控制点向网络中发送设备 和服务查找请求,并监听网络中符合查找条件的设备和服务的响应消息,从而发 现网络中的ij p r 】p 设备和服务。 i a 塔协议的设备和服务发现包括了基于全局对等设备组和主从设备组两种 方式。而基于全局对等设备组的设备和服务发现是建立在s s d p 协议基础之上 的。它也包括了基于u i ) p 的组播查找和基于设备和服务查找的单播响应两种方 式。 通过对比,通过s s d p 协议,i g 】玛协议和i 刀p i 】p 协议可以以在线宣告或者查 找与响应的方式实现设备和服务的相互发现。但是双协议栈需要处理在此过程中 两种协议消息格式的不同,包括设备和服务上下线广播消息与设备和服务查找请 求和响应消息。 2 2 3 设备和服务描述 i g r s 协议和i 刀抽p 协议都采用v 几【1 4 1 i1 6 1 语言来定义设备描述模板,描述设 备的各种详细信息。两种协议的设备描述模板在格式定义上有一定的区别,但双 协议栈可以通过定义一个解析引擎模块,分别识别这两种不同格式的模板,取得 i g r s 和1 肺p 设备的详细信息并保存,以备后续使用。 i a 蜗协议采用w s d l 【1 7 】语言来定义其服务描述模板,描述服务调用接口及参 数;切抽p 协议使用语言来描述自定义的一套服务描述模板。解析引擎模块 山东大学硕士学位论文 可以使i g r s 协议识别i 脚p 协议提供的服务,了解其接口和参数信息并保存。 i g r s 协议定义的设备和服务描述模板都具有可扩展性,i ,r 】p 协议识别i g 】媳协议 正是利用这机制,即扩展i g r s 协议的服务描述模板,使i 胁p 协议可以识别 i g r s 协议服务描述模板。双协议栈通过这种方式来融合两种协议的设备和服务 描述模板。 2 2 4 服务控制和调用 i 胁p 协议的服务调用和控制使用s o a p 协议来实现。ij p i l p 的设备描述文件 中,包括了服务描述文件的入口地址和所提供服务的控制切5 也。控制点通过服 务描述文件入口地址取得该设备所提供服务的服务描述文件儿,该描述文件 中包括了服务调用的所有接口和参数使用规则。控制点根据接口的调用规则生成 服务调用请求s o a p 消息,然后经过i 脚p 协议的封装,将封装后的消息发送到 服务的控制u r l 。设备对该消息进行解析处理,根据自身情况,生成响应消息, 并发送给控制点。控制点再对该响应消息进行解析处理,了解设备的状态并确定 自己下一步的动作。 i a 峪定义了基于会话的服务调用机制,同时它支持基于非安全管道的客户 与服务间交互作为扩展接口。i g r s 对于服务的控制和调用,采用了与i 胁p 相 似的过程。即控制点获得服务描述文件,根据格式要求构造服务调用请求消息, 然后通过设备上线时与控制点建立的非安全管道,发送这个服务调用请求消息。 设备收到这个请求消息后,通过解析处理,根据调用接口和请求参数的设置,取 得相应的参数,生成服务调用响应消息,然后通过管道返回给调用端即控制点端。 控制点端解析服务调用响应消息,了解设备的状态,确定自己下一步动作。 双协议栈对于服务控制和调用的融合可以采取如下的方式:i g r s 得到i j p i l p 设备的描述文件,取得服务的控制入口地址i j l 也和描述文件地址,进而可以了 解服务的接口和参数情况。至此,i a 娼就可以根据ij p l l p 接口的标准,构造i ) p 1 1 p 格式的s o a p 请求消息,发送到目标ij p i 】p 设备的服务控制入口地址来进行控制 并取得响应。i 刀响p 也可以取得i g r s 设备的设备和服务描述文档,并据此构造 i g r s 格式的服务调用请求,发送到非安全管道的入口地址,实现对i g r s 设备 的控制和调用。因此通过s o a p 协议,可以实现i g r s 和i 脚p 设备的互操作, 6 山东大学硕士学位论文 其不同仍然主要在于请求响应消息的区别,另外还有调用方式的区别。 2 2 5 服务事件和通知 i 刀p i l p 采用g e n a 机制实现服务事件与通知机制;i a 蝎采用基于管道( 安 全非安全)的机制实现。但通过非安全管道机制,i g r s 服务可以向ij p l l p 客 户暴露事件访问接口,实现与i 肌p 客户间的事件交互、服务的事件订阅并接收 相应的事件通知。 两种协议的体系结构控制机制对比可由图2 1 所示: 图2 1 i g r s 协议和i 刀抽p 协议的控制机制相关层对比 2 3 双协议栈模型的研究与设计 通过上述对两种协议相似与区别的分析,我们可以建立一个双协议栈模型。 双协议栈的工作重点在于对i g i 峪协议和i 刀而p 协议相同功能模块的抽取。两种 协议的体系结构相似,很多地方可以融合在一起供二者共同使用,使双协议栈节 省大量的开销。而双协议栈要处理的主要问题包括两种协议各种消息( 设备和服 务上下线消息、服务调用请求和响应消息、通知消息、各种订阅消息、异常消息 等) 格式的区别、设备和服务描述模版的不同、调用方式和消息发送接收处理方 式的不同。下面通过对第二节对比结果的处理,来说明双协议栈的一种实现方式。 7 山东大学硕士学位论文 2 3 1 设备和服务的发现、查找与退出 安装了i g r s 协议或者咖协议的数字家庭设备上线的时候,都会向网络 中组播一个在线宣告消息。在线宣告消息遵循s s d p 标准协议要求,此协议为网 络客户提供一种无需任何配置、管理和维护网络上设备服务的机制,采用基于通 知和发现路由的多播发现方式实现。协议客户端在保留的多播地址 2 3 9 2 5 5 2 5 5 2 5 0 :1 9 0 0 发现服务,同时每个设备服务也在此地址上监听服务发现 请求。如果服务监听到的发现请求与此服务相匹配,此服务会使用单播方式响应。 每个服务也可以向多播端口发送通知声明服务存在。也就是说i a 璐协议和i 】p 1 1 p 协议设备的在线宣告消息的组播地址都是2 3 9 2 5 5 2 5 5 2 5 0 :1 9 0 0 。这样,两种协 议的设备通过侦听该地址就可以获得对方设备和服务的在线宣告消息。但由于两 种协议消息格式的不同,虽然能获得该消息,但此时它们都无法识别对方的在线 宣告消息。 双协议栈需要做一个s s d p 消息生成发送模块和接收解析模块。消息生成发 送模块向数字家庭网络中按照i g r s 协议和ij p l l p 协议在线宣告消息的格式构造 在线宣告消息,然后用组播的方式发送出去。这样,双协议栈的设备对于i a 珞 协议和u p n p 协议就可以分别显示为i g r s 设备和i 脚p 设备,这样单个协议就 可以识别双协议栈的设备。而如果要双协议栈识别网络中的i g r s 设备和ij p l l p 设备,还需要一个消息的接收解析模块,解析接收到的i g r s 设备和i 胁p 设备 的在线宣告消息。i g r s 协议标准对设备在线宣告消息的定义较为详细,可以通 过i g r s m e s s a g e t y p e 字段来识别具体消息类型,在线宣告消息类型为 d “c e o n l i n e a d v e r t i s e m e n t 。此外在线宣告消息里面还包括上线设备的名称、设 备单一标识u 1 ) n 、设备类型、设备的侦听端口等信息。接收解析模块中负责i g r s 格式消息解析的部分负责解释i g r s 设备的在线宣告消息,并将取得的信息保存 在设备信息列表之中。还可以根据上线消息中设备描述文档的地址进一步获取设 备的其它信息,并获得设备所提供的服务信息。l j i ,i 】p 协议标准定义的在线宣告 消息较为简单,其消息类型为s s d p :a l i v e ,结合这个字段和设备类型字段,可以 确定i 胁p 设备的在线宣告消息。该消息包括设备单一标识u d n 、设备类型、 设备描述文档地址等。通过设备描述文档地址,可以获得i 胁p 设备的描述文档。 该文档中包括了ij p i 】p 设备的详细属性和它所提供的服务描述文档地址、服务控 山东大学硕士学位论文 制入口地址u l u 等,可以根据服务描述文档地址获取服务接口和参数的情况, 根据服务控制入口地址i j l 也对设备进行调用控制。 设备和服务发现的另外一种方式是基于查找的单播响应。双协议栈的消息生 成发送模块分别根据i g i 迟协议和u p i l p 协议的标准,对于自己感兴趣的设备, 构造其相应的查找请求,向数字家庭网络中的组播地址2 3 9 2 5 5 2 5 5 2 5 0 :1 9 0 0 发 送,并等待符合条件的设备返回响应消息。而对于不同协议发送过来的设备和服 务查找请求,收到该请求的设备将对其分类解析。如果设备自身符合查找条件, 则会构造查找响应消息发送给查找方,通常是一个双协议栈的控制点。双协议栈 控制点会对查找响应消息进行解析处理,根据情况更新自己的用户界面。 i g i 毽设备和i 胁p 设备的退出事件也是通过s s d p 协议来实现的。设备退出 的时候,会向组播地址2 3 9 2 5 5 2 5 5 2 5 0 :1 9 0 0 发送一个设备和服务的下线消息, 双协议栈的消息接收解析模块收到下线消息,能区别出具体是何种协议的设备发 送的下线消息,并对应由不同的事件处理模块处理相关问题,包括设备和服务列 表中相应设备和服务的删除、相关设备和服务订阅的取消等。 该模块可由下图2 2 所示: 图2 2 双协议栈设备和服务的发现模块 9 山东大学硕士学位论文 2 3 2 设备和服务描述文件的获取与解析 如上所述,双协议栈在接收到其它设备的在线宣告消息之后,将会对该消息 解析以获取一些简单的信息。若双协议栈想进一步了解设备和服务的其它详细信 息,则需要根据在线宣告消息中的相关字段,做进一步的工作。 通过在线宣告消息中提供的设备描述文件地址,可以下载i g 】娼设备或i 脚p 设备的设备描述文件。两者的设备描述文件地址都是由在线宣告消息的 l o c a o n 字段定义,可以通过该地址取得。i g r s 协议和 1 1 i ,协议对于设备 描述文档的定义相似,主要包括设备的一些基本信息,还有设备所提供的服务的 简单信息,包括服务名称、类型、d 、s c p d 也等。其中很重要的是s c p d u i 也, 它在两种协议的设备模板中都有,这是服务描述文件的地址,通过它可以取得设 备所提供的各种服务的描述文件。在i 胁p 设备描述文件的服务简单信息中还有 两个重要地址:c o n 仃o l u l 也和e v e n t s u b u i 也。因为i 胁p 协议服务调用和控制使 用s o a p 协议完成,这个c o n 仃0 l u 也就是s o a p 请求要发送的地址,即服务调 用控制入口地址。e v e n t s u b u i u 与事件和订阅有关,该类型的请求发送到这个地 址。 若想进一步了解设备所提供的服务详细信息,则可通过向s c p d u i 也发送 h t r p 请求,下载服务描述文件。i g r s 协议和i 刀如p 协议对设备的服务描述模板 定义有很大差别。i g r s 协议对服务描述模板的定义遵循w s d l 协议格式,该文 件定义了服务所提供的调用接口、参数列表、参数格式等信息;i 胁p 协议采用 自定义的服务描述模板,定义服务所提供的调用接口、参数列表、参数格式等信 息。 双协议栈需要一个可以识别两种协议的设备和服务描述模板文件的解析模 块,来取得网络中i g i 峪和i 胁p 设备的相关详细信息并保存。其工作过程可以 概括描述如下:双协议栈控制点收到i g r s 或i 胁p 设备的在线宣告消息,发现 该设备为其感兴趣的设备,于是发送获取设备描述文件的h r t p 请求消息到该设 备在线宣告消息中的l o c a o n 字段描述地址,这样可以取得该设备的设备描 述文件,双协议栈对此文件解析,并保存相关的设备信息。若想进一步了解该设 备提供的服务,则发送获取服务描述文件的请求到设备描述文件中特定服务的 s c p d u i u 字段,就可以取得该服务的服务描述文件,进一步了解其服务接口和 l o 山东大学硕士学位论文 参数定义规则。 其工作过程如下图2 3 所示: i g r s 篱文垂 i g r s 模板 服务 协 服务 接收解析 请求 陟 i消息 g 1 r 钋翊谙隶 r 解析 s 双设备 响应 刀 协信息 消息 接收 解析 模块 请求 u消息l 一 p n处寝请求 p 解析 响应 消息 1 控制入口地址响鼎息 2 4 本章小结 图2 4 双协议栈服务控制与调用 本章分析并讨论了i a 娼协议和i 胁p 协议的工作过程和相关的关键技术, 通过对两种协议组成机制的对比分析,提出了将两种协议抽象融合,生成数字家 庭网络双协议栈的一种方法。在融合的过程中,需要解决两种协议的区别和特色 所带来到问题。首先是两种协议各种消息格式不同,需要通过加入消息生成和解 析模块,分别生成或者解析响应协议类型的消息;其次还有设备和服务描述模板 的不同,通过扩充并添加相应的模板解析模块,使得双协议栈识别两种协议的设 备和服务描述文件;本章还提出了如何利用s o a p 协议和管道机制,来使得双协 议栈能够与其它两种协议的设备进行互操作,并完成服务调用请求和响应,实现 对设备进行服务控制和调用的方法。 山东大学硕士学位论文 第三章i g r s 和u p n p 双协议栈a v 应用框架实现 双协议栈的设计目标是希望能在i g 】媳协议和i j p n p 协议使用的各个领域, 实现两种协议设备的自动发现、动态组网、无缝连接、相互调用。而在数字家庭 网络中,将数字家庭协议用于a v 多媒体的共享领域具有很重要的意义。本章我 们将利用双协议栈,构造一个双协议栈下协调网络中a v 媒体共享、浏览、控制、 传输和播放的a v 应用框架。 3 1 双协议栈a v 应用框架概述 双协议栈的a v 应用框架定义了网络中的数字家庭多媒体设备和控制点应用 之间的交互模型。这些数字家庭多媒体设备可以包括安装了i g 壬峪协议栈、i j p n p 协议栈或者双协议栈的电视机、v c r 、机顶盒、p c 等。双协议栈a v 应用框架 允许设备支持任何传输协议上任意格式的娱乐内容。 双协议栈a v 应用框架由双协议栈控制点【1 8 ,1 9 ,2 0 1 、双协议栈媒体服务器【2 1 】和 双协议栈媒体播放器【2 2 】组成。双协议栈控制点是整个应用框架的“大脑 ,它发 现双协议栈媒体服务器和媒体播放器上的媒体服务,通过调用媒体服务器和媒体 播放器上提供的服务调用接口,来控制和协调媒体传输和播放【2 3 1 。双协议栈控制 点不直接参与媒体流的传输,媒体流的传输是以带外传输凹】的方式进行,即在数 字家庭网络以外,以s o c k e t 【2 5 掰1 或者r t p 【2 7 1 、r t s p 【2 8 1 等流媒体协议冽实现, 由用户选择合适的方式。双协议栈媒体服务器提供媒体内容,运行内容目录服务、 媒体源连接管理服务和媒体源传输服务;双协议栈媒体播放器负责媒体播放,运 行媒体目标连接管理服务、呈现控制服务和媒体目标传输服务。这里双协议栈的 媒体服务器和媒体播放器都不是应用层面上提供和播放具体a v 文件的,它实际 上为应用层的双协议栈媒体服务器和媒体播放器的实现提供了一组交互规则,用 户可以根据这些规则,协调传输、控制和播放网络中a v 媒体文件的各种消息。 具体说来,它们的作用是通过所提供的服务向控制点提供调用接口,使控制点通 过服务调用来控制双协议栈媒体服务器和媒体播放器,完成从媒体服务器到媒体 播放器之间的媒体传输和播放。 1 3 山东大学硕士学位论文 双协议栈a v 应用框架的交互模型如下图3 1 所示: 双协议栈 控制点 旷习 匿一,! “ ,数字家庭瞬络 l g r s 移班憾服务调爝7 7 鋈 bld i g r s 媒体服务器u p t l p 媒体服务器 双协议栈媒体播放器 内容目录服务内容目录服务 连接管理服务 ,、 媒体源 连接管理服务呈现控制服务 连接管理服务 lj 媒体源传输服务a v 传输服务传输服务 。,。燮一 图3 1 双协议栈a 、,应用框架交互模型 3 2 双协议栈控制点实现 双协议栈控制点口o 3 1 1 处于整个双协议栈a v 应用框架的核心地位。它发现数 字家庭网络中的双协议栈媒体服务器和媒体播放器,并对发现的各种设备信息进 行管理,负责二者之间的协调工作;发现设备服务并调用它们提供的操作,以完 成控制媒体传输播放的任务。 3 2 1 双协议栈控制点的功能 双协议栈控制点在与数字家庭网络中a v 设备间的交互过程p 2 1 中,它的功能 可以概括为发现、描述、控制、事件几个方面,具体包括: 1 ) 发现数字家庭网络中的双协议栈a v 设备,包括双协议栈媒体服务器、媒体 播放器,或是安装了i g r s 或i 肌p 单协议栈的媒体服务器和媒体播放器。 2 ) 检索发现设备的设备描述信息,获取其提供的服务列表,并对设备的设备信 1 4 山东大学硕士学位论文 息和服务信息进行管理,包括插入、删除、修改等。 3 ) 通过设备的服务列表中提供的调用接口及参数信息,构造相应的服务调用请 求消息,并向目标设备发送服务调用请求消息,进行服务调用;同时需要接 收并处理设备返回的服务调用响应消息。 3 2 2 双协议栈控制点的功能实现研究 双协议栈a v 设备的发现:对于双协议栈控制点来说,发现数字家庭网络中 的双协议栈a v 设备有两种方式:一个是通过监听数字家庭网络中a ,设备和服 务的在线宣告消息的方式发现设备和服务;另一个双协议栈控制点主动发现网络 中的a v 设备和服务,即通过查询响应的模式进行发现。对于该过程发现的设备 和服务信息,需要由沮。消息接收解析模块解析出来,记录在双协议栈控制点 的设备信息管理模块中。 其过程如下图3 2 所示: 图3 2 双协议栈a v 设备发现示意图 双协议栈a v 设备和服务信息的进一步发现:对于双协议栈控制点来说,通 过发现这步,取得了设备的基本信息。若想进一步了解设备和服务的相关信息, 需要向a v 设备发出获取设备和服务信息的查询请求。其中若要获得设备信息, 山东大学硕士学位论文 可以向在线宣告消息中的l o c a :n o n 字段指明的地址发送肼p 请求,以获得 设备的描述文件;在设备的描述文件中,包含了设备所提供的各个服务的描述文 件地址s c p d u r l ,向相应地址发送m t p 请求,可以获得服务描述文件。该过 程取得的设备和服务描述文件信息,需由解析模块解析,并记录在双协议栈控制 点的设备信息管理模块中。 对设备的控制:根据取得的服务信息,对双协议栈a v 设备进行服务调用和 控制。双协议栈控制点需要区分i g r s 设备和i 刀抽p 设备,构造服务调用请求消 息;服务调用请求消息的发送途径根据两种协议调用方式的区别发送到相应的指 定地址;服务调用响应消息的解析也区分两种协议响应消息的不同。 3 2 3 双协议栈控制点功能模块组成 通过对双协议栈控制点功能进行分析,将它划分以下5 个模块完成: 1 ) 双协议栈设备信息描述和管理模块 该模块是双协议栈控制点中的数据定义模块和信息保存模块。对双协议栈的 各种数据类型和结构体如s t a c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房地产中介加盟合同书
- 瑞氏吉姆萨染色原理课件
- 理赔服务标准化培训课件
- 理论培训安全驾驶365课件
- 电梯工程实测检查方案(3篇)
- 防洪工程整治方案(3篇)
- 农业机械化智能化改造方案及2025年经济效益研究报告
- 猫咪相关知识培训记录课件
- 安全教育的培训收获课件
- 方案体现工程量(3篇)
- 软件著作权无偿转让合同5篇
- 2025年公安警种知识测试题及答案
- 抵押车贷合同(标准版)
- 2025年秋季学期教科版三年级上册科学教学计划(三篇)
- 2024人教PEP版三年级英语上册全册教案
- 2025年秋季学期中小学开展工作重点观测指标一览表
- 农民公寓买卖合同协议书
- 燃气检修工模拟试题(附答案)
- 2025居间服务合同范本(合同版本)
- 中老年唱歌教学课件下载
- 立体车库应急预案范文
评论
0/150
提交评论