各位好, 最近心血來潮
查了下IT幫上的文章, 發現關於WIFI工作原理的文章少的可憐
小的不才, 來參一腳, 來說說基本運作
WIFI是電磁波, "波"就是屬於波動類的一種, 本質跟聲音有點相似
https://ytsorg.blogspot.com/2015/09/blog-post.html
那麼, 如果是聲音, 假設:
有兩個兄弟在同一時間, 同一空間, 用一頻率來說話, 會出現什麼問題呢?
答案就是會變成互相干擾噪音了, 大家像吵架
所以, 最理想的方法就是去劃分一些房間[即是不同頻率]
每個房間各有各說, 那就不會出問題了
就像你聽不見狗哨的聲音
你吹狗哨時候是狗給你反應
不是你朋友, 除非你朋友是IT狗
最典型的WIFI劃分一些房間實例就是
2.4GHZ世界上那三組可憐沒有干擾的
1 , 6 , 11 CHANNELs [假設是20MHZ]
好吧, 房間干擾問題解決了
旦如果三個房間 "1" , "6" , "11" 內
已經有一個人在說話, 這時候出現第四個人呢, 不就得又吵架了?
現實公司配WIFI也總不能一人一機一AP吧!?
要怎麼處理了?
最簡單的處理方法就是來排隊了, 一個先把話說完了, 下一個才再說話
我們先來假設剛剛的第四個人被分配到 "房間1"
這時候可以看一下某同行之前寫的一編文章
就很好的說明了排隊機制的用法了
https://ithelp.ithome.com.tw/articles/10256781
當中一個極為重要的技術為
CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance)
這個得說說, 很多同行常把它跟CSMA/CD搞亂, 不熟悉兩者差異
簡單來說
CSMA/CA 是 WIFI用的
CSMA/CD 是 網線用的
兩者機制接近, 都是針對半雙工來設計的方案, 詳細可以參考:
好了, 以上就是WIFI"排隊"的基礎運作了
在解決了以上溝通問題之後, 就得開始考慮"效率"了
在現實環境中, 假設只有一個房間, 一只2.4GHZ的WIFI
CHANNEL 1 6 11 在這情況下也只能三選一的,
即是說大家都得用同一個CHANNEL來說話
就沒什麼方法在一個CHANNEL上做點什麼來加速嗎?
當然有, 來搞"劏房"吧.
這時候就得OFDM出場了
https://www.linkedin.com/pulse/understanding-differences-ofdm-vs-ofdma-gxgroup-2etwc/
從圖中可以看到, 不同用戶可以在同一時間用多條子載波來溝通, 效率就來勁了.
OFDM將20 MHz的某一個頻道分割為64個子載波("劏房")
每個子載波佔用312.5 kHz頻寬。
由於子載波之間的正交性
它們可以在同一頻道內同時傳輸資料而不會相互幹擾。
旦問題又來了
比方圖中的 USER 1 跟 CHANNEL 1 , 他能同時進行上傳+下載嗎?
這又得回到噪音問題了, 答案是不可以的.
如果正好有兩個USERS用一個子載波來"下載"呢?
也得排隊! 不然也是噪音!
那麼, 如果用 CHANNEL 1 來上傳, CHANNEL 2 來下載呢, 不就解決了?
恩, 正確的, 旦很可惜這個是名為FDD的東西, 就是你手機的訊號
目前沒計劃給WIFI家用的.
有意思的是, FDD實現全雙工通訊的方式是透過直接使用兩個獨立的通道
也不是透過OFDM的子載波來實現全雙工的
即是說, OFDM 跟 半雙工/全雙工 是完全沒關係的
我閑來無事
找上了兩間世上最知名的WIFI VENDOR : RUCKUS跟ARUBA
他們的專業工程師也是這樣說的: 半雙工, 跟OFDM沒點毛關係 :
而現實中, WIFI CHANNEL 也可會不只有你一個在用吧!?
排隊已經是一個問題了, 還想得同時上傳+下載嗎? 想得美
由於以上半雙工的特性, 大家也別就期待WIFI有多"快"了
以前在CWNP學習CWNA證照的時候, 很記得老師第一句就是
"WIFI是半雙工, 別想快, 要快就給老子接網線"
現在想起來, 特別有回憶.
對WIFI有興趣的朋友, 可以考慮修讀CWNA:
https://www.cwnp.com/certifications/cwna
當然了, 如果你手上WIFI項目想要找專業的SI處理, 記得要考慮有CWNA證書的SI跟工程師喔!
不少有經驗的SI可能都只對WIFI是一知半解, 能裝能用就當成自己是專業的 ,可別被誤導喔~