The publish subscribe communication paradigm and its application to mobile systems l.jpg
This presentation is the property of its rightful owner.
Sponsored Links
1 / 74

The Publish/Subscribe Communication Paradigm and its Application to Mobile Systems PowerPoint PPT Presentation


  • 263 Views
  • Updated On :
  • Presentation posted in: Travel / Places

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”. Outline. Introduction Basics of pub/sub communication systems Subscription models

Download Presentation

The Publish/Subscribe Communication Paradigm and its Application to Mobile Systems

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


The publish subscribe communication paradigm and its application to mobile systems l.jpg

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”

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Outline l.jpg

Outline

  • Introduction

  • Basics of pub/sub communication systems

    • Subscription models

    • Architectural models

  • Event Routing

  • Impact of mobility

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Introduction the publish subscribe communication style l.jpg

Introduction: The Publish/Subscribe Communication Style

Publish/Subscribe Middleware

Publisher

Subscriber

Publishers publish notifications withinteresting information

Subscribers register subscriptionscharacterizing information interests

Middleware delivers notifications tomatching subscribers

Middleware determines whichsubscriptions match which notifications

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Inroduction the publish subscribe paradigm l.jpg

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)

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Introduction l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Basic interaction model l.jpg

notification service

IBM: -3,75

IBM: -3,75

IBM: 12,51

S1: IBM

S2: ACME

S3: ACME

ACME: +0,15

ACME: +0,15

ACME: +0,15

IBM: +2,51

Basic Interaction Model

subscribers

publishers

“IBM”

S1

“ACME”

S2

“ACME”

S3

subscription

event

notification

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Distributed notification service l.jpg

broker

IBM: -3,75

IBM: -3,75

IBM: 12,51

ACME: +0,15

ACME: +0,15

ACME: +0,15

IBM: +2,51

Distributed Notification Service

notification service

“IBM”

S1

S1: IBM

“ACME”

S2

S2: ACME

“ACME”

S3: ACME

S3

  • Matching

    • Determining the recipients for an event

  • Routing

    • Delivering a notification to all the recipients

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Research topics l.jpg

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…….

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Pub sub systems l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Subscription models l.jpg

IBM: -3,75

ACME: +0,15

IBM: +2,51

Subscription Models

notification service

IBM: -3,75

“IBM”

& v < 0

S1

IBM: +2,51

S1: IBM

S2: ACME

S3: ACME

S1: IBM,v<0

S2: ACME

S3: ACME

“ACME”

ACME: +0,15

S2

“ACME”

ACME: +0,15

S3

  • 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

  • Type-Based [Eugster 2001]:

  • notifications are objects

  • type is the discriminating attribute

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Pub sub variants topic based l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Content based pub sub event schema l.jpg

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

a2

subscription

event

Content-based subscriptions can include range constraints

a1

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Pub sub variants content based l.jpg

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”

ACME, change = -5

ACME, change = -2

“ACME”, change < -3

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Topic vs content l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Architectural model of a pub sub l.jpg

Architectural Model of a pub/sub

  • Network Multicasting

  • Broker layer overlay

  • Structured Overlay

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Architectural model of a pub sub16 l.jpg

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)

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Event vs subscription routing l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Identification of intermediate routing solutions l.jpg

Identification of intermediate routing solutions

Connectivity

publishers

subscribers

brokers

Handling subscriptions

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Slide19 l.jpg

Subscription Partitioning (s)

Connectivity

publishers

subscribers

brokers

Identification of intermediate routing solutions

Handling subscriptions: “subscription partitioning” i.e., “where to store s”

s

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Slide20 l.jpg

Subscription Partitioning (s)

Connectivity

publishers

subscribers

brokers

Identification of intermediate routing solutions

Handling subscriptions: “subscription routing” i.e., “how to bring s there”

Subscription Routing

s

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Slide21 l.jpg

Subscription Partitioning (s)

Subscription Routing

Connectivity

publishers

subscribers

brokers

Identification of intermediate routing solutions

Handling events

e

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Slide22 l.jpg

Subscription Partitioning (s)

Subscription Routing

Connectivity

Event Partitioning (e)

publishers

subscribers

brokers

Identification of intermediate routing solutions

Handling events: “Event Partitioning” i.e., “where to match e”

