목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

표기 규칙

show processes 명령

show processes cpu 명령

show processes cpu history 명령

show processes memory 명령

프로세스

관련 정보

소개

show processes 명령은 활성 프로세스에 대한 정보를 표시합니다. show processes cpu 명령을 실행하여 이러한 프로세스에 대한 자세한 CPU 사용률 통계를 표시하고 show processes memory 명령을 실행하여 사용된 메모리 양을 표시합니다.

이 문서에서는 이러한 명령의 출력에 있는 필드에 대해 설명합니다. 디바이스의 CPU 또는 메모리 사용률 수준이 가능한 문제를 나타내는지 확인하려면 출력 인터프리터 툴(등록된 고객만 해당)을 사용합니다. 자세한 내용은 Troubleshooting High CPU Utilization(CPU 사용률 문제 해결)을 참조하십시오.

사전 요구 사항

요구 사항

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

사용되는 구성 요소

이 문서의 정보는 아래 소프트웨어 버전을 기반으로 합니다.

- Cisco IOS® 소프트웨어 릴리스 12.2(10b)

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

표기 규칙

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

show processes 명령

다음은 show processes 명령의 샘플 출력입니다.

router#show processes

CPU utilization for five seconds: 0%/0%; one minute: 0%; five minutes: 0%

PID Q  Ty       PC  Runtime(uS)    Invoked   uSecs    Stacks TTY Process

1 C  sp 602F3AF0            0       1627       0 2600/3000   0 Load Meter

2 L  we 60C5BE00            4        136      29 5572/6000   0 CEF Scanner

3 L  st 602D90F8         1676        837    2002 5740/6000   0 Check heaps

4 C  we 602D08F8            0          1       0 5568/6000   0 Chunk Manager

5 C  we 602DF0E8            0          1       0 5592/6000   0 Pool Manager

6 M  st 60251E38            0          2       0 5560/6000   0 Timers

7 M  we 600D4940            0          2       0 5568/6000   0 Serial Backgroun

8 M  we 6034B718            0          1       0 2584/3000   0 OIR Handler

9 M  we 603FA3C8            0          1       0 5612/6000   0 IPC Zone Manager

10 M  we 603FA1A0            0       8124       0 5488/6000   0 IPC Periodic Tim

11 M  we 603FA220            0          9       0 4884/6000   0 IPC Seat Manager

12 L  we 60406818          124       2003      61 5300/6000   0 ARP Input

13 M  we 60581638            0          1       0 5760/6000   0 HC Counter Timer

14 M  we 605E3D00            0          2       0 5564/6000   0 DDR Timers

15 M  we 605FC6B8            0          2       011568/12000  0 Dialer event

다음 표에서는 show processes 명령 출력의 필드를 나열하고 설명합니다.

필드

설명

5초 동안 CPU 사용률

최근 5초 동안의 CPU 사용률. 두 번째 숫자는 인터럽트 레벨에서 소요된 CPU 시간의 백분율을 나타냅니다.

1분

마지막 1분 동안의 CPU 사용률

5분

지난 5분 동안의 CPU 사용률

PID

프로세스 ID

Q

프로세스 대기열 우선 순위. 가능한 값: C(critical), H(high), M(medium), L(low).

티

스케줄러 테스트. 가능한 값: *(현재 실행 중), E(이벤트 대기 중), S(실행 준비, 자발적 포기 프로세서), rd(실행 준비, 절전 모드 해제 상태가 발생함), we(이벤트 대기 중), sa(절대 시간 대기 중), si(일시 중지 시간 간격), sp(시간 간격 동안 절전 모드(대체 통화), st(타이머가 만료될 때까지 절전 모드), hg(정지됨) 프로세스가 다시 실행되지 않음), xx(dead: 프로세스가 종료되었지만 아직 삭제되지 않았습니다.)

PC

현재 프로그램 카운터

런타임(uS)

프로세스가 사용한 CPU 시간(마이크로초)

호출됨

프로세스가 호출된 횟수

초

각 프로세스 호출에 대한 CPU 시간의 마이크로초

스택

사용 가능한 낮은 워터마크 또는 총 스택 공간(바이트 단위)

TTY

프로세스를 제어하는 터미널

프로세스

프로세스의 이름입니다. 자세한 내용은 이 문서의 프로세스 섹션을 참조하십시오.

참고: 네트워크 서버의 클럭 해상도는 4000마이크로초이므로 런타임은 많은 수의 호출 또는 합리적으로 측정된 런타임 이후에만 신뢰할 수 있는 것으로 간주됩니다.

