SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
Distributed Simulations
                 with DDS and HLA
OpenSplice DDS




                                   Angelo CORSARO, Ph.D.
                                             Chief Technology Officer
                                             OMG DDS Sig Co-Chair
                                                         PrismTech
                                    angelo.corsaro@prismtech.com

                                 José-Ramón Martínez-Salio
                                    Technical Sales Engineers Director
                                                               NADS
                                          jrmartinez@nexteleng.es
Context




                                                                                            Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   DDS is increasingly being adopted in simulation applications either
                      side-by-side with HLA or as a replacement
OpenSplice DDS




                  ☐   This webcast provides an objective comparison of DDS and HLA
                      allowing attendees to understand the value that each of these
                      technologies can bring
OpenSplice DDS




                 Genesis
DDS and HLA Goals
                               DDS                              HLA




                                                                                      Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   Foster interoperability and   ☐   Foster interoperability and
                      portability of Distributed        portability of Distributed
OpenSplice DDS




                      Operational Systems               Simulation Systems

                  ☐   Address functional and        ☐   Address functional
                      non-functional                    requirements and (some)
                      requirements of                   non functional requirements
                      Operational Systems               of Simulation Systems
Standard Scope
                                    DDS                                                           HLA




                                                                                                                                        Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                     Application                                                   Federate

                       Data Centric Publish Subscriber (DCPS)                             Run-Time Infrastructure (RTI)
                                                               Content       Federation              Object                  Time
                  Ownership             Durability
                                                             Subscription   Management             Managenent             Management
OpenSplice DDS




                                     Minimum Profile                          Ownership           Data Distribution        Declaration
                                                                            Management            Management              Management


                      DDS Interoperability Wire Protocol - DDSI-RTPS


                                      UDP/IP
                                    Application


                  ☐   DDS and HLA define standardized ways of describing application Data.
Standardization History
                                                                                                             DDS-ISO-Java
                                                                                                                                         DDS-RMI
                                                           UML4DDS            DDS4CCM                        DDS-ISO-C++
                                                                                                                                             DDS-Security




                                                                                                                                                            Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                                                                                                    Dec
                                                                                                                                      DDS-TCP/IP
                          DDS v1.1                         DDS v1.2          DDSI v2.0      DDSI v2.1       DDS-XTopics
                          Dec                              Jan               Apr             Jan            March
                                                                                                                                                 Sep

                                 2005              2006          2007               2008           2009           2010                2011          2012
OpenSplice DDS




                                                                                                          HLA Evolved

                                                                                                                         DDS v1.0
                                                                                                                         Dec

                   1996   1997              1998          1999              2000           2001            2003                2004




                 HLA
                                        HLA v1.3                        HLA
                                                                        IEEE 1516
[DDS/HLA ]
                 Similarities and Differences
                                                    DDS                          HLA




                                                                                                    Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                         API Standard                Yes                         Yes


                                                                                   No
                     Wire Protocol Standard          Yes
                                                                      (essentially underspecified)
OpenSplice DDS




                    Data Modeling Standard Yes (IDL, XML, XSD, UML)        Yes (OMT, XML)



                                                                       Static Declaration of FOM
                           Discovery            Fully Dynamic
                                                                      Dynamic Matching Pub/Sub

                                                                       Implementation Dependent
                       Architectural Style     Fully Distributed      (Most implementation have a
                                                                           centralized broker)
[DDS/HLA ]
                 Similarities and Differences
                                                     DDS                          HLA

                                             Per Topic with Content        Per Object Attribute
                      Subscription Model




                                                                                                      Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                              Filters and Queries            Per Interaction


                                                                        2 QoS Policies (Reliability
                             QoS                22 QoS Policies
                                                                             and Ordering)
OpenSplice DDS




                                                                       ‣ Dependency on globally
                                           ‣ No dependency on global
                                                                         defined FOM
                          Coupling           knowledge
                                                                       ‣ Time coupling
                                           ‣ Time decoupling



                                                                       ‣ Sophisticated time
                      Time Management      ‣ Basic Timestamping
                                                                         management service
DDS in Defense and Aerospace




                                                                                                            Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
OpenSplice DDS




                  Integrated Modular Vetronics     Training & Simulation Systems   Naval Combat Systems




                 Air Traffic Control & Management       Unmanned Air Vehicles       Aerospace Applications
DDS in Commercial Applications




                                                                                                          Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
OpenSplice DDS




                 Agricultural Vehicle Systems   Large Scale SCADA Systems          Smart Cities




                    Train Control Systems        Complex Medical Devices    High Frequency Auto-Trading
DDS and HLA Fundamentals
OpenSplice DDS
Data Distribution Service
                 For Real-Time Systems


                 DDS provides a Topic-Based Publish/




                                                                                                                       Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                 Subscribe abstraction based on:                                                      Data
                                                                                                     Reader
                                                                    Data
                                                                    Writer
                 ☐   Topics: data distribution subject’s
OpenSplice DDS




                                                                                                               Data
                                                                                                              Reader
                                                           Data                         TopicD
                                                           Writer
                     DataWriters: data producers
                                                                             TopicA
                 ☐
                                                                                                               Data
                                                                                       TopicB                 Reader
                                                           Data
                                                           Writer
                 ☐   DataReaders: data consumers                             TopicC
                                                                                           ...

                                                             Data                                         Data
                                                             Writer                                      Reader

                                                                             DDS Global Data Space
Data Distribution Service
                 For Real-Time Systems




                                                                                                                   Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   DataWriters and DataReaders
                      are automatically and                                                       Data
                                                                                                 Reader
                      dynamically matched by the                Data
                                                                Writer

                      DDS Dynamic Discovery
OpenSplice DDS




                                                                                                           Data
                                                                                                          Reader
                                                       Data                         TopicD
                                                       Writer
                                                                         TopicA
                  ☐   A rich set of QoS allows the                                                         Data
                                                                                                          Reader
                                                                                   TopicB
                      control existential, temporal,
                                                       Data
                                                       Writer
                                                                         TopicC
                                                                                       ...
                      and spatial properties of data     Data                                         Data
                                                         Writer                                      Reader

                                                                         DDS Global Data Space
HLA Federation
                  ☐   An HLA Federation is a collection of Federates (essentially HLA applications)




                                                                                                                      Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                      sharing a common Federation Object Model (FOM)
                  ☐    Each Federate can publish/subscribe a subset Objects Attributes and
                      Interactions defined by the Federation FOM.
OpenSplice DDS




                        Federate A        Federate B      ...          Federate K
                                                                                     Federation Object Model
                                                                                     <FOM>
                                                                                       <Shared object classes>
                                                                                       <Shared interaction classes>
                                                                                       <More>
                                                                                     </FOM>




                                     RTI (Run-Time Infrastructure)
DDS Topics
                                                                 “Circle”, “Square”, “Triangle”, ...
                  ☐   A Topic defines a class of streams




                                                                                                             Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   A Topic has associated a unique                        Name
                      name, a user defined extensible
                      type and a set of QoS policies                         Topic




                                                                          Typ



                                                                                       S
OpenSplice DDS




                                                                                               DURABILITY,




                                                                                     Qo
                  ☐   QoS Policies capture the Topic




                                                                           e
                                                                                                DEADLINE,
                                                              ShapeType
                      non-functional invariants                                                 PRIORITY,
                                                                                                   …
                  ☐   Topics can be discovered or
                      locally defined                      struct ShapeType {
                                                              @Key
                                                              string   color;
                                                              long   x;
                                                              long   y;
                                                              long   shapesize;
                                                           };
Instances and Samples
                                     “Circle”, “Square”, “Triangle”, ...




                                                                                 Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                                 Name
                                                 Topic




                                           Typ



                                                           S
OpenSplice DDS




                                                                   DURABILITY,




                                                         Qo
                                                e
                                                                    DEADLINE,
                                    ShapeType
                                                                    PRIORITY,
                                                                       …

                                 struct ShapeType {
                                    @Key
                                    string   color;
                                    long   x;
                                    long   y;
                                    long   shapesize;
                                 };
