linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCHv2 0/6] add IBSS channel switch announcement support
@ 2013-08-09 14:35 Simon Wunderlich
  2013-08-09 14:35 ` [PATCHv2 1/6] cfg80211: export cfg80211_chandef_dfs_required Simon Wunderlich
                   ` (5 more replies)
  0 siblings, 6 replies; 12+ messages in thread
From: Simon Wunderlich @ 2013-08-09 14:35 UTC (permalink / raw)
  To: linux-wireless; +Cc: Johannes Berg, Mathias Kretschmer, Simon Wunderlich

This is the second iteration of channel switch support for IBSS mode patchset
(thanks Johannes for comments). CSA for IBSS will be required for IBSS-DFS support
later. The patchset builds on top of the previously submitted AP DFS patchset.

Changes:
 * patch "mac80211: fix ieee80211_sta_process_chanswitch for 5/10 MHz channels"
   already applied, and therefore removed from this patchset
 * report BSSID of connected network for CSA status errors
 * removed (theoretically) remotely triggerable WARN_ON
 * style changes (removed newline, if -> switch, move declaration in right patch)

The rough design is:
 * Userspace may request to change channel using the already introduced
   NL80211_CMD_CHANNEL_SWITCH command. Unlike AP mode, it does not contain
   IEs or offset for CSA elements, because this is to be generated by the kernel.
 * Also other stations may request a channel change by sending (E)CSA within
   beacons or action frames. This is parsed and further handled as if it would
   have come from userspace.
 * When performing a channel switch, an action frame is sent, because beaconing
   is distributed among IBSS peers and might be lost early. Furthermore,
   channel switch announcement IEs are added to the beacon/probe response.
 * When a channel switch could was not understood, it disconnects from the
   IBSS and tries to re-connect.

Discussion points:
 * When disconnecting from the IBSS because a channel switch announcement was
   bogus or not understood, we might reconnect to the same BSS again - on the
   old channel, because the other stas are still there, and stay there.
   Although it is "accepted behaviour" in IEEE 802.11 that not all station
   could make it, we should consider ignoring beacons/presp if they include CSAs
   when scanning for networks to prevent this problem.

As always, any comments are appreciated.

Cheers,
        Simon

Simon Wunderlich (6):
  cfg80211: export cfg80211_chandef_dfs_required
  mac80211: split off channel switch parsing function
  mac80211: move ibss presp generation in own function
  mac80211: add support for CSA in IBSS mode
  mac80211: send a CSA action frame when changing channel
  nl80211: enable IBSS support for channel switch announcements

 include/net/cfg80211.h     |    9 +
 net/mac80211/cfg.c         |   87 ++++--
 net/mac80211/ibss.c        |  719 +++++++++++++++++++++++++++++++++++---------
 net/mac80211/ieee80211_i.h |   25 ++
 net/mac80211/iface.c       |    4 +
 net/mac80211/mlme.c        |  137 +++++----
 net/mac80211/rx.c          |   36 ++-
 net/mac80211/tx.c          |   37 ++-
 net/wireless/chan.c        |    1 +
 net/wireless/core.h        |    9 -
 net/wireless/nl80211.c     |   49 ++-
 11 files changed, 858 insertions(+), 255 deletions(-)

-- 
1.7.10.4


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2013-08-19 10:35 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-09 14:35 [PATCHv2 0/6] add IBSS channel switch announcement support Simon Wunderlich
2013-08-09 14:35 ` [PATCHv2 1/6] cfg80211: export cfg80211_chandef_dfs_required Simon Wunderlich
2013-08-09 14:35 ` [PATCHv2 2/6] mac80211: split off channel switch parsing function Simon Wunderlich
2013-08-16 10:25   ` Johannes Berg
2013-08-09 14:35 ` [PATCHv2 3/6] mac80211: move ibss presp generation in own function Simon Wunderlich
2013-08-16 10:26   ` Johannes Berg
2013-08-09 14:35 ` [PATCHv2 4/6] mac80211: add support for CSA in IBSS mode Simon Wunderlich
2013-08-16 10:33   ` Johannes Berg
2013-08-16 13:36     ` Simon Wunderlich
2013-08-19 10:35       ` Johannes Berg
2013-08-09 14:35 ` [PATCHv2 5/6] mac80211: send a CSA action frame when changing channel Simon Wunderlich
2013-08-09 14:35 ` [PATCHv2 6/6] nl80211: enable IBSS support for channel switch announcements Simon Wunderlich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).