elastic software infrastructure to support the industrial internet

87
Douglas C. Schmidt [email protected] u Infrastructure to Support the Industrial Internet Institute for Software Integrated Systems Vanderbilt University Nashville, TN RTI Webinar Series, October 23 rd , 2013

Upload: real-time-innovations-rti

Post on 17-Nov-2014

1.160 views

Category:

Technology


1 download

DESCRIPTION

The Industrial Internet is an emerging communication infrastructure that connects people, data, and machines to enable access and control of mechanical devices in unprecedented ways. It connects machines embedded with sensors and sophisticated software to other machines (and end users) to extract data, make sense of it, and find meaning where it did not exist before. Machines--from jet engines to gas turbines to medical scanners--connected via the Industrial Internet have the analytical intelligence to self-diagnose and self-correct, so they can deliver the right information to the right people at the right time (and in real-time). Despite the promise of the Industrial Internet, however, supporting the end-to-end quality-of-service (QoS) requirements is hard. This talk will discuss a number of technical issues emerging in this context, including: Precise auto-scaling of resources with a system-wide focus. Flexible optimization algorithms to balance real-time constraints with cost and other goals. Improved fault-tolerance fail-over to support real-time requirements. Data provisioning and load balancing algorithms that rely on physical properties of computations. It will also explore how the OMG Data Distribution Service (DDS) provides key building blocks needed to create a dependable and elastic software infrastructure for the Industrial Internet.

TRANSCRIPT

Page 1: Elastic software infrastructure to support the industrial internet

Douglas C. [email protected]

Elastic Software Infrastructure to

Support the Industrial Internet

Institute for Software Integrated Systems

Vanderbilt University

Nashville, TN

RTI Webinar Series, October 23rd, 2013

Page 2: Elastic software infrastructure to support the industrial internet

2

• Context & terminology

• Prior R&D progress

• Current R&D trends & challenges

• A promising solution

• Concluding remarks

Outline of Presentation

Page 3: Elastic software infrastructure to support the industrial internet

3

Outline of Presentation

• Context & terminology

• Prior R&D progress

• Current R&D trends & challenges

• A promising solution

• Concluding remarks

Page 4: Elastic software infrastructure to support the industrial internet

4

• The Industrial Internet is a term coined by GE that refers to the integration of complex physical machinery with networked sensors & software

Overview of the Industrial Internet

en.wikipedia.org/wiki/Industrial_Internet

Page 5: Elastic software infrastructure to support the industrial internet

5

• The Industrial Internet is a term coined by GE that refers to the integration of complex physical machinery with networked sensors & software

• It combines fields such as machine learning, big data, the Internet of things, & machine-to-machine communication to

Overview of the Industrial Internet

Page 6: Elastic software infrastructure to support the industrial internet

6

• The Industrial Internet is a term coined by GE that refers to the integration of complex physical machinery with networked sensors & software

• It combines fields such as machine learning, big data, the Internet of things, & machine-to-machine communication to

• Connect machines embedded with sensors to other machines (& end users)

Overview of the Industrial Internet

Page 7: Elastic software infrastructure to support the industrial internet

7

• The Industrial Internet is a term coined by GE that refers to the integration of complex physical machinery with networked sensors & software

• It combines fields such as machine learning, big data, the Internet of things, & machine-to-machine communication to

• Connect machines embedded with sensors to other machines (& end users)

• Enable access & control of mechanical devices

Overview of the Industrial Internet

Page 8: Elastic software infrastructure to support the industrial internet

8

• The Industrial Internet is a term coined by GE that refers to the integration of complex physical machinery with networked sensors & software

• It combines fields such as machine learning, big data, the Internet of things, & machine-to-machine communication to

• Connect machines embedded with sensors to other machines (& end users)

• Enable access & control of mechanical devices

• Extract data from these devices, make sense of it, & deliver the right information to the right people at the right time (& in real-time)

Overview of the Industrial Internet

Page 9: Elastic software infrastructure to support the industrial internet

9

• The Industrial Internet is a term coined by GE that refers to the integration of complex physical machinery with networked sensors & software

• It combines fields such as machine learning, big data, the Internet of things, & machine-to-machine communication to

• Connect machines embedded with sensors to other machines (& end users)

• Enable access & control of mechanical devices

• Extract data from these devices, make sense of it, & deliver the right information to the right people at the right time (& in real-time)

• Derive some form of value in terms of improved utility, & cost savings

Overview of the Industrial Internet

Page 10: Elastic software infrastructure to support the industrial internet

10

• The Industrial Internet is a term coined by GE that refers to the integration of complex physical machinery with networked sensors & software

• It combines fields such as machine learning, big data, the Internet of things, & machine-to-machine communication to

• Connect machines embedded with sensors to other machines (& end users)

