链路适配是指发射机选择最优的MCS向特定的接收机发送数据的过程。链路自适应算法的实现有其特殊性,但通常基于测量的数据包错误率(PER)。大多数算法监视PER并调整MCS以跟踪一个最佳的长期平均值,以平衡由于使用更高MCS发送更短数据包而减少的开销和由于更高MCS增加的PER而增加的重传开销。
根据需要确定PER值意味着在一段时间内监视数据包错误,这段时间相对于数据包的持续时间来说很长。例如,要非常粗略地测量10% /,就需要发送器发送10个出错的数据包。正因为如此,基于PER的链路适应缓慢地适应不断变化的信道条件。在许多环境中,信道随着站的移动或环境本身的变化而随时间变化,例如荧光灯泡中50hz或60hz的电离周期,环境中物体的移动,或外部噪声源的变化。这些变化的条件在时间尺度上发生的速度可能比可以测量的速度快。因此,链路自适应算法选择的是长期最优的MCS,而不是瞬时最优的MCS。
如何更紧密地跟踪信道的变化可能提高性能考虑图15.1,而抽象地显示瞬时容量反映不断变化的信道条件,与吞吐量基于MCS选择实现长期10%和吞吐量基于MCS选择实现瞬间10%。当MCS被选择来满足一个长期的,数据包错误主要发生在瞬时容量低于长期平均值的地方。在极端的情况下,所有的数据包错误都发生在糟糕的信道条件下,这些条件将占10%的时间。在一个不那么极端的情况下,短时间的不良通道条件仍然会导致大部分的包丢失。
如果选定的MCS跟踪信道变化,那么当信道条件较差时,通过选择一个更稳健的MCS,可以通过更高的平均吞吐量实现相同的PER。通道条件有利于提高数据速率。由于信道条件差的时间段相对较短,并且在信道条件好的情况下可以发送更多数据,因此总体性能得到了提高。
MCS feedback
实现快速链路适应的一种机制是通过定期提供反馈让接收方参与MCS的选择过程。802.11n和802.11ac修正案为HT控制域添加了MCS反馈域,作为提供这种反馈的手段。接收机不断地监测接收到的传输质量或信道本身的特性,并对利用信道条件的最佳MCS提供建议。发射机采取建议的MCS,并将其与它所拥有的知识(例如发射功率放大器退关)结合起来,得出一个MCS,应该最优地使用链路。
802.11n和802.11ac修正案并没有指定接收端获得MCS建议的技术。一个好的假设是,建议的MCS是在接收方看来能够优化吞吐量的MCS。然而,吞吐量取决于所使用的排序算法和可设想的替代优化点,例如通过瞄准低的PER来优化延迟,以避免重传。很可能一个基于MCS反馈的实际链路自适应算法需要自适应地调整建议的MCS,可能是接收机在其MCS建议的高或低方面一贯出错的因素。
对于各种波束形成形式,发射机可以根据信道状态的知识进行MCS的选择。通过隐式反馈波束形成和基于CSI的显式反馈波束形成,发射机可以直接了解信道状态。通过压缩和非压缩显式波束形成,发射机以每个空间流的信噪比值的形式接收信道的间接信息。因此,发射机可以使用信道状态知识进行MCS选择。在某些情况下,当接收机有干扰时,发射机可以从mcs反馈中受益。
MCS feedback mechanisms
工作站可以通过三种方式接收MCS反馈:
*直接。工作站发送一个请求MCS反馈并收到一个即时响应。这种方法允许请求者接收并应用反馈TXOP相同。
*延迟。一个工作站发送一个请求MCS反馈和延迟响应发生,当响应器在随后的TXOP中传输响应时应答器。
*主动。工作站接收MCS反馈,而不受任何要求的影响反馈。
MCS反馈机制在“ HT控制”字段中受支持,当封装在“控制包装器”帧中时,该字段可能存在于QoS数据帧中,也可能存在于诸如ACK和BA之类的控制帧中。
有了802.11ac修订版,HT控制字段现在有两个变体:802.11n中引入了HT变体HT控制字段,而802.11ac中引入了VHT变体HT控制字段。 这两个变量的区别在于字段中第一位的设置。 两种变体都支持上面概述的用于MCS反馈的机制,而VHT变体提供更多细节以适应更宽的信道操作,更大数量的空间流以及关于为其提供MCS反馈的PPDU类型的更多细节。
MCS feedback using the HT variant HT Control field
为了请求反馈,站点将HT变量HT控制字段中的MRQ(MCS请求)字段设置为1,并为MSI(MCS请求序列标识符)选择一个介于0到6之间的值。 在延迟响应的情况下,MSI用于将响应与请求相关联,并且所选值取决于实现。 在MCS反馈响应中,响应者将MSFI(MCS反馈序列标识符)设置为相应MCS请求中的MSI值。 当响应者提供未经请求的MCS反馈时,MFSI值将设置为7。
如果HT变体HT控制字段包含在一个聚合中的多个MPDU中,则MRQ和MSI字段将设置为相同的值,并有效地充当单个请求。 HT变量HT Control字段应包括在所有帧中,以构成一个集合以提高鲁棒性。
MCS请求应在交错的探测PPDU中发送,或者应在NDP通告字段设置为1的情况下发送,并随后进行NDP传输。 探测PPDU或NDP中HT-LTF的数量由要探测的空间尺寸的总数确定,包括除PPDU数据部分使用的尺寸之外的任何额外空间尺寸。
收到MCS请求后,响应者应计算MCS估算值。 响应者可以选择使用以下任何MFB(MCS反馈)和MFSI组合发送响应帧:
* MFB = 127,MFSI =7。没有提供有关立即进行中的请求或任何其他未决请求的信息。
* MFB = 127,MFSI在0到6的范围内。响应者无法提供反馈。
* MFB的范围是0到126,MFSI的范围是0到6。响应者正在为先前收到的请求提供反馈,而MSI等于MFSI。
* MFB的范围是0到126,MFSI =7。响应者正在提供未经请求的反馈。
硬件限制可能会限制响应者可以处理的未完成的MCS请求的数量。 当来自不同请求者或来自同一请求者但具有不同MSI值的新MCS请求到达时,响应者可以选择忽略该请求或放弃当前请求并开始对新请求进行计算。 如果响应者放弃未决的MCS估计计算,则应返回MFB设置为127且MFSI设置为与MCS请求中的相应MSI相同的值的响应。
响应者受到它可以提出的MCS建议的限制。 它不能提出包含比请求者支持的特殊流更多的特殊流的MCS建议。 除非请求者在“支持的MCS设置”字段的“ Tx不等调制支持”位中指出它能够进行不等调制,否则它也不应提出MCS建议进行不等调制。
MCS feedback using the VHT variant HT Control field
站点通过在VHT功能元素中设置VHT链路适应能力字段来指示其使用VHT变体HT控制字段对链路适应的支持。 可能有三种支持级别:无支持,仅支持未经请求的反馈或支持未经请求和已请求的反馈。
为了征求反馈,站点将VHT变量HT控制字段中的MRQ字段设置为1。响应站点收到反馈请求后,将计算SNR值和建议的MCS以及空间流的数量。 响应站计算基于承载请求的PPDU,除非请求由VHT NDP通告帧承载,在这种情况下,计算基于帧之后的VHT NDP。
对反馈请求的响应在VHT变体HT控制字段中进行,并且可以是立即的(在携带确认的控制包装帧中),也可以是延迟的(在随后的QoS数据帧中)。响应包括来自请求的MSI值。 响应者无法提供响应,可以通过将MCS,N_STS设置为全1来发送空响应。
工作站也可以提供未经请求的反馈,在这种情况下,VHT变量HT控制字段中的Unsolicited字段设置为1。使用未经请求的反馈,在PPDU上提供使用VHT变量HT Control字段443的附加15.4 MCS反馈, 计算SNR,MCS和N_STS。 如果MU PPDU,编码类型,是否使用STBC,是否对PPDU进行波束成形(基于VHT-SIG-A PHY标头中BEAMFORMED位的设置),则该附加信息包括组ID;以及 PPDU的信道带宽。