dds in scada, utilities, smart grid and smart cities

96
OpenSplice DDS Angelo CORSARO, Ph.D. Chief Technology Officer OMG DDS Sig Co-Chair PrismTech [email protected] DDS in SCADA, Utilities, Smart Grids and Smart Cities

Upload: angelo-corsaro

Post on 10-May-2015

2.930 views

Category:

Technology


1 download

DESCRIPTION

This presentation introduces the challenges faced by next generation SCADA, Utilities, and Smart-* applications and show how OpenSplice DDS addresses theses. The presentation also showcases the use of OpenSplice DDS in some relevan use cases.

TRANSCRIPT

Page 1: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Angelo CORSARO, Ph.D.Chief Technology Officer OMG DDS Sig Co-Chair

[email protected]

DDS in SCADA, Utilities, Smart Grids and Smart Cities

Page 2: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Agenda

☐ Trends & Challenges

☐ The Role of OpenSplice DDS

☐ Selected Use Cases

☐ Concluding Remarks

Page 3: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Trends & Challenges

Page 4: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

SCADA / DCSTrends ☐ Increasingly moving towards COTS

technologies for networking, e.g., ethernet, industrial ethernet

☐ Leveraging COTS communication middleware

Challenges☐ Maintaining Real-Time behavior

☐ Smoothly Integrating with the higher functional layer

Page 5: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Power GridTrends☐ Deregulation in Power Production has

changed the operational landscape

☐ Communication is fundamental to control generation, transmission, and distribution

Challenges ☐ Currently deployed monitoring and

control systems are not capable of providing the right level of QoS

☐ Secure communication

Page 6: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

2003.8.14 USA Blackout☐ Largest blackout in US history, affecting over

50 million people

☐ A grid overload situation leding to a domino effect that tore down 100 power plants

☐ One of the root causes for the blackout was the communication’s infrastructure inability to maintain QoS in overload situations

Page 7: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Smart CitiesTrends☐ Smart Cities addresses several

problem spaces from traffic management, to parking, conditioning, etc.

Challenges☐ Some of the key challenges in

enabling the smart city vision are:☐ The ability to gather data from a

dynamic environment ☐ The necessity to distribute and

process potentially very large volumes of data

☐ Security

Page 8: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

...In Summary☐ Next-generation SCADA, Utilities, Smart Grid and

Smart Cities applications share common needs w.r.t. the middleware infrastructure

☐ The key needs can be summarized into:☐ Real-Time (Interactive communication and resilience to

overload situations)☐ Support for QoS☐ Scalability & High Performance (Latency / Throughtput)☐ Connectivity (from sensors to enterprise IT systems)☐ Support for Dynamic Environments☐ Security

Page 9: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

The Role of OpenSplice DDS

Page 10: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

OpenSplice’s Ecosystem

☐ The OpenSplice DDS technology ecosystem addresses the key needs of the class of systems explored so far

☐ Some of the key needs are addressed as a by-product of the DDS-standard compliance, other are addressed via OpenSplice specific innovations

Page 11: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

DDS Background

Page 12: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Data Distribution Service

☐ Introduced in 2004 to address the Data Distribution challenges faced by a wide class of Defense and Aerospace Applications

☐ Key requirement for the standard were to deliver very high and predictable performance while scaling from embedded to ultra-large-scale deployments

For Real-Time Systems

ScaleReal-Timeliness

Near Real-Time Fault-Tolerant Information

Processing

Throughput, Availability

Real-Time Information Processing

Determinism

Systemic Signal

Processing

Data Processing

Parallelism

Complex Information Management

Scalability, Persistence, Security

Parallel Systems Distributed Systems

Page 13: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Data Distribution Service

☐ Recommended by key administration worldwide, e.g. DoD, MoD, EUROCAE, etc.

☐ Widely adopted across several different domains, e.g., Automated Trading, Simulations, SCADA, Telemetry, etc.

ScaleReal-Timeliness

Near Real-Time Fault-Tolerant Information

Processing

Throughput, Availability

Real-Time Information Processing

Determinism

Systemic Signal

Processing

Data Processing

Parallelism

Complex Information Management

Scalability, Persistence, Security

Parallel Systems Distributed Systems

For Real-Time Systems

Page 14: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Data Distribution Service

☐ Topics: data distribution subject’s

☐ DataWriters: data producers

☐ DataReaders: data consumers

