Dr. Douglas C. Schmidt [email protected] DARPA/ITO

37
DARPA DARPA Dr. Douglas C. Schmidt [email protected] DARPA/ITO Approved for Public Release, Distribution Unlimited Adaptive and Reflective Middleware Systems Saturday, June 18, 2022

description

Adaptive and Reflective Middleware Systems Monday, October 6, 2014. Dr. Douglas C. Schmidt [email protected] DARPA/ITO Approved for Public Release, Distribution Unlimited. Middleware, Frameworks, & Components. - PowerPoint PPT Presentation

Transcript of Dr. Douglas C. Schmidt [email protected] DARPA/ITO

Page 1: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

DARPADARPA

Dr. Douglas C. [email protected]

DARPA/ITO

Approved for Public Release, Distribution Unlimited

Adaptive and Reflective Middleware Systems

Thursday, April 20, 2023

Page 2: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

2 D. Schmidt

DARPADARPA

High-performance, real-time, fault-tolerant, and secure systems

Adaptive & reflective autonomous distributed embedded systems

Power-aware ad hoc, mobile, distributed, & embedded systems

Middleware, Frameworks, & Components

Patterns & Pattern Languages

Standards & Open-source

Addressing the COTS “Crisis”

However, this trend presents many vexing R&D challenges for mission-critical DoD systems, e.g., • Inflexibility and lack of QoS• Confidence woes & global competition

Distributed systems increasingly must reuse commercial-off-the-shelf (COTS) hardware & software• i.e., COTS is essential to R&D success

Why DARPA should care:

• Recent advances in COTS software technology can help to fundamentally reshape distributed embedded system R&D

• Despite IT commodization, progress in COTS hardware & software is often not applicable for mission-critical DoD distributed embedded systems

Page 3: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

3 D. Schmidt

DARPADARPA

There are multiple COTS layers & multiple research

opportunities

Historically, mission-critical apps were built directly atop hardware

The common middleware & domain-specific services layers are where many of the open R&D challenges reside

The common middleware & domain-specific services layers are where many of the open R&D challenges reside

The Evolution of COTS

Standards-based COTS middleware helps:•Manage distributed resources•Leverage HW/SW technology advances•Evolve to new environments & requirements

& OS•This was extremely tedious, error-prone, & costly over system life-cycles

•QoS specification & enforcement

•Real-time features & optimizations

•Layered resource management

•Transparent power management

Early COTS middleware lacked:

Advanced R&D has address some, but by no means all, of these issues

Page 4: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

4 D. Schmidt

DARPADARPA

•More emphasis on integration rather than programming

•Increased technology convergence & standardization

•Mass market economies of scale for technology & personnel

•More disruptive technologies & global competition

•Lower priced--but often lower quality--hardware & software components

•The decline of internally funded R&D•Potential for complexity cap in next-generation complex systems

Consequences of COTS & IT Commoditization

Not all trends bode well for long-term competitiveness of traditional R&D leaders

Ultimately, competitiveness will depend upon longer-term R&D efforts on complex distributed & embedded systems

Page 5: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

5 D. Schmidt

DARPADARPAThe DARPA/ITO Embedded

Systems Family of Programs

SECSEC• Hybrid, adaptive, control & computationHybrid, adaptive, control & computation

QuorumQuorum• Quality-of-service & translucent layers

MoBIESMoBIES• Design technology & software CAD

ARMSARMS• Adaptive & reflective middlewareAdaptive & reflective middleware

PCESPCES• Composable embedded systems

NESTNEST• Deeply networked embedded systems

PCAPCA• Polymorphous computing architecture

Page 6: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

6 D. Schmidt

DARPADARPAExample of DARPA ITO Impact: Real-time CORBA Specification

www.cs.wustl.edu/~schmidt/PDF/orc.pdf

Protocol Properties

Explicit Binding

Thread Pools

SchedulingService

StandardSynchronizers

