Application Level Routing: What can it teach transport level routing Midnight Sun Routing Workshop J - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Application Level Routing: What can it teach transport level routing Midnight Sun Routing Workshop J

Description:

Midnight Sun Routing Workshop June 2002. Elwyn Davies. 18 June 2002 ... systems and DOLR in particular focusses on Distributed Hash Table (DHT) functionality ... – PowerPoint PPT presentation

Number of Views:253
Avg rating:3.0/5.0
Slides: 18
Provided by: elw85
Category:

less

Transcript and Presenter's Notes

Title: Application Level Routing: What can it teach transport level routing Midnight Sun Routing Workshop J


1
Application Level RoutingWhat can it teach
transportlevel routing?Midnight Sun Routing
Workshop June 2002
Elwyn Davies18 June 2002
2
Agenda
  • What does Application Level Routing do?
  • First generation Napster and Gnutella
  • Scalability fixes Distributed Hash table
    algorithms
  • Uses of DHT
  • Open Questions for DHT
  • What can transport level routing learn?

3
Why do we wantApplication Layer Routing?
  • Driven by finding objects and services on a
    chaotic network
  • Data (content) and services are mobile
  • Data and services need to be widely replicated,
    giving
  • Availability
  • Durability
  • Locality (I.e. ability to exploit local resources
    rather than remote ones)
  • Want to be able to route queries (operations)
    to objects using location independent names
  • Keep the number of overlay hops in scale with
    network size

4
Challenges in the Wide-area
  • Trends
  • Exponential growth in CPU capacity and storage
  • Networks expanding in reach and bandwidth
  • Can applications leverage new resources?
  • Scalability increasing users, requests, traffic
  • Resilience more components gt inversely low MTBF
  • Management intermittent resource availability gt
    complex management scheme
  • Proposal(s) Distributed Object Location
    Routing infrastructures to solve these issues and
    pass benefits onto applications (DOLR)

5
Requirements for a DOLR Infrastructure
  • Deterministic Location
  • Objects should be located if they exist in the
    network
  • Routing Locality
  • Routes should have low stretch (ratio of actual
    to minimal distance that query travels from
    origin to object), not just a small number of
    application-level hops.
  • Sending queries to nearest copy across shortest
    distance path possible is ideal.
  • Minimality and Load Balance
  • Infrastructure must not place undue stress on any
    of its components
  • Implies minimal storage and balanced
    computational load
  • Dynamic Membership
  • Infrastructure must adapt to arriving and
    departing nodes whilst maintaining previous
    properties
  • Self-organising

Not a bad set of basic requirements for transport
routing !
6
First Generation Solutions
  • Domain Name System
  • Issues Root servers, Not self-organising
  • Web Search Engines
  • Issues Non-deterministic, Centralised
  • P2P File Sharing Systems
  • Napster Not fully decentralised (central
    directory)
  • Gnutella Broadcast based protocol limits
    scalability/resource hungry
  • FreeNet Not guaranteed to find existing object

All these systems make tradeoffs
betweendecentralised operation,efficient
bandwidth usage anddeterministic operation
7
DHT to the Rescue
  • Most current research to improve scalability of
    P2P systems and DOLR in particular focusses on
    Distributed Hash Table (DHT) functionality
  • Trying to scale
  • CPU load
  • Local storage
  • Network Bandwidth
  • Typical scalabilities for a network of n nodes
  • Routing hops O(log n)
  • Space O(n log n)

8
Basics of DHT
  • Take a key as input Route a message to node
    responsible for key in response
  • Keys are strings of digits of a given length
  • Nodes have identifiers
  • Taken from same space as keys (ie same number of
    digits)
  • Each node maintains a routing table of a small
    subset of nodes in the system
  • When a node receives a query for a key for which
    it is NOT responsible, it routes the query to the
    neighbour node which makes the most progress
    towards resolving the query
  • Notion of progress differs from scheme to scheme
  • Generally defined as a metric between identifier
    of current node and queried key
  • Involves some sense of locality

9
Example Overlay Routing Networks
  • CAN Ratnasamy et al, (ACIRI, UCB)
  • Uses d-dimensional coordinate space to implement
    distributed hash table
  • Route to neighbour closest to destination
    coordinate in this space
  • Chord Stoica, Morris, Karger et al, (MIT, UCB)
  • Linear namespace modelled as a circular address
    space
  • Finger table entries point to logarithmic of
    increasingly remote nodes
  • Pastry Rowston and Druschel (Microsoft / Rice)
  • Hypercube routing similar to Plaxton
  • Objetcs replicated to servers by name
  • Fast insertion deletion
  • Constant sized routing state
  • Unconstrained of hops
  • Overlay distance not proportional to physical
    distance
  • Simplicity in algorithms
  • Fast fault-recovery
  • Log2(n) hops and routing state
  • Overlay distance not proportional to physical
    distance
  • Fast fault recovery
  • Log(n) hops and routing state
  • Data replication required for fault tolerance

Plaxton et al, 1997, Accessing nearby copies
of replicated objects in a distributed
environment is seminal work on DHT
10
Example applications of DOLR/DHT
  • Distibuted file systems
  • OceanStore
  • Application-layer multicast
  • Event notification services
  • Scribe Publish-subscribe system
  • Chat services

11
Issues State-Efficiency Tradeoff
  • Can we achieve O(log n) pathlengths (or better)
    with O(1) neighbours?
  • What suffers to make this better?

12
Issues Resilience to failures
  • Static resilience How badly is routing affected
    in the interval between a node failing and the
    other nodes getting round to fixing up the
    problem with new neighbours?
  • Can one characterize the static resilience of an
    algorithm?
  • What makes for good static resilience?
  • Does the use of special neighbours really
    help?
  • How long does it take to recover? At what cost?
  • Are there design rules for the net to improve
    recovery performance?

13
Issues Routing Hotspots
  • Do routing hotspots exist?
  • If so, how does one deal with them?

14
Issues Incorporating Geography
  • If you use proximity, can you characterise the
    effectiveness of the results?
  • Does knowing about close neighbours help?
  • Does choosing identifiers in a geographically
    informed manner help? Can one choose identifiers
    in a d-dimensional key space that will acurately
    capture the geographical layout of nodes?
  • Do existing local (topology) techniques actually
    achieve much of the benefit of geography?
  • What tradeoffs have to be made to incorporate
    geography?

15
Issues Heterogeneity
  • Can the routing algorithms exploit heterogeneity?
  • One technique is cloning so that capable nodes
    look like multiple nodes.

16
Pointers for further reading
  • CAN
  • Chord http//pdos.lcs.mit.edu/chord
  • Pastry http//www.research.microsoft.com/7Eantr/
    pastry
  • Survey papers
  • Ratnasamy et al, Routing Algorithms for DHTs
    Some Open Questions, ICSI/CS, UCB
  • Hildrum et al, Distributed Object Location in a
    Dynamic Network, Submitted for SPAA02, August
    10-13, 2002, Winnipeg, Manitoba, Canada

17
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com