Resumen

  • Akvorado es un proyecto activo de análisis de flujos de código abierto, iniciado por Vincent Bernat, respaldado en el entorno operativo de Free y desarrollado por una comunidad pública de colaboradores, no por una empresa independiente.
  • La arquitectura 2.x separa la recepción UDP, el transporte vía Kafka, el enriquecimiento y el almacenamiento en ClickHouse, lo que permite escalar cada etapa de forma independiente, sin tratamiento de pérdida previa a la ingesta ni opacidad de origen.
  • El valor de la plataforma aparece cuando convierte direcciones, índices de interfaz y contadores en contexto de peering, capacidad e investigación de incidentes, pero los resultados siguen dependiendo de los metadatos, los clasificadores y la temporización.

Una versión de mantenimiento que revela un rediseño más amplio

El 14 de julio de 2026, los responsables de Akvorado publicaron la versión 2.4.1. La versión en sí era una señal rutinaria de mantenimiento continuo. Lo más importante estaba detrás: el actual diseño ya no pide a un único recolector muy acoplado que reciba cada exportación de flujo, la descodifique, la enriquezca y la envíe directamente al almacén analítico. Akvorado 2.0 dividió ese recorrido en unidades operativas independientes; el inlet recibe los paquetes, Apache Kafka transporta una representación compacta, las operaciones outlet añaden contexto, y ClickHouse guarda el resultado para consulta y agregación.

Esta arquitectura ofrece una respuesta práctica a un problema familiar para los operadores. Una red grande puede generar evidencia de tráfico que supera con mucho lo que los ingenieros pueden examinar paquete a paquete. Los routers y conmutadores pueden resumir lo que ven en registros NetFlow, IP Flow Information Export, o IPFIX, y sFlow. Estas exportaciones conservan información suficiente para responder muchas preguntas de volumen, dirección, interfaces y extremos, sin retener cada carga de aplicación.

Akvorado recopila esa evidencia, la vincula con significado de red y hace accesible su historial mediante una interfaz web y un lenguaje de filtrado.

La aparente simplicidad oculta una cadena de decisiones. El equipo emisor elige qué paquetes o flujos se representarán. El muestreo puede excluir conexiones cortas. Los paquetes UDP pueden perderse antes de que el recolector los registre. Las plantillas pueden cambiar, o reutilizarse los identificadores de interfaz. Puede ocurrir que una alimentación de enrutamiento describa una ruta que cambió después del paso del tráfico. Una base de datos de sistemas autónomos o de geolocalización puede clasificar erróneamente una dirección.

Y una regla escrita por una persona puede etiquetar el tráfico como cliente, par o tránsito, aunque esa condición nunca existió dentro del paquete.

La importancia de Akvorado reside en que expone buena parte de esa cadena en código abierto, en lugar de presentar el gráfico como resultado opaco de un aparato cerrado. El proyecto da a los operadores control sobre la recopilación, retención, enriquecimiento, consulta y acceso. Pero también les carga la responsabilidad de los puntos débiles de cada componente que elijan. Por eso la pregunta rectora es práctica, no promocional: ¿hasta dónde puede un sistema de flujos autoalojado convertir exportaciones parciales en memoria operativa confiable, sin que un panel pulido sobrepase lo que la evidencia respalda?

La respuesta depende de la tarea. En planificación de capacidad, una tendencia basada en muestras puede ser útil aunque no sea un recuento exacto de paquetes. En peering, la tendencia general del tráfico y el contexto del sistema autónomo pueden revelar hacia dónde se desplaza la demanda. En un incidente, un registro histórico por tiempo, interfaz y extremo puede acotar el alcance. Ninguno de estos usos requiere omnisciencia a nivel de paquete, pero sí que el operador sepa qué representa el registro, qué omite y cómo el enriquecimiento posterior cambió su significado.

Los registros de flujo existen porque conservar cada paquete es demasiado costoso

La captura completa de paquetes puede conservar cabeceras y orden, y a veces carga, con detalle suficiente para una reconstrucción forense exhaustiva. Pero crea una carga enorme de almacenamiento, control de acceso y privacidad en los enlaces congestionados. Las mediciones de flujo aceptan una disyuntiva distinta. El emisor recopila el tráfico o toma muestras de él, y exporta registros con campos seleccionados como direcciones de origen y destino, puertos, protocolo, contadores, marcas de tiempo e interfaces de entrada o salida.

El resultado es más pequeño, más fácil de retener y más apto para agregación a largo plazo, pero ya no es una reproducción literal de los paquetes que cruzaron la red.

NetFlow e IPFIX describen las conversaciones normalmente con registros de flujo que se generan al expirar una entrada en la memoria caché o al terminar el flujo. IPFIX establece una estructura formal basada en emisores, recolectores, plantillas y registros de datos. El recolector necesita la plantilla para interpretar los valores posteriores; la posición de un campo no tiene un significado fijo por sí sola. Los elementos específicos de fabricante y las distintas políticas de memoria pueden hacer que dos equipos describan un tráfico similar de maneras no idénticas.

Por eso los descodificadores de Akvorado se sitúan en el límite entre una familia de estándares y su aplicación real en los equipos.

sFlow aborda el problema normalmente mediante muestreo de paquetes y contadores. El equipo elige paquetes a una tasa ajustada, exporta la información de muestra y puede informar de estadísticas de interfaz. Con volúmenes suficientes, las muestras permiten ver patrones generales sin que el hardware o el recolector procesen cada paquete como evento independiente. El coste aparece en los extremos: un flujo corto puede no elegirse nunca, un pico puede quedar infrarrepresentado, y cada valor estimado necesita la tasa de muestreo y su denominador antes de leerse con responsabilidad.

Esta distinción es importante porque la palabra «flujo» no designa un tipo homogéneo de evidencia. Una cabecera de paquete muestreada, un registro de conversación agregado y un contador de interfaz responden a preguntas distintas. Algunos pueden apoyarse mutuamente, pero no deberían fusionarse en una sola afirmación de precisión absoluta. Akvorado puede almacenar y exponer los campos que le llegan; no puede obligar al emisor a revelar paquetes no elegidos ni campos que nunca se enviaron.

