Chapter 19 Consistent Global Snapshots and Stable Property Detection
In this chapter, we present the last of our four methods for simplifying the programming of asynchronous networks, namely, monitoring an asynchronous network algorithm A while it runs. For instance, a monitoring algorithm might
- assist in debugging A, say by checking for violation of desired invariants
- produce backup versions of A’s global state
- detect when A has terminated execution
- detect whether some of the processes of A are involved in a “deadlock,” that is, a situation in which several processes are all waiting for each other to do something
- compute some global quantity (e.g., the total amount of money) being managed by A
We focus on two notions in this chapter: consistent ...