rti connext 5.1.0

47
Your systems. Working as one. Connext DDS 5.1: Scale Intelligent Systems to the Internet of Things February 27, 2014

Upload: jan-van-bruaene

Post on 22-Jan-2017

301 views

Category:

Software


0 download

TRANSCRIPT

Page 1: RTI Connext 5.1.0

Your  systems.    Working  as  one.  

Connext  DDS  5.1:  Scale  Intelligent  Systems  to  the  Internet  of  Things  

February  27,  2014  

Page 2: RTI Connext 5.1.0

Topics  

•  Intelligent  Systems  •  Role  of  Connext  DDS  •  Driver:  Internet  of  Things  •  New  in  Connext  DDS  5.1  •  Next  Steps  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   2  

Page 3: RTI Connext 5.1.0

Intelligent  Systems  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   3  

Page 4: RTI Connext 5.1.0

Connext  DDS:  CommunicaTons  PlaVorm  for  Intelligent  Systems  

Real-­‐Time  AnalyTcs  &  Control  

Operator  HMI  

Sensors   Actuators  

IT  /  Cloud  /  SoS  IntegraTon  

Network  /  Bus  /  IPC  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   4  

Page 5: RTI Connext 5.1.0

Connext  DDS  Professional  

Connext  DDS  Product  Family  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

DDS-­‐RTPS  Wire  Interoperability  Protocol  

DDS    &  JMS  Libraries  

RouTng  Service  

Database  IntegraTon  

Connext  DDS  Micro  

Connext  DDS  Cert  

AdministraTon  

Monitoring  

Microso]  Excel  

Recording  

Replay  

Wireshark  

Persistence  

Logging  

Prototyper  

General  Purpose  Real-­‐Time  Apps  

Remote  Apps  

Disparate  Apps  

Adapter  

Small  Footprint  Apps  

High  Assurance  Apps  (DO-­‐178C)  

5  

Page 6: RTI Connext 5.1.0

Broad  Interoperability  for  Heterogeneous  Systems  

•  Programming  languages  and  environments  –  C,  C++,  C#/.NET,  Java,  Ada  –  LabVIEW,  MATLAB,  Simulink,  UML  

•  OperaTng  systems  – Windows,  Linux,  Unix,  Mac  OS  –  Embedded,  real  Tme,  parTToned  – Mobile  

•  Processor  families  –  x86,  ARM,  PowerPC…  –  32-­‐  and  64-­‐bit  

•  Transport  types  –  Shared  memory  –  LAN  (incl.  mulTcast)  – WAN  – Wireless  –  Low  bandwidth  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   6  

Page 7: RTI Connext 5.1.0

Trend:  Internet  of  Things  (IoT)  

•  ConnecTng  more  devices,  applicaTons  and  systems  

•  To  each  other,  data  center,  cloud  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   7  

Page 8: RTI Connext 5.1.0

IoT  Benefits  

Sharing  more  data  across  devices  and  applicaTons  for  beher:  •  SituaTonal  awareness,  decision  making  •  AutomaTon,  responsiveness,  efficiency  •  Asset  uTlizaTon  

•  PaTent  safety,  clinician  efficiency  •  Energy  efficiency,  reliability  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   8  

Page 9: RTI Connext 5.1.0

IoT  in  PracTce  

Actuators  Sensors  

AnalyTcs,  control   HMI  

Actuators  Sensors  

AnalyTcs,  control   HMI  

Actuators  Sensors  

AnalyTcs,  control   HMI  

AnalyTcs,  control   HMI  

Centralized  analyTcs  

Decentralized  devices,  analyTcs,  control  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   9  

Page 10: RTI Connext 5.1.0

IoT  Challenges  

•  Scalability  –  aggregate  data  volumes  

•  Extensibility  –  incremental  evoluTon  

•  Adaptability  –  can’t  characterize  performance  at  dev  Tme  

•  Debugability  

Actuators  Sensors  

AnalyTcs,  control   HMI  

Actuators  Sensors  

AnalyTcs,  control   HMI  

Actuators  Sensors  

AnalyTcs,  control   HMI  

AnalyTcs,  control   HMI  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   10  

Page 11: RTI Connext 5.1.0

Introducing  Connext  DDS  Professional  5.1  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   11  

