Distributed Object Applications - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

Distributed Object Applications

Description:

VIDEO. DISTRIBUTION HOST. Management and adaptation in UAV using the QuO adaptive middleware ... MOBILE VIDEO. SOURCE HOST. Video File. 17 10/20/01. DOA 2001 ... – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 22
Provided by: john1060
Category:

less

Transcript and Presenter's Notes

Title: Distributed Object Applications


1
Application of the QuO Quality-of-Service
Framework to a Distributed Video Application
Joe Loyall David Karr, Craig Rodrigues, Rick
Schantz BBN Technologies
Yamuna Krishnamurthy, Irfan Pyarali OOMWorks
Doug Schmidt UC, Irvine
http//www.dist-systems.bbn.com/tech/QuO
  • Distributed Object Applications
  • Rome, Italy
  • September 18-20, 2001

2
Outline
  • Motivation context
  • Overview of the QuO adaptive middleware framework
  • Using QuO in an embedded streaming video
    application
  • Conclusions

3
Trends Motivating Development of QoS-Enabled,
Adaptive Distributed Object Middleware
  • Trends in technology development
  • Hardware keeps getting smaller, faster, and
    cheaper
  • Software keeps getting larger, slower, and more
    expensive
  • Challenges in Software Development
  • Building distributed systems is difficult
  • Simultaneously the two dimensions of
  • Wider distribution across WANs, including
    wireless and satellite links
  • Smaller embedded environments with strict QoS and
    resource constraints
  • have made distributed systems development
    increasingly difficult

4
Challenges Facing Todays Wide-Area and Embedded
System Development
  • Middleware support for WAN applications doesnt
    scale well up or down
  • There is a gap between emerging low-level
    mechanisms to control some types of resources
    (e.g., bandwidth management, replication) and
    high-level application strategies
  • Researchers are generally working on one piece of
    the solution, e.g., focusing on one critical QoS
    property, one time epoch
  • Functional integration has taken precedence over
    system properties (e.g., CORBA IDL)
  • Middleware support for embedded applications is
    just starting to emerge
  • Many mission-critical distributed applications
    require real-time QoS guarantees
  • Building embedded applications is currently done
    manually and is tedious, error-prone, and
    expensive
  • Conventional middleware does not support embedded
    QoS requirements effectively

5
The Overarching Challenge
  • The overarching challenge is to provide COTS
    middleware support for developing distributed
    applications for these widely differing
    environments
  • Middleware support for building integrated QoS,
    adaptive applications (with varying requirements
    on granularity of changing behavior)
  • adaptable change at runtime while
    application/service running
  • reconfigurable change at runtime while
    application/service halted
  • evolvable change at development time
  • rehostable move from environment to environment,
    platform to platform, and domain to domain with
    minimum effort and maximum reuse.

6
The Quality Objects (QuO) Framework Supports
Development of Distributed Applications with QoS
  • The QuO framework provides
  • Separation of concerns between software
    functional properties and QoS needs
  • Consistent interfaces for QoS measurement and
    resource management control
  • Standard middleware interfaces between
    application and QoS-provider layers
  • Facilities to enable application- and
    system-level adaptation
  • QuO is being developed as a common approach to
    adaptable QoS for a number of projects focusing
    on different QoS dimensions
  • Dependability, replication, group communication
    (U.Illinois, Cornell, UCSB)
  • Managed bandwidth, resource reservation (CMU,
    Columbia Univ.)
  • Real-time behavior (Washington Univ in St. Louis)
  • Security, access control, survivability,
    intrusion detection (TIS)
  • Integrating different dimensions in an
    application, e.g., real-time and dependability
  • Suitability for supporting different approaches
    to a dimension

7
Outline
  • Motivation context
  • Overview of the QuO adaptive middleware framework
  • Using QuO in an embedded streaming video
    application
  • Conclusions

8
QuO Adds Specification, Measurement, and
Adaptation into the Distributed Object Model
Application Developer
CORBA DOC MODEL
Mechanism Developer
Application Developer
CLIENT
CLIENT
operation()
OBJ REF
out args return value
Delegate
Delegate
QuO Developer
SysCond
SysCond
SysCond
QUO/CORBA DOC MODEL
SysCond
IDL SKELETON
MECHANISM/PROPERTY MANAGER
IDL STUBS
OBJECT ADAPTER
Mechanism Developer
9
Adaptation and Control in QuO
  • In-band adaptation provided by the delegate and
    gateway
  • A delegate decides what to do with a method call
    or return based upon the state of its contract
  • Gateway enables control and adaptation at the
    transport layer
  • Out-of-band adaptation triggered by transitions
    in contract regions
  • Caused by changes in the system observed by
    system condition objects

10
The QuO Toolkit Supports Building Adaptive
Applications or Adding Adaptation to Existing Apps
  • QuO aspect languages
  • Contract description language and adaptive
    behavior description language
  • Code generators that weave QuO code into Java and
    C applications
  • System Condition Objects
  • Provide interfaces to resources, managers, and
    mechanisms
  • QuO Runtime Kernel
  • Contract evaluator
  • Factory object which instantiates contract and
    system condition objects
  • Instrumentation library
  • QuO gateway
  • Insertion of special purpose transport layers and
    adaptation below the ORB

