当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘要:为了在软交换情况下给防火墙/NAT后的用户提供完善的多元化服务。文章参考了IETF关于软交换网络中会话业务穿透NAT技术的各种方案,介绍了目前可以使用的几种NAT穿透技术和方案,并对几种技术方案进行了对比和分析。最后就软交换网络应用中的NAT穿透方案给出了应用建议。

引言

随着软交换网络逐步从试验走向商用,软交换网络的业务应用也逐渐被人们所关注。软交换业务的最大优势在于其可为用户提供丰富的业务,特别是为企业用户提供语音、数据、视频融合的业务。目前其走向成熟并商用的业务主要是在IP网上承载语音和视频业务。即是多媒体通信系统标准H.323,SIP,MGCP协议运用于视频会议和IP电话中。

1  网络地址端口转换NAPT)技术简介

在当今的网络世界里,使用私有IP地址的网络设备的数量要远远大于拥有合法IP地址的设备数量。为了能够让这些设备可以访问私网外部的资源,NAT(网络地址转换)技术也就应运而生。当私网内部设备试图访问外部网络时,NAT技术就可以将其私有的IP地址转换成合法的IP地址。NAT与PAT被同时使用,称为网络地址端口转换(NAPT)。NAPT的运用,缓解了IPv4构架下Internet网络的IP地址紧张问题,提高私有网络内部的安全性和可管理性。因此.NAPT被大量运用到各种私网网关设备上,它是绝大多数网络路由器设备的一个基本功能,也是网络防火墙功能的重要组成部分。

2  NAPT对软交换的影响

2.1  NAT问题

图1所示是一个软交换网络示意图。现在假设有一个如图1所示的软交换网络,在这个网络中,终端A与终端B在私网内,只有私网IP地址,而终端C具有独立的合法IP地址。为了便于描述,假设所有终端都是SIP终端,软交换与终端间的通讯也釆用标准的SIP协议。这样,若终端A向终端B发起呼叫请求,则会产生一个如图2所示的消息包,这个消息包在经过路由器的NAPT后,会变成图3所示的消息包,其中1050为NAPT动态分配的端口号。

由于终端B在向软交换注册时,通过SIP协议层的注册消息告诉软交换的是它的私有地址,并且在终端B没有主动对外发起连接请求时,防火墙不会为其分配可被访问的IP地址和端口号,因此,软交换根本无法将INVITE消息发送给终端B,因而呼叫无法接续。

软交换网络中的NAT穿透技术研究

2.2  PAT问题

假设由终端A向终端C发起呼叫,此时,由于终端C上面没有防火墙或路由器,软交换就可以顺利地把INVITE消息包转发到终端C,这个消息中携带有SDP信息,可用于终端间的媒体协商。媒体协商的主要目的是选择合适的编解码器,并建立RTP媒体流的连接。由终端A发送的INVITE消息中携带的SDP信息内容如图4所示,其中10006是终端A建立RTP连接的端口号。

当终端C收到SDP信息后,它将试图与192.168.0.3:10006建立RTP连接,很明显,这是一个私网内部的地址,因此,通话也自然无法建立起来。

从以上分析可以看出,NAPT影响软交换通信主要有两方面:一方面,私网内设备都采用内部IP地址,虽然经过NAPT可以将IP层的地址转换为外部地址,但是对更上面的应用层消息中的私有IP地址却无能为力(称作NAT问题);另一方面,私网设备只是在向外部主动发起连接时,才会被分配到合法IP和端口号。若不做特殊处理,设备对外部网络来说是不可见的,也无法接受软交换发来的呼叫请求(这个可以称作PAT问题)。基于SIP协议的问题如此,当软交换与终端间使用其它协议(如H.323,MGCP或H.248协议)时,类似的问题也同样存在。

软交换网络中的NAT穿透技术研究

2.3  防火墙和NAT对IP语音和视频通讯的阻碍

基于IP的语音和视频通讯协议(如H.323等),要求终端之间使用IP地址和数据端口来建立数据通信通道。这样,为了建立数据连接终端,必须随时侦听外来的呼叫,而防火墙却通常被配置成阻止任何不请自到的数据包的通过。

即使网络管理者打开防火墙上的一个端口来接收呼叫建立数据包,例如1720端口,但IP语音和视频通讯协议还要求打开许多别的端口接收呼叫控制信息来建立语音和视频通道,这些端口号事先并不知道,系统是动态分配的,这也就是说,网络管理者为了允许语音和视频通讯将不得不打开防火墙上所有的端口,防火墙也就失去了存在的意义。由于网络安全的原因,几乎所有企业都不会让他们的网络防火墙如此开放。

