路由器 : 思科 12000 系列路由器

如何解读show controller frfab的输出|在Cisco 12000系列互联网路由器体系结构的tofab queue 命令

2015 年 8 月 28 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 4 月 22 日) | 反馈


目录


简介

本文解释如何阅读show controller frfab queueshow controller tofab queue命令的输出。它也给予Cisco 12000SERIES互联网路由器的底层体系结构的详细概要与这些特殊队列涉及的。

开始使用前

规则

有关文档规则的详细信息,请参阅 Cisco 技术提示规则

先决条件

本文档没有任何特定的前提条件。

使用的组件

本文档中的信息基于:

  • Cisco 12000SERIES互联网路由器

  • 思科IOS�软件所有版本

本文档中的信息都是基于特定实验室环境中的设备创建的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您是在真实网络上操作,请确保您在使用任何命令前已经了解其潜在影响。

背景

每线卡(LC)在Cisco 12000SERIES互联网路由器有内存的两种类型:

  • 路由或处理器内存(动态RAM - DRAM) :此内存使主要内置处理器运行Cisco IOS软件和存储网络路由表(转发信息库- FIB,邻接)。

  • 数据包内存(同步动态RAM - SDRAM) :线路卡信息包内存临时地存储等候交换决定的数据包由线路卡处理器。

本文完全着重分开成两个内存段的数据包内存:Tofab和Frfab (往结构和从结构)。ToFab内存使用进来其中一个在LC的接口并且设法去结构的数据包,而Frfab内存使用出去在LC的一个接口从结构的数据包。

TofabFrfab队列是要了解的最重要的概念为了高效地排除故障在Cisco 12000SERIES互联网路由器的已忽略的数据包。请勿请参阅故障排除已忽略的数据包和内存丢包在Cisco 12000SERIES互联网路由器关于详细信息。

注意: “Tofab” (往结构)和“Rx” (接收由路由器)是两不同的名称对于同一件事,象“Frfab” (从结构)和“Tx” (传送由路由器)。例如, Tofab缓冲区管理ASIC (BMA)也指RxBMA。本文档使用了 ToFab/FrFab 命名规则,但您可能会在其他地方看到使用 Rx/Tx 命名规则。

对数据包内存的访问通过缓冲区管理ASIC (BMA)做。BMA提供数据包缓冲和缓冲区队列管理管理功能给线卡。所有信息包通过两次BMA -一次进来和一次出去。换句话说,数据包在物理层接口模块(PLIM)到达,花费在SDRAM缓冲区的少量的时刻和然后读在缓冲区外面并且传送对矩阵接口ASIC (FIA)模块。这里,他们被分段到思科信元并且传送对交换矩阵。数据包从交换矩阵然后接收由在出口线路卡的矩阵接口ASIC。他们被重新召集,去SDRAM缓冲区,然后PLIM和终于传送电线。

分开缓冲区算法

Cisco IOS软件实现分开SDRAM成各种各样大小的缓冲区的缓冲分割算法。GRP和其他来源提供雕刻说明给线卡,然后执行说明。有不同种类的雕刻。例如,简单划分创建同样大小缓冲区的池,而复杂划分创建不同的大小的多个池,当每个池包含相同大小的缓冲区。

相同大小的所有缓冲区在一个池关联。一个池为进程间通信(IPC)使用情况总是分配。其中每一相关的Queue Static RAM (QSRAM)更新与队列题头、尾标、长度、长度阈值、相关的缓冲区地址在SDRAM和下个队列元素。

以下连续的条件触发雕刻在线卡的缓冲区:

  • 在维护总线(MBUS)的Bootload -雕刻缓冲区的简单划分呼叫保持Cisco IOS软件镜像下载。

  • 到位Cisco IOS软件镜像- LC启用进程间通信(IPC)的简单划分呼叫,以便GRP能使用IPC给LCs最初的雕刻规格。雕刻的所有SDRAM联机重新切开。

  • 一旦IPC是UP -使用IPC, GRP能多次呼叫LC复杂划分动态地重新切开所有SDRAM。

  • MTU的手动配置或更改(最大传输单元(MTU))在一个接口造成内存重新切开。Frfab队列被分割对全部的系统的最大值MTU,而Tofab队列被分割对特定的线路卡的最大值MTU。

    注意: 我们只重新切开,如果我们更改线卡的(Tofab队列)最大值MTU,或者,如果我们更改全部的系统的(Frfab队列)最大值MTU。例如,更改从1500的MTU到4470不更改什么,如果已经有与MTU 4470的一个接口在该线卡(Tofab队列)或总体上系统(Frfab队列)。