• Enable access & control of mechanical devices

• Extract data from these devices, make sense of it, & deliver the right information to the right people at the right time (& in real-time)

• Derive some form of value in terms of improved utility, & cost savings

Overview of the Industrial Internet

At the heart of the Industrial Internet are cyber-physical systems & clouds

Page 11: Elastic software infrastructure to support the industrial internet

11

• A cyber-physical system (CPS) features a tight coordination between the system’s computational & physical elements

Overview of Cyber-Physical Systems

en.wikipedia.org/wiki/Cyber-physical_system

Page 12: Elastic software infrastructure to support the industrial internet

12

Overview of Cyber-Physical Systems• A cyber-physical system

(CPS) features a tight coordination between the system’s computational & physical elements

• CPSs increasingly use networked processing elements to control physical, chemical, or biological processes or devices

www.ge.com/stories/industrial-internet has other apt examples

Page 13: Elastic software infrastructure to support the industrial internet

13

• A cyber-physical system (CPS) features a tight coordination between the system’s computational & physical elements

• CPSs increasingly use networked processing elements to control physical, chemical, or bi ological processes or devices

• In CPSs the “right answer” delivered too late becomes the “wrong answer”• i.e., dependability has

a temporal dimension

(& increasingly a security dimension)

This talk focuses on distributed CPSs rather than standalone CPSs

Overview of Cyber-Physical Systems

Page 14: Elastic software infrastructure to support the industrial internet

14

• Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources • e.g., networks, servers,

storage, applications, & services

Resource pooling

Rapid elasticity

Broad network access

On-demand self-service

Measuredservice

Overview of Cloud Computing

Page 15: Elastic software infrastructure to support the industrial internet

15

• Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources

• These resources can be rapidly provisioned & released with minimal management effort or service provider interaction

Resource pooling

Rapid elasticity

Broad network access

On-demand self-service

Measuredservice

Overview of Cloud Computing

csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf

Page 16: Elastic software infrastructure to support the industrial internet

16

Overview of Cloud Computing• Cloud computing is a model for enabling

ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources

• These resources can be rapidly provisioned & released with minimal management effort or service provider interaction

• Cloud offerings enable “economies of scale” via multi-tenancy & elasticity• e.g., run atop shared

(often virtualized) data access, storage, hardware, software, middleware, etc.

Page 17: Elastic software infrastructure to support the industrial internet

17

Overview of Cloud Computing• Cloud computing is a model for enabling

ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources

• These resources can be rapidly provisioned & released with minimal management effort or service provider interaction

• Cloud offerings enable “economies of scale” via multi-tenancy & elasticity

• Cloud services don’t require users to know of the configuration & physical location of the computing & communication infrastructure delivering services• Similar to traditional utilities, such as power grids, water, sewer,

as well as datacom/telecom service providers

Page 18: Elastic software infrastructure to support the industrial internet

18

Overview of Cloud Computing

Some implementations of cloud computing may be at odds with CPS needs..

• Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources

• These resources can be rapidly provisioned & released with minimal management effort or service provider interaction

• Cloud offerings enable “economies of scale” via multi-tenancy & elasticity

• Cloud services don’t require users to know of the configuration & physical location of the computing & communication infrastructure delivering services• Similar to traditional utilities, such as power grids, water, sewer,

as well as datacom/telecom service providers

Page 19: Elastic software infrastructure to support the industrial internet

19

Outline of Presentation

• Context & terminology

• Prior R&D progress

• Current R&D trends & challenges

• A promising solution

• Concluding remarks

Page 20: Elastic software infrastructure to support the industrial internet

20

The designs of legacy CPSs tend to be:• Stovepiped• Proprietary • Brittle & non-adaptive• Expensive to develop & evolve• Vulnerable

From this design paradigm…

AirFrame

AP

Nav WTS

SPLnner IFF

FLIR

Cyclic Exec

Problem: Small changes can break nearly anything & everything

Prior R&D Progress for Cyber-Physical Systems

Page 21: Elastic software infrastructure to support the industrial internet

21

…and this operational paradigm…

Uti

lity

Resources

Utility “Curve”

“Broken” “Works”

“Hard” Requirements

Prior R&D Progress for Cyber-Physical Systems

Problem: Lack of any resource can break nearly everything

Real-time QoS requirements for legacy CPSs:• Ensure predictable end-to-end

QoS, e.g.,• Bound latency, jitter, &

footprint• Bound priority inversions

• Allocate & manage resources statically & avoid sharing

Page 22: Elastic software infrastructure to support the industrial internet

22

…and this operational paradigm…

This is not at all what we think of as a computing cloud!

Prior R&D Progress for Cyber-Physical Systems

Real-time QoS requirements for legacy CPSs:• Ensure predictable end-to-end