HLA Objects




                                                                                                                Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   HLA Objects identify a
                      class of instances whose   (objects
                                                    (class Shape
                      attributes can be                 (attribute   color reliable timestamp ShapeSpace)
                      individually published/           (attribute
                                                        (attribute
                                                                     x best_effort timestamp ShapeSpace)
                                                                     y best_effort timestamp ShapeSpace)
OpenSplice DDS




                      subscribed                    )
                                                        (attribute   shapesize reliable timestamp ShapeSpace)

                                                 )
                  ☐   QoS are controlled at
                      an attribute-level

                  ☐   Object attributes can be bound to spaces and dimensions to
                      organize/partition the data distribution
HLA Interactions




                                                                                                          Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   HLA Interactions are
                      used to model
                      consumable events
OpenSplice DDS




                                                 (interactions
                  ☐   Interactions are              (class ShapeCollision reliable timestamp ShapeSpace

                      published/subscribed as           (attribute x)
                                                        (attribute y)
                      atomically                 )
                                                    )



                  ☐   QoS is attached with the
                      interaciton
Polymorphism
                                 DDS                                    HLA




                                                                                                     Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   DDS is equipped with a              ☐   HLA provides supports for
                      structural type system where            traditional subtype polymorphism
                      subtype relationships are               as supported in declarative
                      deduced based on type                   nominal type systems
OpenSplice DDS




                      properties as opposed to
                      syntactical declaration             ☐   HLA supports only single
                                                              inheritance
                  ☐   This means that a subscription
                      for a type X matches a              ☐   This means that a subscription for a
                      publication for a type Y iff Y <:       type X matches a publication for a
                      X (the subtype property is              type Y iff Y <: X
                      antisymmetric, reflexive, and
                      transitive)
Polymorphism
                                               Point         GPoint
                                          x: long       x: long
                                          y: long       y: long




                                                                               Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                                        z: long
                                                        t: long

                                              Point3D
                                          z: long
OpenSplice DDS




                                DDS                                   HLA
                  ☐   Point3D <: Point                  ☐   Point3D <: Point

                  ☐   GPoint <: Point3D
Anatomy of a DDS Application
                  Domain (e.g. Domain 123)

                                                                                  Domain




                                                                                                             Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                                                                 Participant


                                                                                                 Topic
                          Partition (e.g. “Telemetry”, “Shapes”, )
OpenSplice DDS




                                             T1                      Publisher
                                           T1 T3                                               Subscriber
                          Topic Instances/Samples      Tx
                                                       Ty
                                               Tb
                                          Ta                            DataWrter               DataReader
                                               Tc
OpenSplice DDS




                                                                                                       Federation




                                   Spaces




    Y.d
                   X.a




K
                X.b I
          Y.c
      J
                                                     Federate



                 Ambassador
                                                                                                                    Anatomy of a HLA Application




                              Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
Data Selection
                                DDS                             HLA




                                                                                    Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   Pub/Sub granularity is the    ☐   Pub/Sub granularity are
                      Topic                             attributes for Object and
                  ☐   Data can be organized             the whole class for an
                                                        Interaction
OpenSplice DDS




                      into Partitions. Partitions
                      matching is based on          ☐   Data can be organized in
                      regular expression
                                                        Spaces and Dimensions
                  ☐   Content Filters and
                      Queries can be used to
                      select the data that is
                      received
DDS Partitions Matching
                  Domain

                           Partitions               DDS Publishers and




                                                                                  Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                                ☐
                                                    Subscribers can specify a
                     M:0:0     M:0:1    M:0:2       list of regular expressions
                                                    representing the partitions
                                                    to join
OpenSplice DDS




                     M:1:0     M:1:1    M:1:2
                                                ☐   Actual partition can be
                                                    any string, but some
                     M:2:0     M:2:1    M:2:2       structure can be given in
                                                    order mimic hierarchy
DDS Partitions Matching
                  Domain

                           Partitions




                                                        Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                     M:0:0     M:0:1    M:0:2   M:0:*
OpenSplice DDS




                     M:1:0     M:1:1    M:1:2


                     M:2:0     M:2:1    M:2:2
DDS Partitions Matching
                  Domain

                           Partitions




                                                        Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                     M:0:0     M:0:1    M:0:2
OpenSplice DDS




                     M:1:0     M:1:1    M:1:2


                     M:2:0     M:2:1    M:2:2
                                                M:*:2
DDS Partitions Matching
                  Domain

                           Partitions




                                                                      Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                     M:0:0     M:0:1    M:0:2
OpenSplice DDS




                     M:1:0     M:1:1    M:1:2


                     M:2:0     M:2:1    M:2:2   M:0:0, M:1:1, M:2:2
Anatomy of a DDS Application
                 [DDS C++ API 2010]

                 Domain
                                                                                        Domain




                                                                                                                   Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                   auto dp = DomainParticipant(domainId);
                                                                                       Participant

                 Session
                   // Create a Topic
                   auto topic = Topic<ShapeType>(dp, “Circle”)        Publisher
          Topic
         Subscriber
OpenSplice DDS




                   // Create a Publisher / Subscriber
                   auto pub = Publisher(dp)
                   auto sub = Subscriber(dp)


                 Reader/Writers for User Defined for Types             DataWriter
                        DataReader
                   // Create a DataWriter/DataWriter
                   auto writer = DataWriter<ShapeType>(pub, topic);                 Reader/Writer for
                   auto reader = DataReader<ShapeType>(sub, topic);
                                                                                    application defined
                                                                                       Topic Types
Anatomy of a DDS Application
                 [DDS C++ API 2010]

                 Domain
                                                                                     Domain




                                                                                                                Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                   auto dp = DomainParticipant(domainId);
                                                                                    Participant

                 Session
                   // Create a Topic
                   auto topic = Topic<ShapeType>(dp, “Circle”)     Publisher
          Topic
         Subscriber
OpenSplice DDS




                   // Create a Publisher / Subscriber
                   auto pub = Publisher(dp)
                   auto sub = Subscriber(dp)


                 Reader/Writers for User Defined for Types          DataWriter
                        DataReader
                   // Write data
                   writer.write(ShapeType(“RED”, 131, 107, 89));                 Reader/Writer for
                   // But you can also write like this...
                   writer << ShapeType(“RED”, 131, 107, 89);
                                                                                 application defined
                                                                                    Topic Types
                   // Read new data (loaned)
                   auto data = reader.read();
Anatomy of an HLA Application
                              using namespace std;

                              int main( int argc, char *argv[] )
                              {
                                  // 1. create the RTIambassador that we are going to work with
                 Federation       RTI::RTIambassador* rtiamb = 0;




                                                                                                                     Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                  rtiamb = new RTI::RTIambassador();

                                  // 2. create the federation execution
                                  rtiamb->createFederationExecution( "exampleFederation", "testfom.fed" );
                                  cout << "Created federation" << endl;

                                  // 3. join the federation execution
                 Federate         RTI::FederateAmbassador* fedamb = new MyFedAmb();
                                  rtiamb->joinFederationExecution( "myFederate", "exampleFederation", fedamb );
OpenSplice DDS




                                  cout << "Joined federation" << endl;

                                  // Pub/Sub...


                                  // 4. resign from the federation execution
                                  rtiamb->resignFederationExecution( RTI::DELETE_OBJECTS_AND_RELEASE_ATTRIBUTES );
                                  cout << "Resigned from federation" << endl;

                                  // 5. destroy the federation execution
                                  rtiamb->destroyFederationExecution( "exampleFederation" );
                                  cout << "Destroyed federation" << endl;

                                  // 6. do some cleanup and exit
                                  delete rtiamb;
                                  return 0;
                              }
OpenSplice DDS




             QoS
DDS QoS Model
                 ☐   QoS-Policies control local and
                     end-to-end properties of DDS




                                                                                                                                                                                   Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                                                                                    Type Matching

                     entities
                                                                                                                                       QoS matching


                                                       QoS             QoS                QoS                   QoS                   QoS                QoS              QoS


                 ☐   Local properties controlled by                                                             Topic
                                                                                                                          Name

                     QoS are related resource usage
                                                                     Publisher                                                                        Subscriber

                                                                                 ...   DataWriter      writes   Type       reads   DataReader
                                                                                                                                                ...
                                                                                                                    ...
