Simple Module ChurnGenerator

Package: oversim.common
File: src/common/ChurnGenerator.ned

C++ definition

ChurnGenerator base module

ChurnGenerator

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.

Known subclasses:

LifetimeChurn (simple module) (no description)
NoChurn (simple module)

No churn generating class (only bootstraps a networks)

ParetoChurn (simple module)

Lifetime churn based on shifted pareto distribution

RandomChurn (simple module)

Random churn generating module

TraceChurn (simple module) (no description)

Networks:

InetUnderlayNetwork (network)

The InetUnderlay ned-file

See also: InetUnderlayConfigurator

SimpleUnderlayNetwork (network)

The SimpleUnderlay ned-file

See also: SimpleUnderlayConfigurator

SingleHostUnderlayNetwork (network)

The SingleHostUnderlay ned-file

See also: SingleHostUnderlayConfigurator

Parameters:

Name Type Default value Description
targetOverlayTerminalNum int

number of nodes after init phase

initPhaseCreationInterval double

node creation interval in init phase

noChurnThreshold double

if the lifetimeMean of a specific churn generator exceeds this, NoChurn is used instead

overlayType string

the overlay used in the simulation

channelTypes string

used (tx) access technologies (from common/channels.ned)

channelTypesRx string

used (rx) access technologies (from common/channels.ned)

tier1Type string

the application on top of the overlay used in the simulation

tier2Type string

the module type on top of tier 1

tier3Type string

the module type on top of tier 2

Properties:

Name Value Description
display i=block/timer

Source code:

//
// ChurnGenerator base module
//
simple ChurnGenerator
{
    parameters:
        int targetOverlayTerminalNum; // number of nodes after init phase
        double initPhaseCreationInterval @unit(s); // node creation interval in init phase
        double noChurnThreshold @unit(s); // if the lifetimeMean of a specific
                                          // churn generator exceeds this,
                                          // NoChurn is used instead
        string overlayType; // the overlay used in the simulation
        string channelTypes;   // used (tx) access technologies (from common/channels.ned)
        string channelTypesRx; // used (rx) access technologies (from common/channels.ned)
        string tier1Type; // the application on top of the overlay used in the simulation
        string tier2Type; // the module type on top of tier 1
        string tier3Type; // the module type on top of tier 2
        @display("i=block/timer");
}