我現在就是用 20KM 的無線網路上網打這篇文章的....^_^
嗯! 昨天請同事協力將 client 端的碟型天線也上架了, 緊接著測試, 一如預期地網卡上的訊號強度立即提升到 33%, 品質 6% 成功鎖住 ap, 接下來就是測速啦! 結果令人意外的是傳輸速率還是只有一百出頭 kbps?! 再將網卡換成 ap11t 以 clinet 模式連線, 情況依然...
上週在 client 端的碟子尚未架設前, 以近距離(數十米)加上衰減器, 模擬信號約在 26%~40% 時的有效傳輸率, 約略有 1~2Mbps, 怎地差那麼多?
後花了一分鐘想想, 是哪個環節出錯了? 可能分析如下:
802.11(b)的無線網路是半雙工, 也就是說甲方在發射時, 乙方處於接收狀態, 倘若甲方發送一個封包, 要獲得乙方回覆確認(ACK), 那麼需花費 距離/光速*2(來回)+ 機器反映時間, 換言之忽略機器反映時間, 則訊號來回要花掉 20/300000*2=133uS; 也就是說一秒中內只有 7500 封包可傳送, 若封包大小不變, 那麼有效傳輸率將隨著距離的增加而減少.....OH! My God!
特地上網查了一下, 在 802.11 的 ad-hoc 模式中, 其封包確認是在 20uS 內, 超過的將被認為封包丟失, 那麼可用距離就是 20uS / 2 * C (光速) 約為 3KM, 再扣除機器反映時間, 那麼也只會低於此距離; 而 Infrastructure 模式呢? 我想可能要看 AP 端是否有封包確認緩衝的功能, 而且要看其 buffer 的層數來容許 ack 的延遲多寡, 要不就得適時地延長 ack 的容許時間(還得增加每個封包的大小補足有效傳輸率!!??)...........
這可能就是我目前所碰到的問題原因, 也就是說目前我所採用的 ap-client 模式在信號強弱的因素外, ack 延遲時間也左右傳輸速率...
我想我得將我的設備更換成具備 bridge 功能的才行了......*o*"
書籤