12 | | 1. STA 1 wishes to send a data MPDU to the AP. Since STA 2 cannot directly hear this transmission, the likelihood of a collision might be large. Instead, STA 1 "requests to send" the MPDU by sending a very short RTS frame to the AP. This transmission may still collide, but it is very short, so the penalty to lost medium time is significantly mitigated. |
13 | | 1. When the AP receives this RTS frame, it checks the medium by looking at its NAV. If the NAV says the medium is clear, it sends the "clear to send" CTS frame in response. Critically, this CTS frame contains a duration field that species how long the medium will be occupied for the upcoming MPDU and ACK transmissions. |
14 | | 1. Since STA 2 is within the transmission range of the AP, it overhears this CTS transmission and updates it NAV for the entire duration specified in the CTS frame. This will prevent STA 2 from colliding with the upcoming MPDU transmission from STA 1. |
15 | | 1. Finally, STA 1 receives this CTS message and begins the transmission of the actual MPDU. This MPDU is now protected from collisions from anyone who overheard the AP's CTS transmission. |
| 12 | The 802.11 MAC design uses virtual carrier sensing and the [https://en.wikipedia.org/wiki/IEEE_802.11_RTS/CTS RTS/CTS handshake] to address the hidden node problem. The basic timeline of the RTS/CTS handshake is: |
17 | | RTS/CTS support was added in [wiki:../../../Changelog#a1.3Release 802.11 Reference Design (version v1.3)]. In this application note, we'll use the reference design and its [wiki:802.11/wlan_exp experiments framework] to investigate the hidden node problem. |
| 14 | 1. STA 1 wishes to send a data packet (MPDU) to the AP. STA 1 "requests to send" the MPDU by sending a very short RTS frame to the AP. This RTS transmission may still collide with a transmission by STA 2, but the RTS payload is very short, so the cost of losing the RTS is much less than losing the MPDU. |
| 15 | 1. When the AP receives this RTS frame, it checks the medium by looking at its NAV. If the NAV says the medium is clear, it sends the "clear to send" CTS frame in response. This CTS frame contains a duration field that species how long the medium will be occupied for the upcoming MPDU and ACK transmissions. The AP derives this duration value from the duration field in the RTS is received from STA 1. |
| 16 | 1. Since STA 2 is within the transmission range of the AP, it receives this CTS transmission and updates it NAV for the entire duration specified in the CTS frame. The non-zero NAV will prevent STA 2 from transmitting during the subsequent MPDU transmission by STA 1, avoiding an expensive collision. |
| 17 | 1. Finally, STA 1 receives this CTS message and begins the transmission of the actual MPDU. This MPDU is now protected from collisions from anyone who received the RTS or CTS transmissions. |
| 18 | |
| 19 | We added support for the standard RTS/CTS handshake in [wiki:../../../Changelog#a1.3Release 802.11 Reference Design v1.3]. In this application note, we'll use the reference design and its [wiki:802.11/wlan_exp experiments framework] to demonstrate the hidden node problem and measure the impact of using the RTS/CTS handshake. |