"WiFi 모델에서의 통신 가능 거리(3)"에서 살펴본 것처럼 WiFi 노드간의 최대 거리는 300미터로 가정되지만, 이보다 먼 거리의 노드들간에도 시뮬레이션은 별 문제없이 수행된다. 그러면, 송신 파워만 충분히 높다면 WiFi 인터페이스를 사용하는 장비들간의 통신 가능 거리에 제약은 없는 것일까? 그렇지는 않은데, 그 이유는 ACK Timeout 때문이다.
IEEE 802.11에서는 DATA 프레임을 송신하면 ACK 프레임을 수신해야만 하며, 지정된 시간안에 ACK가 수신되지 않으면 송신에 실패한 것으로 간주한다. 이 때 ACK가 수신되기를 기다리는 최대 시간이 ACK Timeout 이다. 따라서, 노드간의 거리가 너무 멀어서 ACK Timeout 시간안에 ACK를 수신할 수 없을만큼 propagation delay가 큰 경우에는 통신이 이루어지지 않는다.
표준[1]에 따르면, ACK Timeout은 SIFS, Slot time, PHY-RX-START-Delay의 합으로 구성(ACKTimeout = SIFS + Slot Time + PHY-RX-START-Delay)되며, propagation delay는 Slot time 내에 포함된 것으로 간주된다. 다음은 PHY 종류별 Slot time을 정리한 것이다[1]. Slot time을 구성하는 다른 요소들을 모두 무시한다 할지라도 Slot time이 그리 크지 않으므로, 장거리 전송을 수용할 수 있는 여지는 크지 않다. (802.11에서 propagation delay는 원래 1us 이하로 가정되었다는 점을 잊지말기 바란다.) Slot time과 ACK Timeout을 변경시켜 전송 거리를 증대시킬 수는 있으나[2], 이는 802.11 표준[1] 범위를 벋어난 것이다.

 

 


Riverbed(OPNET) Modeler에서 ACK Timeout 값은 상대방이 최저 속도로 ACK 프레임을 전송(transmission)할 때를 가정하고 계산되며, 이 시간안에 응답 프레임에 대한 수신이 시작되면 timeout은 발생하지 않는다(이 부분은 표준[1]과 조금 차이가 있다). 따라서, propagation delay가 최저 속도로 ACK 프레임을 전송하는 transmission delay 미만이면 정상적으로 동작하므로, 전송 거리에 상당한 여분이 있는 편이다.

 

"30Km 거리에 대한 WiFi 통신 시뮬레이션 실험"에서, 11g로는 통신이 잘 되는데 11a로는 통신이 되지않는 것도 이러한 이유때문인 것으로 생각된다.

 

[1] IEEE Std 802.11, "Wireless LAN MAC and PHY Specifications", IEEE, 2007.
[2] http://www.air-stream.org/Change_ACK

Posted by 신상헌
,