28
The Real-Time Middleware Experts A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011 Gabriela F. Ciocarlie Heidi Schubert Rose Wahlin

A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

The Real-Time Middleware Experts

A Data Centric Approach for Modular Assurance

Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011 Gabriela F. Ciocarlie Heidi Schubert Rose Wahlin

Page 2: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

© 2009 Real-Time Innovations, Inc. COMPANY CONFIDENTIAL 2

Agenda

  Introduction   Mixed criticality systems   The challenge

  Data Centric Architecture   Modularity   Separation Kernels   Data Distribution Service (DDS)

  Example

  Recommendations

Page 3: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Mixed Criticality Systems

  Any system that has multiple assurance requirements –  Safety, at different assurance levels –  Security, at different assurance levels

  Example: Unmanned Air Vehicle –  Flight control is safety critical –  Payload management is mission critical

  Ideally a system is built from components each with their own assurance requirements

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 3

Page 4: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

The Challenge

  Design a modular plug-and-play architecture to reduce cost and reuse components

  Components must interact –  The behavior of one component can affect another –  It can be advantageous to have components at different

criticality levels exchange data –  Once a component interacts with another, then the whole

system must be certified, not the individual components

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 4

Page 5: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

The Solution

  Move from a component-interaction model to a data-centric model

  The data-centric model defines the data types and attributes in the system

  A component complies with the data model in terms of data it sends and receives

  This decouples the applications

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 5

Page 6: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

© 2009 Real-Time Innovations, Inc. COMPANY CONFIDENTIAL 6

Agenda

  Introduction   Mixed criticality systems   The challenge

  Data Centric Architecture   Modularity   Separation Kernels   Data Distribution Service (DDS)

  Example

  Recommendations

Page 7: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

The Modular Approach

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 7

Monolithic Approach •  Certify whole system •  Connection oriented •  Tightly coupled •  Hard to evolve

Smart Data Bus Standardized Data Services

QoS Controlled Communication

Modular approach •  Certify components •  Data oriented •  Loosely coupled •  Evolvable

Page 8: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

The Data Contract

  First, all data in the system is defined

  Next, data characteristics are defined –  For example “airspeed” is flagged as flight critical

  Then components define data delivery attributes –  A flight critical component specifies data rate that flight critical

data must be delivered

  This creates a “data contract”

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 8

Page 9: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Data Centric Approach for Layered Assurance

  Data contract includes –  Data type –  Name –  Quality of Service

  Sender/Receiver of the data is anonymous

  Validation –  Component validation – does it conform to the data model –  System validation – is there a producer at correct assurance

level for each required data

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 9

Page 10: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Realization in a Layered Assurance System

  Separation Kernels –  Guarantees isolation of components –  Controls data flow

  Object Management Group (OMG) Data Distribution Service –  Used to implement the data model and distribute data

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 10

Page 11: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Separation Kernels

  Base of the solution for mixed-criticality systems certification

  Isolation and Control –  Each guest operating system (OS) runs in its own partition –  Each guest OS is isolated over both time and space –  Information flows are tightly controlled –  Components can be pre-certified and composed quickly into

new configurations

  Caveat –  Does not address interdependency between components or

interactions between components on separate computers

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 11

Page 12: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Data Distribution Service (DDS)

  Data-centric publish-subscribe middleware for real-time communication –  Strong data typing –  Quality-of-Service (QoS) parameters

•  e.g., deadlines for message delivery, bandwidth control, reliability model control, failover and backup specification, data filtering etc.

  DDS QoS parameters characterize: –  the data contracts between participants –  the properties of the overall data model –  real-time communication and delivery requirements on a

per-data-stream basis

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 12

Page 13: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

© 2009 Real-Time Innovations, Inc. COMPANY CONFIDENTIAL 13

Agenda

  Introduction   Mixed criticality systems   The challenge

  Data Centric Architecture   Modularity   Separation kernels   Data Distribution Service (DDS)

  Example

  Recommendations

Page 14: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Example: Wind River VxWorks MILS and RTI Data Distribution Service

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 14

Hardware (Processor + Board)

VxWorks MILS Separation Kernel Wind River Hypervisor Technology

VxWorks Guest OS

Apps General Network

Stack

DDS shared lib

Linux Guest OS

Apps Linux

Network Stack

DDS shared lib

Linux Guest OS

Apps Linux

Network Stack

DDS shared lib

Page 15: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Flight critical

DDS

MILS Kernel

Example Demo Overview

Primary Mission Plan App

Secondary Mission Plan App

Logging

Ground control (laptop 1)

