Rx

Package: inet.linklayer.ieee80211.mac

Rx

simple module

Responsible for checking frames received over the radio for errors, for managing the NAV, and for notifying other processes about the channel state (free or busy).

This is the default implementation of IRx.

Inheritance diagram

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

Properties

Name Value Description
display i=block/rx

Signals

Name Type Unit
packetDropped inet::Packet
navChanged simtime_t

Statistics

Name Title Source Record Unit Interpolation Mode
nav network allocation vector navChanged vector linear

Scheduled messages (observed)

msgkindctrltagsmsgnamecontext
omnetpp::cMessage0NAV

Direct method calls (observed)

call tofunctioninfo
Contentioninet::ieee80211::Contention::corruptedFrameReceivedcorruptedFrameReceived
Contentioninet::ieee80211::Contention::mediumStateChangedmedium BUSY
Contentioninet::ieee80211::Contention::mediumStateChangedmedium FREE

Called methods (observed)

functioninfocall from
inet::ieee80211::Rx::frameTransmittedframeTransmittedTx
inet::ieee80211::Rx::lowerFrameReceivedlowerFrameReceived("%s")Ieee80211Mac
inet::ieee80211::Rx::receivedSignalPartChangedreceivedSignalPartChangedIeee80211Mac
inet::ieee80211::Rx::receptionStateChangedreceptionStateChangedIeee80211Mac
inet::ieee80211::Rx::transmissionStateChangedtransmissionStateChangedIeee80211Mac

Packet operations (observed)

chunkTypepacketAction
peekData
BytesChunkpeekDataAt
Ieee80211MacHeaderpeekAtFront
Ieee80211MacTrailerpeekAtBack

Source code

//
// Responsible for checking frames received over the radio for errors,
// for managing the NAV, and for notifying other processes about the channel
// state (free or busy).
//
// This is the default implementation of ~IRx.
//
simple Rx like IRx
{
    parameters:
        @display("i=block/rx");
        @signal[navChanged](type=simtime_t);
        @signal[packetDropped](type=inet::Packet);
        @statistic[nav](title="network allocation vector"; source=navChanged; record=vector; interpolationmode=linear);
}

File: src/inet/linklayer/ieee80211/mac/Rx.ned