For each test, we measured the traffic required for propagating the update by value shipping and by operation shipping. Both the file data and the overhead are included in the traffic. In particular, for operation shipping, all fields in the operation logs: command, command-line arguments, current working directory, environment list, file-creation mask, meta-data, and fingerprints, and so on, were counted towards the traffic.
In Figure 4, we show the traffic reduction Lv/Lop, where Lv and Lop are the traffic volumes required for the update propagation by value shipping and by operation shipping respectively.
Previous Coda projects [7,14] have shown that cancellation optimization is effective in reducing the network traffic needed for propagating updates. For example, if a file is stored several times, then only the last STORE record is needed to be shipped. When we took the measurements, we did not wait for any possible cancellation optimization to happen, therefore, the measured traffic reductions achieved by operation shipping alone represent the best-case numbers. We excluded cancellation optimization because its effectiveness depends on usage patterns, and should be studied using file-reference traces. At this stage, we do not have file-reference traces performed at the level of user operations, so we have to evaluate operation shipping in isolation of cancellation optimization.
Nevertheless, the traffic reductions achieved by operation shipping were much more substantial than that achieved by cancellation optimization. 3 In 13 out of the 16 tests, the reduction exceeded a factor of 20; the highest reduction factor was 245.7 (T15); the smallest reduction was 12 (T7). In other words, operation shipping reduced the network traffic volumes by one to nearly three orders of magnitude.