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步:单击并按住工具栏…...

计算机组成原理基础练习题第一章
有些计算机将一部分软件永恒地存于只读存储器中,称之为() A.硬件 B.软件C.固件 D.辅助存储器输入、输出装置以及外界的辅助存储器称为() A.操作系统 B.存储器 C.主机 D.外围设备完整的计算机系…...

[PyTorch][chapter 34][池化层与采样]
前言: 这里主要讲解一下卷积神经网络中的池化层与采样 目录 DownSampleMax poolingavg poolingupsampleReLu 1: DownSample 下采样,间隔一定行或者列进行采样,达到降维效果 早期LeNet-5 就采样该采样方式。 LeNet-5 2 Max pooling 最大值采样…...

Java进阶-字符串的使用
1.API 1.1API概述 什么是API API (Application Programming Interface) :应用程序编程接口 java中的API 指的就是 JDK 中提供的各种功能的 Java类,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要…...

接口自动化框架对比 | 质量工程
一、前言 自动化测试是把将手工驱动的测试行为转化为机器自动执行,通常操作是在某一框架下进行代码编写,实现用例自动发现与执行,托管在CI/CD平台上,通过条件触发或手工触发,进行回归测试&线上监控,代替…...

谷歌浏览器network error解决方法
很多用户在使用谷歌浏览器时候会出现network error网页提示,很多用户不知道该如何处理这一问题,其实解决方法不止一种,小编整理了两种谷歌浏览器network error解决方法,一起来看看吧~ 谷歌浏览器network error解决方法࿱…...

自动化测试如何做?接口自动化测试框架必备的9个功能,测试老鸟总结...
目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 当你准备使用一个…...

ANR原理篇 - ANR原理总览
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 文章目录 系列文章目录前言ANR流程概览ANR触发机制一、service超时机制二、broadcast超时机制三、provider超…...

新版Mamba体验超快的软件安装
在一文掌握Conda软件安装:虚拟环境、软件通道、加速solving、跨服务器迁移中详细介绍的conda的基本使用和遇到问题的解决方式,也提到了mamba作为一个替代工具,可以很好的加速conda的solving environemnt过程。但有时也会遇到一个很尴尬的问题…...

LDAP配置与安装
LDAP配置与安装 一、安装LDAP1、安装OpenLDAP及相关依赖包2、查看OpenLDAP版本3、配置OpenLDAP数据库4、设置OpenLDAP的管理员密码5、修改配置文件5.1. 修改{2}hdb.ldif文件5.2. 修改{1}monitor.ldif文件5.3. 修改{-1}frontend.ldif文件 6、验证LDAP的基本配置7、修改LDAP文件权…...

1-Linux环境安装JDK
Linux环境安装JDK 准备: ① Linux 环境 本文中Linux环境为 CentOS Linux 7 可使用以下命令查询 linux 系统版本: hostnamectl② 准备JDK包 进入官网 https://www.oracle.com/java/technologies/downloads/#java17下载对应jdk包 此处使用以前下载的旧…...