Package: inet.queueing.base
PacketTaggerBase
simple moduleThis is a base module for various packet tagger modules.
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Known subclasses
Name | Type | Description |
---|---|---|
ContentBasedTagger | simple module |
This module attaches various request tags to packets. |
PacketTagger | simple module |
This module attaches various request tags to packets. |
Extends
Name | Type | Description |
---|---|---|
PacketMarkerBase | simple module |
This is a base module for various packet marker modules. Derived modules must implement a single markPacket() function which marks the individual packets by attaching tags. |
Parameters
Name | Type | Default value | Description |
---|---|---|---|
displayStringTextFormat | string | "tagged %p pk (%l)" |
determines the text that is written on top of the submodule |
dscp | int | -1 |
specifies differentiated services code point |
ecn | int | -1 |
specifies explicit congestion notification |
tos | int | -1 |
if not -1, set the Type Of Service (IPv4) / Traffic Class (IPv6) field of sent packets to this value |
interfaceName | string | "" |
specifies outgoing interface, unused by default |
hopLimit | int | -1 |
specifies network layer TTL, unused by default |
vlanId | int | -1 |
specifies VLAN, unused by default |
pcp | int | -1 |
specifies PCP, unused by default |
userPriority | int | -1 |
specifies user priority, unused by default |
transmissionPower | double | nan W |
specifies signal transmission power, unused by default |
encapsulationProtocols | object | [] |
Properties
Name | Value | Description |
---|---|---|
display | i=block/star | |
class | PacketTaggerBase |
Gates
Name | Direction | Size | Description |
---|---|---|---|
in | input | ||
out | output |
Signals
Name | Type | Unit |
---|---|---|
packetPushedIn | inet::Packet | |
packetPulledIn | inet::Packet | |
packetPushedOut | inet::Packet | |
packetPulledOut | inet::Packet |
Statistics
Name | Title | Source | Record | Unit | Interpolation Mode |
---|---|---|---|---|---|
flowIncomingDataRate | flow specific incoming data rate | throughput(demuxFlow(merge(packetPushedIn, packetPulledIn))) | vector | bps | linear |
outgoingDataRate | outgoing data rate | throughput(merge(packetPushedOut, packetPulledOut)) | vector | bps | linear |
incomingDataRate | incoming data rate | throughput(merge(packetPushedIn, packetPulledIn)) | vector | bps | linear |
outgoingPacketLengths | outgoing packet lengths | packetLength(merge(packetPushedOut, packetPulledOut)) | sum, histogram, vector | b | none |
flowIncomingPacketLengths | flow specific incoming packet lengths | packetLength(demuxFlow(merge(packetPushedIn, packetPulledIn))) | sum, histogram, vector | b | none |
flowOutgoingDataRate | flow specific outgoing data rate | throughput(demuxFlow(merge(packetPushedOut, packetPulledOut))) | vector | bps | linear |
incomingPacketLengths | incoming packet lengths | packetLength(merge(packetPushedIn, packetPulledIn)) | sum, histogram, vector | b | none |
flowOutgoingPacketLengths | flow specific outgoing packet lengths | packetLength(demuxFlow(merge(packetPushedOut, packetPulledOut))) | sum, histogram, vector | b | none |
incomingPackets | incoming packets | merge(packetPushedIn, packetPulledIn) | count | pk | |
outgoingPackets | outgoing packets | merge(packetPushedOut, packetPulledOut) | count | pk |
Source code
// // This is a base module for various packet tagger modules. // simple PacketTaggerBase extends PacketMarkerBase { parameters: int dscp = default(-1); // specifies differentiated services code point int ecn = default(-1); // specifies explicit congestion notification int tos = default(-1); // if not -1, set the Type Of Service (IPv4) / Traffic Class (IPv6) field of sent packets to this value string interfaceName = default(""); // specifies outgoing interface, unused by default int hopLimit = default(-1); // specifies network layer TTL, unused by default int vlanId = default(-1); // specifies VLAN, unused by default int pcp = default(-1); // specifies PCP, unused by default int userPriority = default(-1); // specifies user priority, unused by default double transmissionPower @unit(W) = default(nan W); // specifies signal transmission power, unused by default object encapsulationProtocols = default([]); displayStringTextFormat = default("tagged %p pk (%l)"); @class(PacketTaggerBase); @display("i=block/star"); }File: src/inet/queueing/base/PacketTaggerBase.ned