  As the development of distributed systems progresses, more and more
challenges arise and the need for developing optimized systems and for
optimizing existing systems from multiple perspectives becomes more stringent.
In this paper I present novel algorithmic techniques for solving several
optimization problems regarding distributed systems with tree topologies. I
address topics like: reliability improvement, partitioning, coloring, content
delivery, optimal matchings, as well as some tree counting aspects. Some of the
presented techniques are only of theoretical interest, while others can be used
in practical settings.
