Ahoy: A Proximity-Based Discovery Protocol Robbert Haarman.

Slides:



Advertisements
Similar presentations
Summary Cache: A Scalable Wide-Area Web Cache Sharing Protocol Li Fan, Pei Cao and Jussara Almeida University of Wisconsin-Madison Andrei Broder Compaq/DEC.
Advertisements

Neighbor Discovery for IPv6 Mangesh Kaushikkar. Overview Introduction Terminology Protocol Overview Message Formats Conceptual Model of a Host.
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
Cs/ee 143 Communication Networks Chapter 6 Internetworking Text: Walrand & Parekh, 2010 Steven Low CMS, EE, Caltech.
Improving TCP Performance over Mobile Ad Hoc Networks by Exploiting Cross- Layer Information Awareness Xin Yu Department Of Computer Science New York University,
Effects of Applying Mobility Localization on Source Routing Algorithms for Mobile Ad Hoc Network Hridesh Rajan presented by Metin Tekkalmaz.
Java-Based Adaptive Web Caching CS-526 Fall 2002 Semester Project G. Williams.
CSCI 4550/8556 Computer Networks Comer, Chapter 19: Binding Protocol Addresses (ARP)
Ad Hoc Networks Routing
1 Name Directory Service based on MAODV and Multicast DNS for IPv6 MANET Jaehoon Jeong, ETRI VTC 2004.
Adaptive Self-Configuring Sensor Network Topologies ns-2 simulation & performance analysis Zhenghua Fu Ben Greenstein Petros Zerfos.
1 DNS Name Service based on Secure Multicast DNS for IPv6 Mobile Ad-hoc Network Jaehoon Jeong, ETRI ICACT.
1Bloom Filters Lookup questions: Does item “ x ” exist in a set or multiset? Data set may be very big or expensive to access. Filter lookup questions with.
Accelerating Service Discovery in Ad Hoc Zero Configuration Networking
Peer-to-peer file-sharing over mobile ad hoc networks Gang Ding and Bharat Bhargava Department of Computer Sciences Purdue University Pervasive Computing.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
Election Algorithms and Distributed Processing Section 6.5.
Wireless Ad Hoc VoIP Thesis by: Patrick Stuedi & Gustavo Alonso Presentation by: Anil Kumar Marukala & Syed Khaja Najmuddin Ahmed.
INTRODUCTION TO PEER TO PEER NETWORKS Z.M. Joseph CSE 6392 – DB Exploration Spring 2006 CSE, UT Arlington.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 9 Internet Control Message.
Mobile IP Performance Issues in Practice. Introduction What is Mobile IP? –Mobile IP is a technology that allows a "mobile node" (MN) to change its point.
Itrat Rasool Quadri ST ID COE-543 Wireless and Mobile Networks
Network Layer (3). Node lookup in p2p networks Section in the textbook. In a p2p network, each node may provide some kind of service for other.
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
Research Interests Georgia Koloniari Computer Science Department University of Ioannina, Greece.
Denial of Service (DoS) Attacks in Green Mobile Ad–hoc Networks Ashok M.Kanthe*, Dina Simunic**and Marijan Djurek*** MIPRO 2012, May 21-25,2012, Opatija,
1 BitHoc: BitTorrent for wireless ad hoc networks Jointly with: Chadi Barakat Jayeoung Choi Anwar Al Hamra Thierry Turletti EPI PLANETE 28/02/2008 MAESTRO/PLANETE.
Ad-hoc On-Demand Distance Vector Routing (AODV) and simulation in network simulator.
CollectionSpace Service REST-based APIs June 2009 Face-to-face Aron Roberts U.C. Berkeley IST/Data Services.
Quasar A Probabilistic Publish-Subscribe System for Social Networks over P2P Kademlia network David Arinzon Supervisor: Gil Einziger April
BitTorrent enabled Ad Hoc Group 1  Garvit Singh( )  Nitin Sharma( )  Aashna Goyal( )  Radhika Medury( )
Application of Content Computing in Honeyfarm Introduction Overview of CDN (content delivery network) Overview of honeypot and honeyfarm New redirection.
Chapter 19 - Binding Protocol Addresses
Dynamic Source Routing (DSR) Sandeep Gupta M.Tech - WCC.
Engineering Workshops Purposes of Neighbor Solicitation.
DSR: Introduction Reference: D. B. Johnson, D. A. Maltz, Y.-C. Hu, and J. G. Jetcheva, “The Dynamic Source Routing Protocol for Mobile Ad Hoc Networks,”
Getting Started with OPC.NET OPC.NET Software Client Interface Client Base Server Base OPC Wrapper OPC COM Server Server Interface WCF Alternate.
1 Peer-to-Peer Technologies Seminar by: Kunal Goswami (05IT6006) School of Information Technology Guided by: Prof. C.R.Mandal, School of Information Technology.
1 Service Discovery based on Multicast DNS in IPv6 Mobile Ad-hoc Networks Jaehoon Jeong, ETRI VTC2003-Spring.
Freenet “…an adaptive peer-to-peer network application that permits the publication, replication, and retrieval of data while protecting the anonymity.
Computer Networking P2P. Why P2P? Scaling: system scales with number of clients, by definition Eliminate centralization: Eliminate single point.
Peer to Peer Network Design Discovery and Routing algorithms
PeerNet: Pushing Peer-to-Peer Down the Stack Jakob Eriksson, Michalis Faloutsos, Srikanth Krishnamurthy University of California, Riverside.
IEEE MEDIA INDEPENDENT HANDOVER DCN: Title: IEEE d base ideas and prototype implementation Date Submitted: Presented at.
P2P Search COP P2P Search Techniques Centralized P2P systems  e.g. Napster, Decentralized & unstructured P2P systems  e.g. Gnutella.
A Multicast Routing Algorithm Using Movement Prediction for Mobile Ad Hoc Networks Huei-Wen Ferng, Ph.D. Assistant Professor Department of Computer Science.
CMSC 691B Multi-Agent System A Scalable Architecture for Peer to Peer Agent by Naveen Srinivasan.
Cooperative Caching in Wireless P2P Networks: Design, Implementation And Evaluation.
Chapter 9 Introduction To Data-Link Layer 9.# 1
COMPUTER NETWORKS CS610 Lecture-27 Hammad Khalid Khan.
Booting up on the Home Link
CIS 116 IPv6 Fundamentals 2 – Primer Rick Graziani Cabrillo College
Lecture 28 Mobile Ad hoc Network Dr. Ghalib A. Shah
21-2 ICMP(Internet control message protocol)
CHAPTER 3 Architectures for Distributed Systems
Internet Networking recitation #4
Virtual LANs.
Internet Networking recitation #12
Net 431: ADVANCED COMPUTER NETWORKS
Net 323 D: Networks Protocols
Deanonymization of Clients in Bitcoin P2P Network
Internet Control Message Protocol Version 4 (ICMPv4)
Authors: Ing-Ray Chen; Yating Wang Present by: Kaiqun Fu
Design open relay based DNS blacklist system
Data-Centric Networking
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
Internet Control Message Protocol
Ch 17 - Binding Protocol Addresses
Infrastructure Service Discovery
Lecture 4a Mobile IP 1.
Presentation transcript:

