一种多媒体业务隧道穿越nat的方法

文档序号:7621034阅读:144来源:国知局
专利名称:一种多媒体业务隧道穿越nat的方法
技术领域
本发明涉及通讯领域的NAT(网络地址转换)穿越,尤其涉及一种多媒体业务隧道穿越NAT设备的方法。
背景技术
随着多媒体业务在IP网上的广泛使用,处于NAT设备内的用户要实现与NAT设备外的用户及本NAT下或其他NAT的用户的互通,需要一个支持多媒体业务NAT穿越的代理设备来实现通讯中信令和媒体包中IP地址的转换,以达到互通的目的。
如图1所示,现有技术中代理设备通常被设置于三个位置私网内部(图1中“代理1”所示位置);公、私网边缘(图1中“代理2”所示位置)和公网中(图1中“代理3”所示位置)。
隧道穿越是代理设备处于私网外部时穿越NAT设备常用的方法,尤其是H.323业务类型。现有技术中隧道穿越方案如图2所示,描述如下穿越设备由两个构件组成,即代理设备和隧道客户端TC。TC放在NAT设备后的私网中,终端和NAT外部设备的通信由TC代理,私网内的终端注册到TC上。代理设备(代理3)被安置在公网中,并具有公网IP地址。TC和代理设备之间创建一个隧道,TCP(传输控制协议)或UDP(用户数据包协议)的均可,通过这个隧道TC将所有用户的注册信息和呼叫控制信令转发到代理设备上,再由代理设备转发到控制设备(网守GK、软交换Softswitch等)上。此外,音频、视频等媒体流也由TC经过隧道转发到代理设备上。隧道客户端和服务器之间可使用自定义协议。
现有隧道穿越技术实现了H.323业务的NAT穿越,此技术同时适用于H.248、MGCP(媒体网关控制协议)、SIP(会话初始协议)等多媒体业务的NAT穿越。
现有隧道穿越方法在实际应用中存在下列问题和不足①代理设备通常是一个性能较强的设备,而TC通常是一个安装在PC机上的软件模块或一个性能很弱的小设备;TC承载全部业务的信令包和媒体包的转换和处理,对TC的性能要求和转发能力提出了很高的要求,而通常TC的性能很难达到。
②因为所有信令包和媒体包都由隧道来承载,所以隧道的性能也往往不能满足需求。
③因为TC和隧道的性能成为了业务的瓶颈,信令包不能及时处理将会导致业务的异常;媒体包不能及时处理将会导致延时加大、丢包等问题,导致服务质量下降。
因此,需要提出一种改进的多媒体业务隧道穿越NAT的方法以解决上述问题。

发明内容
本发明要解决的问题是克服现有多媒体业务隧道穿越方法中存在的对TC设备性能和隧道性能依赖过重的缺点,解决现有技术使用中因此产生的性能低下及因此产生的业务异常及服务质量下降的问题,提供一种高质量高性能的多媒体业务隧道穿越NAT的方法。
本发明采用以下技术方案,一种多媒体业务隧道穿越NAT的方法,其中私网内终端通过隧道客户端,NAT设备和代理设备组成的隧道与公网内终端和控制设备进行信令流交互,其特征在于,私网内终端直接通过NAT设备和代理设备与公网内终端进行媒体流交互。
进一步地,所述信令流交互包括以下步骤步骤一,隧道客户端启动后向代理设备申请建立隧道;步骤二,私网内终端初始工作时,向隧道客户端发起注册消息,隧道客户端将其注册消息通过隧道传送给代理设备,并记住该私网内终端的号码和地址;
步骤三,代理设备收到隧道客户端发来的注册消息后,将其携带的地址转换为代理设备自身的公网地址,发送给控制设备,并记住该号码终端所在隧道客户端的隧道;步骤四,控制设备收到从代理设备转发来的注册消息,记录该终端所在的地址为代理设备的公网地址;步骤五,该私网内终端发起呼叫或被其他用户呼叫,控制设备将发往该终端的信令消息发给代理设备的公网地址,代理设备通过隧道将消息发给隧道客户端,隧道客户端再转给该私网内终端;私网内终端向外部发送信令消息的流程与步骤二到四中注册消息的流程雷同。
进一步地,步骤五中,若某些协议需要其他用户终端与私网内的用户终端信令交互,也与代理设备的公网地址联系,代理设备通过隧道将消息发给隧道客户端,隧道客户端再转给该私网内终端。
进一步地,所述媒体流交互包括以下步骤步骤六,经过信令交互后,代理设备分配IP1/PORT1和IP2/PORT2,IP1/PORT1与公网终端进行媒体交互,IP2/PORT2与私网内终端经过NAT进行媒体交互,代理设备将从IP1/PORT1接收到的来自公网终端的媒体包通过IP2/PORT2发给私网终端,将从IP2/PORT2接收来到来自私网终端的媒体包通过IP1/PORT1发给公网终端。
进一步地,与IP2/PORT2对应的私网终端的IP/PORT是私网内终端的媒体包经过NAT设备转换后的NAT设备的公网IP/PORT。
进一步地,该IP/PORT是代理设备从监听到的第一个发向IP2/PORT2的媒体包中获得的。
与现有技术相比,由于本发明方法采用了信令流走隧道穿越NAT,媒体流不走隧道直接通过NAT设备转发的方式,分流了TC和隧道处理媒体包的繁重工作,因此取得了性能上的进步,达到了降低对TC设备性能和隧道性能严重依赖的效果,降低了对TC设备和隧道的性能的要求,节省了方案实施的成本,提高了设备的性能、业务的稳定性和服务质量。


