nest: network storage
DESCRIPTION
NeST: Network Storage. Flexible Commodity Storage Appliances John Bent, Miron Livny, Andrea Arpaci-Dusseau and Remzi Arpaci-Dusseau. Terms. Appliance (Merriam-Webster) b : an instrument or device designed for a particular use; specifically a household or office device Storage appliance - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/1.jpg)
NeST: Network Storage
Flexible Commodity Storage AppliancesJohn Bent, Miron Livny, Andrea Arpaci-Dusseauand Remzi Arpaci-Dusseau
![Page 2: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/2.jpg)
TermsAppliance (Merriam-
Webster) b : an instrument or device
designed for a particular use; specifically a household or office device
Storage appliance Storage plus access methods
![Page 3: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/3.jpg)
What storage users wantReliability and availabilityManageability
cost of management > cost of storage itself
“no futz” computingScalabilityPerformance
![Page 4: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/4.jpg)
What storage vendors haveNetApp, EMC, others make storage
appliances (network-attached storage)Manageable
Just plug it in and it works Administrative web interface
Reliable and available Standard RAID techniques
High performance Specialized, thin OS focused on serving files
![Page 5: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/5.jpg)
What storage vendors get,annual revenues
NetApp
$800 million in 2000
EMC
$9 billion in 2000
![Page 6: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/6.jpg)
What’s the problem?False coupling between HW and SW“Playground syndrome”Myth of specialization
![Page 7: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/7.jpg)
H/W and S/W are bundled Hardware decisions are imposed Hard to ride commodity curve
Example:Netapp F720
• $35,000.00, 252 GB• $138 / GB
Maxtor DiamondMax• $279.00, 80 GB• $3.50 / GB
![Page 8: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/8.jpg)
“Playground syndrome”“We have storage appliances . . .
if you use these protocols, if you use these security mechanisms, if you are comfortable with our data
semantics”Non-flexible software entity
![Page 9: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/9.jpg)
Myth of specializationSpecialize for one protocol on one machineSpecialization decreases over time as
Protocols are added Product line expands
Example: Netapp software Generation 1 fit on a single floppy Generation 2 took six Generation 3?
![Page 10: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/10.jpg)
Alternatives?Appliance (Merriam-
Webster) a : a piece of equipment for
adapting a tool or machine to a special purpose
![Page 11: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/11.jpg)
Our game?Flexible, commodity based, software-
only storage appliancesGoal
Find a networked machine “Drop” some software on it Have a ready to use storage appliance
with flexible mechanisms
![Page 12: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/12.jpg)
New worlds, new problemsDiverse hardware, software platforms
Netapp, EMC advantagefewer platforms, control over OS
Our approachAutomate configuration to each host system
• Hardware example - use file system or self-manage• Software example - use either read/write or mmap
Cost of flexibilityKey is design of the software
![Page 13: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/13.jpg)
OutlineIntroductionBuilding flexible storage modules
Big picture Protocol layer Concurrency architecture Storage layer
Motivations for flexible storage appliancesConclusion and current status
![Page 14: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/14.jpg)
NeST structureCleanly separated modules for
communication, transfer and storage Protocol layer
Maps diverse protocols into common control flows Concurrency architectures
Different models to maximize system throughput Storage layer
Provides abstract interface to disks
![Page 15: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/15.jpg)
NeST structure
Protocol Layer
GFTP NeST WiND HTTP NFS
CentralControl
Concurrency ArchitectureEvent driven
Multi-process
Multi-threaded
Transfer request
Storage Layer
Raw disk Local FS RAID
![Page 16: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/16.jpg)
Protocol layerA collection of servers is less than the sum of their parts.
HTTPdNFSd
Operating system Operating system
NeST
HTTPNFS
![Page 17: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/17.jpg)
Consolidate protocolsSingle point of control
Storage quotas and guarantees can be supported across multiple protocols.
Bandwidth can be controlled and quality of service can be guaranteed.
Single administrative interface Set policies Manage user accounts
![Page 18: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/18.jpg)
Protocol layer implementationEach protocol listens on well-defined
portCentral control accepts connectionsProtocol layer reads from connection and
returns generic request objectLike Linux V-nodes
Add new protocol by writing a couple of methods
![Page 19: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/19.jpg)
Protocol layer example,directory list request
FTP
NeSTspeak
Protocol layer
“31: LIST”
“5”
Central controlDirectory list
Storage layer
Directory list
Linked list
Linked list
“ftp, ftp, ftp”
“nest, nest”
![Page 20: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/20.jpg)
Concurrency architectureThree difficult goals
Low latency High bandwidth Multiple simultaneous clients
No single portable solution Provide multiple models to provide solutions on a
range of different platformsMulti-threadedMulti-processEvent driven
![Page 21: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/21.jpg)
Concurrency architecture
Concurrency architectureEvent driven Multi-process Multi-threaded
Central control creates transfer object Socket descriptor from the protocol layer File descriptor from the storage layer
Transfer object passed to concurrency architecture
![Page 22: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/22.jpg)
Concurrency on Linux
![Page 23: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/23.jpg)
Storage layerThree needed areas of flexiblity
File systems interfacesExample: read()/write() or mmap()
Abstract storage modelsRAID, JBOD, etc.
User account administrationCreation and removalQuotas and guarentees for users and groups
![Page 24: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/24.jpg)
File system interfaces on Linux
![Page 25: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/25.jpg)
OutlineIntroductionBuilding flexible storage modulesMotivations for flexible storage
appliancesConclusion and current status
![Page 26: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/26.jpg)
Clients have different needsCommunication protocols Replacement costsData semanticsSecurity and authentication
![Page 27: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/27.jpg)
Communication protocolsThe Esperanto problemToo many protocols to implement them
allToo many clients use proprietary
protocolsStorage must allow pluggable protocols.
![Page 28: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/28.jpg)
Replacement costsInfinite cost to replace first class data.Variable cost to replace cached data
depending on size and distance.Variable cost to replace job output files
depending on computation cost.
Cheap cached files First class data
Cost aware storage can effectively increase its own capacity.
![Page 29: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/29.jpg)
Data semanticsMust stored objects be protected
from read and write dependencies?Is transaction support necessary?Acceptable replies to storage
requests.
![Page 30: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/30.jpg)
Data semantics, exampleProblem
PFS on top of FTP fakes open read may then return file not found
Solution Mechanisms are needed to support flexible
semantics independent of the transfer protocol.
Divorce semantics from the protocol.
![Page 31: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/31.jpg)
Security and authenticationOwnershipPrivacyEncryptionAuthenticationAccess rights
![Page 32: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/32.jpg)
Who, when, how and how much?
Abstinent Promiscuous
Who is allowed to use the storage?Promiscuity and monogamy are easyPolygamy is also easy
![Page 33: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/33.jpg)
Do I know you?
Problem Migrant grid users may need temporary,
preferential storage accessSolution
Provide mechanisms to advertise available storagecreate self-destructing user accounts
Matchmake applications with storage opportunities.
![Page 34: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/34.jpg)
OutlineIntroductionBuilding flexible storage solutionsMotivations for flexible storage
appliancesConclusion
Current status Future work Concluding remarks
![Page 35: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/35.jpg)
Current statusConcurrency architectures are done
Gets, puts, reads and writes perform wellVirtual protocol class interface is built
NeST speak is fully implemented Grid ftp coming soon!!
Simple first implementation of storage reservations and remote quota management is done Venkateshwaran Venkataramani
![Page 36: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/36.jpg)
Future workDiscovery process of client storage
requirements Quality of service guarantees for
bandwidth and storageSupport for transient and
opportunistic users
![Page 37: NeST: Network Storage](https://reader035.vdocuments.us/reader035/viewer/2022062410/56816330550346895dd3b167/html5/thumbnails/37.jpg)
Concluding remarksReturn storage to the commodity
curve by creating software-only storage appliances
Allow greater storage flexibility for a wide range of application needs