以移动代理为基础的装置发现系统与方法

文档序号:7658610阅读:102来源:国知局
专利名称:以移动代理为基础的装置发现系统与方法
技术领域
本发明涉及一种装置发现^支术,特别是一种以移动代理为基础 的装置发现系统及方法。
背景技术
通用即插即用^r坛(UPnPForum)定义了两种类型的装置控 制端点(control points, CPs),与受控制装置(controlled devices, 或简称为装置)。受控制装置扮演服务器(server)角色,用以提供 可4皮控制端点监看或控制的力良务,并回应从控制端点上发出的请 求。控制端点与受控制装置可被实施在不一样的平台上,并可同时 在相同的网全备端点上运作。其间的通ifl协i义包含六个功能阶层网 纟各寻iit (network addressing )、发i见(discovery )、 4^述、4空制、事 件运行(eventing )与表现。两者间所传递的信息由UPnP定的协议 来管理,如简单月良务发玉见十办i义(Simple Service Discovery Protocol, SSDP)、普通事件通知架构(General Event Notification Architecture, GENA )、简易对象访问协i义(Simple Object Access Protocol, SOAP )
及其扩充协议来传递。并且,所有的信息都在网际协议(Internet Protocol, IP)的基础上传递。
发现阶层的功能简单描述如下。发现功能的设计建立于SSDP 的基础上,使得装置可传送自身装置/服务的公告信息(advertisement messages), 4臾寻4言息(search messages)与口向应4言息(response
messages )。发现阶层使得控制端点可在网络上搜寻UPnP装置,或 使UPnP装置可公告其存在的信息。当装置被加入到网络时,该装 置会使用UDP上的HTTP传送多点传送信息(multicast message, 也可简称为HTTPMU)来^厶告自己存在的信息。控制端点则会4吏用 UDP上的HTTP传送单点传送信息(unicast message,也可简称为 HTTPU)来进4亍响应。
然而,传统的控制端点在网络上逐一发现UPnP装置或其所提 供的服务时,会耗费控制端点过多时间与运算资源。

