Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
NETWORK ADDRESS TRANSLATION TRAVERSAL METHOD AND DEVICE
Document Type and Number:
WIPO Patent Application WO/2013/167086
Kind Code:
A2
Abstract:
Disclosed are a network address translation traversal method and device. The method comprises: when the network address of one of both communication sides changes, a home-terminal communication side the address of which changes sending updated network address information to an opposite-terminal communication side through an original network address translation (NAT) traversal passage; after receiving the updated network address information, the opposite-terminal communication side sending a detection message to the updated network address of the home-terminal communication side; and after receiving the detection message, the home-terminal communication side setting up a new NAT traversal passage between the home-terminal communication side the network address of which is updated and the opposite-terminal communication side. One device is an opposite-terminal communication device which communicates with a home-terminal communication device the network address of which changes, and is used for sending a detection message to the updated network address of the home-terminal communication device after receiving the updated network address information. The present invention is applied to achieve NAT traversal in the environment in which the network address frequently changes under the condition of not interrupting the existing P2P service.

Inventors:
CHEN JUN (CN)
TAO WEICHENG (CN)
Application Number:
PCT/CN2013/080243
Publication Date:
November 14, 2013
Filing Date:
July 26, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ZTE CORP (CN)
Foreign References:
CN102685262A2012-09-19
CN101483764A2009-07-15
CN101207531A2008-06-25
Attorney, Agent or Firm:
CHINA PAT INTELLECTUAL PROPERTY OFFICE (CN)
北京派特恩知识产权代理事务所(普通合伙) (CN)
Download PDF:
Claims:
权利要求书

1、 一种网络地址转换穿透方法, 该方法包括:

通信双方的一方网络地址发生变化时, 网络地址发生变化的本端通信 方通过原有的网络地址转换 NAT穿透通道, 将更新后的网络地址信息或更 新后的网络地址的反射地址信息发送给对端通信方;

所述对端通信方根据接收的所述更新后的网络地址信息或所述更新后 的网络地址的反射地址信息向所述本端通信方的更新后的网络地址发送探 测消息;

本端通信方接收到所述探测消息后, 建立起网络地址更新后的本端通 信方与对端通信方间的新 NAT穿透通道。

2、 根据权利要求 1所述的方法, 其中, 所述将更新后的网络地址信息 或更新后的网络地址的反射地址信息发送给对端通信方后, 该方法还包括: 所述本端通信方在所述更新后的网络地址上监听所述对端通信方发送的所 述探测消息。

3、 根据权利要求 1或 2所述的方法, 其中, 根据所述更新后的网络地址 信息向所述本端通信方的更新后的网络地址发送探测消息具体包括:

从所述更新后的网络地址信息中提取出所述更新后的网络地址, 通过 NAT地址直接向本端通信方的所述更新后的网络地址发送探测消息或者, 从所述更新后的网络地址信息中提取出所述更新后的网络地址, 获取 对端通信方向更新后的网络地址发送探测消息需要的第二反射地址, 通过 所述第二发射地址向本端通信方的所述更新后的网络地址发送探测消息。

4、 根据权利要求 1或 2所述的方法, 其中, 根据所述更新后的网络地址 的反射地址信息向所述本端通信方的更新后的网络地址发送探测消息具体 包括:

从所述更新后的网络地址的反射地址信息中提取出更新后的网络地址 测消息, 再将所述探测消息转发给本端通信方的所述更新后的网络地址; 或者,

从所述更新后的网络地址的反射地址信息中提取出更新后的网络地址 的反射地址, 获取对端通信方向更新后的网络地址的反射地址发送探测消 息需要的第二反射地址, 通过所述第二发射地址向本端通信方的所述更新 后的网络地址的反射地址发送探测消息, 再将所述探测消息转发给本端通 信方的所述更新后的网络地址。

5、 一种网络地址转换穿透设备, 该设备为网络地址发生变化的本端通 信设备, 配置为通过原有的 NAT穿透通道将更新后的网络地址信息或更新 后的网络地址的反射地址信息发送给对端通信设备; 接收到对端通信设备 发送的探测消息后, 建立起网络地址更新后的所述本端通信设备与所述对 端通信设备间的新 NAT穿透通道。