show processes cpu 명령

show processes cpu 명령은 라우터의 활성 프로세스 및 해당 CPU 사용률 통계에 대한 정보를 표시합니다. 다음은 show processes cpu 명령의 샘플 출력입니다.

router#show processes cpu

CPU utilization for five seconds: 8%/4%; one minute: 6%; five minutes: 5%

PID Runtime(uS)   Invoked  uSecs    5Sec   1Min   5Min TTY Process

1         384     32789     11   0.00%  0.00%  0.00%   0 Load Meter

2        2752      1179   2334   0.73%  1.06%  0.29%   0 Exec

3      318592      5273  60419   0.00%  0.15%  0.17%   0 Check heaps

4           4         1   4000   0.00%  0.00%  0.00%   0 Pool Manager

5        6472      6568    985   0.00%  0.00%  0.00%   0 ARP Input

6       10892      9461   1151   0.00%  0.00%  0.00%   0 IP Input

7       67388     53244   1265   0.16%  0.04%  0.02%   0 CDP Protocol

8      145520    166455    874   0.40%  0.29%  0.29%   0 IP Background

9        3356      1568   2140   0.08%  0.00%  0.00%   0 BOOTP Server

10          32      5469      5   0.00%  0.00%  0.00%   0 Net Background

11       42256    163623    258   0.16%  0.02%  0.00%   0 Per-Second Jobs

12      189936    163623   1160   0.00%  0.04%  0.05%   0 Net Periodic

13        3248      6351    511   0.00%  0.00%  0.00%   0 Net Input

14         168     32790      5   0.00%  0.00%  0.00%   0 Compute load avgs

15      152408      2731  55806   0.98%  0.12%  0.07%   0 Per-minute Jobs

다음 표에서는 show processes cpu 출력의 필드를 나열하고 설명합니다.

필드

설명

5초 동안 CPU 사용률

최근 5초 동안의 CPU 사용률. 첫 번째 숫자는 합계를 나타내며, 두 번째 숫자는 인터럽트 레벨에서 소요된 CPU 시간의 백분율을 나타냅니다.

1분

마지막 1분 동안의 CPU 사용률

5분

지난 5분 동안의 CPU 사용률

PID

프로세스 ID

런타임(uS)

프로세스가 사용한 CPU 시간(마이크로초)

호출됨

프로세스가 호출된 횟수

초

각 프로세스 호출에 대한 CPU 시간의 마이크로초

5초

최근 5초 동안 작업별 CPU 사용률

1분

최근 1분 동안 작업별 CPU 사용률

5분

최근 5분 동안 작업별 CPU 사용률

TTY

프로세스를 제어하는 터미널

프로세스

프로세스의 이름입니다. 자세한 내용은 이 문서의 프로세스 섹션을 참조하십시오.

참고: 네트워크 서버의 클럭 해상도는 4000마이크로초이므로 런타임은 많은 수의 호출 또는 합리적으로 측정된 런타임 이후에만 신뢰할 수 있는 것으로 간주됩니다.

show processes cpu history 명령

show processes cpu history 명령은 일정 기간 동안 라우터의 총 CPU 사용량을 ASCII 그래픽으로 표시합니다. 1분, 1시간, 72시간, 각각 1초, 1분, 1시간 단위로 표시됩니다. 최대 사용량은 초당 측정 및 기록됩니다. 평균 사용량은 1초 이상의 기간에 대해 계산됩니다.

다음은 출력의 1시간 부분에 대한 샘플 출력입니다.

router#show processes cpu history

!--- One minute output omitted

6665776865756676676666667667677676766666766767767666566667

6378016198993513709771991443732358689932740858269643922613

100

90

80         *  *                     * *     *  * *  *

70  * * ***** *  ** ***** ***  **** ******  *  *******     * *

60  #***##*##*#***#####*#*###*****#*###*#*#*##*#*##*#*##*****#

50  ##########################################################

40  ##########################################################

30  ##########################################################

20  ##########################################################

10  ##########################################################

0....5....1....1....2....2....3....3....4....4....5....5....

0    5    0    5    0    5    0    5    0    5

CPU% per minute (last 60 minutes)

* = maximum CPU%   # = average CPU%

!--- 72-hour output omitted

- 그래프의 Y축은 CPU 사용률입니다.

- 그래프의 X축은 그래프에 표시된 기간 내의 증분입니다. 이 경우 이전 시간 동안의 개별 시간입니다. 가장 최근의 측정은 X축의 왼쪽 끝에 있습니다.

