19
© 2015 Carnegie Mellon University High Assurance for Distributed Cyber Physical Systems Architecting Self-Managing Distributed Systems (ECSA/ASDS) Workshop Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Scott Hissam, Sagar Chaki, Gabriel Moreno September 7, 2015

High Assurance for Distributed Cyber Physical Systemsecsa-conference.org/2015/asds/presentations/ASDS-Hissam...ZSRM timing CBMC model VREP model* Target Code Gen. read shared context

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

  • © 2015 Carnegie Mellon University

    High Assurance for Distributed Cyber Physical Systems

    Architecting Self-Managing Distributed Systems (ECSA/ASDS) Workshop

    Software Engineering InstituteCarnegie Mellon University

    Pittsburgh, PA 15213

    Scott Hissam, Sagar Chaki, Gabriel MorenoSeptember 7, 2015

  • 2

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    Copyright 2015 ACM

    This material is based upon work funded and supported by the Department of Defense under Contract No. FA8721-05-C-0003 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center.

    NO WARRANTY. THIS CARNEGIE MELLON UNIVERSITY AND SOFTWARE ENGINEERING INSTITUTE MATERIAL IS FURNISHED ON AN “AS-IS” BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT.

    This material has been approved for public release and unlimited distribution.

    This material may be reproduced in its entirety, without modification, and freely distributed in written or electronic form without requesting formal permission. Permission is required for any other use. Requests for permission should be directed to the Software Engineering Institute at [email protected].

    DM-0002714

  • 3

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    DART Driving Vision

    DARTs coordinate physical agents in an uncertain and changing physical world.

    • Coordination – physical agents

    • Timeliness – safety critical

    • Resource constrained - UAVs

    • Sensor rich – sensing physical world

    • Intimate cyber physical interactions

    • Automated adaptation to physical context

    • Computationally complex decisions

    Coordination, adaptation, and uncertainty pose key challenges for assuring safety and mission critical behavior of distributed

    cyber-physical systems.

    The DART project uses develops and packages sound

    techniques and tools for engineering high-assurance

    distributed CPS.

    * DART = Distributed Adaptive Real-Time

  • 4

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    Our Current Unified Motivating Scenario

    4

    Objectives• Search and rescue for

    groups of UAVs• Protection among

    important assets by groups of UAVs

    Threat Models, Challenges and Features

    • Disrupted Communications

    • Obstacles• Emergent threats• Data, Knowledge and

    Processing Overload

  • 5

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    Application of Research to Motivating Scenario

    5

    Design Time Verification• Guaranteed behavior• Best-effort behavior

    Autonomy Implementation

    • Real-time reasoning, timing and control

    • Networking• Quality-of-service

    Runtime Assurance• Critical Timing behavior• Coordination• Adaptation

  • 6

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    desi

    gn

    cons

    trai

    nts

    for

    trac

    tabl

    e an

    alys

    is

    Engineering High Assurance for DART

    Requirements

    Language to specify design and behavior

    Tools, techniques to analyze critical properties

    Code generation

    Binary code deployment

    model

    code & proofs

    intent

    semantic precision

    evid

    ence

    assurance

    runtime

    properties

    trace

    abilit

    y

  • 7

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    DART High-Level Architecture

    𝑁𝑁𝑁𝑁𝑁𝑁𝑒𝑒1 𝑁𝑁𝑁𝑁𝑁𝑁𝑒𝑒𝑘𝑘

    Environment – network,

    sensors, atmosphere, ground etc.

    Low-Critical Threads (LCTs)

    High-Critical Threads (HCTs)

    LCT

    HCT

    Software for guaranteed requirements, e.g., collision

    avoidance protocol must ensure absence of collisions

    ZSRM Mixed-Criticality SchedulerOS/Hardware

    SchedOS/HW

    MADARA Middleware

    Research Thrusts

    • Proactive Self-Adaptation

    • Statistical Model Checking

    • Real-Time Schedulability

    • Functional Verification

    Validation Thrusts

    • Model Problem

    • Workbench

    Software for probabilistic requirements, e.g., adaptive path-

    planner to maximize area coverage within deadline

    MADARA

  • 8

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    DART Tooling and Techniques

    generationspecification verification

    system model +requirements +environment

    collaborating and coordinating agents

    constituent agent

    agent’s constrainedruntime environment

    traceable transformations

    timing &functional behavior &probabilistic behavior

    comms middleware +scheduler +monitors +adaptations

    LCT

    HCT

    SchedOS/HW

    MADARA

  • 9

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    Research - Deterministic Behavior

    Real-Time Schedulability• Technique to guarantee

    deadlines among tasks with different semantic criticalities in a rate-monotonic scheduler.

    Challenges:• Mixed-Criticality Scheduling

    under I/O• End-to-end Mixed-Criticality

    Scheduling

    Functional Verification• Technique to ensure the

    behavior of a distributed application that satisfies a user-specified safety specification.

    Challenges:• Unbounded Model Checking

    Synchronous Software• Unbounded Model Checking

    Asynchronous Software

    de Niz, D.; Lakshmanan, K.; Rajkumar, R., "On the Scheduling of Mixed-Criticality Real-Time Task Sets," Real-Time Systems Symposium, 2009, RTSS 2009. 30th IEEE, vol., no., pp.291-300, Dec. 2009.

    Chaki, S., Edmondson, J., “Model-Driven Verifying Compilation of Synchronous Distributed Applications,” Model-Driven Engineering Languages and Systems, Springer, LNCS, v.8767, pp. 201-217, Oct. 2014.

    Discharges Assumptions Needed for Correctness

  • 10

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    Research - Probabilistic Behavior

    Statistical Model Checking• Technique to compute the

    bounded probability that a specific event occurs during a stochastic system's execution.

    Challenges:• Importance Sampling with

    Heterogenous Fault Regions• Statistical Model Checking for

    systems with non-determinism

    Proactive Self-Adaptation• Technique for a system to adapt

    to an upcoming situation given that time is needed to perform the adaptation.

    Challenges:• Adaptation decision under

    uncertainty• Integration with Machine

    Learning TechniquesHansen, J.P., Wrage, L., Chaki, S., de Niz, D., Klein, M., “Semantic Importance Sampling for Statistical Model Checking,” in press, Tools and Algorithms for the Construction and Analysis of Systems (TACAS), Springer, LNCS, Apr. 2015.

    Cámara, J., Moreno, G.A., Garlan, D., “Stochastic Game Analysis and Latency Awareness for Proactive Self-adaptation,” 9th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS). ACM, New York, NY, pp. 155-164. May 2014.

    Measures the Effectiveness of Adaptation

  • 11

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    Validation Thrusts

    DART Model Problem• High assurance multi-agent

    DART prototype integrating deterministic and probabilistic verification techniques.

    Challenges:• Quantifying mission impact• Spanning the gap between

    “the lab” and real world

    DART Workbench• Create an integrated engineering

    approach for developing DART systems through specifications and tooling.

    Challenges:• Semantically precise

    specifications• end-to-end traceability

    Drives Implementation

  • 12

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    DART Model Problem – Elements of Analysis

    • Guaranteed separation among multiple agents (MA) through compositional model checking

    • Best-effort confidence in adherence to MA formation through statistical model checking

    • Increased survivability of MA system from threats through proactive self-adaptation

    • Coordination of sensor functions among MA with end-to-end latency (fy16)

    • Coordination of mission objectives between MA systems (fy16)

    • Guarantee timing behavior of highly critical threads through mixed-criticality temporal protection mechanisms

    LCT

    HCT

    SchedOS/HW

    MADARA

  • 13

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    DART Workbench Overview

    generationspecification verification

    system model +requirements +environment

    collaborating and coordinating agents

    constituent agent

    agent’s constrainedruntime environment

    traceable transformations

    timing &functional behavior &probabilistic behavior

    comms middleware +scheduler +monitors +adaptations

    LCT

    HCT

    SchedOS/HW

    MADARA

  • 14

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    DART Workbench Details

    C++MADARA

    VREP

    AADL, OSATE and DMPL

    specifications

    ZSRMCBMC

    Osmosis

    system model +requirements +environment

    collaborating and coordinating Odroid U3 agents

    constituentOdroid U3 agent

    agent’s constrained Linux/ARMruntime environment

    traceable transformations

    timing &functional behavior &probabilistic behavior

    comms middleware +scheduler +monitors +adaptations

    DART Workbench

    vrep

    LCT

    HCT

    SchedOS/HW

    MADARA

  • 15

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    DART Workbench Usage@HERTZ(8)@CRITICALITY(HIGH)@WCET_NOMINAL(2.5)@WCET_OVERLOAD(5.0)@BARRIER_SYNC...void collision_avoid() {

    // Operates on X & Y}...require(FORALL_NODE_PAIR

    (id1, id2,x@id1 != x@id2 ||y@id1 != y@id2));

    require(InBounds(X,Y);...@AT_LEAST(0.8)expect(COVER() >= 0.9)else {

    // Adapt};

    ...

    Node Specification in a DSL Analysis & Verification

    ZSR

    M ti

    min

    gC

    BM

    C m

    odel

    VREP

    mod

    el*

    Target Code Gen.

    read shared contextASSUME (local constraints)do collision_avoid()ASSERT (local changes)write shared context

    log (COVER() variables)Do collision_avoid()

    Perform offline statistical analysis of logged data

    *multiple repetitions

    attr.period_msec = 125;attr.Cmon_msec = 2.5;attr.Cover_msec = 5.0;attr.criticality = HIGH;attr.zs_instant_nsec =

    zsinst[“coll_avoid”];zs_reserve(&attr);

    int loc_X = ShrRead(X);int loc_Y = ShrRead(Y);

    // Do coll_avoid logic

    if(!(InBounds(loc_X,loc_Y))

    // Handle Fault

    AdaptManager(COVER());

    ShrWrite(X).set(loc_X);ShrWrite(Y).set(loc_Y);

    T: Period: 4C_nom: 2.0C_over: 2.0Crit: LowPri: High

    T: coll_avPeriod: 8C_nom: 2.5C_over: 5.0Crit: HighPri: Low

    2.0 1.0

    2.0 0.5

    1.0

    2.5

    t=0 t=4 t=8

    Schedule for C_nomSchedule for C_over

    C

    C

    Zero slack

  • 16

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    DART Workbench Screenshot

    http://cps-sei.github.io/dart/

  • 17

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    DART Demonstration Infrastructure

    Odroid U3s• Linux-RK/ARM• ZSRM• WiFi

    Laptop• VREP• Logging• Ethernet

    Odroid U3 Board

    WiFi Connectivity Between Odrioids

    Laptop running V-Rep simulator

    Ethernet connectivity with V-Rep

    Ethernet Switch

  • 18

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    Team

    Bjorn Andersson

    Gabriel Moreno

    Mark Klein

    David Kyle

    Bud Hammons

    Jeff Hansen

    Arie Gurfinkel

    James Edmondson

    Scott Hissam

    Dionisio de Niz

    Sagar Chaki

  • 19

    High Assurance for Distributed Cyber Physical SystemsHissam 7-SEP-2015© 2015 Carnegie Mellon University

    Contact Information Slide FormatPresenter / Point of ContactScott HissamTelephone: +1 412-268-6526Email: [email protected]

    U.S. MailSoftware Engineering InstituteCustomer Relations4500 Fifth AvenuePittsburgh, PA 15213-2612USA

    Webwww.sei.cmu.eduwww.sei.cmu.edu/contact.cfm

    Customer RelationsEmail: [email protected]: +1 412-268-5800SEI Phone: +1 412-268-5800SEI Fax: +1 412-268-6257

    mailto:[email protected]

    High Assurance for �Distributed Cyber Physical Systems�Architecting Self-Managing Distributed Systems (ECSA/ASDS) Workshop�Slide Number 2DART Driving VisionOur Current Unified Motivating ScenarioApplication of Research to Motivating ScenarioEngineering High Assurance for DARTDART High-Level ArchitectureDART Tooling and TechniquesResearch - Deterministic BehaviorResearch - Probabilistic BehaviorValidation ThrustsDART Model Problem – Elements of AnalysisDART Workbench OverviewDART Workbench DetailsDART Workbench UsageDART Workbench ScreenshotDART Demonstration InfrastructureTeamSlide Number 19