WiFi(Wireless Fidelity)基础(七)
目录
一、基本介绍(Introduction)
二、进化发展(Evolution)
三、PHY帧((PHY Frame )
四、MAC帧(MAC Frame )
五、协议(Protocol)
六、安全(Security)
七、802.11ac标准
八、802.11ad标准
九、802.11ax (WiFi 6)标准
十、WiFi直接连接(WiFi Direct)
十一、测试(Testing)
十二、WiFi射频测量(WiFi RF Meas.)
https://www.sharetechnote.com/
七、802.11ac标准
以下是802.11ac的主要特性列表。这些主要特性中的大多数将导致(lead to)PLDC和MAC帧结构(frame structure)的一些添加/修改(addition / modification)。这些详细的变化将在每个相应的章节(corresponding section)中进行总结(summarize)。如果您不熟悉WLAN框架结构和基本操作,我建议您先浏览(go through)WLAN框架结构(WLAN Frame structure)与WLAN协议(WLAN protocol)页面。
● 动机和策略(Motivation and Strategy)
● 总体规范/要求(Overall Specification/Requirements)
● 超高频吞吐量(VHT:Very High Throughput)
● 检测(Detect)802.11ac AP
● 检测802.11ac站点(设备)
● 动态带宽分配(Dynamic Bandwidth Allocation)
● 其他帧类型(Additional Frame Types)
● 波束形成报告轮询帧(Beamforming Report Poll Frame)
● 超高速吞吐量空数据包公告(VHT NDP Announcement,NDP:Null Data Packet)
● 超高速吞吐量压缩波束形成帧(VHT Compressed Beamforming Frame)
● 用于探测PPDU的VHT前导码格式(VHT preamble format for sounding PPDUs)
● 通道测量(探测)程序(Channel measurement (sounding) procedures)
● MU-MIMO波束成形(MU-MIMO BeamForming)
● 兼容性(Compatibility)
1、动机和策略(Motivation and Strategy)
几乎在每种通信技术的每一次演进(evolution)中(物联网IoT除外),802.11ac的主要动机(motivation)是实现(achieve)比以前的(previous)最高吞吐量技术(在这种情况下为802.11n)高得多的吞吐量(throughput)。我敢肯定,你会看到另一种技术的目标是比802.11ac更高的吞吐量(我们已经听说过802.11ad)。
那么,实现(achieve)这种高吞吐量的技术策略(technical strategy)是什么?总体策略也与其他技术相同(如果你看过蜂窝技术(celluar technology)的演变过程(例如WCDMA->HSPA->DCHSPA或LTE->LTE-MIMO->载波聚合(Carrier Aggregation)等),你会很容易理解该策略。这种演变的一些技术可以列出如下
● 更多天线(Antenna)
● 更多数据流(Data Stream)
● 更宽的信道(更宽的射频带宽) Wider Channel (Wider RF Bandwidth)
● 更高的调制深度(Modulation Depth)
● 更大的MAC(或更高)层帧(Layer Frame)
考虑到这个列表,如果你试图将这些技术中的每一项与802.11ac的每一个规范相关联(correlate),那么就更容易了解这些规范的全貌(big picture)或动机(motivation )。
为了让您对这一动机有更实际的了解(practical insight),我将比较(compare)802.11n(802.11ac之前最先进的技术)和802.11ac在上述功能/技术方面的表现。(注:我从参考Ref [13]中获得了大部分信息。如果您有时间,我建议您至少通读一次本文件)
2、总体规范/要求(Overall Specification/Requirements)
802.11 ac的第一个关键词key word(基本特性fundamental characteristics)是
5 Ghz band ONLY !
任何新技术(technology)都不可能在一夜之间(overnight)发明(invent)出来。我们都明白这一点。然而,我们不想永远等到一切都准备好了。在这种情况下,一种常见的做法(common practice)是将这些需求/愿望列表(requirement/wishlist)拆分(split)为多个块(multiple chunk),并逐块(chunk by chunk)攻击(attack)它们。在某些技术中,他们将这些区块(chunk)称为“阶段(Stage)”(如阶段1、阶段2等),在某些技术中将其称为“时期(Phase)”(如,时期1、时期2等)。在802.11ac中,他们称它们为Wave(例如,Wave 1、Wave 2等)。802.11ac已发展(evolve)为两波(至少截至目前at least as of now,2016年8月),如下所示。
< Wave 1 >
最大3 x 3:3个数据流(3 x 3 : 3 Data Streams Max)
最大80 Mhz <=802.11最大带宽的两倍 (Max 80 Mhz <== Twice the max bandwidth of 802.11 n)
400ns 保护间隔(400ns GI (Guard Interval))
256 QAM(Quadrature Amplitude Modulation正交振幅调制)
5/6 编码速率(Coding Rate)
在所有最大条件下为1300 Mbps (1300 Mbps under all of the max condition)
< Wave 2 >
4 x 4:4数据流或最大8 x 8:8数据流 (4 x 4 : 4 Data Streams or 8 x 8 : 8 Data Streams Max)
传输波束形成(基于显式CSI) (Transmission BeamForming (based on Explicit CSI))
AP支持MU-MIMO
最大160 Mhz
800ns GI(保护间隔)
256 QAM
5/6 编码速率
3466.7 Mbps,4 x 4
6933.3 Mbps,8 x 8
3、检测802.11ac接入点(Detecting 802.11ac Access Point)
如果你有一个802.11ac无线网卡(设备),你要做的第一件事就是弄清楚(figure out)设备周围的接入点(AP:Access Point)是否支持802.11ac(事实上Actually,你不需要弄清楚这一点,你的WLAN设备就会明白的)。
那么,您的WLAN设备将如何确定(figure out)AP是否支持802.11ac?它是通过对来自AP的称为Beacon的特殊信息信号进行解码(decode)来实现的。如果您的AP支持802.11ac,它将广播(broadcast)包含以下信息的Beancon信号。
下面的信标信号(Beacon Signal)来自无线局域网测试设备安立MT8862(Anritsu MT8862)。安立通过用户数据向我提供了一个从Beacon开始的完整样本日志(sample log),这将是我研究的一个很好的资源。随着我从日志中了解到更多信息,我将分享更多信息。您可以看到关于如何捕获(capture)此日志的测试设置。
它可能看起来很简单,有两行信息,但它将包含(contain)AP支持的802.11ac功能(capability)的许多细节。以下是完整的解码信息(decoded information)。
Tag: VHT Capabilities (IEEE Stc 802.11ac/D3.1)
Tag Number: VHT Capabilities (IEEE Stc 802.11ac/D3.1) (191)
Tag length: 12
VHT Capabilities Info: 0x03800022
.... .... .... .... .... .... .... ..10 = Maximum MPDU Length: 11 454 (0x00000002).... .... .... .... .... .... .... 00.. = Supported Channel Width Set: Neither 160MHznor 80+80 supported (0x00000000).... .... .... .... .... .... ...0 .... = Rx LDPC: Not supported.... .... .... .... .... .... ..1. .... = Short GI for 80MHz: Supported.... .... .... .... .... .... .0.. .... = Short GI for 160MHz and 80+80MHz: Not supported.... .... .... .... .... .... 0... .... = Tx STBC: Not supported.... .... .... .... .... .000 .... .... = Rx STBC: None (0x00000000).... .... .... .... .... 0... .... .... = SU Beam-former Capable: Not supported.... .... .... .... ...0 .... .... .... = SU Beam-formee Capable: Not supported.... .... .... .... 000. .... .... .... = Compressed Steering Number of Beamformer AntennasSupported: 1 (0x00000000).... .... .... .000 .... .... .... .... = Number of Sounding Dimensions: 1 (0x00000000).... .... .... 0... .... .... .... .... = MU Beam-former Capable: Not supported.... .... ...0 .... .... .... .... .... = MU Beam-formee Capable: Not supported.... .... ..0. .... .... .... .... .... = VHT TXOP PS: Not supported.... .... .0.. .... .... .... .... .... = +HTC-VHT Capable (VHT variant HT Control field):Not supported.... ..11 1... .... .... .... .... .... = Max A-MPDU Length: 1 048 575 (0x00000007).... 00.. .... .... .... .... .... .... = VHT Link Adaptation: No Feedback (0x00000000)...0 .... .... .... .... .... .... .... = Rx Antenna Pattern Consistency: Not supported..0. .... .... .... .... .... .... .... = Tx Antenna Pattern Consistency: Not supported00.. .... .... .... .... .... .... .... = Reserved: False
VHT Supported MCS Set
Rx MCS Map: 0xfffe.... .... .... ..10 = Rx 1 SS: MCS 0-9 (0x0002).... .... .... 11.. = Rx 2 SS: Not Supported (0x0003).... .... ..11 .... = Rx 3 SS: Not Supported (0x0003).... .... 11.. .... = Rx 4 SS: Not Supported (0x0003).... ..11 .... .... = Rx 5 SS: Not Supported (0x0003).... 11.. .... .... = Rx 6 SS: Not Supported (0x0003)..11 .... .... .... = Rx 7 SS: Not Supported (0x0003)11.. .... .... .... = Rx 8 SS: Not Supported (0x0003)...0 0000 0000 0000 = Rx Highest Long GI Data Rate (in Mb/s, 0 = subfield not in use):0x0000Tx MCS Map: 0xfffe.... .... .... ..10 = Tx 1 SS: MCS 0-9 (0x0002).... .... .... 11.. = Tx 2 SS: Not Supported (0x0003).... .... ..11 .... = Tx 3 SS: Not Supported (0x0003).... .... 11.. .... = Tx 4 SS: Not Supported (0x0003).... ..11 .... .... = Tx 5 SS: Not Supported (0x0003).... 11.. .... .... = Tx 6 SS: Not Supported (0x0003)..11 .... .... .... = Tx 7 SS: Not Supported (0x0003)11.. .... .... .... = Tx 8 SS: Not Supported (0x0003)...0 0000 0000 0000 = Tx Highest Long GI Data Rate (in Mb/s, 0 = subfield not in use):0x0000
Tag: VHT Operation (IEEE Stc 802.11ac/D3.1)
Tag Number: VHT Operation (IEEE Stc 802.11ac/D3.1) (192)
Tag length: 5
VHT Operation Info
Channel Width: 80 MHz (0x01)Channel Center Segment 0: 42Channel Center Segment 1: 0
Basic MCS Map: 0xfffc
.... .... .... ..00 = Basic 1 SS: MCS 0-7 (0x0000).... .... .... 11.. = Basic 2 SS: Not Supported (0x0003).... .... ..11 .... = Basic 3 SS: Not Supported (0x0003).... .... 11.. .... = Basic 4 SS: Not Supported (0x0003).... ..11 .... .... = Basic 5 SS: Not Supported (0x0003).... 11.. .... .... = Basic 6 SS: Not Supported (0x0003)..11 .... .... .... = Basic 7 SS: Not Supported (0x0003)11.. .... .... .... = Basic 8 SS: Not Supported (0x0003)
4、检测802.11ac站点(设备) Detecting 802.11ac Station (Device)
通讯(Communication)是两个或多个方面之间的信息交流。上一节(previous section)展示了该设备如何计算(figure out)出AP的802.11ac能力。然后你会问AP如何计算设备的802.11ac功能。AP可以从来自设备的[Probe Request探查请求]消息中计算出设备能力,如下所示(as shown below)。
注意:此日志由使用Anritsu MT8862的测试设置( test setup)捕获
IEEE 802.11 Probe Request, Flags: …C
Type/Subtype: Probe Request (0x04)
Frame Control Field: 0x4000
.... ..00 = Version: 0.... 00.. = Type: Management frame (0)0100 .... = Subtype: 4Flags: 0x00.... ..00 = DS status: Not leaving DS or network is operating in AD-HOC mode(To DS: 0 From DS: 0) (0x00).... .0.. = More Fragments: This is the last fragment.... 0... = Retry: Frame is not being retransmitted...0 .... = PWR MGT: STA will stay up..0. .... = More Data: No data buffered.0.. .... = Protected flag: Data is not protected0... .... = Order flag: Not strictly ordered
.000 0000 0011 1100 = Duration: 60 microseconds
Receiver address: Anritsu_07:91:0e (00:00:91:07:91:0e)
Destination address: Anritsu_07:91:0e (00:00:91:07:91:0e)
Transmitter address: e0:cb:ee:f9:4a:de (e0:cb:ee:f9:4a:de)
Source address: e0:cb:ee:f9:4a:de (e0:cb:ee:f9:4a:de)
BSS Id: Anritsu_07:91:0e (00:00:91:07:91:0e)
Fragment number: 0
Sequence number: 2048
Frame check sequence: 0xfe06c6aa [correct]
[Good: True][Bad: False]
IEEE 802.11 wireless LAN management frame
Tagged parameters (83 bytes)
Tag: SSID parameter set: MT8862A6000000008Tag Number: SSID parameter set (0)Tag length: 17SSID: MT8862A6000000008Tag: Supported Rates 6, 9, 12, 18, 24, 36, 48, 54, [Mbit/sec]Tag Number: Supported Rates (1)Tag length: 8Supported Rates: 6 (0x0c)Supported Rates: 9 (0x12)Supported Rates: 12 (0x18)Supported Rates: 18 (0x24)Supported Rates: 24 (0x30)Supported Rates: 36 (0x48)Supported Rates: 48 (0x60)Supported Rates: 54 (0x6c)Tag: DS Parameter set: Current Channel: 36Tag Number: DS Parameter set (3)Tag length: 1Current Channel: 36Tag: HT Capabilities (802.11n D1.10)Tag Number: HT Capabilities (802.11n D1.10) (45)Tag length: 26HT Capabilities Info: 0x01ef.... .... .... ...1 = HT LDPC coding capability:Transmitter supports receiving LDPC coded packets.... .... .... ..1. = HT Support channel width: Transmitter supports 20MHz and40MHz operation.... .... .... 11.. = HT SM Power Save: SM Power Save disabled (0x0003).... .... ...0 .... = HT Green Field: Transmitter is not able to receive PPDUswith Green Field (GF) preamble.... .... ..1. .... = HT Short GI for 20MHz: Supported.... .... .1.. .... = HT Short GI for 40MHz: Supported.... .... 1... .... = HT Tx STBC: Supported.... ..01 .... .... = HT Rx STBC: Rx support of one spatial stream (0x0001).... .0.. .... .... = HT Delayed Block ACK: Transmitter does not supportHT-Delayed BlockAck.... 0... .... .... = HT Max A-MSDU length: 3839 bytes...0 .... .... .... = HT DSSS/CCK mode in 40MHz: Won't/Can't use of DSSS/CCKin 40 MHz..0. .... .... .... = HT PSMP Support: Won't/Can't support PSMP operation.0.. .... .... .... = HT Forty MHz Intolerant: Use of 40 MHz transmissionsunrestricted/allowed0... .... .... .... = HT L-SIG TXOP Protection support: Not supportedA-MPDU Parameters: 0x03.... ..11 = Maximum Rx A-MPDU Length: 0x03 (65535[Bytes])...0 00.. = MPDU Density: no restriction (0x00)000. .... = Reserved: 0x00Rx Supported Modulation and Coding Scheme Set: MCS SetRx Modulation and Coding Scheme (One bit per modulation): 2 spatial streams.... .... .... .... .... .... 1111 1111 = Rx Bitmask Bits 0-7: 0x000000ff.... .... .... .... 1111 1111 .... .... = Rx Bitmask Bits 8-15: 0x000000ff.... .... 0000 0000 .... .... .... .... = Rx Bitmask Bits 16-23: 0x000000000000 0000 .... .... .... .... .... .... = Rx Bitmask Bits 24-31: 0x00000000.... .... .... .... .... .... .... ...0 = Rx Bitmask Bit 32: 0x00000000.... .... .... .... .... .... .000 000. = Rx Bitmask Bits 33-38: 0x00000000.... .... ...0 0000 0000 0000 0... .... = Rx Bitmask Bits 39-52: 0x00000000...0 0000 0000 0000 0000 0000 000. .... = Rx Bitmask Bits 53-76: 0x00000000.... ..00 0000 0000 = Highest Supported Data Rate: 0x0000.... .... .... ...0 = Tx Supported MCS Set: Not Defined.... .... .... ..0. = Tx and Rx MCS Set: Equal.... .... .... 00.. = Maximum Number of Tx Spatial Streams Supported: 0x0000,TX MCS Set Not Defined.... .... ...0 .... = Unequal Modulation: Not supportedHT Extended Capabilities: 0x0000.... .... .... ...0 = Transmitter supports PCO: Not supported.... .... .... .00. = Time needed to transition between 20MHz and 40MHz:No Transition (0x0000).... ..00 .... .... = MCS Feedback capability: STA does not provide MCS feedback(0x0000).... .0.. .... .... = High Throughput: Not supported.... 0... .... .... = Reverse Direction Responder: Not supportedTransmit Beam Forming (TxBF) Capabilities: 0x0000.... .... .... .... .... .... .... ...0 = Transmit Beamforming: Not supported.... .... .... .... .... .... .... ..0. = Receive Staggered Sounding: Not supported.... .... .... .... .... .... .... .0.. = Transmit Staggered Sounding:Not supported.... .... .... .... .... .... .... 0... = Receive Null Data packet (NDP):Not supported.... .... .... .... .... .... ...0 .... = Transmit Null Data packet (NDP):Not supported.... .... .... .... .... .... ..0. .... = Implicit TxBF capable: Not supported.... .... .... .... .... .... 00.. .... = Calibration: incapable (0x00000000).... .... .... .... .... ...0 .... .... = STA can apply TxBF using CSI explicitfeedback: Not supported.... .... .... .... .... ..0. .... .... = STA can apply TxBF using uncompressedbeamforming feedback matrix: Not supported.... .... .... .... .... .0.. .... .... = STA can apply TxBF using compressedbeamforming feedback matrix: Not supported.... .... .... .... ...0 0... .... .... = Receiver can return explicit CSIfeedback: not supported (0x00000000).... .... .... .... .00. .... .... .... = Receiver can return explicit uncompressedBeamforming Feedback Matrix: not supported (0x00000000).... .... .... ...0 0... .... .... .... = STA can compress and use compressedBeamforming Feedback Matrix: not supported (0x00000000).... .... .... .00. .... .... .... .... = Minimal grouping used for explicitfeedback reports: No grouping supported (0x00000000).... .... ...0 0... .... .... .... .... = Max antennae STA can support when CSIfeedback required: 1 TX antenna sounding (0x00000000).... .... .00. .... .... .... .... .... = Max antennae STA can supportwhen uncompressed Beamforming feedback required:1 TX antenna sounding (0x00000000).... ...0 0... .... .... .... .... .... = Max antennae STA can supportwhen compressed Beamforming feedback required:1 TX antenna sounding (0x00000000).... .00. .... .... .... .... .... .... = Maximum number of rows of CSI explicitfeedback: 1 row of CSI (0x00000000)...0 0... .... .... .... .... .... .... = Maximum number of space time streams forwhich channel dimensions can be simultaneouslyestimated: 1 space time stream (0x00000000)000. .... .... .... .... .... .... .... = Reserved: 0x00000000Antenna Selection (ASEL) Capabilities: 0x00.... ...0 = Antenna Selection Capable: Not supported.... ..0. = Explicit CSI Feedback Based Tx ASEL: Not supported.... .0.. = Antenna Indices Feedback Based Tx ASEL: Not supported.... 0... = Explicit CSI Feedback: Not supported...0 .... = Antenna Indices Feedback: Not supported..0. .... = Rx ASEL: Not supported.0.. .... = Tx Sounding PPDUs: Not supported0... .... = Reserved: 0x00Tag: Vendor Specific: Microsof: Unknown 8Tag Number: Vendor Specific (221)Tag length: 7OUI: 00-50-f2 (Microsof)Vendor Specific OUI Type: 8Type: Unknown (0x08)Tag: VHT Capabilities (IEEE Stc 802.11ac/D3.1)Tag Number: VHT Capabilities (IEEE Stc 802.11ac/D3.1) (191)Tag length: 12VHT Capabilities Info: 0x338051b2.... .... .... .... .... .... .... ..10 = Maximum MPDU Length: 11 454 (0x00000002).... .... .... .... .... .... .... 00.. = Supported Channel Width Set:Neither 160MHz nor 80+80 supported (0x00000000).... .... .... .... .... .... ...1 .... = Rx LDPC: Supported.... .... .... .... .... .... ..1. .... = Short GI for 80MHz: Supported.... .... .... .... .... .... .0.. .... = Short GI for 160MHz and 80+80MHz:Not supported.... .... .... .... .... .... 1... .... = Tx STBC: Supported.... .... .... .... .... .001 .... .... = Rx STBC: 1 Spatial Stream Supported(0x00000001).... .... .... .... .... 0... .... .... = SU Beam-former Capable: Not supported.... .... .... .... ...1 .... .... .... = SU Beam-formee Capable: Supported.... .... .... .... 010. .... .... .... = Compressed Steering Number of BeamformerAntennas Supported: 3 (0x00000002).... .... .... .000 .... .... .... .... = Number of Sounding Dimensions: 1(0x00000000).... .... .... 0... .... .... .... .... = MU Beam-former Capable: Not supported.... .... ...0 .... .... .... .... .... = MU Beam-formee Capable: Not supported.... .... ..0. .... .... .... .... .... = VHT TXOP PS: Not supported.... .... .0.. .... .... .... .... .... = +HTC-VHT Capable (VHT variant HT Controlfield): Not supported.... ..11 1... .... .... .... .... .... = Max A-MPDU Length:1 048 575 (0x00000007).... 00.. .... .... .... .... .... .... = VHT Link Adaptation: No Feedback(0x00000000)...1 .... .... .... .... .... .... .... = Rx Antenna Pattern Consistency:Supported..1. .... .... .... .... .... .... .... = Tx Antenna Pattern Consistency:Supported00.. .... .... .... .... .... .... .... = Reserved: FalseVHT Supported MCS SetRx MCS Map: 0xfffa.... .... .... ..10 = Rx 1 SS: MCS 0-9 (0x0002).... .... .... 10.. = Rx 2 SS: MCS 0-9 (0x0002).... .... ..11 .... = Rx 3 SS: Not Supported (0x0003).... .... 11.. .... = Rx 4 SS: Not Supported (0x0003).... ..11 .... .... = Rx 5 SS: Not Supported (0x0003).... 11.. .... .... = Rx 6 SS: Not Supported (0x0003)..11 .... .... .... = Rx 7 SS: Not Supported (0x0003)11.. .... .... .... = Rx 8 SS: Not Supported (0x0003)...0 0011 0000 1100 = Rx Highest Long GI Data Rate(in Mb/s, 0 = subfield not in use): 0x030cTx MCS Map: 0xfffa.... .... .... ..10 = Tx 1 SS: MCS 0-9 (0x0002).... .... .... 10.. = Tx 2 SS: MCS 0-9 (0x0002).... .... ..11 .... = Tx 3 SS: Not Supported (0x0003).... .... 11.. .... = Tx 4 SS: Not Supported (0x0003).... ..11 .... .... = Tx 5 SS: Not Supported (0x0003).... 11.. .... .... = Tx 6 SS: Not Supported (0x0003)..11 .... .... .... = Tx 7 SS: Not Supported (0x0003)11.. .... .... .... = Tx 8 SS: Not Supported (0x0003)...0 0011 0000 1100 = Tx Highest Long GI Data Rate (in Mb/s, 0 = subfield not in use): 0x030c
5、超高速吞吐量 VHT (Very High Throughput)
802.11ac中最重要的关键词(keywords)之一是VHT。VHT代表(stand for)极高吞吐量(Very High Throughput)。对于这意味着什么,您不需要任何额外的解释(additional explanation)。其含义显而易见(obvious and self-explanatory)。
问题是如何实现(achieve)VHT,以及引入(introduce)什么样的新帧(frame)和协议来实现(implement)这一点。
VHT是物理层帧(Physical layer frame)概念(concept),其定义如下所示。
在wireshark日志中,您可能会从Radiotap Header中看到此帧信息,如下所示。
6、动态带宽分配(Dynamic Bandwidth Allocation)
802.11ac支持各种(various)类型的带宽组合(bandwidth combination),如20 Mhz、80 Mhz、160 Mhz。然后问题是“他们如何分配(allocate)带宽(bandwidth)?”。静态还是动态(Statically or Dynamically)?
静态分配(Static allocation)意味着发送器Transmitter(启动器Initiator)和接收器Reciever(响应器Responder)在连接建立的早期阶段(early stage)协商(negotiate)并确定带宽,并保持不变,直到通信(会话session)结束。
动态分配(Dynamic allocation)意味着即使在单个会话期间(single session),发送器和接收器SOMEHOW也会在很短的时间间隔(interval)内协商/确定(negotiate/determine)带宽。
802.11ac采用(pick up)了动态分配方法(approach)。它允许在每次传输(transmission)时更改带宽。
那么问题是“怎么做?”。他们使用何种协商(negotiation)来确定/商定(determine/agree)发射机和接收机(Transmitter and Reciever)之间的带宽?
Data Transmission in Detail
基本想法很简单。正如您在详细信息中的数据传输部分(Data Transmission in Detail)所看到的,所有802.11的基本信道获取过程(channel acquisition process)都是基于RTS/CTS机制的。802.11ac使用相同的机制来动态地(dynamically)确定可用带宽(avaiable bandwidth)。其思想是将整个可能的802.11ac频带分割(split)成多个基本分段块(例如,20 MHz、40 MHz、80 MHz等),并在多个频率块(multiple frequency block)上模拟地(simulateneously)执行(perform)多个RTS/CTS。(这与LTE中的载波聚合(Carrier Aggregation)非常相似similary )。首先,启动器(initiator)通过多频率块(frequency block)发送多个RTS,并等待CTS。如果启动器在所有块上接收到CTS,则可以使用所有频率块(非常宽的聚合带宽aggregated bandwidth)。如果启动器对于所有传输的RTS只接收到几个CTS,则它使用接收CTS的较小带宽。(详见参考Ref [9])。
让我给你举几个(a couple of)例子,并举例说明动态带宽(Dynamic Bandwidth)是如何发展的。这里只有两种情况,但在这方面可能有更多的变化(variation)。
< Case 1 >
在这种情况下,节点(Node)A(发起方initiator)和节点B(接收方recipient)之间没有干扰(interference),并且两个节点都可以使用全带宽。当然,在完成步骤3之前,这些节点对带宽可用性(availability)一无所知。
步骤0:就在步骤1之前(Right before Step 1),假设( it is assumed that)节点A将整个80 Mhz部分(section)划分为4个连续的(contiguous)20 Mhz块,并对这些20 Mhz块中的每个执行(perform)载波感测(carrier sensing )。并且假设( it is assumed that)所有这些20MHz块都是可用的(available)。
步骤1:假设(assuming that)调度(scheduling)在DCF中完成,节点A等待被称为DIFS(DCF Inter Frame Space/DCF帧间空间)的特定时间段。
步骤2:节点A使用802.11a帧(frame)向节点B发送(transmit)每个20MHz块的RTS,并且假设(it is assumed that)所有这些RTS都成功到达节点B。
步骤3:(假设节点B检测(detect)到针对所有20MHz块的RTS)节点B针对每20MHz子块(subblock)使用802.11a帧来发送CTS。
步骤4:(假设节点A检测到所有20MHz块的CTS)节点A假设所有80Mhz BW都是无干扰/无干扰的(no-interference),并利用全部80Mhz以802.11ac模式发送数据。
步骤5:(假设节点B接收并解码了整个数据)节点B每20 Mhz块(总共40 Mhz)发送Ack。
< Case 2 >
这是在节点B(接收方recipient)上的80Mhz块内的一些频谱块(spectrum block)中存在一些干扰(interference)的情况。当然,在完成步骤3之前,这些节点对带宽可用性(availability)一无所知。
步骤0:就在步骤1之前,假设( it is assumed that)节点A将整个80Mhz部分划分为4个连续的20Mhz块,并对这些20Mhz块中的每个执行载波感测。并且假设所有这些20MHz块都是可用的。
步骤1:假设调度在DCF中完成,节点A等待称为DIFS(DCF帧间空间)的特定时间段。
步骤2:节点A使用802.11a帧向节点B发送每个20MHz块的RTS。
步骤3:(由于各种various原因,例如,节点B由于干扰而未能接收RTS,或者基于载波感测的介质Medium繁忙)节点B仅针对两个连续的(consecutive)20MHz块使用802.11a帧来发送CTS。
步骤4:(假设节点A检测到两个20MHz块的CTS)节点A假设只有40Mhz BW是畅通的/没有干扰的,并利用40Mhz以802.11ac模式发送数据。
步骤5:(假设节点B接收并解码了整个数据)节点B发送两个20MHz块(总共40Mhz)的Ack。
7、其他MAC帧类型 (Additional MAC Frame Types)
在802.11ac中,以下新的帧类型被添加到现有类型中。大多数新帧类型用于实现信道测量和报告(Channel Measurement and Report),以执行MU-MIMO波束形成(Beamforming)。
8、波束形成报告轮询帧(Beamforming Report Poll Frame)
9、超高速吞吐量空数据包公告(VHT NDP Announcement,NDP:Null Data Packet)
该帧用于波束形成器BeamFormer(AP)启动(initiate)信道测量过程。(有关详细信息,请Refer to 802.11ac 8.3.1.20 VHT NDP Announcement frame format)
10、超高速吞吐量压缩波束形成帧(VHT Compressed Beamforming Frame)
该帧用于BeamFormee(用户)报告信道测量结果(Refer to 802.11ac 8.5.23.2 VHT Compressed Beamforming frame format)
11、用于探测PPDU的VHT前导码格式(VHT preamble format for sounding PPDUs)
请参阅802.11ac表22-4——VHT PPDU的每个字段标签的字段。(Refer to 802.11ac Table 22-4—Fields of the VHT PPDU for each field label.)
12、通道测量(探测)程序(Channel measurement (sounding) procedures)
为了对特定设备执行(perform)正确的(proper)波束成形(beamforming),找出(figure out)波束成形器(BeamFormer)和波束成形器(BeanFormee)之间的准确(accurate)信道条件至关重要(crucial)。为了计算(figure out)通道条件,BeamFormer和BeamFormee执行一系列特定的校准过程(calibration process),该过程被称为通道测量或探测过程(Channel Measurement or Sounding process)。具体如下。
有关详细信息,请参阅802.11ac 9.31.5.2 VHT探测协议序列(sounding protocol sequences)规则、图9-41a和图9-41a。
<在单个VHT波束形成的情况下(In case of single VHT BeamFormee)>
步骤1:BeamFormer(通常为AP)发送(transmit)NDP(Null Data Packet) Announcement frame
步骤2:BeamFormee(通常是WLAN用户设备)响应NDP通知announcement(NDP中未指定的其他设备推迟(defer)信道接入(channel access),直到信道测量过程完成)
步骤3:波束形成器(Beamformer)发送携带训练序列(Training Sequence)的空数据包(NDP Frame, VHT preamble format/NDP帧,VHT前导码格式preamble format)
步骤4:BeamFormee分析训练序列并发送反馈矩阵(有关反馈矩阵(feedback Matrix)的详细信息,请参阅802.11ac 8.4.1.48 VHT Compressed Beamforming Report字段)
步骤5:BeamFormer根据反馈矩阵计算(calculate)引导矩阵(steering matrix)
<在多个VHT波束形成的情况下(In case of multiple VHT BeamFormee)>
步骤1:BeamFormer(通常为AP)发送NDP(空数据包Null Data Packet)公告帧(Announcement frame)
步骤2:BeamFormee(通常是WLAN用户设备)响应NDP通知(NDP中未指定的其他设备推迟(defer)信道接入(channel access),直到信道测量过程完成)
步骤3:波束形成器发送(transmit)携带(carry)训练序列的空数据包(NDP帧,VHT前导码格式preamble format)
步骤4:BeamFormees分析训练序列
步骤5:BeamFormee1发送-发送反馈矩阵(有关反馈矩阵(feedback Matrix)的详细信息,请参阅802.11ac 8.4.1.48 VHT压缩波束形成报告字段)
步骤6:BeamFormer发送下一个BeamFormee的BeamForming报告轮询(BeamForming Report Poll)
步骤7:下一次BeamFormee发送反馈矩阵(feedback Matrix)
步骤8:重复步骤6,7,直到BeamFormer获得所有BeamFormee的所有信息。
步骤9:BeamFormer根据反馈矩阵计算引导矩阵(steering matrix)
注:这个复杂过程(complicated process)的基本目的(fundamental purpose)是弄清楚(figure out)接入点和设备之间无线电信道(radio channel)的特征charateristics(性质nature)。这也被称为“通道探测(Channel Sounding)”。在此过程中,不会传递(convey)任何用户数据。这意味着这个过程可能是一种开销overhead(吞吐量下降因素throughput degradation factor)。如果AP可以通过从该过程中提取(extract)最合适的波束形成参数(BeamForming parameter)来最佳地优化(optimize)通信,则该过程可以获得总体吞吐量增益(throughput gain)。然而,如果AP未能从该过程中获得最佳波束成形参数,这只会产生不必要的开销(overhead)。
13、MU-MIMO波束成形(MU-MIMO BeamForming)
MU-MIMO代表(stands for)多用户MIMO,并且这仅在802.11ac中采用adopt(在802.11n及更低版本中不采用)。当我们说MIMO(多输入多输出Multi Input Multi Output)时,它通常指SU-MIMO(Single User MIMO),这是一种仅针对( targeted to)一个设备(用户)的MIMO。相反(On the contrary),MU-MIMO是模拟地(simulateneously)针对多个用户的MIMO。这意味着在MU-MIMO中,发射机transmitter(接入点Access Point)可以向多个用户发送多个数据流。
听起来不错(It sounds fancy),对吧?然而,这项技术的实现(implementation)并不像听起来那么容易,实际性能(real performance)也不会像预期的那样好。也许它需要经历(go through)漫长的进化过程。让我们思考一下与MU-MIMO相关的一些挑战(challenge)和可能的问题(possible issues)
● 为了(In order to)向每个用户提供最佳的优化(the best optimized)波束(beam),它需要非常准确地估计(accurately estimated)每个用户的无线电信道(radio channel)信息。
● 通常,为了对每个用户进行适当的(proper)信道估计(estimation),AP将需要来自每个用户(设备)的一些信道质量(channel quality)信息,该过程将在信令或数据通信(signaling or data communication)方面产生一些开销。
● 由于多个用户的多个波束同时(simultaneously)传输,因此一个波束总是有机会干扰(interfere)其他波束。因此,很难应用非常高阶的(very high order)调制调度modulation schedule(例如,64QAM或256QAM)。
● 为了为设备制造更好的指向波束(pointed beam),需要许多天线(antenna)来形成波束(beam forming)。考虑到我们最多有8个天线,我对我们能为多个用户生成(generate)多好的波束不太有信心confident(尤其是用户数量的增加)。
抛开(Put aside)这种MU-MIMO的实际可行性(practical feasibility)不谈,本规范(specification)已经完成。在大多数技术情况下(尽管并非所有情况都如此),一旦发布(issue)规范,技术就会不断发展(evolve),变得越来越好。
802.11ac MU-MIMO波束形成用如下数学表达式(mathematical expression)表示express(这是基于802.11ac 22.3.11 SU-MIMO and DL-MU-MIMO Beamforming)
14、兼容性(Compatibility)
每当任何技术的新版本(version)问世(come out)时,最令人担忧的(the most concerning)事情之一就是兼容性。这些新东西(stuff)能和那些旧东西一起工作吗?关于802.11ac,你也会有同样的问题。802.11ac是否与现有(以前的previous)技术(例如802.11a和802.11n)兼容?答案是肯定的。802.11ac从一开始就被设计为与802.11a/n兼容(be compatible with),用于接入点和设备。
Reference
[1] Wikipedia : IEEE 802.11ac
[2] 802.11ac Analysis Webinar
[3] Understanding IEEE 802.11ac VHT Wireless
[4] 802.11ac Testing with the Vector Signal Transceiver
[5] Gigabit Wi-Fi 802.11ac In Depth (YouTube)
[6] 802.11ac Gigabit WiFi: Fact vs. Fiction (YouTube)
[7] Demonstrating the Performance of the Aruba Networks 802.11ac (YouTube)
[8] Aruba Controller-based and Controllerless Wi-Fi (YouTube)
[9] 802.11ac : A Survival Guide - Chapter 3. The MAC
[10] 802.11ac Wireless Packet Captures
[11] Deploying, Testing, and Tuning 802.11ac
[12] How to validate the WI-FI Information within Wireshark – Part I: Determining the WLAN capabilities
[13] 802.11ac: The Fifth Generation of Wi-Fi Technical White Paper
相关文章:

WiFi(Wireless Fidelity)基础(七)
目录 一、基本介绍(Introduction) 二、进化发展(Evolution) 三、PHY帧((PHY Frame ) 四、MAC帧(MAC Frame ) 五、协议(Protocol) 六、安全&#x…...

Agilent安捷伦33522B任意波形发生器
Agilent安捷伦33522B任意波形发生器30兆赫 2通道 为您最苛刻的测量生成全方位信号的无与伦比的能力 具有 5 倍低谐波失真的正弦波,可提供更纯净的信号 脉冲频率高达 30 MHz,抖动减少 10 倍,可实现更精确的计时 具有排序功能的逐点任意波形功能…...

PostgreSQL-如何创建并发索引
索引简介 索引是数据库中一种快速查询数据的方法。索引中记录了表中的一列或多列值与其物理位置之间的对应关系,就好比一本书前面的目录,通过目录中页码就能快速定位到我们需要查询的内容。 建立索引的好处是加快对表中记录的查找或排序,但…...

【大数据模型】使用Claude浅试一下
汝之观览,吾之幸也!本文主要聊聊Claude使用的流程,在最后对国内外做了一个简单问题的对比,希望国内的大数据模型更快的发展。 一、产品介绍 claude官网 Claude是一款由前OpenAI的研究员和工程师开发的新型聊天机器人,…...
鼎盛合——国产电量计芯片的分类与发展
电池技术在 200 余年的时间里不断演进,并在近 30 年的时间里取得了飞速发展,从最早期的铜-锌电池、铅酸电池,到目前的锂电池、钠电池,电池能量密度从早期的~10Wh/kg 飞速攀升至 200Wh/kg。回顾历史上来看,电池管理系统…...

交叉验证之KFold和StratifiedKFold的使用(附案例实战)
🤵♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞Ǵ…...

Cloud Kernel SIG月度动态:发布ANCK 5.10、4.19新版本,ABS新增仓库构建功能
Cloud Kernel SIG(Special Interest Group):支撑龙蜥内核版本的研发、发布和服务,提供生产可用的高性价比内核产品。 01 SIG 整体进展 发布 ANCK 5.10-014 版本。 发布 ANCK 4.19-027.2 版本。 ABS 平台新增 OOT 仓库临时构建功…...

JavaScript:new操作符
一、new操作符的作用 用于创建一个给定构造函数的实例对象 new操作符创建一个用户定义的对象类型的实例 或 具有构造函数的内置对象的实例。二、new一个构造函数的执行过程 2.1、创建一个空对象obj 2.2、将空对象的原型与构造函数的原型连接起来 2.3、将构造函数中的this绑定…...

XShell配置以及使用教程
目录 1、XShell介绍 2、安装XShell 1. 双击运行XShell安装文件,并点击“下一步” 2. 点击“我接受许可证协议中的条款”,点击“下一步” 3. 点击“浏览”更改默认安装路径,点击“下一步” 4. 直接点击“安装” 5. 安装完成࿰…...

Vue3 基础语法
文章目录 1.创建Vue项目1.1创建项目1.2 初始项目 2.vue3 语法2.1 复杂写法2.2 简易写法2.3 reactive(对象类型)2.4 ref(简单类型)2.5 computed(计算属性)2.6 watch(监听) 3.vue3 生命周期4.vue3 组件通信4.…...

【开源项目】Disruptor框架介绍及快速入门
Disruptor框架简介 Disruptor框架内部核心的数据结构是Ring Buffer,Ring Buffer是一个环形的数组,Disruptor框架以Ring Buffer为核心实现了异步事件处理的高性能架构;JDK的BlockingQueue相信大家都用过,其是一个阻塞队列…...

双向链表实现约瑟夫问题
title: 双向链表实现约瑟夫问题 date: 2023-05-16 11:42:26 tags: **问题:**知n个人围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去&…...
日心说为人类正确认识宇宙打下了基础(善用工具的重要性)
文章目录 引言I 伽利略1.1 借助天文望远镜获得了比别人更多的信息。1.2 确定了科学研究方法:实验和观测 II 开普勒三定律 引言 享有科学史上崇高地位的人,都需要在构建科学体系上有重大贡献。 日心说在哥白尼那里还是一个假说,伽利略拿事实…...

Kali-linux系统指纹识别
现在一些便携式计算机操作系统使用指纹识别来验证密码进行登录。指纹识别是识别系统的一个典型模式,包括指纹图像获取、处理、特征提取和对等模块。如果要做渗透测试,需要了解要渗透测试的操作系统的类型才可以。本节将介绍使用Nmap工具测试正在运行的主…...

Java版本电子招标采购系统源码:营造全面规范安全的电子招投标环境,促进招投标市场健康可持续发展
营造全面规范安全的电子招投标环境,促进招投标市场健康可持续发展 传统采购模式面临的挑战 一、立项管理 1、招标立项申请 功能点:招标类项目立项申请入口,用户可以保存为草稿,提交。 2、非招标立项申请 功能点:非招标…...

Java字符串知多少:String、StringBuffer、StringBuilder
一、String 1、简介 String 是 Java 中使用得最频繁的一个类了,不管是作为开发者的业务使用,还是一些系统级别的字符使用, String 都发挥着重要的作用。String 是不可变的、final的,不能被继承,且 Java 在运行时也保…...

中国20强(上市)游戏公司2022年财报分析:营收结构优化,市场竞争进入白热化
易观:受全球经济增速下行的消极影响,2022年国内外游戏市场规模普遍下滑。但中国游戏公司凭借处于全球领先水平的研发、发行和运营的能力与经验,继续加大海外市场布局,推动高质量发展迈上新台阶。 风险提示:本文内容仅代…...
如何自学C++编程语言,聊聊C++的特点,别轻易踩坑
为什么现在有那么多C培训班呢?因为这些培训班可以为学生安排工作,而外包公司因为缺人,需要做很多项目,可能需要在全国各地分配不同的程序员去干不同的项目,因此需要大量的程序员入职。这样,外包公司就会找培…...
算法Day07 | 454.四数相加II,383. 赎金信,15. 三数之和, 18. 四数之和
Day07 454.四数相加II383. 赎金信15. 三数之和18. 四数之和 454.四数相加II 题目链接:454.四数相加II 寻找两个数组之和,是否与另外两个数组之和有特定的关系。 因为数值可能跨度太大,选择使用下标表示为对应的数值大小,会很浪费…...
ps抠图、抠头发去背景等
方法一:背景橡皮擦 一、很早之前我们使用的是魔术棒工具,但现在我们可以使用Photoshop 有内置的“背景橡皮擦” 步骤: 第1步:在Photoshop中打开需要修的图。 第2步:单击并按住工具栏…...

国防科技大学计算机基础课程笔记02信息编码
1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)
目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...

前端导出带有合并单元格的列表
// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...

高等数学(下)题型笔记(八)空间解析几何与向量代数
目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...

CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...