The Network-Centric Computing Model
How can enterprise-level applications access and process information generated by embedded real-time systems?
By: Mark Hamilton
Jul. 7, 2009 11:15 AM
System architects and engineering teams are designing increasingly complex embedded systems in order to satisfy their customers' stringent functionality and performance requirements. In addition, within tactical systems, it's not uncommon to require deterministic real-time behavior while moving large quantities of information over non-deterministic network transports. Many of these systems must now face the challenge of interfacing or "bridging" to the Global Information Grid (GIG) in a seamless fashion in order to: a) communicate information with the broader electronic community while b) not negatively impacting high performance mission-critical functionality.
As the Object Management Group's (OMG) Data Distribution Service (DDS) specification continues to gain market traction, particularly within the Department of Defense (DoD), the ability to seamlessly integrate DDS-based high-performance tactical systems with enterprise-based applications provides the potential for a viable, standards-based architectural strategy that specifically addresses the embedded to Enterprise (e2E) communication challenge.
The Network-Centric Computing Model
The NCCM is one that facilitates localized management of distributed data as an integral part of the real-time application while not relying on the traditional central server topology. The model's topology is peer-to-peer versus client/server, allowing system architectures to be designed, from the computing node's perspective, with no single point of failure (i.e., no central server). Network-centric computing is based on computing elements being loosely coupled such that high-performance middleware abstracts the operating system and the hardware specific details so that, ultimately, the application software design does not require intimate knowledge of the underlying network topology. This computing model facilitates the design of location transparent software, which directly benefits software module reuse.
Within the NCCM, a huge challenge is managing the distributed data to be shared between the tactical and enterprise applications. Real-time data must be captured, stored, retrieved, queried, and managed such that the proper information can be easily accessed by all interested enterprise participants. Conversely, enterprise information that must be pushed back to the tactical system must be able to do so in an efficient and timely manner. This shared data management capability can be viewed as, but is not limited to, a distributed real-time database where peer-to-peer (P2P) networking and relational in-memory data management systems (RDBMS) are leveraged to provide a solution that manages storage, retrieval, and distribution of fast-changing data in dynamic network environments. Figure 1 provides a simple illustration of this NCCM architecture. The benefit of the distributed database model is that it scales and guarantees continuous real-time availability of all information critical to the enterprise without compromising tactical systems determinism or performance.
Another important aspect of the NCCM architecture is its ability to support network topologies that are bandwidth limited, lossy, and of an ad-hoc nature. Being able to federate applications is a key aspect of the NCCM and is precisely why DDS publish/subscribe middleware is leveraged as the communication backbone. Allowing systems to communicate large volumes of time-sensitive data, while operating over bandwidth-constrained, high-latency links that experience high bit-error rates is essential for operational success and system readiness requirements. The architecture has to be able to maintain overall system availability, even in the presence of individual sub-systems temporarily dropping out of the network, and quickly rejoining.
Network-Centric Data Management - A Real-Time Implementation
The NCCM-based architecture addresses the aforementioned technical challenges by providing software intelligence that enables real-time information management. Furthermore, it implements a distributed shared database where fragments of the shared database are kept in the local data caches (i.e., local memory) of the hosts that comprise the network - on an as-needed basis.
As a result, software applications gain reliable, instant access across dynamic networks to information that changes in real-time. The architecture uniquely integrates peer-to-peer networking (DDS) and real-time, in-memory database management systems (DBMS) into a complete solution that manages storage, retrieval, and distribution of fast-changing data in dynamically configured network environments. It guarantees continuous availability in real-time of all information that is critical to the enterprise. DDS technology is employed to enable a truly decentralized data structure for distributed database management while DBMS technology is used to provide persistence for real-time DDS data.
The power of this model is that embedded applications do not need to know SQL or OBDC semantics, and enterprise applications are not forced to know publish-subscribe semantics. This is a critical point when building large systems: get the data to where it needs to go in a format that is native to the developers. Thus, the database becomes an aggregate of the data tables distributed throughout the system. When a node updates a table by executing a SQL INSERT, UPDATE, or DELETE statement on the table, the update is proactively pushed to other hosts that require local access to the same table via real-time publish-and-subscribe messaging. This architectural approach enables real-time replication of any number of remote data tables.
The NCCM architecture consists of two technologies:
Database Synchronization Technology
From a practical perspective, it is important to recognize that a distributed relational database capability can now be implemented on multiple computing nodes - which provide a multi-database vendor-independent solution. In fact, this new architecture views the combination of these distributed data tables as a single "distributed database." Figure 2 illustrates how the technology unifies the global data space for both embedded and enterprise applications.
DDS-DBMS Integration Technology - Embedded to Enterprise (e2E) Bridging
The DDS-DBMS integration technology also allows DDS publications and/or subscriptions to be captured and logged into the in-memory database, in real-time, in order to capture and log all incoming or outgoing publish-subscribe activity. This allows live network traffic captures to be logged directly into RAM, thus facilitating the ability to post-process and analyze system communication activity. This logging capacity provides the primitives for building distributed system debug and trace tools, message auditing, as well as design tools that can capture and playback messages in order to re-create original system activity for the purposes of lab testing and debug.
DDS-DBMS Integration - Architectural Details
Figure 3 illustrates the DDS-DBMS integration technology which consists of two bridge components: DDS-DBMS and DBMS-DDS.
DDS-DBMS Integration Feature Summary
Storage of DDS Data in DBMS Tables
Publication of DBMS Data via DDS
Mapping Between IDL and SQL Data Types
Mapping Between DDS Data Samples and DBMS Table Updates
With the emergence of the NCCM architecture, we now have answers to the questions: "How can enterprise-level applications access and process information generated by embedded real-time systems?" Furthermore, "How can an embedded system gain access and respond, in real-time, to data being managed by an enterprise-level application?"
Reader Feedback: Page 1 of 1
Latest Cloud Developer Stories
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
SYS-CON Featured Whitepapers
Most Read This Week