- 세로로 읽은 상위 2개 행은 증가 중에 기록된 CPU 사용률 중 가장 높은 비율을 표시합니다.

- 위의 예에서 기록된 마지막 1분의 CPU 사용률은 66%입니다. 라우터는 해당 시간 동안 한 번만 66%에 도달했거나 66%에 여러 번 도달했을 수 있습니다. 라우터는 증가 중에 도달된 최대치와 그 증가 과정의 평균만 기록합니다.

show processes memory 명령

show processes memory 명령은 라우터의 활성 프로세스 및 사용된 해당 메모리에 대한 정보를 표시합니다. 다음은 show processes memory 명령의 샘플 출력입니다.

router>show processes memory

Total: 106206400, Used: 7479116, Free: 98727284

PID TTY  Allocated      Freed    Holding    Getbufs    Retbufs Process

0   0      81648       1808    6577644          0          0 *Init*

0   0        572     123196        572          0          0 *Sched*

0   0   10750692    3442000       5812    2813524          0 *Dead*

1   0        276        276       3804          0          0 Load Meter

2   0        228          0       7032          0          0 CEF Scanner

3   0          0          0       6804          0          0 Check heaps

4   0      18444          0      25248          0          0 Chunk Manager

5   0         96          0       6900          0          0 Pool Manager

6   0        276        276       6804          0          0 Timers

7   0        276        276       6804          0          0 Serial Backgroun

8   0         96          0       3900          0          0 OIR Handler

9   0         96          0       6900          0          0 IPC Zone Manager

10   0          0          0       6804          0          0 IPC Periodic Tim

11   0      17728        484      11156          0          0 IPC Seat Manager

12   0        288        136       7092          0          0 ARP Input

....

90   0          0          0       6804          0          0 DHCPD Timer

91   0        152          0       6956          0          0 DHCPD Database

7478196 Total

참고: show processes memory sorted가 특정 Cisco 라우터 및 스위치에서 구현되는 방식으로 인해 일부 장치(예: Cisco 7304)는 show processes memory에 표시된 프로세서 메모리의 총계가 아닌 프로세서 메모리 및 IO 메모리의 합계로 총 값을 표시합니다.

아래 표에는 show processes memory 명령 출력의 필드 및 설명이 나와 있습니다.

필드

설명

합계

총 보유 메모리 양

사용

사용된 총 메모리 양

무료

사용 가능한 총 메모리 양

PID

프로세스 ID

TTY

프로세스를 제어하는 터미널

할당

프로세스에서 할당한 메모리의 바이트

풀림

원래 할당된 사람에 관계없이 프로세스에 의해 해제된 메모리의 바이트

보류 중

프로세스에서 보유 중인 메모리의 양입니다. 이 매개변수는 메모리 누수가 의심되는 경우 문제를 해결하는 데 유용합니다. 프로세스가 일정 기간 동안 점점 더 많은 양의 메모리를 사용하는 것으로 확인되면 메모리 누수가 발생할 가능성이 높습니다. 자세한 내용은 메모리 누수 버그를 참조하십시오.

게트부프스

프로세스가 패킷 버퍼를 요청한 횟수

재구축

프로세스가 패킷 버퍼를 취소한 횟수

프로세스

프로세스 이름입니다. 자세한 내용은 이 문서의 프로세스 섹션을 참조하십시오.

합계

모든 프로세스에서 보유한 총 메모리 양

프로세스

아래 표에서는 show processes의 개별 프로세스, 프로세스 cpu 표시 및 프로세스 메모리 출력을 설명합니다. 이것은 완전한 목록이 아닙니다.

프로세스

설명

ARP 입력

수신 ARP(Address Resolution Protocol) 요청 처리

BGP I/O

BGP(Border Gateway Protocol) 메시지 읽기, 쓰기 및 실행 처리

BGP 스캐너

일관성을 보장하기 위해 BGP 및 기본 라우팅 테이블을 스캔합니다(시간이 많이 걸릴 수 있으므로 별도의 프로세스).

BGP 라우터

컨피그레이션이 완전히 로드될 때 시작되는 기본 BGP 프로세스

BOOTP 서버

게이트웨이의 BOOTP(Bootstrap Protocol) 서버 프로세스

CallMIB 배경

통화 기록이 만료되어 통화 정보를 수집하는 경우 통화 기록을 삭제합니다.

CDP 프로토콜

- 기본 CDP(Cisco Discovery Protocol) - 각 인터페이스에 대한 CDP 초기화 처리

