Towards a Service Architecture for InternetScale Systems - PowerPoint PPT Presentation

1 / 39
About This Presentation
Title:

Towards a Service Architecture for InternetScale Systems

Description:

HotBot, Zip2, Patent server. Generic wrappers for each MIME type ... news/sports/stocks. shared information. calendars, room reservations ... – PowerPoint PPT presentation

Number of Views:100
Avg rating:3.0/5.0
Slides: 40
Provided by: DavidE2
Category:

less

Transcript and Presenter's Notes

Title: Towards a Service Architecture for InternetScale Systems


1
Towards a Service Architecture for Internet-Scale
Systems
  • David E. Culler
  • Computer Science Division
  • U.C. Berkeley
  • ninja.cs.berkeley.edu

2
Future Internet-Scale Systems
  • Information Devices (10 Billion)
  • Connected Stationary Computers (100 Million)
  • Scalable Servers (Million)

3
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
    neededBig infrastructure, small clients
  • Incremental processing/communications growth
  • Careful violation of traditional layering
  • Implementation approach based on incremental
    prototyping, deployment, evaluation,
    experimentation

4
Imagine
  • You walk into a room

5
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

6
Outline of the Presentation
  • Introduction
  • Ninja Service Architecture
  • Wide-Area Paths
  • Base Service Programming Framework
  • Project Context at Berkeley

7
Starting Point Transcoding Proxies
  • Transformation, Aggregation, Caching, and
    Customization (TACC)
  • Scalability and availability
  • Limited customizability and locality and no
    persistence

8
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

9
Structured Architecture
10
Example Thin Client Access to Legacy Server
AP
PDA
LegacyServer
Base
HomeBase
AP
Base
AP
AP
Unit
Unit
Sensor
Sensor
11
Example Sensor Aggregation
AR
PDA
LegacyServer
Base
AR
Base
AR
AR
Unit
Unit
Sensor
Sensor
12
Example TopGun WingMan/Mediaboard Operation
AP
PDA
LegacyServer
PDA Proxy
Base
Image Converter Un-Zip
MediaBoard
PC
Multicast Connector
Aggregator
AP
Mic
Camera
13
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

14
Operators/Connectors
  • Operators
  • transformation
  • aggregation
  • agents
  • PI provides secure execution environment
  • Connectors
  • abstract wires
  • ADUs
  • varying semantics
  • uni/multicast
  • Interfaces
  • strongly typed
  • language independent
  • control channel
  • path changes
  • authentication
  • feedback

15
Wide-Area Paths
  • Path is a first-class entity
  • Explicit or automatic creation
  • Can change dynamically
  • change path or operators
  • Unit of authentication delegate along the path
  • Unit of resource allocation

16
WAN Paths Economics
  • Key Idea securely delegate authority to any path
    component
  • access your e-mail remotely
  • authorized services (subscriptions)
  • authenticated sensor data
  • Digicash
  • Pay-per-use services
  • Can be one-time (or subscription)

17
WAN Paths Optimization
  • Insert operators into the path
  • forward error-correction, e.g., for error-prone
    wireless links
  • compression/decompression, e.g., bandwidth
    constrained links
  • Change parameters
  • retransmission windows
  • settings for wireless or satellites
  • Reroute path dynamically

18
Connecting Interfaces
  • Goal trivial to connect
  • can be automated
  • Connectors are polymorphic
  • wires carry a generic ADU of type T
  • automatic marshall/unmarshall
  • code must be created at instantiation
  • Enables automated connection and use

19
Interoperability
  • Wrapper operators for legacy servers
  • HotBot, Zip2, Patent server
  • Generic wrappers for each MIME type
  • Connectors use TCP, UDP, multicast
  • Leverage COM objects as operators
  • Control Excel remotely
  • Lots of third party components
  • ODBC/JDBC databases

20
Services
  • Service
  • Highly available program with fixed interface at
    a fixed location
  • Strongly Typed Interfaces
  • Multiple services of a given type compete
  • Compete on location, price, robustness,
    quality, brand name
  • Service Discovery
  • Find best service of given type

21
Automatic Path Creation
  • Query goal is path creation
  • Find logical path of operators
  • Path must type check
  • Place operators on nodes
  • Some operators have affinity
  • Place them first
  • Add connectors as needed
  • Create any authentication keys

