Towards a Service Architecture for Internet-Scale Systems

Slides:



Advertisements
Similar presentations
ICS 434 Advanced Database Systems
Advertisements

NDN in Local Area Networks Junxiao Shi The University of Arizona
1 Internet-Scale Systems Research Group (ISRG) Eric Brewer, David Culler, Anthony Joseph, Randy Katz Computer Science Division, EECS Department University.
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
Ninja and the Post-PC Era David Culler U.C. Berkeley Mar 12, 1999
Towards I-Space Ninja Mini-Retreat June 11, 1997 David Culler, Steve Gribble, Mark Stemm, Matt Welsh Computer Science Division U.C. Berkeley.
1 Internet-Scale Systems Research Group Eric Brewer, David Culler, Anthony Joseph, Randy Katz, Steven McCanne Computer Science Division, EECS Department.
1 Adventures in TomorrowLand Randy H. Katz United Microelectronics Corporation Distinguished Professor and Chair, Electrical Engineering and Computer Science.
ProActive Infrastructure Eric Brewer, David Culler, Anthony Joseph, Randy Katz Computer Science Division U.C. Berkeley ninja.cs.berkeley.edu Active Networks.
Brewer’s Endeavor Goals Make the fluid infrastructure an extension of the Ninja services frameworkMake the fluid infrastructure an extension of the Ninja.
Big Infrastructure, Small Clients Prof. Eric A. Brewer
Connecting the Invisible Extremes of Computing David Culler U.C. Berkeley Summer Inst. on Invisible Computing July,
Clusters Massive Cluster Gigabit Ethernet System Design for Vastly Diverse Devices David Culler U.C. Berkeley HP Visit 3/9/2000.
1 Internet-Scale Systems Research Group Eric Brewer, David Culler, Anthony Joseph, Randy Katz, Steven McCanne Computer Science Division, EECS Department.
Post-PC Summary Prof. Eric A. Brewer
Packing for the Expedition David Culler. 5/25/992 Ongoing Endeavors Millennium: building a large distributed experimental testbed –Berkeley Cluster Software.
Internet-Scale Systems Research Group Eric Brewer David Culler Anthony Joseph Randy Katz Steven McCanne Computer Science Division University of California,
Chapter 14 Managerial issues in networking. Overview Network design Network management – Hardware – Software Technology standards Role of government and.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
CONFIDENTIAL 1. 2 Designing the Intelligent Energy Gateway 2009 CONFIDENTIAL.
Copyright © 2002 Intel Corporation. Intel Labs Towards Balanced Computing Weaving Peer-to-Peer Technologies into the Fabric of Computing over the Net Presented.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Introduction Infrastructure for pervasive computing has many challenges: 1)pervasive computing is a large aspect which includes hardware side (mobile phones,portable.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
ProActive Infrastructure Eric Brewer, David Culler, Anthony Joseph, Randy Katz Computer Science Division U.C. Berkeley ninja.cs.berkeley.edu Active Networks.
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Confidential Unified Communications 8/16/ Competing with the Cisco Unified Communications Architecture.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
Providing web services to mobile users: The architecture design of an m-service portal Minder Chen - Dongsong Zhang - Lina Zhou Presented by: Juan M. Cubillos.
NINJA. Project of UC Berkeley Computer Science Division Paper : The Ninja Architecture for Robust Internet-Scale Systems and Services
Societal-Scale Computing: The eXtremes Scalable, Available Internet Services Information Appliances Client Server Clusters Massive Cluster Gigabit Ethernet.
09/13/04 CDA 6506 Network Architecture and Client/Server Computing Peer-to-Peer Computing and Content Distribution Networks by Zornitza Genova Prodanoff.
Introduction.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
Overview: Cloud Datacenters
Architecture and Algorithms for an IEEE 802
Netscape Application Server
Alternatives to Mobile Agents
Design Decisions / Lessons Learned
University of Technology
Management of Virtual Execution Environments 3 June 2008
Internet-Scale Systems Research Group
Mobile edge computing Report by Weiqing huang.
Software Defined Networking (SDN)
Mobile Computing.
Ebusiness Infrastructure Platform
The Globus Toolkit™: Information Services
Converged Service A Dartmouth Perspective
Distributed Systems Bina Ramamurthy 12/2/2018 B.Ramamurthy.
CLUSTER COMPUTING.
Next-Generation Internet-Scale Systems Ninja/Millennium Projects
Architectures of distributed systems Fundamental Models
BMRC MIG Seminar September 16,
Principles/Paradigms Of Pervasive Computing
EECS Research into the Post-PC Era
Architectures of distributed systems Fundamental Models
Software Connectors.
Web Application Server 2001/3/27 Kang, Seungwoo. Web Application Server A class of middleware Speeding application development Strategic platform for.
EUT 122 Skills and Technology in Communication
ICEBERG Release Version 0
Technologies and Applications of Computer Networks
Architectures of distributed systems Fundamental Models
EE 122: Lecture 22 (Overlay Networks)
Problem Statement Communication devices Communication services
Chapter One Introduction to Computer Networks and Data Communications
Proactive Infrastructure: The Ninja Service Platform
Calypso Service Architecture
Intelligent Network Services through Active Flow Manipulation
Presentation transcript:

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 (~Million) 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

Imagine You walk into a room Your PDA connects to the local infrastructure and asks it to build a custom GUI You walk into a room 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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

Outline of the Presentation Introduction Ninja Service Architecture Wide-Area Paths Base Service Programming Framework Project Context at Berkeley 12/5/2018 Ninja Overview

Starting Point: Transcoding Proxies Laptops, Desktops Info. Appliances Network Computers Spoon feed web pages to PDAs Scalable Servers Legacy Servers Transformation, Aggregation, Caching, and Customization (TACC) Scalability and availability Limited customizability and locality and no persistence 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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” 12/5/2018 Ninja Overview

Example: Thin Client Access to Legacy Server AP PDA Legacy Server Personalization Base Home Base AP Base AP AP Unit Unit Sensor Sensor 12/5/2018 Ninja Overview

Example: Sensor Aggregation AR PDA Legacy Server Base AR Base Agent Aggregator AR AR Unit Unit Sensor Sensor 12/5/2018 Ninja Overview

Example: TopGun WingMan/Mediaboard Operation AP PDA Legacy Server PDA Proxy Base Image Converter Un-Zip MediaBoard PC Multicast Connector Aggregator AP Mic Camera 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

Operators/Connectors 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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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) 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

Services Service Strongly Typed Interfaces Service Discovery 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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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? 12/5/2018 Ninja Overview

Scalable iSpace Multi-Space services across group of iS-boxes System Area Network Node iS-box Multi-Space 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 12/5/2018 Ninja Overview

Distributed Objects - not just remote 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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

Campus-wide Testbed (Millennium) Desktop PCs Servers Clusters Massive Cluster Gigabit Ethernet PDAs Cell Phones Future Devices Wireless Infrastructure 12/5/2018 Ninja Overview

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 MASH Media Processing Services TranSend Extensible Proxy Services Active Services Architecture Distributed Computing Services: NINJA Computing and Communications Platform: Millennium/NOW 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

Berkeley Tradition of Experimental Computing Systems Research Evaluate existing technology to understand its weaknesses Design new computing systems architectures Time Travel using today’s too expensive technology to prototype tomorrow’s systems 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 12/5/2018 Ninja Overview

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 12/5/2018 Ninja Overview

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 8