首页> 中国专利> 通过二网络装置的协助完成STUN技术的网络系统及其方法

通过二网络装置的协助完成STUN技术的网络系统及其方法

摘要

本发明是一种通过二网络装置的协助完成STUN技术的网络系统及其方法,其中第一NAT与第一网络装置位于第一私有网域,该第一网络装置通过该第一NAT向位于公众网域的追踪连线服务器注册第一NAT映射地址及第二NAT映射地址,第二NAT与第二网络装置位于第二私有网域,该第二网络装置通过该第二NAT向追踪连线服务器注册第三NAT映射地址及一第四NAT映射地址,其它网络装置能通过其私有网域的NAT向该追踪连线服务器取得上述映射地址,并通过该第一网络装置及该第二网络装置对其它网络地址转换器进行网络地址转换器行为测试。网络装置能够取得自身所在的私有网域的NAT信息,大幅降低STUN服务器的工作负担。

著录项

  • 公开/公告号CN104104741A

    专利类型发明专利

  • 公开/公告日2014-10-15

    原文格式PDF

  • 申请/专利权人 友讯科技股份有限公司;

    申请/专利号CN201310220864.X

  • 发明设计人 曾建超;林家梁;

    申请日2013-06-05

  • 分类号H04L29/12;H04L12/26;

  • 代理机构北京三友知识产权代理有限公司;

  • 代理人贾磊

  • 地址 中国台湾台北市内湖区新湖三路289号

  • 入库时间 2023-12-17 02:19:08

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-08-29

    授权

    授权

  • 2014-11-12

    实质审查的生效 IPC(主分类):H04L29/12 申请日:20130605

    实质审查的生效

  • 2014-10-15

    公开

    公开

说明书

技术领域

本发明是关于STUN(Session Traversal Utilities for Network Address  Translation)技术,尤指一种通过二网络装置进行NAT行为测试,即可实现 STUN技术的网络系统及方法。

背景技术

随着通信科技的发展与进步,各种网络服务的应用已成为日常生活中的 一部分,其中对等网际网络技术(peer-to-peer,以下简称P2P)已是目前普遍 使用的技术之一,通过P2P所形成的网络架构,使用者的网络装置(如:台式 电脑)能直接与其他使用者的网络装置建立连线,以进行语音通话、视频传 输或数据(如:图片、音乐、录影)共享交换、分散式计算或协同工作…等 诸多应用。

然而,由于人们大多会在私有网域和公众网域的边界处部署网络地址转 换器(network address translation,以下简称NAT),所谓NAT是定义于RFC 1631的一个Internet标准,主要是对私有网域的网络装置所发出的封包,进行 网际协议(Internet Protocol,以下简称IP)地址转换的动作,以便让私有网域 中多台网络装置能够共用一个公众网域IP地址连接上网际网络,意即当私有 网域发出的私有网域IP数据封包到达NAT时,NAT负责将私有网域IP地址转换 成公众网域IP地址;当有外部发来的封包到达NAT设备后,NAT通过查阅自 身保存的映射表(mapping table)里的信息,将公众网域IP地址转换成私有网 域IP地址,再转发到私有网域中对应的网络装置。

承上所述,当两个网络装置欲以P2P的网络技术相互建立连线时,若该等 网络装置均分别位于不同私有网域的NAT后方时,由于NAT的特质是用以屏 蔽私有网域,使得位于NAT后方的私有网域中的网络装置,对于公众网域来 说皆是不可见,因此,该等网络装置会无法穿透NAT以建立直接连线。为能 解决前述NAT穿透(NAT Traversal)问题,目前有研究提出一种(UDP打洞 (UDP Hole Punching))技术来进行NAT穿透,所谓的(UDP打洞)技术主 要是使位于NAT后方的网络装置,能够先与位于公众网域的服务器进行连线, 使得该NAT能建立一私人地址/连接端口(Private IP Address&Port)及该N AT的公众网络地址/连接端口(Public IP Address&Port)的映射(mapping), 并在该NAT的公众网络界面上开启一连接端口,如此,位于公众网域上的其 他网络装置即可通过NAT在公众网络界面所开启的连接端口,将数据传送至 位于该NAT后方的网络装置。然而,(UDP打洞)技术成功与否,主要是受 限于NAT的映射行为(Mapping Behavior)和封包过滤规则(Filtering Behavi  or),同时,NAT的公众网络界面所开启的连接端口,也须通过位于公众网域 的服务器告知,因此,为使(UDP打洞)技术成功,能够使用NAT会话传输 应用程序(Session Traversal Utilities for Network Address Translation,以下 简称STUN)技术。

