采用中央发现机制的通信设备及相关方法

文档序号:7812230阅读:216来源:国知局
采用中央发现机制的通信设备及相关方法
【专利摘要】公开了采用中央发现机制的通信设备及相关方法。该通信设备(1)包括一个或多个参与者(10-13),通过端点,各参与者之间可以相互通信,也可以和网络中其他设备的参与者(21、31)通信,其中该通信设备包括中央发现控制器(14),其将参与者(10-13、21、31)的发现信息存储到存储器中,以便为网络中的参与者(10-13)提供中央发现,当中央发现控制器(14)检测到第一参与者的端点与第二参与者的端点之间发生匹配时,则中央发现控制器(14)通知第一参与者和第二参与者这一匹配。
【专利说明】采用中央发现机制的通信设备及相关方法

【技术领域】
[0001]本发明涉及通信设备领域,特别涉及安装在家庭网络中、并适于通过与服务提供商的宽带连接来操作的家庭网关。

【背景技术】
[0002]家庭网关被广泛用于将消费者家庭中的设备连接到互联网或者其他任何广域网(WAN)。家庭网关采用例如数字用户线(DSL)技术,该技术可实现铜线上的高数据率传输,或者采用光纤宽带传输系统,例如光纤到家(FTTH)或者光纤到户(FTTP)。
[0003]对很多消费者来说,家庭网络已经成为每天生活的一部分。家庭网络由一系列异构设备组成,这意味着家庭网络是由不同种类的设备构成的。所有这些设备需要相互通信。多种解决方案可用于这种互连。家庭网络采用混合的解决方案,例如无线和有线网络连接。这些设备组合在一起创建了网络,从而使用户可以分享信息和控制家里的设备。家里的网络设备例如包括家庭网关、机顶盒、电视、个人计算机、平板电脑、智能手机、网络连接存储(NAS)设备、打印机和游戏机。
[0004]DDS (Data Distribut1n Service for Real-Time Systems,实时系统数据分布服务)是由对象管理组织(OMG)制定的一个标准。它描述了一种以数据为中心的发布-订阅模式的中间件,该中间件可用来建立分布式实时系统。自2004年它被正式采纳为OMG的标准以来,它在很多不同行业中成为了一项普遍应用的技术,例如航空业、汽车业、军工业等。DDS标准存在一些商业的和开源的实现。为了使这些不同的DDS实现相互操作,它们必须执行另一项OMG标准,叫做实时发布-订阅线协议-DDS互操作线协议(DDSI)规范。DDSI指定了 DDS实体(域、参与者、发布者、订阅者、读取者、写入者、主题等)如何映射到DDSI实体(域、参与者、端点以及可选地,主题),在参与者/端点之间进行交换的消息格式,以及在参与者/端点之间进行消息交换的有效消息序列和用于发现DDS域中其他参与者和端点的机制。DDS的最新版本是vl.2,实时发布-订阅线协议(DDSI)的最新版本是v2.1,二者均由OMG通过其网站www.0MG.0rg发布。
[0005]为了实现互操作能力,所有DDS实现必须执行简单发现协议(SDP)。该协议被分成两个次协议:
[0006]1.)简单参与者发现协议(STOP):采用SPDP协议,所有参与者要通过专门为它们工作的域预先定义/预先配置的地址列表来向同域的所有其他参与者宣告自己的存在以及联系信息。每个参与者必须监测这些地址并且在本地发现数据存储区(LDDS)内内部维护已发现的参与者连同它们的联系信息的列表。
[0007]2.)简单端点发现协议(SEDP):该协议从通过SPDP获得的联系信息中获得多个预先定义的“内置”发现端点的存在和联系信息。然后,每个参与者会将自己内部所有内置发现端点的信息发布在这些内置发现端点上。此外,当某个端点的配置发生变化,或者当建立新的端点时,这一信息也会发布在内置发现端点上。
[0008]参与者通过端点相互通信。参与者的应用程序代码向被标记为写入者端点的端点写数据,DDSI确保这些数据可以被多个被标记为读取端点的端点阅读。读取端点只从与之“匹配”的特定写入者端点接收数据。在以下情况下,两个端点被称为匹配:
[0009]1.它们具有一致的类型(读取端点匹配写入端点且反之亦然),
[0010]2.它们具有相同的名称(DDS主题名),
[0011]3.它们处理相同类型的数据,
[0012]4.它们的服务传输质量设置相互兼容。
[0013]为实现这一匹配,每个参与者必须保存一份系统中所有可用参与者的所有端点的最新列表于LDDS中。最后,由于参与者的应用程序代码可以在该参与者中动态创建新端点,因此这一信息必须无限期保持可用,这是因为新创建的本地端点可能与之前发现的端点相匹配。
[0014]当DDS域中只有有限数量的DDS参与者时,或者DDS参与者运行的设备上有充足的存储器可用时,执行SDP协议的存储器需求是可以接受的。然而,当域中有很多具有很多端点的DDS参与者时,低存储器设备就会很快遇到问题。实际上,每台设备为SDP数据使用的存储器容量是:参与者数乘以DDS域中的端点总数乘以存储单个端点所需存储器。遗憾的是,很多情况下,参与者通常只关注一小部分的发现端点。对正确的DDSI操作来说,只需要和参与者自身的本地端点相匹配的端点。对于只有很少匹配端点的“小”参与者而言,存储所有这些无用的发现数据可能是一个实际的负担。
[0015]过滤发现信息的一个朴素的方法是丢弃所有还未关注的信息即可,但这种方法行不通。被发现的端点/主题信息可能在以后用到。如果参与者和它的同伴的端点创建顺序不同,并且参与者比它的同伴慢一些(有意或无意),那么这种情况就可能发生。那么匹配就不会发生,通信也不能实现。
[0016]事实上,很多以嵌入式设备为目标的DDS实现只简单的对这些设备禁用SDP,并且应用静态(手动配置)的发现数据来克服存储器限制。虽然在静态配置环境下,这种方法可适用于有限数量的端点,但总的来说,它还是繁琐且易出错的,并且不允许系统演变,除非系统中所有参与者/设备都进行更改或重新配置以匹配新系统的配置。
[0017]University of Granada (格拉纳达大学)的 Javier Sanchez Monedero 在 2OO9年 9 月 14 日发表的硕士论文“A DDS Discovery Protocol based on Bloom Filters”( 一种基于布隆过滤器的DDS发现协议)中描述了几种DDS发现机制的优点和缺点。
[0018]通用即插即用(UPnP)采用基于因特网协议的网络协议,简单服务发现协议(SSDP),来对网络服务和UPnP网络设备的存在信息进行广告和发现。当一个设备加入UPnP网络时,该发现协议允许该设备向网络中的控制节点广告其服务。因此,所采用的发现消息包含该设备的一些基本特性或它的一项服务,例如,它的类型、标识符和指向更多详细信息的指针。
[0019]US 20120166556公开了基于分布式散列表(DHT)实时发布订阅(RTPS)发现的方法和设备。参与者通过覆盖网络的分布式散列表(DHT)中的参与者同伴进行注册,获得将被发现的相关参与者的位置信息,基于所获得的相关参与者的位置信息通过与相关参与者同伴交换发现消息来分享相关参与者的实体的信息。
[0020]KR 101157041 公开了通过扩展SPDP(Simple Participant Discovery Protocol,简单参与者发现协议)消息产生周期来降低通信业务量的DDS监测方法。代理单元建立DDS应用的QoS(Quality of Service,服务质量)概要以控制通信域。该代理单元管理安装在每个节点中的DDS应用,并通过收集DDS应用产生的监测消息经由DDS库单元将DDS应用产生的监测消息传送给管理者单元。


