이 문서에서는 일부 Cisco IOS® 소프트웨어 스케줄러 관련 오류 메시지의 원인 및 문제 해결 방법에 대해 설명합니다.이러한 메시지는 특정 플랫폼과 관련이 없습니다.Cisco IOS 소프트웨어를 지원하는 모든 플랫폼에 표시될 수 있습니다.
이 문서에서 다루는 메시지는 다음과 같습니다.
"SCHED..."가 발생하면 이 페이지에 설명되어 있지 않은 오류 메시지는 이 페이지 상단의 피드백 양식을 사용하여 Cisco에 알립니다.
이 문서에 대한 특정 요건이 없습니다.
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 규칙을 참조하십시오.
Cisco IOS 소프트웨어 커널의 일부인 Cisco IOS 소프트웨어 스케줄러는 각 프로세스 상태를 나타내는 일련의 프로세스 대기열을 사용하여 시스템의 모든 프로세스를 관리합니다.대기열은 해당 상태의 프로세스에 대한 컨텍스트 정보를 저장합니다.스케줄러가 컨텍스트를 한 프로세스 대기열에서 다른 프로세스 대기열로 이동할 때 프로세스가 한 상태에서 다른 상태로 전환됩니다.프로세스 대기열 중 일부는 다음과 같습니다.
Idle queue(유휴 대기열) - 아직 활성 상태이지만 실행 전에 이벤트가 발생할 때까지 기다리는 프로세스를 포함합니다.
Dead queue(데드 큐) - 종료되었지만 시스템에서 완전히 제거하기 전에 리소스를 회수해야 하는 프로세스가 포함되어 있습니다.
Ready queues(준비 대기열) - 실행할 수 있는 프로세스가 포함되어 있습니다.4개의 준비된 대기열이 있으며 각 프로세스 우선순위에 하나씩 있습니다.실행 중인 프로세스가 일시 중단되면 스케줄러는 CPU를 제어하고 알고리즘을 사용하여 4개의 준비 대기열 중 하나에서 다음 프로세스를 선택합니다.
라우터에서 다양한 이벤트가 발생할 경우 알림을 받도록 프로세스를 등록할 수 있습니다.이 메시지는 등록된 타이머가 만료될 때마다 나타나며 프로세스가 두 번 연속적으로 실행된 후 타이머 값이 변경되지 않습니다.이는 항상 소프트웨어 관련 문제입니다.
콘솔의 이러한 메시지는 다음과 같은 문제를 나타냅니다.
%SCHED-3-STUCKMTMR: Sleep with expired managed timer 1C7410, time 0x1063F9C52 (00:00:00 ago). -Process= "IP SNMP", ipl= 6, pid= 44 -Traceback= 31BC79A 31BC9C0 323E130
이 오류 메시지가 나타나는 프로세스는 이러한 역추적 메시지의 원인을 좁히기 위한 좋은 예입니다.이 목록은 이러한 메시지가 나타나는 일반적인 이유를 보여줍니다.
IP SNMP(Simple Network Management Protocol) 프로세스 - 이 메시지는 SNMP WriteNet 요청 중에 나타날 수 있습니다.
%SCHED-3-STUCKMTMR: Sleep w/expired mgd timer 13AF58, time 0xBDBE878A (00:00:03 ago). -Process= "IP SNMP", ipl= 6, pid= 29 -Traceback= 313B218 313B5D2 3192A76 319EFEC 319F234 30FF17E 319F446 319F88E 30FEA70 3304C1E 33045F0 32F78E4 32F82AE 32F383E 32F7ABA 30FF19A %SYS-4-SNMP_WRITENET: SNMP WriteNet request. Writing current configuration to 146.61.55.230. %SYS-4-SNMP_WRITENET: SNMP WriteNet request. Writing current configuration to 146.61.10.20.
이전 Cisco IOS 소프트웨어 릴리스에는 일부 IP SNMP 폴링 관련 문제가 포함되었습니다.최신 Cisco IOS Software 릴리스 12.0 또는 12.1 주 릴리스로 업그레이드하면 이 문제가 해결됩니다.이는 외관 메시지입니다. 라우터(또는 IP SNMP 프로세스)의 작동에 영향을 줄 수 있는 부작용은 없습니다.
VINES(Virtual Integrated Network Service) 프로토콜 프로세스 - VINES에 대해 구성된 라우터에서 이러한 역추적 프로세스를 생성할 수 있습니다.
%SCHED-3-STUCKMTMR: Sleep w/expired mgd timer 6100606C, time 0x222DF318 (00:00:00 ago). -Process= "VINES Protocols", ipl= 6, pid= 60
이 메시지는 임의로 발생하며 VINES 성능에 영향을 주지 않는 것으로 나타납니다.VINES에서 만료된 시간 제한 이벤트를 처리하지 못한 경우(시스템 프로세서가 과부하 상태일 때) 발생합니다. 이벤트는 결국 처리되지만 처음 만료될 때는 처리되지 않습니다.
VINES는 타이머를 사용하여 ARP(VINES Address Resolution Protocol) 서비스, IPC(Inter Processor Communication) 세션 및 재전송, 라우팅 에이징 및 일부 서버 서비스를 처리하고 처리합니다.
이러한 메시지는 Cisco IOS Software 릴리스 12.0S 및 12.1 기본 릴리스에서 수정되었습니다.
MPLS(Multi Protocol Label Switching) 관련 프로세스 - MPLS에 대해 구성된 라우터에서 이러한 역추적 기능을 생성할 수 있습니다.
%SCHED-3-STUCKMTMR: Sleep w/expired mgd timer 60C0E9B4, time 0x3952 (00:00:00 ago). -Process= "TDP Hello", ipl= 5, pid= 58 -Traceback= 600867F0 60086BB8 604390D4 60077E88 60077E74 %SCHED-3-STUCKMTMR: Sleep w/expired mgd timer 60CC2548, time 0x43006 (00:00:00 ago). -Process= "Tag Control", ipl= 5, pid= 56 -Traceback= 600867F0 60086BB8 60448320 604484F0 60077E88 60077E74
TDP(Tag Distribution Protocol), TDP Hello 및 Tag 제어 프로세스에 대한 이벤트 루프를 분석하면 루프가 만료된 모든 타이머를 처리하지 않고 특정 process_wait_for_event 프로세스를 호출할 수 있음을 나타냅니다.일시 중단하기 전에 만료된 모든 타이머가 처리되도록 루프가 고정됩니다.이 문제는 최신 Cisco IOS Software 릴리스 12.0S 및 12.1 주 릴리스에서 해결되었습니다.
이 메시지가 발생할 수 있는 프로세스 목록은 완전하지 않습니다.이는 항상 표면적인 메시지이므로 Cisco IOS 소프트웨어 업그레이드를 정당화하지는 않습니다.최신 Cisco IOS 소프트웨어 릴리스를 트레인에서 실행해야 합니다.등록된 사용자가 Cisco.com에서 사용할 수 있는 최신 Cisco IOS 소프트웨어 릴리스에 여전히 메시지가 나타나면 Cisco 기술 지원에 문의하여 케이스를 여십시오.이때 오류 메시지와 문제가 발생한 라우터 또는 스위치의 show tech와 함께 전체 show log를 제공합니다.
이 메시지는 표시된 프로세스가 50번 연속으로 제어를 포기했으며 아직 처리되지 않은 이벤트가 있음을 의미합니다.
콘솔의 이러한 메시지는 다음과 같은 문제를 나타냅니다.
%SCHED-3-THRASHING: Process thrashing on watched queue 'ARP queue' (count 54). -Process= "ARP Input", ipl= 5, pid= 6 -Traceback= 6020589C 60205BC4 60236520 601F4FD8 601F4FC4
이러한 스래싱 검사는 어떤 이유로 프로세스가 해당 작업을 수행하지 않는지 확인하기 위한 것입니다.관찰된 대기열의 스래싱 검사(신호 처리 중인 문제 메시지)는 대기열의 요소 수를 확인합니다.이 번호가 지정된 일정 수에 대해 동일하게 유지되면 메시지가 인쇄됩니다.
일부 대기열의 길이가 제한됩니다.즉, 라우터의 사용량이 매우 많을 경우 대기열은 항상 최대값을 유지합니다.그 결과 스케줄러의 스래싱 코드는 혼동되고 이러한 대기열이 처리되지 않았다고 인식됩니다.스래싱 코드는 큐를 처리해야 하는 프로세스가 작업을 수행하지 않고 스래싱 메시지를 인쇄하는 것을 확인했습니다.
스케줄러가 이후 Cisco IOS 소프트웨어 코드에서 변경되었습니다.큐의 변경 여부를 추적하기 위해(프로세스 스래싱 여부를 더 잘 확인할 수 있도록) 스케줄러는 이제 큐에서 항목을 제거할 때마다 메모하고, 한동안 아무것도 제거되지 않은 경우에만 스래싱 메시지를 인쇄합니다.
대부분의 경우 큐 스래싱 메시지는 코스메틱입니다.
이러한 메시지는 소프트웨어 버그로 인해 발생하는 것은 아닙니다.라우터에 대한 즉각적 또는 지속적인 수요에 응답하여 이를 발행할 수 있습니다.증가 또는 지속 메시지는 트래픽 로드를 검토해야 함을 나타낼 수 있습니다.
참고: 이러한 코드 변경 사항은 Cisco 버그 ID CSCdj68470(등록된 고객만 해당)에 보고됩니다.
이 메시지는 프로세스가 처리 방법을 모르는 이벤트를 수신할 때마다 나타납니다.예:
%SCHED-3-UNEXPECTEDEVENT: Process received unknown event (maj 10, min 0). -Process= "IP SNMP", ipl= 0, pid= 23 -Traceback= 602842B8 6017CFB8 6017CFA4
이 문제의 가능한 원인은 다음과 같습니다.
한 프로세스가 다른 프로세스를 직접 재가동하고 주요 이벤트 번호와 하위 이벤트 번호를 프로세스에 전달하는 경우가 가장 많습니다.전송 프로세스가 잘못된 프로세스를 깨우면 수신 프로세스는 수신된 주요 및 하위 이벤트 번호를 처리하는 방법을 알지 못합니다.주요 이벤트 번호와 하위 이벤트 번호가 일치하는 이벤트가 예상되거나 이 메시지가 인쇄될 수 있는 경우 프로세스가 잘못된 작업을 수행할 수 있습니다.show process 명령의 출력을 사용하여 프로세스에 직접 절전 모드를 보냈을 수 있는 프로세스를 확인할 수 있습니다.
이 문제의 또 다른 원인은 개발 엔지니어가 이벤트에 등록할 코드를 추가했지만 이벤트를 처리할 코드를 추가하지 않았기 때문입니다.
프로세스에서 호출한 서브루틴은 새 이벤트에 등록되었지만 이벤트가 종료되기 전에 등록 취소되지 않았습니다.
이러한 메시지는 항상 소프트웨어 버그로 인해 발생합니다.이벤트를 처리하는 방법을 모르는 프로세스에 따라 Cisco IOS 소프트웨어에서 다른 버그를 발견할 수 있습니다.
프로세스가 Exec 또는 Virtual Exec과 같은 경우 다음과 같은 문제가 발생할 가능성이 높습니다.
%SCHED-3-UNEXPECTEDEVENT: Process received unknown event (maj 80, min 0). -Process= "Exec", ipl= 0, pid= 20 -Traceback= 604A0D68 6049B400 6049C974 601B2F5C 601B338C 601CC384 601CC9E0 601F5628 602383EC 602383D8 or %SCHED-3-UNEXPECTEDEVENT: Process received unknown event (maj 80, min 0). -Process= "Virtual Exec", ipl= 0, pid= 2 -Traceback= 60479FA0 60474638 60476474 601B0E20 601B0A38 601E5088 601E5B08 601F0A54 60231324 60231310
이 오류 메시지는 일부 이전 버전의 코드에 실수로 남아 있는 디버그 코드로 인해 발생합니다.Cisco IOS Software 12.0 메인라인 릴리스에 다시 나타납니다.TACACS를 구성한 상태에서 라우터의 CLI(Command Line Interface)에서 show line 명령을 실행하는 경우 오류 메시지가 발생할 수 있습니다.오류 메시지는 라우터의 기능에 영향을 주지 않으므로 코스메틱 버그로 간주할 수 있습니다.이 오류 메시지를 제거하는 유일한 방법은 Cisco IOS 소프트웨어를 최신 릴리스로 업그레이드하는 것입니다.
실행 중인 교육에 따라 Cisco IOS Software 릴리스 12.0(11), 12.0(11)S 또는 12.1(2) 이상을 실행해야 합니다.그러나 다른 버그가 발생한 경우 해당 열차에 사용할 수 있는 최신 Cisco IOS 소프트웨어로 업그레이드하는 것이 좋습니다.최신 Cisco IOS 소프트웨어 릴리스에 여전히 문제가 있는 경우 Cisco 기술 지원에 문의하여 새 버그를 열 수 있습니다.이 때 tracebacks를 디코딩하기 위해 show logging 명령의 전체 출력과 오류 메시지 및 show version의 출력을 준비합니다.
이 문제에 대한 자세한 내용은 Cisco 버그 ID CSCdp17107(등록된 고객만 해당)을 참조하십시오.
이 메시지는 해당 이벤트에 대한 데이터 구조를 먼저 만들지 않고 이벤트에 등록하려고 시도할 때마다 표시됩니다.Cisco IOS Software의 내부 소프트웨어 버그입니다.출력은 다음과 같습니다.
%SCHED-2-WATCH: Attempt to enqueue uninitialized watched queue (address 0). -Process= "Net Input", ipl= 0, pid= 29 -Traceback= 601B821C 60193428 604F59EC 604F6110 601C09F8 601934E0 6019304C 601A65E8 601A65D4
어떤 유형의 카드든 OIR(Online Insertion and Removal)에서 이러한 유형의 오류 메시지가 나타날 수 있습니다.예를 들어, Cisco 12000 Series 인터넷 라우터에서 GSR12016 시리즈 라우터에서 GRP(Gigabit Route Processor) 카드를 교체한 후 다음 메시지를 볼 수 있습니다.
%SCHED-2-WATCH: Attempt to set uninitialized watched boolean (address 0). -Process= "LC Crash Complete Process", ipl= 0, pid= 29 -Traceback= 60189CA8 60244E08 6017562C 60175618
이전 버전의 코드에는 몇 가지 이중화 문제가 있습니다.이러한 문제의 대부분은 최신 Cisco IOS Software 릴리스 12.0S에서 수정되었습니다.Cisco IOS Software Release12.0(18)S1 및 12.0(17)S2보다 크거나 같은 Cisco IOS 소프트웨어 릴리스를 실행해야 합니다. 결함이 있는 카드를 재장착하지 않으면 라우터를 콜드 재로드하면 이 문제가 해결될 가능성이 높습니다.
메시지는 7500 Series 라우터의 다음 출력과 유사합니다.
%OIR-6-REMCARD: Card removed from slot 3, interfaces disabled %SCHED-2-WATCH: Attempt to set uninitialized watched Boolean (address 0). -Process= "OIR Handler", ipl= 0, pid= 7 -Traceback= 60236120 60C64838 60280594 60280874 602211BC 602211A8
이러한 SCHED 오류 메시지는 대부분 Cisco IOS 소프트웨어의 내부 소프트웨어 버그로 인해 발생합니다.따라서 이러한 오류 메시지의 첫 번째 해결 단계는 알려진 버그를 찾는 것입니다.
릴리스 트레인의 최신 Cisco IOS 소프트웨어 이미지로 업그레이드하면 모든 고정 Cisco IOS 소프트웨어 스케줄러 관련 버그가 제거됩니다.
문제가 계속 나타나면 오류 메시지의 정확한 복사본과 show tech-support 및 show log 명령의 출력을 Cisco 지원 담당자에게 문의하십시오.
이 문서의 문제 해결 단계를 수행한 후에도 지원이 필요한 경우 Cisco 기술 지원을 통해 케이스(등록된 고객만 해당)를 열 수 있습니다.여기에 나열된 정보를 포함해야 합니다. |
---|
참고: 필요한 경우가 아니면 이 정보를 수집하기 전에 수동으로 라우터를 다시 로드하거나 전원을 껐다가 다시 켜지 마십시오.따라서 문제의 근본 원인을 파악하는 데 필요한 중요한 정보가 손실될 수 있습니다. |