6、 根据权利要求 5所述的设备, 其中, 所述本端通信设备, 进一步配 置为将更新后的网络地址信息或更新后的网络地址的反射地址信息发送给 对端通信设备的情况下, 在所述更新后的网络地址上监听对端通信设备发 送的所述探测消息。

7、 一种网络地址转换穿透设备, 该设备为与网络地址发生变化的本端 通信设备进行通信的对端通信设备, 配置为接收到本端通信设备发送的更 新后的网络地址信息或更新后的网络地址的反射地址信息, 根据所述更新 后的网络地址信息或所述更新后的网络地址的反射地址信息向本端通信设 备的更新后的网络地址发送探测消息。

8、 根据权利要求 7所述的设备, 其中, 所述对端通信设备, 进一步配 置为根据所述更新后的网络地址信息向本端通信设备的更新后的网络地址 发送探测消息的情况下, 从所述更新后的网络地址信息中提取出所述更新 后的网络地址, 通过 NAT地址直接向本端通信设备的更新后的网络地址发 送所述探测消息 ; 或者,

从所述更新后的网络地址信息中提取出所述更新后的网络地址, 获取 对端通信方向更新后的网络地址发送探测消息需要的第二反射地址, 通过 所述第二发射地址向本端通信方的更新后的网络地址发送所述探测消息。

9、 根据权利要求 7所述的设备, 其中, 所述对端通信设备, 进一步配 置为根据所述更新后的网络地址的反射地址信息向本端通信设备的更新后 的网络地址发送探测消息的情况下, 从所述更新后的网络地址的反射地址 信息中提取出更新后的网络地址的反射地址, 先通过 NAT地址向所述更新 后的网络地址的反射地址发送探测消息, 再将所述探测消息转发给所述本 端通信设备的更新后的网络地址; 或者,

从所述更新后的网络地址的反射地址信息中提取出更新后的网络地址 的反射地址, 获取对端通信方向更新后的网络地址的反射地址发送探测消 息需要的第二反射地址, 通过所述第二发射地址向本端通信方的所述更新 后的网络地址的反射地址发送探测消息, 再将所述探测消息转发给本端通 信方的所述更新后的网络地址。

10、 一种网络地址转换穿透方法, 该方法包括:

通信双方的一方网络地址发生变化时, 网络地址发生变化的本端通信 方通过原有的 NAT穿透通道, 将更新后的网络地址的反射地址信息发送给 对端通信方;

从所述更新后的网络地址的反射地址信息中提取出更新后的网络地址 的反射地址, 获取对端通信方向更新后的网络地址的反射地址发送第一探 测消息需要的第二反射地址, 通过原有的 NAT穿透通道将所述第二反射地 址发送给本端通信方;

通过所述第二发射地址向所述更新后的网络地址的反射地址发送所述 第一探测消息后, 将所述第一探测消息转发给本端通信方的更新后的网络 地址;

通过所述更新后的网络地址经由所述更新后的网络地址的反射地址向 第二反射地址发送第二探测消息, 将所述第二探测消息转发给对端通信方, 建立起网络地址更新后的本端通信方与对端通信方间的新 NAT穿透通道。

11、 根据权利要求 10所述的方法, 其中, 该方法还包括: 所述本端通 信方在所述更新后的网络地址上监听所述对端通信方发送的所述第一探测 消息。

Description:
一种网络地址转换穿透方法及设备 技术领域

本发明涉及通信领域的网络地址转换技术, 尤其涉及一种在网络地址 变化环境下点对点 (P2P, Peer-to-Peer ) 的网络地址转换(NAT, Network Address Translation ) 穿透方法及设备。 背景技术

