Reliable broadcast protocols in unreliable networks

Broadcast is the task of delivering copies of a packet to all nodes in a communication network. A broadcast is called reliable if all the packets are accepted by all the nodes in finite time and in the correct order. This paper presents a class of reliable broadcast protocols for unreliable networks. One of these protocols achieves reliable broadcast with minimum broadcast cost, assuming that the network allows reliable broadcast at all. In case that the network's topology is stable, the minimum broadcast delay is achieved. No existing broadcast protocol achieves this goal. As a by-product, we achieve a new reliable routing protocol.