La retención a largo plazo es el principal atractivo operativo. Un contador de interfaz puede mostrar que un enlace llevó más tráfico en un momento dado, pero normalmente no identifica las redes o servicios implicados. La captura de paquetes podría responder con detalle, pero muchos operadores no pueden conservarla semanas o meses en cada enlace de alta capacidad. Los registros de flujo se sitúan en medio: guardan dimensiones suficientes para volver a un evento más adelante, siempre que las políticas de muestreo y exportación sigan siendo conocidas.

Por esa posición intermedia, los análisis de flujo pertenecen a la capa de infraestructura, no a un adorno marginal de panel. El recolector es parte de un sistema que fabrica evidencia. Sus resultados pueden orientar adquisiciones, cambios de peering, ingeniería de tráfico e investigaciones. Las decisiones de tales consecuencias necesitan un camino documentado desde la configuración del equipo hasta el resultado de la consulta.

El emisor determina lo que Akvorado puede saber

La primera dependencia de Akvorado queda fuera de su repositorio. Los routers y conmutadores deciden si la exportación de flujo está activada, qué interfaces participan, cómo se definen los registros, cuándo expiran las entradas de memoria, cuál es la tasa de muestreo y qué campos aparecen. Las rutas de descarga de hardware pueden revelar distintos niveles de detalle. Un operador puede desplegar un recolector impecable y aun así recibir una narrativa parcial porque los equipos emisores se configuraron de forma inconsistente o no podían exportar la evidencia requerida.

El tratamiento de plantillas es un punto de fragilidad. IPFIX y varias versiones de NetFlow usan plantillas para que el emisor defina la estructura de los registros posteriores. Si el recolector pierde una plantilla, recibe datos antes que la definición asociada, o encuentra un campo de empresa que cambió, puede no descodificar el registro correctamente. En algunos casos puede solicitar o esperar una nueva plantilla, pero las mediciones perdidas en el intervalo no vuelven automáticamente. La práctica segura es tratar el estado de plantillas como una dependencia vigilada, no como una tubería invisible.

La información de secuencia puede revelar algunas lagunas. El emisor puede numerar paquetes o registros, y el recolector puede notar un reinicio o una interrupción. Es una señal de diagnóstico, no una restauración. El número ausente prueba que hubo un hueco en la evidencia, pero no reconstruye el tráfico faltante. Un reinicio del emisor, pérdida en la ruta, un socket lleno o la planificación del host pueden producir síntomas parecidos; por eso el contador de pérdida inicia la investigación y no nombra la causa.

El muestreo añade otro tipo de incertidumbre. Una muestra de uno por cada miles de paquetes puede bastar para estimar un gran tráfico sostenido en algunos trabajos de planificación, mientras que apenas aporta confianza sobre una conexión rara. El error no es una fracción fija aplicable a cada caso; depende de la distribución de flujos, el método de muestreo, la ventana temporal y la pregunta misma. Un gráfico de tendencia global de tránsito y un juicio de seguridad sobre una única conexión corta necesitan criterios de evidencia diferentes.

La calibración mantiene esa ambigüedad visible. Los equipos pueden comparar la suma de bytes estimada de los registros de flujo con los contadores de interfaz del mismo período. Una divergencia sostenida puede señalar supuestos de muestreo, cobertura de exportación, pérdida de paquetes o errores de clasificación. Las dos fuentes miden con mecanismos distintos, por lo que no se espera una coincidencia exacta; la comparación revela si el sistema de flujos es suficientemente estable para su propósito.

Aquí comienza el primer límite de la autoridad de Akvorado. El proyecto solo puede descodificar, enriquecer y consultar lo que realmente llegó. No controla el instrumento de medición en el punto de observación. Si el operador trata la configuración de los emisores como problema de otro equipo, todo análisis posterior se construye sobre una base desconocida.

Vincent Bernat diseñó el proyecto a partir de preguntas reales de operadores

Akvorado surgió hacia 2019 de necesidades reales de análisis de flujos. Los artículos públicos y el historial de código identifican al ingeniero de redes Vincent Bernat como el impulsor principal y el mantenedor general más visible del proyecto. El software está también profundamente vinculado al entorno operativo del proveedor francés de Internet Free, que aportó un contexto de producción y un apoyo significativos. Pero la evidencia no respalda describir Akvorado como un producto comercial propiedad de Free, ni como una empresa independiente, ni como un servicio que Free gestione para todos los usuarios.

Este encuadre ayuda a entender la naturaleza del proyecto. Sus materiales públicos se centran en problemas que los operadores reconocen: recibir múltiples formatos de flujo, traducir índices de interfaz, añadir contexto de sistema autónomo y enrutamiento, distinguir peering de tránsito, retener datos amplios y permitir a los ingenieros hacer preguntas concretas. La interfaz es valiosa porque se apoya en el mismo modelo de datos del operador, no porque exhiba un conjunto genérico de gráficos coloridos.

La cronología temprana está menos completa que la arquitectura actual. El historial del repositorio indica desarrollo continuo a comienzos de la década de 2020, con maduración de la recopilación, la clasificación y la exploración web antes del rediseño 2.0. En 2023 Vincent Bernat explicó públicamente el lenguaje de filtrado similar a SQL y los Protocol Buffers dinámicos, y las versiones continuaron en 2024. No hay recuento público del primer despliegue en producción, de la fecha de inicio exacta o del crecimiento de usuarios. Un artículo debería conservar esas lagunas en lugar de inventar un mito fundacional.

El papel más importante de Free es proveer un entorno operativo. Un proveedor de Internet con tráfico elevado expone problemas que no ven las demostraciones de laboratorio: ráfagas de exportación UDP, un número enorme de interfaces, gran variedad de direcciones, enrutamiento en cambio constante y la necesidad de ligar el volumen de tráfico a las relaciones comerciales. Ese contexto influye en las prioridades de diseño, pero no prueba que cada función se aplique igual dentro de Free, que financie a todos los colaboradores o que controle el futuro del proyecto.

El repositorio público ofrece a los operadores externos otra vía de confianza. Pueden examinar el código, los problemas, las notas de versión y la documentación de instalación, ejecutar el sistema en su entorno, mantener los metadatos sensibles bajo su control y modificar el software bajo los términos de la GNU Affero General Public License version 3. La transparencia no sustituye al soporte: la organización sigue necesitando personas que entiendan los emisores, Kafka, ClickHouse, los datos de enrutamiento y las consecuencias de las actualizaciones.

