远程访问的方法及服务器的制造方法

文档序号:8000279阅读:298来源:国知局
远程访问的方法及服务器的制造方法
【专利摘要】本发明实施例提供一种远程访问的方法及服务器,该方法包括:远程访问代理接收本地网络中设备发送的在线消息,为设备建立虚拟设备,且将设备的设备描述文件和服务描述文件中的地址信息替换为虚拟设备的地址信息;向远程网络的控制点发送描述虚拟设备处于在线状态的消息;接收控制点向虚拟设备发送的第一请求消息;若确定所述设备处于睡眠状态,则向设备发送唤醒命令;当设备被唤醒时,根据第一请求消息构造与第一请求消息具有相同功能的第二请求消息,并向所述设备发送。本发明提供的远程访问的方法及服务器使得远程网络中的控制点的操作简洁化。
【专利说明】远程访问的方法及服务器

【技术领域】
[0001] 本发明实施例涉及通信技术,尤其涉及一种远程访问的方法及服务器。

【背景技术】
[0002] 通用即插即用(Universal Plug and Play,简称UPnP)标准是基于传输控制协议/ 网间协议(Transmission Control Protocol/Internet Protocol,简称 TCP/IP)和针对设 备彼此间通讯而制订的标准。该标准定义了基本能源管理代理(Basic Power Management Proxy,简称BPMPX)功能,BPMPX可以发现本地网络中具有节能功能的UPnP设备。本地网 络中的UPnP设备可能处于睡眠状态,当远程网络中的控制点(Control Point,简称CP)访 问本地网络中处于睡眠状态的UPnP设备时,首先需要唤醒本地网络中的处于睡眠状态的 UPnP设备,具体地唤醒方法为:将BPMPX功能集成在本地网络中的远程访问服务器中,远程 网络中的控制点通过远程访问服务器中的BPMPX查询本地网络中的UPnP设备的状态,并通 过命令来触发远程访问服务器中的BPMPX唤醒本地网络中处于睡眠状态的UPnP设备。
[0003] 但是,远程网络中的控制点在访问的过程中需要通过本地网络中的远程访问服务 器发现本地网络中处于睡眠状态的UPnP设备,并需要完成唤醒操作,远程网络中的控制点 的操作比较复杂。


【发明内容】

