Presentation is loading. Please wait.

Presentation is loading. Please wait.

Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005 1 The Publish/Subscribe.

Similar presentations


Presentation on theme: "Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005 1 The Publish/Subscribe."— Presentation transcript:

1 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, The Publish/Subscribe Communication Paradigm and its Application to Mobile Systems Roberto Baldoni Dipartimento di Informatica e Sistemistica Università degli Studi di Roma “La Sapienza”

2 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Outline Introduction Basics of pub/sub communication systems –Subscription models –Architectural models Event Routing Impact of mobility

3 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Subscribers register subscriptions characterizing information interests Publishers publish notifications with interesting information Middleware determines which subscriptions match which notifications Middleware delivers notifications to matching subscribers Introduction: The Publish/Subscribe Communication Style PublisherSubscriber Publish/Subscribe Middleware

4 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Inroduction The Publish/Subscribe Paradigm Publish/Subscribe (pub/sub): a powerful abstraction for building distributed applications –Message-based, anonymous communication –Participants are decoupled in space: no need to be connected or even know each other in flow: no need to be synchronized in time: no need to be up at the same time Good solution for highly dynamic, decentralized systems (e.g., wired environments with huge numbers of publishers and subscribers, MANETs, P2P etc) Many research issues, involving several research areas (e.g., systems, software eng., databases etc)

5 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Introduction Widely popular both in the industry and in the research Industry solutions for pub/sub are almost centralized Research has mainy to face the scalability aspect Applications –Stock information delivery –Auction system –Air traffic control –.etc… Many names for pub/sub systems: notification service, data distribution service

6 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Basic Interaction Model S1 S2 S3 publishers subscribers “IBM” “ACME” subscription IBM: -3,75 ACME: +0,15 IBM: +2,51 event S1: IBM S2: ACME S3: ACME notification service IBM: -3,75 IBM: 12,51 ACME: +0,15 notification

7 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Distributed Notification Service S1 S2 S3 “IBM” “ACME” IBM: -3,75 ACME: +0,15 IBM: +2,51 notification service IBM: -3,75 IBM: 12,51 ACME: +0,15 Matching Determining the recipients for an event Routing Delivering a notification to all the recipients S3: ACME S2: ACME S1: IBM broker

8 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Research Topics System architecture Efficient routing algorithm Reliable messaging sending (the QoS issue) Security Special application issues –Millions of users –Mobile environment –P2P –Sensors networks…….

9 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Pub/Sub Systems IBM – Gryphon Stanford – SIFT and more… CU-Boulder – Siena France – Le Subscribe Technische University Darmstadt – REBECA Microsoft – Herald MIT Others – XMLBlaster, Elvin4, TIB, Keryx, REBECA

10 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Subscription Models Topic-Based [Oki et al. 93]: - events are divided in topics - subscribers subscribe for a single topic Content-Based [Carzaniga et al 2001]: - subscriptions are generic queries SQL-like on the event schema S1 S2 S3 “IBM” “ACME” IBM: -3,75 ACME: +0,15 IBM: +2,51 S1: IBM S2: ACME S3: ACME notification service IBM: -3,75 IBM: +2,51 ACME: +0,15 & v < 0 S1: IBM,v<0 S2: ACME S3: ACME Type-Based [Eugster 2001]: - notifications are objects - type is the discriminating attribute

11 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Pub/Sub Variants: Topic-based Event space is divided in topics, corresponding to logical channels Participants subscribe for a topic and publish on a topic Receivers for an event are known a priori Channel = Group –Therefore often exploit network-level multicast –Group communication

12 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Content Based pub-sub: event schema Subscriptions and events defined over an n-dimensional event space ( E.g. StockName = “ACME” and change < -3) –Subscription: conjunction of constraints event subscription Content-based subscriptions can include range constraints a1a1 a2a2

13 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Pub/Sub Variants: Content-based Receivers are calculated for each event being published Exploiting multicast is not straighforward –How are subscribers assigned to groups? “ACME”, change < -3 “ACME” ACME, change = -5 ACME, change = -2

14 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Topic vs. Content Topic-based pub/sub –Recipients are known a-priori –Many efficient implementations exist: e.g. tib –Limited expressiveness Content-based pub/sub –Cannot determine recipients before publication –More flexible –More general –Much more difficult to implement efficiently

15 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Architectural Model of a pub/sub Network Multicasting Broker layer overlay Structured Overlay