所谓的STUN技术为一种网络协议,其能允许位于NAT后方的网络装置找 出建立连线的相关网络信息,以使两个分别位于不同NAT后方的网络装置间, 能够建立连线,兹简单说明如后:首先,位于NAT后方的网络装置会向STUN 服务器送出多个绑定请求(binding requests)信息,当STUN服务器收到该等 绑定请求信息后,会将其所发现的NAT的映射地址(IP address&port numb  er)回复在绑定响应(Binding Response)信息中,如此,位于NAT后方的网 络装置,于收到被回复的绑定响应信息后,即能判断出其所在的NAT的映射 行为和封包过滤规则,同时也能得知该NAT的公众网络界面所开启的连接端 口。

简单说明STUN技术,一般言,STUN技术的检测过程中,其需要有一具 有两个公众IP的STUN服务器,在NAT后方的网络装置则必须传送多个UDP 封包至该STUN服务器,其中该UDP封包中含有网络装置需了解的信息,例 如:NAT的公众网络界面所使用的IP及开启的连接端口,如此,网络装置即 可通过UDP封包的信息内容判断出自己所在的NAT的类型。举例而言,若 一网络装置Host A位于一NAT X的后方,且位于公众网域的STUN服务器包 含两个公众IP地址分别为IPs1和IPs2,其中IPs1所开启的两个连接端口分别为P  s11和Ps12,而IPs2所开启的一连接端口则为Ps21,又,网络装置Host A的IP 地址为IPa,且其所开启的连接端口为Pa1,该网络装置Host A会通过下列步 骤,取得NAT X的映射地址(mapped-address)及其映射行为和封包过滤规则, 首先说明该网络装置Host A取得NAT X的映射行为如下:

网络装置Host A会使用IP地址IPa,且通过连接端口Pa1送出第一个绑定请 求信息至STUN服务器的连接端口Ps11的公众IP地址IPs1,当STUN服务器接收 到该第一个绑定请求信息后,会使用公众IP地址IPs1且通过连接端口Ps11回复 第一个绑定响应信息至网络装置Host A,该第一个绑定响应信息会载明NAT  X的公众网络界面的IP地址和开启的连接端口;

该网络装置Host A会使用IP地址IPa,且通过连接端口Pa1送出第二个绑定 请求信息至STUN服务器的连接端口Ps12的公众IP地址IPs1,当STUN服务器接 收到该第二个绑定请求信息后,会使用公众IP地址IPs1且通过连接端口Ps12回 复第二个绑定响应信息至网络装置Host A,该第二个绑定响应信息会载明NA T X的公众网络界面的IP地址和开启的连接端口;

又,该网络装置Host A会使用IP地址IPa,且通过连接端口Pa1送出第三个 绑定请求信息至STUN服务器的连接端口Ps21的公众IP地址IPs2,当STUN服务 器接收到该第三个绑定请求信息后,会使用公众IP地址IPs2且通过连接端口Ps 21回复第三个绑定响应信息至网络装置Host A,该第三个绑定响应信息会载 明NAT X的公众网络界面的IP地址和开启的连接端口;及

该网络装置Host A能根据该等绑定响应信息,判断出NAT X的映射行为 是独立的(Independent)、依赖地址的(Address Dependent)或依赖地址及连接端 口的(Address&Port Dependent)。若该等绑定响应信息中所记载的连接端口 均相同,则该NAT X的映射行为是Independent;若仅第一、二绑定响应信息 中所记载的连接端口相同,则该NAT X的映射行为是Address Dependent;若 该等绑定响应信息中所记载的连接端口皆不相同,则代表该NAT X的映射行 为是Address&Port Dependent。