NAT作为一种广泛部署的网络技术, 在解决安全与网际协议(IP )地 址短缺方面发挥着巨大的作用。 如图 1所示为现有的一种典型的 NAT网络 架构,基于该网络架构的访问机制为: 内网 A、 B中的主机分别通过 NAT-A 和 NAT-B访问外部的因特网 (Internet ) 资源, 外部主机不能主动向内网发 起连接, 这一特性在解决安全与 IP地址短缺领域发挥着重大的作用, 但也 制约着许多应用的部署, 如 P2P通信、 网络会议、 音视频传输等, 阻碍了 互联网的发展。 因此 NAT的穿透技术就成为了研究的发展方向。

目前, 已有多种 NAT穿透方案, 例如 NAT 的 UDP简单穿越( STUN, Simple Traversal of UDP over NATs )、 通过 Relay方式穿越 NAT ( TURN, Traversal Using Relay NAT ), 中间盒、 交互连接建立 ( ICE )等。 它们中的 大多数技术是在外网部署一台服务器(Server ),如图 1所示,通过此 Server 实现 NAT的穿透技术。

在 P2P通信上可以利用 ICE技术的 RFC5245标准较好地穿透 NAT。但 在地址经常变化的环境下, 例如 Mobile IP、 DHCP租约到期、 WIFI网络变 化等环境下, 采用现有的 NAT穿透方案存在的问题是: 当设备地址发送改 变时, 使用 ICE或其他的 NAT穿透方案需重新建立 ICE流程, 而重新建立 ICE流程将会中断现有的通信、 或耗费大量的时间用以 ICE的重新建立。 针对这种地址经常变化的环境下 NAT穿透存在的问题, 在不中断现有 P2P 业务情况下, 目前还没有相应的解决方案。 发明内容

有鉴于此, 本发明实施例的主要目的在于提供一种 NAT穿透方法及设 备,在不中断现有 P2P业务情况下,实现网络地址经常变化的环境 下的 NAT 穿透。

为达到上述目的, 本发明实施例的技术方案是这样实现的:

一种网络地址转换穿透方法, 该方法包括:

通信双方的一方网络地址发生变化时, 网络地址发生变化的本端通信 方通过原有的网络地址转换 NAT穿透通道, 将更新后的网络地址信息或更 新后的网络地址的反射地址信息发送给对端通 信方;

所述对端通信方根据接收的所述更新后的网络 地址信息或所述更新后 的网络地址的反射地址信息向所述本端通信方 的更新后的网络地址发送探 测消息;

本端通信方接收到所述探测消息后, 建立起网络地址更新后的本端通 信方与对端通信方间的新 AT穿透通道。

其中, 所述将更新后的网络地址信息或更新后的网络 地址的反射地址 信息发送给对端通信方后, 该方法还包括: 所述本端通信方在所述更新后 的网络地址上监听所述对端通信方发送的所述 探测消息。

其中, 根据所述更新后的网络地址信息向所述本端通 信方的更新后的 网络地址发送探测消息具体包括:

从所述更新后的网络地址信息中提取出所述更 新后的网络地址, 通过 NAT地址直接向本端通信方的所述更新后的网络 地址发送探测消息或者, 从所述更新后的网络地址信息中提取出所述更 新后的网络地址, 获取 对端通信方向更新后的网络地址发送探测消息 需要的第二反射地址, 通过 所述第二发射地址向本端通信方的所述更新后 的网络地址发送探测消息。 其中, 根据所述更新后的网络地址的反射地址信息向 所述本端通信方 的更新后的网络地址发送探测消息具体包括:

从所述更新后的网络地址的反射地址信息中提 取出更新后的网络地址 测消息, 再将所述探测消息转发给本端通信方的所述更 新后的网络地址; 或者,

从所述更新后的网络地址的反射地址信息中提 取出更新后的网络地址 的反射地址, 获取对端通信方向更新后的网络地址的反射地 址发送探测消 息需要的第二反射地址, 通过所述第二发射地址向本端通信方的所述更 新 后的网络地址的反射地址发送探测消息, 再将所述探测消息转发给本端通 信方的所述更新后的网络地址。

