Top Banner
Simple PEer to peER File System (SPEERFS) Done by: Assaf Waksman Benny Pano Supervised by: Uri Schonfeld On Spring 2005
14

Simple PEer to peER File System (SPEERFS)

Jan 02, 2016

Download

Documents

Claudia Barrera

Simple PEer to peER File System (SPEERFS). Done by: Assaf WaksmanBenny Pano Supervised by: Uri Schonfeld On Spring 2005. Background. P2P – A way of sharing information among many equal work stations File System – A database that supports and stores information units called files. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Simple PEer to peER File System (SPEERFS)

Simple PEer to peERFile System

(SPEERFS)

Done by:

Assaf Waksman Benny Pano

Supervised by:

Uri Schonfeld

On Spring 2005

Page 2: Simple PEer to peER File System (SPEERFS)

Background

• P2P – A way of sharing information among many equal work stations

• File System – A database that supports and stores information units called files.

• A need for sharable space that holds file-system instances arises:Achieves availability of information everywhere, as well as decrease in bandwidth load over a single server.

Page 3: Simple PEer to peER File System (SPEERFS)

Objective

Designing and implementing a distributed file system with a P2P approach.

The system will let a user the ability to mount and use roots, which will be shared among the peers.

Page 4: Simple PEer to peER File System (SPEERFS)

Considerations and Assumptions

• The files are small

• There are no sudden crashes of peers

• A peer’s bandwidth is of domestic type• There are no simultaneous reads and/or

writes to the same file (not including directories)

Page 5: Simple PEer to peER File System (SPEERFS)

System’s goal characteristics

• Scalable P2P network

• Maintain data integrity

• Equality among peers

• Support basic FS operations needed by the OS

• Ease of use

Page 6: Simple PEer to peER File System (SPEERFS)

Architecture overview

Find a value’s holder

Create / Delete / Write /

Read

roots, files, directories

Interface / Driver

Create / Delete roots

File-System

P2P

Page 7: Simple PEer to peER File System (SPEERFS)

NFS Protocol

• Client Server relationship

• Gives the ability for remote users to mount a file system that populates the server

• Uses the RPC mechanism

• Supports {READ, WRITE, CREATE, REMOVE,

MKDIR, RMDIR, READDIR, etc.} remote procedure calls

Page 8: Simple PEer to peER File System (SPEERFS)

Chord Protocol

• Each peer has a unique value.

• Each peer has a successor and a predecessor in the network.

• A peer is responsible for a values’ range between his predecessor and himself.

• When a new peer joins the network, his successor’s responsibility range is updated accordingly.

Page 9: Simple PEer to peER File System (SPEERFS)

Chord Qualities

• Maintains scalability

• Search for a value: O(logN)

• Join / departure of a peer: O((logN)^2)

• Maintains data integrity and organization

Page 10: Simple PEer to peER File System (SPEERFS)

Chord Demonstration

Page 11: Simple PEer to peER File System (SPEERFS)

File-System’s Data Structures• Every file in the file system is physically

stored by the appropriate peer, according to the chord protocol.

• Each peer has a database file that holds a list of all the files stored by this peer.

• Each directory in the file system has a physical database file that contains a list of all the content of that directory.

• The system supports passwords enforcement.

Page 12: Simple PEer to peER File System (SPEERFS)

System’s PackagesWere made:• chord – supports the ChordPeer class• com – supports communication operations• misc – stores helper classes• scome – supports the ScomePeer class

Was altered:• nfsserver – implements an NFS server and contains the

main method

Was used:• org.acplt.oncrpc – implements the RPC mechanism

needed by the NFS server

Page 13: Simple PEer to peER File System (SPEERFS)

Major Classes

• Peer – supports communication’s and basic peer’s functionality.

• ChordPeer – inherits from Peer and implements the chord protocol.

• ScomePeer – inherits from Peer and supports file system’s functionality.

• Listener – Receives messages from other peers and initiates their handling.

Page 14: Simple PEer to peER File System (SPEERFS)

Future Improvements• Handle simultaneous joins of peers to the

chord network

• Handle hostile messages

• Support file links in the SCOME layer

• Support multiple copies of files’ data

• Limit the amount of data a peer can hold

• Write a designated driver for the OS

• Encrypt and compress messages and databases