另,该网络装置Host A取得NAT X的封包过滤规则如下:

该网络装置Host A会使用IP地址IPa,且通过连接端口Pa1送出第一个绑定 请求信息至STUN服务器的连接端口Ps11的公众IP地址IPs1,当STUN服务器接 收到该第一个绑定请求信息后,会使用公众IP地址IPs1且通过连接端口Ps11回 复第一个绑定响应信息至网络装置Host A,该第一个绑定响应信息会载明NA T X的公众网络界面的IP地址和开启的连接端口;

该网络装置Host A会使用IP地址IPa,且通过连接端口Pa1送出第二个绑定 请求信息至STUN服务器的连接端口Ps11的公众IP地址IPs1,其中该第二个绑 定请求信息内的变更要求(CHANGE-REQUEST)属性为连接端口(port),当ST  UN服务器接收到该第二个绑定请求信息后,会使用IP地址IPs1且通过连接端 口Ps12回复第二个绑定响应信息至网络装置Host A,该第二个绑定响应信息 会载明NAT X的公众网络界面的IP地址和开启的连接端口;

又,该网络装置Host A会使用IP地址IPa,且通过连接端口Pa1送出第三个 绑定请求信息至STUN服务器的连接端口Ps11的公众IP地址IPs1,其中该第三 个绑定请求信息的变更要求(CHANGE-REQUEST)属性为IP地址,当STUN服 务器接收到该第三个绑定请求信息后,会使用IP地址IPs2且通过连接端口Ps21 回复第三个绑定响应信息至网络装置Host A,该第三个绑定响应信息会载明N AT X的公众网络界面的IP地址和开启的连接端口;及

该网络装置Host A能根据该等绑定响应信息,判断出NAT X的映封包过 滤规则是Independent、Address Dependent或Address&Port Dependent。若该 网络装置Host A能接收到全部的绑定响应信息,则该NAT X的映封包过滤规 则是Independent;若该网络装置Host A仅接收到第一、二个绑定响应信息, 则该NAT X的映封包过滤规则是Address Dependent;若该网络装置Host A仅 接收到第一绑定响应信息,则代表该NAT X的映封包过滤规则是Address& Port Dependent。

综上所述可知,STUN服务器必须与各个网络装置进行多次的互动,才能 使位于NAT后方的网络装置得知NAT的映射地址及NAT的映射行为和封包过 滤规则,然而,随着IPv4网络地址的使用殆尽,NAT的使用势必更加普及, 意即,会有愈来愈多位于NAT后方的网络装置,需通过STUN服务器的协助来 取得NAT的映射地址及NAT的映射行为和封包过滤规则,如此,将会造成ST  UN服务器的负担大增,故,如何有效解决前述问题,以能减轻STUN服务器 的负担,同时,能使各个网络装置能够迅速地取得所在私有网域的NAT的信 息,即成为许多网络服务业者努力研发并亟欲达成的一重要目标。

发明内容

有鉴于在NAT被广泛使用后,会造成STUN服务器的负担大增,故,发明 人经过长久努力研究与实验,终于开发设计出本发明的一种通过二网络装置 的协助完成STUN(Session Traversal Utilities for Network Address Translati  on)技术的网络系统及其方法,以期通过本发明的问世,能大幅降低STUN服 务器的负担。