QoS, e.g.,• Bound latency, jitter, &

footprint• Bound priority inversions

• Allocate & manage resources statically & avoid sharing

Page 23: Elastic software infrastructure to support the industrial internet

23

Information Backbone

…to this design paradigm…

Event Channel

ReplicationService

PLanner IFF FLIR

AirFrame

AP Nav WTS The designs of today’s leading-edge CPSs tend to be more:• Layered & componentized• Standards- & COTS-based • Robust to failures & adaptive to

operating conditions• Cost effective to evolve & retarget

Result: changing requirements & environments can be handled more flexibly

Prior R&D Progress for Cyber-Physical Systems

Page 24: Elastic software infrastructure to support the industrial internet

24

…and this operational paradigm…

Resources

Uti

lity

Desired Utility Curve

“Working Range”

“Softer” Requirements

Result: better support for operations with scarce/contended resources

Prior R&D Progress for Cyber-Physical Systems

• Ensure acceptable end-to-end QoS, e.g.,• Minimize latency, jitter, & footprint• Minimize priority inversions

• Resources are allocated/managed dynamically & can be shared

Page 25: Elastic software infrastructure to support the industrial internet

25

…and this operational paradigm…

Some CPS operating platforms have much in common with computing clouds

• Ensure acceptable end-to-end QoS, e.g.,• Minimize latency, jitter, & footprint• Minimize priority inversions

• Resources are allocated/managed dynamically & can be shared

Prior R&D Progress for Cyber-Physical Systems

Page 26: Elastic software infrastructure to support the industrial internet

26

…and this operational paradigm…

See www.dre.vanderbilt.edu/~schmidt/JSS-DRM.pdf for more info

• Ensure acceptable end-to-end QoS, e.g.,• Minimize latency, jitter, & footprint• Minimize priority inversions

• Resources are allocated/managed dynamically & can be shared

Prior R&D Progress for Cyber-Physical Systems

Page 27: Elastic software infrastructure to support the industrial internet

27

Key solution space challenges• Enormous accidental & inherent

complexities• Continuous evolution & change• Highly heterogeneous platform,

language, & tool environments

Key problem space challenges

• Dynamic behavior• Transient overloads• Time-critical tasks• Context-specific requirements• Resource conflicts• Interdependence of (sub)systems• Integration with legacy

(sub)systems

New Challenge: Ultra-Large-Scale Cyber-Physical Systems

Page 28: Elastic software infrastructure to support the industrial internet

28

Key solution space challenges• Enormous accidental & inherent

complexities• Continuous evolution & change• Highly heterogeneous platform,

language, & tool environments

Key problem space challenges

• Dynamic behavior• Transient overloads• Time-critical tasks• Context-specific requirements• Resource conflicts• Interdependence of (sub)systems• Integration with legacy

(sub)systems

Mapping problem space requirements to solution space artifacts is very hard!

New Challenge: Ultra-Large-Scale Cyber-Physical Systems

Page 29: Elastic software infrastructure to support the industrial internet

29

Key solution space challenges• Enormous accidental & inherent

complexities• Continuous evolution & change• Highly heterogeneous platform,

language, & tool environments

Key problem space challenges

• Dynamic behavior• Transient overloads• Time-critical tasks• Context-specific requirements• Resource conflicts• Interdependence of (sub)systems• Integration with legacy

(sub)systems

New Challenge: Ultra-Large-Scale Cyber-Physical Systems

See www.dre.vanderbilt.edu/~schmidt/PDF/FOME-HCDS-paper.pdf for more

Page 30: Elastic software infrastructure to support the industrial internet

30

Key solution space challenges• Enormous accidental & inherent

complexities• Continuous evolution & change• Highly heterogeneous platform,

language, & tool environments

New Challenge: Ultra-Large-Scale Cyber-Physical Systems

Ultra-Large-Scale CPSs are well beyond scope of today’s computing clouds

Key problem space challenges

• Dynamic behavior• Transient overloads• Time-critical tasks• Context-specific requirements• Resource conflicts• Interdependence of (sub)systems• Integration with legacy

(sub)systems

Page 31: Elastic software infrastructure to support the industrial internet

31

Key problem space challenges

• Dynamic behavior• Transient overloads• Time-critical tasks• Context-specific requirements• Resource conflicts• Interdependence of (sub)systems• Integration with legacy

(sub)systems

Key solution space challenges• Enormous accidental & inherent

complexities• Continuous evolution & change• Highly heterogeneous platform,

language, & tool environments

New Challenge: Ultra-Large-Scale Cyber-Physical Systems

Page 32: Elastic software infrastructure to support the industrial internet

32

Key problem space challenges