[0004] 本发明实施例提供一种远程访问的方法及服务器,以解决现有技术中远程网络中 控制点的操作复杂的问题。
[0005] 第一方面,本发明实施例提供一种远程访问的方法,包括:
[0006] 远程访问代理接收本地网络中设备发送的在线消息,为所述设备建立虚拟设备, 且将所述设备的设备描述文件和服务描述文件中的地址信息替换为所述虚拟设备的地址 信息;
[0007] 所述远程访问代理向远程网络的控制点发送描述所述虚拟设备处于在线状态的 消息;
[0008] 所述远程访问代理接收所述控制点向所述虚拟设备发送的第一请求消息;
[0009] 若所述远程访问代理确定所述设备处于睡眠状态,则向所述设备发送唤醒命令;
[0010] 当所述设备被唤醒时,所述远程访问代理根据所述第一请求消息构造与所述第一 请求消息具有相同功能的第二请求消息,并向所述设备发送。
[0011] 在本发明第一方面的第一种可能的实现方式中,当所述设备被唤醒时,所述远程 访问代理根据所述第一请求消息构造与所述第一请求消息具有相同功能的第二请求消息, 并向所述设备发送之后,还包括:
[0012] 当接收到所述设备向所述虚拟设备发送的第一响应消息时,所述远程访问代理根 据所述第一响应消息构造与所述第一响应消息具有相同功能的第二响应消息,并向所述控 制点发送。
[0013] 结合本发明第一方面或第一方面的第一种可能的实现方式,本发明第一方面的第 二种可能的实现方式中,若所述远程访问代理确定所述设备处于睡眠状态,则向所述设备 发送唤醒命令之前,还包括:
[0014] 所述远程访问代理接收所述设备上报的描述所述设备进入睡眠状态的消息,并记 录所述设备处于睡眠状态。
[0015] 结合本发明第一方面、第一方面的第一种和第二种可能的实现方式的任意一种, 本发明第一方面的第三种可能的实现方式中,向所述设备发送唤醒命令之前,还包括:所述 远程访问代理获取所述设备的唤醒方式。
[0016] 结合本发明第一方面、第一方面的第一、第二和第三种可能的实现方式的任意一 种,本发明第一方面的第四种可能的实现方式中,还包括:
[0017] 所述远程访问代理接收所述设备发送的离线消息,并向所述控制点发送描述所述 虚拟设备处于离线状态的消息。
[0018] 结合本发明第一方面的第一至第四种可能的实现方式的任意一种,本发明第一方 面的第五种可能的实现方式中:
[0019] 所述远程访问代理根据所述第一请求消息构造与所述第一请求消息具有相同功 能的第二请求消息包括:所述远程访问代理将所述第一请求消息的目的地址替换为所述设 备的地址信息,将所述第一请求消息的源地址替换为所述虚拟设备的地址信息,作为所述 第二请求消息;
[0020] 所述远程访问代理根据所述第一响应消息构造与所述第一响应消息具有相同功 能的第二响应消息包括:所述远程访问代理将所述第一响应消息目的地址替换为所述控制 点的地址信息,将所述第一响应消息的源地址替换为所述虚拟设备的地址信息,作为所述 第二响应消息。
[0021] 结合本发明第一方面、第一方面的第一至第五种可能的实现方式的任意一种,本 发明第一方面的第六种可能的实现方式中,所述远程访问代理向远程网络的控制点发送描 述所述虚拟设备处于在线状态的消息包括:
[0022] 所述远程访问代理通过网络服务器向远程网络的所述控制点发送描述所述虚拟 设备处于在线状态的消息;或者
[0023] 所述远程访问代理通过虚拟专用网络VPN向远程网络的所述控制点发送描述所 述虚拟设备处于在线状态的消息。
[0024] 结合本发明第一方面、第一方面的第一至第六种可能的实现方式的任意一种,本 发明第一方面的第七种可能的实现方式中,所述远程访问代理接收所述控制点向所述虚拟 设备发送的第一请求消息包括:
[0025] 所述远程访问代理通过网络服务器接收所述控制点向所述虚拟设备发送的所述 第一请求消息;或者
[0026] 所述远程访问代理通过VPN接收所述控制点向所述虚拟设备发送的所述第一请 求消息。
[0027] 结合本发明第一方面、第一方面的第一至第七种可能的实现方式的任意一种,本 发明第一方面的第八种可能的实现方式中,所述设备为通用即插即用设备。
[0028] 本发明的第二方面提供了一种远程访问服务器,包括:
[0029] 接收模块:用于接收本地网络中设备发送的在线消息;
[0030] 处理模块:用于在所述接收模块接收到所述设备发送的所述在线消息时,为所述 设备建立虚拟设备,且将所述设备的设备描述文件和服务描述文件中的地址信息替换为所 述虚拟设备的地址信息;
[0031] 发送模块,用于向远程网络的控制点发送描述所述虚拟设备处于在线状态的消 息;
[0032] 所述接收模块还用于接收所述控制点向所述虚拟设备发送的第一请求消息;
[0033] 所述处理模块还用于确定所述设备处于睡眠状态还是唤醒状态;
[0034] 所述发送模块还用于在所述处理模块确定所述设备处于睡眠状态时向所述设备 发送唤醒命令;
[0035] 所述处理模块还用于在所述发送模块发出所述唤醒命令确定所述设备处于唤醒 状态时,根据所述接收模块接收到的所述第一请求消息构造与所述第一请求消息具有相同 功能的第二请求消息;
[0036] 所述发送模块还用于向所述设备发送所述第二请求消息。
[0037] 本发明第二方面的第一种可能的实现方式中,所述接收模块还用于接收所述设备 向所述虚拟设备发送的第一响应消息;
[0038] 所述处理模块还用于根据所述接收模块接收到的所述第一响应消息构造与所述 第一响应消息具有相同功能的第二响应消息;
[0039] 所述发送模块还用于向所述控制点发送所述第二响应消息。
[0040] 结合本发明第二方面或第二方面的第一种可能的实现方式,本发明第二方面的第 二种可能的实现方式中:
[0041] 所述接收模块还用于接收所述设备上报的描述所述设备进入睡眠状态的消息;
[0042] 所述处理模块还用于根据所述接收模块接收到的所述描述所述设备进入睡眠状 态的消息确定所述设备处于睡眠状态。
[0043] 结合本发明第二方面、第二方面的第一种和第二种可能的实现方式的任意一种, 本发明第二方面的第三种可能的实现方式中,所述处理模块还用于在所述发送模块向所述 设备发送所述唤醒命令之前,获取所述设备的唤醒方式。
[0044] 结合本发明第二方面、第二方面的第一至第三种可能的实现方式的任意一种,本 发明第二方面的第四种可能的实现方式中:
[0045] 所述接收模块还用于接收所述设备发送的离线消息;
[0046] 所述发送模块还用于在所述接收模块接收到所述离线消息时,向所述控制点发送 描述所述虚拟设备处于离线状态的消息。
[0047] 结合本发明第二方面或第二方面的第一种可能的实现方式,本发明第二方面的第 五种可能的实现方式中:
[0048]所述根据所述接收模块接收到的所述第一请求消息构造与所述第一请求消息具 有相同功能的第二请求消息,包括:将所述第一请求消息的目的地址替换为所述设备的地 址信息,将所述第一请求消息的源地址替换为所述虚拟设备的地址信息,作为所述第二请 求消息;
[0049]或者,
[0050] 所述根据所述接收模块接收到的所述第一响应消息构造与所述第一响应消息具 有相同功能的第二响应消息,包括:将所述第一响应消息目的地址替换为所述控制点的地 址信息,将所述第一响应消息的源地址替换为所述虚拟设备的地址信息,作为所述第二响 应消息。
[0051] 结合本发明第二方面、第二方面的第一至第五种可能的实现方式的任意一种,本 发明第二方面的第六种可能的实现方式中,所述设备为通用即插即用设备。
[0052] 本发明实施例提供的远程访问的方法及服务器,通过为本地网络中设备设置对应 的虚拟设备,在远程网络中的控制点访问过程中,直接与虚拟设备交互,从而达到间接控制 本地网络中设备的目的,简化了本地网络中和远程网络之间的处理流程。并且虚拟设备为 远程网络中的控制点分担了判断唤醒设备的具体操作,使得远程网络中的控制点的操作简 洁化。

