20100321 network filesystem_briefs

17
1 Network File Systems Briefs Bergwolf@linuxfb. org 3/20/2010

Upload: linuxfb

Post on 12-May-2015

339 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: 20100321 network filesystem_briefs

1

Network File Systems Briefs

[email protected]/20/2010

Page 2: 20100321 network filesystem_briefs

2

Index

DEC-DAP

SUN-NFS

AT&T-RFS

CMU-AFS

CMU-Coda

OFS-DCE/DFS

Microsoft-CIFS

NetApp-Filer

EMC-MPFS

Page 3: 20100321 network filesystem_briefs

3

Topic-File Storage

Block storage vs. file storage.

Block storage: EMC and Hitachi.– Block I/O access– Devices may be directly attached (SCSI or Fibre Channel) or distant accessed

(iSCSI or AoE)

File storage: NetApp and EMC Celerra.– File I/O access– Files and directories are present over the network.

Page 4: 20100321 network filesystem_briefs

4

NEC-DAP (Data Access Protocol)

Created in 1976

First wildly used network file system

A FAL (File Access Listener) is created on each data node to serve network-based access requests.

Use local file system to manage local device

Page 5: 20100321 network filesystem_briefs

5

RPC war-Sun ONC vs. Apollo NCS

1980s.

ONC (Open Network Computing Remote Procedure Call, now SunRPC).

– Always in big-endian order.

NCS (Network Computing System)– Avoid byte-swap if two peers share a common endianness.

Page 6: 20100321 network filesystem_briefs

6

SUN-NFS (Network File System)

Built on top of SUN RPC.

V1: in-house development

V2: RFC1904. 1989. First release. Stateless. UDP based. Without lock management. Big bull authors (including Bill Joy).

V3: RFC1838. 1995. 64-bit support. Asynchronous writes. TCP support. READDIRPLUS operation to get file handle and attributes while scanning dir.

V4: RFC3010 and 3530. Learn from AFS and CIFS. IETF. Performance. Security. Session. Includes a stateful protocol.

NFS semantic: flush on close – check return value of close(2) when working with NFS !

Page 7: 20100321 network filesystem_briefs

7

SUN-NFSv4.1

pNFS – MPFS

Directory delegation and notifications– Clients can have read-only delegated dir. So local cache is enough for any reads.– Server sends change notifications to clients that have delegated dir.

Multi-serve namespace– Server replicas to serve requests from clients

Page 8: 20100321 network filesystem_briefs

8

AT&T-RFS (Remote File System)

1980s. SVR3 (Unix System V release 3). Bell lab production.

Stateful. Lock management.

Complete UNIX/POSIX semantics.

Mount devices over network.

Digital Equipment, HP and IBM adopted NFS over RFS.

Page 9: 20100321 network filesystem_briefs

9

CMU-AFS (Andrew File System)

1988. Named after Andrew Carnegie and Andrew Mellon. Part of Andrew project.

Kerberos (C/S auth protocol from MIT) for authentication.

ACL on dir.

Client cache on local file system.

Cache consistency—Callback. Server saves all cache information and sends update notify if file changed.

Doesn’t support large shared file updating.– Single file per message in Andrew Message System, vs. single file per mailbox.

Volume. Volume quota. Read-only volume replicas.

Shared and local namespace.

Predecessor of Transarc, OpenAFS, Arla and Coda.

Page 10: 20100321 network filesystem_briefs

10

CMU-Coda

1987. From AFS-2

Client side persistent cache and logged write updates.– Local/global conflicts

Server replication, allow all servers to receive write updates.– Server/server conflicts

Extensive repair, both manual and automated.

Continued operation during partial network failures.

Network bandwidth adaptation.

Page 11: 20100321 network filesystem_briefs

11

OFS-DCE/DFS

Open Software Foundation(1988). HP, IBM against SUN and AT&T.

Developed by Transarc, based on AFS.

DCE/LFS (Local Journaling file System, aka Episode) as local cache layer. Improve write performance even over slow network connections.

Filesets management.

Transarc bought by IBM. OpenAFS announced by IBM in 2000. DCE/DFS killed by IBM in 2005.

Page 12: 20100321 network filesystem_briefs

12

Microsoft-CIFS (Common Internet File System)

AKA SMB (Server Message Block) protocol, originally designed at IBM.

Modified and Merged by Microsoft with LAN Manager product in 1990.

Renamed to CIFS in 1996.

Samba – reverse engineering open source implementation.

Opportunistic locking.– Batch Locks: client delays sending close request. If a subsequent open request is

given, the two cancels each other.– Exclusive Locks: If obtained, client may cache all changes before committing. If

others open the same file, server sends revocation notify and client flushes all changes.

– Level 2 OpLocks: After revoking a exclusive lock, server may send Level 2 OpLocks to allow client to cache read but exclude write.

Page 13: 20100321 network filesystem_briefs

13

Microsoft-CIFS cont.

SMB2 in 2006 (Windows Vista). Specification published.

Samba 4 adds support for SMB2.

Reduce control messages from over a hundred to nineteen.

Request pipelining: allow sending requests before response to previous req returns.

Compound multiple action in a single request.

Larger buffer size and symbolic links.

Durable file handle, allows a connection to survive brief network-outage without having to negotiate a new session.

Page 14: 20100321 network filesystem_briefs

14

NetApp-Filer

AKA NetApp Fabric-Attached Storage (FAS).

Originally NFS/CIFS based NAS solutions.

FTP, TFTP, HTTP, FC (Fiber Channel) and iSCSI are added later.

WAFL (Write Anywhere File Layout).– Read-only and read-write (FlexClone) snapshot.– Two directory models (UNIX and Windows) and two file security models (ACL and

bitmask)– Consistency points.– Automatic fragmentation, saving metadata anywhere on the disk, usually beside its

data blocks.

Page 15: 20100321 network filesystem_briefs

15

EMC—MPFS (Multi-Path File System)

Page 16: 20100321 network filesystem_briefs

16

More Over

Clustered file system.– Shared disk. – Translation from file-level ops to block-level must be done on client nodes.– Examples?

Distributed file system.– Similar to clustered file systems.– Replication and fault tolerance.– NFS, CIFS, AFS, Google GFS, etc.

Clustered NAS– Stripe data/metadata across the cluster of nodes.

Page 17: 20100321 network filesystem_briefs

Thank YOU~~

Most of the contents are taken from Wikipedia.

No copyright reserved except that of others’.