01-系统维护与调试命令
本章节下载: 01-系统维护与调试命令 (234.88 KB)
目 录
1.1.8 display process memory heap
1.1.9 display process memory heap address
1.1.10 display process memory heap size
debugging命令用打开指定模块的调试开关。
undo debugging命令用来关闭指定模块的调试开关。
【命令】
debugging { all [ timeout time ] | module-name [ option ] }
undo debugging { all | module-name [ option ] }
【缺省情况】
所有模块的调试开关均处于关闭状态。
【视图】
用户视图
【缺省用户角色】
network-admin
【参数】
all:所有模块的调试开关。
timeout time:指定debugging all命令的生效时间。当使用all参数开启了所有的调试开关,则经过time时间,系统会自动执行undo debugging all命令来关闭所有的调试开关。取值范围为1~1440,单位为分钟。
module-name:模块名称,比如arp、device等。可以使用debugging ?命令查询设备当前支持的模块名。
option:模块的调试选项。对于不同的模块,调试选项的数量和内容都不相同。可以使用debugging module-name ?命令查询设备当前支持的指定模块的调试选项。
【使用指导】
调试信息的输出会影响系统的运行效率,所以建议在进行网络故障诊断时根据需要打开某个功能模块的调试开关,不要同时打开多个功能模块的调试开关。
【举例】
# 打开设备管理模块的调试开关。
<Sysname> debugging arp status
【相关命令】
· display debugging
display debugging命令用来显示系统中已经打开的调试开关。
【命令】
display debugging [ module-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
module-name:显示指定功能模块调试开关的设置情况。module-name表示模块名,具体取值可通过执行display debugging ?命令来获取。
【举例】
# 显示所有打开的调试开关。
<Sysname> display debugging
ARP status debugging switch is on
【相关命令】
· debugging
display memory命令用来显示系统内存统计信息。
【命令】
display memory [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
slot slot-number:表示设备在IRF中的成员编号,不指定时显示当前所有成员设备的内存统计信息。
【使用指导】
使用本命令可以对设备的内存使用情况有个宏观了解。
【举例】
# 显示设备的内存统计信息。
<Sysname> display memory
The statistics about memory is measured in KB:
Slot 1:
totl used free shared buffers cached
Mem: 2019300 318600 1700700 0 0 84500
-/+ buffers/cache: 234100 1785200
Swap: 0 0 0
表1-1 display memory命令显示信息描述表
字段 |
描述 |
The statistics about memory is measured in KB: |
系统内存统计信息,以下统计信息均以KB为单位 |
Slot |
设备在IRF中的成员编号 |
Mem |
内存使用信息 |
total |
物理内存的大小 |
used |
已使用物理内存大小 |
free |
空闲物理内存大小 |
shared |
多个进程共享的内存总额 |
buffers |
页面缓存buffers的大小 |
cached |
页面缓存cached的大小 |
-/+ buffers/cache |
-/+ buffers/cache: used = Mem: used – Mem: buffers – Mem: cached -/+ buffers/cache: free = Mem: used + Mem: buffers + Mem: cached |
Swap |
交换分区的使用信息 |
display process命令用来显示进程的状态信息。
【命令】
display process [ all | job job-id | name process-name ] [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
all:显示所有进程的状态信息。
job job-id:任务ID,用于唯一标识一个进程,该ID不会随着进程的重启而改变,取值范围为1~2147483647。
name process-name:进程名称,为1~15个字符的字符串,不区分大小写,不能包含问号和空格。
slot slot-number:表示设备在IRF中的成员编号,不指定该参数时,表示Master。
【举例】
# 显示进程scmd的状态信息。
<Sysname> display process name scmd
Job ID: 1
PID: 1
Parent JID: 0
Parent PID: 0
Executable path: /sbin/scmd
Instance: 0
Respawn: OFF
Respawn count: 1
Max. spawns per minute: 0
Last started: Wed Jun 1 14:45:46 2011
Process state: sleeping
Max. core: 0
ARGS: -
TID LAST_CPU Stack PRI State HH:MM:SS:MESC Name
1 0 0K 120 S 0:0:5:220 scmd
表1-2 display process name命令显示信息描述表
字段 |
描述 |
Job ID |
任务ID,用于唯一标识一个进程,该ID不会随着进程的重启而改变 |
PID |
进程ID,用于标识一个进程,但该ID会随着进程的重启而改变 |
Parent JID |
父进程的任务ID |
Parent PID |
父进程的ID |
Executable path |
进程执行路径(内核进程执行路径显示为“-”) |
Instance |
进程的实例号(一个进程根据需要在软件实现时决定了它是否会运行多个实例) |
Respawn |
运行出错时,该进程是否会自动重启: · ON表示自动重启 · OFF表示不自动重启 |
Respawn count |
进程已自动重启的次数(初始值为1) |
Max. spawns per minute |
进程一分钟内允许异常重启的最大次数(如果进程在一分钟内异常重启次数超过该值,则系统会自动关闭该进程。进程被关闭后,需要通过process start命令才能手工重新启动该进程) |
Last started |
进程最近一次启动的日期和时间 |
Process state |
进程状态,可能的取值为: · running,运行状态或处于运行队列 · sleeping,可中断睡眠状态 · traced or stopped,暂停状态 · uninterruptible sleep,不可中断睡眠状态 · zombie,僵死状态 |
Max. core |
进程还可以dump的次数,为0表示不生成core文件(进程运行异常时,会产生core文件。软件开发和维护人员能够根据core文件的内容定位异常原因和异常位置) |
ARGS |
进程启动时携带的参数。如果进程不带参数,显示为“-” |
TID |
线程ID |
LAST_CPU |
进程最近一次被调度时,所在的CPU |
Stack |
堆栈大小 |
PRI |
线程优先级 |
State |
线程状态,可能的取值为: · R:running,运行状态或正在队列中等待调度 · S:interruptible sleeping,可中断睡眠状态 · T:traced or stopped,暂停状态 · D:uninterruptible sleep,不可中断睡眠状态 · Z:zombie,僵死状态 |
HH:MM:SS:MESC |
最近一次启动后,进程的运行时间 |
Name |
进程名称 |
# 显示所有进程的状态信息。
<Sysname> display process all
JID USER %CPU %MEM STAT PRI TTY HH:MM:SS COMMAND
1 0 1.7 0.0 S 120 - 00:00:06 scmd
2 0 0.0 0.0 S 115 - 00:00:00 [kthreadd]
3 0 0.0 0.0 S 99 - 00:00:00 [migration/0]
4 0 0.0 0.0 S 115 - 00:00:00 [ksoftirqd/0]
5 0 0.0 0.0 S 99 - 00:00:00 [watchdog/0]
6 0 0.0 0.0 S 99 - 00:00:00 [migration/1]
7 0 0.0 0.0 S 115 - 00:00:00 [ksoftirqd/1]
8 0 0.0 0.0 S 99 - 00:00:00 [watchdog/1]
9 0 0.0 0.0 S 99 - 00:00:00 [migration/2]
10 0 0.0 0.0 S 115 - 00:00:00 [ksoftirqd/2]
11 0 0.0 0.0 S 99 - 00:00:00 [watchdog/2]
12 0 0.0 0.0 S 99 - 00:00:00 [migration/3]
13 0 0.1 0.0 S 115 - 00:00:00 [ksoftirqd/3]
14 0 0.0 0.0 S 99 - 00:00:00 [watchdog/3]
15 0 0.0 0.0 S 99 - 00:00:00 [migration/4]
16 0 0.0 0.0 S 115 - 00:00:00 [ksoftirqd/4]
17 0 0.0 0.0 S 99 - 00:00:00 [watchdog/4]
18 0 0.0 0.0 S 115 - 00:00:00 [events/0]
19 0 0.0 0.0 S 115 - 00:00:00 [events/1]
20 0 0.0 0.0 S 115 - 00:00:00 [events/2]
21 0 0.0 0.0 S 115 - 00:00:00 [events/3]
---- More ----
表1-3 display process all 命令显示信息描述
字段 |
描述 |
JID |
任务ID,用于唯一标识一个进程,该ID不会随着进程的重启而改变 |
USER |
用户名称,日前取值始终为root |
%CPU |
CPU使用率(用百分比表示) |
%MEM |
内存使用率(用百分比表示) |
STAT |
进程状态,可能的取值为: · R:running,运行状态或处于运行队列 · S:sleeping,可中断睡眠状态 · T:traced or stopped,暂停状态 · D:uninterruptible sleep,不可中断睡眠状态 · Z:zombie,僵死状态 |
PRI |
进程优先级(优先级在进程调度时发挥作用,优先级高的会优先得到调度) |
TTY |
进程使用的终端,当前该项总显示为“-” |
HH:MM:SS |
进程自最近一次启动以来的运行时间 |
COMMAND |
进程名称(如果进程名称带有“[ ]”标记,则表示内核线程) |
display process cpu命令用来显示所有进程的CPU占有率信息。
【命令】
display process cpu [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
slot slot-number:表示设备在IRF中的成员编号,不指定该参数时,表示Master。
【举例】
# 显示所有进程CPU占有率信息。
<Sysname> display process cpu
CPU utilization in 5 secs: 16.8%; 1 min: 4.7%; 5 mins: 4.7%
JID 5Sec 1Min 5Min Name
1 0.0% 0.0% 0.0% scmd
2 0.0% 0.0% 0.0% [kthreadd]
3 0.1% 0.0% 0.0% [ksoftirqd/0]
4 0.0% 0.0% 0.0% [watchdog/0]
5 0.0% 0.0% 0.0% [events/0]
6 0.0% 0.0% 0.0% [khelper]
29 0.0% 0.0% 0.0% [kblockd/0]
49 0.0% 0.0% 0.0% [vzmond]
52 0.0% 0.0% 0.0% [pdflush]
53 0.0% 0.0% 0.0% [pdflush]
54 0.0% 0.0% 0.0% [kswapd0]
110 0.0% 0.0% 0.0% [aio/0]
712 0.0% 0.0% 0.0% [mtdblockd]
719 0.0% 0.0% 0.0% [TNetJob]
720 0.0% 0.0% 0.0% [TMTH]
727 0.0% 0.0% 0.0% [CF]
730 0.0% 0.0% 0.0% [DIBC]
752 0.0% 0.0% 0.0% [lipc_topology]
762 0.0% 0.0% 0.0% [MNET]
763 0.0% 0.0% 0.0% [SYSM]
---- More ----
表1-4 display process cpu 命令显示信息描述表
字段 |
描述 |
CPU utilization in 5 secs: 16.8%; 1 min: 4.7%; 5 mins: 4.7% |
系统最近5秒CPU占有率;最近1分钟CPU占有率;最近5分钟CPU占有率 |
JID |
任务ID(用于唯一标识一个进程,该ID不会随着进程的重启而改变) |
5Sec |
最近5秒钟内进程的CPU使用率 |
1Min |
最近1分钟内进程的CPU使用率 |
5Min |
最近5分钟内进程的CPU使用率 |
Name |
进程名称(如果进程名称带有“[ ]”标记,则表示该进程为内核线程) |
display process log命令用来显示所有进程的日志信息。
【命令】
display process log [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
slot slot-number:表示设备在IRF中的成员编号,不指定该参数时,表示Master。
【举例】
# 显示所有进程的日志信息。
<Sysname> display process log
Name JID PID Normal-exit Core Start-time End-time
PKEYINIT 832 832 Y N 2010-12-20 09:45:45 2010-12-20 09:45:45
KNPHASE2 837 837 Y N 2010-12-20 09:45:45 2010-12-20 09:45:45
PKGM 834 834 Y N 2010-12-20 09:45:45 2010-12-20 09:45:45
recover 865 865 Y N 2010-12-20 09:45:47 2010-12-20 09:45:48
SSHD 992 992 Y N 2010-12-20 10:08:23 2010-12-20 10:08:23
SSHD 992 993 Y N 2010-12-20 10:08:23 2010-12-20 10:08:23
SSHD 992 994 Y N 2010-12-20 10:08:23 2010-12-20 10:08:23
SSHD 992 995 Y N 2010-12-20 10:08:23 2010-12-20 10:08:23
SSHD 992 996 Y N 2010-12-20 10:08:23 2010-12-20 10:08:23
SSHD 992 997 Y N 2010-12-20 10:08:23 2010-12-20 10:08:24
表1-5 display process log命令显示信息描述表
字段 |
描述 |
Name |
进程名 |
JID |
进程任务号 |
PID |
进程ID |
Normal-exit |
是否正常退出: · Y表示正常退出 · N表示异常退出 |
Core |
能否产生core文件 · Y表示能够产生 · N表示不能产生 |
Start-time |
进程创建时间 |
End-time |
进程结束时间 |
display process memory命令用来显示所有进程的代码段、数据段以及堆栈等的内存使用信息。
【命令】
display process memory [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
slot slot-number:表示设备在IRF中的成员编号,不指定该参数时,表示Master。
【使用指导】
进程启动时,会向系统申请Text、Data、Stack和Dynamic类型的内存。
· Text类型的内存用来存放进程的代码。
· Data类型的内存用来存放进程的数据。
· Stack内存指的是栈内存,一般存放临时数据。
· Dynamic类型的内存指的是堆内存(heap),由系统根据进程运行需要进行动态分配(malloc)和释放(free),可使用display process memory heap命令查看Dynamic类型内存的详细信息。
【举例】
# 显示所有进程的内存使用信息。
<Sysname> display process memory
JID Text Data Stack Dynamic Name
1 384 1800 16 36 scmd
2 0 0 0 0 [kthreadd]
3 0 0 0 0 [ksoftirqd/0]
4 0 0 0 0 [watchdog/0]
5 0 0 0 0 [events/0]
6 0 0 0 0 [khelper]
29 0 0 0 0 [kblockd/0]
49 0 0 0 0 [vzmond]
52 0 0 0 0 [pdflush]
---- More ----
表1-6 display process memory命令显示信息描述表
字段 |
描述 |
JID |
任务ID(用于唯一标识一个进程,该ID不会随着进程的重启而改变) |
Text |
进程代码段大小,单位为KB(内核进程该项大小为零) |
Data |
进程数据段大小,单位为KB(内核进程该项大小为零) |
Stack |
进程堆栈大小,单位为KB(内核进程该项大小为零) |
Dynamic |
进程动态申请内存大小,单位为KB(内核进程该项大小为零) |
Name |
进程名称(如果进程名称带有“[ ]”标记,则表示该进程为内核线程) |
【相关命令】
· display process memory heap
· display process memory heap address
· display process memory heap size
display process memory heap命令用来显示指定进程的堆内存统计信息。
【命令】
display process memory heap job job-id [ verbose ] [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
job job-id:任务ID,用于唯一标识一个进程,该ID不会随着进程的重启而改变。取值范围为1~2147483647。
verbose:显示内存详细统计信息。不指定该参数时,显示内存简单统计信息。
slot slot-number:表示设备在IRF中的成员编号。不指定该参数时,表示Master。
【使用指导】
系统的堆内存由固定大小(比如size=16字节、size=64字节等)的内存块构成,用于存放进程运行过程中需要用到的数据或者中间变量。当进程启动时,系统会根据进程运行需要,给进程动态分配堆内存。进程的堆内存信息可使用display process memory heap命令查看。
每个内存块都有地址,该地址用十六进制数表示,可通过display process memory heap size命令查看。用户使用内存块的地址可以访问内存块,获取内存块的内容,内存块的内容可通过display process memory heap address命令查看。
【举例】
# 显示job 48的堆内存简要统计信息。
<Sysname> display process memory heap job 48
Total virtual memory heap space (in bytes) : 2293760
Total physical memory heap space (in bytes) : 58368
Total allocated memory (in bytes) : 42368
# 显示job 48的堆内存详细统计信息。
<Sysname> display process memory heap job 48 verbose
Heap usage:
Size Free Used Total Free Ratio
16 8 52 60 13%
64 3 1262 1265 0.2%
128 2 207 209 1%
512 3 55 58 5.1%
4096 3 297 300 1%
8192 1 19 20 5%
81920 0 1 1 0%
Summary:
Total virtual memory heap space (in bytes) : 2293760
Total physical memory heap space (in bytes) : 58368
Total allocated memory (in bytes) : 42368
以上显示信息表明:job 48分得size大小16字节的内存块60个(已用52个,还有8个未使用),size大小为64字节的内存块1265个(已用1262个,还有3个未使用),以此类推。
表1-7 display process memory heap命令显示信息描述表
命令字 |
功能描述 |
Total virtual memory heap space (in bytes) |
虚拟堆内存总大小,单位为字节 |
Total phsical memory heap space (in bytes) |
物理堆内存总大小,单位为字节 |
Total allocated memory (in bytes) |
任务已使用的堆内存大小,单位为字节 |
Size |
内存块大小,单位为字节 |
Free |
空闲的内存块个数 |
Used |
已使用的内存块个数 |
Total |
指定大小内存块总个数,为Free和Used之和 |
Free Ratio |
Free与Total的比率,可以反映这种大小内存块的碎片情况 |
【相关命令】
· display process memory
· display process memory heap address
· display process memory heap size
display process memory heap address命令用来查看从指定地址开始的内存空间的内容。
【命令】
display process memory heap job job-id address starting-address length memory-length [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
job job-id:任务ID,用于唯一标识一个进程,该ID不会随着进程的重启而改变,取值范围为1~2147483647。
address starting-address:内存块的起始地址。
length memory-length:内存的长度,取值范围为1~1024,单位为字节。
slot slot-number:表示设备在IRF中的成员编号。不指定该参数时,表示Master。
【使用指导】
当进程运行异常时,使用该命令可以帮助开发人员诊断和定位问题。
【举例】
# 显示job 1从地址0xb7e30580开始,长度为128字节的内存空间的内容。
<Sysname> display process memory heap job 1 address b7e30580 length 128
B7E30580: 14 00 EF FF 00 00 00 00 E4 39 E2 B7 7C 05 E3 B7 .........9..|...
B7E30590: 14 00 EF FF 2F 73 62 69 6E 2F 73 6C 62 67 64 00 ..../sbin/slbgd.
B7E305A0: 14 00 EF FF 00 00 00 00 44 3B E2 B7 8C 05 E3 B7 ........D;......
B7E305B0: 14 00 EF FF 2F 73 62 69 6E 2F 6F 73 70 66 64 00 ..../sbin/ospfd.
B7E305C0: 14 00 EF FF 00 00 00 00 A4 3C E2 B7 AC 05 E3 B7 .........<......
B7E305D0: 14 00 EF FF 2F 73 62 69 6E 2F 6D 73 74 70 64 00 ..../sbin/mstpd.
B7E305E0: 14 00 EF FF 00 00 00 00 04 3E E2 B7 CC 05 E3 B7 .........>......
B7E305F0: 14 00 EF FF 2F 73 62 69 6E 2F 6E 74 70 64 00 00 ..../sbin/ntpd..
【相关命令】
· display process memory heap
· display process memory heap size
display process memory heap size命令用来查看指定大小已使用内存块的地址。
【命令】
display process memory heap job job-id size memory-size [ offset offset-size ] [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
size memory-size:内存块大小。
offset offset-size:要查询的内存块的偏移。不指定该参数时,显示前128个指定大小内存的地址。比如,系统给job 1分配了size为16字节的内存块100个,进程当前已用了66个,如果执行命令display process memory heap job 1 size 16 offset 50,则会显示该进程第51到第66个size为16字节的内存块的地址。
job job-id:任务ID,用于唯一标识一个进程,该ID不会随着进程的重启而改变,取值范围为1~2147483647。
slot slot-number:表示设备在IRF中的成员编号。不指定该参数时,表示Master。
【使用指导】
该命令显示的地址为十六进制格式,使用该地址,通过display process memory heap address命令可以查看该地址内存的具体内容。
【举例】
# 显示job 1的已使用大小为16字节的内存块的地址。
<Sysname> display process memory heap job 1 size 16
0xb7e300c0 0xb7e300d0 0xb7e300e0 0xb7e300f0
0xb7e30100 0xb7e30110 0xb7e30120 0xb7e30130
0xb7e30140 0xb7e30150 0xb7e30160 0xb7e30170
0xb7e30180 0xb7e30190 0xb7e301a0 0xb7e301b0
0xb7e301c0 0xb7e301d0 0xb7e301e0 0xb7e301f0
0xb7e30200 0xb7e30210 0xb7e30220 0xb7e30230
# 显示job 1的已使用大小为16字节的内存块的地址,从第5个已使用内存块开始显示。
<Sysname> display process memory heap job 1 size 16 offset 4
0xb7e30100 0xb7e30110 0xb7e30120 0xb7e30130
0xb7e30140 0xb7e30150 0xb7e30160 0xb7e30170
0xb7e30180 0xb7e30190 0xb7e301a0 0xb7e301b0
0xb7e301c0 0xb7e301d0 0xb7e301e0 0xb7e301f0
0xb7e30200 0xb7e30210 0xb7e30220 0xb7e30230
【相关命令】
· display process memory heap
· display process memory heap address
monitor process命令用来显示进程的统计信息。
【命令】
monitor process [ dumbtty ] [ iteration number ] [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
【参数】
dumbtty:以哑终端方式显示进程统计信息(即屏幕不支持定时刷新统计信息)。指定该参数时,全部进程的统计信息以CPU占有率降序排列输出到屏幕上;不指定该参数时,统计信息以交互模式显示,缺省情况下按CPU占用率降序显示前10个进程的统计信息,且每隔5秒刷新一次。
iteration number:表示进程统计信息的显示次数,取值范围为1~4294967295。指定dumbtty参数时,number的缺省值为1;不指定dumbtty且不配置number参数时,表示显示次数没有限制,统计信息会每隔5秒刷新一次,一直显示。
slot slot-number:表示设备在IRF中的成员编号,不指定该参数时,表示Master。
【使用指导】
不指定dumbtty参数的情况下,统计信息以交互模式显示。
· 交互模式下,系统会自动计算可显示的进程个数,超过屏幕范围的不作显示。
· 交互模式下,用户可通过输入表1-8中指定的交互命令字来执行相应的操作。
表1-8 monitor process命令支持的交互命令字描述表
命令字 |
功能描述 |
?或h |
帮助信息,显示可用的交互式命令字 |
c |
按CPU占用率降序排列,缺省情况下采用降序排列 |
d |
设置统计信息的更新时间间隔,取值范围为1~2147483647秒,缺省值为5秒 |
f |
按进程打开的文件句柄数降序排列 |
k |
终止一个任务,此命令会影响系统运行,请谨慎使用 |
l |
刷新屏幕 |
m |
按进程使用内存大小降序排列 |
n |
改变显示的进程个数,取值范围为0~2147483647(缺省值为10个,0表示不作限制);超过屏幕范围时,仍只显示一屏内可容纳的进程个数 |
q |
退出交互模式 |
t |
按进程最近一次启动后的运行时间降序排列 |
< |
排序项向左移动一列 |
> |
排序项向右移动一列 |
【举例】
# 以哑终端方式显示进程统计信息。(使用该方式显示时,系统会一次显示所有进程的统计信息,并且不支持定时刷新,显示完毕后,会退回到命令视图)
<Sysname> monitor process dumbtty
76 processes; 103 threads; 687 fds
Thread states: 1 running, 102 sleeping, 0 stopped, 0 zombie
CPU states: 77.16% idle, 0.00% user, 14.96% kernel, 7.87% interrupt
Memory: 496M total, 341M available, page size 4K
JID PID PRI State FDs MEM HH:MM:SS CPU Name
1047 1047 120 R 9 1420K 00:02:23 13.53% diagd
1 1 120 S 17 1092K 00:00:20 7.61% scmd
1000 1000 115 S 0 0K 00:00:09 0.84% [sock/1]
1026 1026 120 S 20 26044K 00:00:05 0.84% syslogd
2 2 115 S 0 0K 00:00:00 0.00% [kthreadd]
3 3 99 S 0 0K 00:00:00 0.00% [migration/0]
4 4 115 S 0 0K 00:00:06 0.00% [ksoftirqd/0]
5 5 99 S 0 0K 00:00:00 0.00% [watchdog/0]
6 6 115 S 0 0K 00:00:01 0.00% [events/0]
7 7 115 S 0 0K 00:00:00 0.00% [khelper]
4797 4797 120 S 8 28832K 00:00:02 0.00% comsh
5117 5117 120 S 8 1496K 00:00:00 0.00% top
<Sysname>
# 以哑终端方式显示进程统计信息,并且执行一次命令显示两次统计结果。
<Sysname> monitor process dumbtty iteration 2
76 processes; 103 threads; 687 fds
Thread states: 1 running, 102 sleeping, 0 stopped, 0 zombie
CPU states: 44.84% idle, 0.51% user, 39.17% kernel, 15.46% interrupt
Memory: 496M total, 341M available, page size 4K
JID PID PRI State FDs MEM HH:MM:SS CPU Name
1047 1047 120 R 9 1420K 00:02:30 37.11% diagd
1 1 120 S 17 1092K 00:00:21 11.34% scmd
1000 1000 115 S 0 0K 00:00:09 2.06% [sock/1]
1026 1026 120 S 20 26044K 00:00:05 1.54% syslogd
1027 1027 120 S 12 9280K 00:01:12 1.03% devd
4 4 115 S 0 0K 00:00:06 0.51% [ksoftirqd/0]
1009 1009 115 S 0 0K 00:00:08 0.51% [karp/1]
1010 1010 115 S 0 0K 00:00:13 0.51% [kND/1]
5373 5373 120 S 8 1496K 00:00:00 0.51% top
2 2 115 S 0 0K 00:00:00 0.00% [kthreadd]
3 3 99 S 0 0K 00:00:00 0.00% [migration/0]
5 5 99 S 0 0K 00:00:00 0.00% [watchdog/0]
6 6 115 S 0 0K 00:00:01 0.00% [events/0]
7 7 115 S 0 0K 00:00:00 0.00% [khelper]
4796 4796 120 S 11 2744K 00:00:00 0.00% login
4797 4797 120 S 8 28832K 00:00:03 0.00% comsh
// 5秒钟后,系统会自动统计一次,并显示统计信息如下。(相当于执行了两次monitor process dumbtty,两次执行的时间间隔为5秒)
76 processes; 103 threads; 687 fds
Thread states: 1 running, 102 sleeping, 0 stopped, 0 zombie
CPU states: 78.71% idle, 0.16% user, 14.86% kernel, 6.25% interrupt
Memory: 496M total, 341M available, page size 4K
JID PID PRI State FDs MEM HH:MM:SS CPU Name
1047 1047 120 R 9 1420K 00:02:31 14.25% diagd
1 1 120 S 17 1092K 00:00:21 4.25% scmd
1027 1027 120 S 12 9280K 00:01:12 1.29% devd
1000 1000 115 S 0 0K 00:00:09 0.37% [sock/1]
5373 5373 120 S 8 1500K 00:00:00 0.37% top
6 6 115 S 0 0K 00:00:01 0.18% [events/0]
1009 1009 115 S 0 0K 00:00:08 0.18% [karp/1]
1010 1010 115 S 0 0K 00:00:13 0.18% [kND/1]
4795 4795 120 S 11 2372K 00:00:01 0.18% telnetd
2 2 115 S 0 0K 00:00:00 0.00% [kthreadd]
3 3 99 S 0 0K 00:00:00 0.00% [migration/0]
4 4 115 S 0 0K 00:00:06 0.00% [ksoftirqd/0]
5 5 99 S 0 0K 00:00:00 0.00% [watchdog/0]
7 7 115 S 0 0K 00:00:00 0.00% [khelper]
4796 4796 120 S 11 2744K 00:00:00 0.00% login
4797 4797 120 S 8 28832K 00:00:03 0.00% comsh
<Sysname>
# 以交互方式显示进程统计信息。
<Sysname> monitor process
76 processes; 103 threads; 687 fds
Thread states: 1 running, 102 sleeping, 0 stopped, 0 zombie
CPU states: 78.98% idle, 0.16% user, 14.57% kernel, 6.27% interrupt
Memory: 496M total, 341M available, page size 4K
JID PID PRI State FDs MEM HH:MM:SS CPU Name
1047 1047 120 R 9 1420K 00:02:39 14.13% diagd
1 1 120 S 17 1092K 00:00:23 3.98% scmd
1027 1027 120 S 12 9280K 00:01:13 1.44% devd
1000 1000 115 S 0 0K 00:00:09 0.36% [sock/1]
1009 1009 115 S 0 0K 00:00:09 0.36% [karp/1]
4 4 115 S 0 0K 00:00:06 0.18% [ksoftirqd/0]
1010 1010 115 S 0 0K 00:00:13 0.18% [kND/1]
4795 4795 120 S 11 2372K 00:00:01 0.18% telnetd
5491 5491 120 S 8 1500K 00:00:00 0.18% top
2 2 115 S 0 0K 00:00:00 0.00% [kthreadd]
以上信息会每隔5秒刷新一次。
· 输入“h”或“?”,将显示如下帮助信息。
Help for interactive commands:
?,h Show the available interactive commands
c Sort by the CPU field(default)
d Set the delay interval between screen updates
f Sort by number of open files
k Kill a job
l Refresh the screen
m Sort by memory used
n Set the maximum number of processes to display
q Quit the interactive display
t Sort by run time of processes since last restart
< Move sort field to the next left column
> Move sort field to the next right column
Press any key to continue
· 输入“d”后,根据出现的提示如果输入“3”,则统计信息将会每隔3秒更新一次。
Enter the delay interval between updates(1~2147483647):3
· 输入“n”后,根据出现的提示如果输入“5”,则显示的进程数目将会变为5个。
Enter the max number of procs to display(0 is unlimited):5
87 processes; 113 threads; 735 fds
Thread states: 2 running, 111 sleeping, 0 stopped, 0 zombie
CPU states: 86.57% idle, 0.83% user, 11.74% kernel, 0.83% interrupt
Memory: 755M total, 414M available, page size 4K
JID PID PRI State FDs MEM HH:MM:SS CPU Name
864 864 120 S 24 27020K 00:00:43 8.95% syslogd
1173 1173 120 R 24 2664K 00:00:01 2.37% top
866 866 120 S 18 10276K 00:00:09 0.69% devd
1 1 120 S 16 1968K 00:00:04 0.41% scmd
881 881 120 S 8 2420K 00:00:07 0.41% diagd
· 输入“f”,统计信息将以打开的文件句柄数降序输出(c、m、t命令字类似)。
87 processes; 113 threads; 735 fds
Thread states: 1 running, 112 sleeping, 0 stopped, 0 zombie
CPU states: 90.66% idle, 0.88% user, 5.77% kernel, 2.66% interrupt
Memory: 755M total, 414M available, page size 4K
JID PID PRI State FDs MEM HH:MM:SS CPU Name
862 862 120 S 61 5384K 00:00:01 0.00% dbmd
905 905 120 S 35 2464K 00:00:02 0.00% ipbased
863 863 120 S 31 1956K 00:00:00 0.00% had
884 884 120 S 31 30600K 00:00:00 0.00% lsmd
889 889 120 S 29 61592K 00:00:00 0.00% routed
· 输入“k”后,根据出现的提示如果输入的JID为884,将会终止此JID对应的任务“lsmd”。
Enter the JID to kill: 884
84 processes; 107 threads; 683 fds
Thread states: 1 running, 106 sleeping, 0 stopped, 0 zombie
CPU states: 59.03% idle, 1.92% user, 37.88% kernel, 1.15% interrupt
Memory: 755M total, 419M available, page size 4K
JID PID PRI State FDs MEM HH:MM:SS CPU Name
862 862 120 S 56 5384K 00:00:01 0.00% dbmd
905 905 120 S 35 2464K 00:00:02 0.00% ipbased
863 863 120 S 30 1956K 00:00:00 0.00% had
889 889 120 S 29 61592K 00:00:00 0.00% routed
1160 1160 120 S 28 23096K 00:00:01 0.19% sshd
· 输入“q”,将退出交互模式。
表1-9 monitor process命令显示信息描述表
字段 |
描述 |
84 processes; 107 threads; 683 fds |
系统的进程总数,线程总数,文件句柄总数 |
Thread states: 1 running, 102 sleeping, 0 stopped, 0 zombie |
线程状态:处于running状态的线程数,处于sleeping(包括interruptible sleep和uninterruptible sleep)状态的线程数,处于stopped状态的线程数,处于zombie状态的线程数 |
CPU states |
CPU状态:空闲率,用户态占用率,内核态占用率,中断占用率 |
Memory |
内存状态:总量,可用内存数,page大小,单位为KB |
JID |
任务ID(用于唯一标识一个进程,该ID不会随着进程的重启而改变) |
PID |
进程ID |
PRI |
进程优先级 |
State |
进程状态,可能的取值为: · R:running,运行状态或处于运行队列 · S:sleeping,可中断睡眠状态 · T:traced or stopped,暂停状态 · D:uninterruptible sleep,不可中断睡眠状态 · Z:zombie,僵死状态 |
FDs |
file descriptions,进程打开的文件句柄数 |
MEM |
进程所使用的内存大小(内核进程该项显示为0) |
HH:MM:SS |
进程自最近一次启动以来的运行时间 |
CPU |
进程CPU占有率 |
Name |
进程名称(如果进程名称带有“[ ]”标记,则表示该进程为内核线程) |
monitor thread命令用来显示线程的统计信息。
【命令】
monitor thread [ dumbtty ] [ iteration number ] [ slot slot-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
【参数】
dumbtty:以哑终端方式显示线程统计信息(即屏幕定时刷新统计信息)。指定该参数时,全部线程的统计信息以CPU占有率降序排列输出到屏幕上。不指定该参数时,统计信息以交互模式显示,缺省情况下按CPU占用率降序显示前10个线程的统计信息,且每隔5秒更新一次。
iteration number:进程统计信息的显示次数,取值范围为1~4294967295。指定dumbtty参数时number的缺省值为1;不指定dumbtty且不配置number参数时,表示显示次数没有限制,统计信息会一直显示。
slot slot-number:表示设备在IRF中的成员编号,不指定该参数时,表示Master。
【使用指导】
不指定dumbtty参数的情况下,统计信息以交互模式显示。
· 交互模式下,系统会自动计算可显示的线程个数,超过屏幕范围的不作显示。
· 交互模式下,用户可通过输入表1-10中指定的交互命令字来执行相应的操作。
表1-10 monitor thread命令支持的交互命令字描述表
命令字 |
功能描述 |
?或h |
帮助信息,显示可用的交互式命令字 |
d |
设置统计信息的更新时间间隔,缺省值为5秒 |
k |
终止一个任务(进程),此命令会影响系统运行,请谨慎使用 |
l |
刷新屏幕 |
n |
改变显示的线程个数,取值为0~2147483647(缺省值为10个,0表示不作限制);超过屏幕范围时,仍只显示一屏内可容纳的线程个数 |
q |
退出交互模式 |
< |
排序项向左移动一列 |
> |
排序项向右移动一列 |
【举例】
# 以哑终端方式显示线程统计信息。
<Sysname> monitor thread dumbtty
84 processes; 107 threads
Thread states: 1 running, 106 sleeping, 0 stopped, 0 zombie
CPU states: 83.19% idle, 1.68% user, 10.08% kernel, 5.04% interrupt
Memory: 755M total, 417M available, page size 4K
JID TID LAST_CPU PRI State HH:MM:SS MAX CPU Name
1175 1175 0 120 R 00:00:00 1 10.75% top
1 1 0 120 S 00:00:06 1 2.68% scmd
881 881 0 120 S 00:00:09 1 2.01% diagd
776 776 0 120 S 00:00:01 0 0.67% [DEVD]
866 866 0 120 S 00:00:11 1 0.67% devd
2 2 0 115 S 00:00:00 0 0.00% [kthreadd]
3 3 0 115 S 00:00:01 0 0.00% [ksoftirqd/0]
4 4 0 99 S 00:00:00 1 0.00% [watchdog/0]
5 5 0 115 S 00:00:00 0 0.00% [events/0]
6 6 0 115 S 00:00:00 0 0.00% [khelper]
796 796 0 115 S 00:00:00 0 0.00% [kip6fs/1]
# 以交互模式显示线程统计信息。
<Sysname> monitor thread
84 processes; 107 threads
Thread states: 1 running, 106 sleeping, 0 stopped, 0 zombie
CPU states: 94.43% idle, 0.76% user, 3.64% kernel, 1.15% interrupt
Memory: 755M total, 417M available, page size 4K
JID TID LAST_CPU PRI State HH:MM:SS MAX CPU Name
1176 1176 0 120 R 00:00:01 1 3.42% top
866 866 0 120 S 00:00:12 1 0.85% devd
881 881 0 120 S 00:00:09 1 0.64% diagd
1 1 0 120 S 00:00:06 1 0.42% scmd
1160 1160 0 120 S 00:00:01 1 0.21% sshd
2 2 0 115 S 00:00:00 0 0.00% [kthreadd]
3 3 0 115 S 00:00:01 0 0.00% [ksoftirqd/0]
4 4 0 99 S 00:00:00 1 0.00% [watchdog/0]
5 5 0 115 S 00:00:00 0 0.00% [events/0]
6 6 0 115 S 00:00:00 0 0.00% [khelper]
· 输入“h”或“?”,帮助信息显示如下:
Help for interactive commands:
?,h Show the available interactive commands
c Sort by the CPU field(default)
d Set the delay interval between screen updates
k Kill a job
l Refresh the screen
n Set the maximum number of threads to display
q Quit the interactive display
t Sort by run time of threads since last restart
< Move sort field to the next left column
> Move sort field to the next right column
Press any key to continue
· 输入“d”后,根据出现的提示如果输入“3”,统计信息将会每隔3秒更新一次。
Enter the delay interval between screen updates(1~2147483647):3
· 输入“n”后,根据出现的提示如果输入“5”,显示的线程数目将会变为5个。
Enter the max number of threads to display(0 means unlimited):5
84 processes; 107 threads
Thread states: 1 running, 106 sleeping, 0 stopped, 0 zombie
CPU states: 93.26% idle, 0.99% user, 4.23% kernel, 1.49% interrupt
Memory: 755M total, 417M available, page size 4K
JID TID LAST_CPU PRI State HH:MM:SS MAX CPU Name
1176 1176 0 120 R 00:00:02 1 3.71% top
1 1 0 120 S 00:00:06 1 0.92% scmd
866 866 0 120 S 00:00:13 1 0.69% devd
881 881 0 120 S 00:00:10 1 0.69% diagd
720 720 0 115 D 00:00:01 0 0.23% [TMTH]
· 输入“k”后,根据出现的提示输入JID 974,将会终止此JID对应的任务routed。
Enter the JID to kill:974
83 processes; 106 threads
Thread states: 1 running, 105 sleeping, 0 stopped, 0 zombie
CPU states: 96.26% idle, 0.54% user, 2.63% kernel, 0.54% interrupt
Memory: 755M total, 418M available, page size 4K
JID TID LAST_CPU PRI State HH:MM:SS MAX CPU Name
1176 1176 0 120 R 00:00:04 1 1.86% top
866 866 0 120 S 00:00:14 1 0.87% devd
1 1 0 120 S 00:00:07 1 0.49% scmd
730 730 0 0 S 00:00:04 1 0.12% [DIBC]
762 762 0 120 S 00:00:22 1 0.12% [MNET]
· 输入“q”,将退出交互模式。
表1-11 monitor thread命令显示信息描述表
显示项 |
内容描述 |
84 processes; 107 threads |
系统的进程总数,线程总数 |
Thread states |
线程状态:处于running状态的线程数,处于sleeping(包括interruptible sleep和uninterruptible sleep)状态的线程数,处于stopped状态的线程数,处于zombie状态的线程数 |
CPU states |
CPU状态:空闲率,用户态占用率,内核态占用率,中断占用率 |
Memory |
内存状态:总量,可用内存数,page大小 |
JID |
任务ID,用于唯一标识一个进程,该ID不会随着进程的重启而改变 |
TID |
线程ID |
LAST_CPU |
线程最近一次被调度所在的CPU编号 |
PRI |
线程优先级 |
State |
进程状态,可能的取值为: · R:running,运行状态或处于运行队列 · S:sleeping,可中断睡眠状态 · T:traced or stopped,暂停状态 · D:uninterruptible sleep,不可中断睡眠状态 · Z:zombie,僵死状态 |
HH:MM:SS |
线程自最近一次启动以来的运行时间 |
MAX |
线程单次调度占用CPU的最长时间,以毫秒为单位 |
CPU |
线程CPU占有率 |
Name |
线程名称(如果线程名称带有“[ ]”标记,则表示该线程为内核线程) |
ping命令用来检查指定IP地址是否可达,并输出相应的统计信息。
【命令】
ping [ ip ] [ -a source-ip | -c count | -f | -h ttl | -i interface-type interface-number | -m interval | -n | -p pad | -q | -r | -s packet-size | -t timeout | -tos tos | -v | -vpn-instance vpn-instance-name ] * host
【视图】
任意视图
【缺省用户角色】
network-admin
【参数】
ip:支持IPv4协议。不指定该参数时,也表示支持IPv4协议。
-a source-ip:指定ICMP回显请求(ECHO-REQUEST)报文的源IP地址。该地址必须是设备上已配置的IP地址。不指定该参数时,ICMP回显请求报文的源IP地址是该报文出接口的主IP地址。
-c count:指定ICMP回显请求报文的发送次数,取值范围为1~4294967295,缺省值为5。
-f:将长度大于出接口MTU的报文直接丢弃,即不允许对发送的ICMP回显请求报文进行分片。
-h ttl:指定ICMP回显请求报文中的TTL值,取值范围为1~255,缺省值为255。
-i interface-type interface-number:指定发送ICMP回显请求报文的接口的类型和编号。不指定该参数时,将根据目的IP查找路由表或者转发表来确定发送ICMP回显请求报文的接口。
-m interval:指定发送ICMP回显请求报文的时间间隔,取值范围为1~65535,单位为毫秒,缺省值为200毫秒。
-n:对host参数不进行域名解析。不指定该参数时,如果host参数表示的是目的端的主机名,则设备会对host进行域名解析。
-p pad:指定ICMP回显请求报文的“PAD”字段的填充值,为1~8位的16进制数,取值范围为0~FFFFFFFF。如果指定的参数不够8位,则会在首部补0,使填充值达到8位。比如将pad设置为0x2f,则会重复使用0x0000002f去填充报文,以使发送报文的总长度达到设备要求值。填充值从0x01开始,逐渐递增,直到0xff,然后又从0x01开始循环,形如0x010203……feff01……,直至发送报文的总长度达到设备要求值。
-q:只显示统计信息。不指定该参数时,系统将显示包括统计信息在内的全部信息。
-r:记录路由信息。不指定该参数时,系统不记录路由。
-s packet-size:指定发送的ICMP回显请求报文的长度(不包括IP和ICMP报文头),取值范围为20~8100,单位为字节,缺省值为56字节。
-t timeout:指定ICMP回显应答(ECHO-REPLY)报文的超时时间,发送ICMP回显请求报文timeout时长后还没有收到ICMP回显应答报文,源端则认为ICMP回显应答报文超时。取值范围为0~65535,单位为毫秒,缺省值为2000毫秒。
-tos tos:指定ICMP回显请求报文中的ToS域的值,取值范围为0~255,缺省值为0。
-v:显示接收到的非回显应答的ICMP报文。不指定该参数时,系统不显示非回显应答的ICMP报文。
-vpn-instance vpn-instance-name:指定目的端所属的VPN。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示目的端位于公网中。
host:目的端的IP地址或主机名,主机名为1~255个字符的字符串。
【使用指导】
如果要使用目的端的主机名执行ping操作,事先必须在设备上配置DNS(Domain Name System,域名系统)功能,否则会ping失败。而且当目的端的名称是ping命令的关键字(如ip)时,命令形式应该是ping ip ip,而不能直接输入ping ip。
在执行命令过程中,键入<Ctrl+C>可终止ping操作。
【举例】
# 检查IP地址为1.1.2.2的设备是否可达。
<Sysname> ping 1.1.2.2
PING 1.1.2.2 (1.1.2.2): 56 data bytes
56 bytes from 1.1.2.2: icmp_seq=0 ttl=254 time=2.137 ms
56 bytes from 1.1.2.2: icmp_seq=1 ttl=254 time=2.051 ms
56 bytes from 1.1.2.2: icmp_seq=2 ttl=254 time=1.996 ms
56 bytes from 1.1.2.2: icmp_seq=3 ttl=254 time=1.963 ms
56 bytes from 1.1.2.2: icmp_seq=4 ttl=254 time=1.991 ms
--- 1.1.2.2 ping statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/stddev = 1.963/2.028/2.137/0.062 ms
# 检查私网vpn1中IP地址为1.1.2.2的设备是否可达。
<Sysname> ping -vpn-instance vpn1 1.1.2.2
PING 1.1.2.2 (1.1.2.2): 56 data bytes
56 bytes from 1.1.2.2: icmp_seq=0 ttl=254 time=2.137 ms
56 bytes from 1.1.2.2: icmp_seq=1 ttl=254 time=2.051 ms
56 bytes from 1.1.2.2: icmp_seq=2 ttl=254 time=1.996 ms
56 bytes from 1.1.2.2: icmp_seq=3 ttl=254 time=1.963 ms
56 bytes from 1.1.2.2: icmp_seq=4 ttl=254 time=1.991 ms
--- 1.1.2.2 ping statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/stddev = 1.963/2.028/2.137/0.062 ms
# 检查IP地址为1.1.2.2的设备是否可达,只显示检查结果。
<Sysname> ping -q 1.1.2.2
PING 1.1.2.2 (1.1.2.2): 56 data bytes
--- 1.1.2.2 ping statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/stddev = 1.962/2.196/2.665/0.244 ms
# 检查IP地址为1.1.2.2的设备是否可达,并显示路由信息。
<Sysname> ping -r 1.1.2.2
PING 1.1.2.2 (1.1.2.2): 56 data bytes
56 bytes from 1.1.2.2: icmp_seq=0 ttl=254 time=4.685 ms
RR: 1.1.2.1
1.1.2.2
1.1.1.2
1.1.1.1
56 bytes from 1.1.2.2: icmp_seq=1 ttl=254 time=4.834 ms (same route)
56 bytes from 1.1.2.2: icmp_seq=2 ttl=254 time=4.770 ms (same route)
56 bytes from 1.1.2.2: icmp_seq=3 ttl=254 time=4.812 ms (same route)
56 bytes from 1.1.2.2: icmp_seq=4 ttl=254 time=4.704 ms (same route)
--- 1.1.2.2 ping statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/stddev = 4.685/4.761/4.834/0.058 ms
以上显示信息表明本设备与1.1.2.2之间路由可达,具体路由为1.1.1.1 <-> {1.1.1.2; 1.1.2.1} <-> 1.1.2.2。
表1-12 ping命令显示信息描述表
字段 |
描述 |
PING 1.1.2.2 |
检查IP地址为1.1.2.2的设备是否可达 |
56 data bytes |
每个ICMP回显请求报文中的数据字节数 |
56 bytes from 1.1.2.2: icmp_seq=0 ttl=254 time=4.685 ms |
收到IP地址为1.1.2.2的设备回复的ICMP响应报文,若超时仍没有收到ICMP响应报文,则不输出信息 · bytes表示ICMP响应报文中的数据字节数 · icmp_seq表示报文序号,用来判断报文是否有分组丢失、失序或重复 · ttl表示ICMP响应报文中的TTL值 · time表示响应时间 |
RR: |
ICMP回显请求报文经过的路由器,采用倒序显示,距离目的端越近的路由器越先显示 |
--- 1.1.2.2 ping statistics --- |
Ping操作中收发数据的统计结果 |
5 packet(s) transmitted |
发送的ICMP回显请求报文数 |
5 packet(s) received |
收到的ICMP响应报文数 |
0.0% packet loss |
未响应请求报文占发送的总请求报文的百分比 |
round-trip min/avg/max/stddev = 4.685/4.761/4.834/0.058 ms |
响应时间的最小值、平均值、最大值和标准方差,单位为毫秒 |
ping ipv6命令用来检查指定IPv6地址是否可达,并输出相应的统计信息。
【命令】
ping ipv6 [ -a source-ipv6 | -c count | -m interval | -q | -s packet-size | -t timeout | –v | -vpn-instance vpn-instance-name ] * host [ -i interface-type interface-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
【参数】
-a source-ipv6:指定ICMPv6回显请求报文中的源IPv6地址。该地址必须是设备上已配置的合法IPv6地址。不指定该参数时,ICMPv6回显请求报文的源IPv6地址是该报文出接口的IPv6地址(地址选择原则遵循RFC 3484)。
-c count:指定发送的ICMPv6回显请求报文的数目,取值范围为1~4294967295,缺省值为5。
-m interval:指定发送ICMPv6回显请求报文的时间间隔,取值范围为1~65535,单位为毫秒,缺省值为1000毫秒。
-q:只显示统计信息。不指定该参数时,系统将显示包括统计信息在内的全部信息。
-s packet-size:指定发送的ICMPv6回显请求报文的长度(不包括IPv6和ICMPv6报文头),取值范围为20~8100,单位为字节,缺省值为56字节。
-t timeout:指定ICMPv6回显应答报文的超时时间,取值范围为0~65535,单位为毫秒,缺省值为2000毫秒。
-v:显示所有接收到的ICMPv6报文。不指定该参数时,系统只显示回显应答的ICMPv6报文。
-vpn-instance vpn-instance-name:指定目的端所属的VPN。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示目的端位于公网中。
-i interface-type interface-number:指定出接口的接口类型与接口编号。对端是组播地址或者是链路本地地址则必须指定此参数。不指定该参数时,将根据目的IP查找路由表或者转发表来确定发送ICMPv6回显请求报文的接口。
host:目的端的IPv6地址或主机名,为1~46个字符的字符串。
【使用指导】
如果要使用目的端的主机名执行ping ipv6操作,事先必须在设备上配置DNS功能,否则会ping ipv6失败。
在执行命令过程中,键入<Ctrl+C>可终止ping ipv6操作。
【举例】
# 检查IPv6地址为2001::2的设备是否可达。
<Sysname> ping ipv6 2001::2
PING6(104=40+8+56 bytes) 2001::1 --> 2001::2
56 bytes from 2001::2, icmp_seq=0 hlim=64 time=62.000 ms
56 bytes from 2001::2, icmp_seq=1 hlim=64 time=23.000 ms
56 bytes from 2001::2, icmp_seq=2 hlim=64 time=20.000 ms
56 bytes from 2001::2, icmp_seq=3 hlim=64 time=4.000 ms
56 bytes from 2001::2, icmp_seq=4 hlim=64 time=16.000 ms
--- 2001::2 ping6 statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 4.000/25.000/62.000/20.000 ms
# 检查IPv6地址为2001::2的设备是否可达,只显示统计信息。
<Sysname> ping ipv6 –q 2001::2
PING6(104=40+8+56 bytes) 2001::1 --> 2001::2
--- 2001::2 ping6 statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 4.000/25.000/62.000/20.000 ms
# 检查IPv6地址为2001::2的设备是否可达,显示全部ping信息。
<Sysname> ping ipv6 –v 2001::2
PING6(104=40+8+56 bytes) 2001::1 --> 2001::2
56 bytes from 2001::2, icmp_seq=0 hlim=64 dst=2001::1 idx=3 time=62.000 ms
56 bytes from 2001::2, icmp_seq=1 hlim=64 dst=2001::1 idx=3 time=23.000 ms
56 bytes from 2001::2, icmp_seq=2 hlim=64 dst=2001::1 idx=3 time=20.000 ms
56 bytes from 2001::2, icmp_seq=3 hlim=64 dst=2001::1 idx=3 time=4.000 ms
56 bytes from 2001::2, icmp_seq=4 hlim=64 dst=2001::1 idx=3 time=16.000 ms
--- 2001::2 ping6 statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 4.000/25.000/62.000/20.000 ms
以上信息表明,目的端可达,源端发出的ICMPv6回显请求报文均能得到回应,报文往返时间的最小值、平均值、最大值和标准方差分别为4ms、25ms、62ms和20ms。
表1-13 ping ipv6命令显示信息描述表
字段 |
描述 |
PING6(104=40+8+56 bytes) 2001::1 --> 2001::2 |
从源地址2001::1给目的地址2001::2发送一个大小为104字节的ICMPv6回显请求报文,其中: · 40是IPv6首部的长度 · 8是ICMPv6首部的长度 · 56是ICMPv6回显请求报文载荷的长度 |
56 bytes from 2001::2, icmp_seq=1 hlim=64 dst=2001::1 idx=3 time=62.000 ms |
收到IPv6地址为2001::2的设备回复的ICMPv6响应报文,其中: · 数据字节数为56 · 报文序号为1 · hop limit值为64 · 目的地址为2001::1(使用-v参数时才显示该字段) · 报文入接口的索引为3(使用-v参数时才显示该字段) · 响应时间是62ms |
--- 2001::2 ping6 statistics --- |
ping操作中收发数据的统计结果 |
5 packet(s) transmitted |
发送的ICMPv6回显请求报文数 |
5 packet(s) received |
收到的ICMPv6响应报文数 |
0.0% packet loss |
未响应请求报文占发送的总请求报文的百分比 |
round-trip min/avg/max/ std-dev =4.000/25.000/62.000/20.000 ms |
响应时间的最小值、平均值、最大值和标准方差,单位为毫秒 |
process命令用来对进程进行启动、异常终止、停止和重启操作。
【命令】
process { crash | restart | shutdown | start } { job job-id [ slot slot-number ] | name process-name [ slot slot-number | all ] }
【视图】
用户视图
【缺省用户角色】
network-admin
【参数】
crash:异常终止指定进程。
restart:重启指定进程。
shutdown:停止指定进程。被停止的进程不会自动重启。
start:启动指定进程。
job job-id:任务ID,用于唯一标识一个进程,该ID不会随着进程的重启而改变,取值范围为1~2147483647。
slot slot-number:表示设备在IRF中的成员编号,不指定该参数时,表示Matser。
name process-name:进程名称,为1~15个字符的字符串,区分大小写,不能包含问号和空格。
all:所有成员设备上的指定进程。
【使用指导】
shutdown停止的进程不会自动重启,需要执行process start才能重新启动。而使用crash操作终止进程,一般用于测试该进程是否能正常重启,如果测试成功,进程在crash后会重新启动。
· 在正常情况下,进程的启动和重启动作都是由操作系统按需控制的。
· 手工停止或启动进程的操作可能会严重影响设备的运行,该系列命令请在H3C工程师指导下使用。
【举例】
# 停止成员设备1上的进程diagd。
<Sysname> process shutdown name diagd slot 1
Manually stopping or restarting a process can severely impact device operation. Use these commands only under the guidance of H3C engineers. Continue? [Y/N]:y
Shutting down the process diagd[881] on slot 1 ...
Succeeded.
【命令】
tracert [ -a source-ip | -f first-ttl | -m max-ttl | -p port | -q packet-number | -vpn-instance vpn-instance-name | -w timeout ] * host
【视图】
任意视图
【缺省用户角色】
network-admin
【参数】
-a source-ip:指定tracert报文的源IP地址。该地址必须是设备上已配置的合法IP地址。不指定该参数时,tracert报文的源IP地址是该报文出接口的主IP地址。
-f first-ttl:指定一个初始TTL,即第一个报文所允许的最大跳数。取值范围为1~255,且小于最大TTL,缺省值为1。
-m max-ttl:指定一个最大TTL,即一个报文所允许的最大跳数。取值范围为1~255,且大于初始TTL,缺省值为30。
-p port:指定目的端的UDP端口号,取值范围为1~65535,缺省值为33434。用户一般不需要更改此选项。
-q packet-number:指定每次发送的探测报文个数,取值范围为1~65535,缺省值为3。
-vpn-instance vpn-instance-name:指定目的端所属的VPN。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示目的端位于公网中。
-w timeout:指定探测报文的响应报文的超时时间,取值范围是1~65535,单位为毫秒,缺省值为5000毫秒。
host:目的端的IP地址或主机名,主机名为1~255个字符的字符串。
【使用指导】
tracert命令用来查看IPv4报文从源端传到目的端所经过的路径。
当用户使用ping命令测试发现网络出现故障后,可以用tracert命令分析出现故障的网络节点。
tracert命令的输出信息包括到达目的端所经过的所有三层设备的IP地址,如果某设备不能回应ICMP错误消息(可能因为路由不可达或者没有开启ICMP错误报文处理功能),则输出“* * *”。
在执行命令过程中,键入<Ctrl+C>可终止此次tracert操作。
【举例】
# 查看报文从源端到目的端(IP地址为1.1.2.2)所经过的路径。
<Sysname> tracert 1.1.2.2
traceroute to 1.1.2.2(1.1.2.2), 30 hops at most, 40 bytes each packet, press CTRL_C to break
1 1.1.1.2 673 ms 425 ms 30 ms
2 1.1.2.2 580 ms 470 ms 80 ms
# 查看报文从源端到目的端(IP地址为192.168.0.46)所经过的路径(途经MPLS网络)。
<Sysname> tracert 192.168.0.46
traceroute to 192.168.0.46(192.168.0.46), 30 hops at most, 40 bytes each packet, press CTRL_C to break
1 192.0.2.13 (192.0.2.13) 0.661 ms 0.618 ms 0.579 ms
2 192.0.2.9 (192.0.2.9) 0.861 ms 0.718 ms 0.679 ms
MPLS Label=100048 Exp=0 TTL=1 S=1
3 192.0.2.5 (192.0.2.5) 0.822 ms 0.731 ms 0.708 ms
MPLS Label=100016 Exp=0 TTL=1 S=1
4 192.0.2.1 (192.0.2.1) 0.961 ms 8.676 ms 0.875 ms
表1-14 tracert命令显示信息描述表
字段 |
描述 |
traceroute to 1.1.2.2(1.1.2.2) |
查看IP报文从当前设备传到地址为1.1.2.2的设备所经过的路径 |
hops at most |
探测报文的最大跳数,可使用-m参数配置 |
bytes each packet |
探测报文字节数 |
press CTRL_C to break |
在执行命令过程中,键入<Ctrl+C>可终止此次tracert操作 |
1 1.1.1.2 673 ms 425 ms 30 ms |
TTL值为1的探测报文的探测结果,内容包括:第一跳的IP地址、三份探测报文的往返时间 每次发送探测报文的份数可以使用-q参数配置 |
MPLS Label=100048 Exp=0 TTL=1 S=1 |
当源端到目的端途经MPLS网络时,ICMP超时报文中会携带MPLS标签信息: · Label:标签值,用来标识一个FEC · Exp:保留,协议中没有明确规定,通常用作服务等级 · TTL:TTL值 · S:MPLS支持多重标签,值为1时表示此标签为最底层标签,值为0时表示此标签为其它层标签 |
tracert ipv6命令用来查看IPv6报文从源端传到目的端所经过的路径。
【命令】
tracert ipv6 [ -f first-hop | -m max-hops | -p port | -q packet-number | -vpn-instance vpn-instance-name | -w timeout ] * host
【视图】
任意视图
【缺省用户角色】
network-admin
【参数】
-f first-hop:指定一个初始hoplimit,即第一个报文所允许的跳数。取值范围为1~255,且小于max-hops,缺省值为1。
-m max-hops:指定一个最大hoplimit,即一个报文所允许的最大跳数。取值范围为1~255,且大于first-hop,缺省值为30。
-p port:指定目的端的UDP端口号,取值范围为1~65535,缺省值为33434。用户一般不需要更改此选项。
-q packet-number:指定每次发送的探测报文个数,取值范围为1~65535,缺省值为3。
-vpn-instance vpn-instance-name:指定目的端所属的VPN。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示目的端位于公网中。
-w timeout:指定探测报文的响应报文的超时时间,取值范围为1~65535,单位为毫秒,缺省值为5000毫秒。
host:目的端的IPv6地址或主机名,为1~46个字符的字符串。
【使用指导】
当用户使用ping ipv6命令测试发现网络出现故障后,可以用tracert ipv6命令来帮助查找出现故障的网络节点。
本命令的输出信息包括到达目的端所经过的所有三层设备的IPv6地址,如果某设备不能回应ICMP错误消息(可能因为路由不可达或者没有开启ICMP错误报文处理功能),则输出“* * *”。
在执行命令过程中,键入<Ctrl+C>可终止此次tracert ipv6操作。
【举例】
# 查看报文从源端到目的端(IPv6地址为2001:3::2)所经过的路径。
<Sysname> system-view
[Sysname] ipv6 hoplimit-expires enable
[Sysname] ipv6 unreachables enable
[Sysname] tracert ipv6 2001:3::2
traceroute to 2001:3::2 (2001:3::2), 30 hops at most, 60 byte packets, press CTRL_C to break
1 2001:1::2 0.661 ms 0.618 ms 0.579 ms
2 2001:2::2 0.861 ms 0.718 ms 0.679 ms
3 2001:3::2 0.822 ms 0.731 ms 0.708 ms
表1-15 tracert ipv6命令显示信息描述表
字段 |
描述 |
traceroute to 2001:3::2 |
查看IPv6报文从当前设备发送到地址为2001:3::2的设备所经过的路径 |
hops at most |
探测报文的最大跳数,可使用-m参数配置 |
byte packets |
探测报文字节数 |
1 2001:1::2 0.661 ms 0.618 ms 0.579 ms |
hoplimit值为1的探测报文的探测结果,内容包括:第一跳的IPv6地址、三份探测报文的往返时间(每次发送探测报文的份数可以使用-q参数配置) |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!