Research Activities in the Parallel and Distributed Systems
Research Activities in the Parallel and Distributed Systems Group http: //www. cs. nyu. edu/pdsg Vijay Karamcheti vijayk@cs. nyu. edu
People Faculty Vijay Karamcheti, Zvi Kedem Postdocs, Research Scientist Eric Freudenthal, Xiaodong Fu Ph. D. Students Congchun He, Anca Ivan, Tatiana Kichkaylo, Nishith Krishna, Alexander Totok, Xin Yu October 2003
What do we do? u Experimental systems research · Parallel and distributed systems – Application-neutral adaptation infrastructures u Why adaptation? · Most distributed applications need to execute in heterogeneous, dynamically changing environments – different node types, different (unpredictable) networks, client-load, Do. S attacks, … · Adaptation provides robustness u Why application-neutral? · Alternatives: Application-transparent (e. g. , TCP window resizing), application-aware (e. g. , stream selection in media players) · Application-neutral adaptation offers programmability, composability advantages October 2003
PDSG Projects Relatively broad goals; each consist of multiple subprojects u In. Sight · · Compiler and run-time techniques for object sharing in heterogeneous environments Adaptation to diverse node capacities, communication properties u Computing Communities · · Shrink-wrapped applications in “community” environments Adaptation to changes in resource availability, characteristics u Distributed Sanctuaries · · Distributed applications in coalition environments Adaptation to changing security characteristics ü Mutable Services · · Component-based, resilient server applications Adaptation to client request patterns, malicious behaviors October 2003
Sample Theses (Written and In Progress) u Fangzhe Chang – graduated, now at Bell Labs Adaptation of Tunable Applications u Xiaodong Fu – graduated System Infrastructures for Network-Aware Service Access u Anca Ivan Partitionable Services: A Framework for Building Adaptable Distributed Applications u Tatiana Kichkaylo, co-advisor: Ernest Davis Creation of Pervasive Applications by Planning u Alexander Totok Application-guided Resource Management for Component-based Applications October 2003
Issues in Application-Neutral Adaptation Application “Steering” Model of Application Configurations Performance Models (Run-time) Decision Making “Planning” Network Resource Model Application/Network Status Monitoring Resource Allocation Execution Platform October 2003
Motivation for Mutable Services Project: End-user Experience in Shared Networks Client 1 Y Client 2 Unpredictable behavior of heterogeneous networks Interference from other requests, network load situations October 2003
The Mutable Services Approach Y X Client 1 X X Y Client 2 Decomposable services core Boundary-level admission control for differentiated response October 2003
Mutable Services: Example Research Questions u How do we structure (general) applications to allow their distributed deployment? · Context: Frameworks such as J 2 EE, . NET, Web Services – Application functionality assembled from individual components · Research: How do we enable dynamic (re)configuration? – Issues: State management, naming, … u How should applications be (re)configured? · If the objective is to improve application “availability” … · … how should this be done? – Application-server level reassignment of resources? – Boundary-level admission control/routing of requests? – Combination of the two? · … what information is necessary to accomplish this? – Model of resources consumed by a request? – Distinguishing between consistency requirements of different requests? – E. g. , buyers and browsers at an e-commerce site October 2003
Example Research Questions (cont’d) u Finally, does it work on real applications? · Building a JBoss-based distribution infrastructure for J 2 EE apps · Built a WAN emulator – cluster of machines connected to a software router, which emulates link latency, bandwidth, and loss characteristics · Measurement of performance of real applications · Simulation models to infer/understand larger-scale behaviors · Qualitative evaluation of the difficulty of using/deploying this technique – How easy/hard for the application developer to provide required input? – Are the assumptions made by our overlay network reasonable? October 2003
- Slides: 10