我有三个简单的问题。
- 直白解释一下Diameter协议是什么?
- Diameter协议的用途是什么?
- 如何使用Diameter协议?
我在网上搜索了实用的解释,但没有找到。只有一些技术废话。
我有三个简单的问题。
我在网上搜索了实用的解释,但没有找到。只有一些技术废话。
我在IBM网站上找到了这篇关于Diameter协议的完整文章。
介绍
Diameter协议是从RADIUS协议中衍生出来的,具有许多方面的改进,通常被认为是下一代身份验证、授权和计费(AAA)协议。Diameter协议在IMS架构中广泛使用,以便IMS实体交换AAA相关信息。由于IMS系统可能是电信行业的下一个大事件,我们认为了解Diameter协议的本质对于理解IMS架构是必要的。本文概述了Diameter协议及其工作原理。对于对IMS中AAA如何工作感兴趣或想要实现Diameter应用程序的开发人员来说,本文是一个很好的起点。
随着新技术和应用程序的出现,例如无线网络和移动IP,身份验证和授权的要求大大增加,访问控制机制比以往任何时候都更加复杂。现有的远程身份验证拨号用户服务(RADIUS)协议可能无法满足这些新要求;需要的是一种新协议,能够实现新的访问控制功能,同时保持进一步扩展的灵活性。这就是Diameter协议发挥作用的地方。
“认证识别用户;授权确定该用户可以做什么;计费监控网络使用时间。” … “Diameter是下一代AAA协议,克服了(几个)RADIUS的不足之处。”
“RADIUS协议在NAS和RADIUS认证服务器之间传递认证、授权和配置信息。”(在此上下文中,NAS是网络访问服务器,提供对受保护网络的访问的网关。)…“由多个网络访问服务器的供应商实现,RADIUS已获得广泛客户支持。”RADIUS具有有限数量的属性代码(包括用户名和密码、服务类型、登录信息等),因此开发人员利用其“特定于供应商的属性”(VSA)来交换自定义数据,以专有方式扩展RADIUS的范围,但仍在其限制范围内(例如,属性值不超过253字节)。那么为什么要使用Diameter?Diameter提供了更大的灵活性(更长的数据字段、可扩展性、能力协商)、更高的性能(“32位对齐”)、更高的可靠性和可用性(TCP和STCP支持、更好的确认机制和错误消息、故障转移)、增强的安全性(“端到端安全性”)等。
就像FreeRADIUS实现了一个FOSS RADIUS服务器,您可以在服务器上安装它,以便您的其他应用程序和设备(例如执行802.1X认证的Wi-Fi接入点或有线交换机)可以与之交互,FreeDiameter是一个FOSS Diameter框架,您可以在服务器上安装它。然而,尽管TMCNews的文章{{link6:“Diameter在IMS中的作用”}}(2007年)提到“Diameter已被3GPP在IMS标准集中广泛采用”,但我还没有看到任何消费者或小型企业级应用程序或设备使用Diameter。另一方面,据报道,Diameter通过“翻译代理”(IBM)与RADIUS兼容,以便于迁移。例如,FreeDiameter具有一个扩展,称为“RADIUS / Diameter可扩展网关”(app_radgw.fdx),其“目的是允许RADIUS客户端与Diameter服务器一起工作”。但是,文档还警告说“将RADIUS消息转换为Diameter是一项相当复杂的任务。翻译插件可能需要进行微调以适应您的特定需求。”
Diameter是一种身份验证、授权和计费(AAA)协议。如果我们考虑OSI分层模型,它在应用层上工作。
AAA协议的示例:
任何尝试访问网络(例如互联网服务提供商)的用户都必须经过由该网络实施的“AAA”过程。 1.认证:网络将验证其是否为认证用户。 2.授权:网络将授权用户请求的服务。 3.计费:网络将跟踪用户使用情况。
在执行上述三个步骤时,网络可能会在任何时候拒绝用户使用服务,这就是安全性得以维护的方式,因此AAA协议的重要性。
因此,Diameter基本上是一种基于消息的协议,其中可能发生AAA过程,并且AAA节点交换消息并接收节点之间交换的每条消息的正面/负面确认。