SlideShare una empresa de Scribd logo
1 de 36
Your systems. Working as one.




Top Three Reasons to Develop
Your Next Distributed Application
with DDS



David Barnett
January 23, 2013
About RTI
• World leader in communications software for
  real-time systems
  – 350,000+ deployed copies
  – 600+ unique designs
• Standards leader
  – Participate in 15+ standards
    organizations
  – Authored DDS
Real-Time and Embedded Systems
DDS Is Communications Middleware


   Application                Application         Application
    Software                   Software            Software
  DDS Library                DDS Library         DDS Library
Operating System &        Operating System &   Operating System &
 Communication             Communication        Communication
   Mechanism                 Mechanism            Mechanism



 Network, backplane, shared memory
DDS Scope


   Application           Application Programming             Application
    Software                  Interface (API)                 Software
  DDS Library             Communication Model               DDS Library
Operating System &                                       Operating System &
 Communication                                            Communication
   Mechanism                                                Mechanism

                             Network Protocol

    DDS Real-Time Publish Subscribe (RTPS) Wire Interoperability Protocol
DDS Is an OMG Standard
• OMG: world’s largest systems software
  standards org
   – 470+ members
   – UML, DDS, CORBA, more

• Open process

• Standards freely available, including to
  non-members

• No vendor lock-in
   – ~12 implementations
   – Proven interoperability
Top Three Reasons to Use DDS
1. Accelerate development

2. Future proof your applications

3. Ease integration
DDS Eliminates Complex Network
Programming
   Replaces low-level communications code with
high-level Data-Centric Publish-Subscribe interfaces

                                     Application
                                      Software
     write(data), read(data)
                                    DDS Library
           socket(), connect(),
               bind(), listen(),   Operating System
                     accept()…     & Network Stack
Data-Centric Publish-Subscribe
“Data Centricity”

Combines:

• Asynchronous publish/subscribe messaging

• Real-time data management
Topic-Based Publish-Subscribe
                          DDS Bus




                           Commands
   Sensor Data




   Sensor                 Control               Actuator




    DDS automatically discovers and routes data between
publishers (writers) and subscribers (readers) to the same topic
DDS Topics Are Like Database Tables
                                                                                Subscribe
         Publish        Line   Flight   Dest     Arv
                        UA     567      SFO 7:32
                        AA     432          LAX 9:15
                                                             Squawk   Line Flight
                                                             1234      UA    567
                        Squawk    Long         Lat     Alt
                                                             7654      AA    432
                        1234         37.4 -122.0 500.0
                        7654         40.7     -74.0 250.0


                                     Virtual Global Data Space



•   Topics can be keyed
•   DDS maintains last n values for each topic-key addressed data sample
•   Eliminates dependence on startup order
•   Automatically synchronizes state if disconnections and reconnections
•   “Single source of truth” within a distributed application
Decentralized Architecture
  Component       Component       Component          Optional
                                                    Persistence
     DDS             DDS             DDS




Unlike a traditional database:
• Decentralized with peer-to-peer communication
   – Data cached locally for instant access
   – No centralized performance bottlenecks or expensive servers
   – No single point of failure: non-stop availability
• Asynchronous (event-driven) for real-time and low-latency
Designed to Support Real-Time and
Embedded Applications
• Control and visibility over real-time
  Quality of Service (QoS)
   – Data volatility: Durability, History,
     Lifespan
   – Data delivery: Reliability, Time based
     filter, Content filter, Deadline
   – High availability: Liveliness, Ownership,
     Ownership Strength
• Applications can be autonomous
   – Zero-configuration discovery
   – No centralized servers or software
     required
   – DDS library embedded in application
• Deterministic resource utilization (RTI)
DDS Accelerates Development
    Application Software                 Application Software
• Networking details              write(topic, data)   read(topic, data)
    • Addressing (hosts, ports)
    • Sockets
• Discovery
• State management
• Startup dependencies
• Disconnections                             DDS Library
• Failover
• Data routing
• Serialization
• Timing

      Operating System                     Operating System
      & Network Stack                      & Network Stack
Top Three Reasons to Use DDS
1. Accelerate development

2. Future proof your applications

3. Ease integration
Applications Often Start Small
             • Single developer or small team
             • Few:
               – Processors or nodes
               – Processor architectures
               – Operating systems
               – Programming languages
             • Single, known network type
               and transport protocol