Por tanto, el origen de Akvorado crea la tensión central sin eliminarla. Un software guiado por necesidades de operadores puede encarnar las preguntas correctas con más precisión que un producto analítico genérico. Pero también puede cargar con el riesgo de concentrarse en una comunidad pequeña de mantenedores y en las suposiciones operativas de los entornos que lo moldearon.

La versión 2.0 separó la recepción de la interpretación

El atractivo de un recolector monolítico es fácil de entender. Un solo proceso, o un sistema acoplado, recibe los registros, los descodifica, los enriquece y los escribe en el almacenamiento. El despliegue se explica con facilidad y las piezas móviles son pocas. El punto débil aparece cuando la entrada y el análisis dejan de moverse a la misma velocidad. Un lote de paquetes UDP no espera a que se complete una operación de fusión en problemas en la base de datos ni a la recuperación de una consulta externa de metadatos. Si el camino de recepción se bloquea, la evidencia más antigua —la más difícil de reponer— puede perderse en la entrada.

Akvorado 2.0 separó esas responsabilidades. El inlet se centra en recibir los paquetes de flujo y publicar una representación codificada y compacta en Kafka. Las operaciones outlet consumen el flujo, descodifican los registros, añaden los metadatos, aplican los clasificadores e insertan lotes en ClickHouse. La capacidad de recepción, la capacidad de enriquecimiento y el ritmo de la base de datos pueden escalarse después como problemas relacionados pero independientes.

La separación cambia el comportamiento ante fallos. Una lentitud temporal de ClickHouse ya no está obligada a detener de inmediato un escuchador UDP; Kafka puede sostener una acumulación dentro de los límites de retención y almacenamiento disponibles. Se pueden añadir operaciones outlet si el enriquecimiento se retrasa. Las particiones distribuyen el trabajo, mientras el inlet permanece lo bastante pequeño para centrarse en los sockets y el estado de los emisores.

El diseño también aporta un lenguaje operativo más claro. Los ingenieros pueden preguntar por separado si los paquetes llegaron al inlet, si este los publicó, si los consumidores alcanzaron el ritmo, si el enriquecimiento tuvo éxito y si ClickHouse aceptó el lote. Un servicio monolítico puede ocultar todas esas etapas tras un único indicador de salud. Los componentes separados hacen visibles las entregas, siempre que el despliegue recopile y conserve las métricas necesarias.

Los componentes añadidos significan formas añadidas de fallar. Los intermediarios de Kafka necesitan capacidad, opciones de replicación, política de retención y mantenimiento. El retraso del consumidor puede crecer en silencio. Las particiones afectan a la distribución y al orden. Los resultados de las operaciones outlet pueden diferir si el esquema o la configuración de enriquecimiento cambian. ClickHouse puede seguir respondiendo consultas antiguas mientras los datos recientes esperan en otra parte. La arquitectura 2.0 refuerza el control al mostrar la cadena de procesamiento, pero no la vuelve autogestionada.

La migración es otro límite. Un rediseño que cambia la representación de los mensajes, los roles de los servicios y el comportamiento del almacenamiento crea trabajo de compatibilidad y operación para los usuarios actuales. El historial de versiones muestra mantenimiento activo hasta la 2.4.1, pero no ofrece un recuento independiente de cuántos migraron desde versiones anteriores, cuánto duró la migración ni qué tipos de fallo aparecieron a mayor escala.

El cambio 2.0 se entiende mejor como una redistribución de responsabilidades. El inlet protege el momento de llegada. Kafka absorbe las diferencias de ritmo tras la publicación. outlet convierte los registros crudos en el esquema que Akvorado espera. ClickHouse conserva el historial analítico. Cada etapa puede optimizarse y probarse por separado, y cada etapa deja un tipo determinado de brecha cuando falla.

Kafka absorbe el retraso de procesamiento tras la llegada de los datos

Kafka es la articulación de la arquitectura actual de Akvorado porque convierte un camino de recepción sensible a ráfagas en un flujo que las operaciones posteriores pueden procesar a otro ritmo. Los mensajes se colocan en temas y particiones, se conservan durante un período ajustable y los consumen las operaciones outlet. Este amortiguador intermedio impide que el retraso del enriquecimiento o del almacenamiento costoso rebote directamente hasta el socket orientado al emisor.

El límite temporal es preciso. Kafka no puede proteger los datos hasta que el inlet los recibe y publica. Un paquete que se cae en la red, que el emisor descarta, que se pierde en un búfer de socket lleno o que se rechaza antes de publicarse no entra en absoluto en el flujo que Kafka retiene temporalmente. Describir la cadena como «sin pérdida» por el mero hecho de tener Kafka borra su parte más débil.

Incluso después de la publicación, la robustez depende de las elecciones. La replicación entre intermediarios, los acuses de recibo, la capacidad de disco, la retención y la recuperación determinan cuánta protección aporta la cola. Una retención corta puede convertir una interrupción prolongada de ClickHouse en pérdida de datos. Un particionado que concentre a los emisores más pesados puede crear un retraso desequilibrado. Y un fallo de intermediario durante un período de replicación débil puede borrar registros que el inlet ya había aceptado.

El orden también exige cuidado. Kafka garantiza el orden dentro de una única partición, no un orden global entre todas las particiones del clúster. A los análisis de flujo suelen importarles más las marcas de tiempo acotadas y las ventanas de agregación que un único orden total, pero el estado de plantillas, la secuencia del emisor y las actualizaciones de enriquecimiento pueden seguir dependiendo de la relación entre registros. El operador debe conocer las suposiciones de orden de outlet y cómo las afectan los reinicios o los reequilibrios.

El retraso del consumidor es la señal operativa más importante porque traduce la arquitectura a tiempo. Una cola con diez millones de registros no significa mucho sin tasa de llegada y de procesamiento. El retraso medido en segundos o minutos muestra cuánto se retrasa la visibilidad analítica respecto a la red. Cuando un equipo de capacidad o de incidentes cree que está mirando tráfico actual, ese retraso pasa a formar parte de la evidencia y debe aparecer en el propio modelo de salud del servicio.

