七、網(wǎng)絡(luò)流量監(jiān)測
網(wǎng)絡(luò)問題是影響系統(tǒng)性能的問題之一,診斷網(wǎng)絡(luò)問題最簡單的工具當然是使用系統(tǒng)提供的命令netstat,常用選項:-r :顯示路由信息,-i :顯示接口信息。另外可以“netstat -s”看我們關(guān)心的報文統(tǒng)計信息。
談到圖形化網(wǎng)絡(luò)流量監(jiān)控,相信大家都熟悉MRTG這個工具。這里介紹一個工具:ntop能夠更加直觀的將網(wǎng)絡(luò)使用量的情況和每個節(jié)點計算機的網(wǎng)絡(luò)帶寬使用詳細情況顯示出來。ntop提供以下一些功能:
1. 自動從網(wǎng)絡(luò)中識別有用的信息;
2. 將截獲的數(shù)據(jù)包轉(zhuǎn)換成易于識別的格式;
3. 對網(wǎng)絡(luò)環(huán)境中的通訊失敗進行分析;
4. 探測網(wǎng)絡(luò)環(huán)境下的通訊瓶頸;
5. 記錄網(wǎng)絡(luò)通信時間和過程。
ntop和MRTG相比它的安裝配置比較簡單,同時也可以和MRTG配合使用。目前市場上可網(wǎng)管型的交換機、路由器都支持SNMP協(xié)議,Ntop支持簡單網(wǎng)絡(luò)管理協(xié)議所以可以進行網(wǎng)絡(luò)流量監(jiān)控。ntop幾乎可以監(jiān)測網(wǎng)絡(luò)上的所有協(xié)議: TCP/UDP/ICMP、(R)ARP、IPX、Telnet、DLC、Decnet、DHCP-BOOTP、AppleTalk、Netbios、TCP/UDP、FTP、HTTP、DNS、Telnet、SMTP/POP/IMAP、SNMP、NNTP、NFS、X11、SSH和基于P2P技術(shù)的協(xié)議eDonkey, Overnet, Bittorrent, Gnutella (Bearshare, Limewire,etc), (Kazaa, Imesh, Grobster)。Ntop在互動模式下,ntop會將網(wǎng)絡(luò)的使用狀況顯示在使用者的終端機畫面上。在Web模式中,ntop會像Web Server一樣產(chǎn)生出內(nèi)含網(wǎng)絡(luò)使用狀況的網(wǎng)頁傳回到使用者的瀏覽器上。在http://www.ntop.org 可以下載最新的源代碼安裝使用。用ntop 監(jiān)測主機使用的網(wǎng)絡(luò)協(xié)議見圖5。
![]() |
| 圖5 圖形環(huán)境下監(jiān)測主機使用的網(wǎng)絡(luò)協(xié)議 |
總結(jié):本文從系統(tǒng)負載、進程、內(nèi)存、中央處理器、IO、網(wǎng)絡(luò)、系統(tǒng)活動以及整體性能。八個方面介紹了對Unix服務(wù)器進行性能監(jiān)測的方法。雖然使用的操作系統(tǒng)是Solaris 10但是也可以應(yīng)用于其他Unix、BSD、Linux等操作系統(tǒng)。本文介紹了Unix系統(tǒng)的兩個最基本的問題:如何在不購買新硬件的條件下完成更多的工作?何時才真正需要添加硬件(更多的內(nèi)存,更快的磁盤、CPU以及網(wǎng)絡(luò)接口)?有時只需消除一些簡單的瓶頸即可解決許多性能問題 —— 但是要實現(xiàn)它,你必須充分了解自己的計算機和網(wǎng)絡(luò),從而找到真正的瓶頸所在。在預算短缺的今天,理解如何優(yōu)化系統(tǒng)性能比以往任何時候都重要。一味地投資并不是能夠讓人們接受的辦法 —— 并且也不一定生效。
2.mpstat
和top命令不同mpstat命令專門監(jiān)測CPU(包括多CPU)性能,下面是一個mpstat典型輸出:
![]() |
mpstat [-P {|ALL}] [internal [count]]
參數(shù)的含義如下:
-P {|ALL} 表示監(jiān)控哪個CPU, cpu在[0,cpu個數(shù)-1]中取值
internal 相鄰的兩次采樣的間隔時間
count 采樣的次數(shù),count只能和delay一起使用
當沒有參數(shù)時,mpstat則顯示系統(tǒng)啟動以后所有信息的平均值。
八、使用GUI綜合工具
多數(shù)Linux和unix工程師都很熟悉sar、vmstat、iostat和netstat,另外還有一些針對專門廠商的工具也采用類似的格式。性能監(jiān)視器(sdtperfmeter)就是一種起源于Sun的著名工具。然而,要想使所有的資源在經(jīng)過線程優(yōu)化的并行應(yīng)用系統(tǒng)中具備順暢的響應(yīng)速度,就必須使用更為全面的性能監(jiān)控工具,而傳統(tǒng)的Unix工具集是不具備這一能力的。使用“性能監(jiān)視器”可以監(jiān)視工作站的活動和性能。可以在該可定制窗口中以圖形方式顯示若干個性能參數(shù),如 CPU 利用率、磁盤活動、網(wǎng)絡(luò)包,等等。您可以監(jiān)視本地主機或遠程主機的性能,設(shè)置彩色的活動閥值以在性能出現(xiàn)異常時向您發(fā)出警告,并將樣例記錄到文件中。
1.啟動性能監(jiān)視器
單擊“前面板”上的“性能監(jiān)視器”控件。“性能監(jiān)視器”打開并顯示缺省圖表(CPU 和磁盤活動)。
2.選擇要顯示的主機和參數(shù)
選擇以進行監(jiān)視的參數(shù)可能取決于: 所運行的應(yīng)用程序類型;網(wǎng)絡(luò);您對 UNIX 進程和系統(tǒng)裝入的了解程度。不熟悉系統(tǒng)參數(shù)的用戶通常選擇顯示 CPU 和磁盤使用情況。對于那些比較熟悉系統(tǒng)參數(shù)的用戶,典型設(shè)置是顯示 CPU 使用、磁盤使用、系統(tǒng)負載和包。如果擔心網(wǎng)絡(luò)通信擁塞,您可以顯示每秒鐘傳送的網(wǎng)絡(luò)包數(shù)目,并在運行網(wǎng)絡(luò)密集型活動(如因特網(wǎng)瀏覽或遠程操作)時監(jiān)視此性能。如果“性能監(jiān)視器”指示 CPU 使用率很高,則可以使用“進程管理器”來標識和中止錯誤的或 CPU 密集型的進程。如果在運行 CPU 密集型應(yīng)用程序時退出系統(tǒng),然后再登錄回系統(tǒng),則“性能監(jiān)視器”的 CPU 顯示可能表明 CPU 使用率非常高。意識到這一點后,可以使用“進程管理器”來中止任何錯誤的進程。
3.指定要監(jiān)視的主機和參數(shù)
從“選項”菜單中選擇“設(shè)置”。“性能監(jiān)視器”顯示“設(shè)置”對話框。選擇“遠程”單選按鈕以表明要鍵入遠程主機的名稱。鍵入系統(tǒng)名稱(例如,jupiter)或遠程主機的 IP 地址。數(shù)打開“查看”菜單以顯示可用參數(shù)的列表。每個參數(shù)都有一個復選框,用來表明當前是否選定該參數(shù)以進行顯示。選擇或撤消選擇相關(guān)的菜單項以顯示或移除任何參數(shù)。可以顯示任何參數(shù)組合。如圖6。
![]() |
| 圖6指定要監(jiān)視的主機和參數(shù) |
4.更改參數(shù)的閥值
從“選項”菜單中選擇“設(shè)置”。“性能監(jiān)視器”顯示“設(shè)置”對話框,對于每個參數(shù),該對話框中都包含一個“閥值“框。鍵入相關(guān)參數(shù)的新閥值,并單擊“應(yīng)用”。現(xiàn)在,底于新閥值的值將使用為低于閥值的值選擇的顏色來顯示,而高于該新閥值的值將使用為高于閥值的值選擇的顏色來顯示。表2是缺省閥值設(shè)置。
表 2缺省閥值設(shè)置
|
參數(shù) |
缺省閥值 |
|
CPU |
50% |
|
裝入 |
2 /秒 |
|
磁盤 |
20 /秒 |
|
頁 |
8 /秒 |
|
上下文 |
32 /秒 |
|
交換 |
2 /秒 |
|
中斷 |
50 /秒 |
|
包 |
16 /秒 |
|
沖突 |
2 /秒 |
|
錯誤 |
2 /秒 |
![]() |
| 圖7顯示全部參數(shù)的性能監(jiān)視器 |
(結(jié)束)。






