淡江
(杭州海康威視數字技術股份有限公司,浙江杭州 310000)
Wi-Fi 是迄今最為普遍應用的無線局域網標準技術。Wi-Fi 設備主要工作在2.4 GHz 和5 GHz 兩個頻段。雖然5 GHz 頻段可以提供更多的信道和帶寬,但是5 GHz 頻段信號的穿透能力較弱,導致通信距離較近,一些對通信距離有要求的應用場景更傾向于使用2.4 GHz 頻段,如無線視頻監控相機[1]。然而2.4 GHz 頻段一共只有80 MHz 頻寬可用,有13 個信道,相鄰信道頻譜重疊,干擾問題突出。Wi-Fi 設備一旦開始組網通信,便固定在某個信道。無線環境干擾情況瞬息萬變,導致通信不穩定,無法滿足高可靠性無線通信的需求[2]。該文設計了一種信道實時自適應Wi-Fi 設備,在保證正常通信過程中,可以實時掃描各個信道的干擾情況。當該信道干擾變大無法滿足傳輸速率需求時,可以自動切換至干擾較小的信道,維持正常通信,滿足無線視頻監控等高可靠性場景需求。
通信系統由AP 設備和STA 設備組成。AP 主要由AP SoC RTL8197FNT、SoC Hi3516D(AP 端)、偵測網卡RTL8188EUS 組成。STA 主要由SoC Hi3516D(STA 端)和網卡RTL8192EU 組成[3]。RTL8197FNT用于建立Wi-Fi 熱點,供STA 連接。RTL8188EUS 用于信道背景掃描。Hi3516D(AP 端)運行RTL8188EUS的驅動程序,同時實現信道背景掃描邏輯,將信道干擾信息提供給RTL8197FNT,為信道切換提供依據。RTL8192EU 用于連接AP 熱點,實現無線通信。Hi3516D(STA 端)運行RTL8192EU 的驅動程序。通信系統主要架構如圖1 所示。

圖1 AP和STA設備的系統架構
在RTL8197FNT 正常通信過程中,RTL8188EUS持續對1-13 個信道進行掃描。當RTL8197FNT 處于發射狀態時,會對RTL8188EUS 信道掃描造成影響,導致掃描不準確,所以此時應暫停掃描。RTL 8197FNT 的收發切換響應時間為納秒級,時間過短導致無法采用通信接口方式與RTL8188EUS 進行同步。RTL8197FNT 定義了S0_PAPE 端口,用于指示發射狀態,發射時該端口為高電平,接收時為低電平。采用S0_PAPE端口來控制兩個單刀雙置開關,低電平時天線直接與RTL8188EUS 接通,偵測干擾;高電平時,天線信號旁路接地,暫停偵測,防止RTL8197FNT發射影響,RTL8188EUS 射頻鏈路如圖2 所示。
采用兩個開關是為了增大隔離度,單個開關隔離度最大為40 dB,不足以阻止RTL8197FNT 信號泄露[4]。開關一端接49.9 Ω電阻是為了阻抗匹配,吸收泄露信號。RTL8188EUS 芯片內部集成了收發切換開關,收發共用同一差分端口,需外接巴倫轉為單端。
RTL8197FNT 采用雙天線,有兩組收發端口。發射為差分端口,需要外接巴倫轉為單端。Wi-Fi為時分雙工系統,一組收發端口通過單刀雙擲開關共用一個天線,如圖3 所示。

圖3 RTL8197FNT射頻鏈路
RTL8188EUS 作為USB device 直接掛載至Hi 3516D(AP 端)。Hi3516D(AP 端)通過UART 接口與RTL8197 FNT交互[5]。
在STA設備中,RTL8192EU 作為USB device 直接掛載至Hi3516D(STA 端)。RTL8192EU 采用雙天線,有兩組收發端口,內置開關,每組收發共用同一差分端口,需要外接巴倫轉為單端,如圖4 所示。

圖4 STA電路
處于同一信道中的Wi-Fi 設備之間具有沖突避讓機制,可以避免相互沖撞。而處于相鄰近不同信道的設備之間無法發現對方,會出現相互沖撞,所以判斷信道干擾強度主要考慮臨近的幾個信道對本信道的干擾[6]。2.4 GHz 頻段Wi-Fi信道如圖5 所示。

圖5 2.4 GHz頻段Wi-Fi信道
干擾強度主要與周圍其他Wi-Fi 設備單位時間發包數量和每個包的信號強度相關。偵測網卡RTL8188EUS 采用sniffer 驅動,可以收集某個信道中的Wi-Fi 包,同時可獲得每個Wi-Fi 包相應的信號強度[7-8]。信號強度以dBm 為單位,為了方便軟件處理,將不同區間dBm 值映射成表1 所示的數值等級Sn。

表1 信號強度與數值等級Sn 的對應關系
RTL8188EUS 對信道進行掃描時,每個信道的駐留時間T=100 ms。設信道X 繁忙指數CX為該信道T時間內所收到Wi-Fi包的Sn之和[9],如式(1)所示:

