问:12016路由器和12416路由器有什么区别?
答:12016和12416的机箱是一样的。它们的区别在于CSC卡(Clock and Scheduler Card)和SFC卡(Switch Fabric Card)。12016使用GSR16/80-CSC,GSR16/80-SFC;12416使用GSR16/320-CSC,GSR16/320- SFC。在使用了新的交换矩阵卡(SFC)后,12416可以支持每个槽位10Gbps的带宽,12016可以支持每个槽位2.5Gbps的带宽。
如果想把12016升级到12416,只需要将GSR16/80-CSC, GSR16/80-SFC升级为GSR16/320-CSC, GSR16/320-SFC就可以了!

问:SFC(Switch Fabric Card)卡和CSC(Clock and Scheduler Card)卡的作用是什么?
答:SFC为12000路由器的路由处理器和接口模块之间提供交换矩阵,CSC为在矩阵上交换的Cisco信元提供传输时的时钟!
在12008,12012,和12016上,必须配置至少一块CSC卡路由器才能正常工作。当仅插一块CSC而不插SFC时,由CSC卡完成SFC卡的功能,这时我们称之为quarter bandwidth,并且这时路由器只支持Engine 0的接口卡(line card)。
如果路由器上有Engine 0以外的其它接口卡,必须插一块CSC和至少三块SFC卡,我们称之为full bandwidth!如果需要冗余备份,可以再插一块CSC卡,它既备份CSC卡,也备份SFC卡。

问:请介绍GRP上内存的类型。
答:GRP上有7种存储介质,分别是DRAM,SRAM,GRP Flash,SIMM,Flash Memory Card,NVRAM,EPROM。下面我们来仔细介绍一下:
DRAM(Dynamic RAM),这就是我们通常所说的内存,GRP和接口模块上都需要安装有DRAM,它是程序的运行区域,并且也是路由表的存储区域;在GRP上,可以根据需要配置128MB到512MB不等的DRAM。
SRAM(Shared Random Access Memory),SRAM为CPU提供一部分快捷访问的Cache。在GRP上有512KB,它的主要功能是GRP在向接口模块更新路由表时的中转站。这种存储介质是不能升级或更换的。
GRP Flash,GRP上的存储介质,它的特点是在没有电源的情况下,存储的内容也不会丢失。通常用来存储IOS。
SIMM(Onboard Flash Single Inline Memory Module),这种内存称为bootflash,8MB大小,不能升级或更换。在里面存储了一个IOS的Boot版。
Flash Memory Card,这种内存是PCMCIA形式的,在GRP的前面板上有槽位,可以将这种卡插到GRP上,作用和GRP Flash类似。
NVRAM(Nonvolatile RAM),用来存储路由器的配置,它的特点是在没有电源的情况下,存储的内容也不会丢失。这种存储介质是不能升级或更换的。
EPROM(Erasable Programmable Read Only Memory),EPROM中有一个ROM monitor,它在路由器上所有的IOS都出现故障时使管理员能够进入路由器的ROMMON状态,对路由器做最基本的调配。它的大小是512KB,这种存储介质是不能升级或更换的。

问:请介绍接口模块(Line Card)上的内存类型。
答:在接口模块上有两种内存:DRAM,SDRAM。
由于接口模块有几类(Engine 0,1,2,3,4),对不同的模块,存储介质的配置也是不同的。
DRAM,在Engine 0,1,2上,标准配置是128MB;在Engine 3,4上,标准配置是256MB。如果没有足够的内存来装载来自于GRP的CEF表,接口模块的CEF转发模式会被自动关闭,由于GSR接口模块只支持 CEF模式,也就是说该接口模块不能工作!
SDRAM,又称为包交换内存,它是暂时存储等待被传输的数据包的;当接口模块的CPU作出交换的决定后,数据包从SDRAM中被转发到交换矩阵上。这里需要注意的是SDRAM被分成接收SDRAM和发送SDRAM,每种都有两个槽位,在接收SDRAM(或发送SDRAM)的两个槽位中的SDRAM必须是同类型,同大小的SDRAM。但对发送和接收SDRAM之间的大小没有规定。

