802.11(WiFi)
已与WiFi(802.11)入门合并。新增wifi7.适用读者:软件,芯片技术读者。涵盖物理层同步,信道估计,编解码,多用户的初步介绍,链路层多用户(trigger),Framing,BSS。有概论性文档,也有对协议的二次输出笔记,还有芯片工程实践。相信可以大大加快协议和基本物理层知识学习。
relis
早期独立完成了无线音频SOC芯片的所有设计,验证,综合,芯片测试工作。在oppo芯片初创团队学习了一些消费类产品视角,后在紫光展锐做产品竞争力分析,架构和技术管理工作,一次流片成功量产首颗WIFi 6 SOC芯片。
展开
-
一图读懂TWT
对traffic极少,传输间隔5分钟以上的效果,比广播TWT能效比好一倍以上。主要在于相比CSMA/CA和广播TWT,单播TWT采用了不受Beacon调度的机制,极大的减少了能耗。对traffic数量一般多的场景,能效比好。30s以上一次传输需求, STA 1250个以上的场景,相比802.11ax广播TWT更优。主要因为本身不需调度也没有冲突,且调度延迟比广播TWT更少。802.11ax 广播TWT实际应该比分析的802.11ah的RAW/Group更好一些,因为MU PPDU进一步减少了冲突和延迟。原创 2022-09-28 20:07:50 · 1754 阅读 · 0 评论 -
协议背后那些事(二) VHT CCA
增加了描述:CCA是需要在Mac slot boundaries 对齐的。如果不对齐,那么CCA 可能是一个假的idle,比如在D2期间的状态。也有可能是假的busy,比如在当前slot CCA并没有进行reset。也有可能是另外一个假的idle,比如在Rx/Tx之间的状态。...原创 2022-08-27 11:26:44 · 346 阅读 · 0 评论 -
WiFi SNR与信号强度
比如设定在37%,SNR=20dB以下剔除出网络。这也是RSSI-70 ~-50dBm的常见设定。而在5以下,几乎就是解不出来了,除非是BPSK还有一点可能。因为到了40,几乎所有的MCS都可以解调出来了。信号强度百分比=(SNR-5)/40*99%。那么这样一个信号百分比指示,就非常有意义了。那么为什么SNR上限值是40呢?原创 2022-08-21 18:15:17 · 2165 阅读 · 0 评论 -
协议背后那些事(一)HE双NAV
HE以前,只有一个NAV。这个NAV应该利用任何不是发给自己的frame的duration进行更新。这样的话,本机就知道当前有其他设备占用了空口。如果是发给自己的frame,表明是自己在共享一个空口。那么这个空口的控制应该由包的状态控制。比如trigger的时候,那么这个时候其实是应该更新NAV的。现在在HE的情况下,事情没有这么简单。原创 2022-08-23 20:31:04 · 330 阅读 · 0 评论 -
Wi-Fi发展史
WiFi 的诞生WiFi的历史挺长而有趣的。早在1971年, 夏威夷就覆盖了一个叫ALOHAnet的无线网络。ALOHAnet和相应的协议ALOHA就是后来的互联网和802.11协议的雏形。Vic Hayes是公认的“WiFi之父”。WiFi的源头是来自他于1974年加入NCR公司。NCR公司后来被Agere公司合并。1985年,美国联邦通信委员会释放了2.4G频段的ISM频谱,用作商业和科学用途。1991年,NCR公司联合美国电话电报公司,发明了准802.11 WaveLAN,原创 2021-12-10 15:15:11 · 11142 阅读 · 0 评论 -
灵敏度都那么低了,为什么CCA的阈值还是-82
主要决定于两个因素。一个因素是邻区的干扰。如果干扰弱,那么就可以调高一点。那么其实在家庭环境,这个不好控制。所以CCA阈值不好调整。但是如果仔细测量邻区的干扰,依然是可以变的,如隔壁家的羊毛。还有一个因素,是设备的抗干扰程度。如果耐受力好,那么cca阈值是可以调高的。这是NEC公司1998年的提案里面有过详细的描述。实际这个值的确是可以变化的。只是一般都不怎么变。原创 2024-03-09 14:58:57 · 54 阅读 · 0 评论 -
WiFi7:EMLSR 操作之二 – 打开和关闭
-必须的,non-AP 不能在收到AP的EML Operating Mode Notification或者Transition timeout interval结束前,在发送帧中设置Power Management子域为1。--推荐的,AP在收到STA发送的上述帧后,在Transition Timeout interval内,发送同样的帧,表示准备进入EMLSR模式。--non-AP发送EML Operating Mode Notification帧,将EMLSR Mode子域设置为0。原创 2024-01-03 17:02:09 · 551 阅读 · 0 评论 -
WiFi7: 使用Multi-Link Element告知ML信息之概述
NOTE-如果同一帧中,一个Multi-Link element和另一Multi-Link Element一并携带,且该Multi-Link element是被分片的(见(10.28.11(Element分片)),那么各分片element需要紧跟另一Multi-Link Element。STA接收到携带了含有Per-STA Profile subelement的Multi-Link Element时,必须基于STA Control 域的子域判断STA Info域的子域是否存在。原创 2024-01-07 16:25:57 · 799 阅读 · 0 评论 -
WiFi7之block Ack
CBA和MBA都允许不同的BA Bitmap长度。该长度由Block Ack Starting Sequence Control中的Fragment Number指定。-发送窗大小不超过ADDBA Response指示的Buffer size大小。-发送窗大小不超过Response的buffer size。WiFi7支持512与1024bit map的Ack。-发送窗大小不超过1024。-发送窗大小不超过1024。原创 2024-02-18 14:43:15 · 114 阅读 · 0 评论 -
WiFi7: MLD寻址
NOTE MLD MAC address可以和其下的某个STA的MAC address相同或者不同于任一MAC Address。NOTE 携带EAPOL-Key的PDUs的MSDU的SA和DA设置为MLD MAC address。原文:MLD使用MLD MAC address唯一的标识本MLD。MLD下的STA(s)使用与之不同的MAC address。--如果STA是AP,设置为AP的MAC address。--如果STA非AP,设置为AP的MAC address。原创 2024-01-04 11:05:44 · 796 阅读 · 0 评论 -
WiFi7: EMLSR 操作之三 – 运行时
non-AP在(Re)Association Request帧的Basic Multi-Link element的Common Info域的EML Capabilities子域的EMLSR Padding Delay子域中填写initial Control frame需要的最小MAC Padding duration。--NDP Announcement帧,STA Info域包含non-AP,和对应的sounding NDP。--CTS-to-self帧,RA为AP。原创 2024-01-03 17:49:17 · 577 阅读 · 0 评论 -
WiFi7: MLO操作之AP MLD的发现—AP的行为
原文:如果报告AP在Reduced Neighbor Report element中包含MLD Parameters子域,那么报告AP必须如9.4.2.169.2(Neighbor AP Information field)描述的,设置AP MLD ID,Link ID,BSS Parameters Change Count子域。--AP MLD2下的所有AP的信息还没有被和报告AP同一co-hosted AP下的其他和报告AP同一channel的AP报告过。报告AP满足要以下全部条件。原创 2024-01-12 14:34:01 · 305 阅读 · 0 评论 -
WiFi7: EMLSR操作之一 -- 概述
MLD如果dot11EHTEMLSROptionActivated设置为假,而dot11EHTEMLMROptionActivated设置为真,必须设置EML Capabilities Present子域为1,设置EMLSR Support子域为0.MLD如果MLSROption域MLMROption都都设置为假,必须设置EML Capabitlites Present子域为0。原文:非AP MLD可以仅在部分使能的link上和关联的AP MLD以EMLSR模式运行。将对应bit置为1。原创 2024-01-01 22:45:40 · 821 阅读 · 0 评论 -
WiFi7: 多link间的TWT对齐
这个TWT element必须包含Aligned TWT Bitmap子域,子域的比特设置为0,则表示TWT参数和Link ID Bitmap指示的Link的TWT参数一致。原文/注释:TWT请求方发送对齐/重叠的TWT SPs,将各TWT elements中的Target Wake Time设置为start时间相同,wake 间隔为公倍数关系。原文:TWT请求方发送TWT请求,请求中包含TWT elements,用以请求多Link间的TWT对齐/非对齐,发送给上述的STA。是一种TWT请求接收方的能力。原创 2024-01-01 22:06:00 · 424 阅读 · 0 评论 -
WiFi7: MLO发现和建立时的帧交换
原文:如果AP(可以是transmitted BSSID)在Beacon或Probe Response帧中既包含Reduced Neighbor Report element,也包含Basic Multi-Link element,且后者携带一个或更多的Per-STA Profile subelement(s),并且两个elements携带了同一被请求AP(附属于某AP MLD)的信息。原文:non-AP MLD需要先发现AP MLD和附属的AP(s)才能和AP MLD建立ML。原创 2024-01-16 15:13:22 · 252 阅读 · 0 评论 -
WiFi7: 使用Multi-Link Element告知ML信息之Link ID
NOTE-由于link ID标识了AP所建立的BSS的全生命周期,因此,当AP转移其BSS到另一channel(11.8.8(Selecting and advertising a new channel))时,link ID保持不变。Link ID是AP MLD下的各AP的唯一标识,取整数0-14。Link ID在该AP所建立的BSS的全生命周期内都不能更改。NOTE-non-AP MLD在发现期间获取AP的link ID(和AP所工作的link),将其用来在和该AP的MLO操作中标识该AP。原创 2024-01-07 16:40:34 · 805 阅读 · 0 评论 -
WiFi7: ML建立流程
-链接对应的non-AP STA1属于non-AP MLD1,其MAC地址和链接对应的AP关联的non-AP STA2(和某non-AP MLD2附属或者不附属于某MLD)的MAC地址相同。对各setup 链接,non-AP MLD和其下的non-AP STA处于何non-AP MLD之间相同的关联状态,关联对象是AP MLD下的对应AP。NOTE-对每一个setup链接,每种MLD下的non-AP STA和AP之间的服务即对应规则,与非MLD下的non-AP STA和AP之间的相同。原创 2024-01-16 20:21:20 · 222 阅读 · 0 评论 -
WiFi7: MLO操作之AP MLD的发现—ML probe request和response的使用
NOTE-non-AP MLD在Probe Request帧中请求某AP MLD下的某些或者全部AP的complete profile(以在Probe Request Multi-Link element中包含Link Info域的显式或者不包含的隐式方式),那么AP可能不能回应所有被请求的profiles,原因是size或者duration受限(9-34(Maximum data unit sizes(in octets) and durations(in microseconds))。原创 2024-01-14 10:46:54 · 237 阅读 · 0 评论 -
WiFi7: MLO之概述
关联后,non-AP不支持MLO操作。Non-AP可以使用任一AP的TSF和该TSF offset获知每一个AP的TSF信息。Non-AP MLD可以只有一个non-AP,比如其他non-AP关联的AP被AP MLD移除后。AP必须时MLD的,non-AP不必须是MLD的。原文:允许地,non-AP和另一non-AP间构建单一,直连地link TDLS。NOTE non-AP也可以从每个AP的beacon帧中获得各AP的TSF信息。原文/注释:non-AP使用non-AP MLD的MAC address。原创 2024-01-04 10:43:37 · 730 阅读 · 0 评论 -
wifi7有关的210个提案
[1] TGbe, “Compendium of motions related to the contents of the TGbe specification framework document,” 19/1755r8, September 2020. [2] Bin Tian (Qualcomm), “Discussion on 11be PHY capabilities,” 20/0975r0, July 2020. [3] TGbe, “Compendium of原创 2023-09-26 14:36:56 · 203 阅读 · 0 评论 -
WiFi7: MLO操作之AP MLD的发现
-必须包含AP MLD的Basic Multi-Link element。NOTE-如果non-AP MLD收到multi-link probe response,但是其中没有携带一个或多个关心的AP的profile,那么non-AP MLD可以再发送一个multi-link probe request来请求,通过在Probe Request Multi-Link element中包含对应Per-STA Profile subelement(s)。原创 2024-01-15 16:16:37 · 217 阅读 · 0 评论 -
wifi8 Multi-AP介绍
第一个TDMA由CC决定,它可以决定哪些AP(BSS)工作,也就是那些AP(BSS)不工作。每个BSS的信息都可以在CC处得到。这样就是一种基于CC的总控的MAP。作为一种结构,multi-AP最早在wifi7的草案中被提出。比如下面是一种设想。总体是以若干BSS为单位。第二个TDMA由sharing AP决定。它同样也会决定哪些AP工作,哪些不工作。但是wifi7估计不会加入。现在变成了wifi8的路线。显然,不工作,不一定好处。总控分为两个TDMA,原创 2023-11-29 15:51:17 · 460 阅读 · 0 评论 -
排队理论值
等待的队列的长度,那么就是输入速度乘以等待时间就好。而方差呢,就是长度再乘以一个差速比系数。即输出速度比(输出-输入)的比值。比如输出866,输入800。那么比值13.12。因此等待都是围观的被动等待。ping pong就是一种等待。当下一级在工作的时候,上一级只能等待。排队中,排队涉及到的是什么问题。既然输出,比输入的速度,快,那么何来涉及一个等待的问题呢。等待是围观层面的,而流量快,是宏观的层面的。原创 2023-08-02 14:31:22 · 54 阅读 · 0 评论 -
wifi 7主要性能提升
4096 QAM提升120%速度, 320MH在带宽提升200%速度。单用户低延迟提升80%,多用户低延迟提升25%。接近4倍的速率提升,高达36Gbps。MLO提升80%的低延迟和接近2倍的带宽。改变1:6GHz 320MHz。改变3:MLO & MRU。MRU提升30%的低延迟。改变2:4096 QAM。原创 2023-07-02 21:24:10 · 553 阅读 · 0 评论 -
wifi c++源代码解析之一:速率调整minstrel HT之一
头定义,将引用的文件包含,除了packet和simulator两个最基本,剩下的就只有wifi-mac和wifi-phy了。正如上面所说,这里是一个manager实体,那么它的manage的对象是应该存在的。特别的,SampleColumn作为HT的一个参数,只会探测一定数量的模式:NSS/GI等。该算法是将带宽,gi, stream都作为group的index的。以上类似一个连线的过程,设定当前manage多少的天线,设定它的phy, mac对象。当然这个manage的对象是从基础的对象中派生出来的。原创 2023-06-11 15:54:51 · 802 阅读 · 0 评论 -
chatgpt解析职场
在竞争激烈的职场上,各种职场难题时常出现,如何进行有效沟通、如何应对工作压力、如何提升职业能力等,这都是需要去克服的问题。一起来分享一下你的经验吧!原创 2023-05-22 19:43:18 · 821 阅读 · 0 评论 -
为什么就是不涨薪
所以对个人的培养,看重,其实非常重要,给予发挥空间,解决发挥的限制。说到这,博士就是这样,哈哈,说得没错,但是急躁。它是做射频方向的一些东西,也是SOC部门,但是显然,它的外部性表现得比较强。但是显然公司给的不到位,没多久,就走了。还有做功耗,做ECO,那,这个也是经常看到出现在邮件里,和外部联系比较强。总之不走的,不一定薪资涨了多少,至少在公司内部能得到很多露脸,锻炼的机会。也有离职的,做的不错,但是任务安排得不是很重,没有足够机会锻炼。那么这些都是影响输出的,别人不够配合,那么会影响。原创 2023-04-03 16:02:25 · 439 阅读 · 0 评论 -
wifi工程进阶之聚合
对于来包速度更快的场景,比如AR,VR,通话,它来包速度,应该看传感器和视频/音频的数据更新率,这里以音频48k采样率为准。当需要重传时,最大聚合包数由需要重传的起始包序号,需要重传的包序列,和聚合规格决定。即重传包+新包组成新的聚合包。当TCP/UDP有数据要发送时,请求access,在将要获得access权时,由mac层将请求与获得access期间的在queue的包聚合,将其一次打包给Phy 发送。聚合规格资源和最大聚合效率的非线性问题,即,聚合规格幂次增加,但聚合带来的吞吐提升类似log增加。原创 2023-03-05 20:04:05 · 739 阅读 · 0 评论 -
wifi 工程进阶之DBS(四)
另一种是平衡模式,该种模式在降低现有连接吞吐的情况下,增加第二条线路,以实现整体吞吐的增加。一种是增量模式,该种模式适用于不影响现有吞吐的情况下,增加第二条线路。对于第二种模式,需要尽量的在两条线路间做共享。对于第一种模式,需要增加的线路尽量小。原创 2023-02-05 22:05:32 · 574 阅读 · 0 评论 -
wifi工程进阶之dbs (三)
因为如果进去dbs,如果是5g频带,将会降低一半吞吐。为此,算法的要义就是当存在不同频带mcc要求时,切入dbs模式,当存在同一频带mcc要求时,切出dbs模式。操作上而言,因为dbs不一定是最佳的选择,所以需要见机而行,时而切入到dbs模式,时而切入到非dbs模式。scc是同一个信道的时分复用,相比dbs而言,它可以提供大于dbs两倍的带宽,因而是更优的。mcc相比dbs那效率肯定是更低的,切换信道导致软件的开销很大。当mcc时,不论同band还是非同一个band,都是很费时间的。那就不要进入dbs了。原创 2023-01-31 14:10:11 · 829 阅读 · 0 评论 -
wifi工程进阶之DBS (二)
现在方知道,这里延迟降低的比较对象并非是开两个之前的延迟,而是“开两个”之后的延迟。因此,为了实现较早期的DBS的价值,需要动态的使能DBS,即使得MCC状态时,动态切换到DBS或者2x2状态。但是对于高通以前的手机,对于苹果的手机,对于MTK的一些手机,似乎完全没有看到相关的测评。毕竟,无论苹果的手机还是MTK的手机,使用的WiFi芯片都宣称支持DBS。对于最新的高通手机,所以DBS降低延迟,那是直接开两个。直到对DBS的降低延迟的背后有了了解才恍然大悟。从OV的高通手机看,使用的时候是手动模式的。原创 2023-01-29 15:59:31 · 742 阅读 · 0 评论 -
wifi工程进阶之DBS(一)
SCC,MCC也是高通的概念。在实际的工程中,DBS和SCC,MCC构成了band/channel选择/切换的工具箱中的工具的集合。根据实际的硬件和信道情况,作出选择。DBS则不一样,是有两套实体,分别运行在不一样的band上面。SCC,MCC都是分时复用。前者使用更简便,这是其优势。因为不涉及channel的切换。DBS是高通定义的一个概念,全称是dual band simultaneous。不过,因为是分时的原因,所以SCC,MCC对吞吐影响是很大的。DBS和SCC,MCC是一脉相承的关系。原创 2023-01-28 17:04:16 · 2430 阅读 · 0 评论 -
802.11 MCS 的最低SNR分析
如果这样的话,那么PER是(1-十万分之一)^(11000**)=0.414, 0.59的错包率显然是无法接受的。因此,现在的MCS要求其实是百万分之一的BER作为基础的。当BER小于10万分之一的分界线。如果认为12%基本就是10%的话,那么10万分之一就是满足PER低于10%而来的。再试试另外一个百万分之一,我们发现,错包率就下降到不到10%了。初步看了一下,PER在10%以下认为是可以接受的。而SNR的核心,也有类似的原因,它和BER有关。那么10万分之一的分界线为什么是10万分之一。原创 2023-02-26 22:32:46 · 902 阅读 · 0 评论 -
一图读懂AMSDU和AMPDU聚合
原创 2023-02-21 16:36:32 · 1640 阅读 · 0 评论 -
隐藏节点 - 你永远不知道谁在偷听
wifi中,采用了类似的机制,每个设备占有自己的一段slot(时间),在此时间之外,需要随时监听有没有其他人在传输,如果没有,才能传输。因此,我们要进行认证,通过认证交换密码,并对信息进行加密,确保只有相互认证的对方才知道相互在说什么。但是问题也出在这,传输是以光速进行的,谁都不能保证,不在半路上碰上其他人。A向AP发送数据的时候,看不到B的存在,如果B此时也向AP发送数据,那么碰撞就发生了。说到底,无线通信是公开的,这与有线通信还不一样,在有线通信中,通信并不是公开的,至少有了线缆的保护。原创 2023-02-18 21:48:26 · 143 阅读 · 0 评论 -
把mac验证开展下去
有一段时间,我疯狂发了很多邮件。觉得都非常具有逻辑性,而且也非常有意义。但是却没有被执行。我很失落。其实别人也说了,这个很好。会参考。仅此而已。有一次我提了,有一个模板,一个结果,只要做了,就有那么一个东西。但是,不行,没人去做这件事情。光有目标还是不行的。这个东西如果能够重复稳定的使用,就很好。曾想让人搞一个空间复用的pattern,但是那些,基本就是只能造一个那样的case。这是技术化的表现。但没有成为一种流程化的东西。可以原创 2023-01-08 14:55:40 · 464 阅读 · 0 评论 -
wifi6空间复用
同一片空间,多个bss同时进行传输,是wifi6的空间复用技术。它提高了空间利用率,尤其在bss靠近内部的区域,可以免于隔壁bss的虚假干扰。通过检测隔壁bss信号强度,当其小于某个阈值时,认为可以复用。为此需要使用空间着色技术,以区分不同bss。当其他bss没有禁止空间复用,且前dcf完成时,那么本bss可以开始传输。对于multi bssid这样的场景,multiple bssid set认为属于同一个bss。ap或者sta都是可以进行空间复用的。空间复用并非完美原创 2023-01-08 14:07:39 · 564 阅读 · 0 评论 -
一图读懂block ack
一图读懂block ack。原创 2022-10-18 19:53:31 · 573 阅读 · 0 评论 -
再论802.11ax trigger机制和帧格式-笔记
1.分为user info和common infocommon:1.trigger type2.UL length3.More TF4.CS required5.UL_BW6.Gi and he-ltf type7.Mu-mimo he-ltf mode. ul mu-mimo. 多用户训练是串行还是并行(he-single stream pilot he-ltf mode(并行) or he masked he-ltf sequence mode(串行),仅在2xhe-ltf和4xhe-l原创 2022-05-15 15:37:36 · 2289 阅读 · 0 评论 -
Multiple BSSID set 笔记
multi-BSSID是一种多层次的BSS。每一个BSS可能属于真的那个AP,或者属于一些虚拟AP。这些BSS组成一个multi-BSSID BSS。每个BSS有自己的profile。Beacon, probe response在所有BSS中是共享的。实际AP(TxBSSID)代替虚拟AP发送。其中由multi-BSSID element,提供了各个BSS的BSSID以及配置信息(profile with elements)。1.一个profile可以用1个或能够装下所有elements的数个mult原创 2022-05-09 16:26:05 · 2152 阅读 · 0 评论