目錄

簡介

必要條件

需求

採用元件

背景資訊

檢視日誌

通訊故障排除

簡介

本檔案介紹如何疑難排解Cisco Catalyst 6500系列交換器上因為通訊失敗而關閉電源的線路卡。

必要條件

需求

本文件沒有特定需求。

採用元件

本檔案中的資訊是根據Cisco Catalyst 6500系列交換器，並不限於特定軟體版本。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

背景資訊

安全複製通訊協定(SCP)是在Catalyst 6500上透過乙太網路帶外通道(EOBC)從交換器處理器(SP)和非分散式轉送卡（非DFC）線路卡進行通訊所使用的通訊協定。SCP或keep-alive輪詢失敗可能代表管理引擎和線卡之間的通訊問題。

每當模組關閉電源時，都執行以下檢查：

- 檢視日誌，以確定模組是否由於「SCP dnld」故障而關閉。

- 排除Supervisor與有問題的線卡之間的通訊故障。

檢視日誌

檢查日誌以檢視「SCP dnld」或「keep-alive」輪詢失敗是否是模組關閉電源的原因：

%C6KPWR-SP-4-DISABLED: power to module in slot 2 set off (Module Failed SCP dnld)

%C6KPWR-SP-4-DISABLED: power to module in slot 2 set off (Module not responding to

Keep Alive polling)

通訊故障排除

以下過程介紹了如何對Supervisor和線卡之間的通訊進行故障排除。

1. 從SP端檢查全域性SCP計數器是否有任何增量錯誤。

6500#remote command switch show scp counters

6500-sp#

received packets            = 586786

transmitted packets         = 584442

retransmitted packets       = 13        (increasing re-transmissions indicate

congested EOBC)

loop back packets           = 0

transmit failures           = 0         (increasing transmit failures indicate

congested/stuck EOBC)

recv pkts not for me        = 0

recv pkts to dead process   = 0

recv pkts not enqueuable    = 0         (increasing counters indicate lack of

EOBC buffers)

response has wrong opcode   = 0

response has wrong seqnum   = 0

response is not an ack      = 0

response is too big         = 0

2. 檢查每個模組的SCP接收/傳輸計數器，並檢查遞增SCP重試次數。

6500#remote command switch show scp status

6500-sp#

Rx 586786 ,  Tx 584442 ,  Sap 15

Id     Channel name    current/peak/retry/total  time(queue/process)

-- ------------------- ------------------------  -------------------

0  SCP async: LCP#8     0/ 11/  1/   13            4/   4

1  SCP async: LCP#4     0/ 13/  0/  550           92/ 108

2  SCP async: LCP#2     0/ 34/  0/ 1540          628/ 456

3  SCP async: LCP#5     0/ 17/  1/  716         2228/1252

4  SCP async: LCP#1     0/ 29/  0/  137          200/ 452

5  SCP async: LCP#9     0/ 13/  0/  895          176/ 428

3. 檢查從Supervisor ping相關模組的SCP。

6500#remote command switch test scp ping 3

6500-sp#

pinging addr 5(0x5)

assigned sap 0x11

addr 5(0x5) is alive       (Communication between the supervisor and line

card is fine)

6500#remote command switch test scp ping 2

6500-sp#

pinging addr 11(0xB)

assigned sap 0x11

no response from addr 11(0xB)  (Communication between the supervisor

and linecard is broken)

4. 線上卡上配置聯機診斷。

6500(config)#diagnostic level complete      (12.1(8a)EX or above)

5. 重新拔插線卡並檢視測試結果，以檢視是否有任何測試失敗。

6500#show diagnostic result module 2

Current Online Diagnostic Level = Complete

Online Diagnostic Result for Module 2 : PASS

Online Diagnostic Level when Module 2 came up = Complete

6. 可選：使用debug命令檢查SCP下載事件。當線卡聯機時，可以運行這些調試來檢查SCP下載事件。以下是模組工作正常的示例。

6500#remote login switch

6500-sp#debug scp download module 2

6500-sp#show debug

<snip>

SCP download debugging for slot 2 is on

start_timer_online_action: Start OIR online timer for slot: 2,

time: 1380 sec

scp_dnld_module 2 : 0 : 0: during state enabled, got event 5(registered)

@@@ scp_dnld_module 2 : 0 : 0: enabled -> wait_til_boot_ready

Stop timer

Start BOOT_RDY timer for 2 with 30000 msec

scp_dnld_module 2 : 0 : 0: during state wait_til_boot_ready, got event

6(boot_ready)

@@@ scp_dnld_module 2 : 0 : 0: wait_til_boot_ready -> wait_til_downloaded

Stop timer

Start DNLD timer for 2 with 120 sec

(scp_start_download) 2/0

(scp_start_download) 2/0: Started D/L Process, pid 512

get_card_image: slot/proc 2/0: UBIN patch image on flash opened

(microcode:/LCP_CPGBIT)

No download needed for card at slot 2

scp_dnld_module 2 : 0 : 0: during state wait_til_downloaded, got event

4(dnld_completed)

@@@ scp_dnld_module 2 : 0 : 0: wait_til_downloaded -> wait_til_ready

Stop timer

Start EXEC_CODE timer for 2 with 90 sec

Received Run-ready from slot 2

scp_download_process_teardown() mypid 512, slot/proc 2/0, image_fd -1

scp_dnld_module 2 : 0 : 0: during state wait_til_ready, got event

8(ready)

@@@ scp_dnld_module 2 : 0 : 0: wait_til_ready -> wait_til_running

Stop timer

Start RUN_RDY timer for 5 with 90 sec

scp_dnld_module 2 : 0 : 0: during state wait_til_running, got

event 9(running)

@@@ scp_dnld_module 2 : 0 : 0: wait_til_running -> wait_til_online

Stop timer

<snip>