一种网络地址转换穿透设备, 该设备为网络地址发生变化的本端通信 设备, 配置为通过原有的 NAT穿透通道将更新后的网络地址信息或更新后 的网络地址的反射地址信息发送给对端通信设 备; 接收到对端通信设备发 通信设备间的新 NAT穿透通道。

其中, 所述本端通信设备, 进一步配置为将更新后的网络地址信息或 更新后的网络地址的反射地址信息发送给对端 通信设备的情况下, 在所述 更新后的网络地址上监听对端通信设备发送的 所述探测消息。

一种网络地址转换穿透设备, 该设备为与网络地址发生变化的本端通 信设备进行通信的对端通信设备, 配置为接收到本端通信设备发送的更新 后的网络地址信息或更新后的网络地址的反射 地址信息, 根据所述更新后 的网络地址信息或所述更新后的网络地址的反 射地址信息向本端通信设备 的更新后的网络地址发送探测消息。 其中, 所述对端通信设备, 进一步配置为根据所述更新后的网络地址 信息向本端通信设备的更新后的网络地址发送 探测消息的情况下, 从所述 更新后的网络地址信息中提取出所述更新后的 网络地址, 通过 NAT地址直 接向本端通信设备的更新后的网络地址发送所 述探测消息 ; 或者,

从所述更新后的网络地址信息中提取出所述更 新后的网络地址, 获取 对端通信方向更新后的网络地址发送探测消息 需要的第二反射地址, 通过 所述第二发射地址向本端通信方的更新后的网 络地址发送所述探测消息。

其中, 所述对端通信设备, 进一步配置为根据所述更新后的网络地址 的反射地址信息向本端通信设备的更新后的网 络地址发送探测消息的情况 下, 从所述更新后的网络地址的反射地址信息中提 取出更新后的网络地址 测消息, 再将所述探测消息转发给所述本端通信设备的 更新后的网络地址; 或者,

从所述更新后的网络地址的反射地址信息中提 取出更新后的网络地址 的反射地址, 获取对端通信方向更新后的网络地址的反射地 址发送探测消 息需要的第二反射地址, 通过所述第二发射地址向本端通信方的所述更 新 后的网络地址的反射地址发送探测消息, 再将所述探测消息转发给本端通 信方的所述更新后的网络地址。

一种网络地址转换穿透方法, 该方法包括:

通信双方的一方网络地址发生变化时, 网络地址发生变化的本端通信 方通过原有的 NAT穿透通道, 将更新后的网络地址的反射地址信息发送给 对端通信方;

从所述更新后的网络地址的反射地址信息中提 取出更新后的网络地址 的反射地址, 获取对端通信方向更新后的网络地址的反射地 址发送第一探 测消息需要的第二反射地址, 通过原有的 NAT穿透通道将所述第二反射地 址发送给本端通信方;

通过所述第二发射地址向所述更新后的网络地 址的反射地址发送所述 第一探测消息后, 将所述第一探测消息转发给本端通信方的更新 后的网络 地址;

通过所述更新后的网络地址经由所述更新后的 网络地址的反射地址向 第二反射地址发送第二探测消息, 将所述第二探测消息转发给对端通信方, 建立起网络地址更新后的本端通信方与对端通 信方间的新 NAT穿透通道。

其中, 该方法还包括: 所述本端通信方在所述更新后的网络地址上监 听所述对端通信方发送的所述第一探测消息。

本发明实施例的方法是通信双方的一方网络地 址发生变化时, 网络地 址发生变化的本端通信方通过原有的 NAT穿透通道, 将更新后的网络地址 信息或更新后的网络地址的反射地址信息发送 给对端通信方; 对端通信方 接收到更新后的网络地址信息或更新后的网络 地址的反射地址信息, 根据 接收的更新后的网络地址信息或更新后的网络 地址的反射地址信息向本端 通信方的更新后的网络地址发送探测消息; 本端通信方接收到探测消息后, 建立起网络地址更新后的本端通信方与对端通 信方间的新 NAT穿透通道。

