목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

표기 규칙

NPE(Network Processing Engine) 패리티 오류 트리 분석

NPE 패리티 오류 감지 및 메시지

NPE-300의 패리티 오류

NPE-400 패리티/ECC 탐지

C7200 라우터의 패리티 오류

솔루션

관련 정보

소개

이 문서에서는 다양한 패리티 오류 메시지를 식별할 때 Cisco 7200의 부품 또는 구성 요소가 실패하는 문제를 해결하고 격리하는 단계에 대해 설명합니다. 이 문서를 진행하기 전에 Troubleshooting Router Crash and Processor Memory Parity Errors (PMPEs)를 읽는 것이 좋습니다.

참고: 이 문서의 정보는 Cisco 7200 Series 라우터를 기반으로 합니다.

사전 요구 사항

요구 사항

이 문서에 대한 특정 요건이 없습니다.

사용되는 구성 요소

이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 라이브 네트워크에서 작업하는 경우, 명령을 사용하기 전에 명령의 잠재적인 영향을 이해해야 합니다.

표기 규칙

문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.

NPE(Network Processing Engine) 패리티 오류 트리 분석

이 다이어그램은 다양한 패리티 오류 메시지를 식별할 때 Cisco 7200의 부품 또는 구성 요소가 실패하는 것을 확인하는 단계를 설명합니다.

참고: show tech-support 출력 및 콘솔 로그를 캡처하고 기록하고 패리티 오류 이벤트 동안 모든 crashinfo 파일을 수집합니다.

NPE 패리티 오류 감지 및 메시지

이 섹션에는 NPE의 블록 다이어그램과 이러한 시스템이 패리티 오류를 탐지하는 위치가 포함되어 있습니다. 아래에서 각 오류 메시지 유형에 대한 설명을 찾을 수 있습니다.

NPE-300의 패리티 오류

NPE-300은 공유 메모리(SDRAM), PCI 버스 및 CPU의 외부 인터페이스에서 패리티 검사를 사용하여 시스템이 비트 오류로 인해 작동하지 않도록 보호합니다. 패리티 검사는 간단한 방법을 사용하여 단일 비트 오류를 감지할 수 있습니다. 8비트의 데이터당 하나의 확인 비트를 추가합니다. 하드웨어 구성 요소 간에 데이터를 전달할 때 비트 오류가 감지되면 시스템은 잘못된 데이터를 삭제합니다. 위 다이어그램의 모든 위치에서 단일 비트 오류가 발생하면 라우터가 재설정됩니다.

NPE-400 패리티/ECC 탐지

NPE-400은 공유 메모리(SDRAM)에 단일 비트 오류 수정 및 다중 비트 오류 감지 ECC(오류 코드 수정)를 사용합니다. NPE-400에서 시스템 가용성을 높이기 위해 ECC는 SDRAM에서 단일 비트 오류를 수정하여 시스템을 재설정하지 않고 다운타임 없이 정상적으로 작동할 수 있도록 합니다. ECC가 시스템 가용성을 향상시키는 방법에 대한 자세한 내용은 네트워크 가용성 향상 페이지를 참조하십시오.

SDRAM에서 다중 비트 오류가 발생하면 캐시 오류 예외 또는 버스 오류로 인해 라우터가 재설정됩니다. 시스템의 나머지 메모리 및 버스는 단일 비트 패리티 탐지를 사용합니다. 위 다이어그램의 1 및 3에서 단일 비트 오류가 발생하면 라우터가 재설정됩니다.

C7200 라우터의 패리티 오류

C7200/NPE 라우터의 여러 패리티 검사 디바이스는 읽기 또는 쓰기 작업에 대해 패리티가 잘못된 데이터를 보고할 수 있습니다. 다음은 C7200/NPE 시스템에 보고된 다양한 오류 메시지에 대한 설명입니다.

GT64010/GT64120 DRAM 오류

이 오류는 GT64120 시스템 컨트롤러가 SDRAM을 읽을 때 패리티 오류를 감지한 경우 보고됩니다.

%ERR-1GT64120 (PCI0):Fatal error, Memory parity error (external)

GT=0xB4000000, cause=0x0100E283, mask=0x0ED01F00, real_cause=0x00000200

Bus_err_high=0x00000000, bus_err_low=0x00000000,

addr_decode_err=0x1C000000

두 번째 실패 후 SDRAM을 교체합니다. 장애가 계속되면 NPE를 교체합니다.

참고:  GT64010 컨트롤러를 사용하는 이전 NPE(NPE-100/150/200)의 경우 다음과 같은 오류가 발생합니다.

