Get a Live Demo

You need to see DPS gear in action. Get a live demo with our engineers.

Get the Alarm Fundamentals White Paper

Download our free Monitoring Fundamentals Tutorial.

An introduction to Monitoring Fundamentals strictly from the perspective of telecom network alarm management.

DPS is here to help.


Have a specific question? Ask our team of expert engineers and get a specific answer!

Learn the Easy Way

Sign up for the next DPS Factory Training!

DPS Factory Training

Whether you're new to our equipment or you've used it for years, DPS factory training is the best way to get more from your monitoring.

Reserve Your Seat Today

DNP3 Vs. Modbus

Supervisory Control and Data Acquisition (SCADA) systems collect information from remote equipment via a remote telemetry unit (RTU) and transfer the data to a master station for human operators. SCADA systems also carry out any necessary control commands.

This process of data transfer and reporting is possible due to a communication protocol. The communication protocol is a channel that allows different devices to communicate with each other.

DNP3 (Distributed Network Protocol) and Modbus are two of the most commonly used protocols in SCADA systems. Although they both are used in remote monitoring and control systems, you can expect to see some main differences between them.

Let's explore the major differences between DNP3 and Modbus.

Byte-Oriented Protocols

Both DNP3 and Modbus are byte-oriented protocols. This means that they both use full bytes or characters of text as control codes.

DNP3 utilizes bits to send data, but Modbus communications use text descriptions.

Keep in mind that in a byte (a byte equals 8 bits) a computer can only fit one 8-bit ASCII encoded character, such as "X". This means that when a Modbus-enabled device sends an answer to a poll saying "Alarm 1" that is 7 characters, which equals 7 bytes or 56 bits.

Now, in the DNP3 protocol there are libraries on both ends of the communication. These libraries will store information such as "bit position 2 means that the alarm point 2 is active". So, a byte of data that you are sending across the wire might look like 00000010 (8 bits) but it corresponds to the status of 8 different alarms.

Note that 8 bits like 00000010 are not exactly these characters. On the actual wire, a 0 is low voltage and a 1 is high voltage. So, when data comes across a wire it's like electricity being on or off at super high speeds.

Different Physical Layers

Modbus is an application layer protocol whereas DNP3 consists of Application and Data Link Layers.

Both protocols are used over many different types of transport, such as RS-232, RS-485, and TCP/IP. When it comes to TCP/IP, Modbus has a separate variant called Modbus TCP/IP but the DNP3 is wrapped within TCP/IP.

Polling and Unsolicited Messages

Both Modbus and DNP3 are polled protocols. This means that the master and RTUs monitor and manage alarms using a process called polling.

In this process, the RTU requests a value on one remote equipment. If this equipment reports a problem - for example, low battery or high temperature - then the RTU will trigger an alarm to notify you of an issue.

After this device has been polled, the RTU will repeat the process for the next gear in the polling queue of your network. After all your devices have been polled (finishing the polling loop), your RTU will repeat the process from the beginning. The more remote devices you have the longer it will take for your RTU to complete the polling loop.

A difference between these two polled protocols is that DNP3 also supports unsolicited messaging. This means that RTUs can send updates when a change of status happens, without having to wait for a poll from the master.

Communication Efficiency

As said previously, DNP3 uses bits to send data, whereas Modbus uses verbose text. So, compared to Modbus, DNP3 can send more information across the network - and faster. Since you can send more data in smaller packets, DNP3 is a good option if you want to reduce your bandwidth usage.

Another DNP3 aspect that reduces bandwidth overhead and lowers costs is that, unlike Modbus, it is an event-driven protocol. Managed devices are able to transmit unsolicited responses, consequently, there's no need to have constant messages sent to remote devices.

If you need to make a choice between these protocols and want to ensure a higher level of efficiency for your network, then the DNP3 will be a better option.

The Bottom Line

Both Modbus and DNP3 can be used in successful SCADA systems.

Many network managers choose Modbus due to its simplicity for small gear and the very large number of different devices that support this protocol.

On the other hand, DNP3 is highly standardized, with high compatibility and interoperability between devices from multiple different manufacturers.

Both Modbus or DNP3 can be efficient in SCADA environments. So, in order to choose between both, you need to thoroughly evaluate your network.

If you want a specialist opinion about which protocol would be best for your scenario or want to learn some SCADA device options, give us a call. You will be promptly talking to one of our applications engineers.