[發明專利]基于智能家居控制系統的NAT穿透方法有效
| 申請號: | 201510080442.6 | 申請日: | 2015-02-13 |
| 公開(公告)號: | CN104660728B | 公開(公告)日: | 2018-01-19 |
| 發明(設計)人: | 徐曉灼;王志新 | 申請(專利權)人: | 上海交通大學 |
| 主分類號: | H04L29/12 | 分類號: | H04L29/12 |
| 代理公司: | 上海漢聲知識產權代理有限公司31236 | 代理人: | 郭國中 |
| 地址: | 200240 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 智能家居 控制系統 nat 穿透 方法 | ||
技術領域
本發明涉及電氣工程領域,具體地,涉及一種基于智能家居控制系統的NAT穿透方法。
背景技術
網絡地址轉換技術(Network Address Translation,NAT)的基本功能是用一個或幾個IP地址來實現一個內網中的所有主機和公網中主機的通信,使一個機構內的所有用戶通過有限的數個(或一個)合法IP地址訪問Internet,不僅可以有效節省Internet中有效IP的數量,也可以提高網絡通信的安全性。
智能家居控制系統包括服務器、客戶端、第三方服務器與硬件模塊等。其中,客戶端APP必須與用戶的服務器進行網絡通信才能對控制相關設備的運行。在服務器端有公網IP或者服務器端與客戶端在同一局域網中時,可以順利地利用網絡進行通訊。但是如果服務器端沒有公網IP并且與客戶端不在同一個局域網中,那么服務器端是不能被客戶端直接連接的。要在這種情況下實現通訊,就要實現有效的NAT穿透。然而,隨著IPv4地址的枯竭,很多地方的網絡運營商選擇把大量用戶介入到自己的內網中,再通過運營商級NAT讓這些用戶共享一個或多個公網IP進行上網,因此為了保證家中的智能家居控制系統能在大部分情況下正常工作,就必須解決NAT穿透問題。常規NAT穿透常常有穿透成功率低、穿透過程復雜的問題。
發明內容
針對現有技術中的缺陷,本發明的目的是提供一種基于智能家居控制系統的NAT穿透方法,其穿透成功率高,穿透過程簡單。
根據本發明的一個方面,提供一種基于智能家居控制系統的NAT穿透方法,其特征在于,包括以下步驟:
步驟一,客戶端直接連接服務器;若服務器的IP位于公網IP中,則直接連接成功,否則客戶端連接失敗,則需要繼續進行步驟二,借助第三方服務器的協助;
步驟二,客戶端請求第三方服務器的協助;
步驟三,服務器往客戶端與第三方服務器連接所用的端口發一個數據包,然后往客戶端的五百個不同端口發各發一個數據包;
步驟四,第三方服務器通知客戶端,服務器已向客戶端的五百個端口發完數據包,客戶端確認收到信息后,向服務器與第三方服務器連接所用的端口發多個數據包;若服務器和客戶端都在錐形NAT或者服務器在不限制端口的錐形NAT后,此時連接成功,然后用五百個不同端口往服務器與第三方服務器連接所用的端口發數據包,并向第三方服務器請求服務器的IP與端口號;
步驟五,服務器收到客戶端的數據包后,如果客戶端收到第三方服務器回應,第三方服務器將服務器的IP和端口號回復給客戶端,客戶端則記錄下收到回復的端口,使用該端口與服務器通訊;如果客戶端未收到第三方服務器回應,則認為信息丟失,客戶端重新向第三方服務器發送協助請求,從步驟二開始重復進行。
優選地,所述第三方服務器指的是一個有公網IP的用于協助雙方進行NAT穿透的服務器,客戶端須保證必要時連接第三方服務器的可靠性。
優選地,所述第三方服務器在正常工作的條件下處于開啟狀態,時刻準備接收客戶端與服務器信息;當第三方服務器接收到一條信息后,首先判斷這條信息是否是客戶端發送的協助請求,若是,則回復客戶端已收到協助請求,并將客戶端的IP地址和端口號發送給服務器;若判斷此條信息不是協助請求,則需進一步判斷此條信息是否為服務器發送數據包完成后的信息,若是,則回復服務器已收到該消息,并通知相應的客戶端,服務器已向它的五百個端口發完數據包,客戶端可以繼續進行下一步操作;若不是,則最后判定該信息是否是客戶端請求返回服務器IP和端口號的信息,若是,則向客戶端發送服務器的IP和端口號,若不是,則判定此信息為無用信息,棄置并重新開始接收消息。
與現有技術相比,本發明具有如下的有益效果:
一,穿透成功率高。經計算,對于服務器端在端口限制錐形NAT,客戶端在對稱型NAT后的情況能達到97.8%的理論穿透成功率。對于更為容易穿透的情況,服務器和客戶端均處在錐形NAT后,或服務器端處在不限制端口的錐形NAT后,穿透成功率可以達到100%。
二,穿透時間短,效率高。客戶端與服務器端工作正常、網絡條件良好的的情況下,NAT穿透在幾十至幾百毫秒內即可完成。
三,在最常見的客戶端和服務器端均處在同一公網IP的情況下,不需要借助第三方服務器的協助,穿透過程快速、直接、簡單且有效,數據傳輸穩定且基本無延時。
附圖說明
通過閱讀參照以下附圖對非限制性實施例所作的詳細描述,本發明的其它特征、目的和優點將會變得更明顯:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海交通大學,未經上海交通大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510080442.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種多功能移動終端
- 下一篇:并行收發構建系統及其構建方法





