權鵬
摘要隨著科技的迅猛發展,各個廠商在其工業生產線上都采用了自動化控制技術,某些生產線還會處在一些比較特殊的環境中,比如高溫、極低溫、粉塵比較大、震動的環境等。而當設備在生產線上運行的過程中,通過網絡在遠端對生產線上的設備進行管理就顯得尤為重要。SNMP是當前最為流行的網絡管理解決方案,文章采用Qt編程技術,同時采用開源軟件開發包Net-SNMP,實現基于SNMP的遠程設備監控模塊,對遠程設備的溫度、CPU、內存、硬盤等信息進行實時的監控。
關鍵詞設備監控;SNMP;遠程監控;MIB
中圖分類號:TP319 文獻標識碼:A 文章編號:1671-7597(2014)11-0019-02
SNMP協議是已經被廣泛接受并投入使用的工業標準,它的作用是保證管理及監控信息在代理端和管理端之間進行傳送[1],這樣非常有利于網管人員對MIB(Management Information Base,管理信息庫)[2]中的任何節點進行檢索以便查找出所檢索節點的信息狀況,這樣更有利于網絡管理員檢測設備上的故障;并實時的給出故障診斷,并及時修復故障。它采用的是輪詢的機制,提供最基本的功能集。最適合小型,快速,低價格的環境使用。它底層采用的是無證實的傳輸層協議UDP,目前很多遠程設備監控系統都是基于SNMP協議開發實現的。
1SNMP概述
SNMP簡單網絡管理協議是為網絡管理而定義的應用層服務,SNMP協議實際上是網絡管理的一系列標準。SNMP簡單網絡管理協議是基于TCP/IP協議的,SNMP簡單網絡管理協議工作在傳輸層之上,與底層的傳輸機制是完全分離的,SNMP簡單網絡管理協議采用的模型是“管理端——代理端”的模型來監控和管理各個與互聯網連接設備,SNMP簡單網絡管理協議底層采用的是面向無連接的UDP協議在管理端和代理端之間進行數據的傳遞。SNMP簡單網絡管理協議包含一個應用層協議——application layer protocol、數據庫模型——database schema和一組資料物件。SNMP簡單網絡管理協議是Internet工作任務組——IETF定義的internet協議簇的一部分。
2系統需求分析
2.1 功能需求
基于SNMP的遠程設備監控系統共分兩個部分:
1)代理端,即數據采集模塊,通過數據采集部分獲取到設備的CPU溫度、CPU使用情況、內存使用情況、硬盤使用情況,并通過SNMP協議發送給管理端。
2)管理端,即面向用戶的部分,通過Qt[4]設計的UI界面來顯示代理端發送來的需要監控的設備的各項參數的狀態數據。
2.2 系統性能需求
根據需求分析我們可以歸納系統所應要求的性能:
1)系統響應時間:實時,對遠端需要監控的設備的各項參數的狀態數據要實時的獲取,實時的發送,實時的更新,保證用戶可以實時的了解遠端設備當前的狀態,以便對遠端的設備達到有效的監控。
2)系統對網絡的要求:該系統在監控遠端設備的過程中,必須保證網絡一直處于連接狀態。
3)系統獲取數據的準確性:由于系統對遠端的設備在進行實時的監控,那么獲取到的遠端的設備的各項參數的狀態數據就是用戶參考的唯一標準,這時保證獲取到的數據的準確性就顯得尤為重要。
2.3 功能模塊需求
1)代理端功能模塊需求。代理端在整個遠程設備監控系統中擔任著一個非常重要的角色,代理端主要完成的任務就是對遠程的設備進行監控數據的采集,當管理端向代理端發起請求需要獲取監控數據時,代理端便會將所有的數據發送給管理端。在代理端通過安裝和配置基于C語言的SNMP協議的開發包Net-SNMP[3]以及硬件監控的開源軟件lm_sensors,通過調用Net-SNMP的接口來配置MIB信息庫并開啟SNMP服務來獲取被監控設備的各項參數的狀態數據。
2)管理端功能模塊需求。管理端是設備監控系統的管理者,主要負責對被監控設備的實時監控,向SNMP代理端發送請求獲取設備的實時數據。如果管理端接受到異常的數據,便向管理人員發出報警信息。在管理端安裝和配置基于C語言的SNMP協議的開發包Net-SNMP,通過調用接口開啟SNMP服務。通過編寫Qt程序來獲取代理端設備的實時信息,并及時的呈現給管理員,這樣管理員就可以對遠程設備進行實時的監控了,同時當設備被監控的數據出現異常時就會向管理員報警。
2.4 非功能性需求
1)性能需求。監控系統獲得監控數據的準確性以及監控系統的實時性和穩定性是系統的必要性能。
2)可擴展性。當前的監控系統只支持部分設備,并且只能運行于Linux操作系統環境下,未來可以完善該系統支持更多的設備以及可以運行于各種版本的操作系統環境。
3)可用性。對于監控系統的穩定要求是非常高的,所以必須保證監控系統長時間的處于正常的運行狀態下。
4)易用性。監控系統界面友好,讓用戶在使用該監控系統的時候可以很容易熟悉里面每項操作,很容易上手操作。
3基于SNMP遠程設備監控系統設計
3.1 系統開發軟件環境
開發平臺:Qt Creator;操作系統:Fedora 17;開源軟件:Net-SNMP;lm_sensors。
3.2 系統設計目標
系統設計的主要目標是對遠程網絡上的設備的各項參數進行監控,以便網絡管理人員可以有效的對遠程的設備進行管理,及時的發現異常并做出迅速響應。
3.3 系統主要任務
1)對遠程設備的各項參數的狀態數據進行實時的采集。
2)對代理端獲取到的數據進行處理、輸出。
3)在程序中對需要監控的各項參數設置上限值,對采集的數據進行判斷,當超過上限值時,會彈出Warning對話框報警。
4)提供有效的IP地址檢查功能,檢測IP地址格式是不是正確,網絡是是不是處于連接狀態。
3.4 系統功能模塊的劃分
該遠程設備監控系統主要分為兩個功能模塊:代理端功能模塊、管理端功能模塊。
代理端主要就是實現數據采集模塊。
管理端分為IP地址檢測模塊,設置閾值模塊,監控模塊。
遠程設備監控系統總體功能結構如圖1所示。
圖1遠程設備監控系統總體功能結構圖
遠程設備監控系統的總體設計如圖1,首先要在被監控的設備上設置好SNMP代理端,然后由監控系統代理端的數據采集模塊去負責采集監控數據,相應的參數在MIB信息庫中都會有對應的OID值。當管理端發起請求獲取代理端的數據的時候,代理端將數據通過SNMP協議發送給管理端,管理端對數據進行處理,最后將監控結果顯示在Qt UI界面上,通過運行監控系統輸入需要監控的設備的IP地址就可以迅速得到網絡設備中不同設備的相關監控參數,采集到的數據梅5秒鐘更新一次,系統中設置了各項參數的狀態數據的閾值,超過閾值就會彈出一個Waring窗體報警。
4結論
本文設計實現了基于SNMP的遠程設備監控系統,通過該系統來監控遠程設備的CPU溫度、利用率,內存的使用情況以及硬盤的各種參數及利用率,避免由于CPU溫度過高,或者內存和硬盤的可使用空間不足而造成的設備無法工作的情況的發生。這樣,網絡管理人員就可以通過設備管理系統及時的發現問題,解決問題,提高了工作效率,同時也將企業的損失降到了最低。
參考文獻
[1]孫志,趙宏強.基于SNMP的網絡實時監控技術研究[J].電子世界,2013(10):151-152.
[2]區海平,壽國礎.基于MIB定義的SNMP分析系統及實現[J].計算機應用,2009(01):38-41.
[3]葛化敏,楊利青,鄭靜.基于NET-SNMP的嵌入式網絡管理代理的開發[J].通信技術,2009(11):138-140.
[4]朱吉佳,蔡家麟.基于Qt的業務監控系統界面設計與實現[J].計算機技術與發展,2008(03):236-239.
endprint
摘要隨著科技的迅猛發展,各個廠商在其工業生產線上都采用了自動化控制技術,某些生產線還會處在一些比較特殊的環境中,比如高溫、極低溫、粉塵比較大、震動的環境等。而當設備在生產線上運行的過程中,通過網絡在遠端對生產線上的設備進行管理就顯得尤為重要。SNMP是當前最為流行的網絡管理解決方案,文章采用Qt編程技術,同時采用開源軟件開發包Net-SNMP,實現基于SNMP的遠程設備監控模塊,對遠程設備的溫度、CPU、內存、硬盤等信息進行實時的監控。
關鍵詞設備監控;SNMP;遠程監控;MIB
中圖分類號:TP319 文獻標識碼:A 文章編號:1671-7597(2014)11-0019-02
SNMP協議是已經被廣泛接受并投入使用的工業標準,它的作用是保證管理及監控信息在代理端和管理端之間進行傳送[1],這樣非常有利于網管人員對MIB(Management Information Base,管理信息庫)[2]中的任何節點進行檢索以便查找出所檢索節點的信息狀況,這樣更有利于網絡管理員檢測設備上的故障;并實時的給出故障診斷,并及時修復故障。它采用的是輪詢的機制,提供最基本的功能集。最適合小型,快速,低價格的環境使用。它底層采用的是無證實的傳輸層協議UDP,目前很多遠程設備監控系統都是基于SNMP協議開發實現的。
1SNMP概述
SNMP簡單網絡管理協議是為網絡管理而定義的應用層服務,SNMP協議實際上是網絡管理的一系列標準。SNMP簡單網絡管理協議是基于TCP/IP協議的,SNMP簡單網絡管理協議工作在傳輸層之上,與底層的傳輸機制是完全分離的,SNMP簡單網絡管理協議采用的模型是“管理端——代理端”的模型來監控和管理各個與互聯網連接設備,SNMP簡單網絡管理協議底層采用的是面向無連接的UDP協議在管理端和代理端之間進行數據的傳遞。SNMP簡單網絡管理協議包含一個應用層協議——application layer protocol、數據庫模型——database schema和一組資料物件。SNMP簡單網絡管理協議是Internet工作任務組——IETF定義的internet協議簇的一部分。
2系統需求分析
2.1 功能需求
基于SNMP的遠程設備監控系統共分兩個部分:
1)代理端,即數據采集模塊,通過數據采集部分獲取到設備的CPU溫度、CPU使用情況、內存使用情況、硬盤使用情況,并通過SNMP協議發送給管理端。
2)管理端,即面向用戶的部分,通過Qt[4]設計的UI界面來顯示代理端發送來的需要監控的設備的各項參數的狀態數據。
2.2 系統性能需求
根據需求分析我們可以歸納系統所應要求的性能:
1)系統響應時間:實時,對遠端需要監控的設備的各項參數的狀態數據要實時的獲取,實時的發送,實時的更新,保證用戶可以實時的了解遠端設備當前的狀態,以便對遠端的設備達到有效的監控。
2)系統對網絡的要求:該系統在監控遠端設備的過程中,必須保證網絡一直處于連接狀態。
3)系統獲取數據的準確性:由于系統對遠端的設備在進行實時的監控,那么獲取到的遠端的設備的各項參數的狀態數據就是用戶參考的唯一標準,這時保證獲取到的數據的準確性就顯得尤為重要。
2.3 功能模塊需求
1)代理端功能模塊需求。代理端在整個遠程設備監控系統中擔任著一個非常重要的角色,代理端主要完成的任務就是對遠程的設備進行監控數據的采集,當管理端向代理端發起請求需要獲取監控數據時,代理端便會將所有的數據發送給管理端。在代理端通過安裝和配置基于C語言的SNMP協議的開發包Net-SNMP[3]以及硬件監控的開源軟件lm_sensors,通過調用Net-SNMP的接口來配置MIB信息庫并開啟SNMP服務來獲取被監控設備的各項參數的狀態數據。
2)管理端功能模塊需求。管理端是設備監控系統的管理者,主要負責對被監控設備的實時監控,向SNMP代理端發送請求獲取設備的實時數據。如果管理端接受到異常的數據,便向管理人員發出報警信息。在管理端安裝和配置基于C語言的SNMP協議的開發包Net-SNMP,通過調用接口開啟SNMP服務。通過編寫Qt程序來獲取代理端設備的實時信息,并及時的呈現給管理員,這樣管理員就可以對遠程設備進行實時的監控了,同時當設備被監控的數據出現異常時就會向管理員報警。
2.4 非功能性需求
1)性能需求。監控系統獲得監控數據的準確性以及監控系統的實時性和穩定性是系統的必要性能。
2)可擴展性。當前的監控系統只支持部分設備,并且只能運行于Linux操作系統環境下,未來可以完善該系統支持更多的設備以及可以運行于各種版本的操作系統環境。
3)可用性。對于監控系統的穩定要求是非常高的,所以必須保證監控系統長時間的處于正常的運行狀態下。
4)易用性。監控系統界面友好,讓用戶在使用該監控系統的時候可以很容易熟悉里面每項操作,很容易上手操作。
3基于SNMP遠程設備監控系統設計
3.1 系統開發軟件環境
開發平臺:Qt Creator;操作系統:Fedora 17;開源軟件:Net-SNMP;lm_sensors。
3.2 系統設計目標
系統設計的主要目標是對遠程網絡上的設備的各項參數進行監控,以便網絡管理人員可以有效的對遠程的設備進行管理,及時的發現異常并做出迅速響應。
3.3 系統主要任務
1)對遠程設備的各項參數的狀態數據進行實時的采集。
2)對代理端獲取到的數據進行處理、輸出。
3)在程序中對需要監控的各項參數設置上限值,對采集的數據進行判斷,當超過上限值時,會彈出Warning對話框報警。
4)提供有效的IP地址檢查功能,檢測IP地址格式是不是正確,網絡是是不是處于連接狀態。
3.4 系統功能模塊的劃分
該遠程設備監控系統主要分為兩個功能模塊:代理端功能模塊、管理端功能模塊。
代理端主要就是實現數據采集模塊。
管理端分為IP地址檢測模塊,設置閾值模塊,監控模塊。
遠程設備監控系統總體功能結構如圖1所示。
圖1遠程設備監控系統總體功能結構圖
遠程設備監控系統的總體設計如圖1,首先要在被監控的設備上設置好SNMP代理端,然后由監控系統代理端的數據采集模塊去負責采集監控數據,相應的參數在MIB信息庫中都會有對應的OID值。當管理端發起請求獲取代理端的數據的時候,代理端將數據通過SNMP協議發送給管理端,管理端對數據進行處理,最后將監控結果顯示在Qt UI界面上,通過運行監控系統輸入需要監控的設備的IP地址就可以迅速得到網絡設備中不同設備的相關監控參數,采集到的數據梅5秒鐘更新一次,系統中設置了各項參數的狀態數據的閾值,超過閾值就會彈出一個Waring窗體報警。
4結論
本文設計實現了基于SNMP的遠程設備監控系統,通過該系統來監控遠程設備的CPU溫度、利用率,內存的使用情況以及硬盤的各種參數及利用率,避免由于CPU溫度過高,或者內存和硬盤的可使用空間不足而造成的設備無法工作的情況的發生。這樣,網絡管理人員就可以通過設備管理系統及時的發現問題,解決問題,提高了工作效率,同時也將企業的損失降到了最低。
參考文獻
[1]孫志,趙宏強.基于SNMP的網絡實時監控技術研究[J].電子世界,2013(10):151-152.
[2]區海平,壽國礎.基于MIB定義的SNMP分析系統及實現[J].計算機應用,2009(01):38-41.
[3]葛化敏,楊利青,鄭靜.基于NET-SNMP的嵌入式網絡管理代理的開發[J].通信技術,2009(11):138-140.
[4]朱吉佳,蔡家麟.基于Qt的業務監控系統界面設計與實現[J].計算機技術與發展,2008(03):236-239.
endprint
摘要隨著科技的迅猛發展,各個廠商在其工業生產線上都采用了自動化控制技術,某些生產線還會處在一些比較特殊的環境中,比如高溫、極低溫、粉塵比較大、震動的環境等。而當設備在生產線上運行的過程中,通過網絡在遠端對生產線上的設備進行管理就顯得尤為重要。SNMP是當前最為流行的網絡管理解決方案,文章采用Qt編程技術,同時采用開源軟件開發包Net-SNMP,實現基于SNMP的遠程設備監控模塊,對遠程設備的溫度、CPU、內存、硬盤等信息進行實時的監控。
關鍵詞設備監控;SNMP;遠程監控;MIB
中圖分類號:TP319 文獻標識碼:A 文章編號:1671-7597(2014)11-0019-02
SNMP協議是已經被廣泛接受并投入使用的工業標準,它的作用是保證管理及監控信息在代理端和管理端之間進行傳送[1],這樣非常有利于網管人員對MIB(Management Information Base,管理信息庫)[2]中的任何節點進行檢索以便查找出所檢索節點的信息狀況,這樣更有利于網絡管理員檢測設備上的故障;并實時的給出故障診斷,并及時修復故障。它采用的是輪詢的機制,提供最基本的功能集。最適合小型,快速,低價格的環境使用。它底層采用的是無證實的傳輸層協議UDP,目前很多遠程設備監控系統都是基于SNMP協議開發實現的。
1SNMP概述
SNMP簡單網絡管理協議是為網絡管理而定義的應用層服務,SNMP協議實際上是網絡管理的一系列標準。SNMP簡單網絡管理協議是基于TCP/IP協議的,SNMP簡單網絡管理協議工作在傳輸層之上,與底層的傳輸機制是完全分離的,SNMP簡單網絡管理協議采用的模型是“管理端——代理端”的模型來監控和管理各個與互聯網連接設備,SNMP簡單網絡管理協議底層采用的是面向無連接的UDP協議在管理端和代理端之間進行數據的傳遞。SNMP簡單網絡管理協議包含一個應用層協議——application layer protocol、數據庫模型——database schema和一組資料物件。SNMP簡單網絡管理協議是Internet工作任務組——IETF定義的internet協議簇的一部分。
2系統需求分析
2.1 功能需求
基于SNMP的遠程設備監控系統共分兩個部分:
1)代理端,即數據采集模塊,通過數據采集部分獲取到設備的CPU溫度、CPU使用情況、內存使用情況、硬盤使用情況,并通過SNMP協議發送給管理端。
2)管理端,即面向用戶的部分,通過Qt[4]設計的UI界面來顯示代理端發送來的需要監控的設備的各項參數的狀態數據。
2.2 系統性能需求
根據需求分析我們可以歸納系統所應要求的性能:
1)系統響應時間:實時,對遠端需要監控的設備的各項參數的狀態數據要實時的獲取,實時的發送,實時的更新,保證用戶可以實時的了解遠端設備當前的狀態,以便對遠端的設備達到有效的監控。
2)系統對網絡的要求:該系統在監控遠端設備的過程中,必須保證網絡一直處于連接狀態。
3)系統獲取數據的準確性:由于系統對遠端的設備在進行實時的監控,那么獲取到的遠端的設備的各項參數的狀態數據就是用戶參考的唯一標準,這時保證獲取到的數據的準確性就顯得尤為重要。
2.3 功能模塊需求
1)代理端功能模塊需求。代理端在整個遠程設備監控系統中擔任著一個非常重要的角色,代理端主要完成的任務就是對遠程的設備進行監控數據的采集,當管理端向代理端發起請求需要獲取監控數據時,代理端便會將所有的數據發送給管理端。在代理端通過安裝和配置基于C語言的SNMP協議的開發包Net-SNMP[3]以及硬件監控的開源軟件lm_sensors,通過調用Net-SNMP的接口來配置MIB信息庫并開啟SNMP服務來獲取被監控設備的各項參數的狀態數據。
2)管理端功能模塊需求。管理端是設備監控系統的管理者,主要負責對被監控設備的實時監控,向SNMP代理端發送請求獲取設備的實時數據。如果管理端接受到異常的數據,便向管理人員發出報警信息。在管理端安裝和配置基于C語言的SNMP協議的開發包Net-SNMP,通過調用接口開啟SNMP服務。通過編寫Qt程序來獲取代理端設備的實時信息,并及時的呈現給管理員,這樣管理員就可以對遠程設備進行實時的監控了,同時當設備被監控的數據出現異常時就會向管理員報警。
2.4 非功能性需求
1)性能需求。監控系統獲得監控數據的準確性以及監控系統的實時性和穩定性是系統的必要性能。
2)可擴展性。當前的監控系統只支持部分設備,并且只能運行于Linux操作系統環境下,未來可以完善該系統支持更多的設備以及可以運行于各種版本的操作系統環境。
3)可用性。對于監控系統的穩定要求是非常高的,所以必須保證監控系統長時間的處于正常的運行狀態下。
4)易用性。監控系統界面友好,讓用戶在使用該監控系統的時候可以很容易熟悉里面每項操作,很容易上手操作。
3基于SNMP遠程設備監控系統設計
3.1 系統開發軟件環境
開發平臺:Qt Creator;操作系統:Fedora 17;開源軟件:Net-SNMP;lm_sensors。
3.2 系統設計目標
系統設計的主要目標是對遠程網絡上的設備的各項參數進行監控,以便網絡管理人員可以有效的對遠程的設備進行管理,及時的發現異常并做出迅速響應。
3.3 系統主要任務
1)對遠程設備的各項參數的狀態數據進行實時的采集。
2)對代理端獲取到的數據進行處理、輸出。
3)在程序中對需要監控的各項參數設置上限值,對采集的數據進行判斷,當超過上限值時,會彈出Warning對話框報警。
4)提供有效的IP地址檢查功能,檢測IP地址格式是不是正確,網絡是是不是處于連接狀態。
3.4 系統功能模塊的劃分
該遠程設備監控系統主要分為兩個功能模塊:代理端功能模塊、管理端功能模塊。
代理端主要就是實現數據采集模塊。
管理端分為IP地址檢測模塊,設置閾值模塊,監控模塊。
遠程設備監控系統總體功能結構如圖1所示。
圖1遠程設備監控系統總體功能結構圖
遠程設備監控系統的總體設計如圖1,首先要在被監控的設備上設置好SNMP代理端,然后由監控系統代理端的數據采集模塊去負責采集監控數據,相應的參數在MIB信息庫中都會有對應的OID值。當管理端發起請求獲取代理端的數據的時候,代理端將數據通過SNMP協議發送給管理端,管理端對數據進行處理,最后將監控結果顯示在Qt UI界面上,通過運行監控系統輸入需要監控的設備的IP地址就可以迅速得到網絡設備中不同設備的相關監控參數,采集到的數據梅5秒鐘更新一次,系統中設置了各項參數的狀態數據的閾值,超過閾值就會彈出一個Waring窗體報警。
4結論
本文設計實現了基于SNMP的遠程設備監控系統,通過該系統來監控遠程設備的CPU溫度、利用率,內存的使用情況以及硬盤的各種參數及利用率,避免由于CPU溫度過高,或者內存和硬盤的可使用空間不足而造成的設備無法工作的情況的發生。這樣,網絡管理人員就可以通過設備管理系統及時的發現問題,解決問題,提高了工作效率,同時也將企業的損失降到了最低。
參考文獻
[1]孫志,趙宏強.基于SNMP的網絡實時監控技術研究[J].電子世界,2013(10):151-152.
[2]區海平,壽國礎.基于MIB定義的SNMP分析系統及實現[J].計算機應用,2009(01):38-41.
[3]葛化敏,楊利青,鄭靜.基于NET-SNMP的嵌入式網絡管理代理的開發[J].通信技術,2009(11):138-140.
[4]朱吉佳,蔡家麟.基于Qt的業務監控系統界面設計與實現[J].計算機技術與發展,2008(03):236-239.
endprint