# Tuning ral0 based AP



## Seeker (Oct 22, 2011)

Continuing with ral0 as AP, now on 8.2

It works, but I constantly observe this issues:
It is hard for clients to associate to it.
In browser, when I type URL, occasionally it hangs, then when I hit enter, URL is being loaded.
Ping times, from Win client (expected is *time<1ms*):

```
Pinging 192.168.0.1 with 32 bytes of data:
Reply from 192.168.0.1: bytes=32 time=20ms TTL=64
Reply from 192.168.0.1: bytes=32 time=43ms TTL=64
Reply from 192.168.0.1: bytes=32 time=8ms TTL=64
Reply from 192.168.0.1: bytes=32 time=2ms TTL=64
```

Only stable is, constant download of bigger files, when there is a constant stream.

*What this raw description, generally indicates to you?*


```
# ifconfig wlan0 list sta
ADDR               AID CHAN RATE RSSI IDLE  TXSEQ  RXSEQ CAPS FLAG
00:18:4d:b2:52:1f    1    8  36M 12.0    0  22200   8144 EPS  AE      WPA
00:1f:e1:71:1a:b9    2    8  36M 21.5    0   3391  63472 EPS  AE      WPA
```

Does anyone has any advice, on what should I tune?

```
# sysctl net.wlan                                                                                                                                0 /root
net.wlan.nol_timeout: 1800
net.wlan.cac_timeout: 60
net.wlan.ampdu_age: 500
net.wlan.recv_bar: 1
net.wlan.addba_timeout: 250
net.wlan.addba_backoff: 10000
net.wlan.addba_maxtries: 3
net.wlan.hwmp.targetonly: 0
net.wlan.hwmp.replyforward: 1
net.wlan.hwmp.pathlifetime: 5000
net.wlan.hwmp.roottimeout: 5000
net.wlan.hwmp.rootint: 2000
net.wlan.hwmp.rannint: 1000
net.wlan.hwmp.inact: 5000
net.wlan.mesh.retrytimeout: 40
net.wlan.mesh.holdingtimeout: 40
net.wlan.mesh.confirmtimeout: 40
net.wlan.mesh.maxretries: 2
net.wlan.0.%parent: ral0
net.wlan.0.driver_caps: 562086912
net.wlan.0.bmiss_max: 2
net.wlan.0.inact_run: 300
net.wlan.0.inact_probe: 30
net.wlan.0.inact_auth: 180
net.wlan.0.inact_init: 30
net.wlan.0.amrr_rate_interval: 500
net.wlan.0.amrr_max_sucess_threshold: 15
net.wlan.0.amrr_min_sucess_threshold: 1
```


```
# sysctl -d net.wlan
net.wlan: IEEE 80211 parameters
net.wlan.nol_timeout: NOL timeout (secs)
net.wlan.cac_timeout: CAC timeout (secs)
net.wlan.ampdu_age: AMPDU max reorder age (ms)
net.wlan.recv_bar: BAR frame processing (ena/dis)
net.wlan.addba_timeout: ADDBA request timeout (ms)
net.wlan.addba_backoff: ADDBA request backoff (ms)
net.wlan.addba_maxtries: max ADDBA requests sent before backoff
net.wlan.hwmp.targetonly: Set TO bit on generated PREQs
net.wlan.hwmp.replyforward: Set RF bit on generated PREQs
net.wlan.hwmp.pathlifetime: path entry lifetime (ms)
net.wlan.hwmp.roottimeout: root PREQ timeout (ms)
net.wlan.hwmp.rootint: root interval (ms)
net.wlan.hwmp.rannint: root announcement interval (ms)
net.wlan.hwmp.inact: mesh route inactivity timeout (ms)
net.wlan.mesh.retrytimeout: Retry timeout (msec)
net.wlan.mesh.holdingtimeout: Holding state timeout (msec)
net.wlan.mesh.confirmtimeout: Confirm state timeout (msec)
net.wlan.mesh.maxretries: Maximum retries during peer link establishment
net.wlan.0.%parent: parent device
net.wlan.0.driver_caps: driver capabilities
net.wlan.0.bmiss_max: consecutive beacon misses before scanning
net.wlan.0.inact_run: station inactivity timeout (sec)
net.wlan.0.inact_probe: station inactivity probe timeout (sec)
net.wlan.0.inact_auth: station authentication timeout (sec)
net.wlan.0.inact_init: station initial state timeout (sec)
net.wlan.0.amrr_rate_interval: amrr operation interval (ms)
net.wlan.0.amrr_max_sucess_threshold:
net.wlan.0.amrr_min_sucess_threshold:
```


----------



## Seeker (Oct 22, 2011)

More info ...


----------



## Seeker (Oct 23, 2011)

Ok, after having a sleep, I've thrown an eye and can see this repeating pattern:

```
sending data frame failed (too much retries)
```
Now, as I'm not an wifi expert and am not in _that terminology_, I would say, that it is something very, very, very bad ...


----------



## Seeker (Oct 23, 2011)

According to:

```
data frame sent successfully after 7 retries
```
There was no 8-th attempt, so I believe that is a max. and nmb. 7 is nowhere in sysctl


----------



## torcod (Oct 24, 2011)

The link to your site for the .txt file seems to be down.

Since it's working for large file downloads I would guess that your wireless clients are entering powersave mode.

According to the manpage for ral(4):


> BUGS
> Host AP mode doesn't support client power save.  Clients using power save
> mode will experience packet loss (disabling power saving on the client
> will fix this).



Hope that helps


----------



## Seeker (Oct 24, 2011)

I was sleeping, so I've turned off server.
.txt file is available now.

Power save, is first what I thought, but it isn't that.
I've completely turned it off and still (client with power state *D0*)

```
ping 192.168.0.1

Pinging 192.168.0.1 with 32 bytes of data:
Reply from 192.168.0.1: bytes=32 time<1ms TTL=64
Reply from 192.168.0.1: bytes=32 time=6ms TTL=64
Reply from 192.168.0.1: bytes=32 time=30ms TTL=64
Request timed out.

Ping statistics for 192.168.0.1:
    Packets: Sent = 4, Received = 3, Lost = 1 (25% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 30ms, Average = 12ms
```

This drives me nuts, for almost 2 years.


----------