【发明内容】

[0021]该通信设备包括一个或多个参与者,通过端点,各参与者之间可以相互通信,也可以和网络中其他设备的参与者通信,其中通信设备包括一个中央发现控制器,其在存储器中存储着参与者的发现信息,例如发现消息提供的发现信息,用来为网络中的参与者提供中央发现。当中央发现控制器发现第一参与者的某个端点与第二参与者的某个端点发生匹配时,则中央发现控制器(14)通知第一参与者和第二参与者这一匹配。中央发现控制器作为隐藏的参与者,只响应参与者的发现数据,而不响应分布在网络中有关主题的消息,这是非常有利的。
[0022]在优选实施例中,中央发现控制器对参与者的已发现端点的发现信息进行匹配,这些参与者根据实时系统数据分布服务(DDS)在域中设计为中央发现。中央发现控制器尤其适于响应于任意参与者的新端点的发现信息发出一个参与者的端点信息,并且中央发现控制器还适于为配置为采用中央发现的域中的新定义参与者发出匹配端点信息。另外,中央发现控制器存储着接收到的参与者发现信息,并且当检测到参与者的任意端点之间发生匹配时,发送相关匹配信息给相关参与者。
[0023]本发明的另一方面,中央发现控制器设计为通信设备的设备专用中间件的一部分,该设备专用中间件根据实时系统数据分布服务(DDS)来操作。在优选实施例中,该通信设备是安装在家庭网络中的CPE设备,例如家庭网关。
[0024]在包括相互通信的多个参与者的网络,例如DDS域中,提供发现的方法包括以下步骤:在中央发现控制器中为参与者存储发现信息,其中,当中央发现控制器发现第一参与者的某个端点与第二参与者的某个端点发生匹配时,中央发现控制器会通知第一参与者和第二参与者这一匹配。特别地,每当中央发现控制器接收到发现信息,则存储该信息,并且当发现参与者的端点之间发生匹配时,则向操作这些端点的参与者发送相关发现信息。
[0025]本发明的另一方面,当具有与参与者自身的某个端点的匹配时,参与者只存储另一个参与者某个端点的发现信息,并舍弃与其端点没有匹配的端点的发现信息。
[0026]在优选实施例中,该方法包括以下步骤:当第一参与者创建端点时,第一参与者发送带有该端点发现信息的发现消息给网络中其他参与者及中央发现控制器;当中央发现控制器发现第一参与者的某个端点与第二参与者的某个端点发生匹配时,则中央发现控制器通知第一参与者和第二参与者这一匹配,从而第一参与者知晓其端点与第二参与者的端点相匹配,并开启第一参与者和第二参与者的端点之间的通信。

