實(shí)戰(zhàn):廠商搞了好久!2萬(wàn)平紡織車間大量IoT采集器頻繁離線,棘手、太棘手!
背景介紹
項(xiàng)目是一家大型國(guó)企的紡織車間工廠,廠區(qū)占地兩萬(wàn)平方,我們的直接客戶工程商承接了該單位紡織車間1、2、3期的無(wú)線網(wǎng)絡(luò)改造項(xiàng)目,核心網(wǎng)絡(luò)繼承原有。AC、AP品牌選用某X設(shè)備,總計(jì)2000+點(diǎn)位。無(wú)線接入業(yè)務(wù)規(guī)劃主要分為辦公網(wǎng)、物聯(lián)網(wǎng)、AGV、訪客網(wǎng)等,基本拓?fù)淙缦拢?/p>
問(wèn)題描述
項(xiàng)目安裝調(diào)試完成后,主要問(wèn)題集中在“無(wú)線物聯(lián)網(wǎng)”,也就是供1000多臺(tái)僅支持2.4G頻段的IoT工業(yè)采集器接入的無(wú)線接入業(yè)務(wù)。
問(wèn)題表現(xiàn)很直接,在監(jiān)控平臺(tái)上IoT采集器頻繁離線,顯示為紅色:
因?yàn)轫?xiàng)目是承包變更,甲方廠的IT表示“AP設(shè)備更換之前是好的,這1000多個(gè)采集器換了新AP之后才有問(wèn)題”。因?yàn)闆](méi)有證據(jù)證明設(shè)備之前的工作情況,啞巴吃黃連,故工程商只能攬責(zé)處理,畢竟要過(guò)年了結(jié)款可是大事!閑話不多說(shuō),進(jìn)入排障過(guò)程!
無(wú)線調(diào)優(yōu)
對(duì)于無(wú)線網(wǎng)絡(luò)一定要先進(jìn)行調(diào)優(yōu),調(diào)優(yōu)能解決極大部分的網(wǎng)絡(luò)問(wèn)題,主要有如下手段:
- 射頻信道/功率調(diào)優(yōu);
- 無(wú)線內(nèi)部隔離。禁止無(wú)線終端之間互訪,減少互相影響;
- 廣播&組播抑制。限制網(wǎng)絡(luò)中廣播和組播數(shù)據(jù)的吞吐量,避免對(duì)無(wú)線性能造成過(guò)大的損耗,造成信道率占用過(guò)大。
現(xiàn)場(chǎng)完成了上述四步調(diào)優(yōu)后,2.4G無(wú)線物聯(lián)網(wǎng)下的IoT采集器離線問(wèn)題依舊,接下來(lái)則進(jìn)一步分析具體原因。
原因分析
說(shuō)實(shí)話,這個(gè)項(xiàng)目案例問(wèn)題比較多,我就不一一按照排查步驟給大家梳理了,很難講清楚。所以我先說(shuō)問(wèn)題結(jié)論,目前定性了有三個(gè)原因:
- 原因1:少部分IoT采集器故障,未連無(wú)線導(dǎo)致顯示設(shè)備離線;
- 原因2:部分IoT采集器天線異常,其TX方向信號(hào)很弱,導(dǎo)致AP接收到IoT信號(hào)強(qiáng)度差,雙向RSSI不對(duì)等導(dǎo)致設(shè)備無(wú)線質(zhì)量差而離線;
- 原因3:部分IoT應(yīng)用層工作異常,會(huì)主動(dòng)RST掉服務(wù)器的連接導(dǎo)致服務(wù)器監(jiān)控顯示離線。
下面我們來(lái)一條一條過(guò)一遍該問(wèn)題原因是如何排查到的。
原因1分析—少部分IoT設(shè)備故障
現(xiàn)場(chǎng)找到無(wú)線未連上的設(shè)備,ping診斷發(fā)現(xiàn)基本都不通,重啟也無(wú)法恢復(fù)
可以明顯的確認(rèn)到有10臺(tái)IoT采集器恒處于離線狀態(tài),AC的無(wú)線客戶端表中也無(wú)該終端記錄。另外注意這個(gè)提供“無(wú)法訪問(wèn)目標(biāo)主機(jī)”,這是表示學(xué)不到ARP條目的意思,也就是說(shuō)目標(biāo)根本沒(méi)在網(wǎng)絡(luò)中。基本確認(rèn)設(shè)備故障,現(xiàn)場(chǎng)人員也核實(shí)確實(shí)存在故障問(wèn)題。
原因2分析—部分IoT設(shè)備天線故障
確認(rèn)無(wú)線問(wèn)題第一步必須要檢查RSSI(信號(hào)強(qiáng)度),因此我們對(duì)頻繁離線的IoT采集器的RSSI做了統(tǒng)計(jì),從終端頁(yè)面中顯示接收到的RSSI基本都是滿格(表示高于-60dbm):
而進(jìn)到AC控制頁(yè)面,查看無(wú)線客戶端列表發(fā)現(xiàn)如下:
可以清楚的看到:AP接收到STA的信號(hào)弱,而STA接收到AP的信號(hào)強(qiáng),典型的雙向RSSI不對(duì)等!一般造成這種情況的原因如下:
- AP發(fā)射功率強(qiáng)而STA發(fā)射功率很弱。在AP與STA路徑上存在障礙物時(shí)會(huì)讓STA發(fā)出的信號(hào)波衰減更快,AP難以解析其信號(hào)幀,即失真;
- STA的天線損壞,RX正常而TX異常。這個(gè)很好理解吧,聽(tīng)力正常而說(shuō)話失聲;
經(jīng)排查,現(xiàn)場(chǎng)將IoT設(shè)備天線更換后,AP接收到該終端的信號(hào)也上來(lái)了,確認(rèn)是IoT終端天線故障導(dǎo)致。更換天線后這部分IoT終端正常恢復(fù)穩(wěn)定在線。
原因3分析—部分IoT設(shè)備應(yīng)用層
還有一部分是RSSI足夠強(qiáng)并且不存在故障的IoT采集器依舊頻繁離線,這讓人不得不懷疑可能是其與服務(wù)器交互上的問(wèn)題。即需要抓包分析:
第一步:找1組頻繁離線但是信號(hào)強(qiáng)度非常好的IoT采集器做監(jiān)控,集中抓取上位機(jī)接口的報(bào)文做分析即可,設(shè)備組:
所在位置:
第二步:等待問(wèn)題復(fù)現(xiàn),記錄設(shè)備離線時(shí)間:
第三步:找到對(duì)應(yīng)時(shí)間節(jié)點(diǎn),分析抓包結(jié)果。經(jīng)過(guò)分析看到IoT采集器與服務(wù)器是modbus TCP協(xié)議交互,上位機(jī)的IP是192.168.6.149, IoT終端是192.168.4.X/24:
從離線時(shí)間點(diǎn)分析:
- 從15:55:55秒開(kāi)始,服務(wù)器192.168.6.149一直在向終端發(fā)TCP重傳數(shù)據(jù)但沒(méi)有得到終端響應(yīng);
- 在15:56:28秒時(shí)終端192.168.4.47發(fā)了TCP RST突然重置掉這條連接,因此服務(wù)器將其置位離線狀態(tài)并嘗試重連恢復(fù)。
那么是否有可能因?yàn)榫W(wǎng)絡(luò)問(wèn)題導(dǎo)致IoT采集器沒(méi)有收到服務(wù)器的TCP PSH ACK報(bào)文呢?對(duì)比看下當(dāng)時(shí)的ICMP包交互:
不難看出,在15:55:56-15:56:28這個(gè)時(shí)間段服務(wù)器每次ping該終端都是無(wú)丟包、低延時(shí)的,所以不會(huì)存在網(wǎng)絡(luò)問(wèn)題。基本定位為IoT自身對(duì)modbus TCP應(yīng)用交互的問(wèn)題!
解決方案
(1) 針對(duì)問(wèn)題原因1:少部分IoT采集器故障,未連無(wú)線導(dǎo)致顯示設(shè)備離線;
解決方案:更換故障IoT采集器,服務(wù)器正常恢復(fù)上線并穩(wěn)定運(yùn)行;
(2) 針對(duì)問(wèn)題原因2:部分IoT采集器天線異常,雙向RSSI不對(duì)等導(dǎo)致設(shè)備無(wú)線質(zhì)量差而離線;
解決方案:更換故障IoT采集器故障天線,服務(wù)器正常恢復(fù)上線并穩(wěn)定運(yùn)行;
(3) 針對(duì)問(wèn)題原因3:部分IoT應(yīng)用層工作異常,會(huì)主動(dòng)RST掉服務(wù)器的連接導(dǎo)致服務(wù)器監(jiān)控顯示離線。
解決方案:非網(wǎng)絡(luò)層問(wèn)題,協(xié)調(diào)工業(yè)設(shè)備廠家技術(shù)做了IoT采集器的優(yōu)化調(diào)試后解決。
最終效果:廠區(qū)IoT采集器運(yùn)行狀態(tài)基本全綠,看著非常舒服~回到前文,IT說(shuō)“AP設(shè)備更換之前是好的,這1000多個(gè)采集器換了新AP之后才有問(wèn)題”,你們覺(jué)得對(duì)嗎??