1
ASWN’04, August 11, 2004
Designing an NFS-based Mobile Distributed File System for Ephemeral - - PowerPoint PPT Presentation
Designing an NFS-based Mobile Distributed File System for Ephemeral Sharing in Proximity Networks Nikolaos Michalakis Dimitris Kalofonos Computer Science Department Pervasive Computing Group (PCG) New York University, New York, NY Nokia
1
ASWN’04, August 11, 2004
2
ASWN’04, August 11, 2004
3
ASWN’04, August 11, 2004
>> cd /sophia/pictures >> ./netscape /tom/cool_page.html >> /sophia/mplayer /mary/music/cool_song.mp3 >> /tom/xview /jack/cool_pic.jpg >> ./excel /office/not_so_cool_spreadsheet.xls >> ls /home/my_files/ HERMES’ PHONE
PROXIMITY NETWORK
INTERNET
TOM JOHN HERMES SOPHIA JACK
HOME
HERMES
OFFICE
HERMES
Example of persistent sharing Example of ephemeral sharing
4
ASWN’04, August 11, 2004
5
ASWN’04, August 11, 2004
6
ASWN’04, August 11, 2004
7
ASWN’04, August 11, 2004
8
ASWN’04, August 11, 2004
9
ASWN’04, August 11, 2004
10
ASWN’04, August 11, 2004
No errors. As long as the reassignment does not take longer than the timeout, the client only experiences a delay. Server disconnects and reconnects with old IP address: No errors. As long as the reassignment does not take longer than the timeout, the client only experiences a delay. Client disconnects and reconnects with old IP address: Client cannot mount. Mount process gets “can't get address for server” error. If hard mounted client blocks forever. If soft mounted it timeouts and fails (I/O error). Server network interface down: The mounted directory is empty, i.e. not mounted to anything. Network unreachable error, no matter whether data cached or not at the client. Client network interface down: No errors. Client is trying to contact old
blocks forever. If soft mounted it timeouts and fails (I/O error). Server IP address change: Client receives an “access denied” error. The server has already created a list of client addresses that can access the exported file systems. Client receives a “stale filehandle”
that is exported to another client address. Client IP address change: Client not mounted (server already started) Client has mounted
11
ASWN’04, August 11, 2004
time to read file (s)
Effect of RTT vs Bandwidth (measurements)
2 4 6 8 10 12 50 100 150 200 250 300 350
bandwidth (KB/s)
WLAN BTH
10K file 50K file 100K file
time to read file (s)
Effect of RTT vs Bandwidth (measurements)
2 4 6 8 10 12 50 100 150 200 250 300 350
bandwidth (KB/s)
WLAN BTH
10K file 50K file 100K file
Effect of RTT vs Bandwidth (measurements)
2 4 6 8 10 12 50 100 150 200 250 300 350
bandwidth (KB/s)
WLAN WLAN BTH BTH
10K file 50K file 100K file 10K file 50K file 100K file
12
ASWN’04, August 11, 2004
Effect of RTT vs Bandwidth (simulation model) 10 20 30 40 50 60 70 1 10 100 1000
Bandwidth (KB/s) log scale
Time to read 50K file (s)
RTT=200ms RTT=100ms RTT=20ms Effect of RTT vs Bandwidth (simulation model) 10 20 30 40 50 60 70 1 10 100 1000
Bandwidth (KB/s) log scale
Time to read 50K file (s)
RTT=200ms RTT=100ms RTT=20ms RTT=200ms RTT=100ms RTT=20ms
13
ASWN’04, August 11, 2004
BTH dark zone (measurements)
20 40 60 80 100 120 140 20 40 60 80 100 120 140
Time (s) RPC seq. no
timeout =0.1s timeout =0.5s timeout =1s timeout =10s T C P UDP, timeout =0.1s UDP, timeout =0.5s UDP, timeout =1s UDP, timeout =10s T C P
BTH dark zone (measurements)
20 40 60 80 100 120 140 20 40 60 80 100 120 140
Time (s) RPC seq. no
timeout =0.1s timeout =0.5s timeout =1s timeout =10s T C P timeout =0.1s timeout =0.5s timeout =1s timeout =10s T C P UDP, timeout =0.1s UDP, timeout =0.5s UDP, timeout =1s UDP, timeout =10s T C P
BTH dark zone (measurements)
0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 20 40 60 80 100 120
RPC req. no time to reply (s)
timeout =0.1s timeout =0.5s timeout =1s timeout =10s TCP
BTH dark zone (measurements)
0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 20 40 60 80 100 120
RPC req. no time to reply (s)
timeout =0.1s timeout =0.5s timeout =1s timeout =10s TCP timeout =0.1s timeout =0.5s timeout =1s timeout =10s TCP
14
ASWN’04, August 11, 2004
Effect of disconnections (measurements)
500 1000 1500 2000 2500 3000 10 20 30 40 50 60 70 80 90 100 Time (s) RPC seq. no cold no discon. UDP warm no discon. UDP cold with discon. UDP warm with discon. UDP cold with discon. TCP warm with discon. TCP
5.5s 5.5s 5.5s finish when no time wasted (warm) finish when no time wasted (cold) wasted time (warm) wasted time (cold)
Effect of disconnections (measurements)
500 1000 1500 2000 2500 3000 10 20 30 40 50 60 70 80 90 100 Time (s) RPC seq. no cold no discon. UDP warm no discon. UDP cold with discon. UDP warm with discon. UDP cold with discon. TCP warm with discon. TCP
5.5s 5.5s 5.5s finish when no time wasted (warm) finish when no time wasted (cold) wasted time (warm) wasted time (cold)
15
ASWN’04, August 11, 2004
Effect of packet loss rate (simulation model)
50 100 150 200 250 300 350 5 10 15 20 25
packet loss rate (%) time to read 100K file (s) timeo=0.1s timeo=0.5s timeo=1s timeo=10s TCP
Effect of packet loss rate (simulation model)
50 100 150 200 250 300 350 5 10 15 20 25
packet loss rate (%) time to read 100K file (s) timeo=0.1s timeo=0.5s timeo=1s timeo=10s TCP
16
ASWN’04, August 11, 2004
17
ASWN’04, August 11, 2004
18
ASWN’04, August 11, 2004
RO M-DFS Client (loopback server) Cache Manager (loopback client) RO M-DFS Server (loopback client)
App VFS VFS NFS client NFS server NFS server local FS local FS User-level Kernel-level M-DFS server
file_op vnode file_op inode NFS RPC M-DFS RPC
M-DFS client
RO M-DFS Client (loopback server) Cache Manager (loopback client) RO M-DFS Server (loopback client)
App VFS VFS NFS client NFS server NFS server local FS local FS User-level Kernel-level M-DFS server
file_op vnode file_op inode NFS RPC M-DFS RPC file_op vnode file_op inode NFS RPC M-DFS RPC
M-DFS client
19
ASWN’04, August 11, 2004