…and Grow over Time
               • Large teams; multiple
                 organizations
               • Disparate platforms
                 and programming
                 languages
               • New networking
                 environments
               • New and evolving
                 requirements
Scalability Challenges
Traditional Communications




•   Communication logic embedded in application
•   E.g., using sockets, RPC, RMI
•   Difficult to distribute development
•   Costly to evolve, add new functionality
With DDS, Modules Are Loosely Coupled
                                 DDS Bus


                   Sensor Data
     Sensor Data




    Sensor         Sensor         Commands
                                 Control      Display      Actuator




Modules can be added and changed without affecting the rest of an application
DDS Easily Scales to Large Projects

• Developers only need to know about shared topics and their types
• Types are well-defined, discoverable and evolvable
                                               struct Position {
       struct Position {
                                                   unsigned short id;
           unsigned short ID;
                                                   float latitude;
           float latitude;
                                                   float longitude;
           float longitude;
                                                   float altitude;
       }
                                               }

• Modules communicate regardless of:
   –   Programming language
   –   Operating system
   –   Processor architecture, word length, endianness
   –   Underlying transport protocol and network type
   –   DDS implementation
DDS Manages QoS
                                                                                    Reliable, 2 Hz,
   Reliable,                                                                        Western U.S.
   100 Hz                   Line   Flight   Dest     Arv
                            UA     567      SFO 7:32
                                                                                            Reliable
                            AA     432          LAX 9:15
                                                                 Squawk   Line Flight
                                                                 1234      UA    567
                            Squawk    Long         Lat     Alt                           Best Effort,
                                                                 7654      AA    432
                            1234         37.4 -122.0 500.0                               1 Hz, SAN area
                            7654         40.7     -74.0 250.0
     Best Effort, 0.2 Hz,
     UA flights




• Each component specifies its offered or requested QoS
• DDS enforces contracts, notifies application if violation
• Retains loose coupling even when disparate requirements
Scalable Run-Time Architecture
  DDS Is Decentralized         Traditional IT Is Centralized




• Efficient communication      • Server-based
• No centralized bottlenecks   • Assume high-bandwidth,
  or choke points                reliable network (TCP)
• No expensive servers that    • Poor latency, scalability
  must scale with volume
Throughput – Messages/Second
                                          Gigabit Ethernet        InfiniBand
                      10,000,000

                                        2,141,625
Messages per Second




                       1,000,000
                                                                                        112,078
                        100,000
                                       451,209
                         10,000
                                                                                         14,830
                           1,000
                                   0             2,000          4,000           6,000     8,000
                                                         Message Size (Bytes)
Multicast for Scalable One-to-Many

             Publisher                     • Minimizes:
                                              – CPU overhead
                                              – Network overhead
                           Switch             – Latency
                           • Replication
                           • Filtering
                                           • Maximizes determinism



Subscriber   Subscriber   Subscriber
Run-Time Scalability
                                          Gigabit Ethernet
                      600,000

                      500,000
Messages per Second




                      400,000

                      300,000

                      200,000

                      100,000

                           0
                                0   200       400            600   800   1,000
                                                Subscribers
DDS Scales to Large Applications
• Facilitates modular development of loosely
  coupled and interoperable components
  – Interfaces (topics and types) are well-defined
  – Components are loosely coupled
  – No custom protocols to document, maintain
  – No reverse engineering
• Applications are programming
  language, platform and network independent
• Extremely scalable run-time architecture
Top Three Reasons to Use DDS
1. Accelerate development

2. Future proof your applications

3. Ease integration
If You Provide an Application
• DDS provides a standard interface for
  customers and systems integrators
  – They can use any DDS implementation
  – No need to provide and support a custom
    interface library
• Only have to document topics and types
  – …not custom protocols
  – Topics and types are even run-time discoverable
• Supports real-time Quality of Service
If You’re A Systems Integrator
•   DDS is decentralized for high scalability and availability
•   Alternative to traditional Enterprise Service Bus (ESB)
•   Open: integration logic not specific to an ESB implementation
•   Real-Time QoS satisfies the requirements of real-time and non-real-
    time components


     Disparate            Disparate
    Component            Component
                                                  Natively           Natively
          DDS or other protocol
                                               Interoperable      Interoperable
     Adapter              Adapter               Component          Component
                                                                                  API
    DDS Library          DDS Library            DDS Library        DDS Library


                        DDS-RTPS Wire Interoperability Protocol
