论文部分内容阅读
随着网络和通信技术的不断发展,Internet在越来越多的领域获得应用,VoIP就是其中一个典型的例子。VoIP是一种以IP电话为主,并推出相应的增值业务的技术。VoIP最大的优势是能广泛地采用Internet和全球IP互连的环境,提供比传统PSTN业务更多、更好的服务。目前VoIP主要标准有H.323,SIP,H.248和MGCP等。SIP协议由于其简单、灵活和可扩张性强等特性,逐渐成为VoIP通信中的热点技术。 Internet用户的迅速增加,全球的IP地址资源面临耗尽的境地。出于IPv4地址缺乏的考虑,人们提出了NAT技术。但是NAT后的用户IP地址是私有的,在公网上是不可路由的。而基于SIP协议的VoIP应用需通过信令消息中的IP地址和端口来实现目的地寻址,因此NAT穿越时不仅需要对TCP/UDP层的端口信息以及IP层的源地址目的地址进行变换,还需对IP包载荷中的相关地址信息进行变换。因此研究SIP协议穿越NAT成为VoIP应用的一个重要课题,具有重要的现实意义。 本文首先对国内外SIP穿越NAT的研究现状进行简要的叙述,结合本文采用的SIP穿越NAT解决方案的需求和特点,细致分析了该NAT穿越涉及的关键技术。对几种NAT地址映射机制原理作了详细的阐述后,接着重点对目前主要SIP穿越NAT解决方案进行了分析和比较,本文采用了一种基于STUN的NAT穿越解决方案,在第四章中设计并实现了该STUN解决方案,包括整体方案分析和设计,STUN客户端设计与实现、SIP客户端设计与实现、STUN客户端嵌入到SIP客户端中的实现以及NAT穿越实现结果分析,最后对整个系统进行了测试验证。该方案可以穿越目前绝大多数类型的NAT,不需要扩展相关协议,不需要对NAT设备进行改造或升级,可以工作在多级NAT串联的环境下,而且可以使外网用户主动呼叫内网用户建立连接。该方案目前已成功应用到“无线VoIP电话及软交换网关”项目中,并可推广到其它基于SIP协议的终端上,为VoIP业务的推广应用扫清了障碍。