Kafka cambia también las habilidades necesarias para operar Akvorado. Un equipo de redes pequeño que antes gestionaba un recolector y una base de datos se encuentra administrando un sistema de mensajería distribuido. La capacidad y la resiliencia pueden justificar la carga adicional, pero sigue siendo un coste asumido por el operador, no una virtud gratuita del software libre.

La afirmación correcta es estrecha y útil: Kafka reduce el acoplamiento entre recepción y trabajo posterior y ofrece espacio para superar un desfase temporal. Pero no recupera registros perdidos antes del inlet, no garantiza la robustez de cada despliegue y no elimina la necesidad de vigilar la cola como infraestructura de producción.

ClickHouse hace consultable el historial largo del tráfico

Las mediciones de flujo encajan en una base de datos columnar porque muchas preguntas recorren pocos campos a través de un número enorme de filas. Un ingeniero de peering puede agregar bytes por sistema autónomo de destino y tiempo. Un planificador de capacidad puede comparar entre interfaces o sitios a lo largo de semanas. Un respondedor de incidentes puede filtrar un grupo pequeño de direcciones y puertos en un período breve. El almacenamiento columnar lee las columnas relevantes, comprime los valores repetidos y agrega sin reconstruir cada registro completo en cada consulta.

Akvorado ingresa los datos en ClickHouse por lotes y los organiza para análisis acotados en el tiempo. Los campos derivados o materializados pueden facilitar la consulta de dimensiones habituales. La base de datos aporta la persistencia que convierte exportaciones efímeras en memoria: un ingeniero puede volver a un cambio de tráfico después de que los contadores de los equipos pasaran de largo y el estado de enrutamiento original cambiara.

Esa memoria tiene un coste físico. Las direcciones, puertos, metadatos y etiquetas de alta cardinalidad consumen espacio y afectan a la compresión. Las particiones, las claves de ordenación y el comportamiento de fusión determinan el tiempo de consulta y la estabilidad de ingesta. Las políticas de retención deciden si el sistema conserva días, meses o más. Un despliegue que retenga cada dimensión disponible indefinidamente puede agotar los discos o gastar en almacenamiento más de lo que las preguntas justifican.

El trabajo en segundo plano en ClickHouse importa porque los datos nuevos y las consultas históricas compiten por el mismo sistema. Las operaciones de fusión, compresión y replicación pueden consumir capacidad de E/S mientras las operaciones outlet escriben lotes nuevos. La base puede seguir disponible técnicamente mientras opera con retraso. La presión de disco puede aparecer primero en fusiones más lentas, luego en un retraso de ingesta y finalmente, desde la perspectiva del usuario, en la ausencia de evidencia reciente.

El diseño de consultas puede crear una ilusión similar. Un gráfico rápido puede apoyarse en campos precalculados o derivados cuyo significado difiere del registro crudo. Una consulta amplia sobre una dimensión de cardinalidad muy alta puede forzar un barrido costoso. El operador necesita límites y supervisión de consultas, y una distinción clara entre datos de precisión completa y cualquier agregación o retención aplicada en el despliegue.

El lenguaje de filtrado similar a SQL ayuda a los usuarios a evitar la sintaxis directa de la base de datos, pero no elimina su modelo. Los campos deben existir, tener un significado estable y estar organizados o indexados para el trabajo. Las evoluciones del esquema añaden dimensiones y crean a la vez trabajo de migración y compatibilidad. Los Protocol Buffers dinámicos hacen más flexible la representación de transporte; pero ClickHouse necesita al otro extremo un esquema analítico coherente.

Por eso ClickHouse es más que una dependencia oculta bajo la interfaz web: es parte del contrato operativo del producto. La salud del almacenamiento, el rendimiento de las fusiones, el tiempo de consulta y la política de retención determinan si Akvorado responderá la pregunta del operador cuando esta se vuelva importante.

El enriquecimiento convierte los índices de interfaz en un mapa de negocio

Un registro crudo puede decir que el tráfico entró por la interfaz 287 y salió por la 914. Estos números tienen significado para el equipo emisor, pero no le dicen al ingeniero si la ruta pasó por un puerto de cliente, un enlace privado, un proveedor de tránsito, un enlace troncal o una interfaz de mantenimiento. Akvorado enriquece los registros para que la consulta se formule en el lenguaje de la red, no en el del emisor.

El sondeo mediante Simple Network Management Protocol, o SNMP, es una fuente de ese contexto. Akvorado puede almacenar en caché nombres, descripciones, velocidades y direcciones de interfaz, convirtiendo los índices numéricos en enlaces comprensibles. Eso hace que el gráfico sea válido para una revisión de capacidad o una investigación de incidente. Pero crea un problema temporal: el índice puede reutilizarse, la descripción cambiar y el sondeo fallar. Un registro surgido el lunes puede mostrarse con metadatos recopilados después si la aplicación no conserva cuidadosamente la relación histórica.

Las bases de datos de direcciones y sistemas autónomos añaden otra capa. Pueden ligar un prefijo IP a una organización, un sistema autónomo o un sitio, y permiten a los equipos de peering agregar el tráfico por red y geografía. Son referencias útiles, no registros de propiedad completos. Las titularidades de prefijos cambian, las organizaciones se fusionan, el anycast complica la localización y las bases comerciales usan métodos que pueden contradecirse. La etiqueta debería llevar origen suficiente para que el analista pueda impugnarla.

El contexto de Border Gateway Protocol liga el tráfico a la capa de control. La arquitectura actual de Akvorado admite información de enrutamiento, incluidos datos vía BGP Monitoring Protocol, o BMP. La información de prefijo, par y siguiente salto ayuda a explicar la ruta aparente y la relación que posiblemente portó el tráfico. La restricción más fuerte es el tiempo: una instantánea de enrutamiento recopilada después del flujo puede no describir la ruta elegida cuando los paquetes cruzaron.