- 수신 패킷인 경우 CDP 대기열 및 타이머를 모니터링한 다음 처리합니다.

- 타이머 이벤트가 발생하면 업데이트를 보냅니다.

힙을 확인합니다.

매 분마다 메모리를 확인합니다. 프로세서 손상이 발견되면 강제로 다시 로드됩니다.

로드 값 계산

- 각 네트워크 인터페이스의 5분, 기하급수적으로 감소된 출력 비트 전송률 및 전체 시스템의 로드 계수를 계산합니다. 로드 평균은 다음 공식을 사용하여 계산됩니다. 평균 = ((평균 - 간격) * exp (-t/C)) + interval where t = 5초, C = 5분, exp (-5/60*5)) = .983

- 각 인터페이스의 로드(하나씩)를 계산하고 백업 인터페이스의 로드를 확인합니다(로드에 따라 활성화하거나 종료).

*데드*

현재 중지된 그룹으로 처리합니다. 자세한 내용은 메모리 문제 해결을 참조하십시오.

실행

콘솔 실행 세션을 처리합니다. 우선 순위가 높은

하이브리지 입력

빠른 경로를 통과하는 수신 투명 브리지 패킷을 처리합니다.

*초기화*

시스템 초기화

IP 배경

- 캡슐화를 변경할 때(예: 인터페이스가 새 상태로 전환될 때, IP 주소가 변경되거나, 새 DXI(Data Exchange Interface) 맵을 추가할 때 또는 일부 다이얼러 타이머가 만료될 때) 호출됩니다.

- ICMP(Internet Control Message Protocol) 리디렉션 캐시의 주기적 에이징이 수행됩니까?

- 인터페이스의 상태에 따라 라우팅 테이블을 수정합니다.

IP 캐시 관리자

라우팅 캐시를 사용하고 오래된 재귀 경로를 처리합니다. 관리자는 매 시간 간격(기본적으로 1분에 한 번)마다 한 번 실행되며 재귀 라우팅 변경 시 항목이 무효화되지 않았는지 확인합니다. 이 관리자의 또 다른 기능은 전체 캐시가 약 20분마다 새로 고쳐지도록 하는 것입니다.

IP 입력

프로세스 전환 IP 패킷

IP-RT 배경

마지막 리조트 및 IP 고정 경로의 게이트웨이를 주기적으로 수정합니다. 이 프로세스는 고정 경로(마지막 리조트의 게이트웨이가 종속될 수 있음)가 수정된 직후 온디맨드 방식으로 호출됩니다.

ISDNMIB 배경

ISDN 트랩 서비스를 전송하고 시간이 초과되면 통화 대기열을 삭제합니다.

ISDN 타이머

ISDN 캐리어 타이머 이벤트 처리

로드 미터