OpenSplice DDS




                 ☐   End-to-end properties              DomainParticipant              DataWriter    writes     Type      reads    DataReader                  DomainParticipant


                     controlled by QoS are related                                                              Topic
                                                                                                                          Name



                     to temporal and spatial aspects                                     QoS                    QoS                    QoS

                     of data distribution
                 ☐   Some QoS-Policies are matched
                     based on a Request vs. Offered
                     Model thus QoS-enforcement
DDS QoS Policies
                 [T: Topic] [DR: DataReader] [DW: DataWriter] [P: Publisher]   [S: Subscriber]     [DP: Domain Participant]

                                   QoS Policy      Applicability     RxO        Modifiable




                                                                                                                              Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                   USER_DATA       DP, DR, DW         N              Y
                                  TOPIC_DATA            T             N              Y            Configuration
                                  GROUP_DATA           P, S           N              Y
                                   DURABILITY       T, DR, DW         Y              N
OpenSplice DDS




                                   DURABILITY         T, DW           N              N
                                    SERVICE                                                      Data Availability
                                    HISTORY         T, DR, DW         N              N
                                 PRESENTATION          P, S           Y              N
                                   RELIABILITY      T, DR, DW         Y              N
                                   PARTITION           P, S           N              Y
                                                                                                  Data Delivery
                                  DESTINATION       T, DR, DW         Y              N
                                    ORDER
                                    LIFESPAN          T, DW           N              Y
DDS QoS Policies
                 [T: Topic] [DR: DataReader] [DW: DataWriter] [P: Publisher]   [S: Subscriber]    [DP: Domain Participant]

                                    QoS Policy     Applicability     RxO        Modifiable




                                                                                                                             Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                    DEADLINE        T, DR, DW         Y              Y
                                    LATENCY         T, DR, DW         Y              Y
                                    BUDGET                                                         Temporal/
                                  TRANSPORT           T, DW           N              Y            Importance
                                   PRIORITY                                                      Characteristics
OpenSplice DDS




                                   TIME BASED          DR             N              Y
                                      FILTER
                                  OWNERSHIP         T, DR, DW         Y              N
                                  OWNERSHIP            DW             N              Y             Replication
                                  STRENGTH
                                   LIVELINESS       T, DR, DW         Y              N           Fault-Detection
OpenSplice DDS




                      Partition
                                                                                            Data Delivery
                                                                             Reliability




   Presentation
                    Data Delivery
                    Order
                  Destination




                   Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
Data Availability
                                  History




                                                            Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                                   Data
OpenSplice DDS




                     Lifespan                  Durability
                                Availability


                                               Ownership
                                 Ownership
                                                Strength
Temporal Properties




                                                                                         Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                      TimeBasedFilter                                    Deadline

                    [Inbound]
OpenSplice DDS




                       Throughput                    LatencyBudget      Latency
                                        [Outbound]




                                                                     TransportPriority
HLA QoS Policies




                                                                                            Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   HLA provides roughly only two policies, one for controlling the
                      reliability and the other for controlling the ordering of data
OpenSplice DDS




                  ☐   HLA ties policies with data thus does not allow different producer/
                      consumers to refine the QoS with which data is produced/
                      consumed
Time Management
                                DDS                                  HLA




                                                                                                   Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   Along with automatic time-      ☐   HLA provides support for:
                      stamping based on real-time,        ☐   Event Driven Simulation
                      DDS provides an API for time-       ☐   Time Stepped Simulation
OpenSplice DDS




                      stamping messages                   ☐   Parallel Discrete-Event Simulation
                  ☐   This API can be used to
                                                          ☐   Wall-clock-time Simulation
                      implement logical clocks
                                                      ☐   The HLA Time Service provides
                                                          primitives to coordinate and
                                                          control the advancement of time
DDS Performance
OpenSplice DDS
Local Latency




                                                    Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                 ☐   Inter-Core latency can be as
                     low as 10 usec!
                     Latency distribution
OpenSplice DDS




                 ☐
                     predictable with:
                     ☐   IQR <= 0.5 usec
                     ☐   99% - Min <= 4 usec
Head of Line Blocking




                                                Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   Concurrent application
                      w/o real-time
                      networking might
OpenSplice DDS




                      provoke unbounded
                      priority inversion
                  ☐   ...OpenSplice can avoid
                      this...
The Lane’s Effect




                                                 Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐   The proper configuration
                      of network lanes can
                      eliminate (or bound) the
OpenSplice DDS




                      priority inversion
                      introduced by the head-
                      of-line blocking
OpenSplice DDS


                                                                                    Real-Time Determinism




           Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
Integration DDS and HLA
                         -Live Demo-
OpenSplice DDS
OpenSplice DDS




                 Summing Up
Concluding Remarks
                      DDS provides a very powerful and high-performance infrastructure




                                                                                         Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  ☐
                      for data distribution

                  ☐   When compared to HLA, DDS stands out for its support for
                      evolvability and dynamic systems/federations
OpenSplice DDS




                  ☐   On the down-side, DDS is a technology that was designed for
                      Operational Systems, as such it does not provide mechanisms such
                      as Time Management. However these mechanisms can easily be
                      implemented over DDS
OpenSplice DDS
References




                                                                                                                          Copyright	
  2011,	
  PrismTech	
  –	
  	
  All	
  Rights	
  Reserved.
                  OpenSplice | DDS                                                    Escalier
                  ¥ #1 OMG DDS Implementation   ¥ Fastest growing JVM Language      ¥ Scala API for OpenSplice DDS
                  ¥ Open Source                 ¥ Open Source                       ¥ Open Source
                  ¥ www.opensplice.org          ¥ www.scala-lang.org                ¥ github.com/kydos/escalier
OpenSplice DDS




                 ¥ Simple C++ API for DDS       ¥ DDS-PSM-Java for OpenSplice DDS   ¥ DDS-based Advanced Distributed
                 ¥ Open Source                  ¥ Open Source                          Algorithms Toolkit
                 ¥ github.com/kydos/simd-cxx    ¥ github.com/kydos/simd-java        ¥ Open Source
                                                                                      ¥ github.com/kydos/dada
:: Connect with Us ::



                   ¥opensplice.com             ¥forums.opensplice.org
                                                                                         ¥@acorsaro
                   ¥opensplice.org             ¥opensplicedds@prismtech.com                 ¥@prismtech
OpenSplice DDS




                                                                                         ¥ crc@prismtech.com
                                                                                         ¥sales@prismtech.com
                 ¥youtube.com/opensplicetube          ¥slideshare.net/angelo.corsaro

Weitere ähnliche Inhalte

Was ist angesagt?

The Data Distribution Service
The Data Distribution ServiceThe Data Distribution Service
The Data Distribution ServiceAngelo Corsaro
 
The DDS Tutorial - Part I
The DDS Tutorial - Part IThe DDS Tutorial - Part I
The DDS Tutorial - Part IAngelo Corsaro
 
Introduction to DDS
Introduction to DDSIntroduction to DDS
Introduction to DDSRick Warren
 
RTI Data-Distribution Service (DDS) Master Class - 2010
RTI Data-Distribution Service (DDS) Master Class - 2010RTI Data-Distribution Service (DDS) Master Class - 2010
RTI Data-Distribution Service (DDS) Master Class - 2010Gerardo Pardo-Castellote
 
DDS in Action -- Part I
DDS in Action -- Part IDDS in Action -- Part I
DDS in Action -- Part IAngelo Corsaro
 
Cloud Security: A New Perspective
Cloud Security: A New PerspectiveCloud Security: A New Perspective
Cloud Security: A New PerspectiveWen-Pai Lu
 
Cloud Security Architecture.pptx
Cloud Security Architecture.pptxCloud Security Architecture.pptx
Cloud Security Architecture.pptxMoshe Ferber
 
Chap 6 cloud security
Chap 6 cloud securityChap 6 cloud security
Chap 6 cloud securityRaj Sarode
 
OpenSplice DDS Tutorial -- Part II
OpenSplice DDS Tutorial -- Part IIOpenSplice DDS Tutorial -- Part II
OpenSplice DDS Tutorial -- Part IIAngelo Corsaro
 
