AN INTRODUCTION TO
DNP3
Distributed Network Protocol (DNP or DNP3 or DNP 3.0) is a communications protocol used in Supervisory Control and Data Acquisition (SCADA) and remote monitoring systems. It is widely used because it is an open standard protocol, meaning any manufacturer can develop DNP3 equipment that is compatible with other DNP3 equipment. It has achieved a large-scale acceptance in Electric Utilities and the Water sectors, and is also prominent in the Gas and Oil sectors.
A Little History
The DNP3 protocol was developed in 1990 by Westronic (now GE Harris) and published in 1993. At that time, the development of IEC 60870-5 standards was all the rage, the most well-known were the IEC 60870-5-101 for point-to-point master-slave serial link communication and the IEC 60870-5-104 for TCP networks. Before the IEC 60870-5 standardization was completed, DNP3 became particularly popular in the United States and Asia, but less popular in Europe, which largely used IEC 60870-5.
Object Model
DNP3 is based on an Object Model. This model reduces the bit mapping of data that is traditionally required by other less object-oriented protocols. It also reduces the wide disparity of status monitoring and control paradigms generally found in protocols that provide virtually no pre-defined objects.
Purists of these alternate protocols would insist that any required object can be ‘built’ from existing objects. Having some pre-defined objects, though, makes DNP3 a somewhat more comfortable design and deployment framework for SCADA engineers and technicians.
Master/Remote Model
DNP3 is typically used between centrally located masters and distributed remotes. The master provides the interface between the human network manager and the monitoring system. The remote (RTUs and intelligent electronic devices) provides the interface between the master and the physical device(s) being monitored and/or controlled.
The master and remote both use a library of common objects to exchange information. The DNP3 protocol contains carefully designed capabilities. These capabilities enable it to be used reliably even over media that may be subject to noisy interference.
The DNP3 protocol is a polled protocol. When the master station connects to a remote, an integrity poll is performed. Integrity polls are important for DNP3 addressing because they return all buffered values for a data point and include the current value of the point as well.

A typical DNP3 master/remote monitoring system architecture.