what is the purpose of zeroconf and avahi?
Recently, I discovered a process on my ubuntu that was eating away at both processor time and memory, 18% and 10% respectively. Avahi-daemon
and I got rid of it along with pulseaudio
. It seems to me that there is no need for avahi-daemon
which is a zeroconf
derivative in itself. If this process caused issues, isn't well maintained, and eats up precious resources then why is it being utilized in ROS? All the way to Hydro, I see zeroconf. I read the discription provided by the ROS wiki, and checked Archlinux for zeroconf and avahi. I still don't see what purpose it serves because I don't see it being a dependency for anything other than ros-hydro-turtlebot-bringup.
What purpose does zeroconf and avahi serve when the amount of resources it consumes is detrimental in a resource scarce scenario such as most robot systems, e.g. 7-DOF manipulators, vision-based path planning/navigation, etc?
I am trying to understand what, why, and how of this package/stack. I feel like it should be deprecated.