采用本发明实施例, 由于通信双方的一方能获知网络地址发送变化 的 另一方的更新后的网络地址信息, 因此, 可以建立起网络地址更新后的本 端通信方与对端通信方间的新 NAT穿透通道, 用以后续通信交互, 并不需 要中断业务。 从而, 在不中断现有 P2P业务情况下, 实现网络地址经常变 化的环境下的 NAT穿透。 附图说明

图 1为现有典型的 NAT网络拓朴结构示意图;

图 2为本发明实施例方法的实现流程图;

图 3 为本发明实施例的地址变化方位于外网时的 Restricted Cone 型 NAT拓朴结构示意图;

图 4为本发明实施例的地址变化方位于 Full cone NAT时的 Restricted Cone型 NAT拓朴结构示意图;

图 5为本发明实施例的地址变化方位于外网时 Symmetric型 NAT拓朴 结构示意图;

图 6为本发明实施例的地址变化方位于 Full cone NAT中时 Symmetric 型 NAT拓朴结构示意图。 具体实施方式

下面结合附图对技术方案的实施作进一步的详 细描述。

一种 NAT穿透方法, 如图 2所示, 该方法的实现流程包括以下步骤: 步骤 101、通信双方的一方网络地址发生变化时, 地址发生变化的本端 通信方通过原有的 NAT穿透通道将地址更新消息发送给对端通信方 , 指示 本端通信方的网络地址将变化到更新后的网络 地址。

这里, 地址更新消息中携带本端通信方的更新后的网 络地址或更新后 的网络地址的反射地址。 需要指出的是: 携带本端通信方的更新后的网络 地址的消息并不限于所述地址更新消息。 本端通信方的更新后的网络地址 或更新后的网络地址的反射地址, 也可以封装在更新后的网络地址信息或 更新后的网络地址的反射地址信息中发送给对 端通信方, 由对端通信方进 行解析和提取。

步骤 102、对端通信方接收到地址更新消息, 若提取出的是更新后的网 络地址, 则直接向本端通信方的更新后的网络地址发送 探测消息; 若提取 出的是更新后的网络地址的反射地址, 则先向更新后的网络地址的反射地 址发送探测消息, 再将探测消息转发给本端通信方的更新后的网 络地址。

步骤 103、本端通信方接收到对端通信方发送的探测 消息后, 建立起该 更新后的网络地址与对端通信方网络地址间的 新 NAT穿透通道。 这里, 由于对端通信方能获取到本端通信方的网络地 址变更, 能向本 端通信方变更后的网络地址发送消息, 从而在本端通信方更新后的网络地 址与对端通信方网络地址间建立新的 NAT穿透通道,以便后续的消息交互, 无需中断业务, 重新建立流程, 从而在不中断现有 P2P业务情况下, 实现 网络地址经常变化的环境下的 NAT穿透。

综上所述, 采用本发明实施例的方案, 能实现网络地址经常变化的环 境下的 NAT穿透, 实现 P2P业务的不中断切换, 例如 VoIP的不中断切换。 在地址发生更新后不需要重新建立 ICE的流程, 例如地址收集、 地址优先 级排序、 连通性测试、 SDP信息交换等。 而且, 本发明实施例的方案不需 要中间节点的参与, 可完全实现 P2P通信的切换, 从而加速了新的 NAT穿 透通道的建立。

本发明实施例在地址变化环境下的场景主要有 全向 NAT ( Full Cone NAT )、受限 NAT( Restricted Cone NAT )、端口受限 NAT( Port Restricted Cone NAT ) 以及对称 NAT ( Symmetric NAT )等四种类型的 NAT拓朴网络架构 对应的流程, 以下进一步说明本发明实施例, 对各个场景分别进行说明。 另, 对本文所有图中的 IP地址和相应的端口号在此做一说明: LA表示未 发生地址变化方的地址, NA表示 NAT的反射地址, RA表示发生了地址变 化方的地址, 粗线表示原有 NAT穿透通道。

实施例 1: 对端通信方 (主机 A )位于受限 NAT/端口受限 NAT, 地址 变化的本端通信方 (主机 B )位于外网中。

