A Qualitative Comparison of Interprocess Communications Toolkits for Robotics - Robotics Institute Carnegie Mellon University

A Qualitative Comparison of Interprocess Communications Toolkits for Robotics

Tech. Report, CMU-RI-TR-00-16, Robotics Institute, Carnegie Mellon University, June, 2000

Abstract

Large robotics projects can no longer be done by a single person writing a monolithic piece of code. Projects are now composed of modules which can be libraries, threads of execution, or stand-alone processes. Different people will almost certainly work on different modules, with the module developers sometimes being geographically distant from each other. Thus, good interprocess communications toolkits to compose these disparate modules into a functioning whole are the fundamental infrastructure of most large robotics projects. An interprocess communications toolkit abstracts the transport mechanisms, such as shared memory or network protocols, away from the module developer. The goal is for the module developer to use the communications toolkit to write portable code which can be moved from platform to platform and which can integrate with other modules seamlessly, whether those modules are actually implemented in neighboring processes, neighboring machines, or neighboring states. This paper performs a qualitative comparison of a wide variety of communications toolkits including IPT, RTC, NML, NDDS, MPI, and CORBA. The toolkits are compared based on criteria such as suitability for implementation of typical data flows in robotics, portability, and ease of use.

BibTeX

@techreport{Gowdy-2000-8047,
author = {Jay Gowdy},
title = {A Qualitative Comparison of Interprocess Communications Toolkits for Robotics},
year = {2000},
month = {June},
institute = {Carnegie Mellon University},
address = {Pittsburgh, PA},
number = {CMU-RI-TR-00-16},
keywords = {Interprocess Communications, Robotics},
}