基于目前情况,业界常用的解决方案有:NAT/ALG方式、MIDCOM方式、STUN方式、TURN方式、Full Proxy方式和SBC等六种。

下面针对企业网、驻地网小区用户接入软交换网络解决方案,对上述几种方式进行简单介绍和分析。

3  方案分析

3.1  NAT/ALG方式

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

ALG功能目前主要驻留在一些NAT/Firewall设备中,要求这些设备本身具备应用识别的智能,同时每增加一种新的应用,都需要对NAT/Firewall进行升级。

对于软交换业务应用,ALG需要支持IP语音和视频协议(H323、SIP、MGCP/H248)的识别和对NAT/Firewall的控制,以使软交换业务顺利穿透NAT/Firewall

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

3.2  MIDCOM方式

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

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

在软交换业务实际应用中,Middlebox功能可驻留NAT/Firewall,因此,通过软交换设备(即MID-COMAgent)对IP语音和视频协议(H323、SIP、MGCP/H248)的识别和对NAT/Firewall的控制,就可以作为软交换业务穿越NAT/Firewall的一个解决方案。

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

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

3.3  STUN方式

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

STUN的全称是Simple Traversal of UDP Through Network Address Translators,即UDP对NAT的简单穿越方式。应用程序(即STUN CLI-ENT)向NAT外的STUN SERVER可通过UDP发送请求STUN消息,STUN SERVER收到请求消息后将产生响应消息,响应消息中携带请求消息的源端口,即STUN CLIENT在NAT上对应的外部端口。然后,响应消息通过NAT发送给STUN CLI-ENT,STUN CLIENT通过响应消息体中的内容得知其在NAT上对应的外部地址,并且将其填入以后呼叫协议的UDP负载中并告知对端,本端的RTP接收地址和端口号为NAT外的地址和端口号。由于通过STUN协议已在NAT上预先建立了媒体流的NAT映射表项,故媒体流可顺利穿越NAT。

STUN协议最大的优点是无需现有NAT/FW设备做任何改动。由于实际的网络环境中已有大量的NAT/FW,并且这些NAT/FW并不支持VoIP的应用,因此,如果用MIDCOM或NAT/ALG方式来解决此问题,需要替换现有的NAT/FW,故是不太容易的。而采用STUN方式无需改动NAT/FW,这是其最大优势,同时-STUN方式可在多个NAT串联的网络环境中使用,而MIDCOM方式无法实现对多级NAT的有效控制。

STUN的局限性在于需要应用程序支持STUNCLIENT的功能,即软交换的网络终端需具备STUNClient功能。同时STUN并不适合支持TCP连接的穿越,因此不支持H323应用协议。另外,STUN方式也不支持软交换业务对防火墙的穿越,同时,STUN方式不支持对对称NAT(SymmetricNAT)类型的穿越,例如在安全性要求较高的企业网中,出口NAT通常就是这种类型。

3.4  TURN方式

TURN方式解决NAT问题的思路与STUN相似,也是基于私网接入用户通过某种机制预先得到其私有地址对应在公网的地址STUN方式得到的地址为出口NAT上的地址,TURN方式得到地址为TURNServer上的地址),然后把报文负载中所描述的地址信息直接填写在该公网地址的方式,其实际应用原理也是一样的。

TURN的全称为TraversalUsingRelayNAT,即通过Relay方式穿越NAT,TURN应用模型通过分配TURNServer的地址和端口来作为客户端对外的接受地址和端口,即私网用户发出的报文都要经过TURNServer进行Relay转发,这种方式的应用模型除了具有STUN方式的优点外,还解决了STUN应用无法穿透对称NAT(SymmetricNAT)以及类似的Firewall设备的缺陷,即无论企业网/驻地网出口为哪种类型的NAT/FW,都可以实现NAT的穿透,同时,TURN可支持基于TCP的应用(如H323协议)。此外TURNServer可控制分配地址和端口,并能分配RTP/RTCP地址对(RTCP端口号为RTP端口号加1)作为本端客户的接受地址,从而避免了STUN应用模型下出口NAT对RTP/RTCP地址端口号的任意分配,这样,客户端将无法收到对端发过来的RTCP报文(对端发RTCP报文时,目的端口号缺省按RTP端口号加1发送)。

TURN的局限性在于其需要终端支持TURN-Client,这一点同STUN一样,也对网络终端有要求。此外,所有报文都必须经过TURNServer转发,因而,增大了包的延迟和丢包的可能性。