本发明的一目的,提供一种通过二网络装置的协助完成STUN(Session  Traversal Utilities for Network Address Translation)技术的网络系统及其方 法,其中该网络系统包括一追踪连线服务器、一第一网络地址转换器(Netwo  rk Address Translation,简称NAT)、一第一网络装置、一第二NAT、一第二 网络装置、一第三NAT及一第三网络装置,其中该追踪连线服务器(Coordin  ator Server)是位于公众网域,一第一私有网域中包括该第一NAT及该第一网 络装置,且该第一NAT为完全圆锥形NAT(full-cone NAT)类型,该第一网 络装置是通过该第一NAT连接至公众网域,且具有提供其它网络装置取得NA T信息的协助能力,并能向该追踪连线服务器注册一第一NAT映射地址及一第 二NAT映射地址,另,一第二私有网域中包括一第二NAT及一第二网络装置, 其中该第二NAT为完全圆锥形NAT类型,该第二网络装置是通过该第二NAT 连接至公众网域,且具有提供其它网络装置取得NAT信息的协助能力,并能 向该追踪连线服务器注册一第三NAT映射地址及一第四NAT映射地址,再者, 一第三私有网域中包括该第三NAT及该第三网络装置,该第三网络装置是通 过该第三NAT连接至公众网域,且会向该追踪连线服务器取得该等NAT映射 地址,并据以对该第三NAT进行NAT行为测试(Mapping行为测试、Filtering 行为测试),以取得该第三NAT的映射地址及NAT行为,如此,其它网络装 置在不经过STUN服务器进行NAT行为测试的情况下,也能够通过已向该追踪 连线服务器注册的网络装置实现STUN技术,顺利地取得自身所在的私有网域 的NAT信息(如:Mapping行为、Filtering行为、NAT开启的连接端口),以 使不同私有网域间的该等网络装置能够建立连线路径。

本发明的另一目的,是该第三网络装置在判断出该第三NAT为完全圆锥 形NAT类型的状态下,该第三网络装置会向该追踪连线服务器注册一第五NA T映射地址及一第六NAT映射地址,使得该第三网络装置也得以协助其它网络 装置完成STUN技术,如此,即可大幅降低STUN服务器的运作负担,且不会 造成部份提供STUN服务的网络装置的负担过重。

为便贵审查委员能对本发明目的、技术特征及其功效,做更进一步的认 识与了解,兹举实施例配合附图,详细说明如下:

附图说明

图1是本发明的网络系统架构图;

图2是第一网络装置及第二网络装置进行映射行为测试的程序图;

图3是第一网络装置及第二网络装置进行封包过滤规则测试的程序图;

图4是第三网络装置进行映射行为测试的程序图;及

图5是第三网络装置进行封包过滤规则测试的程序图。

附图标记

网络系统            ……                  1

追踪连线服务器      ……                  10

第一NAT             ……                  11

第二NAT             ……                  12

第三NAT             ……                  13

第一网络装置        ……                  14

第二网络装置        ……                  15

第三网络装置        ……                  16

STUN服务器                                17

第一私有网域                              A

第二私有网域                              B

第三私有网域                              C

具体实施方式

本发明是一种通过二网络装置的协助完成STUN(Session Traversal Utili  ties for Network Address Translation)技术的网络系统及其方法,请参阅图1 所示,在一实施例中,该网络系统1包括一追踪连线服务器10、一第一网络地 址转换器(Network Address Translation,简称NAT)11、一第二NAT12、 一第三NAT13、一第一网络装置14、一第二网络装置15及一第三网络装置16, 其中该追踪连线服务器10是位于公众网域上,且可为一tracker或一coordinat  or,用以在节点与节点间执行追踪连线,另,该第一NAT11及该第一网络装 置14是位于一第一私有网域A中,且该第一NAT11为完全圆锥形NAT(full -cone NAT)类型,意即,该第一NAT11的映射行为(Mapping Behavior) 和封包过滤规则(Filtering Behavior)皆是independent,又,该第一网络装置 14是通过该第一NAT11连接至公众网域,且具有提供其它网络装置取得NAT 信息的协助能力,并能向该追踪连线服务器10注册一第一映射地址及一第二 映射地址。

复请参阅图1所示,该第二NAT12及该第二网络装置15是位于一第二私 有网域B中,该第二网络装置15是通过该第二NAT12连接至公众网域,且具 有提供其它网络装置取得NAT信息的协助能力,并能向该追踪连线服务器10 注册一第三映射地址及一第四映射地址,另,该第三NAT13及该第三网络装 置16则位于一第三私有网域C中,该第三网络装置16是通过该第三NAT13连 接至公众网域,且会向该追踪连线服务器10取得第一、二、三、四映射地址, 并据以对该第三NAT13进行NAT行为测试(如:映射行为(Mapping Behavi  or)测试、封包过滤规则(Filtering Behavior)测试),以取得该第三NAT的 映射地址及NAT行为,如此,第三网络装置16无需通过STUN服务器17进行N AT行为测试,也能够实现STUN技术,顺利地取得自身所在的第三私有网域C 的第三NAT13的信息(如:映射行为、封包过滤规则、第三NAT13开启的 连接端口),以使不同私有网域间的该等网络装置能够建立连线路径,大幅 降低STUN服务器的工作负担。