DDS provides a Topic-Based Real-Time Publish/Subscribe abstraction based on:

For Real-Time Systems

DDS Global Data Space

...

TopicA

TopicBTopicC

TopicD

Data Writer

Data Writer

Data Writer

Data Writer

Data Reader

Data Reader

Data Reader

Data Reader

Page 15: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Data Distribution Service

☐ DataWriters and DataReaders are automatically and dynamically matched by the DDS Dynamic Discovery

☐ A rich set of QoS allows to control existential, temporal, and spatial properties of data

For Real-Time Systems

DDS Global Data Space

...

TopicA

TopicBTopicC

TopicD

Data Writer

Data Writer

Data Writer

Data Writer

Data Reader

Data Reader

Data Reader

Data Reader

Page 16: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

QoS

Page 17: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

QoS Model☐ QoS-Policies control local and

end-to-end properties of DDS entities

☐ Local properties controlled by QoS are related resource usage

☐ End-to-end properties controlled by QoS are related to temporal and spatial aspects of data distribution

☐ Some QoS-Policies are matched based on a Request vs. Offered Model thus QoS-enforcement

Publisher

DataWriter

Topic

Type

QoS

Name

writes

QoS

DataWriter

Topic

Typewrites

Subscriber

DataReaderreads

DataReaderreads

...

QoS

Name

QoS

QoS QoS

QoS matching

......

QoS QoS

Type Matching

DomainParticipant DomainParticipant

QoS QoS

Page 18: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

QoS PoliciesQoS Policy Applicability RxO Modifiable

USER_DATATOPIC_DATA

GROUP_DATADURABILITYDURABILITY

SERVICEHISTORY

PRESENTATIONRELIABILITYPARTITION

DESTINATION ORDER

LIFESPAN

DP, DR, DW N Y

ConfigurationT N Y ConfigurationP, S N Y

Configuration

T, DR, DW Y N

Data AvailabilityT, DW N N

Data Availability

T, DR, DW N N

Data Availability

P, S Y N

Data Delivery

T, DR, DW Y N

Data DeliveryP, S N Y Data DeliveryT, DR, DW Y N

Data Delivery

T, DW N Y

Data Delivery

[T: Topic] [DR: DataReader] [DW: DataWriter] [P: Publisher] [S: Subscriber] [DP: Domain Participant]

Page 19: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

QoS PoliciesQoS Policy Applicability RxO ModifiableDEADLINELATENCY BUDGET

TRANSPORT PRIORITY

TIME BASED FILTER

OWNERSHIPOWNERSHIP STRENGTHLIVELINESS

T, DR, DW Y Y

Temporal/Importance

Characteristics

T, DR, DW Y YTemporal/

Importance Characteristics

T, DW N YTemporal/

Importance Characteristics

DR N Y

Temporal/Importance

Characteristics

T, DR, DW Y NReplicationDW N Y Replication

T, DR, DW Y N Fault-Detection

[T: Topic] [DR: DataReader] [DW: DataWriter] [P: Publisher] [S: Subscriber] [DP: Domain Participant]

Page 20: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Temporal Properties

Throughput

TimeBasedFilter

[Inbound]

[Outbound]Latency

Deadline

TransportPriority

LatencyBudget

Page 21: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Data Availability

Data Availability

History

Ownership

DurabilityLiveliness

OwnershipStrength

Page 22: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Data Delivery

Data Delivery

Reliability

Presentation

Destination OrderPartition

Page 23: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Performance

Page 24: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Local Latency☐ Inter-Core latency

can be as low as 10 usec!

☐ Latency distribution predictable with:☐ IQR <= 0.5 usec☐ 99% - Min <= 4 usec

Page 25: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Inter-Host Latency☐ Interhost latency under

resource contention

☐ Disgram shows latency for high priority topic

☐ Low priority topic, 8 KByte topic, written continuosly to create contetition

☐ Results show the latency determinism in spite of the high contetion

Page 26: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Connectivity

Page 27: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

OpenSplice Gateway☐ High performance, QoS-Enabled,

Extensible and configurable protocol gateway framework

☐ Automatically bridging across communication technologies

☐ Allows to expose relevant data to over 80 communication protocols, without imposing changes into existing systems!

Supported Connectors Include:- JMS- REST- CometD- CFX- TCP & UDP Sockets

- HTTP- AMQP- XMPP- Hibernate- Custom

OpenSplice

Gateway