• Dynamic behavior• Transient overloads• Time-critical tasks• Context-specific requirements• Resource conflicts• Interdependence of (sub)systems• Integration with legacy

(sub)systems

Key solution space challenges• Enormous accidental & inherent

complexities• Continuous evolution & change• Highly heterogeneous platform,

language, & tool environments

New Challenge: Ultra-Large-Scale Cyber-Physical Systems

“Gentlemen, we have run

out of money. It is time to start

thinking.”

en.wikiquote.org/wiki/Talk:Winston_Churchill

Page 33: Elastic software infrastructure to support the industrial internet

33

Outline of Presentation

• Context & terminology

• Prior R&D progress

• Current R&D trends & challenges

• A promising solution

• Concluding remarks

Page 34: Elastic software infrastructure to support the industrial internet

34

Convenient Trend: Elastic Hardware Platforms• “Elastic hardware” based on

multi-core & distributed-core architectures now available at reasonable prices

en.wikipedia.org/wiki/Elasticity_(cloud_computing) has more info

Page 35: Elastic software infrastructure to support the industrial internet

35

Convenient Trend: Elastic Hardware Platforms• “Elastic hardware” based on

multi-core & distributed-core architectures now available at reasonable prices

• Elastic hardware has potential to substantially accelerate performance by parallelizing application work loads & auto-scaling data processing at runtime – Goal is to add/utilize more

hardware without changing application business logic or configurations

Page 36: Elastic software infrastructure to support the industrial internet

36

Convenient Trend: Elastic Hardware Platforms• “Elastic hardware” based on

multi-core & distributed-core architectures now available at reasonable prices

• Elastic hardware has potential to substantially accelerate performance by parallelizing application work loads & auto-scaling data processing at runtime

• Current focus of elastic hardware is largely on web hosting applications in public cloud environments

Page 37: Elastic software infrastructure to support the industrial internet

37

Convenient Trend: Elastic Hardware Platforms• “Elastic hardware” based on

multi-core & distributed-core architectures now available at reasonable prices

• Elastic hardware has potential to substantially accelerate performance by parallelizing application work loads & auto-scaling data processing at runtime

• Current focus of elastic hardware is largely on web hosting applications in public cloud environments

Elastic hardware is necessary—but not sufficient—for elastic CPS applications

Page 38: Elastic software infrastructure to support the industrial internet

38

Impediments to Applying Elastic Hardware for CPSs

• Inadequate programming models– Complicated & obtrusive APIs– Can’t use hardware predictably

& scalably

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 39: Elastic software infrastructure to support the industrial internet

39

Impediments to Applying Elastic Hardware for CPSs

• Inadequate programming models

• Inadequate knowledge of real-time, concurrency, & networking – e.g., high probability of race

conditions, deadlocks, priority inversion, & missed deadlines

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 40: Elastic software infrastructure to support the industrial internet

40

Impediments to Applying Elastic Hardware for CPSs

• Inadequate programming models

• Inadequate knowledge of real-time, concurrency, & networking

• Inadequate mechanisms to transition seamlessly from multi- to distributed-core environments

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 41: Elastic software infrastructure to support the industrial internet

41

Impediments to Applying Elastic Hardware for CPSs

• Inadequate programming models

• Inadequate knowledge of real-time, concurrency, & networking

• Inadequate mechanisms to transition seamlessly from multi- to distributed-core environments

• Inadequate quality-of-service (QoS) support at scale – e.g., lack of system-wide control

over key QoS impacting resource usage & end-to-end data deliver semantics

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 42: Elastic software infrastructure to support the industrial internet

42

Impediments to Applying Elastic Hardware for CPSs

• Inadequate programming models– Complicated & obtrusive APIs– Can’t use hardware predictably

& scalably• Inadequate knowledge of real-

time, concurrency, & networking – e.g., high probability of race

conditions, deadlocks, priority inversion, & missed deadlines

• Inadequate mechanisms to transition seamlessly from multi- to distributed-core environments

• Inadequate quality-of-service (QoS) support at scale – e.g., lack of system-wide control

over key QoS impacting resource usage & end-to-end data deliver semanticsSome impediments affect many types of systems, some mostly

affect CPSs

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 43: Elastic software infrastructure to support the industrial internet

43

Key Research Challenges for Elastic CPSs

Meeting these challenges requires rethinking some cloud computing tenets

1. Precise auto-scaling of resources with a system-wide end-to-end focus

2. Flexible optimization algorithms to balance real-time constraints with cost & other goals

3. Improved fault-tolerance fail-over that supports real-time requirements

4. Data provisioning & load balancing algorithms that consider physical properties of computations & storage

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 44: Elastic software infrastructure to support the industrial internet

44

1. Precise auto-scaling of resources with a system-wide end-to-end focus– State-of-the-art in auto-

