Package: inet.queueing.base
ActivePacketSinkBase
simple moduleThis is a base module for various active packet sink modules.
See also: PacketSinkBase
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Known subclasses
Name | Type | Description |
---|---|---|
ActivePacketSink | simple module |
This module is an active packet sink which pulls packets from the connected packet provider. All pulled packets are counted and deleted. |
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 | "received %p pk (%l)" |
determines the text that is written on top of the submodule |
Properties
Name | Value | Description |
---|---|---|
display | i=block/sink | |
class | ActivePacketSinkBase |
Signals
Name | Type | Unit |
---|---|---|
packetPulled | inet::Packet |
Statistics
Name | Title | Source | Record | Unit | Interpolation Mode |
---|---|---|---|---|---|
packetDelayVariation | packet delay variation | stddev(weightedMeanPerGroup(groupRegionsPerPacket(lifeTimePerRegion(packetPulled)))) | vector, histogram | s | |
packetDelayDifferenceToMean | packet delay difference to mean | differenceToMean(weightedMeanPerGroup(groupRegionsPerPacket(lifeTimePerRegion(packetPulled)))) | vector, histogram | s | none |
meanBitLifeTimePerPacket | mean bit life time per packet | weightedMeanPerGroup(groupRegionsPerPacket(lifeTimePerRegion(packetPulled))) | vector, histogram | s | none |
packetLengths | packet lengths | packetLength(packetPulled) | sum, histogram, vector | b | none |
dataRate | data rate | throughput(packetPulled) | vector | bps | linear |
packetJitter | packet jitter | jitter(weightedMeanPerGroup(groupRegionsPerPacket(lifeTimePerRegion(packetPulled)))) | vector, histogram | s | none |
bitLifeTime | bit life time | weightTimes(lengthWeightedValuePerRegion(lifeTimePerRegion(packetPulled))) | histogram? | s | none |
packets | packets | packetPulled | count | pk |
Source code
// // This is a base module for various active packet sink modules. // // @see ~PacketSinkBase // simple ActivePacketSinkBase extends PacketSinkBase { parameters: @class(ActivePacketSinkBase); @signal[packetPulled](type=inet::Packet); // the statistical value is the packet @statistic[packets](title="packets"; source=packetPulled; record=count; unit=pk); // the statistical value is the length of the packet @statistic[packetLengths](title="packet lengths"; source=packetLength(packetPulled); record=sum,histogram,vector; unit=b; interpolationmode=none); // the statistical value is the data rate of the packets @statistic[dataRate](title="data rate"; source=throughput(packetPulled); record=vector; unit=bps; interpolationmode=linear); // the statistical value is the time difference of the current simulation time and the creation time of the bit @statistic[bitLifeTime](title="bit life time"; source=weightTimes(lengthWeightedValuePerRegion(lifeTimePerRegion(packetPulled))); record=histogram?; unit=s; interpolationmode=none); // the statistical value is the time difference of the current simulation time and the creation time of any bit in the region @statistic[meanBitLifeTimePerPacket](title="mean bit life time per packet"; source=weightedMeanPerGroup(groupRegionsPerPacket(lifeTimePerRegion(packetPulled))); record=vector,histogram; unit=s; interpolationmode=none); // the statistical value is the difference of subsequent values of the mean bit elapsed time per packet @statistic[packetJitter](title="packet jitter"; source=jitter(weightedMeanPerGroup(groupRegionsPerPacket(lifeTimePerRegion(packetPulled)))); record=vector,histogram; unit=s; interpolationmode=none); // the statistical value is the difference of the current and the mean bit elapsed time per packet @statistic[packetDelayDifferenceToMean](title="packet delay difference to mean"; source=differenceToMean(weightedMeanPerGroup(groupRegionsPerPacket(lifeTimePerRegion(packetPulled)))); record=vector,histogram; unit=s; interpolationmode=none); // the statistical value is the variation of the mean bit elapsed time per packet @statistic[packetDelayVariation](title="packet delay variation"; source=stddev(weightedMeanPerGroup(groupRegionsPerPacket(lifeTimePerRegion(packetPulled)))); record=vector,histogram; unit=s); }File: src/inet/queueing/base/ActivePacketSinkBase.ned