Next-Generation Internet-Scale Systems Ninja/Millennium Projects David E. Culler Computer Science Division U.C. Berkeley ninja.cs.berkeley.edu www.millennium.berkeley.edu Future Internet-Scale Systems • Information Devices (~10 Billion) • Connected Stationary Computers (~100 Million) 11/7/2015 Ninja Overview • Scalable Servers (~Million)

Download Report

Transcript Next-Generation Internet-Scale Systems Ninja/Millennium Projects David E. Culler Computer Science Division U.C. Berkeley ninja.cs.berkeley.edu www.millennium.berkeley.edu Future Internet-Scale Systems • Information Devices (~10 Billion) • Connected Stationary Computers (~100 Million) 11/7/2015 Ninja Overview • Scalable Servers (~Million)

Next-Generation Internet-Scale
Systems
Ninja/Millennium Projects
David E. Culler
Computer Science Division
U.C. Berkeley
ninja.cs.berkeley.edu
www.millennium.berkeley.edu
Future Internet-Scale Systems
• Information
Devices
(~10
Billion)
• Connected
Stationary
Computers
(~100 Million)
11/7/2015
Ninja Overview
• Scalable
Servers
(~Million)
2
Internet-Scale Systems
• Extremely large, complex, distributed,
heterogeneous, with continuous and rapid
introduction of new technologies
• Feasible architectures
– Decentralized, scalable algorithms
– Dynamically deployed agents where they are needed;
“Big infrastructure, small clients”
– Incremental processing/communications growth
– Careful violation of traditional layering
• Implementation approach based on incremental
prototyping, deployment, evaluation,
experimentation
11/7/2015
Ninja Overview
3
Imagine
• You walk into a room
• Your PDA connects to the local
infrastructure and asks it to build a
custom GUI
• Next, your PDA asks the
infrastructure for a path out to
your personal information space,
where agents are processing your
e-mail, v-mail, faxes, and pages
You have complete, secure,
optimized access to local devices
and your private resources
11/7/2015
Ninja Overview
4
Vision  Goal
• The next internet revolution will come from enabling
component services and pervasive access
– not vertically integrated Information Technology
 Dynamic, programmatic creation / composition of
scalable, highly available, & customizable services
– Automatic adaptation to end device characteristics and network
connectivity
• Arbitrarily powerful services on arbitrarily small clients
using a proactive infrastructure
11/7/2015
Ninja Overview
5
NOW Project
• Breakthrough design
techniques for largescale systems
• Low-overhead
interface to enable
emerging networks
– Active Messages
• Explore novel OS
designs
• World-leading cluster
• Basis for Inktomi
11/7/2015
Ninja Overview
6
Transcoding Proxies
Scalable Servers (NOW)
Info. Appliances
Network Computers
Legacy Servers
Spoon feed web
pages to PDAs
Laptops, Desktops
Transformation, Aggregation, Caching, and Customization (TACC)
 Scalability and availability
 Limited customizability and locality and no persistence
