亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

手持終端apn自適應(yīng)的無線接入方法

文檔序號:7893717閱讀:334來源:國知局
專利名稱:手持終端apn自適應(yīng)的無線接入方法
技術(shù)領(lǐng)域
本發(fā)明屬于一種手持終端與服務(wù)器的通訊方法,特別涉及一種手持終端APN自適應(yīng)的無線接入方法。
背景技術(shù)
APN的英文全稱是Access Point Name,中文全稱叫接入點(diǎn),是您在通過手機(jī)上網(wǎng)時(shí)必須配置的一個(gè)參數(shù),它決定了您的手機(jī)通過哪種接入方式來訪問網(wǎng)絡(luò)。由于運(yùn)營商的運(yùn)營策略需要,無線終端接入移動(dòng)互聯(lián)網(wǎng)的連接方式(APN)有多種,例如中國移動(dòng)GPRS連接方式包括cmnet, cmwap接入方式。其他接入方式還包括wifi, 3G等各種接入方式。各種連接方式對應(yīng)著不同的處理方式和流程,應(yīng)用程序如果需要支持各種接入方式,需要同時(shí)處理并支持這些不同的接入方式,這給應(yīng)用開發(fā)者造成很大的困難,而且有些接入方式, 例如HTTP代理方式,需要穿越各地的移動(dòng)網(wǎng)關(guān),各省市的網(wǎng)關(guān)要求的http頭信息都各不相同,造成每個(gè)地方都需要不同的http頭來穿越。而各地對移動(dòng)通訊網(wǎng)絡(luò)接入方式有不同的套餐,套餐資費(fèi)也各不相同,如何采取有效的措施,使得應(yīng)用程序無需關(guān)心網(wǎng)絡(luò)接入的細(xì)節(jié),專注于軟件自省業(yè)務(wù)邏輯,并且支持多樣化,可配置的網(wǎng)絡(luò)接入方式,是個(gè)很迫切的很有必要的開發(fā)項(xiàng)目。中國專利公告號CN101909326A,公告日2010年12月8日,公開了一種接入點(diǎn)的選擇方法及裝置,包括用戶觸發(fā)需要使用數(shù)據(jù)業(yè)務(wù)鏈接的應(yīng)用;終端在用戶未啟動(dòng)多接入 點(diǎn)(APN)用戶自設(shè)置,且應(yīng)用不需要專屬APN時(shí),根據(jù)應(yīng)用的基本信息,從多APN選擇數(shù)據(jù)庫中的應(yīng)用與APN對應(yīng)關(guān)系信息中,為應(yīng)用選擇APN。此技術(shù)方案,是APN的自適應(yīng),但是主要是側(cè)重?zé)o線模塊根據(jù)信號輕度進(jìn)行自適應(yīng)的選擇APN,主要偏向底層硬件模塊,但是對一般的軟件開發(fā)商來說手持終端的硬件部分往往是固定的,所以對軟件開發(fā)者來說缺少一種能夠適應(yīng)大部分應(yīng)用、達(dá)到支持多種接入方式之間的動(dòng)態(tài)自由切換的方法,用戶無法根據(jù)自身套餐的資費(fèi)情況,選擇性能最好,最經(jīng)濟(jì)的套餐。

