Berkeley NOW

Shared by: HC12100408954
Categories
Tags
-
Stats
views:
1
posted:
10/4/2012
language:
English
pages:
39
Document Sample
scope of work template
							Towards a Service Architecture for
     Internet-Scale Systems

            David E. Culler
      Computer Science Division
             U.C. Berkeley
         ninja.cs.berkeley.edu
Future Internet-Scale Systems
                                • Information
                                  Devices
                                       (~10
                                  Billion)


                                • Connected
                                  Stationary
                                  Computers
                                  (~100 Million)


                                • Scalable
                                  Servers
10/4/2012      Ninja Overview
                                  (~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


10/4/2012                   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
  10/4/2012                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




  10/4/2012                      Ninja Overview                        5
Outline of the Presentation
•   Introduction
•   Ninja Service Architecture
•   Wide-Area Paths
•   Base Service Programming Framework
•   Project Context at Berkeley




10/4/2012           Ninja Overview       6
     Starting Point: Transcoding Proxies
                                                             Info. Appliances
                     Scalable Servers                        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
     10/4/2012                       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


10/4/2012                     Ninja Overview                           8
   Structured Architecture
• Bases
   –   highly available
                                                      Wide-Area Path
   –   persistent state (safe)
   –   databases, agents
   –   “home” base per user
   –   service programming environment

• Active Proxies
   –   not packet routers
   –   soft-state
   –   well-connected
   –   localization (any to any)
• Units
   –   sensors / actuators
   –   PDAs / smartphones / PCs
   –   heterogeneous
   –   Minimal functionality: “Smart Clients”
   10/4/2012                         Ninja Overview                    9
Example: Thin Client Access to
Legacy Server

                                            PDA           AP
            Legacy
            Server
                                 Personalization
                                                           Home
     AP                                            Base    Base
                      Base


                                          AP
   Unit                AP
                                                          Unit
             Sensor              Sensor

10/4/2012              Ninja Overview                        10
Example: Sensor Aggregation

                                                PDA          AR
            Legacy
            Server


     AR                                               Base
                           Base
                                     Agent
              Aggregator
                                               AR
   Unit                     AR
                                                             Unit
             Sensor                   Sensor

10/4/2012                   Ninja Overview                      11
 Example: TopGun
 WingMan/Mediaboard Operation
                                                      PDA     AP
             Legacy
             Server              PDA Proxy



            Image Converter
                              Base              MediaBoard
                    Un-Zip

                                       Multicast             PC
                 Aggregator
                                       Connector

                               AP

                 Mic                      Camera

10/4/2012                      Ninja Overview                     12
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


10/4/2012                    Ninja Overview                13
Operators/Connectors
Operators:
      –     transformation
      –     aggregation
      –     agents
      –     PI provides secure
            execution environment

Connectors:
      –     abstract wires                  Interfaces:
      –     ADUs                                 – strongly typed
      –     varying semantics                    – language independent
      –     uni/multicast                        – control channel
                                                      » path changes
                                                      » authentication
                                                      » feedback

10/4/2012                           Ninja Overview                        14
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




10/4/2012                       Ninja Overview         15
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)




10/4/2012                    Ninja Overview       16
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




10/4/2012                          Ninja Overview    17
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




10/4/2012                    Ninja Overview         18
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




10/4/2012                    Ninja Overview   19
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




10/4/2012                     Ninja Overview                       20
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




10/4/2012                      Ninja Overview   21
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
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

10/4/2012                      Ninja Overview                            23
iSpace Execution Environment
                                                               operator
                                                                upload
                    Service request

                                                        service threads



                              Managed RMI++                    Persistent
                                                                Storage

            Physical
            processor
                        Caches              Operators


• parallel application framework on Bases
     – RMI++ hides complexity of scalability and availability
     – Dynamic customization and composition
• apSpace is limited execution environment for AR

10/4/2012                             Ninja Overview                        24
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



10/4/2012                   Ninja Overview                       25
 iS-box
