SlideShare una empresa de Scribd logo
1 de 39
DDS Innovations
Bert Farabaugh (FAE Manager)
Real-Time Innovations
Agenda
OMG DDS Standard Enhancements
• Type Extensibility
• New Java and C++ PSM from OMG
• DDS Security Profile from OMG
• DDS HTTP Rest Interface
RTI DDS Enhancements
• Request / Reply communication pattern using
publish / subscribe
• Micro DDS for resource constrained platforms
• Safety Certification
• Tooling Integration with DDS
TYPE EXTENSIBILITY
Data Type Extensibility
• Share data definitions across DDS vendors
– Standardizes Annotations
– Currently not seamless due to vendor-specific annotations, like
keys
– Different formats in use (IDL, XML, API)
• Extend data definitions
– Extensible, Mutable, Final
– Optional Fields, Required Fields
• Adds Alternate Type representation
– XML, XSD, Dynamic Type API
• Built-in Types
– String, KeyedString, Bytes, KeyedBytes
• Type Object
– Learn type representation during Discovery
– Now part of OMG RTPS Wire Protocol
– Optional
Data Type Extensibility
struct Track {
long id; //@key
float range;
float bearing;
}
struct AirTrack {
long id; //@key
float range;
float bearing;
float elevation;
}
struct Track {
long id; //@key
float range;
float bearing;
} struct AirTrack {
long id; //@key
float elevation;
}
Extensible Type
• Newer applications can add fields to
existing base types
Mutable Type
• Type representations can differ from each
other with Additions, Deletions and
Transpositions
• Support for Optional Fields
struct Track {
long id; //@key
float range;
float bearing;
}
Final Type
• Type definitions are strictly defined
struct Track {
long id; //@key
float range;
float bearing;
}
Type Extensibility Example
Base TypeExtended Type
Type Extensibility Example
7
enum ShapeFillKind { SOLID_FILL = 0,
TRANSPARENT_FILL = 1,
HORIZONTAL_HATCH_FILL = 2,
VERTICAL_HATCH_FILL = 3};
//@Extensibility EXTENSIBLE_EXTENSIBILITY
struct ShapeType{
string<128> color; //@key
long x;
long y;
long shapesize;};
//@Extensibility EXTENSIBLE_EXTENSIBILITY
struct ShapeTypeExtended: ShapeType {
public ShapeFillKind fillKind;
public float angle;
};
struct ShapeType{
string<128> color; //@key
long x;
long y;
long shapesize;};
//@Extensibility EXTENSIBLE_EXTENSIBILITY
Base TypeExtended Type
NEW JAVA & C++ PSM’S
Simplified DDS App Development
• New Java and C++ programming interfaces
from OMG
• Enhanced portability
– OMG providing standard interfaces files
– Decide at compile-time (C++) or even run-time (Java)
which DDS implementation to use
• Improved productivity through use of latest C++ and
Java features
– Getters and setters to access state
– Built-in primitive types, std::string, namespaces, templates,
and iterators in C++
– Standard collection types and generics in Java
– Exceptions for reporting errors
9
C++ “string” DataWriter Example
dds::domain::DomainParticipant dp(0);
dds::topic::Topic<Track> topic(dp, “track-topic”);
dds::pub::Publisher pub(dp);
dds::pub::qos::DataWriterQos dwqos =
pub.default_writer_qos() << Reliability::Reliable()
<< History::KeepLast(10)
<< Durability::Transient();
dds::pub::DataWriter<Track> dw (pub, topic, dwqos);
Track t = { 0xDEAD, “tank” }; // track id and vehicle-type
for(;;) {
dw.write(t);
}
SECURITY PROFILE FOR DDS
Enhanced Security Vision
The RTI DataBus can:
• Authenticate subjects
• Enforce access control
to data objects
• Ensure data integrity
• Ensure data confidentiality
• Enforce non-repudiation
• Provide availability of data
• Create auditable security logs
….while maintaining high performance
RTI DataBus™
Connext
App 1
Connext
App 2
Key Management
Authentication
Logging
Cryptography
Access Control
Pluggable Security Architecture
App.
Other
DDS
System
Secure DDS
middleware
Authentication
Plugin
Access Control
Plugin Cryptography
Plugin
Key
Management
Plugin
Secure Kernel
Crypto
Module
(e.g. TPM )
Secure Transport (e.g. TLS)
application componentcertificates
?
Data
cache
Protocol
Engine
Kernel
Policies
DDS Entities
Network
Driver
?
Network
Encrypted DataTAG
Other
DDS
System
Other
DDS
System
App.App.
Auditing
Plugin
DDS HTTP REST INTEGRATION
HTTP
Web Integration
• Web-enabled interface to Data Bus
– REST
• Access DDS from any application,
platform or language that can invoke a
Web Service
– Web applications, e.g., Google Maps
– JavaScript, Flash, Perl, PHP, Python, CGI
scripts
– ESBs
• Lightweight interface to DDS Data Bus
– Clients do not need to link or load
special libraries
DDS
15
Proposed REST Api
• “Login” “Join Domain”
• “Logout” “Leave Domain”
• “CreateSubscription,”
• “CreatePublication,”
• “RemoveSubscription,”
• “RemovePublication,”
• “GetSubscriptions,”
• “GetPublications,”
• “AddNotificationEndpoint,”
• “RemoveNotificationEndpoint,”
• “GetNotificationEndpoints,”
• “Read,”
• “Write,”
REQUEST / REPLY
COMMUNICATIONS PATTERN
Request-Reply
Requestor Replier
Request
Request
Topic
Reply
Topic Reply
18
Correlation
ReplierRequests
Replies
3
3
2 1
21
Message ID
Correlation ID
1
1
Requestor
Correlation
19
Single-Request Multiple-Reply
Requestor Replier
Replies
321
Sequence ID
Request
20
Multiple Repliers
Requester
Replier A
Replier C
Replier B
Request
Reply
21
Combining Patterns
Requestor Replier
Request
Request
Topic
Reply
Topic Reply
Subscriber
Subscriber
Wire Tap
MICRO DDS
Integration In Constrained Environments
• Integration of resource-constrained OT
systems with IT systems
– Stringent SWaP requirements
– Limited primary storage (8MB RAM)
– Limited secondary storage (32MB flash)
– Embedded low-power single-core CPU
– Lack of operating system
• Safety certification
– In avionics, medical systems
– Certification cost drives system design
($50 - $100 per ELOC)
24
User-Configurable Feature Set
DDS API Subset
Transport API
Base-line configuration
Static
Discovery
OS API
User Application
UDPv4 Linux 2.6
VxWorks 653APEX Dynamic
Discovery
Queue API
Listeners
Required plug-in components
Linear Q
Keyed Q
Discovery API
Reliability
Durability &
History
Other QoS
Optional
APIs
Shared
memory
VxWorks 5.5
Compile-timeoptions
RTPS
Connext Micro
25
Supported QoS
• DataReaderResourceLimits
• The following DataReaderResourceLimits fields are supported. All must be finite
values greater than 0.
– max_remote_writers
– max_remote_writers_per_instance
– max_samples_per_remote_writer
– max_outstanding_reads
• Destination Order
– Only the BY_RECEPTION_TIMESTAMP kind is supported.
• Durability
– Only the VOLATILE and TRANSIENT_LOCAL Durability kinds are supported.
• History
– Only the KEEP_LAST History kind is supported.
• Liveliness
– Only the MANUAL_BY_TOPIC Liveliness kind is supported, with a lease duration range of [1,
infinite].
• Deadline
– The Deadline Qos policy is supported.
• Ownership and OwnershipStrength
– Both SHARED and EXCLUSIVE Ownership kinds are supported.
Supported QoS (cont.)
• Reliability
– Both BEST-EFFORT and RELIABLE Reliability kinds are supported.
– For RELIABLE reliability, periodic and piggyback heartbeat
configuration are sup- ported, as well as max_send_window for setting
the size of a reliability window.
• ResourceLimits
– The following limits in the ResourceLimits QoS policy are supported.
All must be finite values greater than 0.
– max_samples,max_instances,max_samples_per_instance
– Note that max_samples must be large enough to contain all samples
for all instances:
– max_samples >= max_instances * max_samples_per_instance
• ContentFilteredTopics
– ContentFilteredTopics are not supported, but content filtering is
provided by two DataReaderListener callbacks:
on_before_sample_deserialize() and on_before_sample_commit()
MICRO DDS CERTIFICATION
5/1/2013
DO-178B/C
• A guideline
• Used by FAA as a basis
for certification
– Aircraft are “certified”
– Software code
developed under
DO-178 provides “certification evidence”
• Increasingly adopted for military aircraft
DO-178C Safety Levels
Level Failure Condition
Typical % of
avionics code
A
Catastrophic
(may be total loss of life)
15%
B
Hazardous/Severe
(may be some loss of life)
35%
C
Major
(injuries possible)
30%
D
Minor
(injuries unlikely)
15%
E No effect 5%
Tenets Of Safety-Critical Software
• Reduce code size
• Consider testability in design
• Deterministic in time
• Deterministic in memory
– No dynamic memory allocation after startup
Analysis of Suitability for DO178B/C
• Verocel analyzed the prototype source code
• Code is deterministic
• Code is testable
• Conforms to coding styles that make testing
easier
• Uses robustness checks and logging messages
• RTI Connext Micro currently going through
Certification
TOOLING INTEGRATION WITH DDS
Example
Types are defined as Bus Objects
5/1/2013
Using Artisan Studio with RTI DDS
• Model a DDS system with UML
• Participants, Entities and Types
• Generate representative XML file
• Use XML App Creation from RTI
NI Labview Integration with RTI DDS
• Build LabView Application using DDS
building blocks
• Attach LabView logic block to live
data
• Connect Distributed LabView
applications
Download
Connext
Free Trial
NOW
www.rti.com/downloads

