PacketProcessorBase

Package: inet.queueing.base

PacketProcessorBase

simple module

This is a base module for various packet processing modules which maintains a few statistics.

Available display string text format directives:

  • %p - number of processed packets
  • %l - processed total packet length
PacketProcessorBase

Inheritance diagram

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

Known subclasses

Name Type Description
PacketCloner simple module

This module connects one packet producer to one packet consumer. It can be pushed with packets from the connected packet producer. When this happens, a separate copy of the packet is pushed to each output gate.

PacketDelayer simple module

This module connects one packet producer to one packet consumer. It can be pushed with packets from the connected packet producer. When this happens, the packet is delayed and eventually pushed to the output. Note that the order of packets may change if the delay parameter is configured to be a distribution.

PacketDemultiplexer simple module

This module connects multiple packet collectors to one packet provider. When a packet is popped by one of the connected packet collectors, then the demultiplexer simply pops a packet from the connected packet provider.

PacketDuplicator simple module

This module connects one packet producer to one packet consumer. It can be pushed with packets from the connected packet producer. When this happens, one or more copy of the packet is pushed to the output gate.

PacketFilterBase simple module

This is a base module for various packet filter modules. Derived modules must implement a single packet matcher function which determines if a packet is to be passed through or filtered out.

PacketGate simple module

This module allows or forbids packets to pass through depending on whether the gate is open or closed.

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.

PacketMeterBase simple module

This is a base module for various packet meter modules. Derived modules must implement a single meterPacket() function which meters the flow of and attaches the required tags.

PacketSchedulerBase simple module

This is a base module for various packet scheduler modules. Derived modules must implement a single packet scheduler function which determines the index of the input gate for the popped packet.

PacketSinkBase simple module

This is a base module for various packet sink modules.

PacketSourceBase simple module

This is a base module for various packet source modules. Packets are created randomly with regard to packet length and packet data. The representation of packet data can also be configured.

PacketTaggerBase simple module

This is a base module for various packet tagger modules.

Parameters

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

determines the text that is written on top of the submodule

Source code

//
// This is a base module for various packet processing modules which maintains
// a few statistics.
//
// Available display string text format directives:
// - %p - number of processed packets
// - %l - processed total packet length
//
simple PacketProcessorBase
{
    parameters:
        string displayStringTextFormat = default("processed %p pk (%l)"); // determines the text that is written on top of the submodule
}
File: src/inet/queueing/base/PacketProcessorBase.ned