为明确揭露出前述的整体技术特征,首先就如何判断第一网络装置14及 第二网络装置15是具有提供其它网络装置取得NAT信息的协助能力的步骤, 进行说明,复请参阅图1所示,其中该第一网络装置14的IP地址为IPa,且其所 开启的二连接端口为Pa1、Pa2,该第二网络装置的IP地址为IPb,且其所开启 的二连接端口为Pb1、Pb2,另,STUN服务器17的网络接口有两个公共(Publ  ic)IP地址分别为IPs1与IPs2,其中公众IP地址IPs1会开启两个sockets,以分别 使用连接端口Ps11和Ps12,公众IP地址IPs2会开启一个socket并使用连接端口P s21,该追踪连线服务器10的公众IP地址为IPt,且该IPt会开启一个socket并使 用连接端口Pt。另,第一网络装置14会使用IP地址IPa,且该第二网络装置15 会使用IP地址IPb,分别送出请求信息至追踪连线服务器10的连接端口Pt的公 众IP地址IPt,如此,第一、二网络装置14、15即可取得该STUN服务器17提供 STUN服务时所需的公众IP地址IPs1、IPs2及连接端口Ps11、Ps12、Ps21,在此 声明者,在后续说明中,当请求信息是由IP地址IPa且通过连接端口Pa1送出, 则IP地址及对应的连接端口会简单记载为传输地址IPa.Pa1,以避免文字叙述 过于复杂,合先陈明。

复请参阅图1所示,第一网络装置14及第二网络装置15取得STUN服务器1 7的公众IP地址IPs1、IPs2及连接端口Ps11、Ps12、Ps21后,第一网络装置14 及第二网络装置15会分别和该STUN服务器17进行通信,以能取得各自对应的 第一NAT11及第二NAT12的相关信息(如:公众IP地址、开启的连接端口、 映射行为和封包过滤规则),由于第一网络装置14及第二网络装置15于进行N AT行为测试的过程相同,以下仅就第一网络装置14的NAT行为测试进行说明, 首先,针对映射行为测试而言,请参阅图2所示:

第一网络装置14会从其传输地址IPa.Pa1通过第一NAT11传送第一个绑 定请求信息(Binding Request)至STUN服务器17的传输地址IPs1.Ps11(如图 2的a1);

该STUN服务器17接收到该第一个绑定请求信息后,会自传输地址IPs1.Ps 11回复第一个绑定响应信息(Binding Response)至该第一网络装置14(如图 2的a2),其中该第一个绑定响应信息中会载明第一NAT11的公众IP地址和开 启的连接端口;

第一网络装置14会从其传输地址IPa.Pa1通过第一NAT11传送第二个绑 定请求信息至STUN服务器17的传输地址IPs1.Ps12(如图2的a3);

该STUN服务器17接收到该第二个绑定请求信息后,会自传输地址IPs1.Ps 12回复第二个绑定响应信息至该第一网络装置14(如图2的a4),其中该第二 个绑定响应信息中会载明第一NAT11的公众IP地址和开启的连接端口;

最后,第一网络装置14会从其传输地址IPa.Pa1通过第一NAT11传送第三 个绑定请求信息至STUN服务器17的传输地址IPs2.Ps21(如图2的a5);

该STUN服务器17接收到该第三个绑定请求信息后,会自传输地址IPs2.Ps 21回复第三个绑定响应信息至该第一网络装置14(如图2的a6),其中该第三 个绑定响应信息中会载明第一NAT11的公众IP地址和开启的连接端口;