在RTL8197FNT 與STA 正常通信過程中,通過UART 將當前工作信道告知Hi3516D(AP 端),RTL 8188EUS 持續掃描部分信道。設RTL8197FNT 通信所用信道為X,則需要掃描的信道包括X-n和X+n(n取不小于4的整數,X-n≥1且X+n≤13)。如RTL8197 FNT 通信所用信道為5,則需要掃描的信道為1、9、10、11、12、13。RTL8188EUS 完成某個信道掃描后,Hi3516D(AP 端)計算CX值,保存至內存,隨后掃描下一個信道。當完成所有信道掃描后,進行下一輪掃描,重新計算每個信道新的CX值并刷新內存。
RTL8197FNT 設定一個吞吐量閾值,并持續監測吞吐量。當前通信信道受到干擾導致吞吐量小于閾值時,RTL8197FNT 通過UART 向Hi3516D 發出最優信道查詢指令。收到指令后,RTL8188EUS 首先對X-n,X+n(0≤n≤3,X-n≥1 且X+n≤13)信道進行掃描,計算相應CX值。如當前工作信道為5,那么需要掃描2、3、4、5、6、7、8 這幾個信道。其中計算當前通信信道X的CX值時,需要對MAC 地址進行過濾,排除與RTL8197FNT 所連接的STA 發出的包。結合3.1節,此時Hi3516D 已經緩存了1-13 信道的CX值。定義信道X的信道質量QX,通過式(2)進行計算:

Hi3516D 依次計算1-13 信道的QX值,取QX最小的三個信道。查詢這三個信道對應的CX值,將CX值最小的信道作為最優信道,通過UART 返回給RTL8197FNT。
AP 使用802.11 協議中的Channel Switch Announcement(CSA)幀來通知STA 切換至最優信道[10-12]。AP 首先發出CSA 幀,STA 收到后回復確認,雙方在約100 ms 時間內切換至最優信道繼續通信。根據協議接口,幀中Element ID=37,Channel Switch Mode=0,New Channel Number 為最優信道,Channel Switch Count=1。
系統的總體工作流程如圖6 所示。

圖6 系統工作流程
在屏蔽室內對該文設備進行評估。AP 距離STA 約4 m,使用iperf 進行TCP 吞吐量測試,AP 作為Server 接收數據,STA作為Client發送數據[13]。工作在6 信道,無干擾情況下,吞吐量約為28.4 Mbps(AP關閉兩條空間流功能)。在AP 和STA 中間位置,在1信道和7 信道設置干擾源,干擾源為另外兩對AP 和STA 之間的8 Mbps UDP 數據流。未開啟信道自適應功能時,吞吐量持續降至6 Mbps 以下,如圖7 所示。

圖7 未開啟信道自適應
開啟信道自適應功能,吞吐量閾值設為20 Mbps,重復上述實驗。當7 信道干擾源開啟時,吞吐量出現短暫下降后又恢復正常,如圖8 所示。

圖8 開啟信道自適應
此外,在Wi-Fi 設備干擾較多的辦公室環境中,采用兩臺設備同時傳輸碼率為4 Mbps 的1 080 p 實時視頻。一臺開啟信道自適應功能,另一臺關閉信道自適應功能,初始信道為6 信道。如圖9 所示,上方為開啟信道自適應功能畫面,面流暢度更高;下方為關閉信道自適應功能畫面,時間明顯滯后。

圖9 視頻傳輸對比測試
測試結果證明,該文提出的信道實時自適應Wi-Fi 設備能夠規避干擾,自動選擇合適的信道以維持吞吐量。文中提到在AP 發射期間,需要暫停信道掃描,所以在AP 有較多下行數據的場景中,會影響掃描的準確性。所以該文方案更適合AP 下行數據較少,STA 上行數據較多的應用場景,如無線視頻監控相機數據回傳。文中判斷信道繁忙程度只考慮了數據包的個數和對應信號強度,而沒有考慮每個數據包的大小、所用速率和占用時間,這會影響判斷的準確性。
該文設備屬實驗性質,在后續產品化中,為了降低成本,偵測網卡可以選擇PCIE 接口的RTL8188EE[14]。RTL8188EE 可直接掛載至RTL8197FNT 的PCIE 接口,信道掃描和切換功能全部在RTL8197FNT 中實現,省去了SoC Hi3516D。
環境中的干擾瞬息萬變,而該文方案具有滯后性,干擾導致吞吐量下降后才能做出反應。后續考慮集成AI 算法,基于收集的信道干擾信息對干擾作出預判,在干擾出現之前切換至更合適信道。在專用的受限制區域中,還可集成主動防御功能,偵測各個信道中未經許可的大數據流量。對相應設備發出虛擬的解除關聯幀,阻斷未經許可的大數據流量通信[15-16]。