文档章节

WEXT/mac80211/nl80211/cfg80211

s
 sflfqx
发布于 2014/09/29 17:11
字数 529
阅读 1369
收藏 1
  • Wireless-Extensions--旧的无线驱动框架

  • mac80211--为softMAC驱动服务的API

  • cfg80211--新的配置API

  • nl80211--新的用户控件<->内核空间通讯方式

组件交互的基本原理图
[Wireless Card]
      |
[Linux Kernel ]
  |    |
[udev][libnl]-[iw]      
   |  /   \      
[crda]    \     
    |       \     
[ Wireless ] |
[Regulatory] |
[ Database ] |
             |
             |
        [ hostapd ]
理解每一部分是做什么的
Wireless Card: Should be self explanitory... handles sending/receiving wireless packets
无线网卡:操作接收/发达无线包
Linux Kernel: The linux kernel contains the driver for the wireless card, the mac80211 subsystem which handles packet generation and scheduling, and the nl80211 subsystem, which handles configuring the wireless interfaces for userspace
linux核:linux核包涵了无线网尗的驱动,mac80211子系统处理包的产生与时序安排。nl80211处理在用户空间配置无线接口  cfg80211
libnl: libnl is the transport layer used to communicate with the kernel via netlink
libnl:通过netlink与内核对话的传输层
udev: udev is the facility the kernel uses to pass events/calls to crda
udev:udev是内核通过events/calls到 crda的设施
iw: iw is a userspace utility that we can use to test that libnl is working correctly, as well as create additional virtual wireless interfaces on the wireless card
iw:是我们用来测试libnl是否正确工作,以及在无线网卡上创建额外的虚拟无线接口的用户空间工具
crda: crda is a userspace program that the kernel queries (through udev) to find what channels/frequencies are usable, and at what powers. This moves the information out of static tables maintained in kernel to userspace, which allows them to be updated without reloading drivers/rebooting
crda:是内核通过udev来查找什么频段/频率是有效的,在什么强度的用户空间程序。这个从内核维护的静态表中移到用户空间,它可以不需要重载驱动和重启的情况下更新。
Wireless Regulatory Database: database of allowable frequencies and transmit power levels used by crda
无线控制数据库:crda使用允许的频率和传输强度等级的数据库
hostapd: This is the daemon that handles generation of beacons and other wireless packets, as wel as wpa-psk, wpa2, etc encryptions.
hostapd:这是个用来操作信号的产生和其它无线包,以及wpa-psk, wpa2等加密的守护进程
softMAC是一个用于描述无线网尗的类型的一个术语。


本文转载自:http://blog.csdn.net/saturnbj/article/details/7208784

共有 人打赏支持
s
粉丝 42
博文 202
码字总数 0
作品 0
深圳
高级程序员
linux Wireless基础知识(cfg80211 mac80211 nl80211)

基本概念 • cfg80211: 用于对无线设备进行配置管理。与FullMAC, mac80211和nl80211一起工作。(Kernel态) • mac80211: 是一个driver开发者可用于为SoftMAC无线设备写驱动的框架 (Kernel态)...

sflfqx
2014/12/08
0
0
Linux wext和nl80211接口简介

inux无线驱动接口简介 在分析wpa_supplicant软件linux版本下无线驱动事件和无线驱动配置代码之前,先简单介绍下linux无线驱动接口的实现技术和发展情况。 Linux无线驱动接口有两种标准接口,...

sflfqx
2014/07/29
0
1
wpa_supplicant与kernel的接口

接口定义实现wpa_drivers wpa_drivers的定义如下: [cpp] view plaincopy struct wpadriverops *wpa_drivers[] = { #ifdef CONFIGDRIVERWEXT &wpadriverwext_ops, // 我的系统使用的这个老的......

sflfqx
2014/09/29
0
0
linux 无线网卡设置(加载驱动)-Broadcom网卡通用

我的笔记本是acer的,装上fedora16 后发现无线不能用。幸好有线能用,就在网上查相关资料说是可以通过 “ndiswrapper”模拟运行windows下的驱动,但是试了几次没有成功,可能是驱动对不上号吧...

crazypenguin
2012/06/29
0
2
wpa_supplicant与kernel交互

wpa_supplicant与kernel交互的操作,一般需要先明确驱动接口,以及用户态和kernel态的接口函数,以此来进行调用操作。这里分为4个步骤讨论。 1.首先需要明确指定的驱动接口。因为有较多的驱动...

sflfqx
2014/07/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

springmvc入门之映射处理器(一)

1.简析映射处理器 在spring mvc中,使用映射处理器可以把web请求映射到正确的处理器上,spring内置了很多映射处理器,而且我们也可以自定义映射处理器。下面的实例展示spring中最常用的两个映...

明理萝
2分钟前
0
1
一个破碎的人,窃机浪漫飞行后自由坠毁

简评:A sick man who needs treatment 29 岁的 Richard Russell 是西雅图机场地勤人员,上周五,在刚进入秋天的日子,他偷了一架未载客的飞机,在空中飞行独自超过一小时,甚至驾机在空中翻...

极光推送
4分钟前
0
0
linux一次性解压多个.gz或者.tar.gz文件

解压多个压缩包 对于解压多个.gz文件的,用此命令: for gz in *.gz; do gunzip $gz; done 对于解压多个.tar.gz文件的,用下面命令: for tar in *.tar.gz; do tar xvf $tar; done...

小兔纸乖乖
15分钟前
0
0
bower 安装包的使用

一,bower是什么? bower是一种包管理器,它可用于搜索、安装和卸载如JavaScript、HTML、CSS之类的网络资源。 它依赖于node.js和npm,如果要使用它需要先安装node.js和npm,因为node.js包含n...

nsns
17分钟前
0
0
EXCEL简易的进度条

在进度栏非常简单的进度控制,以下知道程序是否已完成。 Dim x As IntegerDim MyTimer As Double'Change this loop as needed.For x = 1 To 50' Do stuffApplication.StatusBar = ...

tedzheng
22分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部