DDS Tutorial -- Part I
DDS Tutorial -- Part IDDS Tutorial -- Part I
DDS Tutorial -- Part IAngelo Corsaro
 
Getting Started in DDS with C++ and Java
Getting Started in DDS with C++ and JavaGetting Started in DDS with C++ and Java
Getting Started in DDS with C++ and JavaAngelo Corsaro
 
Cloud Security Strategy
Cloud Security StrategyCloud Security Strategy
Cloud Security StrategyCapgemini
 
The DDS Security Standard
The DDS Security StandardThe DDS Security Standard
The DDS Security StandardAngelo Corsaro
 
The Data Distribution Service
The Data Distribution ServiceThe Data Distribution Service
The Data Distribution ServiceAngelo Corsaro
 
The Data Distribution Service Tutorial
The Data Distribution Service TutorialThe Data Distribution Service Tutorial
The Data Distribution Service TutorialAngelo Corsaro
 

Was ist angesagt? (20)

The Data Distribution Service
The Data Distribution ServiceThe Data Distribution Service
The Data Distribution Service
 
The DDS Tutorial - Part I
The DDS Tutorial - Part IThe DDS Tutorial - Part I
The DDS Tutorial - Part I
 
Introduction to DDS
Introduction to DDSIntroduction to DDS
Introduction to DDS
 
cloud security ppt
cloud security ppt cloud security ppt
cloud security ppt
 
RTI Data-Distribution Service (DDS) Master Class - 2010
RTI Data-Distribution Service (DDS) Master Class - 2010RTI Data-Distribution Service (DDS) Master Class - 2010
RTI Data-Distribution Service (DDS) Master Class - 2010
 
DDS in Action -- Part I
DDS in Action -- Part IDDS in Action -- Part I
DDS in Action -- Part I
 
Cloud Security: A New Perspective
Cloud Security: A New PerspectiveCloud Security: A New Perspective
Cloud Security: A New Perspective
 
DDS Secure Intro
DDS Secure IntroDDS Secure Intro
DDS Secure Intro
 
Cloud Security Architecture.pptx
Cloud Security Architecture.pptxCloud Security Architecture.pptx
Cloud Security Architecture.pptx
 
Chap 6 cloud security
Chap 6 cloud securityChap 6 cloud security
Chap 6 cloud security
 
OpenSplice DDS Tutorial -- Part II
OpenSplice DDS Tutorial -- Part IIOpenSplice DDS Tutorial -- Part II
OpenSplice DDS Tutorial -- Part II
 
DDS QoS Unleashed
DDS QoS UnleashedDDS QoS Unleashed
DDS QoS Unleashed
 
DDS Tutorial -- Part I
DDS Tutorial -- Part IDDS Tutorial -- Part I
DDS Tutorial -- Part I
 
Security in Cloud Computing
Security in Cloud ComputingSecurity in Cloud Computing
Security in Cloud Computing
 
Getting Started in DDS with C++ and Java
Getting Started in DDS with C++ and JavaGetting Started in DDS with C++ and Java
Getting Started in DDS with C++ and Java
 
Cloud Security Strategy
Cloud Security StrategyCloud Security Strategy
Cloud Security Strategy
 
The DDS Security Standard
The DDS Security StandardThe DDS Security Standard
The DDS Security Standard
 
The Data Distribution Service
The Data Distribution ServiceThe Data Distribution Service
The Data Distribution Service
 
DDS Over Low Bandwidth Data Links
DDS Over Low Bandwidth Data LinksDDS Over Low Bandwidth Data Links
DDS Over Low Bandwidth Data Links
 
The Data Distribution Service Tutorial
The Data Distribution Service TutorialThe Data Distribution Service Tutorial
The Data Distribution Service Tutorial
 

Andere mochten auch

DDS in SCADA, Utilities, Smart Grid and Smart Cities
DDS in SCADA, Utilities, Smart Grid and Smart CitiesDDS in SCADA, Utilities, Smart Grid and Smart Cities
DDS in SCADA, Utilities, Smart Grid and Smart CitiesAngelo Corsaro
 
OMG Data-Distribution Service (DDS) Tutorial - 2009
OMG Data-Distribution Service (DDS) Tutorial - 2009OMG Data-Distribution Service (DDS) Tutorial - 2009
OMG Data-Distribution Service (DDS) Tutorial - 2009Gerardo Pardo-Castellote
 
Nads 2012 itec2012 innovationshowcase 22 may 2012
Nads 2012 itec2012 innovationshowcase 22 may 2012 Nads 2012 itec2012 innovationshowcase 22 may 2012
Nads 2012 itec2012 innovationshowcase 22 may 2012 José Ramón Martínez Salio
 
A new approach for converging LVC simulation architectures
A new approach for converging LVC simulation architecturesA new approach for converging LVC simulation architectures
A new approach for converging LVC simulation architecturesJosé Ramón Martínez Salio
 
Android internals 02 - High-level architecture, version control system (rev_1.1)
Android internals 02 - High-level architecture, version control system (rev_1.1)Android internals 02 - High-level architecture, version control system (rev_1.1)
Android internals 02 - High-level architecture, version control system (rev_1.1)Egor Elizarov
 
Android internals 03 - Build system, emulator (rev_1.1)
Android internals 03 - Build system, emulator (rev_1.1)Android internals 03 - Build system, emulator (rev_1.1)
Android internals 03 - Build system, emulator (rev_1.1)Egor Elizarov
 
Archydro
ArchydroArchydro
Archydroabkhiz
 
Sunshine coast admin
Sunshine coast adminSunshine coast admin
Sunshine coast adminFaye Brownlie
 
White Paper: The Value Of Bim For Lifecycle Management In Critical Facilities...
White Paper: The Value Of Bim For Lifecycle Management In Critical Facilities...White Paper: The Value Of Bim For Lifecycle Management In Critical Facilities...
White Paper: The Value Of Bim For Lifecycle Management In Critical Facilities...AndyFuhrman
 

Andere mochten auch (20)

DDS in SCADA, Utilities, Smart Grid and Smart Cities
DDS in SCADA, Utilities, Smart Grid and Smart CitiesDDS in SCADA, Utilities, Smart Grid and Smart Cities
DDS in SCADA, Utilities, Smart Grid and Smart Cities
 
OMG Data-Distribution Service (DDS) Tutorial - 2009
OMG Data-Distribution Service (DDS) Tutorial - 2009OMG Data-Distribution Service (DDS) Tutorial - 2009
OMG Data-Distribution Service (DDS) Tutorial - 2009
 
Nads 2012 itec2012 innovationshowcase 22 may 2012
Nads 2012 itec2012 innovationshowcase 22 may 2012 Nads 2012 itec2012 innovationshowcase 22 may 2012
Nads 2012 itec2012 innovationshowcase 22 may 2012
 
SimWare rti hello world: Webinar
SimWare rti hello world: WebinarSimWare rti hello world: Webinar
SimWare rti hello world: Webinar
 
A new approach for converging LVC simulation architectures
A new approach for converging LVC simulation architecturesA new approach for converging LVC simulation architectures
A new approach for converging LVC simulation architectures
 
Simware Simdeveloper
Simware SimdeveloperSimware Simdeveloper
Simware Simdeveloper
 
Added value of SimWare
Added value of SimWareAdded value of SimWare
Added value of SimWare
 
Nads 2012
Nads 2012Nads 2012
Nads 2012
 
Simware RTI Empowering hla with dds
Simware RTI Empowering hla with ddsSimware RTI Empowering hla with dds
Simware RTI Empowering hla with dds
 
Simware in full
Simware in fullSimware in full
Simware in full
 
Simware framework hello world: A webinar
Simware framework hello world: A webinarSimware framework hello world: A webinar
Simware framework hello world: A webinar
 
Omg dds berlin 2013
Omg dds berlin 2013Omg dds berlin 2013
Omg dds berlin 2013
 
Structural organization of LSA architecture
Structural organization of LSA architectureStructural organization of LSA architecture
Structural organization of LSA architecture
 