16 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Architectural Model of a pub/sub Network Multicasting –Use of multicast networking facilities (also at data link level) Broker layer overlay –Based on transport level connections between nodes –Hierarchical (Decision tree from publisher to subscribers) –Undirected Acyclic graph spanning all brokers Structured Overlay –DHT (abstracting from physical nodes)

17 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, EVENT vs SUBSCRIPTION ROUTING Extreme solutions Sol 1 (event flooding) – flooding of events in the notification event box –each subscription stored only in one place within the notification event box –Matching operations equal to the number of brokers Sol 2 (subscription flooding) – each subscription stored at any place within the notification event box –each event matched directly at the broker where the event enters the notification event box

18 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Connectivity brokers publishers subscribers Handling subscriptions Identification of intermediate routing solutions

19 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Connectivity brokers publishers Subscription Partitioning (s) s subscribers Handling subscriptions: “subscription partitioning” i.e., “where to store s” Identification of intermediate routing solutions

20 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Connectivity brokers publishers Subscription Partitioning (s) s subscribers Subscription Routing Handling subscriptions: “subscription routing” i.e., “how to bring s there” Identification of intermediate routing solutions

21 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Subscription Routing Subscription Partitioning (s) Connectivity subscribersbrokers publishers e Handling events Identification of intermediate routing solutions

22 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Subscription Routing Subscription Partitioning (s) Connectivity subscribersbrokers publishers e Event Partitioning (e) Handling events: “Event Partitioning” i.e., “where to match e” Identification of intermediate routing solutions

23 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Subscription Routing Subscription Partitioning (s) Connectivity subscribersbrokers publishers e Event Partitioning (e) Handling events: “Event Routing” i.e., “How to bring e there” Event Routing Identification of intermediate routing solutions

24 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Matching (e) Handling events: “Event Matching” i.e., “define the set of recipients of e” Subscription Routing Subscription Partitioning (s) Connectivity Event Routing subscribersbrokers publishers e Event Partitioning (e) Event Routing Identification of intermediate routing solutions

25 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Subscription Routing Subscription Partitioning (s) Connectivity Event Routing subscribersbrokers publishers Notification routing e Handling events: “Notification Routing” i.e., “bring e to the destinations” Event Partitioning (e) Matching (e) Event Routing Identification of intermediate routing solutions

26 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Subscription Routing Subscription Partitioning Event Routing Notification routing Event Partitioning (e) Matching Identification of intermediate routing solutions

27 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Basic Techniques for intermediate routing solutions Filtering-based Routing [Carzaniga et al. 2001] –Undirected Acyclic graph spanning all the brokers Rendez-Vous Routing –[Wang et al. 2002] based on dynamic partitioning of the event space among a set of brokers – [Castro et al 2002] based on DHT

28 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Filtering based routing Identifying as soon as possible events that are not interesting for any subscriber and arrest their diffusion Creating “diffusion paths” that lead to subscribers for the event Construction of a diffusion path requires routing info to be maintained at brokers Routing information consists of a set of filters (aggregate of subscriptions) that are reachable through that broker

29 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Filtering based routing: Three main phases Subscription forwarding: subscriptions (filters) are propagated to every broker leaving state along the path Matching notification follow (backwards) the path set by subscriptions Reducing subscription propagation –Avoiding subscription propagation when a filter including the subscription has been already forwarded

30 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, S IENA Filtering-Based Routing Subscription Forwarding a s 1 : price > 600 s1:a s1:1 s1:2 s1:3 s1:2 s1:6 s1:3 s1:1 s1:5

31 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, S IENA Filtering-Based Routing Subscription Merging s1:1 s1:2 s1:6 s1:3 s1:1 s 2 : price > 700 b s1:3 s1:2 s1:5 s1:1 s2:5 s1:1 s2:5 s1:2 s2:8 s1:2 s2:8 s1:5 s2:b s1:5 s2:b a s 1 covers s 2 1 s1:a s2:2 s1:a s2:2 splitter

32 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, S IENA Filtering-Based Routing Notification Delivery b s1:1 s2:5 s1:1 s2:5 s1:2 s1:6 s1:3 s1:1 s1:3 s1:2 s2:8 s1:2 s2:8 a s1:a s2:2 s1:a s2:2 s1:5 s2:b s1:5 s2:b n 1 matches s 1 n 1 matches s 2 n 1 : price = 899

33 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Filtering based routing Tradeoff between subscription redundancy and subscription flooding The more the brokers aware of any subscription the earlier notifications that do not match any subscription are filtered out Tradeoff between expressiveness of subscription language and scalability –Expressiveness complexity brings to flood filters –Limited complexity better scalability

