基于Proxy代理服务器的长连接方法
生活随笔
收集整理的這篇文章主要介紹了
基于Proxy代理服务器的长连接方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
基于Proxy代理服務器的長連接方法?
摘要
本發明公開了一種基于Proxy代理服務器的長連接方法,在智能終端與服務器之間介入Proxy代理服務器,其長連接方法包括:連接的建立、連接的使用和連接的釋放三個部分。用Proxy代替智能終端與服務器維持長連接,而智能終端可以斷開網絡連接,進入休眠狀態,不僅能極大地改善現有的智能手機耗電量過大的現狀,而且能充分利用移動運營商的分配的帶寬資源,緩解保持連接對移動運營商造成的空口資源消耗過重的問題。 權利要求(1) 1.一種基于Proxy代理服務器的長連接替代方法,其特征在于,在智能終端與服務器之間介入Proxy代理服務器,Proxy代理服務器代替智能終端與服務器建立長連接,而智能終端斷開與移動運營商的連接,即斷開網絡連接進入休眠狀態;當服務器需要發起通信時,Proxy代理服務器通過電路域激活,即喚醒休眠狀態的智能終端相應的應用程序,與服務器進行通訊;其長連接替代方法包括:連接的建立、連接的使用和連接的釋放三個部分; 所述連接的建立部分具體包括: S1.1:智能終端通過調用經修改的長連接接口,發出長連接請求;所述修改的長連接接口與原來長連接接口的功能一致,只是連接請求首先被發送到Proxy代理服務器,Proxy代理服務器收到長連接后會代替智能終端處理長連接; S1.2 =Proxy代理服務器接收請求; S1.3:Proxy代理服務器為智能終端的長連接創建記錄,所述創建記錄內容包括:智能終端的電話號碼以及智能終端與Proxy代理服務器的連接狀態; S1.4 =Proxy代理服務器代替智能終端向服務器發起長連接請求; S1.5:智能終端與服務器建立長連接,智能終端通過已經建立的長連接與服務器進行通訊; 所述連接的使用部分具體包括: S2.1:智能終端與服務器未通訊的時間超過設定的閾值,智能終端主動斷開與Proxy代理服務器的長連接; S2.2:智能終端底層對斷開長連接作相應處理,讓上層應用認為長連接一直存在,保持長連接使用的邏輯;由于長連接的實現在網絡層次結構的應用層之下,所述上層是指上層應用程序;所述相應處理具體為:記錄此長連接已經斷開但實際由proxy代理服務器保持的標記,通過維護長連接列表及自定義長連接字段來實現; S2.3 =Proxy代理服務器將長連接記錄中的連接狀態修改為斷開,同時對服務器保持長連接狀態,上述操作對服務器是透明的,服務器認為長連接一直存在;所述透明的含義是指服務器不用區分收到的長連接請求是否是經過修改后的長連接,而采取一致的方法處理修改后的長連接和原來的長連接,服務器完全不用做任何修改; S2.4:若智能終端需要重新發起與服務器通訊,首先智能終端底層找到已經斷開的長連接,然后所述智能終端與Proxy代理服務器重新關聯,同時Proxy代理服務器修改長連接記錄中的連接狀態為連接,智能終端與服務器的通訊重新建立,同時轉到S2.8,否則,執行下面S2.5 ;長連接都是應用程序發起的,這里的底層是指在網路層次結構中應用層之下實現長連接的層次; S2.5:若服務器需要發起與智能終端的通訊,則所述服務器向Proxy代理服務器發送信息; S2.6:所述Proxy代理服務器接收到信息,并發現長連接處于斷開狀態,通過所述長連接記錄找到智能終端的電話號碼,通過電路域激活智能終端的應用程序重新與Proxy代理服務器建立連接; S2.7:智能終端與服務器重新建立連接; S2.8:智能終端與服務器進行通訊,在設定時間內未通訊時,轉到S1.1 ; 所述連接的釋放部分具體包括: S3.1:智能終端通過調用經修改的長連接接口,發起斷開長連接請求; S3.2:智能終端底層查詢長連接現在所處的狀態,若確認連接狀態處于斷開,則與Proxy代理服務器重新進行關聯,并建立長連接; S3.3:智能終端將斷開長連接的請求發送給Proxy代理服務器;S3.4 =Proxy代理服務器代替智能終端與服務器斷開長連接并釋放原來占用的資源; S3.5 =Proxy代理服務器與服務器斷開連接,釋放與智能終端的長連接,同時消除長連接記錄。 說明 基于Proxy代理服務器的長連接方法 技術領域 [0001]本發明涉及只能終端與服務器通訊技術領域,特別涉及一種基于Proxy代理服務器的長連接方法。
背景技術 [0002]隨著移動互聯網時代的到來,智能手機的流行已成為電子產品市場的一大趨勢。傳統互聯網上的服務提供商紛紛將注意力轉移到移動市場,期望在新的領域內有所斬獲,最為突出的是近年飛速發展的以QQ、MSN為代表的頂(Instant Message)服務,以及以Facebook、Twitter、新浪微博、人人為代表的SNS (Social Network Service)服務。這些服務以其自身獨有的特點天然地適應移動終端的應用需求,發展勢頭迅猛。 [0003]如圖1所示,在現有技術中,IM、SNS服務以及廣泛應用的信息推送服務,都需要移動客戶端與服務器保持連接狀態,以便及時收到來自服務器的狀態和信息更新。一般來說,客戶端與服務器保持狀態連接的方法使用的是長連接的方式,可以是TCP的長連接,也可以是其他技術模仿的長連接。移動終端與服務器保持長連接的示意圖如圖1所示。由于傳統互聯網的終端多是PC、筆記本電腦等有直流電源供電的實體,IM、SNS服務所帶來的開銷對于有強大計算能力、足夠內存空間以及直流電源供應的終端來說夠不成實質性的影響。 [0004]然而,當頂、SNS服務移植到移動終端上,傳統的通信開銷所帶來的影響是不可忽視的,甚至是嚴重的。近年來移動終端雖在硬件和操作系統上取得了長足的進步,智能手機的功能越來越強大,但是電池供電技術長期以來都沒有突破性進展,電池供電量一直是制約智能手機發展的瓶頸。在頂、SNS服務通過長連接來保持通信狀態的通信模型中,手機終端的無線電(Rad1) —直處于高功率發射狀態(耗電量約為無網絡連接狀態(IDLE)的數倍),手機無法進入休眠狀態。長期以來,智能手機耗電量最大的部分就是網絡連接,而IM、SNS服務是網路連接應用最廣泛的服務。這樣,智能手機供電量不足的問題變得異常突出。 [0005]此外,移動終端上的互聯網應用主要是使用移動通信系統的分組交換域(PacketSwitch Domain,PSD)來進行數據通信,長時間保持連接不釋放對移動運營商空口資源以及GSN等網關設備資源消耗嚴重。實際運營過程中,運營商往往不得不在負載過重的情況下踢掉一些長連接,以致降低了用戶的移動服務體驗。 [0006]服務提供商使用的現有通訊方法不僅使用戶的移動終端耗電量過快,也給移動運營商帶來很大的運營壓力,降低了用戶的服務體驗。因而,改進現有的長連接實現方法,用Proxy代替智能終端與服務器維持長連接,而智能終端可以斷開網絡連接,進入休眠狀態,不僅能極大地改善現有的智能手機耗電量過大的現狀,而且能充分利用移動運營商的分配的帶寬資源,緩解保持連接對移動運營商造成的空口資源消耗過重的問題,改善服務的用戶體驗。
發明內容
[0007](一 )要解決的技術問題 [0008]本發明要解決的技術問題是,針對現有技術的不足提供一種基于Proxy代理服務器的長連接方法,可極大地改善現有的智能終端耗電量過大的現狀,緩解保持連接對移動運營商造成的空口資源消耗過重的問題。 [0009]( 二)技術方案 [0010]本發明提供一種基于Proxy代理服務器的長連接方法,在智能終端與服務器之間介入Proxy代理服務器,其長連接方法包括:連接的建立、連接的使用和連接的釋放三個部分。 [0011]更好地,所述連接的建立部分具體包括:S1.1:智能終端發出長連接請求;S1.2:Proxy代理服務器接收請求;S1.3:Proxy代理服務器為智能終端的長連接創建記錄;S1.4:Proxy代理服務器代替智能終端向服務器發起長連接請求;S1.5:智能終端與服務器建立長連接。 [0012]更好地,所述的創建記錄內容包括:智能手機客戶端的電話號碼以及智能手機與Proxy代理服務器的連接狀態。 [0013]更好地,所述連接的使用部分具體包括:S2.1:智能終端與服務器未通訊的時間超過設定的閾值,智能終端主動斷開與Proxy代理服務器的長連接;S2.2:智能終端底層對斷開長連接作相應處理,保持長連接使用的邏輯;所述相應處理具體為:記錄此長連接已經斷開,但實際由proxy保持的標記,可以通過維護長連接列表及自定義長連接字段來實現;S2.3 =Proxy代理服務器將長連接記錄中的連接狀態修改為斷開,同時對服務器保持長連接狀態;S2.4:若智能終端需要重新發與服務器通訊,則所述智能終端與Proxy代理服務器重新關聯,同時Proxy代理服務器將長連接記錄中的連接狀態修改為連接,同時轉到52.8 ;S2.5:若服務器需要發起與智能終端的通訊,則所述服務器向Proxy代理服務器發送信息;S2.6:所述Proxy代理服務器接收到信息,并發現長連接處于斷開狀態,通過所述長連接記錄找到智能終端的電話號碼,通過電路域激活智能終端的應用程序重新與Proxy代理服務器建立連接;S2.7:智能終端與服務器重新建立連接;S2.8:智能終端與服務器進行通訊,在設定時間內未通訊時,轉到SI。 [0014]更好地,所述連接的使用部分具體包括:S3.1:智能終端發起斷開長連接請求;53.2:智能終端確認連接狀態并與Proxy代理服務器的建立長連接;S3.3:智能終端將斷開長連接的請求發送給Proxy代理服務器;S3.4 =Proxy代理服務器代替智能終端與服務器斷開長連接;S3.5 =Proxy代理服務器與服務器斷開連接,釋放與智能終端的長連接,同時消除長連接記錄。 [0015](三)有益效果 [0016]用Proxy代替智能終端與服務器維持長連接,而智能終端可以斷開網絡連接,進入休眠狀態,不僅能極大地改善現有的智能手機耗電量過大的現狀,而且能充分利用移動運營商的分配的帶寬資源,緩解保持連接對移動運營商造成的空口資源消耗過重的問題。 附圖說明 [0017]圖1為現有技術智能終端與服務器連接結構示意圖; [0018]圖2為本發明基于Proxy代理服務器的智能終端與服務器連接結構示意圖; [0019]圖3為本發明基于Proxy代理服務器的智能終端與服務器工作原理圖; [0020]圖4為本發明基于Proxy代理服務器的智能終端與服務器連接建立流程圖; [0021]圖5為本發明基于Proxy代理服務器的智能終端與服務器連接使用流程圖; [0022]圖6為本發明基于Proxy代理服務器的智能終端與服務器連接斷釋放流程圖。 具體實施方式 [0023]下面結合附圖和實施例,對本發明的具體實施方式作進一步詳細描述。以下實施例用于說明本發明,但不用來限制本發明的范圍。 [0024]Proxy Server其中文全稱為代理服務器,其功能就是代理網絡用戶去取得網絡信息。形象的說:它是網絡信息的中轉站。在一般情況下,我們使用網絡瀏覽器直接去連接其他Internet站點取得網絡信息時,是直接聯系到目的站點服務器,然后由目的站點服務器把信息傳送回來。代理服務器是介于瀏覽器和Web服務器之間的另一臺服務器,有了它之后,瀏覽器不是直接到Web服務器去取回網頁而是向代理服務器發出請求,信號會先送到代理服務器,由代理服務器來取回瀏覽器所需要的信息并傳送給你的瀏覽器。 [0025]Proxy代理服務器是一種重要的電腦安全功能,也是特殊的網絡服務,允許客戶端通過它與另一個網絡服務進行非直接的連接,也稱“網絡代理”。代理服務器有利于保障網絡安全,防止攻擊。 [0026]提供代理服務的計算機或其它類型的網絡節點稱為代理服務器(英文=ProxyServer),代理服務器中實現網絡代理的軟件稱為“代理軟件”。具體過程為:智能終端首先與代理服務器建立連接,接著發出一個對另外的目標服務器的文件或其它資源的連接請求,代理服務器通過與目標服務器連接或從緩存中取得請求的資源,并返回給客戶端。通常在這個過程中,代理服務器可能改變智能終端請求或服務器端響應的一些內容以滿足各種代理需要。 [0027]電路域:2G網絡使用的是電路交換技術(Circiut Switching),網絡中任意兩個節點要相互通訊首先必須建立專用的通訊信道,即使通訊雙方長時間沒有進行信息交換,通訊信道在通訊結束釋放資源之前只能由通訊雙方使用。但對于需求日益增長的數據傳輸業務(如手機上網等),電路交換技術并不適用,主要原因是由于數據傳輸業務突發性的特點,電路交換對鏈路資源的利用率過低。因而在因特網中成功應用的報文交換技術(PacketSwitching)被引入無線通訊領域,現如今人們使用的手機數據業務(如GPRS, EDGE, 3G網絡中的數據業務)都是使用的報文交換技術。一般來說,人們將使用電路交換技術的通信鏈路統稱為電路域,典型的有語音服務,短信業務使用的鏈路,電路交換服務由智能終端的基帶處理器處理,基帶處理器在智能終端休眠時仍然能基站正常通訊。 [0028]如圖2所示,本發明一種基于Proxy代理服務器的長連接方法,在傳統的長連接方法中引入代理服務器(Proxy),Proxy代理服務器代替智能終端與服務器建立長連接,而智能終端可以斷開與移動運營商的連接,進入休眠狀態;當服務器需要發起通信時,Proxy代理服務器可以通過電路域激活智能終端相應的應用程序,與服務器進行通訊。 [0029]當智能終端與服務器發起長連接過程時,調用經過修改的長連接請求接口,連接請求首先轉發給Proxy代理服務器,此時Proxy代理服務器記錄智能終端的信息(如智能終端的手機號等),然后Proxy代理服務器代替智能終端與服務器建立長連接,此時智能終端可與服務器進行正常的通訊;一段時間未進行時,智能終端斷開與Proxy代理服務器的長連接,記錄連接由Proxy代理服務器維護的標識,釋放運營商的空口連接資源,智能終端可以關閉網絡連接進入休眠狀態,此時由Proxy代理服務器代替智能終端與服務器保持長連接;這時如果智能終端需要發起通訊,首先會檢查是否有Proxy代理服務器的代理長連接,若有,智能終端直接與Proxy代理服務器關聯,使用原有的連接進行通訊,若沒有,重新發起長連接;如果服務器需要發起通訊,直接發送消息到Proxy代理服務器,Proxy代理服務器收到消息后,通過電路域激活正在休眠的智能終端,智能終端與Proxy代理服務器進行關聯,智能終端與服務器之間重新建立起連接,接著Proxy代理服務器將消息轉發給智能終端。 [0030]如圖4并參考圖3所示,長連接方法包括:連接的建立、連接的使用和連接的釋放三個部分。所述連接的建立部分具體包括: [0031]S1.1:智能終端通過調用經修改的長連接接口,發出長連接請求;所述修改的長連接接口與原來長連接接口的功能一致,只是連接請求首先被發送到Proxy, Proxy收到長連接后會代替智能終端處理長連接; [0032]S1.2 =Proxy代理服務器接收請求; [0033]S1.3 =Proxy代理服務器為智能終端的長連接創建記錄,所述創建記錄內容包括:智能手機客戶端的電話號碼以及智能手機與Proxy代理服務器的連接狀態等; [0034]S1.4 =Proxy代理服務器代替智能終端向服務器發起長連接請求; [0035]S1.5:智能終端與服務器建立長連接,智能終端可以通過已經建立的長連接與服務器進行通訊。 [0036]如圖5并參考圖3所示,所述連接的使用部分具體包括: [0037]S2.1:智能終端與服務器未通訊的時間超過設定的閾值(閾值約為十分鐘),智能終端主動斷開與Proxy代理服務器的長連接; [0038]S2.2:智能終端底層對斷開長連接作相應處理,讓上層應用認為長連接一直存在,保持長連接使用的邏輯;由于長連接的實現在網絡層次結構的應用層之下,所述上層是指上層應用程序;所述相應處理具體為:記錄此長連接已經斷開但實際由proxy保持的標記,可以通過維護長連接列表及自定義長連接字段來實現; [0039]S2.3 =Proxy代理服務器將長連接記錄中的連接狀態修改為斷開,同時對服務器保持長連接狀態,同時對服務器保持長連接狀態;因為上述操作對服務器是透明的,因此服務器認為長連接一直存在;所述透明的含義是指服務器不用區分收到的長連接請求是否是經過修改后的長連接,而采取一致的方法處理修改后的長連接和原來的長連接,服務器完全不用做任何修改; [0040]S2.4:若智能終端需要重新發與服務器通訊,首先智能終端底層找到已經斷開的長連接,然后所述智能終端與Proxy代理服務器重新關聯,同時Proxy代理服務器修改長連接記錄中的連接狀態為連接,智能終端與服務器的通訊重新建立,同時轉到S2.8 ;由于長連接都是應用程序發起的,這里的底層是指在網路層次結構中應用層之下實現長連接的層次; [0041]S2.5:若服務器需要發起與智能終端的通訊,則所述服務器向Proxy代理服務器發送信息; [0042]S2.6:所述Proxy代理服務器接收到信息,并發現長連接處于斷開狀態,通過所述長連接記錄找到智能終端的電話號碼,通過電路域激活智能終端的應用程序重新與Proxy代理服務器建立連接; [0043]S2.7:智能終端與服務器重新建立連接; [0044]S2.8:智能終端與服務器進行通訊,在設定時間內未通訊時(設定的時間約為十分鐘),轉到SI。 [0045]如圖6并參考圖3所示,所述連接的釋放部分具體包括: [0046]S3.1:智能終端通過調用經修改的長連接接口,發起斷開長連接請求; [0047]S3.2:智能終端底層查詢長連接現在所處的狀態,若確認連接狀態處于斷開,則與Proxy代理服務器重新進行關聯,并建立長連接; [0048]S3.3:智能終端將斷開長連接的請求發送給Proxy代理服務器; [0049]S3.4 =Proxy代理服務器代替智能終端與服務器斷開長連接并釋放原來占用的資源; [0050]S3.5 =Proxy代理服務器與服務器斷開連接,釋放與智能終端的長連接,同時消除長連接記錄。 [0051]以上實施方式僅用于說明本發明,而并非對本發明的限制,有關技術領域的普通技術人員,在不脫離本發明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術方案也屬于本發明的范疇,本發明的專利保護范圍應由權利要求限定。
本發明公開了一種基于Proxy代理服務器的長連接方法,在智能終端與服務器之間介入Proxy代理服務器,其長連接方法包括:連接的建立、連接的使用和連接的釋放三個部分。用Proxy代替智能終端與服務器維持長連接,而智能終端可以斷開網絡連接,進入休眠狀態,不僅能極大地改善現有的智能手機耗電量過大的現狀,而且能充分利用移動運營商的分配的帶寬資源,緩解保持連接對移動運營商造成的空口資源消耗過重的問題。 權利要求(1) 1.一種基于Proxy代理服務器的長連接替代方法,其特征在于,在智能終端與服務器之間介入Proxy代理服務器,Proxy代理服務器代替智能終端與服務器建立長連接,而智能終端斷開與移動運營商的連接,即斷開網絡連接進入休眠狀態;當服務器需要發起通信時,Proxy代理服務器通過電路域激活,即喚醒休眠狀態的智能終端相應的應用程序,與服務器進行通訊;其長連接替代方法包括:連接的建立、連接的使用和連接的釋放三個部分; 所述連接的建立部分具體包括: S1.1:智能終端通過調用經修改的長連接接口,發出長連接請求;所述修改的長連接接口與原來長連接接口的功能一致,只是連接請求首先被發送到Proxy代理服務器,Proxy代理服務器收到長連接后會代替智能終端處理長連接; S1.2 =Proxy代理服務器接收請求; S1.3:Proxy代理服務器為智能終端的長連接創建記錄,所述創建記錄內容包括:智能終端的電話號碼以及智能終端與Proxy代理服務器的連接狀態; S1.4 =Proxy代理服務器代替智能終端向服務器發起長連接請求; S1.5:智能終端與服務器建立長連接,智能終端通過已經建立的長連接與服務器進行通訊; 所述連接的使用部分具體包括: S2.1:智能終端與服務器未通訊的時間超過設定的閾值,智能終端主動斷開與Proxy代理服務器的長連接; S2.2:智能終端底層對斷開長連接作相應處理,讓上層應用認為長連接一直存在,保持長連接使用的邏輯;由于長連接的實現在網絡層次結構的應用層之下,所述上層是指上層應用程序;所述相應處理具體為:記錄此長連接已經斷開但實際由proxy代理服務器保持的標記,通過維護長連接列表及自定義長連接字段來實現; S2.3 =Proxy代理服務器將長連接記錄中的連接狀態修改為斷開,同時對服務器保持長連接狀態,上述操作對服務器是透明的,服務器認為長連接一直存在;所述透明的含義是指服務器不用區分收到的長連接請求是否是經過修改后的長連接,而采取一致的方法處理修改后的長連接和原來的長連接,服務器完全不用做任何修改; S2.4:若智能終端需要重新發起與服務器通訊,首先智能終端底層找到已經斷開的長連接,然后所述智能終端與Proxy代理服務器重新關聯,同時Proxy代理服務器修改長連接記錄中的連接狀態為連接,智能終端與服務器的通訊重新建立,同時轉到S2.8,否則,執行下面S2.5 ;長連接都是應用程序發起的,這里的底層是指在網路層次結構中應用層之下實現長連接的層次; S2.5:若服務器需要發起與智能終端的通訊,則所述服務器向Proxy代理服務器發送信息; S2.6:所述Proxy代理服務器接收到信息,并發現長連接處于斷開狀態,通過所述長連接記錄找到智能終端的電話號碼,通過電路域激活智能終端的應用程序重新與Proxy代理服務器建立連接; S2.7:智能終端與服務器重新建立連接; S2.8:智能終端與服務器進行通訊,在設定時間內未通訊時,轉到S1.1 ; 所述連接的釋放部分具體包括: S3.1:智能終端通過調用經修改的長連接接口,發起斷開長連接請求; S3.2:智能終端底層查詢長連接現在所處的狀態,若確認連接狀態處于斷開,則與Proxy代理服務器重新進行關聯,并建立長連接; S3.3:智能終端將斷開長連接的請求發送給Proxy代理服務器;S3.4 =Proxy代理服務器代替智能終端與服務器斷開長連接并釋放原來占用的資源; S3.5 =Proxy代理服務器與服務器斷開連接,釋放與智能終端的長連接,同時消除長連接記錄。 說明 基于Proxy代理服務器的長連接方法 技術領域 [0001]本發明涉及只能終端與服務器通訊技術領域,特別涉及一種基于Proxy代理服務器的長連接方法。
背景技術 [0002]隨著移動互聯網時代的到來,智能手機的流行已成為電子產品市場的一大趨勢。傳統互聯網上的服務提供商紛紛將注意力轉移到移動市場,期望在新的領域內有所斬獲,最為突出的是近年飛速發展的以QQ、MSN為代表的頂(Instant Message)服務,以及以Facebook、Twitter、新浪微博、人人為代表的SNS (Social Network Service)服務。這些服務以其自身獨有的特點天然地適應移動終端的應用需求,發展勢頭迅猛。 [0003]如圖1所示,在現有技術中,IM、SNS服務以及廣泛應用的信息推送服務,都需要移動客戶端與服務器保持連接狀態,以便及時收到來自服務器的狀態和信息更新。一般來說,客戶端與服務器保持狀態連接的方法使用的是長連接的方式,可以是TCP的長連接,也可以是其他技術模仿的長連接。移動終端與服務器保持長連接的示意圖如圖1所示。由于傳統互聯網的終端多是PC、筆記本電腦等有直流電源供電的實體,IM、SNS服務所帶來的開銷對于有強大計算能力、足夠內存空間以及直流電源供應的終端來說夠不成實質性的影響。 [0004]然而,當頂、SNS服務移植到移動終端上,傳統的通信開銷所帶來的影響是不可忽視的,甚至是嚴重的。近年來移動終端雖在硬件和操作系統上取得了長足的進步,智能手機的功能越來越強大,但是電池供電技術長期以來都沒有突破性進展,電池供電量一直是制約智能手機發展的瓶頸。在頂、SNS服務通過長連接來保持通信狀態的通信模型中,手機終端的無線電(Rad1) —直處于高功率發射狀態(耗電量約為無網絡連接狀態(IDLE)的數倍),手機無法進入休眠狀態。長期以來,智能手機耗電量最大的部分就是網絡連接,而IM、SNS服務是網路連接應用最廣泛的服務。這樣,智能手機供電量不足的問題變得異常突出。 [0005]此外,移動終端上的互聯網應用主要是使用移動通信系統的分組交換域(PacketSwitch Domain,PSD)來進行數據通信,長時間保持連接不釋放對移動運營商空口資源以及GSN等網關設備資源消耗嚴重。實際運營過程中,運營商往往不得不在負載過重的情況下踢掉一些長連接,以致降低了用戶的移動服務體驗。 [0006]服務提供商使用的現有通訊方法不僅使用戶的移動終端耗電量過快,也給移動運營商帶來很大的運營壓力,降低了用戶的服務體驗。因而,改進現有的長連接實現方法,用Proxy代替智能終端與服務器維持長連接,而智能終端可以斷開網絡連接,進入休眠狀態,不僅能極大地改善現有的智能手機耗電量過大的現狀,而且能充分利用移動運營商的分配的帶寬資源,緩解保持連接對移動運營商造成的空口資源消耗過重的問題,改善服務的用戶體驗。
發明內容
[0007](一 )要解決的技術問題 [0008]本發明要解決的技術問題是,針對現有技術的不足提供一種基于Proxy代理服務器的長連接方法,可極大地改善現有的智能終端耗電量過大的現狀,緩解保持連接對移動運營商造成的空口資源消耗過重的問題。 [0009]( 二)技術方案 [0010]本發明提供一種基于Proxy代理服務器的長連接方法,在智能終端與服務器之間介入Proxy代理服務器,其長連接方法包括:連接的建立、連接的使用和連接的釋放三個部分。 [0011]更好地,所述連接的建立部分具體包括:S1.1:智能終端發出長連接請求;S1.2:Proxy代理服務器接收請求;S1.3:Proxy代理服務器為智能終端的長連接創建記錄;S1.4:Proxy代理服務器代替智能終端向服務器發起長連接請求;S1.5:智能終端與服務器建立長連接。 [0012]更好地,所述的創建記錄內容包括:智能手機客戶端的電話號碼以及智能手機與Proxy代理服務器的連接狀態。 [0013]更好地,所述連接的使用部分具體包括:S2.1:智能終端與服務器未通訊的時間超過設定的閾值,智能終端主動斷開與Proxy代理服務器的長連接;S2.2:智能終端底層對斷開長連接作相應處理,保持長連接使用的邏輯;所述相應處理具體為:記錄此長連接已經斷開,但實際由proxy保持的標記,可以通過維護長連接列表及自定義長連接字段來實現;S2.3 =Proxy代理服務器將長連接記錄中的連接狀態修改為斷開,同時對服務器保持長連接狀態;S2.4:若智能終端需要重新發與服務器通訊,則所述智能終端與Proxy代理服務器重新關聯,同時Proxy代理服務器將長連接記錄中的連接狀態修改為連接,同時轉到52.8 ;S2.5:若服務器需要發起與智能終端的通訊,則所述服務器向Proxy代理服務器發送信息;S2.6:所述Proxy代理服務器接收到信息,并發現長連接處于斷開狀態,通過所述長連接記錄找到智能終端的電話號碼,通過電路域激活智能終端的應用程序重新與Proxy代理服務器建立連接;S2.7:智能終端與服務器重新建立連接;S2.8:智能終端與服務器進行通訊,在設定時間內未通訊時,轉到SI。 [0014]更好地,所述連接的使用部分具體包括:S3.1:智能終端發起斷開長連接請求;53.2:智能終端確認連接狀態并與Proxy代理服務器的建立長連接;S3.3:智能終端將斷開長連接的請求發送給Proxy代理服務器;S3.4 =Proxy代理服務器代替智能終端與服務器斷開長連接;S3.5 =Proxy代理服務器與服務器斷開連接,釋放與智能終端的長連接,同時消除長連接記錄。 [0015](三)有益效果 [0016]用Proxy代替智能終端與服務器維持長連接,而智能終端可以斷開網絡連接,進入休眠狀態,不僅能極大地改善現有的智能手機耗電量過大的現狀,而且能充分利用移動運營商的分配的帶寬資源,緩解保持連接對移動運營商造成的空口資源消耗過重的問題。 附圖說明 [0017]圖1為現有技術智能終端與服務器連接結構示意圖; [0018]圖2為本發明基于Proxy代理服務器的智能終端與服務器連接結構示意圖; [0019]圖3為本發明基于Proxy代理服務器的智能終端與服務器工作原理圖; [0020]圖4為本發明基于Proxy代理服務器的智能終端與服務器連接建立流程圖; [0021]圖5為本發明基于Proxy代理服務器的智能終端與服務器連接使用流程圖; [0022]圖6為本發明基于Proxy代理服務器的智能終端與服務器連接斷釋放流程圖。 具體實施方式 [0023]下面結合附圖和實施例,對本發明的具體實施方式作進一步詳細描述。以下實施例用于說明本發明,但不用來限制本發明的范圍。 [0024]Proxy Server其中文全稱為代理服務器,其功能就是代理網絡用戶去取得網絡信息。形象的說:它是網絡信息的中轉站。在一般情況下,我們使用網絡瀏覽器直接去連接其他Internet站點取得網絡信息時,是直接聯系到目的站點服務器,然后由目的站點服務器把信息傳送回來。代理服務器是介于瀏覽器和Web服務器之間的另一臺服務器,有了它之后,瀏覽器不是直接到Web服務器去取回網頁而是向代理服務器發出請求,信號會先送到代理服務器,由代理服務器來取回瀏覽器所需要的信息并傳送給你的瀏覽器。 [0025]Proxy代理服務器是一種重要的電腦安全功能,也是特殊的網絡服務,允許客戶端通過它與另一個網絡服務進行非直接的連接,也稱“網絡代理”。代理服務器有利于保障網絡安全,防止攻擊。 [0026]提供代理服務的計算機或其它類型的網絡節點稱為代理服務器(英文=ProxyServer),代理服務器中實現網絡代理的軟件稱為“代理軟件”。具體過程為:智能終端首先與代理服務器建立連接,接著發出一個對另外的目標服務器的文件或其它資源的連接請求,代理服務器通過與目標服務器連接或從緩存中取得請求的資源,并返回給客戶端。通常在這個過程中,代理服務器可能改變智能終端請求或服務器端響應的一些內容以滿足各種代理需要。 [0027]電路域:2G網絡使用的是電路交換技術(Circiut Switching),網絡中任意兩個節點要相互通訊首先必須建立專用的通訊信道,即使通訊雙方長時間沒有進行信息交換,通訊信道在通訊結束釋放資源之前只能由通訊雙方使用。但對于需求日益增長的數據傳輸業務(如手機上網等),電路交換技術并不適用,主要原因是由于數據傳輸業務突發性的特點,電路交換對鏈路資源的利用率過低。因而在因特網中成功應用的報文交換技術(PacketSwitching)被引入無線通訊領域,現如今人們使用的手機數據業務(如GPRS, EDGE, 3G網絡中的數據業務)都是使用的報文交換技術。一般來說,人們將使用電路交換技術的通信鏈路統稱為電路域,典型的有語音服務,短信業務使用的鏈路,電路交換服務由智能終端的基帶處理器處理,基帶處理器在智能終端休眠時仍然能基站正常通訊。 [0028]如圖2所示,本發明一種基于Proxy代理服務器的長連接方法,在傳統的長連接方法中引入代理服務器(Proxy),Proxy代理服務器代替智能終端與服務器建立長連接,而智能終端可以斷開與移動運營商的連接,進入休眠狀態;當服務器需要發起通信時,Proxy代理服務器可以通過電路域激活智能終端相應的應用程序,與服務器進行通訊。 [0029]當智能終端與服務器發起長連接過程時,調用經過修改的長連接請求接口,連接請求首先轉發給Proxy代理服務器,此時Proxy代理服務器記錄智能終端的信息(如智能終端的手機號等),然后Proxy代理服務器代替智能終端與服務器建立長連接,此時智能終端可與服務器進行正常的通訊;一段時間未進行時,智能終端斷開與Proxy代理服務器的長連接,記錄連接由Proxy代理服務器維護的標識,釋放運營商的空口連接資源,智能終端可以關閉網絡連接進入休眠狀態,此時由Proxy代理服務器代替智能終端與服務器保持長連接;這時如果智能終端需要發起通訊,首先會檢查是否有Proxy代理服務器的代理長連接,若有,智能終端直接與Proxy代理服務器關聯,使用原有的連接進行通訊,若沒有,重新發起長連接;如果服務器需要發起通訊,直接發送消息到Proxy代理服務器,Proxy代理服務器收到消息后,通過電路域激活正在休眠的智能終端,智能終端與Proxy代理服務器進行關聯,智能終端與服務器之間重新建立起連接,接著Proxy代理服務器將消息轉發給智能終端。 [0030]如圖4并參考圖3所示,長連接方法包括:連接的建立、連接的使用和連接的釋放三個部分。所述連接的建立部分具體包括: [0031]S1.1:智能終端通過調用經修改的長連接接口,發出長連接請求;所述修改的長連接接口與原來長連接接口的功能一致,只是連接請求首先被發送到Proxy, Proxy收到長連接后會代替智能終端處理長連接; [0032]S1.2 =Proxy代理服務器接收請求; [0033]S1.3 =Proxy代理服務器為智能終端的長連接創建記錄,所述創建記錄內容包括:智能手機客戶端的電話號碼以及智能手機與Proxy代理服務器的連接狀態等; [0034]S1.4 =Proxy代理服務器代替智能終端向服務器發起長連接請求; [0035]S1.5:智能終端與服務器建立長連接,智能終端可以通過已經建立的長連接與服務器進行通訊。 [0036]如圖5并參考圖3所示,所述連接的使用部分具體包括: [0037]S2.1:智能終端與服務器未通訊的時間超過設定的閾值(閾值約為十分鐘),智能終端主動斷開與Proxy代理服務器的長連接; [0038]S2.2:智能終端底層對斷開長連接作相應處理,讓上層應用認為長連接一直存在,保持長連接使用的邏輯;由于長連接的實現在網絡層次結構的應用層之下,所述上層是指上層應用程序;所述相應處理具體為:記錄此長連接已經斷開但實際由proxy保持的標記,可以通過維護長連接列表及自定義長連接字段來實現; [0039]S2.3 =Proxy代理服務器將長連接記錄中的連接狀態修改為斷開,同時對服務器保持長連接狀態,同時對服務器保持長連接狀態;因為上述操作對服務器是透明的,因此服務器認為長連接一直存在;所述透明的含義是指服務器不用區分收到的長連接請求是否是經過修改后的長連接,而采取一致的方法處理修改后的長連接和原來的長連接,服務器完全不用做任何修改; [0040]S2.4:若智能終端需要重新發與服務器通訊,首先智能終端底層找到已經斷開的長連接,然后所述智能終端與Proxy代理服務器重新關聯,同時Proxy代理服務器修改長連接記錄中的連接狀態為連接,智能終端與服務器的通訊重新建立,同時轉到S2.8 ;由于長連接都是應用程序發起的,這里的底層是指在網路層次結構中應用層之下實現長連接的層次; [0041]S2.5:若服務器需要發起與智能終端的通訊,則所述服務器向Proxy代理服務器發送信息; [0042]S2.6:所述Proxy代理服務器接收到信息,并發現長連接處于斷開狀態,通過所述長連接記錄找到智能終端的電話號碼,通過電路域激活智能終端的應用程序重新與Proxy代理服務器建立連接; [0043]S2.7:智能終端與服務器重新建立連接; [0044]S2.8:智能終端與服務器進行通訊,在設定時間內未通訊時(設定的時間約為十分鐘),轉到SI。 [0045]如圖6并參考圖3所示,所述連接的釋放部分具體包括: [0046]S3.1:智能終端通過調用經修改的長連接接口,發起斷開長連接請求; [0047]S3.2:智能終端底層查詢長連接現在所處的狀態,若確認連接狀態處于斷開,則與Proxy代理服務器重新進行關聯,并建立長連接; [0048]S3.3:智能終端將斷開長連接的請求發送給Proxy代理服務器; [0049]S3.4 =Proxy代理服務器代替智能終端與服務器斷開長連接并釋放原來占用的資源; [0050]S3.5 =Proxy代理服務器與服務器斷開連接,釋放與智能終端的長連接,同時消除長連接記錄。 [0051]以上實施方式僅用于說明本發明,而并非對本發明的限制,有關技術領域的普通技術人員,在不脫離本發明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術方案也屬于本發明的范疇,本發明的專利保護范圍應由權利要求限定。
總結
以上是生活随笔為你收集整理的基于Proxy代理服务器的长连接方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL浮点类型
- 下一篇: android 格林尼治标准时间的 格式