缩写、术语 | 解释 |
---|---|
BBP | Baseband Processor,基带处理,指PHY,物理层。 |
NIC | Network Interface Card,网卡也叫“网络适配器” |
NDIS | Network Driver Interface Specification, 网络驱动接口规范。NDIS的主要目的就 是为NIC制定出标准的API接口。 |
TSSI | Transmitter Signal Strength Indicator,发射信号强度指示。 |
MLME | MAC(Media Access Control ) Layer Management Entity,它管理物理层MAC状态机。 |
WEP | Wired Equivalent Privacy,有线等效保密(WEP)协议是对在两台设备间无线传输的数据进行加密的方式,用以防止非法用户窃听或侵入无线网络。不过密码分析学家已经找出 WEP 好几个弱点,因此在2003年被 Wi-Fi Protected Access (WPA) 淘汰,又在2004年由完整的 IEEE 802.11i 标准(又称为WPA2)所取代。WEP 虽然有些弱点,但也足以吓阻非专业人士的窥探了。 |
HAL | Hardware Abstraction Layer, 硬件抽象层,是位于操作系统内核与硬件电路之间的接口层,其目的在于将硬件抽象化。它隐藏了特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。 |
TSF | TSF: Timing Synchronization Function, 时间同步。 同步分为主动同步和被动同步: TSF for an IBSS(被动同步):IBSS中TSF的实现是由一个分布式算法完成的(BSS中的所有成员都会参与,每个STA都需要根据这个算法来传送Beacon frames)。若STA接收到的TSF值迟于本地TSF计时器的值,则更新时间。 TSF for an MBSS(主动同步):根据MBSS的主动同步方法,the mesh STA需要初始化它的TSF计时器,并周期性的传送内含TSF计时器值的Beacon frames来对外宣称自己的本地时间。 |
EDCA | Enhanced Distributed Channel Access, 增强分布式信道访问。 IEEE 802.11e EDCA中虚拟碰撞问题的一种解决策略, IEEE 802.11MAC信道接入方式, 并支持优先级QoS和参数化QoS。 |
CCA | Clear Channel Assessment, 空闲信道评估, 判断信道是否空闲。 WLAN中的MAC层协议:CSMA/CA 载波检测多接入/冲突避免。避免冲突检测机制,协议使用CCA算法来决定信道是否空闲,通过测试天线能量和决定接收信号强度RSSI来完成,并且采用RTS、CTS和ACK帧减少冲突(握手机制) |
ACL | Access Control List, 访问控制列表。 |
芯片型号及功能 | 详细说明 |
---|---|
RTL8192ER | 高效能 802.11n,专为小型的 Wi-Fi 设备而设。联发科技 RTL8192ER 是一款高度整合式 Wi-Fi 单芯片,支持 300 Mbps PHY 速率。它完全符合 IEEE 802.11n 及 IEEE 802.11 b/g 标准,提供高标准而功能丰富的无线连接,并可从更远的距离提供可靠稳定、具成本效益的处理能力。优化的射频架构及基频算法带来卓越的效能表现,以及可靠而低功耗的处理能力。它的智能型媒介访问控制 (MAC) 设计采用效率极高的直接内存访问 (DMA) 引擎,亦配备可减轻主处理器负荷的硬件信息处理加速器。RTL8192ER 的设计旨在提供符合安全性、服务品质及国际规范标准的功能,让终端用户在任何情况下也能随时享有最佳的效能表现。 |
WIFI | IEEE 802.11:b/g/n Wi-Fi Frequency:2.4GHz Antenna:2T2R Data Throughput:300Mbit/s |
Functions And Features | MAC:Yes RF:Yes ePA/eLNA:Yes BPP:Yes AP/Repeater:Linux AP/Repeater STA:Android,Linux Interface:PCI-Express 1.1 |
8192cd_cfg.h
#define NUM_TX_DESC 2176 //512 // kmalloc max size issue
修改分配内存。
disable_brsc // 指令未生效
Iwprive wlan0 set_mib adaptivity_enable=1
Iwprive wlan0 set_mib manual_edca=1 // 很有效
Iwprive wlan0 set regdomain=13
Ifconfig wlan0 down up
见文档 001_adaptivity测试fail的操作说明
echo dbg 0 1 > /proc/wlan0/cmd // dig odfm debug
iwpriv wlan0 set_mib original_dig_restore=0
0 :开启tdma_dig
1 :关闭tdma_dig
[1] 96% tx VHT NSS2 7s rx VHT NSS2 2 (ss 96 78) (FA CCK 0 0 OFDM 852 80)(CCA 2198 180)(LIG 0x26,HIG 0x48)(TP 0,0)
HIG : 近距离
LIG : 远距离
Tdma 为 TDMA 功能,分两种 DIG 范围
iwpriv wlan0 set_mib dig_enable=1// 关闭 DIG
read DIG
- 92E
iwpriv wlan0 read_reg b,c50s
iwpriv wlan0 read_reg b,c58
- 8812AR
iwpriv wlan0 read_reg b,c50
iwpriv wlan0 read_reg b,e50
- 8814AR
iwpriv wlan0 read_reg b,c50
iwpriv wlan0 read_reg b,e50
iwpriv wlan0 read_reg b,1A50
iwpriv wlan0 read_reg b,1850
- write DIG
- 89ES
iwpriv wlan0 write_reg b,c50,20
- 92ES
iwpriv wlan0 write_reg b,c50,20
iwpriv wlan0 write_reg b,c58,20
- 8812AR
iwpriv wlan0 write_reg b,c50,2a
iwpriv wlan0 write_reg b,e50,2a
- 8814AR
iwpriv wlan0 write_reg b,c50,30
iwpriv wlan0 write_reg b,e50,30
iwpriv wlan0 write_reg b,1A50,30
iwpriv wlan0 write_reg b,1850,30
- DIG Related Registers
- N-Series:
Path-A IGI = RegC50[6:0]
Path-B IGI = RegC58[6:0]
CCK FA = (RegA58[31:24]<<8) | RegA5C[7:0]
OFDM FA = RegCF0[15:0]
RegCF0[31:16]
RegDA0[31:16]
RegDA4[15:0]
RegDA4[31:16]
RegDA8[15:0]
- AC-Series:
Path-A IGI = RegC50[6:0]
Path-B IGI = RegE50[6:0]
CCK FA = RegA5C[15:0]
OFDM FA = RegF48[15:0]
Iw ow/ wlan0
Iw1 ow1 /wlan1
iw 42a // 读取
ow 42a 2020 //写入 2020 shortretry longretry
setmib longretry 0x20
setmib shortretry 0x20
flw 30000 a0800000 1000000
Write 0x01000000 Bytes to SPI flash#1, offset 0x00030000<0xb0030000>, from RAM 0xa0800000 to 0xa1df0000
mount -o rw,remount /system
echo 0 > /proc/sys/kernel/printk
mount -o rw,remount /system
cat /proc/kmsg // 单次答应
cat /proc/kmsg& // 一直打印
如果wan 口是port0,lan4 口是port4,则命令应该如下:
echo “mirror 0x01 0x01 0x010" > /proc/rtl865x/mirrorPort
如果wan 口是port4,lan4 口是port3,则命令应该如下:
echo “mirror 0x10 0x10 0x08" > /proc/rtl865x/mirrorPort
开启隔离命令
echo “port_isolation 1” > /proc/rtl865x/mirrorPort
关闭隔离命令
echo “port_isolation 0” > /proc/rtl865x/mirrorPort
iwpriv wlanX mimo Y (Y=0~3) A 路
printk("mimo 1: switch to 1T1R\n");
printk("mimo 2: switch to 2T2R\n");
printk("mimo 3: switch to 3T3R\n");
printk("mimo 0: auto\n");
# 8192 root mib
iwpriv wlan0 set_mib ssid="xxxxxx_2G"
iwpriv wlan0 set_mib use40M=0
iwpriv wlan0 set_mib amsdu=0
iwpriv wlan0 set_mib ampdu=1
iwpriv wlan0 set_mib channel=8
iwpriv wlan0 set_mib rfe_type=1
iwpriv wlan0 set_mib band=11
iwpriv wlan0 set_mib shortGI20M=1
iwpriv wlan0 set_mib shortGI40M=1
iwpriv wlan0 set_mib shortGI80M=0
iwpriv wlan0 set_mib vlan_enable=1
iwpriv wlan0 set_mib vlan_id=2
iwpriv wlan0 set_mib vap_enable=1
#8812 root mib
iwpriv wlan0 set_mib ssid="TC_Fiberhome_5G"
iwpriv wlan0 set_mib use40M=2
iwpriv wlan0 set_mib amsdu=2
iwpriv wlan0 set_mib ampdu=1
iwpriv wlan0 set_mib rfe_type=7
iwpriv wlan0 set_mib band=76
iwpriv wlan0 set_mib channel=36
iwpriv wlan0 set_mib shortGI20M=0
iwpriv wlan0 set_mib shortGI40M=0
iwpriv wlan0 set_mib shortGI80M=0
#enable wlan0 wlab1
brctl addif br-lan wlan0
ifconfig wlan0 hw ether 00:0e:4c:03:51:A0
ifconfig wlan0 down up
ifconfig wlan1 down up
sleep 1
# bind CPU, for tx
echo "2">/proc/irq/120/smp_affinity
echo "2">/proc/irq/121/smp_affinity
echo "2">/proc/irq/122/smp_affinity
ubus call reinit setLogLevel '{"level":7} // log 等级
ew 0x13
echo 1 > /proc/ext_port
flash set SUPER_SECURITY 0
// demo
echo "wan-mapping enable 0" > /proc/wan_vlan
ew 0xbb804410 0x13
echo 1 > /proc/ext_port
brctl show
brctl showmacs br0
Ifconfig
iptables -nvL
iptables -t nat –nvL
route -n
ip rule list
ip route list table [id]
cat /proc/hw_nat
cat /proc/rtl865x/sw_netif
cat /proc/rtl865x/netif
cat /proc/rtl865x/sw_l2
cat /proc/rtl865x/l2
cat /proc/rtl865x/sw_l3
cat /proc/rtl865x/l3
cat /proc/rtl865x/soft_aclChains
cat /proc/rtl865x/acl
cat /proc/net/arp
cat /proc/rtl865x/arp
cat /proc/rtl865x/ip
cat /proc/rtl865x/sw_nexthop
cat /proc/rtl865x/nexthop
cat /proc/rtl865x/pppoe
cat /proc/rtl865x/pvid
cat /proc/rtl865x/vlan
cat /proc/wan_vlan
cat /proc/lan_vlan
cat /proc/rtl865x/port_status;
echo "read 0xbb804410 0x4" > /proc/rtl865x/memory
echo "read 0xbb804420 0x4" > /proc/rtl865x/memory
echo "read 0xbb804418 0x4" > /proc/rtl865x/memory
cat /proc/qos
cat /proc/hw_qos_flag
cat /proc/rtl_hw_qos_config
cat /proc/rtl_8367_sw_acl
cat /proc/rtl_8367_hw_acl
cat /proc/rtl_8367r_vlan
tc qdisc show dev imq1
tc class show dev imq1
tc filter show dev imq1
tc filter show dev imq1 parent 22:
tc qdisc show dev imq0
tc class show dev imq0
tc filter show dev imq0
tc filter show dev imq0 parent 52:
cat /proc/rtl_8367_sw_acl
cat /proc/rtl_8367_hw_acl
cat /proc/rtl_8367r_vlan
dw 0xbb804500 64
dw 0xbb804700 64
dw 0xbb804800 64
dw 0xbb805000 64
cat /proc/rtl_8367Qos
echo "decision show" > /proc/rtl_8367Qos
echo prio2qid > /proc/rtl_8367Qos
echo clear > /proc/rtl865x/asicCounter
echo clear > /proc/rtl865x/stats
cat /proc/rtl865x/asicCounter
cat /proc/rtl865x/stats
echo 2 >/proc/fast_nat
echo "dump 8367" > /proc/rtl865x/asicCounter
cat /proc/rtl865x/stats
iptables -t mangle -Z
iptables -t mangle -nvL
during the test:
cat /proc/rtl865x/diagnostic (dump 3 times)
cat /proc/rtl865x/napt ;
cat /proc/rtl865x/sw_napt ;
echo current >/proc/rtl_8367Qos (dump 3 times)
after the test:
cat /proc/rtl_8367r_vlan
cat /proc/rtl865x/arp ;
cat /proc/rtl865x/l2 ;
cat /proc/rtl865x/asicCounter ;
cat /proc/rtl865x/stats
echo "dump 8367" > /proc/rtl865x/asicCounter
#cat /proc/mtd
dev: size erasesize name
mtd0: 00300000 00001000 "boot+cfg+linux"
mtd1: 00500000 00001000 "rootfs"
mtd2: 00300000 00001000 "boot+cfg+linux2"
mtd3: 004d0000 00001000 "rootfs2"
mtd4: 00000000 00000000 "ConfigureA"
flash_erase /dev/mtdx 0 0 // 擦除
描述:
设置国家区域,取值范围为1~10 (FCC, IC, ETSI, SPAIN, FRANCE,MKK, ISREAL, MKK1, MKK2, MKK3)
iwpriv wlan0 set regdomain =1
常用区域码如下:
描述:
设置国家码。
值:
iwpriv wlan0 set_mib countrycode=1
iwpriv wlan0 set_mib countrystr=CN
第一条命令是设置countrycode的使能状态,1为使能。后面那条命令为设置具体的国家码,2个字符,比如CN就表示中国,US表示美国。
可忽略。
描述:
设置ACL表的访问策略。
值:
iwpriv wlan0 set aclmode=0
0: Disable this function
1: Allow all entries of ACL table to associate AP
2: Reject all entries of ACL table to associate AP
描述:
触发邻区扫描。
值:
iwpriv wlan0 at_ss
扫描之后一般要延时5s钟才能扫描完毕,然后使用cat /proc/wlan0/SS_Result获取扫描结果。 综合起来,可以使用下面的命令序列完成全部过程。
iwpriv wlan0 at_ss;sleep 5;cat /proc/wlan0/SS_Result
描述:
设置AP SSID。
值:
iwpriv wlan0 set ssid=11n-AP
0z,132 ASCII字符串
描述:
设置WLAN模式。
值:
iwpriv wlan0 set band=11
使用位域变量,1 – 802.11b, 2 –802.11g, 4 –802.11a, 8 –802.11n, 64 –802.11ac,实际使用的时候需要使用或运算表示混合模式,如1+2+8=11,表示802.11bng模式;4+8+64=76,表示802.11anac模式。
描述:
设置WLAN模式。
值:15827488347
iwpriv wlan0 set deny_legacy =11
使用位域变量,1 – 802.11b, 2 –802.11g,这个mib在配置为802.11g only和802.11n only模式的时候很有用,因为控制帧和管理帧需要使用802.11b,因此设置802.11g only其实还是需要打开协议栈的80.2.11b模式,此时同时把deny_legacy设置为1,不让802.11b模式的设备连接,这样就完成了模式802.11g only的设置;同样地,设置802.11n only其实还是需要打开协议栈的80.2.11bg模式,此时同时把deny_legacy设置为3,不让802.11b和802.11g模式的设备连接,这样就完成了模式802.11g only的设置。
描述:
设置固定TX速率为固定速率。
值:
iwpriv wlan0 set txforce=11 //54Mbps
取值说明:0~11 for rate 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48, 54M;
12~27 for rate MCS0, MCS1, …, MCS15;
这个命令设置完之后会立即生效,不需要对wlan0进行down up操作。
描述:
设置TX为固定速率。
值:
iwpriv wlan0 set fixrate=0x08000000 //mcs15
取值说明:bit0~bit11 for rate1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48, 54Mbps
bit12-bit27 for MCS0, MCS1, …, MCS15;
这个命令设置完之后不会立即生效,需要对wlan0进行down up操作之后才能生效。另外设置fixrate之前需要使用iwpriv wlan0 set_mib autorate=0把autorate关闭。
描述:
设置WIFI信道。
值:
iwpriv wlan0 set Channel=6
802.11b/g: 1 ~ 14 (it must agree with the CountryRegion setting)
802.11a: 36~165 (it must agree with the CountryRegionABand setting)
另外,若开启了自动信道选择,值为0,即iwpriv wlan0 set Channel=0
描述:
设置Beacon周期。
值:
iwpriv wlan0 set bcnint=100
20 ~ 1024 (unit is in milli-seconds)
描述:
设置Dtim周期。
值:
iwpriv wlan0 set dtimperiod=1
1~255
描述:
设置发射功率百分比。
值:
iwpriv wlan0 set TxPower=100
0~100
描述:
设置11b 、11g保护。
值:
iwpriv wlan0 set disable_protection=0
0: auto
1: disable protection
WFA 4.2.31要求此处为0,,即要打开protection才能测试通过。Normally when 11g is used, driver will auto detect if legacy (11b) device is existed. When 11n is used, driver will auto detect if legacy (11b/g) device is existed. If yes, it will enable protection mode automatically.
描述:
设置启用或禁用OLBC。
值:
iwpriv wlan0 set disable_olbc =0
0: auto
1: disable protection
这里与上面的类似,默认设置为0,打开protection即可。Normally 11g AP should detect OLBC. If disabled, AP will enter protection mode only when legacy device associated.
描述:
设置CCK(802.11b)的Preamble type。
值:
iwpriv wlan0 set preamble_type =1
0: long Preamble
1: short Preamble
设置为short preamble的话,可以提升11b模式下的吞吐量。
描述:
设置RTS门限。(RTS threshold)
值:
iwpriv wlan0 set rtsthres=2347
1~2347
描述:
设置Fragment门限。(Fragment threshold)
值:
iwpriv wlan0 set FragThreshold=2346
256~2346
描述:
设置启用或禁用包聚合。
值:
iwpriv wlan0 set ampdu=1
0: disable
1: enable
描述:
设置启用或禁用在相同SSID内STA之间的包不转发, 即AP内隔离功能。
值:
iwpriv wlan0 set block_relay=0
0: disable
1: enable
描述:
设置启用或禁用SSID隐藏。
值:
iwpriv wlan0 set hiddenAP=1
0: disable
1: enable
描述:
设置启用或禁用Guard interval。
值:
iwpriv wlan0 set shortGI20M =0
0: disable
1: enable
shortGI40M和shortGI80M的SGI配置方式与shortGI20M是一样的。
描述:
禁用组播转单播功能。
值:
iwpriv wlan0 set mc2u_disable =0
0: 开启 mc2u
1: 关闭mc2u
描述:
设置限制每个BSS关联客户端的最大数量。
值:
iwpriv wlan0 set stanum =0
0: disable this function, 相当于无限制
1~32 现在个数为1~32
描述:
设置HT WLAN带宽。
值:
iwpriv wlan0 set use40M =1
0: 20 MHz
1: 40 MHz
2: 80 MHz
描述:
设置启用或禁用coexist支持。
值:
iwpriv wlan0 set coexist=1
0: disable
1: enable
开启的话是支持coexist,相当于20MHz/40MHz带宽,若为0,则为40MHz带宽模式。
描述:
设置启用或禁用HT STBC支持。
值:
iwpriv wlan0 set stbc=1
0: disable
1: enable
描述:
To locate the 40MHz channel in combination with the control.
值:
iwpriv wlan0 set 2ndchoffset=1
1: below 下面
2: Above 上面
描述:
设置启用或禁用AMSDU部分。
值:
Iwpriv wlan0 set amsdu =0
0: disable
1: enable
描述:
设置Block Ack window size。
值:
iwpriv wlan0 set ampduSndSz=64
1~64
描述:
设置接入限制开关。
值:
iwpriv wlan0 set chk_assoc_lowrssi_en=0
0: Disable
1:Enable
描述:
设置AP接入限制阈值。
值:
iwpriv wlan0 set chk_assoc_lowrssi_thres=-60
0 ~ -100
描述:
设置强制下线开关。
值:
iwpriv wlan0 set chk_lowrssi_en=0
0: Disable
1:Enable
描述:
设置强制下线阈值。
值:
Iwpriv wlan0 set chk_lowrssi_thres =-70
0~ -100
描述:
设置周期性调试信息输出的时间间隔。
值:
Iwpriv wlan0 set rssi_dump =1
0~ 100,单位为秒
0为关闭周期性输出的调试信息,否则周期性输出调试信息。