Profiling Distributed Applications with Perf

I, like many developers, have been in situations where I needed to take an existing application and make it faster–basically by removing slow code and replacing it with fast code. I know now to follow one simple rule when it comes to optimizing code:

Read More

How to Build and Run RTI Connext DDS Micro on a Microcontroller

As you might know, we ship a buildable source for RTI Connext DDS Micro so you can build it for your own architecture. In the past few months, we have noticed that customers are interested in building our product for microcontrollers without a Memory Management Unit (MMU), and they’re using a uClibc-based OS. The purpose of this post is to support this expressed need and illustrate how to port RTI Connext DDS Micro to uCLinux with relatively few changes. The development board that we will use in this practical example is STM32F769I-DISCO. You should be able to extrapolate it to any other board by knowing your toolchain. You can even extrapolate it to any other OS that uses uClibc!

Let’s get started.

Read More

Protecting Your Data Without Changing a Single Line of Code

RTI Connext DDS 5.3.0 is now live! I’m really excited to be back with a new blog post about one of the key new features of this release: the RTI Security Plugins. The reason I’m so excited about this one it is because this is our first release that is fully wire-compliant with the OMG DDS Security specification.

If you are looking for a high-level overview of OMG’s DDS Security specification, or you are wondering how can you can get started using it in your application, you are in the right place.

Read More

Who Is Chopping My Application Data and Why Should I Care?

As you probably know, DDS data is sent on the wire as RTPS messages. As such, these messages include a header and the data payload. The header contains useful information such as host ID, remote ID and sequence numbers; we’ll refer to the payload as ‘data sample’. For instance, in this Wireshark capture you can see the header and two submessages: INFO_TS, which contains the timestamp info, and DATA_FRAG, which is actually a data sample fragment.

Read More

Useful Tools to Debug DDS Issues

While developing an application using RTI Connext, DDS users may run into a situation where the publisher and subscriber are not communicating. In these situations, we will usually get the question: how can I figure out what the issue is and how to solve it?

There are several tools and features that can help you debug your DDS issues:

Read More

Three Simple Steps to Achieving Peak DDS Performance

RTI Connext® DDS provides an order of magnitude performance improvement over most other messaging middleware. But occasionally we run into customers who are trying to improve the performance of their DDS communications. This performance improvement can be achieved in either throughput or latency. In this blog, I will go through the three simple steps required to assess the performance of your system and will also review some of the most common ways customers have improved performance of their DDS communications.

Read More