Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Ninja Architecture for Robust Internet-Scale Systems and Services UC Berkeley Computer Science Division 2002 년 10 월 9 일 박준호.

Similar presentations


Presentation on theme: "The Ninja Architecture for Robust Internet-Scale Systems and Services UC Berkeley Computer Science Division 2002 년 10 월 9 일 박준호."— Presentation transcript:

1 The Ninja Architecture for Robust Internet-Scale Systems and Services UC Berkeley Computer Science Division 2002 년 10 월 9 일 박준호

2 Content Introduction Overview of the Ninja architecture Base: scalable platforms for Internet services Units Active proxy Service discovery service Path Example services Conclusion

3 Introduction Goal: –Enabling broad innovation of service design and easily constructing scalable, robust service –Distributed service architecture that deals with huge throughput demands and availability requirements Distributed service architecture –Network architecture level: three tiers (service, intermediaries, devices) –Language level: type safety language (code mobility) –System level: provide set of interface, dictate programming discipline

4 Overview of the Ninja architecture

5 Building robust service in base Service: software in the Internet infrastructure that exports a network-accessible, typed, programmatic interface Base: well-engineered cluster of workstation Cluster –independent failure boundary –Replication of computation and data vSpace –Cluster-based software platforms –Dynamic uploading of new service

6 Device diversity and adaptation Unit: client devices –Limited connectivity, low bandwidth, poor computational abilities –Small set of data formats and network protocols –Typically not useful without supporting infrastructure –Easily lost or broken –Rely on that adapt content and protocols Active proxy: transformational intermediary between device and service

7 The composition of services Path –flow of typed data through multiple services across the wide area –Including the interposition of transformational operators to adapt the data into the form expected by next service or device along the path Service discovery service (SDS) –locate appropriate services across the wide area based on service attribute query

8 Base: scalable platforms for Internet services Programming model –Service processes that request through a sequence of logically distinct stages Design pattern –Wrap: allow stage to execute independently of other stages –Pipeline: increasing instruction locality –Combine: resource and fate sharing –Replicate: eliminate bottleneck

9 Java-based I/O substrate implementation Non-blocking I/O library: Non-blocking socket, select Jaguar –extension of Java environment –Perform a compile-time specialization of Java byte code to perform low-level operation directly, while maintaining type safety and portability –80 µsec round trip time

10 The vSpace execution platform & DDS (distributed data structure) Service –Constructed as a graph of workers, each of which consists of a fixed-size thread pool, an incoming event queue, and a set of methods that implement the worker's logic –Worker correspond directly to stages Clone –Use the same code base and share global persistent state through a distributed data structure –Clone group: scalability and fault-tolerance DDS: self managing storage layer designed to run on a cluster of workstation at the scale required by Internet service workloads –Bricks: data elements are replicated across multiple hash nodes

11 Units Mote –Example of network sensor –ATMEL 8535 4 MHz microcontroller –512B SRAM, 8KB flash memory –10kbps radio, light and temp sensor, three LED –TinyOS

12 Active Proxy Essential properties: dynamic service adaptation, secure access to information, fusion of multiple devices Dynamic service adaptation –Mitigating the heterogeneity of units by translating both network protocols and data formats between client and service –Distill service content into format more suitable for small devices Multiple device fusion –Combine the capabilities of several devices –PDA: sensitive personal information, public kiosk: placing most of the application

13 Service location of across the wide area Service discovery service (SDS) –Announce (describe, published), locate (query) –Hierarchical structure, announce/listen, XML SDS server –Sending authenticated message containing a list of the domains –When load reach threshold child servers are spawned –Answer client queries Services –Listen SDS server announcements –Multicast service description –Contact a Capability Manager and define the capabilities for individual users Capability Manager –manage individual access control lists

14 SDS Certificate Authority –binding between principal and its public and encryption keys

15 Path: composition of service across the wide-area Path –Facilitate the composition of service –APC (automatic path creation) finding path between system components creating the network connections between components –Operator: perform on data Long-lived (standard service), dynamical created –Connector: protocol translation

16 Path example: map service 1. –User initiates a call from a cellular phone. –User speak address –RTP-based audio connector send audio to the first operator 2. –Speech-to-text operator, running in an active proxy –Structured text is passed along a TCP-based reliable byte stream connector to next operator 3. map service, running in a base 4. text-to-speech 5. user hear

17 Path construction Logical path creation –ordered sequence of operators Physical path creation –Mapping of a particular logical path onto physical nodes Path instantiation, and execution –Start any required dynamic operators, and set up appropriate connectors –APC facility monitors the performance of path, and re-routes the data flow Path tear-down

18 Example services Ninja Jukebox –Allow user to build a distributed repository of digital music –Cluster node: act as the music for streaming MP3 to clients, One node: directory node Sanctio: instant message gateway

19 Conclusion & reference Opening up the infrastructure of scalable, robust, adaptive Internet services Reference –http://ninja.cs.berkeley.eduhttp://ninja.cs.berkeley.edu –An Architecture for a Secure Service Discovery Service, by Steven E. Czerwinski, Ben Y. Zhao, Todd D. Hodes, Anthony D. Joseph, and Randy H. Katz. Fifth Annual International Conference on Mobile Computing and Networks (MobiCom '99), Seattle, WA, August 1999, pp. 24-35. –Ninja Paths: An Architecture for Composing Services over Wide Area Networks, by Sirish Chandrasekaran, Samuel Madden, and Mihut Ionescu. CS262 class project writeup –Jaguar: Enabling Efficient Communication and I/O from Java, Matt Welsh and David Culler. To appear in Concurrency: Practice and Experience, Special Issue on Java for High-Performance Applications, December, 1999


Download ppt "The Ninja Architecture for Robust Internet-Scale Systems and Services UC Berkeley Computer Science Division 2002 년 10 월 9 일 박준호."

Similar presentations


Ads by Google