PassivePacketSink

Package: inet.queueing.sink

PassivePacketSink

simple module

This module is a passive packet sink which is pushed with packets by the connected packet producer. All pushed packets are counted and deleted.

PassivePacketSink

Inheritance diagram

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

Used in compound modules

Name Type Description
DiffservQueue compound module

This is an example queue, that can be used in interfaces of DS core and edge nodes to support the AFxy (RFC 2597) and EF (RFC 3246) PHBs.

Extends

Name Type Description
PacketSinkBase simple module

This is a base module for various packet sink modules.

Parameters

Name Type Default value Description
displayStringTextFormat string "dropped %p pk (%l)"

determines the text that is written on top of the submodule

consumptionInterval double 0s

elapsed time between subsequent packets allowed to be pushed by the connected packet producer, 0 means any number of packets can be pushed at the same simulation time

Properties

Name Value Description
display i=block/sink
class PassivePacketSink

Gates

Name Direction Size Description
in input

Signals

Name Type Unit
packetPushed inet::Packet

Statistics

Name Title Source Record Unit Interpolation Mode
packetPushed packets pushed count, sum(packetBytes), vector(packetBytes) none

Source code

//
// This module is a passive packet sink which is pushed with packets by the
// connected packet producer. All pushed packets are counted and deleted.
//
simple PassivePacketSink extends PacketSinkBase like IPassivePacketSink
{
    parameters:
        volatile double consumptionInterval @unit(s) = default(0s); // elapsed time between subsequent packets allowed to be pushed by the connected packet producer, 0 means any number of packets can be pushed at the same simulation time
        @class(PassivePacketSink);
        @signal[packetPushed](type=inet::Packet);
        @statistic[packetPushed](title="packets pushed"; record=count,sum(packetBytes),vector(packetBytes); interpolationmode=none);
    gates:
        input in @labels(push);
}

File: src/inet/queueing/sink/PassivePacketSink.ned