1 / 22

Active Network Applications

Active Network Applications. Tom Anderson University of Washington. Large Scale Demonstrations. Active Naming Name = mobile code to flexibly access service/data Unifies URNs, replica load balancing, distillation, mobility, ... Internet Measurement

torgny
Télécharger la présentation

Active Network Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Active Network Applications Tom Anderson University of Washington

  2. Large Scale Demonstrations • Active Naming • Name = mobile code to flexibly access service/data • Unifies URNs, replica load balancing, distillation, mobility, ... • Internet Measurement • Coordinated multipoint measurement to determine link latency, bandwidth, drop rate, queuing delay and policy, etc. • Detour • Intelligent border routers for aggregated congestion control and adaptive multipath routing • Potential order of magnitude improvement in latency, bandwidth, drop rate, predictability

  3. Approach • Rethink Internet naming, routing, and congestion control, assuming computation in the network • Build prototype demonstration systems; measure on real workloads • Use ABONE for deployment

  4. Application Area 1Active Naming

  5. Traditional Internet Naming DNS Server Host Binding IP Address URL Server Proxy Image (1024X768) • Traditional Model • Static name -> IP address binding. • Naming and transport separate. • Not flexible or extensible.

  6. Current Attempts to Add Flexibility to Name Binding • HTTP redirect • DNS round robin • Cisco Local Director/Distributed Director • URN’s with sed scripts to mangle names • Global object IDs (e.g., Globe, Legion) • Web caches/Active Caches • Mobile IP • ...

  7. Motivation • Consider Scenario: context-sensitive naming • User types cnn.com. • If client is behind a modem, it gets back a b/w image. • If client is a palm pilot, it gets a distilled image. • If the client is in Europe, it goes to the European replica. • Combine naming and transport in one framework. • Provide flexibility and extensibility in the way wide area resources are accessed.

  8. Data Name Programs Active Names: Basic Idea • Names resolved to mobile, secure programs Flexibility • Active Names organized into hierarchical namespaces. A program is associated with each namespace. • Namespace programs can be changed Extensibility. • Active Names are connection oriented: better end-to-end semantics and performance.

  9. Proxy Server Client Request Program1 Program2 Programming Model • Location independent programs • Programs may run on any AN node • Stream data model • Each program operates on a data stream which is the result of the previous program • Continuation passing style • Control does not have to return to the caller program

  10. Server Proxy Client Proxy Client Server Performance Gains • Application customized transport protocols. • Programs are location independent. Location can be chosen to optimally utilize resources (e.g., distillation). • Customization can be performed close to client instead of at the server (e.g., to cache dynamic content). • 3 way RPC

  11. Root-HTTP cnn yahoo ... Composing Services • Delegation • Active names organized in a hierarchy of namespaces • Namespace programs can delegate to subordinate namespaces • After methods • Continuation passing style programming • Namespace programs bundle remaining work into “after methods” before passing control • E.G. [Customizer|http|reply] --> [prefetch|http|distill|reply]

  12. Security • Protection between active name programs provided by Java’s type safety mechanism. • Caller passes a certificate to the callee granting it a subset of its rights. • Transitive closure of the certificates determines the rights of a principal. • For instance, each caller might grant its callee the right to respond to the client.

  13. ... Hit Count Active Node ArchitectureMicro-kernel Approach Utilities Distiller Namespaces DNS Http N W Resolver $ Virtual Machine Local Resources

  14. Application 1: Replica Selection • DNS Round-Robin • Randomly choose replica • Avoid hot-spots • Distributed Director • Route to nearest replica • Geographic locality • Active Naming • Previous performance, distance • Adaptive Seattle Replica Berkeley Replica Berkeley Clients

  15. Replica Selection

  16. Application 2: Mobile Distillation Client-Specific Naming • Clients name a single object • Returned object based on client • Network connection, screen • Current approach [Fox97] • Proxy maintains client profile • Requests object, distills • Active naming • Transmit name + applet • Flexible distillation point • Tradeoff computation/bandwidth • Support mobile clients Variables: Network Screen

  17. Application 2: Mobile Distillation • Distillation at • Server: Saves bandwidth • Proxy: Saves server CPU cycles • Active: Cost estimate of both approaches

  18. Application 3: Customization • Client customization: distilling the image • Server customization: ad rotation, server-side includes. • Composing these customizations using Active Names leads to 2-fold improvement in performance: • Server customization can take place at proxy. • Distillation further improves performance.

  19. Application 4: Active Caches How to improve on 50% cache hit rates?

  20. Application Area 2Internet Measurement

  21. Application Area 3Detour: Intelligent Routing and Congestion Control

  22. Summary • Three large scale demonstrations • Active Names • Internet measurement • Detour routing and congestion control • White papers and software prototypes available: • http://www.cs.washington.edu/research/networking/detour • ABONE ports in progress

More Related