专利名称:外网用户穿越nat设备的实现方法
技术领域:
本发明涉及网络通信技术领域,尤其涉及一种外网用户穿越NAT设备的实现方法。
背景技术:
在现有的通信网络中,当通信双方中,至少有一方GW(网关)位于NAT(网络地址转换)服务器后的私网里时,则从所述私网外呼叫私网内GW连接的用户将无法呼叫成功。这是因为从私网外发起的呼叫到达GK(网守)后,网守GK只能将该呼叫通过相应的TCP(传输控制协议)连接到相应的NAT设备上,而在NAT设备上,则由于没有私网内的GW到NAT设备间的映射关系,导致Q931的SETUP(建立)消息无法传入私网,这样私网内的GW将无法接收到该呼叫,即主被叫间的呼叫无法建立成功。
如图1所示,当号码为5001电话用户呼叫号码为6001的电话用户时,相应的SETUP消息通过INTERNET(互联网),经过GK传送到相应的NAT设备中,但NAT设备上没有私网内GW的地址映射关系,因而NAT设备无法知道所述的SETUP消息将发送给哪一个与其连接的用户,也就无法将SETUP消息传送到被叫用户端。
发明内容
鉴于上述现有技术所存在的问题,本发明的目的是提供一种外网用户穿越NAT设备的实现方法,从而使得外网用户可以呼叫到NAT设备下的H323网关连接的用户。
本发明的目的是通过以下技术方案实现的本发明提供了一种外网用户穿越NAT设备的实现方法,包括A、当位于私网中的网关GW向网守注册成功后还向网守发送建立呼叫信令传输控制协议TCP连接的请求;B、所述的网守为所述的私网中的网关建立相应的TCP连接,并保存;C、当外网用户呼叫私网中的网关下的用户时,网守将收到的呼叫消息通过保存的该网关对应的TCP连接发送给私网中的网关下的用户。
所述的步骤A包括所述的私网中的网关使用快速建立过程或H245TUNNULING方式向H323网络的网守发起建立TCP连接。
所述的步骤A还包括所述的私网中的网关通过向网守发起被叫号码为特殊号码的呼叫建立其与网守间的TCP连接。
所述的步骤B还包括在所述的网守上建立并保存有私网中的网关的标识与建立的TCP连接的对应关系映射表。
所述的外网用户穿越NAT设备的实现方法还包括保持NAT映射表时效性的过程私网中的网关通过建立的TCP连接定时向网守发送刷新消息,保持NAT映射表的时效。
所述的私网中的网关向网守发送刷新消息的周期可以根据NAT映射表的超时时间进行设置。
所述的外网用户穿越NAT设备的实现方法还包括释放所述的TCP连接的过程
当所述的私网中的网关向网守发送注销消息时,则网守释放该网关对应的TCP连接;或者,私网中的网关定时向网守发送注册消息,如果注册失败,则网关释放该网关对应的TCP连接。
所述的外网用户穿越NAT设备的实现方法还包括私网中的网关定时向网守发送注册消息,如果网守在设定的时间段未收到所述网关发来的注册消息时,则删除该网关对应的TCP连接。
由上述本发明提供的技术方案可以看出,本发明采用了在NAT下的网关与相应的网守间建立永久的TCP连接,从而保证了当外网主叫用户呼叫NAT设备下的H323网关连接的私网用户时,可以通过所述的网守及保存的TCP连接顺利呼叫到被叫的私网用户。因此,本发明的实现为网络中灵活地开展各项VOIP业务提供了可靠的技术方案。
图1为开展VOIP业务的网络组网示意图;图2为本发明中外网主叫用户呼叫私网用户的过程示意图;图3为本发明提供的方法的流程图。
具体实施例方式
本发明的核心是将位于公网上的网守GK,用作呼叫代理,转发呼叫信令消息。NAT服务器后的GW注册成功后主动向GK发起呼叫信令的TCP(传输控制协议)连接,此后所有到该GW的信令都以该TCP连接作为通道,从而保证了外网主叫用户可以顺利呼叫到私网用户,实现了由公网到私网的穿越。
本发明在具体实现过程中主要是针对现有网络中GK和NAT设备下连接的GW的修改,所述的修改主要是修改增加相应的处理过程,从而保证外网的用户可以顺利地呼叫到NAT设备下连接的GW下的用户。
下面结合附图对本发明所述的方法进行相应的说明。参见图2和图3,本发明所述方法包括以下步骤步骤31网络中的NAT设备下连接的接入网关需要向其对应的网守GK发送注册消息,以进行注册;首次注册成功后,在后续的过程中,所述的接入网关还需要定期向网守发送注册消息。如果网关注册失败,则释放以前建立的TCPNAT连接。
步骤32当NAT设备后的GW(192.168.2.4)向GK注册成功后,则需要立刻向GK发送SETUP(建立)消息,以建立一条TCP连接,并保持该TCP连接,称之为TCPNAT连接;为保证网络通信的及时可靠,要求GW使用快速建立方式或者H245TUNNULING(在Q931的TCP连接上传送H245的消息),这样可以不用再建立的H245的TCP连接;位于私网的GW向注册成功后,可以向网守GK发送被叫号码为“*#*#*#*#*#”的SETUP消息,请求建立一个特殊的呼叫;GK收到被叫号码IE为“*#*#*#*#*#”的setup消息,保存该连接,称其为TCPNAT连接,同时设置并保存所述GW端点的标识;针对该呼叫建立的TCP连接将被永远保持,所有的定时器对此TCP连接均无效,而且GK不需要对此呼叫进行应答。
步骤33外网用户通过网守GK保持的TCP连接便可以将呼叫接至NAT设备后的GW下的用户,从而实现穿越NAT设备与私网用户进行通信;如图2所示,当用户5001呼叫用户6001的信令在网络中的传输到网守GK时,则网守将根据被叫的私网用户连接的接入网关的标识信息确定与其对应的TCP连接,通过所述的TCP连接便可以将所述信令传送到被叫用户,例如,图2中Setup 3和Setup 4段的消息传输就是在保存的TCPNAT连接上进行传送的;本发明中,当网守GK收到端点发送过来的被叫号码不为“*#*#*#*#*#”的SETUP消息,则记录其call identifier(呼叫标识),并通过其被叫号码查找被叫接入网关端点,若被叫接入网关端点是步骤32记录的端点的标识,则用步骤32中保存的TCPNAT连接对收到的消息进行转发;对于网守GK收到端点发送过来的其它呼叫信令消息,通过其callidentifier找到SETUP消息使用的连接对其进行转发,这一处理方式与现有技术相同,不再详述。
本发明中,对于建立的TCPNAT连接还需要定期对其进行刷新处理,具体的NAT连接刷新是通过GW在原来的针对“*#*#*#*#*#”呼叫建立的TCPNAT连接通道上周期发送“*#*#*#*#*#”的information(信息)消息进行,这样便可以刷新NAT上的映射表的时效,对NAT上保存着接入网关标识信息与建立的TCP连接对应关系的映射表定期进行刷新是否为了确保各TCP连接的有效,进而保证通信的可靠;考虑到NAT映射表超时时间不固定,要求GW可以对连接刷新周期进行配置,即对发送刷新信息消息的周期进行配置,具体的周期可以根据NAT映射表超时时间进行设置。
在NAT上保存的TCP连接的永久性是相对于普通的TCP连接而言,并不是真的建立之后就一直保存不再对其进行任何拆除处理,因此,本发明中还包括对于建立的TCPNAT连接的释放处理过程,具体如下GW注销的时候GK删除其NAT连接,断开针对这个特殊的呼叫建立的TCP连接,即网守GK收到GW注销的消息后清除该特殊呼叫;GW周期性注册失败时,删除这个TCPNAT连接,具体为当网过GK在设定的时间段内未收到相应网关发送来的注册消息,则释放该TCPNAT连接,消除保持的特殊的呼叫。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
权利要求
1.一种外网用户穿越NAT设备的实现方法,其特征在于,包括A、当位于私网中的网关GW向网守注册成功后还向网守发送建立呼叫信令传输控制协议TCP连接的请求;B、所述的网守为所述的私网中的网关建立相应的TCP连接,并保存;C、当外网用户呼叫私网中的网关下的用户时,网守将收到的呼叫消息通过保存的该网关对应的TCP连接发送给私网中的网关下的用户。
2.根据权利要求1所述的外网用户穿越NAT设备的实现方法,其特征在于,所述的步骤A包括所述的私网中的网关使用快速建立或H245TUNNULING方式向H323网络的网守发起建立TCP连接。
3.根据权利要求1或2所述的外网用户穿越NAT设备的实现方法,其特征在于,所述的步骤A还包括所述的私网中的网关通过向网守发起被叫号码为特殊号码的呼叫建立其与网守间的TCP连接。
4.根据权利要求1所述的外网用户穿越NAT设备的实现方法,其特征在于,所述的步骤B还包括在所述的网守上建立并保存有私网中的网关的标识与建立的TCP连接的对应关系映射表。
5.根据权利要求1所述的外网用户穿越NAT设备的实现方法,其特征在于,该方法还包括保持NAT映射表时效性的过程私网中的网关通过建立的TCP连接定时向网守发送刷新消息,保持NAT映射表的时效。
6.根据权利要求4或5所述的外网用户穿越NAT设备的实现方法,其特征在于,私网中的网关向网守发送刷新消息的周期可以根据NAT映射表的超时时间进行设置。
7.根据权利要求1或2所述的外网用户穿越NAT设备的实现方法,其特征在于,该方法还包括释放所述的TCP连接的过程当所述的私网中的网关向网守发送注销消息时,则网守释放该网关对应的TCP连接;或者,私网中的网关定时向网守发送注册消息,如果注册失败,则网关释放该网关对应的TCP连接。
8.根据权利要求1或2所述的外网用户穿越NAT设备的实现方法,其特征在于,该方法还包括私网中的网关定时向网守发送注册消息,如果网守在设定的时间段未收到所述网关发来的注册消息时,则删除该网关对应的TCP连接。
全文摘要
本发明涉及一种外网用户穿越NAT设备的实现方法。该方法包括当位于私网中的网关GW向网守注册成功后还向网守发送建立呼叫信令TCP连接的请求,以建立相应的TCP连接,并保存;然后,当外网用户呼叫私网中的网关下的用户时,网守将收到的呼叫消息通过保存的该网关对应的TCP连接发送给私网中的网关下的用户。因此,本发明保证了当外网主叫用户呼叫NAT设备下的H323网关连接的私网用户时,可以通过所述的网守及相应的TCP连接顺利呼叫到被叫的私网用户。本发明的实现为网络中灵活地开展各项VOIP业务提供了可靠的技术方案。
文档编号H04L12/28GK1767509SQ20041008627
公开日2006年5月3日 申请日期2004年10月29日 优先权日2004年10月29日
发明者冯冰, 单洪政, 何平 申请人:北京佳讯飞鸿电气有限责任公司