Más contenido relacionado

Similar a 7 DDS Innovations to Improve your Next Distributed System

Thick Application Penetration Testing - A Crash Course
Thick Application Penetration Testing - A Crash CourseThick Application Penetration Testing - A Crash Course
Thick Application Penetration Testing - A Crash CourseNetSPI
 
Fiware - communicating with ROS robots using Fast RTPS
Fiware - communicating with ROS robots using Fast RTPSFiware - communicating with ROS robots using Fast RTPS
Fiware - communicating with ROS robots using Fast RTPSJaime Martin Losa
 
Fiware: Connecting to robots
Fiware: Connecting to robotsFiware: Connecting to robots
Fiware: Connecting to robotsJaime Martin Losa
 
Distributed Systems: How to connect your real-time applications
Distributed Systems: How to connect your real-time applicationsDistributed Systems: How to connect your real-time applications
Distributed Systems: How to connect your real-time applicationsJaime Martin Losa
 
MongoDB Days UK: Securing Your Deployment with MongoDB Enterprise
MongoDB Days UK: Securing Your Deployment with MongoDB EnterpriseMongoDB Days UK: Securing Your Deployment with MongoDB Enterprise
MongoDB Days UK: Securing Your Deployment with MongoDB EnterpriseMongoDB
 
Securing Your Deployment with MongoDB Enterprise
Securing Your Deployment with MongoDB EnterpriseSecuring Your Deployment with MongoDB Enterprise
Securing Your Deployment with MongoDB EnterpriseMongoDB
 
