Diametro (protocollo) - Diameter (protocol)
Suite di protocolli Internet |
---|
Livello di applicazione |
Strato di trasporto |
Livello Internet |
Livello di collegamento |
Diametro è un protocollo di autenticazione, autorizzazione e contabilità per reti di computer. Si è evoluto dal precedente protocollo RADIUS . Appartiene ai protocolli a livello di applicazione nella suite di protocolli Internet .
Le applicazioni di diametro estendono il protocollo di base aggiungendo nuovi comandi e / o attributi, come quelli da utilizzare con l' Extensible Authentication Protocol (EAP).
Confronto con RADIUS
Il nome è un gioco di parole, derivato dal protocollo RADIUS , che è il predecessore (un diametro è il doppio del raggio). Il diametro non è direttamente compatibile con le versioni precedenti ma fornisce un percorso di aggiornamento per RADIUS. Le principali caratteristiche fornite da Diameter ma prive di RADIUS sono:
- Supporto per SCTP
- Capacità di negoziazione
- Riconoscimenti a livello di applicazione ; Diametro definisce i metodi di failover e le macchine a stati ( RFC 3539 )
- Estensibilità; nuovi comandi possono essere definiti
- Allineato sui limiti a 32 bit
Inoltre: come RADIUS, è progettato per funzionare sia in situazioni AAA locali che in roaming. Utilizza TCP o SCTP a differenza di RADIUS che utilizza UDP. A differenza di RADIUS, non include crittografia, ma può essere protetto dalla sicurezza del livello di trasporto (IPSEC o TLS). La dimensione di base dell'identificatore AV è 32 bit a differenza di RADIUS che utilizza 8 bit come dimensione dell'identificatore AV di base. Come RADIUS, supporta modalità stateless e stateful. Come RADIUS, supporta il riconoscimento del livello dell'applicazione e definisce il failover. Il diametro viene utilizzato per molte interfacce diverse definite dagli standard 3GPP, con ciascuna interfaccia che definisce tipicamente nuovi comandi e attributi.
Applicazioni
Un'applicazione Diametro non è un'applicazione software ma è un protocollo basato sul protocollo di base Diametro definito in RFC 6733 e RFC 7075 (Obsoletes: RFC 3588 ). Ogni applicazione è definita da un identificativo dell'applicazione e può aggiungere nuovi codici di comando e / o nuovi AVP obbligatori ( coppia attributo-valore ). L'aggiunta di un nuovo AVP opzionale non richiede una nuova applicazione.
Esempi di applicazioni del diametro:
- Applicazione Diameter Mobile IPv4 (MobileIP, RFC 4004 )
- Applicazione del server di accesso alla rete di diametro (NASREQ, RFC 7155 ) (Obsoletes: RFC 4005 )
- Applicazione del protocollo di autenticazione estensibile del diametro ( RFC 4072 )
- Diametro Credit-Control Application (DCCA, RFC 8506 ]) (Obsoletes: RFC 4006 )
- Applicazione del protocollo di avvio della sessione di diametro ( RFC 4740 )
- Varie applicazioni nel sottosistema multimediale IP 3GPP
(Architettura di avvio generico): funzione server di avvio automatico
Storia
Il protocollo Diameter è stato inizialmente sviluppato da Pat R. Calhoun, Glen Zorn e Ping Pan nel 1998 per fornire un framework per l'autenticazione, l'autorizzazione e la contabilità ( AAA ) in grado di superare i limiti di RADIUS. RADIUS aveva problemi con affidabilità, scalabilità, sicurezza e flessibilità. RADIUS non è in grado di gestire efficacemente l'accesso remoto, la mobilità IP e il controllo delle politiche. Il protocollo Diameter definisce un protocollo di policy utilizzato dai client per eseguire policy, AAA e controllo delle risorse. Ciò consente a un singolo server di gestire i criteri per molti servizi.
Come RADIUS, Diameter fornisce la funzionalità AAA, ma utilizza TCP e SCTP invece di UDP , delegando quindi il rilevamento e la gestione dei problemi di comunicazione a tali protocolli. Il protocollo Diameter è ulteriormente potenziato dallo sviluppo del 3 ° Generation Partnership Project (3GPP) IP Multimedia Subsystem (IMS). Le interfacce S6a, S6b, Gx, Gy, Sy, Rx, Cx, Dh, Dx, Rf, Ro, Sh e Zh sono supportate dalle applicazioni Diameter. Attraverso l'uso di estensioni, il protocollo è stato progettato per essere estensibile per supportare proxy, broker, forte sicurezza, IP mobile, server di accesso alla rete (NASREQ), contabilità e gestione delle risorse.
Descrizione del protocollo
Il protocollo di base del diametro è definito da RFC 6733 (Obsoletes: RFC 3588 e RFC 5719 ) e definisce i requisiti minimi per un protocollo AAA . Le applicazioni di diametro possono estendere il protocollo di base aggiungendo nuovi comandi, attributi o entrambi. La sicurezza del diametro è fornita da IPsec o TLS . La IANA ha assegnato il numero di porta TCP e SCTP 3868 a Diameter, come indicato nella sezione 11.4 dell'RFC 6733 .
Formato del pacchetto
Il pacchetto è costituito da un'intestazione Diametro e da un numero variabile di Coppie Valore-Attributo, o AVP, per incapsulare le informazioni relative al messaggio Diametro.
Bit offset | 0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | versione | lunghezza del messaggio | ||||||||||||||||||||||||||||||
32 | R |
P |
E |
T |
codice di comando | |||||||||||||||||||||||||||
64 | ID applicazione | |||||||||||||||||||||||||||||||
96 | ID hop-by-hop | |||||||||||||||||||||||||||||||
128 | ID end-to-end | |||||||||||||||||||||||||||||||
160 ... |
AVP ... |
Versione
Questo campo indica la versione del Diameter Base Protocol. A partire dal 2014, l'unico valore supportato è 1.
Lunghezza messaggio
Il campo Lunghezza messaggio indica la lunghezza del messaggio Diametro in byte, inclusi i campi di intestazione e gli AVP riempiti.
Flag di comando
Il bit " R " (richiesta) - Se impostato, il messaggio è una richiesta. Se deselezionato, il messaggio è una risposta.
Il bit " P " (Proxiable) - Se impostato, il messaggio PU essere inviato tramite proxy, inoltrato o reindirizzato. Se deselezionato, il messaggio DEVE essere elaborato localmente.
Il bit " E " (Errore) - Se impostato, il messaggio contiene un errore di protocollo e il messaggio non sarà conforme al CCF descritto per questo comando. I messaggi con il bit "E" impostato sono comunemente indicati come messaggi di errore. Questo bit NON DEVE essere impostato nei messaggi di richiesta.
Il bit " T " (messaggio potenzialmente ritrasmesso): questo flag viene impostato dopo una procedura di failover del collegamento, per facilitare la rimozione delle richieste duplicate. Viene impostato quando si rinviano richieste non ancora riconosciute come indicazione di un possibile duplicato a causa di un errore di collegamento.
Comandi
A ciascuna coppia richiesta / risposta di comando viene assegnato un codice di comando. Indipendentemente dal fatto che si tratti della richiesta o della risposta, viene identificato tramite il bit "R" nel campo Flag di comando dell'intestazione.
I valori 0-255 sono riservati per la compatibilità con le versioni precedenti di RADIUS. I valori 256-16777213 sono per i comandi standard permanenti assegnati da IANA . I valori 16777214 e 16777215 (hex 0xFFFFFE e 0xFFFFFF) sono riservati a scopi sperimentali e di test.
Un codice comando viene utilizzato per determinare l'azione da intraprendere per un particolare messaggio. Alcuni comandi Diametro comuni definiti nel protocollo (base e applicazioni) sono:
Nome comando | Abbr. | Codice | Applicazione |
---|---|---|---|
Richiesta AA | AAR | 265 | Applicazione NAS di diametro - RFC 7155 |
Risposta AA | AAA | 265 | Applicazione NAS di diametro - RFC 7155 |
Diametro-EAP-Richiesta | DER | 268 | Applicazione EAP diametro - RFC 4072 |
Diametro-EAP-Risposta | dea | 268 | Applicazione EAP diametro - RFC 4072 |
Abort-Session-Request | ASR | 274 | Base del diametro |
Abort-Session-Answer | COME UN | 274 | Base del diametro |
Richiesta di contabilità | ACR | 271 | Base del diametro |
Contabilità-Risposta | ACA | 271 | Base del diametro |
Credit-Control-Request | CCR | 272 | Applicazione per il controllo del credito del diametro - RFC 8506 (Obsoletes RFC 4006 ) |
Credito-Controllo-Risposta | CCA | 272 | Applicazione per il controllo del credito del diametro - RFC 8506 (Obsoletes RFC 4006 ) |
Capacità-Scambio-Richiesta | CER | 257 | Base del diametro |
Capacità-Scambio-Risposta | CEA | 257 | Base del diametro |
Device-Watchdog-Request | DWR | 280 | Base del diametro |
Dispositivo-Watchdog-Risposta | DWA | 280 | Base del diametro |
Disconnect-Peer-Request | DPR | 282 | Base del diametro |
Disconnect-Peer-Answer | DPA | 282 | Base del diametro |
Richiesta di nuova autenticazione | RAR | 258 | Base del diametro |
Nuova autenticazione-risposta | RAA | 258 | Base del diametro |
Richiesta di interruzione della sessione | STR | 275 | Base del diametro |
Sessione-Terminazione-Risposta | STA | 275 | Base del diametro |
Richiesta di autorizzazione utente | UAR | 283 | Applicazione SIP diametro - RFC 4740 |
Risposta-autorizzazione utente | UAA | 283 | Applicazione SIP diametro - RFC 4740 |
Server-Assignment-Request | SAR | 284 | Applicazione SIP diametro - RFC 4740 |
Server-Assegnazione-Risposta | SAA | 284 | Applicazione SIP diametro - RFC 4740 |
Location-Info-Request | LIR | 285 | Applicazione SIP diametro - RFC 4740 |
Posizione-Info-Risposta | LIA | 285 | Applicazione SIP diametro - RFC 4740 |
Richiesta di autenticazione multimediale | MAR | 286 | Applicazione SIP diametro - RFC 4740 |
Multimedia-Auth-Answer | MAA | 286 | Applicazione SIP diametro - RFC 4740 |
Richiesta di annullamento della registrazione | RTR | 287 | Applicazione SIP diametro - RFC 4740 |
Registrazione-Terminazione-Risposta | RTA | 287 | Applicazione SIP diametro - RFC 4740 |
Push-Profile-Request | PPR | 288 | Applicazione SIP diametro - RFC 4740 |
Risposta-profilo-push | PPA | 288 | Applicazione SIP diametro - RFC 4740 |
Richiesta di autorizzazione utente | UAR | 300 | Base del diametro (3GPP) RFC 3589 |
Risposta-autorizzazione utente | UAA | 300 | Base del diametro (3GPP) RFC 3589 |
Server-Assignment-Request | SAR | 301 | Base del diametro (3GPP) RFC 3589 |
Server-Assegnazione-Risposta | SAA | 301 | Base del diametro (3GPP) RFC 3589 |
Location-Info-Request | LIR | 302 | Base del diametro (3GPP) RFC 3589 |
Posizione-Info-Risposta | LIA | 302 | Base del diametro (3GPP) RFC 3589 |
Richiesta di autenticazione multimediale | MAR | 303 | Base del diametro (3GPP) RFC 3589 |
Multimedia-Auth-Answer | MAA | 303 | Base del diametro (3GPP) RFC 3589 |
Richiesta di annullamento della registrazione | RTR | 304 | Base del diametro (3GPP) RFC 3589 |
Registrazione-Terminazione-Risposta | RTA | 304 | Base del diametro (3GPP) RFC 3589 |
Push-Profile-Request | PPR | 305 | Base del diametro (3GPP) RFC 3589 |
Risposta-profilo-push | PPA | 305 | Base del diametro (3GPP) RFC 3589 |
Richiesta dati utente | UDR | 306 | Base del diametro (3GPP) RFC 3589 |
Risposta dati utente | UDA | 306 | Base del diametro (3GPP) RFC 3589 |
Richiesta di aggiornamento del profilo | PUR | 307 | Base del diametro (3GPP) RFC 3589 |
Profilo-Aggiornamento-Risposta | PUA | 307 | Base del diametro (3GPP) RFC 3589 |
Iscriviti-Notifiche-Richiesta | SNR | 308 | Base del diametro (3GPP) RFC 3589 |
Iscriviti-Notifiche-Risposta | SNA | 308 | Base del diametro (3GPP) RFC 3589 |
Richiesta di notifica push | PNR | 309 | Base del diametro (3GPP) RFC 3589 |
Push-Notification-Answer | PNA | 309 | Base del diametro (3GPP) RFC 3589 |
Bootstrap-Richiesta di informazioni | BIR | 310 | Base del diametro (3GPP) RFC 3589 |
Bootstrap-Info-Risposta | BIA | 310 | Base del diametro (3GPP) RFC 3589 |
Message-Process-Request | MPR | 311 | Base del diametro (3GPP) RFC 3589 |
Message-Process-Answer | MPA | 311 | Base del diametro (3GPP) RFC 3589 |
Update-Location-Request | ULR | 316 | 3GPP TS 29.272 [ RFC 5516 ] |
Aggiornamento-posizione-risposta | ULA | 316 | 3GPP TS 29.272 [ RFC 5516 ] |
Annulla-richiesta-posizione | CLR | 317 | 3GPP TS 29.272 [ RFC 5516 ] |
Annulla-Posizione-Risposta | CLA | 317 | 3GPP TS 29.272 [ RFC 5516 ] |
Autenticazione-Richiesta di informazioni | ARIA | 318 | 3GPP TS 29.272 [ RFC 5516 ] |
Autenticazione-Informazioni-Risposta | AIA | 318 | 3GPP TS 29.272 [ RFC 5516 ] |
Inserisci-Sottoscrittore-Richiesta-Dati | IDR | 319 | 3GPP TS 29.272 [ RFC 5516 ] |
Inserisci-Sottoscrittore-Dati-Risposta | IDA | 319 | 3GPP TS 29.272 [ RFC 5516 ] |
Cancella-Sottoscrittore-Richiesta-dati | DSR | 320 | 3GPP TS 29.272 [ RFC 5516 ] |
Elimina-Sottoscrittore-Dati-Risposta | DSA | 320 | 3GPP TS 29.272 [ RFC 5516 ] |
Purge-UE-Request | PER | 321 | 3GPP TS 29.272 [ RFC 5516 ] |
Purge-UE-Answer | PISELLO | 321 | 3GPP TS 29.272 [ RFC 5516 ] |
Notifica-richiesta | NR | 323 | 3GPP TS 29.272 [ RFC 5516 ] |
Notifica-risposta | N / A | 323 | 3GPP TS 29.272 [ RFC 5516 ] |
Fornire-Location-Request | PLR | 8388620 | 3GPP-LCS-SLg (ID applicazione 16777255) |
Fornisci risposta sulla posizione | PLA | 8388620 | 3GPP-LCS-SLg (ID applicazione 16777255) |
Routing-Info-Request | RIR | 8388622 | 3GPP-LCS-SLh (ID applicazione 16777291) |
Routing-Info-Risposta | RIA | 8388622 | 3GPP-LCS-SLh (ID applicazione 16777291) |
AA-Mobile-Node-Request | AMR | 260 | Diametro Mobile IPv4 - RFC 4004 |
AA-Mobile-Node-Answer | AMA | 260 | Diametro Mobile IPv4 - RFC 4004 |
Richiesta-MIP-agente-casa | HAR | 262 | Diametro Mobile IPv4 - RFC 4004 |
Home-Agente-MIP-Risposta | HAA | 262 | Diametro Mobile IPv4 - RFC 4004 |
Richiesta di informazioni di configurazione | CIR | 8388718 | S6t secondo 3GPP TS 29.336 |
Configurazione-Informazioni-Risposta | CIA | 8388718 | S6t secondo 3GPP TS 29.336 |
Reporting-Information-Request | RIR | 8388719 | S6t secondo 3GPP TS 29.336 |
Segnalazione-Informazioni-Risposta | RIA | 8388719 | S6t secondo 3GPP TS 29.336 |
Richiesta di informazioni NIDD | NIR | 8388726 | S6t secondo 3GPP TS 29.336 |
NIDD-Informazioni-Risposta | NIA | 8388726 | S6t secondo 3GPP TS 29.336 |
ID applicazione
Application-ID viene utilizzato per identificare per quale applicazione Diameter il messaggio è applicabile. L'applicazione può essere un'applicazione di autenticazione, un'applicazione di contabilità o un'applicazione specifica del fornitore.
Gli agenti di Diameter conformi a una determinata estensione di Diameter pubblicizzano il suo supporto includendo un valore specifico di nell'attributo Auth-Application-Id del comando Capabilities-Exchange-Request (CER) e Capabilities-Exchange-Answer (CEA).
Il valore del campo ID applicazione nell'intestazione è lo stesso di qualsiasi AVP ID applicazione pertinente contenuto nel messaggio. Ad esempio, il valore dell'Application-ID e dell'attributo Auth-Application-Id nel comando Credit-Control-Request (CCR) e Credit-Control-Answer (CCA) per l'applicazione Diameter Credit-Control è 4.
ID applicazione | Abbr. | Nome e cognome | Utilizzo |
---|---|---|---|
0 | Base | Messaggi comuni di diametro | Stabilimento / smontaggio / manutenzione dell'associazione protocollo diametro |
16777216 | Cx / Dx | 3GPP Cx / Dx | Interfaccia da IMS I / S-CSCF a HSS |
16777217 | Sh | 3GPP Sh | Dal server delle applicazioni VoIP / IMS SIP all'interfaccia HSS |
16777236 | Rx | 3GPP Rx | Politica e controllo delle tariffe |
16777238 | Gx | 3GPP Gx | Politica e controllo delle tariffe |
16777251 | S6a / S6d | 3GPP S6a / S6d | Segnalazione roaming LTE |
16777252 | S13 | 3GPP 13 | Interfaccia tra EIR e MME |
16777255 | SLg | 3GPP LCS SLg | Servizi di localizzazione |
16777345 | S6t | 3GPP S6t | Interfaccia tra SCEF e HSS |
Identificatore hop-by-hop
L'identificatore hop-by-hop è un campo intero senza segno a 32 bit (in ordine di byte di rete) che viene utilizzato per abbinare le richieste con le relative risposte poiché lo stesso valore nella richiesta viene utilizzato nella risposta.
Il protocollo Diameter richiede che gli agenti di inoltro e proxy mantengano lo stato della transazione, che viene utilizzato per scopi di failover. Lo stato della transazione implica che dopo l'inoltro di una richiesta, il suo identificatore hop-by-hop viene salvato; il campo viene sostituito con un identificatore univoco a livello locale, che viene ripristinato al suo valore originale quando viene ricevuta la risposta corrispondente. Lo stato della richiesta viene rilasciato al ricevimento della risposta. Le risposte ricevute che non corrispondono a un identificatore hop-by-hop noto vengono ignorate dall'agente Diameter.
In caso di reindirizzamento degli agenti, l'identificatore hop-by-hop viene mantenuto nell'intestazione mentre l'agente Diameter risponde con un messaggio di risposta.
Identificatore end-to-end
L'identificatore end-to-end è un campo intero a 32 bit senza segno (in ordine di byte di rete) utilizzato per rilevare i messaggi duplicati insieme alla combinazione dell'AVP origine-host.
Quando si crea una richiesta, l'identificatore end-to-end è impostato su un valore univoco a livello locale. L'identificatore end-to-end non viene modificato da agenti di diametro di alcun tipo e lo stesso valore nella richiesta corrispondente viene utilizzato nella risposta.
Coppie valore-attributo (AVP)
Bit offset | 0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Codice AVP | |||||||||||||||||||||||||||||||
32 | V |
M |
P |
Lunghezza AVP | ||||||||||||||||||||||||||||
64 | ID fornitore (opzionale) | |||||||||||||||||||||||||||||||
96 ... |
dati ... |
Per semplicità, il bit " V " del flag AVP significa specifico del fornitore ; Il bit " M " significa Obbligatorio ; Il bit " P " significa Protetto .
Il bit " V ", noto come bit specifico del fornitore, indica se il campo Vendor-ID opzionale è presente nell'intestazione dell'AVP. Quando impostato, il codice AVP appartiene allo spazio degli indirizzi del codice del fornitore specifico.
Il bit " M ", noto come bit obbligatorio, indica se è richiesto il supporto dell'AVP. Se un AVP con il bit " M " impostato viene ricevuto da un client, server, proxy o agente di traduzione di Diameter e l'AVP o il suo valore non viene riconosciuto, il messaggio deve essere rifiutato. Gli agenti di Diameter Relay e di reindirizzamento non devono rifiutare messaggi con AVP non riconosciuti.
Il bit " P " indica la necessità di crittografia per la sicurezza end-to-end.
Nome attributo | Codice | Tipo di dati |
---|---|---|
Acct-Interim-Interval | 85 | Unsigned32 |
Accounting-Realtime-Required | 483 | Enumerato |
Acct-Multi-Session-Id | 50 | UTF8String |
Numero di registrazione contabile | 485 | Unsigned32 |
Tipo di record di contabilità | 480 | Enumerato |
Accounting-Session-Id | 44 | OctetString |
Accounting-Sub-Session-Id | 287 | Unsigned64 |
Acct-Application-Id | 259 | Unsigned32 |
Auth-Application-Id | 258 | Unsigned32 |
Tipo di richiesta di autenticazione | 274 | Enumerato |
Autorizzazione a vita | 291 | Unsigned32 |
Periodo di tolleranza per l'autenticazione | 276 | Unsigned32 |
Stato sessione di autenticazione | 277 | Enumerato |
Re-Auth-Request-Type | 285 | Enumerato |
Classe | 25 | OctetString |
Host di destinazione | 293 | DiamIdent |
Regno di destinazione | 283 | DiamIdent |
Disconnetti-Causa | 273 | Enumerato |
E2E-Sequence | 300 | Raggruppati |
Messaggio di errore | 281 | UTF8String |
Host segnalazione errori | 294 | DiamIdent |
Event-Timestamp | 55 | Tempo |
Risultato sperimentale | 297 | Raggruppati |
Codice risultato sperimentale | 298 | Unsigned32 |
AVP fallito | 279 | Raggruppati |
Revisione del firmware | 267 | Unsigned32 |
Indirizzo IP host | 257 | Indirizzo |
Inband-Security-Id | 299 | Unsigned32 |
Timeout multi round | 272 | Unsigned32 |
Origin-Host | 264 | DiamIdent |
Regno delle origini | 296 | DiamIdent |
Origin-State-Id | 278 | Unsigned32 |
Nome del prodotto | 269 | UTF8String |
Proxy-Host | 280 | DiamIdent |
Proxy-Info | 284 | Raggruppati |
Stato proxy | 33 | OctetString |
Redirect-Host | 292 | DiamURI |
Redirect-Host-Usage | 261 | Enumerato |
Reindirizzamento-Max-Cache-Time | 262 | Unsigned32 |
Codice risultato | 268 | Unsigned32 |
Route-Record | 282 | DiamIdent |
ID sessione | 263 | UTF8String |
Timeout della sessione | 27 | Unsigned32 |
Session-Binding | 270 | Unsigned32 |
Sessione-Server-Failover | 271 | Enumerato |
ID fornitore supportato | 265 | Unsigned32 |
Causa di risoluzione | 295 | Enumerato |
Nome utente | 1 | UTF8String |
ID del venditore | 266 | Unsigned32 |
ID applicazione specifico del fornitore | 260 | Raggruppati |
Macchine a stati
L' RFC 3588 definisce una macchina a stati principali per mantenere le connessioni tra i peer e l'elaborazione dei messaggi. Questo fa parte della funzionalità di base del protocollo e tutti gli stack dovrebbero supportarlo e come tale è astratto dalle operazioni relative alla connettività.
Inoltre, le macchine a stati specifiche dell'applicazione possono essere introdotte successivamente o a un livello di astrazione più elevato. L' RFC 3588 definisce un'autorizzazione e una macchina a stati contabili.
Flussi di messaggi
La comunicazione tra due peer di diametro inizia con la creazione di una connessione di trasporto ( TCP o SCTP ). L'iniziatore invia quindi una Capabilities-Exchange-Request (CER) all'altro peer, che risponde con una Capabilities-Exchange-Answer (CEA). Per i peer conformi a RFC3588, è possibile negoziare facoltativamente TLS (Transport Layer Security). Per i peer conformi a RFC6733, la negoziazione TLS può opzionalmente avvenire prima del CER / CEA.
La connessione è quindi pronta per lo scambio di messaggi dell'applicazione.
Se non vengono scambiati messaggi per un po 'di tempo, entrambe le parti possono inviare una Device-Watchdog-Request (DWR) e l'altro peer deve rispondere con Device-Watchdog-Answer.
Entrambe le parti possono terminare la comunicazione inviando una Disconnect-Peer-Request (DPR) a cui l'altro peer deve rispondere con Disconnect-Peer-Answer. Dopo di che la connessione di trasporto può essere scollegata.
RFC
Il protocollo Diametro è attualmente definito nelle seguenti RFC IETF : Le RFC obsolete sono indicate con testo barrato .
# | Titolo | Data di pubblicazione | Articolo correlato | Obsoleto da | Appunti |
---|---|---|---|---|---|
RFC 6733 | |||||
RFC 3589 | Codici di comando del diametro per il progetto di partnership di terza generazione (3GPP), versione 5. | Settembre 2003 | |||
RFC 4004 | Applicazione IPv4 di Diameter Mobile. | Agosto 2005 | |||
RFC 7155 | |||||
Applicazione per il controllo del credito del diametro | RFC 8506 | ||||
RFC 4072 | Applicazione EAP (Diameter Extensible Authentication Protocol). | Agosto 2005 | |||
RFC 4740 | Applicazione SIP (Diameter Session Initiation Protocol). M. | Novembre 2006 | |||
RFC 5224 | Applicazione per l'elaborazione della politica del diametro. | Marzo 2008 | |||
RFC 5431 | Diametro ITU-T Rw Applicazione dell'interfaccia per l'applicazione della politica. | Marzo 2009 | |||
RFC 5447 | Diameter Mobile IPv6: supporto per l'interazione tra il server di accesso alla rete e il server di diametro. | Febbraio 2009 | |||
RFC 5516 | Registrazione del codice di comando del diametro per l'Evolved Packet System (EPS) del progetto di partnership di terza generazione (3GPP). | Aprile 2009 | - | ||
RFC 5624 | Parametri di qualità del servizio per l'utilizzo con diametro. | Agosto 2009 | |||
RFC 6733 | |||||
RFC 6733 | Protocollo di base del diametro. | Ottobre 2012 | |||
RFC 6737 | L'applicazione di aggiornamento delle capacità di diametro. | Ottobre 2012 | |||
RFC 7155 | Applicazione del server di accesso alla rete di diametro. | Aprile 2014 |
|
||
RFC 8506 | Applicazione per il controllo del credito del diametro. | Marzo 2019 |
Guarda anche
Riferimenti
link esterno
- Introduzione al diametro: ottieni il protocollo AAA di nuova generazione
- Pagina Cisco che delinea le differenze tra RAGGIO e DIAMETRO
- Diametro: protocollo AAA di nuova generazione Paper about Diameter di Håkan Ventura
- Pagina di riferimento che elenca i fornitori di gateway del diametro, controller di segnalazione del diametro e stack del diametro