Portable Priorities

Page 7: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

7 D. Schmidt

DARPADARPAExample of ITO Impact:

COTS in Real-time Avionics

Key System Characteristics• Deterministic & statistical deadlines• Periodic & aperiodic processing• Complex dependencies• Low latency & jitter• Continuous platform upgrades

•Static scheduling & validation

•Small-scale network topology

•Static scheduling & validation

•Small-scale network topology

•Limited fault tolerance & security support

•Used some non-standard COTS features

•Limited fault tolerance & security support

•Used some non-standard COTS features

Limitations

• Test flown at China Lake NAWS by Boeing OSAT II ‘98, funded by OS-JTF

• Drove Real-time CORBA standardization

Key Results

GoalsDemo applicability of COTS & open systems for mission-critical RT avionics

Page 8: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

8 D. Schmidt

DARPADARPAExample of ITO Impact:

Real-time Image ProcessingGoals•Examine glass bottles for defects in real-time

System Characteristics•Process 20 bottles per sec• i.e., ~50 msec per bottle

•Networked configuration

•~10 camerasKey Software Solution Characteristics

•Affordable, flexible, & COTS•Embedded Linux (Lem)•Compact PCI bus + Celeron processors

•Affordable, flexible, & COTS•Embedded Linux (Lem)•Compact PCI bus + Celeron processors

•Remote booted by DHCP/TFTP•Real-time CORBA

www.krones.com

Page 9: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

9 D. Schmidt

DARPADARPA

Example of R&D Impact:

Hot Rolling Mill Control FrameworkGoals•Control the processing of molten steel moving through a hot rolling mill in real-time

System Characteristics•Hard real-time process automation requirements• i.e., 250 ms real-time cycles

•System acquires values representing plant’s current state, tracks material flow, calculates new settings for the rolls & devices, & submits new settings back to plant

Key Software Solution Characteristics

•Affordable, flexible, & COTS•Product-line architecture•Design guided by patterns & frameworks

•Affordable, flexible, & COTS•Product-line architecture•Design guided by patterns & frameworks

•Windows NT/2000 (+ VMS!)•Real-time CORBA

www.siemens.de

Page 10: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

10 D. Schmidt

DARPADARPA

Time-critical targets require immediate response because:•They pose a clear and present danger to friendly forces &•Are highly lucrative, fleeting targets of opportunity

Example of ITO Impact:

WSOA/QuoTE Time-Critical Target Prosecution

A d a p t e d f r o m “ T h e F u t u r e o f A W A C S ” ,b y L t C o l J o e C h a p a

J o i n t F o r c e sG l o b a l I n f o G r i d

J o i n t F o r c e sG l o b a l I n f o G r i d C h a l le n g e

is t o m a k e t h is p o s s ib le !

Challenges are also relevant to TBMD & NMD

WSOA Goals• Detect, identify, track, & destroy time-critical targets

Key Solution Characteristics• Affordable & flexible• COTS-based• Affordable & flexible• COTS-based

• High confidence • Safety critical• High confidence • Safety critical

• Real-time mission-critical sensor-to-shooter needs

• Highly dynamic QoS requirements & environmental conditions

• Multi-service & asset coordination via Link 16

Key System Characteristics

Page 11: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

D. Schmidt

DARPADARPAExample of ITO Impact: Large-scale Switching Systems

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

IOM

BSE

BSE

BSE

BSE

BSE

BSE

BSEBSE

BSEGoal•Switch ATM cells + IP packets at terabit rates

Key Software Solution Characteristics

•High confidence & scalable computing architecture•Networked embedded processors•Distribution middleware•FT & load sharing•Distributed & layered resource management

•Affordable, flexible, & COTS

•High confidence & scalable computing architecture•Networked embedded processors•Distribution middleware•FT & load sharing•Distributed & layered resource management

•Affordable, flexible, & COTS

Key System Characteristics•Very high-speed WDM links