Por tanto, el enriquecimiento crea valor y nuevos tipos de evidencia. Los datos del equipo describen las interfaces locales. Los datos de enrutamiento describen el estado de la capa de control. Las bases de IP y ASN aportan enlaces externos. Los datos de geografía estiman el lugar. Ninguno debe considerarse propiedad nativa del paquete. Akvorado los reúne para que el operador haga mejores preguntas, pero el resultado hereda la marca temporal y el modelo de error de cada fuente.

Esta distinción se vuelve crítica cuando la organización usa los mismos datos para trabajo técnico y comercial. Una descripción de interfaz desactualizada puede ser una molestia de diagnóstico. Pero el mismo error puede trasladar tráfico a una categoría de cliente o tránsito equivocada, afectando a la liquidación, la inversión o las ventas. Con el enriquecimiento, el recolector se convierte en sistema operativo, y un desliz inocente de metadatos puede volverse hecho institucional.

Con la clasificación, los registros técnicos se vuelven evidencia comercial

Las redes no estampan una etiqueta de «par», «cliente» o «tránsito» en cada paquete. Estas categorías provienen de los contratos, las relaciones de enrutamiento, el diseño de interfaces y la política del operador. Los clasificadores de Akvorado pueden combinar interfaces, sistemas autónomos, prefijos, comunidades BGP y otros datos para dar al tráfico etiquetas comprensibles comercialmente.

El valor es inmediato. Un gráfico de uso agregado puede mostrar que un enlace se llena, pero no si el crecimiento proviene de clientes que pagan, de pares sin liquidación, de tránsito ascendente o de tráfico dentro del núcleo. La clasificación permite separar estos flujos y preguntar qué relación impulsa el cambio. Los equipos de peering pueden buscar candidatos cuyo tamaño haya crecido, y los planificadores de capacidad decidir si un puerto, ruta o línea nuevo se justifica.

El clasificador es también un documento de política escrito en código. Una regla que une una interfaz con la categoría «cliente» registra una suposición sobre la organización de la red. Una lista de prefijos puede codificar un límite comercial. Una comunidad BGP puede representar una categoría contractual. Y cuando las entradas cambian sin que cambien las reglas, el panel puede seguir pareciendo preciso mientras su significado diverge.

Las consecuencias deberían concordar con la revisión. Los clasificadores para exploración interna pueden probarse de forma informal. Los que sustentan presupuestos de capacidad, negociaciones con socios o análisis próximos a la facturación necesitan control de cambios, revisión entre pares y calibración con datos independientes. Un pequeño ajuste puede reclasificar meses de historia o cambiar la economía aparente de una ruta.

La consistencia histórica es otro problema. Si el clasificador cambia hoy, ¿los registros antiguos conservan la etiqueta vigente al recopilarse, o se reinterpreta según la nueva política? Ambos enfoques son útiles. El primero conserva lo que la organización creía en su momento; el segundo permite informes comparables bajo la definición actual. El sistema y el analista deben saber cuál representa el gráfico.

Akvorado hace visibles tales decisiones lo suficiente para gestionarlas porque las reglas y los datos están bajo control del operador. Pero no elige la ontología comercial correcta para la red. La revisión más importante del panel puede ocurrir fuera de la interfaz, cuando los equipos de ingeniería, peering y finanzas acuerdan el significado de las categorías.

Un lenguaje similar a SQL reduce la distancia entre los datos y el operador

Una base de datos de flujos solo es útil si los ingenieros pueden hacer preguntas a la velocidad que influye en la operación. El SQL directo ofrece gran potencia, pero expone los detalles del almacenamiento y puede producir consultas peligrosas o costosas. El lenguaje de Akvorado similar a SQL da a los usuarios condiciones, agrupaciones y operadores familiares, y los enlaza al modelo de consulta propio del proyecto.

El lenguaje gana importancia porque las preguntas operativas son repetitivas. Un ingeniero puede empezar por una interfaz y luego acotar por sistema autónomo, familia de direcciones, protocolo, puerto o dirección. Un analista de peering puede comparar antes y después de un cambio de enrutamiento. Un respondedor de incidentes puede pasar de una vista agregada a una lista corta de extremos. Cuando la interfaz de consulta mantiene estos pasos cerca del lenguaje del dominio, se reduce el tiempo entre sospecha y evidencia.

La abstracción tiene límites. Un campo solo puede consultarse si existe en el esquema y está correctamente rellenado. Un alias cómodo puede ocultar si el valor vino del emisor o de una base de enriquecimiento. La pertenencia a un grupo puede ser rápida o costosa según la implementación. El lenguaje protege al usuario de parte de la complejidad de la base de datos, pero no vuelve preciso un campo mal definido.

La evolución del esquema es una de las razones por las que Vincent Bernat documentó en 2023 el uso de Protocol Buffers dinámicos. Los formatos de flujo y los enriquecimientos cambian, y una definición fija compilada puede obligar a todos los productores y consumidores a moverse a la vez. La representación dinámica permite incorporar campos nuevos con mayor flexibilidad manteniendo compactos los mensajes del inlet. Las reglas de compatibilidad, los números de campo y sus semánticas necesitan disciplina, especialmente cuando siguen en servicio consumidores antiguos o registros almacenados.

La interfaz web completa el camino convirtiendo los filtros en tablas y gráficos. La visualización es útil porque los humanos captan transiciones, periodicidades y valores atípicos más rápido leyendo filas crudas. Pero también puede crear falsa confianza. Una línea suave puede apoyarse en tráfico muestreado, una cola retrasada y un clasificador actualizado. El diseño debería exponer la ventana temporal, la agregación y los límites de evidencia pertinentes, no ocultarlos tras la presentación.

Una buena capa de consulta cumple dos funciones: hace accesibles datos complejos y conserva del modelo lo suficiente para que el operador revise la respuesta. La aplicación abierta de Akvorado da a los equipos la oportunidad de examinar ese camino. Hacerlo realmente es asunto de la cultura de operación, no de la licencia del programa.

La clasificación da al volumen de tráfico su significado comercial

El análisis de flujos justifica su lugar en la red cuando cambia una decisión. La planificación de capacidad es el ejemplo más claro. Los contadores de interfaz pueden mostrar el consumo, pero el historial de flujos puede repartir la demanda por red de destino, región, protocolo, categoría de cliente u otras dimensiones. Estos detalles pueden ayudar al operador a decidir actualizar un enlace existente, añadir una sesión de peering, mover tráfico o investigar un cambio repentino.