3.5  FullProxy方式

FullProxy是另外一种解决NAT问题的思路,它通过对私网内用户呼叫的信令和媒体同时做Re-lay来实现出口NAT/FW的穿越,Fullproxy与TURN方式的Relay相比,区别如下:

首先,TURN方式是在TURNServer与终端通过TURN/STUN协议交互时分配地址和端口,报文内部的地址信息由终端生成,TURNServer对后续的报文根据分配的地址和端口信息做地址变换后Re-lay转发;而FullProxy方式是通过对报文进行Relay的设备对呼叫协议进行解析与处理来改写其中携带的RTP/RTCP地址信息后转发信令报文,同时根据改写的RTP/RTCP地址信息对媒体报文做地址变换后进行Relay转发。原理在于当私网终端呼叫信令到达FullProxy,FullProxy将对呼叫信令协议进行解析,并对协议中携带的RTP/RTCP信息进行解析与处理,然后在记录用户私网内RTP/RTCP地址和端口号的同时,修改RTP/RTCP私网地址信息为FullProxy本身对外的公网IP地址,同时修改媒体流端口为FullProxy上分配的外部端口,最后将呼叫信令发送到软交换或对端。这样,呼叫信令以及媒体流就可以通过FullProxy在主被叫之间进行中转。由于FullProxy可以配置多个IP地址(如一个私网IP地址和一个公网IP地址),因此通过FullProxy进行Relay,其软交换业务就可顺利通过NAT/FW.

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

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

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

3.6  SBC(Session Border Controller)方式

SBC本身可以被看作支持VoIP的Proxy,它是一种“可识别应用层”的设备,可以识别第五层和第七层的消息,并且可以处理第五层的众多会话信令协议,修改数据包头的地址,从而实现SBC内、外网地址和变换。

SBC可以用于协助VoIP穿越远端防火墙/NAT设备。它一般放置在网络核心交换设备之侧。所有经过SBC的信令和媒体流经过SBC的协调和修改,均可以在系统侧和用户侧正确传输。用户侧的NAT/Firewall可以接受这种修改后的信令和媒体流并把他们传送到用户侧的内网。这种利用SBC实现的防火墙穿越技术可以称之为“远端防火墙穿越”。

SBC还可以帮助SIP/MGCP信令穿越已经存在的FW/NAT,而不需要对现有的FW/NAT设备做任何改变。具体来说,对于SIP终端,SIP终端设备会周期性发注册消息到SBC;而对于MGCP终端,当收到MGCP设备的第一个注册消息后,SBC会周期性发AUEP消息到终端,以强制其再不停的周期性回复200OK消息。这样,由于不停的有信令消息经过防火墙/NAT设备,可能使防火墙/NAT对通过的消息流始终保持一个确定的端口;同时,当注册信息经过SBC时,它将记录在防火墙上的第三层IP地址和端口等信息,并且将此信息与防火墙后面的终端用户名或电话号码等第五层信息进行绑定记录。这样,当一个信令到来后,SBC将通过防火墙上正确的地址和端口发送给被叫方。

当呼叫建立后,双向的媒体流端口都是动态建立的。由于媒体流同样也通过SBC,而SBC将通过与该媒体流相关的呼叫(第五层消息中的用户名或电话号码)来识别防火墙上的IP地址和端口。因此,SBC可以把相应的媒体流发送到防火墙上的相关IP地址和端口,然后正确地使媒体流到达防火墙后的用户侧。

SBC本身可以被看作支持VoIP的防火墙,不过它们不仅仅有此功能。它们还可以修改IP包的包头,使IP包能够顺利通过网络边缘设备(如:FW或NAT)。SBC是一种“可识别应用层”的设备,它可以识别第五层和第七层的消息,并且可以处理第五层的众多会话信令协议,修改数据包头的地址,从而实现“远端防火墙穿越”。同时,SBC可以通过对会话数目的限制来实现应用层防D.O.S.攻击。

4  结语

根据本文的介绍和对比分析,笔者推荐采用FullProxy和MIDCOM两种解决方案。因为Full-Proxy方式由于不用对运营商和客户端的现有网络设备进行任何改造,并具有很强的适应性,而且组网灵活,可满足软交换网络初期多样化的组网和用户接入。FullProxy除了可解决NAT问题夕卜,功能还可以大大扩展,同时可完成在接入层实现对会话业务QoS和安全的处理,故可发展成为软交换网络的用户接入平台。

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

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