FIWARE Global Summit - Fast RTPS: Programming with the Default middleware for...
FIWARE Global Summit - Fast RTPS: Programming with the Default middleware for...FIWARE Global Summit - Fast RTPS: Programming with the Default middleware for...
FIWARE Global Summit - Fast RTPS: Programming with the Default middleware for...FIWARE
 
Webinar: Securing your data - Mitigating the risks with MongoDB
Webinar: Securing your data - Mitigating the risks with MongoDBWebinar: Securing your data - Mitigating the risks with MongoDB
Webinar: Securing your data - Mitigating the risks with MongoDBMongoDB
 
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...Istvan Rath
 
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2Jaime Martin Losa
 
Database Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best PracticesDatabase Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best PracticesMariaDB plc
 
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingDDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingJaime Martin Losa
 
Introducing the New MagicDraw Plug-In for RTI Connext DDS: Industrial IoT Mee...
Introducing the New MagicDraw Plug-In for RTI Connext DDS: Industrial IoT Mee...Introducing the New MagicDraw Plug-In for RTI Connext DDS: Industrial IoT Mee...
Introducing the New MagicDraw Plug-In for RTI Connext DDS: Industrial IoT Mee...IncQuery Labs
 
Application of Machine Learning in Cybersecurity
Application of Machine Learning in CybersecurityApplication of Machine Learning in Cybersecurity
Application of Machine Learning in CybersecurityPratap Dangeti
 
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...DataStax
 
Overloading in Overdrive: A Generic Data-Centric Messaging Library for DDS
Overloading in Overdrive: A Generic Data-Centric Messaging Library for DDSOverloading in Overdrive: A Generic Data-Centric Messaging Library for DDS
Overloading in Overdrive: A Generic Data-Centric Messaging Library for DDSSumant Tambe
 