看一看在以下示例:

Router#attach 1
Entering Console for 1 Port Packet Over SONET OC-48c/STM-16 in Slot: 1
Type "exit" to end this session


Press RETURN to get started!


LC-Slot1>enable
LC-Slot1#show controllers tofab queues
Carve information for ToFab buffers
SDRAM size: 268435456 bytes, address: 30000000, carve base: 30019100
268332800 bytes carve size,  4 SDRAM bank(s), 16384 bytes SDRAM
pagesize, 2 carve(s)
    max buffer data size 4544 bytes, min buffer data size 80 bytes
    262140/262140 buffers specified/carved
    240637152/240637152 bytes sum buffer sizes specified/carved

         Qnum    Head    Tail            #Qelem  LenThresh
         ----    ----    ----            ------  ---------

    4 non-IPC free queues:

        115254/115254 (buffers specified/carved), 43.96%, 80 byte data size
         1       201     115454          115254  262143

         81202/81202 (buffers specified/carved), 30.97%, 608 byte data size
         2       115455  196656          81202   262143

        41910/41910 (buffers specified/carved), 15.98%, 1568 byte data size
         3       196657  238566          41910   262143

         23574/23574 (buffers specified/carved), 8.99%, 4544 byte data size
         4       238567  262140          23574   262143

    IPC Queue:
         200/200 (buffers specified/carved), 0.7%, 4112 byte data size
         30      131     130             200     262143

    Raw Queue:
         31      0       0               0       65535

    ToFab Queues:
         Dest
        Slot
        0       0       0               0       262143
        1       0       0               0       262143
        2       0       0               0       262143
        3       0       0               0       262143
        4       0       0               0       262143
        5       0       0               0       262143
        6       0       0               0       262143
        7       0       0               0       262143
        8       0       0               0       262143
        9       0       0               0       262143
        10      0       0               0       262143
        11      0       0               0       262143
        12      0       0               0       262143
        13      0       0               0       262143
        14      0       0               0       262143
        15      0       0               0       262143
  Multicast     0       0               0       262143

您能看到有两个雕刻,因为此线卡是正在运行的,并且有四个池:80, 608, 1568和4544。

现在请更改在属于此线卡的一个接口的MTU :

Router(config)#interface pos1/0
Router(config-if)#mtu ?
<64-18020>  MTU size in bytes

Router(config-if)#mtu 2000

现在请连接对LC并且检查什么更改:

LC-Slot1#show control tofab queue
Carve information for ToFab buffers
   SDRAM size: 268435456 bytes, address: 30000000, carve base: 30019100
   268332800 bytes carve size,  4 SDRAM bank(s), 16384 bytes SDRAM
pagesize, 3 carve(s)
    max buffer data size 4112 bytes, min buffer data size 80 bytes
    262142/262142 buffers specified/carved
    247054400/247054400 bytes sum buffer sizes specified/carved

         Qnum    Head    Tail            #Qelem  LenThresh
         ----    ----    ----            ------  ---------

    4 non-IPC free queues:

         91680/91680 (buffers specified/carved), 34.97%, 80 byte data size
         1       202     201             91680   262143

         65485/65485 (buffers specified/carved), 24.98%, 608 byte data size
         2       91884   91883           65485   262143

         49769/49769 (buffers specified/carved), 18.98%, 1568 byte data size
         3       157366  207134          49769   262143

         55008/55008 (buffers specified/carved), 20.98%, 2048 byte data size
         4       207135  262142          55008   262143

    IPC Queue:
         200/200 (buffers specified/carved), 0.7%, 4112 byte data size
         30      118     117             200     262143

    Raw Queue:
         31      206     205             0       65535

    ToFab Queues:
         Dest
         Slot
         0       0       0               0       262143
         1       0       0               0       262143
         2       0       0               0       262143
         3       0       0               0       262143
         4       0       0               0       262143
         5       0       0               0       262143
         6       0       0               0       262143
         7       206     205             0       262143
         8       0       0               0       262143
         9       0       0               0       262143
         10      0       0               0       262143
         11      0       0               0       262143
         12      0       0               0       262143
         13      0       0               0       262143
         14      0       0               0       262143
         15      0       0               0       262143
  Multicast      0       0               0       262143

