1 / 23

Planning for Network-Aware Paths

Planning for Network-Aware Paths. Xiaodong Fu and Vijay Karamcheti Parallel and Distributed Systems Group Department of Computer Science Courant Institute of Mathematical Sciences New York University http://www.cs.nyu.edu/pdsg. Motivation. Goal : Seamless access to network services

amos-young
Download Presentation

Planning for Network-Aware Paths

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. Planning for Network-Aware Paths Xiaodong Fu and Vijay Karamcheti Parallel and Distributed Systems GroupDepartment of Computer ScienceCourant Institute of Mathematical SciencesNew York University http://www.cs.nyu.edu/pdsg

  2. Motivation • Goal: Seamless access to network services • Problem: Heterogeneous and dynamically changing environments • Wide diversity in node and network characteristics • Dynamic load • Conventional abstractions suffer from poor performance Optical Backbone WAN WAN WAN LAN LAN

  3. Possible Solution Approaches • Reserving sufficient resources for communication paths • Protocols such as RSVP, MPLS-TE, … • Making data communication network aware • Network awareness combines two aspects • Recognition of application-specificrequirements • Adaptation to network resource availability

  4. Network-Aware Paths • Several proposals • End-point approaches: Odyssey, Rover, … • Proxy-based approaches: TACC, Ninja, Active Services, … • Path-based approaches: Conductor, Scout, CANS, Active Names, … • Question: How to automatically build network-aware paths? • Given resource availability, performance requirements • To provide optimized performance, and • Work with large-scale networks • This talk focuses on this question

  5. Functionality can handle transcoding, reconnection, protocol conversion, … Context: CANS Composable Adaptive Network Services • A path-based infrastructure for realizing network awareness

  6. CANS Implementation Service1 Service2 Legacy components: Code Repository Planning Custom components:(Java + standard APIs) Event Handling Communication Resource Monitor Java/RMI Infrastructure

  7. Client-sideProxy Server-sideProxy Browser Internet wireless wired R F M D Mobile Client Gateway Edge Server Server U Z Example: Web Access • CANS components • Demux, Mux • Image: Filter, Resizer • Text: Zip, Unzip A sample path

  8. Focus ofour paper Building Network-Aware Paths in CANS • Step 1: Receive request from client application • Step 2: Initial planning to construct a path • Choose route across domains to deploy services and drivers • Similar to routing a request packet • Construct initial path • Can involve multiple administrative domains • Steps 3+: Dynamic reconfiguration to adapt to changes • (Incremental) Modifications to created path

  9. Automatic Creation of Network-Aware Paths Two parts • A scheme for inferring valid paths mechanically • Problems: • How to determine which component can interface with which? • How to model impact of components, network resources along a path? • Solutions: • Type-based modeling • Component resource utilization model • A scheme for finding paths with the best performance • Problem: • How to select among possible valid paths? • Solution: • Dynamic programming-based algorithm • Local and distributed variants

  10. Enc Enc Enc HTML HTML HTML Sec=T Sec=F HTML HTML HTML HTML HTML HTML X HTML Enc Stream Server Encrypt Decrypt Browser Stream Enc HTML (1) Type-Based Modeling • Goal: Model composition properties of components • Type = Name + Attributes + Compatibility Operator • Extensions • Stacked types for modeling aggregate effects of composition • Augmented types for modeling impact of network resources • Type ranks for expressing constraint on composition order

  11. Time x Processingcost per byte = Size of output semantic unit y Size of input semantic unit x x y Bandwidthreduction factor = = (2) Component Resource Utilization Model • Goal: Model resource utilization of a component • Context-sensitive: incoming data, type of node, … • Components viewed as filterson data streams • Allows estimation of CPU, bandwidth use for deployment • Refined component model • Different profile per classof input traffic • Functionality identifies how class of input translates to class of output • E.g., compress component has different behavior based oncharacteristics of input data stream

  12. (3) Path Creation Algorithm Problem: • Input: Application performance reqmts, resource availability • Output: Selected components, mapping to network resources • Path that provides “optimal” performance • General problem is NP-hard Solution for single-input, single-output components: • Restriction: Computation resources allocated in discrete units • A node’s resources correspond to a fixed number of intervals • A component uses up an integral number of such intervals • Permits enumeration of available resource vector • A = (r1,r2, …, rp); ri= available intervals on nodeni

  13. t’ ts t N0 N1 N2 N3 c Sketch of Base Algorithm Dynamic programming solution • Incrementally fills in the table S[ t, A, k ] … • Optimal sequence of length  k, which takes tsrc to t using node resources  A • … while maximizing or minimizing a performance metric • O(n3m3), n: #types, m: #components S[ t, (1,1,1,1), k ] S[ t, (1,1,1,1), k ] = maxt’( S[ t’, (1,1,1,3/4), k1 ] + (c  N3), S[ t’, (1,1,3/4,0), k1 ] + (c  N2), …)

  14. Extensions to the Base Algorithm • Planning for value ranges • E.g. best data quality with throughput between 10 to 20 fps • Modify dynamic programming strategy to retain solution that guarantees in-range solution • Need to employ a procedure called complementary planning • Planning for a local segment of an existing path • Based on range planning • Useful for incremental adjustment of communication paths • Distributed implementation across network domains • Each network domain calculate its own path segment • Reduces dependency among different network domains • See paper for additional details

  15. Client-sideProxy Server-sideProxy Browser Internet wireless wired Mobile Client Gateway Edge Server Server Evaluation (1): Web Access Application • CANS components • Demux, Mux • Image: Filter, Resizer • Text: Zip, Unzip • Configurations • PocketPC – 19.2 Kbps – Pentium III – 10 Mbps • PocketPC – 384 Kbps – Pentium III – 10 Mbps • Laptop – 3.84 Mbps – Pentium III – 10 Mbps • Laptop – 3.84 Mbps – Pentium III – 384 Kbps • Laptop – 3.84 Mbps – Pentium Pro – 384 Kbps PocketPC : Pentium Pro : Laptop : Pentium III = 0.1 : 0.25 : 0.5 : 1

  16. wireless wired R R F F A M M M D D D U Z B U Z C U Z Web Access: Automatic Path Creation • PocketPC – 19.2 Kbps – Pentium III – 10 Mbps • PocketPC – 384 Kbps – Pentium III – 10 Mbps • Laptop – 3.84 Mbps – Pentium III – 10 Mbps • Laptop – 3.84 Mbps – Pentium III – 384 Kbps • Laptop – 3.84 Mbps – Pentium Pro – 384 Kbps

  17. A R R F F M M M D D D U Z B U Z C U Z Web Access: Performance Advantages

  18. Internet Server Evaluation (2): Image Streaming Application • Evaluate adaptation responsiveness over a 20 minute run • In response to change in wireless link bandwidth • Starts at 150 KBps • Drops by 10 KBps every 40 seconds till it reaches 10 KBps • Rises according to same schedule • Application preference • 8—15 frames/sec, highest quality • CANS components • Filter, Resizer ImageViewer wireless wired Mobile Client Gateway Edge Server

  19. Image Streaming: Base Strategy

  20. Image Streaming: Range Planning + Multiple Configurations

  21. Summary • Network-aware data paths enable seamless service access • Automatic creation of network-aware paths • Type-based specification of components, network resources • Component resource utilization models • Path creation strategies • Work with different application requirements • Maximal value, or value ranges • Local and distributed variants • Additional information • http://www.cs.nyu.edu/pdsg • http://www.cs.nyu.edu/pdsg/projects/cans • vijayk@cs.nyu.edu

  22. Image Streaming: Local Reconfiguration

More Related