CN113037890A - 一种能够确保穿透对称型nat设备的方法及系统 - Google Patents

一种能够确保穿透对称型nat设备的方法及系统 Download PDF

Info

Publication number
CN113037890A
CN113037890A CN202110299087.7A CN202110299087A CN113037890A CN 113037890 A CN113037890 A CN 113037890A CN 202110299087 A CN202110299087 A CN 202110299087A CN 113037890 A CN113037890 A CN 113037890A
Authority
CN
China
Prior art keywords
udp
port
message
handshake server
equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110299087.7A
Other languages
English (en)
Inventor
张晋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN202110299087.7A priority Critical patent/CN113037890A/zh
Publication of CN113037890A publication Critical patent/CN113037890A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2517Translation of Internet protocol [IP] addresses using port numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提出了一种能够确保穿透对称型NAT设备的方法及系统,涉及计算机网络领域。一种能够确保穿透对称型NAT设备的方法包括:建立握手服务器并开放端口,第一设备及第二设备分别登录握手服务器;第二设备经TCP报文向握手服务器发送指向第一设备的连接申请报文;握手服务器验证报文合法性,然后通知第一设备做出连接准备。其能够确保穿透对称型NAT设备,实现不同NAT下的两台设备点对点的互联互通。此外本发明还提出了一种能够确保穿透对称型NAT设备的系统,包括:登陆模块、发送请求模块以及通知模块。

Description