Ahoy: A Proximity-Based Discovery Protocol Robbert Haarman

Contents 1 Introduction to Ahoy 2 Protocol Overview 3 Message Types 4 Attenuated Bloom Filters 5 My Contributions 6 Summary 7 Questions

Part 1 Introduction to Ahoy

What is Ahoy? 1 Ahoy is a service discovery protocol. 2 Ahoy is designed for mobile ad-hoc networks. 3 Ahoy is decentralized. 4 Ahoy is efficient.

What is Ahoy? 1 Ahoy is a service discovery protocol. 2 Ahoy is designed for mobile ad-hoc networks. 3 Ahoy is decentralized. 4 Ahoy is efficient.

Service Discovery

What is Ahoy? 1 Ahoy is a service discovery protocol. 2 Ahoy is designed for mobile ad-hoc networks. 3 Ahoy is decentralized. 4 Ahoy is efficient.

Traditional Infrastructure Network

Mobile Ad-Hoc Network

Challenges Services may be located multiple hops away Connectivity may change Limited resources

What is Ahoy? 1 Ahoy is a service discovery protocol. 2 Ahoy is designed for mobile ad-hoc networks. 3 Ahoy is decentralized. 4 Ahoy is efficient.

Decentralized No reliance on a central authority Helps deal with connectivity changes

