基于服务器的多标准家庭网桥接方法

文档序号:7645235阅读:137来源:国知局
专利名称:基于服务器的多标准家庭网桥接方法
本申请是Yevgeniy Eugene Shteyn于99年6月25日提交的第09/340272号美国专利申请(代理人档案PHA 23634)的部分继续申请,这个美国申请的标题是“多个家庭网软件体系结构的桥接”。
本申请涉及在不同软件体系结构的基础之上多个网络的桥接方法。具体而言,本发明涉及家庭联网方法。
家里每个装置都采用单独一个通用的联网标准似乎可能性很小。软件体系结构的多个标准会共存,同时会出现新标准。会为这些新类型装置开发出新标准接口,满足这些标准的要求。家庭应用是为了充分地利用家里的所有装置,但是不能符合正在使用或者将来要使用的所有联网标准。同样,这些装置自己也不能支持所有家庭联网标准。因此,在不同子网或者族之间需要桥接器,每一个都对应一个标准。桥用来以透明方式代表装置,符合第一种网络族的第一种标准,作为符合第二种网络族中第二种标准的装置。结果是家庭网中为第一种标准编写的软件应用程序和为第二种标准编写的软件应用程序都统一了起来。
一般情况下,网络里的装置是利用跟装置接口兼容的一组消息来控制的。装置和软件应用程序之间的协同工作能力取决于唯一标识的标准接口。一旦应用程序知道了装置的唯一标识,它就知道这个装置的接口,它就能够通过向它发送消息来控制这个装置。对于应用程序而言,它是直接将标准消息发送给装置本身,还是间接地通过一个软件将这些消息翻译成不同的一组消息,(最终)在受控装置那里得到相同的效果或者状态改变,没有任何差别。因此,可以将采用多个不同标准的网络之间的桥看作一个多标准装置。也就是说,这个桥符合所有这些标准,用软件将第一个标准跟第二个标准衔接起来。例如,在符合标准A的5个装置,符合不同于标准A的标准B的3个装置之间采用一个桥。这个桥有3个翻译模块用于从A翻译到B,有5个模块用于从B翻译到A。因此,只能够应用标准A的软件应用程序就能够控制所有8个装置。
Yevgeniy Eugene Shteyn于99年6月25日提交,美国序列号是09/340272(代理人档案号PHA 23634)的“多个家庭网软件体系结构的桥接”涉及将不同软件体系结构的家庭网桥接起来,在这里将它引入作为参考。对第一个网络中装置和服务的软件表示的引用是自动地产生的。这些引用从语义上讲足以自动产生至少部分功能跟第二种网络等价的软件表示,从而能够从第二种网络访问第一种网络的装置和服务。这篇文献还提到了HAVi、家庭API和Jini软件体系结构。
下面,“翻译模块”这个术语包括“软件表示”的概念,也就是物理装置或者网络服务或者它的子集的软件表示,从而使有关的消息传递或者控制软件能够访问这个装置或者服务。
桥最好具有以下功能检测被桥接的网络中是否增加了装置,识别增加的装置的类型,如果这个装置有可能对其它网络感兴趣就为识别了类型的装置寻找翻译模块,按照这个网络使用的标准需要的程序在其它网络里安装翻译模块。
成功的标准会继续为跟这些标准有关的领域内新开发的装置定义标准接口。这就需要开发伴随的翻译模块,从而能够在不同标准的网络内代表这些新装置。结果,桥不能够为将来的所有相关装置包括所有的嵌入翻译模块。
所以,本发明提出了一种解决方案,其中的桥跟服务器连接,例如跟因特网连接。这个服务器为一组标准提供查阅服务,并且允许桥为家庭网寻找和下载适当的翻译模块。
具体而言,本发明涉及一种方法,用于提供服务给家庭网的用户。该方法让这个网络中的第一族的部件跟家庭网中第二族相互作用。第一族有第一个软件体系结构,第二族有不同于第一个的第二个软件体系结构。第一族和第二族之间通过桥连接。该方法让这些族外面的服务器,例如因特网上的服务器,接收第一族中具有第一个软件表示的一个部件的一个引用。该方法还为桥提供跟这个引用有关的一个翻译模块,在这个桥里安装了这个模块的时候至少部分地代表第二族里的部件。
于是服务提供商就能够为家庭网里使用的所有标准维护和更新一个翻译模块数据库。这样划分功能具有如下优点。
本发明使得桥相当“轻便”或者成本相当低,因为它不需要为家里可能连接的所有标准的所有可能装置嵌入翻译模块。只有实际桥接的装置需要存储和计算能力(也就是说不需要为只是潜在的桥接装置准备存储能力)(例如将新装置跟网络连接的时候的“刚好及时”桥接)。
此外,本发明使家庭网整体具有扩充能力,不会过时。由于不断发明出新装置,因此对它们的描述成为各种标准规范的一部分,这些描述被例如装置制造商或者第三方翻译并且载入桥服务器,使它们能够被用于已有的家庭网进行桥接。这一过程不需要家庭网本身具有任何内容更新机制。
另一个好处是桥服务器运营商能够获得每个用户家庭网的配置信息。这些信息能够用来帮助用户和制造商以及服务提供商。例如,见Adrian Turner等等于1998年9月25日提交的美国序列号09/160490(代理人文档号PHA 23500)“根据用户简档定制更新具有因特网能力的装置”,在这里将它引入作为参考。这篇文献涉及到一种服务器系统,它为具有网络能力的消费电子设备的特定终端用户保存一个用户简档,并且为这种设备,例如家庭网,的新技术功能保存一个数据库。如果用户简档跟新技术功能相同,并且用户明确表示愿意接收更新信息,用户就会通过网络得到通知能够在将来进行选择。又例如,Yevgeniy Shteyn于1998年11月10日提交的美国序列号09/189535(代理人文档号PHA 23527)“家庭网协作的升级”,在这里将它引入作为参考。这篇文献涉及一种系统,它有一个服务器,能够访问用户家庭网上装置和能力的一个清单。这个清单是例如HAVi、Jini和家庭API体系结构提供的查阅服务。这个服务器还能够访问有关网络未来的信息的数据库。服务器确定根据这个清单和用户简档来判断用户网络中的设备的协作是否能够加强。如果有跟协作有关的功能,在这些判据的基础之上,用户就能够得到通知。从这个意义上讲,美国序列号09/189535涉及一种“应用建议者”概念。
本发明的另一个优点是服务器运营商能够确定市场对特定装置跟某个标准的桥接的需求。装置制造商或者另一个相关的第三方能够知道有需求出现。在服务器上获得新翻译模块的时候,就能够通知过去发出了翻译模块请求而服务器不能够提供的那些桥,说明现在能够进行升级。
注意,桥可以作为家庭网特定族里一个装置的一个软件部件,以便提供桥给另外一族。例如,HAVi机顶盒有软件部件将HAVi族跟例如家庭网上的UPnP族桥接。同样,控制UPnP族的PC能够拥有软件部件,将家庭网的UPnP族跟HAVi族桥接。
下面将参考附图,通过实例更加详细地描述本发明,在这些附图中