一种能够确保穿透对称型NAT设备的方法及系统
技术领域
本发明涉及计算机网络领域,具体而言,涉及一种能够确保穿透对称型NAT设备的方法及系统。
背景技术
现有的NAT(英文:Network Address Translation,缩写:NAT,中文:网络掩蔽、IP掩蔽)技术缓解了IPV4数量的不足,但随之而来的问题是大幅度降低了设备之间的互通性。
随着近几年NAT技术的发展,对称型NAT的应用越来越广泛,这种类型的NAT虽然可对内网设备提供更安全的保护,但也使得不同NAT间的设备无法互通。例如:现阶段两个不同NAT内的内网设备无法直接实现点对点的互连,而现有的互连方案主要是由第三方公网设备作为流量中转服务器。这种方案虽可以满足点对点互连的需求,但是在实现大量用户互连的同时中转服务器的带宽压力会急剧上升,即用户数量与用户体验成反比。这种方案最大的缺点是成本非常高,用户点对点的流量经过中转后成倍上涨,极大的浪费网络带宽。同时由于用户数量上涨,服务器压力大幅攀升,使得带宽瓶颈一直处在中转服务器端,导致了点对点互连过程中网络带宽严重受限。
发明内容
本发明的目的在于提供一种能够确保穿透对称型NAT设备的方法,其能够确保穿透对称型NAT设备,实现不同NAT下的两台设备点对点的互联互通。避免数据流通过第三方服务器中转,大幅度减少网络带宽流量,同时提高连接速度。本发明涉及到的算法可在排除UDP丢包的前提下确保穿透对称型NAT。
本发明的另一目的在于提供一种能够确保穿透对称型NAT设备的系统,其能够运行一种能够确保穿透对称型NAT设备的方法。
本发明的实施例是这样实现的:
第一方面,本申请实施例提供一种能够确保穿透对称型NAT设备的方法,其包括建立握手服务器并开放端口,第一设备及第二设备分别登录握手服务器;第二设备经TCP报文向握手服务器发送指向第一设备的连接申请报文;握手服务器验证报文合法性,然后通知第一设备做出连接准备。
在本发明的一些实施例中,在上述握手服务器验证报文合法性,然后通知第一设备做出连接准备之后还包括:第一设备通过T的值判断两端类型并确定穿透方向;第一设备向握手服务器的预设端口及第二设备的预设端口依次发送UDP报文,并开启UDP侦听。
在本发明的一些实施例中,在上述并开启UDP侦听之后还包括:握手服务器的预设端口分别返回第一设备的外部UDP端口p1、p2给第一设备,第一设备将p1、p2与R经握手服务器告知第二设备。
在本发明的一些实施例中,上述还包括:第二设备根据p1、p2判断第一设备所在NAT的端口分配规则,并指定偏移量阈值K,此阈值为p1、p2偏移的最大值,根据端口偏移量T确定第一设备所在NAT的端口分配情况。
在本发明的一些实施例中,上述还包括:第一设备侦听到第二设备发送的UDP报文并回复确认消息报文,同时关闭UDP侦听并断开与握手服务器的连接。
在本发明的一些实施例中,上述还包括:第二设备侦听到第一设备的回复报文,同时关闭UDP侦听并断开与握手服务器的连接。
在本发明的一些实施例中,上述还包括:第一设备与第二设备建立UDP连接,通过应用层的UDP可靠传输协议建立可靠传输信道以实现文件和/或视频传输。
在本发明的一些实施例中,在上述握手服务器验证报文合法性,然后通知第一设备做出连接准备之后还包括:第一设备经判断两端都为对称型NAT,此时第一设备绑定端口R,遍历第二设备的UDP端口并发送UDP报文,同时开始UDP侦听;第二设备遍历绑定本端UDP端口向第一设备的固定端口X发送UDP报文,报文内容即当前绑定的端口号G;第一设备通过握手服务器将G的值告知第二设备,第二设备重新绑定本地UDP端口G,向第一设备的X端口发送确认报文;第一设备与第二设备已建立UDP连接,通过应用层的UDP可靠传输协议建立可靠传输信道以实现文件和/或视频传输。
第二方面,本申请实施例提供一种能够确保穿透对称型NAT设备的系统,其包括登陆模块,用于建立握手服务器并开放端口,第一设备及第二设备分别登录握手服务器;发送请求模块,用于第二设备经TCP报文向握手服务器发送指向第一设备的连接申请报文;通知模块,用于握手服务器验证报文合法性,然后通知第一设备做出连接准备。
在本发明的一些实施例中,上述包括:用于存储计算机指令的至少一个存储器;与上述存储器通讯的至少一个处理器,其中当上述至少一个处理器执行上述计算机指令时,上述至少一个处理器使上述系统执行:登陆模块、发送请求模块以及通知模块。
相对于现有技术,本发明的实施例至少具有如下优点或有益效果:
其能够确保穿透对称型NAT设备,实现不同NAT下的两台设备点对点的互联互通。避免数据流通过第三方服务器中转,大幅度减少网络带宽流量,同时提高连接速度。涉及到的算法可在排除UDP丢包的前提下确保穿透对称型NAT。可以实现稳定的NAT穿透,且在UDP穿透后可确保连接的稳定性。此项发明可大幅度减少端对端的连接成本,可实现移动端设备与远程主机互通互连、可应用于视频直播或点播系统网络带宽分流、P2P下载加速等多方面领域,同时还可以应用于所有去中心化系统。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的一种能够确保穿透对称型NAT设备的方法步骤示意图;
图2为本发明实施例提供的锥型NAT与对称型NAT的方法详细步骤示意图;
图3为本发明实施例提供的对称型NAT与对称型NAT的方法详细步骤示意图;
图4为本发明实施例提供的一种能够确保穿透对称型NAT设备的系统模块示意图。
图标:10-登陆模块;20-发送请求模块;30-通知模块。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的各个实施例及实施例中的各个特征可以相互组合。
实施例1
请参阅图1,图1为本发明实施例提供的一种能够确保穿透对称型NAT设备的方法步骤示意图,其如下所示:
步骤S100,建立握手服务器并开放端口,第一设备及第二设备分别登录握手服务器;
在一些实施方式中,公网建立握手服务器,开放端口TCP1、UDP1、UDP2;
在一些实施方式中,内网设备包括第一设备和第二设备;
第一设备(对称型NAT)登录握手服务器:第一设备向握手服务器UDP端口1和UDP端口2分别发送UDP报文;握手服务器通过UDP1与UDP2端口将第一设备所在NAT转换后的外部端口返回给第一设备;内网设备将返回的外部端口P1、P2进行判断,T=|p1-p2|即为NAT转换后的端口偏移量,若T=0则本端为锥型NAT,否则为对称型NAT,此时第一设备将T保存备用。第一设备通过TCP连接至握手服务器TCP1端口,并保持长连接。
第二设备(对称型NAT)登录握手服务器:第二设备向握手服务器UDP端口1和UDP端口2分别发送UDP报文;握手服务器通过UDP1与UDP2端口将第二设备所在NAT转换后的外部端口返回给第二设备;内网设备将返回的外部端口P1、P2进行判断,T=|p1-p2|即为NAT转换后的端口偏移量,若T=0则本端为锥型NAT,否则为对称型NAT,此时第二设备将T保存备用。第二设备通过TCP连接至握手服务器TCP1端口,并保持长连接。
步骤S110,第二设备经TCP报文向握手服务器发送指向第一设备的连接申请报文;
在一些实施方式中,第二设备经TCP报文向握手服务器发送指向第一设备的连接申请,此申请信息中包括其外部端口偏移量T。
步骤S120,握手服务器验证报文合法性,然后通知第一设备做出连接准备。
在一些实施方式中,由握手服务器验证报文合法性,随后通知第一设备做出连接准备。
实施例2
请参阅图2,图2为本发明实施例提供的锥型NAT与对称型NAT的方法详细步骤示意图,在实施例1的基础上,还包括如下所示的方法:
步骤S200,第一设备通过T的值判断两端类型并确定穿透方向;
在一些实施方式中,由第一设备通过T的值判断两端类型并确定穿透方向(锥型NAT向对称型NAT穿透),此时假定由第二设备发起向第一设备的NAT穿透。如方向相反可通过握手服务器通知对端。
步骤S210,第一设备向握手服务器的预设端口及第二设备的预设端口依次发送UDP报文,并开启UDP侦听。
在一些实施方式中,第一设备向握手服务器UDP1端口、第二设备的R端口、握手服务器UDP2端口依次发送UDP报文,同时开启本端L端口的UDP侦听。
步骤S220,握手服务器的预设端口分别返回第一设备的外部UDP端口p1、p2给第一设备,第一设备将p1、p2与R经握手服务器告知第二设备。
在一些实施方式中,握手服务器UDP1、UDP2端口分别返回第一设备的外部UDP端口p1、p2给第一设备;第一设备将p1、p2与R经握手服务器告知第二设备。
步骤S230,第二设备根据p1、p2判断第一设备所在NAT的端口分配规则,并指定偏移量阈值K,此阈值为p1、p2偏移的最大值,根据端口偏移量T确定第一设备所在NAT的端口分配情况。
在一些实施方式中,第二设备根据p1、p2判断第一设备所在NAT的端口分配规则,此时指定偏移量阈值K,此阈值为p1、p2偏移的最大值,根据端口偏移量T能够确定第一设备所在NAT的端口分配有以下两种情况:
(1)稳定增长或稳定下降型(T小于或等于K);
(2)随机分布型(T大于K);
当稳定增长或稳定下降型时,设第一设备所在NAT转换后的外部端口为X:若p1小于p2则X大于p1且X小于p2,若p2大于p1则X大于p2且X小于P1,此时第二设备绑定端口R(即第一设备的目的端口),向第一设备的端口区间(p1,p2)发送UDP报文,同时开始UDP侦听;
当随机分布型时,第二设备绑定端口R,遍历第一设备的UDP端口并发送UDP报文,同时开始UDP侦听。
步骤S240,第一设备侦听到第二设备发送的UDP报文并回复确认消息报文,同时关闭UDP侦听并断开与握手服务器的连接。
在一些实施方式中,第一设备侦听到第二设备发送的UDP报文并回复确认消息报文,同时关闭UDP侦听并断开与握手服务器的连接。
步骤S250,第二设备侦听到第一设备的回复报文,同时关闭UDP侦听并断开与握手服务器的连接。
在一些实施方式中,第二设备侦听到第一设备的回复报文,同时关闭UDP侦听并断开与握手服务器的连接。
步骤S260,第一设备与第二设备建立UDP连接,通过应用层的UDP可靠传输协议建立可靠传输信道以实现文件和/或视频传输。
在一些实施方式中,此时第一设备与第二设备已建立UDP连接,通过应用层的UDP可靠传输协议(如UDT、KCP等)建立可靠传输信道以实现文件或视频传输等具体应用。
实施例3
请参阅图3,图3为本发明实施例提供的对称型NAT与对称型NAT的方法详细步骤示意图,在实施例1的基础上,还包括如下所示的方法:
步骤S300,第一设备经判断两端都为对称型NAT,此时第一设备绑定端口R,遍历第二设备的UDP端口并发送UDP报文,同时开始UDP侦听;
在一些实施方式中,第一设备经判断两端都为对称型NAT,此时第一设备绑定端口R,遍历第二设备的UDP端口并发送UDP报文,同时开始UDP侦听。
步骤S310,第二设备遍历绑定本端UDP端口向第一设备的固定端口X发送UDP报文,报文内容即当前绑定的端口号G;
在一些实施方式中,第二设备遍历绑定本端UDP端口向第一设备的固定端口X(比如30000端口)发送UDP报文,报文内容即当前绑定的端口号G,此时由于本地绑定端口一直在变化故无法进行UDP侦听。
步骤S320,第一设备通过握手服务器将G的值告知第二设备,第二设备重新绑定本地UDP端口G,向第一设备的X端口发送确认报文;
在一些实施方式中,由于在步骤S300,中第一设备已经遍历所有端口所以必然有且只有一个经NAT转换后的外部端口号等于X,此时端口X发送报文的目的端口为第二设备的Y端口;
同时由于步骤S310中第二设备已遍历绑定本地所有端口向第一设备的X端口发送报文,所以必然有且只有一个经NAT转换后的外部端口等于Y;
因此第一设备的X端口收到第二设备的Y端口发来的报文,而此报文的内容即第二设备发来此报文时所绑定的UDP端口G;
第一设备通过握手服务器将G的值告知第二设备;
第二设备重新绑定本地UDP端口G(此时第二设备所在的NAT映射关系为G—Y),向第一设备的X端口发送确认报文(此时的映射关系为G—Y—X—R)。
步骤S330,第一设备与第二设备已建立UDP连接,通过应用层的UDP可靠传输协议建立可靠传输信道以实现文件和/或视频传输。
在一些实施方式中,此时第一设备与第二设备已建立UDP连接,通过应用层的UDP可靠传输协议(如UDT、KCP等)建立可靠传输信道以实现文件或视频传输等具体应用。
由于对称型NAT又分为“稳定增长或稳定下降型”和“随机分布型”,所以在实施穿透时可根据类型选择端口区间遍历的方法减少UDP报文的发送次数。
实施例4
请参阅图4,图4为本发明实施例提供的一种能够确保穿透对称型NAT设备的系统模块示意图,其如下所示:
登陆模块10,用于建立握手服务器并开放端口,第一设备及第二设备分别登录握手服务器;
发送请求模块20,用于第二设备经TCP报文向握手服务器发送指向第一设备的连接申请报文;
通知模块30,用于握手服务器验证报文合法性,然后通知第一设备做出连接准备。
还包括存储器、处理器和通信接口,该存储器、处理器和通信接口相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器可用于存储软件程序及模块,处理器通过执行存储在存储器内的软件程序及模块,从而执行各种功能应用以及数据处理。该通信接口可用于与其他节点设备进行信令或数据的通信。
其中,存储器可以是但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器可以是一种集成电路芯片,具有信号处理能力。该处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可以理解,图4所示的结构仅为示意还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。图4中所示的各组件可以采用硬件、软件或其组合实现。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
综上所述,本申请实施例提供的一种能够确保穿透对称型NAT设备的方法及系统,其能够确保穿透对称型NAT设备,实现不同NAT下的两台设备点对点的互联互通。避免数据流通过第三方服务器中转,大幅度减少网络带宽流量,同时提高连接速度。涉及到的算法可在排除UDP丢包的前提下确保穿透对称型NAT。可以实现稳定的NAT穿透,且在UDP穿透后可确保连接的稳定性。此项发明可大幅度减少端对端的连接成本,可实现移动端设备与远程主机互通互连、可应用于视频直播或点播系统网络带宽分流、P2P下载加速等多方面领域,同时还可以应用于所有去中心化系统。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其它的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

