Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
A COST-EFFECTIVE HIGH-BANDWIDTH STORAGE ARCHITECTURE G.A. Gibson, D. F. Nagle, K. Amiri, J. Butler, F.W. Chang, H. Gobioff, C. Hardin, E. Riedel , D. Rochberg, J. Zelenka Carnegie-Mellon U. ASPLOS ‘98 Paper highlights • Introduces Network-Attached Secure Disk architecture characterized by: – Direct transfers to clients – Secure interfaces via cryptographical support – Asynchronous non-critical path oversight (client can perform most operations us without synchronous appeals to file manager) – Variably-sized data objects Motivation • High demand for storage bandwidth caused by – Multimedia applications – Data intensive applications such as data mining • Want to achieve scalable bandwidth – Bandwidth that grows linearly with number of storage devices and client processors Storage architecture overview (I) 1. Local file system : • Sole solution for stand-alone computers Computer Disk Storage architecture overview (II) 2. Distributed FS: • Provides basic file services • If server processes data for clients, we have a Distributed Database System • Server machine could become bottleneck when the number of drives increases Client Server Disk Storage architecture overview (III) 3. Distributed FS with RAID Controller : • Improves reliability but adds one more layer Client Server K Disk Storage architecture overview (IV) 4. Distributed FS with DMA: • Lets disks and clients exchange data w/o server intervention Client Server Bulk data transfers K Disk Storage architecture overview (V) 5. Network-Attached Secure Disk: • Disk takes over several of the functions of the server Client Server R/W NASD Storage architecture overview (VI) 6. Network-Attached Secure Disk with Cheops (their own file striping system) Client Server R/W K NASD Related works • Disk-like network attached storage (Cambridge’s Universal File System, 1980) • Virtual volumes and virtual disks (mid 90’s) • Derived Virtual Devices (ISI’s Netstation, 1996) • Capabilities (1966) Enabling technology (I) • I/O-bound applications: multimedia, data mining of retail transactions • New drive attachment technologies: tendency to encapsulate drive communication over a serial switched packet-based SAN • Excess of on-drive transistors: can now have more intelligent drives Enabling technology (II) • Convergence of peripheral and interprocessor networks: – Clusters of workstations use Internet protocols • Not special-purpose interconnects • Cost-ineffective storage servers: – Server now much more expensive that the disks it manages Network-Attached Secure Disks • Modify storage devices to transfer data directly to clients – Eliminate server bottleneck • Present a flat-name space of variable length objects – Simple yet flexible • Do not provide full file system functionality – Other FS tasks left to file manager One way to look at NASD • Conventional architectures divide file system tasks between – A metadata service (directories and i-nodes) – A block storage service • The authors propose to – Let storage units handle block allocation – Let them communicate directly with clients Network-Attached Secure Disks • Architecture characterized by: – Direct transfers to clients – Secure interfaces via cryptographic support – Asynchronous non-critical path oversight • Client can perform most operations without synchronous calls to file manager – Variable length objects A NASD System NASD interface (I) • Less than 20 requests including: – Read and write object data – Read and write object attributes – Create and remove object – Create, resize, and remove partition – Construct a copy-on-write object version – Set security key NASD interface (II) • Resizable partitions allow capacity quotas to be managed by a drive administrator • Objects with well-known names and structures allow configuration and bootstrap of drives and partitions. – Also enable file systems to find a fixed starting point for an object hierarchy and a complete list of allocated object names NASD interface (III) • Object attributes – Provide timestamps, size, … – Allow capacity to be reserved and objects to be linked for clustering – Include an uninterpreted block of attribute space • Can be used by any application NASD interface (IV) • NASD security is based on cryptographic capabilities – Drive checks that client has proivate apt of capability authorizing operation • Data integrity and privacy ensured through encryption – Costly but expected to be implemented on special hardware Prototype implementation (I) • Working prototype of the NASD drive software runs as a kernel module in Digital UNIX • Each NASD prototype drive runs on a DECAlpha3000/400 (133MHz, 64MB) with two disks attached by two 5MB/s SCSI busses • Performance of this old machine is similar to that expected from future drive controllers Prototype implementation (II) • Two drives managed by a software striping driver approximate the rates expected from more modern drives • NASD object system implements its own internal object access, cache, and disk space management • Prototype uses DCE RPC over UDP/IP for communication – Severely limited prototype performance File Systems for NASD (I) • Implemented NFS and AFS on top of simulated NASDs • Files and directories stored as objects • NFS implementation was straightforward – Can store additional file attributes in uninterpreted block of attribute space – Can piggyback capabilities on file manager’s response to lookup requests File Systems for NASD (II) • AFS implementation required more thought – New RPC calls were added to obtain and relinquish capabilities – File manager does not know when an actual write takes place • Replaced callbacks by leases • NASD-NFS and NFS had benchmark times “within 5% of each other” File Systems for NASD (III) • Also implemented a simple parallel file system not discussed in class Conclusions • NASD – Supports direct device-to-client operation – Provides secure interfaces – Lets file managers provide clients with capabilities that allow them to interact directly with the devices (asynchronous oversight) – Lets devices serve variable-length objects with additional attribures