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

Slides:



Advertisements
Similar presentations
Symantec 2010 Windows 7 Migration Global Results.
Advertisements

University Paderborn 07 January 2009 RG Knowledge Based Systems Prof. Dr. Hans Kleine Büning Reinforcement Learning.
Elastic Hierarchies: Combining Treemaps and Node-Link Diagrams
PDAs Accept Context-Free Languages
REDS: A Reconfigurable Event Dispatching Infrastructure Gianpaolo Cugola Dipartimento di Elettronica e Informazione Politecnico di Milano, Italy
Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Progetto IS-MANET Kick-off meeting Milano
Reinforcement Learning
Slide 1Fig 25-CO, p.762. Slide 2Fig 25-1, p.765 Slide 3Fig 25-2, p.765.
Distributed Systems Architectures
Sequential Logic Design
STATISTICS POINT ESTIMATION Professor Ke-Sheng Cheng Department of Bioenvironmental Systems Engineering National Taiwan University.
David Burdett May 11, 2004 Package Binding for WS CDL.
Chapter 10 Architectural Design.
Create an Application Title 1Y - Youth Chapter 5.
CALENDAR.
CHAPTER 18 The Ankle and Lower Leg
The 5S numbers game..
A Fractional Order (Proportional and Derivative) Motion Controller Design for A Class of Second-order Systems Center for Self-Organizing Intelligent.
1 OFDM Synchronization Speaker:. Wireless Access Tech. Lab. CCU Wireless Access Tech. Lab. 2 Outline OFDM System Description Synchronization What is Synchronization?
高度情報化社会を支えるネットワーキング技術 (大阪大学 工学部説明会資料)
Break Time Remaining 10:00.
The basics for simulations
EE, NCKU Tien-Hao Chang (Darby Chang)
Briana B. Morrison Adapted from William Collins
Christophe Jelger – CS221 Network and Security - Universität Basel Christophe Jelger Post-doctoral researcher IP Multicasting.
Regression with Panel Data
Operating Systems Operating Systems - Winter 2012 Chapter 2 - Processes Vrije Universiteit Amsterdam.
Dynamic Access Control the file server, reimagined Presented by Mark on twitter 1 contents copyright 2013 Mark Minasi.
Numerical Analysis 1 EE, NCKU Tien-Hao Chang (Darby Chang)
Biology 2 Plant Kingdom Identification Test Review.
Opportunistic Multipath Forwarding in Publish/Subscribe Systems Reza Sherafat Kazemzadeh AND Hans-Arno Jacobsen Middleware Systems Research Group University.
FAFSA on the Web Preview Presentation December 2013.
CSE 6007 Mobile Ad Hoc Wireless Networks
MaK_Full ahead loaded 1 Alarm Page Directory (F11)
Facebook Pages 101: Your Organization’s Foothold on the Social Web A Volunteer Leader Webinar Sponsored by CACO December 1, 2010 Andrew Gossen, Senior.
When you see… Find the zeros You think….
Midterm Review Part II Midterm Review Part II 40.
2011 FRANKLIN COMMUNITY SURVEY YOUTH RISK BEHAVIOR GRADES 9-12 STUDENTS=332.
Slide R - 1 Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Prentice Hall Active Learning Lecture Slides For use with Classroom Response.
1 Non Deterministic Automata. 2 Alphabet = Nondeterministic Finite Accepter (NFA)
Clock will move after 1 minute
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 1 v3.1 Module 9 TCP/IP Protocol Suite and IP Addressing.
WARNING This CD is protected by Copyright Laws. FOR HOME USE ONLY. Unauthorised copying, adaptation, rental, lending, distribution, extraction, charging.
9. Two Functions of Two Random Variables
A Data Warehouse Mining Tool Stephen Turner Chris Frala
1 Dr. Scott Schaefer Least Squares Curves, Rational Representations, Splines and Continuity.
1 Non Deterministic Automata. 2 Alphabet = Nondeterministic Finite Accepter (NFA)
Efficient Event-based Resource Discovery Wei Yan*, Songlin Hu*, Vinod Muthusamy +, Hans-Arno Jacobsen +, Li Zha* * Chinese Academy of Sciences, Beijing.
Alex Cheung and Hans-Arno Jacobsen August, 14 th 2009 MIDDLEWARE SYSTEMS RESEARCH GROUP.
Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
Schutzvermerk nach DIN 34 beachten 05/04/15 Seite 1 Training EPAM and CANopen Basic Solution: Password * * Level 1 Level 2 * Level 3 Password2 IP-Adr.
Common approach 1. Define space: assign random ID (160-bit) to each node and key 2. Define a metric topology in this space,  that is, the space of keys.
Scribe: A Large-Scale and Decentralized Application-Level Multicast Infrastructure Miguel Castro, Peter Druschel, Anne-Marie Kermarrec, and Antony L. T.
Applications over P2P Structured Overlays Antonino Virgillito.
Hermes: A Distributed Event- Based Middleware Architecture Peter Pietzuch and Jean Bacon 1st DEBS Workshop, Vienna,
Distributed Publish/Subscribe Network Presented by: Yu-Ling Chang.
UNCLASSIFIED – APPROVED FOR PUBLIC RELEASEUNCLASSIFIED Architectures for Mobile Wireless Publish/Subscribe Networks David S. Rosenblum Chief Technology.
Publisher Mobility in Distributed Publish/Subscribe Systems Vinod Muthusamy, Milenko Petrovic, Dapeng Gao, Hans-Arno Jacobsen University of Toronto June.
Gil EinzigerRoy Friedman Computer Science Department Technion.
Content-Based Routing in Mobile Ad Hoc Networks Milenko Petrovic, Vinod Muthusamy, Hans-Arno Jacobsen University of Toronto July 18, 2005 MobiQuitous 2005.
Information-Centric Networks10b-1 Week 10 / Paper 2 Hermes: a distributed event-based middleware architecture –P.R. Pietzuch, J.M. Bacon –ICDCS 2002 Workshops.
Mobile Computing and Wireless Communication Pisa 26 November 2002 Roberto Baldoni University of Roma “La Sapienza”
Information-Centric Networks Section # 10.2: Publish/Subscribe Instructor: George Xylomenos Department: Informatics.
Peter R Pietzuch and Jean Bacon Peer-to-Peer Overlay Networks in an Event-Based Middleware DEBS’03, San Diego, CA, USA,
Middleware issues: From P2P systems to Ad Hoc Networks
Project Demo Mehdi Sadri Jamshid Esmaelnezhad Spring 2012
Distributed Publish/Subscribe Network
Indirect Communication Paradigms (or Messaging Methods)
Indirect Communication Paradigms (or Messaging Methods)
Presentation transcript:

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”

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

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

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)

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

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

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

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

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

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

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

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

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

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

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

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)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 σ

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

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

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

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

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

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)

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

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

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

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

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

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

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

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

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

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

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

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

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)

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

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]

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

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

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)

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]

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

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]

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

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)

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

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

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]

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

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

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

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

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

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

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