34 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Rendez Vous Routing Each event of the event space is owned by one or more (reliability reasons) brokers Three functions: –SN(  ):  2 N (rendez-vous nodes of  ) –EN(e):  2 N (rendez-vous nodes of e) –If e  SN(  ) then SN(  )  EN(e)   (intersection rule) Main characteristics: –Controlled subscriptions distribution –Controlled matching –Better load balance

35 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Rendezvous-based routing Each node is responsible for a partition of the event space –Storing subscriptions, matching events σ e Problem: difficult to define mapping functions when the set of nodes changes over time σ σ σ σ e σ

36 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Rendez-Vous routing based on DHT A matching publisher & subscriber must come up with the same hash keys based on the content Distributed Hash Table buckets distributed publish/subscribe system

37 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, A matching publisher & subscriber must come up with the same hash keys based on the content subscriber home node Distributed Hash Table buckets subscription Rendez-Vous routing based on DHT

38 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, A matching publisher & subscriber must come up with the same hash keys based on the content publishersubscriber home node Distributed Hash Table buckets publication subscription Rendez-Vous routing based on DHT

39 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, A matching publisher & subscriber must come up with the same hash keys based on the content publishersubscriber Distributed Hash Table buckets subscription publication home node Rendez-Vous routing based on DHT

40 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, A matching publisher & subscriber must come up with the same hash keys based on the content publishersubscriber Distributed Hash Table buckets subscription publication home node Rendez-Vous routing based on DHT

41 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Rendez-Vous routing [Baldoni et al 2005] DHT kn-mapping CB-pub/sub Subs ak-mapping Application sub()pub()notify()send() join()delivery()leave()unsub() Event space is mapped into the universe of keys (fixed) Overlay maintains consistency of KN mapping Stateless mapping: -Does not depend on execution history (subscriptions, node joins and leaves)

42 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Rendez Vous Routing Problem: –bottleneck at hash bucket nodes Structuring subscribers as a multicast diffusion tree –Restrictions on the subscription language: Mapping between multidimensional multi-typed subscriptions to the uni or bi-dimensional space of a structured overlay is not straightforward (e.g., string manipulation) Strong points: –Handle inherently dynamic changes in the overlay

43 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Summary of routing Filtering based routing: –Order of hundreds of brokers –Managed environment Rendez-vous routing based on DHT –Order of thousands of nodes –Unmanaged environment

44 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, A few pub/sub systems

45 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Pub/Sub Sysems: Tib/RV [Oki et al 03] Topic Based Two level hierarchical architecture of brokers (deamons) on TCP/IP Event routing is realized through one diffusion tree per subject Each broker knows the entire network topology and current subscription configuration

46 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Pub/Sub systems: Gryphon [IBM 00] Content based Hierarchical tree from publishers to subscribers Filtering-based routing Mapping content-based to network level multicast

47 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Pub/Sub Systems: SCRIBE [Castro et al. 02] Topic Based Based on DHT (Pastry) Rendez-vous event routing A random identifier is assigned to each topic The pastry node with the identifier closest to the one of the topic becomes responsible for that topic

48 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, MEGHDOOT Content Based Based on Structured Overlay CAN Mapping the subscription language and the event space to CAN space Subscription and event Routing exploit CAN routing algorithms

49 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Mobile Environment

50 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Potential Advantages of Pub/Sub for Mobile Wireless Decoupling of publishers and subscribers aids mobility Decoupling of publishers and subscribers aids disconnected operation Multicast delivery can exploit intrinsic broadcast properties of wireless

51 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Impact of mobility: Information-Centric Mobile Wireless Applications Consumer Alerts Location-Based Services Multiplayer Online Games Battlefield Awareness Distributed Sensor Networks Workflow management

52 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Scenarios of mobility One-hop mobile network –Centralized vs distributed dispatcher –JEDI 2001, Huang 2001 Multi-hop mobile network (MANET) –No wired infrastructure –Frequent changes in topology (2002 – now…)

53 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, One-hop wireless network Problems in distributed pub/sub architectures [Huang 2001]: failures, message losses and disconnections Important issues in a replicated pub-sub [Huang 2001]: –Orderedness –Consistency –Completeness

