The broadcast operation in distributed systems is used to spread information
located at some nodes to all other nodes. This operation is often realized by
flooding, where the source nodes send a message containing the information to
all neighbors. Each node receiving the message for the first time forwards it
to all other neighbors. A stateless variant of flooding for synchronous systems
is called amnesiac flooding. In this case, every time a node receives a
message, it forwards it to those neighbors, from which it did not receive the
message in the current round. The algorithm is oblivious and therefore scales
very well. Stateless protocols are advantageous in high volume applications,
increasing performance by removing the load caused by retention of session
information and by providing crash tolerance. In this paper we analyze the
termination time of amnesiac flooding. We define the (k,c)-flooding problem,
which aims at finding a set S of size k, such that amnesiac flooding when
started concurrently by all nodes of S terminates in a minimal number of
rounds. We prove that this problem is NP-complete. We provide sharp upper and
lower bounds for the time complexity of amnesiac flooding and reveal a
discrepancy between bipartite and non-bipartite graphs. All results are based
on the insight, that for every non-bipartite graph there exists a bipartite
graph such that the execution of amnesiac flooding on both graphs is strongly
correlated. This construction considerably simplifies existing proofs for
amnesiac flooding and allows to analyze the (k,c)-flooding problem.Comment: 14 pages, 12 figure