当第一网络装置14接收到前述该等绑定响应信息后,若该等绑定响应信 息中所载明的连接端口(Port)皆相同,则代表第一NAT11的映射行为为Ind  ependent,若只有第一、二绑定响应信息中所载明的连接端口相同,则代表第 一NAT11的映射行为为Address Dependent,若该等绑定响应信息中所载明的 连接端口均不相同,则代表第一NAT11的映射行为为Address&Port Depen  dent。

针对封包过滤规则测试而言,请参阅图1及图3所示:

第一网络装置14会从其传输地址IPa.Pa2通过第一NAT11传送第四个绑 定请求信息至STUN服务器17的传输地址IPs1.Ps11(如图3的b1);

该STUN服务器17接收到该第四个绑定请求信息后,会自传输地址IPs1.Ps 11回复第四个绑定响应信息至该第一网络装置14(如图3的b2),其中该第四 个绑定响应信息中会载明第一NAT11的公众IP地址和开启的连接端口;

第一网络装置14会从其传输地址IPa.Pa2通过第一NAT11传送第五个绑 定请求信息至STUN服务器17的传输地址IPs1.Ps11(如图3的b3),其中该五 个绑定请求信息的CHANGE-REQUEST属性中的变更连接端口(change port) 旗标(Flag)设为1;

该STUN服务器17接收到该第五个绑定请求信息后,会自传输地址IPs1.Ps 12回复第五个绑定响应信息至该第一网络装置14(如图3的b4),其中该第五 个绑定响应信息中会载明第一NAT11的公众IP地址和开启的连接端口;

最后,第一网络装置14会从其传输地址IPa.Pa2通过第一NAT11传送第六 个绑定请求信息至STUN服务器17的传输地址IPs1.Ps11(如图3的b5),其中 该六个绑定请求信息的CHANGE-REQUEST属性中的变更IP(change IP)旗 标设为1;

该STUN服务器17接收到该第六个绑定请求信息后,会自传输地址IPs2.Ps 21回复第六个绑定响应信息至该第一网络装置14(如图3的b6),其中该第六 个绑定响应信息中会载明第一NAT11的公众IP地址和开启的连接端口;

当第一网络装置14能接收到第四、五、六绑定响应信息时,则代表第一N AT11的封包过滤规则为Independent,若第一网络装置14只接收到第四、五绑 定响应信息时,则代表第一NAT11的封包过滤规则为Address Dependent,若 第一网络装置14只接收到第四绑定响应信息时,则代表第一NAT11的封包过 滤规则为Address&Port Dependent。

复请参阅图1所示,当第一NAT11及第二NAT12的映射行为和封包过滤 规则皆是independent,则表示第一NAT11及第二NAT12为完全圆锥形NAT (full-cone NAT)类型,则位于该等NAT11、12后方的该等网络装置14、1 5是具有提供其它网络装置取得NAT信息的协助能力,因此,第一网络装置14 会向该追踪连线服务器10注册一第一映射地址IPx.Px1及一第二映射地址IPx.P  x2,其中该第一映射地址IPx.Px1是对应于第一网络装置14的传输地址IPa.Pa1, 该第二映射地址IPx.Px2是对应于第一网络装置14的传输地址IPa.Pa2,又, 第二网络装置15会向该追踪连线服务器10注册一第三映射地址IPy.Py1及一第 四映射地址IPy.Py2,其中该第三映射地址IPy.Py1是对应于第二网络装置15的 传输地址IPb.Pb1,该第四映射地址IPy.Py2是对应于第二网络装置15的传输地 址IPb.Pb2。

承上,复请参阅图1所示,当追踪连线服务器10中已被注册多个网络装置, 且该等网络装置皆具有提供其它网络装置取得NAT信息的协助能力时,该追 踪连线服务器10会选出其中两个网络装置,并通知该二网络装置需协同提供S  TUN服务(即,供其它网络装置取得NAT信息的服务),其中该追踪连线服 务器10的通知程序如下:

追踪连线服务器10会分别传送一组织信息至第一NAT11的第一映射地 址IPx.Px1,及第二NAT12的第三映射地址IPy.Py1;