scaling algo rithms manage services in isolation• CPSs require auto-

scaling algo rithms to operate on end-to-end task chains

Key Research Challenges for Elastic CPSs

CPU utilization

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 45: Elastic software infrastructure to support the industrial internet

45

1. Precise auto-scaling of resources with a system-wide end-to-end focus– State-of-the-art in auto-

scaling algo rithms manage services in isolation

– Physical stability & safety properties may require exceedingly complex analyses• e.g., reachability of

hybrid cyber-physical states

Key Research Challenges for Elastic CPSs

CPU utilization

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 46: Elastic software infrastructure to support the industrial internet

46

2. Flexible optimization algorithms to balance real-time constraints with cost & other goals– CPS deployments must be

schedulable on all resources acquired from cloud providers to ensure real-time response times, while optimizing desired objective functions• e.g., minimizing costs

Key Research Challenges for Elastic CPSs

Cos

t

Response Time Scalability

Multi-dimensional Resource Management

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 47: Elastic software infrastructure to support the industrial internet

47

2. Flexible optimization algorithms to balance real-time constraints with cost & other goals– CPS deployments must be

schedulable on all resources acquired from cloud providers to ensure real-time response times, while optimizing desired objective functions

– Principled means are needed to co-schedule and/or per form admission control & eviction of mixed-criticality task sets deployed on cloud resources

Key Research Challenges for Elastic CPSs

Cos

t

Response Time Scalability

Multi-dimensional Resource Management

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 48: Elastic software infrastructure to support the industrial internet

48

3. Improved fault-tolerance fail-over that supports real-time requirements– Some cloud platforms

tolerate faults for provisioned re sources• This is insufficient for

CPSs where real-time fault-tolerance of end-to-end task chains must be met simultaneously

Key Research Challenges for Elastic CPSsISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 49: Elastic software infrastructure to support the industrial internet

49

3. Improved fault-tolerance fail-over that supports real-time requirements– Some cloud platforms

tolerate faults for provisioned re sources

– Reasoning about the consequences of faults is an important open re search area due to the complex & stochastic nature of many CPSs

Key Research Challenges for Elastic CPSsISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 50: Elastic software infrastructure to support the industrial internet

50

4. Data provisioning & load balancing algorithms that consider physical properties of computations & storage– CPSs generate load on

a computing clouddue to physical stimuli

Key Research Challenges for Elastic CPSs

social network linkages

geographic associations

power consumption

cache affinity

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 51: Elastic software infrastructure to support the industrial internet

51

4. Data provisioning & load balancing algorithms that consider physical properties of computations & storage– CPSs generate load on

a computing clouddue to physical stimuli

– To build more scalable & high-performance CPSs, algorithms & techniques are needed to • Exploit physical

characteristics of data & computation

Key Research Challenges for Elastic CPSs

social network linkages

geographic associations

power consumption

cache affinity

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 52: Elastic software infrastructure to support the industrial internet

52

4. Data provisioning & load balancing algorithms that consider physical properties of computations & storage– CPSs generate load on

a computing clouddue to physical stimuli

– To build more scalable & high-performance CPSs, algorithms & techniques are needed to • Exploit physical

characteristics of data & computation

• Improve the distribution of work in a computing cloud

Key Research Challenges for Elastic CPSs

social network linkages

geographic associations

power consumption

cache affinity

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 53: Elastic software infrastructure to support the industrial internet

53

4. Data provisioning & load balancing algorithms that consider physical properties of computations & storage– CPSs generate load on

a computing clouddue to physical stimuli

– To build more scalable & high-performance CPSs, algorithms & techniques are needed to • Exploit physical

characteristics of data & computation

• Improve the distribution of work in a computing cloud

Key Research Challenges for Elastic CPSs

social network linkages

geographic associations

power consumption

cache affinity

We need a holistic solution that provides an elastic CPS software infrastructure

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 54: Elastic software infrastructure to support the industrial internet

54

Outline of Presentation

• Context & terminology

• Prior R&D progress

• Current R&D trends & challenges

• A promising solution

• Concluding remarks

Page 55: Elastic software infrastructure to support the industrial internet

55

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Requirements for Elastic CPS Software Infrastructure

• Flexibility – Loosely coupled components that can be analyzed, replaced, reused, distributed, & parallelized dependably

Middleware

Dynamic Discovery

Load Balancing

Data DistributionLow Latency

Dependability

Page 56: Elastic software infrastructure to support the industrial internet

56

Requirements for Elastic CPS Software Infrastructure

• Flexibility – Loosely coupled components that can be analyzed, replaced, reused, distributed, & parallelized dependably

• Adaptability – Provide APIs that adapt to existing code, rather than always having to adapt code to an API Middle

ware

Dynamic Discovery

