xref: /freebsd/share/man/man9/ieee80211_bmiss.9 (revision 0a36787e4c1fa0cf77dcf83be0867178476e372b)
1.\"
2.\" Copyright (c) 2009 Sam Leffler, Errno Consulting
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\"    notice, this list of conditions and the following disclaimer in the
12.\"    documentation and/or other materials provided with the distribution.
13.\"
14.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24.\" SUCH DAMAGE.
25.\"
26.\" $FreeBSD$
27.\"
28.Dd August 4, 2009
29.Dt IEEE80211_BMISS 9
30.Os
31.Sh NAME
32.Nm ieee80211_bmiss
33.Nd 802.11 beacon miss support
34.Sh SYNOPSIS
35.In net80211/ieee80211_var.h
36.Pp
37.Ft void
38.Fn ieee80211_beacon_miss "struct ieee80211com *"
39.Sh DESCRIPTION
40The
41.Nm net80211
42software layer provides a support framework for drivers that includes
43handling beacon miss events in station mode.
44Drivers can dispatch beacon miss events that are recognized in hardware or
45.Nm net80211
46can detect beacon miss if the driver dispatches received beacon frames
47through the normal receive path.
48Software beacon miss support is especially useful when multiple vaps
49are operating and any hardware beacon miss support is not available
50(e.g. operating as an access point together with one or more station
51mode vaps).
52.Pp
53Drivers should dispatch beacon miss events recognized in the driver with
54.Fn ieee80211_beacon_miss .
55This causes some number of ProbeRequest frames to be sent to the
56access point to check if the association is still alive.
57If no response is received and roaming mode is set to
58.Dv IEEE80211_ROAMING_AUTO
59then
60.Nm net80211
61will try to re-associate and if that fails
62trigger a scan to look for the access point or another suitable AP.
63When the
64.Nm net80211
65state machine is being operated manually, e.g. by
66.Xr wpa_supplicant 8 ,
67then applications are notified of the state change and are responsible
68for handling the work of scanning for a new access point.
69The number of beacon miss events (without a ProbeResponse) is user
70settable with the
71.Dv IEEE80211_IOC_BMISSTHRESHOLD
72request.
73.Pp
74Software beacon miss detection is enabled per-vap by setting the
75.Dv IEEE80211_FEXT_SWBMISS
76flag.
77Typically this is done when a vap is setup
78when the
79.Dv IEEE80211_CLONE_NOBEACONS
80option is supplied to the clone operation.
81But drivers may also force this when they know they need help detecting
82beacon miss.
83When beacon miss is detected in software the event is dispatched without
84driver involvement.
85Note that software beacon miss handling is not limited to station mode;
86it can be used in any operating mode where beacons from a peer station
87are received.
88.Sh SEE ALSO
89.Xr wpa_supplicant 8 ,
90.Xr ieee80211 9 ,
91.Xr ieee80211_vap 9
92