RTI Support Corner: The right tool for the job Reply

As a member of the RTI support team, I have learned how invaluable our tools can be while investigating customer cases. I’m hoping that this short introduction to our tools suite will be informative and persuasive enough to get you excited about going out and integrating our tools into your RTI Connext application development workflow.

Every customer case that we see is unique and sometimes the only way to figure out what is happening is to get an in-depth look at an application as it is running–our tools allow us to do exactly this by giving us a view of what entities are up, what and how many messages are being sent, which QoS settings are being used and much more.

Our tools don’t require expertise in DDS to get them up and running with our Shapes Demo and this out-of-the-box experience helps users to understand how each of our tools can be utilized and what information each tool provides. Integrating the tools with your application will require a little more configuration, as the QoS settings of the application and tool have to match, but that’s the beauty of our tools, they can be configured to fully integrate with your applications so that you get the most in-depth and accurate information about your system.

When developing a brand-new application, modifying an existing one, or moving to a new environment, there are a number of things that can go wrong. As a new user of the RTI Connext middleware, you may encounter situations in which you require more insight  in order to move forward. For example, when developing and running an application across different networks a lack of communication could be due to a number of issues such as incompatible QoS settings, an incorrectly configured initial peers list, the inability of discovery packets to be sent or received, etc.

For the sake of demonstration, let’s take a closer look at the problem of incompatible QoS settings. While incompatible QoS settings provide one explanation for a lack of communication between Connext applications, there are also issues with hardware or a system’s infrastructure, such as a firewall or disconnected network, that will also prevent communication. Thus, it is a good idea to  first identify whether the problem resides in the user’s application or not. In this situation, we would recommend using our rtiddsping tool. Running this application on both sides of a network will allow you to see if DDS traffic is able to get from one point to another at all, separating the problem away from the user application. Rtiddsping provides a number of command line options which help it to better represent a user’s scenario (for example, isolating unicast or multicast communication or setting certain QoS settings). We would highly recommend that anyone using rtiddsping run the help command (rtiddsping -h) to view all of the available command line options. If rtiddsping succeeds, then we have narrowed our search down to a problem within the application itself, and at this time we would recommend using Analyzer. Launching Analyzer in conjunction with our applications would immediately tell us not only that there were incompatible QoS settings but also exactly which settings were incompatible. This example highlights how combining the RTI tools can solve a complicated problem with a simple solution.

Below, I have outlined the benefits and uses for a number of our tools that the support team would encourage any customer to explore and adopt as an integral part of  RTI Connext application development.

rtiddsping

When you have two or more applications that do not communicate, rtiddsping will help to:

  • Isolate connection problems between applications
  • Rule out network issues
  • Verify issues coming from application configuration rather than RTI Connext issues

For more information, please refer to the online documentation under Modules->Programming Tools.

  rtiddsspy

When one application is not receiving data, rtiddsspy “spies” all data that it sees in the domain. It will help you to:

  • Verify that data is being received in the receiving system
  • Analyze data exchange problems
  • View data samples

For more information, please refer to the online documentation under Modules->Programming Tools.

  RTI Analyzer

Analyzer can be used to see an overall picture of your system and it will help you to:

  • Highlight discovery problems
  • Visualize datatype representation
  • Detect QoS compatibility issues

For more information, please refer to the RTI Analyzer Getting Started Guide available on the Documents page of the support portal.

  RTI Monitor

Monitor can be used to monitor your applications and help you to:

  • View up-to-date statistics about the entities and messages which are being sent and receive
  • Verify your design
  • Tune performance
  • Monitor real-time operations

For more information, please refer to the RTI Monitor Library & RTI Monitor Getting Starting Guides and User’s Manuals available on the Documents page of the support portal.

  Wireshark

Wireshark can capture a wire trace in order to analyze the RTPS protocol packets and to gather information such as:

  • Discovery protocol
  • Heartbeat and ack/nack traffic
  • User-data traffic exchange
  • QoS settings
  • Debug interoperability issues

For more information, please refer to RTI Wireshark Getting Started Guide on the Documents page of the support portal.

RTI debug libraries and increased logging verbosity

Our debug libraries do some extra checking that can help to debug problems and our logging verbosity categories help to focus on specific type of output messages. For more information, please refer to the section titled “Controlling Messages from Connext” in the RTI Core Libraries and Utilities User’s Manual available on the Documents page of the support portal.

If you have any questions regarding our tools please feel free to contact us at support@rti.com.

Submit a comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s