e

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Slide23 l.jpg

Subscription Partitioning (s)

Subscription Routing

Connectivity

Event Routing

Event Partitioning (e)

publishers

subscribers

brokers

Identification of intermediate routing solutions

Handling events: “Event Routing” i.e., “How to bring e there”

e

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Slide24 l.jpg

Subscription Partitioning (s)

Subscription Routing

Matching (e)

Connectivity

e

Event Routing

Event Routing

Event Partitioning (e)

publishers

subscribers

brokers

Identification of intermediate routing solutions

Handling events: “Event Matching” i.e., “define the set of recipients of e”

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Slide25 l.jpg

Matching (e)

Notification routing

Event Routing

Event Partitioning (e)

Identification of intermediate routing solutions

Handling events: “Notification Routing” i.e., “bring e to the destinations”

Subscription Partitioning (s)

Subscription Routing

Connectivity

e

Event Routing

publishers

subscribers

brokers

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Slide26 l.jpg

Identification of intermediate routing solutions

Subscription Partitioning

Subscription Routing

Matching

Notification routing

Event Routing

Event Partitioning (e)

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Basic techniques for intermediate routing solutions l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Filtering based routing l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Filtering based routing three main phases l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


S iena filtering based routing subscription forwarding l.jpg

s1: price > 600

SIENAFiltering-Based RoutingSubscription Forwarding

s1:1

a

2

s1:a

1

s1:2

s1:2

3

5

s1:1

4

6

s1:3

7

s1:3

8

s1:5

9

s1:6

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


S iena filtering based routing subscription merging l.jpg

s2: price > 700

SIENAFiltering-Based Routing Subscription Merging

s1 covers s2

s1:1

s2:5

s1:1

s1 covers s2

splitter

a

2

s1:a

s2:2

s1:a

1

splitter

s1:2

s1:2

s2:8

s1:2

3

5

s1:1

4

6

s1:3

7

s1:3

8

b

s1:5

s1:5

s2:b

9

s1:6

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


S iena filtering based routing notification delivery l.jpg

n1:price = 899

SIENAFiltering-Based Routing Notification Delivery

n1matches s1

n1matches s2

s1:1

s2:5

a

2

s1:a

s2:2

1

s1:2

s1:2

s2:8

3

5

s1:1

4

6

s1:3

7

s1:3

8

b

s1:5

s2:b

9

s1:6

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Filtering based routing33 l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Rendez vous routing l.jpg

Rendez Vous Routing

  • Each event of the event space is owned by one or more (reliability reasons) brokers

  • Three functions:

    • SN(): 2N (rendez-vous nodes of )

    • EN(e): 2N(rendez-vous nodes of e)

    • If e  SN() thenSN()  EN(e)   (intersection rule)

  • Main characteristics:

    • Controlled subscriptions distribution

    • Controlled matching

    • Better load balance

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Rendezvous based routing l.jpg

σ

σ

σ

σ

σ

e

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Rendez vous routing based on dht l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Rendez vous routing based on dht37 l.jpg

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

home node

subscriber

subscription

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Rendez vous routing based on dht38 l.jpg

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

home node

subscription

subscriber

publisher

publication

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Rendez vous routing based on dht39 l.jpg

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

home node

subscription

publication

subscriber

publisher

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Rendez vous routing based on dht40 l.jpg

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

home node

subscription

subscriber

publisher

publication

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Rendez vous routing baldoni et al 2005 l.jpg

unsub()

sub()

send()

pub()

leave()

join()

notify()

delivery()

Rendez-Vous routing [Baldoni et al 2005]

Application

Event space is mapped into the universe of keys (fixed)

CB-pub/sub

Subs

ak-mapping

  • Stateless mapping:

  • Does not depend on execution history (subscriptions, node joins and leaves)

DHT

Overlay maintains consistency of KN mapping

kn-mapping

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Rendez vous routing42 l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Summary of routing l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


A few pub sub systems l.jpg

A few pub/sub systems

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Pub sub sysems tib rv oki et al 03 l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Pub sub systems gryphon ibm 00 l.jpg

Pub/Sub systems: Gryphon [IBM 00]

  • Content based

  • Hierarchical tree from publishers to subscribers

  • Filtering-based routing

  • Mapping content-based to network level multicast

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Pub sub systems scribe castro et al 02 l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Meghdoot l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Mobile environment l.jpg

