NGN访问控制安全的切入点
NGN访问控制安全的切入点
——Diameter协议及其在SIP网络环境中的应用
谢玮
一、引言
Diameter系列协议是新一代的AAA技术,由于其强大的可扩展性和安全保证,正在得到越来越多的关注。在ITU,3GPP和3GPP2等国际标准组织中,都已经正式将DIAM-ETER协议作为NGN,WCDMA和cdma2000等未来通信网络的首选AAA协议。对于用户的访问控制是下一代网络(NGN)网络安全的重要组成部分,而本文讨论的Diameter协议在SIP环境中的应用则是这个问题的重要切入点。
二、Diameter协议的设计目的
RADIUS和TACACS+一直被广泛应用于很多的ISP和企业网。实际上,这两个协议在设计之初,都是应用于仅支持若干要求简单基于服务器认证的终端用户的小型网络设备的。目前接入提供商都在为成千上万的使用不同接入技术(包括无线、DSL、移动IP、以及以太网等)的并发终端用户提供AAA服务。AAA服务的安全、可升级性对于RADIUS和TACACS+来说也都不能十分令人满意。
现在的AAA协议已经无法胜任目前以及今后IP网络,尤其是NGN时代对AAA服务日益增长的要求。因此IETF着手开发了下一代AAA协议—Diameter协议,以期解决现在AAA服务中存在的一些问题。
Diameter的设计目的是创建一个能够充分满足目前乃至今后IP网络(包括NGN以及3G等等)用户访问控制要求的AAA协议。其设计要求的具体内容包括:
(1)具有良好的网络适应性和可扩展性;
(2)统一且良好的失败控制和检测机制;
(3)完整的传送层安全保证(包括域内和域间);
(4)数据传输可靠性保证机制;
(5)支持各种类型的代理,包括Proxy代理、重定向代理以及中继代理等:
(6)支持服务器发起的消息,即允许服务器主动发送消息给其客户端;
(7)与现有网络协议的良好可互操作性;
(8)支持节点间的能力协商机制:
(9)支持动态对等端发现和配置机制;
(10)支持安全和可扩展的漫游。
三、Diameter协议的特性与优势
Diameter协议有很多非常好的特性,使其在实际网络中应用时,相对于以前的AAA协议具有很大的优势。
(1)为了保证新一代的AAA协议能够很长一段时期内都能够满足各种不同网络环境的需求.Diameter协议采用了一种新的协议定义模式:首先推出一个轻量的、易于实施的基础协议,旨在提供一个AAA框架,其中包括实现AAA功能最基本的要求。并针对不同的网络情况和业务需求,分别制定相应的应用扩展。
(2)新一代的AAA协议为了能够在今后较长时期内更好的满足IP网络建设和业务几乎无法预期的发展速度,通过各种技术手段大大提高了Diameter的网络可扩展性和业务可扩展性。这其中包括扩展了请求标识长度,Diameter协议称为“端到端ID字段”,长度为4字节232(RADIUS:1字节255),这样可以大大提高支持的同时发起未决请求数量;属性值对(AVP)的数量空间从RADIUS的255个扩展为232个;Diameter还支持支持商家定义的命令,这是RADIUS所不具备的。
为了得到更可靠的传输保证,Diameter协议必须能够在可以提供重传策略的传输层上运行,以使其能够在对等端不可达时,有效地转换另一个主机。与RADIUS相反,Diameter协议要求代理链上的每一个节点都应在“传输层”对请求或响应进行确认。由于Diameter运行在提供可靠传输的SCTP上,代理链上的每个节点都有责任对没有确认的消息进行重传。而且SCTP协议还提供到服务器的流量控制。Diameter协议还有很多其它优秀特性:
(1)拥有良好的失败机制,支持失败替代(failover)和失败回溯(faiback):
(2)拥有快速检测到对端不可达的能力;
(3)拥有更好的包丢弃处理机制,Diameter协议要求对每个消息进行确认:
(4)支持服务器发起到客户的主动消息,这可以用于某些特殊计费业务(如预付费);
(5)可以保证数据体的完整性和机密性;
(6)支持端到端安全,支持TLS和IPSec;
(7)为每个会话进行认证/授权,以保证安全性;
(8)与RADIUS协议尽量兼容。
四、Diameter的框架结构
Diameter包含基础协议、传送协议、不同的应用扩展,如NASREQ和移动IP等。所有应用和服务共用的基本功能都在基础协议中实现,而应用特定的功能则会在不同的应用中实施。
Diameter基础协议旨在提供一个AAA框架,以用于各种应用。基础协议还定义了所有Diameter应用使用的,并且所有Diameter设备都必须支持的消息格式、传输、差错报告和安全服务。
图1是Diameter协议结构的示意图,图中的传输机制主要定义Diameter协议传输层的问题及解决方法,包括失败检测算法和状态机等,其它拥有各种不同功能的应用都必须支持基础协议。图中的SIP应用是Diameter协议应用在IP环境中的要求。
图1 Diameter协议框架结构
五、Diameter会话初始协议(SIP)应用概述
Diameter会话初始协议(SIP)应用是与会话初始协议(SIP)结合在一起使用的,在SIP服务器中提供Diameter客户端功能,SIP服务器必须能够请求Diameter服务器认证用户,授权SIP资源使用。 I
Diameter SIP应用扩展允许Diameter客户端向Diameter服务器为基于IP多媒体业务的初始会话协议(SIP)请求认证、授权信息。假定SIP服务器和Diameter客户端位于相同节点,SIP服务器能够接收、处理SIP请求消息和回答消息,分别基于为认证SIP请求消息和授权特定SIP业务的AAA体系结构。当SIP协议用于初始和终截多媒体会话或SIP协议用于非会话相关的应用时,Diameter SIP应用扩展提供Diameter规程,用于实现特定功能。
Diameter SIP应用扩展假定了一个通用体系结构,即归属域由一个或多个实现Diameter或SIP功能的节点构成。其中,至少有个这样的节点实现Diameter服务器功能。Diameter服务器有权使用用户数据库。特定用户的用户数据储在用户数据库中。网络中可以有多于一个的Diameter服务器,所有的Diameter服务器均有权使用用户数据库。
SIP网络环境中,归属域有多种配置。在其中一种配置情况下,SIP服务器被分配给用户,用于触发和执行业务。用户在网络中进行注册时动态分配SIP服务器。在这种配置情况下,要求有一个位于网络边缘的SIP服务器,支持对SIP请求和回答消息的路由算法。SIP服务器节