• Loader Extends JVM to
  support services
    –   LoadService (URL, name, args)
    –   ListServices
    –




                                                           Trusted-Services
        GetService(name) -> svc obj
    –




                                               iS-Loader
        KillService
• Trusted services loaded at
  startup
• Security MGR interposes                                                      Security MGR

  on method calls                                                             JVM
    – loaded as a trusted service




 10/4/2012                    Ninja Overview                                                  26
Push Services into the Infrastructure


                        Trusted-Services
            iS-Loader


                                            New
                                           service

                                                                                          Service
                                                                                          Methods
                                                                            RMI
                                              Security MGR
                                                                           stubs

                                            JVM


                                                                       Generated by RMI
                                                                          compiler


• GetService returns service object
• Programming Model for Service Methods?

10/4/2012                                             Ninja Overview                            27
Scalable iSpace
                     Multi-Space
  iS-box    iS-box                 iS-box             iS-box
   Node      Node                   Node               Node


               System Area Network




• Multi-Space services




                                                           Multi-Space Loader
  across group of iS-




                                                                                Multi-Space SVC
  boxes


                                               iS-Loader
• List, Get, or Load
  Service from any
• Get returns redirector                                                                            Security MGR

  stub                                                                                            JVM

10/4/2012                     Ninja Overview                                                                       28
Redirector Stub
• Uses almost same
  RMI dynamic code
  generation                                         Load Balance /
                                                     Fail-over Policy
• Produces RMI stub
  that manages load
  balancing and fail-                         RMI
  over across iS-boxes                       stubs

  in iSpace
• Allows full spectrum
  of smart-client, front-
                                         Generated by RMI
  end, flat cluster                         compiler


      Distributed Objects - not just remote
10/4/2012               Ninja Overview                                  29
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



10/4/2012             Ninja Overview   30
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




10/4/2012                   Ninja Overview   31
Campus-wide Testbed (Millennium)
                                           Massive Cluster




                       Gigabit Ethernet                 Clusters


                                                             Servers

                                                                       Desktop
                                                                       PCs
              Wireless
              Infrastructure


                                                 Future Devices
             PDAs              Cell Phones


 10/4/2012                Ninja Overview                                     32
Emerging Distributed System
Architecture Spanning Processing and
Access

            Personal Information Management and “Smart Spaces”

                                                  Speech and Location
                                                   Aware Applications
     Distributed Videoconferencing
       Room-scale Collaboration                     ICEBERG
                                           Computer-Telephony Services

     MASH Media Processing Services
                                                      TranSend Extensible
                                                         Proxy Services
        Active Services Architecture

                    Distributed Computing Services: NINJA

        Computing and Communications Platform: Millennium/NOW

10/4/2012                            Ninja Overview                         33
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




10/4/2012                    Ninja Overview                       34
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

10/4/2012                    Ninja Overview                35
Berkeley Tradition of Experimental
Computing Systems Research

  Evaluate                     Time Travel
                               using today’s too
  existing technology          expensive technology
  to understand                to prototype
  its weaknesses               tomorrow’s systems




                                Design
                                new computing
                                systems
                                architectures
 Deploy
 understand implementation
 complexities and sources of
 performance gain/loss
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

• AT&T becoming a charter member



10/4/2012                   Ninja Overview                        37
 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 group’s research results through
  on-campus participation and retreats
• Support the expansion of cadre of researchers with
  expertise in Internet-scale systems

 10/4/2012             Ninja Overview                 38
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

						
Related docs
Other docs by HC12100408954
miscel�nea sobre materialismo hist�rico
Views: 1  |  Downloads: 0
PRISMA SEGUROS, S
Views: 3  |  Downloads: 0
No Slide Title
Views: 0  |  Downloads: 0
com optima infocenter
Views: 2  |  Downloads: 0
s217 01 s
Views: 0  |  Downloads: 0
Lab Activity on Scientific Method
Views: 7  |  Downloads: 0
Letter of Invitation - Download Now DOC
Views: 1  |  Downloads: 0
Autism Spectrum Disorder�s
Views: 25  |  Downloads: 0