發(fā)明內(nèi)容
本發(fā)明的目的在于解決上述現(xiàn)有技術(shù)中存在缺少一種能夠適應(yīng)大部分應(yīng)用,達(dá)到支持多種接入方式之間的動(dòng)態(tài)自由切換的方法,用戶無法根據(jù)自身套餐的資費(fèi)情況,選擇性能最好、最經(jīng)濟(jì)套餐進(jìn)行網(wǎng)絡(luò)連接的問題,提供了一種手持終端APN自適應(yīng)的無線接入方法。本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是一種手持終端APN自適應(yīng)的無線接入方法,所述的手持終端上安裝提供網(wǎng)絡(luò)訪問接口的終端消息模塊,所述的手持終端APN自適應(yīng)的無線接入方法,包括以下步驟
步驟一應(yīng)用程序調(diào)用終端消息模塊讀取用戶網(wǎng)絡(luò)設(shè)置文件,如果是采用WIFI方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟二、如果是采用NET直連方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟三、如果是采用WAP直連方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟四、如果是采用WAP代理方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟五;步驟二 手持終端連接熱點(diǎn),終端消息模塊創(chuàng)建SOCKET然后連接至網(wǎng)絡(luò)服務(wù)器,手持終端與網(wǎng)絡(luò)服務(wù)器建立TCP連接,進(jìn)行數(shù)據(jù)收發(fā);
步驟三手持終端進(jìn)行NET網(wǎng)絡(luò)撥號,終端消息模塊創(chuàng)建SOCKET然后連接至網(wǎng)絡(luò)服務(wù)器,手持終端與網(wǎng)絡(luò)服務(wù)器建立TCP連接,進(jìn)行數(shù)據(jù)收發(fā);
步驟四手持終端進(jìn)行WAP網(wǎng)絡(luò)撥號,終端消息模塊創(chuàng)建SOCKET然后連接運(yùn)營商的網(wǎng)關(guān),網(wǎng)關(guān)連接成功后,手持終端發(fā)送CONNECT命令包至運(yùn)營商網(wǎng)關(guān),請求連接目的服務(wù)器,服務(wù)器應(yīng)答成功后即建立WAP直連連接,手持終端向運(yùn)營商網(wǎng)關(guān)發(fā)送TCP數(shù)據(jù),運(yùn)營商網(wǎng)關(guān)作為SOCKET代理服務(wù)器轉(zhuǎn)發(fā)數(shù)據(jù)到目的服務(wù)器,手持終端以此方式與目的服務(wù)器進(jìn)行數(shù)據(jù)交互;
步驟五手持終端進(jìn)行WAP網(wǎng)絡(luò)撥號,終端消息模塊創(chuàng)建SOCKET然后連接運(yùn)營商的網(wǎng)關(guān),網(wǎng)關(guān)連接成功之后,進(jìn)行WAP代理,手持終端發(fā)送HTTP POST請求給運(yùn)營商網(wǎng)關(guān),請求將數(shù)據(jù)轉(zhuǎn)發(fā)至目的服務(wù)器,目的服務(wù)器通過響應(yīng)該P(yáng)OST請求的方式進(jìn)行數(shù)據(jù)收發(fā)。 SOCKET即套接字,是一個(gè)通信鏈的句柄,用于描述IP地址和端口,應(yīng)用程序通過SOCKET向網(wǎng)絡(luò)發(fā)出請求或者應(yīng)答網(wǎng)絡(luò)請求,達(dá)到不同的連接設(shè)置對應(yīng)不同的連接方法,都可以由本發(fā)明進(jìn)行連接,本發(fā)明能夠適應(yīng)大部分應(yīng)用,達(dá)到支持多種接入方式之間的動(dòng)態(tài)自由切換,用戶可根據(jù)自身套餐的資費(fèi)情況,選擇性能最好,最經(jīng)濟(jì)套餐。作為優(yōu)選,所述的手持終端APN自適應(yīng)的無線接入方法中進(jìn)行數(shù)據(jù)收發(fā)時(shí)采用異步方式處理網(wǎng)絡(luò)數(shù)據(jù)。采用異步方式處理網(wǎng)絡(luò)數(shù)據(jù)達(dá)到在時(shí)間上將事件與數(shù)據(jù)分離,處理數(shù)據(jù)清晰地表達(dá)了 “接收數(shù)據(jù)、通知協(xié)議”的過程。作為優(yōu)選,所述的異步方式處理網(wǎng)絡(luò)數(shù)據(jù)的方法包括發(fā)送邏輯、接收邏輯和終端消息模塊內(nèi)部消息處理邏輯三部分邏輯
發(fā)送邏輯應(yīng)用程序調(diào)用終端消息模塊,通過句柄發(fā)送消息包,終端消息模塊轉(zhuǎn)發(fā)消息包至服務(wù)器,發(fā)送結(jié)果通過發(fā)送數(shù)據(jù)的形式通知調(diào)用終端消息模塊的應(yīng)用程序;
接收邏輯終端消息模塊接收到網(wǎng)絡(luò)數(shù)據(jù)包時(shí),拆分網(wǎng)絡(luò)數(shù)據(jù)包,根據(jù)數(shù)據(jù)包的目的模塊號進(jìn)行分發(fā),應(yīng)用程序調(diào)用目的模塊的處理函數(shù)進(jìn)行處理數(shù)據(jù);
模塊內(nèi)部消息處理邏輯終端消息模塊創(chuàng)建一個(gè)定時(shí)器,定時(shí)器完成一個(gè)計(jì)數(shù)循環(huán)后,檢測一次消息發(fā)送隊(duì)列,如果有需要發(fā)送的數(shù)據(jù)包則先發(fā)送數(shù)據(jù)包,然后再嘗試從網(wǎng)絡(luò)上收取數(shù)據(jù),終端消息模塊如果收取到一個(gè)完整的數(shù)據(jù)包,則解析這個(gè)數(shù)據(jù)包頭,根據(jù)包頭的信息分發(fā)到相應(yīng)的模塊,也即調(diào)用該模塊的消息處理函數(shù)來處理消息體。作為優(yōu)選,數(shù)據(jù)包頭包含當(dāng)前發(fā)送數(shù)據(jù)的序列號,序列號是一個(gè)每次遞增的正整數(shù),終端和接入服務(wù)器之間通過數(shù)據(jù)包的序列號機(jī)制來保證數(shù)據(jù)包的順序和可靠性,一方發(fā)現(xiàn)接受到的數(shù)據(jù)包序列號不連續(xù),則判定為數(shù)據(jù)丟失,發(fā)現(xiàn)數(shù)據(jù)丟失的一方會立即斷開網(wǎng)絡(luò)連接,并且請求進(jìn)行重新連接,等重新建立連接之后在此發(fā)送之前為確認(rèn)的數(shù)據(jù)包,雙方繼續(xù)進(jìn)行通訊。這樣方法保證了應(yīng)用程序感知的進(jìn)行斷線重連。作為優(yōu)選,如果用戶主動(dòng)進(jìn)行接入點(diǎn)切換,或者終端系統(tǒng)監(jiān)測到當(dāng)前連接方式發(fā)生網(wǎng)絡(luò)故障,需要切換到其他接入點(diǎn)時(shí),終端斷開當(dāng)前網(wǎng)絡(luò)連接,并且把已發(fā)送待確認(rèn)隊(duì)列里面的數(shù)據(jù)包按照序列號的順序移動(dòng)到帶發(fā)送隊(duì)列的最前面,然后刪除終端接收數(shù)據(jù)包隊(duì)列里面序列號大于最后發(fā)出的數(shù)據(jù)包,根據(jù)重新選擇接入方式連接網(wǎng)絡(luò),并且和服務(wù)器請求重新恢復(fù)狀態(tài),終端接著發(fā)送帶發(fā)送隊(duì)列里面的數(shù)據(jù)包,服務(wù)器接著發(fā)送終端未確認(rèn)的數(shù)據(jù)包到終端,完成接入點(diǎn)的動(dòng)態(tài)切換,實(shí)現(xiàn)數(shù)據(jù)透明的數(shù)據(jù)收發(fā)處理。此方法的應(yīng)用,可以實(shí)現(xiàn)應(yīng)用程序接入點(diǎn)的動(dòng)態(tài)切換,以保證使用最優(yōu)化的方式來進(jìn)行通訊,動(dòng)態(tài)切換技術(shù)包括用戶在登陸狀態(tài)下面主動(dòng)切換接入點(diǎn)或者是程序自動(dòng)選擇優(yōu)化的接入點(diǎn),總之都是在聯(lián)網(wǎng)過程中進(jìn)行接入點(diǎn)的動(dòng)態(tài)切換,使用動(dòng)態(tài)切換技術(shù)能夠在切換接入點(diǎn)之后恢復(fù)之前的網(wǎng)絡(luò)狀態(tài)。本發(fā)明的實(shí)質(zhì)性效果是本發(fā)明能夠適應(yīng)大部分應(yīng)用,達(dá)到支持多種接入方式之間的動(dòng)態(tài)自由切換,用戶可根據(jù)自身套餐的資費(fèi)情況,選擇性能最好,最經(jīng)濟(jì)套餐,使用本發(fā)明進(jìn)行動(dòng)態(tài)切換時(shí)響應(yīng)速度快,切換時(shí)使用者無感知,用戶體驗(yàn)較好。


