Diameter基础协议介绍

合集下载

Diameter协议

Diameter协议

Diameter协议协议名称:Diameter协议一、引言Diameter协议是一种用于网络认证、授权和计费的应用层协议。

该协议是对RADIUS协议的扩展和改进,旨在提供更强大的功能和更高的性能。

本协议规定了Diameter协议的标准格式和相关规范,以确保在网络环境中的各种应用能够进行安全、可靠的通信。

二、协议目的Diameter协议的主要目的是提供一种通用的认证、授权和计费机制,以支持各种网络应用。

该协议旨在解决RADIUS协议在安全性、可扩展性和功能性方面的局限性,并提供更高效的网络通信。

三、协议范围Diameter协议适用于各种网络环境,包括但不限于移动通信网络、互联网服务提供商、企业内部网络等。

该协议可用于实现用户认证、访问控制、计费和账单管理等功能。

四、协议结构1. 消息格式:Diameter协议使用固定长度的消息头和可变长度的消息体来传输信息。

消息头包括版本号、消息类型、消息长度等字段,用于标识和解析消息。

消息体根据具体应用需求而定,可以包含各种类型的属性和值。

2. 消息交互:Diameter协议支持客户端-服务器模型,客户端发送请求消息给服务器,服务器则返回响应消息。

协议还支持重传机制、超时处理和错误处理等机制,以确保消息的可靠传输和处理。

3. 安全性:Diameter协议提供了多种安全机制,包括消息加密、认证和完整性保护等。

协议支持使用TLS/SSL协议进行安全传输,并支持数字签名和密钥协商等功能,以保护通信过程中的数据安全。

五、协议功能Diameter协议具有以下主要功能:1. 认证和授权:协议支持各种认证机制,包括基于密码、数字证书和令牌等。

通过认证,可以验证用户的身份,并授权其访问网络资源。

2. 计费和账单管理:协议支持实时计费和账单管理功能,可以记录用户的网络使用情况,并生成详细的账单信息。

3. 会话管理:协议支持会话的建立、维护和终止,可以跟踪用户的会话状态,并在需要时进行会话切换和重定向。

Diameter协议

Diameter协议

Diameter协议协议名称:Diameter协议一、介绍Diameter协议是一种用于网络认证、授权和计费(AAA)的应用层协议。

它是RADIUS(远程身份验证拨号用户服务)协议的继任者,被广泛应用于3G、4G、5G挪移网络和互联网服务提供商(ISP)等领域。

本协议旨在提供一种可靠、安全和可扩展的AAA解决方案。

二、协议结构Diameter协议采用客户端-服务器模型,其中客户端发起请求,服务器对请求进行处理并返回响应。

协议基于TCP或者SCTP(流控制传输协议)进行传输,使用基于XML的语法进行消息编码。

1. 消息格式Diameter协议定义了多种类型的消息,包括请求消息、答复消息和错误消息。

每一个消息由消息头和消息体组成。

消息头包含以下字段:- Version:指定协议的版本号。

- Length:指定整个消息的长度。

- Flags:包含一些标志位,如请求标志位、答复标志位等。

- Command Code:指定消息的类型,如认证请求、授权答复等。

- Application ID:指定应用程序标识符。

- Hop-by-Hop Identifier:用于跟踪消息的惟一标识符。

- End-to-End Identifier:用于跟踪请求和响应的惟一标识符。

消息体包含特定类型消息的参数和属性。

每一个参数由以下字段组成:- AVP Code:指定属性的类型。

- Vendor ID:指定属性所属的供应商。

- Data Type:指定属性的数据类型。

- Length:指定属性值的长度。

- Value:包含属性的值。

2. 安全性Diameter协议提供了多种安全机制,确保消息的机密性、完整性和可靠性。

其中包括:- 消息加密:使用TLS(传输层安全)协议对消息进行加密,防止信息泄露。

- 消息完整性:使用消息摘要算法对消息进行签名,确保消息在传输过程中不被篡改。

- 认证和授权:使用数字证书对通信双方进行身份验证,并授权访问特定资源。

Diameter协议.

Diameter协议.

Diameter协议的网络架构
Diameter 重定向
2、请求
3、重定向通知
接入设备
1、请求 6、应答
Diameter 中继

4、请求 5、应答
归属 Diameter
服务器

