-
Composable Industrial Internet Applications for Tiered Architectures
Authors:
K. Eric Harper,
Thijmen de Gooijer,
Karen Smiley
Abstract:
A single vendor cannot provide complete IIoT end-to-end solutions because cooperation is required from multiple parties. Interoperability is a key architectural quality. Composability of capabilities, information and configuration is the prerequisite for interoperability, supported by a data storage infrastructure and defined set of interfaces to build applications. Secure collection, transport an…
▽ More
A single vendor cannot provide complete IIoT end-to-end solutions because cooperation is required from multiple parties. Interoperability is a key architectural quality. Composability of capabilities, information and configuration is the prerequisite for interoperability, supported by a data storage infrastructure and defined set of interfaces to build applications. Secure collection, transport and storage of data and algorithms are expectations for collaborative participation in any IIoT solution. Participants require control of their data ownership and confidentiality. We propose an Internet of Things, Services and People (IoTSP) application development and management framework which includes components for data storage, algorithm design and packaging, and computation execution. Applications use clusters of platform services, organized in tiers, and local access to data to reduce complexity and enhance reliable data exchange. Since communication is less reliable across tiers, data is synchronized between storage replicas when communication is available. The platform services provide a common ecosystem to exchange data uniting data storage, applications, and components that process the data. Configuration and orchestration of the tiers are managed using shared tools and facilities. The platform promotes the data storage components to be peers of the applications where each data owner is in control of when and how much information is shared with a service provider. The service components and applications are securely integrated using local event and data exchange communication channels. This tiered architecture reduces the cyber attack surface and enables individual tiers to operate autonomously, while addressing interoperability concerns. We present our framework using predictive maintenance as an example, and evaluate compatibility of our vision with an emerging set of standards.
△ Less
Submitted 16 February, 2016;
originally announced February 2016.
-
Microdatabases for the Industrial Internet
Authors:
K. Eric Harper,
Thijmen de Gooijer,
Johannes O. Schmitt,
David Cox
Abstract:
The Industrial Internet market is targeted to grow by trillions of US dollars by the year 2030, driven by adoption, deployment and integration of billions of intelligent devices and their associated data. This digital expansion faces a number of significant challenges, including reliable data management, security and privacy. Realizing the benefits from this evolution is made more difficult becaus…
▽ More
The Industrial Internet market is targeted to grow by trillions of US dollars by the year 2030, driven by adoption, deployment and integration of billions of intelligent devices and their associated data. This digital expansion faces a number of significant challenges, including reliable data management, security and privacy. Realizing the benefits from this evolution is made more difficult because a typical industrial plant includes multiple vendors and legacy technology stacks. Aggregating all the raw data to a single data center before performing analysis increases response times, raising performance concerns in traditional markets and requiring a compromise between data duplication and data access performance. Similar to the way microservices can integrate disparate information technologies without imposing monolithic cross-cutting architecture impacts, we propose microdatabases to manage the data heterogeneity of the Industrial Internet while allowing records to be captured and secured close to the industrial processes, but also be made available near the applications that can benefit from the data. A microdatabase is an abstraction of a data store that standardizes and protects the interactions between distributed data sources, providers and consumers. It integrates an information model with discoverable object types that can be browsed interactively and programmatically, and supports repository instances that evolve with their own lifecycles. The microdatabase abstraction is independent of technology choice and was designed based on solicitation and review of industry stakeholder concerns.
△ Less
Submitted 15 January, 2016;
originally announced January 2016.
-
Performance Impact of Lock-Free Algorithms on Multicore Communication APIs
Authors:
K. Eric Harper,
Thijmen de Gooijer
Abstract:
Data race conditions in multi-tasking software applications are prevented by serializing access to shared memory resources, ensuring data consistency and deterministic behavior. Traditionally tasks acquire and release locks to synchronize operations on shared memory. Unfortunately, lock management can add significant processing overhead especially for multicore deployments where tasks on different…
▽ More
Data race conditions in multi-tasking software applications are prevented by serializing access to shared memory resources, ensuring data consistency and deterministic behavior. Traditionally tasks acquire and release locks to synchronize operations on shared memory. Unfortunately, lock management can add significant processing overhead especially for multicore deployments where tasks on different cores convoy in queues waiting to acquire a lock. Implementing more than one lock introduces the risk of deadlock and using spinlocks constrains which cores a task can run on. The better alternative is to eliminate locks and validate that real-time properties are met, which is not directly considered in many embedded applications. Removing the locks is non-trivial and packaging lock-free algorithms for developers reduces the possibility of concurrency defects. This paper details how a multicore communication API implementation is enhanced to support lock-free messaging and the impact this has on data exchange latency between tasks. Throughput and latency are compared on Windows and Linux between lock-based and lock-free implementations for data exchange of messages, packets, and scalars. A model of the lock-free exchange predicts performance at the system architecture level and provides a stop criterion for the refactoring. The results show that migration from single to multicore hardware architectures degrades lock-based performance, and increases lock-free performance.
△ Less
Submitted 8 January, 2014;
originally announced January 2014.