•102/103 line cards•Stringent requirements for availability

•Multi-layer load balancing, e.g.:•Layer 3+4•Layer 5

www.arl.wustl.edu

Page 12: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

12 D. Schmidt

DARPADARPA

• Large-scale (~5-250 miles)• Integrated QoS properties• Highly dynamic environments

• Semi-autonomous & re-configurable distributed systems

Network

• Broader scope• Hybrid scheduling & RT ARM

• Heterogeneous middleware & languages

• Hard real-time deadlines (~40hz)

• Low jitter & latency (~300us)

• Very hard real-time deadlines (>= 100hz)

• Very low latency (~10us)

• Highly autonomous & re-configurable hybrid & embedded systems

• Address fundamental QoS properties of distributed embedded & hybrid systems

•Enhance confidence of open-source R&D processes and V&V techniques

• Devise middleware-centric methods & tools to develop, optimize, & manage systems with multiple QoS properties

Research Goals

RTP

DNS

HTTP

UDP TCP

IP

TELNET

ETHERNET ATM FDDI

FIBRE CHANNEL

FTP

INTERNETWORKING ARCH

TFTP

Advance the state-of-the-art in adaptive & reflective middleware to coordinate multiple QoS properties of mission-critical distributed embedded & hybrid systems

Advance the state-of-the-art in adaptive & reflective middleware to coordinate multiple QoS properties of mission-critical distributed embedded & hybrid systems

Why the “waist” works:1.Decouples hardware from software so they

can evolve separately2.Decouples low-level capabilities from higher-

level capabilities to enhance innovation3.Decouples fast changing layers from slower

changing layersHowever, the waist can also restrict choices…

What Are We Trying to Do?

VIRTUAL MACHINE ARCH

Ix86 TI DSP 68K

PA/RISC PowerPC

Java VM Interpreter

Java Ada C/C++

Java Bytecode

WINNT LINUX LYNXOS

SOLARIS VXWORKS

CORBA

CORBASERVICES

CORBAAPPLICATIONS

MIDDLEWARE ARCH

Page 13: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

13 D. Schmidt

DARPADARPANew Challenges: Theater Ballistic Missile Defense

Goal•Detect, identify, track, & destroy multiple theater ballistic missiles

•Meeting hard real-time sensor-to-shooter needs in highly dynamic environment

•Providing load-invariant performance

•Supporting QoS for distributed weapons coordination

Key Research Challenges

-4 -2 0 42Relative Range (km)

Alt

itu

de

(k

m)

260

230

180

Re

lati

ve

Tim

e (

s)

112

56

0

RVTank

50 m/s DispersionVelocity

Req

uir

ed C

om

pu

te P

ow

er

Required Processing

TBMD Phases

Radar Control Program Sizing EstimatesRadar Control Program Sizing Estimates

Estimated data, based on 6 Ph3 & 7 Ph1 design & projections of Block I & Block II NTW requirements

Estimated data, based on 6 Ph3 & 7 Ph1 design & projections of Block I & Block II NTW requirements

AREA 6 Ph 3AREA 7 Ph 1NTW BLK 1A

NTW BLK 1BNTW BLK 1CNTW BLK 2

TBMD Phases:

SMP Load Scale Limits

Key Solution Characteristics

•Highly dependable & scalable computing architecture•High-speed networked clusters of multi-processor computers

•Distribution middleware•Fault tolerance & load sharing•Distributed & layered global resource management

•Affordable, flexible, & COTS

•Highly dependable & scalable computing architecture•High-speed networked clusters of multi-processor computers

•Distribution middleware•Fault tolerance & load sharing•Distributed & layered global resource management

•Affordable, flexible, & COTS

Page 14: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

14 D. Schmidt

DARPADARPAExample: Real-time Retargeting of UAVs

Key System Characteristics•Autonomous behavior•e.g., battlespace loitering of UAVs

