DDS - The Proven Data Connectivity Standard for the Industrial IoT (IIoT)
Introduction to OMG DDS (1 hour, 45 slides)
1. Your
systems.
Working
as
one.
Introduc)on
to
OMG
DDS
OMG
Technical
Mee9ng,
Washington
D.C.,
March
2013
Gerardo
Pardo-‐Castellote,
Ph.D.
[gerardo@r9.com]
CTO,
Real-‐Time
Innova9ons,
Inc.
[www.r9.com]
Co-‐chair
of
the
OMG
Data-‐Distribu9on
SIG
18. DDS
Adressing:
Data-‐Objects
in
the
Global
Data
Space
• Domain:
world
you’re
talking
about
Domain
• Topic:
group
of
similar
objects
(e.g.
Yellowstone
Park)
– Similar
structure
(“type”)
what
– Similar
way
they
change
when
Topic
over
9me
(“QoS”)
how
(e.g.
bears
in
the
park)
• Instance:
individual
object
Instance
Instance
Booboo
(e.g.
Yogi
the
bear)
• DataWriter:
source
of
observa9ons
about
a
set
of
data-‐objects
(Topic)
• DataReader:
observer
of
a
set
of
data-‐objects
Topic
(Topic)
Snow
Depth
Sensors
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
GPS
value
value
value
value
value
value
value
value
value
value
value
value
value
value
value
value
value
value
value
value
value
value
value
22. Quality
of
Service
(QoS)
• Aside
from
the
actual
data
(WHAT)
to
be
delivered,
users
ozen
need
to
specify
HOW
to
send
it
…
…
reliably
(or
“send
and
forget”)
…
how
much
data
(all
data
,
last
5
samples,
every
2
secs)
…
how
long
before
data
is
regarded
as
‘stale’
and
is
discarded
…
how
many
publishers
of
the
same
data
is
allowed
…
how
to
‘failover’
if
an
exis9ng
publisher
stops
sending
data
…
how
to
detect
“dead”
applica9ons
…
…
• These
op9ons
are
controlled
by
formally-‐defined
Quality
of
Service
(QoS)
policies
23. Real-‐Time
Quality
of
Service
Control
Collision
; 1 Hz; Subscriber
avoidance
Reliable application
ry
get histo
Best effort; 0.2 HZ;
Publisher
Radar
Track
get history Subscriber
Best e
ffo
• Publish reliably no hist rt; 0.01 Hz;
• 10 Hz
ory Airline
• Keep 10 minute history Subscriber
operations
(6000 samples) center
Backup
Publisher
Database,
real-time log
• Quality
of
Service
(QoS)
determined
per-‐en6ty
• QoS
Contract:
Request
-‐
Offered
• Publishing
and
subscribing
applica9ons
can
be
no9fied
when
QoS
contract
is
violated
– e.g.
Messages
lost
or
deadlines
missed
• High
availability
via
automa9c
failover
24. Real-‐Time
Quality
of
Service
(QoS)
QoS Policy QoS Policy
DURABILITY USER DATA
User
QoS
Cache
HISTORY TOPIC DATA
LIFESPAN GROUP DATA
WRITER DATA LIFECYCLE PARTITION
Presenta)on
Resources
READER DATA LIFECYCLE PRESENTATION
ENTITY FACTORY DESTINATION ORDER
RESOURCE LIMITS OWNERSHIP
Availability
RELIABILITY OWNERSHIP STRENGTH
Delivery
TIME BASED FILTER LIVELINESS
DEADLINE LATENCY BUDGET
Transport
CONTENT FILTERS TRANSPORT PRIORITY
33. Isola9ng
Subsystems
• Concept
of
Domains
and
Domain
Par9cipants
N4
App
4
•
Container
for
N1
App
1
Pub/Sub
Pub/Sub
applica9ons
that
want
(A,B/C,D)
(D/C,E,F)
to
communicate
•
Applica9ons
can
join
N2
App
2
N4
App
5
or
leave
a
domain
in
any
order
Subscribe
Domain Publish
(C)
(C)
•
New
Applica9ons
are
“Auto-‐Discovered”
N3
App
3
N5
App
6
•
An
applica9on
that
Pub/Sub
Subscribe
(E,F/A,C)
(B,C)
has
joined
a
domain
is
also
called
a
“Domain
Par9cipant”
Single
‘Domain’
System
35. Detec9ng
presence
of
applica9on
• DDS
has
a
buil9n
discovery
service
• It
provides
the
means
for
an
applica9on
to
discover
the
presence
of
other
par9cipants
on
the
Domain
– The
Topic
“DCPSPar9cipants”
can
be
read
as
a
regular
Topic
to
see
when
DomainPar9cipants
join
and
leave
the
network
• Applica9ons
can
also
include
meta-‐data
that
is
sent
along
by
DDS
discovery