Tools Support
System Overall Health
Top Three Reasons to Use DDS
1. Accelerate development

2. Future proof your applications

3. Ease integration
RTI Connext Product Family
                         General
                                        Small Footprint &     Disparate
      Pub/Sub        Purpose, Highly
                                         Safety Critical    Apps/Systems
       Apps         Reliable & Secure
                                              Apps
                          Apps
                                                            Adapt, Xform,
    API: Full DDS     DDS++ & JMS         DDS Subset           Route
     Connext           Connext             Connext            Connext
      DDS             Messaging             Micro            Integrator

 DDS-RTPS Wire Interoperability


                    Administration          Recording

                      Monitoring             Replay

                      System Viz             Logging

                               Connext Tools
Next Steps – Learn More
• Contact RTI
   – Demo, Q&A
• Download software
   – www.rti.com/downloads
   – RTI Shapes Demo
   – Free trial with comprehensive tutorial
• Watch videos & webinars, read
  whitepapers
   – www.rti.com/resources
   – www.youtube.com/realtimeinnovatio
     ns
Thank you!

Más contenido relacionado

La actualidad más candente

OpenSplice DDS Tutorial -- Part II
OpenSplice DDS Tutorial -- Part IIOpenSplice DDS Tutorial -- Part II
OpenSplice DDS Tutorial -- Part IIAngelo Corsaro
 
HDFS Futures: NameNode Federation for Improved Efficiency and Scalability
HDFS Futures: NameNode Federation for Improved Efficiency and ScalabilityHDFS Futures: NameNode Federation for Improved Efficiency and Scalability
HDFS Futures: NameNode Federation for Improved Efficiency and ScalabilityHortonworks
 
The Present and Future of DDS
The Present and Future of DDSThe Present and Future of DDS
The Present and Future of DDSAngelo Corsaro
 
Distributed Simulations with DDS and HLA
Distributed Simulations with DDS and HLADistributed Simulations with DDS and HLA
Distributed Simulations with DDS and HLAAngelo Corsaro
 
Integration Platform For JMPS Using DDS
Integration Platform For JMPS Using DDSIntegration Platform For JMPS Using DDS
Integration Platform For JMPS Using DDSSupreet Oberoi
 
