milsoft dds middleware
TRANSCRIPT
Copyright © MilSOFT,Turkey UNCLASSIFIED 1
Đzzet Emre ÇET ĐNMilSOFT A.S , Teknokent ODTU,Ankara/Turkey
Hüseyin Kutluca, Ertan Deniz, Baris Bal, Murat Kili c, Ugur Cakir
MilSOFT DDS Middleware
Copyright © MilSOFT,Turkey UNCLASSIFIED 2
• Introduction• MilSOFT DDS
• Features• Architecture• RTPS
• Tools• DDS Code Generator• DDS SPY• DDS Tester
• Performance Results• DDS Applications• Conclusion
Outline
Copyright © MilSOFT,Turkey UNCLASSIFIED 3
� C4I� Tactical Data Links
� Link 1, Link 11, Link 16, Link 22
� Naval Combat Management Systems
� Air Defense Systems
� Mission Planning Systems
� Message Handling and Formatted Messages� NATO AdatP-3, US OTH-G, ITU 1371 AIS, NMEA 0183
� Tactical and Strategical Level C2 Information Systems
� Electronic Warfare � EW Operational Support Centers
� EW Pre Mission & Post Mission Support Software
� EW Database Management Systems
� EW System Test and Evaluation
� Threat and Jamming Tech. Analysis
� Image Exploitation Systems
� Embedded Systems� Mission Computer Software
� Maintenance Data Computer Software
� Flight Test Instrumentation System
� SW Development & Verification per DO-178B for FAA Certification
� Simulation and Modeling
� Homeland Security & Emergency Management Systems
� HW Manufacturing Through Subcontract Management
Introduction - Technical Expertise and Capabilities
Copyright © MilSOFT,Turkey UNCLASSIFIED 4
Introduction-DDS Implementation History
• Initially started as a part of Gemkomsis CMS development• R&D project started in 2004
• Supported by Turkish Research and Development Institute• CMS based on OMG standards & OACE
• Common services and functions for naval platforms
• DDS as middleware
• MilSOFT DDS continued as a separate product
• OACE (including DDS) finds its use in multiple projects• Turkish Coast Guard SAR Ship CMS• Multilink Data Link Processor
• UAV Image Exploitation system
Copyright © MilSOFT,Turkey UNCLASSIFIED 5
MilSOFT DDS
• Started with DDS specification 1.0 adopted version• Current version compatible with DDS specification version 1.2• C++ API for applications• RTPS
Copyright © MilSOFT,Turkey UNCLASSIFIED 6
MilSOFT DDS Implemented Features
• Minimum Profile (Complete)• Minimum profile contains just the mandatory features of the DCPS
layer. None of the optional features are included.
• Persistence Profile (Complete)• Persistency profile is completely implemented. Durability service is
designed to be fault tolerant.
• Content Subscription Profile (Partially Implemented )• ContentFilteredTopic and QueryCondition features have been
implemented. MultiTopic has not been implemented yet.
• Ownership Profile (Partially Implemented)• Only History QoS with depth > 1 feature has been implemented.
• Object Model Profile (Not Implemented)• Contains DLRL and Presentation QoS access_scope = GROUP
Copyright © MilSOFT,Turkey UNCLASSIFIED 7
MilSOFT DDS Architecture
• Applications use DDS as library• No shared memory or DDS service per node
• Completely decentralized
• RTPS implemented as the underlying communication protocol• DDS Interoperability wire-protocol
• High performance• Zero-copy• No dynamic resource (memory, thread, etc) allocation after
initialization• Multicast address per topic concept
Copyright © MilSOFT,Turkey UNCLASSIFIED 8
More information on http://dds.milsoft.com.tr
MilSOFT DDS Middleware
Copyright © MilSOFT,Turkey UNCLASSIFIED 9
What Is RTPS?
• DDS interoperability wire protocol• Real-Time Publish Subscribe (RTPS)
• Adopted by OMG in June 2006• MilSOFT started to develop RTPS from draft versions• Runs over multicast and connectionless best-effort transports • Current MilSOFT DDS implements RTPS over UDP
Copyright © MilSOFT,Turkey UNCLASSIFIED 10
DDS Tools
• MilSOFT DDS Automatic Code Generator• MilSOFT DDS SPY• MilSOFT DDS Tester
Copyright © MilSOFT,Turkey UNCLASSIFIED 11
DDS Automatic Code Generator
• Definition of DDS types• IDL like interface data stored into XML file• Generation of type specific files (FooTypeSupport,
FooDataReader, FooDataWriter)• From DDS Code Generator GUI
• From command line using XML file (for automatic builds)
Copyright © MilSOFT,Turkey UNCLASSIFIED 12
DDS Automatic Code Generator
Copyright © MilSOFT,Turkey UNCLASSIFIED 13
DDS Automatic Code Generator
• Generating middleware specific code using DDS Automatic Code Generator has the following benefits:• 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 configurationcontrol point of view
Copyright © MilSOFT,Turkey UNCLASSIFIED 14
DDS Automatic Code Generator
Copyright © MilSOFT,Turkey UNCLASSIFIED 15
DDS SPY-Display Data
• Listens network and displays DDS related information• Participating applications to specific DDS
• Topics each application publishes or subscribes• Data itself
• User selectable listening mechanism • Auto• Manual
•Shows data in multiple views• Current snapshot of the topic• All historical data
Copyright © MilSOFT,Turkey UNCLASSIFIED 16
DDS SPY-Display Data
Copyright © MilSOFT,Turkey UNCLASSIFIED 17
DDS SPY-Inject DDS Data
• Injects data into selected DDS domain• Copy-Paste previously transmitted data and retransmit• User can import MS Excel file for data or copy-paste from MS Excel file.
• Send more than one topic simultaneously with timesta mps• Great tool for system integration and testing
Copyright © MilSOFT,Turkey UNCLASSIFIED 18
DDS SPY-Inject DDS Data
Copyright © MilSOFT,Turkey UNCLASSIFIED 19
MilSOFT DDS Tester
• Automated test tool for applications communicating over DDS middleware
• Allows definition of test suites and test cases• Send and receive topic data to/from middleware• Compare test results with excepted results and show them as
highlighted• Show test results (failed tests, successful tests)
Copyright © MilSOFT,Turkey UNCLASSIFIED 20
MilSOFT DDS Tester
Copyright © MilSOFT,Turkey UNCLASSIFIED 21
MilSOFT DDS Performance Test Results
• Test environment• 2 computers with Intel Xeon 3.0 Ghz processors.
• Fedora Linux 4• Gigabit ethernet switch and LAN
• Test 1: Latency• Ping (Message_size)/pong time(message_size)/2
• ~125 microsecond for best effort @ 1K message size• ~160 microsecond for reliable @ 1K message size
• Test2: Round trip with 4 byte ACK• Ping different message sizes pong is always 4 bytes
• ~230 microsecond for best effort @ 1K message size• ~310 microsecond for reliable @ 1 K message size
• Test3: Throughput• Measure data size received in one second
• ~26.5 MB @ 1K message size• Saturates at 4K message size
Copyright © MilSOFT,Turkey UNCLASSIFIED 22
MilSOFT DDS Applications
• Middleware for CMS, UAV and DLIP product lines
• GEMKOMSIS CMS• Single middleware for handling all communication
• RM and common services on top of DDS
• UAV Video Exploitation System• Stream data/video over DDS middleware
• CAVLIS• Multilink DLIP
Copyright © MilSOFT,Turkey UNCLASSIFIED 23
Conclusion
• MilSOFT DDS• Developed using mature CMMI-5 processes• Fully compliant to standard• Successfully used/tested in multiple C2 projects• Ready for utilization in projects