This preview shows page 1. Sign up to view the full content.
Unformatted text preview: iginal with saved copy,
returning “speculation failed” addition, our version of BlueFS provides synchronous I/O
in which all ﬁle modiﬁcations are safe on the server’s disk
b efore an op eration is observed to complete. Despite providing these strong guarantees, BlueFS is 66% faster than
non-sp eculative NFS over a LAN and more than 11 times
faster with a 30 ms delay. 2. MOTIVATION: SPECULATION IN NFS
Figure 1 illustrates how Sp eculator improves distributed
ﬁle system p erformance. Two NFS version 3 clients collaborate on a shared pro ject that consists of three ﬁles: A, B,
and C. At the start of the scenario, each client has up-todate copies of all ﬁles cached. Client 1 modiﬁes A and B;
client 2 then op ens C and B. Client 2 should see the modiﬁed version of B since that ﬁle was closed by client 1 b efore
it was op ened by client 2.
When an application closes a ﬁle, the Linux 2.4.21 NFSv3
client ﬁrst sends asynchronous write remote procedure calls
(RPCs) to the server to write back any data for that ﬁle
that is dirty in its ﬁle cache—these RPCs are necessary to
provide close-to-op en consistency. After receiving replies for
all write RPCs, the client sends a synchronous commit RPC
to the server. The server replies only after it has committed
all modiﬁcations for that ﬁle to disk. The NFS client returns
from the close system call after receiving the commit reply.
The commit RPC provides a safety guarantee, namely that
no ﬁle modiﬁcations will b e lost due to a server crash after
the ﬁle ha...
View Full Document
This note was uploaded on 05/30/2013 for the course COMP SCI 15-812 taught by Professor Smith during the Spring '12 term at Carnegie Mellon.
- Spring '12