ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

roscore reduce network bandwidth

asked 2013-02-07 12:00:58 -0500

ebbeowulf gravatar image

I just got warned about overloading my local network if I placed a bandwidth heavy sensor on one machine and the roscore on a different computer. What I don't understand is exactly how roscore coordinates data transfer.

For example, the roscore node is on machine A, and the sensor is on machine B. If all of the processes that need access to the data rich sensor remain on machine B, will that still require heavy network bandwidth? In other words, does all data get passed through the roscore on machine A, thereby overloading the network? or does it actually coordinate direct tcp sockets between processes so that I could intelligently separate my processes to prevent network overload?

Thank You!

edit retag flag offensive close merge delete

Comments

1

I warned you about running two bandwidth heavy nodes on different computers. The roscore itself is not the problem. :)

Ben_S gravatar image Ben_S  ( 2013-02-08 01:18:23 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted
3

answered 2013-02-07 14:22:33 -0500

Thomas gravatar image

Only subscribing to a topic is consuming bandwidth. The communication from/to roscore are negligible. So yes, if you run your two nodes on the same computer while having roscore on a second one you will be fine.

See ROS technical aspects page, section 6.1 for a diagram explaining this.

edit flag offensive delete link more
0

answered 2013-04-02 21:36:27 -0500

mhallak gravatar image

Well, that's theoretically correct but since a node is forced to connect to rosout and to clock topics:

  • topic: /rosout
    • to: /rosout
    • direction: outbound
    • transport: TCPROS
    • topic: /clock
    • to: /gazebo (http://darpaws5:45435/)
    • direction: inbound
    • transport: TCPROS

Generally those topics run where roscore runs.

edit flag offensive delete link more

Comments

clock topic is only used in simulation and rosout logging can be totally disabled by defining the appropriate macros at compile-time (not recommended unless you really have little bandwidth).

Thomas gravatar image Thomas  ( 2013-04-03 23:29:50 -0500 )edit

Question Tools

Stats

Asked: 2013-02-07 12:00:58 -0500

Seen: 764 times

Last updated: Apr 02 '13