Towards a Common API for Structured Peer-to-Peer Overlays
Frank Dabek, MIT, Ben Zhao, John Kubiatowicz, Ion Stoica, Berkeley, Peter Druschel, Rice
Three typical service of KBR API ( Key-base Routing API)
- DHT: distributed hash tables - put, remove, get
- DOLR: decentralized object location and routing - publish, unpublish, sendToObj
- CAST: group anycast and multicast - join, leave, multicast, anycast
Both DOLR and CAST maintain sets of endpoints in a decentralized manner and by their proximity in the network, using a tree consisting of the routes from the endpoints to a common root associated with the set. An integral part of DOLR process is the
maintenance of the distributed directory during changes to the underlying nodes or links. For CAST, Overlay nodes may join and leave a group, multicast messages to the group, or anycast a message to a member of the group.
The API defined:
- Routing
-
- void route(key -> K, msg -> M, nodehandle -> hint)
- void forward(key <-> K, msg <-> M, nodehandle <-> nextHopNode)
- void deliver(key -> K, msg -> M)
- Routing State Access
-
- nodehandle[] local_lookup(key -> K, int -> num, boolean -> safe): find next hops
- nodehandle[] neighborSet(int -> num): find neighbor
- nodehandle[] replicaSet(key -> K, int -> max_rank): find replica node
- update(nodehandle -> n, boolean -> joined): update for node join/leave
- boolean range(nodehandle -> N, rank -> r, key <-> lkey, key <-> rkey ): find node’s serving key range
[Feeling]
- Route is the essential key API for application.
- Other API can be used for data maintainence or replicate.
- If it is followed by current P2P practise?
Technorati : P2P API
<![CDATA[health insurance online quotes]]> Says:
五月 29th, 2007 at 2:18 amVisit <![CDATA[health insurance online quotes]]>
health insurance online quotes
damager?inadvisable!Reinhardt