%ERR-1-GT64010: Fatal error, Memory parity error (external)

cause=0x0300E283, mask=0x0CD01F00, real_cause=0x00000200

bus_err_high=0x00000000, bus_err_low=0x00000000, addr_decode_err=0x00000000

GT64010 컨트롤러는 DRAM(동적 RAM)을 사용하며 SDRAM은 사용하지 않습니다. 이 경우 두 번째 실패 후 DRAM을 교체합니다. 장애가 계속되면 NPE를 교체합니다.

GT64010/GT64120 시스템 패리티 오류 마스터 읽기

마스터 읽기의 패리티 오류는 PCI(Peripheral Component Interconnect) 브리지에 액세스하여 트리거되는 패리티 오류입니다. 다음은 패리티 오류 출력의 예입니다.

%ERR-1-GT64120 (PCI0):Fatal error, Parity error on master read

GT=B4000000, cause=0x0110E083, mask=0x0ED01F00, real_cause=0x00100000

Bus_err_high=0x00000000, bus_err_low=0x00000000,

addr_decode_err=0x00000470

%ERR-1-SERR: PCI bus system/parity error

%ERR-1-FATAL: Fatal error interrupt, No reloading

Err_stat=0x81, err_enable=0xFF, mgmt_event=0x40

두 번째 실패 후 적절한 구성 요소를 교체합니다. 시스템 브리지 덤프는 교체할 구성 요소를 나타냅니다.

System bridge dump:

Bridge 1, for PA bay 1, 3 and 5. Handle=1

DEC21150 bridge chip, config=0x0

(0x1C):sec status, io base =0x83A09141

Detected Parity Error on secondary bus

Data Parity Detected on secondary bus

(0x20):mem base & limit =0x4AF04880

이 표에서는 오류 메시지 출력에 문제가 있는 구성 요소를 보여 줍니다.

NPE-100/150/200:

브리지 번호

이 다리는 무엇을 위한 것인가

기본 버스의 패리티 오류

보조 버스의 패리티 오류

브리지 0

다운스트림 MB0 - MB1 0

NPE 교체

NPE 교체; 섀시가 있는 경우 섀시 교체

브리지 1

업스트림 MB1 - MB0

NPE 교체; 섀시가 있는 경우 섀시 교체

NPE 교체

브리지 2

다운스트림 MB0 - MB2

NPE 교체

NPE 교체; 섀시가 있는 경우 섀시 교체

브리지 3

업스트림 MB2 - MB0

NPE 교체; 섀시가 있는 경우 섀시 교체

NPE 교체

NPE-175/225/300/400/NSE-1:

브리지 번호

이 다리는 무엇을 위한 것인가

기본 버스의 패리티 오류

보조 버스의 패리티 오류

브리지 0

PA 베이 0(I/O 카드, PCMCIA, 인터페이스)

NPE 교체

NPE 교체; 그래도 있는 경우 I/O 카드를 교체합니다. 그래도 있는 경우 섀시를 교체합니다.

브리지 1

PA 베이 1, 3, 5의 경우

NPE 교체

NPE를 교체합니다. 섀시가 있는 경우 섀시 교체

브리지 2

PA 베이 2, 4, 6의 경우

NPE 교체

NPE 교체; 섀시가 있는 경우 섀시 교체

모든 C7200:

브리지 번호

이 다리는 무엇을 위한 것인가

기본 버스의 패리티 오류

보조 버스의 패리티 오류

브리지 4

포트 어댑터 1

NPE 교체; 섀시가 있는 경우 섀시 교체

PA 1 교체; 섀시가 있는 경우 섀시 교체

브리지 5

포트 어댑터 2

NPE 교체; 섀시가 있는 경우 섀시 교체

PA 2 교체; 섀시가 있는 경우 섀시 교체

브리지 6

포트 어댑터 3

NPE 교체; 섀시가 있는 경우 섀시 교체

PA 3 교체 섀시가 있는 경우 섀시 교체

브리지 7

포트 어댑터 4

NPE 교체; 섀시가 있는 경우 섀시 교체

PA 4 교체; 섀시가 있는 경우 섀시 교체

브리지 8

포트 어댑터 5

NPE 교체; 섀시가 있는 경우 섀시 교체

PA 5 교체 섀시가 있는 경우 섀시 교체

브리지 9

포트 어댑터 6

NPE 교체; 섀시가 있는 경우 섀시 교체

PA 6 교체; 섀시가 있는 경우 섀시 교체

CPU 패리티 오류