DDSI-RTPS

Custom

REST

JMS

XMPP

AMQP

Page 28: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

An Example

☐ The OpenSplice Gateway mediates from DDS to over 80 technologies

OpenSplice

Gateway

DDSI-RTPS

Custom

REST

JMS

XMPP

AMQP

DDS

Web Application

Done

Application

Enterprise Application

DDS“dds:Foo:1/FooType” to“jms:topic:Foo”

Page 29: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

FPGA-Connectivity

☐ a

DDS Global Data Space

...

TopicA

TopicBTopicC

TopicD

Data Writer

Data Writer

Data Writer

Data Writer

Data Reader

Data Reader

Data Reader

Data Reader

☐ Using PrismTech ICO ORB and the OpenSplice Gateway FPGAs can be easily “integrated” into DDS systems!

Page 30: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Security

Page 31: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

OpenSplice Security☐ Security profile can be

associated with Network Partitions

☐ Each Security Profile allows to specify☐ Cipher (AES, BLOWFISH, N/A)☐ Key

☐ All data sent over the given partition is then encrypted with the provided cipher/key

Subscriber

Subscriber

Subscriber

"tracks.kfo" "tracks.ufo"

Publisher

Publisher

Publisher

"NetPartOne" "NetPartTwo"

"NetPartThree"239.1.1.19

239.1.1.18

239.1.1.18,192.1.1.7

Page 32: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Access Control☐ Access Control is implemented via an optional and

pluggable module

☐ This allows to plug-in modules implementing Mandatory Access Control (MAC) based on Bell-LaPadula/Biba model, Role-Based Access Control, or others

☐ The current implementation only provides support for Mandatory Access Control (MAC)

Page 33: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Use Cases

Page 34: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Grand Coulee Dam☐ A gravity dam on the Columbia

River in the U.S. state of Washington built to produce hydroelectric power and provide irrigation

☐ The Dam supports four different power houses containing 33 hydroelectric generators, providing an overall generation capacity of 7,079 MW

☐ The Grand Coulee Dam is the biggest Hydroelectric Power Generator in US

Page 35: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Grand Coulee Dam☐ OpenSplice DDS is used as the

communication mechanism for the Generic Data Acquisition and Control System (GDACS)

☐ OpenSplice DDS was selected because of its unique scalability, determinism, and robustness in presence of overload situations

Page 36: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Amsterdam Metro

☐ OpenSplice DDS is used as the communication system at the heart of the control system for the Amsterdam Metro

Page 37: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Smart Roadways

☐ OpenSplice DDS has been used by a number of R&D projects experimenting the feasibility of Smart Roadways to improve transport safety and efficiency

Page 38: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Smart Traffic Management

☐ OpenSplice DDS has been used in a number of projects experimenting with smart parking, smart traffic management, etc.

Page 39: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Epilogue

Page 40: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Concluding Remarks

☐ Next Generation SCADA, Smart Grid, Utilities, and Smart Cities require more advanced communication technologies than what currently deployed, or what are commonly found on enterprise IT

☐ OpenSplice DDS has proven, deployment after deployment, its value in addressing the challenges faced SCADA and Smart-* applications

Page 42: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Agenda☐ Introducing v6

☐ Technology Overview

☐ Concluding Remarks

Page 43: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

OpenSplice Vision

OpenSplice has a very simple goal:

☐ Making it easier to build, test, integrate, and deploy high-performance, scalable, and fault-tolerant distributed systems

☐ v6 makes this the art of the possible with the introduction of several ground breaking innovations

Page 44: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Key InnovationsMultiple Architectures☐ Unique configurable Federated or Standalone deployment options

allow you to match performance, scalability and fault tolerance characteristics to evolving system needs; reducing both initial and lifetime development costs

Multiple Paradigms☐ OpenSplice v6 delivers the right solution to the right problem

through an expanding range of ‘interaction patterns’ including: Publish/Subscribe, Distributed Object Caches and Remote Method Invocation (RMI)

[1/2]

Page 45: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Key InnovationsUnrivalled Connectivity☐ The new OpenSplice Gateway delivers integration

support for over 80 connectors to other messaging technologies (e.g. JMS & AMQP), proprietary, and Web Technologies (e.g. W3C Web Services & RESTful)

Tools☐ The new OpenSplice Tester greatly simplifies the testing

of testing DDS-based distributed systems

[2/2]

Page 46: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

