Presentation is loading. Please wait.

Presentation is loading. Please wait.

Supporting Disconnected Operations in Publish/Subscribe Systems Vinod Muthusamy Joint work with Milenko Petrovic, Ioana Burcea, H.-Arno Jacobsen, Eyal.

Similar presentations


Presentation on theme: "Supporting Disconnected Operations in Publish/Subscribe Systems Vinod Muthusamy Joint work with Milenko Petrovic, Ioana Burcea, H.-Arno Jacobsen, Eyal."— Presentation transcript:

1 Supporting Disconnected Operations in Publish/Subscribe Systems Vinod Muthusamy Joint work with Milenko Petrovic, Ioana Burcea, H.-Arno Jacobsen, Eyal de Lara University of Toronto 2004 IEEE International Conference on Mobile Data Management

2 Agenda Part I – Publish/Subscribe –Centralized/distributed models –Benefits –Applications Part II – Mobile Publish/Subscribe –Disconnected operation in distributed publish/subscribe systems Motivation and Problem Solutions –Evaluation Factors Results Conclusions

3 The Publish/Subscribe Model Broker Publisher Subscriber Subscriptions Publications Notification IBM=84 MSFT=27 INTC=19 JNJ=58 ORCL=12 HON=24 AMGN=58 Stock markets NYSE NASDAQ TSX Subscriptions: IBM > 85 ORCL < 10 JNJ > 60

