淺談Cisco4500系列交換機CPU超載

一:CPU超載緣由:
致使CISCO4500系列交換CPU超載的緣由不少。最多見的緣由爲網絡中異常包過多,使核心交換機CPU疲於控制,轉發異常包,CPU超載運做。在咱們公司有出現過下列三種方式致使異常包過多現象:
1:病毒(ARP,DHCP協議包過多);
2:二層網絡串接成迴路(廣播風暴);
3:測試軟件使用不當(該軟件能持續發送廣播包或者多包);
二:Troubleshooting過程可參考的命令:
    1: show processes cpu
    2: show platform health
3: show platform cpu packet statistics
4: debug platform packet all receive buffer
5: show platform cpu packet buffered
6:show interfaces | include L2 |line |broadcast
7:show interfaces interface counters
8:show interface | include line |\/sec
9:monitor session 1 source cpu 
     monitor session 2 destination interface interfaces
三:通常處理辦法:
針對上述致使CPU超載緣由,在現實中稍有不一樣的處理步驟。病毒以及測軟件產生異常包,咱們須要找到源頭並封擋它;網絡串接成環,咱們須要定位哪一個端口下或哪些端口串接成環並作出處理。
最近5廠出現測試軟件使用不當,致使核心45 CPU超載的異常事件,現結合案子大概講述下處理過程:
1:收到核心45超載報警信息後,登入45,show processes cpu 查看各個進程佔用率狀況,發現Cat4k Mgmt進程佔用率過大,此爲核心進程。
F5-4506-DOWN# show processes cpu
CPU utilization for five seconds: 87%/1%; one minute: 85%; five minutes: 85%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process 
   1     3643880  17411824        209  0.00%  0.00%  0.00%   0 Chunk Manager    
   2       10624   1740948          6  0.00%  0.00%  0.00%   0 Load Meter       
   3           0         1          0  0.00%  0.00%  0.00%   0 Deferred Events  
   4           0         1          0  0.00%  0.00%  0.00%   0 CEF IPC Backgrou 
   5    16913420   1579962      10704  0.00%  0.20%  0.18%   0 Check heaps      
   6          28       143        195  0.00%  0.00%  0.00%   0 Pool Manager     
   7           0         2          0  0.00%  0.00%  0.00%   0 Timers           
              -------------  Output suppressed--------------------------
  33      316292   8740292         36  0.00%  0.00%  0.00%   0 Per-Second Jobs  
  34     4661080    277884      16773  0.00%  0.06%  0.05%   0 Per-minute Jobs  
  35   8688161121758382511        494  6.85%  7.29%  7.30%   0 Cat4k Mgmt HiPri 
  36   721412156 357038431       2020 74.56% 68.72% 68.57%   0 Cat4k Mgmt LoPri 
  37      212616  10593419         20  0.00%  0.00%  0.00%   0 Galios Reschedul 
  38           8        69        115  0.00%  0.00%  0.00%   0 IOS ACL Helper   
  39           0         2          0  0.00%  0.00%  0.00%   0 NAM Manager      
                  ----------------  Output suppressed--------------------------
               
2:show platform health 進一步確認該平臺具體程序利用率,發現K2CpuMan Review 佔用率最大,包的轉發須要調用的該進程,至此,有個大概的眉目了,能夠判斷有大量數據包在做怪.
  
F5-4506-DOWN#show platform health 
                      %CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU
Lj-poll                1.00   0.01      2      0  100  500    0   0    0  13:45
GalChassisVp-review    3.00   0.20     10     16  100  500    0   0    0  88:44
S2w-JobEventSchedule  10.00   0.57     10      7  100  500    1   0    0  404:22
Stub-JobEventSchedul  10.00   0.00     10      0  100  500    0   0    0  0:00
StatValueMan Update    1.00   0.09      1      0  100  500    0   0    0  91:33
Pim-review             0.10   0.00      1      0  100  500    0   0    0  4:46
Ebm-host-review        1.00   0.00      8      4  100  500    0   0    0  14:01
Ebm-port-review        0.10   0.00      1      0  100  500    0   0    0  0:20
Protocol-aging-revie   0.20   0.00      2      0  100  500    0   0    0  0:01
Acl-Flattener          1.00   0.00     10      5  100  500    0   0    0  0:04
KxAclPathMan create/   1.00   0.00     10      5  100  500    0   0    0  0:21
KxAclPathMan update    2.00   0.00     10      6  100  500    0   0    0  0:05
KxAclPathMan reprogr   1.00   0.00      2      1  100  500    0   0    0  0:00
TagMan-InformMtegRev   1.00   0.00      5      0  100  500    0   0    0  0:00
TagMan-RecreateMtegR   1.00   0.00     10     14  100  500    0   0    0  0:18
K2CpuMan Review       30.00  91.31     30     92  100  500  128 119   84  13039:02
K2AccelPacketMan: Tx  10.00   2.30     20      0  100  500    2   2    2  1345:30
K2AccelPacketMan: Au   0.10   0.00      0      0  100  500    0   0    0  0:00
                   --------------  Output suppressed--------------------------
