网络开机或唤醒模块及其开机或唤醒方法

文档序号:6605607阅读:189来源:国知局
专利名称:网络开机或唤醒模块及其开机或唤醒方法
技术领域
本发明涉及一种网络开机或唤醒模块及其开机或唤醒方法,尤其涉及一种自动开启或唤醒被控终端设备的网络开机或唤醒模块及运用网络开机或唤醒模块的开机或唤醒方法。
背景技术
一般地,计算机状态大致可分为SO S5五种状态,其中SO是指计算机的正常工作状态,在SO状态,操作系统和应用程序都在正常运行, CPU(中央处理器)执行指令。该状态下,功耗较高,一般会超过80W ;Sl也称为POS (Power On Suspend),是指计算机除了通过CPU时钟控制器将CPU 停止工作之外,其他主板连接设备(例如硬盘、内存、芯片组等)仍然正常工作,功耗一般在 30W以下(例如,有些CPU降温软件就是利用这种工作原理)。Sl状态为最耗电的睡眠模式。处理器的所有寄存器被刷新,并且CPU停止执行指令。CPU和内存的电源一直维持着, 一些设备如果没有被使用那么就会被停止供电。这种模式通常指上电待机或者简单叫做 P0S,特别在BIOS设置界面上;S2是相比于Sl状态的更深的睡眠状态,该状态中,已经不给CPU供电了 ;然而,通常这种模式并不常被采用;S3是指STR(Suspend to RAM),也是使用者最长常用到的状态,STR就是把系统进入STR前的工作状态数据都存放到内存中去。在STR状态下,主电路电源仍然继续为内存等最必要的设备供电,以确保数据不丢失,而其他设备均处于关闭状态,系统的耗电量极低。 此时,内存是几乎唯一的有电源供给的部件。因为操作系统、所有应用程序和被打开的文档等等的状态都是保存在主存储器(例如内存)中,一旦我们按下Power按钮(主机电源开关),系统就被唤醒,马上从内存中读取数据并恢复到STR之前的工作状态(计算机从S3状态回到SO时内存的内容和它进入S3状态时候的内容是相同的)。内存的读写速度极快, 因此我们感到进入和离开STR状态所花费的时间不过是几秒钟而已,功耗一般不超过10W。 相比以下说明的S4状态来说,S3状态有两个好处(1)计算机恢复的过程比重启要快;(2) 如果任何正在运行的应用程序(被打开的文档等等)有私有信息在里面,这些信息是不会被写到硬盘上的。然而,在S3状态不能被唤醒时(例如遇到了电源故障的时候),高速缓冲存储器可能会被转储清除(flush)来防止数据毁坏;S4也称为STD (Suspend to Disk),是指系统主电源关闭,但是硬盘仍然带电并可以被唤醒,此时内存中信息被写入硬盘中,所有部件停止工作。S4状态也称之为“休眠 (Hibernate)”状态。在这个状态下,所有主存储器(例如内存)的内容被储存在非挥发性存储器,例如硬盘,保护操作系统当前的状态(包括所有应用程序,打开的文档等)。这意味着从S4唤醒恢复后,用户可以恢复到原本的工作状态,采用的方法和S3是一样的。S4和S3 之间的差异是(1)S4状态把主存储器中的内容移进至硬盘或者从硬盘移出所消耗的时间长,因此唤醒的时间相对较长;( 在S3状态下的时候如果一旦停电了,所有主存储器(例如内存)上的数据就会丢失,包括所有的没有保存的文档,而在S4状态下则没有影响。S4 和其它的睡眠状态有很大不同,事实上更类似于软关机状态和硬关机状态。在S4状态下的系统同样可进入硬关机状态,并且保留S4时候的状态信息。所以在关掉电源之后,它可以恢复到以前的运行状态;S5也称为软关机,是指连电源在内的所有设备全部关闭,计算机本身无功耗。但有些部件仍然带电,使计算机仍然可以被键盘、时钟、modem(电话唤醒)、LAN(网络唤醒)还有USB设备所唤醒。通常,计算机在运行程序或者接收外部访问数据时,必须处于正常工作状态(SO)。 特别是对于用作服务器的计算机,因其主要为其它网络用户提供访问服务,为使其它网络用户能随时访问该计算机,通常计算机是全天M小时处于正常工作状态的,显然,这不利于节能,并会缩短计算机的寿命。但是,如果将计算机设置为没有接收操作命令时进入睡眠状态,则会有碍于网络用户的访问。因此,计算机需要一种可远程开机或唤醒的装置。目前,用于远程开机技术主要分为网络发送“魔术包”开机和电话开机两种方式。 其中,网络发送“魔术包”开机只适用于局域网,这种开机方法无法单独实现局域网外的远程开机,满足不了用户需求。为解决上述问题,满足用户需求,中国实用新型专利申请第 200920155266. 8号公开了一种远程开机模块,该远程开机模块设置于发送开机指令的网络服务器和连接电源并响应所述开机指令的被控终端之间,所述远程开机模块包括一处理单元、一连接所述处理单元并与所述网络服务器和所述被控终端通信的通信单元,以及至少一个存储单元,其中,所述存储单元存储所述网络服务器地址,所述开机模块通过所述通信单元主动与所述地址上的网络服务器保持通信。该远程开机模块可有效的在被控终端关机或睡眠的状态下,开启或唤醒被控计算机,然而,由于该远程开机模块需要时时的主动与网络服务器保持通信,故该远程开机模块也不利于节能。且在使用该远程开机模块时,首先需要主控终端登录BS端或CS端发送开机指令,其次才能访问被控终端,操作较为麻烦。同时, 在主控终端上必须设置被控终端的MAC地址等信息,对普通用户而言,其设置也较为麻烦。

发明内容
针对现有技术的不足,本发明解决的技术问题是提供一种当用户远程访问被控计算机时,能够自动开启或唤醒被控计算机的网络开机或唤醒模块及其开机或唤醒方法。为解决上述技术问题,本发明的技术方案是这样实现的一种网络开机或唤醒模块,设置于外部网络和被控终端之间,其中,所述开机模块包括一用于所述被控终端在非正常工作状态下解析所述外部网络访问数据网络协议信息的网络协议解析模块,以及一与所述外部网络和被控终端通信的通信单元。进一步地,所述网络协议解析模块包括一存储有网络协议和开机或唤醒的预定条件存储单元、一调用所述存储单元中的所述网络协议包,实现对网络层和传输层协议的解析的处理单元。所述网络协议为TCP/IP协议。所述TCP/IP协议包括网络层的IP协议和传输层的TCP、UDP协议。
再进一步地,所述预定条件为检测到单播、IP和TCP的某个端口的访问数据或特定形式数据包;所述预定条件或者为检测到单播、IP和UDP的某个端口的访问数据或特定形式的数据包。为解决上述技术问题,本发明还可由这样的方法实现一种网络开机或唤醒模块的开机或唤醒方法,其中,所述开机或唤醒方法包括以下步骤第一步、主控终端向该被控终端发送访问数据;第二步、通过网络开机或唤醒模块对网络协议进行协议解析;第三步、判断是否符合开机或者唤醒的预定条件;第四步、如果判断为“是”,则开启或唤醒所述被控终端。进一步地,在所述第一步和第二步之间还包括以下步骤首先,所述访问数据经过若干路由器后到达离该被控终端最近的路由器或者网关;其次,判断所述被控终端是否处于正常工作状态;最后,如果判断为“否”,则网络开机或唤醒模块代替被控终端处理所述访问数据。再进一步地,所述第四步包括首先,如果判断为“是”,则将所述访问数据缓存于所述网络开机或唤醒模块中;其次,开启或唤醒所述被控终端,然后转发缓存的访问数据至所述被控终端。所述网络协议为TCP/IP协议。所述TCP/IP协议包括网络层的IP协议和传输层的TCP、UDP协议。与现有技术相比,本发明的有益效果是成本较低、节省能源消耗、延长计算机使用寿命,且实现比较准确的自动开机或唤醒。


图1是表示本发明最佳实施方式的网络开机或唤醒系统示意图;图2是表示本发明最佳实施方式的网络开机或唤醒模块的电路方块示意图3是表示本发明最佳实施方式的网络开机或唤醒模块开机或唤醒流程框图。
具体实施例方式现在,将参考附图来详细地描述本发明的具体实施方式
。以下所描述的关机状态以及所附权利要求书中所指的关机状态均是指背景技术中的S5关机状态。所述的正常工作状态是指S0,所述的非正常工作状态时指Sl S5。如图1所示为本发明最佳实施方式的网络开机或唤醒系统示意图,所述网络开机或唤醒系统包括主控终端10、网络开机或唤醒模块20和被控终端30,其中,所述主控终端 10是可连接外部网络(如互联网或移动网络)的应用设备,如,台式计算机、笔记本计算机、 上网本、手机等,并且,该主控终端10连接有电源,该电源为该主控终端10提供电力,如普通家用电源或电池等。所述被控终端30通过所述网络开机或唤醒模块20连接外部网络。值得一提的是所述网络开机或唤醒模块20必须设置于被控终端30与外部网络通信的路口上。该网络开机或唤醒模块20可直接作为普通网络交换设备(交换机、路由
5器、MODEM、网桥、防火墙、VPN服务器、连接网络的IPTV电视机顶盒等)的一部分;还可为集成开机或唤醒和普通网络交换功能的特殊网络交换设备,该特殊网络交换设备可集成至少一个普通网络交换设备,如,交换机、路由器、MODEM、网桥、防火墙、VPN服务器等的功能;当然,该网络开机或唤醒模块20还可独立设置,在其独立设置时,一般包括下述两种设置方式第一、所述网络开机或唤醒模块20需要设置一个网络接口,并通过该网络接口与被控终端30连接到同一 HUB(集线器)或交换机;第二、该网络开机或唤醒模块20需要设置至少两个网络接口,其中一个网络接口连接所述被控终端30,另一网络接口连接所述外部网络;只要保证所述网络开机或唤醒模块20设置于被控终端30与外部网络通信的路口上的即可。该主控终端10可通过C/S登录方式(主控终端开启客户端软件连接网络服务器) 或B/S登录方式(主控终端通过浏览器键入网络服务器地址连接网络服务器)主动向所述被控终端30发出访问数据。若此时被控终端30处于关机或休眠状态,则该访问数据在进入所述网络开机或唤醒模块20后,存储于所述网络开机或唤醒模块20,并且该网络开机或唤醒模块20中存储的由用户设定的开机或唤醒条件将会对该访问数据进行网络协议分析后的条件认证,若该访问数据通过了该网络协议认证后的条件认证,则所述网络开机或唤醒模块20将会发送开机或唤醒指令至连接有供电单元的被控终端30。所述网络协议包括 TCP/IP、APPLETALK、IPX/SPX、ZIPBEE等,优选的,在本发明中,采用的为通常使用的TCP/IP 协议。被控终端30在接收到该开机或唤醒指令后实现开机或唤醒,在该被控终端30开机或唤醒后,所述网络开机或唤醒模块20将存储的访问数据发送至所述被控终端30。值得一提的是本发明中的网络开机或唤醒模块20即可只开机或唤醒一台被控终端30,又可开机或唤醒多台被控终端30,只要被控终端30都连接有电源即可。所述开机, 即是接通将处于关机状态(SO的被控终端30电源或启动所述被控终端30的主电路;所述唤醒,即是在所述被控终端30处于S1-S4状态时,将所述被控终端30恢复到SO状态。值得一提的是该被控终端30可为计算机、服务器、存储设备等IT产品,也可为电视机、空调、洗衣机等家电产品,只要设有网络接入设备并可连接互联网的装置,均可认为是该申请中所述的被控终端30。在本发明的实施方式中主要以个人计算机、服务器、笔记本等计算机设备举例说明。该网络开机或唤醒模块20是负责响应、处理主控终端10网络访问的控制器,其即可通过有线方式与被控终端30相连,也可通过无线方式与被控终端30相连,且该网络开机或唤醒模块20可以采用局域网唤醒(WakeOn LAN)方式触发被控终端30开机或唤醒被控终端30。如图2所示,所述网络开机或唤醒模块20包括一处理单元201、一存储单元202, 和一通信单元203,该处理单元201电性连接所述存储单元202和所述通信单元203,并控制所述存储单元202和所述通信单元203工作,通常的,所述处理单元可以是CPU、MPU、MCU 等本领域普通技术人员熟知的处理器。在本发明最佳实施方式中,所述通信单元203包括至少两个网络通信接口,其中一个网络通信接口可直接或间接的访问外部网络,剩余的网络通信接口可连接一个或多个被控终端30 ;所述存储单元202可操作地用于存储网络协议包和开机或唤醒的预定条件, 在本发明最佳实施方式中,该网络协议包为TCP/IP协议包。优选地,TCP/IP协议包可以以包含于程序模块中的形式被写入存储单元202中,例如,该程序模块为一嵌入式软件,根据外部访问数据的指令可以使处理单元201执行该程序。TCP/IP协议包通常包括第三层(网络层)和第四层(传输层)的协议,例如,包括网络层的IP协议和传输层的TCP、UDP协议等。存储单元202优选地为非挥发存储器。所述处理单元201可以根据外部网络的访问数据(优选地,是基于TCP/IP协议传输的)的指令,调用存储单元202中的包含TCP/IP协议包的程序,实现对网络层和传输层协议的解析处理。因此,该网络开机或唤醒模块20可是实现OSI层第三层和第四层协议的 TCP/IP协议解析。由此可见,处理单元201和存储单元202构成了该网络开机或唤醒模块20的TCP/ IP协议解析模块的主要组成部分,TCP/IP协议解析模块可用于所述被控终端30在非正常工作状态下(特别是在S4、S5状态下)解析外部网络的访问数据的TCP/IP协议信息,通常情况下,TCP/IP协议解析模块的功能的完成是不依赖于被控终端30操作系统的,其是处理单元201和存储单元202的结合运行来实现。由上述可知,该网络开机或唤醒模块20可以在被控终端30处于非正常工作状态 (S1-S5)下,实现对第二层以上的TCP/IP协议信息进行解析,从而可以自动地实现网络开机或者唤醒处理非正常工作状态的被控终端30,使被控终端30可以方便地被远程用户开机或者唤醒,被控终端30可以在未被访问或使用状态下可置于节能的非正常工作状态,大大节省能源消耗,并能延长计算机的使用寿命。值得一提的是在本发明的第一实施方式中,所述存储单元202存储有被控终端 30的MAC地址,在所述主控终端10通过外部网络向所述被控终端30发送访问数据,且所述被控终端处于Sl至S5状态时,所述处理单元201提出存储单元202中被控终端30的MAC 地址,并由所述通信单元203的网络通信接口通过有线方式或无线方式向具有所述MAC地址的被控终端30发送开机或唤醒指令,触发被控终端30开机或唤醒。当然,在本发明的第二实施方式中,所述存储单元202和所述主控终端10还可均未设置有被控终端30的MAC地址,该网络开机或唤醒模块20通过通信单元203以局域网唤醒(Wake On LAN)的方式中的LinkChange Mode或Pattern Match Mode方式触发该被控终端,所述的LinkChange Mode可以开机或唤醒直接或间接连在所述网络开机或唤醒模块20通信单元203上的所有被控终端30,并不针对某一部或几部知道网卡地址的被控终端 30,也不需要网络数据包形式的开机或唤醒指令;所述I^attern Match Mode是指可以唤醒一部或多部有共同特征的被控终端30,需要发送开机或唤醒指令,但是开机或唤醒指令中可以没有被控终端的MAC地址。如图3所示,在该被控终端30处于正常状态时,主控终端10的访问数据是可以随时到达该被控终端30并能由被控终端30处理该访问数据的。为节省能源,并延长被控终端30的使用寿命,在本发明中,被控终端30用户可以将被控终端30置于“关机”或者“睡眠”等非正常工作状态,例如,背景技术中所描述的Sl至S5的任一状态。因此,在主控终端 10向该IP地址的被控终端30发送访问数据时,有可能需要应用本发明的网络开机或唤醒模块20及其开机或唤醒方法。其中,应用本发明的网络开机或唤醒模块20的控制方法包括以下S211至S225步骤
步骤S211,主控终端10向该被控终端30发送访问数据。在该步骤中,由于是基于网络发送,因此访问数据是以网络协议发送并传输的,优选地,该访问数据时以TCP/IP协议发送并传输的,该访问数据中包括被控终端30的IP地址。步骤S213,所述访问数据经过若干路由器后到达离该被控终端30最近的路由器或者网关。步骤S215,判断所述被控终端30是否处于正常工作状态。如果判断为“是”,则按照正常的访问程序进行,被控终端30可以直接处理该访问数据;如果判断为“否”,进入步骤 S217。其中,判断所述被控终端30是否处于正常工作状态的方法可通过以下三种实施方式第一实施方式在被控终端30内运行的电源管理软件,在休眠或关机前通过网络通知网络开机或唤醒模块20,在唤醒或开机成功后也通知网络开机或唤醒模块20。第二实施方式网络开机或唤醒模块20知道被控终端30的IP,网络开机或唤醒模块20定时向被控终端30发送ARP请求(ns请求,ipv6),如果连续2次得不到正确回应就认为被控终端30处于非正常状态,否则,则是处于正常状态。第三实施方式网络指向被控终端30的访问流量会经过网络开机或唤醒模块20, 当检测到指向被控终端30IP地址的ARP请求(ns请求,ipv6)在正常时间内得不到回复数据包时,认为该被控终端30处于休眠或关机状态。步骤S217,网络开机或唤醒模块20在被控终端30处于非正常工作状态下代替被控终端30处理该访问数据。在该步骤中,离该计算机最近的路由器或者网关会向网络开机或唤醒模块20发送地址解析协议(ARP)请求,例如以广播的形式广播ARP请求报文;该网络开机或唤醒模块20包括用于该被控终端30在“非正常工作状态下”解析外部因特网访问数据的TCP/ IP协议包,因此,即使被控终端30处于关机状态,该网络开机或唤醒模块20中也总是存有该被控终端30的MAC地址和IP地址,也还可以存储被控终端30名称,(host name)、甚至DHCP(Dynamic Host Configuration Protocol,动态主机设置协议)的配置信息以及 SSID (采用无线网络接口装置时存储SSID) (Service SetIdentif ier,服务集标识),从而可以正确回应ARP请求,使得访问该被控终端30的数据可以被正确地发送到该网络开机或唤醒模块20。步骤S219,通过网络开机或唤醒模块20存储单元202中的TCP/IP协议包进行协议解析。在该步骤中,网络开机或唤醒模块20调用存储单元202中的TCP/IP协议包,网络开机或唤醒模块20的处理单元201从而可操作地实现解析处理外部网络访问数据中的 TCP/IP协议信息。TCP/IP协议包中通常是包含TCP/IP协议包,该TCP/IP协议包包括网络层的IP协议以及传输层的TCP协议和UDP协议等。因此,实现了访问数据的第三层和/或第四层的数据解析处理,而并不限于第一层(物理层)和第二层(数据链路层)的数据处理。步骤S221,判断是否符合开机或者唤醒的预定条件。在该步骤中,预定条件可以在以上所述的存储单元202中设定,例如,当检测到单播、IP、TCP和UDP的某个端口的访问数据时(甚至某种特的数据包),作为开机或者唤醒的预定条件。在另一实施方式中,预定条件还可以为检测到特定形式的TCP数据包,例如,对于一台开放WEB服务的计算机,可以将 TCP端口 80和端口 443的数据访问设置为开机唤醒条件。当检测到访问数据包是TCP而且指向端口 80或443时(这些信息包含在特定形式的TCP数据包内),该计算机就被唤醒或开机;当然我们还可以设置更复杂的开机唤醒条件,除了要求数据包目的地指向本机的80 或443端口,还检查数据包的来源IP地址,只有当来源IP地址符合预设的条件才执行开机或唤醒(对于一些只对企业内部开放的服务可以这样设置,企业内部不同部门的出口 IP地址是预先知道的)。在再一实施方式中,开机或者唤醒的预定条件为检测到单播、IP和UDP 的某个端口的访问数据或者特定形式(pattern)的UDP数据包。如果判断为“是”,则进入步骤S223 ;如果判断为“否”,则不作处理,主控终端10的此次访问失败。步骤S223,将该访问数据缓存于网络开机或唤醒模块20的存储单元202。由于用户访问数据可能较大,而触发被控终端30主电路开机或者唤醒被控终端 30需要一定的时间,因此,优选地,可以执行该步骤。在该步骤中,网络开机或唤醒模块20 的存储单元202可以是之前步骤所使用的同一存储单元。因此,对该发明的存储单元202, 其存储容量有一定要求,例如,存储单元202的存储容量范围为IM到100M(根据需要可以具体需要可以选择另外扩充)。步骤S225,发送开机或唤醒指令以开机或唤醒所述被控终端30。此步骤后,网络开机或唤醒模块20的存储单元202可发送缓存的访问数据至被控终端30,以使被控终端 30正常处理该访问数据。在此,对物理层和数据链路层的具体数据处理过程可参考现有的网络通信过程中的处理过程,从而不再作详细描述。本发明的网络开机或唤醒模块20在被控终端30的上游,当检测到访问被控终端 30的网络流量时发送被控终端30可以接受的开机或唤醒指令。网络开机或唤醒模块20可以通过解析协议来判断,过滤造成误开机的流量,实现比较准确的自动开机。尽管为示例目的,已经公开了本发明的优选实施方式,但是本领域的普通技术人员将意识到,在不脱离由所附的权利要求书公开的本发明的范围和精神的情况下,各种改进、增加以及取代是可能的。
权利要求
1.一种网络开机或唤醒模块,设置于外部网络和被控终端之间,其特征在于所述开机模块包括一用于所述被控终端在非正常工作状态下解析所述外部网络访问数据网络协议信息的网络协议解析模块,以及一与所述外部网络和被控终端通信的通信单元。
2.根据权利要求1所述的网络开机或唤醒模块,其特征在于,所述网络协议解析模块包括一存储有网络协议和开机或唤醒的预定条件存储单元、一调用所述存储单元中的所述网络协议包,实现对网络层和传输层协议的解析的处理单元。
3.根据权利要求2中任意一项所述的网络开机或唤醒模块,其特征在于,所述网络协议为TCP/IP协议。
4.根据权利要求3所述的网络开机或唤醒模块,其特征在于,所述TCP/IP协议包括网络层的IP协议和传输层的TCP、UDP协议。
5.根据权利要求2所述的网络开机或唤醒模块,其特征在于,所述预定条件为检测到单播、IP和TCP的某个端口的访问数据或特定形式数据包;所述预定条件或者为检测到单播、IP和UDP的某个端口的访问数据或特定形式的数据包。
6.一种根据权利要求1所述的网络开机或唤醒模块的开机或唤醒方法,其特征在于, 所述开机或唤醒方法包括以下步骤第一步、主控终端向该被控终端发送访问数据;第二步、通过网络开机或唤醒模块对网络协议进行协议解析;第三步、判断是否符合开机或者唤醒的预定条件;第四步、如果判断为“是”,则开启或唤醒所述被控终端。
7.根据权利要求6所述的方法,其特征在于,在所述第一步和第二步之间还包括以下步骤首先,所述访问数据经过若干路由器后到达离该被控终端最近的路由器或者网关;其次,判断所述被控终端是否处于正常工作状态;最后,如果判断为“否”,则网络开机或唤醒模块代替被控终端处理所述访问数据。
8.根据权利要求6所述的方法,其特征在于,所述第四步包括首先,如果判断为“是”,则将所述访问数据缓存于所述网络开机或唤醒模块中;其次,开启或唤醒所述被控终端,并转发缓存的访问数据至所述被控终端。
9.根据权利要求6至8中任意一项所述的方法,其特征在于所述网络协议为TCP/IP 协议。
10.根据权利要求9所述的方法,其特征在于,所述TCP/IP协议包括网络层的IP协议和传输层的TCP、UDP协议。
全文摘要
本发明提供一种网络开机或唤醒模块,设置于外部网络和被控终端之间,其中,所述开机模块包括一用于所述被控终端在非正常工作状态下解析所述外部网络访问数据网络协议信息的网络协议解析模块,以及一与所述外部网络和被控终端通信的通信单元。与现有技术相比,本发明的有益效果是成本较低、节省能源消耗、延长计算机使用寿命,且实现比较准确的自动开机或唤醒。
文档编号G06F9/445GK102316137SQ20101022199
公开日2012年1月11日 申请日期2010年7月7日 优先权日2010年7月7日
发明者伍芃华 申请人:苏州彭华信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1