PacketCloner

Package: inet.queueing.common

simple module PacketCloner

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.

inet.queueing.common.PacketClonerPacketClonersimple

Usage diagram

Inheritance diagram

Used in compound modules

Name

Type

Description

TelnetServerConnection

compound module

Contains a configurable pre-composed telnet traffic source and traffic sink as part of a telnet server application.

PacketHistory

compound module

Connects one packet producer to one packet consumer. It can be pushed with packets from the connected packet producer. It keeps a copy of the last N packets pushed into its input. The packets are available in the runtime user interface (Qtenv) for inspection.

Extends

Name

Type

Description

PacketProcessorBase

simple module

Base module for various packet processing modules which maintains a few statistics.

Parameters

Name

Type

Default value

Description

displayStringTextFormat

string

“processed {numProcessedPackets} pk ({processedTotalLength})”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

Properties

Name

Value

Description

class

PacketCloner

display

i=block/star

Gates

Name

Direction

Size

Description

in

input

out [ ]

output

Source code

//
// 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.
//
simple PacketCloner extends PacketProcessorBase like IPassivePacketSink // IActivePacketSource // TODO out gate is vector
{
    parameters:
        @class(PacketCloner);
        @display("i=block/star");
    gates:
        input in @labels(push);
        output out[] @labels(push);
}

File: src/inet/queueing/common/PacketCloner.ned