Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| wifi:ideaspage [2013/04/08 18:48] – AdrianChadd | wifi:ideaspage [2022/06/17 01:58] (current) – De-dent title KubilayKocak | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Wifi Ideas Page ====== | + | ===== Wifi Ideas Page ===== |
| ===== WPA2 preauthentication in hostapd ===== | ===== WPA2 preauthentication in hostapd ===== | ||
| + | |||
| //Suggested Summer of Code project idea// | //Suggested Summer of Code project idea// | ||
| - | **Technical Contact**: [[/ | + | **Technical Contact**: [[/ |
| - | WPA2 is the authentication protocol defined as part of the IEEE 802.11i specification. This protocol is now commonly used to authenticate wireless stations to access points. Part of this protocol is the ability to pre-authenticate a station with one or more access points so that roaming can happen quickly. %%FreeBSD%% lacks support for this aspect of the protocol in the hostapd program used to construct a WPA-enabled access point. This task would port the Linux code that exists to support pre-authentication in hostapd. This mostly involves rewriting some user-mode multicast code and testing the result. | + | WPA2 is the authentication protocol defined as part of the IEEE 802.11i specification. This protocol is now commonly used to authenticate wireless stations to access points. Part of this protocol is the ability to pre-authenticate a station with one or more access points so that roaming can happen quickly. %%FreeBSD%% lacks support for this aspect of the protocol in the hostapd program used to construct a WPA-enabled access point. This task would port the Linux code that exists to support pre-authentication in hostapd. This mostly involves rewriting some user-mode multicast code and testing the result. |
| ==== Requirements ==== | ==== Requirements ==== | ||
| Line 14: | Line 15: | ||
| * WPA-capable wireless network setup. | * WPA-capable wireless network setup. | ||
| - | ===== net80211 rate control | + | ===== net80211 rate control ===== |
| - | //Suggested Summer of Code project idea// | + | |
| + | **Technical Contact**: [[/AdrianChadd|adrian@]], | ||
| - | **Technical Contact**: [[/ | + | Update the net80211 rate control API and test with newer hardware. |
| - | Extend | + | 15:18:28 < adrian> |
| + | 15:18:36 < adrian> it's in a gsoc branch, I never had the time to integrate it | ||
| + | 15:18:38 < adrian> i really should at some point though | ||
| * Teaching it about multiple TX rate attempts (eg what ath(4) hardware supports; | * Teaching it about multiple TX rate attempts (eg what ath(4) hardware supports; | ||
| Line 32: | Line 36: | ||
| ==== Requirements ==== | ==== Requirements ==== | ||
| - | The ideal student will have a supported 802.11n chipset (Intel, Broadcom, Atheros) and be familiar with basic wireless concepts and C programming. If in doubt, please email freebsd-wireless@freebsd.org to ensure your 802.11n NIC is supported in %%FreeBSD%%-HEAD. | + | The ideal student will have a supported 802.11n chipset (Intel, Atheros) and be familiar with basic wireless concepts and C programming. If in doubt, please email <freebsd-wireless@freebsd.org> to ensure your 802.11n NIC is supported in %%FreeBSD%%-HEAD. |
| ===== 802.11 Fuzzing and Testing (GSoC) ===== | ===== 802.11 Fuzzing and Testing (GSoC) ===== | ||
| //Suggested Summer of Code project idea// | //Suggested Summer of Code project idea// | ||
| - | **Technical Contact**: [[/ | + | **Technical Contact**: [[/ |
| Build a " | Build a " | ||
| Line 50: | Line 54: | ||
| //Suggested %%SoC%% project idea// | //Suggested %%SoC%% project idea// | ||
| - | **Technical Contact**: | + | **Technical Contact**: |
| The wtap interface simulates enough of a wireless interface to allow for mesh (802.11s) testing. It would be nice to extend this to support the other operational modes (sta, hostap, adhoc). | The wtap interface simulates enough of a wireless interface to allow for mesh (802.11s) testing. It would be nice to extend this to support the other operational modes (sta, hostap, adhoc). | ||
| Line 64: | Line 68: | ||
| ===== Extend/ | ===== Extend/ | ||
| - | **Technical Contact**::: [[/freebsd-wireless@freebsd.org|freebsd-wireless@freebsd.org]] | + | **Technical Contact**: |
| The net80211 code does contain a basic regulatory database but it could do with an overhaul. Specifically: | The net80211 code does contain a basic regulatory database but it could do with an overhaul. Specifically: | ||
| Line 83: | Line 87: | ||
| ===== Implement a new VAP type that is specifically for raw frame injection/ | ===== Implement a new VAP type that is specifically for raw frame injection/ | ||
| - | **Technical Contact**::: [[/freebsd-wireless@freebsd.org|freebsd-wireless@freebsd.org]] | + | **Technical Contact**: |
| None of the current operating modes are really designed for raw frame injection with no actual MLME functionality. | None of the current operating modes are really designed for raw frame injection with no actual MLME functionality. | ||
| Line 97: | Line 101: | ||
| ===== Implement per-channel activity/ | ===== Implement per-channel activity/ | ||
| - | **Technical Contact**: | + | **Technical Contact**: |
| The ath(4) hardware has some live counters which track the channel status - how much time is spent TX' | The ath(4) hardware has some live counters which track the channel status - how much time is spent TX' | ||
| Line 112: | Line 116: | ||
| ===== Implement RX power histogram in net80211 ===== | ===== Implement RX power histogram in net80211 ===== | ||
| - | **Technical Contact**: | + | **Technical Contact**: |
| Most drivers expose the per-frame RSSI as part of the RX process. This can be used by net80211 to build up a histogram of RX power levels. This forms part of the 802.11h DFS specification and is used in both the channel activity measurement and during automatic channel selection. | Most drivers expose the per-frame RSSI as part of the RX process. This can be used by net80211 to build up a histogram of RX power levels. This forms part of the 802.11h DFS specification and is used in both the channel activity measurement and during automatic channel selection. | ||
| Line 124: | Line 128: | ||
| ===== Implement statistics graphing / visualisation ===== | ===== Implement statistics graphing / visualisation ===== | ||
| - | **Technical Contact**: | + | **Technical Contact**: |
| Both the wireless stack and individual drivers provide a very large amount of useful statistics information, | Both the wireless stack and individual drivers provide a very large amount of useful statistics information, | ||