•Coordinated strikes•e.g., C4ISR integration & UAV swarming for SEAD missions

• Real-time sensor-to-shooter QoS scheduling of sea/land/air assets

• Developing efficient, predictable, & safe adaptive HW/SW systems for autonomous UAV processing

• Real-time sensor-to-shooter QoS scheduling of sea/land/air assets

• Developing efficient, predictable, & safe adaptive HW/SW systems for autonomous UAV processing

•Secure integration to C4ISR infosphere• e.g., proof-carrying code & automated policy-based control

•Transition to COTS HW/SW to control costs & leverage technology advances

•Secure integration to C4ISR infosphere• e.g., proof-carrying code & automated policy-based control

•Transition to COTS HW/SW to control costs & leverage technology advances

Key Research Challenges

Goal•Reconfigure & retarget unmanned air vehicles (UAVs) in real-time

Page 15: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

15 D. Schmidt

DARPADARPANew Challenge:

Situational Awareness Systems

Key System Characteristics• Mission-critical, sensor-rich• Multi-asset coordination

• e.g., UAVs, MEMs, SUOs• Ad hoc wireless/mobile

infrastructure• Highly non-linear and dynamic• Non-uniform resource constraints

• Integrate multiple QoS properties simultaneously• e.g., dependability, security, &

bandwidth management• Tele-immersion situation monitoring

• e.g., QoS-based event fusion

• Integrate multiple QoS properties simultaneously• e.g., dependability, security, &

bandwidth management• Tele-immersion situation monitoring

• e.g., QoS-based event fusion

•Adaptive & reflective peer-to-peer information system coordination

• e.g., power-aware systems•COTS-based to control costs & to leverage rapid technology advances

• e.g., wireless tracking & local info

•Adaptive & reflective peer-to-peer information system coordination

• e.g., power-aware systems•COTS-based to control costs & to leverage rapid technology advances

• e.g., wireless tracking & local info

Key Solution Characteristics

Goal• Support dispersed & rapidly

deployable teams

Page 16: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

16 D. Schmidt

DARPADARPAExample:

Coordinated Disaster Response

Key System Characteristics• Mission-critical & time-critical systems• Multi-agency coordination

• e.g., police, fire, FBI, medical• Ad hoc wireless/mobile infrastructure• Highly non-linear and dynamic• Non-uniform resource constraints

Goal• Support rapidly deployable & dis-

persed emergency response teams

• Integrate multiple QoS properties simultaneously• e.g., dependability, security, &

bandwidth management• Tele-immersion situation monitoring

• e.g., QoS-based event fusion

• Integrate multiple QoS properties simultaneously• e.g., dependability, security, &

bandwidth management• Tele-immersion situation monitoring

• e.g., QoS-based event fusion

Key Solution Characteristics•Adaptive & reflective peer-to-peer information system coordination

• e.g., power-aware systems•COTS-based to control costs & to leverage rapid technology advances

• e.g., wireless tracking & local info

•Adaptive & reflective peer-to-peer information system coordination

• e.g., power-aware systems•COTS-based to control costs & to leverage rapid technology advances

• e.g., wireless tracking & local info

Page 17: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

17 D. Schmidt

DARPADARPATechnology Enablersand Business Drivers

Enablers/Drivers

Effect

Increasing budget & schedule pressures

Motivates search for effective COTS solutions

Recent advances in standards - OMG Real-time CORBA

- DISA Real-time DII COE

- DMSO HLA + RTI

Improved “market” - More options & competition - Reduce “COTS refresh” costs - 3rd party component providers

Recent successes for mission- critical system

- Both DoD & commercial

- Increased credibility of R&D community - Integrators willing to try COTS

Maturation of the field, i.e., COTS & middleware are “crossing the chasm” in research & industry

- Increased quality & quantify of R&D activities - Growth of technologically skilled labor pool

Page 18: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

18 D. Schmidt

DARPADARPAProblem Abstraction

