RMC Ethernet Protocols

This topic provides a complete list of low-level protocols supported on the RMC75E, RMC150E, and RMC200 for use by network administrators. This topic is not required to be understood for using the RMC module successfully. It is intended to be a brief summary of the architecture and a list of the protocols.

TCP/IP Layers Overview

Networking is often viewed conceptually as layers of protocols. Each layer contains a header, used to fulfill the purpose of that layer, and data.  These layers are set up such that each layer contains the header and data from the next higher layer within its data area, as shown in the following diagram:

 

Application Layer

 

 

 

Modbus/TCP Header

Modbus/TCP

Data Area

 

 

 

 

 

 

Transport

Layer

 

 

TCP Header

TCP

Data Area

 

 

 

 

 

 

Internet Layer

 

IP Header

IP

Data Area

 

 

 

 

 

 

Framing Layer

Ethernet II

Header

Ethernet II

Data Area

CRC

 

 

 

 

 

Entire Packet

Framing Header

IP Header

TCP Header

Modbus/TCP Header

Modbus/TCP

Data Area

CRC

 

 

This diagram shows the four conceptual layers of TCP/IP: application, transport, internet, and framing. A fifth layer—the hardware layer—is often added below these four layers, but is left out of this diagram because it is more of a specification of how the data is physically sent rather than another protocol header. When a device is sending a packet the packet is assembled from the top layer down, but when receiving a packet, it must be processed from the bottom layer up.

Here is how the RMC might look at an incoming packet with this structure:

  1. Hardware Layer:
    A full packet is received and passed to the Framing Layer.

  2. Framing Layer:
    The CRC (cyclic redundancy check) is verified.  If this fails, the packet is discarded.  Next, the destination MAC address in the framing header is compared with the RMC's MAC address.  If the addresses do not match and the destination address was not a special broadcast address, the packet is discarded.  Otherwise it is passed to the Internet Layer.

  3. Internet Layer:
    The IP address in the IP header is compared with the RMC's user-selectable IP address.  If it does not match, the packet is discarded.  Otherwise, it is passed to the Transport Layer.

  4. Transport Layer:
    The transport layer provides a number of services, but minimally must specify the port that the data should be sent to.  A port is an abstract connection point on a device that allows for multiple connections to exist on a single device.  It also helps determine which application protocol will follow.  The packet may be discarded here too if the destination port is not one that the RMC supports.

  5. Application Layer:
    In our example, the application protocol is Modbus/TCP, so the Modbus/TCP header contains data such as the RMC register address to begin reading or writing from, the number of registers to access, and whether the operation is a read or write.  The Modbus/TCP data area holds the actual words to be written.

Supported Protocols

The diagram below shows many of the protocols supported by the RMC and the layers to which they belong:

 

Application Layer

Modbus/TCP, EtherNet/IP, PROFINET, CSP, DMCP, FINS/UDP, Procedure Exist

BOOTP

DHCP

 

Application Protocols

 

Configuration Protocols

 

Low-level Protocols

 

Transport

Layer

TCP

UDP

Internet Layer

IP (includes ICMP and ARP)

Framing Layer

Ethernet II

Hardware Layer

IEEE 802.3 for 100BaseT

 

Each protocol supported by RMC controllers is briefly described below:

ARP (Address Resolution Protocol)

Ethernet packets can either be broadcast (received by all devices on the network) or sent to a single MAC address.  However, applications generally address computers by IP address rather than MAC address.  Therefore, this protocol is used to determine the MAC address of the computer owning a given IP address.

BOOTP (BOOTstrap Protocol)

This protocol is used to allow a central database to be maintained with all IP addresses on a network.  This single computer is the BOOTP server.  When a BOOTP client (such as the RMC, if configured to use BOOTP) starts up, it broadcasts asking a BOOTP server to tell it what its IP address should be.  The BOOTP server looks up the MAC address of the BOOTP client in a database and sends a reply with the corresponding IP address.

When the RMC powers up, it broadcasts a request for its IP parameters.  If a BOOTP server is available on the network, then the BOOTP server will look into a database of mappings from MAC addresses to IP addresses for the MAC address of the RMC that sent the request.  If it finds a match, it will give the RMC an IP address, default gateway, and subnet mask.  If no BOOTP server responds—either because no BOOTP server exists, or the RMC's MAC address was not found in the BOOTP server's database—the RMC's Ethernet communication channel will not be usable.

CIP (Control Information Protocol)

See the EtherNet/IP section below.

CSP (Client/Server Protocol)

This is a proprietary protocol developed by Allen-Bradley, Inc. Variants of this are used on Allen-Bradley's SLC 5/05 and PLC-5 controllers. This protocol is also used by the Allen-Bradley's SoftLogix 5 and RSLinx and SoftPLC Corporation's SoftPLC. Allen-Bradley does not publish the specifications for this protocol. See the CSP topic for details on usage with the RMC.

DHCP (Dynamic Host Configuration Protocol)

This protocol is an enhanced version of BOOTP. However, for industrial applications, the enhancements (lease times and dynamic assignment of IP addresses) are generally not usable. The RMCs support both BOOTP and DHCP so that the user may use either type of server.

