2.4. Test Cisco ASR1002 Router
2.4.1. Estado inicial
Las pruebas parten de un estado inicial donde el equipo Cisco ASR1002 solo dispone de conectividad IP con el equipo Windows 7 y los ISP pero sin ninguna vecindad BGP establecida. Durante el desarrollo de los test se van a obtener los siguientes valores para ver su evolución según vaya aumentando la carga tanto de número de peers, número de rutas y de tráfico.
– Uso de la CPU: 5sec/1min/5min
– Carga media de la RP0, ESP0 y SIP0: 1min/5min/15min
– Porcentaje de la memoria utilizada de la RP0, ESP0 y SIP0: %
– Porcentaje de uso de la CPU por parte de la RP0, ESP0 y SIP0: %Uso User, %Uso Sistema, %Libre.
– (Opcional): Network entries BGP y el uso de memoria
– (Opcional): Path entries y el uso de memoria
– (Opcional): BGP path/bestpath attribute entries y el uso de memoria
– (Opcional): Uso total de memoria del proceso BGP
Tablas de resultados estado inicial:
NOTA: Al no existir de momento las adyacencias BGP se omiten las tablas de resultados BGP
2.4.2. Adyacencia con 1 peer
Tabla de resultados cuando se añade un peer con full routing BGP (650000 rutas IPv4):
2.4.3. Adyacencia con 2peers
Tabla de resultados cuando se añaden 2 peers con full routing BGP (650000 rutas IPv4):
2.4.4. Adyacencia con 3peers
Tabla de resultados cuando se añaden 3 peers con full routing BGP (650000 rutas IPv4):
2.4.5. Adyacencia con 4peers
Tabla de resultados cuando se añaden 4 peers con full routing BGP (650000 rutas IPv4):
2.4.6. Aumento de tráfico a 1Gbps Full-Duplex
Tabla de resultados cuando se añaden 4 peers con full routing BGP (650000 rutas IPv4):
2.4.7. Tráfico sostenido en 1Gbps y aumento de tabla de rutas a 1000000 entradas IPv4
Tabla de resultados cuando se añaden 4 peers con 1000000 entradas IPv4:
2.4.8. Tráfico sostenido en 1Gbps y aumento de tabla de rutas a 1500000 entradas IPv4
Inicialmente el equipo ASR1002 asume la tabla de rutas de 1500000 entradas para 1 peer. Pero se va notando una caída drástica de los recursos y funcionamiento habitual
Si se añade un segundo peer el equipo se desborda y empieza a mostrar mensajes de log hasta el punto desactivar el proceso ip cef.
*Dec 4 08:32:51.322: %PLATFORM-4-ELEMENT_WARNING: R0/0: smand: ESP/0: Committed Memory value 91% exceeds warning level 90%
*Dec 4 08:33:11.724: %OOM-3-NO_MEMORY_AVAIL: F0: oom.sh: The system is very low on available memory. Operations will begin to fail.
*Dec 4 08:33:12.219: %CPPHA-3-FAULT: F0: cpp_ha: CPP:0.0 desc:CPP Client process failed: cpp_sp det:HA class:CLIENT_SW sev:FATAL id:1 cppstate:RUNNING res:UNKNOWN flags:0x0 cdmflags:0x0
*Dec 4 08:33:12.248: %IOSXE-6-PLATFORM: F0: cpp_ha: Shutting down CPP MDM while client(s) still connected
*Dec 4 08:33:12.590: %IOSXE_OIR-6-OFFLINECARD: Card (fp) offline in slot F0
*Dec 4 08:33:14.571: %CPPDRV-3-LOCKDOWN: F0: cpp_cp: CPP10(0) CPP Driver LOCKDOWN due to fatal error.
*Dec 4 08:33:14.730: %CPPOSLIB-3-ERROR_NOTIFY: F0: cpp_cp: cpp_cp encountered an error -Traceback= 1#02d916b925d63b3860d51044fe445605 errmsg:C841000+2230 cpp_common_os:CEDA000+C470 cpp_common_os:CEDA000+C270 cpp_common_os:CEDA000+19BCC cpp_rrm_svr_lib:E898000+8BE8 cpp_rrm_svr_lib:E898000+81EC cpp_rrm_svr_lib:E898000+5240 cpp_rrm_svr_lib:E898000+4200 cpp_common_os:CEDA000+113E4
cpp_common_os:CEDA000+11A1C evlib:CC05000+E16C evlib:CC05000+10554 cpp_common_os:CEDA000+1318C :10000000+48C0 c:9DCC000+1E938 c:9D
*Dec 4 08:33:18.363: %CPPDRV-3-LOCKDOWN: F0: fman_fp_image: CPP10(0) CPP Driver LOCKDOWN due to fatal error.
*Dec 4 08:33:18.979: %CPPOSLIB-3-ERROR_NOTIFY: F0: fman_fp_image: fman-fp encountered an error -Traceback= 1#21fcabb7bf645a0ac69f1ea8c36c64eb errmsg:C565000+2230 cpp_common_os:95E2000+C470 cpp_common_os:95E2000+C270 cpp_common_os:95E2000+19BCC cpp_cef_mpls_common:9C27000+42408 cpp_cef_mpls_common:9C27000+432A4 tbm:9F41000+D4FC tbm:9F41000+D270 tbm:9F41000+D270 tbm:9F41000+D65C tbm:9F41000+7138 tbm:9F41000+4630 cpp_cef_mpls_common:9C27000+29A30 cpp_cef_mpls_common:9C27000+2E48C cpp_cef_mpls_common:9C27000+
*Dec 4 08:33:19.075: %EVENTLIB-3-RUNHOG: F0: fman_fp_image: undefined: 3924ms, Traceback=1#21fcabb7bf645a0ac69f1ea8c36c64eb evlib:9FD0000+D690 evlib:9FD0000+C82C :10000000+4134B0 evlib:9FD0000+E4AC evlib:9FD0000+10554 :10000000+414868 c:7802000+1E938 c:7802000+1EAE0
*Dec 4 08:33:19.075: %EVENTLIB-3-HISTSUMM: F0: fman_fp_image: dispatch start: 3543099ms elapsed time: 7363ms detected hog: 0 set count: 0
*Dec 4 08:33:19.511: %PMAN-3-PROCHOLDDOWN: F0: pman.sh: The process cpp_sp_svr has been helddown (rc 137)
*Dec 4 08:33:21.955: %PMAN-3-PROCHOLDDOWN: F0: pman.sh: The process cpp_ha_top_level_server has been helddown (rc 69)
*Dec 4 08:33:22.210: %PMAN-0-PROCFAILCRIT: F0: pvp.sh: A critical process cpp_sp_svr has failed (rc 137)
*Dec 4 08:33:22.348: %PMAN-3-PROCHOLDDOWN: F0: pman.sh: The process fman_fp_image has been helddown (rc 134)
*Dec 4 08:33:41.719: %SYS-2-MALLOCFAIL: Memory allocation of 65536 bytes failed from 0x13041130, alignment 4
Pool: Processor Free: 47773180 Cause: Memory fragmentation
Alternate Pool: None Free: 0 Cause: No Alternate pool
-Process= «IP RIB Update», ipl= 0, pid= 258
-Traceback= 1#d67b664d76e8c9b9b5e136bf0aa38fa1 :10000000+FEC108 :10000000+FEC4B8 :10000000+302F16C :10000000+3036244 :10000000+3041134 :10000000+BAED40 :10000000+C12300 :10000000+C148A4 :10000000+C14EEC :10000000+CF55FC :10000000+CF57D4 :10000000+CC5814 :10000000+1DB0C14 :10000000+1D9D60C :10000000+1DA0FB4 :10000000+1DA11F8
*Dec 4 08:33:42.245: %COMMON_FIB-3-NOMEM: Memory allocation failure for prefix in IPv4 CEF [0x10BAEDC4] (fatal) (3701 subsequent failures).
*Dec 4 08:33:42.245: %COMMON_FIB-4-DISABLING: IPv4 CEF is being disabled due to a fatal error.
*Dec 4 08:33:44.716: %COMMON_FIB-4-DISABLING: IPv4 CEF is being disabled due to a to a fatal error
3. CONCLUSIONES SOBRE CISCO ASR1002 ROUTER
En los siguientes apartados se van a ir indicando las conclusiones que se han obtenido en las pruebas sobre el router ASR1002 de Cisco.
3.1. Consideraciones previas
3.1.1. Entorno Cisco ASR1002 Router
El resultado de las pruebas ha permitido encontrar los límites del funcionamiento del Router Cisco ASR1002 y confirmar algunos de los aspectos indicados en el datasheet del ASR1002. Esto sin embargo no quita que las pruebas se han realizado en un entorno controlado y sin un sinfín de factores que pueden alternar los resultados en un entorno en producción (ataques, tráfico a ráfagas, filtrado de rutas, NAT, encriptado, etc.) Es importante destacar que el objetivo de este estudio ha sido el desarrollo de un entorno de pruebas efectivo para un escenario de full routing BGP y confirmar que el Router Cisco ASR1002 es un equipo apropiado para una configuración en multihoming BGP con full routiing.
3.2. Interpretación de resultados
3.2.1. Cisco ASR1002 como Edge Router
El Cisco ASR1002 se ha comportado de una manera correcta durante todo el desarrollo de las pruebas. Según se han ido añadiendo peers hasta un total de 4, en ningún momento se ha perdido comunicación con el equipo o el tráfico cursado a través de él se ha visto afectado. El único caso en el que el equipo se ha visto ralentizado en la gestión, pero no ha afectado al tráfico ha sido durante los periodos de convergencia por caídas o por forzar una nueva configuración en las adyacencias BGP.
Vistos los resultados el Router Cisco ASR1002 se adapta perfectamente al entorno y escenario planteado, por lo que es una buena decisión el adquirir este equipo para realizar el Full Routing BGP con más de un peer. Además, al ser un equipo modular con posibilidad de añadir interfaces en sus 3 ranuras SPAs permite realizar ampliaciones tanto de número de puertos como de capacidades (10G) sin grandes inversiones económicas.
3.3. FAQs y conclusiones sobre el Router Cisco ASR1002
3.3.1. ¿Recomendaríaeste equipo para full routing con másde 1 peer?
Si sin dudas. La única consideración a realizar es el tráfico que se espera cursar ya que el ASR1002 en sus dos versiones de ESP dispone de velocidades de 5 y 10Gbps y es un factor a tener en cuenta por si la red donde se va a conectar está dentro de estos parámetros.
3.3.2. ¿Cómo se interpreta el valor máximo de rutas 1000000 ipv4 del datasheet del equipo?
Este valor indica el número máximo de rutas que el equipo puede almacenar en la memoria. Es un valor fundamental para el correcto funcionamiento del equipo más que el número de peers. Si el equipo tiene por ejemplo 4 peers que le pasan la misma ruta, pero por caminos distintos, solo se “consume” un espacio de memoria del 1000000 disponibles. Es evidente que el número de peers influye en el rendimiento del equipo, pero no es un factor determinante al menos para las pruebas que se han realizado en este informe.
3.3.3. ¿Ha influido el aumento del tráfico en el rendimiento del Router Cisco ASR1002?
Durante las pruebas se ha aumentado el tráfico desde 0 a 1Gbps y el equipo ASR1002 ha respondido de forma correcta. Los valores tanto de CPU y memoria se han mantenido inalterados por el aumento del tráfico. Es posible que si se aumenta el tráfico hasta los 5Gbps o más el equipo empiece a notar este aumento. Durante el desarrollo de estas pruebas no ha influido.
3.3.4. ¿Ha influido el aumento del número de peers?
Evidentemente es un factor que influye si la red se vuelve inestable o el número de peers es muy elevado. Si la red es inestable a mayor número de peers aumentan las convergencias y por tanto el cálculo de nuevas rutas y creación de nuevas tablas. El protocolo BGP dispone de mecanismos (timers, bgp graceful restart, etc..) para que ante una red inestable el BGP se mantenga estable ya que este es uno de sus mayores beneficios y objetivos la estabilidad. Durante las pruebas el aumento del número de peers ha supuesto el aumento de entre 1-2% de uso de CPU para la RP0. Otro de los valores que se ha visto afectado ha sido la memoria consumida por el proceso BGP concretamente el valor del path entries. Por cada peer este valor ha aumentado alrededor de 50Mbytes de espacio para la tabla de rutas de 650000 prefijos.
3.3.5. ¿Qué ocurre si se superan el 1000000 de rutas?
Si se supera el millón de rutas el comportamiento del Cisco ASR1002 se vuelve inestable y por tanto en ningún caso hay que llegar a permitir que eso ocurra. Si por algún motivo se llega a este escenario hay que realizar un filtrado de rutas o agregación para que el equipo no tenga que almacenarlas todos los prefijos en la tabla de rutas.
Al superarse el límite del millón de rutas empiezan a aparecer los mensajes del apartado 3.4.8 donde la RP0 y la ESP0 se quedan sin recursos de memoria y los procesos se deshabilitan. Esta inestabilidad causa además que las sesiones BGP con los vecinos se resetee llegando incluso a deshabilitar el proceso CEF. Si se deshabilita el proceso CEF es necesario reiniciarlo de forma manual o mediante el apagado del equipo.