Remote monitor (laptop 2)

UAV Components (SBC)

DDS Bus

DDS

DDS DDS

High criticality

Lower criticality

DDS provides location-independence!

DDS-Web Services bridge

Alarm Viewer

Page 16: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

MILS Kernel

Scenario 1: Failover of Lower Criticality

Primary Mission Plan

Secondary Mission Plan

Flight critical Logging

DDS Bus

High criticality

Lower criticality

DDS-Web Services bridge

Alarm Viewer

Page 17: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

MILS Kernel

Scenario 2: Lower Criticality Floods the Network

Primary Mission Plan

Secondary Mission Plan

Flight critical Logging

DDS-Web Services bridge

Floods network

Filters excess data

DDS Bus

High criticality

Lower criticality

Alarm Viewer

Page 18: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

© 2009 Real-Time Innovations, Inc. COMPANY CONFIDENTIAL 18

Agenda

  Introduction   Mixed criticality systems   The challenge

  Data Centric Architecture   Modularity   Separation kernels   Data Distribution Service (DDS)

  Example

  Recommendations

Page 19: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Tenets for Developing Safety-Critical Software

  Reduce code size

  Consider testability in design

  Enable verification –  Avoid recursion –  Set limits – for example limits on iterations

  Deterministic in time

  Deterministic in memory –  No dynamic memory allocation after startup

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 19

Page 20: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Challenges DDS for in Safety-Critical Systems

  DDS is designed to be dynamic –  Entities discovered at run-time –  Number of nodes and endpoints can change –  DDS adaptable to changes in the environment, for example

increasing a sample queue

  DDS is feature rich –  Implementations can have many lines of code, making

certification costly –  Many features either not suitable or not applicable to safety-

critical systems

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 20

Page 21: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

DDS Discovery

  The process by which domain participants find out about each other’s entities –  Each participant maintains database on other participants in the

domain and their entities

  Happens automatically behind the scenes –  “anonymous publish-subscribe”

  Dynamic discovery –  Participants must refresh their presence in the domain or will be

aged out of database –  QoS changes are propagated to remote participants

© 2010 Real-Time Innovations, Inc. COMPANY CONFIDENTIAL 21

Page 22: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

DDS Discovery in Safety-Critical Systems

  Do not want –  An a priori unknown number of participants connecting –  An a priori unknown number of remote Data Writer/Data

Readers

  Do want –  To know if remote participants are up –  A simple protocol

  Solution –  Stage 1: the same, dynamic participant discovery –  Stage 2: static loading of endpoints

© 2010 Real-Time Innovations, Inc. COMPANY CONFIDENTIAL 22

Page 23: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Memory Model

  In DDS, queue sizes can change –  Discovery queues grow when more nodes join the system –  Data queue sizes grow to accommodate more data

  In a safety-critical system, memory must be deterministic

  Solution –  Set all resource limits before creating entities –  Memory is only allocated during _create calls –  There is no memory growth policy

© 2010 Real-Time Innovations, Inc. COMPANY CONFIDENTIAL 23

Page 24: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

DDS Feature Set

  Support the same entites –  Domain Participant, Publisher, Subscriber, Data Reader, Data

Writer, Topic

  Need core DDS APIs –  Create entities –  Write/Read –  Listener for data available –  Get QoS and Entities

  RTPS wire protocol compatibility

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 24

Page 25: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

QoS supported

  QoS needed for safety-critical systems –  Best-effort communication –  Reliable communication –  History queue –  Reader and Writer Deadline –  Manual assertion of liveliness by topic –  Time-based filter – Filter only on the reader –  Ownership –  Ownership strength

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 25

Page 26: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Conclusions

  Mixed-criticality systems certification can go a long way

  We can leverage: –  Isolation and control capabilities through separation kernels –  Modularity through a data-centric architecture

  It is possible to build mixed criticality systems that provide: –  Modularity –  Evolvability –  Fault tolerance

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 26

Page 27: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Acknowledgments

  Wind River – provided their MILS platform as well as valuable feedback

  United States Air Force - contract FA8650-10-M-3025 –  The content of this work is the responsibility of the authors and

should not be taken to represent the views or practices of the U.S. Government or its agencies.

© 2010 Real-Time Innovations, Inc. COMPANY PROPRIETARY UNCLASSIFIED 27

Page 28: A Data Centric Approach for Modular Assurance Workshop on Real-time, Embedded … · 2015-11-17 · Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March

Thank You

© 2009 Real-Time Innovations, Inc. COMPANY CONFIDENTIAL 28