Nogesi case study as LSA proof of concept
Nogesi case study as LSA proof of conceptNogesi case study as LSA proof of concept
Nogesi case study as LSA proof of concept
 
Android internals 02 - High-level architecture, version control system (rev_1.1)
Android internals 02 - High-level architecture, version control system (rev_1.1)Android internals 02 - High-level architecture, version control system (rev_1.1)
Android internals 02 - High-level architecture, version control system (rev_1.1)
 
Android internals 03 - Build system, emulator (rev_1.1)
Android internals 03 - Build system, emulator (rev_1.1)Android internals 03 - Build system, emulator (rev_1.1)
Android internals 03 - Build system, emulator (rev_1.1)
 
Time managment service over DDS
Time managment service over DDSTime managment service over DDS
Time managment service over DDS
 
Archydro
ArchydroArchydro
Archydro
 
Sunshine coast admin
Sunshine coast adminSunshine coast admin
Sunshine coast admin
 
White Paper: The Value Of Bim For Lifecycle Management In Critical Facilities...
White Paper: The Value Of Bim For Lifecycle Management In Critical Facilities...White Paper: The Value Of Bim For Lifecycle Management In Critical Facilities...
White Paper: The Value Of Bim For Lifecycle Management In Critical Facilities...
 

Ähnlich wie Distributed Simulations with DDS and HLA

Getting Started with OpenSplice DDS Community Ed.
Getting Started with OpenSplice DDS Community Ed.Getting Started with OpenSplice DDS Community Ed.
Getting Started with OpenSplice DDS Community Ed.Angelo Corsaro
 
Tuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS ApplicationsTuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS ApplicationsAngelo Corsaro
 
DDS for JMS Programmers
DDS for JMS ProgrammersDDS for JMS Programmers
DDS for JMS ProgrammersAngelo Corsaro
 
The Present and Future of DDS
The Present and Future of DDSThe Present and Future of DDS
The Present and Future of DDSAngelo Corsaro
 
Standardizing the Data Distribution Service (DDS) API for Modern C++
Standardizing the Data Distribution Service (DDS) API for Modern C++Standardizing the Data Distribution Service (DDS) API for Modern C++
Standardizing the Data Distribution Service (DDS) API for Modern C++Sumant Tambe
 
10 Reasons for Choosing OpenSplice DDS
10 Reasons for Choosing OpenSplice DDS10 Reasons for Choosing OpenSplice DDS
10 Reasons for Choosing OpenSplice DDSAngelo Corsaro
 
Tweeting with OpenSplice DDS
Tweeting with OpenSplice DDSTweeting with OpenSplice DDS
Tweeting with OpenSplice DDSAngelo Corsaro
 
Advanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part IAdvanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part IAngelo Corsaro
 
Introduction to OMG DDS (1 hour, 45 slides)
Introduction to OMG DDS (1 hour, 45 slides)Introduction to OMG DDS (1 hour, 45 slides)
Introduction to OMG DDS (1 hour, 45 slides)Gerardo Pardo-Castellote
 
SIMWARE RTI : HLA powered by DDS
SIMWARE RTI : HLA powered by DDSSIMWARE RTI : HLA powered by DDS
SIMWARE RTI : HLA powered by DDSSimware
 
Advanced OpenSplice Programming - Part II
Advanced OpenSplice Programming - Part IIAdvanced OpenSplice Programming - Part II
Advanced OpenSplice Programming - Part IIAngelo Corsaro
 
High Performance Distributed Computing with DDS and Scala
High Performance Distributed Computing with DDS and ScalaHigh Performance Distributed Computing with DDS and Scala
High Performance Distributed Computing with DDS and ScalaAngelo Corsaro
 
OMG DDS: The Data Distribution Service for Real-Time Systems
OMG DDS: The Data Distribution Service for Real-Time SystemsOMG DDS: The Data Distribution Service for Real-Time Systems
OMG DDS: The Data Distribution Service for Real-Time SystemsAngelo Corsaro
 
OMG DDS Tutorial - Part I
OMG DDS Tutorial - Part IOMG DDS Tutorial - Part I
OMG DDS Tutorial - Part IAngelo Corsaro
 

Ähnlich wie Distributed Simulations with DDS and HLA (20)

Getting Started with OpenSplice DDS Community Ed.
Getting Started with OpenSplice DDS Community Ed.Getting Started with OpenSplice DDS Community Ed.
Getting Started with OpenSplice DDS Community Ed.
 
Tuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS ApplicationsTuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS Applications
 
DDS for JMS Programmers
DDS for JMS ProgrammersDDS for JMS Programmers
DDS for JMS Programmers
 
The Present and Future of DDS
The Present and Future of DDSThe Present and Future of DDS
The Present and Future of DDS
 
Business Models for Interoperability
Business Models for InteroperabilityBusiness Models for Interoperability
Business Models for Interoperability
 
Standardizing the Data Distribution Service (DDS) API for Modern C++
Standardizing the Data Distribution Service (DDS) API for Modern C++Standardizing the Data Distribution Service (DDS) API for Modern C++
Standardizing the Data Distribution Service (DDS) API for Modern C++
 
10 Reasons for Choosing OpenSplice DDS
10 Reasons for Choosing OpenSplice DDS10 Reasons for Choosing OpenSplice DDS
10 Reasons for Choosing OpenSplice DDS
 
Tweeting with OpenSplice DDS
Tweeting with OpenSplice DDSTweeting with OpenSplice DDS
Tweeting with OpenSplice DDS
 
Cloudand Xchange
Cloudand XchangeCloudand Xchange
Cloudand Xchange
 
Advanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part IAdvanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part I
 
What Can DDS Do For You?
What Can DDS Do For You?What Can DDS Do For You?
What Can DDS Do For You?
 
Introduction to OMG DDS (1 hour, 45 slides)
Introduction to OMG DDS (1 hour, 45 slides)Introduction to OMG DDS (1 hour, 45 slides)
Introduction to OMG DDS (1 hour, 45 slides)
 
SIMWARE RTI : HLA powered by DDS
SIMWARE RTI : HLA powered by DDSSIMWARE RTI : HLA powered by DDS
SIMWARE RTI : HLA powered by DDS
 
SimWare Rti: HLA raised to the power of DDS
SimWare Rti: HLA raised to the power of DDSSimWare Rti: HLA raised to the power of DDS
SimWare Rti: HLA raised to the power of DDS
 
Advanced OpenSplice Programming - Part II
Advanced OpenSplice Programming - Part IIAdvanced OpenSplice Programming - Part II
Advanced OpenSplice Programming - Part II
 
High Performance Distributed Computing with DDS and Scala
High Performance Distributed Computing with DDS and ScalaHigh Performance Distributed Computing with DDS and Scala
High Performance Distributed Computing with DDS and Scala
 
OMG DDS: The Data Distribution Service for Real-Time Systems
OMG DDS: The Data Distribution Service for Real-Time SystemsOMG DDS: The Data Distribution Service for Real-Time Systems
OMG DDS: The Data Distribution Service for Real-Time Systems
 
SimWare and the new LSA study group on SISO
SimWare and the new LSA study group on SISOSimWare and the new LSA study group on SISO
SimWare and the new LSA study group on SISO
 
DDS Everywhere
DDS EverywhereDDS Everywhere
DDS Everywhere
 
OMG DDS Tutorial - Part I
OMG DDS Tutorial - Part IOMG DDS Tutorial - Part I
OMG DDS Tutorial - Part I
 

Mehr von Angelo Corsaro

zenoh: The Edge Data Fabric
zenoh: The Edge Data Fabriczenoh: The Edge Data Fabric
zenoh: The Edge Data FabricAngelo Corsaro
 
Data Decentralisation: Efficiency, Privacy and Fair Monetisation
Data Decentralisation: Efficiency, Privacy and Fair MonetisationData Decentralisation: Efficiency, Privacy and Fair Monetisation
Data Decentralisation: Efficiency, Privacy and Fair MonetisationAngelo Corsaro
 
