无线网络基础知识

1. 基本概念

    • cfg80211:  用于对无线设备进行配置管理。与mac80211和nl80211一起工作(Kernel态)。

    • mac80211: 是一个driver开发者可用于为SoftMAC无线设备写驱动的框架(Kernel态)。

    • nl80211: 用于对无线设备进行配置管理,它是一个基本Netlink的用户态协议(User态)。

    • wnic: Wireless Network Interface Controller, 它总是指望硬件执行协议(如IEEE802.11)描述的功能。

    • mlme: 即MAC(Media Access Control ) Layer Management Entity,它管理物理层MAC状态机。

    • softmac: 其mlme由软件实现,mac80211为softmac实现提供了一个driver API。 即:SoftMAC设备允许对硬件执行更好地控制,允许用软件实现对802.11的帧管理,包括解析和产生802.11无线帧。目前大多数802.11设备为SoftMAC,而FullMAC设备较少。

    • fullmac:  其MLME由硬件管理,当写FullMAC无线驱动时,不需要使用mac80211。

    • wpa_supplicant: 是用户空间一个应用程序,主要发起mlme命令,然后处理相关结果。

2. ieee80211

1) struct cfg80211_ops :backend description for wireless configuration
2) struct wiphy:wireless hardware description

3) struct ieee80211_ops:callbacks from mac80211 to the driver

4) struct ieee80211_hw、ieee80211_alloc_hwieee80211_register_hw:hardware information and state

5) struct ieee80211_channel:channel definition

6) struct usb_driver:identifies USB interface driver to usbcore



3. mac80211

    它是一个driver开发者可用于为SoftMAC无线设备写驱动的框架,mac80211为SoftMAC设备实现了cfg80211回调函数,且mac80211通过cfg80211实现了向网络子系统注册和配置。配置由cfg80211通过nl80211和wext实现。

你可能感兴趣的:(Kernel)