[OpenWrt-Devel] [PATCH] mac80211.sh: add support of VHT80 for mesh

Daniel Golle daniel at makrotopia.org
Fri May 6 15:44:20 EDT 2016


Hi Chun-Yeow,

On Sat, May 07, 2016 at 01:31:24AM +0800, Yeoh Chun-Yeow wrote:
> I think that it is alright if we solely depends on the wap_supplicant
> for both open mesh and secured mesh.

That would certainly work just as well, however, it would require
that people have wpa_supplicant-mesh or wpad-mesh installed even if
all they need is an unencrypted 802.11s mesh which doesn't require
that. As people might already use 802.11s unencrypted on devices
with 4megs of flash and only wpad-mini installed, that would break
their currently working use-case.
Eventhough the current way of deciding whether or not to use
wpa_supplicant (the same also applies to station mode) makes the
setup scripts a bit more complex, in my opinion it's worth that
extra complexity to at least allow basic functionality without
the overhead of running a full-blown authenticator in scenarious
where it isn't needed.

On another page, I agree that we should drop authsae in favour of
wpa_supplicant's SAE support in the long run. For now, this hasn't
happened because wpa_supplicant's SAE support received less testing
compared to authsae. The current hybrid setup allows to easily
replace one for the other, thus making regression testing trivial.

With regard to your patch, I suggest to only set HT and VHT paramters
for unencrypted networks and leave it to wpa_supplicant to set them
for encrypted ones. Once tested that setting the parameters with
authsae already running doesn't break things, setting them in that
case can also be enabled in a follow-up patch.



Cheers


Daniel

> 
> ----
> Chun-Yeow
> 
> On Sat, May 7, 2016 at 1:16 AM, Daniel Golle <daniel at makrotopia.org> wrote:
> > On Sat, May 07, 2016 at 01:01:30AM +0800, Yeoh Chun-Yeow wrote:
> >> authsae and wpa_supplicant only trigger if secured mesh.
> >> wpa_supplicant should work correctly for VHT80 but don't think
> >> authsae.
> >>
> >> But this patch is intended to allow open mesh to support VHT80.
> > So maybe only enable it if $key isn't set and leave a comment in place
> > that testing is needed before enabling it for authsae and/or
> > wpa_supplicant.
> > It might well break authsae and wpa_supplicant already handles up to
> > VHT160, see
> > http://w1.fi/cgit/hostap/commit/wpa_supplicant/mesh.c?id=a65efbfb243dda41518720f14724db055444bb56
> > and
> > http://w1.fi/cgit/hostap/commit/wpa_supplicant/mesh.c?id=d06a35052f182d3aebc7b7e1c780cca7b386997d
> > so no need to set it here again.
> >
> >
> >>
> >> Thanks
> >>
> >> ----
> >> Chun-Yeow
> >>
> >> On Sat, May 7, 2016 at 12:53 AM, Daniel Golle <daniel at makrotopia.org> wrote:
> >> > Hi Chun-Yeow,
> >> >
> >> > On Sat, May 07, 2016 at 12:35:17AM +0800, Chun-Yeow Yeoh wrote:
> >> >> Add support of VHT80 setting for mesh interface
> >> >>
> >> >> Signed-off-by: Chun-Yeow Yeoh <yeohchunyeow at gmail.com>
> >> >> ---
> >> >>  .../mac80211/files/lib/netifd/wireless/mac80211.sh | 33 +++++++++++-----------
> >> >>  1 file changed, 17 insertions(+), 16 deletions(-)
> >> >>
> >> >> diff --git a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh
> >> >> index 02c195e..d680ac2 100644
> >> >> --- a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh
> >> >> +++ b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh
> >> >> @@ -473,7 +473,7 @@ mac80211_prepare_vif() {
> >> >>       esac
> >> >>
> >> >>       case "$mode" in
> >> >> -             monitor|mesh)
> >> >> +             monitor)
> >> >>                       [ "$auto_channel" -gt 0 ] || iw dev "$ifname" set channel "$channel" $htmode
> >> >>               ;;
> >> >>       esac
> >> >> [...]
> >> >
> >> >> @@ -566,7 +566,7 @@ mac80211_setup_adhoc() {
> >> >>       mcval=
> >> >>       [ -n "$mcast_rate" ] && wpa_supplicant_add_rate mcval "$mcast_rate"
> >> >>
> >> >> -     iw dev "$ifname" ibss join "$ssid" $freq $ibss_htmode fixed-freq $bssid \
> >> >> +     iw dev "$ifname" ibss join "$ssid" $freq $bss_htmode fixed-freq $bssid \
> >> >>               ${beacon_int:+beacon-interval $beacon_int} \
> >> >>               ${brstr:+basic-rates $brstr} \
> >> >>               ${mcval:+mcast-rate $mcval} \
> >> >> @@ -612,7 +612,8 @@ mac80211_setup_vif() {
> >> >>                               mcval=
> >> >>                               [ -n "$mcast_rate" ] && wpa_supplicant_add_rate mcval "$mcast_rate"
> >> >>
> >> >> -                             iw dev "$ifname" mesh join "$mesh_id" ${mcval:+mcast-rate $mcval}
> >> >> +                             mac80211_setup_bss_htmode
> >> >
> >> > have you tested this with authsae AND wpa_supplicant as well?
> >> > I haven't look into it but suspect that wpa_supplicant might expect
> >> > those things to be set via its configuration file instead of using
> >> > iw dev ...
> >> >
> >> > Cheers
> >> >
> >> > Daniel
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list