Distributed Environment• Heterogeneous hardware/software• Mixed COTS & non-COTS components• Mixed RT and non-RT requirements• Wireline & wireless interconnects

Distributed Environment• Heterogeneous hardware/software• Mixed COTS & non-COTS components• Mixed RT and non-RT requirements• Wireline & wireless interconnects

Adaptivity & Reflection Targets• Dynamic component distribution & reconfiguration• Changing interconnection topology• Changing power-levels, CPU/network bandwidth,

latency, security, & dependability requirements

Adaptivity & Reflection Targets• Dynamic component distribution & reconfiguration• Changing interconnection topology• Changing power-levels, CPU/network bandwidth,

latency, security, & dependability requirements

Page 19: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

19 D. Schmidt

DARPADARPAThe Hard Problems

Decoupling functional aspects from QoS aspects

Automatically generating & optimizing multiple QoS properties adaptively & reflectively

Articulating pattern languages & reifying them into QoS-enabled frameworks & components

Leveraging, customizing, enhancing, & validating open-source COTS components

Page 20: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

20 D. Schmidt

DARPADARPAConventional COTS Limitations

Many hardware & software APIs and protocols are now standardized, e.g.:

Inflexible COTS negatively affects researchers & developersInflexible COTS negatively affects researchers & developers

While COTS standards promote reuse, they limit design choices, e.g.:• Networking protocols• Concurrency & scheduling• Caching• Fault tolerance• Security

Historically, COTS tightly couples functional & QoS aspects• e.g., due to lack of “hooks”

• TCP/IP, ATM• POSIX & JVMs• CORBA ORBs & components

• Intel x86 & Power PC chipsets

• Ada, C, C++, RT Java

Page 21: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

21 D. Schmidt

DARPADARPAPromising New Solution: Adaptive & Reflective Middleware

Research Challenges

MECHANISM/PROPERTYMANAGER

SYS COND SYS COND SYS COND SYS COND

DELEGATE DELEGATE

CONTRACT CONTRACT

LOCALRESOURCEMANAGERS

LOCALRESOURCEMANAGERS

•Preserve critical set of application QoS properties end-to-end• e.g., efficiency, predictability, scalability, dependability, & security

•Achieve load invariant performance & system stability

•Preserve critical set of application QoS properties end-to-end• e.g., efficiency, predictability, scalability, dependability, & security

•Achieve load invariant performance & system stability

•Maximize longevity in wireless & mobile environments• e.g., control power-aware hardware via power-aware middleware

•Automatically generate & integrate multiple QoS properties

•Maximize longevity in wireless & mobile environments• e.g., control power-aware hardware via power-aware middleware

•Automatically generate & integrate multiple QoS properties

Adaptive & reflective middleware is middleware whose functional or QoS-related properties can be modified either •Statically, e.g., to better allocate resources that can optimized a priori or

•Dynamically, e.g., in response to changes in environment conditions or requirements

Page 22: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

22 D. Schmidt

DARPADARPAThe Hard Problems

Decoupling functional aspects from QoS aspects

Automatically generating & optimizing multiple QoS properties adaptively & reflectively

Articulating pattern languages & reifying them into QoS-enabled frameworks & components

Leveraging, customizing, enhancing, & validating open-source COTS components

Page 23: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

23 D. Schmidt

DARPADARPA

Network

Key Themes of WSOA• Real-time mission replanning & collaboration

• e.g., C2 node & F-15 share data imagery & annotations

• Shows adaptive QoS behavior is feasible within demanding real-world constraints

• Showcase academic & industry synergy

Limitations• “Stove-pipe” architectures• Only “opportunistic” integration• Lack of multi-property QoS integration• Not fully autonomous

Limitations• “Stove-pipe” architectures• Only “opportunistic” integration• Lack of multi-property QoS integration• Not fully autonomous

State-of-the-Art in QoS Demos

DARPA, AFRL, & Boeing test flight in ‘01

