How does the Ethernet/IP protocol work?

How does the EtherNet/IP protocol work?

Following a command from the PLC to the field device

EtherNet/IP carries CIP application services over standard Ethernet and IP-based networks. A PLC can send a speed reference to a drive, receive sensor data from remote I/O and read device fault information through the same infrastructure. The Ethernet infrastructure forwards traffic; CIP defines how device data is organized, which services access it and how connections are managed.

Editor's note: Unicast/multicast, cyclic/change-of-state and exclusive owner/input-only/listen-only are not options in one classification. They describe data distribution, the trigger for data production, and I/O connection ownership or data exchange roles, respectively. Polling can be an application's repeated query method; it is not a third distribution type equivalent to unicast and multicast.

Ethernet, IP, TCP/UDP and CIP perform different jobs

Ethernet handles frame transmission on the local network, while IP provides addressing and packet routing between networks. TCP or UDP supplies the relevant transport, and CIP defines the industrial application's data and service model. This layered architecture allows other application protocols to share the physical network. An Ethernet interface alone does not give a device EtherNet/IP capability.

Physical connectivity, switches and network addressing must be suitable. A ping reply alone does not establish that CIP services are accessible or that I/O data is correct. Packet delivery, protocol connections and machine behavior require different levels of validation.

Objects and services define device data

CIP models devices using classes, instances, attributes and services. A class groups objects of the same kind. An instance is a particular occurrence within that class, and an attribute holds a characteristic or state. A service specifies a read, write or another supported operation. A request therefore identifies the object and action, rather than simply asking for an unspecified number.

The Identity Object and Assembly Object are examples used for device identification and grouping data for transfer. Vendor-specific objects and services can also exist. Consequently, device compatibility depends on support for the required objects, services, roles and data structures alongside the EtherNet/IP designation.

Explicit messaging: a response to a specific request

With explicit messaging, a client sends a CIP request, and the server processes it and returns a result or error information. A supported parameter can be read or an authorized setting changed, for example. Object-based access can identify the class, instance, attribute and service. Suitable controllers can also support different services for tag access.

This method is useful for device configuration and diagnostics. Explicit messaging does not necessarily mean infrequent communication: HMI and PC software can issue repeated queries. Assess the controller and network load when querying many objects individually. Connected and unconnected explicit messages also differ in their use of CIP connections; this distinction is separate from whether TCP is used.

Implicit I/O: transferring a predefined data structure

With implicit I/O messaging, the data structure is established during connection setup. Subsequent packets do not require a fresh parameter-read request for every field. Packets are processed using connection identifiers and relevant control information. The receiver interprets payload fields according to the configured data layout.

This uses the producer/consumer model. A producer sends data according to the production conditions supported by the connection, and an appropriate consumer receives it. Each I/O update should not be assumed to be a reply to a separate PLC read request. Whether several consumers receive one producer's data depends on the supported connection and distribution arrangements.

How is a common I/O connection established?

In a conventional, unencrypted Full EtherNet/IP sequence, the scanner/originator reaches the target adapter and establishes a TCP connection and encapsulation session. It then requests an I/O connection using CIP connection management services such as Forward_Open. Assembly connection points, data sizes, timing and connection type are evaluated. I/O transfer starts when a suitable request is accepted.

In this common arrangement, TCP 44818 carries messaging and connection management, while UDP 2222 carries I/O data. UDP 44818 can be seen in discovery operations such as ListIdentity. Accessing a known IP address does not require discovery every time. Read port functions together with their transport protocols, and assess different transport profiles and security implementations separately.

A TCP connection, an EtherNet/IP encapsulation session and a CIP I/O connection are different things. UDP's connectionless transport does not prevent a managed CIP I/O connection from existing at the application level. Connection identifiers, timeouts and producer/consumer relationships are managed at that level.

Select distribution, production triggers and ownership separately

Unicast can deliver data to one destination, while multicast distributes it to the relevant group. Select according to connection support. Where multicast is used, assess group membership, IGMP snooping and the querier arrangement. Unicast selection must likewise remain within device and application capabilities.

Cyclic production sends data at configured intervals; change-of-state production responds to relevant changes. Where supported, production can also be triggered by the application. Additional timing and production rules can maintain the connection. RPI is the requested packet interval and differs from total response time. For example, the end-to-end response of a system with a 10 ms RPI and a 20 ms PLC task cannot be determined from RPI alone.

An exclusive owner connection establishes control ownership of the relevant output data. An input-only connection can receive input data without controlling output data. A listen-only connection depends on another required connection. Check support and dependencies in the device documentation. Do not assume that several controllers can freely write to the same output area.

What do assemblies, EDS files and device profiles provide?

An assembly groups application data for transfer. A drive's output data could contain a control word and speed reference, while its input data contains a status word and actual speed. From the PLC scanner's perspective, outputs flow from PLC to device and inputs flow from device to PLC. Configuration must match instance numbers, data lengths, data types and scaling correctly.

An EDS, Electronic Data Sheet, describes device characteristics and configuration options. Engineering tools can use this information for integration. An EDS is not firmware or a PLC program. A device profile defines common objects and behavior for a particular device type. Check the profile, options, firmware and conformance scope for the actual product.

Example: a PLC, a drive and a supervisory system

Consider a suitable PLC acting as the scanner for a variable frequency drive. When the required enable conditions are satisfied, the PLC application places a control word and speed reference in its output area. The communication infrastructure transfers that area over the I/O connection. The drive receives and interprets the data according to its supported control profile, then controls the motor through its own control algorithms.

Delivering a packet and producing the requested motor movement are different stages. The command source, operating permissions, reference scaling and drive state must be appropriate. The drive produces status and actual-speed data back to the PLC. A SCADA system can monitor data through a supported driver or intermediate layer; a supervisory system does not necessarily act as a field I/O scanner.

A robot application can similarly exchange ready, busy, complete and fault information. The relevant Universal Robots guide treats the robot as an adapter and the PLC as a scanner. In industrial applications, data exchange is bounded by the exposed data areas and command acceptance conditions. Internal functions do not all become accessible automatically.

Real-time behavior depends on the complete system

Using UDP, selecting a low RPI or enabling QoS alone does not guarantee timing. Assess device data production, PLC tasks, switch queues, connection capacity and network load together. Switched full-duplex Ethernet eliminates the collision issue of older shared media, but queuing delays and resource shortages can still occur.

QoS, appropriate network segmentation and capacity planning can support the required performance. Select line, star or tree arrangements according to device capabilities. A DLR ring requires suitable participants and a ring supervisor. DLR helps recover from a link failure; it does not make every two-port device suitable for a ring or eliminate every communication interruption.

Security, data validity and diagnostics

CIP Security can provide protections such as authentication and data integrity on supporting, appropriately configured devices, with confidentiality according to the selected policy. These security capabilities are not enabled by default on every device. CIP Safety provides separate functions for safety-related communication and addresses a different concern from cybersecurity. Access control and network segmentation remain part of the system design.

The application must respond appropriately to connection timeouts, incorrect data mapping or device faults. A value retained in memory does not establish that fresh, valid data has arrived. For diagnostics, monitor connection status, CIP error information and network counters together. Custom software also needs data-quality handling and a defined reconnection strategy. A working system validates packet delivery, correct data interpretation and the required machine response together.