当前有三个雕刻,并且非IPC队列的最大缓冲区空间是2048个字节而不是4544。

Frfab队列保持不可更改:

LC-Slot1#show controllers frfab queues
 Carve information for FrFab buffers
    SDRAM size: 268435456 bytes, address: 20000000, carve base: 2039D100
    264646400 bytes carve size,  4 SDRAM bank(s), 16384 bytes SDRAM
pagesize, 3 carve(s)
    max buffer data size 9248 bytes, min buffer data size 80 bytes
    251927/251927 buffers specified/carved
    209883344/209883344 bytes sum buffer sizes specified/carved

         Qnum    Head    Tail            #Qelem  LenThresh
         ----    ----    ----            ------  ---------

    6 non-IPC free queues:

         123349/123349 (buffers specified/carved), 48.96%, 80 byte data size
         1       210     209             123349  262143

         75519/75519 (buffers specified/carved), 29.97%, 608 byte data size
         2       123552  123551          75519   262143

         37759/37759 (buffers specified/carved), 14.98%, 1568 byte data size
         3       199069  236827          37759   262143

         2516/2516 (buffers specified/carved), 0.99%, 2048 byte data size
         4       236828  239343          2516    262143

         7551/7551 (buffers specified/carved), 2.99%, 4544 byte data size
         5       239344  246894          7551    262143

         5033/5033 (buffers specified/carved), 1.99%, 9248 byte data size
         6       246895  251927          5033    262143

    IPC Queue:
         200/200 (buffers specified/carved), 0.7%, 4112 byte data size
         30      52      51              200     262143

    Multicast Raw Queue:
         29      0       0               0       62981

    Raw Queue:
         31      52      51              0       251928

    Interface Queues:
         0       210     209             0       262143

最大缓冲区空间是9248个字节。现在,请配置MTU 10000在另一个卡的其他一个接口:

 Router(config-if)#interface pos5/0
 Router(config-if)#mtu ?
   <64-18020>  MTU size in bytes

 Router(config-if)#mtu 10000


 LC-Slot1#show contr frfab queues
 Carve information for FrFab buffers
    SDRAM size: 268435456 bytes, address: 20000000, carve base: 2039D100
    264646400 bytes carve size,  4 SDRAM bank(s), 16384 bytes SDRAM
pagesize, 4 carve(s)
    max buffer data size 10064 bytes, min buffer data size 80 bytes
    257309/257309 buffers specified/carved
    213496016/213496016 bytes sum buffer sizes specified/carved

         Qnum    Head    Tail            #Qelem  LenThresh
         ----    ----    ----            ------  ---------

    5 non-IPC free queues:

         128556/128556 (buffers specified/carved), 49.96%, 80 byte data size
         1       204     203             128556  262143

         77133/77133 (buffers specified/carved), 29.97%, 608 byte data size
         2       128758  128757          77133   262143

         38566/38566 (buffers specified/carved), 14.98%, 1568 byte data size
         3       205890  244455          38566   262143

         7713/7713 (buffers specified/carved), 2.99%, 4544 byte data size
         4       244456  252168          7713    262143

         5141/5141 (buffers specified/carved), 1.99%, 10064 byte data size
         5       252169  257309          5141    262143

    IPC Queue:
         200/200 (buffers specified/carved), 0.7%, 4112 byte data size
         30      24      23              200     262143

    Multicast Raw Queue:
         29      0       0               0       64327

    Raw Queue:
         31      24      23              0       257310

    Interface Queues:
         0       205     204             0       262143

