1 / 17

Remote Files

Remote Files. Traditional Memory Interfaces. Process. Primary Memory Interface. Secondary Memory Interface. Virtual Memory. File Management. Device Interface. Physical Memory. Storage Devices. Multics Segmented Memory. Process. Primary Memory Interface. Secondary Memory Interface.

Download Presentation

Remote Files

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Remote Files

  2. Traditional Memory Interfaces Process Primary Memory Interface Secondary Memory Interface Virtual Memory File Management Device Interface Physical Memory Storage Devices

  3. Multics Segmented Memory Process Primary Memory Interface Secondary Memory Interface Segmented Virtual Memory File Management Device Interface Physical Memory Storage Devices Normal data flow Alternative data flow

  4. Explicit File Copying • Need a way for a process on one machine to pass info to a process on another machine • Technique • Sender writes a file • User manually copies file to a remote machine • Receiver opens the file and reads it • Very coarse grained • Very high latency

  5. Client Interface to Remote Store Comm Network Remote Secondary Memory Process Secondary Memory Interface File Management Device Interface Storage Devices

  6. Refined View Client Machine • Clients & server jointly implement file manager • Disk storage is at a shared server • Copy file contents to clients as needed Process Secondary Memory Interface File Management Server Machine Remote Access Remote Secondary Storage Storage Devices Comm Network Storage Devices

  7. Remote Disk Server file mgr: diskRequest(details); VDD: Pack parameters; VDD: Send request; (wait for response) (waiting for a request) RDA: Unpack parameters; RDA: Generate local disk request; (waiting) RDA: Generate reply; RDA: Send reply (waiting for a request) VDD: Receive reply; VDD: Unpack parameters; VDD: Return to file mgr Client Machine General File Management Server Machine Virtual Disk Driver Remote Disk Application Storage Devices Comm Network Storage Devices

  8. Exploiting Remote Disks • Diskless UNIX workstation • X Terminal • Network computer (“thin client”) • Palmtops and PDAs

  9. Performance & Reliability • Became commercially feasible in about 1986 • Biggest concern was reliability • Use datagrams for performance • How can the system assure that commands get executed? • If the server crashes: • How can we prevent “incomplete transactions”? • How can the client resume its operation?

  10. Reliable Command Execution • Using request time-outs • Issue command • Wait for a fixed t • Re-issue the command • Failed command send operation • Re-issue is appropriate • Failed command ACK operation • Is re-issued command appropriate? • Idempotent operations

  11. Crash Recovery • Distributed state • Client’s view of open files • Server’s view of open files • Distribution  less network traffic • Distribution  recovering state is difficult • Server must have stable memory • Can be built without special hardware, but expensive • Stateless servers • All state is kept at the client • All operations are idempotent • Stateless server  more network traffic • Stateless server  no server-side state recovery

  12. Remote File Server • Read/write management • Pack/unpack byte stream • Buffering • ... • Block management • Buffering • Device management • ... Client Machine General File Management Server Machine Client Part of Remote File System Server Part of Remote File System Storage Devices Comm Network Storage Devices

  13. Block Caching • Widely used in all file systems • In RFS can buffer at: • Server • Doesn’t avoid network latency • Client • Consistency • Sometimes use sequential write consistency (no sharing if there are multiple writers)

  14. Crash Recovery • Client has a file open and server crashes • Distributed state makes recovery difficult • Can counteract with a stateless server • But it requires that state be transmitted with every service request • Recovery-oriented file service, e.g., Sun NFS • Performance-oriented file service

  15. File-Level Caching • Copy an entire file to the client when it is needed • Requires enough client storage to hold any file • Widely-used in contemporary palmtops • File Consistency • Synchronization on any file write operation • Immutable files

  16. Directories -- Pathnames • Need a path through the internet to host in addition to path from root at the host • goober:/usr/bernie/good/stuff • /../goober/usr/bernie/good/stuff • Remote mounting • Mount a file system on a remote host (use a superpathname to reference server) • Use normal path names

  17. Opening a File Machine R / Machine S … usr bin etc / zip mt_pt … usr bin etc Machine T mount s_mnt / s_hop mount … usr bin etc zip t_mnt t_file

More Related