NGN业务———NAT穿透技术
发布时间:2006-10-14 3:56:50   收集提供:gaoqian
严军 华为技术有限公司


1 背景

  目前,NGN正逐步从试验走向商用,在此过程中遇到了很多实际问题,特别是NGN用户的接入问题。NGN是一个基于分组网承载的网络,接入用户都是通过IP地址来寻址的,但当前网络的实际情况是,由于IP地址资源紧缺以及安全等原因,网上大量的企业网和驻地网基本都采用私有IP地址通过出口的NAT(Network Address Translation,网络地址转换)/FW(Fire Wall,防火墙)接入公网,而目前在IP上承载语音和视频的协议(如H.323、SIP、MGCP、H248 等),由于其本身的特点所决定,在私网用户接入应用中,这些协议的控制通道/媒体通道难以穿越传统的NAT/FW 设备与公网进行互通,或者说目前的NAT/FW大多支持HTTP的数据应用协议穿透,而不支持会话业务的控制与媒体NAT/FW穿透。NGN最大的好处就是能为用户提供丰富的业务,特别是能为企业用户提供语音、数据、视频融合的IP Centrex业务,因此上面所提到的问题就成为目前开展NGN业务最大的障碍,迫切需要解决。目前业界的解决方案有如下几种:

  NAT/ALG(Application Layer Gateway,应用层网关)方式;

  MIDCOM(Middlebox Communication)方式;

  STUN(Simple Traversal of UDP Through Network Address Translators,UDP对NAT的简单穿越)方式;

  TURN(Traversal Using Relay NAT,通过中继方式穿越NAT)方式;

  Full Proxy(信令代理+媒体中继)方式。

2 技术方案

2.1 NAT/ALG方式

  普通的NAT是通过修改UDP或TCP报文头部地址信息实现地址转换的,但部分承载于TCP/UDP的应用,如多媒体会话、文件共享、游戏等“端到端”的应用,在TCP/UDP负载中也需要携带地址信息。一般的方法是应用程序在负载中填写其自身地址,此地址信息在通过NAT时被修改为NAT上对外的地址。这就是我们常说的ALG方式。

  对于NGN业务应用,ALG需要支持对IP 语音和视频协议(H.323、SIP、MGCP/H.248)的识别和对NAT/FW的控制,以便使NGN业务顺利穿越NAT/FW。

  NAT/ALG方式的应用组网的关键为:企业网/驻地网内部终端设备能穿透NAT/ALG注册到公网软交换上,通过软交换进行协议解析和呼叫处理。

  公网软交换和企业网终端通过SIP/H.323/MGCP/H.248 协议互通,NAT/ALG需要识别SIP/ H.323/MGCP/H.248协议信令并建立媒体流通道,以支持媒体流顺利穿越NAT/FW。

  对于ALG应用来说,需要在应用业务安全要求上做一些折衷,因为ALG 不能识别加密后的报文内容,必须保证报文采用明文传送,这使得报文在公网中传送时存在很大的安全隐患。

  NAT/ALG是支持NGN应用的一种最简单的方式,但由于网络已部署了大量的、不支持NGN业务应用的NAT/FW设备,因此我们不推荐采用这种方式,理由如下:

  网上大量的NAT/FW设备因不具备ALG能力,需要更换或升级;

  NGN业务的ALG生产厂商少,也没有一套产品特性需求基线;

  NAT/FW设备厂商一般不是IP业务领域的专业厂商,难以支持业务的变化(如SIP的扩展多种多样);

  用户不愿意重新购买NAT/FW设备,更无法判断各种ALG的可行性;

  用户普遍希望运营商在不改变已有网络设备(NAT)的情况下就可以提供新的IP业务。

2.2 MIDCOM方式

  与NAT/ALG不同的是,MIDCOM的框架结构采用可信的第三方(MIDCOM Agent)对Middlebox (NAT/FW )进行控制的机制,应用业务识别智能也由Middlebox转移到外部的MIDCOM Agent上,因此应用协议对Middlebox是透明的。

  由于应用业务识别的智能从Middlebox转移到外部的MIDCOM Agent上,因此根据MIDCOM 的架构,在不需要更改Middlebox基本特性的基础上,通过对MIDCOM Agent的升级就可以支持更多的新业务,这是MIDCOM相对NAT/ALG方式的一个很大的优势。

  在NGN业务实际应用中,Middlebox功能可驻留在NAT/FW中,通过软交换设备(即MIDCOM Agent)实现对IP语音和视频协议(H.323、SIP、MGCP/H.248)的识别和对NAT/FW的控制,因此它可以作为NGN业务穿越NAT/FW的一个解决方案。

  从安全性方面考虑,MIDCOM方式可支持控制报文和媒体流的加密,因此安全性比较高。

  MIDCOM 方式的应用组网的关键为:公网软交换通过MIDCOM协议对私网边缘的NAT/FW设备进行控制,软交换识别主、被叫侧的SIP/H.323/MGCP/H.248协议,如主、被叫侧均为局内的私网用户,软交换需要通过MIDCOM协议控制主、被叫两侧的NAT/FW,在NAT/FW上创建了媒体流通道后,媒体流可顺利穿越NAT/FW。

  由于软交换设备上已经实现了对SIP/H.323/MGCP/H.248协议的识别,因此只需在软交换和NAT/FW设备上增加MIDCOM协议即可,而且以后新的应用业务识别将支持软交换所支持的一切功能。因此,这种方案是一种比较有前途的解决方案,但现有的NAT/FW设备需升级以支持MIDCOM协议。