圖I是本發(fā)明的一種流程示意 圖2是本發(fā)明中內(nèi)部消息處理邏輯的一種流程示意圖;
圖3是本發(fā)明網(wǎng)絡(luò)連接正常時(shí)的一種示意 圖4是本發(fā)明網(wǎng)絡(luò)連接需要斷線重連時(shí)的一種示意 圖5是本發(fā)明網(wǎng)絡(luò)連接需要斷線重連時(shí)的另一種示意圖。
具體實(shí)施例方式下面通過具體實(shí)施例,并結(jié)合附圖,對本發(fā)明的技術(shù)方案作進(jìn)一步的具體說明。實(shí)施例
一種手持終端APN自適應(yīng)的無線接入方法(參見附圖1),本實(shí)施例對應(yīng)的手持終端為使用中國移動(dòng)通訊網(wǎng)絡(luò)的手機(jī)、本實(shí)施例中使用的服務(wù)器的IP地址為122. 236. 46. 67,運(yùn)營商的wap網(wǎng)關(guān)服務(wù)器為10.0.0. 127。手持終端上安裝提供網(wǎng)絡(luò)訪問接口的終端消息模塊,手持終端APN自適應(yīng)的無線接入方法,包括以下步驟
步驟一首先執(zhí)行啟動(dòng)I操作,手持終端進(jìn)入工作狀態(tài)開始運(yùn)行應(yīng)用程序,手持終端應(yīng)用程序調(diào)用終端消息模塊讀取用戶網(wǎng)絡(luò)設(shè)置文件,即讀取設(shè)置2,如果是采用WIFI方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟二、即執(zhí)行WIFI連接31 ;如果是采用NET直連方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟三、即執(zhí)行NET直連41 ;如果是采用WAP直連方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟四、即執(zhí)行WAP直連51 ;如果是采用WAP代理方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟五,即執(zhí)行WAP代理61 ;
步驟二 手持終端連接熱點(diǎn)32,終端消息模塊創(chuàng)建SOCKET然后CONNECT INTERNET服務(wù)器33,也就是CONNECT至網(wǎng)絡(luò)服務(wù)器地址122. 236. 46. 67,手持終端與網(wǎng)絡(luò)服務(wù)器建立TCP連接,進(jìn)行數(shù)據(jù)收發(fā)34;
步驟三手持終端進(jìn)行CMNET網(wǎng)絡(luò)撥號42,終端消息模塊創(chuàng)建SOCKET然后CONNECTINTERNET服務(wù)器33,也就是CONNECT至網(wǎng)絡(luò)服務(wù)器地址122. 236. 46. 67,手持終端與網(wǎng)絡(luò)服務(wù)器建立TCP連接,進(jìn)行數(shù)據(jù)收發(fā)34 ;
步驟四手持終端進(jìn)行CMWAP網(wǎng)絡(luò)撥號52,終端消息模塊創(chuàng)建SOCKET然后連接運(yùn)營商的網(wǎng)關(guān)53,也就是連接IP地址為10. 0. 0. 127的網(wǎng)關(guān)服務(wù)器,進(jìn)行WAP直連54,手持終端發(fā)送HTTP CONNECT命令包至運(yùn)營商網(wǎng)關(guān),請求連接目的服務(wù)器55,其中,目的服務(wù)器地址122. 236. 46. 67,網(wǎng)關(guān)服務(wù)器應(yīng)答成功之后即建立WAP直連連接。手持終端通過WAP直連連接向運(yùn)營商網(wǎng)關(guān)發(fā)送TCP數(shù)據(jù),運(yùn)營商網(wǎng)關(guān)作為SOCKET代理服務(wù)器轉(zhuǎn)發(fā)數(shù)據(jù)到目的服務(wù)器56,其中,目的服務(wù)器地址122. 236. 46. 67,手持終端以此和目的服務(wù)器進(jìn)行數(shù)據(jù)收發(fā);步驟五手持終端進(jìn)行WAP網(wǎng)絡(luò)撥號52,終端消息模塊創(chuàng)建SOCKET然后連接運(yùn)營商的網(wǎng)關(guān)53,進(jìn)行WAP代理62,手持終端發(fā)送HTTP POST請求給運(yùn)營商網(wǎng)關(guān),請求將數(shù)據(jù)轉(zhuǎn)發(fā)至目的服務(wù)器63,其中,目的服務(wù)器地址122. 236. 46. 67,進(jìn)行數(shù)據(jù)收發(fā)。本實(shí)施例中的終端消息模塊包括以下幾個(gè)函數(shù)接口 msgStart ()、msgStop ()、msgRegSender ()、msgRegReceiver ()和 msgSendPkt (),以上所述的函數(shù)接口功能分別為msgStartO :啟動(dòng)消息系統(tǒng),終端模塊根據(jù)用戶設(shè)置的網(wǎng)絡(luò)類型進(jìn)行撥號和網(wǎng)絡(luò)連接,初始化網(wǎng)絡(luò)環(huán)境,倉Il建socket ;msgStop ():關(guān)閉網(wǎng)絡(luò)連接;msgRegSender ():注冊消息發(fā)送者,創(chuàng)建發(fā)送句柄;msgRegReceiver ():注冊消息處理函數(shù);msgSendPkt ():通過句柄發(fā)送消息 包到服務(wù)器。手持終端上的應(yīng)用程序只要調(diào)用上述函數(shù)接口就可以和服務(wù)器進(jìn)行通訊,不用管是通過那種方式和服務(wù)器進(jìn)行連接。手持終端的終端消息模塊和服務(wù)器封裝了網(wǎng)絡(luò)撥號連接和底層數(shù)據(jù)的通信,APP Client和APP Server可以進(jìn)行透明的數(shù)據(jù)傳輸。極大的方便了應(yīng)用的開發(fā)過程。本實(shí)施例應(yīng)用時(shí)需先注冊消息接口 int32 msgRegSender (int32 mid,mpsFpFuncType sendCB);應(yīng)用程序通過調(diào)用msgRegSender函數(shù)告訴終端消息模塊自己的模塊號是mid,消息發(fā)送成功通知函數(shù)是sendCB。int32 msgRegReceiver (int32 extld,mpsFpFuncType recvCB);應(yīng)用程序調(diào)用msgRegReceiver函數(shù)告訴終端消息模塊自己的模塊號是mid,并且接收所有消息號目的地址為mid的消息,處理函數(shù)是recvCB。手持終端APN自適應(yīng)的無線接入方法中進(jìn)行數(shù)據(jù)收發(fā)時(shí)采用異步方式處理網(wǎng)絡(luò)數(shù)據(jù)。包括發(fā)送邏輯、接收邏輯和終端消息模塊內(nèi)部消息處理邏輯(參見附圖2)三部分邏輯
發(fā)送邏輯應(yīng)用程序調(diào)用終端消息模塊,通過句柄發(fā)送消息包,終端消息模塊轉(zhuǎn)發(fā)消息包至服務(wù)器,發(fā)送結(jié)果通過發(fā)送數(shù)據(jù)的形式通知調(diào)用終端消息模塊的應(yīng)用程序;具體為應(yīng)用程序只需要調(diào)用msgSendPkt ()來往消息終端模塊發(fā)送數(shù)據(jù)包,不用等待數(shù)據(jù)包的發(fā)送結(jié)果,具體的發(fā)送結(jié)果通過sendCB函數(shù)來通知調(diào)用方應(yīng)用程序。接收邏輯應(yīng)用程序通過msgRegRceiver ()函數(shù)注冊了一個(gè)消息接收函數(shù),終端消息模塊接收到網(wǎng)絡(luò)數(shù)據(jù)包時(shí),拆分網(wǎng)絡(luò)數(shù)據(jù)包,根據(jù)數(shù)據(jù)包的目的模塊號進(jìn)行分發(fā),應(yīng)用程序調(diào)用目的模塊的處理函數(shù)進(jìn)行處理數(shù)據(jù);
模塊內(nèi)部消息處理邏輯終端消息模塊創(chuàng)建一個(gè)定時(shí)器,開始內(nèi)部消息出來71,開始定時(shí)循環(huán)72,每隔500ms左右定時(shí)執(zhí)行一次,定時(shí)器完成一個(gè)計(jì)數(shù)循環(huán)后,檢測一次消息發(fā)送隊(duì)列,如果有需要發(fā)送的數(shù)據(jù)包則先發(fā)送數(shù)據(jù)73,然后再嘗試從網(wǎng)絡(luò)上收取數(shù)據(jù),即從SOCKET接收數(shù)據(jù),存放到環(huán)形緩沖器74,終端消息模塊檢測緩沖器,如果緩沖器收取到一個(gè)完整的數(shù)據(jù)包75,則解析這個(gè)數(shù)據(jù)包頭,根據(jù)包頭的信息分發(fā)到相應(yīng)的模塊76,也即調(diào)用該模塊的消息處理函數(shù)來處理消息體。數(shù)據(jù)包頭包含當(dāng)前發(fā)送數(shù)據(jù)的序列號,序列號是一個(gè)每次遞增的正整數(shù),終端和接入服務(wù)器之間通過數(shù)據(jù)包的序列號機(jī)制來保證數(shù)據(jù)包的順序和可靠性(參見附圖3附圖4和附圖5),一方發(fā)現(xiàn)接受到的數(shù)據(jù)包序列號不連續(xù),則判定為數(shù)據(jù)丟失,發(fā)現(xiàn)數(shù)據(jù)丟失的一方會立即斷開網(wǎng)絡(luò)連接,并且請求進(jìn)行重新連接,等重新建立連接之后在此發(fā)送之前為確認(rèn)的數(shù)據(jù)包,雙方繼續(xù)進(jìn)行通訊。
基于上面的斷線重連機(jī)制和數(shù)據(jù)包可靠傳輸方法,我們可以實(shí)現(xiàn)應(yīng)用程序接入點(diǎn)的動(dòng)態(tài)切換,以保證使用最優(yōu)化的方式來進(jìn)行通訊。假設(shè)當(dāng)前網(wǎng)絡(luò)通過CMNET方式進(jìn)行連接,終端通過TCP連接方式直接連接到服務(wù)器進(jìn)行數(shù)據(jù)通信。終端消息模塊的數(shù)據(jù)包狀態(tài)如下
待發(fā)送隊(duì)列 -> [n+2] -> [n+3] ->
已發(fā)送待確認(rèn)隊(duì)列-> [n+1]
LAST_RECV_SEQ: n狀態(tài)說明
待發(fā)送隊(duì)列里面的數(shù)據(jù)是終端尚未發(fā)送的數(shù)據(jù)包。
·
序列號為n+1的數(shù)據(jù)包終端發(fā)送成功,移到已發(fā)送待確認(rèn)隊(duì)列,等待服務(wù)器確認(rèn)消息。·最后服務(wù)器發(fā)送到終端的數(shù)據(jù)包經(jīng)過終端確認(rèn)的序列號為n ;序列號為n的數(shù)據(jù)包從已發(fā)送待確認(rèn)隊(duì)列刪除。終端接收數(shù)據(jù)包隊(duì)列_> [x] -> [x+1]
LAST_SEND_SEQ: x
狀態(tài)說明最后終端發(fā)送的數(shù)據(jù)包經(jīng)過服務(wù)器確認(rèn)的序列號是X ;
服務(wù)器的處理邏輯和終端的機(jī)制相同。由于用戶主動(dòng)進(jìn)行接入點(diǎn)切換,或者終端系統(tǒng)監(jiān)測到當(dāng)前連接方式發(fā)生網(wǎng)絡(luò)故障,需要切換到其他接入點(diǎn)。斷開當(dāng)前網(wǎng)絡(luò)連接,并且把已發(fā)送待確認(rèn)隊(duì)列里面的數(shù)據(jù)包(例如上面的n+1序列號的包)按照序列號的順序移動(dòng)到帶發(fā)送隊(duì)列的最前面,然后刪除終端接收數(shù)據(jù)包隊(duì)列里面序列號大于LAST_SEND_SEQ的數(shù)據(jù)包(例如上面的x+1序列號的數(shù)據(jù)包)。根據(jù)重新選擇的APN接入方式連接網(wǎng)絡(luò),并且和服務(wù)器請求重新恢復(fù)狀態(tài)。終端接著發(fā)送帶發(fā)送隊(duì)列里面的數(shù)據(jù)包,服務(wù)器接著發(fā)送終端未確認(rèn)的數(shù)據(jù)包到終端。完成接入點(diǎn)的動(dòng)態(tài)切換,消息層實(shí)現(xiàn)數(shù)據(jù)透明的數(shù)據(jù)收發(fā)處理,應(yīng)用程序無感知。以上所述的實(shí)施例只是本發(fā)明的一種較佳的方案,并非對本發(fā)明作任何形式上的限制,在不超出權(quán)利要求所記載的技術(shù)方案的前提下還有其它的變體及改型。
權(quán)利要求
1.一種手持終端APN自適應(yīng)的無線接入方法,所述的手持終端上安裝提供網(wǎng)絡(luò)訪問接口的終端消息模塊,其特征在于所述的手持終端APN自適應(yīng)的無線接入方法,包括以下步驟 步驟一應(yīng)用程序調(diào)用終端消息模塊讀取用戶網(wǎng)絡(luò)設(shè)置文件,如果是采用WIFI方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟二、如果是采用NET直連方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟三、如果是采用WAP直連方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟四、如果是采用WAP代理方式連接網(wǎng)絡(luò)則跳轉(zhuǎn)步驟五; 步驟二 手持終端連接熱點(diǎn),終端消息模塊創(chuàng)建SOCKET然后連接至網(wǎng)絡(luò)服務(wù)器,手持終端與網(wǎng)絡(luò)服務(wù)器建立TCP連接,進(jìn)行數(shù)據(jù)收發(fā); 步驟三手持終端進(jìn)行NET網(wǎng)絡(luò)撥號,終端消息模塊創(chuàng)建SOCKET然后連接至網(wǎng)絡(luò)服務(wù)器,手持終端與網(wǎng)絡(luò)服務(wù)器建立TCP連接,進(jìn)行數(shù)據(jù)收發(fā); 步驟四手持終端進(jìn)行WAP網(wǎng)絡(luò)撥號,終端消息模塊創(chuàng)建SOCKET然后連接運(yùn)營商的網(wǎng)關(guān),網(wǎng)關(guān)連接成功后,手持終端發(fā)送CONNECT命令包至運(yùn)營商網(wǎng)關(guān),請求連接目的服務(wù)器,服務(wù)器應(yīng)答成功后即建立WAP直連連接,手持終端向運(yùn)營商網(wǎng)關(guān)發(fā)送TCP數(shù)據(jù),運(yùn)營商網(wǎng)關(guān)作為SOCKET代理服務(wù)器轉(zhuǎn)發(fā)數(shù)據(jù)到目的服務(wù)器,手持終端以此方式與目的服務(wù)器進(jìn)行數(shù)據(jù)交互; 步驟五手持終端進(jìn)行WAP網(wǎng)絡(luò)撥號,終端消息模塊創(chuàng)建SOCKET然后連接運(yùn)營商的網(wǎng)關(guān),網(wǎng)關(guān)連接成功之后,進(jìn)行WAP代理,手持終端發(fā)送HTTP POST請求給運(yùn)營商網(wǎng)關(guān),請求將數(shù)據(jù)轉(zhuǎn)發(fā)至目的服務(wù)器,目的服務(wù)器通過響應(yīng)該P(yáng)OST請求的方式進(jìn)行數(shù)據(jù)收發(fā)。
2.根據(jù)權(quán)利要求I所述的手持終端APN自適應(yīng)的無線接入方法,其特征在于所述的手持終端APN自適應(yīng)的無線接入方法中進(jìn)行數(shù)據(jù)收發(fā)時(shí)采用異步方式處理網(wǎng)絡(luò)數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的手持終端APN自適應(yīng)的無線接入方法,其特征在于所述的異步方式處理網(wǎng)絡(luò)數(shù)據(jù)的方法包括發(fā)送邏輯、接收邏輯和終端消息模塊內(nèi)部消息處理邏輯三部分邏輯 發(fā)送邏輯應(yīng)用程序調(diào)用終端消息模塊,通過句柄發(fā)送消息包,終端消息模塊轉(zhuǎn)發(fā)消息包至服務(wù)器,發(fā)送結(jié)果通過發(fā)送數(shù)據(jù)的形式通知調(diào)用終端消息模塊的應(yīng)用程序; 接收邏輯終端消息模塊接收到網(wǎng)絡(luò)數(shù)據(jù)包時(shí),拆分網(wǎng)絡(luò)數(shù)據(jù)包,根據(jù)數(shù)據(jù)包的目的模塊號進(jìn)行分發(fā),應(yīng)用程序調(diào)用目的模塊的處理函數(shù)進(jìn)行處理數(shù)據(jù); 模塊內(nèi)部消息處理邏輯終端消息模塊創(chuàng)建一個(gè)定時(shí)器,定時(shí)器完成一個(gè)計(jì)數(shù)循環(huán)后,檢測一次消息發(fā)送隊(duì)列,如果有需要發(fā)送的數(shù)據(jù)包則先發(fā)送數(shù)據(jù)包,然后再嘗試從網(wǎng)絡(luò)上收取數(shù)據(jù),終端消息模塊如果收取到一個(gè)完整的數(shù)據(jù)包,則解析這個(gè)數(shù)據(jù)包頭,根據(jù)包頭的信息分發(fā)到相應(yīng)的模塊,也即調(diào)用該模塊的消息處理函數(shù)來處理消息體。
4.根據(jù)權(quán)利要求3所述的手持終端APN自適應(yīng)的無線接入方法,其特征在于數(shù)據(jù)包頭包含當(dāng)前發(fā)送數(shù)據(jù)的序列號,序列號是一個(gè)每次遞增的正整數(shù),終端和接入服務(wù)器之間通過數(shù)據(jù)包的序列號機(jī)制來保證數(shù)據(jù)包的順序和可靠性,一方發(fā)現(xiàn)接受到的數(shù)據(jù)包序列號不連續(xù),則判定為數(shù)據(jù)丟失,發(fā)現(xiàn)數(shù)據(jù)丟失的一方會立即斷開網(wǎng)絡(luò)連接,并且請求進(jìn)行重新連接,等重新建立連接之后在此發(fā)送之前為確認(rèn)的數(shù)據(jù)包,雙方繼續(xù)進(jìn)行通訊。
5.根據(jù)權(quán)利要求I所述的手持終端APN自適應(yīng)的無線接入方法,其特征在于如果用戶主動(dòng)進(jìn)行接入點(diǎn)切換,或者終端系統(tǒng)監(jiān)測到當(dāng)前連接方式發(fā)生網(wǎng)絡(luò)故障,需要切換到其他接入點(diǎn)時(shí),終端斷開當(dāng)前網(wǎng)絡(luò)連接,并且把已發(fā)送待確認(rèn)隊(duì)列里面的數(shù)據(jù)包按照序列號的順序移動(dòng)到帶發(fā)送隊(duì)列的最前面,然后刪除終端接收數(shù)據(jù)包隊(duì)列里面序列號大于最后發(fā) 出的數(shù)據(jù)包,根據(jù)重新選擇接入方式連接網(wǎng)絡(luò),并且和服務(wù)器請求重新恢復(fù)狀態(tài),終端接著發(fā)送帶發(fā)送隊(duì)列里面的數(shù)據(jù)包,服務(wù)器接著發(fā)送終端未確認(rèn)的數(shù)據(jù)包到終端,完成接入點(diǎn)的動(dòng)態(tài)切換,實(shí)現(xiàn)數(shù)據(jù)透明的數(shù)據(jù)收發(fā)處理。
全文摘要
本發(fā)明涉及一種手持終端APN自適應(yīng)的無線接入方法。本發(fā)明可以很好地解決缺少一種能夠選擇最經(jīng)濟(jì)套餐進(jìn)行網(wǎng)絡(luò)連接方法的問題,其技術(shù)方案要點(diǎn)是,應(yīng)用程序調(diào)用終端消息模塊讀取用戶網(wǎng)絡(luò)設(shè)置文件;終端消息模塊創(chuàng)建SOCKET然后發(fā)送CONNECT命令包至網(wǎng)絡(luò)服務(wù)器;終端消息模塊創(chuàng)建SOCKET然后連接運(yùn)營商的網(wǎng)關(guān),進(jìn)行WAP直連,手持終端發(fā)送CONNECT命令包至運(yùn)營商網(wǎng)關(guān),請求連接目的服務(wù)器,手持終端向運(yùn)營商網(wǎng)關(guān)發(fā)送TCP數(shù)據(jù),運(yùn)營商網(wǎng)關(guān)作為SOCKET代理服務(wù)器轉(zhuǎn)發(fā)到目的服務(wù)器;終端消息模塊創(chuàng)建SOCKET然后連接運(yùn)營商的網(wǎng)關(guān),進(jìn)行WAP代理,手持終端發(fā)送HTTPPOST請求給運(yùn)營商網(wǎng)關(guān),請求將數(shù)據(jù)轉(zhuǎn)發(fā)至目的服務(wù)器。本發(fā)明根據(jù)自身套餐的資費(fèi)情況,選擇最經(jīng)濟(jì)套餐進(jìn)行網(wǎng)絡(luò)連接。
文檔編號H04L29/08GK102710743SQ20121011028
公開日2012年10月3日 申請日期2012年4月16日 優(yōu)先權(quán)日2012年4月16日
發(fā)明者王建 申請人:杭州斯凱網(wǎng)絡(luò)科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1