xref: /freebsd/share/man/man9/ieee80211_bmiss.9 (revision 2e3507c25e42292b45a5482e116d278f5515d04d)
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.Dd August 4, 2009
27.Dt IEEE80211_BMISS 9
28.Os
29.Sh NAME
30.Nm ieee80211_bmiss
31.Nd 802.11 beacon miss support
32.Sh SYNOPSIS
33.In net80211/ieee80211_var.h
34.Pp
35.Ft void
36.Fn ieee80211_beacon_miss "struct ieee80211com *"
37.Sh DESCRIPTION
38The
39.Nm net80211
40software layer provides a support framework for drivers that includes
41handling beacon miss events in station mode.
42Drivers can dispatch beacon miss events that are recognized in hardware or
43.Nm net80211
44can detect beacon miss if the driver dispatches received beacon frames
45through the normal receive path.
46Software beacon miss support is especially useful when multiple vaps
47are operating and any hardware beacon miss support is not available
48(e.g. operating as an access point together with one or more station
49mode vaps).
50.Pp
51Drivers should dispatch beacon miss events recognized in the driver with
52.Fn ieee80211_beacon_miss .
53This causes some number of ProbeRequest frames to be sent to the
54access point to check if the association is still alive.
55If no response is received and roaming mode is set to
56.Dv IEEE80211_ROAMING_AUTO
57then
58.Nm net80211
59will try to re-associate and if that fails
60trigger a scan to look for the access point or another suitable AP.
61When the
62.Nm net80211
63state machine is being operated manually, e.g. by
64.Xr wpa_supplicant 8 ,
65then applications are notified of the state change and are responsible
66for handling the work of scanning for a new access point.
67The number of beacon miss events (without a ProbeResponse) is user
68settable with the
69.Dv IEEE80211_IOC_BMISSTHRESHOLD
70request.
71.Pp
72Software beacon miss detection is enabled per-vap by setting the
73.Dv IEEE80211_FEXT_SWBMISS
74flag.
75Typically this is done when a vap is setup
76when the
77.Dv IEEE80211_CLONE_NOBEACONS
78option is supplied to the clone operation.
79But drivers may also force this when they know they need help detecting
80beacon miss.
81When beacon miss is detected in software the event is dispatched without
82driver involvement.
83Note that software beacon miss handling is not limited to station mode;
84it can be used in any operating mode where beacons from a peer station
85are received.
86.Sh SEE ALSO
87.Xr wpa_supplicant 8 ,
88.Xr ieee80211 9 ,
89.Xr ieee80211_vap 9
90