Diameter协议的消息格式
Diameter消息头格式
01234567890123ቤተ መጻሕፍቲ ባይዱ56789012345678901
传输层安全 提供统一的传输层安全机制,Diameter协议要求在传输层, IPSEC是必须的,TLS是可选的。
传输的可靠性 Diameter协议运行于可靠的传输TCP、SCTP之上,保证了 传输的可靠性。 Diameter基本协议运行在TCP和SCTP传输 协议的端口3868上,以后版本将强制
应用层 在会话状态机的基础之上定义Diameter消息的结构和参数, 完成业务的要求。
Diameter协议的功能
AVP信息传送 Diameter连接维护、管理 事务缓存 能力协商 对端发现和配置
Diameter协议的特点
故障恢复 Diameter协议提供统一的故障恢复方式,支持应用层的故障 确认、定义了故障恢复的算法和相应的状态机。

Diameter协议的体系架构
连接层 负责维护管理两个对等端之间的Diameter连接状态机,为上 层数据传输提供数据通道。
事务层 负责处理Diameter消息的事务处理部分,包括消息缓存队列 维护、请求消息和响应消息的对应、事务逐跳标识的维护管 理等。
会话层 构建和维护AAA体系的鉴权、授权以及计费的会话状态机。
Diameter协议特点
支持代理 RADIUS没有明确支持代理功能,包括代理服务器、中继服务器、重定 向服务器。而Diameter协议则提供对上述代理的支持。

Diameter协议

Diameter协议

Diameter协议协议名称:Diameter协议一、引言Diameter协议是一种网络协议,用于在计算机网络中进行认证、授权和计费(AAA)服务。

该协议是对早期的RADIUS协议的改进和扩展,旨在提供更强大、更可靠的AAA服务。

本协议的目标是为各种网络应用提供一种统一的AAA解决方案。

二、协议范围Diameter协议适用于各种网络环境,包括有线网络、移动网络和互联网。

它可以用于支持各种应用,如移动通信、互联网接入、虚拟专用网(VPN)等。

本协议定义了Diameter协议的消息格式、协议行为和相关的扩展机制。

三、协议要素1. 消息格式Diameter协议定义了一组消息格式,用于在网络节点之间进行通信。

每个消息由消息头和消息体组成。

消息头包含了协议版本、消息长度、消息类型等字段,用于标识和解析消息。

消息体包含了具体的协议操作,如认证请求、授权请求等。

2. 协议行为Diameter协议规定了网络节点之间的协议行为。

节点可以扮演客户端角色或服务器角色,根据需要发送和接收不同类型的消息。

协议规定了消息的交互流程,包括请求-应答模式、重传机制等。

协议还定义了各种错误和异常情况的处理方式。

3. 扩展机制Diameter协议提供了一种灵活的扩展机制,允许定义新的消息类型、属性和值。

扩展机制基于协议的基本结构,通过添加新的扩展字段来实现。

协议规定了扩展字段的格式和解析方式,以确保兼容性和互操作性。

四、协议流程Diameter协议的典型流程包括以下几个步骤:1. 建立连接:客户端和服务器之间建立TCP或TLS连接,用于消息的传输。

2. 会话认证:客户端向服务器发送认证请求,服务器进行认证,并返回认证应答。

3. 授权请求:客户端向服务器发送授权请求,请求特定资源的访问权限。

4. 授权应答:服务器根据策略和权限进行授权,并返回授权应答。

5. 计费记录:服务器记录用户的资源使用情况,并生成计费记录。

6. 会话结束:客户端和服务器结束会话,关闭连接。

Diameter基础协议介绍

Diameter基础协议介绍

Peer discovery and configuration Agent support
Dynamic discovery of peers through DNS Proxies, Redirects, Relays
Diameter传输
Diameter基础协议运行在TCP和SCTP(Stream Control Transmission Protocol,流控制传输协议)传输协议的3868端口上 Diameter客户端必须支持TCP或SCTP,Diameter代理和 服务器必须两者都支持。以后版本将强制客户端支持SCTP
BGCF
Mj
IMMGCF MGW Mn
Mb
Mg Mr
S-CSCF
Mw
HSS
Dx
SLF
MRFP
Mp Mb Mb Mb
MRFC
P-CSCF
Gm
UE
Ut
IMS Subsystem
秘密▲
Diameter 基础协议 Diameter基础协议(Diameter Base Protocol)
•Diameter协议的框架结构 •Diameter传输 •Diameter消息加密 •Diameter实体 •Diameter其他相关
连接和会话之间并没有关系,一个会话可以跨越多个连接,
而用于多会话的Diameter消息也可以在一个单独的连接中传送
客户
中继
服务器
对等端连接A 用户会话X
对等端连接B
连接与会话示意图
Diameter其他相关——对等端表
对等端表被用在消息前转过程中,同时还要参考域路由表 对等端表包含以下字段:
Diameter基础协议(Diameter Base Protocol)

