一些關於 Wi-Fi 的雜亂想法。
為什麼要花心思挑 AP#
- 基礎建設(如水、電、網路)出問題,無論是誰來處理,都免不了對使用者的衝擊。高品質的設計可以降低出問題的頻率及查修的難度。
- 貴的設備、服務不見得品質就好,光有錢是沒用的,所以對自己所用的基礎建設要有基本的理解和掌握。
- 硬體越常換,越容易受到外部的影響。供應鏈很脆弱,政策也隨時在變化。
為什要開源友善硬體#
即便使用者自己不做開發、不刷機且純從利己的角度看,挑開源友善硬體還是有好處的。
幾乎所有 AP 產品的核心都是奠基於開源專案之上,廠商越不開源,開發產品的時候就要疊越多私有的東西上去。
疊的層數多 ⇒ 修改難度高 ⇒ 更新成本上升 ⇒ 更新難拿;廠商更早放棄維護韌體。
對技術力高的使用者來說好處更加明顯。除了擺脫設備商的計劃性汰舊,功能更彈性之外,跨廠牌的體驗也會更加一致,不會被綁。看到人家說某廠牌韌體對某晶片調校得很好,其實是晶片商無能的警訊。你應該做的是避開用那個晶片的產品,而不是去挑其中調校得好的廠牌。
挑選的考量點#
依照個人認為的優先度排序
- 採用的晶片
- 這是決定有沒有機會刷機,刷機後 Wi-Fi 好不好用的關鍵
- 可不可以刷
- 優先選擇 OpenWrt 已經支援的機型
- 目前不支援的機型,在晶片挑得好的前提下,未來仍有機會
- 技術力夠的甚至可以自己為 OpenWrt 貢獻支援
- 取得難易度
- 通常跟銷量正相關,大量被使用的設備 bug 相對容易被發現、修得比較快,支援度較高
- 省自己一點事
- 價格
- 這反而是最不重要的
晶片#
AP#
- 802.11n(Wi-Fi 4)選 Atheros(後被 Qualcomm 收購)
- 開源社群開發者貢獻 ath9k 驅動,打響口碑
- 802.11ac(Wi-Fi 5)選 Qualcomm
- 開源社群開發者受不了 Qualcomm 的官僚,轉與 MediaTek 合作,著手開發全新驅動 mt76
- ath10k 起品質下滑,所以才有 Candela Technologies 的 ath10k-ct 出來救場
- 802.11ax(Wi-Fi 6)選 MediaTek
- mt76 驅動隨著開源社群開發者的持續貢獻,漸入佳境
- OpenWrt One 就是 MediaTek-based
- MediaTek Wireless Ethernet Dispatch (WED) 硬體加速有開源驅動
- Qualcomm Network Subsystem (NSS) 硬體加速沒有開源驅動
- 802.11be(Wi-Fi 7)先不要用
- MLO 等等的問題很多
- 如果連 ax 頻寬都不夠,還是拉有線更加實際
- 有點 5G 行動通訊的唬爛感了,只差沒說用 Wi-Fi 7 來開刀很棒棒
開源社群開發者的心路歷程分享可以看
Broadcom 完全免考慮,封閉代名詞。
STA#
雖然 Intel 的 Wi-Fi 有 Location Aware Regulatory 很靠盃,但在 PC 上 STA 似乎還是它比較穩?
核心架構#
根據經驗用 ARM 的比較不會有奇怪的問題。對一般使用者算是次要,給開發者參考。
MIPS 的時代可能比較愛用各家自幹的數位設計 IP,主打一個能動就好,就常常會遇到 PCIe 不支援 MSI-X,SPI master full-duplex 功能不完整之類的鳥事。驅動跨平台寫得比較爛的,在 ARM 上成功運作的機率似乎也比 MIPS 的機率高。(畢竟有 Raspberry Pi 這個現成的測試平台)
天線#
天線的表現與硬體設計緊密相關,如果產品 datasheet 有提供 radiation pattern 可以看一下。
例如:
廠牌#
看到這邊的應該都知道廠牌不是重點了,所以只舉幾個反例。
- Ubiquiti starts serving ads in their management interface
- Ubiquiti starts removing advertised features unannounced to force new sales
- Synology requires self-branded drives for some consumer NAS systems, drops full functionality and support for third-party HDDs
Ubiquiti、Synology 都是典型會用低規格硬體賣高價的廠商,很多客戶都是看上他們的軟體服務才買的。事實證明,付錢買了設備回家,用專有軟體的話,廠商還是有辦法再陰你一把。當然客戶可以,也應該,向廠商反映,廠商有時候也會因此調整──只是整個過程免不了費心費時費力,且無法保證結果。
學會看規格、用開源軟體,不迷信任何品牌,才是釜底抽薪之法。
獨立的路由#
若環境允許,比較好的做法是把路由功能(PPPoE、NAT、VPN、QoS 等)跟 AP 拆開。
路由器需要的是運算效能和軟體自由度,這是 x86 平台的強項。弄台多 port 的 mini PC 跑 OpenWrt/OPNsense 當路由器,AP 只負責橋接有線和無線(俗稱 dumb AP),未來要調整容易得多。就算單從短期價格角度來看,也不見得會比較貴,長期而言更是划算。
OpenThread Border Router?#
無意間發現 EAP111 裡面有 CC2652R;EAP683 LR/UR 裡面有 CC2652P7。
這兩顆應該都是可以跑 ot-rcp 的?至少在 EAP683 LR 上看起來是沒問題。
不過除非有做 Wi-Fi coexistence 避開干擾,不然 OTBR 感覺還是跟 Wi-Fi 拆開比較好。