如图 3所示为受限 NAT/端口受限 NAT, 主机 A位于 NAT网中, 主机 B位于外网中。

当内网中的主机 A的地址变化时,可采用现有的 NAT方案,比如 STUN 实现 NAT穿透。 当外网的设备 B地址由原地址 201.23.123.1变化到更新后 地址 201.23.123.2时。由于受限 NAT/端口受限 NAT的性质决定了采用更新 后地址 201.23.123.2将不能发送数据到设备 A上(反方向可以)。 因此, 针 对此场景, NAT穿透方案包括以下内容:

A1 :主机 B将更新后地址 201.23.123.2通过原地址 201.23.123.1发送给 NAT地址 202.12.1.2:1111, 即采用原有 NAT穿透通道, 指示地址将变化到 更新后地址 201.23.123.2。并在更新后地址 201.23.123.2上监听来自 NAT的 消息;

A2: NAT将消息转发给主机 A;

A3: 主机 A接收到主机 B的消息后, 提取更新后地址 201.23.123.2, 并通过 NAT的反射地址 202.12.1.2:1111向主机 B的 201.23.123.2发送探测 消息;

A4: 主机 B接收到 A的探测消息后,可将原 A、 B ( B-1, 201.23.123.1 ) 间的通信切换化到 A、 B ( B-2 , 201.23.123.2 )上。

稍后主机 B可将原地址 201.23.123.1地址释放, 例如在 DHCP中归还 地址池。

需要指出的是: 如果是端口受限 NAT, 则在 A1 中主机 B 需将

201.23.123.2:6678 通过 201·23· 123· 1 :5678 发送给主机 Α (通过 NAT 的 202.12.1.2:1111 转发)。 A3 中主机 A 接收到主机 B 的消息后, 提取 201.23.123.2:6678, 并通过 NAT 地址 202.12.1.2:1111 向主机 B 201.23.123.2:6678发送消息。 A4中主机 B接收到 A的消息后, 可将原 A、 B ( B-1, 201.23.123.1 :5678 )间的通信变化到 A、 B ( B-2, 201.23.123.2:6678 ) 上。

实施例 2: 对端通信方(主机 A )位于受限 NAT/端口受限 NAT中, 地 址变化的本端通信方 (主机 B )位于全向 NAT中。

如图 4所示, 主机 A位于受限 NAT中, 主机 B位于全向 NAT中。 当主机 A的地址变化时, 由于 NAT-B为全向 NAT,可采用现有的 NAT 方案实现 NAT穿透。 当主机 B的地址变化时的 NAT穿透方案包括以下内 容:

B1: 主机 B 获取更新后地址 192.168.1.3:6678 的反射地址 201.23.123.2:3333;

B2 : 通过原地址 192.168.1.2:5678 将反射地址 201.23.123.2:3333 经

201.23.123.1 :2222发送给 NAT-A地址 202.12.1.2:1111, 即采用原有 NAT穿 透通道, 指示地址将变化到更新后地址。 并在更新后地址 192.168.1.3:6678 上监听来自 NAT-B的消息;

B3: NAT-A将消息转发给主机 A;

B4:主机 A接收到主机 B的消息后,提取更新后地址 201.23.123.2:3333, 并通过 NAT- A的 202.12.1.2:1111向 NAT-B的 201.23.123.2:3333发送探测消 息;

B5 : NAT-B 将从 201.23.123.2:3333 接收的探测消息转发给主机 B 192.168.1.3:6678;

B6: 主机 B接收到探测消息后, 可将原 A、 B ( B-1 , 192.168.1.2:5678 ) 间的通信切换到八、 B ( B-2, 192.168.1.3:6678 )上。

实施例 3: 对端通信方 (主机 A )位于对称( Symmetric )型 NAT中, 地址发生变化的本端通信方 (主机 B )位于外网中。

如图 5所示, 主机 A在对称 NAT中, 主机 B位于外网中。

当内网地址发生变化时可采用现有 NAT方案实现 NAT穿透。当外网主 机的地址发送变化时的 NAT穿透方案包括以下内容:

