110 likes | 124 Views
Network-Embedded Programmable Storage and Its Applications Randy Wang Princeton University. Experiments: Network-Embedded Programmable Storage. “Active capsules” that manipulate embedded storage Relationship with active nets: “Stem cells” vs. “blood vessels”
E N D
Network-Embedded Programmable Storage and Its Applications Randy Wang Princeton University
Experiments: Network-Embedded Programmable Storage • “Active capsules” that manipulate embedded storage • Relationship with active nets: • “Stem cells” vs. “blood vessels” • Make embedded storage as accessible as network resources • Decouple intelligence from infrastructure
An Application: A Meta Distributed File System STONEs (STOrage Network Elements) S0 S S S S S S S S S S Sb S1 S2 Ss Ss Ss Ss S3 S4 C C C C C C C C C C C C C Clients • More complex world than LAN vs. WAN • What is a “meta file system”? • A common framework, with • Customizable STONE components • For different topologies and different workloads • Possibly with a “STONE compiler” • Other applications: “P2P-rsync”, crawler, etc.
Party Lines • Tackling persistent storage is the next logical step for active nets • Network and storage resources complement each other • Network-embedded programmable storage: • Application-driven research • Rapid deployment of new applications • Sophisticated customization of a single application
SkunkNet: A Mobile Storage Network Skunk device Wired host 0 1 4 Weakly wired host (DSL) Disconnected server 6 3 WAN connectivity server 7 Strong wired link 5 Weak wired link 2 Ad hoc links Weak WAN link (cellular) (a) (b) • “Ad hoc file system” • Routing layer: route from any device to any other device • Storage layer: track which device has what data • Composition of the two layers: route to the best replica
Requirements • Minimum • A non-root account, access to a raw disk partition • Minimum++ • Vital stats, like pathchar • Root
Wish List (Two Interfaces) ... Application (Edge) Application (Edge) Application (Edge) PROGNOS Interface Application (Injected) Application (Injected) Application (Injected) ... PROGNOS SOS Interface SOS SOS SOS STONE STONE STONE • Per-node OS • Global OS • Resource container, code injection, persistent storage management, connectivity, location service, lock service
What we have done preliminary work on ... Application (Edge) Application (Edge) Application (Edge) PROGNOS Interface Application (Injected) Application (Injected) Application (Injected) ... PROGNOS SOS Interface SOS SOS SOS STONE STONE STONE • Per-node OS • Global OS • Resource container, code injection, persistent storage management, connectivity, location service, lock service
What we continue to improve on ... Application (Edge) Application (Edge) Application (Edge) PROGNOS Interface Application (Injected) Application (Injected) Application (Injected) ... PROGNOS SOS Interface SOS SOS SOS STONE STONE STONE • Per-node OS • Global OS • Resource container, code injection, persistent storage management, connectivity, location service, lock service
Stumbling blocks? • Mutual interference?