INET Framework for OMNeT++/OMNEST
|
Abstract interface for processes that implement contention-based channel access. More...
#include <IContention.h>
Classes | |
class | ICallback |
Public Member Functions | |
virtual | ~IContention () |
virtual void | startContention (int cw, simtime_t ifs, simtime_t eifs, simtime_t slotTime, ICallback *callback)=0 |
virtual bool | isContentionInProgress ()=0 |
virtual void | mediumStateChanged (bool mediumFree)=0 |
virtual void | corruptedFrameReceived ()=0 |
Abstract interface for processes that implement contention-based channel access.
For each frame, Contention listens on the channel for a DIFS (AIFS) period then for a random backoff period before transmitting the frame, and defers when busy channel is sensed. After receiving a corrupted frame, EIFS is used instead of the original DIFS (AIFS).
Note that waiting for an ACK (or CTS) and initiating the retransmission if it does not arrive is not handled by this process. Instead, that is typically performed by a frame exchange class INET_API inside UpperMac (see IFrameExchange, IUpperMac).
|
pure virtual |
Implemented in inet::ieee80211::Contention.
|
pure virtual |
Implemented in inet::ieee80211::Contention.
Referenced by inet::ieee80211::Edcaf::requestChannel(), and inet::ieee80211::Edcaf::updateDisplayString().
|
pure virtual |
Implemented in inet::ieee80211::Contention.
Referenced by inet::ieee80211::Rx::registerContention().
|
pure virtual |
Referenced by inet::ieee80211::Dcaf::requestChannel(), and inet::ieee80211::Edcaf::requestChannel().