第一NAT11会将该组织信息转送至第一网络装置14的传输地址IPa.Pa1, 其中该组织信息会告知第一网络装置14需和第二网络装置15协同提供STUN 服务,又,第二NAT12会将该组织信息转送至第二网络装置15的传输地址IP  b.Pb1,其中该组织信息会告知第二网络装置15需和第一网络装置14协同提供S  TUN服务;

第一网络装置14会传送一组织确认请求信息至第二NAT12的第三映射 地址IPy.Py1,该第二NAT12会将组织确认请求信息转送至第二网络装置15 的传输地址IPb.Pb1,又,当该第二网络装置15接收到该组织确认请求信息后, 其会传送一组织确认回复信息至第一NAT11的第一映射地址IPx.Px1,该第一 NAT11会将该组织确认回复信息转送至第一网络装置14的传输地址IPa.Pa1;

该第二网络装置15也会传送另一组织确认请求信息至第一NAT11的第 一映射地址IPx.Px1,该第一NAT11会将该另一组织确认请求信息转送至第一 网络装置14的传输地址IPa.Pa1,又,当该第一网络装置14接收到该另一组织 确认请求信息后,其会传送另一组织确认回复信息至第二NAT12的第三映射 地址IPy.Py1,该第二NAT12会将该另一组织确认回复信息转送至第二网络装 置15的传输地址IPb.Pb1。

如此,当其它网络装置欲取得自身所在的私有网域的NAT信息时,该第 一网络装置14及第二网络装置15便能够协同提供STUN服务予该其它网络装 置。

复请参阅图1所示,兹就第三网络装置16如何通过第一、二网络装置14、 15,取得第三NAT13的NAT信息,进行说明,其中该第三网络装置16的IP地 址为IPc,且其所开启的二连接端口为Pc1、Pc2,首先,该第三网络装置16会 通过自身的传输地址IPc.Pc1传送一请求信息至追踪连线服务器10的传输地址 IPt.Pt,以能取得提供STUN服务的相关信息(即,第一、二NAT11、12的各 该映射地址IPx.Px1IPx.Px2、IPy.Py1和IPy.Py2),以能进行后续NAT行为测 试。当该第三网络装置16进行映射行为测试时,是会执行下列步骤,请参阅 图4所示:

第三网络装置16会从其传输地址IPc.Pc1通过第三NAT13传送第七个绑 定请求信息至第一NAT11的第一映射地址IPx.Px1(如图4的c1);

第一NAT11会将该第七个绑定请求信息转送至第一网络装置14的传输 地址IPa.Pa1(如图4的c2);

该第一网络装置14接收到该第七个绑定请求信息后,会回复第七个绑定 响应信息至该第三网络装置16(如图4的c3),其中该第七个绑定响应信息中 会载明第三NAT13的公众IP地址和开启的连接端口;

第三网络装置16会从其传输地址IPc.Pc1通过第三NAT13传送第八个绑 定请求信息至第一NAT11的第二映射地址IPx.Px2(如图4的c4);

第一NAT11会将该第八个绑定请求信息转送至第一网络装置14的传输 地址IPa.Pa2(如图4的c5);

该第一网络装置14接收到该第八个绑定请求信息后,会回复第八个绑定 响应信息至该第三网络装置16(如图4的c6),其中该第八个绑定响应信息中 会载明第三NAT13的公众IP地址和开启的连接端口;

最后,第三网络装置16会从其传输地址IPc.Pc1通过第三NAT13传送第九 个绑定请求信息至第二NAT12的第三映射地址IPy.Py1(如图4的c7);

第二NAT12会将该第九个绑定请求信息转送至第二网络装置15的传输 地址IPb.Pb1(如图4的c8);

该第二网络装置15接收到该第九个绑定请求信息后,会回复第九个绑定 响应信息至该第三网络装置16(如图4的c9),其中该第九个绑定响应信息中 会载明第三NAT13的公众IP地址和开启的连接端口;

