El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
Este documento describe cómo resolver problemas de reenvío de paquetes en la red de acceso instantáneo de la serie Catalyst 6500/6880.
Se recomienda que el usuario sea plenamente consciente del diseño, el formato VNTAG y la lógica de reenvío de paquetes para la red basada en Instant Access.
Puede encontrar información adicional sobre la arquitectura Instant Access para Catalyst 6500/6880 Instant Access en:
Informe técnico de la solución Cisco Catalyst Instant Access
Se han realizado todos los análisis adicionales para esta topología:
Advertencia: los pasos descritos aquí se ejecutan solo en una configuración de laboratorio o bajo la supervisión directa de un ingeniero del TAC de Cisco.
Para ejecutar correctamente algunos de los comandos presentados aquí, habilite 'service internal' (comando oculto) en el controlador Cisco Catalyst 6500/6880 que desbloquea algunos de los comandos ocultos/específicos de TAC:
6880#configure terminal 6880(config)#service internal
Habilitar el acceso completo a FEX (se requiere servicio interno) durante el número de minutos especificado:
6880#test platform software console fex <fex-id> enable timeout <minutes>
En esta sección, el flujo de paquetes desde la interfaz Instant Access / FEX (Fabric Extender) (host conectado a Gi1/0/1) al controlador Cisco Catalyst 6500/6880 Series, donde se describe la decisión final de reenvío de paquetes.
Para determinar si los paquetes se reciben en la interfaz de ingreso de FEX (Gi1/0/1), se pueden utilizar estos métodos:
Genere el número de paquetes y verifique que los paquetes sean visibles en FEX:
6880#show int gi101/1/0/1 | in packets input 101 packets input, 151894 bytes, 0 no buffer 6880#show counters interface gi101/1/0/1 delta | in InPackets|InUcastPkts|InMcastPkts 1. InPackets = 104 3. InUcastPkts = 102 4. InMcastPkts = 2
Nota: Según el diseño, la tabla de direcciones MAC en FEX siempre está vacía, ya que el aprendizaje de MAC solo se realiza en el controlador.
Si se requiere capturar paquetes de FEX para resolver problemas adicionales, la sesión SPAN se puede configurar directamente en FEX (de modo que la replicación de paquetes se ejecute en FEX). El requisito principal es que el destino SPAN esté conectado al mismo FEX que el origen SPAN:
6880#attach fex 101 Attach FEX:101 ip:192.168.1.101 Trying 192.168.1.101 ... Open User Access Verification Password: cisco FEX-101>enable Password: cisco FEX-101#conf t FEX-101(config)#monitor session 1 source interface gi1/0/1 FEX-101(config)#monitor session 1 destination interface gi1/0/2
Esta configuración es diferente de un escenario en el que la captura de paquetes (es decir, la sesión SPAN) se configura directamente en 6880 de la siguiente manera:
6880#configure terminal 6880(config)#monitor session 1 source interface gi101/1/0/1 6880(config)#monitor session 1 destination interface gi101/1/0/2
Cuando se configura la captura de paquetes en FEX, la replicación de paquetes también ocurre en el propio FEX y los paquetes se observan en el puerto de destino si hay un problema de comunicación entre FEX y el controlador. Si la captura de paquetes se configura directamente en 6880 (consulte el segundo ejemplo), la replicación de paquetes se produce en el propio controlador y posiblemente lleve a un análisis incorrecto si hay problemas de comunicación entre el controlador y FEX. Con este enfoque, el destino SPAN se puede conectar a cualquier puerto (FEX).
Esto se puede confirmar comprobando los contadores SPAN de replicación en 6880 en ambos escenarios.
Sesión SPAN configurada directamente en FEX - todos los contadores iguales a 0:
6880#clear platform hardware capacity rewrite-engine counter Clear rewrite-engine counter for both switches [confirm] 6880#sh platform hardware capacity rewrite-engine performance | in SPAN RX 1/5 0 0x210 SPAN RX 0 0 0 1/5 0 0x211 SPAN RX 1 0 0 (...)
Sesión SPAN configurada directamente en el controlador: los contadores corresponden al número de paquetes replicados. La replicación ocurre en el módulo controlador de ingreso que no tiene que pertenecer al chasis VSS activo. (ejemplo: chasis 2/módulo 5).
6880#clear platform hardware capacity rewrite-engine counter Clear rewrite-engine counter for both switches [confirm] 6880#sh platform hardware capacity rewrite-engine performance | in SPAN RX (...> 2/5 0 0x211 SPAN RX 1 0 0 2/5 1 0x210 SPAN RX 0 0 0 2/5 1 0x211 SPAN RX 1 0 0 2/5 2 0x210 SPAN RX 0 102 0 (...)
Un método alternativo al SPAN presentado en el punto 2 es redirigir paquetes a la CPU FEX. Cree una ACL con una sentencia de registro y adjúntela en la interfaz de ingreso (en nuestro escenario: Gi1/0/1) y ejecute debug para capturar estos paquetes. Esto también permite recopilar detalles adicionales sobre la decisión de reenvío de paquetes en el FEX.
Nota: esta depuración puede causar una condición de CPU alta en el switch del controlador, así como en caso de que haya una gran cantidad de paquetes.
Nota: en caso de que haya una pila de switches de acceso instantáneo, el debug debe ejecutarse en el switch que es local al puerto monitoreado. Inicie sesión en el otro switch de una pila ejecutando el comando 'session' donde switch-no corresponde al número de switch (por ejemplo, para la interfaz gi2/0/1, switch-no es 2; para la interfaz 5/0/11, switch-no es 5, y así sucesivamente).
6880#attach fex 101 Attach FEX:101 ip:192.168.1.101 Trying 192.168.1.101 ... Open User Access Verification Password: cisco FEX-101>en Password: cisco FEX-101#conf t FEX-101(config)#access-list 100 permit ip host 10.0.0.2 host 10.0.0.1 log FEX-101(config)#access-list 100 permit ip any any FEX-101(config)#int gi1/0/1 FEX-101(config-if)#ip access-group 100 in ! FEX-101#debug platform cpu-queues logging-q
Cuando el host genera el paquete, la información se agrega al búfer de registro que proporciona las características del paquete (por ejemplo, la dirección MAC de origen y destino, las direcciones IP de origen y destino), el volcado del paquete y las características del paquete interno.
Jun 7 14:05:23.059: Pak recvd on LOGGING-Q: Local Port Fwding L3If: L2If:GigabitEthernet1/0/1 DI:0x1E19, LT:7, Vlan:10 SrcGPN:1, SrcGID:1, ACLLogIdx:0x1, MacDA:0000.0000.0001, MacSA: 0000.0000.0002 IP_SA:10.0.0.2 IP_DA:10.0.0.1 IP_Proto:1 (FEX-101) TPFFD:F3800001_000A400A_01A00076-00011E19_5F5F0000_00002001 (FEX-101) (FEX-101) Jun 7 14:05:23.059: Raw FEX packet Dump: (FEX-101) Jun 7 14:05:23.059: 00 00 00 00 00 01 00 00 00 00 (FEX-101) Jun 7 14:05:23.059: 00 02 08 00 45 00 00 64 04 D3 (FEX-101) Jun 7 14:05:23.059: 00 00 FF 01 A2 C3 0A 00 00 02 (FEX-101) Jun 7 14:05:23.059: 0A 00 00 01 08 00 42 9D 00 13 (FEX-101) Jun 7 14:05:23.062: 00 00 00 00 00 00 38 96 03 04 (FEX-101)
Para verificar la decisión reenviada, ejecute esta comprobación (basada en el DI: índice de destino proporcionado en este registro, donde St1 y St2 corresponde a los puertos de la pila y Te1/0/1 y Te1/0/2 son enlaces ascendentes que pertenecen al canal de puerto):
FEX-101#show platform port-asic dest-map index 0x1E19 Ports: Te1/0/1 St1 Te1/0/2 St2
Para determinar qué puerto se utiliza desde el canal de puerto hacia el controlador (su número se confirma ejecutando el comando 'show etherchannel summary'), utilice este enfoque. (este ejemplo es para paquetes IP, en caso de no IP, se utilizan direcciones MAC):
FEX-101#show etherchannel load-balance EtherChannel Load-Balancing Configuration: src-dst-ip EtherChannel Load-Balancing Addresses Used Per-Protocol: Non-IP: Source XOR Destination MAC address IPv4: Source XOR Destination IP address IPv6: Source XOR Destination IP address ! FEX-101#test etherchannel load-balance interface po1 ip 10.0.0.2 10.0.0.1 Would select Te1/0/2 of Po1
El paquete que se envía al controlador tiene VNTAG agregado que refleja la interfaz de ingreso. Para determinar este valor, siga este enfoque (utilice VIF+1 para la interfaz Gi1/0/1):
FEX-101#show platform fex ucast-entries vif sw_idb portname GPN handle res_index ==== ========== ====================== ==== ========= ========= 1 0x5CAC278 GigabitEthernet1/0/1 1 0x5 0x30F0000
Cuando el paquete llega al controlador, el motor de reenvío de ingreso lo gestiona más a fondo y toma decisiones adicionales con respecto a lo que debe hacerse con el paquete.
Para nuestro ejemplo, basado en el análisis proporcionado en el punto 2.1, el paquete sale de FEX a través de la interfaz Te1/0/2. Para determinar qué interfaz de controlador está conectada en el otro extremo, utilice este comando:
6880#show fex infra | in FEX Uplink|FLGS FLGS: Te1/5/13, FLGS: 0x3F FEX Uplink: Te1/0/1 Te2/5/13, FLGS: 0x1F FEX Uplink: Te1/0/2
Los paquetes se reciben en el puerto Te2/5/13, por lo tanto, estas comprobaciones son posibles:
Cuando el paquete se recibe en el controlador, se produce el aprendizaje de la dirección MAC y la dirección MAC del host se aprende en todos los módulos (esto muestra sólo un ejemplo del supervisor activo):
6880#show mac address-table interface gi101/1/0/1 Legend: * - primary entry age - seconds since last seen n/a - not available S - secure entry R - router's gateway mac address entry D - Duplicate mac address entry Displaying entries from active supervisor: vlan mac address type learn age ports ----+----+---------------+-------+-----+----------+----------------------------- * 10 0000.0000.0002 dynamic Yes 10 Gi101/1/0/1
(...)
Como se describe en el punto 2.1.2, la captura de paquetes también se configura en el controlador de esta manera:
6880#configure terminal 6880(config)#monitor session 1 source interface gi101/1/0/1 6880(config)#monitor session 1 destination interface gi101/1/0/2
Si los paquetes están visibles en la interfaz de destino, el paquete se ha enviado correctamente desde FEX al controlador.
Además de la sesión SPAN estándar, la captura de paquetes internos se puede configurar de modo que los paquetes se capturan en el búfer interno:
6880(config)#monitor session 1 type capture 6880(config-mon-capture)#source interface gi101/1/0/1 ! 6880#monitor capture start %SPAN-SW1-5-PKTCAP_START: Packet capture session 1 started 6880#show monitor capture buffer 1 IP: s=10.0.0.2 , d=10.0.0.1, len 100 2 IP: s=10.0.0.2 , d=10.0.0.1, len 100 3 IP: s=10.0.0.2 , d=10.0.0.1, len 100 4 IP: s=10.0.0.2 , d=10.0.0.1, len 100 (...)
Para obtener más información sobre esta función, consulte: Analizador de miniprotocolo
En las series Catalyst 6500/6880, existe una captura de paquetes interna integrada que proporciona información adicional sobre la decisión de reenvío de paquetes que toma el controlador en el paquete.
Nota: Puede encontrar más información sobre ELAM que es válida para 6500/SUP2T, así como para 6880 en: Catalyst 6500 Series Switches with Supervisor Engine 2T ELAM Procedure
Cuando se captura el paquete, se determina el origen del paquete (es decir, si apunta correctamente a la interfaz de FEX, lo que se realiza en función de la asignación de VIF) y la ubicación del reenvío del paquete.
En este ejemplo, el paquete se recibe en un chasis VSS en espera:
Al iniciar sesión por primera vez,
6880#remote login standby Trying Switch ... Entering CONSOLE for Switch Type "^C^C^C" to end this session User Access Verification Password: 6880-sdby#^e Standby console enabled
Ejecutar ELAM:
6880-sdby#show platform capture elam asic eureka slot 5 Assigned asic_desc=eu50 6880-sdby#show platform capture elam trigger master eu50 dbus dbi ingress ipv4 if ip_sa = 10.0.0.2 6880-sdby#show platform capture elam start cap_commands: Default ELAM RBI PB1 added to list
Cuando los paquetes se envían desde el host y a medida que alcanzan el motor de reenvío de ingreso (en nuestro caso es eu50 en el chasis-2), se activa la captura y obtenemos el número de data:
6880-sdby#sh platform capture elam status ELAM Mode: local ID# Role ASIC Slot Inst Ver ELAM Status ----- ---- ------- ---- ---- --- --------- ------ eu50 M EUREKA 5 0 1.3 DBI_ING Capture Completed eu50 s EUREKA 5 0 1.3 RBI_PB1 Capture Completed ID# ELAM Trigger ----- --------- ---------- eu50 DBI_ING FORMAT=IP L3_PROTOCOL=IPV4 IP_SA = 10.0.0.2 eu50 RBI_PB1 TRIG=1 ! 6880-sdby#show platform capture elam data | in IP_SA|IP_DA|SMAC|DMAC|SRC_INDEX|DEST_INDEX|data DBUS data: SRC_INDEX ....................... [19] = 0x2000 [Po101[Te1/5/13,Te2/5/13],Gi101/1/0/1] DEST_INDEX ...................... [19] = 0xC [Te1/1/13] DMAC ............................ = 0000.0000.0001 SMAC ............................ = 0000.0000.0002 IP_SA ........................... = 10.0.0.2 IP_DA ........................... = 10.0.0.1 RBUS data: DEST_INDEX ...................... [19] = 0x380 [Switch/Router]
Según el resultado de la captura, el paquete con direcciones MAC/IP (como se muestra) se recibió en Gi101/1/0/1 (campo DBUS SRC_INDEX) en FEX y se pasó al controlador a través de Po101 configurado en el controlador. La decisión es reenviar este paquete a la CPU de VSS (campo RBUS DEST_INDEX).
Nota: Lo que se asigna entre el VIF y el índice de origen lo realiza el administrador VNTAG y se puede verificar (en este caso, se utilizó VIF=1 cuando pasó la trama de unidifusión del puerto Gi1/0/1 en FEX; el estado operativo es siempre 2, el tipo puede ser unidifusión o multidifusión):
6880#test platform software switch virtual vntag_mgr vif-map vif 1 detail VIF INFO: VIF# 1 Type UNICAST VIF LTL# 2000 OperStatus # 2
En esta sección, se describe el flujo de paquetes desde el controlador Cisco Catalyst 6500/6880 Series Ingress Forwarding Engine, hasta la interfaz Instant Access / FEX (Fabric Extender).
Para determinar si el switch Catalyst 6500/6880 recibe correctamente el paquete, se utilizan métodos estándar para resolver problemas de switches independientes/VSS. Estos métodos incluyen la captura de paquetes (sesión SPAN, etc.). Encontrará más información sobre estas herramientas en:
Para determinar si la decisión para que el paquete se reenvíe es enviarlo a FEX con un identificador VIF válido, la captura de paquetes se ejecuta en el controlador para el motor de reenvío de ingreso (es decir, el motor de reenvío que maneja la interfaz en la que se ha recibido el paquete).
Puede encontrar más información sobre ELAM válida para 6500/SUP2T, así como para 6880 en:
Procedimiento de ELAM de Catalyst 6500 Series Switches con Supervisor Engine 2T
En este ejemplo, esta es la configuración válida de ELAM. (la palabra clave 'shim' en el disparador se utiliza cuando el paquete se origina desde la CPU; para el tráfico de tránsito, esta palabra clave no se utiliza):
6880#show platform capture elam asic eureka slot 5 6880#show platform capture elam trigger master eu50 dbus dbi ingress shim ipv4 if ip_sa = 10.0.0.1 ip_da=10.0.0.2 6880#sh platform capture elam start 6880#sh platform capture elam status ELAM Mode: local ID# Role ASIC Slot Inst Ver ELAM Status ----- ---- ------- ---- ---- --- --------- ------ eu50 M EUREKA 5 0 1.3 DBI_ING Capture Completed eu50 s EUREKA 5 0 1.3 RBI_PB1 Capture Completed ID# ELAM Trigger ----- --------- ---------- eu50 DBI_ING FORMAT=OTHERS SHIM_ETYPE=E8_SHIM_ETYPE ETYPE=IPV4_ETYPE IP_SA = 10.0.0.1 IP_DA=10.0.0.2 eu50 RBI_PB1 TRIG=1
Este es el resultado capturado:
6880#show platform capture elam data | in IP_SA|IP_DA|SMAC|DMAC|SRC_INDEX|DEST_INDEX|data DBUS data: SRC_INDEX ....................... [19] = 0x380 [Switch/Router,Po255[Te2/5/1,Te2/5/5,Te2/5/6]] DEST_INDEX ...................... [19] = 0x0 [Te1/1/1] DMAC ............................ = 0000.0000.0002 SMAC ............................ = 0000.0000.0001 IP_SA ........................... = 10.0.0.1 IP_DA ........................... = 10.0.0.2 IP_DATA [224] RBUS data: DEST_INDEX ...................... [19] = 0x2000 [Po101[Te1/5/13,Te2/5/13],Gi101/1/0/1]
El paquete ha sido recibido de la CPU (entrada de switch/router para DBUS SRC_INDEX) y la decisión de reenvío es enviarlo a través de Po101 (que es un canal de puerto que conecta el controlador con el FEX) y luego a través de la interfaz Gi1/0/1 en FEX101.
El identificador VIF que se utiliza en este caso se puede comprobar mediante el comando, donde el valor LTL se toma de RBUS en el campo DEST_INDEX:
6880#test platform software switch virtual vntag_mgr vif-map ltl 0x2000 detail VIF INFO: VIF# 1 Type UNICAST VIF LTL# 2000 OperStatus # 2
Debido a que la interfaz de salida en el controlador es port-channel, estos comandos se pueden ejecutar para determinar qué link físico se utiliza.
6880#show etherchannel load-balance EtherChannel Load-Balancing Configuration: src-dst-ip enhanced mpls label-ip EtherChannel Load-Balancing Mode on FEX Modules: src-dst-ip EtherChannel Load-Balancing Addresses Used Per-Protocol: Non-IP: Source XOR Destination MAC address IPv4: Source XOR Destination IP address IPv6: Source XOR Destination IP address MPLS: Label or IP ! 6880#test etherchannel load-balance interface po101 ip 10.0.0.1 10.0.0.2 Computed RBH: 0x3 Would select Te1/5/13 of Po101
Los métodos para resolver problemas de FEX para un escenario donde un paquete se recibe del controlador y se envía a la interfaz de host de FEX coinciden con los presentados en la sección 2. Las únicas diferencias mencionadas están relacionadas con 2.1.3 - redirección de paquetes a CPU FEX.
Consulte la sección 2.1.3 para obtener una explicación detallada de este enfoque.
En este ejemplo, para capturar un paquete que se recibe del controlador, esta configuración se realiza en FEX (la ACL se conecta a una sola interfaz si la interfaz se identificó correctamente en primer lugar, tal como se describe en el punto 3.1.2).
6880#attach fex 101 Attach FEX:101 ip:192.168.1.101 Trying 192.168.1.101 ... Open User Access Verification Password: cisco FEX-101>en Password: cisco FEX-101#conf t Enter configuration commands, one per line. End with CNTL/Z. FEX-101(config)#access-list 100 permit ip host 10.0.0.1 host 10.0.0.2 log FEX-101(config)#access-list 100 permit ip any any FEX-101(config)#int te1/0/1 FEX-101(config-if)#ip access-group 100 in FEX-101(config-if)#int te1/0/2 FEX-101(config-if)#ip access-group 100 in FEX-101#debug platform cpu-queues logging-q debug platform cpu-queue logging-q debugging is on
Nota: si hay una pila de switches de acceso instantáneo, se ejecuta debug en el switch que tiene un link ascendente al controlador. Inicie sesión en otro switch de una pila ejecutando el comando 'session' donde switch-no corresponde al número de switch (por ejemplo, para la interfaz gi2/0/1, switch-no es 2, para la interfaz 5/0/11, switch-no es 5, y así sucesivamente).
Cuando el paquete del controlador se envía correctamente a FEX, esta información se genera en el syslog:
Pak recvd on LOGGING-Q: Local Port Fwding L3If: L2If:TenGigabitEthernet1/0/1 DI:0x1F2A, LT:0, Vlan:10 SrcGPN:456, SrcGID:456, ACLLogIdx:0x1, MacDA:0000.0000.0002, MacSA: 0000.0000.0001 Non (IPv4/IPv6/ARP/RARP) TPFFD:F38001C8_000A400A_01A00080-00011F2A_F5F50000_00002BFD Jun 7 15:37:24.482: Raw FEX packet Dump: Jun 7 15:37:24.482: 00 00 00 00 00 02 00 00 00 00 Jun 7 15:37:24.482: 00 01 89 26 80 01 0B FD 81 00 Jun 7 15:37:24.482: 00 0A 08 00 45 00 00 64 76 87 Jun 7 15:37:24.482: 00 00 FF 01 31 0F 0A 00 00 01 Jun 7 15:37:24.482: 0A 00 00 02 08 00 A9 FF 00 12
Los 12 bits (con sus correspondientes valores hexadecimales, consulte el formato de paquete VNTAG en el informe técnico de Instant Access) corresponden al valor de VIF de destino que se ha pasado en el paquete. Este valor (cambiado a decimal) se realiza una referencia cruzada con el punto de salida en el FEX.
Este comando se utiliza para determinar el punto de salida: toma en consideración el VIF de unidifusión (consulte la nota del punto 2.2.3 relativa al administrador VNTAG).
FEX-101#sh platform fex ucast-entries vif sw_idb portname GPN handle res_index ==== ========== ====================== ==== ========= ========= 1 0x5CAC278 GigabitEthernet1/0/1 1 0x5 0x30F0000 2 0x5CAE2E0 GigabitEthernet1/0/2 2 0x6 0x30F0000
(...)
Para el tráfico multicast, la lógica:
1) Determine el conjunto de interfaces de salida para un VIF multicast específico.
FEX-101#sh platform fex mcast-entries (...) Entry : 2 ================= Mcast VIF = 3072 : destid = 0x23DF : handle = 0x37 : result_index = 0x4D DestId 23DF details with GPN list index next flags cmi #GPN GPN 0x23DF 0xFFFF 0x00 0x0000 3 1 2 464 (...)
En este ejemplo, para VIF=3072, se han seleccionado tres (3) interfaces de salida con los números GPN internos: 1, 2 y 464. Para traducir estos números de puerto GPN internos en interfaces físicas, se puede utilizar este comando:
FEX-101#show platform pm if-numbers interface gid gpn lpn port slot unit slun port-type lpn-idb gpn-idb ---------------------------------------------------------------------- Gi1/0/1 1 1 1 0/2 1 1 1 local Yes Yes Gi1/0/2 2 2 2 0/1 1 2 2 local Yes Yes (...) Po2 464 464 0 16/0 9 2 2 local No No
Estas salidas significan que los paquetes que se reciben con un destino multidifusión VIF igual a 3072, se reenvían a las interfaces: Gi1/0/1, Gi1/0/2 y Port-channel 2.
En caso de cualquier problema relacionado con el fex, estos resultados del comando se recopilan y se agregan al caso TAC cuando se abre:
6880#show tech-support 6880#show tech-support fex infra 6880#attach fex <fex-id> Password: cisco FEX-101>en Password: cisco FEX-101#show tech-support
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
12-May-2022 |
Versión inicial |