当前有Frfab队列的四个雕刻,并且最大缓冲区空间更改对10064个字节。

注意: 在SONET上的分组(POS)线卡配置与点对点协议(PPP)封装,最大接收单元(MRU)协商发生,但是不调节MTU大小。而且,当MTU在接口时,更改PPP连接没有重置。

接收 信息包 内存

此内存被雕刻到数据包缓冲的不同的池。要看到接收内存如何被雕刻,您能附加到线卡和执行show controller tofab queue命令,如下所示:

Router#attach ?
<0-15>  slot number of linecard to connect 
<cr>

Router#attach 1
Entering Console for 1 Port SONET based SRP OC-12c/STM-4 in Slot: 1 
Type "exit" to end this session   
Press RETURN to get started!   
LC-Slot1>enable
LC-Slot1# 
LC-Slot1#show controllers tofab queues
Carve information for ToFab buffers
   SDRAM size: 33554432 bytes, address: 30000000, carve base: 30029100 
   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   
   33249088/33249088 bytes sum buffer sizes specified/carved   
        Qnum    Head    Tail        #Qelem     LenThresh
        ----    ----    ----        ------     ---------   
   5 non-IPC free queues:   

        20254/20254    (buffers specified/carved), 49.87%, 80 byte data size   
        1       17297   17296       20254      65535   

        12152/12152    (buffers specified/carved), 29.92%, 608 byte data size   
        2       20548   20547       12152      65535   

        6076/6076    (buffers specified/carved), 14.96%, 1568 byte data size   
        3       32507   38582       6076       65535   

        1215/1215    (buffers specified/carved), 2.99%, 4544 byte data size   
        4       38583   39797       1215       65535   

        809/809    (buffers specified/carved), 1.99%, 9248 byte data size   
        5       39798   40606       809        65535   

   IPC Queue: 
        100/100 (buffers    specified/carved), 0.24%, 4112 byte data size 
        30      72      71          100        65535  
 
   Raw  Queue:
        31      0       17302       0          65535   

   ToFab Queues:   
           Dest 
        Slot   
        0       0       0           0          65535 
        1       0       0           0          65535
        2       0       0           0          65535
        3       0       0           0          65535 
        4       0       0           0          65535 
        5       0       17282       0          65535 
        6       0       0           0          65535
        7       0       75          0          65535
        8       0       0           0          65535
        9       0       0           0          65535
        10      0       0           0          65535 
        11      0       0           0          65535 
        12      0       0           0          65535 
        13      0       0           0          65535 
        14      0       0           0          65535
        15      0       0           0          65535
 Multicast      0       0           0          65535 
LC-Slot1#

以下列表描述在前一个示例被找到的某些密钥字段:

  • SDRAM容量:33554432 bytes, address:30000000, carve base:30029100 - 接收数据包内存的大小和开始接收的地址位置。

  • max buffer data size 9248 bytes, min buffer data size 80 bytes - 缓冲区大小的最大值和最小值。

  • 40606/40606 buffers specified/carved -将被雕刻的缓冲区由Cisco IOS软件和实际上划分的缓冲区数指定。

  • 非IPC自由队列-非IPC缓冲池是信息包缓冲池。到达数据包到线卡里从这些缓冲池之一分配缓冲区根据数据包的大小。有三个非IPC自由队列只是可能的;如果板是以太网,您不会有4k池,然而仅一个池至1.5k。这是因为Tofab队列被分割对该特定的线路卡最大传输单元(MTU)。示例输出显示了 5 个数据包缓冲池,大小分别为 80、608、1568、4544 和 9248 字节。对于每个池,更多详细信息如下给:

    • 20254/20254 (buffers specified/carved), 49.87%, 80字节数据大小- 49.87%接收信息包内存被雕刻了到20254 80字节缓冲区。

    • Qnum - 队列编号。

    • #Qelem -当前分配到该队列的缓冲区数。如果它是自由队列,则这些缓冲区对系统是可用的。如果它是Tofab队列或传输队列,这些缓冲区对系统不是可用的。这一列用于查看哪个队列进行了备份。

    • Head and Tail - 头尾机制用于确保队列正确移动。

  • IPC队列-保留为从LC的进程间通信消息到GRP。

  • Raw Queue - 从非 IPC 自由队列中分配了一个缓冲区给传入数据包后,该数据包将排入原始队列。自然状态的队列是LC CPU处理的先入先出(FIFO)在中断期间。如果看到在" Raw Queue "行的#Qelem列的非常大量,有过多的数据包等待在CPU的您,并且他们将开始获得忽略,因为CPU不能跟上负载。然而,这是非常少见的。

  • ToFab Queue - 虚拟输出队列;每个目标插槽一个,还有一个用于多播数据流。前一个示例的最后一部分显示15虚拟输出队列。这是12012路由器,最初设计作为15 SLOT机箱;没有使用队列13至15。

