wifi的主動掃描和被動掃描


要實現wifi上的探針模塊,簡單了了解了802.11中的各種幀,對一些幀的發送頻率和方式也有簡單了解。不過了解的都不夠細致。只是簡單知道手機打開wifi后回不停的向外發送probe request這個幀,然后也在不停的監聽當前信道上AP廣播過來的beacon幀。這里詳細介紹一下802.11中的主動掃描和被動掃描。

主動掃描和被動掃描是在手機的角度來說,手機為了發現AP,必須進行掃描,通過掃描得到AP的信息,然后才能去連接。

主動掃描

主動掃描是指手機(這里的sta就用手機代替啦,其實可以是很多種形式)每隔一段時間發送probe request幀,用來詢問AP的信息。probe request可以單獨發給某個AP,也可以在一個信道上進行廣播,當然多數時候是在一個信道上進行廣播,廣播完成后,會在當前信道等待一段時間,如果收到幀反饋,則做記錄,如果超時,就會切換到下個信道進行廣播,這里有個細節,切換到新的信道后,在廣播之前,會等待一小段時間,如果這小段時間內沒有收到任何信息,則說明當前信道沒有AP活動,那么直接切換到下個信道。

 

被動掃描

被動掃描是指手機被動的接收AP發出的beacon幀,通過解析beacon幀中的信息來獲取當前AP列表。手機在監聽beacon幀的時候也是會不停的切換信道,保證每個信道都能監聽到。這種模式下,只監聽beacon幀,不發送探測幀,比較節省資源,不過獲取AP列表時間相對長一些,不如主動掃描獲得信息更及時,但感覺也足夠用了,慢也慢不了幾秒,其實是可以被用戶容忍的。

 

手機端被動掃描和主動掃描都會實現,這樣能保證更快速的發現AP,實現連接。

在手機連接AP后,協議中主動掃描和被動掃描都是被允許的,但是有些廠商可能並沒有實現,因為這個並不是一個強制要求。

beacon幀的間隔是可以動態調整的,對AP來說間隔越短,就會越早被發現。probe request幀的間隔也可以調整,一般廠商都往高了調,並且連接AP以后都傾向於不發了,這樣會比較省電,畢竟對於智能手機來說電池真是有點不夠用。

如果一個AP想協議隱形,可以不發beacon幀,不回探測幀。
---------------------
作者:奔狼的春曉
來源:CSDN
原文:https://blog.csdn.net/lixuande19871015/article/details/77674881
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM