DNP3 è uno dei protocolli più diffusi utilizzati per la comunicazione tra centri di controllo (ad esempio sistemi SCADA) e dispositivi elettronici intelligenti (IED) installati nelle sottostazioni. Oltre ai tradizionali servizi elettrici, viene utilizzato anche nelle società idroelettriche o nei fornitori di gas.
Il protocollo DNP è stato creato nel 1990 da Westtronic, Inc. (ora GE Harris). Lo standard è stato progettato sulla base della norma 60870-5-101:2003 con l'aggiunta di funzionalità specifiche necessarie per le applicazioni nordamericane. Attualmente DNP3 è un protocollo aperto e pubblico, gestito dal Gruppo Utenti. L'ultima versione dello standard IEEE Std 1815-2010 è stata rilasciata nel 2012.
La libreria DNP3 implementata da JPEmbedded è facilmente trasportabile su qualsiasi dispositivo con o senza sistema operativo. Supporta entrambe le modalità operative, lato esterno e lato master, seriale e TCP. L'implementazione in linguaggio C++ tiene conto dei requisiti specifici delle piattaforme embedded, che sono:
* l'efficienza delle risorse,
* elevata flessibilità di configurazione,
* Indipendenza dalla piattaforma HW.
La libreria DNP3 supporta l'interoperabilità di livello 3 e le seguenti funzionalità:
* punti dati statici (classe 0),
* eventi (classe 1-3),
* lettura/scrittura di oggetti dati,
* operazioni di controllo,
* blocco dei dati,
*sicurezza informatica (IEC 62351).