Title: Warren Kenny,
1Peer-to-Peer in MANETs The State of the Art
- Warren Kenny,
- Distributed Systems Group,
- Trinity College, Dublin
- 13.03.2008
2Presentation Format
3Peer-to-Peer Protocol Types
- Unstructured
- Links are formed arbitrarily, with no relation
between the content held by nodes and their
address in the overlay - Content retrival is generally accomplished
through query flooding - Structured
- Uses a globally consistent protocol to route
content requests to appropriate nodes - Nodes often have identities with no relation to
their physical position in the network, but
rather to the content they hold
4Unstructured Overlay Protocols
- Gnutella v.1 1
- Developed to facilitate decentralized
file-sharing on the internet - Nodes bootstrap on startup and find at least one
other node through various means ( cache,
pre-designated address lists, even IRC )? - Nodes will continue the connection process until
they have accrued a specified number of
neighbours - Queries are flooded through a node's neighbours,
who then query their own neighbours. Queries are
TTL-limited - Scales poorly as more peers join the network,
query floods consume more and more time and
bandwidth - Now obsolete, succeeded by Gnutella v.2
5Unstructured Overlay Protocols
- Gnutella v.2 2
- Improves upon Gnutella v.1 primarily in terms of
scalability and query speed - Nodes with sufficient connection quality and
power are designated Ultra Nodes - Promotion occurs on-demand or voluntarily
- Standard client nodes are referred to as Leaf
Nodes - Leaf Nodes send queries to the Ultra Node to
which they are connected - Ultra Nodes forward queries to other Ultra Nodes
with a low TTL - Leaf Nodes inform their Ultra Node parent exactly
which files they hold, allowing Ultra Nodes to
request files only from those leaves which hold
them - Scales far better than Gnutella v.1
6Unstructured Overlay Protocols
- Bit-Torrent 3
- Peer-to-Peer File Sharing Protocol,
Semi-Decentralized - Peers find files through external means ( web
search, etc. ) and download a .torrent file which
details the connection information for a swarm - Swarms are composed of trackers, leechers and
seeders - Trackers act as coordinators for intra-swarm
connections and peer joins, as well as moderators
which ensure fair bartering - Leechers request and download file chunks from
other leechers and seeders - Once a leecher has retrieved the entire file, it
becomes a seeder and uploads selflessly to other
peers until it is disconnected - Encourages fair network use through a bartering
system - Tracker settings determine the UD ratio required
for continued use
7Unstructured Overlay Protocols
- CYCLON 4
- Gossip-based unstructured overlay protocol
designed to reduce member management overheads - Uses a variation on the Basic Shuffling algorithm
- Each node is aware of a small number of its
neighbours - Periodically, neighbours will communicate in
order to swap relationships, passing neighbours
among themselves and shuffling the overlay
topology - Enhanced Shuffling is a modification of this
protocol which results in neighbours only
exchanging peers with their oldest neighbour - Limits the time a node can be passed around until
it is chosen to take part in an exchange,
resulting in greater fairness - Results in an overlay which can cope easily with
node addition and removal while requiring little
overhead
8Unstructured Overlay Protocols
- T-Man 5
- Uses a ranking function to allow nodes to order
their neighbours according to a target topology - Designed to make overlay restructuring simple and
efficient - Nodes maintain views composed of neighbour node
addresses and profiles ( geographical location,
ID, etc. )? - Nodes exchange views with their neighbours so
that they can better evaluate alternative
connections based on the target topology - Allows for the construction of topologies
representing Lines, Tori, Binary Trees, etc. - Scales well and copes with node addition/removal
9Structured Overlay Protocols
- Pastry 10
- Each node in the network has its own unique Node
ID a 128-bit key which indicates its position in
a circular ID space - Nodes which receive a key-message pair can
normally route that message to the node with the
nearest key in O(logN) steps where N is the
number of Pastry nodes in the network - Each node maintains a routing table, a
neighbourhood set and a leaf set - The routing table contains the Node Ids of other
nodes organised in terms of prefix equality - The neighbourhood set contains the Ids of the
nodes in closest physical proximity - The leaf set contains the Node Ids closest
numerically to the host's - Messages are routed using the leaf set and
routing table
10Structured Overlay Protocols
- Chord 11
- Similar to Pastry, but uses a simpler table
system and handles joins and departures more
efficiently - Chord provides more consistent hashing than
Pastry, constructing a hash using the SHA-1 of
the node IP - The key-value pair corresponding to some content
is assigned to the node with same or greater ID - Chord uses either a simple ring-based search
algorithm or a scalable key location algorithm
which uses a lookup or finger table to assist
routing - Chord copes with joins and departures very
simply each node periodically updates its
successor ID and finger tables - Each node also keeps a list of its first r
successors so that it can quickly switch to a new
successor if it loses contact
11Peer-to-Peer Applications
- Distributed Web Cache ( Structured )?
- Squirrel
- Distributed File System ( Structured )?
- Ivy
- Peer-to-Peer File Sharing ( Unstructured )?
- Gnutella
- Peer-to-Peer Telephony ( Unstructured )?
- Skype
- Distributed Information Retrieval ( Structured )?
- pSearch
12Squirrel Distributed Web Cache 6
- Installed on client machines and used as
intermediate proxy - Object-IDs formed by hashing request URLs
- Uses DHTs to map URL/Object-IDs to specific peers
and make requests - Sends a request for the cached content to the
peer with the nearest ID to the object ID - Scales up to thousands of nodes in simulation
- Nodes joining the network are given the objects
they must store by nodes which previously held
them - Nodes leaving the network have their objects
handled by nodes with the next-nearest ID
13Ivy Distributed Read/Write FS 7
- Nodes store local logs which detail file system
modifications - Stored in a DHash DHT
- Nodes find data by reading all logs but append
data by writing only to their own log, allowing
for consistency without locking - Resolves conflicts using a complex versioning
system and application-specific resolvers - 2-3 times slower than NFS due to network and
hashing overheads
14Gnutella P2P File Sharing Network 2
- Origin of the Gnutella Protocol
- A true decentralized network, very difficult to
shut down due to the lack of a centralized
essential authority - Composed of leaf nodes and ultra nodes
- Optimizes querying by limiting the number of
results returned to the leaf node - Accomplished by imposing a low TTL on queries
- Ultra Nodes compare the number of returned
results to the number of nodes queried and
designate the query as rare if the ratio between
results and queried nodes is low - Rare queries are forwarded to more Ultra Nodes in
order to get more results
15Skype P2P Internet Telephony 8
- Composed of 3 node types
- Standard Node A computer with a Skype Client
- Super Node A hub host which facilitates
connections between standard nodes , any client
with sufficient connection quality and power can
be one - Login Node Controlled by Skype, handles logins
and registrations, ensuring user uniqueness and
identity - Standard Nodes store Super-Node IP addresses in
their Host Cache a list of super-nodes which is
refreshed regularly - Super-Nodes are the targets for queries by
Standard Nodes - Super-Nodes cache query results
- Super-Nodes are organized into slots of 9-10 and
blocks of 8 slots to facilitate organised querying
16pSearch P2P Information Retrieval 9
- Creates a semantic overlay in a node network
- Contents are organized around their semantics (
e.g distance in terms of routing hops
proportional to the difference between documents
)? - This turns the network into a Content-Addressable
Network or CAN - Provides a DHT abstraction over Cartesian space
- Involves partitioning the network into zones,
each of which is controlled by a node and
identified by a certain key range - Semantics are generated using Latent Semantic
Indexing - New documents are analyzed using LSI and stored
at the node with the nearest semantic index - Queries are also assessed using LSI and are
routed to the node with the nearest semantic
index before being flooded to other nearby nodes.
Results are returned to the origin
17MANETs Protocol Types
- Reactive
- Routes are discovered on-demand
- Flow-Oriented
- Packets are routed along existing paths or
on-demand otherwise - Pro-Active
- Nodes flood the network with routing data
continuously - Hybrid
- Combination Reactive/Pro-Active protocols
- Geographical
- Takes into account the geographical location of
nodes when determining routing paths
18Reactive Routing Protocol
- Ad-Hoc On-Demand Distance Vector Routing 12
- Designed to reduce network overheads produced by
pro-active routing - When a node broadcasts a route request,
neighbouring nodes record the request and
re-broadcast it - Results in an explosion of route requests
- When the request encounters a node which has a
route to the destination node, confirmation is
sent back to the requester - The requester will choose the route which
involves the fewest hops - If a hop in the route fails, the process begins
again - Sequence numbers are used to prevent request
re-broadcasts - Unlike DSR, only the destination and sequence
number information is stored in the route
request/reply packet, reducing overheads - Route discovery is slower than in pro-active
protocols, but requires lover overhead
19Flow Oriented Routing Protocol
- Multi-Path On-Demand Routing 13
- Designed primarily for sensor networks with a
view to increasing energy efficiency - Similar to AODV, MOR nodes flood the network when
they require a route to another node - In a sensor network, we are primarily concerned
about routing data to and from a base station - In a MOR-based network, the base station
periodically floods the network with route
requests - Messages to and from the base station are
recorded by intermediates and used to form routes - Uses Unicast wherever possible instead of
flooding - Nodes record as many equal-hop routes as possible
- Results in lower energy consumption
20Pro-Active Routing Protocol
- Optimized Link-State Routing 14
- Each node in the network periodically exchanges
link-state messages with its neighbours - Minimizes overheads by employing Multi-Point
Replaying (MPR), under this scheme, each node
chooses a sub-set of its neighbours as MPRs
nodes which will re-transmit its link state
messages - Nodes which receive link-states from the origin
node but which aren't MPRs for that node will
record the data but won't retransmit - Using exchanged link-state messages, nodes
calculate the best routes to take in order to
send data to each other node within the network - Packets can be sent to their destinations with
little or no delay - No requirement for on-demand flooding
- Network overheads are higher than in a network
utilizing a pro-active routing protocol, but
transmission delays are lower
21Hybrid Routing Protocol
- Zone Routing Protocol 14
- Combines pro-active and reactive route discovery
- Each node has a routing zone ( defined by a
maximum hop count ) which defines the area within
which they are required to maintain links
pro-actively - Nodes outside of this routing zone can only be
reached through on-demand flooding - Reduces overheads since the request is only
broadcast from nodes at the boundaries of the
routing zone - Reduces overheads associated with pro-active
protocols since link-state is only maintained
within a limited range - Depending on the size of the network, the
protocol may become completely pro-active ( small
networks ) or reactive ( large networks )?
22Geographical Routing Protocol
- Greedy Perimeter Stateless Routing 15
- Protocol designed for networks where information
regarding node geographical relationships is
available - When constructing routes, nodes exercise greedy
forwarding - Nodes make locally optimal decisions regarding
where to forward packets - Nodes will attempt to forward packets to the
neighbour which is closest geographically to the
destination - Nodes need only hold topological information
regarding their immediate neighbours in order for
this protocol to work - When no closest neighbour exists, the system
enters perimeter forwarding mode in order to
defeat the local maximum problem - Nodes forward packets to the first node
counter-clockwise to the imaginary line between
the source and destination. This process is
repeated by intermediate nodes using the
right-hand rule - When the packets enter a region in the same
geographical location as specified in their
headers, they are then returned to greedy mode
23Mobile Ad-Hoc Network Applications
- Hybrid Networks 16
- Allow mobile users to stay in contact with
infrastructure networks, despite changes in
position - Sensor Networks 17
- Monitor interesting phenomena by deploying large
numbers of sensors which stay in contact via
wireless connections - Vehicular Networking 19
- Enable inter-vehicle communication to report
traffic conditions, accidents, etc. - Multi-Player Gaming 18
- Allow players using mobile gaming devices to play
together without the need of intermediate
infrastructure - Emergency and Battlefield Communications 16
- Allow soldiers and emergency workers to share
data about their surroundings and situation
24Peer-to-Peer in Mobile Ad-Hoc Networks
- PDI General Purpose Lookup System 21
- Epidemic Dissemination of Key-Value pairings
- Uses agressive caching in order to reduce
overheads associated with query flooding - Popular query results are spread throughout the
network in (k, v) pairs and cached by receiving
nodes - Query results are broadcast from their source
node and cached by nearby nodes - Invalidates stale cache entries both pro-actively
and reactively - Each cache entry has an associated time-out value
determined by the source node - This time-out is reset upon contact with the
source node - When the time-out reaches 0, the cache entry is
deleted - Source nodes can also issue cache entry Death
Certificates - Death certificates are associated with (k, v)
pairs, cached by neighbours and sent to any node
which requests the same (k, v) pair - This prevents data resurrection a common
occurrence in E.D-overlays
25Peer-to-Peer in Mobile Ad-Hoc Networks
- ORION P2P File Sharing over MANETs 22
- Queries are flooded through the network
- Each query has an associated source ID and
sequence number in order to prevent echoing - Responses are recorded by intermediate nodes for
future reference - Allows intermediate nodes in a query cycle to
record the same information as the query source,
gaining information for free - Nodes keep a cache of first-hop response sources
on a per-file basis - Reduces overheads associated with recording full
routes within response packets - Nodes transfer files in discreet blocks on a
per-request basis - Nodes compensate for route failure by re-routing
requests to nodes which hold the same file
26Peer-to-Peer in Mobile Ad-Hoc Networks
- 7DS Data Exchange in Disconnected Networks
- Allows nodes to retrieve data even when
disconnected from a gateway - Proxy and multicast search engine which attempts
to find requested data on neighbouring nodes
before consulting a gateway - All nodes use a lightweight web server to act as
providers for requested pages which have been
cached - Nodes act as relays when a connection to the
internet is available - Implements a Mail Transport Agent which
broadcasts e-mail to peers which then forwards
them to an SMTP server - Doesn't take into account the possibility of
duplicate sends
27Peer-to-Peer in Mobile Ad-Hoc Networks
- Cross-Layer Gnutella for MANETs 24
- Uses a combination of the Gnutella protocol and
OLSR pro-active routing protocol - The modified Gnutella implementation communicates
with OLSR, making it advertise the node's
presence while receiving routing event
information - Abandons the idea of Super Nodes and Leaf Nodes
as detailed in the Gnutella v.2 protocol in this
overlay all nodes are Super Nodes - This combination of an efficient peer-to-peer
overlay with an established routing protocol
results in far better performance - Lower overheads than a non-cross-layer approach
- Better ability to cope with mobility and
addition/removal of nodes
28Peer-to-Peer in Mobile Ad-Hoc Networks
- Oustanding Issues
- The difficulties in resolving K.B.R with MANET
architecture - K.B.R works in infrastructure networks where the
physical location of nodes is of little
importance - In MANETs, it is generally too costly and
inefficient to superimpose a highly structured
overlay onto the network which is at odds with
the physical topology of that network - What does this mean for DHTs in MANETs?
- Lack of agreed simulation methodology and
validation - ns2 and, possibly, OPNET are the de-facto
standard tools for simulation - Findings of the Dagstuhl Workshop on P2P MANETs
25 - Lack of sanitized data sets for simulation
- Lack of QoS measurement tools
- Lack of agreed benchmarks for new protocols and
simulations
29Peer-to-Peer in Mobile Ad-Hoc Networks
- Oustanding Issues
- Resolving existing routing protocols with P2P
unstructured overlay protocols - Gnutella Cross-Layer implementation results in
significantly increased network overheads - Strict layering of unstructured overlay
approaches on top of wireless routing protocols
is unlikely to work - Results in links which span multiple hops
- Increases overheads significantly for
intermediate nodes - Replication-based approaches work well for
frequently-partitioned networks but requires a
large amount of storage at intermediates - Flooding increases network overhead and requires
media access at each node - Only efficient if there are a moderate number of
nodes distributed relatively evenly
30Peer-to-Peer in Mobile Ad-Hoc Networks
- Outstanding Issues
- Resolving existing routing protocols with
Structured P2P Overlay protocols - Essentially the same problem as with K.B.R and
Unstructured protocols - Layering an overlay on top of the MANET which is
at odds with its physical structure results in
increased overheads and decreased reliability - How to combine the efficient approach of
structured overlays with the changing topology of
MANETs? - O( logN ) efficiency possible in infrastructure
networks, can a compromise protocol be devised
which preserves this level of efficiency? - Topology-dependant structuring represents a
compromise which has already been implemented but
requires object transfers on movement - Topology-independant approaches result in
increased lookup efficiency and don't require
object transfers but do result in longer paths
31Peer-to-Peer in Mobile Ad-Hoc Networks
32References
- Peer-to-Peer Architecture Case Study Gnutella
Network - Matei Ripeanu, University of Chicago, Illinois,
U.S.A - Characterizing Todays Gnutella Topology
- Daniel Stutzbach, Reza Rejaie, University of
Oregon, Oregon, U.S.A - The Bittorrent P2P File-Sharing System
Measurements and Analysis - J.A Pouwelse, P. Garbacki, D.H.J. Epema, H.J.
Sips, Delft University of Technology, The
Netherlands - CYCLON Inexpensive Membership Management for
Unstructured P2P Overlays - S Voulgaris, D Gavidia, M van Steen - Journal of
Network and Systems Management, 2005 - T-Man Gossip-based overlay topology management
- M Jelasity, O Babaoglu - Engineering
Self-Organising Applications (ESOA05), 2005 - Squirrel A Decentralized Peer-to-Peer Web Cache
- Sitaram Iyer, Antony Rowstron and Peter Druschel,
PODC 2002
33References (contd.)?
- Ivy A Read/Write Peer-to-Peer File System
- Athicha Muthitacharoen, Robert Morris, Thomer M.
Gil and Benjie Chen - An Analysis of the Skype Peer-to-Peer Internet
Telephony Protocol - Salman A. Baset and Henning Schulzrinne
- Peer-to-Peer Information Retrieval Using
Self-Organizing Semantic Overlay Networks - Chungqiang Tang, Zhichen Xu and Sandhya Dwarkadas
- Pastry Scalable, Decentralized Object Location
and Routing for Large-Scale Peer-to-Peer Systems - Antony Rowstron and Peter Druschel
- Chord A Scalable Peer-to-Peer Lookup Protocol
for Internet Applications - Ion Stoica, Robert Morris, David Karger, M. Frans
Kaashoek and Hari Balakrishnan - AODV Routing Protocol Implementation Design
- Ian D. Chakeres and Elizabeth M. Belding-Royer
- A Reliability Layer for Ad-Hoc Wireless Sensor
Network Routing - Edoardo Biagoni and Shu Hui Chen
34References (contd.)?
- A Review of Routing Protocols for Mobile Ad-Hoc
Networks - Mehran Abolhasan, Tadeusz Wysocki and Eryk
Dutkiewicz - GPSR Greedy Perimeter Stateless Routing for
Wireless Networks - Brad Karp and H. T. Kung, Harvard University
- Mobile Ad-Hoc Networking Imperatives and
Challenges - I. Chlamtac, M. Conti, J.J.N. Liu - Ad Hoc
Networks, 2003 - Wireless Sensor Networks A Survey
- I.F. Akyildiz, W. Su, Y. Sankarasubramaniam and
E. Cayirci - Multicast Over Wireless Mobile Ad-Hoc Networks
Present and Future Directions - Carlos de Morais Cordeiro, Hrishikesh Gossain and
Dharma P. Agrawal - Adaptive Privacy-Preserving Authentication in
Vehicular Networks - K Sha, Y Xi, W Shi, L Schwiebert and T Zhang
- P2P MANETs New Research Issues
- M. Gerla, C. Lindemann and A. Rowstron
35References (contd.)?
- Exploiting Epidemic Data Dissemination for
Consistent Lookup Operations in Mobile
Applications - C. Lindemann and O.P. Waldhorst
- A Special Purpose Peer-to-Peer File Sharing
System for Mobile Ad-Hoc Networks - A. Klemm, C.Lindemann and O. Waldhorst
- 7DS - Node Cooperation and Information Exchange
in Mostly Disconnected Networks - S. Srinivasan, A. Moghadam, S.G. Hong and H.
Schulzrinne - A Cross-Layer Optimization of Gnutella for Mobile
Ad-Hoc Networks - M. Conti, E. Gregori and G. Turi
- P2P MANETs New Research Issues
- M. Gerla, C. Lindemann and Ant Rowstron