La decisión sigue condicionada por la cadena de evidencia. Un conjunto de datos muestreados puede representar bien un gran flujo sostenido y pasar por alto muchos flujos cortos. Un conjunto incompleto de emisores puede hacer que parte de la red parezca más tranquila de lo que es. Un clasificador puede respaldar una relación equivocada. Un cambio posterior de enrutamiento puede confundir la interpretación si el estado relevante de la capa de control no se conservó. El valor de los datos en planificación viene de una medición coherente en el tiempo, no de tratar una cifra única como un hecho facturable.

El análisis de peering ilustra la diferencia entre acceso técnico y significado comercial. Un sistema autónomo muy presente en los datos de destino puede ser candidato a enlace directo, pero el volumen de tráfico por sí solo no prueba beneficio mutuo ni determina ubicación, disponibilidad de puerto, política o condiciones del contrato. Akvorado puede revelar un patrón que merece examen. La decisión de peering queda en manos de operadores que entienden rutas, coste, resiliencia y disposición de la contraparte.

Las previsiones de capacidad tienen un límite similar. El crecimiento histórico puede orientar la inversión, pero el lanzamiento de nuevas aplicaciones, la pérdida de clientes, los cambios de caché y los eventos de enrutamiento pueden alterar el patrón. La larga ventana de retención ayuda a los equipos a ver estacionalidad y cambios estructurales, pero no vuelve el futuro una extensión determinista del pasado. El uso más responsable de los datos delimita escenarios y umbrales en lugar de una única predicción cerrada.

El historial de flujos también puede probar si una intervención tuvo éxito. Tras un cambio de política de enrutamiento, los ingenieros pueden comparar la distribución del tráfico antes y después del evento. Si el tráfico de un enlace de tránsito cayó y el de un par subió, el resultado es coherente con el cambio pretendido. Los registros BGP y los contadores de interfaz pueden reforzar esa interpretación. Pero ninguna de estas señales por sí sola prueba que cada paquete siguió la ruta prevista o que la experiencia del usuario mejoró.

Aquí es fácil exagerar el valor de Akvorado, y también infravalorarlo. No automatiza la decisión comercial. Da a la red un registro permanente y consultable de observaciones sobre las que puede construirse la deliberación. En organizaciones donde el conocimiento de peering y capacidad sigue repartido entre hojas de cálculo, scripts temporales y memoria de personas, ese registro compartido puede volverse infraestructura por derecho propio.

El historial de flujos acota el incidente sin probar su causa

El primer beneficio operativo de los datos de flujo retenidos durante un incidente es el tiempo. Los ingenieros pueden preguntar cuándo cambió el patrón de tráfico, qué interfaces participaron, qué extremos o sistemas autónomos dominaron y si el evento seguía en curso. Estas preguntas pueden reducir un aviso general de caída o congestión a un grupo menor de sistemas y relaciones.

La evidencia se refuerza cuando se combina. Los contadores de interfaz pueden confirmar la magnitud del cambio en un enlace. Los registros BGP o BMP pueden mostrar un evento en la capa de control. Los registros del equipo pueden revelar un reinicio o una actualización de política. La captura de paquetes puede aportar detalle por un período corto. Las mediciones de extremo pueden indicar si la aplicación falló. El historial de flujos de Akvorado liga estas fuentes a través del tiempo y la identidad de red, pero no las sustituye.

Un gran salto de tráfico no significa automáticamente un ataque. Puede ser un lanzamiento popular, una copia de seguridad, un fallo de caché, un cambio de enrutamiento o un error de medición. Los metadatos de flujo pueden mostrar orígenes, destinos, puertos y volumen, pero normalmente carecen de carga de aplicación y estado del extremo. Los equipos de seguridad pueden usarlos para identificar candidatos al bloqueo o a una investigación más profunda. La atribución y la intención requieren evidencia adicional.

Un gráfico tranquilo también puede engañar. Si un emisor se detiene, la desaparición de registros puede parecer recuperación. Si el retraso de Kafka aumenta, la interfaz puede presentar un estado antiguo. Si cambia un clasificador, el tráfico puede saltar de categoría sin moverse en el cable. Los procedimientos de incidentes deberían incluir comprobaciones explícitas de frescura de datos, salud de emisores, huecos de secuencia y retraso de la cadena antes de interpretar el tráfico.

La retención aporta una ventaja una vez pasado el apremio. Los equipos pueden reconstruir los minutos previos a la alerta, comparar el evento con líneas base anteriores y probar explicaciones rivales. Ese valor crece cuando el estado original del equipo ya se ha perdido. La revisión posterior al incidente puede revelar también puntos débiles del propio sistema de evidencia: interfaces ausentes, descripciones SNMP obsoletas, muestreo insuficiente o una ventana de retención que expiró antes de tiempo.

La formulación precisa del papel de Akvorado en los incidentes es que «apoya la investigación». Puede hacer comprensible el fallo y reducir el alcance de la búsqueda. Pero el gráfico sigue siendo una observación que pasó por emisores y metadatos, no un juicio causal.

Un caso centrado en IPv6 muestra portabilidad y los límites del ejemplo único

El 9 de abril de 2026, el blog de APNIC publicó un artículo operativo sobre la configuración de Akvorado en una red que da prioridad a IPv6. Este caso importa porque proviene de fuera de la narrativa central del proyecto y sitúa el software en un contexto de despliegue concreto. Muestra que el sistema puede adaptarse a un entorno donde IPv6 es central, no una incorporación posterior.

El peso de un caso único permanece limitado. No prueba cuántas instalaciones activas de Akvorado existen, ni su cuota de mercado, ni el comportamiento de IPv6 en todos los entornos, ni su idoneidad para cada operador. Los equipos, emisores, perfiles de tráfico, experiencia del personal y objetivos de retención en ese despliegue pueden diferir de los de un gran operador, una empresa o una red de contenidos. El estudio de caso es evidencia de uso, no un recuento exhaustivo.