Page 12: RTI Connext 5.1.0

RouTng  Service  Content  Filter  PropagaTon  

•  Reduce  bandwidth  and  CPU  uTlizaTon  in  a  hierarchical  system  where  DataReaders  subscribe  to  a  subset  of  data    

•  DataWriter  and  RouTng  Service  only  publish  data  that  is  subscribed  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

RouTng  Service  

Apps   Devices  

RouTng  Service  

Apps   Devices  

RouTng  Service  

Apps   Devices  

RouTng  Service  

12  

Page 13: RTI Connext 5.1.0

RouTng  Service  –  Content  Filter  PropagaTon  Co

nnext  D

DS  5.1  

Prior  to  5.1  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

DataReader  

DataWriter  

RS1  

X  =  1  

DataReader  

X  >  5  

DataReader  

X  =  7  

DataWriter  

CommunicaTon  direcTon  

1 2

3 4

11   2   3   4  

RSN  RS2  

DataReader  

DataWriter  

RS1  

X  =  1  

DataReader  

X  >  5  

DataReader  

X  =  7  

DataWriter  

CommunicaTon  direcTon  

1 2

3 4

1

RSN  

1

X  =1  or  X  >  5  or  X  =  7  

Filter  propagaTon  direcTon  Sample  filtering  

Sample  filtering  

RS1  

13  

Page 14: RTI Connext 5.1.0

Enhanced  TCP  Transport  Scalability  using  I/O  CompleTon  Ports  (IOCP)  

Connext  DDS  5.0   Connext    DDS  5.1  

Asynchronous  I/O  operaTon  using  IOCP  API    

Windows  server  

Windows  server  

clients  clients  

clients  

clients  

clients  clients  

clients  

clients  clients  clients  

clients  

clients  

clients  clients  

clients  

clients  clients  

clients  

clients  

clients  

clients  clients  

clients  

clients  

clients  clients  

clients  

clients  

clients  clients  

clients  

clients  

Synchronous  I/O  operaTon  using  Select  ()  API    

>1500  clients  ~  600  clients  

•  To  enable  IOCP  simply  set  the  property  socket_monitoring_kind  in  TCP  plugin  to  WINDOWS_IOCP  

Supports  far  more  TCP  connecTons  in  Windows-­‐based  deployments  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   14  

Page 15: RTI Connext 5.1.0

Extensible  Types  (DDS-­‐XTypes)  

•  Enables  dynamic  upgrades  •  Types  can  evolve  while  maintaining  backward  interoperability  

•  EssenTal  for  large  and  mission-­‐criTcal  systems  

FINAL   •  Can’t  be  modified  or  derived  •  All  primiTve  fields  are  final  

EXTENSIBLE      <default>   •  Type  can  be  extended,  but  not  modified  •  Extensions  can  only  appear  at  the  end  of  the  

type  definiTon  

MUTABLE   •  Type  can  be  reordered  and/or  modified  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   15  

Page 16: RTI Connext 5.1.0

Extensible  Types  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

