# DNP3

DNP3 (Distributed Network Protocol) è un insieme di protocolli di comunicazione utilizzato tra i componenti dei sistemi di automazione. È particolarmente popolare nelle cosiddette aziende di utilites come compagnie elettriche o di distribuzione dell'acqua potabile. Non è molto comune il suo impiego in altro genere di aziende. È stato sviluppato per la comunicazione tra vari tipi di apparati di controllo e acquisizione dati. Il DNP3 gioca un ruolo fondamentale all'interno dei sistemi SCADA dove è utilizzato dalle SCADA Master Station (conosciute anche col nome di "centri di controllo") per comunicare con le Remote Terminal Unit (RTU) e/o gli Intelligent Electronic Devices (IED). Per le comunicazioni intramaster è usato il protocollo ICCP (parte di IEC 60870-6)
In tempi più recenti, con la definizione e adozione del nuovo standard di comunicazione europeo, IEC 61850 è diventato il protocollo di scambio di informazioni per l'automazione di sottostazioni elettriche; l'affermazione dello standard europeo è un riferimento importante anche nel mercato americano in abbinamento con DNP3 per la comunicazione con RTU.

## Storia

Quando IEC 60870-5 era ancora in fase di sviluppo e non era ancora stato standardizzato, c'era la necessità di creare uno standard che garantisse l'interoperabilità tra i vari dispositivi, di diversi produttori, operanti sulla rete elettrica. Per rispondere a questa esigenza, nel 1993, la GE-Harris Canada (in precedenza conosciuta come Westronic, Inc.) utilizzò le specifiche parziali di IEC 60870-5 come base per un protocollo aperto e realizzabile immediatamente, ritagliato sui requisiti della situazione Nord Americana. Il protocollo è progettato per permettere una comunicazione affidabile in ambiente avversi come quelli a cui sono soggetti i sistemi di automazioni delle utilities in campo elettrico. È specificatamente pensato per resistere alla distorsione dovuta a interferenze elettromagnetiche, all'invecchiamento dei componenti (la cui vita può essere estesa per decadi oltre le previsioni) e a mezzi di trasmissione scadenti.

## Sicurezza

Il protocollo fu progettato per essere molto affidabile, ma non per resistere ad attacchi di pirati informatici e/o chiunque possa desiderare di danneggiare il sistema di controllo di alcune infrastrutture essenziali.
Poiché nelle applicazioni di tipo smart grid generalmente si presume l'accesso di terze parti alla stessa rete e all'infrastruttura sottostante basata su protocollo IP, è stato fatto molto lavoro con l'intento di aggiungere caratteristiche di Autenticazione sicura al protocollo DNP3. Il DNP3 è conforme allo standard IEC 62351. Alcuni vendors supportano la crittografia via "bump-in-the-wire" (cioè con dispositivi esterni che criptano/decriptano i dati agli estremi del canale di comunicazione) per le comunicazioni seriali e tramite VPN (virtual private networks) per le reti IP. Uno dei metodi bump-in-the-wire più popolari era noto come AGA-12 (American Gas Association) in 2003, per poi diventare IEEE Std. 1711-2010.
Il protocollo DNP3 è anche citato all'interno dello standard IEEE 1379-2000, nel quale si far riferimento a una serie di linee guida per realizzare collegamenti SCADA - RTU/IED. Queste linee guida includono, oltre alla crittografia, altri accorgimenti volti a fronteggiare i metodi di intrusione più conosciuti.