Su importancia más amplia está en la portabilidad. Akvorado se distribuye como software abierto, no como un servicio gestionado desde un único punto. Un equipo externo puede instalarlo, conectar sus emisores, definir sus clasificadores y conservar sus datos. Esa capacidad distingue al proyecto de ser una herramienta interna de Free y da al repositorio una vida más allá del entorno que ayudó a moldearlo.

La portabilidad pone a prueba también la documentación. Adoptar el proyecto es fácil cuando el operador entiende los roles de inlet, Kafka, outlet y ClickHouse sin guía especial. Los materiales generales de instalación y el entorno de demostración reducen la barrera inicial, pero no pueden anticipar cada plantilla de fabricante, problema de escalado o política de seguridad. Los casos externos revelan dónde resiste el modelo documentado al aplicarse en otra red.

Narrativas de despliegue independientes adicionales fortalecerían de forma tangible la base de evidencia. Los informes útiles deberían mencionar los tipos de emisores, las tasas de muestreo, los volúmenes de registros, los períodos de retención, los costes de infraestructura, las mediciones de pérdida, la experiencia de migración y la relación entre estimaciones de flujo y contadores de interfaz. También deberían describir los fallos, porque las capturas de pantalla exitosas dicen poco del comportamiento del sistema bajo presión.

Por eso el registro público de adopción de Akvorado es confiable pero incompleto. La actividad del repositorio, las versiones y el caso difundido por APNIC muestran un proyecto vivo y usado fuera del círculo de un único mantenedor. No respaldan una cifra exacta de instalaciones, ni la afirmación de que el sistema se haya convertido en la opción por defecto para el análisis de flujos.

El autoalojamiento mantiene cerca los metadatos sensibles

Los registros de flujo suelen omitir la carga de aplicación, pero pueden revelar mucho sobre las relaciones. Direcciones, puertos, temporización, volúmenes e interfaces pueden mostrar qué sistemas se comunicaron, con qué frecuencia y por qué parte de la red. La retención a largo plazo convierte esas observaciones en un historial de comportamiento. Para un operador, una empresa o un organismo público, el conjunto de datos puede ser a la vez valioso operativamente y sensible.

El modelo autoalojado de Akvorado permite a la organización mantener la recopilación, Kafka, ClickHouse y la interfaz web dentro de una infraestructura que controla. El operador puede determinar dónde residen los datos, cuánto se conservan, quién puede consultarlos y qué servicios de enriquecimiento se usan. Es una ventaja importante para los equipos que no pueden enviar mediciones detalladas de red a un servicio externo.

El control local no es más fuerte que la práctica local. La interfaz web, las API, las credenciales de la base de datos, el acceso a Kafka y los hosts subyacentes pasan todos a formar parte del perímetro de seguridad. Un rol analítico amplio puede exponer más relaciones de las que el usuario necesita. Las copias de seguridad y réplicas pueden conservar datos más allá de la retención nominal. La exportación de resultados puede llevar información sensible a sistemas con menos controles.

La retención necesita propósito. La planificación de capacidad puede funcionar con historial agregado, mientras que la respuesta a incidentes puede requerir registros más detallados por menos tiempo. Una política única sin plazo definido aumenta a la vez las posibilidades de investigación y el impacto de una brecha. Los niveles de acceso, la agregación, la eliminación y los registros de auditoría deberían seguir las preguntas que la organización decidió que tiene derecho a hacer y está dispuesta a responder.

El enriquecimiento puede aumentar el riesgo de privacidad tanto como aumenta el valor operativo. Ligar una dirección a una organización o sitio hace el registro más fácil de entender y de usar mal. Un vínculo inexacto puede dirigir la sospecha a la parte equivocada. Los analistas deberían poder saber qué campos vinieron del emisor, cuáles de metadatos internos y cuáles de bases de datos externas.

La licencia AGPLv3 da a los usuarios acceso al código bajo sus términos, pero no diseña la gobernanza de datos de la organización. El autoalojamiento elimina un proveedor de la cadena de custodia. No elimina la necesidad de privilegios mínimos, mantenimiento seguro, límites de retención y una contabilidad clara de quién puede convertir metadatos de tráfico en decisiones.

La licencia abierta deja en los operadores el coste de operar el sistema

Akvorado no exige una licencia de software convencional cuando se usa bajo los términos de la AGPLv3. Eso puede hacer la plataforma atractiva para operadores que quieren control del coste, de los datos y de la personalización. Pero no significa que la operación sea gratuita. Un despliegue en producción consume servidores o máquinas virtuales, almacenamiento, capacidad de red, tiempo de personal y guardias de respuesta.

Kafka y ClickHouse son dos sistemas grandes por sí mismos. Su capacidad debe planificarse, sus actualizaciones probarse y sus averías repararse. La cobertura de emisores necesita mantenimiento continuo a medida que cambian los equipos de red y sus firmwares. Las credenciales SNMP y los metadatos deben protegerse. Los clasificadores necesitan revisión. Las actualizaciones de seguridad deben aplicarse. El mayor coste puede ser el tiempo de ingeniería necesario para mantener la evidencia digna de confianza.

Plataformas comerciales como Kentik reparten esos costes de otra manera. El servicio gestionado puede unificar alojamiento, soporte, integraciones y un espacio de producto más amplio en un solo contrato. ElastiFlow y otros sistemas, abiertos o comerciales, ofrecen opciones distintas de almacenamiento, licencias y soporte. pmacct, ntopng, FastNetMon, las herramientas generales de monitorización y los sistemas de captura resuelven partes adyacentes del problema. La comparación debería basarse en el modelo de operación y los requisitos de evidencia, no en contar funciones de panel.

El operador autoalojado conserva mayor control sobre los registros crudos, el esquema, la retención y la lógica de consulta. Pero asume también el riesgo de perder a un especialista, de un cambio de dependencia o de un fallo de actualización. El cliente de servicio gestionado traslada parte de la responsabilidad de infraestructura y soporte a un proveedor, a cambio de aceptar dependencias contractuales, ubicación de datos, precios y hoja de ruta del producto. Ningún modelo elimina la dependencia de un proveedor o de un sistema; la sitúa en un lugar distinto.

