A Mechanized Model for CAN Protocols Context and objectives Our mechanized model Results Conclusions and Future Works Francesco Bongiovanni and Ludovic.

Slides:



Advertisements
Similar presentations
Automated Theorem Proving Lecture 1. Program verification is undecidable! Given program P and specification S, does P satisfy S?
Advertisements

ECE /24/2005 A Survey on Position-Based Routing in Mobile Ad-Hoc Networks Alok Sabherwal.
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Peer to Peer and Distributed Hash Tables
Evaluation of a Scalable P2P Lookup Protocol for Internet Applications
Scalable Content-Addressable Network Lintao Liu
Chord: A scalable peer-to- peer lookup service for Internet applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashock, Hari Balakrishnan.
Fabian Kuhn, Microsoft Research, Silicon Valley
Massively Distributed Database Systems Distributed Hash Spring 2014 Ki-Joune Li Pusan National University.
Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp, Scott Schenker Presented by Greg Nims.
Thomas ZahnCST1 Seminar: Information Management in the Web Query Processing Over Peer- to-Peer Data Sharing Systems (UC Santa Barbara)
A Scalable Content Addressable Network (CAN)
CSCE 715 Ankur Jain 11/16/2010. Introduction Design Goals Framework SDT Protocol Achievements of Goals Overhead of SDT Conclusion.
Overlay Networks + Internet routing has exhibited scalability - Internet routing is inefficient -Difficult to add intelligence to Internet Solution: Overlay.
Peer to Peer File Sharing Huseyin Ozgur TAN. What is Peer-to-Peer?  Every node is designed to(but may not by user choice) provide some service that helps.
Vault: A Secure Binding Service Guor-Huar Lu, Changho Choi, Zhi-Li Zhang University of Minnesota.
EE 4272Spring, 2003 Chapter 10 Packet Switching Packet Switching Principles  Switching Techniques  Packet Size  Comparison of Circuit Switching & Packet.
© nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.
HyperCuP – P2P Network Boyko Syarov. 2 Outline  HyperCup: What is it?  Basic Concepts  Broadcasting Algorithm  Topology Construction  Ontology Based.
Distributed Quad-Tree for Spatial Querying in Wireless Sensor Networks (WSNs) Murat Demirbas, Xuming Lu Dept of Computer Science and Engineering, University.
Distributed Lookup Systems
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek and Hari alakrishnan.
Dept. of Computer Science Distributed Computing Group Asymptotically Optimal Mobile Ad-Hoc Routing Fabian Kuhn Roger Wattenhofer Aaron Zollinger.
presented by Hasan SÖZER1 Scalable P2P Search Daniel A. Menascé George Mason University.
Distributed Quad-Tree for Spatial Querying in Wireless Sensor Networks (WSNs) Murat Demirbas, Xuming Lu Dept of Computer Science and Engineering, University.
Content Addressable Networks. CAN Associate with each node and item a unique id in a d-dimensional space Goals –Scales to hundreds of thousands of nodes.
1 CS 194: Distributed Systems Distributed Hash Tables Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer.
Spatial Indexing I Point Access Methods. Spatial Indexing Point Access Methods (PAMs) vs Spatial Access Methods (SAMs) PAM: index only point data Hierarchical.
Peer-to-peer file-sharing over mobile ad hoc networks Gang Ding and Bharat Bhargava Department of Computer Sciences Purdue University Pervasive Computing.
GI Systems and Science January 23, Points to Cover  What is spatial data modeling?  Entity definition  Topology  Spatial data models Raster.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
Roger ZimmermannCOMPSAC 2004, September 30 Spatial Data Query Support in Peer-to-Peer Systems Roger Zimmermann, Wei-Shinn Ku, and Haojun Wang Computer.
Towards a Logic for Wide- Area Internet Routing Nick Feamster Hari Balakrishnan.
09/07/2004Peer-to-Peer Systems in Mobile Ad-hoc Networks 1 Lookup Service for Peer-to-Peer Systems in Mobile Ad-hoc Networks M. Tech Project Presentation.
Peer to Peer Research survey TingYang Chang. Intro. Of P2P Computers of the system was known as peers which sharing data files with each other. Build.
1 Heterogeneity in Multi-Hop Wireless Networks Nitin H. Vaidya University of Illinois at Urbana-Champaign © 2003 Vaidya.
BitTorrent enabled Ad Hoc Group 1  Garvit Singh( )  Nitin Sharma( )  Aashna Goyal( )  Radhika Medury( )
CCAN: Cache-based CAN Using the Small World Model Shanghai Jiaotong University Internet Computing R&D Center.
Structuring P2P networks for efficient searching Rishi Kant and Abderrahim Laabid Abderrahim Laabid.
Content Addressable Network CAN. The CAN is essentially a distributed Internet-scale hash table that maps file names to their location in the network.
A Locally Nameless Theory of Objects 1.Introduction:  -calculus and De Bruijn notation 2.locally nameless technique 3.formalization in Isabelle and proofs.
Asynchronous Components with Futures: Semantics, Specification, and Proofs in a Theorem Prover Components (Distributed) Futures Formalisations (and proofs)
Content Addressable Networks CAN is a distributed infrastructure, that provides hash table-like functionality on Internet-like scales. Keys hashed into.
Scalable Content- Addressable Networks Prepared by Kuhan Paramsothy March 5, 2007.
Rendezvous Regions: A Scalable Architecture for Service Location and Data-Centric Storage in Large-Scale Wireless Sensor Networks Karim Seada, Ahmed Helmy.
ASPfun: A Distributed Object Calculus and its Formalization in Isabelle Work realized in collaboration with Florian Kammüller and Henry Sudhof (Technische.
Universität Stuttgart Institute of Parallel and Distributed Systems (IPVS) Universitätsstraße 38 D Stuttgart Voronoi Overlay Networks Pavel Skvortsov.
An Optimal Broadcast Algorithm for Content-Addressable Networks Ludovic Henrio Fabrice Huet Justine Rochas 1 18/12/ OPODIS (Nice)
Algorithms and Techniques in Structured Scalable Peer-to-Peer Networks
Two Peer-to-Peer Networking Approaches Ken Calvert Net Seminar, 23 October 2001 Note: Many slides “borrowed” from S. Ratnasamy’s Qualifying Exam talk.
A Mechanized Model of the Theory of Objects 1.Functional  -calculus in Isabelle 2.Confluence Proof in Isabelle 3.Ongoing Work, Applications, Conclusion.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
CS440 Computer Networks 1 Link State Routing and OSPF Neil Tang 10/31/2008.
An overlay for latency gradated multicasting Anwitaman Datta SCE, NTU Singapore Ion Stoica, Mike Franklin EECS, UC Berkeley
Relying on Safe Distance to Achieve Strong Partitionable Group Membership in Ad Hoc Networks Authors: Q. Huang, C. Julien, G. Roman Presented By: Jeff.
Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications * CS587x Lecture Department of Computer Science Iowa State University *I. Stoica,
Formal verification of distance vector routing protocols.
Composing Web Services and P2P Infrastructure. PRESENTATION FLOW Related Works Paper Idea Our Project Infrastructure.
Brocade: Landmark Routing on Overlay Networks
SDN Network Updates Minimum updates within a single switch
A Location-Based Routing Method for Mobile Ad Hoc Networks
Zhichen Xu, Mallik Mahalingam, Magnus Karlsson
A Scalable content-addressable network
Reading Report 11 Yin Chen 1 Apr 2004
Distributed Hash Tables
The Coverage Problem in a Wireless Sensor Network
Deterministic and Semantically Organized Network Topology
A Scalable Content Addressable Network
Efficient Processing of Top-k Spatial Preference Queries
Presentation transcript:

A Mechanized Model for CAN Protocols Context and objectives Our mechanized model Results Conclusions and Future Works Francesco Bongiovanni and Ludovic Henrio

CONTEXT AND OBJECTIVES A Mechanised model for CAN - FASE 20132

General motivation: supporting RDF data storage RDF data is at the heart of the Semantic Web Supporting RDF means also supporting its query language Main challenge store and retrieve RDF data in large scale settings, that is, with a large number of geographically distributed participating nodes ? Our solution: Content Addressable Network (CAN) 3A Mechanised model for CAN - FASE 2013

CAN – General principles Virtual Cartesian coordinate space of N dimensions Space partitioned amongst nodes every node “owns” a zone A node only knows its adjacent neighbours Stored Items mapped to points Routing performance: O(d.N1/d) CAN [Ratnasamy et al. SIGCOMM 01] (x,y) CAN for RDF (our view): No hashing  easier to look for a “range query” One dimension per concern  handling variables 4A Mechanised model for CAN - FASE 2013

RDF queries q= (s,p,o) q= (s,p,?o) q= (s,?p,?o) q= (?s,?p,?o) 5A Mechanised model for CAN - FASE 2013

Problem: cost of queries 2 queries over 2 variables: conjunction of two 2-dimensional broadcasts 1 query over 2 variables 1 query over 1 variable 6A Mechanised model for CAN - FASE 2013

Duplicates: problem and existing solutions  Meghdoot:  works only starting with « corner »  inefficient with range  M-CAN; claims: No duplicate in 2D Few duplicates in high dimensionsional CAN (<5%) Impossible to get rid of all duplicates in higher dimensions 7A Mechanised model for CAN - FASE 2013 [Ratnasamy, et al. Networked Group Communication 2001] [Gupta et al. Middleware 2004]

Evaluating the impact of duplicated messages Flooding M-CAN Our algorithm 8A Mechanised model for CAN - FASE 2013

Our objectives here Is there an “optimal” broadcast algorithm for CAN? Can we be sure? More generally, we think that providing mechanised formalisations of our systems:  Increase the confidence in the system  Help programmers implement correct (and efficient) systems  HERE: a framework to reason on CAN networks, focusing on communications and broadcasts + a proof that there exists an optimal algorithm ! Here: optimal = no duplicate ! 9A Mechanised model for CAN - FASE 2013

A MECHANISED MODEL OF CAN A Mechanised model for CAN - FASE

Defining a CAN: First attempt Definition 1: Constructive from the seminal paper Split alternating dimension When a node leaves, - The organisation can be maintained by keeping the split history (+data transfers) - or one neighbour takes two zones (no more rectangles?) - Alternative: change the reachable configurations 11A Mechanised model for CAN - FASE 2013 Main drawback: difficult to define in a theorem prover What is the invariant verified by the CAN construction?

Defining a CAN: A more general version Definition 2: Each zone is a rectangle More freedom in the implementation easier to define in a theorem prover Rectangles are necessary to prove optimality of some broadcasts (eg. M-CAN in 2D) But no guarantee on the lookup time in general Churns: more flexible, but can one node manage two zones? 12A Mechanised model for CAN - FASE 2013

Our definition: the most general one Definition 3: each zone can have any shape A CAN is a finite set of nodes,Zones,neighbour such that The neighbour relation is symmetric Zones cover the whole space Each point belongs to a single zone Neighbouring is not related to the topology We abstracted away all reasoning on geometry Note: we can always add constraints to reach the other definitions HERE: no churn (but easier to encode) 13A Mechanised model for CAN - FASE 2013

The formal version (math vs. Isabelle) 14A Mechanised model for CAN - FASE 2013

BROADCAST AND PROOFS A Mechanised model for CAN - FASE

Other definitions Connected zone: a zone in which communications is possible Path = sequence of messages where each message is sent from the destination of the previous one Broadcast message: Source, dest, zone to be covered ZNL = Zone node list: Splits the zone yet to be covered Into several destinations and (connected) zones A ZNL is optimal if no node belong to two sub-zones ! Zones are not necessarily associated to a node! 16A Mechanised model for CAN - FASE 2013

A broadcast is a function that takes an initiator and a ZNLmap function (Node x Zone  ZNL). Computes the set of messages resulting of the inductive application of the ZNLmap function Init Defining broadcast - principles Is it possible to define an optimal broadcast? What is the good ZNLmap function? Can it rely only on local information? 17A Mechanised model for CAN - FASE 2013

Idea: Only split when it is necessary = when the zone to be covered is disconnected Init Naive optimal broadcast 18A Mechanised model for CAN - FASE 2013

Distributed algorithm Distributed algorithm Existence of an optimal broadcast Overview of our framework - 19 P2P protocol CAN (reusable) abstractions (reusable) abstractions MessagesZonesNodes Fine grain Properties + proofs Fine grain Properties + proofs Finite messages Finite zones Finite paths inside zone Connected existing neighbors Induction principles on zones Combining proofs Combining proofs Coverage Optimality Zone decomposition A Mechanised model for CAN - FASE 2013 ZNL properties

Principle of the proofs Coverage: valid ZNL coverage Existence of an optimal BC: OptimalZNL Optimal broadcast  ZNLmap such that each ZNL is an OptimalZNL (using the « naive » decomposition) 20A Mechanised model for CAN - FASE 2013

Locality arguments: Is it really a peer-to-peer solution? Prerequisite: only part of the ZNLmap is useful (history) The ZNLmap can be constructed step by step (proved) Proved step-by-step progress, building an optimal ZNL locally …. Is it possible to define an optimal broadcast? YES What is the good ZNLmap function? The naïve decomposition Can it rely only on local information? In our framework the knowledge of the whole CAN is only necessary to compute connectedness (no topology) 21A Mechanised model for CAN - FASE 2013

CONCLUSIONS AND FUTURE WORKS A Mechanised model for CAN - FASE

Conclusions: Results Properties: The ZNL-approach is sufficient for addressing coverage There exists a way to construct a ZNL for optimal broadcast There exists a broadcast algorithm that produces no duplicate; it is only based on local decisions 23A Mechanised model for CAN - FASE 2013

Conclusion: Mechanisation A framework for reasoning on CAN: A possible definition of CAN (very generic) Basic abstractions, induction principle Constructs for reasoning on messages and broadcasts The only non-proved arguments are related to topology and geometry (locality of connectedness, and 1 axiom: the whole space is connected) Around 5000 lines of Isabelle/HOL 24A Mechanised model for CAN - FASE 2013 www-sop.inria.fr/oasis/personnel/Ludovic.Henrio/misc

Current and future work We have a non-naive optimal algorithm! Close to M-CAN but no duplicate at all Experimented To be published and proven formally About churns (= nodes arriving and leaving frequently) Our definition of CAN is quite flexible But neighbours evolve at runtime TODO: improve the mechanised model, what is a good algorithm/good properties in presence of churns? (#duplicates≤#churns?) A Mechanised model for CAN - FASE [Henrio, HDR 2012; Bongiovanni, PhD 2012]

THANK YOU A Mechanised model for CAN - FASE