发明内容
本发明实施例披露一种以移动代理为基础的装置发现系统,至 少包括控制端点、第一与第二受控制装置,随着网络的规模,受控 制装置随之增加。上述控制端点用以编辑并产生移动代理。移动代 理中包含任务与巡行路线的描述,该巡行路线包含第一受控制装置
与第二受控制装置的网络地址,该任务指示:f又得关联于受控制装置
的本机信息,例如巡行路线内预设行程依序为第一受控制装置、
第二受控制装置及最后回到控制端点。根据巡行路线,控制端点传 送移动代理给第一受控制装置。第一受控制装置用于在接收到移动 代理后,取得并执行移动代理中的指定任务,将执行后的结果储存 至移动代理中,并且根据移动代理中的巡行路线中的第二受控制装 置的网络地址传送移动代理给第二受控制装置。第二受控制装置用 于在接收到移动代理后,取得并执行移动代理中的指定任务,将执 行后的结果储存至移动代理中,并且最后传送移动代理给控制端点。
根据本发明的以移动代理为基础的装置发现系统,其中所述控 制端点接收到所述第 一与第二公告信息时,将所述第 一与第二受控
制装置的网络地址"i己录于所述移动^理中的所述巡4亍3各线。
本发明实施例」坡露一种以移动代理为基础的装置发现方法,由 第一受控制装置执行,包括以下步骤。从控制端点或第二受控制装 置接收移动代理。取得移动代理中所描述的任务与巡行路线,此任 务指示取得第 一受控制装置中的第 一装置与服务描述文档。执行任 务来取得第 一装置与服务描述文档,将第 一装置与服务描述文档的 内容封装至移动代理中,以及将更新后的移动代理传送至巡行路线 中的第三受控制装置。
根据本发明的以移动代理为基础的装置发现方法,其中第 一装 置与服务描述文档的内容包括第 一事件订阅统一 资源定位器,当控 制端点通过第 一事件订阅统一资源定位器订阅第 一服务时,执行于 第一受控制装置中的第一服务持续性地传送多个第一事件信息给 控制端点。
才艮据本发明的以移动代理为基础之装置发现方法,其中第二与 第三受控制装置各分别储存第二与第三装置与服务描述文档,第二 装置与月良务描述文档的内容包^"第二事件订阅统一资源定位器,当 控制端点通过第二事件订阅统一资源定位器订阅第二服务时,执行 于第二受控制装置中的第二服务持续性地传送多个第二事件信息 给控制端点,第三装置与服务描述文档的内容包括第三事件订阅统 一资源定位器,当控制端点通过第三事件订阅统一 资源定位器订阅 第三服务时,执行于第三受控制装置中的第三服务持续性地传送多 个第三事件信息给控制端点。
根据本发明的以移动代理为基础的装置发现方法,还包括记 录移动代理的到达时间;以及记录移动代理的离开时间。
才艮据本发明的以移动代理为基础的装置发现方法,其中移动代 理包含可被第一受控制装置所执行的关连于任务的程序指令。
才艮据本发明的以移动代理为基础的装置发现方法,其中第一 、 第二与第三受控制装置分别传送第 一 、第二与第三公告信息给控制 端点,用以指示第一、第二与第三受控制装置存在于网络上的信息。
根据本发明的以移动代理为基础的装置发现方法,其中第一 、
第二与第三公告信息包含移动支持巻标值为"true",用以描述第一、 第二与第三受控制装置为移动支持装置。
才艮据本发明的以移动代理为基础的装置发现方法,还包括一步 骤,当接收到第一、第二与第三公告信息时,将第一、第二与第三 受控制装置的网络地址记录于移动代理中的巡行^各线。
本发明实施例4皮露一种以移动代理为基础的装置发现方法,由 控制端点l丸行,包括以下步骤。从受控制装置接收公告信息,此公 告信息指示受控制装置存在于网络上的信息。判断公告信息是否存 在支持移动代理的信息,是将上述受控制装置的网络地址记录于巡 行路线中,以及传送包含巡行路线与任务的移动代理给受控制装 置,此任务指示取得受控制装置中的装置与服务描述文档。
根据本发明的以移动代理为基础的装置发现方法,其中装置与 服务描述文档的内容包括事件订阅统一资源定位器,当控制端点通 过事件订阅统一资源定位器订阅服务时,执行于受控制装置中的服 务持续性地传送多个第一事件信息给控制端点。
根据本发明的以移动代理为基础的装置发现方法,其中移动代 理包含可被受控制装置所执行的关连于任务的程序指令。
适用于一种移动装置的装置发现方法,该移动装置、第一受控 制装置与第二受控制装置形成网络,该方法包括在移动装置建立 巡行路线,巡行路线依序包括第一受控制装置、第二受控制装置、 移动装置网络地址;建立移动代理包括巡行路线与任务指示,任务
指示关联于第一受控制装置与第二受控制装置的信息的取得;传送 移动代理于第一受控制装置,第一受控制装置根据任务指示加入第 一信息于移动代理;传送移动代理于第二受控制装置,第二受控制 装置根据任务指示加入第二信息于移动代理;以及传送移动代理于 移动装置。
根据本发明的适用于移动装置的装置发现方法,该网络还包括 第三受控制装置,该方法还包括第一受控制装置、第二受控制装 置与第三受控制装置分别传送第 一公告信息、第二公告信息与第三 公告信息给受控制装置,其中第一公告信息与第二公告信息指示支 持移动代理的处理,第三公告信息未指示支持移动代理的处理;以 及移动装置建立巡行路线仅包括支持移动代理的处理的受控制装 置。
才艮据本发明的适用于移动装置的装置发现方法,该方法还包 括..当移动装置接收移动代理后,移动装置传送发现信息于第三受 控制装置。