DIAMETETR协议简介

DIAMETETR协议简介

AAA的新框架——DIAMETER基础协议刘清乐燕群Diameter协议族包括基础协议(Diameter Base Protocol)和各种应用协议。

本文介绍的基础协议提供了作为一个AAA协议的最低需求,是Diameter网络节点都必须实现的功能,包括节点间能力的协商、Diameter消息的接收及转发、计费信息的实时传输等。

应用协议则充分利用基础协议提供的消息传送机制,规范相关节点的功能以及其特有的消息内容,来实现应用业务的AAA。

基础协议可以作为一个计费协议单独使用,但一般情况下需与某个应用一起使用。

图1是Diameter的协议层次图。

Diameter网络节点在Diameter协议中,包括多种类型的Diameter节点。

除了Diameter客户端和Diameter服务器外,还有Diameter中继、Diameter代理、Diameter重定向器和Diameter协议转换器。

● Diameter中继能够从Diameter请求消息中提取信息,再根据Diameter基于域的路由表的内容决定消息发送的下一跳Diameter节点。

Diameter中继只对过往消息进行路由信息的修改,而不改动消息中的其他内容。

● Diameter代理根据Diameter路由表的内容决定消息发送的下一跳Diameter节点。

此外,Diameter代理能够修改消息中的相应内容。

● Diameter重定向器不对消息进行应用层的处理,它统一处理Diameter消息的路由配置。

当一个Diameter节点按照配置将一个不知道如何路由的请求消息发给Diameter重定向器时,重定向器将根据其详尽的路由配置信息,把路由指示信息加入到请求消息的响应里,从而明确地通知该Diameter节点的下一跳Diameter节点。

● Diameter协议转换器主要用于实现RADIUS与Diameter,或者TACACS+与Diameter之间的协议转换。

Diameter协议解析AAA服务的协议标准

Diameter协议解析AAA服务的协议标准

Diameter协议解析AAA服务的协议标准Diameter协议是一种网络协议,用于进行认证、授权和计费(AAA)服务的传输。

本文将对Diameter协议在AAA服务中的协议标准进行解析,从消息格式、消息类型、属性-值对和AAA服务器等方面进行详细阐述。

一、消息格式Diameter协议中的消息格式由消息头和消息体两部分组成。

消息头包括协议版本号、消息长度、标志位、消息类型、请求/答复位等字段,用于标识消息的类型和属性。

消息体包含一系列的属性-值对,用于传递具体的AAA服务数据。

二、消息类型Diameter协议定义了多种消息类型,用于实现不同的AAA服务功能。

其中常用的消息类型包括:1. 认证请求 (AA-Request):用于用户认证的请求消息。

包含用户标识、认证类型和认证数据等属性。

2. 认证答复(AA-Answer):对认证请求的响应消息。

包含认证结果、错误码和错误信息等属性。

3. 授权请求 (AR-Request):用于用户授权的请求消息。

包含用户标识、服务标识和授权操作等属性。

4. 授权答复(AR-Answer):对授权请求的响应消息。

包含授权结果、错误码和错误信息等属性。

5. 计费请求(ACR):用于发送计费数据的请求消息。

包含用户标识、计费类型和计费数据等属性。

6. 计费答复 (ACA):对计费请求的响应消息。

包含计费结果、错误码和错误信息等属性。

三、属性-值对Diameter协议中的消息体由一系列的属性-值对组成,用于描述AAA服务所需的信息。

常见的属性包括:1. 用户标识 (User-Name):用于标识AAA服务的用户。

2. 认证类型 (Auth-Application-Id):用于指定认证的应用标识。

3. 认证数据 (Auth-Session-State):用于传递用户认证的数据。

4. 服务标识 (Service-Context-Id):用于标识AAA服务的具体服务。

5. 授权操作 (Auth-Session-State):用于描述AAA服务的授权操作。

Diameter协议介绍