Por eso, la ausencia de una empresa de soporte comercial acreditada para el conjunto del proyecto es significativa en Akvorado. Empresas de consultoría pueden ayudar en despliegues concretos, pero los materiales revisados no prueban que exista un único proveedor que garantice migración, respuesta de seguridad o niveles de servicio para el proyecto entero. La organización que adopte el sistema debería decidir si puede operarlo con autonomía, contratar la experiencia o contribuir aguas arriba lo suficiente para reducir el riesgo de soporte.

El coste total depende también del valor del historial retenido. Una red menor con volúmenes de flujo modestos puede encontrar el sistema económico sobre infraestructura ordinaria. Un gran operador que retenga registros detallados y de alta cardinalidad puede afrontar costes de almacenamiento y de base de datos considerables. La métrica útil no es el coste por servidor, sino el coste de producir evidencia lo bastante confiable para cambiar una decisión operativa.

Este límite económico se pasa por alto con facilidad porque los proyectos abiertos no publican ingresos ni valoración. La sostenibilidad de Akvorado depende del trabajo de los mantenedores, del apoyo operativo de Free, de las contribuciones externas y de la disposición de cada usuario a operar las dependencias. El proyecto puede crear un gran valor aguas abajo sin un balance que lo mida.

Un proyecto liderado por mantenedores puede ser transparente y concentrado a la vez

Vincent Bernat es el impulsor y el mantenedor general principal asociado públicamente a Akvorado. El repositorio registra contribuciones de otras personas, y las versiones, incidencias y solicitudes de fusión hacen visible el desarrollo. En los materiales revisados no se identificó una fundación separada, un consejo electo, un órgano formal de miembros ni un acuerdo de financiación completo.

La gobernanza centrada en el repositorio tiene puntos fuertes reales. Las decisiones dejan rastro público. Los usuarios pueden proponer cambios, examinar las discusiones y bifurcar el código si rechazan la dirección. La licencia y la disponibilidad del fuente ofrecen una salida técnica que un servicio cerrado no ofrece. Y el proyecto puede responder con rapidez cuando los mantenedores comparten un modelo operativo claro.

Pero la misma estructura concentra el poder efectivo. Los mantenedores deciden qué cambios entran en las versiones oficiales, cómo se gestiona la compatibilidad y qué errores tienen prioridad. La experiencia del inlet, el esquema dinámico, los clasificadores y las rutas de migración puede concentrarse en pocas personas. La bifurcación es legalmente posible, pero operativamente costosa cuando la comunidad disidente carece de ese conocimiento.

El apoyo de Free reduce algunos riesgos de continuidad al anclar el proyecto en un entorno de producción. Pero crea también una dependencia de prioridades no documentadas públicamente en su totalidad. Si cambian las necesidades de la empresa, los mantenedores pasan a otros roles o el apoyo disminuye, los usuarios externos necesitarán saber si la comunidad más amplia de colaboradores puede sostener las versiones, los parches de seguridad y las actualizaciones de dependencias.

Los proyectos aguas arriba añaden otra capa de control distribuido. Kafka y ClickHouse fijan sus propias hojas de ruta. Los fabricantes de equipos cambian el comportamiento de exportación. Los organismos de estándares evolucionan la práctica en torno a IPFIX y BMP. Las bases de datos externas cambian sus esquemas y licencias. Akvorado puede adaptarse, fijar versiones o sustituir componentes, pero no posee poder de veto sobre esas decisiones.

Una historia de gobernanza madura no exige que Akvorado se convierta en una gran fundación. Exige que la continuidad sea comprensible. Una política de versiones documentada, un grupo más amplio de mantenedores, un proceso de seguridad, compromisos de compatibilidad y un plan de sucesión dirían a los operadores qué ocurre cuando las relaciones informales actuales se sometan a presión. Al cierre de esta investigación, esos elementos no habían emergido como un marco público completo.

Por tanto, la apertura del proyecto debe describirse con precisión. El código y buena parte del camino de decisión son públicos. La financiación, el reparto del tiempo y la sucesión son menos visibles. La transparencia reduce la dependencia de la confianza, pero no elimina la dependencia de las personas.

El mejor panel es el que revela su base

La contribución de Akvorado no reside en afirmar una visión completa de la red. Reside en conservar y examinar observaciones seleccionadas mucho después de que los equipos que las produjeron cambiaran. El proyecto liga las exportaciones de los routers con la ingesta, el enriquecimiento, el almacenamiento y la consulta en una forma que los operadores pueden inspeccionar y operar por sí mismos.

Sus usos más sólidos aceptan la incertidumbre en lugar de ocultarla. Los equipos de capacidad pueden seguir tendencias sostenidas calibrando los totales de flujo contra los contadores. Los equipos de peering pueden descubrir relaciones de tráfico revisando las reglas de clasificación. Los respondedores de incidentes pueden acotar tiempo y alcance buscando evidencia en el enrutamiento, los registros, los paquetes y los extremos. Y los equipos de privacidad pueden mantener los datos en local, restringiendo quién los lee y cuánto permanecen.

El patrón principal de fallo es epistémico antes que técnico: un gráfico limpio puede hacer que una base desconocida parezca precisa. Los emisores ausentes, el muestreo de paquetes, la pérdida UDP, el retraso de los consumidores, los metadatos de interfaz desactualizados y las etiquetas aplicadas después pueden producir una línea convincente. El sistema es más seguro cuando estas condiciones se miden junto al tráfico, en lugar de tratarse como detalles de implementación.

Ese es también el criterio más útil para la siguiente etapa de Akvorado. La cadencia de versiones tras la 2.4.1 mostrará si la arquitectura 2.x sigue siendo sostenible. Los despliegues independientes pueden revelar el coste de migración, la pérdida de datos, el rendimiento de consulta y la carga operativa total. Un tratamiento temporal mejor del enrutamiento y los metadatos podría mejorar el análisis histórico. Y un proceso más amplio de seguridad y gobernanza podría reducir los riesgos de continuidad.

El éxito no exige que Akvorado sustituya a toda plataforma gestionada ni que se vuelva un estándar universal. Exige que siga siendo bueno en la tarea más estrecha que eligió: convertir exportaciones de flujo incompletas en una memoria de trabajo honesta y duradera. La prueba decisiva será si los operadores pueden trazar la línea de la pantalla hasta los equipos, el muestreo, las colas, los metadatos y las reglas que la fabricaron.