Download presentation
Presentation is loading. Please wait.
Published byMarian Debra Flynn Modified over 9 years ago
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.
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.