Claims (10)

1.一种能够确保穿透对称型NAT设备的方法,其特征在于,包括:
建立握手服务器并开放端口,第一设备及第二设备分别登录握手服务器;
第二设备经TCP报文向握手服务器发送指向第一设备的连接申请报文;
握手服务器验证报文合法性,然后通知第一设备做出连接准备。
2.如权利要求1所述的一种能够确保穿透对称型NAT设备的方法,其特征在于,在所述握手服务器验证报文合法性,然后通知第一设备做出连接准备之后还包括:
第一设备通过T的值判断两端类型并确定穿透方向;
第一设备向握手服务器的预设端口及第二设备的预设端口依次发送UDP报文,并开启UDP侦听。
3.如权利要求2所述的一种能够确保穿透对称型NAT设备的方法,其特征在于,在所述并开启UDP侦听之后还包括:
握手服务器的预设端口分别返回第一设备的外部UDP端口p1、p2给第一设备,第一设备将p1、p2与R经握手服务器告知第二设备。
4.如权利要求3所述的一种能够确保穿透对称型NAT设备的方法,其特征在于,还包括:
第二设备根据p1、p2判断第一设备所在NAT的端口分配规则,并指定偏移量阈值K,此阈值为p1、p2偏移的最大值,根据端口偏移量T确定第一设备所在NAT的端口分配情况。
5.如权利要求4所述的一种能够确保穿透对称型NAT设备的方法,其特征在于,还包括:
第一设备侦听到第二设备发送的UDP报文并回复确认消息报文,同时关闭UDP侦听并断开与握手服务器的连接。
6.如权利要求5所述的一种能够确保穿透对称型NAT设备的方法,其特征在于,还包括:
第二设备侦听到第一设备的回复报文,同时关闭UDP侦听并断开与握手服务器的连接。
7.如权利要求6所述的一种能够确保穿透对称型NAT设备的方法,其特征在于,还包括:
第一设备与第二设备建立UDP连接,通过应用层的UDP可靠传输协议建立可靠传输信道以实现文件和/或视频传输。
8.如权利要求1所述的一种能够确保穿透对称型NAT设备的方法,其特征在于,在所述握手服务器验证报文合法性,然后通知第一设备做出连接准备之后还包括:
第一设备经判断两端都为对称型NAT,此时第一设备绑定端口R,遍历第二设备的UDP端口并发送UDP报文,同时开始UDP侦听;
第二设备遍历绑定本端UDP端口向第一设备的固定端口X发送UDP报文,报文内容即当前绑定的端口号G;
第一设备通过握手服务器将G的值告知第二设备,第二设备重新绑定本地UDP端口G,向第一设备的X端口发送确认报文;
第一设备与第二设备已建立UDP连接,通过应用层的UDP可靠传输协议建立可靠传输信道以实现文件和/或视频传输。
9.一种能够确保穿透对称型NAT设备的系统,其特征在于,包括:
登陆模块,用于建立握手服务器并开放端口,第一设备及第二设备分别登录握手服务器;
发送请求模块,用于第二设备经TCP报文向握手服务器发送指向第一设备的连接申请报文;
通知模块,用于握手服务器验证报文合法性,然后通知第一设备做出连接准备。
10.如权利要求9所述的一种能够确保穿透对称型NAT设备的系统,其特征在于,包括:
用于存储计算机指令的至少一个存储器;
与所述存储器通讯的至少一个处理器,其中当所述至少一个处理器执行所述计算机指令时,所述至少一个处理器使所述系统执行:登陆模块、发送请求模块以及通知模块。
CN202110299087.7A 2021-03-20 2021-03-20 一种能够确保穿透对称型nat设备的方法及系统 Pending CN113037890A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110299087.7A CN113037890A (zh) 2021-03-20 2021-03-20 一种能够确保穿透对称型nat设备的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110299087.7A CN113037890A (zh) 2021-03-20 2021-03-20 一种能够确保穿透对称型nat设备的方法及系统

