← All Posts

DNP3 vs IEC 60870-5-104: Power Utility Protocols Compared

If you work in electric power transmission or distribution SCADA, two protocols dominate the wire between substations and the control center: DNP3 and IEC 60870-5-104. They were built for the same job (reliably move time-stamped events and controls across wide-area networks), but in different regional ecosystems. Choosing between them is almost always decided by where the substation is, not by abstract technical merit.

This guide compares the two so you understand the trade-offs when you meet them in the field. For DNP3 specifics, see class 0/1/2/3 and DNP3 vs Modbus.

Origins and Regions

DNP3 was developed in North America (Westronic, later part of GE Harris, 1993), is maintained by the DNP Users Group, and is also published as IEEE 1815. It is the common choice in North America, and it is also used in South America, Australia and New Zealand, and elsewhere. IEC 60870-5 was developed in Europe under IEC; the -104 variant (2000) is the TCP/IP network-access version of the older serial -101 protocol. It is widely used in Europe, China and many other countries. Both predate IEC 61850 and remain the workhorses of wide-area utility SCADA.

Rule of thumb: DNP3 in the Americas, IEC 60870-5-104 in Europe/China. Multinationals support both.

Feature Comparison

Factor
DNP3
IEC 60870-5-104
Origin / region
North America
Europe / China
Transport
TCP/UDP port 20000, plus serial
TCP port 2404 (104) / serial (101)
Addressing
16-bit src/dst
Common addr + IO addr
Reporting
Class 0/1/2/3 polls (integrity poll = Class 0) plus unsolicited responses
Spontaneous transmission plus general interrogation and cyclic data
Timestamps
48-bit ms UTC, or relative to a Common Time of Occurrence (group 51)
CP56Time2a
Object model
Rich (variants, flags)
ASDU type IDs
Interoperability docs
Device Profile document
Interoperability list, filled in per device by the vendor
Authentication
Secure Authentication (SAv5)
None in the base standard; IEC 62351 adds TLS (-3) and application-layer authentication (-5)

Where They Diverge Technically

When the Choice Is Real

Most of the time it is not a choice: your utility or client tells you which protocol the control center speaks, and you conform. The choice becomes real in three situations: a multinational integrator deploying across regions (you need both, with a gateway or multi-protocol master); a green-field substation where the standard is still being set; or a vendor selection where device support for one protocol is stronger than the other.

Testing on macOS

Much of the long-established DNP3 test tooling (for example ASE2000 and Triangle MicroWorks products) runs on Windows. MacTools DNP3 Explorer implements DNP3 natively, so you can connect to an outstation, read points, scan Class 0/1/2/3 events, and run controls from macOS without Windows. It speaks DNP3 only, not IEC 60870-5-104.

Monitor DNP3 on macOS

MacTools DNP3 Explorer: native macOS DNP3 master. Read points, scan events, execute controls. Built for utility SCADA engineers.

Get MacTools DNP3 Explorer

Frequently Asked Questions

What is the difference between DNP3 and IEC 60870-5-104?

Both are power-utility SCADA protocols with event-driven reporting and timestamps. DNP3 is the common choice in North America; IEC 60870-5-104 (the TCP/IP variant of 60870-5-101) is widely used in Europe and China. DNP3 uses 16-bit source/destination addressing and an object model of groups and variations; IEC 104 uses a common-address/information-object-address scheme and ASDU message types. They solve the same problem in different regional ecosystems.

Is IEC 60870-5-104 just DNP3 over TCP?

No. They are independent protocols with separate origins, message formats, and addressing schemes. IEC 60870-5-104 is the TCP/IP network access variant of the serial IEC 60870-5-101 protocol, carrying the same ASDU application messages with a TCP transport layer. DNP3 has its own TCP and serial transports. A device speaking one does not interoperate with a device speaking the other without a gateway.

Which protocol should I use for a substation?

Follow your region and utility standard. In North America DNP3 is the usual choice. In Europe and China IEC 60870-5-104 is widely used (often alongside IEC 61850 for modern substation automation). For a multi-site system spanning regions you may need both, with a gateway or a SCADA master that speaks both.

Does IEC 61850 replace DNP3 and IEC 104?

Not entirely. IEC 61850 is the modern standard for substation automation with object-oriented device models and GOOSE/SV for fast horizontal communication, but DNP3 and IEC 60870-5-104 remain the dominant wide-area SCADA protocols between substations and control centers. Gateways translate between 61850 inside the substation and DNP3/104 to the control center.

Related: Utility SCADA

For continuous utility monitoring: SCADA for water/wastewater with DNP3, Modbus, alarms, historian. Voltrus SCADA free open source core.

Further Reading