What is Ahoy? 1 Ahoy is a service discovery protocol. 2 Ahoy is designed for mobile ad-hoc networks. 3 Ahoy is decentralized. 4 Ahoy is efficient.

Efficiency Ahoy sends few messages Ahoy sends small messages

How is Efficiency Accomplished? Do not send all information to everyone Do not send all information

Part 2 Protocol Overview

Protocol Overview Tell where information can be found When information is needed, find it

Ahoy

Part 3 Message Types

Five Message Types Announcements Queries Responses Keep-Alive Messages Update Requests

Five Message Types Announcements Queries Responses Keep-Alive Messages Update Requests

Announcements Tell where to find service information Multiple layers – First layer: services of sending node – Second layer: services of sender's neighbors – And so on, up to configurable limit Sent to all direct neighbors

Distribution of Announcements

Five Message Types Announcements Queries Responses Keep-Alive Messages Update Requests

Queries Request service details Contain service name Are sent from neighbor to neighbor Only to neighbors who know about the service Only to neighbors who are close to the service

Distribution of Queries

Five Message Types Announcements Queries Responses Keep-Alive Messages Update Requests

Responses Tell service details – Specifically: IP address and port number Sent from node offering service to node sending query

Response Distribution

Five Message Types Announcements Queries Responses Keep-Alive Messages Update Requests

Keep-Alive Messages “I'm still here!” Sent to direct neighbors Detect changes in topology Detect missed announcements – Through announcement id No keep-alive received for a while: – Information from neighbor is discarded

Five Message Types Announcements Queries Responses Keep-Alive Messages Update Requests

“Could you repeat that?” Sent when an announcement has been missed Causes announcement to be sent again

Part 4 Attenuated Bloom Filters

How To Tell Where Information Is Announcements do not contain service names But they do tell where information can be found How? Answer: Attenuated Bloom Filters

Bloom Filters Two operations: – Adding an item – Testing if an item is present Compact representation Small chance of false positives

Bloom Filter Implementation Array of bits (initially all 0) Set of hash functions Each hash function maps a service name to a bit in the array

Bloom Filters: Adding Items Apply each hash function to item Set corresponding bits to 1

Adding Service “printer” Two hash functions – First returns 1 – Second returns 5 Resulting Bloom filter:

Bloom Filters: Item Present? Apply each hash function to item Test if corresponding bits are 1 If not all are 1, item is absent If all are 1, item is probably present Bits might be 1 because of other items This is called a false positive

Bloom Filters: Item Present Bloom filter: Service name “printer” Two hash functions – First returns 1 – Second returns 5

Bloom Filters: Item Not Present Bloom filter: Service name “thermometer” Two hash functions – First returns 2 – Second returns 7

Bloom Filters: False Positive Bloom filter: Service name “mail server” Two hash functions – First returns 5 – Second returns 1

False Positives False positives are bad They cause queries to be sent But no information will be found Thus, resources are wasted

Attenuated Bloom Filters Multiple layers of Bloom filters One layer for services of the sender One layer for services of its neighbors One layer for services of their neighbors Etc.

Combining Filters

Attenuated Bloom Filters Are small Do not contain service names But do tell which neighbor is likely to know about a service

Part 5 My Contributions

My Contributions Original idea from Geert, Fei, and Patrick I implemented a prototype I decided protocol details I contributed some protocol enhancements I came up with the name

The Prototype Shows that Ahoy works Forced details to be decided Serves as a platform for further experimentation

Protocol Details What message types exist? What exactly do we put in them? When do we send messages? What technology do we build on top of?

Protocol Enhancements Original protocol sent announcements periodically I added keep-alive messages and update requests This saves resources: – Keep-alive messages are 5 bytes – Announcements can be 100s or 1000s

The Name Ahoy is a pun on “Bonjour”, the service discovery mechanism used by Apple It also alludes to my fondness of sailing

Part 6 Summary

What is Ahoy? Ahoy is an efficient, decentralized service discovery protocol for mobile ad- hoc networks

What Have I Contributed? Prototype Protocol Details Protocol Enhancements The Name

What Have We Gained? We know Ahoy works We have an implementation Design alternatives have been documented Other alternatives can be tried

Part 7 Questions

Thanks Geert, Patrick, Fei, and Hartmut for their ideas and feedback Everyone for attending