本發(fā)明涉及通信技術領域,特別是涉及到一種維持心跳連接的方法、裝置和終端設備。
背景技術:
在移動通信網絡中,當一個tcp/ip鏈路有一段時間沒有數(shù)據(jù)通信時,網絡側就會釋放連接,造成鏈路中斷。為了保證服務器能夠實時向終端設備推送信息,終端設備需要以一定的心跳周期定時向服務器發(fā)送心跳包來維持長連接。
隨著衛(wèi)星移動通信技術的迅速發(fā)展,越來越多的終端設備支持衛(wèi)星移動通信。衛(wèi)星移動通信網絡也支持tcp/ip鏈路接入互聯(lián)網的功能,因此終端設備可以通過衛(wèi)星移動通信網絡進行聯(lián)網通信。但現(xiàn)有的衛(wèi)星移動通信網絡并沒有確定的心跳周期,如果終端設備發(fā)送心跳包的周期太大,則無法維持長連接,如果頻繁發(fā)送心跳包,又會增加功耗。因此,如何為沒有確定的心跳周期的通信網絡確定一個連接功耗低且能夠維持長連接的合適心跳周期,是當前亟需解決的技術問題。
技術實現(xiàn)要素:
本發(fā)明的主要目的為提供一種維持長連接的方法,旨在為沒有確定的心跳周期的通信網絡確定一個連接功耗低且能夠維持長連接的合適心跳周期。
為達以上目的,本發(fā)明實施例提出一種維持長連接的方法,所述方法包括以下步驟:
接入第二網絡后,以第一心跳周期進行長連接測試;
當所述第一心跳周期能夠維持長連接時,在所述第一心跳周期的基礎上增加時長進行長連接測試,獲取能夠維持長連接的第二心跳周期;
當所述第一心跳周期不能維持長連接時,在所述第一心跳周期的基礎上減少時長進行長連接測試,獲取能夠維持長連接的第二心跳周期;
以所述第二心跳周期維持長連接。
可選地,所述在所述第一心跳周期的基礎上增加時長進行長連接測試,獲取能夠維持長連接的第二心跳周期的步驟包括:
在所述第一心跳周期的基礎上逐次增加時長進行長連接測試,直到不能維持長連接為止;
當不能維持長連接時,選取前一次測試的心跳周期作為第二心跳周期。
可選地,所述在所述第一心跳周期的基礎上增加時長進行長連接測試,獲取能夠維持長連接的第二心跳周期的步驟包括:
在所述第一心跳周期的基礎上逐次增加時長進行長連接測試,直到不能維持長連接的第k次為止;
當不能維持長連接時,判斷第k-1次測試的心跳周期是否大于或等于第一閾值;
如果第k-1次測試的心跳周期大于或等于第一閾值,則選取所述第一閾值作為第二心跳周期;
如果第k-1次測試的心跳周期小于第一閾值,則取以第k次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+1次測試的心跳周期進行長連接測試;當不能維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止;
當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,選取所述數(shù)列中小于中值的邊界值作為第二心跳周期。
可選地,所述第一閾值為25-35分鐘。
可選地,所述第三閾值為0.5-1.5分鐘。
可選地,每次增加時長后的心跳周期是前一次測試的心跳周期的兩倍。
可選地,所述在所述第一心跳周期的基礎上減少時長進行長連接測試,獲取能夠維持長連接的第二心跳周期的步驟包括:
在所述第一心跳周期的基礎上逐次減少時長進行長連接測試,直到能夠維持長連接為止;
當能夠維持長連接時,選取本次測試的心跳周期作為第二心跳周期。
可選地,所述在所述第一心跳周期的基礎上減少時長進行長連接測試,獲取能夠維持長連接的第二心跳周期的步驟包括:
在所述第一心跳周期的基礎上逐次減少時長進行長連接測試,直到能夠維持長連接的第k次為止;
當能夠維持長連接時,判斷第k-1次測試的心跳周期與第k次測試的心跳周期的差值是否小于或等于第二閾值;
如果所述差值小于或等于第二閾值,則選取第k次測試的心跳周期作為第二心跳周期;
如果所述差值大于第二閾值,則取以第k次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+1次測試的心跳周期進行長連接測試;當不能維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止;
當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,選取所述數(shù)列中小于中值的邊界值作為第二心跳周期。
可選地,所述第二閾值為0.5-1.5分鐘。
可選地,每次減少時長后的心跳周期是前一次測試的心跳周期的一半。
可選地,所述第一心跳周期為第一網絡的心跳周期。
可選地,所述第一網絡為公用陸地移動通信網絡,所述第二網絡為衛(wèi)星移動通信網絡。
本發(fā)明實施例同時提出一種維持長連接的裝置,所述裝置包括:
第一測試模塊,用于在接入第二網絡后,以第一心跳周期進行長連接測試;
第二測試模塊,用于當所述第一心跳周期能夠維持長連接時,在所述第一心跳周期的基礎上增加時長進行長連接測試,獲取能夠維持長連接的第二心跳周期;
第三測試模塊,用于當所述第一心跳周期不能維持長連接時,在所述第一心跳周期的基礎上減少時長進行長連接測試,獲取能夠維持長連接的第二心跳周期;
連接維持模塊,用于以所述第二心跳周期維持長連接。
可選地,所述第二測試模塊包括:
時長增加測試單元,用于在所述第一心跳周期的基礎上逐次增加時長進行長連接測試,直到不能維持長連接為止;
第一選取單元,用于當不能維持長連接時,選取前一次測試的心跳周期作為第二心跳周期。
可選地,所述第二測試模塊包括:
時長增加測試單元,用于在所述第一心跳周期的基礎上逐次增加時長進行長連接測試,直到不能維持長連接的第k次為止;
第一判斷單元,用于當不能維持長連接時,判斷第k-1次測試的心跳周期是否大于或等于第一閾值;
第二選取單元,用于如果第k-1次測試的心跳周期大于或等于第一閾值,則選取所述第一閾值作為第二心跳周期;
第一中值測試單元,用于如果第k-1次測試的心跳周期小于第一閾值,則取以第k次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+1次測試的心跳周期進行長連接測試;當不能維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止;
第三選取單元,用于當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,選取所述數(shù)列中小于中值的邊界值作為第二心跳周期。
可選地,所述時長增加測試單元每次增加時長后的心跳周期是前一次測試的心跳周期的兩倍。
可選地,所述第三測試模塊包括:
時長減少測試單元,用于在所述第一心跳周期的基礎上逐次減少時長進行長連接測試,直到能夠維持長連接為止;
第四選取單元,用于當能夠維持長連接時,選取本次測試的心跳周期作為第二心跳周期。
可選地,所述第三測試模塊包括:
時長減少測試單元,用于在所述第一心跳周期的基礎上逐次減少時長進行長連接測試,直到能夠維持長連接的第k次為止;
第二判斷單元,用于當能夠維持長連接時,判斷第k-1次測試的心跳周期與第k次測試的心跳周期的差值是否小于或等于第二閾值;
第五選取單元,用于如果所述差值小于或等于第二閾值,則選取第k次測試的心跳周期作為第二心跳周期;
第二中值測試單元,用于如果所述差值大于第二閾值,則取以第k次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+1次測試的心跳周期進行長連接測試;當不能維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止;
第六選取單元,用于當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,選取所述數(shù)列中小于中值的邊界值作為第二心跳周期。
可選地,所述時長減少測試單元每次減少時長后的心跳周期是前一次測試的心跳周期的一半。
本發(fā)明實施例還提出一種終端設備,所述終端設備包括存儲器、處理器和至少一個被存儲在所述存儲器中并被配置為由所述處理器執(zhí)行的應用程序,其特征在于,所述應用程序被配置為用于執(zhí)行前述維持長連接的方法。
本發(fā)明實施例所提供的一種維持長連接的方法,當接入沒有確定的心跳周期的第二網絡時,以第一心跳周期為參考周期,在第一心跳周期的基礎上增加或減少時長進行長連接測試,獲取適合第二網絡的心跳周期。一方面維持了終端設備與服務器的長連接,確保終端設備一直在線,使得服務器能夠通過第二網絡實時向終端設備推送信息;另一方面使得終端設備能夠以合適的心跳周期向服務器定時發(fā)送心跳包,無需頻繁發(fā)送心跳包,降低了長連接的功耗。從而為沒有確定的心跳周期的通信網絡確定了一個連接功耗低且能夠維持長連接的合適心跳周期。
附圖說明
圖1是本發(fā)明維持長連接的方法一實施例的流程圖;
圖2是本發(fā)明維持長連接的裝置一實施例的模塊示意圖;
圖3是圖2中的第二測試模塊的模塊示意圖;
圖4是圖2中的第二測試模塊的另一模塊示意圖;
圖5是圖2中的第三測試模塊的模塊示意圖;
圖6是圖2中的第三測試模塊的模塊示意圖。
本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結合實施例,參照附圖做進一步說明。
具體實施方式
應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發(fā)明,而不能解釋為對本發(fā)明的限制。
本技術領域技術人員可以理解,除非特意聲明,這里使用的單數(shù)形式“一”、“一個”、“所述”和“該”也可包括復數(shù)形式。應該進一步理解的是,本發(fā)明的說明書中使用的措辭“包括”是指存在所述特征、整數(shù)、步驟、操作、元件和/或組件,但是并不排除存在或添加一個或多個其他特征、整數(shù)、步驟、操作、元件、組件和/或它們的組。應該理解,當我們稱元件被“連接”或“耦接”到另一元件時,它可以直接連接或耦接到其他元件,或者也可以存在中間元件。此外,這里使用的“連接”或“耦接”可以包括無線連接或無線耦接。這里使用的措辭“和/或”包括一個或更多個相關聯(lián)的列出項的全部或任一單元和全部組合。
本技術領域技術人員可以理解,除非另外定義,這里使用的所有術語(包括技術術語和科學術語),具有與本發(fā)明所屬領域中的普通技術人員的一般理解相同的意義。還應該理解的是,諸如通用字典中定義的那些術語,應該被理解為具有與現(xiàn)有技術的上下文中的意義一致的意義,并且除非像這里一樣被特定定義,否則不會用理想化或過于正式的含義來解釋。
本技術領域技術人員可以理解,這里所使用的“終端”、“終端設備”既包括無線信號接收器的設備,其僅具備無發(fā)射能力的無線信號接收器的設備,又包括接收和發(fā)射硬件的設備,其具有能夠在雙向通信鏈路上,執(zhí)行雙向通信的接收和發(fā)射硬件的設備。這種設備可以包括:蜂窩或其他通信設備,其具有單線路顯示器或多線路顯示器或沒有多線路顯示器的蜂窩或其他通信設備;pcs(personalcommunicationsservice,個人通信系統(tǒng)),其可以組合語音、數(shù)據(jù)處理、傳真和/或數(shù)據(jù)通信能力;pda(personaldigitalassistant,個人數(shù)字助理),其可以包括射頻接收器、尋呼機、互聯(lián)網/內聯(lián)網訪問、網絡瀏覽器、記事本、日歷和/或gps(globalpositioningsystem,全球定位系統(tǒng))接收器;常規(guī)膝上型和/或掌上型計算機或其他設備,其具有和/或包括射頻接收器的常規(guī)膝上型和/或掌上型計算機或其他設備。這里所使用的“終端”、“終端設備”可以是便攜式、可運輸、安裝在交通工具(航空、海運和/或陸地)中的,或者適合于和/或配置為在本地運行,和/或以分布形式,運行在地球和/或空間的任何其他位置運行。這里所使用的“終端”、“終端設備”還可以是通信終端、上網終端、音樂/視頻播放終端,例如可以是pda、mid(mobileinternetdevice,移動互聯(lián)網設備)和/或具有音樂/視頻播放功能的移動電話,也可以是智能電視、機頂盒等設備。
本技術領域技術人員可以理解,這里所使用的服務器,其包括但不限于計算機、網絡主機、單個網絡服務器、多個網絡服務器集或多個服務器構成的云。在此,云由基于云計算(cloudcomputing)的大量計算機或網絡服務器構成,其中,云計算是分布式計算的一種,由一群松散耦合的計算機集組成的一個超級虛擬計算機。本發(fā)明的實施例中,服務器、終端設備與wns服務器之間可通過任何通信方式實現(xiàn)通信,包括但不限于,基于3gpp、lte、wimax的移動通信、基于tcp/ip、udp協(xié)議的計算機網絡通信以及基于藍牙、紅外傳輸標準的近距無線傳輸方式。
參照圖1,提出本發(fā)明維持長連接的方法一實施例,所述方法包括以下步驟:
s11、接入第二網絡后,以第一心跳周期進行長連接測試。
s12、當?shù)谝恍奶芷谀軌蚓S持長連接時,在第一心跳周期的基礎上增加時長進行長連接測試,獲取能夠維持長連接的第二心跳周期。
s13、當?shù)谝恍奶芷诓荒芫S持長連接時,在第一心跳周期的基礎上減少時長進行長連接測試,獲取能夠維持長連接的第二心跳周期。
s14、以第二心跳周期維持長連接。
本發(fā)明實施例所述的心跳周期,是指終端設備定時向服務器發(fā)送心跳包(空閑數(shù)據(jù)包)的周期。
本發(fā)明實施例中,第一心跳周期為參考心跳周期,可以是終端設備隨機確定的心跳周期,也可以是已知的第一網絡的心跳周期,即終端設備接入第一網絡后能夠與服務器維持長連接的心跳周期。
本發(fā)明實施例中,第二網絡是待確定合適的心跳周期的網絡,本發(fā)明實施例可以以已知的第一網絡的心跳周期為參考,對第二網絡進行長連接測試獲取第二網絡的合適心跳周期。例如,第一網絡為公用陸地移動通信網絡,第二網絡為衛(wèi)星移動通信網絡,以公用陸地移動通信網絡的心跳周期為參考,對衛(wèi)星移動通信網絡進行長連接測試,獲取衛(wèi)星移動通信網絡的合適心跳周期。
步驟s11中,當接入第二網絡后,終端設備則以第一心跳周期進行長連接測試,判斷第一心跳周期是否能夠維持長連接。具體的,終端設備以第一心跳周期定時向服務器發(fā)送心跳包m,服務器接收到心跳包m后,經過第一心跳周期的時延,向終端設備推送標記數(shù)據(jù)包n。如果終端設備能夠接收到標記數(shù)據(jù)包n,則說明第一心跳周期能夠維持終端設備與服務器的長連接;如果終端設備不能接收到標記數(shù)據(jù)包n,則說明第一心跳周期不能維持終端設備與服務器的長連接。
本領域技術人員可以理解,除了通過判斷終端設備是否能接收到服務器推送的標記數(shù)據(jù)包n的方式來判斷是否能夠維持長連接外,還可以采用現(xiàn)有技術中的其它方式來判斷二者是否能夠維持長連接,本發(fā)明對此不作限定。
步驟s12中,當?shù)谝恍奶芷谀軌蚓S持長連接時,說明第二網絡能夠達到的最大心跳周期要大于第一心跳周期,因此終端設備在第一心跳周期的基礎上增加時長進行長連接測試,獲取比第一心跳周期大且能夠維持長連接的第二心跳周期。
本發(fā)明實施例中,終端設備具體可以通過以下方式進行長連接測試獲取第二心跳周期:
終端設備在第一心跳周期的基礎上逐次增加時長進行長連接測試,直到不能維持長連接為止。當不能維持長連接時,比較前一次測試的心跳周期與第一閾值的大小,判斷前一次測試的心跳周期是否大于或等于第一閾值。如果前一次測試的心跳周期大于或等于第一閾值,則選取第一閾值作為第二心跳周期。如果前一次測試的心跳周期小于第一閾值,則取以本次測試的心跳周期和前一次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試。當不能維持長連接時,繼續(xù)取以本次測試的心跳周期和相鄰且小于本次測試的心跳周期的往次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以本次測試的心跳周期和相鄰且大于本次測試的心跳周期的往次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止。當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,選取數(shù)列中小于中值的邊界值作為第二心跳周期。
例如:終端設備在第一心跳周期的基礎上逐次增加時長進行長連接測試,直到不能維持長連接的第k次為止。當不能維持長連接時,判斷第k-1次測試的心跳周期是否大于或等于第一閾值。如果第k-1次測試的心跳周期大于或等于第一閾值,則選取第一閾值作為第二心跳周期。如果第k-1次測試的心跳周期小于第一閾值,則取以第k次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+1次測試的心跳周期進行長連接測試;當不能維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止;當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,選取數(shù)列中小于中值的邊界值作為第二心跳周期。其中,k≥2。
第一閾值和第三閾值可以根據(jù)實際需要設定,如可以將第一閾值設定在25-35分鐘的范圍內,將第三閾值設定在0.5-1.5分鐘的范圍內。
終端設備在第一心跳周期的基礎上逐次增加時長時,每次增加的時長可以相等,如每次增加5分鐘;也可以不相等,如逐次減小,逐次增大,逐次減小或增大到特定值后保持不變,等等。例如,第一次增加10分鐘,第二次增加8分鐘,第三次增加5分鐘,第四次增加3分鐘,……。
作為優(yōu)選,本發(fā)明實施例中,終端設備成倍增加心跳周期,即每次增加時長后的心跳周期是前一次測試的心跳周期的兩倍。
舉例而言:
假設第一心跳周期為t1,首先增加心跳周期至2t1,利用2t1進行長連接測試。當能夠維持長連接時,繼續(xù)增加心跳周期至22t1進行長連接測試。直到心跳周期增加到2kt1時,不能維持長連接為止,其中k為正整數(shù)。
當不能維持長連接時,說明需要的第二網絡的第二心跳周期t2介于本次測試的心跳周期2kt1和前一次測試的心跳周期2k-1t1之間,即2k-1t1<t2<2kt1。此時比較前一次測試的心跳周期2k-1t1與第一閾值的大小,假設第一閾值為30分鐘,則判斷前一次測試的心跳周期2k-1t1是否大于或等于30分鐘。當2k-1t1≥30分鐘時,考慮到無線網絡的不確定性和終端設備的位置移動等因素,第二心跳周期不宜過大,因此直接將第一閾值作為第二心跳周期,即確定第二心跳周期t2=30分鐘。
當2k-1t1<30分鐘時,則采取二分法逼近第二心跳周期,以盡量獲取較大的第二心跳周期,降低長連接的功耗,具體為:
取以本次測試的心跳周期2kt1和前一次測試的心跳周期2k-1t1為邊界值的數(shù)列(2k-1t1,2kt1)的中值t1作為心跳周期進行長連接測試。
當不能維持長連接時,則以中值t1為邊界值,繼續(xù)向上述數(shù)列(2k-1t1,2kt1)的左側取新的中值t2,也就是說,取以本次測試的心跳周期t1和相鄰且小于本次測試的心跳周期的往次測試的心跳周期2k-1t1為邊界值的數(shù)列(2k-1t1,t1)的中值t2作為心跳周期進行長連接測試;當能夠維持長連接時,則以中值t1為邊界值,繼續(xù)向上述數(shù)列(2k-1t1,2kt1)的右側取新的中值t2,也就是說,取以本次測試的心跳周期t1和相鄰且大于本次測試的心跳周期的往次測試的心跳周期2kt1為邊界值的數(shù)列(t1,2kt1)的中值t2作為心跳周期進行長連接測試。如此重復前述步驟,反復取中值,直到當前的數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止。
考慮到衛(wèi)星移動通信網絡傳輸時延以及服務器和終端設備的處理時延,當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,則選取數(shù)列中小于中值的邊界值作為第二心跳周期,從而可以提高連接的穩(wěn)定性。例如,取數(shù)列(t5,t4)的中值t6,判斷t6-t5或t4-t5是否大于或等于1分鐘(第三閾值),若是,則停止測試,并選取t5為第二心跳周期,即確定t2=t5。
在其它實施例中,終端設備也可以通過以下方式進行長連接測試獲取第二心跳周期:終端設備在第一心跳周期的基礎上逐次增加時長進行長連接測試,直到不能維持長連接為止;當不能維持長連接時,考慮到前一次測試的心跳周期在測試時能夠維持長連接,則直接選取前一次測試的心跳周期作為第二心跳周期,以快速獲取第二心跳周期。
除了逐次增加時長進行長連接測試外,終端設備還可以采用其它方式,例如:終端設備先在第一心跳周期的基礎上一次性增加第一時長進行長連接測試,判斷是否能夠維持長連接。當能夠維持長連接時,直接將本次測試的心跳周期作為第二心跳周期。當不能維持長連接時,在本次測試的心跳周期的基礎上逐次減少第二時長(第二時長小于第一時長,每次減少的第二時長可以相等或不等)進行長連接測試,直到能夠維持長連接為止;當能夠維持長連接時,將本次測試的心跳周期作為第二心跳周期。
本領域技術人員可以理解,除此之外,還可以采用其它方式增加時長進行長連接測試,只要最終的第二心跳周期大于第一心跳周期,且能夠維持長連接即可,本發(fā)明對此不再一一列舉贅述。
步驟s13中,當?shù)谝恍奶芷诓荒芫S持長連接時,說明第二網絡能夠達到的最大心跳周期要小于第一心跳周期,因此終端設備在第一心跳周期的基礎上減少時長進行長連接測試,獲取能夠維持長連接的第二心跳周期。
本發(fā)明實施例中,終端設備具體可以通過以下方式進行長連接測試獲取第二心跳周期:
終端設備在第一心跳周期的基礎上逐次減少時長進行長連接測試,直到能夠維持長連接為止;當能夠維持長連接時,對前一次測試的心跳周期與本次測試的心跳周期進行差值運算,判斷前一次測試的心跳周期與本次測試的心跳周期的差值是否小于或等于第二閾值。如果差值小于或等于第二閾值,則選取本次測試的心跳周期作為第二心跳周期。如果差值大于第二閾值,則取以本次測試的心跳周期和前一次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試。當不能維持長連接時,繼續(xù)取以本次測試的心跳周期和相鄰且小于本次測試的心跳周期的往次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以本次測試的心跳周期和相鄰且大于本次測試的心跳周期的往次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止。當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,選取數(shù)列中小于中值的邊界值作為第二心跳周期。
例如:終端設備在第一心跳周期的基礎上逐次減少時長進行長連接測試,直到能夠維持長連接的第k次為止。當能夠維持長連接時,判斷第k-1次測試的心跳周期與第k次測試的心跳周期的差值是否小于或等于第二閾值。如果差值小于或等于第二閾值,則選取第k次測試的心跳周期作為第二心跳周期。如果差值大于第二閾值,則取以第k次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+1次測試的心跳周期進行長連接測試;當不能維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止;當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,選取數(shù)列中小于中值的邊界值作為第二心跳周期。
第二閾值可以根據(jù)實際需要設定,如可以將第二閾值設定在0.5-1.5分鐘的范圍內。
終端設備在第一心跳周期的基礎上逐次減少時長時,每次減少的時長可以相等,如每次減少5分鐘;也可以不相等,如逐次減小,逐次增大,逐次減小或增大到特定值后保持不變,等等。例如,第一次減少10分鐘,第二次減少8分鐘,第三次減少5分鐘,第四次減少3分鐘,……。
作為優(yōu)選,本發(fā)明實施例中,終端設備每次減少時長后的心跳周期是前一次測試的心跳周期的一半。
舉例而言:
假設第一心跳周期為t1,首先減少心跳周期至t1/2,利用t1/2進行長連接測試。當不能維持長連接時,繼續(xù)減少心跳周期至t1/22進行長連接測試。直到心跳周期減少到t1/2k時,能夠維持長連接為止,其中k為正整數(shù)。
當能夠維持長連接時,說明需要的第二網絡的第二心跳周期t2介于本次測試的心跳周期t1/2k和前一次測試的心跳周期t1/2k-1之間,即t1/2k<t2<t1/2k-1。此時對前一次測試的心跳周期2k-1t1與本次測試的心跳周期t1/2k進行差值運算,比較二者的差值與第二閾值的大小,判斷差值是否小于或等于第二閾值,假設第二閾值為1分鐘,則判斷t1/2k-1-t1/2k的差值是否小于或等于1分鐘。當t1/2k-1-t1/2k≤1分鐘時,考慮到衛(wèi)星移動通信網絡傳輸時延以及服務器和終端設備的處理時延,則直接選取本次測試的心跳周期t1/2k作為第二心跳周期,即確定第二心跳周期t2=t1/2k。
當t1/2k-1-t1/2k>1分鐘時,則采取二分法逼近第二心跳周期,以盡量獲取較大的第二心跳周期,降低長連接的功耗,具體為:
取以本次測試的心跳周期t1/2k和前一次測試的心跳周期t1/2k-1為邊界值的數(shù)列(t1/2k,t1/2k-1)的中值t1作為心跳周期進行長連接測試。
當不能維持長連接時,則以中值t1為邊界值,繼續(xù)向上述數(shù)列(t1/2k,t1/2k-1)的左側取新的中值t2,也就是說,取以本次測試的心跳周期t1和相鄰且小于本次測試的心跳周期的往次測試的心跳周期t1/2k為邊界值的數(shù)列(t1/2k,t1)的中值t2作為心跳周期進行長連接測試;當能夠維持長連接時,則以中值t1為邊界值,繼續(xù)向上述數(shù)列(t1/2k,t1/2k-1)的右側取新的中值t2,也就是說,取以本次測試的心跳周期t1和相鄰且大于本次測試的心跳周期的往次測試的心跳周期t1/2k-1為邊界值的數(shù)列(t1,t1/2k-1)的中值t2作為心跳周期進行長連接測試。如此重復前述步驟,反復取中值,直到當前的數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止。
考慮到衛(wèi)星移動通信網絡傳輸時延以及服務器和終端設備的處理時延,為了保證連接的穩(wěn)定性,當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,則選取數(shù)列中小于中值的邊界值作為第二心跳周期。例如,取數(shù)列(t5,t4)的中值t6,判斷t6-t5或t4-t5是否大于或等于1分鐘(第三閾值),若是,則停止測試,并選取t5為第二心跳周期,即確定t2=t5。
在其它實施例中,終端設備也可以通過以下方式進行長連接測試獲取第二心跳周期:終端設備在第一心跳周期的基礎上逐次減少時長進行長連接測試,直到能夠維持長連接為止;當能夠維持長連接時,直接選取本次測試的心跳周期作為第二心跳周期,以快速獲取第二心跳周期。
本領域技術人員可以理解,除此之外,還可以采用其它方式減少時長進行長連接測試,只要最終的第二心跳周期能夠維持長連接即可,本發(fā)明對此不再一一列舉贅述。
步驟s14中,當獲取第二心跳周期后,終端設備則以第二心跳周期定時向服務器發(fā)送心跳包,維持與服務器長連接,從而服務器可以通過第二網絡實時向終端設備推送信息。
本發(fā)明實施例維持長連接的方法,當接入第二網絡如衛(wèi)星移動終端通信網絡時,以第一心跳周期為參考周期,在第一心跳周期的基礎上增加或減少時長進行長連接測試,獲取適合衛(wèi)星移動終端通信網絡的心跳周期。一方面維持了終端設備與服務器的長連接,確保終端設備一直在線,使得服務器能夠通過衛(wèi)星移動終端通信網絡實時向終端設備推送信息;另一方面使得終端設備能夠以合適的心跳周期向服務器定時發(fā)送心跳包,無需頻繁發(fā)送心跳包,降低了長連接的功耗。從而為沒有確定的心跳周期的通信網絡確定了一個連接功耗低且能夠維持長連接的合適心跳周期。
參照圖2,提出本發(fā)明維持長連接的裝置一實施例,該裝置應用于終端設備,該裝置包括第一測試模塊10、第二測試模塊20、第三測試模塊30和連接維持模塊40,其中:
第一測試模塊10:用于在接入第二網絡后,以第一心跳周期進行長連接測試。
當接入第二網絡后,第一測試模塊10則以第一心跳周期進行長連接測試,判斷第一心跳周期是否能夠維持長連接。具體的,第一測試模塊10以第一心跳周期定時向服務器發(fā)送心跳包m,服務器接收到心跳包m后,經過第一心跳周期的時延,向終端設備推送標記數(shù)據(jù)包n。第一測試模塊10判斷判斷能夠接收到服務器推送的標記數(shù)據(jù)包n,如果能夠接收到標記數(shù)據(jù)包n,則說明第一心跳周期能夠維持終端設備與服務器的長連接,通知第二測試模塊20;如果不能接收到標記數(shù)據(jù)包n,則說明第一心跳周期不能維持終端設備與服務器的長連接,通知第三測試模塊30。
本領域技術人員可以理解,除了通過判斷終端設備是否能接收到服務器推送的標記數(shù)據(jù)包n的方式來判斷是否能夠維持長連接外,還可以采用現(xiàn)有技術中的其它方式來判斷二者是否能夠維持長連接,本發(fā)明對此不作限定。
后續(xù)第二測試模塊20和第三測試模塊30進行長連接測試以及判斷第一心跳周期是否能夠維持長連接的方式與第一測試模塊10相同。
第二測試模塊20:用于當?shù)谝恍奶芷谀軌蚓S持長連接時,在第一心跳周期的基礎上增加時長進行長連接測試,獲取能夠維持長連接的第二心跳周期。
當?shù)谝恍奶芷谀軌蚓S持長連接時,說明第二網絡能夠達到的最大心跳周期要大于第一心跳周期,因此第二測試模塊20在第一心跳周期的基礎上增加時長進行長連接測試,獲取比第一心跳周期大且能夠維持長連接的第二心跳周期。
可選地,如圖3所示,第二測試模塊20包括時長增加測試單元21和第一選取單元22,其中:時長增加測試單元21,用于在第一心跳周期的基礎上逐次增加時長進行長連接測試,直到不能維持長連接為止;第一選取單元22,用于當不能維持長連接時,直接選取前一次測試的心跳周期作為第二心跳周期。從而可以快速獲取第二心跳周期。
可選地,如圖4所示,第二測試模塊20包括時長增加測試單元21、第一判斷單元23、第二選取單元24、第一中值測試單元25和第三選取單元26,其中:
時長增加測試單元21:用于在第一心跳周期的基礎上逐次增加時長進行長連接測試,直到不能維持長連接為止。
本發(fā)明實施例中,時長增加測試單元21在第一心跳周期的基礎上逐次增加時長時,每次增加的時長可以相等,如每次增加5分鐘;也可以不相等,如逐次減小,逐次增大,逐次減小或增大到特定值后保持不變,等等。例如,第一次增加10分鐘,第二次增加8分鐘,第三次增加5分鐘,第四次增加3分鐘,……。
作為優(yōu)選,本發(fā)明實施例中,時長增加測試單元21成倍增加心跳周期,即每次增加時長后的心跳周期是前一次測試的心跳周期的兩倍。
第一判斷單元23:用于當不能維持長連接時,比較前一次測試的心跳周期與第一閾值的大小,判斷前一次測試的心跳周期是否大于或等于第一閾值,并將判斷結果發(fā)送給第二選取單元24和第一中值測試單元25。
第一閾值可以根據(jù)實際需要設定,如可以將第一閾值設定在25-35分鐘的范圍內。
第二選取單元24:用于如果前一次測試的心跳周期大于或等于第一閾值,則直接選取第一閾值作為第二心跳周期。
第一中值測試單元25:用于如果前一次測試的心跳周期小于第一閾值,則取以本次測試的心跳周期和前一次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試。當不能維持長連接時,繼續(xù)取以本次測試的心跳周期和相鄰且小于本次測試的心跳周期的往次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以本次測試的心跳周期和相鄰且大于本次測試的心跳周期的往次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止。當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,停止測試,并通知第三選取單元26。
第一中值測試單元25通過逐次取中值的方式逼近第二心跳周期,以盡量獲取較大的第二心跳周期,降低長連接的功耗。第三閾值可以根據(jù)實際需要設定,如可以將第三閾值設定在0.5-1.5分鐘的范圍內。
例如:時長增加測試單元21在第一心跳周期的基礎上逐次增加時長進行長連接測試,直到不能維持長連接的第k次為止。當不能維持長連接時,第一判斷單元23判斷第k-1次測試的心跳周期是否大于或等于第一閾值。如果第k-1次測試的心跳周期大于或等于第一閾值,第二選取單元24則選取第一閾值作為第二心跳周期。如果第k-1次測試的心跳周期小于第一閾值,第一中值測試單元25則取以第k次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+1次測試的心跳周期進行長連接測試;當不能維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止。
第三選取單元26:用于當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,選取數(shù)列中小于中值的邊界值作為第二心跳周期。
考慮到衛(wèi)星移動通信網絡傳輸時延以及服務器和終端設備的處理時延,當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,第三選取單元26則選取數(shù)列中小于中值的邊界值作為第二心跳周期,從而可以提高連接的穩(wěn)定性。
除了逐次增加時長進行長連接測試外,第二測試模塊20還可以采用其它方式,例如:第二測試模塊20先在第一心跳周期的基礎上一次性增加第一時長進行長連接測試,判斷是否能夠維持長連接。當能夠維持長連接時,直接將本次測試的心跳周期作為第二心跳周期。當不能維持長連接時,在本次測試的心跳周期的基礎上逐次減少第二時長(第二時長小于第一時長,每次減少的第二時長可以相等或不等)進行長連接測試,直到能夠維持長連接為止;當能夠維持長連接時,將本次測試的心跳周期作為第二心跳周期。
本領域技術人員可以理解,除此之外,還可以采用其它方式增加時長進行長連接測試,只要最終的第二心跳周期大于第一心跳周期,且能夠維持長連接即可,本發(fā)明對此不再一一列舉贅述。
第三測試模塊30:用于當?shù)谝恍奶芷诓荒芫S持長連接時,在第一心跳周期的基礎上減少時長進行長連接測試,獲取能夠維持長連接的第二心跳周期。
當?shù)谝恍奶芷诓荒芫S持長連接時,說明第二網絡能夠達到的最大心跳周期要小于第一心跳周期,因此第三測試模塊30在第一心跳周期的基礎上減少時長進行長連接測試,獲取能夠維持長連接的第二心跳周期。
可選地,如圖5所示,第三測試模塊30包括時長減少測試單元31和第四選取單元32,其中:時長減少測試單元31,用于在第一心跳周期的基礎上逐次減少時長進行長連接測試,直到能夠維持長連接為止;第四選取單元32,用于當能夠維持長連接時,選取本次測試的心跳周期作為第二心跳周期。
可選地,如圖6所示,第三測試模塊30包括時長減少測試單元31、第二判斷單元33、第五選取單元34、第二中值測試單元35和第六選取單元36,其中:
時長減少測試單元31:用于在第一心跳周期的基礎上逐次減少時長進行長連接測試,直到能夠維持長連接為止。
本發(fā)明實施例中,時長減少測試單元31在第一心跳周期的基礎上逐次減少時長時,每次減少的時長可以相等,如每次減少5分鐘;也可以不相等,如逐次減小,逐次增大,逐次減小或增大到特定值后保持不變,等等。例如,第一次減少10分鐘,第二次減少8分鐘,第三次減少5分鐘,第四次減少3分鐘,……。
作為優(yōu)選,本發(fā)明實施例中,時長減少測試單元31每次減少時長后的心跳周期是前一次測試的心跳周期的一半。
第二判斷單元33:用于當能夠維持長連接時,對前一次測試的心跳周期與本次測試的心跳周期進行差值運算,判斷前一次測試的心跳周期與本次測試的心跳周期的差值是否小于或等于第二閾值,并將判斷結果發(fā)送給第五選取單元34和第二中值測試單元35。
第二閾值可以根據(jù)實際需要設定,如可以將第二閾值設定在0.5-1.5分鐘的范圍內。
第五選取單元34:用于如果差值小于或等于第二閾值,則選取本次測試的心跳周期作為第二心跳周期。
第二中值測試單元35:用于如果差值大于第二閾值,則取以本次測試的心跳周期和前一次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試。當不能維持長連接時,繼續(xù)取以本次測試的心跳周期和相鄰且小于本次測試的心跳周期的往次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以本次測試的心跳周期和相鄰且大于本次測試的心跳周期的往次測試的心跳周期為邊界值的數(shù)列的中值作為心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止。當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,停止測試,并通知第六選取單元36。
第二中值測試單元35通過逐次取中值的方式逼近第二心跳周期,以盡量獲取較大的第二心跳周期,降低長連接的功耗。第三閾值可以根據(jù)實際需要設定,如可以將第三閾值設定在0.5-1.5分鐘的范圍內。
例如:時長減少測試單元31在第一心跳周期的基礎上逐次減少時長進行長連接測試,直到能夠維持長連接的第k次為止。當能夠維持長連接時,第二判斷單元33判斷第k-1次測試的心跳周期與第k次測試的心跳周期的差值是否小于或等于第二閾值。如果差值小于或等于第二閾值,第五選取單元34則選取第k次測試的心跳周期作為第二心跳周期。如果所述差值大于第二閾值,第二中值測試單元35則取以第k次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+1次測試的心跳周期進行長連接測試;當不能維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;當能夠維持長連接時,繼續(xù)取以第k+1次測試的心跳周期和第k-1次測試的心跳周期為邊界值的數(shù)列的中值作為第k+2次測試的心跳周期進行長連接測試;如此反復,直到數(shù)列的中值與邊界值的差值的絕對值小于第三閾值為止。
第六選取單元36:用于當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,選取數(shù)列中小于中值的邊界值作為第二心跳周期。
考慮到衛(wèi)星移動通信網絡傳輸時延以及服務器和終端設備的處理時延,為了保證連接的穩(wěn)定性,當數(shù)列的中值與邊界值的差值的絕對值小于第三閾值時,第六選取單元36則選取數(shù)列中小于中值的邊界值作為第二心跳周期。
本領域技術人員可以理解,除此之外,第三測試模塊30還可以采用其它方式減少時長進行長連接測試,只要最終的第二心跳周期能夠維持長連接即可,本發(fā)明對此不再一一列舉贅述。
連接維持模塊40:用于以第二心跳周期維持長連接。
當獲取第二心跳周期后,連接維持模塊40則以第二心跳周期定時向服務器發(fā)送心跳包,維持與服務器長連接,從而服務器可以通過第二網絡實時向終端設備推送信息。
本發(fā)明實施例維持長連接的裝置,當接入第二網絡如衛(wèi)星移動終端通信網絡時,以第一心跳周期為參考周期,在第一心跳周期的基礎上增加或減少時長進行長連接測試,獲取適合衛(wèi)星移動終端通信網絡的心跳周期。一方面維持了終端設備與服務器的長連接,確保終端設備一直在線,使得服務器能夠通過衛(wèi)星移動終端通信網絡實時向終端設備推送信息;另一方面使得終端設備能夠以合適的心跳周期向服務器定時發(fā)送心跳包,無需頻繁發(fā)送心跳包,降低了長連接的功耗。從而為沒有確定的心跳周期的通信網絡確定了一個連接功耗低且能夠維持長連接的合適心跳周期。
需要說明的是:上述實施例提供的維持長連接的裝置與維持長連接的方法實施例屬于同一構思,其具體實現(xiàn)過程詳見方法實施例,且方法實施例中的技術特征在裝置實施例中均對應適用,這里不再贅述。
本發(fā)明同時提出一種終端設備,所述終端設備包括存儲器、處理器和至少一個被存儲在存儲器中并被配置為由處理器執(zhí)行的應用程序,所述應用程序被配置為用于執(zhí)行維持長連接的方法。所述維持長連接的方法包括以下步驟:接入第二網絡后,以第一心跳周期進行長連接測試;當?shù)谝恍奶芷谀軌蚓S持長連接時,在第一心跳周期的基礎上增加時長進行長連接測試,獲取能夠維持長連接的第二心跳周期;當?shù)谝恍奶芷诓荒芫S持長連接時,在第一心跳周期的基礎上減少時長進行長連接測試,獲取能夠維持長連接的第二心跳周期;以第二心跳周期維持長連接。本實施例中所描述的維持心跳連接的方法為本發(fā)明中上述實施例所涉及的維持心跳連接的方法,在此不再贅述。
本領域技術人員可以理解,本發(fā)明包括涉及用于執(zhí)行本申請中所述操作中的一項或多項的設備。這些設備可以為所需的目的而專門設計和制造,或者也可以包括通用計算機中的已知設備。這些設備具有存儲在其內的計算機程序,這些計算機程序選擇性地激活或重構。這樣的計算機程序可以被存儲在設備(例如,計算機)可讀介質中或者存儲在適于存儲電子指令并分別耦聯(lián)到總線的任何類型的介質中,所述計算機可讀介質包括但不限于任何類型的盤(包括軟盤、硬盤、光盤、cd-rom、和磁光盤)、rom(read-onlymemory,只讀存儲器)、ram(randomaccessmemory,隨機存儲器)、eprom(erasableprogrammableread-onlymemory,可擦寫可編程只讀存儲器)、eeprom(electricallyerasableprogrammableread-onlymemory,電可擦可編程只讀存儲器)、閃存、磁性卡片或光線卡片。也就是,可讀介質包括由設備(例如,計算機)以能夠讀的形式存儲或傳輸信息的任何介質。
本技術領域技術人員可以理解,可以用計算機程序指令來實現(xiàn)這些結構圖和/或框圖和/或流圖中的每個框以及這些結構圖和/或框圖和/或流圖中的框的組合。本技術領域技術人員可以理解,可以將這些計算機程序指令提供給通用計算機、專業(yè)計算機或其他可編程數(shù)據(jù)處理方法的處理器來實現(xiàn),從而通過計算機或其他可編程數(shù)據(jù)處理方法的處理器來執(zhí)行本發(fā)明公開的結構圖和/或框圖和/或流圖的框或多個框中指定的方案。
本技術領域技術人員可以理解,本發(fā)明中已經討論過的各種操作、方法、流程中的步驟、措施、方案可以被交替、更改、組合或刪除。進一步地,具有本發(fā)明中已經討論過的各種操作、方法、流程中的其他步驟、措施、方案也可以被交替、更改、重排、分解、組合或刪除。進一步地,現(xiàn)有技術中的具有與本發(fā)明中公開的各種操作、方法、流程中的步驟、措施、方案也可以被交替、更改、重排、分解、組合或刪除。
以上所述僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的技術領域,均同理包括在本發(fā)明的專利保護范圍內。