Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 16 Jan 2004 11:24:52 -0500
From:      Jesse Guardiani <jesse@wingnet.net>
To:        freebsd-mobile@freebsd.org
Subject:   managing multiple wireless SSIDs (summary discussion)
Message-ID:  <bu938l$fdo$1@sea.gmane.org>

next in thread | raw e-mail | index | archive | help
Howdy list,

I recently asked this list how I could automatically detect and
initialize my wireless interface based on any available SSIDs.

I received three responses for the three different "solutions"
listed below:

rcng patch for "autoconf at boot"
    http://lists.freebsd.org/pipermail/freebsd-mobile/2003-November/002284.html

"wiconf" utility
    http://www.csh.rit.edu/~psionic/projects/wiconf/

"wlandetect" daemon
    http://jelmer.vernstok.nl/oss/wlandetect/


Thus far I have NOT implemented ANY of the above "solutions",
so I can't vouch for and do NOT wish to discuss which solution
currently works "best". In fact, I don't think that the
wlandetect daemon even works at all without source code hackery.

What I'm particularly interested in discussing is the IDEA
behind the above three utilities: "wireless roaming"

As far as I can tell, FreeBSD hasn't yet adopted a standard
way to implement "wireless roaming", so I think the idea itself
merits a good discussion. And hopefully when the discussion
is over we can all agree on a "correct" implementation. At the
very least I might be able to decide which implementation *I*
think is "correct."

Now, if all three of the above "solutions" did exactly the same
thing then we wouldn't have anything to talk about. We could
simply sit down and integrate the "correct" solution into the
base system (like the rcng "solution"), or build a port (for
wiconf or wlandetect), or both.

However, it looks like the above solutions fall into two distinct
categories:

1.) Solutions that allow "realtime" roaming
2.) Solutions that trigger only when external events occur

I'd like to discuss these two categories with this list and
get some feedback. Particularly, I'd like to get a feel for
what other people think is the "correct" solution and why.

But first I'll summarize my (admittedly limited) understanding
of the two categories:

Solutions that trigger only when external events occur
------------------------------------------------------
"wiconf" and the rcng patch for "autoconf at boot" fall into
this category, I think. Either of these utilities will configure
a wireless interface based on the available network, but only
after certain events occur. These events include (but aren't
necessarilly limited to):

1.) boot
2.) suspend/resume
3.) pccard insertion/removal (wiconf only, I think, and maybe
                              only with OLDCARD)


Solutions that allow "realtime" roaming
---------------------------------------
As far as I can tell, "wlandetect" is the only "solution" that
falls into this category. It runs as a daemon, actively polls
the network for available SSIDs, and reconfigures the wireless
interface on the fly.

Unfortunately it was written with Linux in mind and won't work
out of the box. All calls to `iwlist scan` would probably have
to be replaced by calls to `wicontrol -L` or similar.


The questions I'd like to discuss
---------------------------------
So here are the questions that come to mind after digesting the
above information:

1.) Which category is preferable?

    Currently, I think the event based solutions are the most
    _practical_ on FreeBSD, but are they the "correct" long term
    solution?

2.) What is the future of the `wicontrol` command? I've noticed
    that `wicontrol -L` only works if the wi interface is
    configured with an empty SSID:

    ifconfig wi0 ssid '' wepmode off

    Are there plans to make a more general interface for things
    like SSID enumeration?

    Does wicontrol -L work for the ath driver? Or just wi?

-- 
Jesse Guardiani, Systems Administrator
WingNET Internet Services,
P.O. Box 2605 // Cleveland, TN 37320-2605
423-559-LINK (v)  423-559-5145 (f)
http://www.wingnet.net




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bu938l$fdo$1>