이 문서에서는 show controller fab queue 및 show controller tofab queue 명령의 출력을 읽는 방법에 대해 설명합니다.또한 이러한 특별 대기열과 관련된 Cisco 12000 Series 인터넷 라우터의 기본 아키텍처에 대한 자세한 개요를 제공합니다.
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
이 문서에 대한 특정 요건이 없습니다.
이 문서의 정보는 다음을 기반으로 합니다.
Cisco 12000 Series 인터넷 라우터
모든 버전의 Cisco IOS® 소프트웨어
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.라이브 네트워크에서 작업하는 경우, 사용하기 전에 모든 명령의 잠재적인 영향을 이해해야 합니다.
Cisco 12000 Series 인터넷 라우터의 각 LC(Line Card)에는 두 가지 유형의 메모리가 있습니다.
경로 또는 프로세서 메모리(동적 RAM - DRAM):이 메모리를 사용하면 주로 온보드 프로세서가 Cisco IOS 소프트웨어를 실행하고 네트워크 라우팅 테이블(포워딩 정보 베이스 - FIB, 인접성)을 저장할 수 있습니다.
패킷 메모리(동기식 동적 RAM - SDRAM):라인 카드 패킷 메모리는 라인 카드 프로세서의 스위칭 결정을 기다리는 데이터 패킷을 임시로 저장합니다.
이 문서에서는 두 개의 뱅크로 분할되는 패킷 메모리에 대해서만 중점적으로 다룹니다.ToFab 및 FrFab(패브릭 및 패브릭에서) ToFab 메모리는 LC의 인터페이스 중 하나로 들어오는 패킷에 사용되며 패브릭으로 이동하는 반면 FrFab 메모리는 패브릭에서 LC의 인터페이스를 나가는 패킷에 사용됩니다.
Tofab 및 Fab 대기열은 Cisco 12000 Series 인터넷 라우터에서 무시된 패킷을 효율적으로 트러블슈팅하기 위해 이해하는 가장 중요한 개념입니다.자세한 내용은 Cisco 12000 Series 인터넷 라우터의 Troubleshooting Ignored Packets and No Memory Drops를 참조하십시오.
참고: "ToFab"(패브릭 방향) 및 "Rx"(라우터에서 수신)는 동일한 항목에 대해 "FrFab"(패브릭에서) 및 "Tx"(라우터에서 전송)와 같은 서로 다른 두 이름입니다. 예를 들어, ToFab 버퍼 관리 ASIC(BMA)는 RxBMA라고도 합니다.이 문서는 ToFab/FrFab 규칙을 사용하지만 다른 곳에서 사용되는 Rx/TX 명명법을 확인할 수 있습니다.
패킷 메모리에 대한 액세스는 BMA(Buffer Management ASIC)를 통해 이루어집니다. BMA는 라인 카드에 패킷 버퍼링 및 버퍼 대기열 관리 기능을 제공합니다.모든 패킷은 BMA를 두 번 통과하며, 한 번 들어오고 한 번 나가면 됩니다.즉, 패킷은 PLIM(Physical Layer Interface Module)에 도착하여 SDRAM 버퍼에 짧은 시간을 보낸 다음 버퍼에서 읽혀져 FIA(Fabric Interface ASIC) 모듈에 전달됩니다.여기서는 Cisco 셀로 분할되어 스위치 패브릭으로 전송됩니다.그런 다음 이그레스 라인 카드의 패브릭 인터페이스 ASIC에서 스위치 패브릭에서 패킷을 수신합니다.리어셈블되고, SDRAM 버퍼로 이동한 다음 PLIM으로 이동한 다음 마지막으로 와이어로 전송됩니다.
Cisco IOS 소프트웨어는 SDRAM을 다양한 크기의 버퍼로 나누는 버퍼 분할 알고리즘을 구현합니다.GRP와 기타 출처는 라인 카드에 대해 각주 지침을 제공하고, 이 지침을 실행합니다.카브에는 다양한 종류가 있습니다.예를 들어 단순 조각은 크기가 동일한 버퍼의 풀을 생성하는 반면, 복잡한 조각은 크기가 서로 다른 여러 풀을 생성하는 반면, 각 풀은 크기가 같은 버퍼를 포함합니다.
같은 크기의 모든 버퍼가 하나의 풀에 연결됩니다.하나의 풀은 항상 IPC(Inter-Process Communication) 사용을 위해 할당됩니다.연결된 각 QSRAM(Queue Static RAM)은 큐 헤드, 꼬리, 길이, 길이 임계값, SDRAM의 관련 버퍼 주소 및 다음 큐 요소로 업데이트됩니다.
다음 순차적 조건은 라인 카드에 버퍼 조각을 트리거합니다.
MBUS(Maintenance BUS)를 통한 부팅 - Cisco IOS 소프트웨어 이미지 다운로드를 보류하기 위해 버퍼를 조각하는 간단한 조각 호출
Cisco IOS 소프트웨어 이미지 배치 - GRP가 IPC를 사용하여 LC에 초기 조각 사양을 제공할 수 있도록 IPC(Inter-Process Communication)를 활성화하는 LC 단순 조각 호출조각할 수 있는 모든 SDRAM이 복원되었습니다.
IPC가 작동되면 - IPC를 사용하여 GRP는 LC 복합 조각을 여러 번 호출하여 모든 SDRAM을 동적으로 복구할 수 있습니다.
한 인터페이스에서 MTU(Maximum Transmission Unit)를 수동으로 구성하거나 변경하면 메모리가 복구됩니다.FrFab 대기열은 전체 시스템의 최대 MTU까지 분할되는 반면, ToFab 대기열은 특정 라인 카드의 최대 MTU까지 분할됩니다.
참고: 라인 카드(ToFab 대기열)의 최대 MTU를 변경하거나 전체 시스템(FrFab 대기열)의 최대 MTU를 변경하는 경우에만 복구됩니다. 예를 들어 MTU를 1500에서 4470으로 변경해도 해당 라인 카드(ToFab 큐)에 MTU 4470이 이미 있는 인터페이스나 전체 시스템(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
이 라인 카드가 작동되고 실행 중인 이후로 2개의 카브가 있었고 4개의 풀이 있습니다.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
이제 3개의 카브가 있으며 비 IPC 대기열의 최대 버퍼 크기는 4544바이트가 아니라 2048바이트입니다.
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 대기열에는 4개의 카브가 있으며 최대 버퍼 크기는 10064바이트로 변경되었습니다.
참고: PPP(Point-to-Point Protocol) 캡슐화로 구성된 POS(Packet Over Sonet) 라인 카드에서는 MRU(Maximum Receive Unit) 협상이 발생하지만 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바이트, 주소:30000000, 조각 기준:30029100 - 수신 패킷 메모리의 크기 및 패킷 메모리가 시작되는 주소 위치입니다.
max buffer data size 9248bytes, min buffer data size 80bytes - 최대 및 최소 버퍼 크기입니다.
40606/40606 버퍼 지정/조각됨 - Cisco IOS 소프트웨어에서 지정하는 버퍼와 실제로 조각한 버퍼 수입니다.
non-IPC free queues - 비 IPC 버퍼 풀은 패킷 버퍼 풀입니다.라인 카드에 도착하는 패킷은 패킷 크기에 따라 이러한 버퍼 풀 중 하나에서 버퍼가 할당됩니다.IPC가 아닌 큐는 3개만 가질 수 있습니다.보드가 이더넷인 경우 4k 풀이 아니라 최대 1.5k의 풀만 사용할 수 있습니다.이는 ToFab 대기열이 특정 라인 카드의 MTU(최대 전송 단위)에 기록되기 때문입니다.예제 출력에는 크기가 80, 608, 1568, 4544 및 9248바이트인 5개의 패킷 버퍼 풀이 나와 있습니다.각 풀에 대해 자세한 내용은 다음과 같습니다.
20254/20254(버퍼 지정/조각화), 49.87%, 80바이트 데이터 크기 - 수신 패킷 메모리의 49.87%가 20254 80바이트 버퍼에 기록되었습니다.
Qnum - 대기열 번호입니다.
#Quelem - 현재 해당 대기열에 할당된 버퍼 수입니다.사용 가능한 대기열이면 시스템에서 이러한 버퍼를 사용할 수 있습니다.ToFab 대기열이나 전송 대기열인 경우 시스템에서 이러한 버퍼를 사용할 수 없습니다.이 열은 백업할 큐를 확인합니다.
Head and Tail(헤드 및 테일) - 헤드와 테일 메커니즘을 사용하여 대기열이 제대로 이동하는지 확인합니다.
IPC Queue - LC에서 GRP로의 프로세스 간 통신 메시지에 예약됩니다.
Raw Queue - 수신 패킷에 비 IPC 사용 가능 대기열에서 버퍼가 할당되면 원시 대기열에 추가됩니다.Raw 대기열은 인터럽트 중에 LC CPU에서 처리하는 First In, First Out(FIFO)입니다."Raw Queue" 행의 #Qelem 열에 매우 큰 숫자가 표시되면 CPU에서 대기 중인 패킷이 너무 많으므로 CPU에서 로드를 따라잡을 수 없으므로 해당 패킷은 무시되기 시작합니다.하지만 이것은 매우 드문 일입니다.
ToFab 큐 - 가상 출력 대기열목적지 슬롯당 1개 + 멀티캐스트 트래픽용 1개이전 예제의 마지막 부분에서는 15개의 가상 출력 대기열을 보여 줍니다.12012 라우터이며 원래 15슬롯 섀시로 설계되었습니다.대기열 13~15는 사용되지 않습니다.
인그레스 라인 카드 CPU가 패킷 스위칭을 결정한 후 패킷이 목적지인 슬롯에 해당하는 가상 출력 대기열에서 패킷이 대기열에 추가됩니다.네 번째 열의 숫자는 가상 출력 대기열에서 현재 대기열에 추가된 패킷 수입니다.
1단계 - 패킷이 PLIM(Physical Layer Interface Module)으로 들어갑니다. 패킷이 수신 및 처리되면 DMA(Direct Memory Access)가 "First In, First Out (FIFO) burst memory"라는 작은(약 2 x MTU(Maximum Transmission Unit) 버퍼) 메모리에 들어갑니다. 이 메모리의 양은 LC의 유형(128KB에서 1MB)에 따라 달라집니다.
2단계 - 패킷이 FIFO 메모리에 완전히 있으면 PLIM의 ASIC(Application-specific integrated circuit)가 BMA(Buffer Management ASIC)에 연결하여 패킷을 넣을 버퍼를 요청합니다.BMA는 패킷의 크기를 알려주고 그에 따라 버퍼를 할당합니다.BMA가 올바른 크기의 버퍼를 가져올 수 없으면 패킷이 삭제되고 수신 인터페이스에서 "무시됨" 카운터가 증가합니다.다른 플랫폼과 달리 대체 메커니즘은 없습니다.
3단계 - 이 과정이 진행되는 동안 PLIM은 FIFO 버스트 메모리에서 다른 패킷을 수신하고 있을 수 있으며, 따라서 PLIM은 2xMTU 크기입니다.오른쪽 대기열에 사용 가능한 버퍼가 있는 경우 해당 패킷은 BMA가 해당 크기의 사용 가능한 대기열 목록에 저장합니다.이 버퍼는 라인 카드 스위칭 엔진 유형에 따라 Salsa ASIC 또는 R5K CPU에서 검사하는 원시 대기열에 배치됩니다.
4단계 - 엔진 0 LC에서 R5K CPU는 DRAM의 로컬 분산 Cisco Express Forwarding(dCEF) 테이블을 참조하여 패킷의 대상을 결정합니다.그런 다음 버퍼를 Raw Queue에서 대상 슬롯에 해당하는 ToFabric 대기열로 이동합니다.목적지가 dCEF 테이블에 없으면 패킷이 삭제됩니다.패킷이 제어 패킷(예: 라우팅 업데이트)인 경우 GRP의 대기열에 추가되고 GRP에서 처리됩니다.12016 라우터에는 17개의 ToFab 큐(16개의 유니캐스트 및 1개의 멀티캐스트)가 있습니다.
5단계 - ToFab BMA는 버퍼를 적절한 ToFab 대기열로 대기열에 넣습니다.이 시점에서 버퍼가 가져온 풀의 #Qelem 카운터가 1씩 감소하고 ToFab 큐 카운터가 1씩 증가합니다.
참고: 라인 카드당 하나의 ToFab 대기열이 있습니다(GRP 포함). 이러한 대기열을 VOQ(Virtual Output Queues)라고 합니다. 이러한 기능은 Head-of-Line 차단을 피하는 데 중요합니다.
6단계 - FIA(Fabric Interface ASIC)는 출력 대기열이 비어 있지 않음을 확인합니다.FIA는 패킷을 48바이트 셀로 분할하도록 설정됩니다.8바이트 헤더가 패킷에 추가되고 56바이트 Cisco 셀이 스위치 패브릭을 통해 전송됩니다.
Transmit packet memory는 스위치 패브릭에서 들어오는 패킷을 저장하고 물리적 인터페이스로 전송을 대기 중입니다.이 메모리는 다양한 크기의 풀에도 장착됩니다.
GRP에서 라인 카드에 연결하고 show controller fab 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입니다.이 숫자는 모든 대기열의 최대 길이를 제어하며 Engine 0 라인 카드에서 TX-queue limit 명령을 통해 조정할 수 있습니다.약간의 혼잡이 발생하는 경우 이 명령을 사용하여 이그레스 LC가 해당 특정 포트에 대해 인터페이스 대기열에 구성된 패킷 수보다 많은 패킷을 버퍼링하지 않도록 할 수 있습니다.이 인터페이스에 대한 모든 FrFab 대기열을 포함하지 않도록 이 숫자를 충분히 낮게 구성해야 합니다.그러나 이 조정에서는 아웃바운드 LC에서 어떤 패킷이 삭제되는지 제어할 수 없습니다.자세한 내용은 Cisco 12000 Series 인터넷 라우터의 Troubleshooting Ignored Packets and No Memory Drops를 참조하십시오.
이 시점에서 Cisco 셀은 FIA에 의해 스위치 패브릭을 통해 전송되었습니다.
1단계 - 이 Cisco 셀은 FrFab FIA의 FIFO에 DMA를 추가한 다음 FrFab BMA의 버퍼에 들어갑니다.FrFab BMA는 실제로 셀을 패킷으로 재결합하는 것입니다.
FrFab BMA는 셀을 리어셈블하기 전에 어느 버퍼를 넣을 것인지 어떻게 알 수 있습니까?이는 수신 라인 카드 스위칭 엔진에서 결정한 또 다른 결정입니다.전체 상자의 모든 대기열은 크기가 같고 순서가 같기 때문에 스위칭 엔진은 전송 LC에 패킷을 라우터에 입력한 것과 동일한 번호 대기열에 넣도록 지시합니다.
FrFab BMA SDRAM 대기열은 LC에서 show controller frb queue 명령을 사용하여 볼 수 있습니다.
2단계 - 이 단계는 기본적으로 ToFab BMA 출력과 동일합니다.패킷이 수신되고 해당 여유 대기열에서 제거된 패킷에 배치됩니다.이러한 패킷은 FrFab 대기열에 배치되고 인터페이스 대기열(물리적 포트당 하나의 대기열)이나 출력 처리를 위한 rawQ에 대기열에 추가됩니다.rawQ에서는 별로 일어나지 않습니다.포트별 멀티캐스트 복제, MDRR(Modified Defense Round Robin) - DWFQ(Distributed Weighted Fair Queuing) 및 CAR(Committed Access Rate)와 같은 개념입니다. 전송 큐가 가득 차면 패킷이 삭제되고 출력 드롭 카운터가 증가합니다.
3단계 - FrFab BMA는 PLIM의 TX 부분이 패킷을 전송할 준비가 될 때까지 기다립니다.FrFab BMA는 실제 MAC(Media Access Control)을 재작성하고(Cisco Cell 헤더에 포함된 정보를 기반으로, 기억), DMA를 PLIM 회로의 소형(다시 2xMTU) 버퍼로 패킷을 재작성합니다.PLIM은 ATM(Asynchronous Transfer Mode) SAR(Segmentation and Reassembly) 및 SONET(Synchronous Optical Network) 캡슐화를 적절하게 수행하고 패킷을 전송합니다.