Mobile Environment

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Potential advantages of pub sub for mobile wireless l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Impact of mobility information centric mobile wireless applications l.jpg

Impact of mobility: Information-CentricMobile Wireless Applications

  • Consumer Alerts

  • Location-Based Services

  • Multiplayer Online Games

  • Battlefield Awareness

  • Distributed Sensor Networks

  • Workflow management

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Scenarios of mobility l.jpg

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…)

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


One hop wireless network l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Mobile ad hoc network issues l.jpg

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)

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Frequent questions l.jpg

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!!

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Architectural model for mobile ad hoc networks l.jpg

Architectural Model for Mobile ad-hoc networks

Application

Application

Application

Pub/sub

PS-Routing

Routing

Pub/sub

MAC

MAC

MAC

[Anceaume et al 2002,

Picco et al 2003]

[Huang et al 2002,

Baldoni et al 2005,

Bahemi et al 2005]

[Mottola et al 2005,

Bacon et al 2005]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Topological reconfiguration l.jpg

Topological Reconfiguration

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

Application

CB Pub/sub

Routing

MAC

[Picco et al 2003]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Topological reconfiguration58 l.jpg

Topological Reconfiguration

Original topology of the event dispatching layer

Application

CB Pub/sub

AB link breakage

Routing

MAC

CD link formation

[Picco et al 2003]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Topological reconfiguration59 l.jpg

Topological Reconfiguration

  • Strawman approach:

  • A and B trigger unsubscriptions in their subtrees immediately after link breakage

  • C and D trigger subscriptions immediately when link appears

Application

CB Pub/sub

  • 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

Routing

MAC

Rationale:

Subscriptions persist longer on the tree and upon reconnection subscriptions propagate only till the first splitter (executing the filter merging)

[Picco et al 2003]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Topological reconfiguration60 l.jpg

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

Application

CB Pub/sub

Routing

MAC

[Picco et al 2003]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Integration approach l.jpg

Integration Approach

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

Application

PS-Routing

MAC

[Mottola et al 2005]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Broadcast based approach l.jpg

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

Application

Pub/sub

MAC

[Huang et al 2002,

Baldoni et al 2005,

Bahemi et al 2005]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Broadcast based approach63 l.jpg

Broadcast-based approach

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

Application

CB Pub/sub

MAC

[Baldoni et al 2005]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Gossip based approach l.jpg

Gossip-based approach

  • Basic observation: for any two brokers b and b’, it is possible to define a sequence of brokers b1, .. bn, such that

  • their distance from b strictly increase and their distance to b’ strictly decrease.

  • bi and bi+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)

Application

CB Pub/sub

MAC

[Baldoni et al 2005]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Broadcast based approach65 l.jpg

Broadcast-based approach

  • 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

Application

CB Pub/sub

MAC

[Baldoni et al 2005]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Broadcast based approach66 l.jpg

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:

    • b is aware of some broker not mentioned in the destination list and matchnig the event or

    • 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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Broadcast based approach67 l.jpg

Broadcast-based approach

Application

CB Pub/sub

MAC

[Baldoni et al 2005]

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Comparison l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Research directions for pub sub on manets l.jpg

Research Directions for pub/sub on MANETs

Capture fundamental problems

posed by dynamic behavior

Applications

Reference implementations

Real deployments

Qos definition and enforcement

Properties of sparse networks

But…most important

Please stop doing papers

on algorithms + sim

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Dynamic distributed systems l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Thanks l.jpg

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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


A few references l.jpg

A few references

Paolo Costa, Matteo Migliavacca, Gian Pietro Picco, Gianpaolo Cugola: Epidemic Algorithms for Reliable Content-Based Publish-Subscribe: An Evaluation. ICDCS 2004: 552-561

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: 234-243

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): 827-850 (2001)

Eiko Yoneki, Jean Bacon: Content-Based Routing with On-Demand Multicast. ICDCS Workshops 2004: 788-793

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): 1471-1495 (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

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Other references l.jpg

Other references

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


Other references74 l.jpg

Other references

MINEMA Summer School - Klagenfurt (Austria) July 11-15, 2005


  • Login