Publications (1)

Publication Number Publication Date
CN113037890A true CN113037890A (zh) 2021-06-25

Family

ID=76472021

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110299087.7A Pending CN113037890A (zh) 2021-03-20 2021-03-20 一种能够确保穿透对称型nat设备的方法及系统

Country Status (1)

Country Link
CN (1) CN113037890A (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060215684A1 (en) * 2005-03-08 2006-09-28 Capone Jeffrey M Protocol and system for firewall and NAT traversal for TCP connections
CN101442492A (zh) * 2008-12-26 2009-05-27 中国科学院计算技术研究所 一种p2p网络中实现nat穿越的方法和系统
CN101677326A (zh) * 2008-09-16 2010-03-24 中兴通讯股份有限公司 一种穿越nat的文件传送方法
CN102571749A (zh) * 2010-12-27 2012-07-11 三星Sds株式会社 使用中继服务器的数据传输系统和方法
CN102884819A (zh) * 2010-03-30 2013-01-16 英国电讯有限公司 用于wlan漫游流量认证的系统和方法
WO2014066979A1 (en) * 2012-10-29 2014-05-08 Blackberry Limited Method and system for tcp turn operation behind a restrictive firewall
CN103916485A (zh) * 2012-12-31 2014-07-09 北京新媒传信科技有限公司 Nat穿越方法以及服务器
TW201433128A (zh) * 2013-02-07 2014-08-16 Univ Nat Taipei Technology Icmp敏感性nat之穿越法
CN104427008A (zh) * 2013-08-28 2015-03-18 北大方正集团有限公司 针对tcp的nat穿越方法、系统、第三方服务器x、以及客户端
CN105264855A (zh) * 2013-02-08 2016-01-20 华为技术有限公司 一种实现私网穿越的方法、装置和系统
WO2017000633A1 (zh) * 2015-06-29 2017-01-05 中兴通讯股份有限公司 Nat穿透方法及装置
CN112437169A (zh) * 2020-11-17 2021-03-02 郑炳立 一种nat穿透方法及系统

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060215684A1 (en) * 2005-03-08 2006-09-28 Capone Jeffrey M Protocol and system for firewall and NAT traversal for TCP connections
CN101677326A (zh) * 2008-09-16 2010-03-24 中兴通讯股份有限公司 一种穿越nat的文件传送方法
WO2010031280A1 (zh) * 2008-09-16 2010-03-25 中兴通讯股份有限公司 穿越nat的文件传送方法
CN101442492A (zh) * 2008-12-26 2009-05-27 中国科学院计算技术研究所 一种p2p网络中实现nat穿越的方法和系统
CN102884819A (zh) * 2010-03-30 2013-01-16 英国电讯有限公司 用于wlan漫游流量认证的系统和方法
CN102571749A (zh) * 2010-12-27 2012-07-11 三星Sds株式会社 使用中继服务器的数据传输系统和方法
WO2014066979A1 (en) * 2012-10-29 2014-05-08 Blackberry Limited Method and system for tcp turn operation behind a restrictive firewall
CN103916485A (zh) * 2012-12-31 2014-07-09 北京新媒传信科技有限公司 Nat穿越方法以及服务器
TW201433128A (zh) * 2013-02-07 2014-08-16 Univ Nat Taipei Technology Icmp敏感性nat之穿越法
CN105264855A (zh) * 2013-02-08 2016-01-20 华为技术有限公司 一种实现私网穿越的方法、装置和系统
CN104427008A (zh) * 2013-08-28 2015-03-18 北大方正集团有限公司 针对tcp的nat穿越方法、系统、第三方服务器x、以及客户端
WO2017000633A1 (zh) * 2015-06-29 2017-01-05 中兴通讯股份有限公司 Nat穿透方法及装置
CN112437169A (zh) * 2020-11-17 2021-03-02 郑炳立 一种nat穿透方法及系统

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
刘娟娟等: "一种基于第三方服务器的P2P穿透NAT的实现方法", 《软件导刊》 *
刘继明等: "一种基于NAT穿越的优化STUN算法", 《西安邮电大学学报》 *
李自荐等: "P2P网络通信中NAT穿越技术的研究及实现", 《数字技术与应用》 *
王勇等: "基于探测对Symmetric NAT与端口受限NAT的穿透方案", 《计算机应用》 *
邱耀群等: "对称型NAT穿越技术的研究", 《移动通信》 *
陈恒勋等: "NAT穿越技术研究", 《现代信息科技》 *
高育滨: "基于NAT穿越的流媒体传输系统的设计与实现", 《中国优秀硕士学位论文全文数据库(电子期刊)》 *

Similar Documents

Publication Publication Date Title
WO2019141111A1 (zh) 通信方法和通信装置
US5905872A (en) Method of transferring connection management information in world wideweb requests and responses
EP2112788B1 (en) A method and node for p2p content sharing
EP3720100A1 (en) Service request processing method and device
CN105376299B (zh) 一种网络通信方法、设备及网络附属存储设备
US20080259942A1 (en) Arrangements For Providing Peer-To-Peer Communications In A Public Land Mobile Network
CN106604119B (zh) 一种用于智能电视私有云设备的网络穿透方法及系统
CN101248647A (zh) 用于本地对等通信量的方法和系统
US10367893B1 (en) Method and apparatus of performing peer-to-peer communication establishment
RU2373654C1 (ru) Способ установления однорангового соединения и предназначенная для этого система
WO2007045717A2 (en) A peer-to-peer connection establishment
CN113810349B (zh) 数据传输方法、装置、计算机设备和存储介质
CN110888329A (zh) 设备厂家开放式接入的智能家居平台及其数据处理方法
CN112543351A (zh) 一种网络视频数据处理方法和处理系统
CN113037890A (zh) 一种能够确保穿透对称型nat设备的方法及系统
CN111711654B (zh) P2p通讯连接方法、电子设备及计算机可读存储介质
CN113055193B (zh) 一种数据多播传输方法、装置、设备及存储介质
CN112054953B (zh) 多媒体即时通信方法、系统及终端设备、计算机存储介质
US20020199020A1 (en) Method and system for resolving names on a network gateway having multiple distinct network interfaces
EP3044929B1 (en) A mobile-device based proxy for browser-originated procedures
CN107317869B (zh) 一种节点nat类型探测方法、装置以及系统
EP3107352B1 (en) Information transfer method, system and apparatus
US20130262583A1 (en) System and method for namespace resolution in peer to peer networks
CN117424928B (zh) 网络设备和资源分享的方法
CN114124867B (zh) 一种二三层混合网络结构下的群发即时消息传输方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210625