Load Balancing

Data DistributionLow Latency

Dependability

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 57: Elastic software infrastructure to support the industrial internet

57

Requirements for Elastic CPS Software Infrastructure

• Flexibility – Loosely coupled components that can be analyzed, replaced, reused, distributed, & parallelized dependably

• Adaptability – Provide APIs that adapt to existing code, rather than always having to adapt code to an API

• Uniformity – Seamless (ideally standards-based) support for multi-core & distributed-core

Middleware

Dynamic Discovery

Load Balancing

Data DistributionLow Latency

Dependability

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 58: Elastic software infrastructure to support the industrial internet

58

Requirements for Elastic CPS Software Infrastructure

• Flexibility – Loosely coupled components that can be analyzed, replaced, reused, distributed, & parallelized dependably

• Adaptability – Provide APIs that adapt to existing code, rather than always having to adapt code to an API

• Uniformity – Seamless (ideally standards-based) support for multi-core & distributed-core

• Scalability – Static & dynamic load balancing ensures best & dependable utilization of available elastic hardware resources

Middleware

Dynamic Discovery

Load Balancing

Data DistributionLow Latency

Dependability

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 59: Elastic software infrastructure to support the industrial internet

59

Requirements for Elastic CPS Software Infrastructure

• Flexibility – Loosely coupled components that can be analyzed, replaced, reused, distributed, & parallelized dependably

• Adaptability – Provide APIs that adapt to existing code, rather than always having to adapt code to an API

• Uniformity – Seamless (ideally standards-based) support for multi-core & distributed-core

• Scalability – Static & dynamic load balancing ensures best & dependable utilization of available elastic hardware resources

Middleware

Dynamic Discovery

Load Balancing

Data DistributionLow Latency

Dependability

Middleware is a key element of elastic CPS software infrastructure

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 60: Elastic software infrastructure to support the industrial internet

60

Key Layers of CPS Software Infrastructure

Provide mechanisms to manage end-system resources, e.g., CPU scheduling, inter-process communication, memory management, & file systems

Domain-SpecificServices

CommonMiddleware

ServicesDistributionMiddleware

Host InfrastructureMiddleware

Operating Systems &

Protocols

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 61: Elastic software infrastructure to support the industrial internet

61

Domain-SpecificServices

CommonMiddleware

ServicesDistributionMiddleware

Host InfrastructureMiddleware

Operating Systems &

Protocols

Encapsulates & enhances native OS mechanisms to create reusable network programming components

Key Layers of CPS Software InfrastructureISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 62: Elastic software infrastructure to support the industrial internet

62

Domain-SpecificServices

CommonMiddleware

ServicesDistributionMiddleware

Host InfrastructureMiddleware

Operating Systems &

Protocols

Defines higher-level programming models whose reusable APIs & components automate & extend native OS capabilities across distribution boundaries

Key Layers of CPS Software InfrastructureISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 63: Elastic software infrastructure to support the industrial internet

63

Domain-SpecificServices

CommonMiddleware

ServicesDistributionMiddleware

Host InfrastructureMiddleware

Operating Systems &

Protocols

Augment distribution middleware by defining higher-level domain-independent services that focus on programming “business logic”

Key Layers of CPS Software InfrastructureISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 64: Elastic software infrastructure to support the industrial internet

64

Domain-SpecificServices

CommonMiddleware

ServicesDistributionMiddleware

Host InfrastructureMiddleware

Operating Systems &

Protocols

Tailored to requirements of particular domains, such as SCADA, avionics, aerospace, vehtronics, C4ISR, air traffic management, integrated healthcare, etc.

Key Layers of CPS Software InfrastructureISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 65: Elastic software infrastructure to support the industrial internet

65

Promising Elastic CPS Middleware: DDS• The OMG Data

Distribution Service (DDS) promotes a pattern language that yields loosely coupled, polyglot, evolvable, scalable, efficient & dependable CPSs

en.wikipedia.org/wiki/Data_Distribution_Service has a good DDS overview

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 66: Elastic software infrastructure to support the industrial internet

66

Promising Elastic CPS Middleware: DDS• The OMG Data Distribution

Service (DDS) promotes a pattern language that yields loosely coupled, polyglot, evolvable, scalable, efficient & dependable CPSs– DDS supports relational

& OO information modeling• Data-Centric Publish-

Subscribe (DCPS) & Data Local Reconstruction Layer (DLRL)

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 67: Elastic software infrastructure to support the industrial internet

67

Global Data Space

Promising Elastic CPS Middleware: DDS• The OMG Data

Distribution Service (DDS) promotes a pattern language that yields loosely coupled, polyglot, evolvable, scalable, efficient & dependable CPSs– DDS supports flat,

relational, & OO information modeling

