Simple Module GIASearchApp

Package: oversim.applications.giasearchapp
File: src/applications/giasearchapp/GIASearchApp.ned

C++ definition

Test application for testing GIA search-protocol

Author: Robert Palmer, Bernhard Heep

GIASearchApp

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Extends:

BaseApp (simple module)

Base class for application implementations

Used in compound modules:

If a module type shows up more than once, that means it has been defined in more than one NED file.

GIASearchAppModules (compound module)

Compound module for a search application using the GIA search interface

Parameters:

Name Type Default value Description
rpcUdpTimeout double

default timeout value for direct RPCs

rpcKeyTimeout double

default timeout value for routed RPCs

optimizeTimeouts bool

calculate timeouts from measured RTTs and network coordinates

rpcExponentialBackoff bool

if true, doubles the timeout for every retransmission

debugOutput bool

enable debug output

messageDelay double

interval for sending route or search messages

randomNodes bool

use random destination nodes or only nodes from GlobalNodeList

maximumKeys int

maximum number of keys for this application

maxResponses int

maximum number of responses per search message

activeNetwInitPhase bool

send messages when network is in init phase?

Properties:

Name Value Description
class GIASearchApp
display i=block/app

Gates:

Name Direction Size Description
udpIn input

gate from the UDP layer

from_lowerTier input

gate from the lower tier

from_upperTier input

gate from the upper tier

direct_in input

gate for sendDirect

trace_in input

gate for trace file commands

udpOut output

gate to the UDP layer

to_lowerTier output

gate to the lower tier

to_upperTier output

gate to the upper tier

Source code:

//
// Test application for testing GIA search-protocol
//
// @author Robert Palmer, Bernhard Heep
//
simple GIASearchApp extends BaseApp
{
    parameters:
        @class(GIASearchApp);
        double messageDelay @unit(s);    // interval for sending route or search messages
        bool randomNodes;    // use random destination nodes or only nodes from GlobalNodeList
        int maximumKeys;    // maximum number of keys for this application
        int maxResponses;    // maximum number of responses per search message
        bool activeNetwInitPhase;    // send messages when network is in init phase?
}