Upload
amberlynn-tate
View
212
Download
0
Embed Size (px)
Citation preview
Real-time Publish/subscribe Real-time Publish/subscribe
ECE 1770-- Expert Topic
Lizhong CaoMilenko PetrovicMarch 6th,2003
What Is Real-time?What Is Real-time?
Real-time vs. Non-real-time– Hard real-time vs. Soft real-time
Fundamental factors– Time constraints (deadline)– Timeliness optimality– Sequencing– Predictability
Traditional real-time (static) Next generation real-time (adaptive, dynamic)
Distributed Computing SystemDistributed Computing System Asynchronous and synchronous models
– Bounds/no bounds on execution and transmission latency, clock drift rate
– Real-time distributed system is partial synchronous at least.
Multi-node behaviors – Including: control flow (RPC/RMI), data flow (
pub/sub) , asynchronous message-passing, mobile code, virtual shared memory
– Multi-node properties maintained: integrity of behavior, detection and handling of distributed events, timeliness, security and fault management.
Real-time DistributedReal-time Distributed Horizontal real-time (end to end timeliness) Multi-node sequencing categories
– Using a consistent sequencing policy (alpha, RT-CORBA 1 / 2)
– Interact to perform sequencing for all nodes (improved timeliness, but higher costs)
– One or more level “meta” resource sequencer above node resource sequencer (hierarchical)
Priority scheduling– Fixed priority (real-time CORBA 1)– Dynamic scheduling ( real-time CORBA 2)
Real-time CORBAReal-time CORBA RT-CORBA: end-to-end predictability, fixed/dynamic scheduling,
vertically and horizontally integrated and managed by ORB
Real-time Java DRTSJ/RMIReal-time Java DRTSJ/RMI
Distributed real-time specification for java (DRTSJ) – Supporting predictability of end-to-end timeliness for
sequentially trans-node behaviors in dynamic distributed object systems.
– Based on alpha distributed real-time OS– Distributed real-time RMI
Arbitrary scheduling disciplines, global physical time, crash failures only, RT-JRMP and IIOP
Real-time Pub/subReal-time Pub/sub
Pub/sub is ideal for real-time data distribution– Many-to-many communication– Distributing time-critical information– No request traffic, direct event-driven transfer– Anonymous communication structures code– Maps well to real-time needs
Streaming signals Status updates Event-driven commands
Real-time Pub/sub ModelReal-time Pub/sub Model RTPB model by RTI
– Publisher: Fast, robust, re-configurable Supports fail-over and migration
– Subscriber: Flow-controlled, timely delivery of each data stream
– Service: Fault-tolerant request and reply Requests have deterministic “best then first” semantics Tradeoff between speed and quality of response
– Reliable and determinism tradeoff
Existing Real-Time P/SExisting Real-Time P/S
Allow timing constraints in P/S model Once events and subscriptions have timing
information, scheduling is possible Running time of matching algorithms is usually
not predictable; can do soft real-time only Subject-based P/S – simple and fast; easier to
bound matching time; can do hard-real time Centralized P/S only
P/S Systems for Multimedia
First papers on multimedia and P/S (ICDCSW'02) Focus on using existing (non-real-time) P/S to
improve soft real-time applications Elvin Real-Time Protocol
– Allows TV channel customization without intervention from the user
Content Analysis using MBus– Content analysis is time-sensitive and computationally
expensive– Uses P/S to build distributed content-analysis prototype
P/S Model for Real-TimeDatabases
Active real-time databases (ARTDB) use ECA (event-condition-action) rules with timing constraints for real-time transactions (ARTDB'95)– ECA Example: If IBM stock price declines by 10%
within any 10min interval, then notify me and send a sell order for 1000 IBM shares within 2sec
Real-time update propagation/cache update (Distributed and Parallel Databases 9(1), 2001)– Keep client-side cache up to date– Introduce notification deadline for each subscription
Real-Time P/S Middleware
ISIS-like toolkit for distributed real-time systems with focus on analyzability and predictability (RTAS'95)
RTPS Protocol/NDDS (Stanford, RTI Inc. )– (Soft) Real-time publish subscribe protocol
(Informational RFC from IETF)
CORBA-based real-time P/S (JSS'02)– For developing distributed and embedded applications
using COTS platforms
Network Data Delivery Service
Pardo-Castellote and Schneider (ICRA'94)Subject-based, soft real-time
time
data updatesreceived
persistence
accept only updates of higher strength
accept anyupdate
time
consumernotified
min. separation
nonotifications
deadline
new updatesonly
alwaysnotify atdeadline
Producer
Consumer
CORBA-based real-time P/SCORBA-based real-time P/S
COTS components Based on TAO Content-based P/S Allows federated
brokers Timeliness ensured
using staged matching
Open IssuesOpen Issues
Content-based real-time P/SHard real-time P/SReal-time distributed P/S
Thank YouThank You