BroadNet
DIAMETERFundamentos

DIAMETER vs RADIUS: porque o DIAMETER substituiu o RADIUS

Atualizado em 5 min de leituraBaseado em padrões
Resposta direta

O DIAMETER substituiu o RADIUS no AAA à escala de operador porque o RADIUS corre sobre UDP não fiável, sem failover, com um espaço de atributos de 1 octeto e segurança fraca. O DIAMETER acrescenta transporte SCTP/TCP fiável, negociação explícita de capacidades, um espaço de AVP de 32 bits, descoberta de pares, códigos de erro por mensagem e TLS/IPsec — mantendo o mesmo modelo baseado em AVP, para que agentes de tradução possam fazer a ponte entre os dois.

§01

Onde o RADIUS ficou aquém

O RADIUS (RFC 2865) foi concebido nos anos 1990 para acesso à rede por dial-up: um cliente envia um Access-Request sobre UDP e espera por um Access-Accept. Esse modelo não escala para um core móvel. O UDP não dá entrega fiável, pelo que a deteção de perdas e a retransmissão ficam a cargo da aplicação. Não há mensagem iniciada pelo servidor, pelo que uma rede não pode terminar ou reautorizar proativamente uma sessão. O campo Type de atributo é um único octeto (256 valores), a segurança por shared-secret é fraca, e não há failover incorporado entre servidores. À medida que o LTE exigiu re-auth iniciado pelo servidor, transporte fiável e um espaço de atributos muito maior, o RADIUS ficou sem espaço.

§02

O que o DIAMETER acrescentou

O DIAMETER manteve a ideia de AVP mas reconstruiu o protocolo em torno dos requisitos do operador. Corre sobre SCTP ou TCP fiável, pelo que a entrega, a ordenação e a retransmissão são tratadas pelo transporte, e define failover explícito entre pares usando o watchdog. Negocia capacidades no momento da ligação (CER/CEA) para que os pares concordem sobre aplicações antes de fluir tráfego. O seu AVP Code tem 32 bits com um espaço de vendor, dando atributos praticamente ilimitados. Suporta mensagens iniciadas pelo servidor (Re-Auth, Abort-Session). E define um modelo de erros estruturado com result codes transitórios e permanentes distintos, mais TLS/DTLS e IPsec para segurança.

§03

DIAMETER vs RADIUS num relance

Os dois protocolos partilham uma linhagem mas diferem em cada propriedade que importa para um plano de controlo de operador. A tabela abaixo resume as diferenças práticas que um operador pondera ao migrar o AAA de RADIUS para DIAMETER.

DIAMETER (RFC 6733) vs RADIUS (RFC 2865)
PropriedadeRADIUSDiameter
TransporteUDP (não confiável)SCTP ou TCP (confiável)
Entrega / failoverNível de aplicação, sem failover padrãoTransporte confiável + failover por watchdog (RFC 3539)
Espaço de atributosTipo de 1 octeto (256 valores)Código AVP de 32 bits + espaço do vendor
Tamanho do atributoComprimento de 1 octeto (máximo de 255 octetos)Comprimento de 24 bits (valores grandes, AVPs agrupados)
Negociação de capacidadesNenhumCER/CEA na configuração da conexão
Mensagens iniciadas pelo servidorNão (CoA/Desconexão adicionado posteriormente, RFC 5176)Sim — Re-Auth (RAR), Abort-Session (ASR)
Descoberta de paresConfiguração estáticaEncaminhamento por realm + descoberta dinâmica (DNS/SRV)
Tratamento de errosImplícito (aceitar/rejeitar)Faixas explícitas de Result-Code 1xxx–5xxx
SegurançaSegredo partilhado, ofuscação MD5TLS / DTLS / IPsec
§04

Encaminhamento por realm e descoberta de pares