问:请问怎样确定我的板卡是哪种类型的?
答:在GSR上的接口模块有5种类型:Engine 0,1,2,3,4。可以通过命令show diag来判断接口模块属于哪种类型的模块。
SLOT 1 (RP/LC 1 ): 1 Port Packet Over SONET OC-12c/STM-4c Single Mode
--MAIN: type 34, 800-2529-02 rev C0 dev 16777215
----HW config: 0x00 SW key: FF-FF-FF
--PCA: 73-2184-04 rev D0 ver 3
------HW version 1.1 S/N CAB0242ADZM
MBUS: MBUS Agent (1) 73-2146-07 rev B0 dev 0
--HW version 1.2 S/N CAB0236A4LE
--Test hist: 0xFF RMA#: FF-FF-FF RMA hist: 0xFF
DIAG: Test count: 0xFFFFFFFF Test results: 0xFFFFFFFF
L3 Engine: 0 - OC12 (622 Mbps)
--! -- Engine 0 card.
MBUS Agent Software version 01.40 (RAM) (ROM version is 02.02)
Using CAN Bus A
ROM Monitor version 10.00
Fabric Downloader version used 13.01 (ROM version is 13.01)
Primary clock is CSC 1
Board is analyzed
Board State is Line Card Enabled (IOS RUN )
Insertion time: 00:00:11 (2w1d ago)
DRAM size: 268435456 bytes
FrFab SDRAM size: 67108864 bytes
ToFab SDRAM size: 67108864 bytes
0 crashes since restart
还有一个更快捷的命令show diag | (slot | Engine)
...
SLOT 1 (RP/LC 1 ): 1 port ATM Over SONET OC12c/STM-4c Multi Mode
--L3 Engine: 0 - OC12 (622 Mbps)
SLOT 3 (RP/LC 3 ): 3 Port Gigabit Ethernet
--L3 Engine: 2 - Backbone OC48 (2.5 Gbps)
...

问:GSR路由器的GRP的冗余性是怎样保证的。
答:Cisco从IOS在12.0(5)S和11.2(15)GS2的版本开始支持冗余的GRP。当两个GRP安装到12000的机箱上后,一个作为主GRP,另一个作为备份GRP。一旦主GRP出现故障或被从机箱上移开,备份GRP会立即接管系统。
下面介绍几种冗余切换技术:
Route Processor Redundancy,RPR,容许在备份的GRP引擎上运行IOS。备份GRP在加电后装载IOS软件并进入冷备状态,系统同时会自动同步路由器配置文件;一旦主GRP出现故障,系统会切换到备份GRP,该GRP会重新初始化自己成为主GRP,读取路由器配置,接管系统,恢复系统的正常运行!
Route Processor Redundancy Plus,RPR+,与RPR的不同是备份GRP在加电后装载IOS并进入热备状态。切换速度比RPR快许多。需要注意的是GRP之间只是同步配置信息;不同步其它系统信息,如热插拔信息。RPR+的特性是在12.0(17)ST中引入的。
Stateful Switchover,比RPR+更进了一步,同步所有信息,真正实现热备功能。在软件12.0(22)S中引入。

问:用什么命令可以显示出哪块CSC是主用?
答:用命令show controllers clock。如:
Router#show controllers clock
Switch Card Configured 0x1F (bitmask), Primary Clock for system is CSC_1
System Fabric Clock is Redundant
Slot # Primary ClockMode
0 CSC_1 Redundant
1 CSC_1 Redundant
2 CSC_1 Redundant
3 CSC_1 Redundant
4 CSC_1 Redundant
16 CSC_1 Redundant
17 CSC_1 Redundant
18 CSC_1 Redundant
19 CSC_1 Redundant
20 CSC_1 Redundant

问:什么命令能够显示出已安装的接口模块?
答:用命令show gsr和命令show diag summary可以显示出已经安装的接口模块。第一条命令可以看出接口模块的状态,第二条命令更精简一些。如:
Router#show gsr
Slot 0 type = 1 Port SONET based SRP OC-12c/STM-4
state = Line Card Enabled
Slot 1 type = 8 Port Fast Ethernet
state = Line Card Enabled
Slot 2 type = 1 Port E.D. Packet Over SONET OC-48c/STM-16
state = Line Card Enabled
Slot 3 type = Route Processor
state = IOS Running ACTIVE
Slot 4 type = 4 Port E.D. Packet Over SONET OC-12c/STM-4
state = Line Card Enabled
Slot 16 type = Clock Scheduler Card(6) OC-192
state = Card Powered
Slot 17 type = Clock Scheduler Card(6) OC-192
state = Card Powered PRIMARY CLOCK
Slot 18 type = Switch Fabric Card(6) OC-192
state = Card Powered
Slot 19 type = Switch Fabric Card(6) OC-192
state = Card Powered
Slot 20 type = Switch Fabric Card(6) OC-192
state = Card Powered
Slot 24 type = Alarm Module(6)
state = Card Powered
Slot 25 type = Alarm Module(6)
state = Card Powered
Slot 28 type = Blower Module(6)
state = Card Powered
Router#show diag summary
SLOT 0 (RP/LC 0 ): 1 Port SONET based SRP OC-12c/STM-4 Single Mode
SLOT 1 (RP/LC 1 ): 8 Port Fast Ethernet Copper
SLOT 2 (RP/LC 2 ): 1 Port E.D. Packet Over SONET OC-48c/STM-16 Single Mode/SR SC-SC connector
SLOT 3 (RP/LC 3 ): Route Processor
SLOT 4 (RP/LC 4 ): 4 Port E.D. Packet Over SONET OC-12c/STM-4 Multi Mode
SLOT 16 (CSC 0 ): Clock Scheduler Card(6) OC-192
SLOT 17 (CSC 1 ): Clock Scheduler Card(6) OC-192
SLOT 18 (SFC 0 ): Switch Fabric Card(6) OC-192
SLOT 19 (SFC 1 ): Switch Fabric Card(6) OC-192
SLOT 20 (SFC 2 ): Switch Fabric Card(6) OC-192
SLOT 24 (PS A1 ): AC PEM(s) + Alarm Module(6)
SLOT 25 (PS A2 ): AC PEM(s) + Alarm Module(6)
SLOT 28 (TOP FAN ): Blower Module(6)