zenoh: zero overhead pub/sub store/query compute
zenoh: zero overhead pub/sub store/query computezenoh: zero overhead pub/sub store/query compute
zenoh: zero overhead pub/sub store/query computeAngelo Corsaro
 
zenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolzenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolAngelo Corsaro
 
zenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolzenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolAngelo Corsaro
 
Breaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
Breaking the Edge -- A Journey Through Cloud, Edge and Fog ComputingBreaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
Breaking the Edge -- A Journey Through Cloud, Edge and Fog ComputingAngelo Corsaro
 
fog05: The Fog Computing Infrastructure
fog05: The Fog Computing Infrastructurefog05: The Fog Computing Infrastructure
fog05: The Fog Computing InfrastructureAngelo Corsaro
 
Cyclone DDS: Sharing Data in the IoT Age
Cyclone DDS: Sharing Data in the IoT AgeCyclone DDS: Sharing Data in the IoT Age
Cyclone DDS: Sharing Data in the IoT AgeAngelo Corsaro
 
fog05: The Fog Computing Platform
fog05: The Fog Computing Platformfog05: The Fog Computing Platform
fog05: The Fog Computing PlatformAngelo Corsaro
 
Programming in Scala - Lecture Four
Programming in Scala - Lecture FourProgramming in Scala - Lecture Four
Programming in Scala - Lecture FourAngelo Corsaro
 
Programming in Scala - Lecture Three
Programming in Scala - Lecture ThreeProgramming in Scala - Lecture Three
Programming in Scala - Lecture ThreeAngelo Corsaro
 
Programming in Scala - Lecture Two
Programming in Scala - Lecture TwoProgramming in Scala - Lecture Two
Programming in Scala - Lecture TwoAngelo Corsaro
 
Programming in Scala - Lecture One
Programming in Scala - Lecture OneProgramming in Scala - Lecture One
Programming in Scala - Lecture OneAngelo Corsaro
 
Data Sharing in Extremely Resource Constrained Envionrments
Data Sharing in Extremely Resource Constrained EnvionrmentsData Sharing in Extremely Resource Constrained Envionrments
Data Sharing in Extremely Resource Constrained EnvionrmentsAngelo Corsaro
 
RUSTing -- Partially Ordered Rust Programming Ruminations
RUSTing -- Partially Ordered Rust Programming RuminationsRUSTing -- Partially Ordered Rust Programming Ruminations
RUSTing -- Partially Ordered Rust Programming RuminationsAngelo Corsaro
 
Vortex II -- The Industrial IoT Connectivity Standard
Vortex II -- The  Industrial IoT  Connectivity StandardVortex II -- The  Industrial IoT  Connectivity Standard
Vortex II -- The Industrial IoT Connectivity StandardAngelo Corsaro
 

Mehr von Angelo Corsaro (20)

Zenoh: The Genesis
Zenoh: The GenesisZenoh: The Genesis
Zenoh: The Genesis
 
zenoh: The Edge Data Fabric
zenoh: The Edge Data Fabriczenoh: The Edge Data Fabric
zenoh: The Edge Data Fabric
 
Zenoh Tutorial
Zenoh TutorialZenoh Tutorial
Zenoh Tutorial
 
Data Decentralisation: Efficiency, Privacy and Fair Monetisation
Data Decentralisation: Efficiency, Privacy and Fair MonetisationData Decentralisation: Efficiency, Privacy and Fair Monetisation
Data Decentralisation: Efficiency, Privacy and Fair Monetisation
 
zenoh: zero overhead pub/sub store/query compute
zenoh: zero overhead pub/sub store/query computezenoh: zero overhead pub/sub store/query compute
zenoh: zero overhead pub/sub store/query compute
 
zenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolzenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocol
 
zenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolzenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocol
 
Breaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
Breaking the Edge -- A Journey Through Cloud, Edge and Fog ComputingBreaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
Breaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
 
Eastern Sicily
Eastern SicilyEastern Sicily
Eastern Sicily
 
fog05: The Fog Computing Infrastructure
fog05: The Fog Computing Infrastructurefog05: The Fog Computing Infrastructure
fog05: The Fog Computing Infrastructure
 
Cyclone DDS: Sharing Data in the IoT Age
Cyclone DDS: Sharing Data in the IoT AgeCyclone DDS: Sharing Data in the IoT Age
Cyclone DDS: Sharing Data in the IoT Age
 
fog05: The Fog Computing Platform
fog05: The Fog Computing Platformfog05: The Fog Computing Platform
fog05: The Fog Computing Platform
 
Programming in Scala - Lecture Four
Programming in Scala - Lecture FourProgramming in Scala - Lecture Four
Programming in Scala - Lecture Four
 
Programming in Scala - Lecture Three
Programming in Scala - Lecture ThreeProgramming in Scala - Lecture Three
Programming in Scala - Lecture Three
 
Programming in Scala - Lecture Two
Programming in Scala - Lecture TwoProgramming in Scala - Lecture Two
Programming in Scala - Lecture Two
 
Programming in Scala - Lecture One
Programming in Scala - Lecture OneProgramming in Scala - Lecture One
Programming in Scala - Lecture One
 
Data Sharing in Extremely Resource Constrained Envionrments
Data Sharing in Extremely Resource Constrained EnvionrmentsData Sharing in Extremely Resource Constrained Envionrments
Data Sharing in Extremely Resource Constrained Envionrments
 
RUSTing -- Partially Ordered Rust Programming Ruminations
RUSTing -- Partially Ordered Rust Programming RuminationsRUSTing -- Partially Ordered Rust Programming Ruminations
RUSTing -- Partially Ordered Rust Programming Ruminations
 
Vortex II -- The Industrial IoT Connectivity Standard
Vortex II -- The  Industrial IoT  Connectivity StandardVortex II -- The  Industrial IoT  Connectivity Standard
Vortex II -- The Industrial IoT Connectivity Standard
 
Fog Computing Defined
Fog Computing DefinedFog Computing Defined
Fog Computing Defined
 

Kürzlich hochgeladen

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
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
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
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
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
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
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
 

Kürzlich hochgeladen (20)

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...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
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...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
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...
 

