远程认证接入用户服务(RADIUS,Remote Authentication Dial In User Service)协议,它最初是由Livingston公司(现在已经并入Lucent Internet-working System公司)开发,作为一种Client/ Server(客户机/服务器)模式的安全协议,后由Merit大学进行了功能的扩展,逐渐成为一种电话接入因特网的认证/计费协议。RADIUS具有安全性好、扩展灵活、易于管理等特点,同时还有很强的计账功能。
RADIUS协议分为两个部分:认证(RFC 2138)和计费(RFC 2139)。RADIUS是一种Client/Server模式的集中式系统,它将接入服务器(NAS)作为客户端,将RADIUS软件运行的机器作为服务器,服务器上集中存放所有用户的资料(如账号名、口令等),因而无论用户连接到任何一个NAS都可以正常地认证计费。用户通过认证后,从RADIUS服务器或NAS的IP Pool取得IP地址,可以连接进入因特网,NAS在收到Access-Accept后,向RADIUS服务器发出Accounting-Request请求开始计费,RADIUS服务器收到后记录到本地,而后返回一个Accounting-Reply进行确认。当用户下网时,NAS发送Accounting-Request请求结束计费,RADIUS服务器收到后记录在本地,并返回一个Accounting-Reply进行确认。在NAS发送的Accounting-Request包中包含用户账号名、IP地址、流量等信息,RADIUS服务器通过处理本地的记录,可以计算出用户的使用费用。
RADIUS是TCP/IP的应用层的协议,它的报文被封装在UDP的报文中,进而封装进IP包。TCP是面向连接的保证传输质量的服务,而UDP是面向无连接的数据报服务,RADIUS选择UDP是由于RADIUS是一种基于事务(Transaction )的应用。