Milsoft dds overview


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Milsoft dds overview

  1. 1. DDS Middleware MilSOFT UNCLASSIFIED 1/19
  2. 2. DDS Specification• Data Distribution Service for Real-time Systems • Data-Centric Publish-Subscribe • Object Management Group (OMG) standard • Version 1.0 adopted in 2004 • Current Version: Version 1.2 adopted in 2006 MilSOFT UNCLASSIFIED 2/19
  3. 3. What is DDS?• DDS is a middleware that provides a DATA CENTRIC PUBLISH- SUBSCRIBE mechanism for distributed applications and systems.• Key Points of DDS: • Publish – Subscribe Mechanism • Data Centricity • Distributed applications communicate by sending (publishing) and receiving (subscribing) data anonymously• Only properties publishers and subscribers need to know are • Name, • Definition of the data• Publishers and subscribers do not need to know any other information about each other MilSOFT UNCLASSIFIED 3/19
  4. 4. Data Centric Architecture• Middleware aware of data content• Lifecycle of data is managed by DDS• Behavior of data is managed through QoS• Data is similar to tables in relational databases MilSOFT UNCLASSIFIED 4/19
  5. 5. DDS Advantages• No Single Point of Failure• No Single Point of Bottleneck• Multicast-enabled• High performance and highly scalable• High Availability• Rich set of quality services MilSOFT UNCLASSIFIED 5/19
  6. 6. MilSOFT DDS Highlights• OMG DDS Spec. 1.2• DDSI (formerly RTPS) 2.1 compliant• Implemented Profiles • Minimum Profile • Persistence Profile • Content Subscription Profile (ContentFilteredTopic YES, QueryCondition YES, multitopic=NO) • Ownership Profile• Operating Systems Supported • Linux • Windows • Solaris • Vx Works• Programming Languages • C++, Java, C# MilSOFT UNCLASSIFIED 6/19
  7. 7. DDS Interoperability Protocol (RTPS)• DDS interoperability : RTPS wire-protocol• Adopted by OMG in June 2006• Version 2.1 in June 2008• Run over multicast and connectionless best-effort transports such as UDP/IP• Data is encapsulated in CDR format MilSOFT UNCLASSIFIED 7/19
  8. 8. Middleware ArchitecturesMILSOFT DDS has decentralizedarchitecture • Higher fault tolerance • Low communication delay MilSOFT UNCLASSIFIED 8/19
  9. 9. MilSOFT DDS Highlights• Design Characteristics • No single point of failure (decentralized arch.) fault tolerance. • No dynamic resource allocation after initialization • Data structures designed efficiently (ProcessFramework). Number of threads and thread switching is minimized. • Minimum std usage• Implementation Details • For data receipt, both synchronous (WaitSet) and asynchronous (Listener) • Zerocopy support • Java, C++ and C# language support • Platform portable (Linux, Solaris, Windows and VxWorks) • Pluggable transport API. UDP IPv4 and Shared Memory were already implemented. 9/29 MilSOFT UNCLASSIFIED 9/19
  10. 10. MilSOFT DDS MiddlewareMilSOFT has developed its own implementation of DDSsince Q.1 of 2004 ( MilSOFT UNCLASSIFIED 10/19
  11. 11. Projects using DDS• MilSOFT DDS • MILSOFT: • Coast Guard Ship Combat Management System • Genesis, MilGEM, New type Submarine, C130 Tactical Data Link Systems • UAV Image Exploitation System • Aselsan • will use MilSOFT DDS in multiple projects MilSOFT UNCLASSIFIED 11/19
  12. 12. MilSOFT DDS Tools Record & Replay 12/29 MilSOFT UNCLASSIFIED 12/19
  13. 13. DDS Modeler• Helps application developers togenerate DDS interface relatedcode• Isolates applicationprogrammers from details ofDDS API thus • Enables faster code development • Avoids programming errors using DDS API • Manages system topic API from single source • Faster integration of existing components without any change on application logic MilSOFT UNCLASSIFIED 13/19
  14. 14. DDS Modeler• Run Mode • Type Mode • Application Mode• Struct (type and topic) data stored into XML file• Type specific code • FooTypeSupport • FooDataReader • FooDataWriter• Generating middleware specific code • Application developers do not need to know programming details of DDS API • Tool usage speeds up software development as major code is generated by tool • It eliminates errors generated while implementing middleware interface • It ensures type consistency and interface control through the project • Easy management of system internal interfaces from configuration control point of view MilSOFT UNCLASSIFIED 14/19
  15. 15. DDS SPY• Listens network and displaysDDS related information • Participating applications to specific DDS • Topics each application publishes or subscribes • Data itself• Injects data into DDS domain • Copy-Paste previously transmitted data and retransmit• Great tool for system integrationand testing MilSOFT UNCLASSIFIED 15/19
  16. 16. DDS SPY Tools• DDSSpy has been designed as a tool for monitoring the system in various perspectives and for injecting timely test data to the system.• User selectable listening mechanism • Auto • Manual• Shows data in multiple views • Current snapshot of the topic • All historical data• Injects data into DDS domain • User can load data from excel file or copy-paste from excel file.• Send more than one topic simultaneously with timestamps MilSOFT UNCLASSIFIED 16/19
  17. 17. Record & Replay• Training• Post-mission analysis• Algorithm analysis 17/29 MilSOFT UNCLASSIFIED 17/19
  18. 18. Quality Attributes Addressed by MilSOFT DDS• Performance • High performance publish-subscribe based DDS middleware • Multicast based data distribution with DDS • Zero-copy and no-dynamic resource allocation implementation• Reliability• Modifiability / Scalability • Layered architecture • Middleware separates application logic from computing resources • Data driven publish/subscribe system enables • No component interdependencies • New component additions without changing other components• Availability • Fault Recovery • DDS Durability Service (transient and persistent data) • Liveliness QoS• Testability • DDS Spy as test and diagnostic tool • Capture and display data • Retransmit data for testing MilSOFT DDS is the key technology for achieving qualities MilSOFT UNCLASSIFIED 18/19
  19. 19. Questions? MilSOFT UNCLASSIFIED 19/19