@Extensibility(Extenisble_EXTENSIBILITY)  struct  TrackData  {          long  id;  //@ID  1          long  x;    //@ID  2          long  y;    //@ID  3  };  

@Extensibility(Extensible_EXTENSIBILITY)  struct  TrackData  {          long  id;  //@ID  1          long  x;  //@ID  2          long  z;  //@ID  4          long  y;  //@ID  3  };  

@Extensibility(Extensible_EXTENSIBILITY)  struct  TrackData  {          long  id;  //@ID  1          long  x;    //@ID  2          long  y;    //@ID  3  };  

@Extensibility(Extensible_EXTENSIBILITY)  struct  TrackData  {          long  id;  //@ID  1          long  x;  //@ID  2          long  y;  //@ID  3          long  z;  //@ID  4  };  

Connext  DDS  5.0  

16  

Page 17: RTI Connext 5.1.0

@Extensibility(Mutable_EXTENSIBILITY)  struct  TrackData  {          long  id;  //@ID  1          long  x;    //@ID  2          long  y;    //@ID  3  };  

@Extensibility(Mutable_EXTENSIBILITY)  struct  TrackData  {          long  id;  //@ID  1          long  x;  //@ID  2          long  y;  //@ID  3          long  z;  //@ID  4  };  

Connext  DDS  5.1  

@Extensibility(Mutable_EXTENSIBILITY)  struct  TrackData  {          long  id;  //@ID  1          long  x;    //@ID  2          long  y;    //@ID  3  };  

@Extensibility(Mutable_EXTENSIBILITY)  struct  TrackData  {          long  id;  //@ID  1          long  x;  //@ID  2          long  z;  //@ID  4          long  y;  //@ID  3  };  

Note:  4-­‐byte  or  12-­‐byte  per  member  extra  overhead  on  the  wire.  

Mutable  Types  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   17  

Page 18: RTI Connext 5.1.0

XTypes:  OpTonal  Members    

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

@Extensibility(MUTABLE_EXTENSIBILITY)  struct  TrackData  {          long  id;            long  x;              long  y;              long  z;    //@OpTonal  };  

typedef  struct  TrackData  {          DDS_Long  id;          DDS_Long  x;          DDS_Long  y;          DDS_Long  *  z;  };  

NULL  value  means  there  is  no  value  because  logically  the  value  is  not  there  

C/C++  

Bandwidth  overhead  per  member  FINAL/EXTENSIBLE   MUTABLE  

SET   4/12-­‐byte  HEADER  +  VALUE   4/12-­‐byte  HEADER  +  VALUE  

NOT  SET   4/12-­‐byte  HEADER   0-­‐byte  

Supports  scenarios  in  which  data  type  member  value  is  not  known  or  does  not  exist  

18  

Page 19: RTI Connext 5.1.0

BuilTn  QoS  Profile    

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

•  Facilitate  configuraTon  for  common  scenarios  and  use  cases  •  Reduce  configuraTon  effort  vs.  sexng  individual  QoS  

parameters  

•  Total  of  34  QoS  Profiles  as  part  of  the  core  library  •  Can  be  extended  and  expanded  as  new  features  developed  

and  new  use  cases  idenTfied  

19  

Page 20: RTI Connext 5.1.0

BuilTn  QoS  Profiles  

BASELINE_  ROOT  

BASELINE_  5_0_0  

BASELINE  

BASELINE_  5_1_0  

GENERIC_  COMMON  

GENERIC_  MONITORING  

GENERIC__  CONNEXT_MICRO_COMPATIBILITY  

GENERIC_  CONNEXT_OTHER  DDS_VENDOR_  COMPATIBILITY  

Baseline   Generic  

PERIODIC_DATA  

RELIABLE_  STREAMING  

STREAMING  

EVENT  

STATUS  

ALARM_EVENT  

ALARM_STATUS  

LAST_VALUE_  CACHE  

PaRern  

Experimental  

KEEP_LAST_RELIABLE_  TRANSIENT_LOCAL  

KEEP_LAST_RELIABLE_  TRANSIENT  

KEEP_LAST_RELIABLE_  PERSISTENT  

STRICT_RELIABLE_LARGE_  DATA_FAST_FLOW  

STRICT_RELIABLE_LARGE_  DATA_MEDIUM_FLOW  

STRICT_RELIABLE_LARGE_  DATA_SLOW_FLOW  

KEEP_LAST_RELIABLE_  LARGE_DATA_FAST_FLO

W  

KEEP_LAST_RELIABLE_LARGE_DATA_MEDIUM_  

FLOW  

KEEP_LAST_RELIABLE_  LARGE_DATA_SLOW_  

FLOW  

STRICT_RELIABLE  

BEST_EFFORT  

KEEP_LAST_  RELIABLE  

STRICT_RELIABLE_  HIGH_THROUGHPUT  

STRICT_RELIIABLE_LOW_LATENCY  

Basic  

Durability  

PARTICIPANT_  LARGE_DATA  

PARTICIPANT_LARGE_  DATA_MONITORING  

STRICT_RELIABLE_  LARGE_DATA  

KEEP_LAST_RELIABLE_  LARGE_DATA  

AUTO_TUNING  

Large  Data  

Performance  

Large  Data  with  Flow  Control  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   20  

Page 21: RTI Connext 5.1.0

Improved  Default  Transport  Sexngs  

•  Improves  out-­‐of-­‐box  performance  •  Minimizes  need  for  tuning  

•  Default  QoS  profile  available  to  enable  backward  compaTble  with  5.0.0    

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   21  

Page 22: RTI Connext 5.1.0

Turbo  Mode  (Experimental)  

•  As  sending  rate  changes,  automaTcally  adjusts  QoS  to  maintain  opTmal  performance  

•  Improves  performance  in  burst  traffic  scenario  – High  throughput  at  high  sending  rate  – Low  latency  at  slow  sending  rate  

•  Supported  by  new  per]est  •  hhp://community.rT.com/downloads/rT-­‐connext-­‐dds-­‐

performance-­‐test  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   22  

Page 23: RTI Connext 5.1.0

Auto  Throhle  (Experimental)  

•  Improves  latency  and  jiher  in  high  throughput  condiTons  

•  AutomaTcally  adjusts  DataWriter  send  rate  and  send  window  size  in  reliable  communicaTons  using  protocol  feedback:  –  Send  window  occupancy  to  control  the  send  rate  –  NACK  messages  to  control  the  send  window  size  

•  Tradeoff  – May  increase  CPU  usage  in  sending  machine  (acTve  wait)  –  Slightly  reduces  throughput  for  small  data  sizes  (<10%)  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   23  

Page 24: RTI Connext 5.1.0

Auto  Throhle  Performance  

0  

5000  

10000  

15000  

20000  

25000  

30000  

0   10000   20000   30000   40000   50000   60000  

Latency  in  M

icrosecond

s  

Message  Size  (bytes)  

Auto  ThroRle  disabled  

Average   Minimum   99%  

0  

5000  

10000  

15000  

20000  

25000  

30000  

0   10000   20000   30000   40000   50000   60000  

Latency  in  M

icrosecond

s  

Message  Size  (bytes)  

Auto  ThroRle  enabled  

Average   Minimum   99%  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   24  

Page 25: RTI Connext 5.1.0

Recording  Service:  Flexible  Field  SelecTon

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

Pre  5.1…  

What  the  user  really  cares  about  What  we  store  by  default,  apart  from  user-­‐data  

25  columns  of  metadata  

25  

Page 26: RTI Connext 5.1.0

Recording  Service:  Flexible  Field  SelecTon

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

2  columns  

of  metadata  

Now  (5.1.0)  …  

What  the  user  really  cares  about  What  we  also  store  in  the  DB  by  default  

26  

Page 27: RTI Connext 5.1.0

Recording  Service:  Flexible  Field  SelecTon  

Users  can  now  select  what  SampleInfo  fields  to  store  with  their  recorded  data  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   27  

Page 28: RTI Connext 5.1.0

Admin  Console  Enhancements  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

Eclipse  RCP   DDS  

Admin  Console  Infrastructure  

System  Control  (5.0)  

System  Awareness  

(5.1)  

Debugging    

(5.1)  

28  

Page 29: RTI Connext 5.1.0

Admin  Console  Features  

5.0  •  Physical  View  •  System  Editor  •  Processes  View  •  Host  View  •  Process  Editor  •  RouTng  Service  Editor  •  Persistence  Editor  •  Recording  Service  Editor  •  Replay  Service  Editor  •  XML  Editor  

5.1  •  Auto  Join  •  DDS  Logical  View  •  Health  and  Match  Analyses  •  DDS  QoS  View  •  Domain  Topic  •  DDS  Data  Type  View  •  System  Log  •  Resource  Charts  for  Host  

and  RouTng  Service  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   29  

Page 30: RTI Connext 5.1.0

Auto  Join  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

Domains  Joined:    

6  

8  

,  6  ,  8  0  

30  

Page 31: RTI Connext 5.1.0

DDS  Logical  View  This  view  presents  a  hierarchical  view  of  the  system  from  a  DDS  perspecTve.  It  shows  a  list  of  DDS  domains  and  the  topics  within  them.      

Each  enTty  has  a  badge  to  represent  its  health.  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   31  

Page 32: RTI Connext 5.1.0

Health  &  System  Health  The  Health  View  makes  it  simple  to  tell  if  a  system  enTty  is  known  to  have  exisTng  problems.  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

9  condiTons  are  evaluated  to  determine  health.  

32  

Page 33: RTI Connext 5.1.0

Real-­‐Tme  Match  Analyses  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

   

33  

Page 34: RTI Connext 5.1.0

QoS  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   34  

Page 35: RTI Connext 5.1.0

Topic  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   35  

Page 36: RTI Connext 5.1.0

Topic  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   36  

Page 37: RTI Connext 5.1.0

Topic  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   37  

Page 38: RTI Connext 5.1.0

DDS  Data  Type  View  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

Hierarchical  view  of  a  data  type  used  by  a  DDS  DataWriter  or  DataReader  

The  equivalent  IDL  is  also  available.  38  

Page 39: RTI Connext 5.1.0

System  Log  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

Combined  log  from  all  applicaTons  using  Distributed  Logger.  

39  

Page 40: RTI Connext 5.1.0

RouTng  Service:  Resources  Chart  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.  

Similar  view  for  Host  40  

Page 41: RTI Connext 5.1.0

Extended  Process  InformaTon  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   41  

Page 42: RTI Connext 5.1.0

Prototyper  with  LUA  (Experimental)  

XML  Sexngs  

Prototyper  (“Container”)  

Lua  Engine            

DDS  

Lua    Component  

1. ##$Interface:$parameters,$inputs,$outputs$2. local$A,$B,$C$=$30,$30,$10$##$Change$the$'C'$parameter$to$to$see$various$flower$shapes$$3. local$ShapeWriter$=$CONTAINER.WRITER[3]$##$Triangles$4. $5. ##$Global$counter$(preserved$across$invocations)$$$6. if$not$count$then$count$=$0$else$count$=$count$+$1$$end$$$7. $8. local$shape$=$ShapeWriter.instance;$9. local$angle$=$count$%$360;$10. $11. shape['x']$$$$$$$$$=$120$+$(A+B)$*$math.cos(angle)$+$B$*$math.cos((A/B#C)*angle)$$$12. shape['y']$$$$$$$$$=$120$+$(A+B)$*$math.sin(angle)$+$B$*$math.sin((A/B#C)*angle)$13. $14. shape['shapesize']$=$5$15. shape['color']$=$"RED"$16. $17. ShapeWriter:write()$

$

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   42  

Page 43: RTI Connext 5.1.0

CodeGen  2.0  (Experimental)  •  Reduce  code  generaTon  Tme  especially  when  dealing  with  

large  IDL  files  and  large  number  of  IDL  files  •  Ease  customizaTons  and  extensions  to  code  generaTon  

•  Usability  –  Apache  Velocity  (VLT)  templates  are  used  in  place  of  XSL  

•  Performance  –  With  small  IDL  files,  performance  is  6x  faster  (server  mode)  

–  With  a  large  IDL  file  (2,000  structs)  CodeGen  2.0  is  >10x  faster  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   43  

Page 44: RTI Connext 5.1.0

MigraTng  to  5.1  

•  No  API  changes  required  –  ExcepTon:  Removed  “_exp”  suffix  from  XML  ApplicaTon  CreaTon  APIs  

•  Must  regenerate  code  •  BuilTn  QoS  profile  provided  for  5.0  interoperability  

•  Monitoring  and  administraTon  topics  are  not  compaTble  with  5.0  – Now  leveraging  XTypes  for  future  forward  compaTbility  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   44  

Page 45: RTI Connext 5.1.0

Connext  DDS  5.1  Summary  

•  60+  new  features  and  enhancements  to  improve  – Scalability  – Extensibility  – Adaptability  and  performance  – Usability  and  debuggability  

•  New  experimental  features  •  20+  new  plaVorms  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   45  

Page 46: RTI Connext 5.1.0

Next  Steps  

•  Connext  DDS  Professional  5.1  downloads  –  EvaluaTon:  hhp://www.rT.com/downloads/connext.html  –  Customer  portal:  hhp://support.rT.com  –  Live  CD:  hhp://community.rT.com/content/page/downloads  

•  Blog  posts  with  more  details  at  hhp://blogs.rT.com  •  Many  resources  at  hhp://community.rT.com  

–  Examples  –  Case+Code  –  Forums  –  Knowledgebase  

•  New  and  improved  performance  test  –  hhp://community.rT.com/downloads/rT-­‐connext-­‐dds-­‐performance-­‐test  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   46  

Page 47: RTI Connext 5.1.0

Thank  You!  

February  27,  2014   ©  2014  REAL-­‐TIME  INNOVATIONS,  INC.   47