DLR (Device Level Ring) - RMC200 only

Device Level Ring (DLR) provides media redundancy in a ring topology for devices that have multiple Ethernet ports. The DLR protocol provides for fast network fault detection and reconfiguration. The RMC200 uses DLR with EtherNet/IP.

DMCP (Delta Motion Control Protocol)

A simple Ethernet protocol intended for use with direct communication to the RMC over TCP or UDP. In applications where none of the RMC’s other protocols are supported by the master controller, but direct communication over TCP or UDP is allowed, Delta recommends that the DMCP protocol be implemented by the user manually.

Ethernet II

This is the most common framing layer protocol used by Ethernet devices.  Other alternatives include IEEE 802.3 SNAP, IEEE 802.5 (Token Ring), and IEEE 802.4 (Token Bus).  The RMC only supports Ethernet II framing, and therefore will not work on networks using any of the other framing types.  All PLCs currently support Ethernet II framing although the Modicon Quantum allows selecting either Ethernet II (the default) or IEEE 802.3 SNAP.

EtherNet/IP

This is an open application protocol, originally developed by Allen-Bradley, Inc., but now maintained and distributed by ODVA (https://www.odva.org).  The specification and source code are available through https://www.ethernet-ip.org.  This protocol is an Ethernet-adaptation of the Control Information Protocol (CIP) in the same way that DeviceNet is a CAN adaptation of CIP and ControlNet is a CTDMA-adaptation of CIP.  EtherNet/IP is used by the Allen Bradley ControlLogix's Ethernet modules (1756-ENET and 1756-ENBT).
See the EtherNet/IP topic for details on usage with the RMC.

FINS/UDP

This is an open application protocol developed and used by Omron Electronics Inc.  This protocol is available over a number of media, including Ethernet and serial.  Additional information is available in the CS1 Communications Reference Manual, available on Omron's web site: https://www.omron.com/oei.

For more details, see the FINS/UDP and Communicating Directly over UDP topics.

ICMP (Internet Control Message Protocol)

This protocol—running on top of the Internet Protocol—is used for sending error messages between routers and also provides the ping service.  Only the ping service portion of this protocol is used by the RMC.  Ping is a utility provided on most operating systems that simply asks if a device can be found with a given IP address or name.

IEEE 802.3 for 100BaseT

This is a standard for sending Ethernet data at 100Mb/s through twisted pair wiring rated Category 5 (CAT5) or greater.  The connectors used by this standard are RJ45.

IP (Internet Protocol)

This is the main Internet Layer protocol and is used for sending packets between two computers in a network or across two or more networks.  It also allows for fragmentation of packets.  This is a situation where a packet is larger than a network's maximum packet size, so it is broken into smaller packets that are re-assembled by the recipient.

LLDP (Link Layer Discovery Protocol)

This is an open link-layer protocol used by network devices to advertise their identity, capabilities, and neighbors over Ethernet. All PROFINET devices are required to support LLDP. These devices also are required to use a separate port-specific port MAC address (instead of the device MAC address used by all other protocols) as the source address for LLDP packets that are sent. See Ethernet MAC Address for details.

Modbus/TCP

This is an open protocol developed and used by Modicon of Schneider Electric.  Its standard is maintained by Mosbus-IDA (www.modbus.org). See the Modbus/TCP topic for details on usage with the RMC.

MRP (Media Redundancy Protocol) - RMC200 Only

Media Redundancy Protocol (MRP) is a data network protocol standardized as IEC 62439-2. It allows rings of Ethernet switches to overcome any single failure with a fast recovery time. The RMC200 uses MRP with PROFINET.

Procedure Exist

The Mitsubishi protocol is for the Mitsubishi's Q-series QJ71E71-100 Ethernet module and the FX3U PLC. See the Mitsubishi Procedure Exist topic for details.

PROFINET

PROFINET is the open industrial Ethernet standard of PROFIBUS & PROFINET International (PI) for automation and is part of the IEC 61158 and IEC 61784 standards. The RMC75E, RMC150E, and RC200 support PROFINET RT, which allows for data cycles down in the millisecond range. See the PROFINET topic for details on usage with an RMC.

SNMP (Simple Network Management Protocol)

This is an open protocol running on top of UDP for collecting and organizing information about devices on IP networks. It is widely used in network management for network monitoring. Support for SNMP is required by PROFINET devices wishing to comply with the Topology Engineering & Discovery feature, which is especially important for devices with multiple Ethernet ports like the RMC200. See Simple Network Management Protocol (SNMP) for details on support by RMC controllers.

TCP (Transmission Control Protocol)

This is the main Transport Layer protocol in the TCP/IP stack. It provides for maintaining a reliable connection between two devices.

UDP (User Datagram Protocol)

This Transport Layer protocol is used by some application protocols instead of TCP. UDP is lighter weight than TCP and works well in situations where acknowledgements are built into the application protocol or are not required.

If you wish to communicate with the RMC directly over UDP, see the Communicating Directly over UDP topic.

 

See Also

Ethernet Overview


Send comments on this topic.

Copyright © 2024 Delta Computer Systems, Inc. dba Delta Motion