Station-wise delay output

Asked by Nikola

Hello!

I would like to ask whether there is a possibility to get a stationwise delay output form the simulation. Now by default there is only the overall delay, but I would like to have the delay at each station.

Is this possible?

Thanks in advance!

Best regards,
Nikola

Question information

Language:
English Edit question
Status:
Solved
For:
openWNS WiFiMAC Edit question
Assignee:
No assignee Edit question
Solved by:
Sebastian Max
Solved:
Last query:
Last reply:
Revision history for this message
Sebastian Max (smx-comnets) said :
#1

Hi Nikola,

Could you please specify "delay output"?

BR,
Sebastian

Revision history for this message
Nikola (nkz) said :
#2

Hi Sebastian,

I would like to have the incoming packet delay for each station. In other words to have a "wifimac.e2e.packet.incoming.delay_dl_PDF.dat" for each station, because as far as I understand now this .dat file gives the overall packet delay for all station or am I wrong?

Hope now it clearer!

BR,Nikola

Revision history for this message
Best Sebastian Max (smx-comnets) said :
#3

Hi Nikola,

Thanks for the clarification!

What you need is a different sorting strategy for the output of the wifimac.e2e.packet.incoming.delay probe. A general description of sorting strategies (and the probe-bus concept behind it) can be found in the developer's guide of the openWNS. I recommend that you read the sections about the probe-bus first (e.g. http://docs.openwns.org/simulationPlatform/EvaluationFramework.html#simulationplatformevaluationframework)

The configuration for the wifimac-probes can be found in the file modules/dll/wifimac/PyConfig/wifimac/evaluation/default.py; they are used e.g. in the configCommon.py from the system test (at the very end of the file). The sorting tree for the mentioned probe can be found in lines 108ff:

node = openwns.evaluation.createSourceNode(sim, 'wifimac.e2e.packet.incoming.delay')
node.appendChildren(SettlingTimeGuard(settlingTime))
n = node.getLeafs().appendChildren(Enumerated(by = 'MAC.StationType', keys = [1,3], names = ['ul', 'dl'], format = '%s'))
node.getLeafs().appendChildren(PDF(minXValue = 0.0, maxXValue = 0.1, resolution=100))

First, the source node for the sorting tree is created (where all probe results from the delay probe enter the tree).
In the second line, the settling-time guard is added to the tree
The third line branches the tree by sorting by the 'MAC.StationType' (1 == AP, 3 == STA). As incoming traffic at the AP is uplink, it gets the name 'ul'; similar for the STAs.
Finally, a PDF evaluation is added.

What you need to add (between lines 3 and 4) is a sorter according to the MAC.CompoundSourceAddress or MAC.CompoundTargetAddress (depending on what you need), e.g. like
node.getLeafs().appendChildren(Enumerated(by = 'MAC.CompoundTargetAddress', keys = mpAdrs+staAdrs, format = "target%d"))

Hope that helps,
Sebastian

Revision history for this message
Daniel Bültmann (daniel.bueltmann) said :
#4

Hi Nikola,

did this solve your question? If yes, could you please indicate this by changing the status to "Solved"?

Regards,
  Daniel

Revision history for this message
Nikola (nkz) said :
#5

Thanks Sebastian Max, that solved my question.