OMG DDS Security Submission Presentation (September 2013 - 6th Revised Submis...
OMG DDS Security Submission Presentation (September 2013 - 6th Revised Submis...OMG DDS Security Submission Presentation (September 2013 - 6th Revised Submis...
OMG DDS Security Submission Presentation (September 2013 - 6th Revised Submis...Gerardo Pardo-Castellote
 
Fiware: Connecting to robots
Fiware: Connecting to robotsFiware: Connecting to robots
Fiware: Connecting to robotsJaime Martin Losa
 
Getting Started with DDS in C++, Java and Scala
Getting Started with DDS in C++, Java and ScalaGetting Started with DDS in C++, Java and Scala
Getting Started with DDS in C++, Java and ScalaAngelo Corsaro
 
Open-E DSS Synchronous Volume Replication over a WAN
Open-E DSS Synchronous Volume Replication over a WANOpen-E DSS Synchronous Volume Replication over a WAN
Open-E DSS Synchronous Volume Replication over a WANopen-e
 
ASPLOS2011 workshop RESoLVE "Effect of Disk Prefetching of Guest OS "
ASPLOS2011 workshop RESoLVE "Effect of Disk Prefetching of Guest OS "ASPLOS2011 workshop RESoLVE "Effect of Disk Prefetching of Guest OS "
ASPLOS2011 workshop RESoLVE "Effect of Disk Prefetching of Guest OS "Kuniyasu Suzaki
 
Introduction to hadoop and hdfs
Introduction to hadoop and hdfsIntroduction to hadoop and hdfs
Introduction to hadoop and hdfsshrey mehrotra
 
DNSSEC: What a Registrar Needs to Know
DNSSEC:  What a Registrar Needs to KnowDNSSEC:  What a Registrar Needs to Know
DNSSEC: What a Registrar Needs to Knowlaurenrprice
 
Hadoop World 2011: HDFS Federation - Suresh Srinivas, Hortonworks
Hadoop World 2011: HDFS Federation - Suresh Srinivas, HortonworksHadoop World 2011: HDFS Federation - Suresh Srinivas, Hortonworks
Hadoop World 2011: HDFS Federation - Suresh Srinivas, HortonworksCloudera, Inc.
 
Tuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS ApplicationsTuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS ApplicationsAngelo Corsaro
 
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
 
RTI Data-Distribution Service (DDS) Master Class 2011
RTI Data-Distribution Service (DDS) Master Class 2011RTI Data-Distribution Service (DDS) Master Class 2011
RTI Data-Distribution Service (DDS) Master Class 2011Gerardo Pardo-Castellote
 
Hadoop World 2011: Sherpasurfing - Wayne Wheeles
Hadoop World 2011: Sherpasurfing - Wayne WheelesHadoop World 2011: Sherpasurfing - Wayne Wheeles
Hadoop World 2011: Sherpasurfing - Wayne WheelesCloudera, Inc.
 
Integrating Apple Macs Using Novell Technologies
Integrating Apple Macs Using Novell TechnologiesIntegrating Apple Macs Using Novell Technologies
Integrating Apple Macs Using Novell TechnologiesNovell
 

La actualidad más candente (20)

OpenSplice DDS Tutorial -- Part II
OpenSplice DDS Tutorial -- Part IIOpenSplice DDS Tutorial -- Part II
OpenSplice DDS Tutorial -- Part II
 
HDFS Futures: NameNode Federation for Improved Efficiency and Scalability
HDFS Futures: NameNode Federation for Improved Efficiency and ScalabilityHDFS Futures: NameNode Federation for Improved Efficiency and Scalability
HDFS Futures: NameNode Federation for Improved Efficiency and Scalability
 
The Present and Future of DDS
The Present and Future of DDSThe Present and Future of DDS
The Present and Future of DDS
 
Distributed Simulations with DDS and HLA
Distributed Simulations with DDS and HLADistributed Simulations with DDS and HLA
Distributed Simulations with DDS and HLA
 
Integration Platform For JMPS Using DDS
Integration Platform For JMPS Using DDSIntegration Platform For JMPS Using DDS
Integration Platform For JMPS Using DDS
 
OMG DDS Security Submission Presentation (September 2013 - 6th Revised Submis...
OMG DDS Security Submission Presentation (September 2013 - 6th Revised Submis...OMG DDS Security Submission Presentation (September 2013 - 6th Revised Submis...
OMG DDS Security Submission Presentation (September 2013 - 6th Revised Submis...
 
Fiware: Connecting to robots
Fiware: Connecting to robotsFiware: Connecting to robots
Fiware: Connecting to robots
 
DASH7 Mode 2 Summary
DASH7 Mode 2 Summary DASH7 Mode 2 Summary
DASH7 Mode 2 Summary
 
Getting Started with DDS in C++, Java and Scala
Getting Started with DDS in C++, Java and ScalaGetting Started with DDS in C++, Java and Scala
Getting Started with DDS in C++, Java and Scala
 
Open-E DSS Synchronous Volume Replication over a WAN
Open-E DSS Synchronous Volume Replication over a WANOpen-E DSS Synchronous Volume Replication over a WAN
Open-E DSS Synchronous Volume Replication over a WAN
 
ASPLOS2011 workshop RESoLVE "Effect of Disk Prefetching of Guest OS "
ASPLOS2011 workshop RESoLVE "Effect of Disk Prefetching of Guest OS "ASPLOS2011 workshop RESoLVE "Effect of Disk Prefetching of Guest OS "
ASPLOS2011 workshop RESoLVE "Effect of Disk Prefetching of Guest OS "
 
Introduction to hadoop and hdfs
Introduction to hadoop and hdfsIntroduction to hadoop and hdfs
Introduction to hadoop and hdfs
 
DNSSEC: What a Registrar Needs to Know
DNSSEC:  What a Registrar Needs to KnowDNSSEC:  What a Registrar Needs to Know
DNSSEC: What a Registrar Needs to Know
 
Hadoop World 2011: HDFS Federation - Suresh Srinivas, Hortonworks
Hadoop World 2011: HDFS Federation - Suresh Srinivas, HortonworksHadoop World 2011: HDFS Federation - Suresh Srinivas, Hortonworks
Hadoop World 2011: HDFS Federation - Suresh Srinivas, Hortonworks
 
Tuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS ApplicationsTuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS Applications
 
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
 
RTI Data-Distribution Service (DDS) Master Class 2011
RTI Data-Distribution Service (DDS) Master Class 2011RTI Data-Distribution Service (DDS) Master Class 2011
RTI Data-Distribution Service (DDS) Master Class 2011
 
Hadoop World 2011: Sherpasurfing - Wayne Wheeles
Hadoop World 2011: Sherpasurfing - Wayne WheelesHadoop World 2011: Sherpasurfing - Wayne Wheeles
Hadoop World 2011: Sherpasurfing - Wayne Wheeles
 
DDS Made Simple
DDS Made SimpleDDS Made Simple
DDS Made Simple
 
Integrating Apple Macs Using Novell Technologies
Integrating Apple Macs Using Novell TechnologiesIntegrating Apple Macs Using Novell Technologies
Integrating Apple Macs Using Novell Technologies
 

Destacado

A Distributed Application Execution System for an Infrastructure with Dynamic...
A Distributed Application Execution System for an Infrastructure with Dynamic...A Distributed Application Execution System for an Infrastructure with Dynamic...
A Distributed Application Execution System for an Infrastructure with Dynamic...Ryousei Takano
 
Back-End application for Distributed systems
Back-End application for Distributed systemsBack-End application for Distributed systems
Back-End application for Distributed systemsAtif Imam
 
Distributed systems
Distributed systemsDistributed systems
Distributed systemsRavi Yasas
 
Applications of Distributed Systems
Applications of Distributed SystemsApplications of Distributed Systems
Applications of Distributed Systemssandra sukarieh
 
7 distributed and real systems
7 distributed and real systems7 distributed and real systems
7 distributed and real systemsmyrajendra
 
Distributed system notes unit I
Distributed system notes unit IDistributed system notes unit I
Distributed system notes unit INANDINI SHARMA
 
Distributed Systems Real Life Applications
Distributed Systems Real Life ApplicationsDistributed Systems Real Life Applications
Distributed Systems Real Life ApplicationsAman Srivastava
 
Distributed computing
Distributed computingDistributed computing
Distributed computingshivli0769
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed SystemsRupsee
 
Unit 1 architecture of distributed systems
Unit 1 architecture of distributed systemsUnit 1 architecture of distributed systems
Unit 1 architecture of distributed systemskaran2190
 

Destacado (11)

A Distributed Application Execution System for an Infrastructure with Dynamic...
A Distributed Application Execution System for an Infrastructure with Dynamic...A Distributed Application Execution System for an Infrastructure with Dynamic...
A Distributed Application Execution System for an Infrastructure with Dynamic...
 
Back-End application for Distributed systems
Back-End application for Distributed systemsBack-End application for Distributed systems
Back-End application for Distributed systems
 
Distributed systems
Distributed systemsDistributed systems
Distributed systems
 
Applications of Distributed Systems
Applications of Distributed SystemsApplications of Distributed Systems
Applications of Distributed Systems
 
7 distributed and real systems
7 distributed and real systems7 distributed and real systems
7 distributed and real systems
 
Distributed system notes unit I
Distributed system notes unit IDistributed system notes unit I
Distributed system notes unit I
 
Distributed Systems Real Life Applications
Distributed Systems Real Life ApplicationsDistributed Systems Real Life Applications
Distributed Systems Real Life Applications
 
Distributed computing
Distributed computingDistributed computing
Distributed computing
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
 
Unit 1 architecture of distributed systems
Unit 1 architecture of distributed systemsUnit 1 architecture of distributed systems
Unit 1 architecture of distributed systems
 

Similar a Top Three Reasons to Develop Your Next Distributed Application with DDS

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
 
Don't Architect a Real-Time System that Can't Scale
Don't Architect a Real-Time System that Can't ScaleDon't Architect a Real-Time System that Can't Scale
Don't Architect a Real-Time System that Can't ScaleReal-Time Innovations (RTI)
 
Managing Avionics Safety Certification for Unmanned Aircraft
Managing Avionics Safety Certification for Unmanned AircraftManaging Avionics Safety Certification for Unmanned Aircraft
Managing Avionics Safety Certification for Unmanned AircraftReal-Time Innovations (RTI)
 
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
 
Fast RTPS Workshop at FIWARE Summit 2018
Fast RTPS Workshop at FIWARE Summit 2018Fast RTPS Workshop at FIWARE Summit 2018
Fast RTPS Workshop at FIWARE Summit 2018Jaime Martin Losa
 
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)
 
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
 
DDS, the US Navy, and the Need for Distributed Software
DDS, the US Navy,  and the Need for Distributed SoftwareDDS, the US Navy,  and the Need for Distributed Software
DDS, the US Navy, and the Need for Distributed SoftwareGerardo Pardo-Castellote
 
Fast DDS Features & Tools
Fast DDS Features & ToolsFast DDS Features & Tools
Fast DDS Features & ToolseProsima
 
Aruman Cassandra database
Aruman Cassandra databaseAruman Cassandra database
Aruman Cassandra databaseUmesh Dande
 
Introducing Vortex Lite
Introducing Vortex LiteIntroducing Vortex Lite
Introducing Vortex LiteAngelo Corsaro
 
Cyclone DDS Unleashed: Scalability in DDS and Dealing with Large Systems
Cyclone DDS Unleashed: Scalability in DDS and Dealing with Large SystemsCyclone DDS Unleashed: Scalability in DDS and Dealing with Large Systems
Cyclone DDS Unleashed: Scalability in DDS and Dealing with Large SystemsZettaScaleTechnology
 

Similar a Top Three Reasons to Develop Your Next Distributed Application with DDS (20)

RTI Technical Road Show SPAWAR SD
RTI Technical Road Show SPAWAR SDRTI Technical Road Show SPAWAR SD
RTI Technical Road Show SPAWAR SD
 
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
 
Don't Architect a Real-Time System that Can't Scale
Don't Architect a Real-Time System that Can't ScaleDon't Architect a Real-Time System that Can't Scale
Don't Architect a Real-Time System that Can't Scale
 
Managing Avionics Safety Certification for Unmanned Aircraft
Managing Avionics Safety Certification for Unmanned AircraftManaging Avionics Safety Certification for Unmanned Aircraft
Managing Avionics Safety Certification for Unmanned Aircraft
 
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
 
Fast RTPS Workshop at FIWARE Summit 2018
Fast RTPS Workshop at FIWARE Summit 2018Fast RTPS Workshop at FIWARE Summit 2018
Fast RTPS Workshop at FIWARE Summit 2018
 
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
 
DDS Enabling Open Architecture
DDS Enabling Open ArchitectureDDS Enabling Open Architecture
DDS Enabling Open Architecture
 
HLA over DDS
HLA over DDSHLA over DDS
HLA over DDS
 
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...
 
DDS, the US Navy, and the Need for Distributed Software
DDS, the US Navy,  and the Need for Distributed SoftwareDDS, the US Navy,  and the Need for Distributed Software
DDS, the US Navy, and the Need for Distributed Software
 
Fast DDS Features & Tools
Fast DDS Features & ToolsFast DDS Features & Tools
Fast DDS Features & Tools
 
Hadoop, Taming Elephants
Hadoop, Taming ElephantsHadoop, Taming Elephants
Hadoop, Taming Elephants
 
Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN)Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN)
 
Introductionto SDN
Introductionto SDN Introductionto SDN
Introductionto SDN
 
Aruman Cassandra database
Aruman Cassandra databaseAruman Cassandra database
Aruman Cassandra database
 
Introducing Vortex Lite
Introducing Vortex LiteIntroducing Vortex Lite
Introducing Vortex Lite
 
Introducing Vortex Lite
Introducing Vortex LiteIntroducing Vortex Lite
Introducing Vortex Lite
 
Cyclone DDS Unleashed: Scalability in DDS and Dealing with Large Systems
Cyclone DDS Unleashed: Scalability in DDS and Dealing with Large SystemsCyclone DDS Unleashed: Scalability in DDS and Dealing with Large Systems
Cyclone DDS Unleashed: Scalability in DDS and Dealing with Large Systems
 

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)
 
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)
 
Developing Mission-Critical Avionics and Defense Systems with Ada and DDS
Developing Mission-Critical Avionics and Defense Systems with Ada and DDSDeveloping Mission-Critical Avionics and Defense Systems with Ada and DDS
Developing Mission-Critical Avionics and Defense Systems with Ada and DDSReal-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
 
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...
 
Developing Mission-Critical Avionics and Defense Systems with Ada and DDS
Developing Mission-Critical Avionics and Defense Systems with Ada and DDSDeveloping Mission-Critical Avionics and Defense Systems with Ada and DDS
Developing Mission-Critical Avionics and Defense Systems with Ada and DDS
 

Top Three Reasons to Develop Your Next Distributed Application with DDS

  • 1. Your systems. Working as one. Top Three Reasons to Develop Your Next Distributed Application with DDS David Barnett January 23, 2013
  • 2. About RTI • World leader in communications software for real-time systems – 350,000+ deployed copies – 600+ unique designs • Standards leader – Participate in 15+ standards organizations – Authored DDS
  • 4. DDS Is Communications Middleware Application Application Application Software Software Software DDS Library DDS Library DDS Library Operating System & Operating System & Operating System & Communication Communication Communication Mechanism Mechanism Mechanism Network, backplane, shared memory
  • 5. DDS Scope Application Application Programming Application Software Interface (API) Software DDS Library Communication Model DDS Library Operating System & Operating System & Communication Communication Mechanism Mechanism Network Protocol DDS Real-Time Publish Subscribe (RTPS) Wire Interoperability Protocol
  • 6. DDS Is an OMG Standard • OMG: world’s largest systems software standards org – 470+ members – UML, DDS, CORBA, more • Open process • Standards freely available, including to non-members • No vendor lock-in – ~12 implementations – Proven interoperability
  • 7. Top Three Reasons to Use DDS 1. Accelerate development 2. Future proof your applications 3. Ease integration
  • 8. DDS Eliminates Complex Network Programming Replaces low-level communications code with high-level Data-Centric Publish-Subscribe interfaces Application Software write(data), read(data) DDS Library socket(), connect(), bind(), listen(), Operating System accept()… & Network Stack
  • 9. Data-Centric Publish-Subscribe “Data Centricity” Combines: • Asynchronous publish/subscribe messaging • Real-time data management
  • 10. Topic-Based Publish-Subscribe DDS Bus Commands Sensor Data Sensor Control Actuator DDS automatically discovers and routes data between publishers (writers) and subscribers (readers) to the same topic
  • 11. DDS Topics Are Like Database Tables Subscribe Publish Line Flight Dest Arv UA 567 SFO 7:32 AA 432 LAX 9:15 Squawk Line Flight 1234 UA 567 Squawk Long Lat Alt 7654 AA 432 1234 37.4 -122.0 500.0 7654 40.7 -74.0 250.0 Virtual Global Data Space • Topics can be keyed • DDS maintains last n values for each topic-key addressed data sample • Eliminates dependence on startup order • Automatically synchronizes state if disconnections and reconnections • “Single source of truth” within a distributed application
  • 12. Decentralized Architecture Component Component Component Optional Persistence DDS DDS DDS Unlike a traditional database: • Decentralized with peer-to-peer communication – Data cached locally for instant access – No centralized performance bottlenecks or expensive servers – No single point of failure: non-stop availability • Asynchronous (event-driven) for real-time and low-latency
  • 13. Designed to Support Real-Time and Embedded Applications • Control and visibility over real-time Quality of Service (QoS) – Data volatility: Durability, History, Lifespan – Data delivery: Reliability, Time based filter, Content filter, Deadline – High availability: Liveliness, Ownership, Ownership Strength • Applications can be autonomous – Zero-configuration discovery – No centralized servers or software required – DDS library embedded in application • Deterministic resource utilization (RTI)
  • 14. DDS Accelerates Development Application Software Application Software • Networking details write(topic, data) read(topic, data) • Addressing (hosts, ports) • Sockets • Discovery • State management • Startup dependencies • Disconnections DDS Library • Failover • Data routing • Serialization • Timing Operating System Operating System & Network Stack & Network Stack
  • 15. Top Three Reasons to Use DDS 1. Accelerate development 2. Future proof your applications 3. Ease integration
  • 16. Applications Often Start Small • Single developer or small team • Few: – Processors or nodes – Processor architectures – Operating systems – Programming languages • Single, known network type and transport protocol
  • 17. …and Grow over Time • Large teams; multiple organizations • Disparate platforms and programming languages • New networking environments • New and evolving requirements
  • 19. Traditional Communications • Communication logic embedded in application • E.g., using sockets, RPC, RMI • Difficult to distribute development • Costly to evolve, add new functionality
  • 20. With DDS, Modules Are Loosely Coupled DDS Bus Sensor Data Sensor Data Sensor Sensor Commands Control Display Actuator Modules can be added and changed without affecting the rest of an application
  • 21. DDS Easily Scales to Large Projects • Developers only need to know about shared topics and their types • Types are well-defined, discoverable and evolvable struct Position { struct Position { unsigned short id; unsigned short ID; float latitude; float latitude; float longitude; float longitude; float altitude; } } • Modules communicate regardless of: – Programming language – Operating system – Processor architecture, word length, endianness – Underlying transport protocol and network type – DDS implementation
  • 22. DDS Manages QoS Reliable, 2 Hz, Reliable, Western U.S. 100 Hz Line Flight Dest Arv UA 567 SFO 7:32 Reliable AA 432 LAX 9:15 Squawk Line Flight 1234 UA 567 Squawk Long Lat Alt Best Effort, 7654 AA 432 1234 37.4 -122.0 500.0 1 Hz, SAN area 7654 40.7 -74.0 250.0 Best Effort, 0.2 Hz, UA flights • Each component specifies its offered or requested QoS • DDS enforces contracts, notifies application if violation • Retains loose coupling even when disparate requirements
  • 23. Scalable Run-Time Architecture DDS Is Decentralized Traditional IT Is Centralized • Efficient communication • Server-based • No centralized bottlenecks • Assume high-bandwidth, or choke points reliable network (TCP) • No expensive servers that • Poor latency, scalability must scale with volume
  • 24. Throughput – Messages/Second Gigabit Ethernet InfiniBand 10,000,000 2,141,625 Messages per Second 1,000,000 112,078 100,000 451,209 10,000 14,830 1,000 0 2,000 4,000 6,000 8,000 Message Size (Bytes)
  • 25. Multicast for Scalable One-to-Many Publisher • Minimizes: – CPU overhead – Network overhead Switch – Latency • Replication • Filtering • Maximizes determinism Subscriber Subscriber Subscriber
  • 26. Run-Time Scalability Gigabit Ethernet 600,000 500,000 Messages per Second 400,000 300,000 200,000 100,000 0 0 200 400 600 800 1,000 Subscribers
  • 27. DDS Scales to Large Applications • Facilitates modular development of loosely coupled and interoperable components – Interfaces (topics and types) are well-defined – Components are loosely coupled – No custom protocols to document, maintain – No reverse engineering • Applications are programming language, platform and network independent • Extremely scalable run-time architecture
  • 28. Top Three Reasons to Use DDS 1. Accelerate development 2. Future proof your applications 3. Ease integration
  • 29. If You Provide an Application • DDS provides a standard interface for customers and systems integrators – They can use any DDS implementation – No need to provide and support a custom interface library • Only have to document topics and types – …not custom protocols – Topics and types are even run-time discoverable • Supports real-time Quality of Service
  • 30. If You’re A Systems Integrator • DDS is decentralized for high scalability and availability • Alternative to traditional Enterprise Service Bus (ESB) • Open: integration logic not specific to an ESB implementation • Real-Time QoS satisfies the requirements of real-time and non-real- time components Disparate Disparate Component Component Natively Natively DDS or other protocol Interoperable Interoperable Adapter Adapter Component Component API DDS Library DDS Library DDS Library DDS Library DDS-RTPS Wire Interoperability Protocol
  • 33. Top Three Reasons to Use DDS 1. Accelerate development 2. Future proof your applications 3. Ease integration
  • 34. RTI Connext Product Family General Small Footprint & Disparate Pub/Sub Purpose, Highly Safety Critical Apps/Systems Apps Reliable & Secure Apps Apps Adapt, Xform, API: Full DDS DDS++ & JMS DDS Subset Route Connext Connext Connext Connext DDS Messaging Micro Integrator DDS-RTPS Wire Interoperability Administration Recording Monitoring Replay System Viz Logging Connext Tools
  • 35. Next Steps – Learn More • Contact RTI – Demo, Q&A • Download software – www.rti.com/downloads – RTI Shapes Demo – Free trial with comprehensive tutorial • Watch videos & webinars, read whitepapers – www.rti.com/resources – www.youtube.com/realtimeinnovatio ns