Real Time Java DDS
Real Time Java DDSReal Time Java DDS
Real Time Java DDSkerush
 

Similar a 7 DDS Innovations to Improve your Next Distributed System (20)

Thick Application Penetration Testing - A Crash Course
Thick Application Penetration Testing - A Crash CourseThick Application Penetration Testing - A Crash Course
Thick Application Penetration Testing - A Crash Course
 
Fiware - communicating with ROS robots using Fast RTPS
Fiware - communicating with ROS robots using Fast RTPSFiware - communicating with ROS robots using Fast RTPS
Fiware - communicating with ROS robots using Fast RTPS
 
Fiware: Connecting to robots
Fiware: Connecting to robotsFiware: Connecting to robots
Fiware: Connecting to robots
 
Distributed Systems: How to connect your real-time applications
Distributed Systems: How to connect your real-time applicationsDistributed Systems: How to connect your real-time applications
Distributed Systems: How to connect your real-time applications
 
MongoDB Days UK: Securing Your Deployment with MongoDB Enterprise
MongoDB Days UK: Securing Your Deployment with MongoDB EnterpriseMongoDB Days UK: Securing Your Deployment with MongoDB Enterprise
MongoDB Days UK: Securing Your Deployment with MongoDB Enterprise
 
Securing Your Deployment with MongoDB Enterprise
Securing Your Deployment with MongoDB EnterpriseSecuring Your Deployment with MongoDB Enterprise
Securing Your Deployment with MongoDB Enterprise
 
FIWARE Global Summit - Fast RTPS: Programming with the Default middleware for...
FIWARE Global Summit - Fast RTPS: Programming with the Default middleware for...FIWARE Global Summit - Fast RTPS: Programming with the Default middleware for...
FIWARE Global Summit - Fast RTPS: Programming with the Default middleware for...
 
Fast RTPS
Fast RTPSFast RTPS
Fast RTPS
 
Webinar: Securing your data - Mitigating the risks with MongoDB
Webinar: Securing your data - Mitigating the risks with MongoDBWebinar: Securing your data - Mitigating the risks with MongoDB
Webinar: Securing your data - Mitigating the risks with MongoDB
 
Overview of the DDS-XRCE specification
Overview of the DDS-XRCE specificationOverview of the DDS-XRCE specification
Overview of the DDS-XRCE specification
 
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
 
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2
 
Database Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best PracticesDatabase Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best Practices
 
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingDDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
 
Introducing the New MagicDraw Plug-In for RTI Connext DDS: Industrial IoT Mee...
Introducing the New MagicDraw Plug-In for RTI Connext DDS: Industrial IoT Mee...Introducing the New MagicDraw Plug-In for RTI Connext DDS: Industrial IoT Mee...
Introducing the New MagicDraw Plug-In for RTI Connext DDS: Industrial IoT Mee...
 
Application of Machine Learning in Cybersecurity
Application of Machine Learning in CybersecurityApplication of Machine Learning in Cybersecurity
Application of Machine Learning in Cybersecurity
 
MongodB Internals
MongodB InternalsMongodB Internals
MongodB Internals
 
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
 
Overloading in Overdrive: A Generic Data-Centric Messaging Library for DDS
Overloading in Overdrive: A Generic Data-Centric Messaging Library for DDSOverloading in Overdrive: A Generic Data-Centric Messaging Library for DDS
Overloading in Overdrive: A Generic Data-Centric Messaging Library for DDS
 
Real Time Java DDS
Real Time Java DDSReal Time Java DDS
Real Time Java DDS
 

Más de Real-Time Innovations (RTI)

Precise, Predictive, and Connected: DDS and OPC UA – Real-Time Connectivity A...
Precise, Predictive, and Connected: DDS and OPC UA – Real-Time Connectivity A...Precise, Predictive, and Connected: DDS and OPC UA – Real-Time Connectivity A...
Precise, Predictive, and Connected: DDS and OPC UA – Real-Time Connectivity A...Real-Time Innovations (RTI)
 
The Inside Story: How the IIC’s Connectivity Framework Guides IIoT Connectivi...
The Inside Story: How the IIC’s Connectivity Framework Guides IIoT Connectivi...The Inside Story: How the IIC’s Connectivity Framework Guides IIoT Connectivi...
The Inside Story: How the IIC’s Connectivity Framework Guides IIoT Connectivi...Real-Time Innovations (RTI)
 
Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...
Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...
Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...Real-Time Innovations (RTI)
 
