麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種移動終端通過手機上網的方法及系統的制作方法

文檔序號:7887122閱讀:215來源:國知局

專利名稱::一種移動終端通過手機上網的方法及系統的制作方法
技術領域
:本發明涉及移動通信領域,尤其涉及的是一種移動終端通過手機上網的方法及系統。
背景技術
:現在手機上網已經成為了大眾生活的一部分,人們可以通過手機瀏覽新聞,在線收聽音樂或者觀看視頻等等,然而對于一些沒有開通網絡服務的手機來說,因為網絡流量的影響而不能上網,而一部手機亦不能通過其他手機聯網操作,并且現行的電腦通過手機上網都是通過PC撥號的形式,此時需要再PC上安裝相應的撥號軟件,PC撥號的時候手機將無法進行網絡連接。因此,現有技術還有待于改進和發展。
發明內容本發明要解決的技術問題在于,針對現有技術的上述缺陷,提供一種移動終端通過手機上網的方法,使帶有WIFI功能的移動終端實現NAT功能,通過一部聯網手機實現同時上網。本發明解決技術問題所采用的技術方案如下一種移動終端通過手機上網的方法,其中,包括步驟A、在聯網手機預先建立一個用于標記網絡地址映射關系的連接管理哈希表,所述連接管理哈希表中的哈希值等于移動終端的源地址、協議類型、源端口和目的端口的二進制之和取模表長;B、移動終端通過WIFI與一聯網手機建立點對點的通信連接,并向所述聯網手機發送連接目的服務器的數據包;C、所述聯網手機在網絡層提取移動終端發送的數據包中的元素組,并將所述元素組保存在一元組結構中,所述元素組包括數據包的源地址、源端口、協議類型、目的地址及目的端□;D、所述聯網手機對所述元素組進行源地址NAT處理,將數據包的源地址轉換為手機撥號上網的IP地址,并分配一撥號上網的端口;E、所述聯網手機根據處理后的元素組信息,連接到目的服務器進行通信。所述的方法,其中,所述步驟C和D之間還包括所述聯網手機根據所述元素組查找連接管理哈希表,判斷所述連接管理哈希表中是否存在所述移動終端和目的服務器的連接結構,如果在所述連接管理哈希表中不存在此連接結構,則定義所述數據包為第一數據包,并在哈希表中建立一個新的連接結構。所述的方法,其中,所述聯網手機根據所述元素組查找連接管理哈希表,判斷所述連接管理哈希表中是否存在所述移動終端和目的服務器的連接結構時,如果在所述連接管理哈希表中存在該連接結構,則提取所述連接結構表示的連接管理信息,并監測當前網絡是否要進行FTP擴展的監測,更新當前的連接管理狀態,并對數據包進行NAT處理,實現移動終端和目的服務器的通信。所述的方法,其中,所述步驟D還進一步包括如下步驟將經過源地址NAT處理后的元素組以元組結構的形式保存在所述連接管理哈希表中。所述的方法,其中,若所述元素組中的協議為FTP協議,則根據所述新的連接結構判斷所述數據包是否是其他FTP控制鏈的數據連接,如果是則對數據包中的元素組進行目的地址NAT處理。所述的方法,其中,所述目的服務器在向移動終端發送返回數據包時,首先將返回數據包發送給所述聯網手機,所述聯網手機對所述返回數據包中的元素組進行提取,并查找連接管理哈希表找到相應的元組結構,根據所述元組結構修改返回數據包,并將修改后的返回數據包發送給移動終端。一種移動終端通過手機上網的系統,其中,包括移動終端、及聯網手機,移動終端通過WIFI與一聯網手機建立點對點的通信連接,并向所述聯網手機發送連接目的服務器的數據包;所述聯網手機用于在網絡層提取移動終端發送的數據包中的元素組,并將所述元素組保存在一元組結構中;所述元素組包括數據包的源地址、源端口、協議類型、目的地址及目的端口;并對所述元素組進行源地址NAT處理,將數據包的源地址轉換為手機撥號上網的IP地址,并分配一撥號上網的端口;以及根據處理后的元素組信息,連接到目的服務器進行通信;所述目的服務器用于與所述移動終端和所述聯網手機進行通信;所述聯網手機包括哈希表建立管理模塊,用于預先建立一個用于標記網絡地址映射關系的連接管理哈希表,所述連接管理哈希表中的哈希值等于移動終端的源地址、協議類型、源端口和目的端口的二進制之和取模表長。所述移動終端通過手機上網的系統,其中,所述聯網手機還用于根據所述元素組查找連接管理哈希表,判斷所述連接管理哈希表中是否存在所述移動終端和目的服務器的連接結構,如果在所述連接管理哈希表中不存在此連接結構,則定義所述數據包為第一數據包,并在哈希表中建立一個新的連接結構。所述移動終端通過手機上網的系統,其中,所述聯網手機還用于如果在所述連接管理哈希表中存在所述連接結構,則提取所述連接結構表示的連接管理信息,并監測當前網絡是否要進行FTP擴展的監測,更新當前的連接管理狀態,并對數據包進行NAT處理,實現移動終端和目的服務器的通信。本發明所提供的移動終端通過手機上網的方法及系統,由于采用NAT技術,達到了通過一手機作為網關,另一臺帶有WIFI的手機或者電腦通過網關手機上網的功能,又由于兩臺設備使用同一個IP地址進行上網,所有網絡流量都產生于網關手機,不會對其他設備帶來任何流浪費用,而且本發明通過動態創建的形式對數據包構造哈希表,大大加快了數據包的查找速度,加快了處理速度。圖1是本發明的移動終端通過手機上網的方法流程圖。圖2是本發明以FTP連接為例的網絡結構示意圖。圖3是本發明的移動終端通過手機上網方法中哈希表的構造示意圖。圖4是本發明的移動終端通過手機上網的系統結構示意圖。具體實施例方式為使本發明的目的、技術方案及優點更加清楚、明確,以下參照附圖并舉實施例對本發明進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。本發明的主要思想是將移動終端通過WIFI無線連接方式與上網手機連接,上網手機作為網關路由使用,利用TCP/IP協議工作原理,在數據包到達上網手機的網絡層時,對數據包中的包括源地址、源端口、協議、目的地址及目的端口的元素信息進行處理,動態創建一個哈希表用于網絡連接的查找,并對數據包進行NAT處理,使移動終端通過上網手機的外網IP地址實現與上網手機同時上網的功能。NAT(NetworkAddressTranslation)網絡地址轉換是把IP數據報文的一個地址轉換為另外一個地址,讓多個IP地址共享一個IP地址進行連接。本發明提供了一種移動終端通過手機上網的方法,如圖1所示,包括步驟步驟S100、在聯網手機預先建立一個用于標記網絡地址映射關系的連接管理哈希表,所述連接管理哈希表中的哈希值等于移動終端的源地址、協議類型、源端口和目的端口的二進制之和對表長取模,在本實施例中是對移動終端的源地址、協議類型、源端口和目的端口的二進制先求和,再根據哈希表的表長進行取模操作,哈希值即等于取模后的值步驟S200、移動終端通過WIFI與一聯網手機建立點對點的通信連接,并向所述聯網手機發送連接目的服務器的數據包。步驟S300、所述聯網手機在網絡層提取移動終端發送的數據包中的元素組,并將所述元素組保存在一元組結構中;所述元素組包括數據包的源地址、源端口、協議類型、目的地址及目的端口。步驟S400、所述聯網手機對所述元素組進行源地址NAT處理,將數據包的源地址轉換為手機撥號上網的IP地址,并分配一撥號上網的端口。其中,將經過源地址NAT處理后的元素組以元組結構的形式保存在所述連接管理哈希表中。步驟S500、所述聯網手機根據處理后的元素組信息,連接到目的服務器進行通信。其中,在步驟S300和步驟S400之間還包括,所述聯網手機根據所述元素組查找連接管理哈希表,判斷所述連接管理哈希表中是否存在所述移動終端和目的服務器的連接結構,如果在所述連接管理哈希表中不存在此連接結構,則定義所述數據包為第一數據包,并在哈希表中建立一個新的連接結構;而如果在所述連接管理哈希表中存在所述連接結構,則提取所述連接結構表示的連接管理信息,并監測當前網絡是否要進行FTP擴展的監測,更新當前的連接管理狀態,并對數據包進行NAT處理,實現移動終端和目的服務器的通信。進一步地,若所述元素組中的協議為FTP協議,則根據所述新的連接結構判斷所述數據包是否是其他FTP控制鏈的數據連接,如果是則對數據包中的元素組進行目的地址6NAT處理。在所述移動終端與目的服務器建立通信連接后,所述目的服務器在向移動終端發送返回數據包時,首先將返回數據包發送給所述聯網手機,所述聯網手機對所述返回數據包中的元素組進行提取,并查找連接管理哈希表找到相應的元組結構,根據所述元組結構修改返回數據包,并將修改后的返回數據包發送給移動終端。結合上述本發明的方法,下面以FTP連接為例,對整個聯網實現過程進行具體的分析,如圖2所示的聯網構造示意圖。首先,定義上網手機A撥號上網的IP地址為117.136.12.201,WIFI網卡的IP地址為192.168.0.1,FTP服務器的地址為202.96.1.5,如果另一將上網手機A作為網關的IP地址為192.168.0.2的手機B需要訪問IP地址為202.96.1.5的服務器,定義源端口為2345,目的端口為21,那么,當此數據包通過手機點對點網絡連接從手機B發向手機A,當到達手機A的網絡層時,手機A提取當前數據包的元素組,組成一個新的tuple元組結構,那么這個tuple元組結構的IP組成為tuple,strcip=192.168.0.2tuple.strport_id=2345tuple,dstip=202.96.1.5tuple,dstport=21tuple,proto=tcp。在此處通過此元素組的內容去查找連接管理哈希表中當前存在的連接管理,根據上述IP組成,無法找到相應的連接,那么首先為該數據包分配一個未經使用的連接管理表的索引,并查找這個連接是否是其他連接的擴展鏈。因為無法找到擴展鏈的信息,所以不需要進行目的地址NAT(DNAT)處理,而由于該數據包是從WIFI口發送來的,對數據包做源地址NAT(SNAT)處理,將源地址192.168.0.2轉換為手機A的撥號上網地址117.136.12.201,并為該數據包分配一個傳輸端口7890,那么此包發送到網絡應該是117.136.12.201:7890-—202.96.1.5:21,此時,回應方向的tuple元組結構應該是reply_tuple.strip=202.96.1.5reply_tuple.strport_id=21reply_tuple.dstip=117.136.12.201reply_tuple.dstport=7890.Reply_tuple.proto=tcp。之后,將2個tuple元組結構存入到連接管理哈希表中,并修改此數據包內容,把數據包改為117.136.12.201:7890——-202.96.1.5:21。定義第二個數據包(202.96.1.5:21-—117.136.12.201:7890syn+ack)也即是FTP服務器向手機B發送數據包,FTP服務器首先將該數據包發送給上網手機A,上網手機A在收到此數據包后提取其中的元素組,組成一個新的tuple元組結構,表示為tuple,strcip=202.96.1.5tuple.strport_id=21tuple,dstip=117.136.12.201tuple,dstport=7890tuple,proto=tcp。上網手機A根據該tuple元組結構查找連接管理哈希表,可以找到與之相對應的tuple元組結構,再檢測里面是否含有連接內容,而在該元組結構中沒有連接內容,則根據根據前面的NAT信息修改此數據包為202.96.1.5:21—192.168.0.22345,并將該數據包發送給手機B,然后更新該連接的內容。進一步地,如果用戶要從FTP服務器下載文件,FTP服務器會給用戶發送一段內容,比如說227EnteringPassiveMode(202,96,4,1,5,89)。則在流程中處理如下上述第二個數據包(202.96.1.5:21-—117.136.12.201:7890syn+ack)由FTP服務器發送給上網手機A,上網手機A收到該數據包后提取其中的元素組,并構造一tuple元組結構,表示如下tuple,strcip=202.96.1.5tuple.strport_id=21tuple,dstip=117.136.12.201tuple,dstport=7890tuple,proto=tcp上網手機A根據該tuple元組結構查找連接管理哈希表,能夠找到相應的tuple元組結構,并檢測到當前數據包是應答方向的數據包,并且當前連接是FTP有擴展鏈的連接,那么匹配字符串227和PROT字段,提取出新的連接的IP地址和端口,此處提取出來的元組結構為New_tuple.dstip=202.96.1.5New_tuple.port=5*256+89=1369New_tuple.srcip=192.168.0.2New_tuple.proto=tcp。從擴展鏈結構表中提取一個空閑的連接分配給此條連接,并把2條連接關聯起來。進一步地,又一數據包從手機B發送給FTP服務器,表示為192.168.0.2:8989——^202.96.1.5:1369,則上網手機A收到該數據包后提取其中的元素組,并構造一tuple元組結構,表示如下tuple,strcip=192.168.0.2tuple.strport_id=8989tuple,dstip=202.96.1.5tuple,dstport=1369tuple,proto=tcp。在此處通過此元素組的內容去查找連接管理哈希表中當前存在的連接管理,由于無法找到相應的連接,則為此分配一個未經使用的連接管理表的index索引,并檢查此連接是否是其他連接的擴展鏈,這里根據此元素組查找擴展鏈時,因為前面已經把信息加入到擴展連接管理哈希表中,所以能夠找到此連接是其他連接的擴展鏈,然后把這條連接跟前面的由FTP服務器向手機B傳輸下載數據包時建立的連接綁定,由于此連接為擴展鏈條,讀取主鏈表的NAT信息,如果連接是PORT類型,則得到DNAT的信息,因為該連接是227類型,所以根據主鏈表的信息不需要做DNAT處理,此時檢測到此數據包是從WIFI口發上來的,則進行SNAT處理,并再次讀取主鏈表的信息,得到主鏈表的NAT信息,并替換此連接的信息,并根據端口是否使用調整一個新的端口,而后續處理與第一數據包的處理相同。進一步地,下面對本發明中的連接管理哈希表的建立及連接管理過程做具體的分析。頭部哈希表(hash表)構造typedef—packedunionhash_table{Struct{U32mutex:10;U32next:22;};U32value;}u_hash_table;哈希表的大小為MAX_CONNTRACK,Hash值=(發起方的源IP+發起方的源IP協議+源端口+目的端口)%表的條目數(即表長),協議是ICMP協議時,目的端口采用協議類型和代碼來取值。該連接管理信息的hash表為空列,結果為u_ip_COrmtraCk_tuple,稱之為節點鏈表,其大小為MAX_C0NNTRAC*2。如3圖所示的哈希表構造圖,頭節點為一個hash表,存放u_ip_COrmtraCk_tuple的為一個大數組結構,大小為hash表的2倍。當有數據包來的時候,首先分配一個空的u_ip_COrmtraCk_tuple空間,然后把頭hash表的響應值的next指向u_ip_c0rmtrack_tuple數組的當前位置。并把回應方向的u_ip_conntrack_tuple放置在原始方向的位置加上MAX_C0NNTRACK后的位置,把回應方向的HASH頭節點的next指針指向此節點;當有回應方向的數據過來時候,根據頭hash的next就能找到這個回應節點并且通過回應節點減去MAX_C0NNTRACK就能找到原始節點,得到需要轉換的NAT信息。通過頭hash的next就能得到next=節點的hash值,那么這個數據包就是原始方向的數據包,如果頭hash的next的存放位置的hash值跟next不相同,那么這個數據包就是回應方向的數據包。本發明采用哈希表的方式,動態添加節點,可以大大減少沖突鏈的查找,有別于傳統的雙向鏈表實現的一個一個查找的實現,極大地提高了處理速度。基于上述本發明提供的移動終端通過手機上網的方法,本發明還提供了一種移動終端通過手機上網的系統,其系統結構示意圖如圖4所示,包括移動終端41、及聯網手機42和目的服務器43;移動終端41通過WIFI與聯網手機42建立點對點的通信連接,并向所述聯網手機42發送連接目的服務器43的數據包;所述聯網手機42用于在網絡層提取移動終端41發送的數據包中的元素組,并將所述元素組保存在一元組結構中;所述元素組包括數據包的源地址、源端口、協議類型、目的地址及目的端口;并對所述元素組進行源地址NAT處理,將數據包的源地址轉換為手機撥號上網的IP地址,并分配一撥號上網的端口;以及根據處理后的元素組信息,連接到目的服務器43進行通信。所述聯網手機42還包括哈希表建立管理模塊421,用于預先建立一個用于標記網絡地址映射關系的連接管理哈希表,所述連接管理哈希表中的哈希值等于移動終端的源地址、協議類型、源端口和目的端口的二進制之和。所述目的服務器43用于與所述移動終端41和所述聯網手機42進行通信。其中,所述聯網手機42還用于根據所述元素組查找連接管理哈希表,判斷所述連接管理哈希表中是否存在所述移動終端和目的服務器的連接結構,如果在所述連接管理哈希表中不存在此連接結構,則定義所述數據包為第一數據包,并在哈希表中建立一個新的連接結構。所述聯網手機42還用于如果在所述連接管理哈希表中存在所述連接結構,則提取所述連接結構表示的連接管理信息,并監測當前網絡是否要進行FTP擴展的監測,更新當前的連接管理狀態,并對數據包進行NAT處理,實現移動終端41和目的服務器43的通fn°本發明所提供的移動終端通過手機上網的方法及系統,將移動終端通過WIFI無線連接方式與上網手機連接,上網手機作為網關路由使用,利用TCP/IP協議工作原理,在數據包到達上網手機的網絡層時,對數據包中的包括源地址、源端口、協議、目的地址及目的端口的元素信息進行處理,動態創建一個哈希表用于網絡連接的查找,并對數據包進行NAT處理,使移動終端通過上網手機的外網IP地址實現與上網手機同時上網的功能,由于兩臺設備使用同一個IP地址進行上網,所有網絡流量都產生于網關手機,不會對其他設備帶來任何流浪費用,而且本發明通過動態創建的形式對數據包構造哈希表,大大加快了數據包的查找速度,加快了處理速度。應當理解的是,本發明的應用不限于上述的舉例,對本領域普通技術人員來說,可以根據上述說明加以改進或變換,所有這些改進和變換都應屬于本發明所附權利要求的保護范圍。權利要求1.一種移動終端通過手機上網的方法,其特征在于,包括步驟A、在聯網手機預先建立一個用于標記網絡地址映射關系的連接管理哈希表,所述連接管理哈希表中的哈希值等于移動終端的源地址、協議類型、源端口和目的端口的二進制之和取模表長;B、移動終端通過WIFI與一聯網手機建立點對點的通信連接,并向所述聯網手機發送連接目的服務器的數據包;C、所述聯網手機在網絡層提取移動終端發送的數據包中的元素組,并將所述元素組保存在一元組結構中,所述元素組包括數據包的源地址、源端口、協議類型、目的地址及目的端□;D、所述聯網手機對所述元素組進行源地址NAT處理,將數據包的源地址轉換為手機撥號上網的IP地址,并分配一撥號上網的端口;E、所述聯網手機根據處理后的元素組信息,連接到目的服務器進行通信。2.根據權利要求1所述的方法,其特征在于,所述步驟C和D之間還包括所述聯網手機根據所述元素組查找連接管理哈希表,判斷所述連接管理哈希表中是否存在所述移動終端和目的服務器的連接結構,如果在所述連接管理哈希表中不存在此連接結構,則定義所述數據包為第一數據包,并在哈希表中建立一個新的連接結構。3.根據權利要求2所述的方法,其特征在于,所述聯網手機根據所述元素組查找連接管理哈希表,判斷所述連接管理哈希表中是否存在所述移動終端和目的服務器的連接結構時,如果在所述連接管理哈希表中存在該連接結構,則提取所述連接結構表示的連接管理信息,并監測當前網絡是否要進行FTP擴展的監測,更新當前的連接管理狀態,并對數據包進行NAT處理,實現移動終端和目的服務器的通信。4.根據權利要求1所述的方法,其特征在于,所述步驟D還進一步包括如下步驟將經過源地址NAT處理后的元素組以元組結構的形式保存在所述連接管理哈希表中。5.根據權利要求3所述的方法,其特征在于,若所述元素組中的協議為FTP協議,則根據所述新的連接結構判斷所述數據包是否是其他FTP控制鏈的數據連接,如果是則對數據包中的元素組進行目的地址NAT處理。6.根據權利要求1所述的方法,其特征在于,所述目的服務器在向移動終端發送返回數據包時,首先將返回數據包發送給所述聯網手機,所述聯網手機對所述返回數據包中的元素組進行提取,并查找連接管理哈希表找到相應的元組結構,根據所述元組結構修改返回數據包,并將修改后的返回數據包發送給移動終端。7.一種移動終端通過手機上網的系統,其特征在于,包括移動終端、及聯網手機,移動終端通過WIFI與一聯網手機建立點對點的通信連接,并向所述聯網手機發送連接目的服務器的數據包;所述聯網手機用于在網絡層提取移動終端發送的數據包中的元素組,并將所述元素組保存在一元組結構中;所述元素組包括數據包的源地址、源端口、協議類型、目的地址及目的端口;并對所述元素組進行源地址NAT處理,將數據包的源地址轉換為手機撥號上網的IP地址,并分配一撥號上網的端口;以及根據處理后的元素組信息,連接到目的服務器進行通信;所述目的服務器用于與所述移動終端和所述聯網手機進行通信;所述聯網手機包括哈希表建立管理模塊,用于預先建立一個用于標記網絡地址映射關系的連接管理哈希表,所述連接管理哈希表中的哈希值等于移動終端的源地址、協議類型、源端口和目的端口的二進制之和取模表長。8.根據權利要求7所述移動終端通過手機上網的系統,其特征在于,所述聯網手機還用于根據所述元素組查找連接管理哈希表,判斷所述連接管理哈希表中是否存在所述移動終端和目的服務器的連接結構,如果在所述連接管理哈希表中不存在此連接結構,則定義所述數據包為第一數據包,并在哈希表中建立一個新的連接結構。9.根據權利要求8所述移動終端通過手機上網的系統,其特征在于,所述聯網手機還用于如果在所述連接管理哈希表中存在所述連接結構,則提取所述連接結構表示的連接管理信息,并監測當前網絡是否要進行FTP擴展的監測,更新當前的連接管理狀態,并對數據包進行NAT處理,實現移動終端和目的服務器的通信。全文摘要本發明公開了一種移動終端通過手機上網的方法,將移動終端通過WIFI無線連接方式與上網手機連接,上網手機作為網關路由使用,利用TCP/IP協議工作原理,在數據包到達上網手機的網絡層時,對數據包中的包括源地址、源端口、協議、目的地址及目的端口的元素信息進行處理,動態創建一個哈希表用于網絡連接的查找,并對數據包進行NAT處理,使移動終端通過上網手機的外網IP地址實現與上網手機同時上網的功能,由于兩臺設備使用同一個IP地址進行上網,所有網絡流量都產生于網關手機,不會對其他設備帶來任何流浪費用,而且本發明通過動態創建的形式對數據包構造哈希表,大大加快了數據包的查找速度,加快了處理速度。文檔編號H04L29/12GK102438331SQ20121000879公開日2012年5月2日申請日期2012年1月12日優先權日2012年1月12日發明者周丹申請人:惠州Tcl移動通信有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 铁岭市| 大方县| 广昌县| 镇沅| 萍乡市| 三门县| 咸阳市| 大悟县| 庆阳市| 木兰县| 孝感市| 滨海县| 广东省| 云林县| 白城市| 广安市| 万年县| 堆龙德庆县| 永川市| 岚皋县| 城市| 灌云县| 泸溪县| 马关县| 永年县| 开鲁县| 如皋市| 晋城| 赤峰市| 卓资县| 七台河市| 南阳市| 巴东县| 永州市| 博罗县| 定陶县| 乐平市| 衡水市| 台湾省| 西城区| 墨脱县|