ICloudDelayer

Package: inet.networklayer.internetcloud

ICloudDelayer

module interface

Delay module interface for InternetCloud.

Delays or drops the packets based on which interface card the packet has arrived on and on which interface it is leaving the cloud. This module registers self to ~Ipv4 module as an INetfilter::IHook hook and uses the datagramForwardHook for delay/drop packets.

<b>See also:</b> ~InternetCloud

Inheritance diagram

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

Implemented by

Name Type Description
MatrixCloudDelayer simple module

Delay module for ~InternetCloud. This is essentially equivalent to a full graph with edges being differently configured DatarateChannel's. It delays and/or drops incoming packets based on rules specified in an xml configuration.

Used in compound modules

Name Type Description
InternetCloud compound module

InternetCloud models a large network such as part of the Internet or a corporate backbone network with realistic delay, packet loss, and datarate characteristics. It abstracts away the internal structure of the network while preserving the end-to-end behavior that applications would experience.

Parameters

Name Type Default value Description
networkProtocolModule string

Properties

Name Value Description
display i=block/delay

Source code

//
// Delay module interface for `InternetCloud`.
//
// Delays or drops the packets based on which interface card the packet
// has arrived on and on which interface it is leaving the cloud.
// This module registers self to ~Ipv4 module as an INetfilter::IHook hook
// and uses the `datagramForwardHook` for delay/drop packets.
//
// @see ~InternetCloud
//
moduleinterface ICloudDelayer
{
    parameters:
        string networkProtocolModule;
        @display("i=block/delay");
}

File: src/inet/networklayer/internetcloud/ICloudDelayer.ned