The Inside Story: Leveraging the IIC's Industrial Internet Security Framework
The Inside Story: Leveraging the IIC's Industrial Internet Security FrameworkThe Inside Story: Leveraging the IIC's Industrial Internet Security Framework
The Inside Story: Leveraging the IIC's Industrial Internet Security FrameworkReal-Time Innovations (RTI)
 
ISO 26262 Approval of Automotive Software Components
ISO 26262 Approval of Automotive Software ComponentsISO 26262 Approval of Automotive Software Components
ISO 26262 Approval of Automotive Software ComponentsReal-Time Innovations (RTI)
 
The Low-Risk Path to Building Autonomous Car Architectures
The Low-Risk Path to Building Autonomous Car ArchitecturesThe Low-Risk Path to Building Autonomous Car Architectures
The Low-Risk Path to Building Autonomous Car ArchitecturesReal-Time Innovations (RTI)
 
How to Design Distributed Robotic Control Systems
How to Design Distributed Robotic Control SystemsHow to Design Distributed Robotic Control Systems
How to Design Distributed Robotic Control SystemsReal-Time Innovations (RTI)
 
Fog Computing is the Future of the Industrial Internet of Things
Fog Computing is the Future of the Industrial Internet of ThingsFog Computing is the Future of the Industrial Internet of Things
Fog Computing is the Future of the Industrial Internet of ThingsReal-Time Innovations (RTI)
 
The Inside Story: How OPC UA and DDS Can Work Together in Industrial Systems
The Inside Story: How OPC UA and DDS Can Work Together in Industrial SystemsThe Inside Story: How OPC UA and DDS Can Work Together in Industrial Systems
The Inside Story: How OPC UA and DDS Can Work Together in Industrial SystemsReal-Time Innovations (RTI)
 
Space Rovers and Surgical Robots: System Architecture Lessons from Mars
Space Rovers and Surgical Robots: System Architecture Lessons from MarsSpace Rovers and Surgical Robots: System Architecture Lessons from Mars
Space Rovers and Surgical Robots: System Architecture Lessons from MarsReal-Time Innovations (RTI)
 
Learn About FACE Aligned Reference Platform: Built on COTS and DO-178C Certif...
Learn About FACE Aligned Reference Platform: Built on COTS and DO-178C Certif...Learn About FACE Aligned Reference Platform: Built on COTS and DO-178C Certif...
Learn About FACE Aligned Reference Platform: Built on COTS and DO-178C Certif...Real-Time Innovations (RTI)
 
How the fusion of time sensitive networking, time-triggered ethernet and data...
How the fusion of time sensitive networking, time-triggered ethernet and data...How the fusion of time sensitive networking, time-triggered ethernet and data...
How the fusion of time sensitive networking, time-triggered ethernet and data...Real-Time Innovations (RTI)
 
Cybersecurity Spotlight: Looking under the Hood at Data Breaches and Hardenin...
Cybersecurity Spotlight: Looking under the Hood at Data Breaches and Hardenin...Cybersecurity Spotlight: Looking under the Hood at Data Breaches and Hardenin...
Cybersecurity Spotlight: Looking under the Hood at Data Breaches and Hardenin...Real-Time Innovations (RTI)
 
Data Distribution Service Security and the Industrial Internet of Things
Data Distribution Service Security and the Industrial Internet of ThingsData Distribution Service Security and the Industrial Internet of Things
Data Distribution Service Security and the Industrial Internet of ThingsReal-Time Innovations (RTI)
 
The Inside Story: GE Healthcare's Industrial Internet of Things (IoT) Archite...
The Inside Story: GE Healthcare's Industrial Internet of Things (IoT) Archite...The Inside Story: GE Healthcare's Industrial Internet of Things (IoT) Archite...
The Inside Story: GE Healthcare's Industrial Internet of Things (IoT) Archite...Real-Time Innovations (RTI)
 

Más de Real-Time Innovations (RTI) (20)

A Tour of RTI Applications
A Tour of RTI ApplicationsA Tour of RTI Applications
A Tour of RTI Applications
 
Precise, Predictive, and Connected: DDS and OPC UA – Real-Time Connectivity A...
Precise, Predictive, and Connected: DDS and OPC UA – Real-Time Connectivity A...Precise, Predictive, and Connected: DDS and OPC UA – Real-Time Connectivity A...
Precise, Predictive, and Connected: DDS and OPC UA – Real-Time Connectivity A...
 