54 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Mobile ad-hoc network: issues Costantly changing topology Unicast is expensive while broadcast is cheap Communication is less “reliable” than in wired systems due to disconnections (driven by mobility or volountary) Effects on how to design a middleware for pub/sub (e.g., to improve performance of the event dispatching system reducing the complexity of expressiveness)

55 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Frequent Questions Do we really need complex subscription languages for pub/sun over MANETs? What is the right MANET model?? –Reconfiguration and a long period of stability or –Frequent reconfigurations and short period of stability –Partition or not partition??? Allowing partitions means a lot of memory on board!!

56 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Architectural Model for Mobile ad- hoc networks MAC RoutingPub/sub MAC PS-Routing Application MAC Application Pub/sub [Huang et al 2002, Baldoni et al 2005, Bahemi et al 2005] [Mottola et al 2005, Bacon et al 2005] [Anceaume et al 2002, Picco et al 2003]

57 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Topological Reconfiguration MAC Routing Application CB Pub/sub [Picco et al 2003] Assumption: the underlying tree is kept connected and loop-free by some algorithm SIENA is the target CB-Pub/Sub System Target: rearrange route traversed by events in response to changes in the topology of the network of dispatchers (brokers) Separation of concerns between connectivity layer and event dispatching layer

58 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Topological Reconfiguration MAC Routing Application CB Pub/sub [Picco et al 2003] AB link breakage CD link formation Original topology of the event dispatching layer

59 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Topological Reconfiguration MAC Routing Application CB Pub/sub [Picco et al 2003] Strawman approach: A and B trigger unsubscriptions in their subtrees immediately after link breakage C and D trigger subscriptions immediately when link appears Proposed approach: after link breakage, A and B delay the triggerring of unsubscriptions in their subtrees C and D trigger subscriptions immediately when link appears Rationale: Subscriptions persist longer on the tree and upon reconnection subscriptions propagate only till the first splitter (executing the filter merging)

60 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Topological Reconfiguration Retrofitting reliability (events lost during reconfiguration) through gossip-based algorithms What about partitioning or isolation?? [Anceaume et al. 2002] assumes the network does not partition for a time long enough to maintain the DAG New approaches: Semi-deterministic routing (Costa et al 2005) –Trading subscription diffusion for better reaction to topology changes –Similar to ZRP in MANET MAC Routing Application CB Pub/sub [Picco et al 2003]

61 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Integration Approach MAC PS-Routing Application [Mottola et al 2005] Assumption: the underlying tree is kept connected and loop-free by MAODV Target: maintaining a tree-shaped overlay network on top of the dynamic topology of a MANET Integration between connectivity layer and event dispatching layer

62 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Broadcast-Based approach Usage of multicast provided by the MAC [Huang et al. 2002] –Keep a pub/sub tree to disseminate events Same assumption as [Anceaume et al. 2002] [Bahemi et al 2005] –Smart gossipping –Local subscription –Similar to eventual consistency (entropy algorithm) in databases [Bayeaux, Demers et al. 94] –No assumption on frequency of reconfiguration Pub/sub MAC Application [Huang et al 2002, Baldoni et al 2005, Bahemi et al 2005]

63 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Broadcast-based approach CB Pub/sub MAC Application [Baldoni et al 2005] Motivation: a tree topology over a MANET is hard to implement it (expecially when topology changes become frequent) Assumption: structure-less (not requiring any logical network-wide structure and no link breakage detection) Autonomous behavior: (no need of nodes to cooperate explicitly) Subscriptions are kept local Result: good reaction to partitions

64 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Gossip-based approach CB Pub/sub MAC Application [Baldoni et al 2005] Basic observation: for any two brokers b and b’, it is possible to define a sequence of brokers b 1,.. b n, such that 1.their distance from b strictly increase and their distance to b’ strictly decrease. 2.b i and b i+1 are adjacent each other Do not rely on a positioning service (a beacon message is sufficient to estimate the distance between two adjacent nodes) The approach is fully distributed (each process decide autonomously if relaying the message)

65 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Broadcast-based approach CB Pub/sub MAC Application [Baldoni et al 2005] Basic beaconing Algorithm: Each broker periodically sends a beacon containing its filter A broker receiving beacons from adjacent brokers form a hint table The hint table contains for each row the last time the beacon has been received from a given broker. This permits a broker to determine how many beacons have been missed from another broker. This value is set to:  if the two brokers never come in contact 0 if they are currently adiacent