图1是现有的代理设备在网络中的常见位置示意图。
图2是现有技术中代理设备处于NAT设备外公网的应用场景的方案示意图。
图3是本发明的代理设备处于NAT设备外公网的应用场景的方案示意图。
图4是本发明的实施例,H.323类型的业务终端注册的流程示意图。
图5是本发明的实施例,H.323类型的业务终端呼叫的流程示意图。
具体实施例方式
下面结合附图对本发明的详细实施进行说明。
图3是本发明的代理设备处于NAT设备外公网的应用场景的方案示意图,如图3所示,本发明该实施例主要由以下几部分组成私网终端(位于私网内的终端10和终端20)、TC(隧道客户端)设备、NAT设备、代理设备(位于公网内的代理3)、公网终端(位于公网内的终端30)、系统控制设备(GK、softswitch等)。各部分之间的物理连接和空间结构关系如图3所示,各部分的主要功能和相互作用关系如下私网终端将TC的地址设置为GK的地址,在私网终端看来,TC就是它的GK;TC设备在启动时,即通过NAT设备向代理设备建立通讯隧道,该隧道用来承载私网终端同代理设备间的信令包的NAT穿越;TC设备接收来自私网终端的信令,并通过隧道,将其传送给代理设备;同时接收从隧道传来的代理设备的信令消息,并根据信令消息作相应的动作;完成与私网终端间的注册和呼叫功能。
NAT设备完成正常的NAT地址转换功能,本发明方案对NAT的类型没有特殊要求;因为NAT设备转换IP头部地址,性能高,所以本方案利用NAT设备的此特性来直接承载大量频繁的媒体包的地址转换。
代理设备作为隧道的服务器端,通过隧道向TC发送信令消息和接收来自TC的信令消息。代理设备同时完成终端的功能,完成与GK和其他终端信令和媒体的地址转换。
在GK看来,私网内终端就是代理设备,因代理设备对私网内的终端进行了代理。
作为隧道的服务器端和代理设备可以是同一物理实体,也可以是分开的物理实体;隧道可以是TCP隧道也可以是UDP、L2TP等类型的隧道;代理设备可以同时与多个TC建立隧道;本方案多用于H.323业务的NAT穿越,同时也适合于MGCP、H.248和SIP等业务的NAT穿越。
此处描述方法多用于NAT穿越的公私网穿越,也可用于不同网段之间的地址转换。穿越的设备可以是NAT设备,也可以是具备相关功能的防火墙。
本发明一种多媒体业务隧道穿越NAT的方法,包括以下步骤第一步,隧道客户端启动后向代理设备申请建立隧道。
第二步,私网内终端初始工作时,向隧道客户端发起注册消息,隧道客户端将其注册消息通过隧道传送给代理设备,并记住该私网内终端的号码和地址。
第三步,代理设备收到隧道客户端发来的注册消息后,将其IP和业务协议中携带的地址转换为代理设备自身的公网地址,发送给控制设备,并记住该号码终端所在隧道客户端的隧道。
第四步,控制设备收到从代理设备转发来的注册消息,记录该终端所在的地址为代理设备的公网地址。
第五步,该私网内终端发起呼叫或被其他用户呼叫,控制设备将发往该终端的信令消息发给代理设备的公网地址,代理设备通过隧道将消息发给隧道客户端,隧道客户端再转给该私网内终端;若某些协议需要其他用户终端与私网内的用户终端信令交互,也与代理设备的公网地址联系,代理设备通过隧道将消息发给隧道客户端,隧道客户端再转给该私网内终端;私网内终端向外部发送信令消息的流程与步骤二到四中注册消息的流程雷同。
第六步,经过信令交互后,代理设备分配IP1/PORT1和IP2/PORT2,IP1/PORT1与公网终端进行媒体交互,IP2/PORT2与私网内终端经过NAT进行媒体交互,代理设备将从IP1/PORT1接收到的来自公网终端的媒体包通过IP2/PORT2发给私网终端,将从IP2/PORT2接收来到来自私网终端的媒体包通过IP1/PORT1发给公网终端;其中,与IP2/PORT2对应的私网终端的IP/PORT是私网内终端的媒体包经过NAT设备转换后的NAT设备的公网IP/PORT,该IP/PORT是代理设备从监听到的第一个发向IP2/PORT2的媒体包中获得的。
如图4和图5所示,分别以H.323协议类型的私网内终端注册和呼叫流程为例,对本实施例的具体流程进行详细描述。
图4描述终端10的注册流程步骤41终端10向TC发送GRQ(关守请求)消息,TC通过与代理设备3间的隧道,将GRQ消息转发给代理设备3,同时记住终端10的地址;代理设备3收到GRQ消息后,将消息中终端的私有地址转换为代理设备3的公网地址,向网守GK转发GRQ消息,同时记住终端10所在的隧道。
步骤42网守向代理设备3回应GCF(关守确认)消息,代理设备3通过隧道将该消息转发给TC,TC将该消息中的网守地址转换为TC的私网地址,并向终端转发GCF消息。
步骤43终端10向TC发送RRQ(注册请求)消息,TC通过与代理设备3间的隧道,将RRQ消息转发给代理设备3;代理设备3收到RRQ消息后,将消息中终端的私有地址转换为代理设备3的公网地址,向网守转发RRQ消息。
步骤44网守向代理设备3回应RCF(注册确认)消息,代理设备3通过隧道将该消息转发给TC,TC将该消息中的网守地址转换为TC的私网地址,并向终端转发RCF消息。
图5描述终端10呼叫终端30的呼叫流程步骤51终端10发起向终端30的呼叫,终端10首先向TC发送ARQ(接入请求)消息,源地址为终端10的私网地址,TC通过隧道将其转发给代理设备3,代理设备3收到ARQ消息后,把终端10地址转换为代理设备3的公网地址,向网守转发ARQ消息。
步骤52网守向代理设备3回应ACF(接入确认)消息,其中包含终端30地址,代理设备3通过隧道将该消息发给TC,同时记录终端30的公网地址;TC把终端30的公网地址转换为TC的私网地址后向终端10转发。
步骤53终端10和TC建立连接,向TC发送Setup(启动)消息,TC通过隧道将其转发给代理设备3,代理设备3收到Setup消息后,建立与终端30的连接,把源地址转换为代理设备3的公网地址,目的地址转换为终端30的公网地址,向终端30发送Setup消息。
步骤54终端30回应Call Proceeding(呼叫处理)消息,代理设备3收到后,经过如步骤52所描述的相似转换,将该消息发送给终端10。
步骤55终端30收到呼叫后,向网守发送ARQ(接入请求)消息。
步骤56网守向终端30发送ACF(接入确认)消息,消息中终端10的目的地址为代理设备3的公网地址。
步骤57终端30向代理设备3发送Alerting(告警)消息,代理设备3收到经过如步骤52所描述的相似转换,将该告警消息发送给终端10。
步骤58终端30向代理设备3发送Connect(连接)消息,代理设备3在自己设备上分配IP1/PORT1和IP2/PORT2,IP1/PORT1用于与终端30进行媒体交互,IP2/PORT2用于与终端10通过NAT进行媒体交互;代理设备3将Connect消息中的H.245地址转换为代理设备3的IP2/PORT2通过隧道发送给TC,TC设备对IP2/PORT2不作转换直接发送给终端10。
步骤59终端10与TC之间进行H.245的主从判定和能力协商,代理设备3与终端30之间进行H.245的主从判定和能力协商。
步骤60终端10和代理设备3的IP2/PORT2之间,代理设备3的IP1/PORT1和终端30之间建立媒体通道。其中,与IP2/PORT2对应的终端10的IP/PORT是终端10的媒体包经过NAT设备转换后的NAT设备的公网IP/PORT,该IP/PORT的获取是代理设备3监听到的第一个发向IP2/PORT2的媒体包中获得的。
这样信令包通过TC与代理设备间的隧道穿越NAT,媒体包不经过隧道直接穿越NAT设备的通讯就建成了。该方式分流了TC处理媒体包的繁重工作,因此取得了性能上的进步,利用了NAT设备对媒体RTP(实时协议)包的处理性能,减小了转发延时,提高了服务质量,达到了降低对TC设备性能和隧道性能严重依赖的效果,节省了方案实施的成本,提高了业务的稳定性和服务质量。
另外,由于TC只处理信令消息,因此在保证能及时处理各种信令消息外,同等条件下也提高了TC能带的终端数,提高了TC的容量。由于NAT设备是专门处理数据包的设备,处理数据包的性能强劲,在转发媒体包时,不但延时小,服务质量好,同时也提升了相同系统设备下的业务容量。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种多媒体业务隧道穿越NAT的方法,其中私网内终端通过隧道客户端,NAT设备和代理设备组成的隧道与公网内终端和控制设备进行信令流交互,其特征在于,私网内终端直接通过NAT设备和代理设备与公网内终端进行媒体流交互。
2.根据权利要求1所述的方法,其特征在于,所述信令流交互包括以下步骤步骤一,隧道客户端启动后向代理设备申请建立隧道;步骤二,私网内终端初始工作时,向隧道客户端发起注册消息,隧道客户端将其注册消息通过隧道传送给代理设备,并记住该私网内终端的号码和地址;步骤三,代理设备收到隧道客户端发来的注册消息后,将其携带的地址转换为代理设备自身的公网地址,发送给控制设备,并记住该号码终端所在隧道客户端的隧道;步骤四,控制设备收到从代理设备转发来的注册消息,记录该终端所在的地址为代理设备的公网地址;步骤五,该私网内终端发起呼叫或被其他用户呼叫,控制设备将发往该终端的信令消息发给代理设备的公网地址,代理设备通过隧道将消息发给隧道客户端,隧道客户端再转给该私网内终端;私网内终端向外部发送信令消息的流程与步骤二到四中注册消息的流程雷同。
3.根据权利要求2所述的方法,其特征在于,步骤五中,若某些协议需要其他用户终端与私网内的用户终端信令交互,也与代理设备的公网地址联系,代理设备通过隧道将消息发给隧道客户端,隧道客户端再转给该私网内终端。
4.根据权利要求1或2或3所述的方法,其特征在于,所述媒体流交互包括以下步骤步骤六,经过信令交互后,代理设备分配IP1/PORT1和IP2/PORT2,IP1/PORT1与公网终端进行媒体交互,IP2/PORT2与私网内终端经过NAT进行媒体交互,代理设备将从IP1/PORT1接收到的来自公网终端的媒体包通过IP2/PORT2发给私网终端,将从IP2/PORT2接收来到来自私网终端的媒体包通过IP1/PORT1发给公网终端。
5.根据权利要求4所述的方法,其特征在于,与IP2/PORT2对应的私网终端的IP/PORT是私网内终端的媒体包经过NAT设备转换后的NAT设备的公网IP/PORT。
6.根据权利要求5所述的方法,其特征在于,该IP/PORT是代理设备从监听到的第一个发向IP2/PORT2的媒体包中获得的。
全文摘要
本发明旨在提供一种多媒体业务隧道穿越NAT的方法,涉及通讯领域的NAT穿越。其中私网内终端通过隧道客户端,NAT设备和代理设备组成的隧道与公网内终端和控制设备进行信令流交互;私网内终端直接通过NAT设备和代理设备与公网内终端进行媒体流交互。本发明采用了信令流走隧道穿越NAT,媒体流不走隧道直接通过NAT设备转发的方式,分流了TC和隧道处理媒体包的繁重工作,提高了设备的性能、业务的稳定性和服务质量。
文档编号H04L12/56GK1901539SQ20051008616
公开日2007年1月24日 申请日期2005年7月24日 优先权日2005年7月24日
发明者赵军锋, 曹刚 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1