3:show platform cpu packet statistics 查看有發現L2/L3Control隊列中須要CPU處理的數據包比較多。
     
   F5-4506-DOWN# sho platform cpu packet statistics 
Packets Dropped In Hardware By CPU Subport (txQueueNotAvail)
                 -------------  Output suppressed--------------------------
 Packets Received by Packet Queue
Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Esmp                         559394854       101        85        65         55
L2/L3Control                 241541699       916       820       631        173
Host Learning                  9303858         0         0         0          0
L3 Fwd High                       1535         0         0         0          0
L3 Fwd Medium                    19512         0         0         0          0
L3 Fwd Low                     3953395         0         0         0          0
L2 Fwd High                          7         0         0         0          0
 -------------  Output suppressed--------------------------
4:既然知道是異常包在做怪,咱們能夠作端口鏡像並用Ethereal抓包分析異常數據包,從中能得出包的類型,IP,MAC等相關信息。接着層層往下查找便可定位到異常包的源頭,最後封擋源頭並觀察CPU利用率。本次案子是利用cisco設備自己具備的命令來獲取異常包信息:
F5-4506-DOWN#  debug platform packet all receive buffer
platform packet debugging is on 
F5-4506-DOWN#sho platform cpu packet buffered
Total Received Packets Buffered: 1024
-------------------------------------
Index 0:
100 days 18:19:59:900721 - RxVlan: 517, RxPort: Gi4/47
Priority: Normal, Tag: Dot1Q Tag, Event: Input Acl, Flags: 0x40, Size: 1362
Eth: Src 00-E0-4C-B1-7F-4D Dst 01-00-5E-00-00-01 Type/Len 0x0800
Ip: ver:4 len:20 tos:0 totLen:1344 id:62005 fragOffset:0 ttl:1 proto:udp
    src: 192.168.1.100 dst: 224.0.0.1 firstFragment lastFragment
Remaining data: 
 0: 0x4  0x9C 0x4  0xD2 0x5  0x2C 0x58 0x82 0x47 0x0  
10: 0x45 0x1E 0x8A 0xDD 0xC2 0x72 0xA5 0xAA 0x1F 0xD4 
20: 0x29 0x41 0x1C 0x2  0x2B 0x1A 0x8  0x1F 0x3E 0x0  
Index 1:
100 days 18:19:59:901497 - RxVlan: 517, RxPort: Gi4/47
Priority: Normal, Tag: Dot1Q Tag, Event: Input Acl, Flags: 0x40, Size: 1362
Eth: Src 00-E0-4C-B1-7F-4D Dst 01-00-5E-00-00-01 Type/Len 0x0800
Ip: ver:4 len:20 tos:0 totLen:1344 id:62006 fragOffset:0 ttl:1 proto:udp
    src: 192.168.1.100 dst: 224.0.0.1 firstFragment lastFragment
Remaining data: 
 0: 0x4  0x9C 0x4  0xD2 0x5  0x2C 0xB3 0x1A 0x47 0x0  
10: 0x45 0x15 0xC7 0xD8 0x4F 0x2E 0x11 0x72 0x4E 0xF8 
20: 0x43 0xA  0x29 0x23 0x48 0x20 0xFD 0xA0 0x3  0xFF 
Index 2:
100 days 18:19:59:902274 - RxVlan: 517, RxPort: Gi4/47
Priority: Normal, Tag: Dot1Q Tag, Event: Input Acl, Flags: 0x40, Size: 1362
Eth: Src 00-E0-4C-B1-7F-4D Dst 01-00-5E-00-00-01 Type/Len 0x0800
Ip: ver:4 len:20 tos:0 totLen:1344 id:62007 fragOffset:0 ttl:1 proto:udp
    src: 192.168.1.100 dst: 224.0.0.1 firstFragment lastFragment
Remaining data: 
 0: 0x4  0x9C 0x4  0xD2 0x5  0x2C 0x71 0x68 0x47 0x0  
10: 0x45 0x1C 0xB7 0xF9 0x7D 0xBA 0x9F 0x2F 0xBA 0xEB 
20: 0x26 0xC2 0xEA 0xA3 0x7E 0x5D 0x0  0x58 0x8  0x0  
                -------------  Output suppressed--------------------------
根據上述信息,咱們可得出大量多包,源頭在vlan 517,從端口Gi4/47發送至4506-Down,源IP(192.168.1.100),源MAC(00-E0-4C-B1-7F-4D),至此,可繼續往下查找此源頭的網絡接入點並現場確認後隔離。必要時可直接在4506-UP中drop掉。
相關文章
相關標籤/搜索