4 Distributed Publish/Subscribe Hierarchy of brokers [Siena, JEDI] Subscriptions to root Publications to root and multicast down to interested subscribers Broker stocks/ibm/* stocks/* Publisher Broker stocks/oracle Broker

5 Publish/Subscribe Benefits Simple interface Decoupling of producers and consumers of data –Address Content-based routing Anonymity –Platform –Space –Time –Representation (semantic) Efficient data dissemination (scalability) –Push model –Multicast

6 Publish/Subscribe Applications News dissemination Location based services Workflow management E-commerce Auctions Distributed gaming Software updates delivery Sensor networks Existing systems –Research: ToPSS, Siena, JEDI, Gryphon, Hermes –Industry: IBM, Precache, TIBCO, Talarian

7 Part II How does disconnected operation work in distributed publish/subscribe systems? Why is disconnected operation a problem? What are some solutions? How do these solutions perform?

8 Disconnected Operation: Motivation User’s laptop connected at work Disconnect at the end of the day Reconnect at home Events published while a subscriber is disconnected should be stored somewhere and replayed upon reconnection Broker Subscriber

9 Disconnected Operation [JEDI] Subscriber receives publications Subscriber disconnects Broker stores publications Subscriber connects Transfer state to new broker & replay old publications New publications go directly to subscriber Broker Publisher Subscriber t1t1 At Old Broker t2t2 DisconnectedAt New Broker t4t4 t3t3 Receive new events Connect (movein) Disconnect (moveout)

10 Disconnected Operation [JEDI] Subscriber receives publications Subscriber disconnects Broker stores publications Subscriber connects Transfer state to new broker & replay old publications New publications go directly to subscriber Broker Publisher Subscriber t1t1 At Old Broker t2t2 DisconnectedAt New Broker t4t4 t3t3 Receive new events Connect (movein) Disconnect (moveout)

11 Disconnected Operation [JEDI] Subscriber receives publications Subscriber disconnects Broker stores publications Subscriber connects Transfer state to new broker & replay old publications New publications go directly to subscriber Broker Publisher Subscriber moveout t1t1 At Old Broker t2t2 DisconnectedAt New Broker t4t4 t3t3 Receive new events Connect (movein) Disconnect (moveout)

12 Disconnected Operation [JEDI] Subscriber receives publications Subscriber disconnects Broker stores publications Subscriber connects Transfer state to new broker & replay old publications New publications go directly to subscriber Broker Publisher Subscriber t1t1 At Old Broker t2t2 DisconnectedAt New Broker t4t4 t3t3 Receive new events Connect (movein) Disconnect (moveout)

13 Disconnected Operation [JEDI] Subscriber receives publications Subscriber disconnects Broker stores publications Subscriber connects Transfer state to new broker & replay old publications New publications go directly to subscriber Broker Publisher movein t1t1 At Old Broker t2t2 DisconnectedAt New Broker t4t4 t3t3 Receive new events Connect (movein) Disconnect (moveout)

14 Disconnected Operation [JEDI] Subscriber receives publications Subscriber disconnects Broker stores publications Subscriber connects Transfer state to new broker & replay old publications New publications go directly to subscriber Broker Publisher t1t1 At Old Broker t2t2 DisconnectedAt New Broker t4t4 t3t3 Receive new events Connect (movein) Disconnect (moveout)

15 Disconnected Operation [JEDI] Subscriber receives publications Subscriber disconnects Broker stores publications Subscriber connects Transfer state to new broker & replay old publications New publications go directly to subscriber Broker Publisher t1t1 At Old Broker t2t2 DisconnectedAt New Broker t4t4 t3t3 Receive new events Connect (movein) Disconnect (moveout)

16 Problem: Unicast State Transfer Broker  Publish/subscribe is efficient [multicast]  State transfer is inefficient [unicast]  What’s the bandwidth overhead of unicast state transfer? Broker

17 State Transfer Optimizations: Prefetching Eagerly migrate state while the user is disconnected Exploits knowledge of future mobility patterns Shortens perceived length of disconnection to the system Less state to transfer State transfer period hidden from user Broker moveout t1t1 At Old Broker t2t2 DisconnectedAt New Broker t4t4 t3t3 Receive new events Connect (movein) tptp Disconnect (moveout)

18 State Transfer Optimizations: Logging Brokers cache recent publications Exploits locality Only partial state transfer needed if locality exists Overhead could be worse if no locality exists Requires cache space at brokers Broker

19 State Transfer Optimizations: Home-Broker Mobile client logically reconnects to “home” broker Eliminates state transfer overhead Increases perceived disconnection period –Unicast transfer even when connected movein Broker

20 Evaluation: Factors Affecting Mobility Network  Bandwidth and latency of links  Broker placement  Broker topology  Number of brokers Mobility  Connection and disconnection periods  Predictive or repetitive mobility  Group mobility Application  No. of publishers and subscribers  Publication rate  Subscription specificity  Subscription (interest) locality  Message size

21 Evaluation: Setup Simulation Environment –NS2 network simulator –Implemented state transfer optimizations Parameters –Topology Metropolitan Area Network 4 levels of degree 4  64 leaf brokers –Subscribers: 200, 400, 600, 800 –Publishers: 100 –Locality: random, 30%, 60%, 90% Metric –Total message traffic –State transfer overhead (unicast/multicast) 64 1

22 Commute Scenario Simulate evening commute home –Subscribers work downtown (20 inner brokers) –Start commute between 4:00 pm and 6:00 pm –40% live in city center (30 inner brokers) Take 15 min to 45 min to commute –60% live in outskirts (34 outer brokers) Take 45 min to 90 min to commute Few total disconnections Long disconnection periods Downtown City center Outskirts 164

23 Commute Scenario: Average Overhead Standard: almost 100% overhead Logging: Slight improvement Prefetching: negligible overhead Home broker: poor due to sustained unicast Peak overhead results –Up to 3x for Standard –Up to 27x for Home-broker

24 Commute Scenario: Total Message Cost 800 subscribers Same relative performance Message cost tracks # of state transfers Home-broker overhead even after reconnection Max 10% concurrent state transfers

25 Random Scenario More ad-hoc mobility –Subscriber starts at random broker –Disconnects for 10 min to 30 min –Walk (5 km/h), city driving (50 km/h), highway driving (100 km/h) –Reconnects to a random broker within range –Remains connected for 10 min to 30 min –(repeat) More disconnections Shorter disconnection periods

26 Random Scenario: Average Overhead Standard: 100% overhead Prefetching overhead now noticeable –Due to shorter disconnections Logging diverges more from Standard –Due to hidden increase in locality with population –Due to more disconnections

27 Random Scenario: Effect of Locality 800 subscribers Adjust subscription locality by varying % of subscribers with identical subscriptions Logging can approach “ideal” Prefetching Others’ increasing overhead is due to decreasing multicast, and constant unicast

28 Random Scenario: Effect of Log Size For Logging approach Log size 0, 400, 800, 1200 events Diminishing returns of increasing log size

29 Pervasive Scenario Persistent connectivity –Similar mobility patterns as Random scenario –Disconnections are few seconds long E.g. Cellular handoffs between cells Many disconnections Short disconnection periods

30 Pervasive Scenario: Average Overhead Event migration is small portion of state transfer overhead Similar overhead (except home- broker) –Due to very short disconnec- tions

31 Conclusions The publish/subscribe model lends itself well to mobile applications Mobility can break a distributed pub/sub system –Network overhead can double with only 10% concurrent movein’s –Stored events typically dominate overhead, not subscriptions –With sufficient locality, Logging approaches Prefetching Future Work –Other scenarios: realistic traces, mobile publishers –Investigate effects of state transfer traffic on latency –Develop more state transfer optimizations Multicast state transfer Logging at intermediate brokers Smarter cache replacement policies

32 Thank You

33 Pub/Sub Optimizations Broker  Reduce subscription traffic Broker Covering stocks/ibm/*stocks/* Broker  Reduce publication traffic to the root Broker Advertisements stocks/* Publisher  Subscriptions  Advertisements  Publications Broker

34 Covering and Advertisements Our scenarios did not benefit significantly from covering and ads Forwarding of events dominate overhead –98% of overhead in Commute and Random scenarios –Covering only helps to quench subscriptions There is little subscriber locality (in our scenarios) –Most events must propagate to the root broker –Ads only help to quench upstream publications

35 Toronto Publish/Subscribe System (ToPSS) Research Areas S-ToPSS (semantic) X-ToPSS (semi-structured data; XML) A-ToPSS (approximate) M-ToPSS (mobile) Ad hoc-ToPSS (ad hoc networking) Federated-ToPSS (federation of ToPSS brokers) persistent-ToPSS (Subject Spaces) Rb-ToPSS (rule-based) ToPSS (matching algorithms) L-ToPSS (location-based correlation) p2p-ToPSS (peer-to-peer) ToPSS Information consumers subscribe to information of interest. Information producers publish information. ToPSS-broker(s) match and route relevant information to interested subscribers.


Download ppt "Supporting Disconnected Operations in Publish/Subscribe Systems Vinod Muthusamy Joint work with Milenko Petrovic, Ioana Burcea, H.-Arno Jacobsen, Eyal."

Similar presentations


Ads by Google