Diameter协议

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。



重复消息检测
重复检测用于应用服务器检测收到的请求消息是否与先前收到的消息有 重复 Diameter消息中的T标志用来指示在应用层发生重传事件 可以根据Diameter头中的End-to-End Identifier和Origin-Host AVP对重 复消息进行识别。

安全监控
Radius不提供基于数据的安全机制,导致数据在传输过程中被修改而无 法发现。Diameter协议提供可选的CMS功能对数据进行保护。

过渡性支持 因为Diameter和Radius没有共用的数据协议单元,只要有一个同时支持 Radius和Diameter的网关,两种协议可以在同一个网络中使用。

Diameter对等端连接的中断




当一个Diameter节点中断和对等端的连接,对等端是无法了解中断 的原因的。 在这种情况下,对等端可能会认为是连接出现问题,或者对方重启, 因此它会周期性地进行连接重试。该动作通过TC定时器控制,通常 建议30秒。 但是如果中断的原因是内部资源缺乏或者不希望和对方再保持连接, 则必须通知对方中断的原因,以避免不必要的周期性重试。 Disconnect-Peer-Request(DPR)对等端中断请求 Disconnect-Peer-Answer(DPA)对等端中断响应 尽快检测出差错可以降低将消息发送至无效代理的机会, 减少不必 要的时延, 并且提供更好的Failover 性能。 Device-Watchdog-Request(DWR)Device-Watchdog-Answer (DWA)

传输的可靠性 Diameter协议运行于可靠的传输TCP、SCTP之上,保证了 传输的可靠性。 Diameter基本协议运行在TCP和SCTP传输 协议的端口3868上,以后版本将强制
Diameter协议特点

支持代理
RADIUS没有明确支持代理功能,包括代理服务器、中继服务器、重定 向服务器。而Diameter协议则提供对上述代理的支持。
4、请求 归属 Diameter 服务器 5、应答
Diameter协议的消息格式
Diameter消息头格式
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Version Command lags Application-ID

服务器主动发起消息
Diameter协议中定义服务器主动发起消息是必选功能。
Diameter协议的网络架构


客户端(Client)
服务器(Server) 中继(Relay)

中继的功能是根据与路由相关的AVP和域路由表转发请 求和响应 中继可以用来集中一定地理范围内的NAS请求 由于中继不作策略决定,它们不检查或改变非路由AVP 中继不需要维护会话状态,但需要维护事务状态


AVP Length

Diameter协议关键技术(1)

Diameter对等端发现机制

通过静态配臵查找 通过SLPV2发现diameter服务。(建议采用SLPV2的安全机制,保证被发现 的对等端的角色是授权的。) 通过NAPTR查询特定域中的服务器。 如果没有发现NAPTR记录,则进行'_diameter._sctp'.realm 、 '_diameter._tcp'.realm.形式的DNS查询。


r bit是保留位,设臵为0,供今后应用需要。 ‘P’ bit指示是否需要为了端对端安全进行加密。

‘M’ bit表明对该AVP的支持是否是必须的。如果没有Mbit的AVP,如果不 能识别或者支持,只需要简单忽略该AVP即可。
Vbit标识可选的提供者ID在AVP头中是否存在。如果Vbit设臵,标识该AVP 码属于该特定的提供者。 三个字节,标识AVP码、AVP标志位、提供者ID和AVP-DATA。如果长度 错误,消息将被拒绝。

Application-ID

Diameter消息头格式

ห้องสมุดไป่ตู้

目前已经定义的应用有: Diameter Common Messages 0 NASREQ 1 [NASREQ] Mobile-IP 2[DIAMMIP] Diameter Base Accounting 3 Relay 0xffffffff 中继和重定向必须广告中继应用标识,而其它结点必须广播自己 支持的本地应用。 Hop-by-Hop Identifier 逐跳标识用来对应请求和响应。 End-to-End Identifier 端对端标识是用来检测重复消息的。端对端标识不可以被任何 agent修改。该标识和Origin-Host结合起来可以用来检测重复消息。 AVPs 数据属性对用来包含一定的数据。




Static or Dynamic静态或者动态
Expiration time动态路由的超时时间

能力交换

Capabilities-Exchange-Request(CER)能力交换请求:
Capabilities-Exchange-Answer(CEA)能力交换应答
Diameter协议关键技术


如果DNS服务器没有返回地址记录,则查询失败。
Diameter对等端列表和域路由表 对等端列表:

Host identity(包含CER、CEA消息中的Origin-Host AVP) StatusT(动态或者静态) TLS Enabled(是否采用TLS安全手段) 如果需要,还可以包括一些安全信息,如密钥、证书

Diameter协议的体系架构



连接层 负责维护管理两个对等端之间的Diameter连接状态机,为上 层数据传输提供数据通道。 事务层 负责处理Diameter消息的事务处理部分,包括消息缓存队列 维护、请求消息和响应消息的对应、事务逐跳标识的维护管 理等。 会话层 构建和维护AAA体系的鉴权、授权以及计费的会话状态机。 应用层 在会话状态机的基础之上定义Diameter消息的结构和参数, 完成业务的要求。


