Presentation is loading. Please wait.

Presentation is loading. Please wait.

Univ. Notre Dame, September 25, 2003 Support for Run-Time Adaptation in RAPIDware Philip K. McKinley Software Engineering and Networking Systems Laboratory.

Similar presentations


Presentation on theme: "Univ. Notre Dame, September 25, 2003 Support for Run-Time Adaptation in RAPIDware Philip K. McKinley Software Engineering and Networking Systems Laboratory."— Presentation transcript:

1 Univ. Notre Dame, September 25, 2003 Support for Run-Time Adaptation in RAPIDware Philip K. McKinley Software Engineering and Networking Systems Laboratory Department of Computer Science and Engineering Michigan State University (http://www.cse.msu.edu/sens)

2 Presentation Overview  MSU SENS Laboratory  RAPIDware Project Overview  MetaSockets and Experiments  Adaptive CORBA Template (ACT)  Conclusions

3 MSU SENS Laboratory  The Software Engineering and Network Systems Laboratory supports research in: –software engineering –distributed computing –network protocols and real-time systems –fault tolerance and security –formal methods, code generation –compilation/analysis of concurrent systems  Research sponsored by NSF, ONR, DARPA, DOE, NASA, EPA, and several industrial partners

4 SENS Personnel  Betty Cheng - software engineering, formal methods, object-oriented development  Laura Dillon - formal methods for concurrent systems, real-time systems  Phil McKinley - distributed computing, network protocols, adaptive middleware  Kurt Stirewalt - software analysis, interactive systems, model checking  Sandeep Kulkarni - fault tolerance, security  ~30 graduate research assistants

5 Mobile Computing Testbed  Multiple-cell WLAN –Various Wireless LANs –WLAN analyzers  Mobile computers –Dell laptops (Windows, Linux) –iPAQ handhelds (Familiar Linux, Blackdown Java) –Xybernaut MA-V wearables (Windows)

6 RAPIDware Project  Funded by U.S Office of Naval Research –Adaptable Software / Critical Infrastructure Protection –Outgrowth of Presidential Decision Directive 63 (May ’98)  Goal: Software (middleware) that can adapt to: –Changing environmental conditions –Hardware and software component failures –Possible security threats or violations –Heterogeneous platforms –Dynamic user requirements  RAPIDware involves: –5 SENS faculty members and 10 graduate assistants  Middleware for “Internet Speed” development and evolution of applications must support: –Multiple dimensions of adaptability –Autonomous execution of middleware components –Dynamic composition of middleware services  “Principled” methods (compiler/language support, code generation, reflection, run-time checks, etc) needed to help ensure reliability, correctness, reusability, security

7 RAPIDware Goal...  Enable users to communicate seamlessly and securely across a diverse, dynamic, and evolving mobile computing and communication infrastructure.  Target domain is multimedia collaborative computing systems –military command and control –management of industrial installations –crisis management systems –computer supported cooperative work  Example: Enabling systems to operate through failures and attacks in network-centric battlefield.

8 Motivations Highly variable wireless channels, changing topology, frequent disconnections

9 Motivations Interaction with sensor networks

10 Motivations Military Operations in Urban Terrain (MOUT)

11 Motivations Collaboration among disparate platforms and networks

12 Key Challenges  Realizing tradeoffs among different cross-cutting concerns: –Quality of service –Platform characteristics –Security policies –Energy consumption –Fault tolerance  Adaptation of legacy code, separation of concerns  Safe adaptation of software (including dynamic composition) of software

13 Adaptive Middleware  Adaptive middleware can manage nonfunctional aspects of the system in coordinated fashion: –actively monitor the system, execute security policies –provide fault tolerance for specified components –adapt to changing environmental conditions –manage energy consumption in battery-powered devices –insulate the application from device/network differences  “Always On” systems –E.g., command and control, many critical infrastructure systems –require dynamic adaptation in ways not envisioned during development.

14

15 Separating Adaptive Behavior APPLICATION LAYER observers responders Proxy node (e.g., desktop) Application Host computer (wired workstation) “core” middleware components Application Host computer (wireless laptop) Application Host computer (wireless palmtop) data paths MIDDLEWARE LAYER NETWORK LAYER Adaptive Logic -- decision makers, event handlers, component loaders

16 RAPIDware Subprojects  Programming language abstractions for adaptation  Support for adaptation in legacy applications  Dynamic software composition –Safeness –Efficiency –Fault tolerance –Security  Adaptive group key management  Adaptive overlay networks

17 Middleware Layers –Domain-Services  Tailored to a specific class of distributed applications –Common-Services  Functionality such as fault tolerance, security, load balancing and transactions –Distribution  Programming-language abstraction –Host-Infrastructure  Platform abstraction  Schmidt decomposed middleware into four layers: Schmidt’s Middleware layers [2] Middleware Layers Applications Domain-Specific Middleware Services Common Middleware Services Distribution Middleware Host-Infrastructure Middleware Operating Systems and Protocols Hardware Devices System Platform

18 Part 1: MetaSockets  Adaptive Java (AJ): –An extension to Java that provides language constructs and compiler support for developing adaptive software.  MetaSockets: –An adaptable communication component developed in AJ –Can be used directly by applications or by higher-level middleware layers


Download ppt "Univ. Notre Dame, September 25, 2003 Support for Run-Time Adaptation in RAPIDware Philip K. McKinley Software Engineering and Networking Systems Laboratory."

Similar presentations


Ads by Google