5초마다 서로 다른 프로세스의 로드 평균을 계산하고, 5분의 사용량이 기하급수적으로 감소합니다. 로드 평균은 다음 공식을 사용하여 계산됩니다. 평균 = ((평균 - 간격) * exp (-t/C)) + interval(여기서:

- t = 5초 및 C = 5분, exp (-5/(60*5)) = .983~= 1007/1024

- t = 5초 및 C = 1분, exp (-5/60) = .920~= 942/1024

멀티링크 PPP 출력

고속 스위칭에서 대기된 멀티링크 패킷 처리(아웃바운드 절반 고속 스위칭)

네트워크 배경

- 다양한 네트워크 관련 백그라운드 작업을 수행합니다. 이러한 작업은 신속하게 수행해야 하며 어떤 이유로든 차단되지 않을 수 있습니다. net_background 프로세스에서 호출되는 작업(예: 인터페이스 조절)은 시간 중요합니다.

- "Compute load avgs", "Per-minute Jobs" 및 "Net Input" 프로세스를 실행합니다.

- 인터페이스 조절 처리

네트 입력

- 그렇지 않으면 알 수 없는 패킷을 처리합니다. 이 작업은 프로세스 수준에서 수행되므로 입력 큐가 재생됩니다. 인터럽트 레벨에서 작동하면 라우터를 매우 쉽게 잠글 수 있습니다.

- 브리징에 제공해야 한다고 결정할 수 있는 일부 알려진 프로토콜을 처리합니다. 이 경우 net_input은 패킷을 NULL로 전송하거나 브리징합니다.

순 주기적

다음과 같이 초당 인터페이스 정기 기능을 수행합니다.

- 정기 카운터 재설정

- 입력 오류율 카운터 지우기

- 결함 시 다시 시작 직렬 회선 확인

- 주기적 keep-alive 함수 수행

- 프로토콜 라우팅 테이블 일관성 확인

- 브리지 상태 일관성 검사 수행

- 라인 프로토콜 up 또는 down 이벤트 알림

분당 작업

1분에 한 번 다음 작업을 수행합니다.

- 스택 사용량 분석

- 낮은 스택 발표

- 등록된 1분 작업 실행

초당 작업

매초마다 다양한 작업을 수행합니다. 등록된 one_second 작업 실행

풀 관리자

인터럽트 레벨에서 동적 풀의 증가 관리 및 요청 삭제 프로세스

PPP 관리자

- PPP 입력 패킷 및 인터페이스 전환을 처리하여 모든 PPP FSM(Finite State Machine) 작업을 관리합니다.

- PPP 대기열 및 PPP 타이머(협상, 인증, 유휴 및 기타) 모니터링
참고: 다른 프로세스에서 인터럽트 루틴을 탐지할 수 있는 이벤트를 직렬화하면 많은 일반적인 버그를 방지할 수 있습니다.

OSPF 라우터

기본 OSPF(Open Shortest Path First) 프로세스

OSPF Hello

hello를 수신하는 OSPF 프로세스

*예약*

스케줄러

직렬 배경

이벤트 및 분기를 만료된 각 이벤트에 대한 올바른 서비스 루틴으로 감시(주로 인터페이스 재설정)

스패닝 트리

- 다중 스패닝 트리 알고리즘을 처리하는 단일 프로세스인 STP(Spanning Tree Protocol)를 실행합니다.

- STP 큐를 모니터링합니다.

- 수신 STP 패킷 처리

- STP 타이머를 모니터링합니다.

- Hello 타이머

- 토폴로지 변경 타이머

- Digital Equipment Corporation(DEC) 단기간 종료 타이머

- 전달 지연 타이머

- 메시지 기간 타이머

Tbridge 모니터

- 적절한 처리기에 "흥미로운 패킷"을 디스패치합니다("흥미로운 트래픽"은 Cisco CGMP(Group Management Protocol), IGMP(Internet Group Management Protocol), OSPF 패킷[멀티캐스트]

- 멀티캐스트 타이머를 모니터링하여 어떤 체크스테이션 진입기 시간 초과 및 회선 그룹 활성 회로 모니터링

TCP 드라이버

TCP(Transmission Control Protocol) 연결을 통한 패킷 데이터 전송을 처리합니다. 여기에는 연결을 열거나 닫거나 대기열이 가득 차면 패킷을 삭제하는 작업이 포함됩니다. RSRB(Remote Source-Route Bridging), STUN(Serial Tunneling), X.25 스위칭, X.25 over TCP/IP(XOT), DLSW(Data-link Switching), 변환 및 라우터에서 시작 또는 종료되는 모든 TCP 연결은 현재 TCP 드라이버를 사용합니다.

TCP 타이머

시간 초과 패킷의 재전송을 처리합니다.

가상 exec

vty(가상 유형 터미널) 회선(예: 라우터의 텔넷 세션)을 처리합니다.

CPU 사용률이 높더라도 장치에 문제가 있는 것은 아닙니다. 예를 들어, 7500 VIP에서 아웃바운드 인터페이스의 대기열 처리 전략이 FIFO(First In First Out)이고 아웃바운드 인터페이스가 혼잡하면 Rx 측 버퍼링이 시작되며, 즉 인바운드 VIP가 패킷 버퍼링을 시작합니다. 이제 Rx 측 버퍼링이 발생할 경우 VIP CPU 사용률이 99%입니다. 이것은 정상이며 그 자체로 오버로딩의 표시가 아닙니다. VIP가 더 중요한 작업(예: 다른 스위치용 패킷)을 수신하면 높은 CPU의 영향을 받지 않습니다. 대략적인 지침으로, CPU 사용률이 긴 기간 동안 일정하게 높기만 하면 문제가 발생합니다. 또한, 이 명령들은 모든 것이 잘 되지 않는다는 표시라기 보다는 무엇이 잘못되었는지를 파악하는 과정에서 더 관련성이 있습니다.

관련 정보

- Cisco 라우터의 높은 CPU 사용률 문제 해결

- 메모리 문제 해결

- 명령 조회 도구(등록된 고객만 해당)

- Output Interpreter Tool(등록된 고객만 해당)

- Technical Support - Cisco Systems