O RADIUS faz proxy por configuração estática. O DIAMETER encaminha com base no AVP Destination-Realm: um nó reencaminha uma mensagem em direção ao realm que detém o utilizador, usando uma tabela de encaminhamento baseada em realm, e pode descobrir pares dinamicamente através de registos DNS NAPTR/SRV em vez de hosts configurados à mão. Este modelo de realm é o que faz funcionar o roaming DIAMETER inter-operador — uma rede visitada encaminha um request S6a para o realm de origem sem conhecer à partida o endereço do HSS de origem — e é o mesmo encaminhamento que os Diameter Routing Agents e Edge Agents policiam na borda.

§05

Migração e agentes de tradução

Como ambos os protocolos são baseados em AVP, o DIAMETER foi concebido para interoperar com o RADIUS através de um agente de tradução que mapeia atributos RADIUS para AVPs DIAMETER e vice-versa, para que um operador possa migrar de forma incremental em vez de num único corte. Um padrão comum mantém o RADIUS na borda de acesso (Wi-Fi, banda larga fixa) enquanto o AAA, a política e a tarifação do core correm sobre DIAMETER, com um gateway de tradução entre eles. As novas interfaces LTE, IMS e 5G são nativas de DIAMETER, pelo que ao longo do tempo a pegada do RADIUS encolhe para o acesso legado.

Perguntas frequentes

Perguntas frequentes

Porque é que o DIAMETER substituiu o RADIUS?

Porque o RADIUS corre sobre UDP não fiável, tem apenas um espaço de atributos de 256 valores, não oferece negociação de capacidades nem failover padrão, e não tem mensagens iniciadas pelo servidor. O DIAMETER acrescenta transporte SCTP/TCP fiável, failover por watchdog, um espaço de AVP de 32 bits, negociação de capacidades CER/CEA, re-auth iniciado pelo servidor, encaminhamento por realm e TLS/IPsec — tudo o que um core móvel precisa.

O DIAMETER é retrocompatível com o RADIUS?

Não no fio — são protocolos diferentes — mas o DIAMETER foi concebido para interoperar através de um agente de tradução que mapeia atributos RADIUS para AVPs DIAMETER e vice-versa. Isto permite aos operadores manter o RADIUS na borda de acesso enquanto correm DIAMETER no core, migrando de forma incremental em vez de num único corte.

Que transporte usa o DIAMETER em vez de UDP?

O DIAMETER corre sobre SCTP ou TCP, ambos fiáveis, com o SCTP preferido para sinalização devido ao multi-streaming e ao multi-homing. O transporte fiável mais o watchdog da RFC 3539 dá ao DIAMETER as garantias de entrega e o failover de pares que o RADIUS sobre UDP nunca teve.

Como é que o espaço de AVP do DIAMETER é maior do que os atributos RADIUS?

O RADIUS usa um Type de atributo de um único octeto (256 valores) e um comprimento de um único octeto (máx. 255 octetos). O DIAMETER usa um AVP Code de 32 bits com um namespace de vendor e um comprimento de 24 bits, mais Grouped AVPs, dando atributos praticamente ilimitados e valores grandes e estruturados.

O DIAMETER e o RADIUS podem correr na mesma rede?

Sim. Uma implementação típica mantém o RADIUS na borda de acesso (Wi-Fi, banda larga fixa) e corre DIAMETER para o AAA do core, política (Gx) e tarifação (Gy), com um gateway de tradução entre eles. As interfaces LTE, IMS e 5G são nativas de DIAMETER, pelo que a pegada do RADIUS encolhe gradualmente para o acesso legado.

Referências

Especificações de origem

Os padrões publicados nos quais esta página se baseia. Abre num novo separador.

BNMantido pela equipa de engenharia BroadNet·Mensagens de nível de operadora desde 2003
Coloque-o no fio.

Construa com uma vinculação SMPP real e uma API REST.

Solicite acesso de teste com chaves de teste reais: envie primeiro para o seu próprio número verificado e, em seguida, passe para o ambiente de produção em mais de 200 países assim que a sua identidade de remetente e rotas forem aprovadas.