11
QuO Components Are Packaged into Reusable Bundles
of Systemic Behavior Called Qoskets
  • The Qosket encapsulates a set of contracts (CDL),
    system condition objects (IDL), and QoS adaptive
    behavior (ASL)
  • The Qosket exposes interfaces to access QuO
    controls and information (specified in IDL)
  • The Qosket separates the functional adaptive
    behavior (business logic) from the QoS adaptive
    behavior and the middleware controls from the QoS
    mechanisms

Client Code
Qosket
Delegate

QuO Contract
Functional Behavior Adaptation
QoS Adaptive Behavior
SysCond
QoS Mechanisms
Object
12
Outline
  • Motivation context
  • Overview of the QuO adaptive middleware framework
  • Using QuO in an embedded streaming video
    application
  • Conclusions

13
Basic Streaming Video Scenario
  • Video feed from remote source
  • Video Distributor sends video to hosts on
    embedded network
  • Users hosts receive video and display it
  • Users interact with remote video source in real
    time

14
Variations Adaptations in Streaming Video
Scenario
Operational requirements and tradeoffs
  • Timeliness
  • Maintain a current view of UAV imagery
  • Importance
  • Frames must be dropped in reverse order of
    importance (B, then P)
  • Fidelity
  • Highest fidelity frames (i.e., I frames) must be
    delivered

Dynamic Variations in Operating Conditions
15
Architecture of the Embedded Video Streaming
Application
CORBA A/V Streaming Service AQoSA Resource
Reservation (IntServ)
CORBA A/V Streaming Service
Video Source Process
Video Distributor
Video Display Proxy
Video Display
VIDEO DISPLAY HOST 1
QuO
Video File

VIDEO DISTRIBUTION HOST
MOBILE VIDEO SOURCE HOST
  • Features
  • Reused Off the Shelf Software
  • DVDView video player
  • Common middleware services
  • QuO adaptive middleware
  • Real-time CORBA ORB (TAO)
  • Naming Service
  • A/V Streaming Service
  • AQoSA
  • Hand coded functionality
  • video forwarding
  • frame processing, filtering
  • timestamping and sequencing
  • connection, video transport

16
Management and adaptation in UAV using the QuO
adaptive middleware
Video Distributor
Video Display Proxy
Video Source Process
Video Display
Video Stream
QuO
QuO
Video File
VIDEO DISTRIBUTION HOST
MOBILE VIDEO SOURCE HOST
VIDEO DISPLAY HOST
17
Connecting and managing UAV video streams using
the CORBA A/V Streaming Service
Video Distributor
Video Display Proxy
Video Source Process
Video Display
Video Stream
QuO
QuO
Video File
VIDEO DISTRIBUTION HOST
MOBILE VIDEO SOURCE HOST
VIDEO DISPLAY HOST
18
Reserving network resources using the AQoSA API
Video Distributor
Video Display Proxy
Video Source Process
Video Display
Video Stream
QuO
Video File
VIDEO DISTRIBUTION HOST
MOBILE VIDEO SOURCE HOST
VIDEO DISPLAY HOST
19
Ability to Keep Video Current Using Middleware
Adaptation
35
  • Video source process running on 3 200 MHz PCs
    (Linux), 128 MB memory, TCP/IP
  • Additional 60 CPU load introduced on second
    stage (3 processes requesting 20 load each)
    starting at approx. 60 secs, removed at approx.
    120 secs.

30
Without adaptation
25
20
Additional latency (secs)
15
Load
With adaptation
10
5
0
0
30
60
90
120
150
180
210
240
270
300
Execution time (secs)
Under load
20
The Code to Measure, Control, and Adapt to
Changing Video QoS is Encapsulated in a Qosket
Video Distributor
send_frame()
BWReserveQosket

StreamEndpointDelegate
Normal
Filter?
reserve_ bandwidth()
Degraded
Timestamp
Unusable
Sequence no.
reservation status
request reservation
throughput
send_frame()
A/V Streaming Service
Video Display
AQoSA
RSVP
21
Outline
  • Motivation context
  • Overview of the QuO adaptive middleware framework
  • Using QuO in an embedded streaming video
    application
  • Conclusions

22
Conclusions
  • QuO is adaptive middleware
  • Enables the separation of QoS from functionality,
    e.g., throughput, timeliness, and network
    management in the streaming video application
  • Works with off-the-shelf software and standards,
    e.g., CORBA, A/V Streams, MPEG in the streaming
    video application
  • QuO has been applied to Real-Time Embedded
    Systems (RES)
  • We illustrated one of these, the remote streaming
    video dissemination application
  • QuO adaptation is able to help maintain QoS
    requirements in the face of network and CPU load
  • The QuO frameworks eases the burden of
    programming adaptive behaviors, measurement, and
    control
  • QuO is open-source
  • http//www.dist-systems.bbn.com/tech/QuO
  • E-mail jloyall_at_bbn.com or quo-help_at_bbn.com for
    more information
Write a Comment
User Comments (0)
About PowerShow.com