Check out the new USENIX Web site. next up previous
Next: Optimization 1: delta propagation Up: Propagating updates Previous: Propagating updates

Efficient update flooding

Figure: A simple flooding algorithm to distribute updates. This code assumes that updates are issued one at a time; the handling of concurrent updates is discussed in Section 5.2.
r: \pseudo{Replica being update...
...{Unlog after all the neighbors reply.}
\end{pseudocode} \end{center}\end{figure}

The basic method for propagating updates in Pangaea is flooding along graph edges, as shown in Figure 4. Whenever a replica is modified on a server, the server pushes the entire file contents to all the graph neighbors, which in turn forward the contents to their neighbors, and so on, until all the replicas receive the new contents. This simple flooding algorithm guarantees reliable update delivery as long as the replica graph is strongly connected. The following three sections introduce techniques for improving the efficiency of the basic flooding algorithm.


Yasushi Saito 2002-10-08