新四季網

一種鏈路保活方法及裝置與流程

2023-09-16 11:06:15


本發明涉及移動互聯領域,尤其涉及一種鏈路保活方法及裝置。
背景技術:
:近些年來伴隨著行動網路的升級和智能終端的普及,越來越多的終端應用程式出現了,特別是一些即時通信類、網絡電話(voip,voiceoverinternetprotocol)類的應用,這些應用對實時性要求很高,需要時刻保持與後臺伺服器的聯繫,以便於其他用戶在想聯繫時可以實時響應,所以這些應用需要永遠在線。而目前保持在線的實現方式主要是通過建立應用和伺服器之間的連接,並在一定間隔時間能和伺服器之間通過發送、接收數據進行交互,而網絡中數據的接收和發送都是通過使用作業系統中的套接字(socket)來實現的。因此保持在線就是判斷對應socket是否已經斷開,而如何判斷對應socket是否斷開,主要是依靠在系統中創建的心跳機制。心跳機制的基本思想是:通過發送心跳包來保持連接。換句話說,心跳包主要用於長連接的保活和斷線處理。對於應用,一般會設置心跳包的發送間隔,然而,用戶的網絡接入條件不一,比如通過家裡的wifi網絡、公眾場合的wifi網絡、或行動網路等,加之有的網絡設置有防火牆有的未設置防火牆,不同網絡對數據鏈路的保持有不同的要求,因此大多數應用為了保持連接就會將心跳間隔設置的比較短,以便於保持在線狀態。但是,在行動網路情況下過多、過頻繁的信令消息會對行動網路造成衝擊。因此如何解決因應用的頻繁心跳帶來的信令風暴是目前亟待解決的問題。技術實現要素:為解決現有存在的技術問題,本發明實施例提供一種鏈路保活方法及裝置。為達到上述目的,本發明實施例的技術方案是這樣實現的:本發明實施例提供了一種鏈路保活方法,包括:接收來自第一終端的第一保活消息;所述第一保活消息為針對第一應用對應鏈路的保活消息;判斷所述第一終端所歸屬的第一基站是否滿足預設條件;所述預設條件表徵所述第一基站為預設區域內的基站;當所述第一基站滿足預設條件時,利用記錄的第一時刻,判斷是否允許發送所述第一保活消息;所述第一時刻為接入到所述預設區域內基站上的所述第一應用最後一次與應用伺服器發生交互消息的時刻;根據判斷結果,向所述應用伺服器發送第一保活消息或者向所述第一終端返回保活響應。上述方案中,所述利用記錄的第一時刻,判斷是否允許發送所述第一保活消息,包括:利用所述第一時刻及第一發送間隔,判斷是否允許發送所述第一保活消息;所述第一發送間隔為針對所述第一應用的保活消息的發送間隔。上述方案中,所述利用所述第一時刻及第一發送間隔,判斷是否允許發送所述第一保活消息,包括:將所述第一時刻與所述第一發送間隔求和,得到第二時刻;將當前時刻與所述第二時刻進行比較,當前時刻小於等於所述第二時刻時,允許發送所述第一保活消息;當前時刻大於所述第二時刻時,不允許發送所述第一保活消息。上述方案中,所述方法還包括:當向所述應用伺服器發送所述第一保活消息後,更新第一時刻為發送所述第一保活消息的時刻。上述方案中,所述更新第一時刻為發送所述第一保活消息的時刻後,所述方法還包括:所述第一應用向所述應用伺服器發送除保活消息外的其它交互消息或接收到應用伺服器的交互消息後,更新所述第一時刻為最後一次與應用伺服器發生交互消息的時刻。上述方案中,當未記錄所述第一時刻時,所述方法還包括:向所述應用伺服器發送所述第一保活消息,並記錄所述第一時刻為發送所述第一保活消息的時刻。本發明實施例還提供了一種鏈路保活裝置,包括:接收單元,用於接收來自第一終端的第一保活消息;所述第一保活消息為針對第一應用對應鏈路的保活消息;位置分析單元,用於判斷所述第一終端所歸屬的第一基站是否滿足預設條件;所述預設條件表徵所述第一基站為預設區域內的基站;鏈路保活策略單元,用於當所述第一基站滿足預設條件時,利用記錄的第一時刻,判斷是否允許發送所述第一保活消息;所述第一時刻為接入到所述預設區域內基站上的所述第一應用最後一次與應用伺服器發生交互消息的時刻;心跳處理單元,用於根據判斷結果,向所述應用伺服器發送第一保活消息或者向所述第一終端返回保活響應。上述方案中,所述裝置還包括:更新單元,用於向所述應用伺服器發送所述第一保活消息後,更新第一時刻為發送所述第一保活消息的時刻。上述方案中,所述更新單元,還用於所述第一應用向所述應用伺服器發送除保活消息外的其它交互消息後,更新所述第一時刻為最後一次向應用伺服器發送所述其它交互消息的時刻。上述方案中,所述心跳處理單元,還用於當未記錄所述第一時刻時,向所述應用伺服器發送所述第一保活消息;所述裝置還包括:記錄創建單元,用於記錄所述第一時刻為發送所述第一保活消息的時刻。本發明實施例提供的信令鏈路保活方法及裝置,接收來自第一終端的第一保活消息;所述第一保活消息為針對第一應用對應鏈路的保活消息;判斷所述第一終端所歸屬的第一基站是否滿足預設條件;所述預設條件表徵所述第一基站為預設區域內的基站;當所述第一基站滿足預設條件時,利用記錄的第一時刻,判斷是否允許發送所述第一保活消息;所述第一時刻為接入到所述預設區域內基站上的所述第一應用最後一次與應用伺服器發生交互消息的時刻;根據判斷結果,向所述應用伺服器發送第一保活消息或者向所述第一終端返回保活響應,同一接入區域的多個第一應用中,只需要有一個第一應用與應用伺服器的鏈路是相通的,則其他第一應用於應用伺服器的鏈路也是相通的,如此,能有效地降低保活消息的發送頻率,從而能有效地降低保活消息對行動網路的衝擊。另外,本發明實施例提供的方案,不需要修改終端側的應用,如此,適用範圍廣。附圖說明在附圖(其不一定是按比例繪製的)中,相似的附圖標記可在不同的視圖中描述相似的部件。具有不同字母後綴的相似附圖標記可表示相似部件的不同示例。附圖以示例而非限制的方式大體示出了本文中所討論的各個實施例。圖1為典型的行動網路接入系統結構示意圖;圖2為本發明實施例一鏈路保活的方法流程示意圖;圖3為本發明實施例的網絡系統結構示意圖;圖4為本發明實施例保活消息的處理流程示意圖;圖5為本發明實施例對保活消息的處理流程示意圖;圖6為本發明實施例二鏈路保活裝置結構示意圖。具體實施方式下面結合附圖及實施例對本發明再作進一步詳細的描述。在描述本發明實施例之前,先了解一下為什麼會產生信令風暴。在傳輸控制協議(tcp,transmissioncontrolprotocol)中已經實現了一個叫做心跳的機制。依據tcp,如果設置了心跳,就會在一定的時間(比如設置的是3秒鐘)內發送預設次數的心跳(比如2次),並且此信息不會影響自定義的協議。所謂「心跳」就是定時發送一個自定義的結構體(心跳包或心跳幀),讓對方知道自己「在線」,以確保連結的有效性。對於應用所依靠的心跳機制,其基本思想是:通過發送心跳包來保持連接。所謂的心跳包就是應用所依託的客戶端定時發送簡單的信息給伺服器端,以告知伺服器端自身還在線。當然也可以是伺服器端發送心跳包。具體地,通過代碼來實現每間隔一段時間(比如每隔幾分鐘)向伺服器端發送一個固定信息,伺服器端收到後會回復一個固定信息。如果伺服器端幾分鐘內沒有收到客戶端發送的信息則認為客戶端已斷開。舉個例子來說,有些通信軟體長時間不使用,要想獲知它的狀態是在線還是離線,就需要通過心跳包來獲知,即定時發送心跳包、接收心跳包。其中,發包方:可以是客戶端也可以是伺服器端,實際應用時可以根據實現方便合理性,來決定由哪方發送心跳包。一般是客戶端。當然伺服器端也可以定時輪詢發心跳下去。心跳包之所以叫心跳包是因為:它像心跳一樣每隔固定時間發一次,以此來告訴伺服器端,這個客戶端還活著。事實上心跳包的作用是為了保持長連接,至於心跳包的內容,是沒有什麼特別規定的,不過一般都是很小的包,或者只包含包頭的一個空包。在長連接下,有可能很長一段時間都沒有數據往來。理論上說,這個連接是一直保持連接的。但是實際情況中,如果中間節點出現什麼故障是難以知道的。而且,有的節點(防火牆)會自動把一定時間之內沒有數據交互的連接給斷掉。在這種情況下,就需要心跳包來獲知,用於維持長連接,保活。在獲知了斷線之後,伺服器端的邏輯可能需要做一些處理,比如斷線後的數據清理、重新連接等。當然,這個是要由邏輯層根據需求去做了。總的來說,心跳包主要用於長連接的保活和斷線處理。一般,應用會設置連接判定時間在30-40秒,如果實時性要求較高,可以設置在6-9秒。圖1為典型的行動網路接入結構示意圖。從圖1可以看出,終端通過基站接入核心網,當用戶使用一個應用時,核心網需要為其分配相應的資源,以實現與應用伺服器的交互。然而,由於用戶的網絡接入條件不一,比如通過家裡的wifi網絡、公眾場合的wifi網絡、或行動網路等,加之有的網絡設置有防火牆有的未設置防火牆,不同網絡對數據鏈路的保持有不同的要求,因此大多數應用為了保持連接就會將心跳間隔設置的比較短,以便於保持在線狀態。此類應用的代表有微信及qq等。每個月的活躍度都是億級別的,可想而知每秒鐘產生心跳包,將會是一個巨大的數目。而為了處理這些心跳包,需要佔用核心網的大量資源,可見心跳包對行動網路的資源消耗是巨大。因此,在行動網路情況下,過多、過頻繁的心跳消息將會對行動網路造成衝擊。如何解決因應用的頻繁心跳帶來的信令風暴,是亟待解決的一個問題。基於此,在本發明的各種實施例中:接收來自第一終端的第一保活消息;所述第一保活消息為針對第一應用對應鏈路的保活消息;判斷所述第一終端所歸屬的第一基站是否滿足預設條件;所述預設條件表徵所述第一基站為預設區域內的基站;當所述第一基站滿足預設條件時,利用記錄的第一時刻,判斷是否允許發送所述第一保活消息;所述第一時刻為接入到所述預設區域內基站上的所述第一應用最後一次與應用伺服器發生交互消息的時刻;根據判斷結果,向所述應用伺服器發送第一保活消息或者向所述第一終端返回保活響應。實施例一本實施例鏈路保活方法,是一種信令鏈路保活方法,應用於鏈路保活裝置,如圖2所示,該方法包括以下步驟:步驟201:接收來自第一終端的第一保活消息;這裡,所述第一保活消息為針對第一應用對應鏈路的保活消息。更具體點講,所述第一保活消息為針對所述第一應用對應信令鏈路的保活消息。鏈路保活是指:保持鏈路的連接性。步驟202:判斷所述第一終端所歸屬的第一基站是否滿足預設條件;這裡,所述預設條件表徵所述第一基站為預設區域內的基站。實際應用時,可以根據需要來設置哪些基站位於一個區域。當然,實際應用時,預設區域內的基站的個數可以是一個,也可以是至少兩個。步驟201所接收的第一保活消息可以:所述第一終端通過第一基站所發送的第一保活消息。且實際應用時,每個基站都會有一個對應的編號,所以根據第一基站的編號可以獲知其是否預設區域內的基站。另外,實際應用時,網絡側會給每個終端分配一個ip地址,利用基站的編號並結合第一終端的ip地址等信息,可以準確判斷所述第一終端是否是預設區域內的基站。步驟203:當判斷結果表徵所述第一基站滿足預設條件時,利用記錄的第一時刻,判斷是否允許發送所述第一保活消息;這裡,所述第一時刻為接入到所述預設區域內基站上的所述第一應用最後一次與應用伺服器發生交互消息的時刻。具體地,利用所述第一時刻及第一發送間隔,判斷是否允許發送所述第一保活消息。其中,所述第一發送間隔為針對所述第一應用的保活消息的發送間隔。更具體地,將所述第一時刻與所述第一發送間隔求和,得到第二時刻;將當前時刻與所述第二時刻進行比較,噹噹前時刻小於等於所述第二時刻時,允許發送所述第一保活消息;噹噹前時刻大於所述第二時刻時,不允許發送所述第一保活消息。在一實施例中,當未記錄所述第一時刻時,該方法還可以包括:向所述應用伺服器發送所述第一保活消息,並記錄所述第一時刻為發送所述第一保活消息的時刻。當未記錄所述第一時刻時,說明所述第一應用並沒有與所述應用伺服器交互過消息,所以需要記錄第一時刻為發送所述第一保活消息的時刻,以便後續收到第一應用的保活消息後,據此來判斷是否允許向所述應用伺服器發送收到的保活消息。實際應用時,可以建立一個策略表,表裡記錄有各應用的消息記錄時間(各應用最後一次向對應應用伺服器發送消息的時刻),從而據此來判斷是否想對應應用該伺服器發送來自各應用的保活消息。策略表的具體格式可以參照表1。應用標識(id)消息記錄時間飛信2016-02-1710:48:50微信2016-02-1710:49:50表1其中,在表1中,應用id為用戶需要進行鏈路保活的應用名稱。消息記錄時間為應用和應用伺服器發生消息交互的時間,消息交互包括:向應用伺服器發送保活消息、向應用伺服器發送除常規消息,從應用伺服器接收消息。當有此類消息交互時,將更新對應應用的消息記錄時間。步驟204:根據判斷結果,向所述應用伺服器發送第一保活消息或者向所述第一終端返回保活響應。具體地,當判斷結果表徵允許發送所述第一保活消息時,向所述應用伺服器發送第一保活消息;當判斷結果表徵不允許發送所述第一保活消息時,向所述第一終端返回保活響應。其中,當向所述應用伺服器發送所述第一保活消息後,需要更新第一時刻為發送所述第一保活消息的時刻。更新第一時刻為發送所述第一保活消息的時刻後,當所述第一應用向所述應用伺服器發送除保活消息外的其它交互消息時,仍需要更新所述第一時刻為最後一次向應用伺服器發送所述其它交互消息的時刻。換句話說,除了保活消息外,只要第一應用向所述應用伺服器發送了交互消息時,就需要更新第一時刻,以便能有效地減少向應用伺服器發送保活消息的次數。舉個例子來說,當根據消息記錄時間判斷是否允許應用發送鏈路保活消息時,收到該應用的保活消息後,首先檢查此應用對應的消息記錄時間,利用策略表中的消息記錄時間+可以發送保活消息的時間間隔與當前時間進行比較,以判斷是否允許該應用發送保活消息。具體地,如果消息記錄時間+可以發送保活消息的時間間隔小於等於當前時間,則允許發送此應用的保活消息,如果消息記錄時間+可以發送保活消息的時間間隔大於當前時間,則不允許發送此應用的保護消息。下面以飛信為例,詳細描述對保活消息的處理過程。正常情況下飛信應用可以發送保活消息的時間間隔為5分鐘,例如當前時間為10:00,同一基站下有a、b、c三個飛信客戶端,10點鐘的時候a成功向應用伺服器發送了保活消息,此時策略表的內容如下表2所示。應用id消息記錄時間飛信2016-03-0410:00:00微信2016-03-0409:49:50表210:03:00時b向應用伺服器發送保活消息,收到b的保活消息後,消息記錄時間為10:00:00,再加上5分鐘的發送保活消息的時間間隔,則可以得到發送保活消息至應用伺服器的時間應為10:05:00以後,此時間>10:03:00,則b的保活消息將不被發送到應用伺服器,而是通過基站直接回復鏈路保活響應。比如通過基站直接回復確認(ack)消息等。10:04:00時c收到一條飛信消息,此時策略記錄表的內容更新如表3所示:表310:05:00時a需要發送保活消息到應用伺服器,收到a的保活消息後,消息記錄時間為10:04:00,再加上5分鐘的發送保活消息的時間間隔,則可以得到發送保活消息到應用伺服器的時間應為10:09分以後,此時間>10:04:00,則a的保活消息將不被發送到應用伺服器,而是通過基站直接回復鏈路保活響應。比如通過基站直接回復ack消息等。從上面的描述中可以看出,本發明實施例提供的方案,實際應用時,可以應用於如圖3所示的網絡系統。其中,在圖3中,每個預設區域都對應有處理單元,來判斷是向應用伺服器保活消息還是向應用返回保活響應,並根據判斷結果來向應用伺服器發送保活消息或向應用返回保活響應。結合圖3,如圖4所示,本發明實施例提供的方案,大致流程主要包括:應用(ua)發送保活消息(401),收到ua的保活消息後,判斷是否允許發送該保活消息(402),如果允許,則向應用伺服器發送保活消息(403),如果不允許,則向ua返回保活響應(404)。其中,對於步驟402的具體實現,如圖5所示,主要包括以下步驟:步驟402a:確定承載ua的終端的位置;步驟402b:根據終端的位置,選擇終端所歸屬的基站對應預設區域的處理單元,以執行步驟402c~402g;步驟402c:讀取預設區域對應的策略表;步驟402d:判斷策略表中是否有ua對應的消息記錄時間,如果是,則執行步驟402e,否則,執行步驟402g:步驟402e:將對應的消息記錄時間+發送保活消息的時間間隔,得到的時間與當前時間進行比較;步驟402f:判斷得到的時間是否晚於當前時間,如果是,則執行步驟404,否則,執行步驟403;步驟402g:在策略表中記錄對應的消息記錄時間,之後執行步驟403。採用本發明實施例提供的方案,以同一接入區域內的基站(至少一個)為單位,接入到相同基站或者相同區域內基站上的第一應用,單位時間內如果有一個第一應用的保活消息或其它類型的消息(用戶正常收發的消息)和應用伺服器進行交互,其他第一應用的保活消息將通過基站進行直接回復。通過這種方式一方面減輕了行動網路的信令風暴,另一方面可以不用對相關應用進行修改,方便運營商快速部署上線。以飛信為例,目前飛信每隔30秒向應用伺服器發送保活消息,如一個基站下同時接入了100個飛信用戶,那每30秒就有100個心跳消息通過行動網路發到飛信伺服器上,通過本發明實施例提供的方法,30秒只有一個包活消息發到飛信伺服器上,其他99個都由基站回復消息,在一個基站覆蓋下,同一應用只要有一個網絡是通的,其他一定是通的,如此,能偶減少不必要的嘗試。綜上所述,本發明實施例提供的方案,接收來自第一終端的第一保活消息;所述第一保活消息為針對第一應用對應鏈路的保活消息;判斷所述第一終端所歸屬的第一基站是否滿足預設條件;所述預設條件表徵所述第一基站為預設區域內的基站;當判斷結果表徵所述第一基站滿足預設條件時,利用記錄的第一時刻,判斷是否允許發送所述第一保活消息;所述第一時刻為接入到所述預設區域內基站上的所述第一應用最後一次與應用伺服器發生交互消息的時刻;根據判斷結果,向所述應用伺服器發送第一保活消息或者向所述第一終端返回保活響應,同一接入區域的多個第一應用中,只需要有一個第一應用與應用伺服器的鏈路是相通的,則其他第一應用於應用伺服器的鏈路也是相通的,如此,能有效地降低保活消息的發送頻率,從而能有效地降低保活消息對行動網路的衝擊。同時,本發明實施例提供的方案,不需要修改終端側的應用,如此,適用範圍廣。實施例二為實現本發明實施例的方法,本實施例提供一種鏈路保活裝置,是一種信令鏈路保活裝置。如圖6所示,該裝置包括:接收單元61,用於接收來自第一終端的第一保活消息;所述第一保活消息為針對第一應用對應鏈路的保活消息;位置分析單元62,用於判斷所述第一終端所歸屬的第一基站是否滿足預設條件;所述預設條件表徵所述第一基站為預設區域內的基站;鏈路保活策略單元63,用於當判斷結果表徵所述第一基站滿足預設條件時,利用記錄的第一時刻,判斷是否允許發送所述第一保活消息;所述第一時刻為接入到所述預設區域內基站上的所述第一應用最後一次與應用伺服器發生交互消息的時刻;心跳處理單元64,用於根據判斷結果,向所述應用伺服器發送第一保活消息或者向所述第一終端返回保活響應。其中,具體點說,所述第一保活消息為針對所述第一應用對應信令鏈路的保活消息。鏈路保活是指:保持鏈路的連接性。實際應用時,可以根據需要來設置哪些基站位於一個區域。當然,實際應用時,預設區域內的基站的個數可以是一個,也可以是至少兩個。所述接收單元61所接收的第一保活消息可以:所述第一終端通過第一基站所發送的第一保活消息。且實際應用時,每個基站都會有一個對應的編號,所以根據第一基站的編號可以獲知其是否預設區域內的基站。另外,實際應用時,網絡側會給每個終端分配一個ip地址,利用基站的編號並結合第一終端的ip地址等信息,可以準確判斷所述第一終端是否是預設區域內的基站。所述鏈路保活策略單元63,具體用於:利用所述第一時刻及第一發送間隔,判斷是否允許發送所述第一保活消息。更具體地,所述鏈路保活策略單元63將所述第一時刻與所述第一發送間隔求和,得到第二時刻;所述鏈路保活策略單元63將當前時刻與所述第二時刻進行比較,噹噹前時刻小於等於所述第二時刻時,允許發送所述第一保活消息;噹噹前時刻大於所述第二時刻時,不允許發送所述第一保活消息。在一實施例中,該裝置還可以包括:更新單元,用於向所述應用伺服器發送所述第一保活消息後,更新第一時刻為發送所述第一保活消息的時刻。在一實施例中,所述心跳處理單元64,還用於當未記錄所述第一時刻時,向所述應用伺服器發送所述第一保活消息;該裝置還可以包括:記錄創建單元,用於記錄所述第一時刻為發送所述第一保活消息的時刻。其中,當未記錄所述第一時刻時,說明所述第一應用並沒有與所述應用伺服器交互過消息,所以需要記錄第一時刻為發送所述第一保活消息的時刻,以便後續收到第一應用的保活消息後,鏈路保活策略單元63據此來判斷是否允許向所述應用伺服器發送收到的保活消息。實際應用時,可以建立一個策略表,表裡記錄有各應用的消息記錄時間(各應用最後一次向對應應用伺服器發送消息的時刻),從而據此來判斷是否想對應應用該伺服器發送來自各應用的保活消息。策略表的具體格式可以參照表1。其中,在表1中,應用id為用戶需要進行鏈路保活的應用名稱。消息記錄時間為應用和應用伺服器發生消息交互的時間,消息交互包括:向應用伺服器發送保活消息、向應用伺服器發送除常規消息,從應用伺服器接收消息。當有此類消息交互時,將更新對應應用的消息記錄時間。所述心跳處理單元64,具體用於:當判斷結果表徵允許發送所述第一保活消息時,向所述應用伺服器發送第一保活消息;當判斷結果表徵不允許發送所述第一保活消息時,向所述第一終端返回保活響應。其中,當向所述應用伺服器發送所述第一保活消息後,所述更新單元需要更新第一時刻為發送所述第一保活消息的時刻。更新第一時刻為發送所述第一保活消息的時刻後,當所述第一應用向所述應用伺服器發送除保活消息外的其它交互消息時,所述更新單元仍需要更新所述第一時刻為最後一次向應用伺服器發送所述其它交互消息的時刻。換句話說,除了保活消息外,只要第一應用向所述應用伺服器發送了交互消息時,就需要更新第一時刻,以便能有效地減少向應用伺服器發送保活消息的次數。舉個例子來說,當根據消息記錄時間判斷是否允許應用發送鏈路保活消息時,收到該應用的保活消息後,所述鏈路保活策略單元63首先檢查此應用對應的消息記錄時間,利用策略表中的消息記錄時間+可以發送保活消息的時間間隔與當前時間進行比較,以判斷是否允許該應用發送保活消息。具體地,如果消息記錄時間+可以發送保活消息的時間間隔小於等於當前時間,則所述鏈路保活策略單元63允許發送此應用的保活消息,如果消息記錄時間+可以發送保活消息的時間間隔大於當前時間,則所述鏈路保活策略單元63不允許發送此應用的保護消息。下面以飛信為例,詳細描述對保活消息的處理過程。正常情況下飛信應用可以發送保活消息的時間間隔為5分鐘,例如當前時間為10:00,同一基站下有a、b、c三個飛信客戶端,10點鐘的時候a成功向應用伺服器發送了保活消息,此時策略表的內容如下表2所示。10:03:00時b向應用伺服器發送保活消息,收到b的保活消息後,消息記錄時間為10:00:00,再加上5分鐘的發送保活消息的時間間隔,則所述鏈路保活策略單元63可以得到發送保活消息至應用伺服器的時間應為10:05:00以後,此時間>10:03:00,則b的保活消息將不被發送到應用伺服器,而是通過基站直接回復鏈路保活響應。比如通過基站直接回復ack消息等。10:04:00時c收到一條飛信消息,此時策略記錄表的內容更新如表3所示。10:05:00時a需要發送保活消息到應用伺服器,收到a的保活消息後,消息記錄時間為10:04:00,再加上5分鐘的發送保活消息的時間間隔,則可以得到發送保活消息到應用伺服器的時間應為10:09分以後,此時間>10:04:00,則a的保活消息將不被發送到應用伺服器,而是通過基站直接回復鏈路保活響應。比如通過基站直接回復ack消息等。從上面的描述中可以看出,本發明實施例提供的方案,實際應用時,可以應用於如圖3所示的網絡系統。而本發明實施例提供的裝置位於網絡側。其中,在圖3中,每個預設區域都對應有處理單元(鏈路保活策略單元及心跳處理單元),來判斷是向應用伺服器保活消息還是向應用返回保活響應,並根據判斷結果來向應用伺服器發送保活消息或向應用返回保活響應。結合圖3,如圖4所示,本發明實施例提供的方案,大致流程主要包括:應用(ua)發送保活消息(401),所述接收單元61收到ua的保活消息後,由所述鏈路保活策略單元63來判斷是否允許發送該保活消息(402),如果允許,則由心跳處理單元64向應用伺服器發送保活消息(403),如果不允許,則由心跳處理單元64向ua返回保活響應(404)。其中,對於步驟402的具體實現,如圖5所示,主要包括以下步驟:步驟402a:由所述位置分析單元62確定承載ua的終端的位置;步驟402b:所述位置分析單元62根據終端的位置,選擇終端所歸屬的基站對應預設區域的處理單元,以執行步驟402c~402g;步驟402c:對應預設區域的所述鏈路保活策略單元63讀取預設區域對應的策略表;步驟402d:判斷策略表中是否有ua對應的消息記錄時間,如果是,則執行步驟402e,否則,執行步驟402g:步驟402e:將對應的消息記錄時間+發送保活消息的時間間隔,得到的時間與當前時間進行比較;步驟402f:判斷得到的時間是否晚於當前時間,如果是,則執行步驟404,否則,執行步驟403;步驟402g:在策略表中記錄對應的消息記錄時間,之後執行步驟403。採用本發明實施例提供的方案,以同一接入區域內的基站(至少一個)為單位,接入到相同基站或者相同區域內基站上的第一應用,單位時間內如果有一個第一應用的保活消息或其它類型的消息(用戶正常收發的消息)和應用伺服器進行交互,其他第一應用的保活消息將通過基站進行直接回復。通過這種方式一方面減輕了行動網路的信令風暴,另一方面可以不用對相關應用進行修改,方便運營商快速部署上線。以飛信為例,目前飛信每隔30秒向應用伺服器發送保活消息,如一個基站下同時接入了100個飛信用戶,那每30秒就有100個心跳消息通過行動網路發到飛信伺服器上,通過本發明實施例提供的方法,30秒只有一個包活消息發到飛信伺服器上,其他99個都由基站回復消息,在一個基站覆蓋下,同一應用只要有一個網絡是通的,其他一定是通的,如此,能偶減少不必要的嘗試。實際應用時,所述接收單元61、心跳處理單元64可由鏈路保活裝置中的收發機實現;所述位置分析單元62、鏈路保活策略單元63、更新單元、記錄創建單元可由鏈路保活裝置中的中央處理器(cpu,centralprocessingunit)、微處理器(mcu,microcontrolunit)、數位訊號處理器(dsp,digitalsignalprocessor)或可編程邏輯陣列(fpga,field-programmablegatearray)實現。綜上所述,本發明實施例提供的方案,所述接收單元61接收來自第一終端的第一保活消息;所述第一保活消息為針對第一應用對應鏈路的保活消息;所述位置分析單元62判斷所述第一終端所歸屬的第一基站是否滿足預設條件;所述預設條件表徵所述第一基站為預設區域內的基站;當判斷結果表徵所述第一基站滿足預設條件時,鏈路保活策略單元63利用記錄的第一時刻,判斷是否允許發送所述第一保活消息;所述第一時刻為接入到所述預設區域內基站上的所述第一應用最後一次與應用伺服器發生交互消息的時刻;根據判斷結果,所述心跳處理單元64向所述應用伺服器發送第一保活消息或者向所述第一終端返回保活響應,同一接入區域的多個第一應用中,只需要有一個第一應用與應用伺服器的鏈路是相通的,則其他第一應用於應用伺服器的鏈路也是相通的,如此,能有效地降低保活消息的發送頻率,從而能有效地降低保活消息對行動網路的衝擊。同時,本發明實施例提供的方案,不需要修改終端側的應用,如此,適用範圍廣。實際應用時,鏈路保活裝置可以根據設置的預設區域範圍,設置在基站,或者設置在比基站更上層的網絡設備上,比如核心網設備、或者基站管理器等。舉個例子來說,假設預設區域內只有一個基站,此時鏈路保活裝置可以設置在基站上,也可以設置在比基站更上層的網絡設備上。如果預設區域內有至少兩個基站,此時鏈路保活裝置可以設置在比基站更上層的網絡設備上。本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用硬體實施例、軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限於磁碟存儲器和光學存儲器等)上實施的電腦程式產品的形式。本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些電腦程式指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。這些電腦程式指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。以上所述,僅為本發明的較佳實施例而已,並非用於限定本發明的保護範圍。當前第1頁12

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