Page 24: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

24 D. Schmidt

DARPADARPA

Key Themes•Handle variation translucently

• QoS aspect languages• Smart proxies & interceptors• Pluggable protocols & adapters• Middleware gateways/bridges

•Ideally, implementations should be generated from higher-level specifications

Promising New Solution: Middleware Frameworks for Integrating Multiple QoS Properties

Research Challenges•Model, compose, analyze, & optimize QoS framework component properties

•Leverage configurable & adaptive hardware capabilities

• e.g., power management, high-speed QoS-enabled bus & network interconnects

Research Challenges•Model, compose, analyze, & optimize QoS framework component properties

•Leverage configurable & adaptive hardware capabilities

• e.g., power management, high-speed QoS-enabled bus & network interconnects

Page 25: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

25 D. Schmidt

DARPADARPA

•Early compilers required •Separate internal representations hand-written for each programming language and

•Separate hand-written optimizers for each target backend

•Developing, verifying, validating, & evolving all these components separately is costly, time-consuming, tedious, & error-prone

•The problem only gets worse as more languages & target backends emerge

Applying Reflection as an Optimization Technique

C Compiler

Internal Rep.

Ix86Opt.

Ix86

PPCOpt.

PPC

68KOpt.

68K

C Program

To illustrate the benefits of reflection as an optimization technique, consider the evolution of compiler technology:

C++ Compiler

Internal Rep.

Ix86Opt.

PPCOpt.

68KOpt.

Ix86 PPC 68K

C++ Program

Ada Compiler

Internal Rep.

Ix86Opt.

PPCOpt.

68KOpt.

Ix86 PPC 68K

Ada Program

Page 26: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

26 D. Schmidt

DARPADARPAApplying Reflection as an

Optimization Technique

C/C++/Ada Compiler

Common Internal Rep.

Ix86Opt.

PPCOpt.

68KOpt.

C/C++/Ada Programs

Ix86

Ix86.md

PPC

PPC.md

68K

68K.md

•Modern compilers, such as GNU GCC, support •A common internal representation (still hand-written) for each programming language •Based on generalizing the language semantics

1. Read the target machine description

Optimizer Generator

2. Use discrimination network to analyze the optimization rules & opportunities

3. Generate an optimizer that is customized for the particular platform/language

•A generated optimizer that is customized automatically for each target backend•Based on reflective assessment of algebraic target machine description

Key Benefit of “Static” Reflection•New targets can be supported by writing a new machine description, rather than writing a new code generator/optimizer

Page 27: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

27 D. Schmidt

DARPADARPA

•Developing, verifying, validating, & evolving all these components separately is costly, time-consuming, tedious, & error-prone

•Moreover, it is even harder to hand-configure support for dynamic platform variations & complex application use-cases

•The problem only gets worse as more middleware, target platforms, & complex applications emerge

•Separate hand-written & hand-optimized implementations for each embedded target platform•e.g., various OS/network/HW configurations

•Conventional middleware require•Separate tools and interfaces hand-written for each ORB middleware specification •e.g., CORBA, Java RMI, COM+

Applying Reflection to Optimize Middleware Statically

CORBA ORB & Assorted Tools

CORBA Application

Conventional middleware for embedded systems is developed & optimized in a manner similar to early compiler technologies:

WinNT

WinNTImpl

Solaris

SolarisImpl

VxWorks

VxWorksImpl

Java RMI & Assorted Tools

WinNT Solaris

Linux

Java Application

WinNTImpl

SolarisImpl

LinuxImpl

COM+ ORB & Assorted Tools

WinNT Win98

WinCE

COM+ Application

WinNTImpl

Win98Impl

WinCEImpl

Page 28: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

28 D. Schmidt

DARPADARPAApplying Reflection to

Optimize Middleware Statically

Common ORB + Assorted Tools

Common Semantic Representation

Plat1

Impl