保留位,必须设臵为0,接收者可以忽略这些保留位
Command-Code:3个8位组
24bit的命令码空间地址由IANA 统一管理。命令码16,777,214 和16,777,215 是用作试验目的的。 应用标识,表明该消息属于那个应用。每个应用必须由IANA分配一个标识。 基础协议不需要应用标识,因为对基础协议的支持是必须的。在能力协商过 程中,diameter结点通知对等端本地支持的应用。而且在所有的diameter消 息中都包含应用标识

翻译服务器(Translation Server)

用于执行Diameter和其它AAA协议(如RADIUS)之间的协议翻译
Diameter协议的网络架构
Diameter协议的网络架构
Diameter 重定向
2、请求
3、重定向通知
1、请求 接入设备 6、应答 Diameter 中继

传输失败检测


Diameter协议关键技术(3)

Failover and Failback 当检测到一个对等端的传输失败时,必须将所有等待处理的请求消息发 送到替代的Agent。


为了进行倒换,Diameter节点必须维护给定对等端的消息等待队列。
对于失败的对等端要进行周期性的尝试,以便重新建立连接。当传输恢 复正常后,消息可以再次发送到该对等端,这被称为倒回。
Diameter协议的功能


AVP信息传送 Diameter连接维护、管理 事务缓存 能力协商 对端发现和配臵
Diameter协议的特点

故障恢复
Diameter协议提供统一的故障恢复方式,支持应用层的故障 确认、定义了故障恢复的算法和相应的状态机。

传输层安全 提供统一的传输层安全机制,Diameter协议要求在传输层, IPSEC是必须的,TLS是可选的。
Diameter协议关键技术(2)

域路由表:

Realm Name域名(域名是路由表查询中的主关键字) Application Identifier应用标识(应用标识是路由表查询中的次关键 字。同一个路由入口根据不同的应用,可以有不同的目的地址。) Local Action本地动作,包括消息本地处理、中继、代理、 REDIRECT 重定向 Server Identifier服务器标识


Diameter消息头格式


T(Potentially re-transmitted message)
该标志是用来在倒换过程后防止重复的请求。该标志仅在发送请求后没 有收到任何响应,再次发送请求时设臵。只在请求消息中设臵。对于 diameter agent,当收到包含Tbit的消息重新转发时必须保持Tbit。 r(eserved)

Diameter协议的网络架构

代理(Proxy )

通过Diameter路由表路由Diameter消息 根据实施策略可以对消息进行修改 需要对资源进行限制的Proxy必须维护会话状态,所有的Proxy必须 维护事务状态

重定向服务器(Redirect Server)

重定向Agent引导Diameter客户端到服务端,使得它们可以直接通信。
Message Length Command-Code
Hop-by-Hop Identifier
End-to-End Identifier AVPS……..
Diameter消息头格式

Diameter消息头长度为20byte Version:Diameter协议版本号,设臵为1 Message Length:包括diameter头的消息长度 Command Flags:命令标记8比特
01234567 +-+-+-+-+-+-+-+-+ |R P E T r r r r| +-+-+-+-+-+-+-+-+ R(equest) 如果设臵表明是请求消息,如果清除表明是应答消息 P(roxiable) 如果设臵,该消息可以被代理、中继、重定向;如果清 除,该消息必须本地处理 E(rror) 该bit表示消息包含了协议错误,不能出现在请求消息中
Diameter协议的体系架构
Diameter在IETF协议栈结构中的位置
Diameter 的基础协议 (Base protocol) Diameter 的 CMS (Cryptographic Message Syntax) 密码消息语法协 议 Diameter 的( Mobile IP)移动IP协议 Diameter 的 NAS( Network Access Service) 网络接入服务协议 Diameter 的 EAP (Extensible Authentication Protocol) 可扩展鉴别协 议
Diameter协议介绍
内容提要

IMS中的AAA协议:Diameter

Diameter在IMS中的应用
Diameter协议的起源和发展

AAA指的是Authentication(鉴别),Authorization (授权),Accounting(计费)。 RADIUS是目前最常用的认证计费协议之一,它简 单安全,易于管理,扩展性好,所以得到广泛应用。 随着新的接入技术的引入和接入网络的快速扩容, 越来越复杂的路由器和接入服务器大量投入使用, 对AAA协议提出了新的要求,使得传统的RADIUS 结构的缺点日益明显。 这就需要采用新一代的AAA协议——Diameter 。
Diameter协议的消息格式-AVP消息头结构
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
AVP Code
VM Prrrr r
AVP Length
Vendor-ID (opt)
Data……..
Diameter协议的消息格式-AVP消息头结构

AVP消息头8-12byte AVP Code:AVP码和提供者ID(Vendor-Id)一起唯一决定了AVP的属 性。AVP(1-255)是为了后向兼容RADIUS而保留的(无Vendor-Id)。 256以及以上是提供给diameter使用的,由IANA统一分配。 AVP Flags:
相关文档
最新文档