当第三网络装置16接收到前述该等绑定响应信息后,若该等绑定响应信 息中所载明的连接端口皆相同,则代表第三NAT13的映射行为为Independen t,若只有第七、八绑定响应信息中所载明的连接端口相同,则代表第三NAT 13的映射行为为Address Dependent,若该等绑定响应信息中所载明的连接端 口均不相同,则代表第三NAT13的映射行为为Address&Port Dependent。

当该第三网络装置16进行封包过滤规则测试时,是会执行下列步骤,请 参阅图5所示:

第三网络装置16会从其传输地址IPc.Pc2通过第三NAT13传送第十个绑 定请求信息至第一NAT11的第一映射地址IPx.Px1(如图5的d1);

第一NAT11会将该第十个绑定请求信息转送至第一网络装置14的传输 地址IPa.Pa1(如图5的d2);

该第一网络装置14接收到该第十个绑定请求信息后,会回复第十个绑定 响应信息至该第三网络装置16(如图5的d3),其中该第十个绑定响应信息中 会载明第三NAT13的公众IP地址和开启的连接端口;

第三网络装置16会从其传输地址IPc.Pc2通过第三NAT13传送第十一个 绑定请求信息至第一NAT11的第一映射地址IPx.Px1(如图5的d4),其中该 第十一个绑定请求信息的CHANGE-REQUEST属性中change port旗标设为1;

第一NAT11会将该第十一个绑定请求信息转送至第一网络装置14的传 输地址IPa.Pa1(如图5的d5);

该第一网络装置14接收到该第十一个绑定请求信息后,会自传输地址IPa. Pa2回复第十一个绑定响应信息至该第三网络装置16(如图5的d6),其中该 第十一个绑定响应信息中会载明第三NAT13的公众IP地址和开启的连接端 口;

最后,第三网络装置16会从其传输地址IPc.Pc2通过第三NAT13传送第十 二个绑定请求信息至第一NAT11的第一映射地址IPx.Px1(如图5的d7),其 中该第十二个绑定请求信息的CHANGE-REQUEST属性中change IP旗标设为 1;

第一NAT11会将该第十二个绑定请求信息转送至第一网络装置14的传 输地址IPa.Pa1(如图5的d8);

该第一网络装置14接收到该第十二个绑定请求信息后,会通知第二网络 装置15(如图5的d9);

第二网络装置15会自传输地址IPb.Pb1回复第十二个绑定响应信息至该第 三网络装置16(如图5的d10),其中该第十二个绑定响应信息中会载明第三N AT13的公众IP地址和开启的连接端口;

当第三网络装置16能接收到第十、十一、十二绑定响应信息时,则代表 第三NAT13的封包过滤规则为Independent,若第三网络装置16只接收到第 十、十一绑定响应信息时,则代表第三NAT13的封包过滤规则为Address De pendent,若第三网络装置16只接收到第十绑定响应信息时,则代表第三NAT 13的封包过滤规则为Address&Port Dependent。

综上所述可知,通过该第一网络装置14及第二网络装置15所提供的STUN 服务,第三网络装置16即可得知第三NAT13的NAT信息,而不需再通过STU N服务器17才能得知第三NAT13的NAT信息,因此,能够大幅降低STUN服 务器17的运作负担。此外,当该第三NAT13的映射行为和封包过滤规则皆是 independent,则表示第三NAT13为完全圆锥形NAT(full-cone NAT)类型, 意即,第三网络装置16具有提供其它网络装置取得NAT信息的协助能力,因 此,第三网络装置16尚能向该追踪连线服务器10注册一第五映射地址IPz.Pz1 及一第六映射地址IPz.Pz2,其中该第五映射地址IPz.Pz1是对应于第三网络装 置16的传输地址IPc.Pc1,该第六映射地址IPz.Pz2是对应于第三网络装置16的 传输地址IPc.Pc2,如此,第三网络装置16也得以协助其它网络装置取得自身 所在的私有网域的NAT信息。

以上所述,仅是本发明的较佳实施例,本发明所主张的权利范围,并不 局限于此,本领域相关技术人员,依据本发明所揭露的技术内容,可轻易思 及的等效变化,均应属不脱离本发明的权利要求书保护范畴。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号