•The functional and QoS-related aspects of middleware can be improved greatly by advanced R&D on the following topics:•A common internal representation (ideally auto-generated) for each middleware specification •Based on generalizing the middleware semantics

Middleware Generator

2. Use discrimination network to analyze the optimization rules & opportunities

3. Generate middleware that is customized for a particular platform & application use-case

•A generated implementation that is optimized automatically for each target platform & application use-case•Based on reflective assessment of platform descriptions & application use-case

Plat2

Plat2

.pd

Plat2

ImplPlat3

Impl

1. Read the target platform description & application requirements

Ap

plic

atio

n R

equ

irem

ents

CORBA/Java/COM+ Applications

Plat3

Plat3

.pd

Plat1

Plat1

.pd

Page 29: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

29 D. Schmidt

DARPADARPA

Client Object

ORB endsystem

ORB endsystem

ResourceResource

Resource

Applying Reflection to Optimize Middleware Dynamically

Key System Characteristics

• Integrate observing & predicting of current status & delivered QoS to inform the meta-layer

•Meta-layer applies reflection to adapt system policies & mechanisms to enhance delivered QoS

Delegate Delegate

QuOContracts

Applying reflection as an optimization is even more relevant to middleware than compilers due to dynamism & global resources:

Probes Probes

Probes Probes

PiggybackedMeasurements

Status

ExpectedQoS

MeasuredQoS

CorrelateProbes

Resource Status Service

CollectTranslateIntegrate

Infer/AdaptFeedback

Loop

Page 30: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

30 D. Schmidt

DARPADARPA

Key Research Challenge:

Providing QoS Guarantees for Multiple Adaptive Feedback Loops

Goals•Ensuring stable QoS support at varying granularity & scope levels for integrated, multi-property feedback paths across different locations & time scales

•Determining patterns, protocols, and architectures necessary to integrate COTS components

Client Object

CombinedSystem-level & Application-level

Management Feedback

End-to-EndApplication-centric

Feedback

End-to-EndApplication-centric

Feedback

LocalResource-

centricFeedback

LocalResource-

centricFeedback

Page 31: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

31 D. Schmidt

DARPADARPAThe Hard Problems

Decoupling functional aspects from QoS aspects

Automatically generating & optimizing multiple QoS properties adaptively & reflectively

Articulating pattern languages & reifying them into QoS-enabled frameworks & components

Leveraging, customizing, enhancing, & validating open-source COTS components

Page 32: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

32 D. Schmidt

DARPADARPANew Idea: Pattern Languages for QoS

Research Challenges•Identifying QoS pattern languages

• Broaden the focus of conventional pattern-related tools and pattern languages, which focus on simple structural & functional behavior

•Model QoS-enabled middleware via pattern languages• Must understand how to build high-confidence

systems before we can automate V&V

•Identifying QoS pattern languages• Broaden the focus of conventional pattern-related

tools and pattern languages, which focus on simple structural & functional behavior

•Model QoS-enabled middleware via pattern languages• Must understand how to build high-confidence

systems before we can automate V&V

• Formal semantics• Articulate QoS properties of core architectures

• Automation• i.e., auto-generate portions of frameworks & components from pattern languages

• Formal semantics• Articulate QoS properties of core architectures

• Automation• i.e., auto-generate portions of frameworks & components from pattern languages

Key ThemePatterns & pattern languages codify expert knowledge to help generate software architectures by capturing recurring structures & dynamics and resolving common design forces

Page 33: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

33 D. Schmidt

DARPADARPAThe Hard Problems

Decoupling functional aspects from QoS aspects

Automatically generating & optimizing multiple QoS properties adaptively & reflectively

Articulating pattern languages & reifying them into QoS-enabled frameworks & components

Leveraging, customizing, enhancing, & validating open-source COTS components

Page 34: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

34 D. Schmidt

DARPADARPA

“Everything gets cheaper forever”• John Chambers, CEO Cisco Systems

