Introduction to Industrial Software Infrastructure

Industrial software refers to the Information Technology (IT) and Operational Technology (OT) applications within industrial environments that are software-based. These applications may have various purposes—control and supervision of lower-level field devices, data acquisition and historization, production scheduling, predictive maintenance, etc.

Industrial software infrastructure refers to everything beneath and around the software applications themselves: the physical and virtual computing devices, networking components, data storage, and beyond.

At a high level, there are three (3) layers of industrial software infrastructure.

Networking Layer

The Networking Layer governs the communication between the lower level actuators, sensors, and specialized control layers and the operator-facing, higher-level control systems.

It is usually composed of hardware switches and a mostly-generic software management interface for those pieces of hardware. This layer is generally designed to be distinct at every site and is tied to site-specific topologies.

Changes to this layer are infrequent, largely manual, and nearly always lead to downtime.

Application Infrastructure Layer

The Application Infrastructure Layer governs the management of the servers that underpin higher level, operator-facing control systems. Additionally, it covers management of the baseline versions of those control systems.

It is usually composed of standard servers or cluster infrastructure, as well as one of a small set of either hypervisors (for VM based approaches) or baseline Operating System (OS) management tools (for bare metal approaches). This layer is generally consistent between sites that are using the same control system, with differences caused by manual implementation choices rather than innate differences between those sites.

Changes to this layer are somewhat infrequent and mostly tied to hardware end of life and to OS upgrades. While changes can be automated, they are predominantly performed manually—and often lead to downtime.

Application State Layer

The Application State Layer governs application-level configuration, such as which lower level devices control systems are connected to, which alarms and variables are tracked by those control systems, and which interfaces operators use to control their process lines.

It is composed of application-specific files or databases, and generally difficult to represent as a unified system with traditional approaches. This layer is generally site-specific and reflective of the particular details of individual processes.

Changes to this layer are generally manual, but do not lead to downtime except in exigent circumstances. However, changes can (and often do) lead to potential degradation of process performance.

Last updated