C1: 主机 B 将更新后地址 201.23.123.2:6678 通过原地址 201.23.123.1 :5678发送给 NAT地址 202.12.1.2:1111, 即采用原有 NAT穿透 通道, 指示地址将变化到更新后地址 201.23.123.2:6678, 并在更新后地址 201.23.123.2:6678上监听来自 NAT的消息; C2: NAT将消息转发给主机 A;

C3:主机 A接收到主机 B的消息后,提取更新后地址 201.23.123.2:6678; C4:主机 A获取发往 201.23.123.2:6678的反射地址 202.12.1.3:2111 (第 二反射地址);

C5: 主机 A通过反射地址 202.12.1.3:2111向主机 B 201.23.123.2:6678 发送探测消息。

C6:主机 B接收到 A的消息后,可将原 A、 B ( B-1, 201.23.123.1 :5678 ) 间的通信切换到 A、 B ( B-2, 201.23.123.2:6678 )上。 实现变化后的 NAT 穿透。

实施例 4: 对端通信方 (主机 A )位于对称 NAT中, 地址发生变化的 本端通信方 (主机 B )位于全向 NAT中。

如图 6所示, 主机 A位于对称 NAT中, 当地址发生变化的本端通信 方 (主机 B )位于全向 NAT中时的 NAT穿透方案包括以下内容:

D1: 主机 B 获取更新后地址 192.168.1.3:6678 的反射地址 NA:201.23.123.2:3222;

D2: 主机 B通过 192.168.1.2:5678将反射地址 201.23.123.2:3222经原 地址 201.23.123.1 :2222发送给 NAT-A地址 202.12.1.2: 1111,即采用原有 NAT 穿透通道,指示地址将变化到更新后地址。并 在更新后地址 192.168.1.3:6678 上监听来自 NAT-B的消息;

D3: NAT-A将消息转发给主机 A;

D4:主机 A接收到主机 B的消息后,提取更新后地址 201.23.123.2:3222;

D5 : 主机 A 向 NAT-A 获取发往 201.23.123.2:3222 的反射地址 202.12.1.3:2111 (第二反射地址);

D6:主机 A通过反射地址 202.12.1.3 :2111向 NAT-B的 201.23.123.2:3222 发送探测消息; D7 : NAT-B 将从 201.23.123.2:3222 接收的探测消息转发给主机 B 192.168.1.3:6678;

D8: 主机 B接收到探测消息后, 可将原 A、 B ( B-1 , 192.168.1.2:5678 ) 间的通信切换到入、 B ( B-2, RA: 192.168.1.3:6678 )上。

实施例 5: 对端通信方 (主机 A )位于对称 NAT中, 地址变化的本端 通信方 (主机 B )位于受限 NAT端口受限 NAT /对称 NAT中。

如图 6所示,在对称 NAT中, 当地址发生变化的本端通信方(主机 B ) 位于受限 NAT/端口受限 NAT /对称 NAT中时(图 6中的 NAT-B ) 的 NAT 穿透方案包括以下内容:

E1: 主机 B 获取更新后地址 192.168.1.3:6678 的反射地址

NA:201.23.123.2:3222;

E2:主机 B通过 192.168.1.2:5678将反射地址 201.23.123.2:3222经原地 址 201.23.123.1 :2222发送给 NAT-A地址 202.12.1.2:1111 , 即采用原有 NAT 穿透通道,指示地址将变化到更新后地址。并 在更新后地址 192.168.1.3:6678 上监听来自 NAT-B的消息;

E3: NAT-A将消息转发给主机 A;

E4:主机 A接收到主机 B的消息后,提取更新后地址 201.23.123.2:3222; E5 : 主机 A 向 NAT-A 获取发往 201.23.123.2:3222 的反射地址 202.12.1.3:2111 (第二反射地址);

E6 : 主机 A 通过 192.168.0.2:1234 将反射地址 202.12.1.3:2111 经

201.12.1.2:1111发送给 NAT-B的 201.23.123.1 :2222 (原 NAT穿透通道);

