WARP Project Forums - Wireless Open-Access Research Platform

You are not logged in.

#1 2017-Mar-06 05:04:41

nader
Member
Registered: 2016-May-24
Posts: 22

Error when running wlan_exp framework - three nodes scenario

Hi,

I tried the data transfer between two nodes using one AP and one STA and everything was okay. When I moved to three nodes scenario (one AP and Two STA), I got the following error when I run the experiment:

(Apparently, the "add_association" function which should enforce the association between AP and STA isn't working).

Code:

Initializing W3-a-00***
Initializing W3-a-00***
Initializing W3-a-00***
Initializing the time of all nodes on network 10.0.0.0 to: 0
ERROR:  Invalid response from node:
        Received status error from AP associate command
        Could not add AP association to STA  W3-a-00***: ID     1.

Response [CMDID = 0x00007011] (8 bytes):
    Args [0:2]  :
        0xff000000
        0x00000000

ERROR:  Invalid response from node:
        Received status error from AP associate command
        Could not add AP association to STA  W3-a-00***: ID     2.

Response [CMDID = 0x00007011] (8 bytes):
    Args [0:2]  :
        0xff000000
        0x00000000


ERROR: Nodes are not part of the same BSS.
Mismatch between BSS Info:

"AP   W3-a-00***: ID     0":
BSS Info
    bssid      = 40:d8:55:04:25:a8
    ssid       = WARP Log 3 Node 2 Flow Ex
    channel    = 36


"STA  W3-a-00***: ID     1":
BSS Info
    bssid      = 40:d8:55:04:25:a8
    ssid       = WARP-AP
    channel    = 6

Mismatch between BSS Info:

"AP   W3-a-00***: ID     0":
BSS Info
    bssid      = 40:d8:55:04:25:a8
    ssid       = WARP Log 3 Node 2 Flow Ex
    channel    = 36


"STA  W3-a-00***: ID     2":
BSS Info
    bssid      = 40:d8:55:04:25:a8
    ssid       = WARP-AP
    channel    = 6


Ensure that both nodes are part of the same BSS.

Thanks.

Offline

 

#2 2017-Mar-06 11:49:11

chunter
Administrator
From: Mango Communications
Registered: 2006-Aug-24
Posts: 1212

Re: Error when running wlan_exp framework - three nodes scenario

I just committed a fix that will get rolled into the next release that seems related to what you are seeing. I'm not sure it totally explains it. In the released code there is a bug that occurs when the SSID length changes (e.g. when it transitions from "WARP-AP" to "WARP Log 3 Node 2 Flow Ex" after you call your script). A pointer to the Traffic Indication Map isn't properly updated to account for the new length and outgoing beacon transmissions become malformed. On the Rx side, the STA sees these malformed packets and can incorrectly interpret the tagged parameters and overwrite certain fields in its BSS Info struct with bad data. There are a few different manifestation of this bug, but one effect is that the wlan_exp command n.check_bss_membership() can periodically fail since the SSID strings no longer match between AP and STA. The "ERROR: Nodes are not part of the same BSS." you are seeing is from this same wlan_exp command, so this is one possible explanation.

Rather than wait for the next release, you can make the fix yourself one of two ways:

1. Modify the wlan_mac_ap.c code to include a single line on line 2308 prior to the call of update_tim_tag_all():

Code:

mgmt_tag_tim_template = NULL;

2. If you don't want to modify any C, you can work around the problem in Python by ensuring the the SSIDs you use are exactly 7 characters (i.e. the length of "WARP-AP"). This will mean that the stale pointer still winds up pointing to the correct place.

If you make either of those changes, do you see any other errors?

Offline

 

#3 2017-Mar-06 12:11:05

nader
Member
Registered: 2016-May-24
Posts: 22

Re: Error when running wlan_exp framework - three nodes scenario

I tried the second solution and the same problem persists. There still a mismatch due to channel number.

Last edited by nader (2017-Mar-06 12:13:47)

Offline

 

#4 2017-Mar-06 13:09:56

murphpo
Administrator
From: Mango Communications
Registered: 2006-Jul-03
Posts: 5159

Re: Error when running wlan_exp framework - three nodes scenario

* Did you reprogram all nodes with the reference AP/STA bitstreams before trying solution #2?
* What version of the 802.11 ref design are you using?
* Have you made any changes to the C or wlan_exp code?

Offline

 

#5 2017-Mar-06 14:28:50

chunter
Administrator
From: Mango Communications
Registered: 2006-Aug-24
Posts: 1212

Re: Error when running wlan_exp framework - three nodes scenario

The next thing to check is that the order of the following calls does not change:

Code:

        node1 = n_ap_l[0]
        node2 = n_sta_l[0]
        node3 = n_sta_l[1]
    
        # Configure AP BSS
        node1.configure_bss(ssid=SSID, channel=CHANNEL, beacon_interval=BEACON_INTERVAL)
    
        # Add the associations
        node1.add_association(node2)        
        node1.add_association(node3)

Your script can't call "configure_bss()" without calling both "add_association()" commands again. Doing so would modify the BSS properties at the AP but not at the STAs, so attempting to check membership will fail.

Offline

 

#6 2017-Mar-07 07:32:03

nader
Member
Registered: 2016-May-24
Posts: 22

Re: Error when running wlan_exp framework - three nodes scenario

Problem solved. I just found that I limited the allowed number of associations and authentications to  2. That is why I got the error when I use three nodes. Thank you for your useful tips.

Offline

 

#7 2017-Mar-07 22:13:59

murphpo
Administrator
From: Mango Communications
Registered: 2006-Jul-03
Posts: 5159

Re: Error when running wlan_exp framework - three nodes scenario

Thanks for following up - glad you figured it out. I see the error message from the n_ap.add_association() command is not very helpful. We'll make this better in the next release.

Offline

 

Board footer