– DDS global data space allows apps to read/write data anonymously & asynchronously, decoupled in space & time

Data Reader

Data Writer

Data Writer

Data Reader

Data Reader

Subscriber Publisher Subscriber

Domain Participant

Topic Topic

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 68: Elastic software infrastructure to support the industrial internet

68

Subscriber Publisher Subscriber

Global Data Space

Promising Elastic CPS Middleware: DDS• The OMG Data

Distribution Service (DDS) promotes a pattern language that yields loosely coupled, polyglot, evolvable, scalable, efficient & dependable CPSs– DDS supports flat,

relational, & OO information modeling

– DDS global data space allows apps to read/write data anonymously & asynchronously, decoupled in space & time

– DDS pub/sub model allows apps to produce/consume information into/from the global data space

Topic Topic

Data Reader

Data Writer

Data Writer

Data Reader

Data Reader

Domain Participant

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 69: Elastic software infrastructure to support the industrial internet

69

Promising Elastic CPS Middleware: DDS• The OMG Data

Distribution Service (DDS) promotes a pattern language that yields loosely coupled, polyglot, evolvable, scalable, efficient & dependable CPSs– DDS supports flat,

relational, & OO information modeling

– DDS global data space allows apps to read/write data anonymously & asynchronously, decoupled in space & time

– DDS pub/sub model allows apps to produce/consume information into/from the global data space

DDS mainly provides distribution middleware & common middleware services

Global Data Space

Topic Topic

Subscriber Publisher Subscriber

Data Reader

Data Writer

Data Writer

Data Reader

Data Reader

Domain Participant

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 70: Elastic software infrastructure to support the industrial internet

70

• DDS controls resource usage, end-to-end data delivery, & data availability via a rich set of QoS policies, e.g.:– Batching– Priority– Deadline– Data Durability– Redundancy– Data History

Promising Elastic CPS Middleware: DDSISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 71: Elastic software infrastructure to support the industrial internet

71

• DDS controls resource usage, end-to-end data delivery, & data availability via a rich set of QoS policies, e.g.:– Batching– Priority– Deadline– Data Durability– Redundancy– Data History

Promising Elastic CPS Middleware: DDSISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 72: Elastic software infrastructure to support the industrial internet

72

Subscriber

• DDS controls resource usage, end-to-end data delivery, & data availability via a rich set of QoS policies, e.g.:– Batching– Priority– Deadline– Data Durability– Redundancy– Data History

Data Reader

R

Data Writer

R

S1

S2

S3

S4

S5

S6

S7

S6 S5 S4 S3 S2 S1S7 S7X

HISTORY

RELIABILITYCOHERENCY

RESOURCE LIMITS

LATENCY

TopicR

Publisher

Promising Elastic CPS Middleware: DDS

www.dre.vanderbilt.edu/~schmidt/PDF/CrossTalk-2008-final.pdf

Subscriber

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 73: Elastic software infrastructure to support the industrial internet

73

Promising Elastic CPS Middleware: DDS• DDS controls resource

usage, end-to-end data delivery, & data availability via a rich set of QoS policies, e.g.:– Batching– Priority– Deadline– Data Durability– Redundancy– Data History

DDS’s request/offered (RxO) model matches QoS policies between pub & sub

Subscriber

Data Reader

Topic

Domain Participant

RequestedQoS

RequestedQoS

RequestedQoS

OfferedQoS

OfferedQoS

Subscriber

Data Reader

Topic

Domain Participant

OfferedQoS

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 74: Elastic software infrastructure to support the industrial internet

74

Promising Elastic CPS Middleware: DDS• DDS controls resource

usage, end-to-end data delivery, & data availability via a rich set of QoS policies:– Batching– Priority– Deadline– Data Durability– Redundancy– Data History

• Bridges are available across technologies to expose relevant data to heterogeneous network protocols, without imposing changes into existing legacy systems

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 75: Elastic software infrastructure to support the industrial internet

75

Promising Elastic CPS Middleware: DDS• DDS is an OMG standard

that itself is based on many associated open standards

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 76: Elastic software infrastructure to support the industrial internet

76

Promising Elastic CPS Middleware: DDS• DDS is an OMG standard

that itself is based on many associated open standards

• Key DDS implementations are now available in open-source form• Many opportunities

for researchers to influence DDS standard & implementations

See www.dre.vanderbilt.edu/~schmidt/PDF/DDS-WAN.pdf for recent paper

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 77: Elastic software infrastructure to support the industrial internet

77

Promising Elastic CPS Middleware: DDS• DDS is an OMG standard

that itself is based on many associated open standards

• Key DDS implementations are now available in open-source form• Many opportunities

for researchers to influence DDS standard & implementations

• DDS is used in many CPS research projects & production systems

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 78: Elastic software infrastructure to support the industrial internet

