交換機CPU占用率是指一段時間內CPU執行代碼的非空閑時間與時間段總長度的比率,可反映某個時間段交換機CPU資源使用情況,其計算機公式為:CPU占用率=(總時間-空閑時間)/總時間。空閑時間是指CPU運行Idle任務的時間,Idle任務是一個低優先級任務,不完成具體工作,如果Idle任務得到了調度,就認為CPU當前處于空閑狀態。系統的CPU占用率不是保持不變的,它是隨著系統的運行和外部環境的變化而持續變化的。正常狀態下,交換機的CPU占用率不會超過5%,交換機在采用堆疊方式,其CPU占用率不會超過8%,在配置功能較多的情況下,CPU占用率不會超過30%,如果CPU交換機占用率超過50%則視為不正常。
當交換機CPU處理的數據包過多、各類中斷請求過多或部分任務進程占用了較長CPU處理時間時,CPU負載就會增加,無法及時調度其他任務,從而會導致出現業務異常、業務處理能力下降和很多網絡故障等。
一般正常網絡環境中,為確保網絡不間斷工作,會采用備份交換機的網狀結構,各交換機同時會啟用STP/SEP/RSTP/MSTP等生成樹功能的協議,避免網絡出現環路。在這些協議運行過程中,交換機CPU會周期性接收BPDU等報文來維持交換機端口Root/Alternate等角色,如果交換機CPU占用率過高,很可能導致BPDU報文不能及時發送和處理,交換機會認為到根橋的路徑出現故障,從而重新選擇ROOT端口,引起網絡重新收斂,導致網絡拓撲改變。如果交換機原來同時存在Alternate端口,交換機會將Alternate端口作為新的ROOT端口,進行數據收發,導致網絡結構發生改變,也可能會導致網絡出現環路。……