0
$\begingroup$

Rosanswers logo

Hi folks,

just a short question regarding the communication between nodes. Assuming that there are two systems running ROS. System A runs the roscore service, nodes on system B connect to it via an appropriately set ROS_MASTER_URI. Furthermore there are two nodes running on system B. The first node is a publisher and the second is a subscriber of the same topic.

Question is now: do messages between these nodes on system B travel through system A to reach their destination (the respective other node on system B) or is ROS intelligent enough to determine when nodes run on the same system and let them talk to each other sort of in private?


Originally posted by Hendrik Wiese on ROS Answers with karma: 1145 on 2014-03-29

Post score: 1

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

This is answered on the ROS Master wikipage:

"The ROS Master provides naming and registration services to the rest of the nodes in the ROS system. It tracks publishers and subscribers to topics as well as services. The role of the Master is to enable individual ROS nodes to locate one another. Once these nodes have located each other they communicate with each other peer-to-peer."

Thus, nodes will use the master to find each other, but actual message transfer is peer-to-peer (i.e. directly between two nodes).


Originally posted by Stefan Kohlbrecher with karma: 24361 on 2014-03-29

This answer was ACCEPTED on the original site

Post score: 2


Original comments

Comment by Hendrik Wiese on 2014-03-29:
Aaaah, I see. Wasn't able to find that by myself... somehow... well, thanks a lot, friend!

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.