DDS in SCADA, Utilities, Smart Grid and Smart Cities

4,585 views

Published on

This presentation introduces the challenges faced by next generation SCADA, Utilities, and Smart-* applications and show how OpenSplice DDS addresses theses. The presentation also showcases the use of OpenSplice DDS in some relevan use cases.

Published in: Technology, Business

DDS in SCADA, Utilities, Smart Grid and Smart Cities

  1. 1. DDS in SCADA, Utilities, Smart Grids and Smart CitiesOpenSplice DDS Angelo CORSARO, Ph.D. Chief Technology Officer OMG DDS Sig Co-Chair PrismTech angelo.corsaro@prismtech.com
  2. 2. Agenda Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Trends & ChallengesOpenSplice DDS ☐ The Role of OpenSplice DDS ☐ Selected Use Cases ☐ Concluding Remarks
  3. 3. Trends & ChallengesOpenSplice DDS
  4. 4. SCADA / DCS Trends Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Increasingly moving towards COTS technologies for networking, e.g., ethernet, industrial ethernetOpenSplice DDS ☐ Leveraging COTS communication middleware Challenges ☐ Maintaining Real-Time behavior ☐ Smoothly Integrating with the higher functional layer
  5. 5. Power Grid Trends Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Deregulation in Power Production has changed the operational landscape ☐ Communication is fundamental to control generation, transmission, andOpenSplice DDS distribution Challenges ☐ Currently deployed monitoring and control systems are not capable of providing the right level of QoS ☐ Secure communication
  6. 6. 2003.8.14 USA Blackout ☐ Largest blackout in US history, affecting over Copyright  2011,  PrismTech  –    All  Rights  Reserved. 50 million people ☐ A grid overload situation leding to a dominoOpenSplice DDS effect that tore down 100 power plants ☐ One of the root causes for the blackout was the communication’s infrastructure inability to maintain QoS in overload situations
  7. 7. Smart Cities Trends ☐ Smart Cities addresses several Copyright  2011,  PrismTech  –    All  Rights  Reserved. problem spaces from traffic management, to parking, conditioning, etc. ChallengesOpenSplice DDS ☐ Some of the key challenges in enabling the smart city vision are: ☐ The ability to gather data from a dynamic environment ☐ The necessity to distribute and process potentially very large volumes of data ☐ Security
  8. 8. ...In Summary ☐ Next-generation SCADA, Utilities, Smart Grid and Smart Cities applications share common needs w.r.t. Copyright  2011,  PrismTech  –    All  Rights  Reserved. the middleware infrastructure ☐ The key needs can be summarized into: Real-Time (Interactive communication and resilience toOpenSplice DDS ☐ overload situations) ☐ Support for QoS ☐ Scalability & High Performance (Latency / Throughtput) ☐ Connectivity (from sensors to enterprise IT systems) ☐ Support for Dynamic Environments ☐ Security
  9. 9. The Role of OpenSplice DDSOpenSplice DDS
  10. 10. OpenSplice’s Ecosystem Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ The OpenSplice DDS technology ecosystem addresses the key needs of the class of systems explored so farOpenSplice DDS ☐ Some of the key needs are addressed as a by-product of the DDS-standard compliance, other are addressed via OpenSplice specific innovations
  11. 11. DDS BackgroundOpenSplice DDS
  12. 12. Data Distribution Service For Real-Time Systems Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Introduced in 2004 to address Real-Timeliness Scale the Data Distribution challenges faced by a wide class of Defense and AerospaceOpenSplice DDS Applications Parallelism Determinism Throughput, Availability Scalability, Persistence, Security ☐ Key requirement for the standard were to deliver very high and Systemic Near Real-Time Fault- Data Real-Time Information Complex Information Signal Tolerant Information Processing Processing Management Processing Processing predictable performance while scaling from embedded to ultra- Parallel Systems Distributed Systems large-scale deployments
  13. 13. Data Distribution Service For Real-Time Systems Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Recommended by key Real-Timeliness Scale administration worldwide, e.g. DoD, MoD, EUROCAE, etc.OpenSplice DDS Widely adopted across Parallelism Determinism Throughput, Availability Scalability, Persistence, Security ☐ several different domains, Systemic Signal Data Real-Time Information Near Real-Time Fault- Tolerant Information Complex Information e.g., Automated Trading, Processing Processing Management Processing Processing Simulations, SCADA, Telemetry, etc. Parallel Systems Distributed Systems
  14. 14. Data Distribution Service For Real-Time Systems DDS provides a Topic-Based Real-Time Publish/Subscribe Copyright  2011,  PrismTech  –    All  Rights  Reserved. abstraction based on: Data ☐ Topics: data distribution subject’s Data Reader WriterOpenSplice DDS ☐ DataWriters: data producers Data TopicD Data Reader Writer TopicA ☐ DataReaders: data consumers Data Reader Data TopicB Writer TopicC ... Data Data Writer Reader DDS Global Data Space
  15. 15. Data Distribution Service For Real-Time Systems Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ DataWriters and DataReaders Data are automatically and Reader Data WriterOpenSplice DDS dynamically matched by the Data Reader DDS Dynamic Discovery Data Writer TopicA TopicD Data ☐ A rich set of QoS allows to Data Writer TopicB Reader TopicC control existential, temporal, ... and spatial properties of data Data Writer Data Reader DDS Global Data Space
  16. 16. OpenSplice DDS QoS
  17. 17. QoS Model ☐ QoS-Policies control local and end-to-end properties of DDS Copyright  2011,  PrismTech  –    All  Rights  Reserved. entities Type Matching QoS matching QoS QoS QoS QoS QoS QoS QoS ☐ Local properties controlled by Topic QoS are related resource usage Publisher Name Subscriber ... DataWriter writes Type reads DataReader ... ☐ End-to-end propertiesOpenSplice DDS ... controlled by QoS are related DomainParticipant DataWriter writes Type reads DataReader DomainParticipant Name to temporal and spatial aspects Topic of data distribution QoS QoS QoS ☐ Some QoS-Policies are matched based on a Request vs. Offered Model thus QoS- enforcement
  18. 18. 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 NOpenSplice 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
  19. 19. 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 CharacteristicsOpenSplice 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
  20. 20. Temporal Properties Copyright  2011,  PrismTech  –    All  Rights  Reserved. TimeBasedFilter Deadline [Inbound]OpenSplice DDS Throughput LatencyBudget Latency [Outbound] TransportPriority
  21. 21. Data Availability History Copyright  2011,  PrismTech  –    All  Rights  Reserved. DataOpenSplice DDS Liveliness Durability Availability Ownership Ownership Strength
  22. 22. OpenSplice DDS Partition Data Delivery Reliability Presentation Data Delivery Order Destination Copyright  2011,  PrismTech  –    All  Rights  Reserved.
  23. 23. OpenSplice DDS Performance
  24. 24. Local Latency ☐ Inter-Core latency Copyright  2011,  PrismTech  –    All  Rights  Reserved. can be as low as 10 usec!OpenSplice DDS ☐ Latency distribution predictable with: ☐ IQR <= 0.5 usec ☐ 99% - Min <= 4 usec
  25. 25. Inter-Host Latency ☐ Interhost latency under Copyright  2011,  PrismTech  –    All  Rights  Reserved. resource contention ☐ Disgram shows latency for high priority topicOpenSplice DDS ☐ Low priority topic, 8 KByte topic, written continuosly to create contetition ☐ Results show the latency determinism in spite of the high contetion
  26. 26. OpenSplice DDS Connectivity
  27. 27. OpenSplice Gateway ☐ High performance, QoS-Enabled, Copyright  2011,  PrismTech  –    All  Rights  Reserved. JMS Extensible and configurable XM ST PP RE protocol gateway framework OpenSplice Gateway P Cu AMQ sto Automatically bridging acrossOpenSplice DDS ☐ m communication technologies DDSI-RTPS ☐ Allows to expose relevant data Supported Connectors Include: - JMS - HTTP to over 80 communication - REST - AMQP - CometD - XMPP protocols, without imposing - CFX - Hibernate - TCP & UDP Sockets - Custom changes into existing systems!
  28. 28. An Example Application Enterprise Application Done Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ The OpenSplice Web Application Gateway mediates JMS XM ST PP from DDS to over 80 RE OpenSplice GatewayOpenSplice DDS P Cu AMQ sto technologies m DDSI-RTPS “dds:Foo:1/FooType” to DDS DDS “jms:topic:Foo”
  29. 29. FPGA-Connectivity Copyright  2011,  PrismTech  –    All  Rights  Reserved. Data Reader Data Writer Data Reader Data TopicD Writer TopicAOpenSplice DDS Data TopicB Reader Data Writer TopicC ... Data Data Writer Reader DDS Global Data Space ☐ Using PrismTech ICO ORB and the OpenSplice Gateway FPGAs can be easily “integrated” into DDS systems!
  30. 30. OpenSplice DDS Security
  31. 31. OpenSplice Security Subscriber ☐ Security profile can be Publisher "tracks.ufo" "tracks.kfo" Copyright  2011,  PrismTech  –    All  Rights  Reserved. associated with Network Partitions ☐ Each Security Profile allows Subscriber Publisher to specifyOpenSplice DDS ☐ Cipher (AES, BLOWFISH, N/A) ☐ Key Publisher Subscriber ☐ All data sent over the given partition is then encrypted "NetPartOne" "NetPartTwo" with the provided cipher/ 239.1.1.18 239.1.1.19 key "NetPartThree" 239.1.1.18, 192.1.1.7
  32. 32. Access Control ☐ Access Control is implemented via an optional and Copyright  2011,  PrismTech  –    All  Rights  Reserved. pluggable module ☐ This allows to plug-in modules implementing MandatoryOpenSplice DDS Access Control (MAC) based on Bell-LaPadula/Biba model, Role-Based Access Control, or others ☐ The current implementation only provides support for Mandatory Access Control (MAC)
  33. 33. OpenSplice DDS Use Cases
  34. 34. Grand Coulee Dam ☐ A gravity dam on the Columbia Copyright  2011,  PrismTech  –    All  Rights  Reserved. River in the U.S. state of Washington built to produce hydroelectric power and provide irrigation The Dam supports four differentOpenSplice DDS ☐ power houses containing 33 hydroelectric generators, providing an overall generation capacity of 7,079 MW ☐ The Grand Coulee Dam is the biggest Hydroelectric Power Generator in US
  35. 35. Grand Coulee Dam ☐ OpenSplice DDS is used as the Copyright  2011,  PrismTech  –    All  Rights  Reserved. communication mechanism for the Generic Data Acquisition and Control System (GDACS)OpenSplice DDS ☐ OpenSplice DDS was selected because of its unique scalability, determinism, and robustness in presence of overload situations
  36. 36. Amsterdam Metro Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ OpenSplice DDS is used as the communicationOpenSplice DDS system at the heart of the control system for the Amsterdam Metro
  37. 37. Smart Roadways Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ OpenSplice DDS has been used by a number of R&D projects experimenting theOpenSplice DDS feasibility of Smart Roadways to improve transport safety and efficiency
  38. 38. Smart Traffic Management Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ OpenSplice DDS has beenOpenSplice DDS used in a number of projects experimenting with smart parking, smart traffic management, etc.
  39. 39. OpenSplice DDS Epilogue
  40. 40. Concluding Remarks Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Next Generation SCADA, Smart Grid, Utilities, and Smart Cities require more advanced communication technologies than what currently deployed, or whatOpenSplice DDS are commonly found on enterprise IT ☐ OpenSplice DDS has proven, deployment after deployment, its value in addressing the challenges faced SCADA and Smart-* applications
  41. 41. :: Connect with Us :: ¥opensplice.com ¥forums.opensplice.org ¥@acorsaro ¥opensplice.org ¥opensplicedds@prismtech.com ¥@prismtechOpenSplice DDS ¥ crc@prismtech.com ¥sales@prismtech.com ¥youtube.com/opensplicetube ¥slideshare.net/angelo.corsaro
  42. 42. OpenSplice DDS ☐ ☐ ☐ Agenda Introducing v6 Concluding Remarks Technology Overview Copyright  2011,  PrismTech  –    All  Rights  Reserved.
  43. 43. OpenSplice Vision Copyright  2011,  PrismTech  –    All  Rights  Reserved. OpenSplice has a very simple goal: ☐ Making it easier to build, test, integrate, and deploy high-performance, scalable, and fault-tolerantOpenSplice DDS distributed systems ☐ v6 makes this the art of the possible with the introduction of several ground breaking innovations
  44. 44. Key Innovations[1/2] Multiple Architectures Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Unique configurable Federated or Standalone deployment options allow you to match performance, scalability and fault tolerance characteristics to evolving system needs; reducing both initial and lifetime development costsOpenSplice DDS Multiple Paradigms ☐ OpenSplice v6 delivers the right solution to the right problem through an expanding range of ‘interaction patterns’ including: Publish/Subscribe, Distributed Object Caches and Remote Method Invocation (RMI)
  45. 45. Key Innovations[2/2] Unrivalled Connectivity Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ The new OpenSplice Gateway delivers integration support for over 80 connectors to other messaging technologies (e.g. JMS & AMQP), proprietary, and WebOpenSplice DDS Technologies (e.g. W3C Web Services & RESTful) Tools ☐ The new OpenSplice Tester greatly simplifies the testing of testing DDS-based distributed systems
  46. 46. O v T e chnology rOpenSplice DDS v i e w
  47. 47. OpenSplice v6 s Rea tor Ga l Copyright  2011,  PrismTech  –    All  Rights  Reserved. Netw -Time Multi-Architecture red y ec ☐ te wa a orki nn y Sh mor ng Co DBM Me Se S cu ☐ Multi-Paradigm C/C rit ++ y S RM DD Tuner I JavaOpenSplice DDS OpenSplice ☐ Scalable & Real-Time Tester C# Tools e ler Mod ☐ Connectivity ire S h ark DDSI-RTPS W x s nu ow Li nd S Tool Ecosystem RTO ☐ Wi ☐ Standard Based
  48. 48. OpenSplice DDS M ltiple Architect u res
  49. 49. Deployment Options OpenSplice DDS v6.x introduces a runtime Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ configuration parameter to select between a federated and standalone deployment optionOpenSplice DDS ☐ When deployed standalone OpenSplice DDS is a library that manages application-wide communication ☐ When deployed federated OpenSplice DDS is a set of libraries and daemons that manage node-wide communication
  50. 50. Federated / Standalone Deployment Application Application Application Application Copyright  2011,  PrismTech  –    All  Rights  Reserved. OpenSplice DDS OpenSplice DDS OpenSplice DDS Operating OperatingOpenSplice DDS Systems Systems Federated Deployment Standalone Deployment ☐ Performance ☐ Usability ☐ Scalability ☐ Simple Configuration ☐ Determinism ☐ Simple Deployment
  51. 51. Deployment Configuration Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ The deployment mode can be changed by a simple configuration parameter. No With OpenSplice DDS recompilation or re-linking! you can choose the deployment ☐ <SingleProcess>true</SingleProcess> architecture that makesOpenSplice DDS the most sense for your ☐ The deployment options can be mixed at use case. will (even within a single computing node) ☐ The same application can be deployed in “Simple when Sufficient. Performant when Required” federated and standalone mode (even on the same system)
  52. 52. OpenSplice DDSMulti ple Parad gms
  53. 53. OpenSplice DDS An Example
  54. 54. Vehicles Monitoring ☐ Suppose you want to build an application with DDS to deal with vehicle monitoring Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ For instance we might want to pilot autonomous vehicles, or perhaps we are interested in road safety, etcOpenSplice DDS ☐ Too keep the application simple let’s focus on the following aspects: ☐ Vehicle Status, e.g., where is the vehicle, how fast is it moving, in which direction, etc. ☐ Collision Alert, e.g. is my vehicle about to hit something?
  55. 55. Data Model ☐ Based on the problem description we can easily figure out that Copyright  2011,  PrismTech  –    All  Rights  Reserved. we need at least two different topics. One to represent the vehicle status another to alert about possible collisionOpenSplice DDS struct VehicleStatus { struct CollisionAlert { long vid; long thisVid; // Vehicle Position long thatVid; long x; float distance; long y; }; // Vehicle Size #pragma keylist CollisionAlert long width; long height; // Vehicle Motion Vector long dx; long dy; }; #pragma keylist VehicleStatus vid
  56. 56. Controlling Vehicles Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ How can we control the vehicles? We could design a series of Request / Reply topics toOpenSplice DDS ☐ implement commands, ☐ or...
  57. 57. Beyond Pub/Sub R0 W0 T0 OpenSplice v6.x T1 Copyright  2011,  PrismTech  –    All  Rights  Reserved. R1 ☐ W1 Tk introduces a Remote Wi T2 Ti Ri Method Invocation (RMI) Wn Rm framework alongsideOpenSplice DDS with Pub/Sub Cyber/Phisycal System World OpenSplice RMI is entirely Do Something ☐ built on DDS leveraging its performance, Done Scalability and QoS Asynchronous*
  58. 58. Vehicles Example Copyright  2011,  PrismTech  –    All  Rights  Reserved. local interface VehicleControl : ::DDS_RMI::Services { void start(); void stop(); ☐ The vehicles could be void setRegion(in long x, in long y,OpenSplice DDS in long w, in long h); controlled via this void setPosition(in long x, in long y); simple RMI interface void setMotion(in long dx, in long dy); };
  59. 59. OpenSplice DDS Connectivity
  60. 60. OpenSplice Gateway [Formerly known as Project BlendBox] ☐ High performance, QoS-Enabled, JMS Copyright  2011,  PrismTech  –    All  Rights  Reserved. Extensible and configurable XM ST PP RE OpenSplice protocol gateway framework Gateway P Cu AMQ sto Automatically bridging acrossOpenSplice DDS ☐ m communication technologies DDSI-RTPS ☐ Allows to expose relevant data Supported Connectors Include: to over 80 communication - JMS - HTTP protocols, without imposing - REST - AMQP - CometD - XMPP changes into existing systems! - CFX - Hibernate - TCP & UDP Sockets - Custom
  61. 61. An Example Application Enterprise Application Done Web Application Copyright  2011,  PrismTech  –    All  Rights  Reserved. JMS XM ST PP RE OpenSplice Gateway The OpenSplice Gateway P Cu AMQ ☐ sto mOpenSplice DDS mediates from DDS to DDSI-RTPS over 80 technologies “dds:Foo:1/FooType” DDS DDS to “jms:topic:Foo”
  62. 62. Technology Foundation ☐ OpenSplice Gateway uses Apache Camel at its core Copyright  2011,  PrismTech  –    All  Rights  Reserved. for routing, mediation and transformation ☐ The power and connectivity of Apache Camel isOpenSplice DDS enhanced with ☐ High performance DDS connectivity (DDSI Connector) ☐ QoS mediation
  63. 63. Key Elements ☐ Components: Provide connectivity to a given technology Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Endpoints: Represent a source/destination of messages from/to a components Routes: Define path from input endpoints to output endpointsOpenSplice DDS ☐ ☐ Enterprise Integration Patterns: Facilitate the definition of routes between endpoints ☐ Processors: Allow to perform transformation to the data, its format, etc.
  64. 64. Components and Endpoints ☐ A component is a factory of Endpoint instances. Over 80 Copyright  2011,  PrismTech  –    All  Rights  Reserved. components are supported ☐ Endpoints are specified using URI: ☐ dds:TopicName:DomainID/TopicType?QoSOpenSplice DDS ☐ cometd://host:port/channelname ☐ jms:[topic:]destinationName ☐ [tcp|udp|vm]:host[:port] ☐ xmpp://host:port/room ☐ …
  65. 65. Routes A route defines a path from an in endpoint to an Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ out endpoint. ☐ Route can be defined in Spring, or using eitherOpenSplice DDS the Java or Scala DSL (I prefer the Scala DSL ;-)
  66. 66. Sample Route in Java new RouteBuilder() {! Copyright  2011,  PrismTech  –    All  Rights  Reserved. @override! public void configure() {! from(“dds:Foo:1/FooType”)! .to(“dds:Bar:2/FooType”);! }!OpenSplice DDS }! DDS Endpoint! Topic Name! DomainID! TypeName!
  67. 67. Sample Route in Scala Copyright  2011,  PrismTech  –    All  Rights  Reserved. val shapesRoute = new RouteBuilder {! “dds:Foo:1/FooType” --> “dds:Bar:2/BarType” ! }!OpenSplice DDS DDS Endpoint! Topic Name! DomainID! TypeName!
  68. 68. Sample Route in Scala Copyright  2011,  PrismTech  –    All  Rights  Reserved. val shapesRoute = new RouteBuilder {! “dds:Foo:1/FooType” to “dds:Bar:2/BarType” ! }!OpenSplice DDS DDS Endpoint! Topic Name! DomainID! TypeName!
  69. 69. Enterprise Integration Patterns ☐ EIP provide pre-specified ways of integrating Copyright  2011,  PrismTech  –    All  Rights  Reserved. endpoints Content Based Recipient List Router ☐ The most common integration patterns are supported, such as, multicast, filtering, Message A BOpenSplice DDS correlation, content-routing, load- FIlter Correlation ID balancing, etc. ☐ Multicast Ex: Splitter Aggregator val shapesRoute = new RouteBuilder {! “dds:Foo:1/FooType” ! "to (“dds:Bar:2/BarType”, “jms:topic:Foo”)! }!
  70. 70. Domain Bridging Copyright  2011,  PrismTech  –    All  Rights  Reserved. “dds:topicA:0/MyType” toOpenSplice DDS “dds:topicA:1/MyType” ☐ Bridge all samples across all instances on domain “N” to domain “M” ☐ In the example N=0, M=1
  71. 71. Load Balancing “dds:topicA:0/A” ==> { loadbalance roundrobin { to (“dds:topicX:0/A”) to (“dds:topicY:0/A”) } } “dds:topicX:0/A” Copyright  2011,  PrismTech  –    All  Rights  Reserved. “dds:topicA:0/A” to ==> “dds:topicY:0/A” toOpenSplice DDS loadbalance roundrobin ☐ The Gateway can load-balance across any number of output endpoints ☐ Supported policies are ☐ Round Robin, Random, Sticky, Custom, etc.
  72. 72. Gateway in ActionOpenSplice DDS
  73. 73. iShapes Application ☐ To explore the features Copyright  2011,  PrismTech  –    All  Rights  Reserved. provided by the B2 we’ll use the simd-cxx ishapes application ☐ Three TopicsOpenSplice DDS ☐ Circle, Square, Triangle ☐ One Type struct ShapeType { string color; long x; long y; Spotted shapes represent subscriptions long shapesize; }; Pierced shapes represent publications #pragma keylist ShapeType color
  74. 74. Connectors Copyright  2011,  PrismTech  –    All  Rights  Reserved. DDS JDBC/ODBC Application Applcation RDBMS Connector OpenSplice DDSOpenSplice DDS DBMS ☐ Transparent two-way connectivity to RDBM DBMS Connect
  75. 75. OpenSplice DDS Extensions
  76. 76. Real-Time Networking ☐ Multiple communication lanes allow for Copyright  2011,  PrismTech  –    All  Rights  Reserved. Application(s) Application(s) differentiated traffic flows, based on priority OpenSplice DDS OpenSplice DDSOpenSplice DDS Traffic shaping provides Pre-emptive Network Scheduler ☐ RT-Net Priority Scheduler RT-Net Data Urgency Traffic Pacing control over network Network Channels bandwidth usage Priority Bands Traffic Shaping ☐ End-to-End priority preservation
  77. 77. Scalability Extensions ☐ Data Compression: Minimize network bandwidth use Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Shared Reader Cache: One Reader Cache for different readers even across process => ideal for load-OpenSplice DDS balancing over multi-cores ☐ Ultra-Large Scales Systems Discovery: Discovery protocol extensions to deal with very large scale systems
  78. 78. Reliability Extensions Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Quorum Writers: Block writer until a quorum has received the dataOpenSplice DDS ☐ Fault-Tolerant Reliability: All or none data delivery in face of writer crashes
  79. 79. Security Extensions Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ R/W Control: Control node-wide R/W rights w.r.t. specific domains and topicsOpenSplice DDS ☐ Secure DDS: Extension of the RT-Networking that provides authentication and pluggable encryption
  80. 80. COpenSplice DDS To ols r Bundled with e OpenSplice Core
  81. 81. Configuration Tools Configurator Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ The reference tool for configuring OpenSplice DDSOpenSplice DDS ☐ Rich online guide to configuration options ☐ Context help and parameter validation
  82. 82. Runtime-Tools Tuner Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Inspect and Tune DDS Entities ☐ Detect and resolve QoSOpenSplice DDS Mismatch ☐ Read/Write data for arbitrary topics ☐ Inject Topic Definitions ☐ Externalize recorded data in XML
  83. 83. Runtime-Tools WireShark Packet Dissector Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Watch what goes on the wireOpenSplice DDS ☐ Inspect DDSI-RTPS and RT-Networking packets being exchanged between applications
  84. 84. Runtime-Tools WireShark Packet Dissector Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Watch what goes on the wireOpenSplice DDS ☐ Inspect DDSI-RTPS and RT-Networking packets being exchanged between applications
  85. 85. OpenSplice DDS d a d n To ols
  86. 86. Runtime Tools Tester ☐ Automated testing of DDS systems Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ Domain-Specific scripting Language (DSL) ☐ Batch execution of regression testsOpenSplice DDS ☐ Virtual topic-attributes ☐ System-browser of DDS entities ☐ QoS-conflict monitoring/detection ☐ Statistics-monitoring of applications and services ☐ Syntax highlighting editor, script- executor & Sample Logger
  87. 87. Modeling Tools Copyright  2011,  PrismTech  –    All  Rights  Reserved. OpenSplice Modeler ☐ Domain SpecificOpenSplice DDS modeling for DDS Applications ☐ Eclipse Based
  88. 88. Modeling Tools Copyright  2011,  PrismTech  –    All  Rights  Reserved. Rhapsody ☐ Enterprise Architect andOpenSplice DDS IBM Rhapsody provide support for UML Modeling of DDS applications
  89. 89. OpenSplice DDS Standards
  90. 90. Open Standard ☐ OpenSplice DDS is a full Implementation of the DDS Copyright  2011,  PrismTech  –    All  Rights  Reserved. Application Application API DDS RMI DDS RMIOpenSplice DDS 2012 2012 ANSI C C++ C# Java Scala Security Security X-Types X-Types DDS Wire Protocol DDSI-RTPS DDSI-RTPS network
  91. 91. Product StructureOpenSplice DDS
  92. 92. OpenSplice v6 Core ☐ A full implementation of DLR L Copyright  2011,  PrismTech  –    All  Rights  Reserved. S CP the OMG DDS v1.2 D DDS C/C standard ++ Java OpenSplice Includes DCPS and DLRL C#OpenSplice DDS ☐ r Tune APIs Sh a rk DDSI-RTPS Too Wire l x s s nu ow Li Field-Proven DDSI-RTPS nd ☐ S RTO Wi interoperability wire protocol
  93. 93. Technology Ecosystem s Rea Copyright  2011,  PrismTech  –    All  Rights  Reserved. tor Ga l d Netw -Time ec t ew are ry orki nn ay Sh mo ng Co DBM Me Se DDS S cu C/C C/C rit ++ ++ y S RM DD Java Tuner I Java OpenSplice OpenSpliceOpenSplice DDS C# Tester C# Tools r ler Tune Mod e ha rk DDSI-RTPS h ark DDSI-RTPS S reS Too W ire Wi l x x s s ws nu nu ow Li Li o nd S nd S RTO RTO Wi Wi Core Edition Full Technology Stack
  94. 94. Add Ons The Core Edition is Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ licensed under LGPLv3 and allows free runtimeOpenSplice DDS deployments ☐ Add-ons are commercially licensed
  95. 95. OpenSplice DDS p S u mming
  96. 96. Summing Up Copyright  2011,  PrismTech  –    All  Rights  Reserved. ☐ OpenSplice v6 innovations make it easier for you to build, test, integrate, & deploy high-performance, scalable, and fault-tolerant distributed systemsOpenSplice DDS ☐ Our Open Source business model guarantees you security of supply and straightforward pricing; including no cost deployment licensing

×