WiFiMAC Tutorial - Experiment 7

Asked by kharny on 2009-11-17

Hello,
the file RateAdaptation.py from the directory "~/myFirstCampaign/sandbox/opt/lib/PyConfig/wifimac/lowerMAC" defines
the class OpportunisticwithMIMO. Unfortunately, i cannot understand what the lines

    phyModeIncreaseOnAntennaDecrease = 3
    phyModeDecreaseOnAntennaIncrease = 3

stand for. In fact, it's possible to see the definitions of parameters but till now, i haven't find the place, where the operations using this parameters are described. I'd like to know, how the class OpportunisticwithMIMO works!
Thanks for helping me out
kharny

----------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
class Opportunistic:
    __plugin__ = 'Opportunistic'

    perForGoingDown = 0.25
    """ if the per is above this value, then the next lower phy mode will be used """
    perForGoingUp = 0.01
    """ if the per is below this value, then the next higher phy mode will be used """
    initialPhyMode = None

    def __init__(self, phyMode = None):
        if(phyMode is None):
            self.initialPhyMode = wifimac.convergence.PhyMode.IEEE80211a().getLowest()
        else:
            self.initialPhyMode = phyMode

class OpportunisticwithMIMO(Opportunistic):
    __plugin__ = 'OpportunisticwithMIMO'

    phyModeIncreaseOnAntennaDecrease = 3
    phyModeDecreaseOnAntennaIncrease = 3
----------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------

http://docs.openwns.org/usersGuide/modules/dll/wifimac/experiment7.html

Question information

Language:
English Edit question
Status:
Solved
For:
openWNS SDK Edit question
Assignee:
No assignee Edit question
Solved by:
kharny
Solved:
2009-11-17
Last query:
2009-11-17
Last reply:
2009-11-17
Sebastian Max (smx-comnets) said : #1

Hi kharny,

> stand for. In fact, it's possible to see the definitions of
> parameters but till now, i haven't find the place, where the
> operations using this parameters are described. I'd like to know, how
> the class OpportunisticwithMIMO works!

I admit that the documentation is not really helpful at this part. For a
start, you can take a look at the implementation of
OpportunisticwithMIMO.hpp/cpp, which can be found in the directory

modules/dll/wifimac/src/draftn/rateAdaptationStrategies/

BR,
Sebastian

kharny (kharny) said : #2

Thanks Sebastian,
that's exactly what i was looking for
kharny

Hi,

trying to find out where a parameter is used is a common task in
openWNS. We therefore provide the simple script "insource":

[mue@beast] wifimac: ../../../bin/insource phyModeIncreaseOnAntennaDecrease
src/draftn/rateAdaptationStrategies/OpportunisticwithMIMO.cpp:51:
phyModeIncreaseOnAntennaDecrease(_config.get<unsigned
int>("phyModeIncreaseOnAntennaDecrease")),
src/draftn/rateAdaptationStrategies/OpportunisticwithMIMO.cpp:132:
for(int i = 0; i < phyModeIncreaseOnAntennaDecrease; ++i)
src/draftn/rateAdaptationStrategies/OpportunisticwithMIMO.hpp:92:
const unsigned int phyModeIncreaseOnAntennaDecrease;
PyConfig/wifimac/lowerMAC/RateAdaptation.py:63:
phyModeIncreaseOnAntennaDecrease = 3

it has to be called from the root directory of a module and searches all
cpp, hpp, and py files for the string.

Greats,

Maciej Muehleisen

kharny wrote:
> New question #90566 on openWNS SDK:
> https://answers.launchpad.net/openwns-sdk/+question/90566
>
>
> Hello,
> the file RateAdaptation.py from the directory "~/myFirstCampaign/sandbox/opt/lib/PyConfig/wifimac/lowerMAC" defines
> the class OpportunisticwithMIMO. Unfortunately, i cannot understand what the lines
>
>
> phyModeIncreaseOnAntennaDecrease = 3
> phyModeDecreaseOnAntennaIncrease = 3
>
> stand for. In fact, it's possible to see the definitions of parameters but till now, i haven't find the place, where the operations using this parameters are described. I'd like to know, how the class OpportunisticwithMIMO works!
> Thanks for helping me out
> kharny
>
>
> ----------------------------------------------------------------------------------------
> ----------------------------------------------------------------------------------------
> class Opportunistic:
> __plugin__ = 'Opportunistic'
>
> perForGoingDown = 0.25
> """ if the per is above this value, then the next lower phy mode will be used """
> perForGoingUp = 0.01
> """ if the per is below this value, then the next higher phy mode will be used """
> initialPhyMode = None
>
> def __init__(self, phyMode = None):
> if(phyMode is None):
> self.initialPhyMode = wifimac.convergence.PhyMode.IEEE80211a().getLowest()
> else:
> self.initialPhyMode = phyMode
>
>
> class OpportunisticwithMIMO(Opportunistic):
> __plugin__ = 'OpportunisticwithMIMO'
>
> phyModeIncreaseOnAntennaDecrease = 3
> phyModeDecreaseOnAntennaIncrease = 3
> ----------------------------------------------------------------------------------------
> ----------------------------------------------------------------------------------------
>
> http://docs.openwns.org/usersGuide/modules/dll/wifimac/experiment7.html
>
>
>

kharny (kharny) said : #4

Thanks Maciej,
this information will definitely help the next time i'll be looking at a parameter.
Thanks one more time
Regards
kharny