Quality team

Teamwork

Drive Change

No technology religion

Empowerment

Frugality

Market Transitions

Stretch Goals

Trust/Fair/ Integity

Open Communication

Cisco CultureWhy COTS?•Commercial & military suppliers are increasingly driven by competitive forces•e.g., time-to-market/mission pressures & heavy competition for engineering talent

•COTS can contribute systematic reuse, continuous innovation, & cost reduction via 3rd party life-cycle management

•COTS can potentially reduce V&V costs•Lack of realistic alternatives…

Key COTS R&D Challenges

Key Technology Inhibitors to Success

•Integration woes•COTS components are often not designed for composition

•V&V and security woes•COTS components rarely designed for certification or high assurance

•Integration woes•COTS components are often not designed for composition

•V&V and security woes•COTS components rarely designed for certification or high assurance

•Inefficient feedback loops•e.g., “binary-only,” closed-source deployment hampers usability

•COTS is not always standard•Non-standard COTS can greatly increase “refresh” costs

•Inefficient feedback loops•e.g., “binary-only,” closed-source deployment hampers usability

•COTS is not always standard•Non-standard COTS can greatly increase “refresh” costs

Page 35: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

35 D. Schmidt

DARPADARPAEmerging trend in commodity IT market: Standard Open-source COTS

Open-source is a highly scalable and cost effective software process based on the following observations: • Validation scales, development does not• “End-to-end argument” applies to software

• i.e., more resources at the “edges”

Benefits for Developers •Standards help to ensure longer-term viability of technology investments

•Standard COTS helps control life-cycle costs

•Standard open-source COTS helps to focus expertise, e.g.:•Leverage “everyone’s a beta-tester” syndrome

•Resolves “COTS vs. ownership” conundrum in system acquisition

Benefits of Open-source for Researchers:•Leverage existing technology base for rapid prototyping of new technologies

•Promote broad visibility of novel R&D activities

•Accelerate the pace & impact of technology transfer

•Lead, rather than follow, COTS software trends

Page 36: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

36 D. Schmidt

DARPADARPA

New opportunity: High Confidence Open-source Software Systems

EMACS, ACE, & USENET servers

COTS desktop productivity tools

Linux, Apache, GNU tools, & TAO

Solaris & Windows NT

Next-generationmiddleware

Flight critical software

Open-sourceClosed-source

No Spec

InformalSpec

FormalSpec

Open-source standard COTS is now mainstream at certain layersOpen-source standard COTS is now mainstream at certain layers

Bold Stroke Key Themes•We know how to build open-source software quickly and cheaply•Quality and security remain key challenges, however…

•Open-source enables whitebox V&V techniques•e.g., analysis methods can extend across layers & thru components

•Reuse of middleware components can help amortize V&V efforts•No need to (re)start from scratch

•Middleware is often written in relatively “civilized” languages • cf. operating system kernels

•Middleware defines natural module boundaries for specification & testing•e.g., define QoS properties via QDLs

Page 37: Dr. Douglas C. Schmidt dschmidt@darpa.mil  DARPA/ITO

37 D. Schmidt

DARPADARPAConcluding Remarks•Researchers & developers of distributed systems face common challenges, e.g.:

•The application of formal methods along with adaptive & reflective patterns, frameworks, & components can help to resolve these challenges

•Carefully applying these techniques can yield efficient, scalable, predictable, & flexible middleware & applications

•Connection management, service initialization, error handling, flow control, event demuxing, distribution, concurrency control, fault tolerance synchronization, scheduling, & persistence

Summary of Research Themes in the ARMS Program•Decouple functional aspects & QoS aspects •Specify & apply component QoS as meta-data

•Devise adaptive & reflective methods,optimizations, & tools that can provide scalable, multi-property QoS guarantees end-to-end

•Enable high-confidence autonomous

system capabilites •Leverage standard COTS APIs

• But not necessarily COTS implementations or protocols