Diameter协议介绍
Disconnect-Peer-Request Disconnect-Peer-Anwser Abort-Session-Request Abort-Session-Answer
命令代 码 272 272 258 258
257 257 280 280
282 282 274 274
缩略语
CCR CCA RAR RAA CER CEA DWR DWA
HUAWEI TECHNOLOGIES CO., LTD.
HUAWEI Confidential
Page 7
第1章 协议概述 第2章 消息结构 第3章 常用命令 第4章 基本流程 第5章 码流解析
HUAWEI TECHNOLOGIES CO., LTD.
HUAWEI Confidential
Page 8
认证、授权和计费一起实现了网络系统对特定用户的网络资源使用情况的 准确记录。这样既在一定程度上有效地保障了合法用户的权益,又能有效 地保障网络系统安全可靠地运行。
HUAWEI TECHNOLOGIES CO., LTD.
HUAWEI Confidential
Page 3
协议优点
Diameter和Radius两者之间的比较 ➢拥有良好的失败机制,支持失败替代(failover)和失败回溯(faiback); ➢拥有更好的包丢弃处理机制,Diameter协议要求对每个消息进行确认; ➢可以保证数据体的完整性和机密性; ➢支持端到端安全,支持TLS和IPSec; ➢引入了“能力协商”能力
HUAWEI TECHNOLOGIES CO., LTD.
HUAWEI Confidential
Page 6
Diameter网络节点
•Diameter Client :处于网络边缘提供接入控制的设备,比如NAS (network access server)。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

秘密▲
Diameter over RADIUS
Diameter RADIUS Failover Yes No
Transmission-level security
IPsec (mandatory) TLS (optional) TCP, SCTP
No replay attack prevention, Public key encryption, UDP
秘密▲
Diameter节点在源端口上初始化连接后,在端口3868上准备接受连接 一般情况下,对等端的一个给定Diameter实例只能使用一个传输连
接与其对等端通信。
当向对等端发起连接时,首先尝试SCTP,然后才是TCP
Diameter安全机制
Diameter客户端,如网络接入服务器(NAS)和各种代理必
Diameter其他相关——域路由表1
所有基于域的路由查找都是依靠域路由表来执行的
域路由表入口包含以下字段: Diameter基础协议(Diameter Base Protocol) 域名:该字段通常用作路由表查询中的主关键字。 应用标识符:一个应用是由运营商ID 和应用ID 来标识的。 一个路由入口基于消息中的应用标识AVP 可能拥有不同的目的地。 应用标识符必须用作路由表查询的第二关键字字段 本地动作:本地动作字段用来标识一个消息将被如何处理。 支持以下动作: •LOCAL:本地动作设置为LOCAL 的Diameter 消息可以 在本地处理,无需被路由到其它服务器; •RELAY:所有属于本类型的Diameter 消息必须被路由到 下一跳的服务器,无需修改任何非路由AVP; •PROXY:所有属于本类型的Diameter 消息必须被路由到 下一跳的服务器。本地服务器可以在路由之前通 过将新的AVP 插入到该消息中,来实行本地策略; •REDIRECT:所有属于本类型的Diameter 消息必须附加归 属Diameter 服务器的标识,并且返回给消息的发送者;
Peer discovery and configuration Agent support
Dynamic discovery of peers through DNS Proxies, Redirects, Relays
Diameter传输
Diameter基础协议运行在TCP和SCTP(Stream Control Transmission Protocol,流控制传输协议)传输协议的3868端口上 Diameter客户端必须支持TCP或SCTP,Diameter代理和 服务器必须两者都支持。以后版本将强制客户端支持SCTP
秘密▲
Diameter其他相关——域路由表2
服务器标识符:消息会被路由到一个或多个服务器。这些服务器也 Diameter基础协议(Diameter Base Protocol) 必须出现在对等端表中。当本地动作设置为RELAY 或PROXY 时, 该字段包含消息必须被路由到的服务器的标识符。当本地动作设置为 REDIRECT时,该字段包含消息将被重定向到的一个或多个服务器的 标识符; 静态或动态:指定某个路由入口是静态配置的还是动态发现的 生命期:指定某个动态发现的路由表入口的到期时间
重定向消息示意图
Diameter 翻译代理

Diameter基础协议(Diameter Base Protocol) 翻译代理是提供两种协议(例如 RADIUS与Diameter) 之间翻译的设备。翻译代理通常用来兼容使用以前的 协议的设备。
秘密▲