在入口线路卡CPU做出一个分组交换决策后,数据包在虚拟输出输出队列被排列与数据包是注定的slot相应。第 4 列中的数字为当前排入虚拟输出队列的数据包数量。

ToFab BMA 中的数据包流

Step1 -数据包进入物理层接口模块(PLIM)。因为数据包接收并且处理,它是DMA'd (直接存储器访问)到呼叫“先入先出(FIFO)分段存储的”一个小(大约2个x最大传输单元(MTU)缓冲区)内存。相当数量此内存取决于LC种类(从128 KB到1 MB)。

步骤2 -当数据包完全在FIFO内存时,在PLIM的application-specific integrated circuit (ASIC)与缓冲区管理ASIC (BMA)联系并且请求缓冲区放置数据包。BMA告诉什么大小数据包是,并且相应地分配缓冲区。如果BMA不能获得适当大小的缓冲区,数据包丢弃,并且"ignored"计数器在流入接口被增加。没有回退机制如同一些其他平台。

步骤3 -当这继续时, PLIM可能接收在FIFO突发内存的另一数据包,是它为什么在大小上是2xMTU。如果有在正确队列的一空闲缓存联机,数据包由在适当的大小的自由队列列表的BMA存储。此缓冲区在自然状态的队列被放置,由萨尔萨ASIC或R5K CPU检查,根据线路卡交换引擎类型。

步骤4 -在引擎0 LC, R5K CPU通过咨询其在DRAM的本地Distributed Cisco Express Forwarding (DCEF)表确定数据包的目的地。它然后移动从自然状态的队列的缓冲区向ToFabric队列与目的地地址槽相应。如果目的地不在dCEF表里,数据包丢弃。如果数据包是控制数据包(例如,路由更新),排队对GRP的队列和由GRP处理。在12016路由器上,有17个Tofab队列(16单播,加上一组播)。

步骤5 - Tofab BMA排队缓冲区到适当的ToFab队列。这时,在池的#Qelem计数器缓冲区自减退获得了一个,并且Tofab队列计数器增加一个。

注意: 有每线卡一个Tofab队列(这包括GRP)。这些队列叫作虚拟输出队列(VOQs)。这些对避免head-of-line封闭是重要。

步骤6 -矩阵接口ASIC (FIA)看到输出队列非空。FIA设置分段数据包到48字节信元。8字节报头被添加在数据包上,并且56字节思科信元在交换矩阵间被发送。

传输数据包内存

平湖数据包内存存储来自交换矩阵和等候发射的数据包对物理接口。此内存也被雕刻到多种大小的池。

从GRP,您能附加到线卡和执行show controller frfab queue命令显示传输数据包内存。除字段之外在Tofab输出中, Frfab输出显示" Interface Queues "部分。该命令的输出因传出 LC 上的接口类型和数量而异。

一个这样队列为在线卡的每个接口存在。从特定接口发出的数据包将排入对应的接口队列上。

