Upload
angelo-corsaro
View
2.931
Download
1
Tags:
Embed Size (px)
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.
Citation preview
Ope
nSpl
ice
DD
S
Angelo CORSARO, Ph.D.Chief Technology Officer OMG DDS Sig Co-Chair
DDS in SCADA, Utilities, Smart Grids 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
Ope
nSpl
ice
DD
S
Trends & Challenges
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
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
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
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
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
Ope
nSpl
ice
DD
S
The Role of OpenSplice DDS
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
Ope
nSpl
ice
DD
S
DDS Background
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
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
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
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
Ope
nSpl
ice
DD
S
QoS
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
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]
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]
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Temporal Properties
Throughput
TimeBasedFilter
[Inbound]
[Outbound]Latency
Deadline
TransportPriority
LatencyBudget
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Data Availability
Data Availability
History
Ownership
DurabilityLiveliness
OwnershipStrength
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Data Delivery
Data Delivery
Reliability
Presentation
Destination OrderPartition
Ope
nSpl
ice
DD
S
Performance
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
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
Ope
nSpl
ice
DD
S
Connectivity
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
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”
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!
Ope
nSpl
ice
DD
S
Security
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
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)
Ope
nSpl
ice
DD
S
Use Cases
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
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
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
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
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.
Ope
nSpl
ice
DD
S
Epilogue
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
Ope
nSpl
ice
DD
S ¥@prismtech
¥@acorsaro
¥youtube.com/opensplicetube ¥slideshare.net/angelo.corsaro
¥opensplice.com ¥forums.opensplice.org
¥opensplice.org ¥[email protected]
:: Connect with Us ::
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Agenda☐ Introducing v6
☐ Technology Overview
☐ Concluding Remarks
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
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]
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]
Ope
nSpl
ice
DD
S
eOvrview
chnologyT
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
Ope
nSpl
ice
DD
S
Architect
M
ltipl
e
ures
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
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
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.
Ope
nSpl
ice
DD
S
Parad
Mul
t gmsiple
Ope
nSpl
ice
DD
S
An Example
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?
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
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...
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*
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);};
Ope
nSpl
ice
DD
S
Connectivity
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
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”
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
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.
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☐ …
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 ;-)
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!
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!
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!
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
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”
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”) }}
Ope
nSpl
ice
DD
S
Gateway in Action
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
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
Ope
nSpl
ice
DD
S
Extensions
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)
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
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
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
Ope
nSpl
ice
DD
S
ToBundled with
OpenSplice Core
C lsore
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
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
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
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
Ope
nSpl
ice
DD
S
To
a
lson
dd
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
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
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
Ope
nSpl
ice
DD
S
Standards
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
Ope
nSpl
ice
DD
S
Product Structure
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
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
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
Ope
nSpl
ice
DD
S
pS umming
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