모든 컴퓨터 및 네트워킹 장치와 마찬가지로 NPE는 프로세서 메모리에서 드물게 발생하는 패리티 오류에 취약합니다. 패리티 오류로 인해 시스템이 재설정될 수 있으며 일시적인 단일 이벤트 장애(SEU 또는 소프트 오류)일 수도 있고 하드웨어 손상 때문에 여러 번(하드 오류라고도 함)이 발생할 수도 있습니다. SEU에 대한 자세한 내용은 네트워크 가용성 향상 페이지를 참조하십시오. 프로세서의 캐시에 액세스할 때 CPU가 패리티 오류를 감지하면(L1, L2 또는 일치하는 경우 L3) CPU 패리티 오류가 보고됩니다.

다음은 이 유형의 오류의 네 가지 예입니다.

예 1:

Error: SysAD, data cache, fields: data, 1st dword

Physical addr(21:3) 0x195BE88,

Virtual address is imprecise.

Imprecise Data Parity Error

Imprecise Data Parity Error

NPE에는 비차단 캐시가 있는 R7K 프로세서가 있습니다. 비차단 캐시는 레지스터에 데이터를 로드하는 명령을 실행하며 이 데이터가 L1 캐시에 없는 경우 CPU는 하위 순서 캐시 또는 SDRAM 데이터에서 데이터를 로드합니다. CPU는 다른 캐시 누락이나 로드되는 데이터에 따라 다른 명령이 결정되는 경우가 아니면 추가 명령의 실행을 차단하지 않습니다. 이렇게 하면 프로세서 속도가 크게 빨라지고 성능이 향상될 수 있지만 패리티 오류가 정확하지 않을 수도 있습니다. 부정확한 패리티 오류는 CPU가 차단 없이 정보를 읽고 나중에 연결된 캐시 라인에 패리티 오류가 있음을 확인하는 경우에 발생합니다. R7K 프로세서는 캐시 회선이 로드될 때 어떤 명령이 실행되었는지 구체적으로 알려줄 수 없습니다. 이것이 바로 R7K 프로세서를 부정확한 패리티 오류라고 부르는 이유입니다.

시스템이 ECC(Error Code Correction)를 사용하더라도 캐시의 하드 오류로 인해 64비트 데이터에서 단일 오류 이상의 오류가 발생한 경우에도 비정기적으로 패리티 오류가 발생할 수 있습니다.

신호 비트 값이 원래 값(0 또는 1)에서 반대 값으로 변경되면 패리티 오류가 발생합니다. 이 오류는 소프트 또는 하드 패리티 오류로 인해 발생할 수 있습니다.

소프트 패리티 오류는 디바이스의 메모리에 외부적으로 영향을 미치며 현재 레벨에서 비트 값이 변경됩니다. 이러한 유형의 문제는 일시적이며 다시 발생하지 않습니다. 하드 패리티 오류는 메모리 손상 때문에 메모리 자체에 의해 비트 값이 변경될 때 발생합니다. 이 경우, 메모리 영역이 사용될 때마다 문제가 발생합니다. 즉, 이 문제는 며칠 또는 일주일 동안 여러 번 반복될 수 있습니다.

예 2:

Error: SysAD, instr cache, fields: data, 1st dword

Physical addr(21:3) 0x000000,

virtual addr 0x6040BF60, vAddr(14:12) 0x3000

virtual address corresponds to main:text, cache word 0

Low Data     High Data  Par  Low Data     High Data  Par

L1 Data:  0:0xAE620068 0x8C830000 0x00 1:0x50400001 0xAC600004 0x01

2:0xAC800000 0x00000000 0x02 3:0x1600000B 0x00000000 0x01

Low Data     High Data  Par  Low Data     High Data  Par

DRAM Data: 0:0xAE620068 0x8C830000 0x00 1:0x50400001 0xAC600004 0x01

2:0xAC800000 0x00000000 0x02 3:0x1600000B 0x00000000 0x01

예 3:

Cache Err Reg = 0xE4588D10

Data reference, Secondary/Sys intf cache, Data field error

Error on 1st doubleword on System interface

No errors in addition to instr error

Data phy addr that caused last parity or bus error: 0x1E84040C

예 4(NPE-300 및 NPE-400만 해당):

%CERF-3-RECOVER: PC=0x604F136C, Origin=L3 Data ,PhysAddr=0x013CEFD0

또는

%SYS-2-CERF_ABORT: Reason=0xEE23, PC=0x604629C8, Origin=L3 Data,

Phys Addr=0x0287A4E8

위의 두 메시지 모두 다음과 같이 "CERF(Cache Error Recovery Function) 보고서"가 함께 제공됩니다.