LC-Slot1#show controller frfab queue
========= Line Card (Slot 2) =======
Carve information for FrFab buffers
   SDRAM size: 16777216 bytes, address: 20000000, carve base: 2002D100
   16592640 bytes carve size, 0 SDRAM bank(s), 0 bytes SDRAM pagesize, 2 carve(s)
   max buffer data size 9248 bytes, min buffer data size 80 bytes
   20052/20052 buffers specified/carved
   16581552/16581552 bytes sum buffer sizes specified/carved   
        Qnum    Head       Tail               #Qelem  LenThresh
        ----    ----       ----               ------  ---------

   5 non-IPC free queues:   
        9977/9977 (buffers    specified/carved), 49.75%, 80 byte data size   
        1       101        10077              9977    65535   

        5986/5986 (buffers    specified/carved), 29.85%, 608 byte data size
        2       10078      16063              5986    65535   

        2993/2993 (buffers    specified/carved), 14.92%, 1568 byte data size
        3       16064      19056              2993    65535   

        598/598 (buffers    specified/carved), 2.98%, 4544 byte data size
        4       19057      19654              598     65535 
 
        398/398 (buffers    specified/carved), 1.98%, 9248 byte data size
        5       19655      20052              398     65535  
 
   IPC Queue:
        100/100 (buffers    specified/carved), 0.49%, 4112 byte data size
        30      77         76                 100     65535  
 
   Raw Queue:
        31      0          82                 0       65535  
  
   Interface Queues:
        0       0          0                  0       65535  
        1       0          0                  0       65535 
        2       0          0                  0       65535
        3       0          0                  0       65535

以下列表描述在前一个示例被找到的某些密钥字段:

  • 非IPC自由队列:这些队列是不同的大小的信息包缓冲池。当数据包在结构时接收,一适当大小的缓冲区从这些队列之一被采取,数据包复制到它,并且缓冲区在适当的输出接口队列被放置。

    注意: 有许多个池当必要时为整个路由器。结果, Frfab队列被分割对全部的系统的最大值MTU。这为被分割对特定的线路卡的最大值MTU的Tofab队列是不同的。

  • IPC队列:保留为从GRP的进程间通信消息到LC。

  • 接口队列:这些队列是为接口,不为插槽编号。最后编号(65535)是tx-queue-limit。此数字控制最大长度所有队列,并且可以由TX-queue limit命令调整在引擎0线卡。如果发生若干拥塞,此命令比数据包配置的号码可以用于防止出口LC缓冲更多在接口队列的该特定端口的。确保您配置足够此编号低,以便不包含此接口的所有Frfab队列。然而,调整的这不提供数据包在出站LC被撤销的控制。请勿请参阅故障排除已忽略的数据包和内存丢包在Cisco 12000SERIES互联网路由器关于详细信息。

FrFab BMA 中的数据包流

这时,思科信元在交换矩阵传送由FIA。

Step1 -这些思科信元是DMA'd到在Frfab FIAs的FIFO,然后到在Frfab BMA的一缓冲区。Frfab BMA是实际上执行信元重组到数据包的那个。

Frfab BMA如何知道在放置信元的哪缓冲区,在重新召集他们前?这是流入线路卡交换引擎做出的另一决定。因为在整个方框的所有队列是相同大小和按同一顺序,交换引擎在进入路由器的同一个编号队列告诉传送的LC放置数据包。

Frfab BMA SDRAM队列可以用show controller frfab queue命令查看在LC。

步骤2 -此步骤基本上是相同的象Tofab BMA输出。数据包在从他们的各自自由队列离队的数据包进来和安置。这些数据包在接口队列(有每个物理端口一个队列)或输出处理的rawQ被放置到Frfab队列,并且被排列。并非在rawQ发生:每端口组播复制、改进的差额轮询(MDRR) -想法和分布式加权公平排队(DWFQ)一样和输出承诺接入速率(CAR)。如果传输队列满,数据包丢弃,并且输出丢弃计数器被增加。

步骤3 - Frfab BMA等待,直到PLIM的TX部分准备发送数据包。Frfab BMA执行实际媒体访问控制(MAC)重写(基于,请记住,在思科信元头包含的信息)和DMA数据包到在PLIM电路的一小(再, 2xMTU)缓冲区。PLIM执行异步传输模式(ATM)分段和重组(SAR)和同步光网络(SONET)封装,只要适合的话,并且传送数据包。

相关的思科支持社区讨论

思科支持社区是您提问、解答问题、分享建议以及与工作伙伴协作的论坛。


相关信息


Document ID: 18002