[發明專利]針對TCP的NAT穿越方法、系統、第三方服務器X、以及客戶端在審
| 申請號: | 201310382234.2 | 申請日: | 2013-08-28 |
| 公開(公告)號: | CN104427008A | 公開(公告)日: | 2015-03-18 |
| 發明(設計)人: | 初鵬飛;譚磊 | 申請(專利權)人: | 北大方正集團有限公司;方正信息產業控股有限公司;北京北大方正電子有限公司 |
| 主分類號: | H04L29/12 | 分類號: | H04L29/12;H04L29/06 |
| 代理公司: | 北京天昊聯合知識產權代理有限公司 11112 | 代理人: | 羅建民;鄧伯英 |
| 地址: | 100871 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 針對 tcp nat 穿越 方法 系統 第三 服務器 以及 客戶端 | ||
技術領域
本發明涉及通信領域,特別涉及一種針對TCP的NAT穿越方法、系統、第三方服務器X、以及客戶端。
背景技術
目前NAT設備的廣泛存在,給處于不同內網中的主機之間的通信帶來了很多障礙,其中的主要原因是NAT不允許公網主機主動訪問內網主機,這就使得公網IP地址不能主動訪問NAT之后的主機,而處于不同NAT之后的主機間的互相訪問更是困難重重。因此,要在不同的NAT之間進行有效的P2P通信,就必須要有一種方法來穿越NAT。
目前比較成熟并且使用較多的是針對UDP的NAT穿越方法。然而,針對UDP的NAT穿越方法在使用中存在如下問題:其一、防火墻一般僅允許通過事先打開的特定協議和端口,從而使得數據可靠性不能得到直接保證,必須在應用層加入額外處理;其二;有些防火墻還關閉了UDP端口,這就造成了連接服務在這些情況下得不到保證,導致通信的無法進行,其三;在網絡本已擁塞的情況下,UDP連接方法將繼續向網絡發送大量的數據包,因此會加重擁塞,甚至造成整個通信網絡的癱瘓。
因此,對于NAT設備的通信,需要一種針對TCP的NAT穿越方法,從而解決上述問題。
發明內容
本發明提供一種針對TCP的NAT穿越方法、系統、第三方服務器X、以及客戶端,用于解決現有技術中NAT設備的通信時采用UDP連接方法會加重網絡擁塞問題。
為實現上述目的,本發明提供了一種針對TCP的NAT穿越方法,所述方法包括:
源客戶端向第三方服務器X發送連接請求消息,所述連接請求消息用于請求與目標客戶端進行連接;
第三方服務器X在接收到所述連接請求消息之后,將源客戶端對應的源NAT設備的端點信息發送給目標客戶端,并通知目標客戶端向源客戶端對應的源NAT設備發起TCP連接;
目標客戶端向源NAT設備發起TCP連接;
第三方服務器X向源客戶端發送目標客戶端對應的目標NAT設備的端點信息;
源客戶端在收到目標NAT設備的端點信息之后,向目標NAT設備發起TCP連接;
目標NAT設備對源客戶端發起的TCP連接進行檢查,并在檢查通過后允許之后將來自源NAT設備的分組發送給目標客戶端;
其中,源客戶端向目標NAT設備發起TCP連接時的入站分組的源端點信息與目標客戶端向源NAT設備發起TCP連接時的出站分組的目標端點信息相同;源客戶端向目標NAT設備發起TCP連接時的入站分組的目標端點信息與目標客戶端向源NAT設備發起TCP連接時的出站分組的源端點信息相同。
優選地,源客戶端和目標客戶端均為在線的客戶端,源客戶端和目標客戶端在上線時,分別與第三方服務器X建立第一條TCP連接,其中,源客戶端通過源NAT設備與第三方服務器X連接,目標客戶端通過目標NAT設備與第三方服務器X連接,以使得所述第三方服務器X分別記錄源客戶端和目標客戶端的注冊信息。
優選地,所述目標客戶端向源NAT設備發起TCP連接的步驟包括;
目標客戶端與第三方服務器X建立第二條TCP連接;
目標客戶端關閉與第三方服務器X建立的所述第二條TCP連接,并通過與第三方服務器X之間的第一條TCP連接發送關閉消息;
第三方服務器X接收到目標客戶端發送的關閉消息之后,記錄關閉的第二條TCP連接對應的端點信息;
目標客戶端采用端口重用技術重用所述目標客戶端與第三方服務器之間的所述第二條TCP連接的端口號,并采用該端口號向源NAT設備發起TCP連接;
在目標客戶端向源NAT設備發起TCP連接之后,目標客戶端向第三方服務器X發送就緒消息。
優選地,所述源客戶端向第三方服務器X發送連接請求消息之前,還包括:源客戶端與第三方服務器X建立第二條TCP連接;
所述源客戶端對應的源NAT設備的端點信息為源客戶端與第三方服務器X之間的所述第二條TCP連接對應的端點信息;
所述源客戶端在收到目標NAT設備的端點信息之后,向目標NAT設備發起TCP連接的步驟包括;源客戶端關閉與第三方服務器X之間的所述第二條TCP連接;源客戶端采用端口重用技術重用上述第二條TCP連接的端口號,并向目標NAT設備發起TCP連接。
為實現上述目的,本發明還提供了一種針對TCP的NAT穿越方法,所述方法包括:
接收源客戶端所發送的連接請求消息,所述連接請求消息用于請求與所述目標客戶端進行連接;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北大方正集團有限公司;方正信息產業控股有限公司;北京北大方正電子有限公司,未經北大方正集團有限公司;方正信息產業控股有限公司;北京北大方正電子有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310382234.2/2.html,轉載請聲明來源鉆瓜專利網。





