DSM Review, NFS, AFS
Readings
- Jelica Protic et al., "Distributed Shared Memory: Concepts and Systems" (1996)
This paper reviews work in the area of distributed shared memory.
- Russel Sandberg et al., "Design and Implementation of the Sun Network Filesystem" (1985)
This is the original NFS paper.
- John H. Howard et al., "Scale and Performance in a Distributed File System" (1988)
This paper describes AFS and compares it to NFS.
Questions
For the Protic paper, consider the following:
- What were the major problems addressed in DSM research following Kai Li's dissertation?
- Did these advances change the scope of environments and problems appropriate for DSM?
- Why aren't DSM systems commonly in use today?
For the NFS and AFS papers, consider these questions:
- What were the key design goals of NFS and AFS?
- How well did they achieve their goals?
- What are their limitations?
- How suitable are NFS and AFS in modern small networks? Enterprise networks? Internet-scale applications? Why?
In Class Notes
Goals of NFS and AFS
NFS
- Remote access like local access
- Scale to ~50 clients
- Portability
- Lightweight
AFS
- Remote access like local access
- Scale to 5000 - 10000 hosts
- Portability (POSIX)
Differences
NFS
- NFS does a system call for every read/write
- NFS can operate with diskless clients
- Lightweight clients
- Files are up-to-date, can be inconsistent
- Trusted clients
- Stateless
AFS
- AFS does a system call only on retrieving and storing a file
- AFS assumes clients have a hard disk
- Heavier-weight client
- Files may be stale, but data is consistent
- Untrusted clients
- Stateful
Contributions
NFS
- Kmalloc
- VFS
- (XDR, SunRPC)
Aside: Kerberos for Dummies
1. Client Identification: <client> ==> <kerberos> 2. Client Request Ticket: <client> <== <kerberos> 3. Authenticate with Ticket: <client> ==> <server>