|
OverSim
|
Gia search test application. More...
#include <GIASearchApp.h>
Public Member Functions | |
| GIASearchApp () | |
| virtual | ~GIASearchApp () |
Public Member Functions inherited from BaseApp | |
| BaseApp () | |
| virtual | ~BaseApp () |
| virtual destructor | |
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) |
Protected Member Functions | |
| virtual void | initializeApp (int stage) |
| initializes base class-attributes | |
| void | handleLowerMessage (cMessage *msg) |
| processes self-messages | |
| virtual void | handleTimerEvent (cMessage *msg) |
| virtual void | finishApp () |
| collects statistical data | |
Protected Member Functions inherited from BaseApp | |
| int | numInitStages () const |
| method to set InitStage | |
| void | initialize (int stage) |
| initializes base class-attributes | |
| void | handleMessage (cMessage *msg) |
| checks for message type and calls corresponding method | |
| 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. | |
| void | finish () |
| collects statistical data | |
| void | callRoute (const OverlayKey &key, cPacket *msg, const TransportAddress &hint=TransportAddress::UNSPECIFIED_NODE, RoutingType routingType=DEFAULT_ROUTING) |
| Common API function: calls route-method in overlay. | |
| void | callRoute (const OverlayKey &key, cPacket *msg, const std::vector< TransportAddress > &sourceRoute, RoutingType routingType=DEFAULT_ROUTING) |
| virtual void | deliver (OverlayKey &key, cMessage *msg) |
| Common API function: handles delivered messages from overlay. | |
| virtual void | forward (OverlayKey *key, cPacket **msg, NodeHandle *nextHopNode) |
| Common API function: handles messages from overlay to be forwarded. | |
| virtual void | update (const NodeHandle &node, bool joined) |
| Common API function: informs application about neighbors and own nodeID. | |
| NodeVector * | callLocalLookup (const OverlayKey &key, int num, bool safe) |
| Common API function: produces a list of nodes that can be used as next hops towards key. | |
| NodeVector * | callNeighborSet (int num) |
| Common API function: produces a list of neighbor nodes. | |
| 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 void | handleUpperMessage (cMessage *msg) |
| handleUpperMessage gets called of handleMessage(cMessage* msg) if msg arrivedOn from_upperTier (currently msg gets deleted in this function) | |
| virtual void | handleUDPMessage (cMessage *msg) |
| method to handle messages that come directly from the UDP gate | |
| virtual void | handleReadyMessage (CompReadyMessage *msg) |
| method to handle ready messages from the overlay | |
| virtual void | bindToPort (int port) |
| Tells UDP we want to get all packets arriving on the given port. | |
| virtual void | sendMessageToUDP (const TransportAddress &destAddr, cPacket *msg, simtime_t delay=SIMTIME_ZERO) |
| Sends a packet over UDP. | |
| virtual void | handleTraceMessage (cMessage *msg) |
| handleTraceMessage gets called of handleMessage(cMessage* msg) if a message arrives at trace_in. | |
| void | sendMessageToLowerTier (cPacket *msg) |
| sends non-commonAPI message to the lower tier | |
| 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 | internalSendRouteRpc (BaseRpcMessage *message, const OverlayKey &destKey, const std::vector< TransportAddress > &sourceRoute, RoutingType routingType) |
| virtual CompType | getThisCompType () |
| Return the component type of this module. | |
| void | sendReadyMessage (bool ready=true, const OverlayKey &nodeId=OverlayKey::UNSPECIFIED_KEY) |
Protected Member Functions inherited from BaseRpc | |
| virtual void | internalHandleRpcTimeout (BaseCallMessage *msg, const TransportAddress &dest, cPolymorphic *context, int rpcId, const OverlayKey &destKey) |
| Handles rpc timeouts internal in base classes | |
| 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 Attributes | |
| SearchMsgBookkeeping * | srMsgBook |
| pointer to Search-Message-Bookkeeping-List in this node | |
| double | mean |
| mean interval for next message | |
| double | deviation |
| deviation of mean interval | |
| bool | randomNodes |
| use random destination nodes or only nodes from GlobalNodeList? | |
| int | maxResponses |
| maximum number of responses per search message | |
| int | msgByteLength |
| int | stat_keyListMessagesSent |
| number of keyList-Messages sent | |
| int | stat_keyListBytesSent |
| number of keyList-Bytes sent | |
| int | stat_searchMessagesSent |
| number of search-Messages sent | |
| int | stat_searchBytesSent |
| number of search-Messages-Bytes sent | |
| int | stat_searchResponseMessages |
| number of received search-Response-Messages | |
| int | stat_searchResponseBytes |
| number of received search-Response-Messages-Bytes | |
| cMessage * | search_timer |
| timer for search messages | |
| cMessage * | keyList_timer |
| timer for initial key list packet to overlay | |
Protected Attributes inherited from BaseApp | |
| UnderlayConfigurator * | underlayConfigurator |
| pointer to UnderlayConfigurator in this node | |
| GlobalNodeList * | globalNodeList |
| pointer to GlobalNodeList in this node | |
| GlobalStatistics * | globalStatistics |
| pointer to GlobalStatistics module in this node | |
| NotificationBoard * | notificationBoard |
| pointer to NotificationBoard in this node | |
| bool | debugOutput |
| debug output yes/no? | |
| int | numOverlaySent |
| number of sent packets to overlay | |
| int | bytesOverlaySent |
| number of sent bytes to overlay | |
| int | numOverlayReceived |
| number of received packets from overlay | |
| int | bytesOverlayReceived |
| number of received bytes from overlay | |
| int | numUdpSent |
| number of sent packets to UDP | |
| int | bytesUdpSent |
| number of sent bytes to UDP | |
| int | numUdpReceived |
| number of received packets from UDP | |
| int | bytesUdpReceived |
| number of received bytes from UDP | |
| simtime_t | creationTime |
| simTime when the App has been created | |
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 |
Static Protected Attributes | |
| static const uint32_t | ID_L = 16 |
| static const uint32_t | SEQNUM_L = 16 |
Private Attributes | |
| std::vector< OverlayKey > * | keyList |
| list of all maintained key of this application | |
Additional Inherited Members | |
Public Types inherited from BaseTcpSupport | |
| enum | EvCode { NO_EST_CONNECTION, PEER_CLOSED, PEER_TIMEDOUT, PEER_REFUSED, CONNECTION_RESET, CONNECTION_SUCC_ClOSED } |
Gia search test application.
Gia search test application, sends periodically SEARCH-Messages and collects statistical data.
Definition at line 45 of file GIASearchApp.h.
| GIASearchApp::GIASearchApp | ( | ) |
Definition at line 37 of file GIASearchApp.cc.
|
virtual |
Definition at line 43 of file GIASearchApp.cc.
|
protectedvirtual |
collects statistical data
Reimplemented from BaseApp.
Definition at line 178 of file GIASearchApp.cc.
|
protectedvirtual |
processes self-messages
method to handle self-messages should be overwritten in derived application if needed
| msg | self-message method to handle non-commonAPI messages from the overlay |
| msg | message to handle |
Reimplemented from BaseApp.
Definition at line 154 of file GIASearchApp.cc.
|
protectedvirtual |
Reimplemented from BaseRpc.
Definition at line 83 of file GIASearchApp.cc.
|
protectedvirtual |
initializes base class-attributes
| stage | the init stage |
Reimplemented from BaseApp.
Definition at line 53 of file GIASearchApp.cc.
|
protected |
deviation of mean interval
Definition at line 77 of file GIASearchApp.h.
Referenced by handleTimerEvent(), and initializeApp().
|
staticprotected |
Definition at line 82 of file GIASearchApp.h.
|
private |
list of all maintained key of this application
Definition at line 53 of file GIASearchApp.h.
Referenced by handleTimerEvent().
|
protected |
timer for initial key list packet to overlay
Definition at line 95 of file GIASearchApp.h.
Referenced by GIASearchApp(), handleTimerEvent(), initializeApp(), and ~GIASearchApp().
|
protected |
maximum number of responses per search message
Definition at line 79 of file GIASearchApp.h.
Referenced by handleTimerEvent(), and initializeApp().
|
protected |
mean interval for next message
Definition at line 76 of file GIASearchApp.h.
Referenced by handleTimerEvent(), and initializeApp().
|
protected |
Definition at line 84 of file GIASearchApp.h.
|
protected |
use random destination nodes or only nodes from GlobalNodeList?
Definition at line 78 of file GIASearchApp.h.
Referenced by initializeApp().
|
protected |
timer for search messages
Definition at line 94 of file GIASearchApp.h.
Referenced by GIASearchApp(), handleTimerEvent(), initializeApp(), and ~GIASearchApp().
|
staticprotected |
Definition at line 83 of file GIASearchApp.h.
|
protected |
pointer to Search-Message-Bookkeeping-List in this node
Definition at line 73 of file GIASearchApp.h.
Referenced by finishApp(), GIASearchApp(), handleLowerMessage(), handleTimerEvent(), initializeApp(), and ~GIASearchApp().
|
protected |
number of keyList-Bytes sent
Definition at line 88 of file GIASearchApp.h.
Referenced by handleTimerEvent(), and initializeApp().
|
protected |
number of keyList-Messages sent
Definition at line 87 of file GIASearchApp.h.
Referenced by handleTimerEvent(), and initializeApp().
|
protected |
number of search-Messages-Bytes sent
Definition at line 90 of file GIASearchApp.h.
Referenced by handleTimerEvent(), and initializeApp().
|
protected |
number of search-Messages sent
Definition at line 89 of file GIASearchApp.h.
Referenced by handleTimerEvent(), and initializeApp().
|
protected |
number of received search-Response-Messages-Bytes
Definition at line 92 of file GIASearchApp.h.
Referenced by handleLowerMessage(), and initializeApp().
|
protected |
number of received search-Response-Messages
Definition at line 91 of file GIASearchApp.h.
Referenced by handleLowerMessage(), and initializeApp().