直径与半径
Diameter和Radius(远程身份验证拨入用户服务)是用于AAA(身份验证、授权和记帐)服务的两个协议。RADIUS和Diameter的基本操作彼此相似,因为它们都携带网络访问服务器(NAS)和共享身份验证服务器之间的身份验证、授权和配置信息。直径与RADIUS的许多功能相似,因为它是由RADIUS演变而来的。因此,在diameter中,包格式得到了显著的改进,传输机制也得到了改进,从客户机服务器到对等架构的整体概念也得到了改进。
直径是多少?
Diameter是一种协议,它为任何需要访问、授权和计费(AAA)或跨许多基于IP的网络的策略支持的服务提供基本框架。该协议最初源于RADIUS协议,它也是一种向计算机提供AAA服务以连接和使用网络的协议。直径在不同方面对半径有了很大的改进。它包括许多增强功能,如错误处理和消息传递可靠性。因此,它的目标是成为下一代认证、授权和计费(AAA)协议。
Diameter以AVP(属性值对)的形式传递数据。这些AVP值大多与使用Diameter的特定应用程序相关,而其中一些则由Diameter协议本身使用。这些属性值对可以随机添加到diameter消息中,因此它限制包括任何不需要的属性值对,只要包含所需的属性值对,这些属性值对就会被有意阻止。为了支持这些属性,协议需要使用大量的diameter值。
通常使用diameter协议,任何主机都可以配置为基于网络基础设施的客户机或服务器,因为diameter的设计目的是促进对等体系结构。通过添加新的命令或属性值对,基本协议也可以扩展以用于新的应用程序。许多应用程序使用的旧AAA协议可能提供Diameter没有提供的不同功能。因此,在新应用中使用直径的设计者必须非常小心他们的要求。
半径是多少?
与Diameter类似,RADIUS是一种用于在网络访问服务器(NAS)和共享身份验证服务器之间传输身份验证、授权和配置信息的协议。NAS作为RADIUS的客户机运行,负责向指定的RADIUS服务器传递用户信息。另一方面,RADIUS服务器接收用户连接请求,执行用户身份验证并返回客户端向用户提供服务所需的所有配置信息。
例如,当客户机配置为使用RADIUS时,客户机的用户必须提供身份验证信息(用户名和密码)。用户可以使用诸如点对点协议(PPP)之类的链路成帧协议来传送该信息。一旦客户机接收到这些信息,它就用用户的用户名和密码向客户机发送一个“访问请求”。RADIUS使用UDP端口1812进行身份验证,并使用端口1813进行RADIUS记帐(IANA)。RADIUS主要使用PAP、CHAP或EAP协议进行用户认证。
RADIUS包结构首先包括一个固定大小的报头,然后是一个称为AVP(属性值对)的可变数量的属性。每个AVP都由属性代码、长度和值组成。RADIUS头由代码、标识符、长度和验证器等字段组成。代码字段包含消息类型和长度。标识符字段用于匹配请求和答复。长度字段给出整个RADIUS包的长度,包括所有相关字段。authenticator字段验证来自RADIUS服务器的回复消息并加密密码。
直径与半径
特色 | 直径 | 半径 |
通信端口 | 3868用于基本协议 | 1812–UDP 1813–会计 |
消息处理 | 不支持服务器启动的消息 | 支持服务器启动的消息 |
错误报告方案 | 支持 | 不支持 |
安全 | Diameter客户端支持IPSec,可能支持TLS(传输层安全)协议 | RADIUS定义了IPSec的使用,但支持它不是强制性的。 |
运输方法 | 传输协议(SCTP)或传输控制 | 使用UDP(用户数据报协议) |
代理人和代理人 | Diameter定义了四种代理,它们支持中继、代理、重定向或转换服务。 | RADIUS没有精确定义代理的行为,它可以在不同的实现之间变化。 |
身份验证 | 使用NAIs(网络访问标识符)、CHAP(质询握手身份验证协议)、EAP(可扩展身份验证协议)和PAP(密码验证协议) | 使用NAIs(网络访问标识符)、CHAP(质询握手身份验证协议)、EAP(可扩展身份验证协议)和PAP(密码验证协议) |
发现节点功能 | 支持 | 不支持 |
属性的最大大小 | 16MB | 255字节 |
可扩展性 | 很好 | 很穷 |
可靠性 | 可靠的传输 | 传输不可靠 |