<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設計應用 > 基于MRTG的網(wǎng)絡流量監(jiān)測研究與應用

          基于MRTG的網(wǎng)絡流量監(jiān)測研究與應用

          作者: 時間:2017-06-12 來源:網(wǎng)絡 收藏
          目前,電信運營商都已建立了IP綜合網(wǎng)管系統(tǒng),這個系統(tǒng)實現(xiàn)了基于IP的網(wǎng)絡設備的拓撲管理、性能和告警等多項指標的管理,功能非常強大,但在實際使用過程中發(fā)現(xiàn)由于接入層設備種類繁雜,端口數(shù)量也非常多,如果全部由這套系統(tǒng)來管理,會加重系統(tǒng)的負荷,造成系統(tǒng)過于龐大,影響實際使用效果。當網(wǎng)絡發(fā)生故障時,我們希望能最快地發(fā)現(xiàn)故障、定位故障并解決故障,因此,要對所有接人設備進行管理,要了解網(wǎng)絡的詳細運行情況,包括端口數(shù)據(jù)流量(如端口總速率、數(shù)據(jù)包速率)、設備運行性能(如CPU利用率)、網(wǎng)絡健康狀況(如網(wǎng)絡時延)等各項指標,并將它們直觀地表現(xiàn)出來。因此一款操作簡單、功能齊全的流量監(jiān)測軟件將為網(wǎng)絡管理提供更多的便利,解決網(wǎng)絡管理人員面臨的諸多技術問題。(Multi Router Traffic Grapher)是一個典型的流量監(jiān)測工具,由于具有良好的可移植性、可擴展性和圖形化界面,同時還是開放源代碼的免費軟件,因此在國際范圍內得到了非常廣泛的應用。

          1 協(xié)議

          簡單網(wǎng)絡管理協(xié)議(Simple Network ManagementProtocol,)是基于TCP/IP的互聯(lián)網(wǎng)管理協(xié)議,它是由SGMP協(xié)議發(fā)展而來的。定義了傳送管理信息的協(xié)議消息格式及管理站和設備代理之間進行消息傳送的規(guī)程,能對互聯(lián)網(wǎng)中不同類型的設備進行監(jiān)控和管理。Internet上的SNMP運行在TCP/IP協(xié)議族之上,但是其傳輸層協(xié)議采用的是無連接的UDP而不是TCP。

          基于SNMP的網(wǎng)絡管理模型包括四個關鍵元素:網(wǎng)絡管理站(NMS)、管理代理(Agent)、管理信息庫(MIB)和網(wǎng)絡管理協(xié)議。SNMP采用了C/S模型的特殊形式——代理/管理站模型,對于網(wǎng)絡設備的管理是通過管理工作站與SNMP代理間的交互工作完成的。其工作原理如圖1所示。

          Agent是常駐在被管對象上的軟件,它接收來自NMS的指令和發(fā)送響應信息,操作MIB并對網(wǎng)絡設備進行監(jiān)控和配置。NMS和Agent通過發(fā)送SNMP消息進行通信。SNMP協(xié)議提供了Get,Set和Trap三類操作。SNMP協(xié)議利用UDP協(xié)議的161/162端口進行通信。在SNMP中,采用了符合ASN.1(AbstractSyntax Notation)規(guī)范的對象標識方法OID(ObjectIdentifier),以此來惟一地標識網(wǎng)絡所需管理的對象或對象組。如IP協(xié)議的OID為{1,3,6,1,2,1,4}。

          本文引用地址:http://www.ex-cimer.com/article/201706/353704.htm
          SNMP從產(chǎn)生到現(xiàn)在一共發(fā)展有3個主版本,分別為SNMPv1,SNMPv2和SNMPv3。其中SNMPv2又分為若干個子版本,其中SNMPv2c應用最為廣泛,它在計數(shù)時使用了64位字長,而SNMPv1使用的是32位。

          2 的工作原理及組成

          (多路由器流量圖示器)是一個基于SNMP協(xié)議的監(jiān)控和主機資源的開放源代碼的管理工具。它通過SNMP請求得到被監(jiān)控對象的流量信息,將這些流量信息以PNG格式的圖形表示,并將包含這些圖形的HTML文檔通過Web方式顯示給用戶,非常直觀地顯示流量負載。

          MRTG是用Per1和C編寫的,可以工作在Unix和Windows NT環(huán)境下。MRTG的Perl腳本用以使用SNMP來讀取路由器的流量信息,性能高的C程序則用來記錄負載數(shù)據(jù),創(chuàng)建代表被監(jiān)控網(wǎng)絡連接的圖形,這些圖嵌入在Web頁面中。除了獲得每天的詳細信息之外,MRTG還可以創(chuàng)建前7天、前4個星期甚至前12個月內的直觀表示。
          MRTG主要由4個模塊組成:

          基礎模塊 包括定義SMI要求的數(shù)據(jù)結構,并提供相應的方法通過SNMP操作獲取被管對象信息的SNMP模塊和MRTG支持模塊。

          日志文件 MRTG使用的日志文件以ASCII文本形式來記錄測得的流量數(shù)據(jù),日志文件由Rate Up模塊進行更新。

          日志更新和繪圖工具 在該模塊中,MRTG使用C語言程序來完成日志文件的更新和統(tǒng)計圖形的生成,與原來用Perl實現(xiàn)相比,大大提高了效率。

          配置和網(wǎng)頁組織工具 MRTG提供了相關的配置文件生成工具cfgmaker和網(wǎng)頁組織工具indexmaker。通過運行cfgmaker,利用SNMP協(xié)議讀取被管設備中的對象信息,自動生成該設備的框架配置文件。Index-maker通過讀取配置文件中的Target描述獲得對象信息,并用這些信息組織成該對象的HTML頁。


          3基于MRTG的流量監(jiān)測的實現(xiàn)與分析


          3.1 MRTG的安裝

          MRTG是用Perl編寫的,它的運行需要Perl的支持,所以在安裝MRTG之前必須下載并安裝Perl語言。由于MRTG的流量監(jiān)測是基于Web頁面的,必須安裝Web服務器軟件,在這里選擇了運用非常廣泛的Apache。在安裝MRTG時,選擇了目前比較穩(wěn)定的版本MRTG-2.12.2。

          3.2 MRTG的配置

          MRTG的配置是實現(xiàn)對監(jiān)測的關鍵,而MRTG的配置信息都保存在mrtg.cfg文件中,對MRTG的配置實際上就是生成和配置mrtg.cfg文件。

          在配置系統(tǒng)之前,需要收集以下信息:被監(jiān)控設備的IP地址或主機名;如果還想監(jiān)測除字節(jié)流量以外的其他信息,需要知道設備的SNMP OID;最后還要知道所監(jiān)控設備的SNMP共同體認證名(community string)信息,缺省值是public。

          MRTG的配置信息都是保存在mrtg.cfg文件中的,創(chuàng)建該文件并且在其中定義希望的監(jiān)控特性。一般不需要直接手工編輯該配置文件,因為MRTG軟件包提供有cfgmaker配置工具,根據(jù)運行參數(shù)可以自動生成mrtg.cfg配置文件。

          首先在www服務器的Document Root目錄下創(chuàng)建一個子目錄用來存放MRTG生成的統(tǒng)計文件,這里假設apache是默認安裝,因此Document Root在/var/www/html目錄下創(chuàng)建子目錄mrtg。下面就生成MRTG配置文件:


          這里的一global參數(shù)表示后面的選項是對后面指定的設備都是有效的(如果希望對多個設備進行監(jiān)控時,該參數(shù)就會發(fā)生作用)。WorkDir用來指示MRTG的工作目錄;Options用來指定一些特定的選項,這里的grow-right,bits是用來指定默認options配置的,對于常見的應用來說默認options配置就可以滿足需求了。

          3.3設備端口流量監(jiān)控

          可以手工生成配置文件,但對于一般情況,可以使用MRTG自帶的腳本來生成配置文件,如:


          前面提到,SNMPv1是使用32位字長進行計數(shù),因此如果采集間隔是5 min,所能正確表示的最大流量應該是:


          因此,如果鏈路流量在接近或超過此數(shù)值時,計算出來的結果不再準確,這時候便只能使用SNMPv2計數(shù)器,在配置MRTG腳本,可以使用public@x.x.x.x.:::::2來指定讀取SNMPv2的MIB值。


          3.4 PING時延監(jiān)控

          在進行PING時延監(jiān)控時,我們使用了另一個Perl腳本mrtg-ping,同時也可以監(jiān)控丟包率,配置文件如下:


          從以上例子可以看出,MRTG的監(jiān)控對象就是Target語句后的內容,這里可以是SNMP的MIB對象,也可是執(zhí)行腳本得到的數(shù)值。由此可以看到,MRTG監(jiān)控的可擴充性非常好,可以自己編寫腳本來獲得感興趣的數(shù)據(jù),如服務器CPU利用率、內存利用率、磁盤空間、DNS服務器查詢次數(shù)、Cache服務器Hit次數(shù)、甚至CPU溫度等,MRTG都可將它們用直觀圖表呈現(xiàn)出來。


          4結語

          綜上所述,MRTG在網(wǎng)絡管理中的應用是非常有效的。我們只要靈活運用SNMP查詢工具、系統(tǒng)狀態(tài)檢測工具,配合Per1編寫傳回字符串處理程序,即可完成MRTG的外掛程序,最后再搭配合適的MRTG配置命令即可產(chǎn)生另類實時流量統(tǒng)計圖表。因此,對MRTG的應用和持續(xù)開發(fā),不但可以幫助網(wǎng)絡管理員隨時掌握網(wǎng)絡系統(tǒng)和設備運行狀態(tài),還可以降低企業(yè)或組織的網(wǎng)絡設備維護成本。


          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();