E7: 主机 A通过反射地址 202.12.1.3:2111向 201.23.123.2:3222发送探 测消息 (第一探测消息);

这里, NAT-B将从 201.23.123.2:3222接收到的探测消息转发给主机 B 192.168.1.3:6678。 上述 E6、 E7没有先后顺序。 E8: NAT-B将从 201.23.123.1 :2222接收的消息(上述 E6中的消息 )转 发给主机 B的 192.168.1.2:5678;

E9 : 主机 B 接收到 E8 中的消息后通过 192.168.1.3:6678 经由 201.23.123.2:3222向 NAT-A的 202.12.1.3:2111发送探测消息 (第二探测消 息)。

这里, NAT-A将从 202.12.1.3:2111接收到的探测消息转发给主机 A。 当主机 A和主机 B分别接收到对方发送的探测消息后, 完成了更新后地址 的 NAT穿透;

E10: 主机 B将原 A、 B ( B-1, 192.168丄 2:5678 ) 间的通信切换到入、 B ( B-2, 192.168.1.3:6678 )上。

一种 NAT穿透设备, 该设备分网络地址发生变化的本端通信设备和 对 端通信设备, 其中, 网络地址发生变化的本端通信设备, 配置为通过原有 的 NAT穿透通道将更新后的网络地址信息或更新后 的网络地址的反射地址 信息发送给对端通信设备; 接收到对端通信设备发送的探测消息后, 建立 透通道。

这里, 所述更新后的网络地址信息为: 向对端通信设备指示本端通信 设备的网络地址将变化到所述更新后的网络地 址的信息。

这里, 本端通信设备, 进一步配置为将更新后的网络地址信息或更新 后的网络地址的反射地址信息发送给对端通信 设备的情况下, 在更新后的 网络地址上监听对端通信设备发送的探测消息 。

与网络地址发生变化的本端通信设备进行通信 的对端通信设备, 配置 为接收到本端通信设备发送的更新后的网络地 址信息或更新后的网络地址 的反射地址信息, 根据更新后的网络地址信息或更新后的网络地 址的反射 地址信息向本端通信设备的更新后的网络地址 发送探测消息。 这里, 对端通信设备, 进一步配置为根据更新后的网络地址信息向本 端通信设备的更新后的网络地址发送探测消息 的情况下, 从更新后的网络 地址信息中提取出更新后的网络地址, 通过 NAT地址或者对端通信设备新 的反射地址直接向本端通信设备的更新后的网 络地址发送所述探测消息。

或者, 对端通信设备, 进一步配置为根据更新后的网络地址的反射地 址信息向本端通信设备的更新后的网络地址发 送探测消息的情况下, 从更 新后的网络地址的反射地址信息中提取出更新 后的网络地址的反射地址, 先通过 NAT地址或者对端通信设备新的反射地址向更新 后的网络地址的反 射地址发送探测消息, 再将探测消息转发给本端通信设备的更新后的 网络 地址。

以上所述, 仅为本发明的较佳实施例而已, 并非用于限定本发明的保 护范围。 工业实用性

本发明实施例是通信双方的一方网络地址发生 变化时, 网络地址发生 变化的本端通信方通过原有的 NAT穿透通道, 将更新后的网络地址信息或 更新后的网络地址的反射地址信息发送给对端 通信方; 对端通信方接收到 更新后的网络地址信息或更新后的网络地址的 反射地址信息, 根据接收的 更新后的网络地址信息或更新后的网络地址的 反射地址信息向本端通信方 的更新后的网络地址发送探测消息; 本端通信方接收到探测消息后, 建立 起网络地址更新后的本端通信方与对端通信方 间的新 NAT穿透通道。 采用 本发明实施例, 由于通信双方的一方能获知网络地址发送变化 的另一方的 更新后的网络地址信息, 因此, 可以建立起网络地址更新后的本端通信方 与对端通信方间的新 NAT穿透通道, 用以后续通信交互, 并不需要中断业 务。 从而, 在不中断现有 P2P业务情况下, 实现网络地址经常变化的环境 下的 NAT穿透。