图1为表示根据本发明实施例的以移动代理为基础的装置发现 系统的网络架构示意图2为表示根据本发明实施例的手机的硬件架构图4为根据本发明实施例的以移动代理为基础的装置发现示意
图5为才艮据本发明实施例的移动代理的逻辑数据格式示意图6为根据本发明实施例的公告信息处理方法的方法流程图; 图7为根据本发明实施例的代理执行情境示意图。
具体实施例方式
图1为表示才艮据本发明实施例的以移动代理为基础的装置发现 系统的网络架构示意图。该网络架构包括手4几110与个人计算枳j 131 至137。其中,手才几110与个人计算才几131至137间可以有线连4妄
(wired-connection )、无线或混合有线连4妾与无线的方式4皮此连才妾。 而本领域技术人员都了解个人手机110与个人计算机131至137间 的连结也^午需通过多个中间节点,例4口,无线4妄入点(access point )、 基站(base station )、集线器(hub )、桥接器(bridge )、路由器(router ) 或其它用以处理网络通讯的中间节点。手机110代表控制端点
(control point),且个人计算机131至137代表受控制装置
(controlled device,也可简称为装置)。个人计算4几131至137中 的任一台扮演了服务器(server)角色,用以提供至少一个可被手 机100监看或控制的服务,并回应从手机110发出的请求。个人计 算才几131至137中的任一台的服务周期性地传送公告信息
(advertisement message )纟合手才几110,用以乂>告自己存在的廿言息。
图2为表示根据本发明实施例的手机的硬件架构图。手机110 可包括数字信号处理器(Digital Signal Processor, DSP ) 21、模拟基 带(Analog Baseband) 22、 射步贞部(Radio Frequency section, RF section) 23、天线24、控制单元25、屏幕26、键盘(keypad) 27、 电源管理单元28与记忆装置29。除此之外,本领域^支术人员也可 将控制端点实施于其它手持式装置的构造(configuration )上,例如 个人凄史字助理(digital personal assistant, PDA )、凄t字音乐播-;故器 (MP3 player )、或其它可携式消费性电子产品等,或实施于各式各 才羊的计算才几系统构造上。控制单元25可为纟效处理单元(MicroProcessing Unit; MPU ),用以从记忆装置29读耳又程序才莫块,并扭J亍 所读取的程序模块来完成以移动代理为基础的装置发现方法。记忆 装置29包含只读存储器(read only memory; ROM )、闪存(flash ROM )以及/或随才几存取存^f诸器(random access memory; RAM ),用 以储存可供控制单元25执行的程序模块。
人计算机131至137中的任一台,包括处理单元31、内存32、储 存装置33、输出装置34、输入装置35、通讯装置36,并使用总线 37将其连结在一起。本领域技术人员可将目标装置实施于各式各样 的计算机系统构造(configuration )上,例如,多处理器系统、以微 处理器为基础或可禾呈序4匕的消费性电子产品(microprocessor-based or programmable consumer electronics )、 网络计算才几、迷你计算机、 大型主机、笔记本型计算机以及类似的设备。内存32包含只读存 ,者器(read only memory; ROM )、 闪存(flash memory)以及/或动 态存耳又内存(random access memory; RAM ), 4是供4诸存空间,用以 储存可供处理单元31执行的程序模块、数据、档案以及记录。一 4殳而言,禾呈序才莫块包含例程(routines )、禾呈序(program),对象 (object)、组件(component)等,用以执行声音命令处理功能。本 发明也可以实施于分布式运算环境,其运算工作一皮连结于通讯网路 的远程处理设备所执行。在分布式环境中,以移动代理为基础的装 置发现的功能执行,也许由本地以及多部远程计算机系统共同完 成。储存装置33包含硬盘装置、软盘装置、光盘装置或移动硬盘 装置,提供储存空间,用以存取硬盘、软盘、光盘、移动硬盘中所 储存的程序模块、数据、档案以及记录。
图4为才艮据本发明实施例的以移动代理为基础的装置发现示意 图。手机110在网络上收听数据,并接收个人计算机131至137所 发布的周期性公告信息。手机110搜集这些公告信息,并由此产生 目前出现在网络上的有效个人计算机(也就是有效的受控制装置)
的清单。在此需注意的是,当从个人计算才几131至137^妄收到7>告 信息时,手机110不会直4妄并逐一与个人计算才几131至137互动验 "i正来耳又4寻它C]的装置与月l务4苗述文^f当(device and service description files )。相反i也,手才几110准备巡4亍^各线(itinerary )。该巡4亍3各线可 包含个人计算才几131至137的清单,以及即将在个人计算才几131至 137中执行或呼叫的操作。巡行路线相应于网络上曾经发布过公告 信息的个人计算4几131至137的位置。此巡行^各线会被封装在移动 代理(mobile agents)中,并且透过网络#皮传送到个人计算才几131 至137其中之一,例如依据巡行路线的安排,依序传送到个人计算 机131至计算机132,个人计算才几132至个人计算才几133,如图4 所示巡^f亍3各线的安排最后由个人计算才几137安排传送至手才几110, 因此,手机110可以得到个人计算机131至137的所有信息。
装置与服务描述档案描述受控制装置的基本数据,例如,装置 名称、i某体存耳又控制(media access control, MAC )地址、网际十办i义
(Internet protocol, IP )地址等,以及受控制装置中所提供的服务的 基本数据,例如,服务名称、服务识别码(service identifier)以及 事件订阅统一资源定位器(uniform resource locator, URL )等。手机 110可根据装置与服务描述档案中的内容,选择一个服务,并通过 相应于选择服务的事件订阅统 一 资源定位器,传送订阅请求
(subscription request)给个人计算机131至137中的特定服务,使 得被订阅的服务可持续性地传送事件信息(event messages )给手机 110。事件信息中可包括实时通讯信息、新闻、股票才艮价(stock quotes )、 一见ifl串流、音ifl串流等。
在装置发现时,手机IIO传送移动代理给个人计算一几131至137 中的一台,移动代理中包含特定的扭卩本(scripts)或程序与4荅载凝: 据(payload)。图5为根据本发明实施例的移动代理的逻辑数据格 式示意图。该移动代理包含代理标题字,殳513,用以与其它网络信 息区别。代理凄t据栏位530中包含用以在接收装置(也就是受控制
装置)中执行的移动代理的属性与相关的参数或信息。巡行路线字
段531中包含接收装置的清单,以及将在接收装置中执行的脚本或 程序代码。才艮告字段533中包含传递的数据或代理运算结果,用以 进行迁移运算。
值得注意的是,在整个网络中,个人计算机131至137其中的 一部4分也许无法处理巡^^各线的相关功能。所以,个人计算才几131 至137可分成两类, 一类为移动支持装置(mobile supporting devices),另 一类为传统装置(ordinary devices )。移动支持装置可 剖析移动代理的内容,辨认巡行路线的语意与意义,以及执行巡行 路线中的移动。移动支持装置广播包含移动支持巻标值为"true" 的公告信息,而传统装置则广播不包含移动支持标签值或包含移动 支持标签值为"false"的公告信息。手机110由此产生巡行路线, 其中仅包含移动支持装置的网络位置,用以访问所有的移动支持装 置。另外,手才几IIO分别逐一询问每一个传统装置。图6为4艮据本 发明实施例的公告信息处理方法的方法流程图,由手机110执行。 当手机110接收到由个人计算机所传送的公告信息时(步骤S611 ), 判断公告信息中是否存在支持移动代理的信息(步骤S631,例如, 是否包含移动支持标签值为"true")。是则取得公告信息中的受控 制装置的识别信息与网络地址(步骤S651),并且储存耳又得的受控 制装置的识别信息与网络地址于巡行路线中(步骤S653 )。巡行路 线可为档案模板(file template )或程序代码模板(code template ), 其中包括由手机110所输入的特定数据。档案模板可使用结构化的 扭卩本i吾言来才巽写,1"列^口可才广展才示"i己"i吾言(extensible markup language, XML)。手机110填入目的地URL,以及将于每一个目的装置中所 执行相应移动的描述。程序代码才莫板为使用程序语言所撰写的程序 代码,例如Java,其中包含数据值(如,目的地URL)与操作函数 (也就是移动),并JU矣着^皮编i,为目标码(object code,如Java bytecode ),用以稍后^皮每一个目的装置所执4亍。
参考图4,手才几110传送移动代理參会个人计算才几131,用以发 现网络上的移动支持装置。移动代理接着会被依序从巡行3各线的装 置清单中的一个移动支持装置迁移到另一个移动支持装置,直到访 问过装置清单中的所有有效的装置为止。每个移动支持装置都提供 代理才丸4亍情境(agent execution context )。图7为4艮据本发明实施例 的代理执行情境示意图,由图3中处理单元31执行。代理执行情 境至少包含代理监听单元(agent listener )7311、代理分派单元(agent dispatcher) 7313、代理管理单元(agent manager ) 7331、移动引擎 (action engine ) 7333与储存管理单元(repository manager ) 7335。 移动代理可通过4吏用储存管理单元7335所提供的内建功能,间接 地取得移动支持装置中的装置与服务描述档案。当目的移动支持装 置接收到移动代理,其中的代理监听单元7311剖析移动代理中的 内容。在剖析之后,代理监听单元7311才企查代理标题(如图5的 513)并辨i人该移动^C理要^Vf亍^T种互动性应用禾呈序或力良务。4戈理 监听单元7311呼叫移动引擎7333,用以准备执行代理所指定的任 务。参考辨认出的数据栏位(如图5的530 ),移动引擎7333首先 通知4戈理管理单元7331 i己录该移动^理,以及其到达时间、来源 装置等信息。移动引擎7333接着执行指定的任务,也就是,通过 储存管理单元7335取得装置与设备描述档案,并且将取得的结果 封装到报告字段(如图5的533 )。移动引擎7333接着通知代理分 派单元7313准备进行代理迁移。当打包好代理信息后,代理分派 单元7313传送移动代理给记录于巡行路线中的下一个移动支持装 置。代理分派单元7313另通知代理管理单元7331有关移动代理离 开的信息,例如离开时间,以便代理管理单元7331记录。
本发明的方法与系统,或特定型态或其部^f分,可以以程序代码 的型态包含于实体媒体,如软盘、光盘、硬盘、或是任何其它机器 可读取(如计算机可读取)储存媒体,其中,当程序代码被机器, 如计算机加载且4丸行时,该机器变成用以参与本发明的装置。本发
明的方法与装置也可以以程序代码型态透过一些传送々某体,如电线 或电缆、光纤、或是任何传输型态进行传送,其中,当程序代码被 才几器,如计算枳4妄收、加载且4丸行时,该才几器变成用以参与本发明
的装置。当在通用处J里单元(general-purpose processing unit)实孑乍 时,程序代码结合处理器提供操作类似于应用特定逻辑电路的独特装置。
针对特定的系统组件,说明书及权利要求书中会使用 一个名称 来为其命名。本领域的技术人员都了解,消费电子设备的制造者也 许会使用不同的命名来称呼内容中所对应的系统组件。该文件并不 想以不同的名称来区别组件间的不同,而是4吏用不同的功能描述来 进4亍区别。
虽然本发明已以优选实施例揭露如上,然其并非用以限定本发 明,任何本领域的技术人员,在不脱离本发明的精神和范围内,当 可做些许变动与修饰,因此本发明的保护范围当视后附的权利要求 书所界定的范围为准。
符号说明
7311 代理监听单元 7313 代理分派单元
7311 ^C理管理单元 7333 移动引擎
7335 4诸存管理单元
权利要求
1.一种以移动代理为基础的装置发现系统,包括第一受控制装置;第二受控制装置;以及控制端点,用以产生移动代理,所述移动代理中包含任务指示与巡行路线的描述,所述巡行路线包含所述第一受控制装置与所述第二受控制装置的网络地址,所述任务指示关联于受控制装置信息的取得;其中,所述控制端点根据所述巡行路线传送所述移动代理给所述第一受控制装置,所述第一受控制装置用以在接收到所述移动代理后,取得并执行所述移动代理中的所述任务,将执行后的结果储存至所述移动代理中,并且依据所述巡行路线传送所述移动代理给所述第二受控制装置;所述第二受控制装置用以在接收到所述移动代理后,取得并执行所述移动代理中的所述任务,将执行后的结果储存至所述移动代理中,并且传送所述移动代理给所述控制端点。
2. 根据权利要求1所述的以移动代理为基础的装置发现系统,其 中所述第 一受控制装置包括储存管理单元,用以管理装置与服务描述文档的存取;代理监听单元,用以从所述控制端点4妾收移动代理,f又 得所述移动代理中所描述的所述任务与所述巡行路线,所述任 务指示取得所述装置与服务描述文档; 移动引擎,用以执行所述任务并通过所述储存管理单元 取得所述装置与服务描述文档,并且将所述装置与服务描述文档的内容封装至所述移动代理中;以及代理分派单元,用以将所述更新的移动代理传送至所述 巡行路线中的另 一受控制装置。
3. 4艮据权利要求2所述的以移动代理为基础的装置发现系统,其 中所述装置与服务描述文档的内容包括事件订阅统一资源定 位器,当所述控制端点通过所述事件订阅统一资源定位器订阅 一服务时,执行于所述第一受控制装置中的所述服务持续性地 传送多个事件信息给所述控制端点。
4. 才艮据权利要求2所述的以移动代理为基础的装置发现系统,其 中所述第一受控制装置还包括代理管理单元,所述代理监听单 元通知所述^C理管理单元有关所述移动〗戈理的到达时间,所述 代理分派单元通知所述代理管理单元有关所述移动代理的离 开时间。
5. 根据权利要求1所述的以移动代理为基础的装置发现系统,其 中所述移动代理包含可被所述移动?I擎所执行的关连于所述 任务的程序指令。
6. 根据权利要求1所述的以移动代理为基础的装置发现系统,其 中所述第一与第二受控制装置分别传送第一与第二公告信息 给所述控制端点,用以指示所述第 一与第二受控制装置存在于 网纟备上的4言息。
7. 根据权利要求6所述的以移动代理为基础的装置发现系统,其 中所述第一与第二公告信息包含移动支持巻标值为"true",用 以描述所述第一与第二受控制装置为移动支持装置。
8. —种以移动代理为基础的装置发现方法,由第一受控制装置执 行,包括从控制端点或第二受控制装置接收移动代理;取得所述移动代理中所描述的任务与巡行路线,所述任 务指示取得所述第一受控制装置中的第一装置与服务描述文 档;执行所述任务来取得所述第一装置与服务描述文档;将所述第一装置与服务描述文档的内容封装至所述移动 ^U里中;以及将所述更新的移动代理传送至所述巡行路线中的第三受 控制装置。
9. 一种以移动代理为基础的装置发现方法,由控制端点执行,包 括从受控制装置接收公告信息,所述公告信息指示所述受 控制装置存在于网络上的信息;判断所述公告信息是否存在支持移动代理的信息;当所述公告信息存在支持移动代理的信息时,将所述受 控制装置的网络地址记录于巡行路线中;以及传送包含所述巡行路线与任务的移动代理给所述受控制 装置,所述任务指示取得所述受控制装置中的装置与服务描述 文档。
10. 装置发现方法适用于一种移动装置,所述移动装置、第一受控 制装置与第二受控制装置形成网络,所述方法包括 在所述移动装置建立巡^^各线,所述巡4于路线依序包括 所述第一受控制装置、所述第二受控制装置、所述行动装置网络地址;建立移动代理包括所述巡行路线与任务指示,所述任务 指示关联于所述第一受控制装置与所述第二受控制装置的信息的取得;传送所述移动代理于所述第一受控制装置,所述第一受控制装置根据所述任务指示加入第一信息于所述移动代理;传送所述移动代理于所述第二受控制装置,所述第二受 控制装置根据所述任务指示加入第二信息于所述移动代理;以 及传送所述移动代理于所述移动装置。
全文摘要
本发明实施例披露一种以移动代理为基础的装置发现设备,作为第一受控制装置,包括储存管理单元、代理监听单元、移动引擎与代理分派单元。储存管理单元管理第一装置与服务描述文档的存取。代理监听单元从控制端点或第二受控制装置接收移动代理,取得移动代理中所描述的任务与巡行路线,该任务指示取得第一装置与服务描述文档。移动引擎执行任务并通过储存管理单元取得第一装置与服务描述文档,并且将第一装置与服务描述文档的内容封装至移动代理中。代理分派单元将更新的移动代理传送至巡行路线中的第三受控制装置。
文档编号H04L12/24GK101345650SQ20071013053
公开日2009年1月14日 申请日期2007年7月11日 优先权日2007年7月11日
发明者胡志麟 申请人:明基电通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1