Hillstone CPU高排查方法

2021-08-16 18:55:16 字數 2565 閱讀 8426

hillstone cpu高排查方法 

cpu作為裝置的核心,防火牆的任何模組的處理(或任何功能的開啟)都需要占用cpu資源。

圍繞防火牆在出現cpu高時能夠快速定位並解決這一目標,hillstone給出一些具體排查方法。

一、檢查裝置開啟的功能,具體如下:  

1)show statistics-set         //檢視裝置開啟統計集,如果開啟統計集較多,建議關閉一些沒用的統計集。  

2)、檢視裝置是否開啟debug,並在不用時將其關閉。 

show debug                     //檢視debug開啟情況 undebug all或連續按兩下esc    //關閉debug  

3)show session-limit    //檢視裝置是否開啟session-limit,檢視session-limit是否有drop,如有沒有drop記錄建議關閉相應session-limit。

二、分析實際情況: 

1)、檢視裝置是否有攻擊。

show logging security 和show ad zone trust statistics 檢視ad攻擊情況。

2)、show statistics-set predef_rampup_ip      \\檢視裝置當前新建會話情況,看看有沒有新建會話數很高的ip。   

開啟此統計集方法:  

cli 下如下:  

config  

statistics-set 

predef_rampup_ip 

target-data rampup-rate record-history 

group-by ip 

active

exit

在檢視完畢時可以適當關閉此統計集,方法如下: 

no statistics-set predef_rampup_ip 

3)、比對現有配置與原配置區別。在情況允許的情況下檢視配置日誌,主要觀察在cpu高之前的一些配置資訊。  

4)、通過show process命令檢視當前占用cpu較多的程序,重點關注d_plane之外的程序,看哪些比較高,

如果都是d_plane程序占用的最高,基本上可以確認是效能達到了極限。裝置process程序數很多,

5)、show cpu detail               //檢視cpu按時間、按core的分布情況,檢視具體哪些core較高。

6)、通過show logging 檢視相應的日誌開啟及傳送情況,將不必要的日誌關閉。  

show logging                 //檢視系統日誌開啟情況 

no logging traffic on        //關閉traffic log 

no logging alarm to console  //關閉alarm日誌傳送到 console 

7)、檢視裝置目前流量情況,看是否達到裝置的效能處理極限。 

通過show controller slot x port x statistic 檢視網路中實際的資料報的型別,

及show statistics inte***ce-counter inte***ce inte***ce-name second 檢視實際流量。

根據這兩個資料計算出當前cpu的可能範圍,計算方法:  

舉例如下(重點關注紅色部分):

g5150# show controller slot 0 port 2 statistic clear  

ethernet0/2:      ingoodoctets:       149459273057976   

inbadoctets:                  0     

ingoodpkts:         1041320608       

inbadpkts:                    0     

inunicastpkts:      1039308946        

inbroadcastpkts:          30548     

inmulticastpkts:       1981114        

incontrolpkts:          1841818     

inundersizepkts:             0       

inoversizepkts:               0     

infragments:                 0        

injabbers:                    0     

inmacrcverrors:              0        

incrcalignerrors:             0 

如果想計算網路中1024~1516位元組的包的比例那麼這個數值為:  n=3229483598/(1066118462+962721469+629952481+1811399299+3589872214+3229483598)=0.32  

由此可以看出網路中1024~1518位元組的包的比例為32%(其他位元組的包的比例演算法一樣),再結合當前的介面流量來分析防火牆的cpu是否屬於正常範圍。

高CPU排查方法分享

1 軟體效能較差,占用cpu較多,往往是由於某段 邏輯演算法不佳導致,那如何在數以千計的函式中找到問題函式呢?2 在使用 runaway命令比較不同時間各執行緒占用cpu時間,找到cpu時間增漲較多的執行緒,那麼就初步定位了問題函式所在的問題執行緒,3 然後在不同的時刻觀察問題執行緒的呼叫棧,如果多...

CPU飆高問題排查

1 查詢哪個程序占用cpu 2 程序哪個執行緒占用cpu 3 查詢執行緒的堆疊資訊 cpu飆高時,基本就是三板斧就可以找到具體占用cpu的執行緒資訊,這樣,你就看到cpu這麼高,是什麼執行緒在搗亂了!可以使用top 或者top grep 使用者名稱 比如這裡我們可以使用 top grep deplo...

排查Java高CPU占用原因

top命令發現某個程序占用了100 的cpu 通過ps命令,進一步確定哪個程序出了問題 再檢視執行緒占用cpu的列表 找到占用cpu最高的執行緒,檢視tid,將其轉換為16進製制格式 printf x n tid 而後檢視堆疊資訊 jstack pid grep 16進製制tid a 60這裡報錯是...