The Inside Story: How the IIC’s Connectivity Framework Guides IIoT Connectivi...
The Inside Story: How the IIC’s Connectivity Framework Guides IIoT Connectivi...The Inside Story: How the IIC’s Connectivity Framework Guides IIoT Connectivi...
The Inside Story: How the IIC’s Connectivity Framework Guides IIoT Connectivi...
 
Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...
Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...
Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...
 
The Inside Story: Leveraging the IIC's Industrial Internet Security Framework
The Inside Story: Leveraging the IIC's Industrial Internet Security FrameworkThe Inside Story: Leveraging the IIC's Industrial Internet Security Framework
The Inside Story: Leveraging the IIC's Industrial Internet Security Framework
 
ISO 26262 Approval of Automotive Software Components
ISO 26262 Approval of Automotive Software ComponentsISO 26262 Approval of Automotive Software Components
ISO 26262 Approval of Automotive Software Components
 
The Low-Risk Path to Building Autonomous Car Architectures
The Low-Risk Path to Building Autonomous Car ArchitecturesThe Low-Risk Path to Building Autonomous Car Architectures
The Low-Risk Path to Building Autonomous Car Architectures
 
Introduction to RTI DDS
Introduction to RTI DDSIntroduction to RTI DDS
Introduction to RTI DDS
 
How to Design Distributed Robotic Control Systems
How to Design Distributed Robotic Control SystemsHow to Design Distributed Robotic Control Systems
How to Design Distributed Robotic Control Systems
 
Fog Computing is the Future of the Industrial Internet of Things
Fog Computing is the Future of the Industrial Internet of ThingsFog Computing is the Future of the Industrial Internet of Things
Fog Computing is the Future of the Industrial Internet of Things
 
The Inside Story: How OPC UA and DDS Can Work Together in Industrial Systems
The Inside Story: How OPC UA and DDS Can Work Together in Industrial SystemsThe Inside Story: How OPC UA and DDS Can Work Together in Industrial Systems
The Inside Story: How OPC UA and DDS Can Work Together in Industrial Systems
 
Cyber Security for the Connected Car
Cyber Security for the Connected Car Cyber Security for the Connected Car
Cyber Security for the Connected Car
 
Space Rovers and Surgical Robots: System Architecture Lessons from Mars
Space Rovers and Surgical Robots: System Architecture Lessons from MarsSpace Rovers and Surgical Robots: System Architecture Lessons from Mars
Space Rovers and Surgical Robots: System Architecture Lessons from Mars
 
Advancing Active Safety for Next-Gen Automotive
Advancing Active Safety for Next-Gen AutomotiveAdvancing Active Safety for Next-Gen Automotive
Advancing Active Safety for Next-Gen Automotive
 
Learn About FACE Aligned Reference Platform: Built on COTS and DO-178C Certif...
Learn About FACE Aligned Reference Platform: Built on COTS and DO-178C Certif...Learn About FACE Aligned Reference Platform: Built on COTS and DO-178C Certif...
Learn About FACE Aligned Reference Platform: Built on COTS and DO-178C Certif...
 
How the fusion of time sensitive networking, time-triggered ethernet and data...
How the fusion of time sensitive networking, time-triggered ethernet and data...How the fusion of time sensitive networking, time-triggered ethernet and data...
How the fusion of time sensitive networking, time-triggered ethernet and data...
 
Secrets of Autonomous Car Design
Secrets of Autonomous Car DesignSecrets of Autonomous Car Design
Secrets of Autonomous Car Design
 
Cybersecurity Spotlight: Looking under the Hood at Data Breaches and Hardenin...
Cybersecurity Spotlight: Looking under the Hood at Data Breaches and Hardenin...Cybersecurity Spotlight: Looking under the Hood at Data Breaches and Hardenin...
Cybersecurity Spotlight: Looking under the Hood at Data Breaches and Hardenin...
 
Data Distribution Service Security and the Industrial Internet of Things
Data Distribution Service Security and the Industrial Internet of ThingsData Distribution Service Security and the Industrial Internet of Things
Data Distribution Service Security and the Industrial Internet of Things
 
The Inside Story: GE Healthcare's Industrial Internet of Things (IoT) Archite...
The Inside Story: GE Healthcare's Industrial Internet of Things (IoT) Archite...The Inside Story: GE Healthcare's Industrial Internet of Things (IoT) Archite...
The Inside Story: GE Healthcare's Industrial Internet of Things (IoT) Archite...
 

