peersim.skipnet
Class Skipnet
java.lang.Object
peersim.skipnet.Skipnet
- All Implemented Interfaces:
- java.lang.Cloneable, peersim.core.Cleanable, peersim.core.Linkable, peersim.core.Protocol, peersim.edsim.EDProtocol
public class Skipnet
- extends java.lang.Object
- implements peersim.edsim.EDProtocol, peersim.core.Linkable
This class implements the peersim.extras.am.skipnet protocol functionality. It needs to be
initialized from a SkipnetInit instance. For protocol details see SkipNet:
A Scalable Overlay Network with Practical Locality Properties
Constructor Summary |
Skipnet(java.lang.String prefix)
|
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
pid
protected int pid
localNumId
protected NumericId localNumId
localname
protected SkipnetName localname
localnode
protected peersim.core.Node localnode
routingTable
protected SkipnetRoutingTable routingTable
vertex
protected edu.uci.ics.jung.graph.Vertex vertex
Skipnet
public Skipnet(java.lang.String prefix)
- Parameters:
prefix
- string prefix for config properties
processEvent
public void processEvent(peersim.core.Node localnode,
int pid,
java.lang.Object event)
- Specified by:
processEvent
in interface peersim.edsim.EDProtocol
routeByNumericID
public void routeByNumericID(peersim.skipnet.messages.NumericRoutingMessage msg)
routeByName
public void routeByName(peersim.skipnet.messages.NameRoutingMessage msg)
deliver
public void deliver(peersim.skipnet.messages.SkipnetMessage msg)
clone
public java.lang.Object clone()
- Specified by:
clone
in interface peersim.core.Protocol
- Overrides:
clone
in class java.lang.Object
sendMessage
protected void sendMessage(peersim.skipnet.messages.SkipnetMessage msg)
sendMessage
protected void sendMessage(peersim.core.Node dest,
peersim.skipnet.messages.SkipnetMessage msg)
sendMessage
protected void sendMessage(peersim.core.Node dest,
peersim.skipnet.messages.SkipnetMessage msg,
int pid)
getSeed
public peersim.core.Node getSeed()
setSeed
public void setSeed(peersim.core.Node seed)
sendData
public void sendData(SkipnetName destination,
java.lang.Object data,
peersim.skipnet.messages.SkipnetMessageCallback callback)
sendData
public void sendData(NumericId destination,
java.lang.Object data,
peersim.skipnet.messages.SkipnetMessageCallback callback)
addNeighbor
public boolean addNeighbor(peersim.core.Node neighbour)
- Specified by:
addNeighbor
in interface peersim.core.Linkable
contains
public boolean contains(peersim.core.Node neighbor)
- Specified by:
contains
in interface peersim.core.Linkable
degree
public int degree()
- Specified by:
degree
in interface peersim.core.Linkable
getNeighbor
public peersim.core.Node getNeighbor(int i)
- Specified by:
getNeighbor
in interface peersim.core.Linkable
pack
public void pack()
- Specified by:
pack
in interface peersim.core.Linkable
onKill
public void onKill()
- Specified by:
onKill
in interface peersim.core.Cleanable
getLocalNumId
public NumericId getLocalNumId()
getLocalname
public SkipnetName getLocalname()
getLocalnode
public peersim.core.Node getLocalnode()
getRoutingTable
public SkipnetRoutingTable getRoutingTable()
setLocalnode
public void setLocalnode(peersim.core.Node localnode)
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
getHeight
public int getHeight()