1、术语与缩写解释


缩写、术语 解释
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, 访问控制列表。

2、芯片信息


芯片型号及功能 详细说明
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

3、常见命令

3.1 修改WMM QOS 优先级权重

8192cd_cfg.h
#define NUM_TX_DESC 2176 //512 // kmalloc max size issue
修改分配内存。

3.2 关闭shortcut

disable_brsc // 指令未生效

3.3 CE 自适应测试

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的操作说明

3.4 开启dbg 模式

echo dbg 0 1 > /proc/wlan0/cmd // dig odfm debug

3.5 修改DIG

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- 92Eiwpriv wlan0 read_reg b,c50siwpriv wlan0 read_reg b,c58- 8812ARiwpriv wlan0 read_reg b,c50iwpriv wlan0 read_reg b,e50- 8814ARiwpriv wlan0 read_reg b,c50iwpriv wlan0 read_reg b,e50iwpriv wlan0 read_reg b,1A50iwpriv wlan0 read_reg b,1850- write DIG- 89ESiwpriv wlan0 write_reg b,c50,20 - 92ESiwpriv wlan0 write_reg b,c50,20iwpriv wlan0 write_reg b,c58,20- 8812ARiwpriv wlan0 write_reg b,c50,2aiwpriv wlan0 write_reg b,e50,2a- 8814ARiwpriv wlan0 write_reg b,c50,30iwpriv wlan0 write_reg b,e50,30iwpriv wlan0 write_reg b,1A50,30iwpriv 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]
3.6 修改wifi 重传次数

Iw ow/ wlan0
Iw1 ow1 /wlan1

iw 42a // 读取
ow 42a 2020 //写入 2020 shortretry longretry

setmib longretry  0x20 
setmib shortretry 0x20 
3.7 FLASH 覆盖

flw 30000 a0800000 1000000

Write 0x01000000 Bytes to SPI flash#1, offset 0x00030000<0xb0030000>, from RAM 0xa0800000 to 0xa1df0000

3.8 linux 打印等级

mount -o rw,remount /system
echo 0 > /proc/sys/kernel/printk
mount -o rw,remount /system

cat /proc/kmsg // 单次答应
cat /proc/kmsg& // 一直打印

3.9 RTL8367 端口镜像

如果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

3.10 配置mimo 多路方法
	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");
3.11 设置WIFI 参数
# 8192 root mibiwpriv wlan0 set_mib ssid="xxxxxx_2G"iwpriv wlan0 set_mib use40M=0iwpriv wlan0 set_mib amsdu=0iwpriv wlan0 set_mib ampdu=1iwpriv wlan0 set_mib channel=8iwpriv wlan0 set_mib rfe_type=1iwpriv wlan0 set_mib band=11iwpriv wlan0 set_mib shortGI20M=1iwpriv wlan0 set_mib shortGI40M=1iwpriv wlan0 set_mib shortGI80M=0iwpriv wlan0 set_mib vlan_enable=1iwpriv wlan0 set_mib vlan_id=2iwpriv 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 upsleep 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_affinityubus call reinit setLogLevel '{"level":7}    // log 等级
3.12 开启三层加速
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
3.13 ACL 调试指令
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/memorycat /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_8367Qosecho clear > /proc/rtl865x/asicCounter
echo clear > /proc/rtl865x/statscat /proc/rtl865x/asicCounter
cat /proc/rtl865x/statsecho 2 >/proc/fast_nat
echo "dump 8367" > /proc/rtl865x/asicCounter
cat /proc/rtl865x/stats
iptables -t mangle -Z
iptables -t mangle -nvLduring 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
3.14 查看系统分区
#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 // 擦除
3.15 regdomain(区域码)

描述:
设置国家区域,取值范围为1~10 (FCC, IC, ETSI, SPAIN, FRANCE,MKK, ISREAL, MKK1, MKK2, MKK3)
iwpriv wlan0 set regdomain =1
常用区域码如下:

3.16 countrycode和countrystr(国家码)

描述:
设置国家码。
值:
iwpriv wlan0 set_mib countrycode=1
iwpriv wlan0 set_mib countrystr=CN
第一条命令是设置countrycode的使能状态,1为使能。后面那条命令为设置具体的国家码,2个字符,比如CN就表示中国,US表示美国。
可忽略。

3.17 acl mode

描述:
设置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

3.18 at_ss(邻区扫描)

描述:
触发邻区扫描。
值:
iwpriv wlan0 at_ss
扫描之后一般要延时5s钟才能扫描完毕,然后使用cat /proc/wlan0/SS_Result获取扫描结果。 综合起来,可以使用下面的命令序列完成全部过程。
iwpriv wlan0 at_ss;sleep 5;cat /proc/wlan0/SS_Result

3.19 ssid