eOvrview

chnologyT

Page 47: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

OpenSplice v6

☐ Multi-Architecture

☐ Multi-Paradigm

☐ Scalable & Real-Time

☐ Connectivity

☐ Tool Ecosystem

☐ Standard BasedConnectors

Tools

Linux

C/C++

Java

C#

Gateway

Tuner

Tester

Shared

Memory

Real-Time Networking

Modeler

DBMS

Win

dows

RTO

S

Security

WireShark

OpenSplice

DDSI-RTPS

DDS RM

I

Page 48: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Architect

M

ltipl

e

ures

Page 49: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Deployment Options

☐ OpenSplice DDS v6.x introduces a runtime configuration parameter to select between a federated and standalone deployment option

☐ When deployed standalone OpenSplice DDS is a library that manages application-wide communication

☐ When deployed federated OpenSplice DDS is a set of libraries and daemons that manage node-wide communication

Page 50: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Federated / Standalone Deployment

Federated Deployment Standalone Deployment

Operating Systems

Application

OpenSplice DDS

Application

OpenSplice DDSOpenSplice DDS

Application Application

Operating Systems

☐ Performance ☐ Scalability☐ Determinism

☐ Usability ☐ Simple Configuration☐ Simple Deployment

Page 51: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Deployment Configuration

☐ The deployment mode can be changed by a simple configuration parameter. No recompilation or re-linking!☐ <SingleProcess>true</SingleProcess>

☐ The deployment options can be mixed at will (even within a single computing node)

☐ The same application can be deployed in federated and standalone mode (even on the same system)

“Simple when Sufficient.Performant when Required”

With OpenSplice DDS you can choose the

deployment architecture that makes

the most sense for your use case.

Page 52: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Parad

Mul

t gmsiple

Page 53: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

An Example

Page 54: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Vehicles Monitoring☐ Suppose you want to build an application with DDS to deal

with vehicle monitoring

☐ For instance we might want to pilot autonomous vehicles, or perhaps we are interested in road safety, etc

☐ Too keep the application simple let’s focus on the following aspects:☐ Vehicle Status, e.g., where is the vehicle, how fast is it moving, in

which direction, etc.☐ Collision Alert, e.g. is my vehicle about to hit something?

Page 55: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Data Model☐ Based on the problem description we can easily figure out that

we need at least two different topics. One to represent the vehicle status another to alert about possible collision