Distributed Simulations with DDS and HLA

  • 1. Distributed Simulations with DDS and HLA OpenSplice DDS Angelo CORSARO, Ph.D. Chief Technology Officer OMG DDS Sig Co-Chair PrismTech angelo.corsaro@prismtech.com José-Ramón Martínez-Salio Technical Sales Engineers Director NADS jrmartinez@nexteleng.es
  • 2. Context Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ DDS is increasingly being adopted in simulation applications either side-by-side with HLA or as a replacement OpenSplice DDS ☐ This webcast provides an objective comparison of DDS and HLA allowing attendees to understand the value that each of these technologies can bring
  • 3. OpenSplice DDS Genesis
  • 4. DDS and HLA Goals DDS HLA Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Foster interoperability and ☐ Foster interoperability and portability of Distributed portability of Distributed OpenSplice DDS Operational Systems Simulation Systems ☐ Address functional and ☐ Address functional non-functional requirements and (some) requirements of non functional requirements Operational Systems of Simulation Systems
  • 5. Standard Scope DDS HLA Copyright  2011,  PrismTech  –    All  Rights  Reserved. Application Federate Data Centric Publish Subscriber (DCPS) Run-Time Infrastructure (RTI) Content Federation Object Time Ownership Durability Subscription Management Managenent Management OpenSplice DDS Minimum Profile Ownership Data Distribution Declaration Management Management Management DDS Interoperability Wire Protocol - DDSI-RTPS UDP/IP Application ☐ DDS and HLA define standardized ways of describing application Data.
  • 6. Standardization History DDS-ISO-Java DDS-RMI UML4DDS DDS4CCM DDS-ISO-C++ DDS-Security Copyright  2011,  PrismTech  –    All  Rights  Reserved. Dec DDS-TCP/IP DDS v1.1 DDS v1.2 DDSI v2.0 DDSI v2.1 DDS-XTopics Dec Jan Apr Jan March Sep 2005 2006 2007 2008 2009 2010 2011 2012 OpenSplice DDS HLA Evolved DDS v1.0 Dec 1996 1997 1998 1999 2000 2001 2003 2004 HLA HLA v1.3 HLA IEEE 1516
  • 7. [DDS/HLA ] Similarities and Differences DDS HLA Copyright  2011,  PrismTech  –    All  Rights  Reserved. API Standard Yes Yes No Wire Protocol Standard Yes (essentially underspecified) OpenSplice DDS Data Modeling Standard Yes (IDL, XML, XSD, UML) Yes (OMT, XML) Static Declaration of FOM Discovery Fully Dynamic Dynamic Matching Pub/Sub Implementation Dependent Architectural Style Fully Distributed (Most implementation have a centralized broker)
  • 8. [DDS/HLA ] Similarities and Differences DDS HLA Per Topic with Content Per Object Attribute Subscription Model Copyright  2011,  PrismTech  –    All  Rights  Reserved. Filters and Queries Per Interaction 2 QoS Policies (Reliability QoS 22 QoS Policies and Ordering) OpenSplice DDS ‣ Dependency on globally ‣ No dependency on global defined FOM Coupling knowledge ‣ Time coupling ‣ Time decoupling ‣ Sophisticated time Time Management ‣ Basic Timestamping management service
  • 9. DDS in Defense and Aerospace Copyright  2011,  PrismTech  –    All  Rights  Reserved. OpenSplice DDS Integrated Modular Vetronics Training & Simulation Systems Naval Combat Systems Air Traffic Control & Management Unmanned Air Vehicles Aerospace Applications
  • 10. DDS in Commercial Applications Copyright  2011,  PrismTech  –    All  Rights  Reserved. OpenSplice DDS Agricultural Vehicle Systems Large Scale SCADA Systems Smart Cities Train Control Systems Complex Medical Devices High Frequency Auto-Trading
  • 11. DDS and HLA Fundamentals OpenSplice DDS
  • 12. Data Distribution Service For Real-Time Systems DDS provides a Topic-Based Publish/ Copyright  2011,  PrismTech  –    All  Rights  Reserved. Subscribe abstraction based on: Data Reader Data Writer ☐ Topics: data distribution subject’s OpenSplice DDS Data Reader Data TopicD Writer DataWriters: data producers TopicA ☐ Data TopicB Reader Data Writer ☐ DataReaders: data consumers TopicC ... Data Data Writer Reader DDS Global Data Space
  • 13. Data Distribution Service For Real-Time Systems Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ DataWriters and DataReaders are automatically and Data Reader dynamically matched by the Data Writer DDS Dynamic Discovery OpenSplice DDS Data Reader Data TopicD Writer TopicA ☐ A rich set of QoS allows the Data Reader TopicB control existential, temporal, Data Writer TopicC ... and spatial properties of data Data Data Writer Reader DDS Global Data Space
  • 14. HLA Federation ☐ An HLA Federation is a collection of Federates (essentially HLA applications) Copyright  2011,  PrismTech  –    All  Rights  Reserved. sharing a common Federation Object Model (FOM) ☐ Each Federate can publish/subscribe a subset Objects Attributes and Interactions defined by the Federation FOM. OpenSplice DDS Federate A Federate B ... Federate K Federation Object Model <FOM> <Shared object classes> <Shared interaction classes> <More> </FOM> RTI (Run-Time Infrastructure)
  • 15. DDS Topics “Circle”, “Square”, “Triangle”, ... ☐ A Topic defines a class of streams Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ A Topic has associated a unique Name name, a user defined extensible type and a set of QoS policies Topic Typ S OpenSplice DDS DURABILITY, Qo ☐ QoS Policies capture the Topic e DEADLINE, ShapeType non-functional invariants PRIORITY, … ☐ Topics can be discovered or locally defined struct ShapeType { @Key string color; long x; long y; long shapesize; };
  • 16. Instances and Samples “Circle”, “Square”, “Triangle”, ... Copyright  2011,  PrismTech  –    All  Rights  Reserved. Name Topic Typ S OpenSplice DDS DURABILITY, Qo e DEADLINE, ShapeType PRIORITY, … struct ShapeType { @Key string color; long x; long y; long shapesize; };
  • 17. HLA Objects Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ HLA Objects identify a class of instances whose (objects (class Shape attributes can be (attribute color reliable timestamp ShapeSpace) individually published/ (attribute (attribute x best_effort timestamp ShapeSpace) y best_effort timestamp ShapeSpace) OpenSplice DDS subscribed ) (attribute shapesize reliable timestamp ShapeSpace) ) ☐ QoS are controlled at an attribute-level ☐ Object attributes can be bound to spaces and dimensions to organize/partition the data distribution
  • 18. HLA Interactions Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ HLA Interactions are used to model consumable events OpenSplice DDS (interactions ☐ Interactions are (class ShapeCollision reliable timestamp ShapeSpace published/subscribed as (attribute x) (attribute y) atomically ) ) ☐ QoS is attached with the interaciton
  • 19. Polymorphism DDS HLA Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ DDS is equipped with a ☐ HLA provides supports for structural type system where traditional subtype polymorphism subtype relationships are as supported in declarative deduced based on type nominal type systems OpenSplice DDS properties as opposed to syntactical declaration ☐ HLA supports only single inheritance ☐ This means that a subscription for a type X matches a ☐ This means that a subscription for a publication for a type Y iff Y <: type X matches a publication for a X (the subtype property is type Y iff Y <: X antisymmetric, reflexive, and transitive)
  • 20. Polymorphism Point GPoint x: long x: long y: long y: long Copyright  2011,  PrismTech  –    All  Rights  Reserved. z: long t: long Point3D z: long OpenSplice DDS DDS HLA ☐ Point3D <: Point ☐ Point3D <: Point ☐ GPoint <: Point3D
  • 21. Anatomy of a DDS Application Domain (e.g. Domain 123) Domain Copyright  2011,  PrismTech  –    All  Rights  Reserved. Participant Topic Partition (e.g. “Telemetry”, “Shapes”, ) OpenSplice DDS T1 Publisher T1 T3 Subscriber Topic Instances/Samples Tx Ty Tb Ta DataWrter DataReader Tc
  • 22. OpenSplice DDS Federation Spaces Y.d X.a K X.b I Y.c J Federate Ambassador Anatomy of a HLA Application Copyright  2011,  PrismTech  –    All  Rights  Reserved.
  • 23. Data Selection DDS HLA Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Pub/Sub granularity is the ☐ Pub/Sub granularity are Topic attributes for Object and ☐ Data can be organized the whole class for an Interaction OpenSplice DDS into Partitions. Partitions matching is based on ☐ Data can be organized in regular expression Spaces and Dimensions ☐ Content Filters and Queries can be used to select the data that is received
  • 24. DDS Partitions Matching Domain Partitions DDS Publishers and Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Subscribers can specify a M:0:0 M:0:1 M:0:2 list of regular expressions representing the partitions to join OpenSplice DDS M:1:0 M:1:1 M:1:2 ☐ Actual partition can be any string, but some M:2:0 M:2:1 M:2:2 structure can be given in order mimic hierarchy
  • 25. DDS Partitions Matching Domain Partitions Copyright  2011,  PrismTech  –    All  Rights  Reserved. M:0:0 M:0:1 M:0:2 M:0:* OpenSplice DDS M:1:0 M:1:1 M:1:2 M:2:0 M:2:1 M:2:2
  • 26. DDS Partitions Matching Domain Partitions Copyright  2011,  PrismTech  –    All  Rights  Reserved. M:0:0 M:0:1 M:0:2 OpenSplice DDS M:1:0 M:1:1 M:1:2 M:2:0 M:2:1 M:2:2 M:*:2
  • 27. DDS Partitions Matching Domain Partitions Copyright  2011,  PrismTech  –    All  Rights  Reserved. M:0:0 M:0:1 M:0:2 OpenSplice DDS M:1:0 M:1:1 M:1:2 M:2:0 M:2:1 M:2:2 M:0:0, M:1:1, M:2:2
  • 28. Anatomy of a DDS Application [DDS C++ API 2010] Domain Domain Copyright  2011,  PrismTech  –    All  Rights  Reserved. auto dp = DomainParticipant(domainId); Participant Session // Create a Topic auto topic = Topic<ShapeType>(dp, “Circle”) Publisher Topic Subscriber OpenSplice DDS // Create a Publisher / Subscriber auto pub = Publisher(dp) auto sub = Subscriber(dp) Reader/Writers for User Defined for Types DataWriter DataReader // Create a DataWriter/DataWriter auto writer = DataWriter<ShapeType>(pub, topic); Reader/Writer for auto reader = DataReader<ShapeType>(sub, topic); application defined Topic Types
  • 29. Anatomy of a DDS Application [DDS C++ API 2010] Domain Domain Copyright  2011,  PrismTech  –    All  Rights  Reserved. auto dp = DomainParticipant(domainId); Participant Session // Create a Topic auto topic = Topic<ShapeType>(dp, “Circle”) Publisher Topic Subscriber OpenSplice DDS // Create a Publisher / Subscriber auto pub = Publisher(dp) auto sub = Subscriber(dp) Reader/Writers for User Defined for Types DataWriter DataReader // Write data writer.write(ShapeType(“RED”, 131, 107, 89)); Reader/Writer for // But you can also write like this... writer << ShapeType(“RED”, 131, 107, 89); application defined Topic Types // Read new data (loaned) auto data = reader.read();
  • 30. Anatomy of an HLA Application using namespace std; int main( int argc, char *argv[] ) { // 1. create the RTIambassador that we are going to work with Federation RTI::RTIambassador* rtiamb = 0; Copyright  2011,  PrismTech  –    All  Rights  Reserved. rtiamb = new RTI::RTIambassador(); // 2. create the federation execution rtiamb->createFederationExecution( "exampleFederation", "testfom.fed" ); cout << "Created federation" << endl; // 3. join the federation execution Federate RTI::FederateAmbassador* fedamb = new MyFedAmb(); rtiamb->joinFederationExecution( "myFederate", "exampleFederation", fedamb ); OpenSplice DDS cout << "Joined federation" << endl; // Pub/Sub... // 4. resign from the federation execution rtiamb->resignFederationExecution( RTI::DELETE_OBJECTS_AND_RELEASE_ATTRIBUTES ); cout << "Resigned from federation" << endl; // 5. destroy the federation execution rtiamb->destroyFederationExecution( "exampleFederation" ); cout << "Destroyed federation" << endl; // 6. do some cleanup and exit delete rtiamb; return 0; }
  • 32. DDS QoS Model ☐ QoS-Policies control local and end-to-end properties of DDS Copyright  2011,  PrismTech  –    All  Rights  Reserved. Type Matching entities QoS matching QoS QoS QoS QoS QoS QoS QoS ☐ Local properties controlled by Topic Name QoS are related resource usage Publisher Subscriber ... DataWriter writes Type reads DataReader ... ... OpenSplice DDS ☐ End-to-end properties DomainParticipant DataWriter writes Type reads DataReader DomainParticipant controlled by QoS are related Topic Name to temporal and spatial aspects QoS QoS QoS of data distribution ☐ Some QoS-Policies are matched based on a Request vs. Offered Model thus QoS-enforcement
  • 33. DDS QoS Policies [T: Topic] [DR: DataReader] [DW: DataWriter] [P: Publisher] [S: Subscriber] [DP: Domain Participant] QoS Policy Applicability RxO Modifiable Copyright  2011,  PrismTech  –    All  Rights  Reserved. USER_DATA DP, DR, DW N Y TOPIC_DATA T N Y Configuration GROUP_DATA P, S N Y DURABILITY T, DR, DW Y N OpenSplice DDS DURABILITY T, DW N N SERVICE Data Availability HISTORY T, DR, DW N N PRESENTATION P, S Y N RELIABILITY T, DR, DW Y N PARTITION P, S N Y Data Delivery DESTINATION T, DR, DW Y N ORDER LIFESPAN T, DW N Y
  • 34. DDS QoS Policies [T: Topic] [DR: DataReader] [DW: DataWriter] [P: Publisher] [S: Subscriber] [DP: Domain Participant] QoS Policy Applicability RxO Modifiable Copyright  2011,  PrismTech  –    All  Rights  Reserved. DEADLINE T, DR, DW Y Y LATENCY T, DR, DW Y Y BUDGET Temporal/ TRANSPORT T, DW N Y Importance PRIORITY Characteristics OpenSplice DDS TIME BASED DR N Y FILTER OWNERSHIP T, DR, DW Y N OWNERSHIP DW N Y Replication STRENGTH LIVELINESS T, DR, DW Y N Fault-Detection
  • 35. OpenSplice DDS Partition Data Delivery Reliability Presentation Data Delivery Order Destination Copyright  2011,  PrismTech  –    All  Rights  Reserved.
  • 36. Data Availability History Copyright  2011,  PrismTech  –    All  Rights  Reserved. Data OpenSplice DDS Lifespan Durability Availability Ownership Ownership Strength
  • 37. Temporal Properties Copyright  2011,  PrismTech  –    All  Rights  Reserved. TimeBasedFilter Deadline [Inbound] OpenSplice DDS Throughput LatencyBudget Latency [Outbound] TransportPriority
  • 38. HLA QoS Policies Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ HLA provides roughly only two policies, one for controlling the reliability and the other for controlling the ordering of data OpenSplice DDS ☐ HLA ties policies with data thus does not allow different producer/ consumers to refine the QoS with which data is produced/ consumed
  • 39. Time Management DDS HLA Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Along with automatic time- ☐ HLA provides support for: stamping based on real-time, ☐ Event Driven Simulation DDS provides an API for time- ☐ Time Stepped Simulation OpenSplice DDS stamping messages ☐ Parallel Discrete-Event Simulation ☐ This API can be used to ☐ Wall-clock-time Simulation implement logical clocks ☐ The HLA Time Service provides primitives to coordinate and control the advancement of time
  • 41. Local Latency Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Inter-Core latency can be as low as 10 usec! Latency distribution OpenSplice DDS ☐ predictable with: ☐ IQR <= 0.5 usec ☐ 99% - Min <= 4 usec
  • 42. Head of Line Blocking Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Concurrent application w/o real-time networking might OpenSplice DDS provoke unbounded priority inversion ☐ ...OpenSplice can avoid this...
  • 43. The Lane’s Effect Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ The proper configuration of network lanes can eliminate (or bound) the OpenSplice DDS priority inversion introduced by the head- of-line blocking
  • 44. OpenSplice DDS Real-Time Determinism Copyright  2011,  PrismTech  –    All  Rights  Reserved.
  • 45. Integration DDS and HLA -Live Demo- OpenSplice DDS
  • 46. OpenSplice DDS Summing Up
  • 47. Concluding Remarks DDS provides a very powerful and high-performance infrastructure Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ for data distribution ☐ When compared to HLA, DDS stands out for its support for evolvability and dynamic systems/federations OpenSplice DDS ☐ On the down-side, DDS is a technology that was designed for Operational Systems, as such it does not provide mechanisms such as Time Management. However these mechanisms can easily be implemented over DDS
  • 49. References Copyright  2011,  PrismTech  –    All  Rights  Reserved. OpenSplice | DDS Escalier ¥ #1 OMG DDS Implementation ¥ Fastest growing JVM Language ¥ Scala API for OpenSplice DDS ¥ Open Source ¥ Open Source ¥ Open Source ¥ www.opensplice.org ¥ www.scala-lang.org ¥ github.com/kydos/escalier OpenSplice DDS ¥ Simple C++ API for DDS ¥ DDS-PSM-Java for OpenSplice DDS ¥ DDS-based Advanced Distributed ¥ Open Source ¥ Open Source Algorithms Toolkit ¥ github.com/kydos/simd-cxx ¥ github.com/kydos/simd-java ¥ Open Source ¥ github.com/kydos/dada
  • 50. :: Connect with Us :: ¥opensplice.com ¥forums.opensplice.org ¥@acorsaro ¥opensplice.org ¥opensplicedds@prismtech.com ¥@prismtech OpenSplice DDS ¥ crc@prismtech.com ¥sales@prismtech.com ¥youtube.com/opensplicetube ¥slideshare.net/angelo.corsaro