2.3 STUN方式

  解决NGN中NAT问题的另一种思路是:私网接入用户通过某种机制预先得到其地址对应在出口NAT上的对外地址,然后直接填写出口NAT上的对外地址,而不是私网内用户的私有IP地址,这样报文负载中的内容在经过NAT时就无需被修改了,只需按普通NAT流程转换报文头的IP地址即可,而此时负载中的IP地址信息和报文头地址信息是一致的。STUN协议就是基于此思路来解决应用层地址转换问题的。

  STUN协议最大的优点是无需对现有的NAT/FW设备做任何改动。由于实际的网络环境中已有大量的NAT/FW,并且这些NAT/FW并不支持VoIP的应用,因此若采用MIDCOM或NAT/ALG方式来解决此问题,则需要替换现有的NAT/FW,这是不太容易实现的。除此之外,STUN方式还可在多个NAT串联的网络环境中使用,这也是MIDCOM方式无法做到的。

  STUN的局限性是:需要应用程序支持STUN Client的功能,即NGN终端需要具备STUN Client的功能;不适合支持TCP连接的穿越,因此不支持H?郾323 应用协议;不支持NGN业务对防火墙的穿越,也不支持对称NAT(Symmetric NAT)类型(在安全性要求较高的企业网中,出口NAT通常就是这种类型)的穿越。

  STUN方式的应用组网的关键是:STUN Server必须放在公网中,也可以内嵌在公网软交换中。由于通过STUN协议已在NAT上预先建立媒体流的NAT映射表项,因此媒体流可顺利穿越NAT。

2.4 TURN方式

  TURN方式解决NAT问题的思路与STUN相似,实际应用原理也基本相同。

  TURN应用方式采用TURN Server的地址和端口作为客户端对外的接收地址和端口,即私网用户发出的报文都要经过TURN Server进行Relay转发。这种应用方式除了具有STUN方式的优点外,还解决了STUN应用无法穿透对称NAT(Symmetric NAT)以及类似的FW设备的问题(即无论企业网/驻地网出口为哪种类型的NAT/FW,都可以实现NAT的穿透),同时TURN还支持基于TCP的应用,如H.323协议。此外,TURN Server控制分配地址和端口,能分配RTP/RTCP地址对(RTCP端口号=RTP端口号+1)作为本端客户的接收地址,从而避免了STUN应用方式下出口NAT对RTP/RTCP地址端口号的任意分配。

  TURN的局限性是:需要终端支持TURN Client,且所有报文都必须经过TURN Server转发,增大了包的延迟和丢包的可能性。

2.5 Full Proxy方式

  Full Proxy方式通过对私网内用户呼叫的信令和媒体同时做Relay来实现出口NAT/FW的穿越。

  当私网终端呼叫信令到达Full Proxy时,Full Proxy将对呼叫信令协议中携带的RTP/RTCP信息进行解析与处理,在记录用户私网内RTP/RTCP地址和端口号的同时,修改RTP/RTCP私网地址信息为Full Proxy本身对外的公网IP地址,并修改媒体流端口为Full Proxy上分配的外部端口,然后将呼叫信令发送到软交换或对端。这样呼叫信令以及媒体流就可以通过Full Proxy在主被叫之间进行中转了。

  在Full Proxy 方式下,无需对现有的NAT设备做任何改动,采用普通的设备即可,同时私网内的终端也无需支持STUN和TURN协议即可开展NGN业务,这是其较大的一个优势。它的局限性同TURN一样,增加了包的延时和丢包的可能性。

  Full Proxy方式的应用组网的关键是:同时完成对终端呼叫信令的代理转发和媒体Relay。同时,Full Proxy还可借鉴TURN的应用组网方式,拓展应用范围。

  由于Full Proxy方式会对呼叫协议进行解析,因此除了可以处理NAT问题外,还可完成对每次呼叫带宽等QoS信息的解析与处理,从接入层保证QoS的安全问题。此外,通过对呼叫状态的把握,还可实现对媒体流的动态防火墙,保证网络安全和防止带宽被盗用等。

  在应用领域,Full Proxy由于配置灵活,因此组网应用也很灵活,除了可实现私网地址向公网地址的转换外,还可实现公网地址向私网地址的转换,或其它不同地址域之间的变换,以满足NGN不同场合下的组网应用。

3 小结

  根据上面的方案介绍和方案的对比分析,推荐采用Full Proxy和MIDCOM两种解决方案。

  Full Proxy方式由于不用对运营商和客户端的现有网络设备进行任何改造,因此具有很强的适应性,并且组网灵活,可满足NGN初期多样化的组网和用户接入要求。除了解决NAT问题外,其功能还可以大大地被扩展,同时在接入层可完成对会话业务QoS和安全的处理,从而可发展成为一个NGN的用户接入平台。

  MIDCOM方式具有很强的扩展性,一旦NAT/FW设备支持MIDCOM协议,MIDCOM Agent就可内嵌于软交换中,便可一劳永逸地解决NGN业务的NAT/FW的穿透问题;同时,由于软交换自身对用户呼叫协议的解析与处理同样能动态下发呼叫的QoS和安全信息,下面的Middlebox(NAT/FW)设备可根据这些信息采取必要的保证措施。由于目前网上大量的NAT/FW设备不支持MID.COM功能,需要对目前网上NAT/FW设备进行修改,同时NGN应用初期软交换设备布点数量过少,网络层次较高,因此在一定程度上影响了这种方式在现有网络情况下的应用。


----《电信技术》
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50