160 likes | 169 Views
Towards I-Space Ninja Mini-Retreat June 11, 1997. David Culler, Steve Gribble, Mark Stemm, Matt Welsh Computer Science Division U.C. Berkeley. Outline. Placing I-Space within Ninja System Architecture TACC as a starting point Ninja I-Space Requirements Java opportunities
E N D
Towards I-SpaceNinja Mini-RetreatJune 11, 1997 David Culler, Steve Gribble, Mark Stemm, Matt Welsh Computer Science Division U.C. Berkeley
Outline • Placing I-Space within Ninja System Architecture • TACC as a starting point • Ninja I-Space Requirements • Java opportunities • Strawman Framework • Discussion Ninja I-space
Ninja Perspective • Information Devices (~10 Billion) • Connected Stationary Computers (~100 Million) • Scalable Servers (~Million) Units Active routers Bases Small Devices become Powerful through the infrastructure Ninja I-space
Example: Super Mail Server Kiosk • Diverse ubiquitous access • connected or disconnected • move function and customization into scalable service • ex: filter with arbitrary predicate PDA Laptop Desktop Customized Mail Service Ninja I-space
Operational Behavior • Devices find ARs • Build a “wide area path” of connectors and operators to service. • Active transformation at each step • Careful management of state Units Active routers Bases Ninja I-space
Generalized Active Messages • Message arrival causes handler to fire and perform computation to additional communication • named or encapsulated • Units initiate proxy in AR, ARs route and transcode, Base services react • Each layer has a distinct execution environment • control model, storage, protection, events, fault behavior Ninja I-space
Units Active routers Bases I-Space • Execution environment for scalable, available, customizable, and easily constructed Base services You are here Ninja I-space
Toward the I-Space Design • TACC • framework for building a restricted class of scalable, available services • transformation, aggregation, caching • logically stateless • Java • safe language suitable for mobile code • a world of distributed objects • oriented to virtual machines Ninja I-space
Service request Front-end service threads User Profile Database Manager Physical processor Worker Processes Caches TACC review • Service specified by FE thread logic • Worker = function operator (state-free transformation) • Shared among services, unix process protection • Very limited hard state • Manager responsible for logical and physical mapping • monitors progress and resources • simple restart model Ninja I-space
Ninja I-space requirements • Persistent state • Polymorphic operators • functionally equivalent operations on strongly typed content • User customizable services • customize operators within service • customize service logic • Composable services Ninja I-space
Key lesson from TACC • Clean division of responsibilities • datapath (transformational workers) • control (service thread logic) • management • manipulation of persistent state • Obtain performance and ease of service construction by constraining the programming methodology • not by introducing many low level primitives • critical to find the “sweet spot” Ninja I-space
Java - the natural step • Service thread ~ servlet • Worker operation ~ method invocation • Overloading • Managed worker invocation => extension to RMI • mapping from type to method • mapping to physical resources • monitoring progress, failure, restart Ninja I-space
Manager Worker Processes Caches Opportunities • User customization of operators is easy • provide “load worker” request • extend manager mapping to include user context • Path to user composition of services • expose “worker” API • active service methods ActiveService Ninja I-space
Opportunities (cont) • Worker VM allows sandbox to be better tailored • VM offers additional point of fault handling control Ninja I-space
Millennium Testbed (started 9/97) Business SIMS BMRC Chemistry C.S. E.E. Biology Gigabit Ethernet Astro NERSC M.E. Physics N.E. Math IEOR Transport Economy C. E. MSME Ninja I-space
Gigabit Ethernet Partnership => Testbed for I.S. Research Wireless Infrastructure Future Devices Cell Phones PDAs Ninja I-space