翻译代理必须保持会话状态和事务状态。翻译代理必 须仅广播它们本地支持的应用
执行资源限制的Proxy必须保持会话状态。 所有Proxy必须 保持事务状态。 由于执行策略需要了解提供的业务,Proxy仅需广播它们支 持的Diameter应用。
Diameter 重定向代理
重定向代理在 Diameter路由需要集中配置的情况下非常有用。重定 Diameter基础协议(Diameter Base Protocol) 向代理为某个集团的所有成员提供服务,但不希望负担域间消息中 继的任务。优势在于,当某个成员的结构发生变化时,无需集团 向它的成员提供路由更新。 由于重定向代理不中继消息,仅返回一个应答,其中包括Diameter 代理间直接通信所需要的信息,它们不修改消息。重定向代理不 接收应答消息,所以它们不用保持会话状态。而且,重定向代理从 来不会中继请求,它们也不需要保持事务状态。 由于重定向代理不执行任何应用级别的程序,它们为所有Diameter 应用提供服务,因此必须广播中继应用标识符
秘密▲
必须重点指出,Diameter代理必须至少支持LOCAL、RELAY、PROXY 或REDIRECT操作模式之中的一种。为了与协议规定一致,代理不需要 支持所有的操作模式。中继代理和Proxy不允许重排AVP。 路由表可以包括一个默认入口,为任何与其它入口都不匹配的请求使用。 路由表可以仅包含这样一个入口
连接和会话之间并没有关系,一个会话可以跨越多个连接,
而用于多会话的Diameter消息也可以在一个单独的连接中传送
客户
中继
服务器
对等端连接A 用户会话X
对等端连接B
连接与会话示意图
Diameter其他相关——对等端表
对等端表被用在消息前转过程中,同时还要参考域路由表 对等端表包含以下字段:
Diameter基础协议(Diameter Base Protocol)
Diameter其他相关——应用标识符1
每一个Diameter应用都必须有一个IANA指定的应用标志符
Diameter基础协议(Diameter Base Protocol) 由于对基础协议是强制性的,因此基础协议不需要应用标识符
秘密▲
在能力交换过程中,Diameter节点通知对等端本地所支持 的应用,并且所有的Diameter消息都包含应用标识符,它 们在消息向前转发的过程中使用 Diameter中继和Proxy代理必须广播中继应用标识符,而 其他Diameter节点必须广播本地支持的应用 广播中继服务的能力交换消息的接受者必须假定发送端支 持所有现有的将来的应用 Diameter中继和Proxy代理负责寻找一个上行服务器,它支持 某一特定的应用。如果没有找到,它需要返回错误消息, Result-Code AVP设置为DIMETER_UNABLE_TO_DELIVER
秘密▲
秘密▲
Diameter基础协议(Diameter Base Protocol)
2、请求 3、重定向通知
Diameter 重定向
1、请求 接入设备 6、应答 Diameter 中继
4、请求 归属 Diameter 服务器
5、应答

Reliable transport
Capability negotiation
Error handling
No
Roaming support
Secure and scalable roaming
Not suitable for wide-scale deployment
Manually configure requiring name or address No explicit support for agents
1、请求 接入设备 4、应答 Diameter 中继 3、应答 2、请求 归属 Diameter 服务器
秘密▲

Diameter Proxy代理
Diameter基础协议(Diameter Base Protocol)
秘密▲
与中继类似,Proxy代理利用Diameter路由表来路由Diameter 消息。 它们不同之处在于,Proxy代理修改消息以达到策略的强制实施。 这要求Proxy保持它们下行对等端(例如,接入设备)的状态以 执行资源的使用,提供准入控制和预配置。
Diameter其他相关——应用标识符2
规定范围0x00000001到0x00ffffff为标准应用预留
0x10000001到0xfffffffe为运营商自行定义的应用预留 目前定义了以下应用标识符:
应用标识符 值
秘密▲
Diameter通用消息
0
NASREQ
1
移动IP
2
Diameter基础计费
须支持IPSec,并且可以支持TLS. Diameter服务器必须支持TLS和IPSec 不允许在没有任何安全机制的情况下使用Diameter协议
秘密▲
Diameter实体
•Diameter客户端(Client):执行访问控制的网络设备, 向服务器端(Server)发起Diameter访问请求 •Diameter服务端(Server):一个域中处理认证,授 权,计费请求的网络实体。除基本协议以外, Diameter服务器还必须支持Diameter应用扩展
秘密▲
主机标识:格式遵循DiameterIdentity 扩展AVP 数据格式。 该字段包含在CER 或CEA 消息中发现的源主机AVP 的内容
状态:对等端入口的状态,必须与对等端状态机值中的某个匹配
静态或动态:指定某个对等端入口是静态配置的还是动态发现的 生命期:指定动态发现的对等端表入口被刷新或到期的时间 TLS 有效:指定对等端通信时是否使用TLS 附加安全信息(可选):例如关键字、证书等
BGCF
Mj
IMMGCF MGW Mn
Mb
Mg Mr
S-CSCF
Mw
HSS
Dx
SLF
MRFP
Mp Mb Mb Mb
MRFC
P-CSCF
Gm
UE
UtLeabharlann IMS Subsystem
秘密▲
Diameter 基础协议 Diameter基础协议(Diameter Base Protocol)
•Diameter协议的框架结构 •Diameter传输 •Diameter消息加密 •Diameter实体 •Diameter其他相关
相关文档
最新文档