JimMontague0609

Labor-saving IIoT tools and protocols

June 18, 2021
The list of software, protocols and other devices for implementing the Industrial Internet of Things (IIoT) is always growing and diversifying. Here's the latest update.
This article is part of a series!

Learn more on how to optimize with the Industrial Internet of Things in the series.

  • Advanced message queuing protocol (AMQP) is an open, binary, standardized, application-layer protocol that's used by message-based software serving other applications. It employs message orientation, queuing, point-to-point and publish-and-subscribe routing, security and reliability. The client starts listening in active mode for incoming data links from the server on port M. When the client is behind a firewall and can't accept incoming transfer control protocol (TCP) connections, the client uses passive mode and the control connection to send a PASV command to the server, and receives a server IP address and server port number from the server, which the client uses to open a data connection from an arbitrary client port to the server IP address and server port number received. Users can authenticate themselves with a clear-text sign-in, such as a username and password, but can connect anonymously if the server is configured to allow it.

  • Advanced Physical Layer (APL) is a fast, secure, trunk-and-spur, protocol-neutral standard designed to extend Ethernet to process operations and device levels, and eliminate the need for gateway or protocol conversion from the field to cloud and enterprise systems. It's an outgrowth of the IEEE 802.3cg-2019 (10BASE-T1L) standard, which extends Ethernet via single-pair wiring with optional power for devices, and even into hazardous areas. APL defines two segment types, including trunk lines that carry high-level power and data up to 1,000 meters, and spur lines that relay power and signals with optional intrinsic safety (IS) up to 200 meters. Trunks are anchored by APL power switches that provide up to 60 Watts and communicate for up to 50 devices. Each spur is anchored by an APL field switch that provides IS power and communications to field devices. APL's new IS standards will be called Ethernet-APL, while the IEC PT 60079-47 technical committee is working on a technical spec called two-wire IS Ethernet (2-WISE) to meet the IS requirement for loop-powered and separately powered devices in hazardous areas up to Zone 0, 1 and 2/Division 1 and 2. To make IS loop engineering and verification simple, 2-WISE is based on the same Ex-concept as the Fieldbus Intrinsically Safe Concept (FISCO). The final IEC TS 60079-47 technical specification is expected this year.

  • Containers are standard software units that package code and its dependencies, so an application can run quickly and reliably from one computing environment to another. Docker container images are lightweight, standalone, executable software packages that includes what's needed to run applications, such as code, runtime, system tools, system libraries and settings. Docker container technology was launched in 2013 as an open-source Docker Engine. It leveraged existing computing concepts around containers and in the Linux world, including primitives known as cgroups and namespaces. Container images become containers at runtime, and in the case of Docker containers, images become containers when they run on Docker Engine. Available for Linux and Windows-based applications, containerized software will always run the same, regardless of infrastructure. Containers isolate software from its environment, and ensure it works uniformly despite differences, such as between development and staging.

  • File transfer protocol (FTP) is a standard networking protocol for sending data files between a client and server on a computer network, and is founded on a client-server model architecture using separate data and control connections. FTP can operate in active or passive modes, which determines how the data link is established. For secure transmission that protects usernames and passwords and encrypts content, FTP is often secured with FTP secure socket layer/transport layer security (SSL/TLS) (FTPS) or replaced with secure shell (SSH) FTP (SFTP).

  • 5G is the 5th-generation standard for broadband cellular networks that starting deployments in 2019. Similar to earlier generations, 5G is a cellular networks methodology that separates a service area into smaller geographical cells. Every 5G wireless component use the antenna in their cell to reach its network and the Internet. 5G's primary advantage is more bandwidth and faster downloads, which are expected to reach 10 Gbps, allow 5G networks to serve as Internet service providers (ISP)m and enable IIoT applications.

  • Hypertext transfer protocol (HTTP) is an application protocol for distributed, collaborative hypermedia information systems. HTTP is the foundation of data communication on the web, where hypertext documents include hyperlinks to other resources that users can access.

  • JavaScript object notation is an open-standard, language-independent, data-file format that uses readable text to send information objects made of attribute-value pairs and array data types or other value that can be serialized. It's a common data format used for asynchronous browser/server communications, and many programming languages include code to generate and parse JSON-format data.

  • Kubernetes (K8s) is an open-source, container-based orchestration platform for automating, deploying, scaling and managing computing applications across clusters of software hosts and container devices. Many cloud-computing services provide a PaaS or infrastructure as a service (IaaS) where Kubernetes can be implemented as a platform-providing service, and many suppliers also deliver their own branded Kubernetes versions and deployments.

  • Low-code/no-code usually consists of software for operational applications or specific tasks that's created using a low-code development platform (LCDP) or a no-code development platform (NCDP), which are visual development settings for programming application software with a graphical user interface (GUI) instead of traditional manually coded software. Using a GUI speeds up application development, and often lets users without programming skills participate in development. LCDPs and NCDPs can also cut deployment, setup, training and maintenance costs. The main differences between low-code and no-code are: any user can access a NCDP, while low-code requires some coding-language know-how and working within a LCDP's constraints; no-code allows drag-and-drop and simple logic app development, while low-code relies more on hard code to determine an app's architecture; and no-code uses a preset user interface (UI) layer, while low-code has more UI options that require more coding.

  • Message queuing telemetry transport (MQTT) is a publish-subscribe protocol by Cirrus Link Solutions that uses a message brokering method in which clients communicate with a server. It runs atop TCP/IP, is standardized as ISO/IEC PRF 20922, and was built for linking widely distributed devices with relatively small amounts of programming and/or on lower-capacity networks. Every MQTT client can reach the broker, and each can publish data or subscribe to it. The protocol doesn't offer security functions, but these can be done at the TCP/IP level.

  • MQTT Sparkplug B is a specification by Cirrus Link Solutions that shows how to use MQTT in real-time, operations technology (OT) environments by creating a publish/subscribe infrastructure that's simpler and more versatile than legacy MQTT, and allows subscriptions by any application or device seeking data access. It's built on top of MQTT and solves its former weaknesses by defining: a standard MQTT topic namespace definition that's optimized for industrial applications; an efficient MQTT payload definition that's extensible but optimized for SCADA, tag and metric representations; how to use MQTT state management in real-time SCADA systems; and high-availability MQTT architectures for redundancy and scale.

  • Node-RED is a flow-based development tool for visual programming originally created by IBM for wiring together hardware devices, APIs and online services as part of the IoT. Node-RED provides a browser-based flow editor that's used to create JavaScript functions. Application elements can be saved or shared for reuse. Flows created in Node-RED are stored using JSON, and MQTT nodes can make properly configured TLS connections.

  • Python is an interpreted, object-oriented, high-level programming language with dynamic semantics. Combined with dynamic typing and dynamic binding, its built-in, high-level data structures make it attractive for rapid development of applications, and for use as a scripting or glue language to connect components. Python's simple, easy-to-learn syntax stresses readability, and reduces program maintenance costs. Python supports modules and packages, which encourages program modularity and code reuse. The Python interpreter and standard library are available in source or binary form without charge for all major platforms and can be freely distributed.

  • REpresentational state transfer (REST) is a software architecture method for distributed hypermedia systems that defines constraints for creating web services. When these services conform to REST's six guiding constraints, they're called RESTful web services (RWS), and enable interoperability between Internet computing systems. RWSs allow inquiring systems to access and manipulate textual representations of web resources by using a uniform and predefined set of stateless operations.

  • Simple network management protocol (SNMP) is a widely used Internet standard protocol for network monitoring, gathering and organizing data about managed components on IP networks, and modifying that data to alter device performance. Items that support SNMP include cable modems, routers, switches, servers, workstations and printers. SNMP reveals management data as variables on managed systems organized in a management information base (MIB) that describe system status and configuration. These variables can be remotely queried and sometimes manipulated by managing applications.

  • Transmission control protocol/Internet protocol (TCP/IP), also known as the Internet protocol suite, includes the model and end-to-end communication protocols used by the Internet and similar networks, and defines how digital information should be packaged, addressed, sent, routed and delivered. The suite's many protocols are divided into four abstraction layers—link for communicating within one network; Internet for communicating between networks; transport for communicating between host devices; and application for communicating between processes. Its standards are managed by the Internet Engineering Task Force (IETF), which is overseen by part of the non-profit Internet Society.

  • Unified namespace (UNS) is software that decouples information from data processing, and acts as a centralized repository of information and context, where other devices and applications can consume or publish data required for specific actions. UNS lets users collect data from various sources, add context so there’s meaning to it, and transform it to a format that other systems can understand. It's often combined with MQTT Sparkplug to create a foundation for scalable, digitalization applications.

About the author: Jim Montague
About the Author

Jim Montague | Executive Editor

Jim Montague is executive editor of Control.