【专利附图】

【附图说明】
[0053] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以 根据这些附图获得其他的附图。
[0054] 图1为本发明实施例一所提供的远程访问的方法的流程图;
[0055] 图2为本发明实施例二所提供的远程访问的方法的流程图;
[0056] 图3为本发明实施例四所提供的远程访问的方法的信令流程图;
[0057] 图4为本发明实施例五所提供的远程访问服务器的结构示意图;
[0058] 图5为本发明实施例六所提供的远程访问服务器的结构示意图。

【具体实施方式】
[0059] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0060] 图1为本发明实施例一所提供的远程访问的方法的流程图。本实施例的方法可 适用于远程网络中的控制点通过本地网络中的远程访问服务器(Remote Access Server, RAS)访问本地网络中的UPnP设备,UPnP设备是能够基于UPnP协议进行设备发现和数据交 互的设备。但并不限于为UPnP设备,也可适用于具备UPnP类似访问机制的其他设备。需 要说明的是:远程访问代理可以等同于远程访问服务器,此外,远程访问代理也可以是一个 独立的装置或实体,或者,远程访问代理还可以是嵌入到远程访问服务器中的装置或实体。 以下实施例以UPnP设备为例进行说明。本实施例的方法包括如下步骤:
[0061] 步骤101、远程访问代理接收本地网络中设备发送的在线消息,为设备建立虚拟设 备,且将所述设备的设备描述文件和服务描述文件中的地址信息替换为所述虚拟设备的地 址信息;
[0062] 远程访问代理接收本地网络中UPnP设备发送的在线消息,为所述UPnP设备建立 虚拟设备,且将UPnP设备的设备描述文件和服务描述文件中的地址信息替换为虚拟设备 的地址信息,从而使得虚拟设备作为UPnP设备的访问接口。作为访问接口,该虚拟设备配 置的IP地址可以是所述远程访问代理的IP地址,远程访问代理为虚拟设备分配一个新的 端口号。
[0063] 具体地,本地网络中的RAS接收本地网络中的UPnP设备发送的"(Simple Sever Discovery Protocol :Alive,简单服务发现协议:在线)SSDP:alive"消息,该消息用以表示 本地网络中的UPnP设备处于在线状态。在接收到该UPnP设备处于在线状态的消息后,本 地网络中的RAS为本地网络中的UPnP设备建立与之对应的UPnP虚拟设备,并将UPnP设备 的设备描述文件和服务描述文件中的地址信息替换为虚拟设备的地址信息。
[0064] 步骤102、所述远程访问代理向远程网络的控制点发送描述所述虚拟设备处于在 线状态的消息;
[0065] 本步骤中,远程访问代理向远程网络的控制点同步虚拟设备的在线状态。这时,远 程网络中的控制点确认UPnP虚拟设备已处于在线状态。
[0066] 步骤103、远程访问代理接收所述控制点向虚拟设备发送的第一请求消息;
[0067] 具体地,在远程网络的控制点处,将虚拟设备视为一个UPnP设备。当远程网络中 的控制点要控制本地网络中的该UPnP设备时,就会向该UPnP虚拟设备发送第一请求消息。
[0068] 步骤104、若所述远程访问代理确定所述设备处于睡眠状态,则向所述设备发送唤 醒命令;
[0069] 步骤105、当所述设备被唤醒时,所述远程访问代理根据所述第一请求消息构造与 所述第一请求消息具有相同功能的第二请求消息,并向所述设备发送。
[0070] 第二请求消息与第一请求消息具备相同功能,相当于控制点对UPnP设备进行了 控制。典型的是第二请求消息与第一请求消息的功能完全相同,仅调整控制命令中的格式 字段,以表明将此控制命令发送至UPnP设备。
[0071] 例如,优选是所述远程访问代理将所述第一请求消息的目的地址替换为所述UPnP 设备的地址信息,将所述第一请求消息的源地址替换为所述虚拟设备的地址信息,作为所 述第二请求消息。
[0072] 在实际应用中,本地网络中的UPnP设备无论是在线状态还是在睡眠状态,远程网 络中的控制点看到的UPnP设备都是在线的,而实际的本地网络中的UPnP设备可能处于睡 眠状态,这是因为本地网络中的RAS为本地网络中的每个UPnP设备都建立了一个对应的 UPnP虚拟设备,因此控制点无需知道本地网络中的UPnP设备的实际状态,相对于现有技 术,控制点不必直接唤醒本地网络中的处于睡眠状态的UPnP设备,因此减少了控制点的操 作,同时也简化了本地网络中和远程网络之间的处理流程。
[0073] 本发明实施例提供的远程访问的方法,通过为本地网络中的设备设置对应的虚拟 设备,在远程网络中的控制点访问过程中,直接与虚拟设备交互,从而达到间接控制设备的 目的,简化了本地网络中和远程网络之间的处理流程。并且虚拟设备为远程网络中的控制 点分担了判断唤醒设备的具体操作,使得远程网络中的控制点的操作简洁化。
[0074] 在上述方案的基础上,还可以进一步通过远程访问代理向远程网络的控制点返回 响应,即当所述设备被唤醒时,所述远程访问代理根据所述第一请求消息构造与所述第一 请求消息具有相同功能的第二请求消息,并向所述设备发送之后,还包括:
[0075] 当接收到所述设备向所述虚拟设备发送的第一响应消息时,所述远程访问代理根 据所述第一响应消息构造与所述第一响应消息具有相同功能的第二响应消息,并向所述控 制点发送。
[0076] 相应地,第二响应消息和第一响应消息可具备相同功能,仅调整部分字段,以指示 此响应消息是虚拟设备发送给控制点。例如优选是所述远程访问代理将所述第一响应消息 目的地址替换为所述控制点的地址信息,将所述第一响应消息的源地址替换为所述虚拟设 备的地址信息,作为所述第二响应消息。
[0077] 具体地,当本地网络中的RAS接收到本地网络中的UPnP设备发送的响应消息时, 就将响应消息的目的地址替换为控制点的地址信息,将响应消息的源地址替换为虚拟设备 的地址信息,最后将替换地址后的响应消息发送给远程网络中的CP。
[0078] 实施例二
[0079] 图2为本发明实施例二所提供的远程访问的方法的流程图。本实施例是在实施例 一的基础上进行优化,可选的,若所述远程访问代理确定所述设备处于睡眠状态,则向所述 设备发送唤醒命令之前,还包括:
[0080] 步骤210、远程访问代理接收设备上报的描述所述设备进入睡眠状态的消息,并记 录设备处于睡眠状态。
[0081] 步骤220、远程访问代理在接收到设备上报的描述所述设备进入睡眠状态的消息 之后,获取设备的唤醒方式。
[0082] 具体地,UPnP设备向本地网络中的远程访问服务器发送进入睡眠状态的消息,本 地网络中的RAS记录该UPnP设备的睡眠状态。
[0083] 获取设备的唤醒方式的时机不限于接收到进入睡眠状态的消息之后,在向所述设 备发送唤醒命令之前,所述远程访问代理获取所述设备的唤醒方式即可。获取UPnP设备的 唤醒方式的具体方式,可以是本地网络中的RAS接收到的UPnP设备上报的进入睡眠状态的 消息中携带UPnP设备的唤醒方式。在实际应用中,唤醒UPnP设备的方式有多种,可以是本 地网络中的RAS通过UPnP LowPowerDevice中定义的唤醒命令"Wakeup () "来唤醒UPnP设 备,还可以是通过承载协议相关的方式来唤醒UPnP设备,比如,在以太网中,可采用Wake On LAN(简称WoL)机制来唤醒UPnP设备,还可以是等待UPnP设备的睡眠周期结束后自动唤 醒。
[0084] 本发明实施例提供的远程访问的方法,在远程网络中控制点要访问UPnP设备时 才对处于睡眠状态的UPnP设备进行唤醒操作,从而可以实现UPnP设备在其他时刻处于低 功率消耗的睡眠状态,从而起到节约能源的作用,并且该控制点也无需感知本地网络中的 UPnP设备的实际状态,也不必对本地网络中处于睡眠状态的UPnP设备执行唤醒操作,大大 简化了远程网络中的控制点的操作流程。
[0085] 在上述实施例技术方案的基础上,在本发明实施例三中,优选的是:本实施例提供 的远程访问的方法还包括:远程访问代理接收设备发送的离线消息,并向所述控制点同步 虚拟设备的离线状态。
[0086] 在实际应用中,本地网络中的UPnP设备还可以处于离线状态,但是UPnP设备在离 线之前会向本地网络中RAS发送离线消息,例如"SSDP :byebye",用以表示该UPnP设备处 于离线状态,不能提供服务,因此在这种情况下,本地网络中的RAS会向远程网络的控制点 同步虚拟设备的离线状态。这时,远程网络中的控制点就会获取本地网络中的该UPnP设备 不能提供服务。在具体实现过程中,通常将本地网络中虚拟设备的离线消息通过本网络中 的RAS发送至远程网络中的RAS,然后由远程网络中的RAS生成该虚拟设备的离线消息,并 在远程网络中组播,以使远程网络中的控制点能够接收该虚拟设备的离线消息。
[0087] 本发明各实施例所提供的远程访问的方法可适用在不同的网络架构中,则在线状 态,控制命令,请求消息和响应消息的传输路径可相应调整。
[0088] 例如,所述远程访问代理向远程网络的控制点发送描述所述虚拟设备处于在线状 态的消息可以包括:
[0089] 所述远程访问代理通过网络服务器向远程网络的控制点发送描述所述虚拟设备 处于在线状态的消息;或者
[0090] 所述远程访问代理通过虚拟专用网络(VPN)向远程网络的控制点发送描述所述虚 拟设备处于在线状态的消息。
[0091] 相应地,所述远程访问代理接收远程网络的控制点向所述虚拟设备发送的第一请 求消息可以包括:
[0092] 所述远程访问代理通过网络服务器接收所述控制点向所述虚拟设备发送的第一 请求消息;或者
[0093] 所述远程访问代理通过VPN接收所述控制点向所述虚拟设备发送的第一请求消 肩、。
[0094] 图3为本发明实施例四所提供的远程访问的方法的信令流程图。该实施例是本地 网络中UPnP设备、本地网络中的RAS、远程网络中的RAS以及远程网络中的CP配合执行的, 具体包括如下步骤:
[0095] 步骤1、本地网络中的UPnP设备向本地网络中的RAS发送在线报文,即在线消息。
[0096] 步骤2、本地网络中的RAS创建一个UPnP虚拟设备。
[0097] 具体地,UPnP虚拟设备的地址为一个新的不同于本地网络中UPnP设备的地址,同 时本地网络中的RAS通过"HTTP GET"命令获取本地网络中的UPnP设备的设备描述文件和 服务描述文件,并将设备描述文件和服务描述文件中UPnP设备的相关地址修改为UPnP虚 拟设备的地址,修改后的设备描述文件和服务描述文件就可以称为UPnP虚拟设备的设备 描述文件和服务描述文件。
[0098] 步骤3、本地网络中的RAS把UPnP虚拟设备信息同步给远程网络,具体的,本地网 络中的RAS中的同步源模块,即"RADASync CP"向远程网络中的RAS发送添加远程设备消 息,例如"AddRemoteDevice () ",用来同步UPnP虚拟设备的信息,在AddRemoteDevice ()的 参数中包含了 UPnP虚拟设备的信息,这样远程网络的RAS确定UPnP虚拟设备已处于在线 状态。其中,RAS中包括同步目的模块(RADASync)和同步源模块(RADASync CP),二者是 用于本地网络和远程网络中的UPnP设备信息同步的,RADASync做为信息同步的目的模块, RADASync CP做为信息同步的源模块。
[0099] 步骤4、远程网络中的RAS根据收到的AddRemoteDevice (),向远程网络中的控制 点组播UPnP虚拟设备的在线消息,这样该控制点确定UPnP虚拟设备已经在线。
[0100] 步骤5、远程网络中的控制点向本地网络中的RAS通过"HTTP GET"命令获取UPnP 虚拟设备的设备描述文件和服务描述文件,UPnP虚拟设备将修改后的设备描述描述文件和 服务描述文件发送给远程网络中的控制点。
[0101] 步骤6、当UPnP虚拟设备收到本地网络中的UPnP设备进入睡眠状态的SSDP消 息时,睡眠状态包括"TRANSPARENT (浅睡眠状态)"、"De印Sle印Online (深度睡眠在线状 态)"或"De印Sle印Off line (深度睡眠离线状态)"三种中的任意一种,都可以表示本地网 络中的UPnP设备进入睡眠状态。本地网络中的RAS中记录该UPnP设备处于睡眠状态, 并通过"66丨?〇¥61|&1仙〖61116111:111;1^〇0"获得11?11?设备的唤醒方式,还可在睡眠前使用该 "GetPowerManagementlnfoO "获得UPnP设备的唤醒方式,此时远程网络中的控制点仍认 为本地网络中的UPnP设备处于在线(alive)状态,不会感知该UPnP设备到已处于睡眠状 态。
[0102] 步骤7、本地网络中的RAS记录本地网络中的UPnP设备的状态并获取该UPnP设备 的唤醒方式。
[0103] 步骤8、远程网络中的控制点向本地网络中的UPnP虚拟设备发送控制指令,具体 的指令可以是浏览(browse ()),相当于上述第一请求消息。
[0104] 步骤9、UPnP虚拟设备收到browseO后,判断本地网络中的UPnP设备已处于睡眠 状态,具体可通过如下机制唤醒UPnP设备:通过UPnP标准的节能标准(LowPowerDevice) 中的命令,如Wakeup ()唤醒UPnP设备;通过承载网协议提供的机制唤醒UPnP设备,比如 在以太网中,通过WoL机制唤醒UPnP设备,或等待UPnP设备的睡眠周期结束后自动唤醒。 UPnP虚拟设备在UPnP设备唤醒后把browse ()发送给UPnP设备,browse ()的目的地址和 端口号需要修改为UPnP设备的IP地址和端口号,browseO的源地址修改为本地网络中 RAS中在本地网络中的UPnP虚拟设备的地址,相当于将第一请求消息构造为功能相同的第 二请求消息。
[0105] 步骤10、UPnP设备处理完browseO后向本地RAS返回响应消息,相当于上述第一 响应消息。
[0106] 步骤11、本地网络中的RAS把响应消息的源地址和目的地址更改后发送给远程网 络的控制点,即将第一响应消息构造为具有相同功能的第二响应消息。
[0107] 步骤12、当本地网络中的RAS收到UPnP设备的离线消息(SSDP: bye-bye)时,表示 UPnP设备将关闭电源。
[0108] 步骤13、UPnP虚拟设备通知同步源模块"RADASync CP"向远程网络的RAS发送 RemoveRemoteDevices (),该 RemoveRemoteDevices ()用来同步该 UPnP 虚拟设备的信息,该 RemoveRemoteDevicesO的参数中包含了该UPnP虚拟设备的信息,这样远程网络RAS确定 该UPnP虚拟设备已处于离线状态。
[0109] 步骤14、远程网络的RAS收到RemoveRemoteDevices (),在远程网络中组播该UPnP 虚拟设备的离线消息(SSDP:bye-bye),使得远程网络控制点能获知虚拟设备的离线状态。 [0110] 在本实施例中在远程网络中的远程访问服务器和远程网络中的控制点可以单独 设置,也可以集成在远程访问客户端(RAC, Remote Access Client)中,具体的实现形式不 做限制。
[0111] 本发明实施例通过本地网络中的RAS,对本地网络中处于不同状态的UPnP设备的 采用不同处理方式,详细地介绍了远程网络中的控制点在远程访问本地网络中的UPnP设 备的方式,极大地简化了本地网络与远程网络的通信流程,并且进一步大大减少了远程网 络中的控制点的操作流程。
[0112] 图4为本发明实施例五所提供的远程访问服务器的结构示意图。该服务器包括: 接收模块410、处理模块420和发送模块430。
[0113] 其中,接收模块410用于接收本地网络中设备发送的在线消息;处理模块420用 于在所述接收模块410接收到所述设备发送的所述在线消息时,为所述设备建立虚拟设 备,且将所述设备的设备描述文件和服务描述文件中的地址信息替换为所述虚拟设备的地 址信息;发送模块430用于向远程网络的控制点发送描述所述虚拟设备处于在线状态的消 息;所述接收模块410还用于接收所述控制点向所述虚拟设备发送的第一请求消息;所述 处理模块420还用于确定所述设备处于睡眠状态还是唤醒状态;所述发送模块430还用于 在所述处理模块420确定所述设备处于睡眠状态时向所述设备发送唤醒命令;所述处理模 块420还用于在所述发送模块发出所述唤醒命令确定所述设备处于唤醒状态时,根据所述 接收模块410接收到的所述第一请求消息构造与所述第一请求消息具有相同功能的第二 请求消息;所述发送模块430还用于向所述设备发送所述第二请求消息。
[0114] 本实施例所提供的装置可以执行本发明实施例一提供的远程访问的方法,具备相 应的功能模块和有益效果,此处不再赘述。本发明实施例中的设备优选是通用即插即用设 备。
[0115] 上述远程访问服务器中,所述接收模块410还可用于接收所述设备向所述虚拟设 备发送的第一响应消息;所述处理模块420还可用于根据所述接收模块410接收到的所述 第一响应消息构造与所述第一响应消息具有相同功能的第二响应消息;所述发送模块430 还可用于向所述控制点发送所述第二响应消息。
[0116] 具体地,所述接收模块410还可用于接收所述设备上报的描述所述设备进入睡眠 状态的消息;所述处理模块420还可用于根据所述接收模块410接收到的所述描述所述设 备进入睡眠状态的消息确定所述设备处于睡眠状态。
[0117] 远程访问服务器中,优选的是,所述处理模块420还用于在所述发送模块430向所 述设备发送所述唤醒命令之前,获取所述设备的唤醒方式。
[0118] 进一步地,所述接收模块410还用于接收所述设备发送的离线消息;所述发送模 块430还用于在所述接收模块410接收到所述离线消息时,向所述控制点发送描述所述虚 拟设备处于离线状态的消息。
[0119] 在上述技术方案的基础上,所述根据所述接收模块接收到的所述第一请求消息构 造与所述第一请求消息具有相同功能的第二请求消息可优选包括:将所述第一请求消息的 目的地址替换为所述设备的地址信息,将所述第一请求消息的源地址替换为所述虚拟设备 的地址信息,作为所述第二请求消息;
[0120] 或者,
[0121] 所述根据所述接收模块接收到的所述第一响应消息构造与所述第一响应消息具 有相同功能的第二响应消息可优选包括:将所述第一响应消息目的地址替换为所述控制点 的地址信息,将所述第一响应消息的源地址替换为所述虚拟设备的地址信息,作为所述第 二响应消息。
[0122] 需要说明的是:本发明实施例五中所涉及的接收模块410也可以称作接收器410 ; 发送模块430也可以称作发送器430 ;处理模块420也可以称作处理器420,此处不做限制。
[0123] 图5为本发明实施例六所提供的远程访问服务器的结构示意图。该服务器包括: 处理器501和存储器502。其中,存储器502存储执行指令,当远程访问服务器运行时,处理 器501与存储器502之间通信,处理器501调用存储器502中的执行指令,用于执行以下操 作:
[0124] 接收本地网络中设备发送的在线消息,为所述设备建立虚拟设备,且将所述设备 的设备描述文件和服务描述文件中的地址信息替换为所述虚拟设备的地址信息;
[0125] 向远程网络的控制点发送描述所述虚拟设备处于在线状态的消息;
[0126] 接收所述控制点向所述虚拟设备发送的第一请求消息;
[0127] 若确定所述设备处于睡眠状态,则向所述设备发送唤醒命令;
[0128] 当所述设备被唤醒时,根据所述第一请求消息构造与所述第一请求消息具有相同 功能的第二请求消息,并向所述设备发送。
[0129] 可选的是,当所述设备被唤醒时,根据所述第一请求消息构造与所述第一请求消 息具有相同功能的第二请求消息,并向所述设备发送之后,还包括:
[0130] 当接收到所述设备向所述虚拟设备发送的第一响应消息时,根据所述第一响应消 息构造与所述第一响应消息具有相同功能的第二响应消息,并向所述控制点发送。
[0131] 可选的是,若确定所述设备处于睡眠状态,则向所述设备发送唤醒命令之前,还包 括:
[0132] 接收所述设备上报的描述所述设备进入睡眠状态的消息,并记录所述设备处于睡 眠状态。
[0133] 可选的是,向所述设备发送唤醒命令之前,还包括:获取所述设备的唤醒方式。
[0134] 可选的是,还包括:
[0135] 接收所述设备发送的离线消息,并向所述控制点发送描述所述虚拟设备处于离线 状态的消息。
[0136] 可选的是,
[0137] 根据所述第一请求消息构造与所述第一请求消息具有相同功能的第二请求消息 包括:将所述第一请求消息的目的地址替换为所述设备的地址信息,将所述第一请求消息 的源地址替换为所述虚拟设备的地址信息,作为所述第二请求消息;
[0138] 根据所述第一响应消息构造与所述第一响应消息具有相同功能的第二响应消息 包括:将所述第一响应消息目的地址替换为所述控制点的地址信息,将所述第一响应消息 的源地址替换为所述虚拟设备的地址信息,作为所述第二响应消息。
[0139] 可选的是,向远程网络的控制点发送描述所述虚拟设备处于在线状态的消息包 括:
[0140] 通过网络服务器向远程网络的所述控制点发送描述所述虚拟设备处于在线状态 的消息;或者
[0141] 通过虚拟专用网络VPN向远程网络的所述控制点发送描述所述虚拟设备处于在 线状态的消息。
[0142] 可选的是,接收所述控制点向所述虚拟设备发送的第一请求消息包括:
[0143] 通过网络服务器接收所述控制点向所述虚拟设备发送的所述第一请求消息;或者
[0144] 通过VPN接收所述控制点向所述虚拟设备发送的所述第一请求消息。
[0145] 本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通 过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程 序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟 或者光盘等各种可以存储程序代码的介质。
[0146] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制; 尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其 依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征 进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技 术方案的范围。
【权利要求】
1. 一种远程访问的方法,其特征在于,包括: 远程访问代理接收本地网络中设备发送的在线消息,为所述设备建立虚拟设备,且 将所述设备的设备描述文件和服务描述文件中的地址信息替换为所述虚拟设备的地址信 息; 所述远程访问代理向远程网络的控制点发送描述所述虚拟设备处于在线状态的消 息; 所述远程访问代理接收所述控制点向所述虚拟设备发送的第一请求消息; 若所述远程访问代理确定所述设备处于睡眠状态,则向所述设备发送唤醒命令; 当所述设备被唤醒时,所述远程访问代理根据所述第一请求消息构造与所述第一请求 消息具有相同功能的第二请求消息,并向所述设备发送。
2. 根据权利要求1所述的方法,其特征在于,当所述设备被唤醒时,所述远程访问代理 根据所述第一请求消息构造与所述第一请求消息具有相同功能的第二请求消息,并向所述 设备发送之后,还包括: 当接收到所述设备向所述虚拟设备发送的第一响应消息时,所述远程访问代理根据所 述第一响应消息构造与所述第一响应消息具有相同功能的第二响应消息,并向所述控制点 发送。
3. 根据权利要求1或2所述的方法,其特征在于,若所述远程访问代理确定所述设备处 于睡眠状态,则向所述设备发送唤醒命令之前,还包括: 所述远程访问代理接收所述设备上报的描述所述设备进入睡眠状态的消息,并记录所 述设备处于睡眠状态。
4. 根据权利要求1至3任一项所述的方法,其特征在于,向所述设备发送唤醒命令之 前,还包括:所述远程访问代理获取所述设备的唤醒方式。
5. 根据权利要求1至4任一项所述的方法,其特征在于,还包括: 所述远程访问代理接收所述设备发送的离线消息,并向所述控制点发送描述所述虚拟 设备处于离线状态的消息。
6. 根据权利要求2至5任一项所述的方法,其特征在于: 所述远程访问代理根据所述第一请求消息构造与所述第一请求消息具有相同功能的 第二请求消息包括:所述远程访问代理将所述第一请求消息的目的地址替换为所述设备的 地址信息,将所述第一请求消息的源地址替换为所述虚拟设备的地址信息,作为所述第二 请求消息; 所述远程访问代理根据所述第一响应消息构造与所述第一响应消息具有相同功能的 第二响应消息包括:所述远程访问代理将所述第一响应消息目的地址替换为所述控制点的 地址信息,将所述第一响应消息的源地址替换为所述虚拟设备的地址信息,作为所述第二 响应消息。
7. 根据权利要求1至6任一项所述的方法,其特征在于,所述远程访问代理向远程网络 的控制点发送描述所述虚拟设备处于在线状态的消息包括: 所述远程访问代理通过网络服务器向远程网络的所述控制点发送描述所述虚拟设备 处于在线状态的消息;或者 所述远程访问代理通过虚拟专用网络VPN向远程网络的所述控制点发送描述所述虚 拟设备处于在线状态的消息。
8. 根据权利要求1至7任一项所述的方法,其特征在于,所述远程访问代理接收所述控 制点向所述虚拟设备发送的第一请求消息包括: 所述远程访问代理通过网络服务器接收所述控制点向所述虚拟设备发送的所述第一 请求消息;或者 所述远程访问代理通过VPN接收所述控制点向所述虚拟设备发送的所述第一请求消 肩、。
9. 根据权利要求1至8任一项所述的方法,其特征在于:所述设备为通用即插即用设 备。
10. -种远程访问服务器,其特征在于,包括: 接收模块:用于接收本地网络中设备发送的在线消息; 处理模块:用于在所述接收模块接收到所述设备发送的所述在线消息时,为所述设备 建立虚拟设备,且将所述设备的设备描述文件和服务描述文件中的地址信息替换为所述虚 拟设备的地址信息; 发送模块,用于向远程网络的控制点发送描述所述虚拟设备处于在线状态的消息; 所述接收模块还用于接收所述控制点向所述虚拟设备发送的第一请求消息; 所述处理模块还用于确定所述设备处于睡眠状态还是唤醒状态; 所述发送模块还用于在所述处理模块确定所述设备处于睡眠状态时向所述设备发送 唤醒命令; 所述处理模块还用于在所述发送模块发出所述唤醒命令确定所述设备处于唤醒状态 时,根据所述接收模块接收到的所述第一请求消息构造与所述第一请求消息具有相同功能 的第二请求消息; 所述发送模块还用于向所述设备发送所述第二请求消息。
11. 根据权利要求10所述的远程访问服务器,其特征在于, 所述接收模块还用于接收所述设备向所述虚拟设备发送的第一响应消息; 所述处理模块还用于根据所述接收模块接收到的所述第一响应消息构造与所述第一 响应消息具有相同功能的第二响应消息; 所述发送模块还用于向所述控制点发送所述第二响应消息。
12. 根据权利要求10或11所述的远程访问服务器,其特征在于, 所述接收模块还用于接收所述设备上报的描述所述设备进入睡眠状态的消息; 所述处理模块还用于根据所述接收模块接收到的所述描述所述设备进入睡眠状态的 消息确定所述设备处于睡眠状态。
13. 根据权利要求10至12任一项所述的远程访问服务器,其特征在于, 所述处理模块还用于在所述发送模块向所述设备发送所述唤醒命令之前,获取所述设 备的唤醒方式。
14. 根据权利要求10至13任一项所述的远程访问服务器,其特征在于, 所述接收模块还用于接收所述设备发送的离线消息; 所述发送模块还用于在所述接收模块接收到所述离线消息时,向所述控制点发送描述 所述虚拟设备处于离线状态的消息。
15. 根据权利要求10或11所述的远程访问服务器,其特征在于: 所述根据所述接收模块接收到的所述第一请求消息构造与所述第一请求消息具有相 同功能的第二请求消息,包括:将所述第一请求消息的目的地址替换为所述设备的地址信 息,将所述第一请求消息的源地址替换为所述虚拟设备的地址信息,作为所述第二请求消 息; 或者, 所述根据所述接收模块接收到的所述第一响应消息构造与所述第一响应消息具有相 同功能的第二响应消息,包括:将所述第一响应消息目的地址替换为所述控制点的地址信 息,将所述第一响应消息的源地址替换为所述虚拟设备的地址信息,作为所述第二响应消 肩、。
16. 根据权利要求10至15任一项所述的远程访问服务器,其特征在于:所述设备为通 用即插即用设备。
【文档编号】H04L29/08GK104219264SQ201310213295
【公开日】2014年12月17日 申请日期:2013年5月31日 优先权日:2013年5月31日
【发明者】张钦亮, 朱萸 申请人:华为终端有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1