300 likes | 447 Views
Mobility in a Publish Subscribe Internetwork. Dr. Dmitrij Lagutin Helsinki Institute for Information Technology (HIIT) (based on slides by Prof. George Xylomenos) 27.9.2011. Introduction Why publish/subscribe internetwork for mobility? The publish/subscribe internetwork architecture
E N D
Mobility in a Publish Subscribe Internetwork Dr. Dmitrij Lagutin Helsinki Institute for Information Technology (HIIT) (based on slides by Prof. George Xylomenos) 27.9.2011
Introduction Why publish/subscribe internetwork for mobility? The publish/subscribe internetwork architecture Caching in pub/sub Mobility in pub/sub: Reactive Mobility in pub/sub: Proactive Conclusion Credits Outline
Introduction End-to-end (E2E) Internet Architecture Endpoint centric, based on telephony Accused as the root of all evil (NAT, CDN, MIP) Publish/Subscribe (Pub/Sub) Internet Architecture Information Centric Networking (ICN) Information decoupled from location The Pub/Sub Internetwork Architecture The Pub/Sub architecture of PSIRP/PURSUIT Supports multicast, anonymity and asynchrony Seamlessly supports mobile nodes (MNs)
What is the difference with mobile IP? • Handover in mobile IP • Data sent during disconnection are lost • Mobile IP extensions reduce handover delay • Micro mobility keeps handovers local • Context transfer allows fast reconnections • Handover in mobile pub/sub • The built in pub/sub mechanisms simplify things • Asynchrony: no need for rendezvous in time • Data can be cached during disconnection • Multicast: allows multicast assisted mobility • Target multiple Access Points (APs) • Anonymity: data can be provided by anyone
The Pub/Sub Internetwork Architecture Three main entities Publisher: advertises availability of information items Issues publication messages Sends information items upon request Information items may have many publishers Subscriber: expresses interest on information items Issues subscription messages Receives information items from some publisher Event notification service Brings publishers and subscribers together
The Pub/Sub Internetwork Architecture • Information identifiers: Statistically unique pair • Rendezvous ID (RID): application derived • Scope ID (SID): access control and policies • Example: Scope_A/ Scope_B/…/Scope_Z/RID • Rendezvous Network (RENE) • Provides the event notification service • Consists of Rendezvous Nodes (RN) • Each information item handled by an RN • The Rendezvous Point (RVP) of the item • RENE matches publishers and subscribers • Instructs publishers to start forwarding data
The Pub/Sub Internetwork Architecture • Forwarding ID (FID): sent by RVP to the publisher • Source routing path to subscribers (multicast) • Each link has a statistically unique Link ID • Within its AS or network area • A path is encoded as a Bloom filter of Link IDs • Each node tests its Link IDs against the FID • Native multicast without extra cost • Publishers do not know subscribers (anonymity) • FIDs do not betray location • FIDs can be frequently changed/invalidated • Pub/Sub decoupled in time (asynchrony)
The Pub/Sub Internetwork Architecture <Bob_SId, Bob_RId, metadata> RV Point Bob <Bob_SId, Bob_RId> <Bob_SId, Bob_RId, metadata> Router AP1 AP2 <Bob_SId, Bob_RId> Alice
The Pub/Sub Internetwork Architecture RV Point Bob Fid (Bob, Alice@AP1) Router AP2 AP1 Alice
Caching in Pub/Sub Internetwork Caches are just alternative publishers The RVP may point at cached data copies Transparent caching The cache stores in transit data The RVP is notified about the cached data Non-transparent caching The cache intercepts subscription requests Information explicitly delivered in two stages One FID from the publisher to the cache Another FID from the cache to the MN
Caching in Pub/Sub Internetwork <Bob_SId, Bob_RId, metadata> RV Point Bob <Bob_SId, Bob_RId> <Bob_SId, Bob_RId, metadata> Router AP1 AP2 <Bob_SId, Bob_RId> Alice
Caching in Pub/Sub Internetwork RV Point Bob Fid (Bob, Router) Router AP2 AP1 Fid (Router, Alice@AP1) Alice
Mobility in Pub/Sub Internetwork What happens when the MN moves? Two generic approaches: reactive and proactive Assume that each MN is served by a broker Reactive approach On disconnection the old broker starts caching data On reconnection data are available from there Proactive approach Old broker selects candidate neighbor brokers On disconnection candidates cache data for the MN On reconnection the new broker already has the data
Mobility in Pub/Sub Internetwork: Reactive • Pub/Sub Internetwork Reactive approach • A Smart Cache (SC) is selected for the MN • The SC caches data non-transparently • It explicitly mediates on behalf of the MN • The RENE is aware of the SC • MN disconnection: the SC starts caching data • Data sent during disconnection are not lost • MN reconnection: the SC makes data available • The RENE uses the SC as the source of cached data • No data loss and quick recovery • The FID to the SC does not change • Rerouting is a local procedure
Mobility in Pub/Sub Internetwork: Reactive <Bob_SId, Bob_RId, metadata> RV Point Bob <Bob_SId, Bob_RId> <Bob_SId, Bob_RId, metadata> Router Smart Cache AP2 <Bob_SId, Bob_RId> AP1 Alice
Mobility in Pub/Sub Internetwork: Reactive RV Point Fid (Bob, SC) Bob Router Smart Cache AP2 Fid (SC, Alice@AP1) AP1 Alice
Mobility in Pub/Sub Internetwork: Reactive RV Point Bob Router Smart Cache Fid (SC, Alice@AP2) Alice’s new position Alice’s previous position
Mobility in Pub/Sub Internetwork: Reactive • Smart Caches are not an extension to pub/sub internetwork • SCs are simply alternative publishers • MNs benefit from a built-in features of pub/sub internetwork • How to select a good SC? • Ideally it should serve the MN for many handovers • SC selection makes the scheme proactive/reactive • RVP forecasting (RVPf) • RVP is aware of topology around the MN • The RVP forecasts future MN positions • SCs are designated in advance by the RVP
AP based (APb) APs forecast handovers via signal strength Works only for wireless networks Mobility is not limited to wireless! The AP notifies the RVP before the handover The AP sends information about nearby APs The RVP selects the SC dynamically No need to know the topology in advance Also supports dynamic (ad-hoc) topologies Extra control messaging compared to RVPf May delay handovers Mobility in Pub/Sub Internetwork: Reactive
Mobility in Pub/Sub Internetwork: Proactive Proactive approach A broker serves each MN Could be the AP or a nearby cache The broker selects candidate neighbor brokers Need an algorithm to select the best candidates MN disconnection The old broker notifies the selected neighbors The selected neighbor brokers start caching data MN reconnection The new broker becomes known on reconnection Data are already available at the new broker
Mobility in Pub/Sub Internetwork: Proactive <Bob_SId, Bob_RId, metadata> RV Point Bob <Bob_SId, Bob_RId> <Bob_SId, Bob_RId, metadata> Router AP1 AP2 <Bob_SId, Bob_RId> Alice
Mobility in Pub/Sub Internetwork: Proactive RV Point Bob Fid (Bob, Router) Router Fid (Router,AP1) AP2 AP1 Alice
Mobility in Pub/Sub Internetwork: Proactive RV Point Bob Fid (Bob, Router) Router Fid (Router,AP1|AP2) AP2 AP1 Alice
Mobility in Pub/Sub Internetwork: Proactive RV Point Bob Router Alice’s new position Alice’s previous position
Mobility in Pub/Sub Internetwork: Proactive How to select the candidate neighbors? Each neighbor incurs some caching costs Candidate brokers k m l i Current broker j MN
Mobility in Pub/Sub Internetwork: Proactive Conventions S: the set of neighboring brokers S*: the set of selected candidate brokers Phit: probability of that the MN will handover in S* Chit: cost to serve the MN from a broker in S* Cmiss: cost to serve the MN from the publisher Ccache: cost to cache data during MN disconnection N(Phit): number of selected candidate brokers Input: handover probabilities Output: the optimal set S*
Mobility in Pub/Sub Internetwork: Proactive Select subset S* to minimize cost Phit*Chit+(1-Phit)*Cmiss + N(Phit)*Ccache Evaluation procedure Assume pik is the probability to handover to k Order the neighbors k in descending pik order Add the next k to S* Add pik to Phit and increment N(Phit) Evaluate the cost function Select the S* that minimizes the cost function Average delay Cache cost
Mobility in Pub/Sub Internetwork: Proactive • How to evaluate the pik values? • Past handover behavior • The broker tracks actual handovers • Probabilities take into account actual handovers • MN mobility context • Each MN has a mobility context • The context can be used to predict direction • Signal strength measurements • The MN sends to the broker its measurements • The broker predicts the most likely new brokers
Conclusion • Mobility handling in Pub/Sub Internetwork • Based on multicast, anonymity, asynchrony • Exploits embedded multicast and caching • Does not require any new mechanisms • Reactive and proactive approaches • Open issues • How to evaluate mobility solutions for Pub/Sub Internetwork? • Traffic models for pub/sub? • Mobility patterns for pub/sub? • Evaluation metrics for pub/sub?
Credits • Authors of papers used for this presentation • Paris Flegkas • Nikos Fotiou • Varvara Giannaki • Konstantinos Katsaros • George Parisis • George C. Polyzos • Mikko Sarela • Vasilios A. Siris • Vasilis Sourlas • Charilaos Stais • Dirk Trossen • Xenofon Vasilakos