Subscriber Mobility in Pub/Sub Systems: Pro-Active vs. Reactive Handoffs
Thomas Kunz | |
Systems and Computer Engineering | |
Carleton University |
Publish/Subscribe Systems: Background
The pub/sub service is a logically centralized service | ||
intermediates the communication between publishers and subscribers in a distributed setting. | ||
Basic primitives: sub, unsub, pub | ||
Various routing topologies and semantics | ||
The pub/sub communication paradigm provides: | ||
space, flow, and timing decoupling between producers and consumers of information | ||
content-based filtering and communication | ||
Multi-way delivery | ||
A frequently used communication paradigm | ||
Proposed for mobile computing |
Pub/Sub System on Top of Wireless Network
Pub/Sub & Mobility: Problem Definition
How to cope with mobile subscribers? | |||
Disconnected operations: | |||
Buffering & queue management | |||
Handover protocol | |||
relocating subscriptions and updating the topology | |||
How to balance subscriber’s load in the event-service? | |||
Load balancing strategy | |||
Few studies focused on extending pub/sub | |||
Goals of research | |||
Develop a mobility support service for pub/sub systems | |||
Validate its performance in a testbed |
Java Message Service (JMS): Overview
API specification to implement MOM services | ||
Two communication modes specified: | ||
Point-to-point (one-to-one) | ||
Publish/subscribe (event-based service) | ||
Two subscription schemes adapted: | ||
Durable scheme | ||
Non-durable scheme | ||
Two consumption modes supported: | ||
Asynchronous mode | ||
Synchronous mode | ||
Other features |
Characterization of JMS Primitives
Wired/wireless networks | ||
JMS primitives | ||
Compare primitives with high & low reliability | ||
Detailed results appears in “Performance of Pub/Sub Systems in Wired/Wireless Networks”, in Proceedings of 64th IEEE VTC, September 2006 | ||
Key observations | ||
Non-durable subscriptions outperform durable ones | ||
Durable subscriptions show comparable throughput results to non-durable ones in wireless domain | ||
Reliability cost of durable subscriptions is relatively low in wireless environment |
Reactive approach: state-transfer occurs only after the mobile subscribers reconnect to the new broker | ||
Commonly used: JEDI, REBECA, SIENA, CEA, .. | ||
Durable subscription-based approach: every broker buffers all the published messages irrespective of its current active subscriptions | ||
Recently used: JMS implementations (OpenJMS, FiornaMQ, JBossMQ, JavaSMQ), Ivana et al., .. | ||
Pro-active Approach: context transfer/caching occurs prior to the actual movement of the mobile subscriber (our proposal) | ||
Passive subscriptions are propagated to neighbors of current broker | ||
Subscriptions get activated once subscriber disconnects, start buffering messages | ||
Once subscriber reconnects to a broker, will with high probability find active subscriptions and locally buffered messages, subscriptions in old and new neighborhood get updated accordingly |
Is an undirected graph with a number of edges that represent the mobility paths between the vertices | |
Provides the abstractions to identify the candidate subset of next potential brokers | |
Forms the basis for pre-loading the subscriber context one hop ahead of its current broker | |
Automatically generated and adaptively changes according to the mobility graph | |
A timestamp based LRU method can be used to ensure the freshness of NG and remove the outlier edges | |
Is stored in a distributed manner |
Implementing Pro-active Approach
Experimental Setup & Mobility State Diagram
Performance Results and Comparison I
Mobility extension overhead | ||
In terms of message processing time and message throughput |
Performance Results and Comparisons II
Cumulative Distribution of Handoff Time |
Performance Results and Comparisons III
Message Loss, Duplication, Throughput | ||
As a function of the publication rate |
Proactive approach to support mobile subscribers | |||
Evaluated through small testbed | |||
Superior performance to reactive approach: | |||
Higher throughput | |||
Lower message latency | |||
Lower handoff latency | |||
No message duplication | |||
Low message loss rate | |||
Future Work: | |||
Larger testbed (some initial results) | |||
Impact of mobility patterns/neighborhood graph approximation | |||
Compare to durable approach (some initial results) | |||
Analytical performance bounds/prediction models |