【专利附图】

【附图说明】
[0027]下面通过示意图举例详细说明本发明的优选实施例,其中:
[0028]图1示出了包括家庭网关的家庭网络,其中家庭网关包含中央发现控制器,以及
[0029]图2示出了在DDS域中的发现过程流程图,该DSS域包括两个参与者和一个中央发现控制器。

【具体实施方式】
[0030]以下描述了包含中央发现处理器的通信设备。在优选实施例中,该通信设备为适用于通过宽带将家庭网络与服务供应商网络相连接的CPE设备。为说明清楚,实施例中给出了大量具体细节,以便于对实施例有全面的理解。但对本领域的技术人员而言,很明显,没有这些具体细节,本发明也可以实施。
[0031]该CPE设备是例如家庭网关、路由器、交换机或机顶盒,它包括微控制器、存储着操作系统和应用的非易失性存储器和用于CPE设备操作的易失存储器。CPE设备的操作系统是例如LINUX操作系统和CPE设备特有的中间件,它代表设备的执行环境。设备执行环境包括用来提供例如DSL调制解调器功能、网关和交换机功能、FXS功能、VoIP功能和W1-Fi操作的软件组件。
[0032]图1示出了包括CPE设备I和端点用户设备的家庭网络,CPE设备I例如家庭网关,端点用户设备例如机顶盒2和个人计算机3。CPE设备I包括多个参与者10-13,它们通过通信总线15耦合在CPE设备I中。机顶盒2和个人计算机3,分别包括参与者21和31,与CPE设备I连接并通过通信总线15与其他参与者10-13连接。
[0033]参与者10_13、21和31利用发布/订阅消息传递,例如通过利用DDS (实时系统的数据分布服务),通过端点进行相互通信。CPE设备I包括中央发现控制器(CDD) 14,用于参与者10-13、21和31及各自端点的发现。⑶D 14在CPE设备的存储器中存储家庭网络的参与者10-13、21和31及各自端点的发现消息,包括发现信息或发现数据。⑶D 14也本地匹配CPE设备I和家庭网络中的所有被发现端点,从而为网络中的参与者10-13、21和31提供了中央发现。发现消息可以被理解为元数据,其与和主题有关的数据不同。发现信息包括特别是家庭网络参与者及端点的存在和联系消息,还包括例如有关参与者和/或端点的类型或任意标识符的信息。在优选实施例中,简单参与者发现协议(srop)用于参与者发现,简单端点发现协议(SEDP)用于端点发现。
[0034]当⑶D 14发现参与者10_13、21和31的某个端点发生新的匹配时,⑶D 14会发送新类型内置端点的相关发现数据给被配置为采用中央发现的有关参与者10-13、21和31。由于⑶D 14会发送、分别重发CPE设备I和/或设备2,3中的所有匹配端点的发现信息给需要这些信息的参与者10-13、21和31,所以对于参与者10-13、21和31自身不具有与之匹配的本地端点的端点,参与者不再需要存储这些端点的发现数据。这可以有效节省存储器。
[0035]设计CPE设备I时,通过采用⑶D 14来让参与者10-13执行改进的中央发现协议,以降低CPE设备I的存储器消耗。为实现这一改进,参与者10-13的DDS/DDSI实现被改进以支持中央发现。需要注意的是,不是CPE设备I中的所有参与者都需要采用中央发现,因为有可能不能改变CPE设备I中的所有参与者的DDS/DDSI实现,并且在一些情况下,由于速度原因或者因为一些参与者关注家庭网络设备的大部分端点,让一些/这些参与者不采用中央发现会更好。进一步,可以在同一个CPE设备I中采用多个DDS/DDSI实现。
[0036]为方便CPE设备I操作,必须先开启⑶D 14,再开启采用中央发现的参与者10-13、21和31。⑶D 14本身也是一个参与者,因此它对内部参与者10-13和家庭网络设备2、3的外部参与者21、31都是可见的。⑶D 14从不宣告其自身的端点,但由于它作为一个额外的参与者对外部可见,所以它能获得来自CPE设备I的参与者10-13及其他设备2、3的参与者21、31的所有发现数据。CDD 14将所有这些信息存储在它的本地发现数据存储区(LDDS)中,正如每个参与者在不采用中央发现时通常所做的那样。
[0037]⑶D 14有额外的中央发现内置端点,这些端点在需要时用于重传丢失的发现数据给参与者10_13、21和31。这些端点对外部设备和参与者是不可见的,因为如同内置发现端点,它们不被发布,并且它们与简单端点发现协议(SEDP)和简单参与者发现协议(STOP)使用的端点很类似。
[0038]当参与者10_13、21、31中的一个通过它常规的内置发现端点收到端点发现数据时,它会试图将接收到的端点数据和它的本地端点匹配:若匹配,则将该信息存储在它的本地数据存储区,该存储区与简单参与者发现协议使用的本地发现数据存储区(LDDS)类似;若不匹配,则舍弃该端点信息。这与无中央发现的情况不同,在无中央发现的情况下,每个参与者都需要保留这一信息。这就是节省存储器的原因。
[0039]如果设备1-3的一个参与者发布了新的还未被接收的端点数据,那么⑶D 14将检测到该情况并执行一项附加操作,例如,检查它的本地数据存储区是否有与参与者10-13、
21、31的已存在端点的新匹配,当发现新匹配时,将在⑶D 14的一个端点上为相关参与者发布本地数据存储区中的匹配端点信息。
[0040]参与者10_13、21、31互相监测发现端点,正如它们监测不采用中央发现的参与者的常规发现内置端点一样。当它们的一个发现端点接收到数据时,它们会试图将接收到的端点数据和它们的本地端点进行匹配,正如在常规发现应用中那样。匹配将被存储在它的本地发现数据存储区,不匹配的数据被舍弃。
[0041]所述机制确保各参与者关注的所有端点信息都能到达所有参与者10_13、21、31,同时为不使用中央发现的参与者保持向后兼容。参与者10-13、21、31不关注的信息将不被这些参与者保留。
[0042]因此,配置为采用中央发现的参与者,如果只关注家庭网络中可用端点的一个子集,那么它们需要的存储器空间会大大降低。另外,没有配置为采用中央发现的参与者,或者不知道中央发现机制的参与者,例如采用DDS/DDSI实现的来自其他供应商的参与者,也适用于采用⑶D 14和/或中央发现参与者的家庭网络。
[0043]图2示出了一个实施例,该实施例描述了网络(例如DDS域)中的发现过程,该网络包括两个参与者P1、P2和一个中央发现控制器,例如⑶D 14。当网络开始运行时,⑶D 14创建一个参与者并宣告其存在,此为步骤100。在下一个步骤102中,参与者Pl在网络中被创建并宣告其存在。CDD 14接收到包含参与者Pl的元数据(也就是发现数据)的发现消息,CDD 14存储参与者的发现数据并再次重新宣告其存在,此为步骤104。参与者Pl接收带有CDD 14发现数据的消息,参与者Pl存储CDD 14的发现数据,此为步骤106。域中的参与者可能已经有指定的用于发送消息的ID地址,或采用默认单播地址或组播地址来在域中宣告参与者的存在。
[0044]在下一个步骤108中,参与者Pl宣告读取者信息,以表明参与者Pl将包括作为特定主题读取者的端点,在步骤110,参与者Pl向⑶D 14发送包含读取者信息的消息。在下一个步骤112中,CDD 14将从参与者Pl发来的读取者信息存储在CPE设备I的存储器中。然后,参与者P2在域中被创建,并通过发送发现消息给参与者Pl和CDD 14来宣告存在,此为步骤114。在步骤116中,参与者Pl存储参与者P2的发现数据并向参与者P2重新宣告其存在,在步骤118中,CDD 14存储参与者P2的发现数据并向参与者P2重新宣告其存在。在步骤120中,参与者P2存储参与者Pl和⑶D 14的发现数据。在下一个步骤122中,参与者Pl再次宣告读取者信息。读取者信息被发送给参与者P2,参与者P2舍弃该信息,因为参与者P2没有匹配的写入者,此为步骤124。
[0045]在下一个步骤126中,参与者P2创建写入者端点,在步骤128中,参与者P2将包含有关写入者信息的发现消息发送给参与者Pl和CDD 14。参与者Pl接收参与者P2的写入者的发现数据,识别出写入者信息与它的读取者匹配,并存储相关发现数据,此为步骤130。CDD 14也存储参与者P2读取者的发现数据,并发现参与者P2写入者和参与者Pl读取者的匹配,此为步骤132。
[0046]响应步骤132,⑶D 14发送参与者P2的写入者的发现数据给参与者Pl,此为步骤134,并在步骤136舍弃该信息,因为它在步骤130中已经收到过这一信息。⑶D 14也发送参与者Pl的读取者的发现数据给参与者P2,此为步骤138。参与者P2接收该包含读取者信息的消息,识别参与者Pl的读取者与它的写入者匹配,并相应地存储参与者Pl的读取者的发现信息,此为步骤140。从而参与者P2识别出在域中存在与它的写入者信息相匹配的读取者,并开启与参与者Pl的读取者通信,此为步骤142。
[0047]该方法通过包含⑶D 14的通信设备I的微控制器执行,并且⑶D 14接收的发现信息被存储在通信设备I的非易失性存储器中。
[0048]因此,域中的参与者仅存储与自己的某个端点发生匹配的、另一个参与者的某个端点的发现数据。不匹配该参与者的端点的端点发现数据将被舍弃。域中的参与者不仅向其他参与者发送发现数据,也向该域的中央发现控制器发送发现数据。中央发现控制器作为一个隐藏的参与者运作,因为它不发送和接收有关主题的消息,但被配置为只发送和接收其他参与者的发现数据。每当中央发现控制器接收到发现数据时,便存储该信息,并且当发现两个端点发生匹配时,便发送相关发现数据给相关参与者。因此,与存储每个参与者的所有端点的发现数据的发现方案相比,只关注域中可用端点的小子集的参与者需要的存储器大大降低。
[0049]在不脱离本发明范围的情况下,本领域的技术人员也可以采用本发明的其他实施例。对于家庭网络,中央发现控制器有利地在家庭网关中安置,但是任意其他通信设备,例如CPE设备或任意支持互联网的设备,也可以设计成包含中央发现控制器。本发明存在于所附权利要求中。
【权利要求】
1.通信设备(I),包括一个或多个参与者(10-13),所述一个或多个参与者(10-13)通过端点进行相互通信及与网络中其他设备(2、3)的参与者(21、31)通信,其中: 通信设备包括中央发现控制器(14),所述中央发现控制器(14)将存储参与者(10-13、21、31)的发现信息存储到存储器中,以便为网络中的参与者(10-13、21、31)提供中央发现,并且 当中央发现控制器(14)检测到第一参与者的端点和第二参与者的端点之间的匹配时,中央发现控制器(14)通知第一和第二参与者该匹配。
2.如权利要求1所述通信设备,其中中央发现控制器(14)对参与者(10-13、21、31)的被发现端点的发现信息进行匹配,这些参与者根据实时系统数据分布服务(DDS)在域中设计为中央发现,并且通信设备采用DDS发送包含发现信息的发现消息。
3.如权利要求1或2所述通信设备,其中中央发现控制器(14)适于响应于任意参与者(10-13、21、31)的新端点的发现信息发出参与者(10-13、21、31)之一的端点信息。
4.如权利要求1、2或3所述通信设备,其中中央发现控制器(14)适于为设备(1-3)的配置为采用中央发现的新定义参与者(10-13、21、31)发出匹配端点信息。
5.如上述权利要求之一所述通信设备,其中中央发现控制器(14)作为隐藏的参与者,只响应发现信息,不响应关于网络中分布的主题的消息。
6.如上述权利要求之一所述通信设备,其中中央发现控制器(14)存储接收到的参与者(10-13、21、31)的发现信息,并且当发现参与者(10-13、21、31)的任意端点之间发生匹配时,则发送相关发现信息给相关参与者。
7.如上述权利要求之一所述通信设备,其中通信设备是安装在家庭网络中的CPE设备(I),例如家庭网关,其中中央发现控制器(14)被设计为CPE设备(I)的设备专用中间件的一部分。
8.在网络内提供发现的方法,所述网络包括通过端点彼此通信的多个参与者(10-13、21、31),所述方法包括以下步骤: 在中央发现控制器(14)中存储参与者(10-13、21、31)的发现信息,以便为网络的参与者(10-13)提供中央发现, 中央发现控制器(14)检测第一参与者的端点与第二参与者的端点之间的匹配(132),以及 中央发现控制器(14)通知第一参与者和第二参与者这一匹配(134、138)。
9.如权利要求8所述方法,其中: 当具有与参与者自身的某个端点的匹配时,参与者只存储另一个参与者某个端点的发现信息,并且 舍弃与其端点没有匹配的端点的发现信息。
10.如权利要求8或9所述方法,包括以下步骤:每当中央发现控制器接收到发现消息时,则存储发现消息,并且当检测到参与者的端点之间发生匹配时,发送相关发现信息给操作这些端点的参与者。
11.如权利要求8、9或10所述方法,包括以下步骤: 当第一参与者(P2)创建一个端点时,第一参与者发送带有该端点的发现信息的发现消息给网络中其他参与者及中央发现控制器(14), 当中央发现控制器(14)发现第一参与者的某个端点与第二参与者(Pl)的某个端点发生匹配时,则中央发现控制器(14)通知第一参与者和第二参与者该匹配,从而第一参与者(P2)知晓其端点与第二参与者的端点相匹配,并且 开启第一参与者和第二参与者的端点之间的通信。
12.如上述权利要求8-11之一所述方法,其中中央发现控制器配置为作为隐藏的参与者,不发送和接收关于主题的消息,但只发送和接收参与者的发现信息。
13.如上述权利要求8-12之一所述方法,其中网络采用发布/订阅方式进行消息传送,例如实时系统数据分布服务(DDS)。
14.通信设备(I),包括微控制器和非易失性存储器,所述通信设备用来执行如权利要求8-13之一所述方法。
15.非暂时性可读计算的的存储媒介,其上存储有用于在微控制器上执行如权利要求8-13之一所述的方法的指令。
【文档编号】H04L12/28GK104426728SQ201410421047
【公开日】2015年3月18日 申请日期:2014年8月22日 优先权日:2013年8月23日
【发明者】布鲁诺·德·巴斯, 简·沃特 申请人:汤姆逊许可公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1