问:我如何在GRP的Console口上对接口模块执行命令?
答:用命令:execute-on slot execute-on all

问:我如何连接到接口模块的console上?
答:在enable模式下,用命令attach ;在退出时执行命令exit。

问:我怎样诊断和测试接口模块?
答:用命令diag verbose。运行诊断命令时会中断该模块上的正常操作,如果诊断失败,接口模块会停留在down状态;如果想重新启动它,执行命令microcode reload 或命令hw-module slot reload。但诊断操作不会发现与SFC有关的问题。

问:什么命令可以显示出接口模块上的包缓冲区的使用情况?
答:用下面的两条命令:
execute-on slot show controllers tofab queues
execute-on slot show controllers frfab queues

问:show controllers frfab|tofab queues的输出结果中统计什么信息?
答:GSR中的包交换内存被分成两个部分ToFab和FrFab。ToFab是接口卡从网络上接收的的数据包要送到交换矩阵去,FrFab是从交换矩阵接收的数据要送到目的接口卡去。了解这两块内存的队列对排错十分重要!
下面我们结合命令解释一下命令中的参数:
LC-Slot1#show controllers tofab queues
Carve information for ToFab buffers
SDRAM size: 33554432 bytes, address: 30000000, carve base: 30029100
/* 这里标明tofab缓冲区的大小和内存的起始地址

33386240 bytes carve size, 4 SDRAM bank(s), 8192 bytes SDRAM pagesize, 2 carve(s)
max buffer data size 9248 bytes, min buffer data size 80 bytes
/* 最大和最小的的缓冲区的大小

40606/40606 buffers specified/carved
/* IOS划分的缓冲区的个数和实际缓冲区的个数

33249088/33249088 bytes sum buffer sizes specified/carved
Qnum- Head -Tail- #Qelem- LenThresh
---- ----- ------ ------- ---------
/* #Qelem是现在能够使用的缓冲区的队列的个数
5 non-IPC free queues:
/* 数据包缓冲区,在数据包抵达接口模块后会根据数据包的大小从中申请一个缓冲区,这个例子里我们看到两个缓冲区(80个字节和608字节)的情况。
20254/20254 (buffers specified/carved), 49.87%, 80 byte data size
/* 理论上/实际上80字节的缓冲区有20254个,49.87%的tofab被划分给80字节的缓冲区了,
1 ---------17297 --17296 ---20254 ---65535
12152/12152 (buffers specified/carved), 29.92%, 608 byte data size
2 -----20548 --20547 12152 --65535
.. .. ..
IPC Queue:
/* 保留的缓冲区,用来缓存接口模块和GRP之间的IPC(Inter-Process Communication)信息
100/100 (buffers ----specified/carved), 0.24%, 4112 byte data size
30 --72 ---71 --100 -65535
Raw Queue:
/* 当进入接口的数据包被分配了一个缓存区后,它被排队在一个raw的队列中。接口模块会按照FIFO的原则处理这个队列,如果raw queue中的#Qelem值太大说明有很多包在等待处理。表现出的具体问题就是在show interfaces的结果中的ignored错会不断增长。
31 -0 -17302 -0 -65535
ToFab Queues:
/* GSR路由器为了避免阻塞情况的出现,为每个目的接口模块定义个一个虚拟队列,另加一个组播队列。在接口模块作出转发决定后,数据包排队在tofab队列中。
Dest Slot
0 -0 -0 -0 -65535
1 --0 -0 -0 -65535
.. .. ..

LC-Slot1#show controller frfab queue
========= Line Card (Slot 2) =======
Carve information for FrFab buffers
SDRAM size: 16777216 bytes, address: 20000000, carve base: 2002D100
Raw Queue:
31- 0- 82--0 -65535
Interface Queues:
/* 与tofab队列不同(每个目的接口模块一个),interface queue是为每个接口定义一个队列,65535是tx-queue-limit值,在出口网络出现拥塞时可以调试这个参数改善性能。
0 0 -0 -0 -65535
1 0 -0 -0 -65535