struct VehicleStatus { long vid; // Vehicle Position long x; long y; // Vehicle Size long width; long height; // Vehicle Motion Vector long dx; long dy;};#pragma keylist VehicleStatus vid

struct CollisionAlert { long thisVid; long thatVid; float distance;};#pragma keylist CollisionAlert

Page 56: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Controlling Vehicles

☐ How can we control the vehicles?

☐ We could design a series of Request / Reply topics to implement commands,

☐ or...

Page 57: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Beyond Pub/Sub☐ OpenSplice v6.x

introduces a Remote Method Invocation (RMI) framework alongside with Pub/Sub

☐ OpenSplice RMI is entirely built on DDS leveraging its performance, Scalability and QoS

T1T0

T2

Ti

Tk

W0

W1

Wn

Wi

R0

R1

Rm

R i

Cyber/Phisycal World

System

Do Something

Done

Asynchronous*

Page 58: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Vehicles Example

☐ The vehicles could be controlled via this simple RMI interface

local interface VehicleControl : ::DDS_RMI::Services { void start(); void stop(); void setRegion(in long x, in long y, in long w, in long h); void setPosition(in long x, in long y); void setMotion(in long dx, in long dy);};

Page 59: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Connectivity

Page 60: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

OpenSplice Gateway☐ High performance, QoS-Enabled,

Extensible and configurable protocol gateway framework

☐ Automatically bridging across communication technologies

☐ Allows to expose relevant data to over 80 communication protocols, without imposing changes into existing systems!

Supported Connectors Include:- JMS- REST- CometD- CFX- TCP & UDP Sockets

- HTTP- AMQP- XMPP- Hibernate- Custom

[Formerly known as Project BlendBox]

OpenSplice

Gateway

DDSI-RTPS

Custom

REST

JMS

XMPP

AMQP

Page 61: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

An Example

☐ The OpenSplice Gateway mediates from DDS to over 80 technologies

OpenSplice

Gateway

DDSI-RTPS

Custom

REST

JMS

XMPP

AMQP

DDS

Web Application

Done

Application

Enterprise Application

DDS“dds:Foo:1/FooType” to“jms:topic:Foo”

Page 62: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Technology Foundation☐ OpenSplice Gateway uses Apache Camel at its core

for routing, mediation and transformation

☐ The power and connectivity of Apache Camel is enhanced with ☐ High performance DDS connectivity (DDSI Connector)☐ QoS mediation

Page 63: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Key Elements☐ Components: Provide connectivity to a given technology

☐ Endpoints: Represent a source/destination of messages from/to a components

☐ Routes: Define path from input endpoints to output endpoints

☐ Enterprise Integration Patterns: Facilitate the definition of routes between endpoints

☐ Processors: Allow to perform transformation to the data, its format, etc.

Page 64: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Components and Endpoints☐ A component is a factory of Endpoint instances. Over 80

components are supported

☐ Endpoints are specified using URI:☐ dds:TopicName:DomainID/TopicType?QoS☐ cometd://host:port/channelname☐ jms:[topic:]destinationName☐ [tcp|udp|vm]:host[:port]☐ xmpp://host:port/room☐ …

Page 65: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Routes☐ A route defines a path from an in endpoint to an

out endpoint.

☐ Route can be defined in Spring, or using either the Java or Scala DSL (I prefer the Scala DSL ;-)

Page 66: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Sample Route in Javanew RouteBuilder() { ! @override ! public void configure() { ! from(“dds:Foo:1/FooType”) ! .to(“dds:Bar:2/FooType”); ! } !} !

DDS Endpoint ! Topic Name ! DomainID! TypeName!

Page 67: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Sample Route in Scala

val shapesRoute = new RouteBuilder { ! “dds:Foo:1/FooType” --> “dds:Bar:2/BarType” !} !

DDS Endpoint ! Topic Name ! DomainID! TypeName!

Page 68: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Sample Route in Scala

val shapesRoute = new RouteBuilder { ! “dds:Foo:1/FooType” to “dds:Bar:2/BarType” !} !

DDS Endpoint ! Topic Name ! DomainID! TypeName!

Page 69: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Enterprise Integration Patterns☐ EIP provide pre-specified ways of integrating

endpoints

☐ The most common integration patterns are supported, such as, multicast, filtering, correlation, content-routing, load-balancing, etc.

☐ Multicast Ex:

val shapesRoute = new RouteBuilder { ! “dds:Foo:1/FooType” !

"to (“dds:Bar:2/BarType”, “jms:topic:Foo”) !} !

Recipient List Content Based Router

Message FIlter

A B

Correlation ID

Splitter Aggregator

Page 70: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Domain Bridging

☐ Bridge all samples across all instances on domain “N” to domain “M”

☐ In the example N=0, M=1

“dds:topicA:0/MyType”

to

“dds:topicA:1/MyType”

Page 71: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Load Balancing

☐ The Gateway can load-balance across any number of output endpoints

☐ Supported policies are☐ Round Robin, Random, Sticky, Custom, etc.

“dds:topicA:0/A”

==>

loadbalance roundrobin

to

to

“dds:topicX:0/A”

“dds:topicY:0/A”

“dds:topicA:0/A” ==> { loadbalance roundrobin { to (“dds:topicX:0/A”) to (“dds:topicY:0/A”) }}

Page 72: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Gateway in Action

Page 73: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

iShapes Application☐ To explore the features

provided by the B2 we’ll use the simd-cxx ishapes application

☐ Three Topics☐ Circle, Square, Triangle

☐ One Typestruct ShapeType { string color; long x; long y; long shapesize;};#pragma keylist ShapeType color

Spotted shapes represent subscriptions

Pierced shapes represent publications

Page 74: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Connectors

RDBMS Connector

☐ Transparent two-way connectivity to RDBM

OpenSplice DDS

DDSApplication

DBMS Connect

DBMS

JDBC/ODBC Applcation

Page 75: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Extensions

Page 76: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Real-Time Networking☐ Multiple communication

lanes allow for differentiated traffic flows, based on priority

☐ Traffic shaping provides control over network bandwidth usage

☐ End-to-End priority preservation

OpenSplice DDS

Application(s)

Traffic Shaping

RT-Net

Network ChannelsPriority Bands

Pre-emptive Network SchedulerPriority Scheduler

Data Urgency Traffic PacingRT-Net

OpenSplice DDS

Application(s)

Page 77: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Scalability Extensions☐ Data Compression: Minimize network bandwidth use

☐ Shared Reader Cache: One Reader Cache for different readers even across process => ideal for load-balancing over multi-cores

☐ Ultra-Large Scales Systems Discovery: Discovery protocol extensions to deal with very large scale systems

Page 78: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Reliability Extensions

☐ Quorum Writers: Block writer until a quorum has received the data

☐ Fault-Tolerant Reliability: All or none data delivery in face of writer crashes

Page 79: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Security Extensions

☐ R/W Control: Control node-wide R/W rights w.r.t. specific domains and topics

☐ Secure DDS: Extension of the RT-Networking that provides authentication and pluggable encryption

Page 80: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

ToBundled with

OpenSplice Core

C lsore

Page 81: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Configuration ToolsConfigurator

☐ The reference tool for configuring OpenSplice DDS

☐ Rich online guide to configuration options

☐ Context help and parameter validation

Page 82: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Runtime-ToolsTuner

☐ Inspect and Tune DDS Entities

☐ Detect and resolve QoS Mismatch

☐ Read/Write data for arbitrary topics

☐ Inject Topic Definitions

☐ Externalize recorded data in XML

Page 83: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Runtime-ToolsWireShark Packet Dissector

☐ Watch what goes on the wire

☐ Inspect DDSI-RTPS and RT-Networking packets being exchanged between applications

Page 84: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Runtime-ToolsWireShark Packet Dissector

☐ Watch what goes on the wire

☐ Inspect DDSI-RTPS and RT-Networking packets being exchanged between applications

Page 85: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

To

a

lson

dd

Page 86: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Runtime ToolsTester

☐ Automated testing of DDS systems

☐ Domain-Specific scripting Language (DSL)

☐ Batch execution of regression tests

☐ Virtual topic-attributes

☐ System-browser of DDS entities

☐ QoS-conflict monitoring/detection

☐ Statistics-monitoring of applications and services

☐ Syntax highlighting editor, script-executor & Sample Logger

Page 87: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Modeling Tools

OpenSplice Modeler

☐ Domain Specific modeling for DDS Applications

☐ Eclipse Based

Page 88: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Modeling Tools

☐ Enterprise Architect and IBM Rhapsody provide support for UML Modeling of DDS applications

Rhapsody

Page 89: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Standards

Page 90: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Open Standard☐ OpenSplice DDS is a full Implementation of the DDS

Application

DDS RMI

DDS

DDS RMI

X-Ty

pes

DDSI-RTPS

Secu

rity

Secu

rity

DDSI-RTPS

X-Ty

pes

network

2012 2012

Application

API

Wire Protocol

ANSI C C++ C# Java Scala

Page 91: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

Product Structure

Page 92: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

OpenSplice v6 Core☐ A full implementation of

the OMG DDS v1.2 standard

☐ Includes DCPS and DLRL APIs

☐ Field-Proven DDSI-RTPS interoperability wire protocol

Tools

Linux

C/C++

Java

C#

Tuner

Windo

ws

RTOS

WireShar

k

OpenSplice

DDSI-RTPS

DDSDC

PSDLRL

Page 93: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Technology Ecosystem

Connectors

Tools

Linux

C/C++

Java

C#

Gateway

Tuner

Tester

Shared

Memory

Real-Time Networking

Modeler

DBMS

Win

dows

RTO

S

Security

WireShark

OpenSplice

DDSI-RTPS

DDS RM

I

Core Edition Full Technology Stack

Tools

Linux

C/C++

Java

C#

Tuner

Windo

ws

RTOS

WireShar

k

OpenSplice

DDSI-RTPS

DDS

Page 94: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Add Ons☐ The Core Edition is

licensed under LGPLv3 and allows free runtime deployments

☐ Add-ons are commercially licensed

Page 95: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Ope

nSpl

ice

DD

S

pS umming

Page 96: DDS in SCADA, Utilities, Smart Grid and Smart Cities

Copyrig

ht  2011,  PrismTech  –    A

ll  Rights  Reserved.

Ope

nSpl

ice

DD

S

Summing Up

☐ OpenSplice v6 innovations make it easier for you to build, test, integrate, & deploy high-performance, scalable, and fault-tolerant distributed systems

☐ Our Open Source business model guarantees you security of supply and straightforward pricing; including no cost deployment licensing