11/7/2015
Ninja Overview
7
ProActive Approach
• Create a framework that enables programmatic
generation and composition of services out of
strongly typed reusable components
• Key Elements
– Structured architecture with a careful partitioning of state
» Bases, Active Routers, and Units
– Wide-area paths formed out of strongly-typed components
» Operators and Connectors
– Execution environments with efficient, but powerful
communication primitives
» Active Messages + capsules
» TACC + persistence + customization
11/7/2015
Ninja Overview
8
Structured Architecture
• Bases
–
–
–
–
–
highly available
persistent state (safe)
databases, agents
“home” base per user
service programming environment
Wide-Area Path
• Active Proxies
–
–
–
–
not packet routers
soft-state
well-connected
localization (any to any)
• Units
–
–
–
–
sensors / actuators
PDAs / smartphones / PCs
heterogeneous
Minimal functionality: “Smart Clients”
11/7/2015
Ninja Overview
9
Example: TopGun
WingMan/Mediaboard Operation
PDA
Legacy
Server
Image Converter
AP
PDA Proxy
Base
MediaBoard
Un-Zip
Multicast
Connector
Aggregator
PC
AP
Mic
11/7/2015
Camera
Ninja Overview
10
NINJA Service Architecture
• Operators/Connectors/Interfaces
• Paths
– Wide-Area Paths
– Interface Interconnection
– Path Optimization
• Units, Active Proxies, and Bases
• Services
– Service Discovery
– Automatic Path Generation
• Example Applications
– Universal remote control/smart spaces
– Universal In-Box/Personal Information Management
11/7/2015
Ninja Overview
11
Operators/Connectors
Operators:
–
–
–
–
transformation
aggregation
agents
PI provides secure
execution environment
Connectors:
–
–
–
–
11/7/2015
abstract wires
ADUs
varying semantics
uni/multicast
Interfaces:
– strongly typed
– language independent
– control channel
» path changes
» authentication
» feedback
Ninja Overview
12
Wide-Area Paths
• Creation (explicit or automatic):
– Query Service Discovery Service to find logical path of operators
– Place operators onto nodes:
» Path is unit of resource allocation and authentication
– Connectors are polymorphic: entire path must type check - statically
• Optimization:
– Add (or transpose) operators
» forward error-correction
» compression/decompression
– Change operators, connectors, locations, or parameters
• Interoperability:
– Wrapper operators for legacy servers
– Leverage COM objects as operators
11/7/2015
Ninja Overview
13
iSpace Execution Environment
operator
upload
Service request
service threads
Managed RMI++
Physical
processor
Caches
Persistent
Storage
Operators
• parallel application framework on Bases
– RMI++ hides complexity of scalability and availability
– Dynamic customization and composition
• apSpace is limited execution environment for AR
11/7/2015
Ninja Overview
14
Base Execution Environment
• Ninja RMI
– Sun RMI compatible serialization and thread management
– ninja remote object
+ TCP or UDP or Multicast UDP (Active Msg soon)
+ Authenticated public key
• iS-box
– customizable service VM
• Redirector
= iSpace
11/7/2015
Ninja Overview
15
iS-box: platform framework
LoadService (URL, name, args)
ListServices
GetService(name) -> svc obj
KillService
• Trusted services loaded at
startup
• Security MGR interposes
on method calls
Trusted-Services
–
–
–
–
iS-Loader
• Loader Extends JVM to
support services
Security MGR
JVM
– loaded as a trusted service
11/7/2015
Ninja Overview
16
Trusted-Services
iS-Loader
Push Services into the Infrastructure
New
service
Security MGR
RMI
stubs
Service
Methods
JVM
Generated by RMI
compiler
• GetService returns service object
• Issue: Programming Model for Service Methods
11/7/2015
Ninja Overview
17
Scalable iSpace
Multi-Space
iS-box
Node
iS-box
Node
iS-box
Node
iS-box
Node
11/7/2015
Ninja Overview
Multi-Space SVC
Multi-Space Loader
• Multi-Space services
across group of iSboxes
• List, Get, or Load
Service from any
• Get returns redirector
stub
iS-Loader
System Area Network
Security MGR
JVM
18
Prototype Services
•
•
•
•
•
•
•
iSpace Admin monitor
automatic forms interface
computational econ support
juke box
ninja fax
pilot pager
Digicash mint
• 1200 RMI/s on 400 PII w/ jit
11/7/2015
Ninja Overview
19
Millennium Project Goals
• Enable major advances in Computational
Science and Engineering
– Simulation, Modeling, and Information Processing becoming
ubiquitous
• Explore novel design techniques for large,
complex systems
– Fundamental Computer Science problems ahead are
problems of scale
• Develop fundamentally better ways of
assimilating and interacting with large volumes
of information
– and with each other
• Explore emerging technologies
– networking, OS, devices
11/7/2015
Ninja Overview
20
Campus-wide Millennium Testbed
Massive Cluster
Gigabit Ethernet
Clusters
Servers
Desktop
PCs
Wireless
Infrastructure
Future Devices
PDAs
11/7/2015
Cell Phones
Ninja Overview
21
Physical Connectivity
11/7/2015
Ninja Overview
22
Resource Support
• Computers via Intel Technology 2000 grant
– 200 NT desktops
– 16 department 4-way SMPs
–
8 5x4 Group Clusters,
–
1 ~100x4 Campus Cluster
– PPro => Pentium II => Merced
200 Gflop/s
150 GB memory
8 TB disk
• Additional storage via IBM SUR grant
– 0.5 TB this year => 4 TB
•
•
•
•
•
NT tools via Microsoft grant
Solaris x86 tools via SMCC grant
Campus provides Technical staff
NorTel Discount
NSF Research Infrastructure Grant
11/7/2015
Ninja Overview
23
High Speed Cluster Networking
• Transforms large collection of individual
resources into a powerful system
• Emerging system area networks
– Myrinet, ServerNet, Synfinity
• Emerging user-level networking
– Virtual Interface Architecture
– Intel/Microsoft/Compaq std based on Active Messages and
related research
• NT and Unix
• Gigabit Ethernet?
11/7/2015
Ninja Overview
24
Inter-cluster NorTel network
• Gigabit Ethernet connecting group clusters and
campus cluster
• Campus provides fiber plant, maintenance, and
staff
11/7/2015
Ninja Overview
25
Computational Economy
• How is this vast, integrated pool of resources
managed?
• Traditional system approach: empower global
OS to provide “optimal” allocation to blind
applications
– predefined metric, tuned to fixed workload
– ignores the inherent adaptation of demand
• Computer Center
– charge => director-to-user feedback according to cost
• Economic view: decentralized allocation
according to perceived value
– pricing => user-to-user feedback
– compatible niches,sense of control, cooperation
• Everything is a service!
Ninja Overview
11/7/2015
26
Experiment: PDA Bazaar
• Deploy/use pervasive computing infrastructure
in Soda Hall
• Provide Ninja iSpaces
• Build an initial community (200 PP3 / Workpads)
• Watch and evaluate
– information broadcast channels
» seminars, lecture content
» news/sports/stocks
– shared information
» calendars, room reservations
» collaborative note-taking and brainstornming
• Smart spaces and device control
11/7/2015
Ninja Overview
27
Perspective
• Computer Science Research Challenges Ahead
are fundamentally problems of scale and
composition
– Powerful services
– Billions of tiny devices
– Rapid development, deployment, and evolution
• These demand an entirely new approach to
systems research.
• Academic / Industry collaboration is key
11/7/2015
Ninja Overview
28