[发明专利]针对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.vipzhuanli.com/pat/books/201310382234.2/2.html,转载请声明来源钻瓜专利网。