Un pseudowire que informa de que está activo le dice que el servicio existe y que ambas direcciones coinciden en que debería transportar tráfico. No le dice que alguna trama de cliente lo haya cruzado jamás. Los objetos de estado y los objetos de contador se escribieron con propósitos distintos, y tratar uno como prueba del otro es donde fallan la mayoría de estos paneles. Compararlos es el trabajo, porque confiar en cualquiera de los dos por separado responde a una pregunta que nadie hizo.

El estado y los contadores responden a preguntas distintas

La entrada principal de VC lleva un estado operativo combinado, y ese estado está activo solo cuando lo están ambos estados direccionales. Todo lo que hay detrás es conocimiento del plano de control y de la configuración: el circuito de acceso local, el par, la señalización. Una fila en este estado es una afirmación sobre la intención y la preparación, no sobre las tramas reenviadas.

El tráfico vive en una tabla aparte de contadores de alta capacidad para paquetes y bytes, y esas filas llevan el mismo índice de VC. El crecimiento allí es evidencia de que las tramas pasaron por esa fila concreta durante el intervalo que midió. Un contador sin cambios es ambiguo por sí solo. Un servicio inactivo, un recolector que lee la fila equivocada y una ruta rota en silencio producen todos la misma línea plana.

QuestionObjectWhat it can establish
Is the service up?cpwVcOperStatusBoth direction states agree the VC should carry traffic.
Which side is down?cpwVcInboundOperStatus, cpwVcOutboundOperStatusDirection of the reported fault.
Did frames move?cpwVcPerfTotalTable HC countersObserved forwarding on that row between two polls.
Is the interval clean?cpwVcPerfTotalDiscontinuityTimeWhether the counter was reset inside the window.

Lea la tabla como dos columnas de evidencia, no como una escala de gravedad. Activo con contadores planos no es una versión peor de activo con crecimiento, es una observación distinta con un paso siguiente distinto.

Una por el índice de VC, no por el número del ticket

La tabla de VC se indexa con un solo entero, y el ID de VC, la dirección del par, el tipo y el nombre del servicio son atributos de esa fila. Con esos atributos encuentra su servicio; el índice es con lo que sigue encontrándolo tras la primera consulta. Un índice de interfaz, un nombre de circuito mostrado o una etiqueta MPLS no son ese índice aunque los números coincidan.

Derive los OID numéricos del archivo MIB del recolector en lugar de una entrada de blog, y luego recorra la tabla una vez y guarde la identidad que encontró.

snmptranslate -On CPW-VC-MIB::cpwVcIndex
snmptranslate -On CPW-VC-MIB::cpwVcPerfTotalDiscontinuityTime
snmpwalk -v2c -c monitor 10.60.4.21 -On CPW-VC-MIB::cpwVcTable

Registre la dirección de gestión y el índice juntos en el sistema de monitorización. Un reaprovisionamiento puede mover un servicio a otra fila, y un recolector que se unió por nombre al ID de VC seguirá dibujando un índice obsoleto que todavía responde con cortesía.

La dirección significa el pseudowire, no el abonado

Los contadores de entrada describen lo que el VC recibió de la red conmutada por paquetes; los contadores de salida describen lo que reenvió hacia esa red. En un PE orientado al cliente, eso a menudo se corresponde con descarga y subida en algún orden. En un PE central, o en un PE que tiene un par en el núcleo, los mismos nombres de objeto describen la experiencia de cliente opuesta.

Escriba el mapeo una vez por rol de dispositivo y téngalo en la etiqueta del panel. Un gráfico titulado subida del cliente que en realidad dibuja tráfico hacia el núcleo sobrevivirá a la revisión y engañará en silencio a todo el que lo use para decisiones de capacidad. El mismo riesgo se aplica a las alertas construidas sobre esos gráficos, porque avisarán al equipo equivocado. Etiquete cada gráfico por la dirección del recorrido respecto al pseudowire, y deje que el mapeo del cliente viva en el panel que lo necesita.

Una prueba supera cualquier cantidad de leer descripciones de objetos: haga pasar un archivo conocido por el servicio, consulte ambas direcciones inmediatamente después y vea qué contador se movió. Registre el resultado junto al rol del dispositivo, porque la siguiente persona hará la misma pregunta.

Una tasa solo es válida dentro de una ventana de discontinuidad

Calcule una tasa como el incremento del contador de bytes dividido por los segundos transcurridos, y multiplíquelo por ocho para bits por segundo. Trate el intervalo como inválido si el contador disminuyó, el agente se reinició, la fila cambió o el objeto de discontinuidad se movió. Ese objeto se expresa respecto al tiempo de actividad del sistema, así que un reinicio del dispositivo también lo invalida. Descarte la muestra y abra una ventana nueva en lugar de dibujar un pico.

Tome dos muestras con un hueco conocido y guarde las marcas de tiempo del recolector, no del historial de su terminal.

snmpget -v2c -c monitor -Oqv 10.60.4.21 CPW-VC-MIB::cpwVcPerfTotalInHCBytes.7
sleep 60
snmpget -v2c -c monitor -Oqv 10.60.4.21 CPW-VC-MIB::cpwVcPerfTotalInHCBytes.7
snmpget -v2c -c monitor -Oqv 10.60.4.21 CPW-VC-MIB::cpwVcPerfTotalDiscontinuityTime.7

Los contadores de alta capacidad hacen que el desbordamiento no sea un problema en un solo pseudowire, así que una disminución casi siempre significa un reinicio, un agente sustituido o una fila distinta, no un desbordamiento aritmético. Por eso el tercer comando importa tanto como los dos primeros.

Compruebe qué admite realmente la versión instalada

Una definición de MIB es una especificación, no una promesa sobre su imagen. Las tablas pueden faltar, estar implementadas en parte o existir pero no estar pobladas hasta que se activa una función, y la misma plataforma puede diferir entre versiones. La definición de CISCO-IETF-PW-MIB le da los nombres de objeto; el dispositivo le dice si responden.

Consulte ambas tablas y la cadena de firmware en una sola pasada, y luego compárelo con lo que afirma la nota de la versión.

snmpget -v2c -c monitor -Oqv 10.60.4.21 SNMPv2-MIB::sysDescr.0
snmpwalk -v2c -c monitor 10.60.4.21 CPW-VC-MIB::cpwVcTable | wc -l
snmpwalk -v2c -c monitor 10.60.4.21 CPW-VC-MIB::cpwVcPerfTotalTable | wc -l

Un recorrido vacío y un recorrido no admitido son fallos distintos, así que lea el error y no solo el recuento de líneas. Si la tabla de estado responde y la de rendimiento no, la unión que diseñó en la primera sección no tiene dónde aterrizar, y la corrección es un cambio de recolector y no de circuito.

La secuencia para un circuito en disputa es corta: confirme la identidad de la fila a partir del índice, confirme el mapeo de dirección con una transferencia conocida, calcule la tasa solo dentro de una ventana de discontinuidad limpia y confirme que ambas tablas responden en esa versión. Cada paso elimina una explicación candidata. Cuando las cuatro se cumplen y los contadores siguen sin moverse, la evidencia apunta lejos del pseudowire. Ese es el punto en el que una captura de paquetes en el circuito de acceso se gana el sueldo.

Artículos relacionados