22
Service Discovery and Use
  • Four basic steps
  • Find a local Active Proxy
  • Query Service-discovery service
  • Automatic path creation, including
    transformations
  • Generate UI from interface specification

23
Wide-Area Paths (summary)
  • 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

24
iSpace Execution Environment
operator upload
Service request
service threads
Persistent Storage
Managed RMI
Physical processor
Operators
Caches
  • parallel application framework on Bases
  • RMI hides complexity of scalability and
    availability
  • Dynamic customization and composition
  • apSpace is limited execution environment for AR

25
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

26
iS-box
  • Loader Extends JVM to support services
  • LoadService (URL, name, args)
  • ListServices
  • GetService(name) - svc obj
  • KillService
  • Trusted services loaded at startup
  • Security MGR interposes on method calls
  • loaded as a trusted service

iS-Loader
Trusted-Services
Security MGR
JVM
27
Push Services into the Infrastructure
New service
iS-Loader
Trusted-Services
Service Methods
RMI stubs
Security MGR
JVM
Generated by RMI compiler
  • GetService returns service object
  • Programming Model for Service Methods?

28
Scalable iSpace
  • Multi-Space services across group of iS-boxes
  • List, Get, or Load Service from any
  • Get returns redirector stub

iS-Loader
Multi-Space Loader
Multi-Space SVC
Security MGR
JVM
29
Redirector Stub
  • Uses almost same RMI dynamic code generation
  • Produces RMI stub that manages load balancing and
    fail-over across iS-boxes in iSpace
  • Allows full spectrum of smart-client, front-end,
    flat cluster

Load Balance / Fail-over Policy
RMI stubs
Generated by RMI compiler
Distributed Objects - not just remote
30
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

31
Current Hot Debates
  • Persistent state
  • Service Programming Model
  • powerful classes
  • constraints
  • Active Proxy Exec. Context
  • looks like iS-box
  • Layering of SDS and iSpace
  • Path Creation methodology

32
Campus-wide Testbed (Millennium)
33
Emerging Distributed System Architecture Spanning
Processing and Access
Personal Information Management and Smart Spaces
Distributed Videoconferencing Room-scale
Collaboration
Speech and Location Aware Applications
ICEBERG Computer-Telephony Services
TranSend Extensible Proxy Services
MASH Media Processing Services
Active Services Architecture
Distributed Computing Services NINJA
Computing and Communications Platform
Millennium/NOW
34
NINJA and ICEBERG
  • NINJA Distributed Service Architecture
  • Service model based on Operators, Paths, Services
  • Platform model based on Units, Active Routers,
    Bases
  • ICEBERG Computer-Telephony Integration
  • IP-based backbone for cellular networks
  • Mobility and service interoperability in the
    context of diverse access networks
  • Performance issues GPRS scheduling and IP
    scaling for mobile telephony applications
  • New services Smart Spaces and PIM

35
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

36
Berkeley Tradition of Experimental Computing
Systems Research
37
Internet-Scale Systems Research Group
  • Lead the evolution of the Internet through
    long-term research combined with the deployment
    of novel real-world large-scale systems and
    protocols
  • Unify on-going and future research projects in
    distributed computing, network protocols,
    services, access, new applications
  • Facilitate technology transfer and
    standardization
  • Work closely with industrial partners in an open
    laboratory environment
  • ATT becoming a charter member

38
Benefits of Sponsorship
  • Involvement with outstanding Berkeley graduate
    students
  • Participation in large-scale, inter-disciplinary,
    pre-competitive research efforts with only modest
    investment, leveraging investment of other
    industrial partners
  • Access to all ISRG-developed software,
    prototypes, simulation tools, and testbeds
  • Early access to groups research results through
    on-campus participation and retreats
  • Support the expansion of cadre of researchers
    with expertise in Internet-scale systems

39
Emerging Communications Infrastructure of the
Future
  • The Challenge
  • Network-based applications becoming increasingly
    service intensive
  • Computational resources embedded in the switching
    fabric
  • Dealing with heterogeneity, true utility
    functionality, security, service discovery
  • Computing
  • Powerful services on small clients because the
    intelligence is in the infrastructure
  • Communications
  • High bandwidth backbones plus diverse access
    networks
  • Third generation cellular systems
  • Home networking
  • Components

Write a Comment
User Comments (0)
About PowerShow.com