CERFa[1 ] 05:25:36 MET Tue Jul 9 2002: result=0xEE23; instr_pos=-2; rpl_off=1

CERFb[1 ] PC =604629C8; ORGN=L3 Data; PRID=00002710; PHYA=0287A4E8

CERFc[1 ] SREG=3400E105; CAUS=00000400; DEA0=0287A4E8; ECC =00000000

CERFd[1 ] CERR=E447A4EA; EPC =606361F8; DEA1=02517058; INFO=00000000

CERFe[1 ] CACHE=28FF78B4 62B36D98 02020684 00000E17 00000030 00000001 61F2934C 3EDA025D

CERFe[1 ] SDRAM=28FF78B4 62B36D98 02020684 00000E17 00000030 00000001 61F2934C 3EDA025D

CERFg[1 ] CXT =00000000; XCXT=00000000; BVAD=00000008; PFCL=00000000

CERFh[1 ] ISeq: 0045182B; 1060000E; 2C4203E9; 92430028; 38420001; 30630005

CERFi[1 ] o0 $3 ....; beq....; sltiu $2 ....; lbu $3, 0x0028($18); xori $2....; andi $3 ....;*

CERFj[1 ]           ;        ;              ;            6287A4E8;            ;             ;

CERFk[1 ] ResumptionCode= 0x92430028; 0x0000000F; 0x42000018

CERFl[1 ] Instr's checked=4; diags=0x00000158,0x00040000,3600,1,0

CERFm[1 ] BaseRegLost later/off: 0/0 times; StoredValueLost: 0 times

CERFn[1 ] INFO=00000000; CNFG=5061F4BB; ICTL=00000000

Initial Register Values

CERFs00[1 ] $0=00000000 AT=61A30000 v0=00000001 v1=00000002

CERFs04[1 ] a0=28FF8728 a1=00003A98 a2=00000000 a3=00000007

CERFs08[1 ] t0=00000000 t1=3400E101 t2=606381E0 t3=FFFF00FF

CERFs12[1 ] t4=606381C8 t5=000005D4 t6=00000008 t7=61C50000

CERFs16[1 ] s0=6189C188 s1=00000000 s2=6287A4C0 s3=00003A98

CERFs20[1 ] s4=61BD57B0 s5=00000006 s6=00000000 s7=61BD6C60

CERFs24[1 ] t8=60634788 t9=00000000 k0=621A8374 k1=6063EA40

CERFs28[1 ] gp=61A33B20 sp=61E28678 s8=00000000 ra=60462CA4

1 Cache error exceptions already reported

NPE-300 또는 NPE-400에서 CERF가 활성화되고 패리티 오류가 발생하는 경우 위의 로그가 표시됩니다. CERF에 대한 자세한 내용은 아래의 솔루션 섹션을 참조하십시오.

솔루션

이러한 오류가 발생할 경우 다음과 같은 조치를 취하는 것이 좋습니다.

1. 영향을 받는 하드웨어를 모니터링하여 동일한 문제가 다시 발생하는지 확인합니다. 그렇지 않은 경우 일시적인 SEU(Single Event Upsting)이므로 아무 작업도 수행할 필요가 없습니다.

2. 문제가 다시 발생할 가능성이 없는 경우 cache L3 bypass/disable 명령은 문제의 영향을 줄일 수 있는 옵션입니다. 이 명령은 다음 플랫폼에서만 사용할 수 있습니다.

- 프로세서 엔진 NPE-300, NPE-400 또는 NSE-1을 사용하는 7200

- 프로세서 엔진 NSE-1을 사용하는 7400

NPE-300은 ECC 메모리를 지원하지 않으므로 이 기능은 시스템 가용성을 높이고 서비스 중단 없이 이러한 패리티 오류를 처리하는 데 특히 중요합니다. 이렇게 하면 많은 소프트 패리티 오류가 해결됩니다. 주의 사항은 L3 캐시가 비활성화된 경우 시스템에 약간의 성능이 저하된다는 것입니다. 성능 저하는 시스템 구성에 따라 1%에서 10% 사이입니다. 이 명령 사용 구문은 Cisco IOS 소프트웨어 버전에 따라 다릅니다.

- cache L3 disable 명령은 Cisco IOS Software Releases 12.3(5a) 이상에서 찾을 수 있습니다. 12.1(22)E에서도 제공됩니다. 이러한 버전에서는 L3 캐시가 기본적으로 비활성화되어 있으므로 이 기능을 활용하는 데 어떤 작업도 필요하지 않습니다. no cache L3 disable 명령을 사용하여 L3 캐시를 다시 활성화할 수 있습니다.

