PacketTransmitter

Package: inet.protocolelement.transceiver

PacketTransmitter

simple module

This module receives packets from the upper layer as a whole. It also sends signals to the transmission medium (wire) as a whole.

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
InterfaceService compound module (no description)

Extends

Name Type Description
PacketTransmitterBase simple module (no description)

Parameters

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

determines the text that is written on top of the submodule

clockModule string ""

relative path of a module that implements IClock; optional

datarate double

Properties

Name Value Description
display i=block/wtx
class PacketTransmitter

Gates

Name Direction Size Description
in input
out output

Signals

Name Type Unit
transmissionStarted inet::physicallayer::Signal
transmissionEnded inet::physicallayer::Signal

Statistics

Name Title Source Record Unit Interpolation Mode
transmissionTime transmission time packetDuration(transmissionEnded) vector, histogram s none
flowTransmissionTime flow transmission time packetDuration(demuxFlow(transmissionEnded)) vector, histogram s none
transmitting transmitting state count(transmissionStarted) - count(transmissionEnded) vector sample-hold
utilization utilization 100 * utilization(count(transmissionStarted) - count(transmissionEnded)) vector, histogram % linear
propagationTime propagation time s
throughput throughput throughput(transmissionEnded) vector, histogram bps linear

Scheduled messages (observed)

msgkindctrltagsmsgnamecontext
ClockEvent0TxEndTimer

Direct method calls (observed)

call tofunctioninfo
Gptpinet::Gptp::receiveSignaltransmissionEnded
Ieee8021qCreditBasedShaperinet::queueing::CreditBasedGate::receiveSignaltransmissionEnded
Ieee8021qCreditBasedShaperinet::queueing::CreditBasedGate::receiveSignaltransmissionStarted
EthernetPhyHeaderInserterinet::physicallayer::EthernetPhyHeaderInserter::handlePushPacketProcessedhandlePushPacketProcessed
InterpacketGapInserterinet::InterpacketGapInserter::handleCanPushPacketChangedhandleCanPushPacketChanged
PacketEmitterinet::PacketEmitter::handleCanPushPacketChangedhandleCanPushPacketChanged
PacketEmitterinet::PacketEmitter::handlePushPacketProcessedhandlePushPacketProcessed

Called methods (observed)

functioninfocall from
inet::PacketTransmitter::handleOperationStagehandleOperationStageScenarioManager
inet::PacketTransmitter::pushPacketpushPacketInterpacketGapInserter, PacketEmitter

Outgoing messages (observed)

gatemsgkindctrldestModuletags
outSignal0PacketReceiver

Pushed in messages (observed)

gatemsgkindctrlsrcModuletags
inPacket0InterpacketGapInserterDirectionTag, InterfaceReq, MacAddressReq, PacketProtocolTag, DispatchProtocolInd?, EncapsulationProtocolReq?, MulticastReq?, NetworkProtocolInd?, TransportProtocolInd?
inPacket0PacketEmitterDirectionTag, InterfaceReq, MacAddressReq, PacketProtocolTag, CreditGateTag?, DispatchProtocolInd?, DropEligibleInd?, DropEligibleReq?, EcnInd?, EligibilityTimeTag?, EncapsulationProtocolReq?, Ieee802SapReq?, InterfaceInd?, MulticastReq?, NetworkProtocolInd?, PcpInd?, PcpReq?, SequenceNumberInd?, SocketReq?, StreamReq?, TransportProtocolInd?, UserPriorityInd?, UserPriorityReq?, VlanInd?, VlanReq?

Shared Tagging operations (observed)

tagTypetagAction
clearTags
PacketProtocolTagaddTag, removeTagIfPresent

Region Tagging operations (observed)

tagTypetagAction
FlowTagmapAllTags
PacketEventTagmapAllTagsForUpdate
PropagationTimeTagmapAllTagsForUpdate
TransmissionTimeTagmapAllTagsForUpdate

Source code

//
// This module receives packets from the upper layer as a whole. It also sends
// signals to the transmission medium (wire) as a whole.
//
simple PacketTransmitter extends PacketTransmitterBase like IPacketTransmitter
{
    parameters:
        @class(PacketTransmitter);
}
File: src/inet/protocolelement/transceiver/PacketTransmitter.ned