文/張延龍 王建蘭
隨著綜合氣象觀測業務現代化與氣象信息化的推進,云計算、大數據、物聯網、移動互聯等互聯網新技術在氣象部門的應用正在逐步開展,氣象雷達、衛星等業務資料的海量獲取,都源于信息系統的互聯互通、信息共享和業務協同,對高速穩定網絡系統的依賴越來越強。山東省氣象局及時升級了省到市20M雙網絡專用線路,市縣氣象部門也開展了雙網絡專線業務的建設與運行。如果某一條專線發生斷網而沒有被及時發現,當另外一條專線發生故障時,整個網絡專線傳輸系統就會中斷,進而嚴重影響氣象業務的運行,特別是急需氣象服務時,作為氣象業務支撐的網絡專線越來越重要,網絡維護的工作也越來越繁重。為避免專用網絡長時間中斷,及時發現網絡專線故障,降低對氣象業務正常運行的影響,必須重視專線網絡的智能監測斷網報警,實現對網絡專線的自動監測與報警日趨重要。
國內許多網管產品都是綜合性的網絡設備監控及業務流程管理的平臺級產品,所有網絡公司的產品都支持SNMP標準,采用SNMP協議,功能強大。但是這些系統價格昂貴,與市縣級小型局域網規模的性價比不高,不太適用于市級氣象局部門。
目前,多數市級氣象部門只有一名專職網絡維護人員,在初步排除故障時采用手動執行DOS下的tracert或者ping命令,往往是出現故障后的查找,不能及時發現故障,網絡故障復雜對其技術知識要求很高,對于時斷時續的不穩定網絡專線不能快速發現故障。而且ping命令在雙專線沒有限制時,能通過其中一條專線到達目的地址,出現故障漏查現象,不能及時發現雙線路或者多線路其中一條線路故障。如果通過路由限制,線路的負載平衡無法實現,能判斷線路故障,但無法定位故障。
系統設計主要用于市縣級氣象網絡專線中,功能上除了對網絡專線進行監測與報警外,也可以完成對重要業務服務器等設備的網絡連通情況進行監測,減少發現故障的時間,減輕維護人員的負擔。從被動響應的工作方式轉變為主動響應;通過系統及時發現故障,避免影響氣象業務傳輸重大故障發生。
為配合系統的實現,核心路由設備要配置當一條線路故障經過另外線路到達時,路由級數要多一級,目標路由設備盡量不要忽略ICMP包。自定義配置文件,把需要監測的IP地址、通過路由級數等信息寫入配置文件,為了減少線路故障時的額外躍點檢測時間,根據實際情況配置躍點數據;專線帶寬不同,設置合理的超時時間。
軟件設計思路主要模仿DOS下的tracert命令,讀取配置文件生成線路信息列表,獲取到達目標互聯IP地址的路由,通過路由級數及結果判斷專線連通狀態,依托ICMP協議,自定義ICMP數據包的內容,使用Raw類型的套接字進行發送ICMP報文,通過跟蹤經過的各個路由的情況分析ICMP報文的方法,計算數據包所走路由,對返回值進行判斷,查看是否到達目標地址。分析監測結果,對結果進行對比,生成日志文件,并在系統界面中予以顯示,故障現象要給予聲音報警和圖像提醒。配置文件和log文件也可以設計成數據庫的形式,系統界面就采用網頁形式進行展現。
下面以C#語言為例進行部分程序的實現,設計時間間隔從配置文件讀取,循環判斷每條專線,通過路由級數及結果判斷專線連通狀態,實時發現網絡專線故障,圖像及聲音報警提醒,程序主界面如圖1所示,故障及修復時間信息按照年月及線路名稱自動保存在log目錄如圖2所示,方便專線故障信息查詢統計。
關鍵程序代碼如下:



市級網絡專線監測系統實現發現專線中斷故障,并及時給出顏色提示和聲音報警。可以使維護人員在最短的時間內發現并定位網絡專線故障,及時聯系運營商進行專線修復,使網絡高效正常運行,對專業人員少、工作量大的市縣氣象部門非常適用。