- cache L3 bypass 명령은 Cisco IOS Software 릴리스 12.2(6)S, 12.2(6)B, 12.2(8)BC1b, 12.0(20)SP, 12.2(6)PB, 12.2(2)DD2, 12.0(20)ST3, 12.0(12.0)에서 찾을 수 있습니다. 1)S, 12.1(11)EC, 12.2(7)T, 12.1(13), 12.2(7) 이상, 12.1(11)E~12.1(21)E. 이 명령은 기본적으로 비활성화되어 있습니다.

L3 캐시 우회를 활성화하려면 컨피그레이션 모드에서 다음을 입력합니다.

Router(config)#cache L3 bypass

L3 캐시 우회를 비활성화하려면 컨피그레이션 모드에서 다음을 입력합니다.

Router(config)#no cache L3 bypass

새 캐시 설정은 라우터를 다시 로드할 때까지 적용되지 않습니다.

라우터가 부팅되면 L3 캐시에 대한 정보를 비롯한 시스템 정보가 표시됩니다. 시스템에 의해 startup-config 파일이 아직 처리되지 않았기 때문입니다. startup-config 파일이 처리된 후 cache L3 bypass 명령이 컨피그레이션에 있는 경우 L3 캐시를 우회합니다.

L3 캐시 설정을 확인하려면 show version 명령을 실행할 수 있습니다. L3 캐시를 우회하는 경우 show version 출력에 L3 캐시에 대한 참조가 없습니다.

3. 시스템 가용성을 높이는 또 다른 기능은 CERF(Cache Error Recovery Function)입니다. 이 기능이 활성화된 경우(이 기능은 최신 Cisco IOS 소프트웨어 릴리스에서는 기본값이지만, 2004년 2월부터 NPE-300 및 NPE-400에만 해당) Cisco IOS 소프트웨어는 패리티 오류를 해결하고 프로세서가 충돌하지 않도록 합니다. 이 기능은 특정 유형의 소프트 패리티 오류의 약 75%를 해결합니다. 이 명령을 실행하면 시스템은 5% 미만의 성능 저하를 확인합니다.

NPE-300용 CERF는 Cisco IOS Software 릴리스 12.1(15), 12.1(12)EC, 12.0(22)S, 12.2(10)S, 12.2(10)T, 12.2(10), 12.2(2)XB4, 12.2(12에서 찾을 수 있습니다. BC1b 및 12.1(5)XM8 이상

NPE-400용 CERF는 12.3(3)B, 12.2(14)S3, 12.1(20)E, 12.1(19)E1, 12.3(1a), 12.2(13)T5, 12.2(18)S, 12.3(2)2, 2.2, 2.2.2, 2.2)T2에서 찾을 수 있다. (18), 12.3(3) 및 12.3(1)B1 이상

NPE-300용 CERF에는 하드웨어 버전 4.1 이상이 필요합니다. NPE-300의 하드웨어 버전을 식별하려면 show c7200 명령을 사용합니다.

Router>show c7200

...

C7206VXR CPU EEPROM:

Hardware revision 4.1 Board revision A0

...

NPE-400용 CERF에는 프로세서 R7K 버전 2.1 이상이 필요합니다. NPE-400의 프로세서 버전을 식별하려면 show version 명령을 사용합니다.

Router>show version

...

cisco 7206VXR (NPE400) processor with 491520K/32768K bytes of memory.

R7000 CPU at 350Mhz, Implementation 39, Rev 3.2, 256KB L2, 4096KB L3

Cache 6 slot VXR midplane, Version 2.1

...

참고: Crashinfo 파일에서 정보 검색에 설명된 대로 오류의 근본 원인을 확인하려면 모든 관련 crashinfo 파일을 수집하는 것이 중요합니다.

위의 제안으로 문제가 해결되지 않을 경우, 하드 패리티 오류가 하드웨어 손상으로 인해 발생하므로 NPE를 교체하면 패리티 오류가 반복적으로 발생할 경우 도움이 될 수 있습니다. 하드웨어 교체는 원래 NPE와 동일합니다. NPE를 교체하면 메모리가 있는 컴퓨터 장비에 SEU(Single Event Inspect)가 내재되어 있으므로 더 이상 패리티 오류가 발생하지 않을 것이라는 것을 보장할 수 없습니다.

관련 정보

- 라우터 충돌 트러블슈팅

- 프로세서 메모리 패리티 오류(PMPE)

- Technical Support - Cisco Systems