图1是一个框图,说明本发明中在两个网络之间进行桥接的原理;图2说明如何将HAVi跟UPnP桥接;和图3说明如何将UPnP跟HAVi桥接。
在所有附图中,相同的引用数字表示相同或者对应的功能。
如上所述,本发明的一个方面涉及如何将桥跟例如因特网上的服务器连接。这个服务器为一组标准提供查阅服务,并且允许桥查找和下载适当的翻译模块,放到家庭网里去,使第一种体系结构的子网内的装置跟第二种体系结构的子网内的装置协同工作。
图1是家庭网系统100的一个示意图,它有第一族102装置104、106和108,符合第一个软件体系结构标准,以后叫做标准A。系统100包括第二族110装置112、114、116,它们符合第二个软件体系结构标准,以后叫做标准B。族102和110通过桥118互连。为了在标准A的族102和标准B的族110之间进行有意义的网络相互作用,采用了翻译模块。这些模块需要参加族102和110。这些模块通常都需要族的本地部件,比方说低级通信软件,才能参加这些族。不是让每个翻译模块有它自己的通信软件,将这个软件作为桥118的平台部件120的一个单元更加有效。
下面利用要将B装置116添加到系统100中去的一个实例来说明本发明的过程。
第一步是将B装置116跟B族110进行物理连接,也就是“引导”B装置116。
下一步,桥118将B装置116当作新增加的装置,或者是因为桥118周期性地扫描B族110,或者它的注册/目录/查阅服务(图中没有画出),或者是因为B族110主动地通知桥118。桥118有一个软件部件122,叫做安装管理程序,它负责安装将B装置116集成到系统100中需要的软件部件。关于这一点在例如美国序列号09/340272(律师文号PHA 23634)中进行了讨论。在后一篇文献中,叫做引用工厂的一个软件部件能够从注册装置的软件表示中提取信息。根据这个有关软件体系结构的方法,这个引用工厂能够查询服务目录,或者能够得知新的软件表示。同样,安装管理程序122接收或者提取新增加B装置116的有关信息。通过因特网126发送给桥服务器124之前描述新信息有可能被重新格式化。另外,桥118最好是提供家庭网100本地执行环境的有关信息。这些信息跟服务器124下载到桥118里的软件部件有关。关于环境的信息涉及到软件体系结构,在这种情况下是A标准族102和B标准族110。这些信息也可以涉及桥118里的可用存储器、所用操作系统的类型、存在的虚拟机、平台库等等。在这些信息的基础之上,桥124能够选择最适合于系统100的网络环境的适当的翻译模块。
收到描述和环境信息的时候,服务器124利用查阅服务,将B装置116的描述跟A族102中代表B装置116的翻译模块进行比较。总之,服务器124有多个查阅服务可用每一对(X,Y)一个,其中X和Y是服务器124支持的标准。为了支持一族标准X和另一族标准Y之间的双向桥接,需要两个查阅服务(X,Y)和(Y,X)。为了支持具有不同标准P、Q和R的三个族之间的双向桥接,需要六个查阅服务(P,Q)、(Q,P)、(P,R)、(R,P)、(Q,R)和(R,Q)。当然,服务器124也可以只支持单向桥接。
象装置104~108和112~116这样的装置常常是复合体。例如,电视机通常都有显示屏、放大器和调谐器。服务器124可以首先尝试将这个复合体作为一个整体翻译成具有相同功能的一个新的复合体。如果没有成功,服务器124就可以一对一地翻译。这样就得到一部分但是有用的映射。例如,如果A族102没有定义调谐器,仍然可以将B型电视桥接到A族作为监视器一样的显示器/放大器装置。如果在标准A和标准B中的子部件之间不存在一对一关系,就可以采用一对多或者多对多映射。例如,标准A可能将音量控制和均衡器效果作为单独一个部件来考虑,而标准B则将它们区分为不同的子部件。在这种情况下,B族110中只有音量控制部件而没有均衡器部件的装置不能够跟A族102桥接。另一方面,A族102中只有一个放大器部件(均衡器和音量控制)的装置不能通过采用子部件的一对二映射跟网络B桥接。在多数一般情形中,A族102的一组子部件跟B族110中的另一组子部件具有多对多映射。
下一步假设已经发现匹配翻译模块128,将它下载到桥中去,安装在平台120上,按照标准A的协议注册。这样一来,A族102的其它应用程序和装置就能够通过模块128发现和使用装置116。模块128的安装和注册可以推迟到它在桥118的执行环境中执行以后进行。
下面将参考图2和图3用一个实例说明HAVi和通用即插即用(UPnP)家庭网如何桥接。家庭联网领域中软件体系结构的HAVi、家庭API和Jini标准已经在上面提到的美国序列号09/340272(代理人文档号PHA 23634)中进行了详细讨论,在这里将它引入作为参考。在HAVi中,DCM(装置控制模块)是一个软件部件,它代表HAVi网络中的装置或者功能。DCM将HAVi定义的API暴露给这个装置。DCM在本质上是动态的如果一个装置被插入网络或者从网络中拆走,就需要在这个网络中相应地安装或者删除这个装置的DCM。DCM是HAVi概念的核心,也是支持新装置和功能进入HAVi网络的灵活性源泉。
通用即插即用(UPnP)是一种开放式的网络体系结构,它被设计成允许简单,特别是多个销售商的分布式装置和软件应用程序之间的通信。UPnP的目的在于控制家庭用具,包括家庭自动化、音频/视频、打印机、智能电话等等。UPnP区分控制点(CP)和被控制装置(CD)。CP包括例如在PC上运行的浏览器、允许用户访问被控制装置提供的功能的无线鼠标垫等等。
UPnP定义一些协议,用来通过CP发现和控制装置。UPnP不定义一个流水机制,供音频/视频装置使用。一些发现和控制协议是UPnP规范的一部分,而其它则被IETF(因特网工程特别工作组)单独标准化。CP和装置之间的相互作用是建立在因特网协议(IP)的基础之上的。但是,UPnP允许非IP装置被IP装置上运行的软件部件代理。这样一个部件,叫做被控制装置(CD)代理,负责将UPnP相互作用翻译给被代理装置。
UPnP装置具有最低级服务子装置的一个分层结构。装置和服务都有标准类型。装置类型定义它允许包括的子装置或者服务。服务类型定义允许服务包括的行动和状态变量。状态变量说明装置状态,可以用CP激活行动来改变状态。状态变量和行动的描述叫做SCP(服务控制协议)。UPnP装置用XML文件描述它自己。这种文件包括它支持的服务类型的信息。装置也可以有一个表示服务器,用来让CP直接进行UI控制。
UPnP依赖于AutoIP,没有DHCP服务器的时候,它为IP装置提供一种手段来获得唯一的地址。在UDP多播的基础之上,UPnP定义一种发现协议,叫做SSDP(简单服务发现协议)。SSDP的基础是装置周期性地广播它们提供的服务。广播通知里包括服务行动要发送过去的一个URL控制服务器。此外,CP可以向UPnP网络查询特定装置或者服务类型或者实例。
UPnP依赖于GENA(一般事件通知体系结构)来定义状态变量下标,在TCP的基础之上改变通知机制。
CP检测到它要使用(通过SSDP)的一项服务以后,它通过发送SCP行动给控制服务器URL或者查询状态变量来控制这项服务。行动是用HTTP POST消息发送的。这些消息的内容由SOAP(简单对象访问协议)标准来定义。SOAP定义在XML基础之上的一种远程程序调用机制。
UPnP中的HAVi装置的翻译模块或者软件表示被叫做被控制装置(CD)代理,而HAVi中UPnP装置的软件表示则被叫做装置控制模块(DCM)。
HAVi到UPnP的桥接图2是家庭网系统200的一个框图,它说明从HAVi到UPnP的桥接,它还用粗箭头说明将在这里是一个数码相机的HAVi装置桥接到UPnP的一系列步骤。
系统200拥有装置202、204和206形成的一个UPnP族。装置202包括一盏灯,装置204包括一个MP3播放机,装置206包括一个打印机。系统200拥有TV 208和数字录像机210形成的一个HAVi网络族。这些族通过桥118连接。
在步骤212里,将一个HAVi照相机214插入HAVi的1394网络,从而使照相机214成为一个活动的HAVi节点。
在步骤216中,平台部件群218上的HAVi事件管理器发现增加了这个照相机214。这个HAVi平台收听HAVi NewSoftwareElement事件消息,或者收听HAVi NetworkReset事件消息,来发现新装置照相机214。
在步骤220中,从平台218上的HAVi注册上提取照相机214的DCM的注册属性和它的FCM部件,用桥服务器222理解的某种格式编码,例如用XML编码,并且利用HTTP POST发送给桥服务器222。桥118可以使用HAVi Webproxy FCM来实现它。
在步骤224里,查阅部件用DCM/FCM注册属性的形式将HAVi装置描述映射到这个装置的UPnP CD代理226。由于UPnP CD代理和HAViDCM都是复合体,因此如上所述,位置处理可以在子装置(部件)层次上进行。在HAVi中,装置(软件表示是DCM)包括多个功能部件(软件表示是FCM)。为了找出哪些FCM是DCM的一部分,桥118可以使用DCM∷GetFcmSeidList和FCM∷GetFcmType方法,或者查找GUID和TargetId属性的n1字段具有相同值的注册项。在UPnP中,装置是具有最低层服务的子装置的分层结构。FCM跟服务的目的相同。HAVi装置到UPnP CD代理226的映射可以是从整个DCM到整个CD代理,或者是部分地从FCM到代理服务。FCM到服务的映射可以是一对一、一对多或者多对多的。
在步骤228中,在桥118的执行环境中运行下载CD代理226。这样做涉及为CD代理226唯一的URL安装http服务器。
在步骤230中,CD代理226发出周期性的通知消息,并且对发现消息做出响应。这样就使得其它UPnP应用和装置能够通过CD代理226发现和使用HAVi照相机214。
UPnp到HAVi的桥接图3说明将UPnP装置,在这里是打印机206,跟系统200中HAVi族208、210、214进行桥接的步骤。
在步骤302中,将UPnP打印机206插入UPnP网络,并且打开这个UPnP装置的电源。
下一步304是收听UPnP装置通知消息,并且对此做出反应。
在步骤306中,从嵌入通知消息里的URL提取打印机206的装置描述文件,用HTTP POST将这个文件发送给桥服务器222。
在步骤308中,查找部件用描述文件(XML)形式的UPnP装置描述映射成这个装置,在这里是打印机206,的HAVi DCM。由于UPnP CD代理和HAVi DCM是复合体,因此如前所述,定位过程可以在网络装置(部件)一级上进行。在HAVi中,(软件表示是DCM)的装置包括多个功能部件(软件代理是FCM)。在UPnP中,装置是具有最低层服务的子装置的分层结构。是UPnP装置一部分的服务可以从装置描述文件中找到。FCM跟服务的目的相同。将HAVi装置映射到UPnP CD代理可以是从完整的DCM向完整的CD代理,或者部分地从FCM向服务进行。FCM到服务的映射可以是一对一、一对多或者多对多的。
在步骤310中,在桥118的执行环境中运行下载下来的打印机DCM312。这样做需要调用DCM的安装方法。
在步骤314中,DCM 312和它的FCM产生HAVi软件单元,并且利用它们在HAVi注册部件那里注册(它是桥118上可以获得的部分平台部件218)。
在步骤316中,HAVi注册为DCM 312和属于它一部分的所有FCM发出一个全局NewSoftwareElement事件消息。这样就使得其它HAVi应用和装置能够通过打印机DCM 312发现和使用UPnP打印机206。
权利要求
1.一种提供服务给家庭网(100)用户的方法,其中-该方法包括让网络中第一族(110)的部件(116)能够跟家庭网的第二族(102)相互作用;-第一族具有第一个软件体系结构;-第二族具有不同于第一个体系结构的第二个软件体系结构;-第一族和第二族通过桥(118)连接;-该方法包括-让这一族外部的服务器(124)接收第一族中具有第一个软件表示的一个部件的引用;和-给桥提供跟引用有关的一个翻译模块(128),在桥上安装这个模块的时候,用于至少部分地代表第二族中的部件。
2.权利要求1的方法,其中的服务器从桥接收引用。
3.权利要求1的方法,其中的桥通过因特网跟服务器联系。
4.权利要求1的方法,其中的第一族包括一个HAVi族。
5.权利要求1的方法,其中的第一族包括一个UPnP族。
6.一种数据库,包括至少一个翻译模块(128),通过因特网将这个模块下载到连接第一族和第二族的桥(118)上以后,用于让第一个软件体系结构的第一个家庭网族(110)上的部件(116)能够跟第二种软件体系结构的第二个家庭网族(102)相互作用。
全文摘要
连接第一族和第二族装置的家庭网中的一种桥。这些族具有不同的软件体系结构。这种桥跟因特网上的服务器连接。这个服务器为某些组标准提供查阅服务,并且允许桥寻找和下载适当的翻译模块,从而使第一族里的装置能够跟第二族相互作用。
文档编号H04L12/46GK1398469SQ01802165
公开日2003年2月19日 申请日期2001年7月20日 优先权日2000年7月26日
发明者J·R·穆宁, Y·E·施泰恩 申请人:皇家菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1