16
Real-time Real-time Publish/subscribe Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th ,2003

Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

Embed Size (px)

Citation preview

Page 1: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

Real-time Publish/subscribe Real-time Publish/subscribe

ECE 1770-- Expert Topic

Lizhong CaoMilenko PetrovicMarch 6th,2003

Page 2: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,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)

Page 3: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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.

Page 4: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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)

Page 5: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

Real-time CORBAReal-time CORBA RT-CORBA: end-to-end predictability, fixed/dynamic scheduling,

vertically and horizontally integrated and managed by ORB

Page 6: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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

Page 7: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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

Page 8: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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

Page 9: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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

Page 10: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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

Page 11: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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

Page 12: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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

Page 13: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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

Page 14: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

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

Page 15: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

Open IssuesOpen Issues

Content-based real-time P/SHard real-time P/SReal-time distributed P/S

Page 16: Real-time Publish/subscribe ECE 1770-- Expert Topic Lizhong Cao Milenko Petrovic March 6 th,2003

Thank YouThank You