描述:
设置AP SSID。
值:
iwpriv wlan0 set ssid=11n-AP
0z,132 ASCII字符串

3.20 band(无线模式)

描述:
设置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模式。

3.21 deny_legacy(禁用bg无线模式)

描述:
设置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的设置。

3.22 txforce

描述:
设置固定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操作。

3.23 fixrate

描述:
设置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关闭。

3.24 channel(信道)

描述:
设置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

3.25 bcnint

描述:
设置Beacon周期。
值:
iwpriv wlan0 set bcnint=100
20 ~ 1024 (unit is in milli-seconds)

3.26 dtimperiod

描述:
设置Dtim周期。
值:
iwpriv wlan0 set dtimperiod=1
1~255

3.27 powerpercent(发射功率)

描述:
设置发射功率百分比。
值:
iwpriv wlan0 set TxPower=100
0~100

3.28 disable_protection

描述:
设置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.

3.29 disable_olbc

描述:
设置启用或禁用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.

3.30 preamble_type

描述:
设置CCK(802.11b)的Preamble type。
值:
iwpriv wlan0 set preamble_type =1
0: long Preamble
1: short Preamble
设置为short preamble的话,可以提升11b模式下的吞吐量。

3.31 rtsthres

描述:
设置RTS门限。(RTS threshold)
值:
iwpriv wlan0 set rtsthres=2347
1~2347

3.32 fragthres

描述:
设置Fragment门限。(Fragment threshold)
值:
iwpriv wlan0 set FragThreshold=2346
256~2346

3.33 ampdu

描述:
设置启用或禁用包聚合。
值:
iwpriv wlan0 set ampdu=1
0: disable
1: enable

3.34 block_relay

描述:
设置启用或禁用在相同SSID内STA之间的包不转发, 即AP内隔离功能。
值:
iwpriv wlan0 set block_relay=0
0: disable
1: enable

3.35 hiddenAP(隐藏SSID)

描述:
设置启用或禁用SSID隐藏。
值:
iwpriv wlan0 set hiddenAP=1
0: disable
1: enable

3.36 shortGI20M/ shortGI40M/ shortGI80M

描述:
设置启用或禁用Guard interval。
值:
iwpriv wlan0 set shortGI20M =0
0: disable
1: enable
shortGI40M和shortGI80M的SGI配置方式与shortGI20M是一样的。

3.37 mc2u_disable

描述:
禁用组播转单播功能。
值:
iwpriv wlan0 set mc2u_disable =0
0: 开启 mc2u
1: 关闭mc2u

3.38 stanum

描述:
设置限制每个BSS关联客户端的最大数量。
值:
iwpriv wlan0 set stanum =0
0: disable this function, 相当于无限制
1~32 现在个数为1~32

3.39 use40M(带宽)

描述:
设置HT WLAN带宽。
值:
iwpriv wlan0 set use40M =1
0: 20 MHz
1: 40 MHz
2: 80 MHz

3.40 coexist

描述:
设置启用或禁用coexist支持。
值:
iwpriv wlan0 set coexist=1
0: disable
1: enable
开启的话是支持coexist,相当于20MHz/40MHz带宽,若为0,则为40MHz带宽模式。

3.41 stbc

描述:
设置启用或禁用HT STBC支持。
值:
iwpriv wlan0 set stbc=1
0: disable
1: enable

3.42 2ndchoffset

描述:
To locate the 40MHz channel in combination with the control.
值:
iwpriv wlan0 set 2ndchoffset=1
1: below 下面
2: Above 上面

3.43 amsdu

描述:
设置启用或禁用AMSDU部分。
值:
Iwpriv wlan0 set amsdu =0
0: disable
1: enable

3.44 ampduSndSz

描述:
设置Block Ack window size。
值:
iwpriv wlan0 set ampduSndSz=64
1~64

3.45 chk_assoc_lowrssi_en

描述:
设置接入限制开关。
值:
iwpriv wlan0 set chk_assoc_lowrssi_en=0
0: Disable
1:Enable

3.46 chk_assoc_lowrssi_thres

描述:
设置AP接入限制阈值。
值:
iwpriv wlan0 set chk_assoc_lowrssi_thres=-60

0 ~ -100
3.47 chk_lowrssi_en

描述:
设置强制下线开关。
值:
iwpriv wlan0 set chk_lowrssi_en=0
0: Disable
1:Enable

3.48 chk_lowrssi_thres

描述:
设置强制下线阈值。
值:
Iwpriv wlan0 set chk_lowrssi_thres =-70
0~ -100

3.49 rssi_dump

描述:
设置周期性调试信息输出的时间间隔。
值:
Iwpriv wlan0 set rssi_dump =1
0~ 100,单位为秒
0为关闭周期性输出的调试信息,否则周期性输出调试信息。