78

Promising Elastic CPS Middleware: DDS• DDS is an OMG standard

that itself is based on many associated open standards

• Key DDS implementations are now available in open-source form• Many opportunities

for researchers to influence DDS standard & implementations

• DDS is used in many CPS research projects & production systems

• portals.omg.org/dds provides more info on DDS activities & projects

ISR Processing SCADA Systems Air Traffic Mgmt Aerospace

Page 79: Elastic software infrastructure to support the industrial internet

79

Outline of Presentation

• Context & terminology

• Prior R&D progress

• Current R&D trends & challenges

• A promising solution

• Concluding remarks

Page 80: Elastic software infrastructure to support the industrial internet

80

Concluding Remarks• Despite advances in elastic hardware, deploying

CPSs in cloud environments is hard without adequate support from elastic software infrastructure – It’s unlikely that public clouds will work for

mission-critical Industrial Internet applications

Key characteristics of computing clouds for CPS are multi-tenancy & elasticity

Page 81: Elastic software infrastructure to support the industrial internet

81

Concluding Remarks• Despite advances in elastic hardware, deploying

CPSs in cloud environments is hard without adequate support from elastic software infrastructure

• Standards-based DDS middleware provides key open-source building-blocks to create a dependable elastic CPS software infrastructure

There are many hard research challenges remaining

Page 82: Elastic software infrastructure to support the industrial internet

82

Concluding Remarks• Despite advances in elastic hardware, deploying

CPSs in cloud environments is hard without adequate support from elastic software infrastructure

• Standards-based DDS middleware provides key open-source building-blocks to create a dependable elastic CPS software infrastructure

• There are many hard research challenges remaining

www.industrialinternet.com/blog/three-qs-professor-douglas-schmidt/

Page 83: Elastic software infrastructure to support the industrial internet

83

Concluding Remarks

www.coursera.org/course/posa

“Big breakthroughs often happen when

what is suddenly possible meets what is

desperately necessary”

– Thomas Friedman

• Despite advances in elastic hardware, deploying CPSs in cloud environments is hard without adequate support from elastic software infrastructure

• Standards-based DDS middleware provides key open-source building-blocks to create a dependable elastic CPS software infrastructure

• There are many hard research challenges remaining

Page 84: Elastic software infrastructure to support the industrial internet

84

• See www.isis.vanderbilt.edu/workshops/cc4cps for info on an NSF workshop on Computing Clouds for Cyber-Physical Systems (CC4CPS) • Attended by ~50 researchers

funded by the NSF•Topics of workshop included

• Role of computing clouds in data collection, integration, analysis, & mining for CPS

• Roles of computing clouds in CPS control

• Stability, safety, security, privacy, & reliability considerations in integrating cloud computing with CPS

• Programming models & paradigmsfor computing clouds that support CPS

The NSF CC4CPS workshop report will be available later this year

Additional Information

Page 85: Elastic software infrastructure to support the industrial internet

85

Ultra-large-scale (ULS) systems are socio-technical ecosystems comprised of software-reliant systems, people, policies, cultures, & economics that have unprecedented scale:

• # of software & hardware elements

• # of connections & interdependencies

• # of computational elements

• # of purposes & perception of purposes

• # of routine processes & “emergent behaviors”

• # of (overlapping) policy domains & enforceable mechanisms

• # of people involved in some way• Amount of data stored, accessed, &

manipulated

• … etc …

www.sei.cmu.edu/uls

See blog.sei.cmu.edu for more discussions of software R&D activities

Additional Information

Page 86: Elastic software infrastructure to support the industrial internet

86

Sponsored by Office of the Secretary of Defense (OSD) with assistance from the National Science Foundation (NSF), & Office of Naval Research (ONR), www.nap.edu/openbook.php?record_id=12979&page=R1

The report focuses on ensuring the DoD has the technical capacity & workforce to design, produce, assure, & evolve innovative software-reliant systems in a predictable manner, while effectively managing risk, cost, schedule, & complexity

NRC Report Critical Code: Software Producibility for Defense (2010)

See blog.sei.cmu.edu for more discussions of software R&D activities

Additional Information

Page 87: Elastic software infrastructure to support the industrial internet

87

Additional Information

• The Institute for Software Integrated Systems (ISIS) was established at Vanderbilt in 1998

• Research at ISIS focuses on systems with deeply integrated software that are networked, embedded,& cyber-physical

• Key research areas at ISIS: • Model-Integrated

Computing

• Middleware for distributed real-time & embedded (DRE) systems

• Model-based engineering of cyber-physical systems• Wireless sensor networks• Systems security & privacy

www.dre.vanderbilt.edu/~schmidt/ISIS-research.pdf has more info on ISIS