inet-framework / inet

INET Framework for the OMNeT++ discrete event simulator
https://inet.omnetpp.org
Other
429 stars 482 forks source link

The 802.11 model should avoid extracting the pending frame if not strictly necessary #411

Open levy opened 5 years ago

levy commented 5 years ago

In the case of single protection mechanism without txop, there's no need to look at the pending frame which is the one right after the next to be transmitted. Otherwise, the performance might be suboptimal, because the pending frame is extracted too early from the pending queue into the in-progress queue, and there's no way to modify or replace the frame later.

For example, when aggregation is used, extracting the pending frame unnecessarily early might result in suboptimal performance. The reason is that there are less number of frames in the pending queue at the time of extraction than at a later moment. In contrast, for protection during a txop where owning the channel is a must, extracting the pending frame is absolutely necessary.

levy commented 5 years ago

Hmm, I might be wrong about the single protection mechanism. Looking at the code revealed that when it is used in a txop, it must protect for the pending data frame according to the specification.