[[!toc levels=3]]
## 1 General
The General Section of the [[AFSFrequentlyAskedQuestions]].
- [[PreambleFAQ]]
- [[UsageFAQ]]
- [[AdminFAQ]]
- [[ResourcesFAQ]]
- [[AboutTheFAQ]]
- [[FurtherReading]]
### 1.01 What is AFS?
AFS is a distributed filesystem that enables co-operating hosts (clients and servers) to efficiently share filesystem resources across both local area and wide area networks.
AFS is based on a distributed file system originally developed at the Information Technology Center at Carnegie-Mellon University that was called the "Andrew File System".
"Andrew" was the name of the research project at CMU - honouring the founders of the University. A spin-off company, Transarc Corporation (now part of IBM), started producing and marketing a commercial version of AFS in 1989.
In November, 2000, IBM Open-Sourced AFS, creating [[OpenAFS]]. [[OpenAFS]] is under active development; as of this writing, the 1.6.4 release is being prepared for Unix-like platforms, and the 1.7 series for Windows is updated regularly.
### 1.02 Who supplies AFS?
[[OpenAFS]] is available from the [[OpenAFS]] website. An independent open source project, Arla, supports some clients that [[OpenAFS]] does not, but has not been updated since release 0.90 in early 2007; the release of [[OpenAFS]] largely removed the reasons for the development of Arla and its sister project Milka (an open source AFS server).
There is also an incomplete kernel-based AFS client (only) for Linux, maintained by Red Hat Software.
IBM no longer markets AFS and has declared an end-of-life for support.
|
AFS |
NFS |
File Access |
Common name space from all workstations |
Different file names from different workstations |
File Location Tracking |
Automatic tracking by file system processes and databases |
Mountpoints to files set by administrators and users |
Performance |
Client caching to reduce network load; callbacks to maintain cache consistency |
No local disk caching without local configuration of `cachefs`; limited cache consistency |
Andrew Benchmark (5 phases, 8 clients) |
Average time of 210 seconds/client |
Average time of 280 seconds/client |
Scaling capabilities |
Maintains performance in small and very large installations |
Best in small to mid-size installations |
|
Excellent performance on wide-area configuration |
Best in local-area configurations |
Security |
Kerberos mutual authentication |
Security based on unencrypted user ID's |
|
Access control lists on directories for user and group access |
No access control lists |
Availability |
Replicates read-mostly data and AFS system information |
No replication |
Backup Operation |
No system downtime with specially developed AFS Backup System |
Standard UNIX backup system |
Reconfiguration |
By volumes (groups of files) |
Per-file movement |
|
No user impact; files remain accessible during moves, and file names do not change |
Users lose access to files and filenames change (mountpoints need to be reset) |
System Management |
Most tasks performed from any workstation |
Frequently involves telnet to other workstations |
Autonomous Architecture |
Autonomous administrative units called cells, in addition to file servers and clients |
File servers and clients |
|
No trust required between cells |
No security distinctions between sites |
|
[ source: ftp://ftp.transarc.com/pub/afsps/doc/afs-nfs.comparison ] |
Other points:
- Some vendors offer more secure versions of NFS but implementations vary. Many NFS ports have no extra security features (such as Kerberos).
- The AFS Cache Manager can be configured to work with a RAM (memory) based cache. This offers signifigant performance benefits over a disk based cache. NFS has no such feature. Imagine how much faster it is to access files cached into RAM!
- The Andrew benchmark demonstrates that AFS has better performance than NFS as the number of clients increases. A graph of this (taken from Andrew benchmark report) is available in:
- ![20050131\_graph\_afs\_nfs.jpg](http://i.imgur.com/Ir6YS.jpg)