Tapestry: A resilient global-scale overlay for service deployment - PowerPoint PPT Presentation

1 / 13
About This Presentation
Title:

Tapestry: A resilient global-scale overlay for service deployment

Description:

Tapestry: A resilient global-scale overlay for service deployment. B.Y. Zhao, L. Huang, J. Stribling, S.C. Rhea, A.D. Joseph, J.D. Kubiatowicz ... – PowerPoint PPT presentation

Number of Views:20
Avg rating:3.0/5.0
Slides: 14
Provided by: tsu3
Category:

less

Transcript and Presenter's Notes

Title: Tapestry: A resilient global-scale overlay for service deployment


1
Tapestry A resilient global-scale overlay for
service deployment
  • B.Y. Zhao, L. Huang, J. Stribling, S.C. Rhea,
    A.D. Joseph, J.D. Kubiatowicz
  • IEEE Journal on Selected Areas in Communications,
    January, 2004

2
Tapestry
  • An overlay location and routing infrastructure
  • provides location-independent routing of messages
    directly to the closest copy of an object or
    service
  • using only point-to-point links and without
    centralized resources
  • Based on Plaxton mesh
  • Routing and directory information is purely soft
    state and easily repaired
  • Self-organizing, fault-resilient, and
    load-balancing

3
nodeIDs, GUIDs and Aid
  • Nodes in the overlay are assigned nodeIDs
  • uniformly at random from a large identifier space
  • more than one node may be hosted by one physical
    host
  • Application-specific endpoints are assigned
    Globally Unique IDentifiers (GUIDs)
  • selected from the same identifier space
  • node N has nodeID Nid, and an object O has GUID
    OG
  • To enable application coexistence, every message
    contains an application-specific identifier, Aid

4
Identifier Space
  • Currently uses an identifier space of 160-bit
    values with a globally defined radix (e.g.,
    hexadecimal, yielding 40-digit identifiers)
  • nodeIDs and GUIDs are assumed roughly evenly
    distributed in the namespace
  • can be achieved by using a secure hashing
    algorithm like SHA-1

5
Networking APIs
  • 1) PUBLISHOBJECT(OG, Aid) Publish, or make
    available, object O on the local node. This call
    is best effort, and receives no confirmation
  • 2) UNPUBLISHOBJECT(OG, Aid) Best-effort attempt
    to remove location mappings for O
  • 3) ROUTETOOBJECT(OG, Aid) Routes message to
    location of an object with GUID OG
  • 4) ROUTETONODE(N, Aid, Exact) Route message to
    application Aid on node N. Exact specifies
    whether destination ID needs to be matched
    exactly to deliver payload

6
Neighbor Map
  • Route overlay messages to the destination ID
    digit by digit
  • 4XXX ? 42XX ? 42AX ? 42AD
  • Multiple levels
  • each level represents a matching suffix up to a
    digit position in the ID
  • Contains a number of entries equal to the IDs
    base
  • ith entry in the jth level is the ID and location
    of the closest node that begins with prefix (N, j
    -1 ) i

7
Neighbor Map in node 4227
Level 1 Level 2 Level 3 Level 4
Entry 0 0 40 420 4220

Entry 3 3 43 423 4223
Entry 4 4 44 424 4224

Entry 7 7 47 427 4227

Entry 15 F 4F 42F 422F
N 4227 i 4, j 3 (N, 2) 42 Prefix (424)
8
Tapestry Routing Mesh
9
Path of a Message from 5230 to 42AD
10
Path Length
  • The router for the nth hop shares a prefix of
    length ? n with the destination ID
  • looks in its (n1) th level map for the entry
    matching the next digit in the destination ID
  • Node will be reached in at most logßN logical
    hops
  • N namespace size, ß IDs base
  • Surrogate routing
  • when a digit cannot be matched, Tapestry looks
    for a close digit in the routing table

11
Expected Total Number of Entries
  • Neighbors share the same prefix to help provide
    resilience (route reliability, faulty node
    prevention)
  • c ß logßN
  • c number of neighbors

12
Tapestry Object Publish Object 4378 to Node
4377
4377
Publish Path
Location Mapping
437A
43FE
4228
Tapestry Pointer
4361
4664
Phils Books (4378)
4B4F
4A6D
Phils Books (4378)
57EC
E791
AA93
13
Tapestry Route to Object
Write a Comment
User Comments (0)
About PowerShow.com