66 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Broadcast-based approach Basic “descreasing distance” Algorithm: each event carries a destination list (the “estimated” list of brokers interested to that event) Receiving an event e, a broker b goes in the “ready to forward state for e” if: (i)b is aware of some broker not mentioned in the destination list and matchnig the event or (ii) for some broker b’ contained in the destination list whose hint is greater than the one stored at b If “ready to forward state for e”, b schedules the actual forwarding of e with a delay proportional to the lowest hint applicable from the previou steps During the delay if b receives e from some other neighbors it drops the forwarding

67 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Broadcast-based approach CB Pub/sub MAC Application [Baldoni et al 2005]

68 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Comparison Topological reconfiguration –Not suitable for frequent topology changes (too much overhead for updating the filter information) – not suitable for partition or isolation (too much overhead) … this means no disconnected work –Alway need cooperations among brokers Broadcast-based –Suitable for frequent topology changes –Can adapt to partitions and isolations –Expoit the broadcast nature of the environment –Nodes do not need to cooperate

69 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Research Directions for pub/sub on MANETs Applications Reference implementations Real deployments Capture fundamental problems posed by dynamic behavior Please stop doing papers on algorithms + sim But…most important Qos definition and enforcement Properties of sparse networks

70 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Dynamic Distributed Systems Common problems among implementing pub/sub on mobile ad-hoc networks and realizing pub/sub on a structured overlay or on a dense sensor network Similar techniques have been used Dynamic behavior becomes crucial in modern distributed systems It would be interested to studying general solutions to such a common problem

71 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Thanks Roberto Beraldi, Gianpaolo Cugola, Antonino Virgillito, Roman Vitemberg, Mariangela Contenti, Carlo Marchetti, Sara Tucci Piergiovanni, Leonardo Querzoni and thanks to many other people that worked with me on the topic I also have to thank David Rosemblum and Hans-Arno Jacobsen for taking inspiration (…and a few slides) by some of their presentations on the topic

72 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, A few references Paolo Costa, Matteo Migliavacca, Gian Pietro Picco, Gianpaolo Cugola: Epidemic Algorithms for Reliable Content- Based Publish-Subscribe: An Evaluation. ICDCS 2004: Paolo Costa, Matteo Migliavacca, Gian Pietro Picco, Gianpaolo Cugola: Introducing reliability in content-based publish-subscribe through epidemic algorithms. DEBS 2003 Gian Pietro Picco, Gianpaolo Cugola, Amy L. Murphy: Efficient Content-Based Event Dispatching in the Presence of Topological Reconfiguration. ICDCS 2003: Gianpaolo Cugola, Elisabetta Di Nitto, Alfonso Fuggetta: The JEDI Event-Based Infrastructure and Its Application to the Development of the OPSS WFMS. IEEE Trans. Software Eng. 27(9): (2001) Eiko Yoneki, Jean Bacon: Content-Based Routing with On-Demand Multicast. ICDCS Workshops 2004: Eiko Yoneki, Jean Bacon: Dynamic Publish/Subscribe in Mobile Peer-to-Peer Systems. OTM Workshops 2004: 1- S. Baehni, C. S. Chhabra, R. Guerraoui, Mobility Friendly Publish/Subscribe, EPFL technical report 2005 Roberto Baldoni, Roberto Beraldi, Sara Tucci Piergiovanni, Antonino Virgillito: On the modelling of publish/subscribe communication systems. Concurrency - Practice and Experience 17(12): (2005) Roberto Baldoni, Roberto Beraldi, Leonardo Querzoni, Antonino Virgillito: Subscription-Driven Self-Organization in Content-Based Publish/Subscribe. ICAC 2004: R. Baldoni, R. Beraldi, G. Cugola, M. Migliavacca, L. Querzoni, Structure-less Content-Based Routing in Mobile Ad Hoc Networks (To appear) International Conference on Pervasive Services (ICPS '05), Santorini, Greece, July 2005 R. Baldoni, C. Marchetti, A. Virgillito, R. Vitenberg, Content-Based Publish/Subscribe over Structured Overlay Networks To appear in Proceedings of the 25th International Conference on Distributed Computing Systems (ICDCS '05), Columbus, Ohio, June 2005 P. Costa. G.P. Picco, Semi Probabilistic content based-pub-subscribe To appear in Proceedings of the 25th International Conference on Distributed Computing Systems (ICDCS '05), Columbus, Ohio, June 2005

73 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Other references

74 Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, Other references


Download ppt "Università di Roma “La Sapienza” Dipartimento di Informatica e Sistemistica MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005 1 The Publish/Subscribe."

Similar presentations


Ads by Google