Arla—a really likeable AFS-client Arla—a really likeable AFS-client

Johan Danielsson free Parallelldatorcentrum, KTH [email protected]

Assar Westerlund portable Swedish Institute of Computer Science [email protected] efficient

supports disconnected operation and encryption of the data stream

1 2

What is AFS? AFS (cont.)

a world-wide distributed file system files are stored at dedicated file servers

also known as Andrew File System untrusted clients (cache managers) cache files on local disk

originally developed at CMU clients have to prove themselves to servers

later commercialised by Transarc

currently 150 public cells around the world

3 4 Consistency in AFS Implementation of Arla

when retrieving a file, the client gets a promise a kernel module (xfs) that the server will notify it before changing the

a user-level daemon (arlad) file

these communicate by sending messages over a the notification is called a callback character device

allows the client to read cached files without any network activity

5 6

Advantages Kernel module (xfs)

easier development small, 5000 lines, 32 KB on i386

better portability implements

better development tools a system call

possible to use normal libraries a character device

a virtual file system Disadvantages performance?

7 8 Implementation (cont.) Performance

network UFS cold Arla cold Arla warm /bin/ls arlad (I) mkdir 22 3 (II) cp 61811 User-level (III) r.stat 22 3 (IV) r.grep 55 5 (V) compile 34 36 34

VFS XFS Kernel (elapsed time in seconds of Andrew Benchmark on a ThinkPad 560)

9 10

Portability Portability (cont.)

Kernel modules for:

10% operating system dependent

SunOS lwp requires machine-specific context switch

code Solaris

NetBSD, FreeBSD, OpenBSD daemon runs on any Unix-like system

AIX worksonNTwithcygwin32

HP-UX

Digital Unix

11 12 Security and Encryption Disconnected operation

Kerberos 4-based (rxkad) allow file system operations without network connectivity

implementation written outside US read from already cached data

supports encryption of all data write operations to a log and replay later

13 14

Disconnected operation (cont.) Future work

fetch on miss no fetch on miss consistent connected N/A more performance not consistent fetch-only disconnected

more platforms

more disconnected operations

file + database servers

15 16 Acknowledgments Availability

It’s all Bjorn¨ Gronvall’s¨ fault http://www.stacken.kth.se/projekt/arla/

Magnus Ahltorp Robert Burgess Artur Grabowski Love Hornquist-¨ Astrand˚ and lots of other people (see THANKS)

17 18