Weitere ähnliche Inhalte Ähnlich wie 10 Reasons for Choosing OpenSplice DDS (20) Mehr von Angelo Corsaro (20) Kürzlich hochgeladen (20) 10 Reasons for Choosing OpenSplice DDS1. OpenSplice DDS
Delivering Performance, Openness, and Freedom
Angelo Corsaro, Ph.D.
10 Reasons for
Chief Technology Officer
OMG DDS SIG Co-Chair
angelo.corsaro@prismtech.com
OpenSplice DDS
2. Q. Why should I choose OpenSplice DDS?
A. That’s an easy question as it happens to be
much harder to find reasons why not to do so. I am
going to give you 10 good reasons to choose
OpenSplice DDS -- ready to go?
3. Reason #1
• Splice, OpenSplice DDS’ father, was the technology
from which the OMG DDS was most influenced
and from which inherited the Data-Centric
paradigm
4. Addressing Data Distribution Challenges
DDS is standard designed to address the data-distribution challenges across
The OMG DDS Standard a wide class of Defense and Aerospace Applications
‣ Introduced in 2004 to address the Data
Distribution challenges faced by a wide class
of Defense and Aerospace Applications
‣ Key requirement for the standard were its
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
ability to deliver very high performance while
seamlessly scaling from embedded to ultra-
large-scale deployments
‣ Today recommended by key administration
worldwide and widely adopted across several
different application domains, such as,
Automated Trading, Simulations, SCADA,
Telemetry, etc.
© 2009, PrismTech. All Rights Reserved
5. The OMG Data Distribution Service (DDS)
DDS v1.2 API Standard
‣ Language Independent, OS and HW architecture Application
independent Object/Relational Mapping
‣ DCPS. Standard API for Data-Centric, Topic- Data Local Reconstruction Layer (DLRL)
Based, Real-Time Publish/Subscribe
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
Content
‣
Ownership Durability
DLRL. Standard API for creating Object Views out Subscription
of collection of Topics Minimum Profile
Data Centric Publish/Subscribe (DCPS)
DDSI/RTPS v2.1 Wire Protocol Standard
‣ Standard wire protocol allowing interoperability
Real-Time Publish/Subscribe Protocol
DDS Interoperability Wire Protocol
between different implementations of the DDS
standard UDP/IP
‣ Interoperability demonstrated among key DDS
vendors in March 2009
© 2009, PrismTech. All Rights Reserved
6. Reason #2
• OpenSplice DDS is the most complete, and
strictly compliant, implementation of the OMG
DDS Standard on the Market.
7. Standard Coverage
Application
Object/Relational Mapping DCPS
Yes No
Data Local Reconstruction Layer (DLRL) ‣ No other DDS
implementation
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
Content
Ownership Durability
Subscription provides support for
Yes Partial local queries
Minimum Profile
Data Centric Publish/Subscribe (DCPS) ‣ This impedes to fully
exploit the Data-
Real-Time Publish/Subscribe Protocol
Yes Yes Centric Approach
DDS Interoperability Wire Protocol
Be
UDP/IP ot st C
he as
rD ef
DS or
© 2009, PrismTech. All Rights Reserved
8. Topic/Instances/Samples Recap.
Topics
struct ShapeType {
long x; Instances
long y;
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
long shapesize;
string color;
};
#pragma keylist ShapeType color
Samples
ti tj tnow time
© 2009, PrismTech. All Rights Reserved
9. Content Filtering
X0 X1
X0 <= X <= X1
‣ DDS allows to specify content-
filtered Topics for which a a
subset of SQL92 is used to
express the filter condition
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
Y0
‣ Content filters can be applied on
the entire content of the Topic Y0 <= Y <= Y1
Type
‣ Content filters are applied by Y1
DDS each time a new sample is
produced/delivered
(x BETWEEN X0 and X1) AND
(y BETWEEN Y0 and Y1)
© 2009, PrismTech. All Rights Reserved
10. Local Queries
‣ Subscribed Topics can be seen locally as “Tables”
‣ A subset of SQL92 can be used for performing queries on X0
multiple topics as well as natural joins
‣ Queries are Circle Topic
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
performed under Y0
color x y shapesize Y0
user control and red 57 62 50
provide a result that blue 90 85 50
Y0 <= Y <= Y1
depends on the yellow 30 25 50
current snapshot of (x > 25) AND (y < 55)
Y1
the system, e.g.,
samples currently color x y shapesize
available yellow 30 25 50
© 2009, PrismTech. All Rights Reserved
11. From Data To Objects
Without DLRL
class Shape {
public: C++
virtual ~Shape();
virtual void draw(Canvas& c) = 0;
void move(long x, long y);
struct ShapeType {
long x; DDS Point get_pos();
void set_pos(const Point& p);
long y;
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
private:
long shapesize;
ShapeType st_;
string color;
ShapeTypeReader str_;
};
ShapeTypeWriter stw_;
#pragma keylist ShapeType color
};
class Circle : public Shape {
public:
virtual ~Circle();
virtual void draw(Canvas& c);
};
© 2009, PrismTech. All Rights Reserved
12. From Data to Objects
With DLRL
class Shape {
‣ DLRL can automatically reconstruct Topics’ values into public: C++
(multiple) Application Objects Hierarchies virtual ~Shape();
‣ This greatly simplifies development. virtual void draw(Canvas& c) = 0;
void move(long x, long y);
Point get_pos();
void set_pos(const Point& p);
struct ShapeType {
DDS private:
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
long x; long x;
long y; long y;
long shapesize; long shapesize;
string color; string color;
}; };
#pragma keylist ShapeType color class Circle : public Shape {
public:
virtual ~Circle();
virtual void draw(Canvas& c);
};
© 2009, PrismTech. All Rights Reserved
13. Reason #3
• OpenSplice DDS comes into a set of Editions tailored
around the most typical use cases.
• In addition, OpenSplice DDS Editions provides you with the
best-value-per-{dollar|euro|pound} when compared to
equivalent-level editions from other vendors
14. OpenSplice DDS
‣ Product reorganized into Editions
‣ Community Edition
Enterprise Ed.
‣ Compact Edition
‣ Professional Edition
‣ Enterprise Edition Professional Ed.
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
‣ Product Editions provide a a growing set of
Enterprise Ed. Compact Ed.
functionality to address the needs of increasingly
more sophisticated users
‣ The Community Edition is Open Source Community Ed.
‣ Compact, Enterprise and Professional Edition are
available only through Commercial Subscriptions
© 2009, PrismTech. All Rights Reserved
15. Edition Good to know
• Freely available at no cost
• Open Source under LGPL license
• Full DDS Implementation!
• Interoperability Wire Protocol (DDSI/RTPS)
• Real-Time Networking.
• CORBA Co-habitation
• More features than any other DDS implementation
All features included in the Community Edition, plus:
• Eclipse-based Model Driven Tools, to improve your productivity up to 10x
• Rich set of tools for inspecting your DDS applications
• Available via PrismTech through Commercial Subscriptions
All the features included in the Compact Edition, plus:
• Full implementation of the OMG DDS-DLRL Standard to natively integrates DDS
into C++ and Java
• Web connectors
• Available via PrismTech through Commercial Subscriptions
All the features included in the Professional Edition, plus:
• Secure DDS Extension
• Connector to any ODBC 3.0 DBMS (e.g. MySQL, Oracle, etc.)
16. Standing on Giant Shoulders
OMG DDS Standard Compliance
DCPS Profiles
DDSI/
DLRL
Minimum Content Ownership Durability RTPS
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
OpenSplice DDS
Yes Yes Yes Yes No Yes
Community Ed.
Other DDS (Best Case) Yes Partial Yes No* No Yes
OpenSplice DDS provides far more than any other DDS implementation
(*) DURABILITY not built-in the DDS Implementation but available as stand-alone service
© 2009, PrismTech. All Rights Reserved
18. High-Performance on Commodity HW
Throughput -./0/1/23' 456/'
Latency
#+(+%++' &&++%++'
$+(+%++' "*(%)+' ")(%&!' ""&%,&'&+++%++' Inter-Node Latency
!"#$%&#'
‣ 60 usec
"!+%++'
)"#%*)' "++%++'
)$,%$*'
!+(+%++'
)++%++'
Inter-Core Read-Latency
&'$($)$*+%
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
*!#%,&'
‣ 2 usec
!"#$%
,+(+%++' *++%++'
()(!%(*'
#++%++'
(+(+%++' &")&%+)' Inter-Core Latency
‣ <10 usec
$&"%,,'
$++%++'
&!(,%!)'
&+(+%++'
),,%$#' !++%++'
,*+%&)'
!,*%))'
,($%!+' (("%!"'
&&)%*$' $"%"$' ,+%($' ,++%++' HW:
(+%++'
)' &#' ,(' #!' &()' ($#' $&(' &+(!' (+!)' !+"#'
‣ Dell blade-server
!*$$,(*%-./*%
‣ Dual-core, Dual-CPU, AMD Opteron 2.4 Ghz
Test Scenario OS
‣ Linux 2.6.21-1.3194.fc7
‣ Single Threaded Application (multi-threaded networking service) Network
‣ 8192 bit message batches ‣ Gigabit Ethernet cards
‣ Dell PowerConnect 5324 switch
© 2009, PrismTech. All Rights Reserved
20. The Value of Open Source
‣No surprises, the code is under your eyes
‣No Technology Adoption Barriers
‣Better Support
‣Better Quality
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
‣Larger Pool of Talent
‣A Platform for User-Driven Innovation
‣Ideal Platform for Joint Technology Partnerships
‣Security of Supply
‣Better TCO when compared with Proprietary SW
© 2009, PrismTech. All Rights Reserved
22. Angelo Corsaro, PrismTech CTO’s, Invited to provide perspective on
Mission Critical Systems Challenges at PRIT 2009 (www.prit2009.org)
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
© 2009, PrismTech. All Rights Reserved
23. Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
PrismTech taking part at
the MIT Technology
Conference and Industry
Liason 2009
© 2009, PrismTech. All Rights Reserved
24. Multi-Core Ready Architecture
Architectural Highlights
‣ Shared-Memory based
architecture for minimizing
intra-nodal latency, as well as
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
maximizing nodal scalability
‣ Plugglable Service Architecture
‣ Full control over network
scheduling
© 2009, PrismTech. All Rights Reserved
25. Advanced Networking Features
Architecture
‣ Network-channels
Shared Single Copy per Node Shared
‣ Priority bands Pack Across Topics/Applications
‣ Network-partitions Memory Optimal Unmarshaling Memory
‣ Multicast Groups
‣ Traffic-shaping
‣ Burst/Throughput
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
OpenSplice DDS OpenSplice DDS
Binding Binding
Scalability and Efficiency Fault-Tolerance Pre-emptive Network Scheduler
‣ Single shared library for applications ‣ Active Channels Networking Priority Scheduler
Networking
Data Urgency Traffic Pacing
& services ‣ Fall back on next
‣ Ring-fenced shared memory segment highest priority active
Network Channels
channel
‣ Data urgency driven network-packing Priority Bands
Determinism & Safety Traffic Shaping
‣ Preemptive network-scheduler
‣ Data importance based network-channel selection
‣ Partition based multicast-group selection
‣ Managed critical network-resource
© 2009, PrismTech. All Rights Reserved
26. Multi-Protocol
‣ With OpenSplice DDS you can
choose wether to use the Real-
Time Networking Protocol or the
DDSI Interoperability Protocol
based on your system
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
requirements w.r.t. real-time
OpenSplice DDS
behavior, scalability and Real-Time Networking DDSI v2.1
interoperability
‣ OpenSplice DDS can
simultaneously run over its Native
Protocol as well as DDSI thus
allowing you to chose what best
works for you
© 2009, PrismTech. All Rights Reserved
27. Durable Data Technology
Shared Memory Shared Memory
Architecture
‣ Fault-Tolerant Data
Availability Disk Disk
‣ Transient -- on memory OpenSplice DDS OpenSplice DDS OpenSplice DDS OpenSplice DDS
Binding Binding Binding Binding
‣ Persistent -- on disk
Networking Durability Durability Networking
‣ Partitioning Persist Partitions
Persistent Data on Local Disk
‣ DDS Partitions Transient Data in Memory
‣ Alignment Dedicated Persistence Service Alignment Channel
‣ Dedicated Channels
Goal Features
‣ Transient QoS. Keep state-data outside the ‣ Fault-tolerant availability of non-volatile data
scope/lifecycle of its publishers ‣ Efficient delivery of initial data to late-joining applications
‣ Persistence QoS. Keep persistent settings to ‣ Pluggable Durability Service
outlive the system downtime
‣ Automatic alignment of replicated durability-services
© 2009, PrismTech. All Rights Reserved
29. A Technology Ecosystem
★ C, C++
★ C#
★ Tuner Tool ★ Java
★ Logging/Replay
SDK
★ Runtime Monitoring
De e
plo a nc
ym rm
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
o
en
t P erf
★ DDS Touchstone
★Statistics
OpenSplice DDS
★ Linux s MD
orm E
atf
★ Windows
★ Solaris Pl
★ AIX
★ VxWorks Connectors ★ Visual Modeling Tool
★ INTEGRITY ★ Eclipse Based
★ 10x Productivity Boost
★ DBMS
★ WebServices
© 2009, PrismTech. All Rights Reserved
30. Productivity Tools
End-to-End System Design cycle
‣ Information, Application, and Deployment
Modeling
‣ Productive and correctness-enforcing modeling
environment
Information Modeling
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
‣ Graphical system-wide Information and QoS
Modeling
‣ OpenSplice DDS code-generation
Application Modeling
‣ Graphical application modeling
‣ Pattern-oriented code-generation
Deployment Modeling
‣ Modeling of DDS-configuration Service
configuration (networking, durability)
‣ Runtime control with the OpenSplice DDS Tuner
© 2009, PrismTech. All Rights Reserved
31. Reason #7
• The DDS Implementation powering the most
challenging Mission Critical Applications!
• Totaling
thousands of users among Open Source
and Commercial adopters, it is the most widely
used DDS Implementation
32. Selected Use Cases
Defense & Aerospace
‣ Combat Management Systems
‣ e.g. THALES, Northrop Grumman
‣ Vetronics
‣ e.g. European SI
‣ Tactical Links
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
‣ e.g. ULTRA
‣ Simulation
‣ e.g. MIT Lincoln Labs
SCADA/Utilities
‣ Industrial Automation
‣ e.g. Chemtech
‣ Rocket Launch Systems (Telemetry)
‣ e.g. NASA
© 2009, PrismTech. All Rights Reserved
33. Selected Use Cases
Transportation
‣ Drones
‣ Air Traffic Control & Management
‣ Metropolitan Transportation
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
Financial Services
‣ Automated Trading Firms
‣ Risk Management Firms
© 2009, PrismTech. All Rights Reserved
34. TACTICOS CMS
‣ OpenSplice DDS enables the core infrastructure of the
TACTICOS Naval Combat Management System from
THALES Naval Netherlands’
‣ OpenSplice DDS provide TACTICOS with is renown high-
availability, reconfigurability, and scalability which make
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
it possible to scale from small ships to carrier-grade
ships
‣ TACTICOS numbers are today:
‣ Deployed on 26 ships classes, >100 ships
‣ 2.000+ deployed runtimes (running on Solaris-servers, Linux-
consoles, & vxWorks embedded subsystems)
‣ 15 Navies worldwide (Netherlands, Germany, Turkey, Greece, Oman,
Qatar, Portugal, South Korea, Japan, Poland,…)
© 2009, PrismTech. All Rights Reserved
35. Vetronics
‣ OpenSplice DDS adopted as the foundation for
the electronic architecture of next generation
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
Vehicle Architecture
‣ OpenSplice DDS takes care of distributing real-
time sensor data for all sources but video
‣ An OpenSplice DDS Remote Method Invocation
extension is also used to issues all commands
© 2009, PrismTech. All Rights Reserved
36. Drones
OpenSplice DDS is being used to coordinate and
control various kind of “Drones”
Aerial Drones
‣ OpenSplice DDS used by major AirForces in
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
Europe and Mediterranean Countries in
classified UAV projects
Land Drones
‣ OpenSplice DDS used in several projects in both
military land drones as well as in civil manned
and autonomous vehicles
© 2009, PrismTech. All Rights Reserved
37. Tactical Data Links
‣ Ultra Electronics provides
critical tactical data exchange
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
capabilities to naval, land, and
airborne users and is one of
the world's leading tactical
data link system providers.
‣ OpenSplice DDS is the core of
Ultra Electronics’ Tactical Data
Links infrastructure
© 2009, PrismTech. All Rights Reserved
38. ULTRA Prefers OpenSplice DDS!
`
© 2009, PrismTech. All Rights Reserved
Tactical Data Links
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
39. ...because it’s the best fit.
© 2009, PrismTech. All Rights Reserved
Tactical Data Links
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
40. European Flight Data Processor
‣ Large program to replace existing Flight
Data Processors (FDPs) ATCC
ATCC
‣ 5 Centers in France
Reims
Brest ATCC
Paris
‣ 4 Centers in Italy
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
‣ 2 Centers in Switzerland ATCC
ATCC
Zurich
Geneve
ATCC ATCC
ATCC Milano Padova
Bordeaux
ATCC
Aix-en-
Provence
ATCC
Roma
ATCC
Brindisi
© 2009, PrismTech. All Rights Reserved
41. DDS in CoFlight -- FDP Core
‣ OpenSplice DDS glues together the
most critical components of the
DDS
CoFlight FDP running at a SWAL-2
(same as DO-178B Level B)
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
assurance level
‣ In this context OpenSplice DDS
distributes flights data plans of
redundant LANs
Flight Data Processing Servers
© 2009, PrismTech. All Rights Reserved
42. DDS in CoFlight -- CWP
Controllers
‣ OpenSplice DDS is used
within CoFlight to distribute
the “external” Flight Data Plan
to Controller Working
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
Positions DDS
DDS
Flight Data Processing Servers
© 2009, PrismTech. All Rights Reserved
43. DDS in CoFlight -- IOP
Controllers
‣ OpenSplice DDS is used Controllers Controllers
to integrate CoFlight-
based Centers
DDS
‣ OpenSplice DDS is used
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
DDS DDS
to provide interoperability
with other Interoperable
Centers (as per ICOG-2) Flight Data Processing Servers
Flight Data Processing Servers Flight Data Processing Servers
Air Traffic Control Center
Air Traffic Control Center Air Traffic Control Center
B
m
DDS
A F
J
D C
K E
© 2009, PrismTech. All Rights Reserved
45. Reason #8
• A Great Team to work with
- The OpenSplice DDS team has Customer Focused,
Tech-Jedi Culture
- A team counting some of the most referenced
author and experts in the area of Middleware
technologies at your service
46. Tech Sith vs Tech Jedi
Tech-Sith Tech-Jedi (OpenSplice DDS Team)
‣ Proprietary SW ‣ Open Source
‣ Lock-in ‣ Openness & Interoperability
‣ Want Customer $$$ ‣ Want Customer Success
‣ Red ‣ Green
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
© 2009, PrismTech. All Rights Reserved
47. At Your Service
‣ Enable our customers and partners to Discover & Mobilize &
Design Implement Deploy Sustain
deliver innovative solutions “on-time”, “on- Analyze Plan
budget”, and “on-quality”.
‣ Methodology covering the entire life-cycle Beginner
Training
of all customer projects, regardless of Intermediate
size, scope, and duration
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
Advanced
‣ Provides all you need for supporting and
catalyzing each stage of your project by Accelerated Evaluation Information Modeling
Workshop
means of training, workshops, and Requirements Discovery Performance Optimization
consulting. Architectural Patterns Tuning Your Deployment
‣ Services are delivered by highly-valued
world-class consultants, including world- System Analysis and Design
renowned technology and domain Consulting Customization / Enahncements
experts, and are available in 6 languages Infrastructure / Application Development
(English, French, German, Italian, Dutch, On Site Consulting, Support, and Mentoring
and Arabic).
© 2009, PrismTech. All Rights Reserved
49. Subscription Model
License vs. Subscription
OpenSplice DDS subscriptions provide several
key commercial advantages, namely they License Subscription
minimize TCO, and are cash-flow friendly
100
Community Edition
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
‣ Free like free beer! 75
Commercial Editions
‣ Cash/Flow Friendly 50
‣ Lower Total Cost of Ownership (TCO)
25
‣ Flexible model to tune needs vs. subscription
Y1 0
Y2
Y3
Y4
Y5
© 2009, PrismTech. All Rights Reserved
51. Online Resources
http://www.opensplice.com/ http://twitter.com/acorsaro/
emailto:opensplicedds@prismtech.com
Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
http://bit.ly/1Sreg http://opensplice.blogspot.com
http://www.dds-forum.org
http://www.youtube.com/OpenSpliceTube http://portals.omg.org/dds
© 2009, PrismTech. All Rights Reserved