Último

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 

Último (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 

7 DDS Innovations to Improve your Next Distributed System

  • 1. DDS Innovations Bert Farabaugh (FAE Manager) Real-Time Innovations
  • 2. Agenda OMG DDS Standard Enhancements • Type Extensibility • New Java and C++ PSM from OMG • DDS Security Profile from OMG • DDS HTTP Rest Interface RTI DDS Enhancements • Request / Reply communication pattern using publish / subscribe • Micro DDS for resource constrained platforms • Safety Certification • Tooling Integration with DDS
  • 4. Data Type Extensibility • Share data definitions across DDS vendors – Standardizes Annotations – Currently not seamless due to vendor-specific annotations, like keys – Different formats in use (IDL, XML, API) • Extend data definitions – Extensible, Mutable, Final – Optional Fields, Required Fields • Adds Alternate Type representation – XML, XSD, Dynamic Type API • Built-in Types – String, KeyedString, Bytes, KeyedBytes • Type Object – Learn type representation during Discovery – Now part of OMG RTPS Wire Protocol – Optional
  • 5. Data Type Extensibility struct Track { long id; //@key float range; float bearing; } struct AirTrack { long id; //@key float range; float bearing; float elevation; } struct Track { long id; //@key float range; float bearing; } struct AirTrack { long id; //@key float elevation; } Extensible Type • Newer applications can add fields to existing base types Mutable Type • Type representations can differ from each other with Additions, Deletions and Transpositions • Support for Optional Fields struct Track { long id; //@key float range; float bearing; } Final Type • Type definitions are strictly defined struct Track { long id; //@key float range; float bearing; }
  • 7. Type Extensibility Example 7 enum ShapeFillKind { SOLID_FILL = 0, TRANSPARENT_FILL = 1, HORIZONTAL_HATCH_FILL = 2, VERTICAL_HATCH_FILL = 3}; //@Extensibility EXTENSIBLE_EXTENSIBILITY struct ShapeType{ string<128> color; //@key long x; long y; long shapesize;}; //@Extensibility EXTENSIBLE_EXTENSIBILITY struct ShapeTypeExtended: ShapeType { public ShapeFillKind fillKind; public float angle; }; struct ShapeType{ string<128> color; //@key long x; long y; long shapesize;}; //@Extensibility EXTENSIBLE_EXTENSIBILITY Base TypeExtended Type
  • 8. NEW JAVA & C++ PSM’S
  • 9. Simplified DDS App Development • New Java and C++ programming interfaces from OMG • Enhanced portability – OMG providing standard interfaces files – Decide at compile-time (C++) or even run-time (Java) which DDS implementation to use • Improved productivity through use of latest C++ and Java features – Getters and setters to access state – Built-in primitive types, std::string, namespaces, templates, and iterators in C++ – Standard collection types and generics in Java – Exceptions for reporting errors 9
  • 10. C++ “string” DataWriter Example dds::domain::DomainParticipant dp(0); dds::topic::Topic<Track> topic(dp, “track-topic”); dds::pub::Publisher pub(dp); dds::pub::qos::DataWriterQos dwqos = pub.default_writer_qos() << Reliability::Reliable() << History::KeepLast(10) << Durability::Transient(); dds::pub::DataWriter<Track> dw (pub, topic, dwqos); Track t = { 0xDEAD, “tank” }; // track id and vehicle-type for(;;) { dw.write(t); }
  • 12. Enhanced Security Vision The RTI DataBus can: • Authenticate subjects • Enforce access control to data objects • Ensure data integrity • Ensure data confidentiality • Enforce non-repudiation • Provide availability of data • Create auditable security logs ….while maintaining high performance RTI DataBus™ Connext App 1 Connext App 2 Key Management Authentication Logging Cryptography Access Control
  • 13. Pluggable Security Architecture App. Other DDS System Secure DDS middleware Authentication Plugin Access Control Plugin Cryptography Plugin Key Management Plugin Secure Kernel Crypto Module (e.g. TPM ) Secure Transport (e.g. TLS) application componentcertificates ? Data cache Protocol Engine Kernel Policies DDS Entities Network Driver ? Network Encrypted DataTAG Other DDS System Other DDS System App.App. Auditing Plugin
  • 14. DDS HTTP REST INTEGRATION
  • 15. HTTP Web Integration • Web-enabled interface to Data Bus – REST • Access DDS from any application, platform or language that can invoke a Web Service – Web applications, e.g., Google Maps – JavaScript, Flash, Perl, PHP, Python, CGI scripts – ESBs • Lightweight interface to DDS Data Bus – Clients do not need to link or load special libraries DDS 15
  • 16. Proposed REST Api • “Login” “Join Domain” • “Logout” “Leave Domain” • “CreateSubscription,” • “CreatePublication,” • “RemoveSubscription,” • “RemovePublication,” • “GetSubscriptions,” • “GetPublications,” • “AddNotificationEndpoint,” • “RemoveNotificationEndpoint,” • “GetNotificationEndpoints,” • “Read,” • “Write,”
  • 21. Multiple Repliers Requester Replier A Replier C Replier B Request Reply 21
  • 24. Integration In Constrained Environments • Integration of resource-constrained OT systems with IT systems – Stringent SWaP requirements – Limited primary storage (8MB RAM) – Limited secondary storage (32MB flash) – Embedded low-power single-core CPU – Lack of operating system • Safety certification – In avionics, medical systems – Certification cost drives system design ($50 - $100 per ELOC) 24
  • 25. User-Configurable Feature Set DDS API Subset Transport API Base-line configuration Static Discovery OS API User Application UDPv4 Linux 2.6 VxWorks 653APEX Dynamic Discovery Queue API Listeners Required plug-in components Linear Q Keyed Q Discovery API Reliability Durability & History Other QoS Optional APIs Shared memory VxWorks 5.5 Compile-timeoptions RTPS Connext Micro 25
  • 26. Supported QoS • DataReaderResourceLimits • The following DataReaderResourceLimits fields are supported. All must be finite values greater than 0. – max_remote_writers – max_remote_writers_per_instance – max_samples_per_remote_writer – max_outstanding_reads • Destination Order – Only the BY_RECEPTION_TIMESTAMP kind is supported. • Durability – Only the VOLATILE and TRANSIENT_LOCAL Durability kinds are supported. • History – Only the KEEP_LAST History kind is supported. • Liveliness – Only the MANUAL_BY_TOPIC Liveliness kind is supported, with a lease duration range of [1, infinite]. • Deadline – The Deadline Qos policy is supported. • Ownership and OwnershipStrength – Both SHARED and EXCLUSIVE Ownership kinds are supported.
  • 27. Supported QoS (cont.) • Reliability – Both BEST-EFFORT and RELIABLE Reliability kinds are supported. – For RELIABLE reliability, periodic and piggyback heartbeat configuration are sup- ported, as well as max_send_window for setting the size of a reliability window. • ResourceLimits – The following limits in the ResourceLimits QoS policy are supported. All must be finite values greater than 0. – max_samples,max_instances,max_samples_per_instance – Note that max_samples must be large enough to contain all samples for all instances: – max_samples >= max_instances * max_samples_per_instance • ContentFilteredTopics – ContentFilteredTopics are not supported, but content filtering is provided by two DataReaderListener callbacks: on_before_sample_deserialize() and on_before_sample_commit()
  • 29. DO-178B/C • A guideline • Used by FAA as a basis for certification – Aircraft are “certified” – Software code developed under DO-178 provides “certification evidence” • Increasingly adopted for military aircraft
  • 30. DO-178C Safety Levels Level Failure Condition Typical % of avionics code A Catastrophic (may be total loss of life) 15% B Hazardous/Severe (may be some loss of life) 35% C Major (injuries possible) 30% D Minor (injuries unlikely) 15% E No effect 5%
  • 31. Tenets Of Safety-Critical Software • Reduce code size • Consider testability in design • Deterministic in time • Deterministic in memory – No dynamic memory allocation after startup
  • 32. Analysis of Suitability for DO178B/C • Verocel analyzed the prototype source code • Code is deterministic • Code is testable • Conforms to coding styles that make testing easier • Uses robustness checks and logging messages • RTI Connext Micro currently going through Certification
  • 35. Types are defined as Bus Objects
  • 37. Using Artisan Studio with RTI DDS • Model a DDS system with UML • Participants, Entities and Types • Generate representative XML file • Use XML App Creation from RTI
  • 38. NI Labview Integration with RTI DDS • Build LabView Application using DDS building blocks • Attach LabView logic block to live data • Connect Distributed LabView applications