oopsla oct 2001 1 towards a pattern language for nest middleware venkita subramonian & chris...
TRANSCRIPT
OOPSLA Oct 2001 1
Towards a Pattern Language for NEST Middleware
Venkita Subramonian & Chris Gill, Washington University, St.LouisDavid Sharp, The Boeing Company, St. Louis
{venkita,cdgill}@[email protected]
Research supported by DARPA (NEST), Boeing OEP contract
OOPSLA Oct 2001 2
What is NEST? Networked Embedded Software Technology DRE system with 100 to 100,000 networked
nodes Resource constrained hardware components Requires fine-grain fusion of hardware and
software components Applications in advanced avionics and space
systems, weapon systems, wireless devices
OOPSLA Oct 2001 3
NEST Services Predictable and dependable behavior
despite local failures Real-time Coordination Services
Fault toleranceData exchangeSynchronization Self-stabilizing protocolsReplication
Automated synthesis of services
OOPSLA Oct 2001 4
An Open Experimental Platform for NEST
12
43
Acoustic Waves (kHz Range)
Active Damage Interrogation
Structure with Embedded or Bonded Piezoelectric
Transducers
Information Processing System
Sensor Measurements
Actuator Excitation
OOPSLA Oct 2001 5
Why Middleware for NEST? Service reuse across NEST applications Flexible
Can be customized to a particular NEST application/execution context
Can exist across various levels of scale Address Design Forces in NEST
Distribution of control Resource Management Fault Tolerance Time Synchronization Heterogeneous processing Dynamic Reconfiguration
OOPSLA Oct 2001 6
A Pattern Map for NEST MiddlewareBlackboard Broker
Layers
internal structuring
knowledge source implementation
Pipes & Filters
inter-layer communication
Client-Dispatcher-Server
requestdispatching
Lookup
servicelookup
Locate & Track
locationdynamics
Leasing
Lazy Acquisition
performanceoptimization
resourceoptimization
EvictorPick & Verify
scalability
POSA2 patternscommunication/ concurrency
Recoverable Distributor
Fault tolerance/data sharing
Strategy
fault tolerance/data consistencyprotocols
DistributedObserver
DistributedNotifier
decoupled data updates/fault notification
communication/ concurrency
OOPSLA Oct 2001 7
Locate &Track
Lookup Service
Lookup
NEST Service
Pick & Verify
NESTClient
Evictor Leasing
Lazy Acquisition
BrokerPOSA2patterns
ResourceManagement
Communication/Concurrency
ResourceLocator
Distributed Observer
RecoverableDistributor
DistributedNotifier
Fault Tolerance
Towards a NEST Middleware Pattern Language
OOPSLA Oct 2001 8
A stake in the ground ACE/TAO
Pattern rich middleware frameworks Capture some inherent structure of the NEST domain
Feature reduction/extension from ACE/TAO Call tracing mechanismsminimumCORBA and single thread options
OEP Application domain Understand the OEP application Candidate list of middleware services
OOPSLA Oct 2001 9
Conclusions and Future work What part of CORBA might we need in a NEST
environment – nanoCORBA?? Customized subsetting/extension of ACE and
TAO for NEST Leverage approaches for subsetting/extension
Generic/Aspect-Oriented/Generative Programming Automated custom generation that leverages the
evolution of the baseline