rules that control how messages are delivered between publishers and subscribers

In ROS 2, because it’s built on DDS (Data Distribution Service), every topic has tunable QoS settings.

These settings make a huge difference for things like:


🔸 (1) Reliability Policy

reliability=QoSReliabilityPolicy.BEST_EFFORT

Options

Why it matters


🔸 (2) Durability Policy

durability=QoSDurabilityPolicy.TRANSIENT_LOCAL  # or VOLATILE

Options

Policy Meaning
VOLATILE Messages exist only while the publisher and subscriber are both alive. When a new subscriber joins, it doesn’t get past messages.
TRANSIENT_LOCAL The publisher keeps the last message in memory, and when a new subscriber joins, it immediately sends that stored message.