本發(fā)明涉及網(wǎng)絡(luò)通訊系統(tǒng)的技術(shù)領(lǐng)域,更具體地說,涉及一種遠程喚醒方法、聯(lián)機服務(wù)器及具有休眠模式的連網(wǎng)裝置。
背景技術(shù):
隨著科技的進步,物聯(lián)網(wǎng)(Internet of Things;IOT)已被廣泛應(yīng)用于家庭智能設(shè)施、移動終端設(shè)備及工業(yè)系統(tǒng)環(huán)境等。在物聯(lián)網(wǎng)架構(gòu)下,每個人周遭的各種裝置都可以連接至網(wǎng)絡(luò),并且用戶可以透過網(wǎng)絡(luò)對于這些裝置進行相關(guān)控制與存取等。為了能長時間提供服務(wù),物聯(lián)網(wǎng)架構(gòu)中的連網(wǎng)裝置要同時具有省電與連網(wǎng)的能力。其中,連網(wǎng)裝置在閑置時會進入休眠以節(jié)省電力。在進入休眠之際,必須要有一方法能夠遠程喚醒連網(wǎng)裝置,以繼續(xù)提供裝置服務(wù)。然而,要透過因特網(wǎng)或是路由器喚醒連網(wǎng)裝置并不容易。
然而,現(xiàn)有喚醒技術(shù)須具備大量網(wǎng)絡(luò)知識,以了解主板、網(wǎng)絡(luò)卡、防火墻等設(shè)定,方能實現(xiàn)網(wǎng)絡(luò)喚醒的功能。再者,現(xiàn)有喚醒技術(shù)多利用路由器廣播方式來喚醒裝置,并無法直接喚醒遠程的連網(wǎng)裝置。
技術(shù)實現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題在于,針對現(xiàn)有技術(shù)的上述缺陷,提供一種遠程喚醒方法。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:構(gòu)造一種遠程喚醒方法,所述方法包括以下步驟:
接收來自第一裝置的喚醒要求封包、根據(jù)喚醒要求封包取得喚醒信息、根據(jù)喚醒要求封包與喚醒信息生成裝置喚醒封包、根據(jù)喚醒要求封包取得對應(yīng)第二裝置的聯(lián)機信息、以及基于聯(lián)機信息向第二裝置發(fā)送裝置喚醒封包。其中,喚醒要求封包包括第二裝置的設(shè)備標識符(UID),并且裝置喚醒封包包括第二裝置的設(shè)備標識符與喚醒信息。
本發(fā)明還提供一種聯(lián)機服務(wù)器,其包括:
網(wǎng)絡(luò)模塊、儲存模塊以及控制模塊??刂颇K連接網(wǎng)絡(luò)模塊與儲存模塊,并且儲存模塊儲存有對應(yīng)第二裝置的聯(lián)機信息與喚醒信息??刂颇K通過網(wǎng)絡(luò)模塊接收來自第一裝置的喚醒要求封包、根據(jù)喚醒要求封包取得喚醒信息與聯(lián)機信息、根據(jù)喚醒要求封包與喚醒信息生成裝置喚醒封包,并利用網(wǎng)絡(luò)模塊基于聯(lián)機信息向第二裝置發(fā)送裝置喚醒封包。其中,喚醒要求封包包括第二裝置的設(shè)備標識符(UID),并且裝置喚醒封包包括第二裝置的設(shè)備標識符與喚醒信息。
本發(fā)明還提供一種具有休眠模式的連網(wǎng)裝置,其包括:
網(wǎng)絡(luò)單元、儲存單元以及控制單元。控制單元連接網(wǎng)絡(luò)模塊與儲存單元,并且儲存單元儲存有設(shè)備標識符(UID)以及喚醒信息。在進入休眠模式之前,控制單元根據(jù)設(shè)備標識符與喚醒信息生成預(yù)存特征數(shù)據(jù),并儲存預(yù)存特征數(shù)據(jù)在儲存單元中。預(yù)存特征數(shù)據(jù)包括設(shè)備標識符的全部數(shù)據(jù)或部分數(shù)據(jù)與喚醒信息。其中,在休眠模式下,網(wǎng)絡(luò)單元仍保持運作并且在接收到裝置喚醒封包時根據(jù)預(yù)存特征數(shù)據(jù)與裝置喚醒封包進行比對,以進行喚醒連網(wǎng)裝置。
綜上,根據(jù)本發(fā)明的遠程喚醒方法、聯(lián)機服務(wù)器及具有休眠模式的連網(wǎng)裝置,可使第二裝置進入超低耗電狀態(tài)(休眠狀態(tài)),并且能提供第一裝置使用第二裝置的設(shè)備標識符通過聯(lián)機服務(wù)器對遠程的第二裝置直接發(fā)起喚醒要求(裝置喚醒封包),以至于無需任何設(shè)定(例如:主板、網(wǎng)絡(luò)卡、防火墻等裝置設(shè)定)亦無須通過網(wǎng)絡(luò)廣播,即可喚醒遠程的第二裝置并且減少本地網(wǎng)絡(luò)(LAN)下的網(wǎng)絡(luò)封包量。
附圖說明
下面將結(jié)合附圖及實施例對本發(fā)明作進一步說明,附圖中:
圖1A及圖1B是本發(fā)明一實施例的網(wǎng)絡(luò)通訊系統(tǒng)的示意圖;
圖2是本發(fā)明另一實施例的網(wǎng)絡(luò)通訊系統(tǒng)的示意圖;
圖3是一實施例的連網(wǎng)裝置的示意圖;
圖4是一實施例的聯(lián)機服務(wù)器的示意圖;
圖5是一實施例的遠程喚醒方法的第一部分的流程圖;
圖6是一實施例的喚醒要求封包的概要示意圖;
圖7是一實施例的裝置喚醒封包的概要示意圖;
圖8是一實施例的遠程喚醒方法的第二部分的流程圖;
圖9是一實施例的遠程喚醒方法的第三部分的流程圖;
圖10是一實施例的比對封包的概要示意圖;
圖11是另一實施例的第二裝置的運作狀態(tài)的辨識方法的流程圖;
圖12是一實施例的休眠登錄封包的概要示意圖;
圖13是一實施例的特征旗標在休眠登錄封包中的位置的示意圖;
圖14是另一實施例的遠程喚醒方法的部分流程圖;
圖15是又一實施例的遠程喚醒方法的部分流程圖。
具體實施方式
圖1A及1B圖是根據(jù)本發(fā)明一實施例的網(wǎng)絡(luò)通訊系統(tǒng)的示意圖。圖2是根據(jù)本發(fā)明另一實施例的網(wǎng)絡(luò)通訊系統(tǒng)的示意圖。參照圖1A、圖1B及圖2,網(wǎng)絡(luò)通訊系統(tǒng)10包括二連網(wǎng)裝置(為了清楚說明,以下分別稱之為第一裝置110與第二裝置130)以及聯(lián)機服務(wù)器150。連網(wǎng)裝置(第一裝置110與第二裝置130)可為任何能鏈接網(wǎng)絡(luò)的電子裝置,例如:個人計算機、智能型手機(smart phone)、導(dǎo)航機(PND)、筆記本電腦(notebook)、平版計算機(Tablet or Pad)、視訊攝影機、網(wǎng)絡(luò)攝影機(IP cam)或智能型家電等。
在一些實施例中,假設(shè)第一裝置110為主動提出聯(lián)機要求的委托裝置,而第二裝置130為被動接受聯(lián)機要求的遠程裝置。參照圖1A及圖2,當?shù)谝谎b置110要與第二裝置130進行點對點聯(lián)機時,第一裝置110經(jīng)由網(wǎng)絡(luò)發(fā)送聯(lián)機要求封包給聯(lián)機服務(wù)器150,以要求與第二裝置130進行點對點聯(lián)機。其中,聯(lián)機要求封包包括聯(lián)機目標(第二裝置130)的設(shè)備標識符(Unique Identification,UID)及指出封包來源的網(wǎng)絡(luò)位置(即,第一裝置110的聯(lián)機信息)。聯(lián)機服務(wù)器150接收到聯(lián)機要求封包后,聯(lián)機服務(wù)器150根據(jù)第二裝置130的設(shè)備標識符從其儲存模塊中讀出第二裝置130的聯(lián)機信息并將第二裝置130的聯(lián)機信息回傳給第一裝置110。并且,聯(lián)機服務(wù)器150基于第二裝置130的聯(lián)機信息向第二裝置130傳送第一裝置110的聯(lián)機信息,以通知第二裝置130與第一裝置110進行點對點聯(lián)機。然后,第二裝置130與第一裝置110即能分別根據(jù)第一裝置110的聯(lián)機信息與第二裝置130的聯(lián)機信息而在彼此之間形成點對點聯(lián)機,如圖1B及圖2所示。在此雖然是以第一裝置110與第二裝置130之間的通訊聯(lián)機為點對點聯(lián)機為例,但本發(fā)明不限于此,第一裝置110與第二裝置130之間的通訊聯(lián)機亦可是經(jīng)由聯(lián)機服務(wù)器150或另一聯(lián)機服務(wù)器的中繼聯(lián)機。
其中,各聯(lián)機信息包括連網(wǎng)裝置所在的網(wǎng)絡(luò)地址(IP Address)。在一些實施例中,各聯(lián)機信息還可包括端口(Port)及/或地址轉(zhuǎn)換器(NAT)的類型。
在一些實施例中,第一裝置110與第二裝置130可位于相同網(wǎng)絡(luò),也可位于不同網(wǎng)絡(luò)。舉例來說,參照圖1A及圖1B,第二裝置130位于由地址轉(zhuǎn)換器120所形成的本地網(wǎng)絡(luò)20中,而第一裝置110與聯(lián)機服務(wù)器150位于因特網(wǎng)30中。因此,第二裝置130位于地址轉(zhuǎn)換器120的后方(相對于因特網(wǎng)30),并且第二裝置130經(jīng)由地址轉(zhuǎn)換器120連接因特網(wǎng)30。但本發(fā)明不限于此。在另一例子中,第一裝置110可與第二裝置130位于同一本地網(wǎng)絡(luò)。舉例來說,參照圖2,第一裝置110、第二裝置130與聯(lián)機服務(wù)器150位于同一本地網(wǎng)絡(luò)20中,并且彼此間通過一個或多個網(wǎng)絡(luò)切換器(switch)或集線器(Hub)140通訊連接。在又另一例子中,第一裝置110則可位于由另一地址轉(zhuǎn)換器所形成的另一本地網(wǎng)絡(luò)中(圖中未示出),即第一裝置110與第二裝置130分別位于不同的本地網(wǎng)絡(luò)中。
圖3是一實施例的連網(wǎng)裝置的示意圖。
在一些實施例中,參照圖3,第二裝置130包括控制單元131、網(wǎng)絡(luò)單元133以及儲存單元135??刂茊卧?31連接網(wǎng)絡(luò)模塊133與儲存單元135,且網(wǎng)絡(luò)單元133連接儲存單元135。在一些實施例中,控制單元131、網(wǎng)絡(luò)單元133與儲存單元135可由一網(wǎng)絡(luò)芯片實現(xiàn)。此外,第二裝置130還可包括提供裝置主要功能的功能模塊(圖中未示出)。舉例來說,當?shù)诙b置130為網(wǎng)絡(luò)攝影機時,第二裝置130還可包括具有攝影功能的功能模塊(即,攝影模塊)。在另一例子中,當?shù)诙b置130為門禁系統(tǒng)時,第二裝置130還可包括具有門禁管控功能的功能模塊。
在本發(fā)明中,第二裝置130可為低功耗裝置。換句話說,除了正常運作模式外,第二裝置130還具有省電模式(即休眠模式)。在省電模式下,第二裝置130會進入休眠狀態(tài),以節(jié)省功耗。然而,當?shù)诙b置130的運作狀態(tài)為休眠狀態(tài)時(即,在休眠模式下),第二裝置130的網(wǎng)絡(luò)單元133仍保持運作,即網(wǎng)絡(luò)單元133不休眠。
在正常運作模式下,第二裝置130與聯(lián)機服務(wù)器150在正常聯(lián)機下,控制單元131會通過網(wǎng)絡(luò)單元133定時發(fā)送正常登錄封包給聯(lián)機服務(wù)器150,以提供第二裝置130所在網(wǎng)絡(luò)位置的聯(lián)機信息。并且,在正常聯(lián)機下,控制單元131還會通過網(wǎng)絡(luò)單元133向聯(lián)機服務(wù)器150發(fā)起各式服務(wù)請求,并且聯(lián)機服務(wù)器150對應(yīng)響應(yīng)第二裝置130各式服務(wù)請求。
圖4是一實施例的聯(lián)機服務(wù)器的示意圖。
在一些實施例中,參照第4圖,聯(lián)機服務(wù)器150包括控制模塊151、網(wǎng)絡(luò)模塊153以及儲存模塊155。
在一些實施例中,當?shù)谝谎b置110要與進入休眠狀態(tài)的第二裝置130進行聯(lián)機時,第一裝置110可先通過聯(lián)機服務(wù)器150喚醒第二裝置130。
圖5是一實施例的遠程喚醒方法的第一部分的流程圖。圖6是喚醒要求封包的一實施例的概要示意圖。
參照圖1至圖5,為喚醒第二裝置130,第一裝置110生成喚醒要求封包并經(jīng)由網(wǎng)絡(luò)(因特網(wǎng)30、或本地網(wǎng)絡(luò)20及因特網(wǎng)30)將喚醒要求封包發(fā)送給聯(lián)機服務(wù)器150(步驟S500)。其中,喚醒要求封包WRP包括一般信息HD與第二裝置130的設(shè)備標識符ID,如圖6所示。在一些實施例中,一般信息HD與第二裝置130的設(shè)備標識符ID可位于喚醒要求封包WRP的表頭中。在一些實施例中,喚醒要求封包WRP還可包括封包內(nèi)容。
控制模塊151通過網(wǎng)絡(luò)模塊153接收到來自第一裝置110的喚醒要求封包WRP(步驟S510)后,控制模塊151根據(jù)喚醒要求封包WRP中的設(shè)備標識符ID從儲存模塊155中取得對應(yīng)第二裝置130的喚醒信息(步驟S520)。并且,控制模塊151根據(jù)喚醒要求封包WRP與喚醒信息生成裝置喚醒封包(步驟S530)。
圖7是裝置喚醒封包的一實施例的概要示意圖。
在一些實施例中,控制模塊151將喚醒要求封包WRP(一般信息HD與設(shè)備標識符ID)與喚醒信息WM組合成未加密封包,并對未加密封包進行加密演算而生成裝置喚醒封包EWP,如圖7所示。其中,加密運算可以是采用加密技術(shù)進行未加密封包的加密處理。加密技術(shù)可為例如:(但不限于此)訊息摘要算法(Message-Digest Algorithm;MD5)、安全哈希算法(Secure Hash Algorithm;SHA)、RSA(Rivest-Shamir-Adleman)加密算法或凱薩加密法(Caesar Cipher)等。
在一些實施例中,在控制模塊151所產(chǎn)生的未加密封包中,設(shè)備標識符ID與喚醒信息WM的數(shù)據(jù)大小的總和可大于或等于加密演算的一個加密單位。舉例來說,當加密演算的加密單位為16bytes(字節(jié))時,設(shè)備標識符ID與喚醒信息WM的總和則是大于或等于16bytes。在一些實施例中,喚醒信息WM的數(shù)據(jù)大小可小于或等于一個加密單位。舉例來說,當加密演算的加密單位為16bytes(字節(jié))時,喚醒信息WM則是小于或等于16bytes。
此外,控制模塊151亦可根據(jù)喚醒要求封包WRP中的設(shè)備標識符ID從儲存模塊155中取得對應(yīng)第二裝置130的聯(lián)機信息(步驟S540)。換句話說,聯(lián)機服務(wù)器150的儲存模塊155中儲存有對應(yīng)第二裝置130的聯(lián)機信息與喚醒信息WM。
在一些實施例中,儲存模塊155記錄有第二裝置130的設(shè)備標識符ID、聯(lián)機信息AD、喚醒信息WM以及各信息之間的對應(yīng)關(guān)系,如下表一所示??刂颇K151從儲存模塊155中取得對應(yīng)設(shè)備標識符ID的喚醒信息WM與聯(lián)機信息AD。
表一:
在一些實施例中,第二裝置130的設(shè)備標識符ID與對應(yīng)第二裝置130的聯(lián)機信息AD等信息可以是第二裝置130與聯(lián)機服務(wù)器150通訊聯(lián)機時提供給聯(lián)機服務(wù)器150,進而記錄在其儲存模塊155中。
接著,控制模塊151通過網(wǎng)絡(luò)模塊153基于取得的聯(lián)機信息AD向第二裝置130發(fā)送裝置喚醒封包EWP(步驟S550),即將裝置喚醒封包EWP經(jīng)由網(wǎng)絡(luò)傳送給位于聯(lián)機信息AD中的網(wǎng)絡(luò)地址的第二裝置130。
圖8是一實施例的遠程喚醒方法的第二部分的流程圖。
搭配參照圖8,由于第二裝置130在休眠狀態(tài)下其網(wǎng)絡(luò)單元133仍持續(xù)運作,因此第二裝置130的網(wǎng)絡(luò)單元133仍可接收來自聯(lián)機服務(wù)器150的裝置喚醒封包EWP(步驟S560)。
當網(wǎng)絡(luò)單元133接收到裝置喚醒封包EWP(步驟S560)時,網(wǎng)絡(luò)單元133根據(jù)既定數(shù)據(jù)位置從裝置喚醒封包EWP取得喚醒特征數(shù)據(jù)(步驟S570)并從儲存單元135讀出休眠前預(yù)先儲存的預(yù)存特征數(shù)據(jù)(步驟S580)。其中,喚醒特征數(shù)據(jù)的數(shù)據(jù)大小小于裝置喚醒封包EWP的數(shù)據(jù)大小。在此,喚醒特征數(shù)據(jù)即為裝置喚醒封包EWP的一段數(shù)據(jù)。
在一些實施例中,喚醒特征數(shù)據(jù)的數(shù)據(jù)大小可為前述的加密演算的至少一個加密單位。換句話說,既定數(shù)據(jù)位置為裝置喚醒封包EWP特定位置的至少一個加密單位。舉例來說,當加密演算的加密單位為16bytes時,喚醒特征數(shù)據(jù)則為16bytes的倍數(shù)。在一些實施例中,喚醒特征數(shù)據(jù)的數(shù)據(jù)可為裝置喚醒封包EWP中最后至少一個加密單位的數(shù)據(jù)。換句話說,既定數(shù)據(jù)位置為最后至少一個加密單位。舉例來說,當加密演算的加密單位為16bytes時,喚醒特征數(shù)據(jù)可為裝置喚醒封包EWP中最后16bytes或32bytes。特別地,取得的喚醒特征數(shù)據(jù)包括裝置喚醒封包EWP中具有一致性的數(shù)據(jù)(例如:設(shè)備標識符ID與喚醒信息WM等),但不包括動態(tài)變化的數(shù)據(jù)(例如:一般信息HD)。其中,具有一致性的數(shù)據(jù)是指就發(fā)給同一連網(wǎng)裝置的多個封包而言不會隨著不同環(huán)境參數(shù)變化而有所不同的數(shù)據(jù)。動態(tài)變化的數(shù)據(jù)是指就發(fā)給同一連網(wǎng)裝置的多個封包而言會因環(huán)境參數(shù)變化而有所不同的數(shù)據(jù),例如:一般信息HD中的版本、服務(wù)請求代號與發(fā)送時間等。
在一些實施例中,喚醒特征數(shù)據(jù)可包括加密后的設(shè)備標識符ID與加密后的喚醒信息WM。換句話說,設(shè)備標識符ID與喚醒信息WM的數(shù)據(jù)大小的總和為加密單位的倍數(shù),且此倍數(shù)為正整數(shù)。在另一些實施例中,喚醒特征數(shù)據(jù)可包括加密后的部分設(shè)備標識符ID與加密后的喚醒信息WM。換句話說,此部分設(shè)備標識符ID與喚醒信息WM的數(shù)據(jù)大小的總和為加密單位的倍數(shù),且此倍數(shù)為正整數(shù)。
接著,網(wǎng)絡(luò)單元133比對喚醒特征數(shù)據(jù)與預(yù)存特征數(shù)據(jù)(步驟S590),以判斷二者是否相同(步驟S592)。當喚醒特征數(shù)據(jù)與預(yù)存特征數(shù)據(jù)一致時,網(wǎng)絡(luò)單元133喚醒整個第二裝置130(步驟S600),以致使第二裝置130能接受第一裝置110通信鏈接要求(完成點對點聯(lián)機的形成或中繼聯(lián)機的形成)。當喚醒特征數(shù)據(jù)與預(yù)存特征數(shù)據(jù)不一致時,網(wǎng)絡(luò)單元133則忽略(丟棄)裝置喚醒封包EWP,即不喚醒整個第二裝置130(步驟S602)。
在一些實施例中,在休眠模式下,網(wǎng)絡(luò)單元133能直接讀取控制單元131預(yù)存于儲存單元135中的預(yù)存特征數(shù)據(jù),以供網(wǎng)絡(luò)模塊133進行比對而喚醒。
在另一些實施例中,儲存單元135可包括復(fù)數(shù)個儲存組件(以下分別稱之為主儲存單元以及子儲存單元)。控制單元131產(chǎn)生預(yù)存特征數(shù)據(jù)后,會將預(yù)存特征數(shù)據(jù)儲存于主儲存單元中。并且,在進入休眠前,網(wǎng)絡(luò)單元133會將喚醒所需的數(shù)據(jù)(如,預(yù)存特征數(shù)據(jù))從主儲存單元加載至子儲存單元,以供網(wǎng)絡(luò)單元133進行比對而喚醒。并且,在休眠模式下,網(wǎng)絡(luò)單元133與子儲存單元均仍保持運作(供電)。其中,子儲存單元可設(shè)置在網(wǎng)絡(luò)單元133中。
圖9是一實施例的遠程喚醒方法的第三部分的流程圖。
在一些實施例中,參照圖9,在進入休眠模式之前,控制單元131從儲存單元135讀出第二裝置130的設(shè)備標識符ID與喚醒信息WM(步驟S710),并且根據(jù)設(shè)備標識符ID與喚醒信息WM生成比對封包(步驟S720)。其中,在第二裝置130(儲存單元135)中的喚醒信息WM與聯(lián)機服務(wù)器150(儲存模塊155)中的喚醒信息WM的相同。
圖10是一實施例的比對封包的概要示意圖。
在一些實施例中,控制單元131將一般信息HD’、設(shè)備標識符ID與喚醒信息WM組合成未加密封包,并對此未加密封包進行加密演算而生成比對封包CP,如圖10所示。在此,第二裝置130與聯(lián)機服務(wù)器150是采用相同的加密技術(shù)進行加密演算。其中,加密運算可以是采用加密技術(shù)對未加密封包進行加密處理。加密技術(shù)可為例如:(但不限于此)訊息摘要算法(Message-Digest Algorithm;MD5)、安全哈希算法(Secure Hash Algorithm;SHA)、RSA(Rivest-Shamir-Adleman)加密算法或凱薩加密法(Caesar Cipher)等。在一些實施例中,一般信息HD’與設(shè)備標識符ID可位于比對封包CP的表頭中,而喚醒信息WM則為比對封包CP的封包內(nèi)容。
在一些實施例中,在控制單元131所產(chǎn)生的未加密封包中,設(shè)備標識符ID與喚醒信息WM的數(shù)據(jù)大小的總和可大于或等于加密演算的一個加密單位。舉例來說,當加密演算的加密單位為16bytes(字節(jié))時,設(shè)備標識符ID與喚醒信息WM的總和則是大于或等于16bytes。在一些實施例中,喚醒信息WM的數(shù)據(jù)大小可小于或等于一個加密單位。舉例來說,當加密演算的加密單位為16bytes(字節(jié))時,喚醒信息WM則是小于或等于16bytes。
然后,控制單元131根據(jù)既定數(shù)據(jù)位置從比對封包CP取得預(yù)存特征數(shù)據(jù)(步驟S730),并儲存此預(yù)存特征數(shù)據(jù)在儲存單元135中(步驟S740)。其中,此預(yù)存特征數(shù)據(jù)的數(shù)據(jù)大小小于比對封包CP的數(shù)據(jù)大小。
在一些實施例中,預(yù)存特征數(shù)據(jù)的數(shù)據(jù)大小可為前述的加密演算的至少一個加密單位。換句話說,既定數(shù)據(jù)位置為比對封包CP特定位置的至少一個加密單位。舉例來說,當加密演算的加密單位為16bytes時,預(yù)存特征數(shù)據(jù)則為16bytes的倍數(shù)。在此,喚醒特征數(shù)據(jù)的數(shù)據(jù)大小與預(yù)存特征數(shù)據(jù)的數(shù)據(jù)大小為相同加密演算的相同數(shù)量的加密單位。
在一些實施例中,預(yù)存特征數(shù)據(jù)的數(shù)據(jù)可為比對封包CP中最后至少一個加密單位的數(shù)據(jù)。換句話說,既定數(shù)據(jù)位置為最后至少一個加密單位。舉例來說,當加密演算的加密單位為16bytes時,預(yù)存特征數(shù)據(jù)可為比對封包CP中最后16bytes或32bytes。特別地,取得的預(yù)存特征數(shù)據(jù)包括比對封包CP中具有一致性的數(shù)據(jù)(例如:設(shè)備標識符ID與喚醒信息WM等),但不包括動態(tài)變化的數(shù)據(jù)(例如:一般信息HD’)。其中,具有一致性的數(shù)據(jù)是指就發(fā)給同一連網(wǎng)裝置的多個封包而言不會隨著不同環(huán)境參數(shù)變化而有所不同的數(shù)據(jù)。動態(tài)變化的數(shù)據(jù)是指就發(fā)給同一連網(wǎng)裝置的多個封包而言會因環(huán)境參數(shù)變化而有所不同的數(shù)據(jù),例如:一般信息中的版本、服務(wù)請求代號與發(fā)送時間等。
在一些實施例中,預(yù)存特征數(shù)據(jù)可包括加密后的設(shè)備標識符ID與加密后的喚醒信息WM。換句話說,設(shè)備標識符ID與喚醒信息WM的數(shù)據(jù)大小的總和為加密單位的倍數(shù),且此倍數(shù)為正整數(shù)。在另一些實施例中,預(yù)存特征數(shù)據(jù)可包括加密后的部分設(shè)備標識符ID與加密后的喚醒信息WM。換句話說,此部分設(shè)備標識符ID與喚醒信息WM的數(shù)據(jù)大小的總和為加密單位的倍數(shù),且此倍數(shù)為正整數(shù)。
在另一實施例中,控制單元131可單獨串接設(shè)備標識符ID(部分或全部)與喚醒信息WM,然后將串接后的數(shù)據(jù)(未加密封包)進行加密演算而生成預(yù)存特征數(shù)據(jù)(即,直接將生成的比對封包作為預(yù)存特征數(shù)據(jù))。
在一些實施例中,對應(yīng)第二裝置130的喚醒信息WM可以是由第二裝置130生成并儲存在儲存單元135中。并且,由第二裝置130將生成的喚醒信息WM提供給聯(lián)機服務(wù)器150并記錄于聯(lián)機服務(wù)器150的儲存模塊155中。因此,聯(lián)機服務(wù)器150與第二裝置130均具有相同內(nèi)容的喚醒信息WM。在另一些實施例中,對應(yīng)第二裝置130的喚醒信息WM可以是由聯(lián)機服務(wù)器150生成并記錄于聯(lián)機服務(wù)器150的儲存模塊155中。并且,在第二裝置130與聯(lián)機服務(wù)器150通訊聯(lián)機時,聯(lián)機服務(wù)器150將生成的喚醒信息WM提供給第二裝置130,進而同樣記錄在第二裝置130的儲存單元135中。因此,聯(lián)機服務(wù)器150與第二裝置130均具有相同內(nèi)容的喚醒信息WM。在一些實施例中,喚醒信息WM可為授權(quán)密鑰。
在一些實施例中,聯(lián)機服務(wù)器150可基于有無接收到來自第二裝置130的正常登錄封包來判定第二裝置130的運作狀態(tài)(正常聯(lián)機或脫機)并記錄第二裝置130的運作狀態(tài)。
在一些實施例中,第二裝置130第一次以正常登錄封包聯(lián)機并登錄聯(lián)機服務(wù)器150時,聯(lián)機服務(wù)器150的控制模塊151判定第二裝置130的運作狀態(tài)為正常聯(lián)機并記錄第二裝置130的運作狀態(tài)為正常聯(lián)機在儲存模塊155中。在第二裝置130登錄后,聯(lián)機服務(wù)器150的控制模塊151根據(jù)既定時間監(jiān)測來自第二裝置130的正常登錄封包。當超過既定時間未接收到正常登錄封包時,聯(lián)機服務(wù)器150的控制模塊151即會判定第二裝置130的運作狀態(tài)為脫機并記錄第二裝置130的運作狀態(tài)為脫機在儲存模塊155中。
在一些實施例中,儲存單元135儲存有登錄數(shù)據(jù)。此登錄數(shù)據(jù)是用于提供第二裝置130登錄聯(lián)機服務(wù)器150。
圖11是另一實施例的第二裝置的運作狀態(tài)的辨識方法的流程圖。圖12是一實施例的休眠登錄封包的概要示意圖。圖13是一實施例的特征旗標在休眠登錄封包中的位置的示意圖。
參照圖11至圖13,在進入休眠模式之前,控制單元131從儲存單元135讀出登錄數(shù)據(jù)LD(步驟S910),并且根據(jù)登錄數(shù)據(jù)LD及特征旗標SF生成休眠登錄封包SLP(步驟S920)??刂茊卧?31將生成的休眠登錄封包SLP儲存在儲存單元135中(步驟S930),然后第二裝置130進入休眠模式(步驟S940)。并且,在休眠模式下,網(wǎng)絡(luò)單元133可定時對聯(lián)機服務(wù)器150發(fā)送休眠登錄封包SLP(步驟S940)。換句話說,在休眠模式下,網(wǎng)絡(luò)單元133能直接讀取控制單元131預(yù)存在儲存單元135中的休眠登錄封包SLP。
在一些實施例中,儲存單元135可包括復(fù)數(shù)個儲存組件(以下分別稱之為主儲存單元以及子儲存單元)??刂茊卧?31產(chǎn)生休眠登錄封包SLP后,會將休眠登錄封包SLP儲存于主儲存單元中。并且,在進入休眠前,網(wǎng)絡(luò)單元133再將休眠登錄封包SLP從主儲存單元加載至子儲存單元,以供網(wǎng)絡(luò)單元133在休眠模式下繼續(xù)間隔發(fā)送休眠登錄封包SLP給聯(lián)機服務(wù)器150。
在一些實施例中,特征旗標SF可位于休眠登錄封包SLP的表頭中。
在步驟S940的一些實施例中,網(wǎng)絡(luò)單元133可以固定時間間隔對聯(lián)機服務(wù)器150發(fā)送休眠登錄封包SLP。在步驟S940的另一些實施例中,若第二裝置130長時間未喚醒時,網(wǎng)絡(luò)單元133可以由固定時間間隔改為由漸增時間間隔對聯(lián)機服務(wù)器150發(fā)送休眠登錄封包SLP,藉以進一步節(jié)省更多電力。舉例來說,當?shù)诙b置130剛進入休眠模式時,網(wǎng)絡(luò)單元133每隔25秒對聯(lián)機服務(wù)器150發(fā)送休眠登錄封包SLP。當?shù)诙b置130長時間未喚醒(例如:進入休眠模式達1小時)時,網(wǎng)絡(luò)單元133可由25秒逐次拉長發(fā)送的時間間隔。而當?shù)诙b置130被喚醒時,網(wǎng)絡(luò)單元133則將發(fā)送的時間間隔回復(fù)為默認值25秒。在一些實施例中,網(wǎng)絡(luò)單元133利用算法計算下次發(fā)送的時間間隔,以致使發(fā)送的時間隨著休眠的時間而逐次拉長。
聯(lián)機服務(wù)器150的控制模塊151通過網(wǎng)絡(luò)模塊153接收來自第二裝置130的休眠登錄封包SLP(步驟S950)。在接收到休眠登錄封包SLP后,聯(lián)機服務(wù)器150的控制模塊151根據(jù)休眠登錄封包SLP中的特征旗標SF判定第二裝置130的運作狀態(tài)為休眠并在儲存模塊153中記錄第二裝置130的運作狀態(tài)為休眠(步驟S960)。
在一些實施例中,休眠登錄封包SLP與正常登錄封包之間的實質(zhì)差別僅在于是否具有特征旗標SF。舉例來說,當聯(lián)機服務(wù)器150接收到來自第二裝置130的登錄封包中具有特征旗標SF(即為休眠登錄封包SLP)時,聯(lián)機服務(wù)器150的控制模塊151則判定第二裝置130的運作狀態(tài)為休眠。反之,當聯(lián)機服務(wù)器150接收到來自第二裝置130的登錄封包中不具有特征旗標SF(即為正常登錄封包)時,聯(lián)機服務(wù)器150的控制單元151則判定第二裝置130的運作狀態(tài)為正常聯(lián)機。再者,當聯(lián)機服務(wù)器150超過既定時間未接收到來自第二裝置130的任何登錄封包時,聯(lián)機服務(wù)器150的控制模塊151則判定第二裝置130的運作狀態(tài)為脫機。
在一些實施例中,特征旗標SF可位于休眠登錄封包SLP的標頭HD”中,如第12及13圖所示。
在一些實施例中,登錄數(shù)據(jù)LD可包括賬號與密碼。其中,賬號可為第二裝置130的設(shè)備標識符ID。
圖14是另一實施例的遠程喚醒方法的部分流程圖。
在一些實施例中,參照圖14,當?shù)谝谎b置110要與第二裝置130進行通訊聯(lián)機時,第一裝置110經(jīng)由網(wǎng)絡(luò)發(fā)送用以要求與第二裝置130進行通訊聯(lián)機的聯(lián)機要求封包給聯(lián)機服務(wù)器150(步驟S450),以向聯(lián)機服務(wù)器150詢問第二裝置130的聯(lián)機信息與第二裝置130的運作狀態(tài)。聯(lián)機服務(wù)器150的控制模塊151經(jīng)由網(wǎng)絡(luò)模塊153接收到來自第一裝置110的聯(lián)機要求封包,并且根據(jù)聯(lián)機要求封包中的第二裝置130的設(shè)備標識符ID查詢(確認)儲存模塊155中記錄的第二裝置130的運作狀態(tài)(步驟S460)。
當確認第二裝置130的運作狀態(tài)為正常聯(lián)機(步驟S462)時,聯(lián)機服務(wù)器150的控制模塊151從儲存模塊155中讀出第二裝置130的聯(lián)機信息(步驟S470)并通過網(wǎng)絡(luò)模塊153將第二裝置130的聯(lián)機信息回傳給第一裝置110(步驟S472),以致使第一裝置110根據(jù)第二裝置130的聯(lián)機信息與第二裝置130進行通訊聯(lián)機(步驟S474)。
當確認第二裝置130的運作狀態(tài)為休眠(步驟S464)時,聯(lián)機服務(wù)器150的控制模塊151透過網(wǎng)絡(luò)模塊153向第一裝置110回復(fù)第二裝置130的運作狀態(tài)為休眠(步驟S480),以致使第一裝置110發(fā)出喚醒要求封包(步驟S500)。
當確認第二裝置130的運作狀態(tài)為脫機(步驟S466)時,聯(lián)機服務(wù)器150的控制模塊151通過網(wǎng)絡(luò)模塊153向第一裝置110回復(fù)第二裝置130的運作狀態(tài)為脫機(步驟S490),以通知第一裝置110一段時間后再重新要求聯(lián)機。
在此雖然是以第一裝置110與第二裝置130之間的通訊聯(lián)機為點對點聯(lián)機為例,但本發(fā)明不限于此,第一裝置110與第二裝置130之間的通訊聯(lián)機亦可是經(jīng)由聯(lián)機服務(wù)器150或另一聯(lián)機服務(wù)器的中繼聯(lián)機。
在一些實施例中,聯(lián)機服務(wù)器150可僅具有辨識第二裝置130的運作狀態(tài)為正常聯(lián)機或未聯(lián)機的能力。此時,當聯(lián)機服務(wù)器150向第一裝置110回復(fù)第二裝置130的運作狀態(tài)為未聯(lián)機(步驟S490)時,第一裝置110可發(fā)送喚醒要求封包至聯(lián)機服務(wù)器150(即,執(zhí)行步驟S500與其后續(xù)步驟)(圖中未示出),以進行第二裝置130的喚醒程序。
圖15是又一實施例的遠程喚醒方法的部分流程圖。
在一些實施例中,參照圖15,當?shù)谝谎b置110要與第二裝置130進行點對點聯(lián)機(非首次聯(lián)機)時,第一裝置110可先以先前取得的第二裝置130的聯(lián)機信息嘗試對第二裝置130進行通訊連接(嘗試形成二者之間的點對點聯(lián)機)(步驟S410)。當通訊連接不成功時(如未收到第二裝置的響應(yīng)),第一裝置110才向聯(lián)機服務(wù)器150發(fā)出喚醒要求封包(步驟S450)。當通訊連接成功時,第一裝置110與第二裝置130之間的點對點聯(lián)機形成(步驟S420)。在此,雖然是以第一裝置110與第二裝置130之間的通訊聯(lián)機為點對點聯(lián)機為例,但本發(fā)明不限于此,第一裝置110與第二裝置130之間的通訊聯(lián)機亦可是經(jīng)由聯(lián)機服務(wù)器150或另一聯(lián)機服務(wù)器的中繼聯(lián)機。
在另一些實施例中,當聯(lián)機服務(wù)器150向第一裝置110回復(fù)第二裝置130的運作狀態(tài)為未聯(lián)機時,第一裝置110可以固定時間間隔持續(xù)向聯(lián)機服務(wù)器150發(fā)出喚醒要求封包(即,反復(fù)執(zhí)行步驟S500與其后續(xù)步驟)并且持續(xù)嘗試對第二裝置130進行通訊連接,直至通訊連接成功(圖中未示出)。
在一些實施例中,第一裝置110可以無視第二裝置130的運作狀態(tài),在每次嘗試通訊連接第二裝置130的同時執(zhí)行發(fā)出喚醒要求封包(即,執(zhí)行步驟S500與其后續(xù)步驟)(圖中未出)。若第二裝置130的運作狀態(tài)為正常聯(lián)機,聯(lián)機服務(wù)器150則不理會(忽略)喚醒要求封包WRP(不起任何作用)。
需注意的是,雖然前述實施例是依序描述各步驟,但此順序并非本發(fā)明的限制,熟習相關(guān)技藝者應(yīng)可了解在合理情況下部分步驟的執(zhí)行順序可同時進行或先后對調(diào)。例如:同時取得對應(yīng)第二裝置的喚醒信息與聯(lián)機信息,即同時進行步驟S520及S540。
在一些實施例中,在網(wǎng)絡(luò)通訊系統(tǒng)10中,各組件能藉由其控制單元執(zhí)行其儲存單元中所儲存的固件或軟件算法而實現(xiàn)上述的對應(yīng)步驟。換句話說,儲存單元用于儲存相關(guān)的軟件或固件程序、數(shù)據(jù)、數(shù)據(jù)及其組合等。
在一些實施例中,各儲存單元可由一個或多個儲存組件組成。在此,儲存組件可以是例如內(nèi)存或緩存器等,但在此并不對其限制。內(nèi)存可例如只讀存儲器(Read-Only Memory;ROM)、隨機存取內(nèi)存(Random Access Memory;RAM)、非永久性內(nèi)存、永久性內(nèi)存、靜態(tài)內(nèi)存、易失存儲器、閃存和/或任何存儲數(shù)字信息的設(shè)備。
綜上,根據(jù)本發(fā)明的遠程喚醒方法、聯(lián)機服務(wù)器及具有休眠模式的連網(wǎng)裝置,可使第二裝置進入超低耗電狀態(tài)(休眠狀態(tài)),并且能提供第一裝置110使用第二裝置130的設(shè)備標識符ID通過聯(lián)機服務(wù)器150對遠程的第二裝置直接發(fā)起喚醒要求(裝置喚醒封包WRP),以致于無需任何設(shè)定(例如:主板、網(wǎng)絡(luò)卡、防火墻等裝置設(shè)定)亦無須透過網(wǎng)絡(luò)廣播,即可喚醒遠程的第二裝置并且減少本地網(wǎng)絡(luò)(LAN)下的網(wǎng)絡(luò)封包量。
雖然本發(fā)明以前述的實施例揭露如上,然其并非用以限定本發(fā)明,任何熟習相關(guān)技術(shù)者,在不脫離本發(fā)明的精神和范圍內(nèi),均可作些許的改進與潤飾,而所有這些改進與潤飾都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護范圍。