OverSim
|
Base class for overlays. More...
#include <BaseOverlay.h>
Classes | |
class | BaseOverlayContext |
struct | HopDelayRecord |
Structure for computing the average delay in one specific hop. More... | |
class | lookupHashFcn |
Public Types | |
enum | States { INIT = 0, BOOTSTRAP = 1, DISCOVERY = 2, PREJOIN = 3, JOIN = 4, POSTJOIN = 5, READY = 6, REFRESH = 7, SHUTDOWN = 8, FAILED = 9, RSET = JOIN, BSET = POSTJOIN } |
Public Types inherited from BaseTcpSupport | |
enum | EvCode { NO_EST_CONNECTION, PEER_CLOSED, PEER_TIMEDOUT, PEER_REFUSED, CONNECTION_RESET, CONNECTION_SUCC_ClOSED } |
Public Member Functions | |
BaseOverlay () | |
virtual | ~BaseOverlay () |
Virtual destructor. | |
States | getState () |
bool | isMalicious () |
Returns true, if node is malicious. | |
bool | isInSimpleMultiOverlayHost () |
Returns true if overlay is one in an array, inside a SimpleMultiOverlayHost. | |
const simtime_t & | getCreationTime () |
void | join (const OverlayKey &nodeID=OverlayKey::UNSPECIFIED_KEY) |
Join the overlay with a given nodeID. | |
virtual NodeVector * | local_lookup (const OverlayKey &key, int num, bool safe) |
finds nodes closest to the given OverlayKey | |
virtual NodeVector * | neighborSet (int num) |
virtual bool | isSiblingFor (const NodeHandle &node, const OverlayKey &key, int numSiblings, bool *err) |
Query if a node is among the siblings for a given key. | |
virtual int | getMaxNumSiblings () |
Query the maximum number of siblings (nodes close to a key) that are maintained by this overlay protocol. | |
virtual int | getMaxNumRedundantNodes () |
Query the maximum number of redundant next hop nodes that are returned by findNode(). | |
void | sendMessageToUDP (const TransportAddress &dest, cPacket *msg, simtime_t delay=SIMTIME_ZERO) |
Sends message to underlay. | |
void | sendToKey (const OverlayKey &key, BaseOverlayMessage *message, int numSiblings=1, const std::vector< TransportAddress > &sourceRoute=TransportAddress::UNSPECIFIED_NODES, RoutingType routingType=DEFAULT_ROUTING) |
Sends a message to an overlay node, with the generic routing algorithm. | |
virtual OverlayKey | distance (const OverlayKey &x, const OverlayKey &y, bool useAlternative=false) const |
This method should implement the distance between two keys. | |
void | registerComp (CompType compType, cModule *module) |
cModule * | getCompModule (CompType compType) |
cGate * | getCompRpcGate (CompType compType) |
void | sendMessageToAllComp (cMessage *msg, CompType srcComp) |
bool | providesKbr () |
virtual uint8_t | getBitsPerDigit () |
bool | getMeasureAuthBlock () |
BootstrapList & | getBootstrapList () const |
virtual OverlayKey | estimateMeanDistance () |
returns mean distance between OverlayKeys in the network | |
virtual uint32_t | estimateOverlaySize () |
estimates the current number of nodes online | |
Public Member Functions inherited from BaseRpc | |
BaseRpc () | |
const NodeHandle & | getThisNode () |
Returns the NodeHandle of this node. | |
simtime_t | getUdpTimeout () |
Public Member Functions inherited from RpcListener | |
virtual | ~RpcListener () |
destructor | |
Public Member Functions inherited from BaseTcpSupport | |
virtual void | socketDataArrived (int connId, void *yourPtr, cPacket *msg, bool urgent) |
virtual void | socketEstablished (int connId, void *yourPtr) |
virtual void | socketPeerClosed (int connId, void *yourPtr) |
virtual void | socketFailure (int connId, void *yourPtr, int code) |
virtual void | socketStatusArrived (int connId, void *yourPtr, TCPStatusInfo *status) |
Public Member Functions inherited from TopologyVis | |
TopologyVis () | |
void | showOverlayNeighborArrow (const NodeHandle &neighbor, bool flush=true, const char *displayString=NULL) |
Draws an arrow from this node to neighbor. | |
void | deleteOverlayNeighborArrow (const NodeHandle &neighbor) |
Removes an arrow from this node to neighbor. |
Protected Types | |
typedef UNORDERED_SET < AbstractLookup *, lookupHashFcn, lookupHashFcn > | LookupSet |
Protected Member Functions | |
int | numInitStages () const |
Sets init stage. | |
virtual void | initializeOverlay (int stage) |
Initializes derived-class-attributes. | |
virtual void | finishOverlay () |
collects statistical data in derived class | |
void | bindToPort (int port) |
Tells UDP we want to get all packets arriving on the given port. | |
virtual void | route (const OverlayKey &key, CompType destComp, CompType srcComp, cPacket *msg, const std::vector< TransportAddress > &sourceRoute=TransportAddress::UNSPECIFIED_NODES, RoutingType routingType=DEFAULT_ROUTING) |
Routes message through overlay. | |
void | callDeliver (BaseOverlayMessage *msg, const OverlayKey &destKey) |
Calls deliver function in application. | |
void | callForward (const OverlayKey &key, BaseRouteMessage *msg, const NodeHandle &nextHopNode) |
Calls forward function in application. | |
void | callUpdate (const NodeHandle &node, bool joined) |
Informs application about state changes of nodes or newly joined nodes. | |
void | handleMessage (cMessage *msg) |
Checks for message type and calls corresponding method. | |
void | handleBaseOverlayMessage (BaseOverlayMessage *msg, const OverlayKey &destKey=OverlayKey::UNSPECIFIED_KEY) |
Handles a BaseOverlayMessage | |
virtual void | handleUDPMessage (BaseOverlayMessage *msg) |
Processes messages from underlay. | |
virtual void | handleAppMessage (cMessage *msg) |
Processes "timer" self-messages. | |
virtual void | receiveChangeNotification (int category, const cPolymorphic *details) |
callback-method for events at the NotificationBoard | |
virtual void | handleTransportAddressChangedNotification () |
This method gets call if the node has a new TransportAddress (IP address) because he changed his access network. | |
virtual void | handleNodeLeaveNotification () |
This method gets call **.gracefulLeaveDelay seconds before it is killed. | |
virtual void | handleNodeGracefulLeaveNotification () |
This method gets call **.gracefulLeaveDelay seconds before it is killed if this node is among the gracefulLeaveProbability nodes. | |
virtual void | recordOverlaySentStats (BaseOverlayMessage *msg) |
Collect overlay specific sent messages statistics. | |
void | setOverlayReady (bool ready) |
Sets the overlay ready icon and register/deregisters the node at the GlobalNodeList. | |
virtual AbstractLookup * | createLookup (RoutingType routingType=DEFAULT_ROUTING, const BaseOverlayMessage *msg=NULL, const cPacket *findNodeExt=NULL, bool appLookup=false) |
Creates an abstract iterative lookup instance. | |
virtual void | removeLookup (AbstractLookup *lookup) |
Removes the abstract lookup instance. | |
virtual NodeVector * | findNode (const OverlayKey &key, int numRedundantNodes, int numSiblings, BaseOverlayMessage *msg=NULL) |
Implements the find node call. | |
virtual void | joinOverlay () |
Join the overlay with a given nodeID in thisNode.key. | |
virtual void | joinForeignPartition (const NodeHandle &node) |
Join another overlay partition with the given node as bootstrap node. | |
virtual bool | handleFailedNode (const TransportAddress &failed) |
Handles a failed node. | |
virtual void | lookupRpc (LookupCall *call) |
virtual void | nextHopRpc (NextHopCall *call) |
void | countFindNodeCall (const FindNodeCall *call) |
void | countFailedNodeCall (const FailedNodeCall *call) |
bool | internalHandleRpcCall (BaseCallMessage *msg) |
Handles internal rpc requests. | |
void | internalHandleRpcResponse (BaseResponseMessage *msg, cPolymorphic *context, int rpcId, simtime_t rtt) |
Handles rpc responses internal in base classes | |
void | internalHandleRpcTimeout (BaseCallMessage *msg, const TransportAddress &dest, cPolymorphic *context, int rpcId, const OverlayKey &destKey) |
Handles rpc timeouts internal in base classes | |
void | internalSendRouteRpc (BaseRpcMessage *message, const OverlayKey &destKey, const std::vector< TransportAddress > &sourceRoute, RoutingType routingType) |
CompType | getThisCompType () |
Return the component type of this module. | |
Protected Member Functions inherited from BaseRpc | |
void | initRpcs () |
Initializes Remote-Procedure state. | |
void | finishRpcs () |
Deinitializes Remote-Procedure state. | |
virtual void | internalHandleRpcMessage (BaseRpcMessage *msg) |
Handles incoming rpc messages and delegates them to the corresponding listeners or handlers. | |
uint32_t | sendRouteRpcCall (CompType destComp, const TransportAddress &dest, const OverlayKey &destKey, BaseCallMessage *msg, cPolymorphic *context=NULL, RoutingType routingType=DEFAULT_ROUTING, simtime_t timeout=-1, int retries=0, int rpcId=-1, RpcListener *rpcListener=NULL) |
Routes a Remote-Procedure-Call message to an OverlayKey. | |
uint32_t | sendRouteRpcCall (CompType destComp, const OverlayKey &destKey, BaseCallMessage *msg, cPolymorphic *context=NULL, RoutingType routingType=DEFAULT_ROUTING, simtime_t timeout=-1, int retries=0, int rpcId=-1, RpcListener *rpcListener=NULL) |
Routes a Remote-Procedure-Call message to an OverlayKey. | |
uint32_t | sendRouteRpcCall (CompType destComp, const TransportAddress &dest, BaseCallMessage *msg, cPolymorphic *context=NULL, RoutingType routingType=DEFAULT_ROUTING, simtime_t timeout=-1, int retries=0, int rpcId=-1, RpcListener *rpcListener=NULL) |
Sends a Remote-Procedure-Call message using the overlay's UDP port This replaces ROUTE_DIRECT calls! | |
uint32_t | sendUdpRpcCall (const TransportAddress &dest, BaseCallMessage *msg, cPolymorphic *context=NULL, simtime_t timeout=-1, int retries=0, int rpcId=-1, RpcListener *rpcListener=NULL) |
Sends a Remote-Procedure-Call message to the underlay | |
uint32_t | sendInternalRpcCall (CompType destComp, BaseCallMessage *msg, cPolymorphic *context=NULL, simtime_t timeout=-1, int retries=0, int rpcId=-1, RpcListener *rpcListener=NULL) |
Sends an internal Remote-Procedure-Call between two tiers | |
void | cancelRpcMessage (uint32_t nonce) |
Cancels a Remote-Procedure-Call. | |
void | cancelAllRpcs () |
Cancels all RPCs. | |
void | sendRpcResponse (TransportType transportType, CompType destComp, const TransportAddress &dest, const OverlayKey &destKey, BaseCallMessage *call, BaseResponseMessage *response) |
Send Remote-Procedure response message and deletes call message. | |
void | sendRpcResponse (BaseCallMessage *call, BaseResponseMessage *response) |
Send Remote-Procedure response message to UDP and deletes call message. | |
int | pingNode (const TransportAddress &dest, simtime_t timeout=-1, int retries=0, cPolymorphic *context=NULL, const char *caption="PING", RpcListener *rpcListener=NULL, int rpcId=-1, TransportType transportType=INVALID_TRANSPORT) |
ping a node by its TransportAddress | |
virtual bool | handleRpcCall (BaseCallMessage *msg) |
Processes Remote-Procedure-Call invocation messages. | |
virtual void | pingResponse (PingResponse *pingResponse, cPolymorphic *context, int rpcId, simtime_t rtt) |
virtual void | pingTimeout (PingCall *pingCall, const TransportAddress &dest, cPolymorphic *context, int rpcId) |
bool | internalHandleMessage (cMessage *msg) |
Protected Member Functions inherited from RpcListener | |
virtual void | handleRpcResponse (BaseResponseMessage *msg, cPolymorphic *context, int rpcId, simtime_t rtt) |
This method is called if an RPC response has been received. | |
virtual void | handleRpcResponse (BaseResponseMessage *msg, const RpcState &rpcState, simtime_t rtt) |
This method is called if an RPC response has been received. | |
virtual void | handleRpcTimeout (BaseCallMessage *msg, const TransportAddress &dest, cPolymorphic *context, int rpcId, const OverlayKey &destKey) |
This method is called if an RPC timeout has been reached. | |
virtual void | handleRpcTimeout (const RpcState &rpcState) |
This method is called if an RPC timeout has been reached. | |
Protected Member Functions inherited from BaseTcpSupport | |
void | handleTCPMessage (cMessage *msg) |
Member function to handle incoming TCP messages. | |
void | bindAndListenTcp (int port) |
Member function to bind service to the specified port and listen afterwards. | |
bool | isAlreadyConnected (TransportAddress address) |
Member function to check if the service is already connected. | |
void | establishTcpConnection (TransportAddress address) |
Member function to establish a connection to the specified node. | |
void | sendTcpData (cPacket *msg, TransportAddress address) |
Member function to send TCP data to the specified node. | |
virtual void | handleConnectionEvent (EvCode code, TransportAddress address) |
Member function to handle passive connection events. | |
virtual void | handleDataReceived (TransportAddress address, cPacket *msg, bool urgent) |
Member function to handle incoming data. | |
virtual void | handleIncomingConnection (TransportAddress address) |
Member function to handle newly opened connections. | |
void | closeTcpConnection (TransportAddress address) |
Member function to close an established connection. | |
void | setTcpOut (cGate *gate) |
Member function to set local gate towards the TCP module during init phase. | |
cGate * | getTcpOut () |
Member function to get local gate towards the TCP module. | |
Protected Member Functions inherited from TopologyVis | |
void | initVis (cModule *terminal) |
Protected Attributes | |
int | numAppDataForwarded |
number of forwarded app data packets | |
int | bytesAppDataForwarded |
number of forwarded app data bytes at out-gate | |
int | numAppLookupForwarded |
number of forwarded app lookup packets | |
int | bytesAppLookupForwarded |
number of forwarded app lookup bytes at out-gate | |
int | numMaintenanceForwarded |
number of forwarded maintenance packets | |
int | bytesMaintenanceForwarded |
number of forwarded maintenance bytes at out-gate | |
int | numFindNodeSent |
int | bytesFindNodeSent |
int | numFindNodeResponseSent |
int | bytesFindNodeResponseSent |
int | numFailedNodeSent |
int | bytesFailedNodeSent |
int | numFailedNodeResponseSent |
int | bytesFailedNodeResponseSent |
std::vector< HopDelayRecord * > | singleHopDelays |
simtime_t | creationTime |
simtime when the node has been created | |
GlobalNodeList * | globalNodeList |
pointer to GlobalNodeList in this node | |
NotificationBoard * | notificationBoard |
pointer to NotificationBoard in this node | |
UnderlayConfigurator * | underlayConfigurator |
pointer to UnderlayConfigurator in this node | |
BootstrapList * | bootstrapList |
pointer to the BootstrapList module | |
GlobalParameters * | globalParameters |
pointer to the GlobalParameters module | |
uint32_t | overlayId |
identifies the overlay this node belongs to (used for multiple overlays) | |
bool | debugOutput |
debug output ? | |
RoutingType | defaultRoutingType |
bool | useCommonAPIforward |
forward messages to applications? | |
bool | collectPerHopDelay |
collect delay for single hops | |
bool | routeMsgAcks |
send ACK when receiving route message | |
uint32_t | recNumRedundantNodes |
numRedundantNodes for recursive routing | |
bool | recordRoute |
record visited hops on route | |
bool | drawOverlayTopology |
bool | rejoinOnFailure |
bool | sendRpcResponseToLastHop |
needed by KBR protocols for NAT support | |
bool | dropFindNodeAttack |
if node is malicious, it tries a findNode attack | |
bool | isSiblingAttack |
if node is malicious, it tries a isSibling attack | |
bool | invalidNodesAttack |
if node is malicious, it tries a invalidNode attack | |
bool | dropRouteMessageAttack |
if node is malicious, it drops all received BaseRouteMessages | |
int | localPort |
used UDP-port | |
int | hopCountMax |
maximum hop count | |
bool | measureAuthBlock |
if true, measure the overhead of signatures in rpc messages | |
bool | restoreContext |
if true, a node rejoins with its old nodeId and malicious state | |
int | numDropped |
number of dropped packets | |
int | bytesDropped |
number of dropped bytes | |
cOutVector | delayVector |
statistical output vector for packet-delays | |
cOutVector | hopCountVector |
statistical output vector for hop-counts | |
States | state |
IterativeLookupConfiguration | iterativeLookupConfig |
RecursiveLookupConfiguration | recursiveLookupConfig |
LookupSet | lookups |
bool | kbr |
set this to true, if the overlay provides KBR services | |
Protected Attributes inherited from BaseRpc | |
NodeHandle | thisNode |
NodeHandle to this node. | |
BaseOverlay * | overlay |
bool | debugOutput |
debug output ? | |
GlobalStatistics * | globalStatistics |
pointer to GlobalStatistics module in this node | |
CompType | thisCompType |
NeighborCache * | neighborCache |
pointer to the neighbor cache | |
CryptoModule * | cryptoModule |
pointer to CryptoModule | |
int | numPingSent |
int | bytesPingSent |
int | numPingResponseSent |
int | bytesPingResponseSent |
Protected Attributes inherited from TopologyVis | |
cModule * | thisTerminal |
GlobalNodeList * | globalNodeList |
pointer to corresponding node |
Private Types | |
typedef std::map< CompType, std::pair< cModule *, cGate * > > | CompModuleList |
Private Member Functions | |
void | initialize (int stage) |
initializes base-class-attributes | |
void | finish () |
collects statistical data | |
virtual void | setOwnNodeID () |
Overlay implementations can overwrite this virtual method to set a specific nodeID. | |
void | sendRouteMessage (const TransportAddress &dest, BaseRouteMessage *msg, bool ack) |
bool | checkFindNode (BaseRouteMessage *routeMsg) |
void | initLookups () |
creates a LookupSet | |
void | finishLookups () |
deletes entries in lookups | |
virtual bool | recursiveRoutingHook (const TransportAddress &dest, BaseRouteMessage *msg) |
Hook for forwarded message in recursive lookup mode. | |
void | internalSendRpcResponse (BaseCallMessage *call, BaseResponseMessage *response) |
void | findNodeRpc (FindNodeCall *call) |
void | failedNodeRpc (FailedNodeCall *call) |
Private Attributes | |
int | numAppDataSent |
number of sent app data packets (incl. forwarded packets) | |
int | bytesAppDataSent |
number of sent app data bytes (incl. forwarded bytes) | |
int | numAppLookupSent |
number of sent app loookup packets (incl. forwarded packets) | |
int | bytesAppLookupSent |
number of sent app lookup bytes (incl. forwarded bytes) | |
int | numMaintenanceSent |
number of sent maintenance packets (incl. forwarded packets) | |
int | bytesMaintenanceSent |
number of sent maintenance bytes (incl. forwarded bytes) | |
int | numAppDataReceived |
number of received app data packets (incl. packets to be forwarded ) | |
int | bytesAppDataReceived |
number of received app data bytes (incl. bytes to be forwarded) | |
int | numAppLookupReceived |
number of received app lookup packets (incl. packets to be forwarded) | |
int | bytesAppLookupReceived |
number of received app lookup bytes (incl. bytes to be forwarded) | |
int | numMaintenanceReceived |
number of received maintenance packets (incl. packets to be forwarded) | |
int | bytesMaintenanceReceived |
number of received maintenance bytes (incl. bytes to be forwarded) | |
int | numInternalSent |
number of packets sent to same host but different port (SimpleMultiOverlayHost) | |
int | bytesInternalSent |
number of bytes sent to same host but different port (SimpleMultiOverlayHost) | |
int | numInternalReceived |
number of packets received from same host but different port (SimpleMultiOverlayHost) | |
int | bytesInternalReceived |
number of bytes received from same host but different port (SimpleMultiOverlayHost) | |
int | bytesAuthBlockSent |
number of bytes sent for rpc message signatures | |
int | joinRetries |
number of join retries | |
const cGate * | udpGate |
const cGate * | appGate |
CompModuleList | compModuleList |
bool | internalReadyState |
internal overlay state used for setOverlayReady() | |
int | socketId |
Friends | |
class | IterativeLookup |
class | IterativePathLookup |
class | RecursiveLookup |
class | BootstrapList |
class | SendToKeyListener |
Base class for overlays.
Base class for overlay modules, with KBR-API, statistics and pointers to the GlobalNodeList and the UnderlayConfigurator. Derived classes must use BaseOverlayMessage as base class for own message types.
Definition at line 62 of file BaseOverlay.h.
|
private |
Definition at line 837 of file BaseOverlay.h.
|
protected |
Definition at line 580 of file BaseOverlay.h.
enum BaseOverlay::States |
Definition at line 85 of file BaseOverlay.h.
BaseOverlay::BaseOverlay | ( | ) |
Definition at line 57 of file BaseOverlay.cc.
|
virtual |
Virtual destructor.
Definition at line 66 of file BaseOverlay.cc.
|
protected |
Tells UDP we want to get all packets arriving on the given port.
Definition at line 466 of file BaseOverlay.cc.
|
protected |
Calls deliver function in application.
Encapsulates messages in KBRdeliver messages and sends them to application.
msg | delivered message |
destKey | the destination key of the message |
Definition at line 491 of file BaseOverlay.cc.
Referenced by Gia::forwardMessage().
|
protected |
Calls forward function in application.
Encapsulates messages in KBRforward messages and sends them to application.
the message to be sent through the API must be encapsulated in msg
.
key | destination key |
msg | message to forward |
nextHopNode | next hop |
Definition at line 524 of file BaseOverlay.cc.
|
protected |
Informs application about state changes of nodes or newly joined nodes.
Creates a KBRUpdate message and sends it up to the application
node | the node that has joined or changed its state |
joined | has the node joined or changed its state? |
Definition at line 669 of file BaseOverlay.cc.
Referenced by BrooseBucket::add(), Gia::changeState(), PastryLeafSet::failedNode(), Kademlia::handleFailedNode(), PastryLeafSet::mergeState(), Kademlia::refillSiblingTable(), BrooseBucket::remove(), Kademlia::routingAdd(), and Kademlia::routingTimeout().
|
private |
Definition at line 1629 of file BaseOverlay.cc.
|
protected |
Definition at line 1884 of file BaseOverlay.cc.
Referenced by Kademlia::handleNodeGracefulLeaveNotification(), and IterativePathLookup::handleTimeout().
|
protected |
Definition at line 1878 of file BaseOverlay.cc.
Referenced by IterativeLookup::sendRpc().
|
protectedvirtual |
Creates an abstract iterative lookup instance.
routingType | The routing type for this lookup (e.g. recursive/iterative) |
msg | pointer to the message for which the lookup is created. Derived classes can use it to construct an object with additional info for the lookup class. |
findNodeExt | object that will be sent with the findNodeCalls |
appLookup | Set to true, if lookup is triggered by application (for statistics) |
Reimplemented in BasePastry.
Definition at line 1646 of file BaseOverlay.cc.
Referenced by Kademlia::handleBucketRefreshTimerExpired(), and Kademlia::handleRpcResponse().
|
virtual |
This method should implement the distance between two keys.
It may be overloaded to implement a new metric. The default implementation uses the standard-metric d = abs(x-y).
x | Left-hand-side Key |
y | Right-hand-side key |
useAlternative | use an alternative distance metric |
Reimplemented in BasePastry, Kademlia, and oversim::Chord.
Definition at line 1687 of file BaseOverlay.cc.
Referenced by IterativeLookup::compare(), oversim::Nice::handleNicePingProbeResponse(), and oversim::Nice::maintenance().
|
virtual |
returns mean distance between OverlayKeys in the network
Reimplemented in BasePastry.
Definition at line 582 of file BaseOverlay.cc.
|
virtual |
estimates the current number of nodes online
Definition at line 588 of file BaseOverlay.cc.
|
private |
Definition at line 1968 of file BaseOverlay.cc.
|
protectedvirtual |
Implements the find node call.
This method simply returns the closest nodes known in the corresponding routing topology. If the node is a sibling for this key (isSiblingFor(key) = true), this method returns all numSiblings siblings, with the closest neighbor to the key first.
key | The lookup key. |
numRedundantNodes | Maximum number of next hop nodes to return. |
numSiblings | number of siblings to return |
msg | A pointer to the BaseRouteMessage or FindNodeCall message of this lookup. |
Reimplemented in oversim::Chord, Broose, oversim::Koorde, Kademlia, and BasePastry.
Definition at line 1696 of file BaseOverlay.cc.
Referenced by IterativePathLookup::handleTimeout(), and IterativeLookup::start().
|
private |
Definition at line 1891 of file BaseOverlay.cc.
|
private |
collects statistical data
Definition at line 305 of file BaseOverlay.cc.
|
private |
deletes entries in lookups
Definition at line 1249 of file BaseOverlay.cc.
|
protectedvirtual |
collects statistical data in derived class
Reimplemented in Kademlia, BasePastry, oversim::Nice, Gia, oversim::Koorde, oversim::Chord, Broose, NTree, Quon, Vast, PubSubLobby, and PubSubMMOG.
Definition at line 446 of file BaseOverlay.cc.
|
inlinevirtual |
Reimplemented in BasePastry.
Definition at line 813 of file BaseOverlay.h.
Referenced by NeighborCache::setCbrNodeId(), and GlobalViewBuilder::spreadGlobalView().
|
inline |
Definition at line 817 of file BaseOverlay.h.
Referenced by NeighborCache::handleReadyMessage(), and NeighborCache::prepareOverlay().
cModule * BaseOverlay::getCompModule | ( | CompType | compType | ) |
Definition at line 2069 of file BaseOverlay.cc.
Referenced by initialize().
cGate * BaseOverlay::getCompRpcGate | ( | CompType | compType | ) |
Definition at line 2079 of file BaseOverlay.cc.
Referenced by BaseRpc::sendRpcMessageWithTransport().
|
inline |
Definition at line 290 of file BaseOverlay.h.
|
virtual |
Query the maximum number of redundant next hop nodes that are returned by findNode().
Reimplemented in oversim::Chord, Broose, Kademlia, and BasePastry.
Definition at line 714 of file BaseOverlay.cc.
Referenced by IterativeLookup::start().
|
virtual |
Query the maximum number of siblings (nodes close to a key) that are maintained by this overlay protocol.
Reimplemented in oversim::Chord, Broose, Kademlia, and BasePastry.
Definition at line 705 of file BaseOverlay.cc.
Referenced by KBRTestApp::handleTimerEvent().
|
inline |
Definition at line 815 of file BaseOverlay.h.
|
inline |
Reimplemented in Quon.
Definition at line 102 of file BaseOverlay.h.
Referenced by ConnectivityProbe::extractTopology().
|
protectedvirtual |
Return the component type of this module.
This method is overloaded by BaseOverlay/BaseApp and returns the appropriate component type of this module.
Implements BaseRpc.
Definition at line 458 of file BaseOverlay.cc.
Referenced by Quon::changeState(), Vast::changeState(), Quon::handleNodeGracefulLeaveNotification(), and Vast::handleNodeLeaveNotification().
|
protectedvirtual |
Processes "timer" self-messages.
msg | A self-message Processes non-commonAPI messages |
msg | non-commonAPIMessage |
Reimplemented in Gia, oversim::Nice, NTree, Quon, Vast, and PubSubMMOG.
Definition at line 1087 of file BaseOverlay.cc.
|
protected |
Handles a BaseOverlayMessage
Handles BaseOverlayMessages of type OVERLAYSIGNALING, RPC, APPDATA or OVERLAYROUTE.
msg | The message to be handled |
destKey | the destination key of the message |
Definition at line 877 of file BaseOverlay.cc.
|
protectedvirtual |
Handles a failed node.
This method is called whenever a node given by findNode() was unreachable. The default implementation does nothing at all.
failed | the failed node |
Reimplemented in oversim::Chord, and oversim::Koorde.
Definition at line 1712 of file BaseOverlay.cc.
Referenced by BasePastry::handleRpcTimeout(), IterativePathLookup::handleTimeout(), and BasePastry::proxCallback().
|
protected |
Checks for message type and calls corresponding method.
Checks for message type (from UDP/App or selfmessage) and calls corresponding method like getRoute(), get(), put(), remove(), handleTimerEvent(), handleAppMessage() and handleUDPMessage().
msg | The message to be handled |
Definition at line 729 of file BaseOverlay.cc.
|
protectedvirtual |
|
protectedvirtual |
This method gets call **.gracefulLeaveDelay seconds before it is killed.
Reimplemented in oversim::Nice, and Vast.
Definition at line 1076 of file BaseOverlay.cc.
|
protectedvirtual |
This method gets call if the node has a new TransportAddress (IP address) because he changed his access network.
Definition at line 1067 of file BaseOverlay.cc.
|
protectedvirtual |
Processes messages from underlay.
msg | Message from UDP |
Reimplemented in Kademlia, Gia, oversim::Nice, Pastry, oversim::Koorde, oversim::Chord, NTree, Quon, Vast, PubSubLobby, and PubSubMMOG.
Definition at line 1092 of file BaseOverlay.cc.
|
private |
initializes base-class-attributes
stage | the init stage |
Definition at line 77 of file BaseOverlay.cc.
|
protectedvirtual |
Initializes derived-class-attributes.
Initializes derived-class-attributes, called by BaseOverlay::initialize(). By default this method is called once. If more stages are needed one can overload numInitStages() and add more stages.
stage | the init stage |
Reimplemented in Kademlia, oversim::Nice, Gia, Bamboo, Broose, Pastry, oversim::Koorde, oversim::Chord, NTree, Quon, Vast, PubSubLobby, and PubSubMMOG.
Definition at line 301 of file BaseOverlay.cc.
|
private |
|
protectedvirtual |
Handles internal rpc requests.
This method is used to implement basic functionality in the BaseRpc.
msg | The call message |
Reimplemented from BaseRpc.
Definition at line 1723 of file BaseOverlay.cc.
|
protectedvirtual |
Handles rpc responses internal in base classes
This method is used to implement basic functionality in the BaseRpc.
msg | The call message |
context | Pointer to an optional state object. The object has to be handled/deleted by the internalHandleRpcResponse() code |
rpcId | The ID of the call |
rtt | the time between sending the call and receiving the response |
Reimplemented from BaseRpc.
Definition at line 1737 of file BaseOverlay.cc.
|
protectedvirtual |
Handles rpc timeouts internal in base classes
This method is used to implement basic functionality in the BaseRpc.
msg | The call message |
dest | The node that did not response |
context | Pointer to an optional state object. The object has to be handled/deleted by the internalHandleRpcResponse() code |
rpcId | The ID of the call |
destKey | The key of the call if used |
Reimplemented from BaseRpc.
Definition at line 1744 of file BaseOverlay.cc.
|
protectedvirtual |
Implements BaseRpc.
Definition at line 1815 of file BaseOverlay.cc.
|
private |
Definition at line 1828 of file BaseOverlay.cc.
bool BaseOverlay::isInSimpleMultiOverlayHost | ( | ) |
Returns true if overlay is one in an array, inside a SimpleMultiOverlayHost.
Definition at line 2105 of file BaseOverlay.cc.
bool BaseOverlay::isMalicious | ( | ) |
Returns true, if node is malicious.
Definition at line 453 of file BaseOverlay.cc.
|
virtual |
Query if a node is among the siblings for a given key.
Query if a node is among the siblings for a given key. This means, that the nodeId of this node is among the closest numSiblings nodes to the key and that by a local findNode() call all other siblings to this key can be retrieved.
node | the NodeHandle |
key | destination key |
numSiblings | The nodes knows all numSiblings nodes close to this key |
err | return false if the range could not be determined |
Reimplemented in oversim::Chord, Kademlia, BasePastry, and Broose.
Definition at line 695 of file BaseOverlay.cc.
Referenced by TreeManagement::checkParentValid(), TreeManagement::getResponsibleDomainKey(), BaseApp::isSiblingFor(), and IterativeLookup::start().
void BaseOverlay::join | ( | const OverlayKey & | nodeID = OverlayKey::UNSPECIFIED_KEY | ) |
Join the overlay with a given nodeID.
Join the overlay with a given nodeID. This method may be called by an application to join the overlay with a specific nodeID. It is also called if the node's IP address changes.
nodeID | The new nodeID for this node. |
Definition at line 602 of file BaseOverlay.cc.
Referenced by Bamboo::handleFailedNode(), Pastry::handleFailedNode(), Pastry::handleRpcTimeout(), BasePastry::handleRpcTimeout(), Pastry::handleTimerEvent(), NeighborCache::handleTimerEvent(), and Kademlia::routingTimeout().
|
protectedvirtual |
Join another overlay partition with the given node as bootstrap node.
Join another overlay partition with the given node as bootstrap node. This method is called to join a foreign overlay partition and start the merging process.
node | The foreign bootstrap node |
Reimplemented in oversim::Chord.
Definition at line 651 of file BaseOverlay.cc.
|
protectedvirtual |
Join the overlay with a given nodeID in thisNode.key.
Join the overlay with a given nodeID in thisNode.key. This method may be called by an application to join the overlay with a specific nodeID. It is also called if the node's IP address changes.
Reimplemented in oversim::Chord, Gia, Kademlia, oversim::Nice, and Broose.
Definition at line 1706 of file BaseOverlay.cc.
|
virtual |
finds nodes closest to the given OverlayKey
calls findNode() (that should be overridden in derived overlay) and returns a list with (num) nodes ordered by distance to the node defined by key.
key | the given node |
num | number of nodes that are returned |
safe | The safe parameters is not implemented yet |
Definition at line 562 of file BaseOverlay.cc.
Referenced by BaseApp::callLocalLookup().
|
protectedvirtual |
Definition at line 1988 of file BaseOverlay.cc.
|
virtual |
Definition at line 662 of file BaseOverlay.cc.
Referenced by BaseApp::callNeighborSet().
|
protectedvirtual |
Definition at line 2021 of file BaseOverlay.cc.
|
protected |
Sets init stage.
Definition at line 72 of file BaseOverlay.cc.
|
inline |
Definition at line 811 of file BaseOverlay.h.
|
protectedvirtual |
callback-method for events at the NotificationBoard
category | ... TODO ... |
details | ... TODO ... |
Reimplemented in PubSubMMOG.
Definition at line 1055 of file BaseOverlay.cc.
|
protectedvirtual |
Collect overlay specific sent messages statistics.
This method is called from BaseOverlay::sendMessageToUDP() for every overlay message that is sent by a node. Use this to collect statistical data for overlay protocol specific message types.
msg | The overlay message to be sent to the UDP layer |
Reimplemented in Broose, oversim::Koorde, and oversim::Chord.
Definition at line 1098 of file BaseOverlay.cc.
|
privatevirtual |
Hook for forwarded message in recursive lookup mode.
This hook is called just before a message is forwarded to a next hop or if the message is at its destination just before it is sent to the app. Default implementation just returns true. This hook can for example be used to detect failed nodes and call handleFailedNode() before the actual forwarding takes place.
dest | destination node |
msg | message to send |
Reimplemented in Pastry.
Definition at line 1405 of file BaseOverlay.cc.
void BaseOverlay::registerComp | ( | CompType | compType, |
cModule * | module | ||
) |
Definition at line 2053 of file BaseOverlay.cc.
Referenced by BaseApp::initialize(), and BaseRpc::initRpcs().
|
protectedvirtual |
Removes the abstract lookup instance.
lookup | the Lookup to remove |
Definition at line 1681 of file BaseOverlay.cc.
Referenced by IterativeLookup::~IterativeLookup(), and RecursiveLookup::~RecursiveLookup().
|
protectedvirtual |
Routes message through overlay.
The default implementation uses FindNode to determine next hops and a generic greedy routing algorithm provides with SendToKey.
key | destination key |
destComp | the destination component |
srcComp | the source component |
msg | message to route |
sourceRoute | If sourceRoute is given, the message gets sent via all nodes in the list before it is routed (nextHop is used as a proxy) |
routingType | specifies the routing mode (ITERATIVE_ROUTING, ...) |
Definition at line 1354 of file BaseOverlay.cc.
void BaseOverlay::sendMessageToAllComp | ( | cMessage * | msg, |
CompType | srcComp | ||
) |
Definition at line 2089 of file BaseOverlay.cc.
|
virtual |
Sends message to underlay.
dest | destination node |
msg | message to send |
Reimplemented from BaseRpc.
Definition at line 1186 of file BaseOverlay.cc.
Referenced by oversim::Nice::BasicJoinLayer(), oversim::Nice::checkLeaderHeartbeatsForCollisions(), oversim::Nice::ClusterMergeRequest(), Pastry::doJoinUpdate(), Pastry::endProcessingState(), Gia::forwardMessage(), Gia::forwardSearchResponseMessage(), oversim::Nice::handleNiceClusterMergeRequest(), oversim::Nice::handleNiceJoinCluster(), oversim::Nice::handleNiceJoineval(), oversim::Nice::handleNicePingProbe(), oversim::Nice::handleNicePollRp(), oversim::Nice::handleNiceQuery(), oversim::Nice::handleNiceQueryResponse(), oversim::Nice::handleNiceRemove(), Pastry::handleTimerEvent(), Pastry::iterativeJoinHook(), oversim::Nice::JoinCluster(), oversim::Nice::LeaderTransfer(), oversim::Nice::pollRP(), oversim::Nice::Query(), Pastry::recursiveRoutingHook(), Kademlia::recursiveRoutingHook(), oversim::Nice::Remove(), oversim::Nice::sendDataToOverlay(), oversim::Nice::sendHeartbeats(), oversim::Nice::sendHeartbeatTo(), Gia::sendKeyListToNeighbor(), Quon::sendMessage(), Vast::sendMessage(), Gia::sendMessage_DISCONNECT(), Gia::sendMessage_JOIN_ACK(), Gia::sendMessage_JOIN_DNY(), Gia::sendMessage_JOIN_REQ(), Gia::sendMessage_JOIN_RSP(), Gia::sendMessage_UPDATE(), oversim::Nice::sendRemoveTo(), and Gia::sendToken().
|
private |
Definition at line 1144 of file BaseOverlay.cc.
void BaseOverlay::sendToKey | ( | const OverlayKey & | key, |
BaseOverlayMessage * | message, | ||
int | numSiblings = 1 , |
||
const std::vector< TransportAddress > & | sourceRoute = TransportAddress::UNSPECIFIED_NODES , |
||
RoutingType | routingType = DEFAULT_ROUTING |
||
) |
Sends a message to an overlay node, with the generic routing algorithm.
key | The destination key |
message | Message to be sent |
numSiblings | number of siblings to send message to (numSiblings > 1 means multicast) |
sourceRoute | If sourceRoute is given, the message gets sent via all nodes in the list before it is routed (nextHop is used as a proxy) |
routingType | specifies the routing mode (ITERATIVE_ROUTING, ...) |
Definition at line 1411 of file BaseOverlay.cc.
Referenced by Kademlia::recursiveRoutingHook().
|
protected |
Sets the overlay ready icon and register/deregisters the node at the GlobalNodeList.
ready | true if the overlay changed to ready state (joined successfully) |
Definition at line 1103 of file BaseOverlay.cc.
Referenced by BasePastry::baseChangeState(), Gia::changeState(), oversim::Nice::changeState(), MyOverlay::finishOverlay(), Kademlia::handleBucketRefreshTimerExpired(), MyOverlay::joinOverlay(), Kademlia::joinOverlay(), Kademlia::lookupFinished(), and Kademlia::routingInit().
|
privatevirtual |
Overlay implementations can overwrite this virtual method to set a specific nodeID.
The default implementation sets a random nodeID.
Definition at line 657 of file BaseOverlay.cc.
|
friend |
Definition at line 71 of file BaseOverlay.h.
|
friend |
Definition at line 68 of file BaseOverlay.h.
|
friend |
Definition at line 69 of file BaseOverlay.h.
|
friend |
Definition at line 70 of file BaseOverlay.h.
|
friend |
Definition at line 72 of file BaseOverlay.h.
|
private |
Definition at line 770 of file BaseOverlay.h.
|
protected |
pointer to the BootstrapList module
Definition at line 186 of file BaseOverlay.h.
Referenced by BasePastry::baseChangeState(), Gia::changeState(), oversim::Nice::changeState(), Gia::finishOverlay(), BasePastry::finishOverlay(), getBootstrapList(), Quon::handleJoin(), Vast::handleJoin(), and Kademlia::joinOverlay().
|
protected |
number of forwarded app data bytes at out-gate
Definition at line 155 of file BaseOverlay.h.
Referenced by Gia::forwardMessage(), and Gia::forwardSearchResponseMessage().
|
private |
number of received app data bytes (incl. bytes to be forwarded)
Definition at line 127 of file BaseOverlay.h.
|
private |
number of sent app data bytes (incl. forwarded bytes)
Definition at line 120 of file BaseOverlay.h.
|
protected |
number of forwarded app lookup bytes at out-gate
Definition at line 157 of file BaseOverlay.h.
|
private |
number of received app lookup bytes (incl. bytes to be forwarded)
Definition at line 129 of file BaseOverlay.h.
|
private |
number of sent app lookup bytes (incl. forwarded bytes)
Definition at line 122 of file BaseOverlay.h.
|
private |
number of bytes sent for rpc message signatures
Definition at line 138 of file BaseOverlay.h.
|
protected |
number of dropped bytes
Definition at line 211 of file BaseOverlay.h.
Referenced by Gia::forwardMessage(), Gia::forwardSearchResponseMessage(), Gia::getRoute(), and Gia::handleUDPMessage().
|
protected |
Definition at line 168 of file BaseOverlay.h.
|
protected |
Definition at line 166 of file BaseOverlay.h.
|
protected |
Definition at line 164 of file BaseOverlay.h.
|
protected |
Definition at line 162 of file BaseOverlay.h.
|
private |
number of bytes received from same host but different port (SimpleMultiOverlayHost)
Definition at line 136 of file BaseOverlay.h.
|
private |
number of bytes sent to same host but different port (SimpleMultiOverlayHost)
Definition at line 134 of file BaseOverlay.h.
|
protected |
number of forwarded maintenance bytes at out-gate
Definition at line 159 of file BaseOverlay.h.
|
private |
number of received maintenance bytes (incl. bytes to be forwarded)
Definition at line 131 of file BaseOverlay.h.
|
private |
number of sent maintenance bytes (incl. forwarded bytes)
Definition at line 124 of file BaseOverlay.h.
|
protected |
collect delay for single hops
Definition at line 194 of file BaseOverlay.h.
|
private |
Definition at line 838 of file BaseOverlay.h.
|
protected |
simtime when the node has been created
Definition at line 171 of file BaseOverlay.h.
Referenced by oversim::Nice::finishOverlay(), BasePastry::finishOverlay(), Kademlia::finishOverlay(), and getCreationTime().
|
protected |
debug output ?
Definition at line 191 of file BaseOverlay.h.
Referenced by Gia::acceptNode(), Quon::addSite(), Vast::buildVoronoi(), Gia::changeState(), Quon::changeState(), Vast::changeState(), Pastry::checkProxCache(), Quon::deleteSite(), Gia::deliverSearchResult(), Gia::forwardMessage(), Vast::handleAppMessage(), Quon::handleAppMessage(), Vast::handleNodeLeaveNotification(), Pastry::handleStateMessage(), Bamboo::handleStateMessage(), Vast::handleUDPMessage(), Quon::handleUDPMessage(), Pastry::handleUDPMessage(), Gia::handleUDPMessage(), Vast::initializeOverlay(), Pastry::mergeState(), Quon::purgeSites(), Gia::removeNeighbor(), Vast::removeNeighbors(), Vast::sendDiscardNode(), Quon::sendMessage(), Vast::sendMessage(), Quon::sendToApp(), Vast::sendToApp(), and Quon::updateThisSite().
|
protected |
Definition at line 192 of file BaseOverlay.h.
Referenced by Kademlia::handleBucketRefreshTimerExpired(), Pastry::handlePastryJoinCall(), and Kademlia::handleRpcResponse().
|
protected |
statistical output vector for packet-delays
Definition at line 213 of file BaseOverlay.h.
|
protected |
Definition at line 198 of file BaseOverlay.h.
|
protected |
if node is malicious, it tries a findNode attack
Definition at line 201 of file BaseOverlay.h.
|
protected |
if node is malicious, it drops all received BaseRouteMessages
Definition at line 204 of file BaseOverlay.h.
|
protected |
pointer to GlobalNodeList in this node
Definition at line 183 of file BaseOverlay.h.
Referenced by Quon::changeState(), Vast::changeState(), Vast::finishOverlay(), and Gia::handleTimerEvent().
|
protected |
pointer to the GlobalParameters module
Definition at line 187 of file BaseOverlay.h.
|
protected |
maximum hop count
Definition at line 206 of file BaseOverlay.h.
Referenced by Kademlia::handleBucketRefreshTimerExpired(), and Kademlia::handleRpcResponse().
|
protected |
statistical output vector for hop-counts
Definition at line 214 of file BaseOverlay.h.
|
private |
internal overlay state used for setOverlayReady()
Definition at line 839 of file BaseOverlay.h.
|
protected |
if node is malicious, it tries a invalidNode attack
Definition at line 203 of file BaseOverlay.h.
|
protected |
if node is malicious, it tries a isSibling attack
Definition at line 202 of file BaseOverlay.h.
|
protected |
Definition at line 563 of file BaseOverlay.h.
Referenced by Kademlia::handleBucketRefreshTimerExpired(), and Kademlia::initializeOverlay().
|
private |
number of join retries
Definition at line 140 of file BaseOverlay.h.
|
protected |
set this to true, if the overlay provides KBR services
Definition at line 763 of file BaseOverlay.h.
Referenced by Pastry::initializeOverlay(), Bamboo::initializeOverlay(), Kademlia::initializeOverlay(), and providesKbr().
|
protected |
used UDP-port
Definition at line 205 of file BaseOverlay.h.
|
protected |
Definition at line 582 of file BaseOverlay.h.
|
protected |
if true, measure the overhead of signatures in rpc messages
Definition at line 207 of file BaseOverlay.h.
Referenced by getMeasureAuthBlock().
|
protected |
pointer to NotificationBoard in this node
Definition at line 184 of file BaseOverlay.h.
|
protected |
number of forwarded app data packets
Definition at line 154 of file BaseOverlay.h.
Referenced by Gia::forwardMessage(), and Gia::forwardSearchResponseMessage().
|
private |
number of received app data packets (incl. packets to be forwarded )
Definition at line 126 of file BaseOverlay.h.
|
private |
number of sent app data packets (incl. forwarded packets)
Definition at line 119 of file BaseOverlay.h.
|
protected |
number of forwarded app lookup packets
Definition at line 156 of file BaseOverlay.h.
|
private |
number of received app lookup packets (incl. packets to be forwarded)
Definition at line 128 of file BaseOverlay.h.
|
private |
number of sent app loookup packets (incl. forwarded packets)
Definition at line 121 of file BaseOverlay.h.
|
protected |
number of dropped packets
Definition at line 210 of file BaseOverlay.h.
Referenced by Gia::forwardMessage(), Gia::forwardSearchResponseMessage(), Gia::getRoute(), and Gia::handleUDPMessage().
|
protected |
Definition at line 167 of file BaseOverlay.h.
|
protected |
Definition at line 165 of file BaseOverlay.h.
|
protected |
Definition at line 163 of file BaseOverlay.h.
|
protected |
Definition at line 161 of file BaseOverlay.h.
|
private |
number of packets received from same host but different port (SimpleMultiOverlayHost)
Definition at line 135 of file BaseOverlay.h.
|
private |
number of packets sent to same host but different port (SimpleMultiOverlayHost)
Definition at line 133 of file BaseOverlay.h.
|
protected |
number of forwarded maintenance packets
Definition at line 158 of file BaseOverlay.h.
|
private |
number of received maintenance packets (incl. packets to be forwarded)
Definition at line 130 of file BaseOverlay.h.
|
private |
number of sent maintenance packets (incl. forwarded packets)
Definition at line 123 of file BaseOverlay.h.
|
protected |
identifies the overlay this node belongs to (used for multiple overlays)
Definition at line 190 of file BaseOverlay.h.
|
protected |
numRedundantNodes for recursive routing
Definition at line 196 of file BaseOverlay.h.
|
protected |
record visited hops on route
Definition at line 197 of file BaseOverlay.h.
Referenced by Kademlia::initializeOverlay().
|
protected |
Definition at line 564 of file BaseOverlay.h.
|
protected |
Definition at line 199 of file BaseOverlay.h.
|
protected |
if true, a node rejoins with its old nodeId and malicious state
Definition at line 208 of file BaseOverlay.h.
|
protected |
send ACK when receiving route message
Definition at line 195 of file BaseOverlay.h.
|
protected |
needed by KBR protocols for NAT support
Definition at line 200 of file BaseOverlay.h.
|
protected |
Definition at line 169 of file BaseOverlay.h.
|
private |
Definition at line 841 of file BaseOverlay.h.
|
protected |
Definition at line 216 of file BaseOverlay.h.
Referenced by BasePastry::baseChangeState(), Gia::changeState(), oversim::Nice::changeState(), Pastry::changeState(), Bamboo::checkProxCache(), Pastry::checkProxCache(), BasePastry::findNode(), BasePastry::finishOverlay(), Gia::getRoute(), getState(), Vast::handleAppMessage(), Gia::handleAppMessage(), Kademlia::handleBucketRefreshTimerExpired(), Bamboo::handleFailedNode(), Pastry::handleFailedNode(), Vast::handleNodeGracefulLeaveNotification(), Vast::handleNodeLeaveNotification(), Pastry::handlePastryJoinCall(), Pastry::handlePastryJoinResponse(), BasePastry::handleRequestLeafSetCall(), Bamboo::handleRequestLeafSetResponse(), Pastry::handleRequestLeafSetResponse(), BasePastry::handleRequestLeafSetResponse(), Pastry::handleRequestRepairCall(), Pastry::handleRequestRepairResponse(), BasePastry::handleRequestRoutingRowCall(), Pastry::handleRequestRoutingRowResponse(), BasePastry::handleRequestRoutingRowResponse(), Pastry::handleRequestStateCall(), Pastry::handleRequestStateResponse(), Pastry::handleRpcCall(), BasePastry::handleRpcCall(), Kademlia::handleRpcResponse(), Pastry::handleRpcTimeout(), Kademlia::handleRpcTimeout(), BasePastry::handleRpcTimeout(), Pastry::handleStateMessage(), Bamboo::handleStateMessage(), Vast::handleUDPMessage(), Gia::handleUDPMessage(), Kademlia::isSiblingFor(), Kademlia::joinOverlay(), Kademlia::lookupFinished(), Pastry::mergeState(), Pastry::pingResponse(), BasePastry::proxCallback(), Kademlia::routingInit(), and Vast::setBootstrapedIcon().
|
private |
Definition at line 769 of file BaseOverlay.h.
|
protected |
pointer to UnderlayConfigurator in this node
Definition at line 185 of file BaseOverlay.h.
Referenced by MyOverlay::handleTimerEvent().
|
protected |
forward messages to applications?
Definition at line 193 of file BaseOverlay.h.