ES2652292T3 - Aparato, sistema y procedimiento para la monitorización de red mejorada, comunicación de datos, y proceso de datos - Google Patents

Aparato, sistema y procedimiento para la monitorización de red mejorada, comunicación de datos, y proceso de datos Download PDF

Info

Publication number
ES2652292T3
ES2652292T3 ES13860780.9T ES13860780T ES2652292T3 ES 2652292 T3 ES2652292 T3 ES 2652292T3 ES 13860780 T ES13860780 T ES 13860780T ES 2652292 T3 ES2652292 T3 ES 2652292T3
Authority
ES
Spain
Prior art keywords
data
network
statistical data
logic
traffic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES13860780.9T
Other languages
English (en)
Inventor
Rony Kay
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cpacket Networks Inc
Original Assignee
Cpacket Networks Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cpacket Networks Inc filed Critical Cpacket Networks Inc
Application granted granted Critical
Publication of ES2652292T3 publication Critical patent/ES2652292T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/904Browsing; Visualisation therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0858One way delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • H04L43/106Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Un aparato, que comprende: una pluralidad de máquinas (1204) de estado controladas por microcódigo, estando configurada al menos una de la pluralidad de máquinas (1204) de estado controladas por microcódigo para generar primeros datos estadísticos medidos en cada uno de una pluralidad de intervalos de tiempo de una primera granularidad de tiempo en función de los datos de la red incluidos en cada uno de una pluralidad de flujos (695) de datos que recorren la al menos una de la pluralidad de máquinas (1204) de estado controladas por microcódigo; estando el aparato caracterizado por lógica (700) de reducción de datos configurada para recibir los primeros datos estadísticos, y para obtener segundos datos estadísticos que tienen un volumen reducido con respecto a un volumen de los primeros datos estadísticos en función del desempeño de una operación matemática sobre los primeros datos estadísticos, estando asociados los segundos datos estadísticos con cada uno de la pluralidad de intervalos de tiempo de una segunda granularidad de tiempo, siendo más fina la primera granularidad de tiempo que la segunda granularidad de tiempo; y lógica (702) de transmisión, sin que medie solicitud, configurada para enviar los segundos datos estadísticos a través de una red con independencia de una solicitud en tiempo real procedente de la red.

Description

5
10
15
20
25
30
35
40
45
50
55
DESCRIPCION
Aparato, sistema y procedimiento para la monitorizacion de red mejorada, comunicacion de datos, y proceso de datos
Campo de la invencion
La presente invencion versa, en general, acerca de una monitorizacion de red y un analisis de datos. Mas en particular, la presente invencion versa acerca de una monitorizacion y una busqueda mejoradas de dispositivos distribuidos por una red, una comunicacion y un procesamiento mejorados de datos en red, reduciendo datos para facilitar la identificacion y la presentacion de variaciones de datos, y una comunicacion y una medicion mejoradas de datos de rendimiento.
Antecedentes de la invencion
El uso generalizado de redes de ordenadores para aumentar la productividad y para facilitar las comunicaciones hace de la monitorizacion del trafico de redes, del analisis de redes y de la seguridad de redes inquietudes importantes. La carga de trafico y el numero de flujos de datos que recorren las redes y los centros de datos estan aumentando rapidamente, lo que tiene como resultado un numero rapidamente creciente de flujos de datos, de servicios, y de contadores de rendimiento que han de ser monitorizados por arquitecturas de gestion de redes. Para algunos flujos de paquetes de datos, puede ser suficiente monitorizar la metrica de rendimiento por flujo, tal como los bytes transmitidos o recibidos, en una granularidad de tiempo de un segundo. Esta es una configuracion comun para arquitecturas tfpicas de gestion de redes tales como arquitecturas de protocolo simple de gestion de redes (SNMP). Sin embargo, para otros flujos de paquetes de datos, puede ser importante monitorizar la metrica de funcionamiento por flujo en una granularidad de tiempo mas fina, tal como de 1 milisegundo o 10 milisegundos, dado que existen fenomenos que pueden tener un impacto de manera significativa la calidad del servicio de un flujo que puede ser visible a estas granularidades de tiempo mas finas, pero que no son visibles con una granularidad de tiempo de un segundo. Las pilas tfpicas de SNMP pueden no estar disenadas para este nivel, y pueden no cambiar bien de escala al mismo, de monitorizacion de grano fino en un gran numero de dispositivos de red que pueden estar desplegados en el mundo entero. Ademas, los sistemas tfpicos de gestion de redes pueden proporcionar una interfaz de usuario que permita un analisis eficaz flexible de grandes cantidades de datos de monitorizacion de red.
Es contra estos antecedentes que surgio la necesidad de desarrollar el aparato, el sistema y el procedimiento para una monitorizacion de redes, una comunicacion de datos y un procesamiento de datos mejorados descritos en la presente memoria.
El documento US 2005/0120054 A1 da a conocer un procedimiento de aprendizaje dinamico y una arquitectura adaptable de perfil de comportamiento normal (NBP) para proporcionar una proteccion rapida de aplicaciones empresariales. La arquitectura adaptable de NBP incluye una pluralidad de elementos de perfil. Cada elemento de perfil incluye una pluralidad de propiedades del perfil que contienen los valores descriptivos del elemento respectivo. Un sistema de seguridad de nivel de aplicacion puede identificar y evitar ataques dirigidos a aplicaciones empresariales haciendo corresponder eventos de aplicacion contra al menos un unico elemento de perfil en el NBP adaptable.
Sumario de la invencion
La presente invencion esta definida por la reivindicacion independiente 1. Las reivindicaciones dependientes versan acerca de caracterfsticas opcionales de algunas realizaciones de la invencion. Con el fin de determinar el grado de proteccion, se tendra en cuenta debidamente cualquier elemento que sea equivalente a un elemento especificado en las reivindicaciones.
Un aspecto de la divulgacion versa acerca de un sistema que incluye un primer dispositivo y un segundo dispositivo configurados para monitorizar una pluralidad de flujos de datos que recorren el segundo dispositivo. El segundo dispositivo esta configurado para recoger estadfstica asociada con la pluralidad de flujos de datos, e incluye logica de analisis de trafico que esta configurada para aumentar la pluralidad de flujos de datos con datos que incluyen informacion estadfstica basada en la estadfstica y en informacion de direcciones asociadas con el primer dispositivo. El primer dispositivo esta configurado para recibir los datos. La logica de analisis de trafico es operable para enviar la informacion estadfstica al primer dispositivo con independencia de una solicitud en tiempo real de al menos una porcion de la informacion estadfstica del primer dispositivo. La logica de analisis de trafico es configurable en funcion de al menos la informacion de direcciones.
Otro aspecto de la divulgacion versa acerca de un sistema que incluye un primer dispositivo y un segundo dispositivo. El primer dispositivo incluye logica de analisis de trafico configurada para procesar primeros datos medidos en cada uno de una pluralidad de intervalos de tiempo de una primera granularidad de tiempo para obtener segundos datos asociados con cada uno de una pluralidad de intervalos de tiempo de una segunda granularidad de tiempo. La primera granularidad de tiempo es mas fina que la segunda granularidad de tiempo. El segundo dispositivo esta configurado para recibir y representar visualmente los segundos datos. La logica de analisis de
5
10
15
20
25
30
35
40
45
50
55
trafico es configurable de forma sensible al segundo dispositivo para reducir un volumen de los primeros datos para obtener los segundos datos, de forma que se mantenga en los segundos datos una indicacion de una caracterfstica en los primeros datos, quedando la caracterfstica enmascarada si los segundos datos estuviesen basados en una agregacion de los primeros datos en cada uno de la pluralidad de intervalos de tiempo de la segunda granularidad de tiempo.
Un aspecto de la invencion versa acerca de un aparato. En una realizacion, el aparato incluye una pluralidad de maquinas de estado controladas por microcodigo, de logica de reduccion de datos y de logica de transmision, sin que medie solicitud. Al menos una de las maquinas de estado controladas por microcodigo esta configurada para generar primeros datos estadfsticos medidos en cada uno de una pluralidad de intervalos de tiempo de una primera granularidad de tiempo en funcion de datos de red incluidos en cada uno de una pluralidad de flujos de datos que recorren la al menos una de la pluralidad de maquinas de estado controladas por microcodigo. La logica de reduccion de datos esta configurada para recibir los primeros datos estadfsticos, y para obtener segundos datos estadfsticos que tienen un volumen reducido con respecto a un volumen de los primeros datos estadfsticos en funcion del desempeno de una operacion matematica sobre los primeros datos estadfsticos. Los segundos datos estadfsticos estan asociados con cada uno de la pluralidad de intervalos de tiempo de una segunda granularidad de tiempo. La primera granularidad de tiempo es mas fina que la segunda granularidad de tiempo. La logica de transmision, sin que medie solicitud, esta configurada para enviar los segundos datos estadfsticos a traves de una red con independencia de una solicitud en tiempo real procedente de la red.
Segun otro aspecto de la divulgacion, el aparato incluye una pluralidad de maquinas de estado controladas por microcodigo, logica de generacion de alertas y logica de transmision, sin que medie solicitud. Al menos una de la pluralidad de maquinas de estado controladas por microcodigo esta configurada para generar datos estadfsticos medidos en cada uno de una pluralidad de intervalos de tiempo en funcion de los datos de red incluidos en cada uno de una pluralidad de flujos de datos que recorren la al menos una de la pluralidad de maquinas de estado controladas por microcodigo. La logica de generacion de alerta esta configurada para generar una indicacion de alerta asociada con el al menos uno de la pluralidad de flujos de datos procesando los datos estadfsticos para determinar si los datos estadfsticos implican una caracterfstica asociada con la alerta. La logica de transmision, sin que medie solicitud, esta configurada para enviar la indicacion de alerta a traves de una red con independencia de una solicitud procedente de la red.
Un aspecto adicional de la divulgacion versa acerca de un sistema para la monitorizacion de la red y el analisis de trafico de la red que incluye una pluralidad de dispositivos de red y una estacion de gestion. Cada uno de la pluralidad de dispositivos de red esta asociado con puertos correspondientes de una pluralidad de puertos. Cada uno de la pluralidad de dispositivos de red esta configurado para determinar los datos de analisis de trafico de la red asociados con una caracterfstica de los datos de red que recorren cada uno de la pluralidad de puertos. La estacion de gestion esta configurada para determinar una clasificacion de la pluralidad de puertos en funcion de los datos de analisis de trafico de la red en respuesta a una solicitud de busqueda que implica la caracterfstica, y esta configurada para representar visualmente la pluralidad de puertos en funcion de la clasificacion.
Un aspecto adicional de la divulgacion versa acerca de un sistema que incluye una pluralidad de primeros dispositivos, estando configurado cada uno de la pluralidad de primeros dispositivos con un conjunto correspondiente de puertos incluido en una pluralidad de puertos. Cada uno de la pluralidad de primeros dispositivos esta configurado para determinar segundos datos en funcion de los primeros datos asociados con cada uno del conjunto correspondiente de puertos. El sistema tambien incluye un segundo dispositivo acoplado con la pluralidad de primeros dispositivos en una red. El segundo dispositivo esta configurado para buscar la pluralidad de puertos en funcion de un criterio de busqueda de entrada, para clasificar al menos dos de la pluralidad de puertos en funcion de los segundos datos y del criterio de busqueda de entrada, y para representar visualmente los al menos dos de la pluralidad de puertos en un orden clasificado.
Tambien se contemplan otros aspectos y realizaciones de la invencion. No se pretende que el anterior sumario y la siguiente descripcion detallada restrinjan la invencion a ninguna realizacion particular sino que simplemente se pretende que describan algunas realizaciones de la invencion.
Breve descripcion de los dibujos
Para una mejor comprension de la naturaleza y de los objetos de la invencion, se deberfa hacer referencia a la siguiente descripcion detallada tomada junto con los dibujos adjuntos, en los que:
La FIG. 1 ilustra un ejemplo de una red con ubicaciones representativas en las que se puede conectar un dispositivo de red, segun una realizacion de la invencion;
la FIG. 2 ilustra un sistema para la monitorizacion de la red y el analisis de trafico de la red, segun una realizacion de la invencion;
5
10
15
20
25
30
35
40
45
50
55
60
las FIGURAS 3A a 3C ilustran ejemplos de representaciones visuales que muestran una solicitud de busqueda que implica una caractenstica de datos de analisis de trafico de la red, y una clasificacion de puertos en respuesta a la solicitud de busqueda, segun una realizacion de la invencion;
la FIG. 4A ilustra un ejemplo de datos de funcionamiento de la red con una granularidad de un segundo en la que queda enmascarada una caractenstica de los datos que recorren el dispositivo de red, segun la tecnica anterior;
la FIG. 4B ilustra un ejemplo de datos de funcionamiento de la red con una granularidad de un milisegundo en la que se mantiene una caractenstica de los datos que recorren un dispositivo de red, segun una realizacion de la invencion;
la FIG. 4C ilustra un ejemplo de datos de analisis de trafico de la red que tiene un volumen reducido en comparacion con los datos de funcionamiento de la red de la FIG. 4B mientras que mantiene una indicacion de la caractenstica de los datos que recorren el dispositivo de red, segun una realizacion de la invencion;
la FIG. 5 ilustra un ejemplo de una red con ubicaciones representativas en las que se pueden observar valores de sello de tiempo asociados con flujos de datos, segun una realizacion de la invencion;
la FIG. 6 ilustra un diagrama de bloques logicos de un sistema para la gestion de un dispositivo de red, segun una realizacion de la invencion;
la FIG. 7 ilustra un diagrama de bloques logicos de la logica de analisis de trafico incluida en el dispositivo de red, segun una realizacion de la invencion;
la FIG. 8 ilustra un diagrama de bloques logicos de una arquitectura de una realizacion de la invencion;
la FIG. 9 ilustra el uso de la arquitectura de la FIG. 8 para aplicaciones bidireccionales, segun una realizacion de la invencion;
la FIG. 10 ilustra la arquitectura interna del circuito de distribucion mostrado en la FIG. 8, segun una realizacion de la invencion;
la FIG. 11 ilustra la arquitectura interna del motor de reglas mostrado en la FIG. 8, basado en una maquina de estado controlada por microcodigo, segun una realizacion de la invencion;
la FIG. 12 ilustra un ejemplo de una secuencia de ejecucion de instrucciones de microcodigo para implementar una regla de comparacion, segun una realizacion de la invencion;
la FIG. 13 ilustra un ejemplo de la arquitectura interna de la logica de condicion mostrada en la FIG. 11, segun una realizacion de la invencion; y
la FIG. 14 ilustra un diagrama de bloques logicos de una interfaz entre motores de reglas y sus modulos asociados de direccionamiento, segun una realizacion de la invencion.
Descripcion detallada de la invencion
La FIG. 1 ilustra un ejemplo de una red 100 con ubicaciones representativas 120 en las que se puede conectar un dispositivo de red, segun una realizacion de la invencion. La red 100 es un ejemplo de una red que puede ser desplegada en un centro de datos para conectar clientes con Internet. Las conexiones mostradas en la FIG. 1 son bidireccionales a no ser que se indique lo contrario. En una realizacion, la red 100 incluye conmutadores centrales 102, dispositivos perifericos 104 de encaminamiento y conmutadores 106 de acceso. Los conmutadores centrales 102 proporcionan conectividad a Internet a traves de multiples enlaces 110 de alta capacidad, tales como Ethernet de 10 Gigabits, 10GEC 802.1Q y/o paquete OC-192 por enlaces SONET. Los conmutadores centrales 102 pueden estar conectados entre sf por medio de multiples enlaces 111 de alta capacidad, tales como para soportar una disponibilidad elevada. Los conmutadores centrales 102 tambien pueden estar conectados con dispositivos perifericos 104 de encaminamiento a traves de multiples enlaces 112. Los dispositivos perifericos 104 de encaminamiento pueden estar conectados con los conmutadores 106 de acceso a traves de multiples enlaces 114. Los enlaces 112 y los enlaces 114 pueden ser enlaces de alta capacidad o pueden ser enlaces de menor capacidad, tales como Ethernet de 1 Gigabit y/o paquete OC-48 por enlaces SONET. Los clientes pueden conectarse a los conmutadores 106 de acceso a traves de puertos ffsicos y/o logicos 116.
La FIG. 2 ilustra un sistema 600 para una monitorizacion de la red y un analisis de la red, segun una realizacion de la invencion. El sistema 600 incluye dispositivos 602A - 602N de red que monitorizan y llevan a cabo un analisis, tal como del trafico de la red. El trafico de la red que se monitoriza y analiza por medio de los dispositivos 602 de red puede entrar en los dispositivos 602 de red a traves de interfaces 612A - 612Z. Despues de la monitorizacion y del analisis por medio de los dispositivos 602 de red, el trafico de la red puede salir de los dispositivos de red a traves de
4
5
10
15
20
25
30
35
40
45
50
55
60
las interfaces 612 si las interfaces 612 son bidireccionales, o a traves de otras interfaces (no mostradas) si las interfaces 612 son unidireccionales. Cada uno de los dispositivos 602 de red puede tener un gran numero de interfaces 612 de alta capacidad, tales como 32 interfaces de red de 10 Gigabits.
En una realizacion, cada uno de los dispositivos 602 de red puede monitorizar y analizar el trafico en una red correspondiente 100, tal como una red de centro de datos. Con referencia a la FIG. 1, en un ejemplo las interfaces 612 pueden estar conectadas con la red 100 en ubicaciones correspondientes de las ubicaciones 120. Cada una de las interfaces 612 puede monitorizar el trafico procedente de un enlace de la red 100. Por ejemplo, en la FIG. 1, uno o mas dispositivos 602 de red pueden monitorizar el trafico en los enlaces 112 y 114.
Los dispositivos 602 de red estan conectados con una estacion 604 de gestion en una red 606. La red 606 puede ser una red de area amplia, una red de area local o una combinacion de redes de area amplia y/o de area local. Por ejemplo, la red 606 puede representar una red que abarca un area geografica grande. La estacion 604 de gestion puede monitorizar, recoger y representar visualmente datos de analisis del trafico procedentes de los dispositivos 602 de red, y puede proporcionar ordenes de control a los dispositivos 602 de red. De esta forma, la estacion de gestion puede permitir que una empresa explotadora, de una unica ubicacion, monitorice y controle los dispositivos 602 de red desplegados en el mundo entero.
En una realizacion, la estacion 604 de gestion puede recibir una solicitud de busqueda (criterio de busqueda) como entrada. La solicitud de busqueda puede implicar una caracterfstica de los datos de red que recorren uno o mas puertos asociados con los dispositivos 602 de red. El o los puertos pueden ser puertos ffsicos de los dispositivos 602 de red, y pueden corresponderse con una o mas de las interfaces 612. De forma alternativa, los uno o mas puertos pueden ser puertos logicos en una unica corriente de trafico. La caracterfstica de los datos de la red puede adoptar diversas formas conocidas por una persona con un nivel normal de dominio de la tecnica relacionadas con los datos de red. Por ejemplo, se puede indicar la caracterfstica en funcion de la aparicion de un patron de bits en los datos de red y/o en funcion de la aparicion de un patron de variacion en una velocidad de transferencia de datos asociada con los datos de red. De forma alternativa o adicional, la solicitud de busqueda puede implicar una caracterfstica operativa de los uno o mas puertos, o una caracterfstica operativa de uno o mas de los dispositivos 602 de red. La caracterfstica operativa puede adoptar diversas formas conocidas por una persona con un nivel normal de dominio de la tecnica relacionadas con la operabilidad de los dispositivos de red. Por ejemplo, la caracterfstica operativa puede estar basada en la existencia de una condicion de alarma de un grado particular de gravedad, o puede estar basada en informacion de la configuracion, tal como la configuracion del soporte ffsico, del soporte logico y/o de servicios al cliente.
En respuesta a la solicitud de busqueda, la estacion 604 de gestion puede procesar datos de analisis de la red recibidos de los dispositivos 602 de red por medio de la red 606. La estacion 604 de gestion puede determinar que puertos, interfaces 612 y/o dispositivos 602 de red estan implicados por la solicitud de busqueda, y puede representar visualmente estos puertos, interfaces 612 y/o dispositivos 602 de red, tal como en una lista o tabla. En una realizacion, la estacion 604 de gestion puede clasificar los puertos, las interfaces 612 y/o los dispositivos 602 de red que estan implicados por la solicitud de busqueda, y puede representar visualmente los puertos, las interfaces 612 y/o los dispositivos 602 de red en el orden clasificado (vease la siguiente exposicion con referencia a las FIGURAS 3A a 3C). La busqueda y la clasificacion pueden llevarse a cabo en funcion de cualquier algoritmo y/o criterio conocidos por una persona con un nivel normal de dominio de la tecnica. Por ejemplo, en respuesta a una solicitud de busqueda de puertos con datos de red que recorren los puertos que tienen una caracterfstica particular, la estacion 604 de gestion puede seleccionar un subconjunto de puertos entre los dispositivos 602 de red para los cuales los datos de red que recorren los puertos tienen la caracterfstica, y puede representar ese subconjunto de puertos. Se puede representar visualmente el subconjunto de puertos en orden clasificado en funcion de un numero de veces que se ha detectado la caracterfstica en los datos de red que recorren el subconjunto de los puertos.
Ademas, en una realizacion, la estacion 604 de gestion puede remozar la representacion visual de los puertos, las interfaces 612 y/o los dispositivos 602 de red tras un cambio en la clasificacion debido a variaciones dinamicas en los datos de analisis de la red. Por ejemplo, la estacion 604 de gestion puede remozar dinamicamente la representacion visual de los puertos en funcion de variaciones en tiempo real en el numero de veces que se ha detectado una caracterfstica en los datos de red que recorren los puertos.
Segun se utiliza en la presente memoria, datos de analisis de la red hace referencia en terminos generales tanto a datos de analisis de trafico de la red asociados con los datos que recorren uno o mas dispositivos de red (tales como los dispositivos 602 de red), y otros datos relacionados con la red asociados con las caracterfsticas operativas de uno o mas puertos, interfaces y/o dispositivos de red. Los datos de trafico de red pueden incluir, por ejemplo, datos asociados con la evaluacion de reglas basadas en firma y/o de comportamiento aplicadas a los datos de red que recorren uno o mas de los dispositivos 602 de red. Los datos de analisis de trafico de la red pueden incluir estadfstica (tales como datos de rendimiento) asociada con los datos de red. Ejemplos de esta estadfstica incluyen datos relacionados con la cantidad de los datos de red y/o con la calidad de los datos de red, pudiendo incluir los ejemplos de estadfstica de calidad de los datos numeros de errores detectados en datos que recorren un puerto, y el tiempo de espera de la red de ida o de ida y vuelta asociado con los datos recibidos en un puerto. De forma alternativa o adicional, los datos de analisis de trafico de la red pueden incluir datos derivados de un procesamiento
5
10
15
20
25
30
35
40
45
50
55
60
adicional de los datos asociados con la evaluacion de las reglas aplicadas a los datos de la red, o de la estadfstica asociada con los datos de la red. Este procesamiento adicional puede llevarse a cabo por medio de los dispositivos 602 de red para mejorar el cambio de escala de la arquitectura de gestion de la red, segun se describe a continuacion.
Los dispositivos 602 de red pueden llevar a cabo de forma eficaz la monitorizacion, el filtrado, la agregacion, la reiteracion, el equilibrado, la colocacion de un sello de tiempo y/o la modificacion de trafico de la red en una arquitectura unificada, en funcion de reglas que pueden ser muy granulares (tales como granulares hasta el bit) en cualquier lugar en el trafico de la red, mientras que al mismo tiempo actuan como un “tope en el hilo” minimizando la perturbacion del trafico de la red introducido por los dispositivos 602 de red. Al llevar a cabo al menos esta amplia variedad de funciones, los dispositivos 602 de red pueden obtener datos de analisis de la red que pueden proporcionar los dispositivos 602 de red a la estacion 604 de gestion para soportar una amplia variedad de solicitudes de busqueda recibidas por la estacion 604 de gestion. Estas solicitudes de busqueda pueden estar relacionadas con una amplia gama de caracterfsticas del trafico de la red y/o dispositivos de la red. La capacidad de busqueda y de clasificacion de la estacion 604 de gestion tiene una combinacion convincente de ventajas, debido a que esta capacidad puede ser entre dispositivos 602 de red desplegados en el mundo entero, puede ser en esta amplia gama de caracterfsticas, y puede tener en cuenta cambios dinamicos en los resultados de busqueda y/o en la clasificacion de los resultados de busqueda debidos a variaciones dinamicas en los datos de analisis de la red. La capacidad de busqueda y de clasificacion de la estacion 604 de gestion tambien puede permitir un analisis flexible, eficaz y basado en el contexto y el filtrado de la gran cantidad de datos de analisis de la red disponibles en la estacion 604 de gestion.
Los dispositivos 602 de red pueden recoger datos de analisis del trafico de la red de diversas formas. Por ejemplo, un dispositivo 602 de red puede aplicar una o mas reglas para seleccionar un flujo de datos (puerto logico), tal como en funcion de un campo de cabecera del paquete tal como una direccion IP o un identificador de capa superior, tal como un puerto de protocolo de control de la transmision (TCP). De forma alternativa o adicional, el dispositivo 602 de red puede recoger estadfstica asociada con el trafico de la red, tal como para flujos de datos (puertos logicos) y/o puertos ffsicos de datos. De forma alternativa o adicional, el dispositivo 602 de red puede insertar y/o retirar un sello de tiempo de uno o mas paquetes incluidos en el flujo de datos como parte de la medicion del tiempo de espera del flujo de datos por parte de la red (vease la siguiente exposicion con referencia a la FIG. 5). La insercion y la retirada del sello de tiempo pueden llevarse a cabo sobre la marcha, sin capturar los paquetes de datos, y sin copiar los paquetes de datos. La solicitud de busqueda puede asociarse con cualquiera de estos tipos, o con todos ellos, de datos de analisis de trafico de la red.
Una regla es un criterio especffico utilizado por el aparato para determinar si debe reaccionar a una unidad de datos, tal como un paquete incluido en un flujo de datos. Un tipo de regla esta basado en la firma. Las firmas son secuencias de bits en cualquier lugar en el contenido digital de trafico que indican una caracterfstica del trafico de interes al aparato. Las secuencias de bits pueden ser completamente invariantes, o pueden contener porciones que son comodines no esenciales a la evaluacion de la regla. Una firma podrfa aparecer en la cabecera o en la carga util de paquetes individuales de la red, o en una secuencia de paquetes. Una firma puede abarcar una o mas cabeceras de paquetes y cargas utiles correspondientes, y se utiliza una inspeccion profunda de paquetes para descubrir tales firmas. Se utiliza una inspeccion de corriente para descubrir firmas en una secuencia de paquetes. Se utilizan ambos tipos de inspeccion para una visibilidad completa de diversos tipos de trafico de red.
Un segundo tipo de regla es de comportamiento. Dos tipos de reglas de comportamiento son las reglas de comportamiento locales y las basadas en red. Se contempla que se puedan utilizar reglas de comportamiento locales para detectar cambios que pueden ser medidos localmente en el aparato. Estos cambios incluyen, sin limitacion, cambios en el volumen de trafico o en el equilibrio de trafico de entrada y de salida, tales como solicitudes y respuestas, que pasa por el aparato. Se pueden utilizar las reglas de comportamiento basadas en red para detectar cambios en la red que pueden ser medidos junto con otros dispositivos de red, incluyendo, sin limitacion, el aparato. Un ejemplo de tal regla es el volumen total de trafico promediado en multiples puntos en la red durante un periodo especffico de tiempo en comparacion con un umbral maximo. Otro ejemplo es el numero total de eventos de un tipo especffico, tales como indicaciones de error de la red, que se han producido a traves de la red durante un periodo especffico de tiempo, de nuevo en comparacion con un umbral maximo. La monitorizacion de la estadfstica recogida para una evaluacion de la regla puede ser importante, por ejemplo, debido a que se puede detectar un funcionamiento defectuoso en la red en funcion de su impacto sobre el comportamiento o rendimiento de la red. De forma alternativa o adicional, se puede detectar un nuevo tipo de ataque en funcion de su impacto sobre el comportamiento o rendimiento de la red, incluso cuando se desconoce su firma.
Un tercer tipo de regla es tanto de comportamiento como basada en la firma. Un ejemplo de tal regla es el numero total de paquetes que contienen una firma especffica que han pasado por un dispositivo 602 de red durante un periodo especffico de tiempo durante el dfa en comparacion con un umbral maximo y/o mfnimo. El puerto logico al que pertenece un paquete (o paquetes, tales como paquetes incluidos en un flujo de datos) puede determinarse aplicando al paquete (o paquetes, tales como paquetes incluidos en un flujo de datos) una regla tal como una regla basada en la firma, una regla de comportamiento o una combinacion de reglas de comportamiento y basadas en firma.
5
10
15
20
25
30
35
40
45
50
55
60
Ademas de la aplicacion de reglas y de recogida de estadfstica, los dispositivos 602 de red pueden llevar a cabo funciones adicionales para mejorar la comunicacion escalable de datos de analisis del trafico de la red en la red 606. En particular, las funciones de procesamiento y de analisis de datos pueden dividirse entre los dispositivos 602 de red y la estacion 604 de gestion, de forma que los dispositivos 602 de red lleven a cabo porciones significativas de estas funciones localmente, tal como en soporte ffsico, en logica reconfigurable y/o en soporte logico inalterable. Por ejemplo, los dispositivos 602 de red pueden mejorar la estadfstica recogida por los dispositivos 602 de red, tal como la estadfstica asociada con flujos de datos, para reducir el volumen de los datos de analisis del trafico de la red que han de ser comunicados a la estacion 604 de gestion mientras que mantiene una indicacion de una caracterfstica (funcion) de los flujos de datos mostrada en la estadfstica recogida (vease la exposicion con referencia a las siguientes FIGURAS 4A a 4C). En una realizacion, la busqueda y la clasificacion de los puertos, de las interfaces 612 y/o de los dispositivos 602 de red pueden estar basadas en los datos de analisis del trafico de la red que han sido reducidos segun se ha descrito anteriormente.
De forma alternativa o adicional, los dispositivos 602 de red pueden procesar la estadfstica y/o informacion basada en reglas recogidas por los dispositivos 602 de red, y en funcion de este procesamiento pueden generar una indicacion de alerta para la estacion 604 de gestion. La indicacion de alerta puede estar asociada con indicaciones correspondientes de los puertos, de las interfaces 612 y/o de los dispositivos 602 de red en funcion de la deteccion de una caracterfstica en los datos de red que recorren los correspondientes de los puertos, de las interfaces 612 y/o de los dispositivos 602 de red. En una realizacion, la busqueda y la clasificacion de los puertos, de las interfaces 612 y/o de los dispositivos 602 de red pueden estar basados en si la indicacion de alerta esta presente para cada uno de los puertos, de las interfaces 612 y/o de los dispositivos 602 de red.
De forma alternativa o adicional, los dispositivos 602 de red pueden llevar a cabo operaciones matematicas sobre la estadfstica y/o en la informacion basada en reglas recogidas por los dispositivos 602 de red. En una realizacion, estas operaciones matematicas pueden incluir al menos uno de un mfnimo, un maximo, una media, una convolucion, una media movil, una suma de cuadrados, una operacion de filtrado lineal, y una operacion de filtrado no lineal. En una realizacion, la busqueda y la clasificacion de los puertos, de las interfaces 612 y/o de los dispositivos 602 de red pueden estar basados en un resultado de al menos una de estas operaciones matematicas sobre la estadfstica y/o informacion basada en reglas asociada con los datos de la red.
El desempeno descrito anteriormente de porciones significativas de analisis de datos y de procesamiento de funciones en los dispositivos 602 de red en vez de en la estacion 604 de gestion tiene diversas ventajas. La reduccion del volumen de los datos de analisis del trafico de la red que han de ser comunicados a la estacion 604 de gestion puede reducir de forma significativa la sobrecarga del ancho de banda de la red por flujo asociado con la gestion de la red. Esto puede ser importante, dado que la carga de trafico y el numero de flujos de datos que recorren las redes y los centros de datos aumentan rapidamente, lo que tiene como resultado un numero rapidamente creciente de contadores de rendimiento que han de ser monitorizados por las arquitecturas de gestion de redes. Ademas, el procesamiento de estadfstica y/o de informacion basada en reglas recogidas por los dispositivos 602 de red en los dispositivos 602 de red puede reducir significativamente la carga de procesamiento en la estacion 604 de gestion. Esto puede reducir los requisitos de procesamiento y de memoria en la estacion 604 de gestion, puede simplificar el soporte logico que se ejecuta en la estacion 604 de gestion, y puede acelerar la operacion de la estacion 604 de gestion.
En una realizacion, se pueden comunicar los datos de analisis de la red a la estacion 604 de gestion mediante una gestion basada en la transmision, sin que medie solicitud (vease la siguiente exposicion con referencia a la FIG. 6). La gestion basada en la transmision, sin que medie solicitud, tambien puede reducir de forma significativa la sobrecarga del ancho de banda de la red eliminando la sobrecarga debida a sondeos en protocolos de gestion basados en la recepcion, sin que medie solicitud, tales como el protocolo simple de gestion de redes (SNMP).
Ademas, en las redes actuales, los flujos de datos representan una amplia variedad de servicios con una variedad de requisitos de rendimiento. Por ejemplo, para algunos flujos de paquetes de datos, puede ser suficiente monitorizar la metrica de rendimiento por flujo, tal como bytes transmitidos o recibidos, con una granularidad de tiempo de un segundo. Esta es una configuracion comun para arquitecturas tfpicas de gestion de redes, tales como arquitecturas de SNMP. Sin embargo, para otros flujos de paquetes de datos, puede ser importante monitorizar la metrica de rendimiento por flujo con una granularidad de tiempo mas fina, tal como 1 milisegundos o 10 milisegundos, dado que existen fenomenos que pueden tener un impacto de forma significativa sobre la calidad del servicio de un flujo que pueden ser visibles a estas granularidades de tiempo mas finas, pero que no son visibles con una granularidad de tiempo de un segundo. Las pilas tfpicas de SNMP pueden no estar disenadas para este nivel, y pueden no cambiar bien de escala al mismo, de monitorizacion de grano fino. Ademas, las arquitecturas de gestion basadas en la transmision, sin que medie solicitud, al eliminar la sobrecarga por sondeo asociada con el SNMP, pueden proporcionar esta monitorizacion basada en flujo de grano mas fino con una mayor eficacia.
Las FIGURAS 3A a 3C ilustran ejemplos de representaciones visuales que muestran una solicitud de busqueda que implica una caracterfstica de los datos de analisis del trafico de la red, y una clasificacion de puertos en respuesta a la solicitud de busqueda, segun una realizacion de la invencion. La FIG. 3A ilustra una representacion visual que muestra un termino de busqueda, dispositivos de red y puertos en los que se produce una cadena particular en los
5
10
15
20
25
30
35
40
45
50
55
60
datos que recorren los puertos, y una clasificacion de los puertos en funcion del numero de apariciones de la cadena, segun una realizacion de la invencion. En el ejemplo de la FIG. 3A, la cadena es “AQUA”. El identificador del dispositivo de la red y/o el identificador del puerto pueden ser, por ejemplo, una direccion IP, una direccion MAC, un identificador del fabricante o un identificador definido por un usuario, pero no esta limitado a estos tipos de identificadores.
La FIG. 3B ilustra una representacion visual que muestra un termino de busqueda, dispositivos de red y puertos en los que se produce una condicion particular (tal como una microrrafaga) en los datos que recorren los puertos, y una clasificacion de los puertos en funcion del numero de apariciones de la condicion, segun una realizacion de la invencion. En el ejemplo de la FIG. 3B, la condicion es una microrrafaga. El identificador del dispositivo de red y/o el identificador del puerto pueden ser, por ejemplo, una direccion IP, una direccion MAC, un identificador del fabricante o un identificador definido por un usuario, pero no esta limitado a estos tipos de identificadores.
La FIG. 3C ilustra una representacion visual que muestra un termino de busqueda, dispositivos de red y puertos para los cuales una velocidad medida de transferencia de datos que recorren los puertos supera un umbral particular, y una clasificacion de los puertos por velocidad de transferencia de datos, segun una realizacion de la invencion. En el ejemplo de la FIG. 3C, el umbral es de 1 Gbps. El identificador del dispositivo de red y/o el identificador del puerto pueden ser, por ejemplo, una direccion IP, una direccion MAC, un identificador del fabricante o un identificador definido por un usuario, pero no esta limitado a estos tipos de identificadores.
En una realizacion, con referencia a la FIG. 2, uno o mas de los dispositivos 602 de red pueden incluir logica de analisis del trafico configurada para procesar primeros datos (tales como primeros datos estadfsticos no reducidos que pueden incluir primeros datos no reducidos de rendimiento de la red) medidos en intervalos de tiempo de una primera granularidad de tiempo para obtener segundos datos (tales como segundos datos estadfsticos reducidos que pueden incluir segundos datos reducidos de rendimiento de la red) asociados con los intervalos de tiempo de una segunda granularidad de tiempo. Estos segundos datos pueden incluirse en los datos de analisis del trafico de la red proporcionados a la estacion 604 de gestion por medio de los uno o mas dispositivos 602 de red. La primera granularidad de tiempo puede ser mas fina que la segunda granularidad de tiempo. La estacion 604 de gestion puede estar configurada para recibir los segundos datos procedentes de los uno o mas dispositivos 602 de red, y para representar visualmente los segundos datos. La logica de analisis del trafico es configurable de forma sensible a la estacion 604 de gestion para reducir un volumen de los primeros datos para obtener los segundos datos, de forma que se mantenga en los segundos datos una indicacion de una funcion (caracterfstica) de los primeros datos, quedando la funcion enmascarada si los segundos datos estuviesen basados en una agregacion de los primeros datos en cada uno de los intervalos de tiempo de la segunda granularidad de tiempo. En las FIGURAS 4A a 4C, que se exponen a continuacion, se proporciona un ejemplo de esta reduccion de los datos.
La FIG. 4A ilustra un ejemplo de datos no reducidos 640 de rendimiento de la red con una segunda granularidad en la que queda enmascarada una funcion de los datos que recorren el dispositivo 602 de red (vease la FIG. 2), segun la tecnica anterior. Se muestran los datos no reducidos 640 de rendimiento de la red como un ancho de banda (numero de bits que puede fluir en un tiempo dado) de un flujo de datos producido por un codificador de television por protocolo de Internet (IPTV) medido como una funcion del tiempo. Para una segunda granularidad, quedan enmascaradas funciones notables en los datos (que son visibles en la FIG. 4B) debido a que cada muestra de datos en los datos no reducidos 640 de rendimiento de la red puede estar basada en una cantidad agregada de datos transmitidos en un intervalo de tiempo significativamente mayor que la duracion de cada uno de las funciones notables en los datos que quedan enmascaradas.
La FIG. 4B ilustra un ejemplo de datos no reducidos 650 de rendimiento de la red con una granularidad de un milisegundo en la que se mantiene una funcion 658 de datos que recorren el dispositivo 602 de red (vease la FIG. 2), segun una realizacion de la invencion. Se muestran los datos no reducidos 650 de rendimiento de la red como ancho de banda (numero de bits de datos que pueden fluir en un tiempo dado) de una salida de flujo de datos por un codificador de television por protocolo de Internet (IPTV) medido como una funcion del tiempo. Los datos no reducidos 650 de rendimiento de la red incluyen la funcion 658, que puede indicarse como un subconjunto de los datos no reducidos 650 de rendimiento de la red. La funcion 658 puede incluir un pico 652, durante el cual el ancho de banda por milisegundo de los datos no reducidos 650 de rendimiento de la red es sustancialmente mayor que un ancho de banda medio de los datos no reducidos 650 de rendimiento de la red. El pico 652 esta precedido por un valle 654, durante el cual el ancho de banda por milisegundo de los datos no reducidos 650 de rendimiento de la red es sustancialmente menor que un ancho de banda medio de los datos no reducidos 650 de rendimiento de la red. La funcion 658 tambien puede incluir el valle 654. De forma alternativa, la funcion 658 puede incluir unicamente el pico 652. Puede haber otras cafdas 656 en los datos no reducidos 650 de rendimiento de la red, pero la extension de tiempo del valle 654 puede ser significativamente mayor que la extension de tiempo de las otras cafdas 656. La funcion 658 puede producirse en los datos no reducidos 650 de rendimiento de la red debido, por ejemplo, a un “hipo” no deseable en la salida del flujo de datos por el codificador de IPTV, durante el cual el codificador de IPTV, primero no llega a transmitir datos (durante el valle 654), luego emite rafagas (durante el pico 652) para mantener el ancho de banda medio de los datos no reducidos 650 de rendimiento de la red. Este fenomeno es un ejemplo de una microrrafaga, que es un breve periodo durante el que la carga instantanea de trafico en un canal de comunicaciones es significativamente mayor y/o menor que una carga tfpica de trafico en el canal de
5
10
15
20
25
30
35
40
45
50
55
60
comunicaciones. El canal de comunicaciones puede ser un canal ffsico (asociado con un puerto ffsico) o un canal logico (asociado con un flujo o puerto logico) que puede tener una porcion de capacidad de transporte de datos del canal ffsico. Las microrrafagas en una red, tal como la red 100 (vease la FIG. 1), pueden ser problematicas debido, por ejemplo, a que el pico 652 puede violar limitaciones de capacidad en la red 100, dando lugar a una perdida de paquetes.
La FIG. 4C ilustra un ejemplo de datos reducidos 660 de rendimiento de la red que tienen un volumen reducido en comparacion con los datos no reducidos 650 de rendimiento de la red de la FIG. 4B mientras que mantienen una indicacion de la funcion 658 de los datos que recorren el dispositivo 602 de red (vease la FIG. 2), segun una realizacion de la invencion. Se muestran los datos reducidos 660 de rendimiento de la red como ancho de banda (numero de bits de datos que pueden fluir en un tiempo dado) de un flujo de datos producido por un codificador de television por protocolo de Internet (IPTV) medido como una funcion del tiempo. Los datos reducidos 660 de rendimiento de la red tiene una granularidad de un segundo. Los datos reducidos 660 de rendimiento de la red pueden obtenerse aplicando operaciones matematicas a los datos no reducidos 650 de rendimiento de la red. En el ejemplo de la FIG. 4C, los datos reducidos 660A de rendimiento de la red son el maximo, en intervalos de tiempo de 1 segundo, de las muestras de granularidad de 1 milisegundo de los datos no reducidos 650 de rendimiento de la red en cada uno de los intervalos de tiempo de 1 segundo. En una realizacion, una indicacion de variaciones incluidas en los datos no reducidos 650 de rendimiento de la red en un intervalo de tiempo de 1 segundo que son sustancialmente mayores que un valor medio de los datos no reducidos 650 de rendimiento de la red en el intervalo de tiempo de 1 segundo son visibles tras la representacion visual de los datos reducidos 660A de rendimiento de la red. Los datos reducidos 660B de rendimiento de la red son la media, en intervalos de tiempo de 1 segundo, de las muestras de granularidad de 1 milisegundo de los datos no reducidos 650 de rendimiento de la red en cada uno de los intervalos de tiempo de 1 segundo. Los datos reducidos 660C de rendimiento de la red son el mfnimo, en intervalos de tiempo de 1 segundo, de las muestras de granularidad de 1 milisegundo de los datos no reducidos 650 de rendimiento de la red en cada uno de los intervalos de tiempo de 1 segundo. En una realizacion, una indicacion de variaciones incluida en los datos no reducidos 650 de rendimiento de la red en un intervalo de tiempo de 1 segundo que son sustancialmente menores que un valor medio de los datos no reducidos 650 de rendimiento de la red en el intervalo de tiempo de 1 segundo son visibles tras la representacion visual de los datos reducidos 660C de rendimiento de la red. Como puede verse a partir de los datos reducidos 660A de rendimiento de la red, se mantiene una indicacion del pico 652 (vease la FIG. 4b) en los datos no reducidos 650 de rendimiento de la red en los datos reducidos 660A de rendimiento de la red como el pico 662, aunque un volumen de los datos reducidos 660A de rendimiento de la red puede ser al menos 10 veces menor (en este caso, 1000 veces menor) que un volumen de los datos no reducidos 650 de rendimiento de la red. Por ejemplo, la indicacion 662 puede incluir un maximo de los datos no reducidos 650 de rendimiento de la red en al menos uno de los intervalos de tiempo de 1 segundo. De esta forma, se puede reducir de forma significativa un volumen de los datos reducidos de rendimiento de la red con una granularidad de 1 segundo con respecto a un volumen de datos no reducidos de rendimiento de la red con una granularidad de 1 milisegundo, mientras se mantiene una indicacion 662 del pico 652 en los datos reducidos de rendimiento de la red.
En una realizacion, los datos reducidos 660 de rendimiento de la red pueden incluir un maximo y un mfnimo de los datos no reducidos 650 de rendimiento de la red, de forma que las indicaciones tanto de un pico como de un valle en los datos no reducidos 650 de rendimiento de la red sean visibles tras la representacion visual de los datos reducidos de rendimiento de la red. El valor medio del pico puede ser al menos cinco veces mayor que una media de los datos no reducidos 650 de rendimiento de la red en un intervalo de tiempo de 1 segundo (granularidad de tiempo de los datos reducidos 660 de rendimiento de la red) incluyendo el pico, y un valor medio del valle puede ser al menos cinco veces menos que una media de los datos no reducidos 650 de rendimiento de la red en un intervalo de tiempo de 1 segundo (granularidad de tiempo de los datos reducidos 660 de rendimiento de la red) incluyendo el valle.
Con referencia a la FIG. 2, en una realizacion, la logica de analisis del trafico puede ser configurable de forma sensible a la estacion 604 de gestion para variar una granularidad de tiempo de los datos reducidos de rendimiento de la red producidos por la logica de analisis del trafico. La logica de analisis del trafico puede ser configurable de forma sensible a la estacion 604 de gestion para incluir en los datos reducidos de rendimiento de la red al menos uno de un mfnimo, un maximo y una media de los datos no reducidos de rendimiento de la red en intervalos de tiempo de la granularidad de tiempo de los datos reducidos de rendimiento de la red.
La FIG. 5 ilustra un ejemplo de una red 670 con ubicaciones representativas 672A - 672D en las que se pueden medir valores de sello de tiempo asociados con los flujos de datos, segun una realizacion de la invencion. Con referencia a la FIG. 2, el dispositivo 602 de red puede insertar un sello de tiempo en uno o mas paquetes, y/o quitarlo de los mismos, incluidos en un flujo de datos como parte de la medicion del tiempo de espera de la red para paquetes incluidos en el flujo de datos. El tiempo de espera de la red de paquetes es un retraso de paquetes introducido por una red. Por ejemplo, el tiempo de espera de la red excluye retrasos debidos a un procesamiento del soporte logico en una fuente (tal como el anfitrion 674) y en un destino (tal como el anfitrion 676). El tiempo de espera de la red puede ser medido bien en la ida (el tiempo desde el envfo de un paquete por la fuente hasta la recepcion del mismo en el destino, tal como desde la ubicacion 672A hasta la ubicacion 672D), o en la ida y la vuelta (la suma del tiempo de espera de ida desde la fuente hasta el destino, ademas del tiempo de espera de vuelta desde
5
10
15
20
25
30
35
40
45
50
55
60
el destino de nuevo a la fuente, tal como la suma del tiempo de espera de ida desde la ubicacion 672A hasta la ubicacion 672D ademas del tiempo de espera de vuelta desde la ubicacion 672D hasta la ubicacion 672A). El tiempo de espera de la red puede ser el retraso desde el tiempo del inicio de la transmision de paquetes en un remitente hasta el tiempo del final de la recepcion de paquetes en un receptor. De forma alternativa, el tiempo de espera de la red puede ser el retraso desde el momento del inicio de la transmision de paquetes en un remitente hasta el momento del inicio de la recepcion de paquetes en un receptor.
Un tiempo reducido de espera de la red para flujos de datos es importante para diversas aplicaciones, tales como plataformas algorftmicas de compraventa. En una compraventa algorftmica, retrasos excesivos y/o impredecibles en la ejecucion de compraventas reduce la predictibilidad de los algoritmos y el potencial de beneficio y, por lo tanto, son una desventaja frente a los competidores. Puede ser util medir el tiempo de espera de la red de ida y/o el tiempo de espera de la red de ida y vuelta. En redes asimetricas con distintos tiempos de espera de la red en cada direccion, las mediciones del tiempo de espera de la red de ida pueden facilitar la determinacion de los tiempos de espera de la red en cada direccion. Ademas, las mediciones del tiempo de espera de la red de ida pueden ser utiles en redes en las que las transacciones del anfitrion 674 al anfitrion 676 recorren un recorrido distinto que las transacciones del anfitrion 676 al anfitrion 674. Por ejemplo, en una compraventa algorftmica, se pueden recibir datos del mercado por medio de un sistema de agente de bolsa por un recorrido de comunicaciones desde la bolsa, y se pueden enviar instrucciones a la bolsa desde el sistema del agente de bolsa por un recorrido distinto de comunicaciones.
El dispositivo 602 de red puede insertar y retirar sellos de tiempo sobre la marcha en soporte logico y/o en logica reconfigurable, sin capturar los paquetes de datos, y sin copiar los paquetes de datos. De esta forma, la insercion y la retirada del sello de tiempo pueden llevarse a cabo con un grado elevado de precision dado que se evitan los retrasos potencialmente impredecibles asociados con un procesamiento de soporte logico y con la captura y/o la copia de los paquetes de datos. El dispositivo 602 de red tambien puede medir el tiempo de espera de la red para cada paquete en el flujo de datos, puede determinar el tiempo de espera de la red por flujo (tal como una media de los tiempos de espera de la red por paquete para paquetes incluidos en un flujo de datos) y la fluctuacion (variacion en el tiempo de espera de la red), y puede comunicar a la estacion 604 de gestion el tiempo de espera de la red por flujo y la fluctuacion.
La FIG. 6 ilustra un diagrama de bloques logicos de un sistema para la gestion del dispositivo 602 de red, segun una realizacion de la invencion. El dispositivo 602 de red incluye logica 682 de procesamiento del recorrido de los datos para monitorizar los flujos 695 de datos, una interfaz 696 de salida y logica 694 de analisis del trafico. La logica 682 de procesamiento del recorrido de los datos esta configurada para proporcionar informacion 686 relacionada con los datos de la red a la logica 694 de analisis del trafico y datos de la red directamente a la interfaz 696 de salida a lo largo del recorrido 692 de los datos. La informacion 686 relacionada con los datos de la red puede incluir, sin limitacion, datos obtenidos de una aplicacion de una o mas reglas a los datos de la red, incluyendo los flujos 695 de datos, estadfstica asociada con los datos de la red, granularidades de tiempo en las cuales se recogen los datos y/o la estadfstica basada en reglas e informacion de medicion del tiempo de espera de la red asociada con los datos de la red, segun se ha descrito anteriormente con referencia a la FIG. 2. El dispositivo 602 de red puede estar configurado para identificar un subconjunto de los flujos 695 de datos, y para recoger la informacion 686 relacionada con los datos de la red del subconjunto identificado de los flujos 695 de datos. La logica 694 de analisis del trafico procesa la informacion 686 relacionada con los datos de la red para obtener datos de analisis del trafico de la red, segun se describe con referencia a las FIGURAS 2, 4-5 y 7-8. La logica 694 de analisis del trafico puede estar configurada por otro dispositivo en funcion de informacion de direcciones asociada con el otro dispositivo. El otro dispositivo puede ser la estacion 604 de gestion. De forma alternativa, el otro dispositivo puede ser otro dispositivo de red que se interconecte con una estacion de gestion. La logica 694 de analisis del trafico puede generar uno o mas paquetes que incluyen los datos de analisis del trafico de la red y la informacion de direcciones.
En una realizacion, la logica 694 de analisis del trafico puede generar datos 690 de analisis del trafico de la red en forma de paquetes, y puede proporcionar los datos 690 de analisis del trafico de la red a la interfaz 696 de salida. La logica 694 de analisis del trafico es operable para enviar los datos 690 de analisis del trafico de la red al otro dispositivo (tal como la estacion 604 de gestion) con independencia de una solicitud en tiempo real, procedente del otro dispositivo, de al menos una porcion de los datos 690 de analisis del trafico de la red. La solicitud en tiempo real puede ser un sondeo procedente del otro dispositivo. Segun se ha descrito anteriormente con referencia a la FIG. 2, una gestion basada en la transmision, sin que medie solicitud, puede reducir de forma significativa la sobrecarga del ancho de banda de la red reducida con una gestion de la red eliminando la sobrecarga debida a sondeos en protocolos de gestion basada en la recepcion, sin que medie solicitud, tales como el protocolo simple para gestion de redes (SNMP).
En esta realizacion, la gestion basada en la transmision, sin que medie solicitud, puede llevarse a cabo con independencia de los protocolos tradicionales de gestion de la red, dado que la logica 694 de analisis del trafico puede aumentar los flujos 695 de datos que recorren el recorrido 692 de los datos con los datos 690 de analisis del trafico de la red. Segun se ha descrito anteriormente con referencia a la FIG. 2, las pilas tfpicas de SNMP pueden no estar disenadas para una monitorizacion de grano crecientemente fino, y pueden no cambiar bien de escala a la misma, que puede ser necesaria para la monitorizacion de flujos de paquetes. Ademas, la estacion 604 de gestion
5
10
15
20
25
30
35
40
45
50
55
60
puede proporcionar informacion 688 de control a la logica 694 de analisis del trafico por medio de la logica 682 de procesamiento del recorrido de los datos sin recorrer un puerto local 684 de gestion. En la presente realizacion, el puerto local 684 de gestion, si se incluye en el dispositivo 602 de red, puede soportar una configuracion de porciones del dispositivo 602 de red distinta de la logica 694 de analisis del trafico.
La logica 694 de analisis del trafico puede estar configurada para enviar, sin que haya solicitud, los datos 690 de analisis del trafico de la red al otro dispositivo en funcion de un periodo de transmision de datos. La logica 694 de analisis del trafico puede estar configurada para recoger la informacion 686 relacionada con los datos de la red en funcion de un periodo de recogida de datos. La logica 694 de analisis del trafico puede ser configurable de forma sensible a un abono por parte del otro dispositivo a los datos 690 de analisis del trafico de la red. El abono puede identificar los flujos 695 de datos en funcion de identificadores, estando asociado cada uno de los identificadores con uno correspondiente de los flujos 695 de datos. La logica 694 de analisis del trafico puede ser configurable de forma sensible al otro dispositivo para anunciar los flujos 695 de datos al otro dispositivo.
En otra realizacion, la logica 694 de analisis del trafico puede proporcionar datos 691 de analisis del trafico de la red a un puerto local 684 de gestion. El puerto local 684 de gestion puede proporcionar datos 691 de analisis del trafico de la red a la estacion 604 de gestion. La estacion 604 de gestion puede proporcionar informacion 689 de control a la logica 694 de analisis del trafico a traves del puerto local 684 de gestion, que puede estar configurado para soportar una configuracion de la logica 694 de analisis del trafico.
La FIG. 7 ilustra un diagrama de bloques logicos de la logica 694 de analisis del trafico incluida en el dispositivo 602 de red (vease la FIG. 6), segun una realizacion de la invencion. La logica 694 de analisis del trafico puede incluir una o mas de logica 700 de reduccion de datos, logica 702 de transmision, sin que medie solicitud, logica 704 de generacion de alertas, logica 706 de analisis del tiempo de espera de la red y de la fluctuacion, logica 708 de calculo y logica 710 de control.
La logica 700 de reduccion de datos puede estar configurada para llevar a cabo funciones de la logica 694 de analisis del trafico asociadas con la reduccion de datos. Por ejemplo, la logica de reduccion de datos puede estar configurada para procesar primeros datos (tales como primeros datos estadfsticos no reducidos que pueden incluir primeros datos no reducidos de rendimiento de la red) medidos en intervalos de tiempo de una primera granularidad de tiempo para obtener segundos datos (tales como segundos datos estadfsticos reducidos que pueden incluir segundos datos reducidos de rendimiento de la red) asociados con intervalos de tiempo de una segunda granularidad de tiempo. La primera granularidad de tiempo puede ser mas fina que la segunda granularidad de tiempo. Los datos estadfsticos no reducidos pueden ser medidos por al menos una de una pluralidad de maquinas de estado controladas por microcodigo (vease mas abajo con referencia a la FIG. 8), y pueden ser medidos en funcion de los datos de red incluidos en cada uno de una pluralidad de flujos 695 de datos que recorren las al menos una de la pluralidad de maquinas de estado controladas por microcodigo. Se puede reducir el volumen de los datos estadfsticos reducidos con respecto al volumen de los datos estadfsticos no reducidos, tal como en al menos diez veces. La reduccion de volumen puede basarse en el desempeno de una operacion matematica sobre los datos estadfsticos no reducidos, tales como al menos un mfnimo, un maximo, una media, una convolucion, una media movil, una suma de los cuadrados, una operacion de filtrado lineal y una operacion de filtrado no lineal. La logica 700 de reduccion de datos puede ser configurable para reducir un volumen de los datos estadfsticos no reducidos para obtener los datos estadfsticos reducidos, de forma que se mantenga una indicacion de una funcion (caracterfstica) de los datos estadfsticos no reducidos en los datos estadfsticos reducidos, quedando la funcion enmascarada si los datos estadfsticos reducidos estuviesen basados en una agregacion de los datos estadfsticos no reducidos en cada uno de los intervalos de tiempo de la segunda granularidad de tiempo. Los datos estadfsticos reducidos pueden tener otros atributos de los datos reducidos 660 de rendimiento de la red descritos con referencia a las FIGURAS 4A a 4C.
La logica 702 de transmision, sin que medie solicitud, puede estar configurada para llevar a cabo funciones de la logica 694 de analisis del trafico asociadas con la gestion basada en la transmision, sin que medie solicitud, segun se describe con referencia a la FIG. 6. Por ejemplo, la logica 702 de transmision, sin que medie solicitud, puede estar configurada para enviar los datos estadfsticos reducidos en una red con independencia de una solicitud en tiempo real procedente de la red. La logica 702 de transmision, sin que medie solicitud, puede ser configurable para generar uno o mas paquetes que incluyen datos estadfsticos reducidos e informacion de direcciones asociada con un dispositivo ubicado en otro lugar en la red. La logica 702 de transmision, sin que medie solicitud, puede ser configurable para anunciar la pluralidad de flujos de datos a un dispositivo ubicado en otro lugar en la red. Con referencia a la FIG. 6, la logica 702 de transmision, sin que medie solicitud, puede ser operable para enviar, sin que haya solicitud, los datos estadfsticos reducidos mediante comunicaciones que recorren al menos una porcion del recorrido 692 de datos.
La logica 704 de generacion de alertas puede estar configurada para llevar a cabo funciones del dispositivo 602 de red (vease la FIG. 2) asociadas con la generacion de indicaciones de alerta, segun se describe con referencia a la FIG. 2. La logica 704 de generacion de alertas puede estar configurada para generar una indicacion de alerta asociada con al menos uno de la pluralidad de flujos 695 de datos (vease la FIG. 8) procesando datos estadfsticos para determinar si los datos estadfsticos implican una caracterfstica asociada con la alerta. La caracterfstica puede
5
10
15
20
25
30
35
40
45
50
55
adoptar diversas formas conocidas por una persona con un nivel normal de dominio de la tecnica relacionadas con los datos de red. Por ejemplo, se puede indicar la caractenstica en funcion de la aparicion de un patron de bits en los datos de red y/o en funcion de la aparicion de un patron de variacion en una velocidad de transferencia de datos asociada con los datos de la red. De forma alternativa o adicional, la caractenstica puede adoptar diversas formas conocidas por una persona con un nivel normal de dominio de la tecnica relacionadas con la operabilidad de los dispositivos de red. Por ejemplo, la caractenstica operativa puede indicarse en funcion de la existencia de una condicion de alarma de un grado particular de gravedad, o puede estar basada en informacion de configuracion, tal como la configuracion del soporte ffsico, del soporte logico y/o del servicio al cliente. Los datos estadfsticos pueden ser medidos mediante al menos una de una pluralidad de maquinas de estado controladas por microcodigo (vease mas abajo con referencia a la FIG. 8), y pueden ser medidos en funcion de los datos de red incluidos en cada uno de una pluralidad de flujos 695 de datos que recorren la al menos una de la pluralidad de maquinas de estado controladas por microcodigo.
En una realizacion, la logica 704 de generacion de alertas puede estar configurada para determinar si los datos estadfsticos implican la caractenstica asociada con la alerta en funcion del desempeno de una operacion matematica sobre los datos estadfsticos. La operacion matematica puede incluir al menos uno de un mmimo, un maximo, una media, una convolucion, una media movil, una suma de los cuadrados, una operacion de filtrado lineal y una operacion de filtrado no lineal. La logica 704 de generacion de alertas puede estar configurada para aplicar la operacion matematica a los datos estadfsticos en multiples intervalos de tiempo, de forma que se implique la caractenstica asociada con la alerta si el maximo de los datos estadfsticos en al menos uno de la pluralidad de intervalos de tiempo es sustancialmente mayor que un valor medio de los datos estadfsticos en el al menos uno de los multiples intervalos de tiempo.
La logica 706 de analisis del tiempo de espera de la red y de la fluctuacion puede estar configurada para llevar a cabo un analisis sobre los datos medidos de tiempo de espera de la red por paquete para obtener informacion de tiempo de espera de la red por flujo y de fluctuacion. Por ejemplo, la logica 706 de analisis del tiempo de espera de la red y de la fluctuacion puede llevar a cabo una operacion matematica sobre los datos de tiempo de espera de la red por paquete para obtener informacion de tiempo de espera de la red por flujo y de fluctuacion. La operacion matematica puede incluir al menos uno de un mmimo, un maximo, una media, una convolucion, una media movil, una suma de los cuadrados, una operacion de filtrado lineal y una operacion de filtrado no lineal.
La logica 708 de calculo puede estar configurada para llevar a cabo operaciones matematicas para soportar la logica 700 de reduccion de datos, la logica 704 de generacion de alertas y la logica 706 de analisis del tiempo de espera de la red y de la fluctuacion. La operacion matematica puede incluir al menos uno de un mmimo, un maximo, una media, una convolucion, una media movil, una suma de los cuadrados, una operacion de filtrado lineal y una operacion de filtrado no lineal.
La logica 710 de control puede estar configurada para procesar informacion de control recibida procedente de la red (tal como una estacion 604 de gestion; vease la FIG. 6) y para convertir la informacion de control en senales para configurar una o mas de la logica 700 de reduccion de datos, de la logica 702 de transmision, sin que medie solicitud, de la logica 704 de generacion de alertas, de la logica 706 de analisis del tiempo de espera de la red y de la fluctuacion y de la logica 708 de calculo.
La FIG.8 ilustra un diagrama de bloques logicos de la arquitectura de una realizacion de la invencion. Esta arquitectura puede ser utilizada en el dispositivo 602 de red (veanse las FIGURAS 2 y 6). El dispositivo 602 de red puede ser desplegado como un “tope en el hilo” con tres (o mas) interfaces. En una realizacion, hay una interfaz para el trafico 695 de entrada de la red, una segunda interfaz para el trafico 697 de salida de la red y una tercera interfaz 1212 para el trafico de salida de la red que ha sido duplicado o redirigido, o para comunicaciones de gestion. Los paquetes 695 introducidos desde la red 110 entran en primer lugar un circuito 1202 de distribucion. En la realizacion ilustrada, el circuito 1202 de distribucion divide los paquetes 695 introducidos en segmentos de trafico. En otra realizacion, los paquetes 695 introducidos son divididos en segmentos por un preprocesador que puede preceder al circuito de distribucion. Este preprocesador, que puede ser un nucleo de protocolos personalizado o estandar, tambien puede proporcionar la funcionalidad de fragmentacion/reensamblado y/o de reordenacion de los paquetes. Normalmente, un segmento de trafico es una secuencia de bytes de longitud fija derivada de un unico paquete introducido, en el mismo orden que los bytes que entraron en el circuito 1202 de distribucion. No se debe confundir un segmento de trafico con un segmento de protocolo de control de transmision (TCP), que podna incluir multiples paquetes. Si un paquete no tiene suficientes bytes restantes para llenar un segmento de trafico, se dejan sin uso los bytes restantes del segmento de trafico. Se puede asociar cada byte de un segmento de trafico con un bit de control que sirve de indicador de validez, marcandose como invalidos los bytes no utilizados.
En la realizacion ilustrada en la FIG. 8, cada segmento de trafico es encaminado en paralelo para un procesamiento por parte de cada motor de reglas de un conjunto de motores 1204A - 1204N de reglas, a los que se hace referencia de aqrn en adelante como 1204. El circuito 1202 de distribucion tambien mantiene cada uno de los paquetes 695 introducidos hasta que una interfaz 696 de salida indica al circuito 1202 de distribucion si el paquete debena ser remitido o borrado, por ejemplo saltandolo. Estos segmentos tienen una anchura en bytes identica a la anchura del
5
10
15
20
25
30
35
40
45
50
55
bus para segmentos entre el circuito 1202 de distribucion y cada motor 1204 de reglas, y entre el circuito 1202 de distribucion y la interfaz 696 de salida.
Cada motor 1204 de reglas afirma una indicacion de avance al circuito 1202 de distribucion cuando esta listo para segmentos adicionales de trafico procedentes del circuito 1202 de distribucion. Cuando todos los motores 1204 de reglas han afirmado sus lfneas de avance, el circuito 1202 de distribucion envfa el siguiente segmento de trafico a todos los motores 1204 de reglas. Cada uno de los motores individuales 1204 de reglas ejecuta una regla configurada. En una realizacion, cada motor 1204 de reglas evalua en un valor de verdadero o falso y afirma una lfnea ejecutada al final de cada paquete.
Despues de que un motor 1204 de reglas ha completado la evaluacion de una regla, notifica al circuito 1206 de agregacion del resultado. Si la regla se evalua en verdadero, se afirma la lfnea adaptada al circuito 1206 de agregacion. Cuando se completa la evaluacion de una regla para una porcion de datos, que puede ser el conjunto de segmentos de trafico obtenidos de la division de uno o mas paquetes 695 introducidos, se afirma la lfnea ejecutada. Las lfneas de accion indican al circuito 1206 de agregacion si redirigir o duplicar el segmento de datos, y permitir un cambio de escala futuro a interfaces adicionales para su duplicacion o redireccion. Cuando la salida de un motor 1204A de reglas es invalidar las salidas de un subconjunto de motores 1204B - 1204N de reglas, el motor 1204A de reglas puede afirmar lfneas de invalidacion correspondientes a ese subconjunto de motores 1204B - 1204N de reglas. En otra realizacion, el motor 1204A de reglas puede afirmar una lfnea de invalidacion que invalida los motores 1204B - 1204N de reglas.
El circuito 1206 de agregacion incluye logica de salida que impone normativas, que son conjuntos de reglas y la relacion logica, causal y/o temporal entre los mismos. El circuito 1206 de agregacion espera hasta que los motores 1204 de reglas afirmen sus bits ejecutados correspondientes antes de tomar una decision en funcion de las salidas de todos los motores 1204 de reglas. La decision, normalmente soltar, remitir o duplicar el paquete, es pasada a la interfaz 696 de salida, junto con el identificador de interfaz de duplicacion. El identificador de interfaz de duplicacion indica a la interfaz 696 de salida si el paquete esta siendo duplicado. El circuito 1206 de agregacion afirma un reinicio al circuito 1202 de distribucion cuando el circuito 1206 de agregacion determina que el circuito 1202 de distribucion puede saltarse todos los segmentos restantes del paquete actual e ir directamente al procesamiento del siguiente paquete. Puede ser deseable que el circuito 1206 de agregacion tambien soporte la duplicacion o redireccion del trafico a la interfaz 1212 de gestion.
Cuando se debe remitir un paquete, la interfaz 696 de salida solicita mediante la siguiente lfnea de paquetes que se le envfe el siguiente paquete desde el circuito 1202 de distribucion. Durante la transferencia del siguiente paquete, la interfaz 696 de salida afirma una indicacion de siguiente segmento al circuito 1202 de distribucion cuando esta lista para uno o mas segmentos adicionales de trafico desde el circuito 1202 de distribucion. En una realizacion, cuando la interfaz 696 de salida recibe segmentos de trafico procedentes del circuito 1202 de distribucion, la interfaz 696 de salida puede introducir en memoria intermedia parte del paquete, o todo el, la interfaz 696 de salida puede introducir en memoria intermedia parte del paquete, o todo el, segun sea necesario, antes de transmitirlo como un paquete 697 de salida. Esto depende de las funciones de postprocesamiento que puede ser necesario llevar a cabo, que pueden incluir, sin restriccion, una codificacion. En otra realizacion, se pueden enviar segmentos del paquete segun son recibidos por la interfaz 696 de salida. En ese modo de operacion, si la decision del circuito 1206 de agregacion es soltar el paquete, entonces se trunca el paquete y se vuelve practicamente inutilizable para el equipo conectado que recibe el paquete.
Para un procesamiento de paquetes y de corrientes, no es preciso que haya implicacion de ninguna unidad central de procesamiento (CPU) de uso general. Hay una interfaz de gestion general/de instrucciones/de control disponible para un equipo externo, que normalmente contiene una CPU, para controlar el circuito 1202 de distribucion, el circuito 1206 de agregacion y todos los motores 1204 de reglas mediante el control del circuito 1206 de agregacion.
Una realizacion de un motor 1204 de reglas es una maquina de estado controlada por microcodigo que ejecuta una regla configurada basada en comportamiento o firma. Se compila una regla a un conjunto de bits, o microcodigo, que se utiliza para programar la maquina de estado controlada por microcodigo y los registros asociados de configuracion. Cada maquina de estado controlada por microcodigo incluye una rutina de calculo que opera segun el microcodigo almacenado en un almacenamiento asociado de control. Las maquinas de estado controladas por microcodigo configuran un recorrido optimizado de datos para llevar a cabo tales operaciones como operaciones de paridad, de paridad enmascarada, y de inclusion/exclusion de alcance sobre cada segmento de trafico. El recorrido de los datos comprende etapas delgadas cuya implementacion requiere unicamente algunos niveles logicos, permitiendo, de esta manera, un diseno de frecuencia muy elevada.
Se puede implementar el conjunto de motores 1204 de reglas como un tejido de procesamiento en cadena de maquinas de estado controladas por microcodigo que operan de forma simultanea y colaborativa sobre cada segmento de trafico. Esta estructura regular se presta a la creacion de disenos paralelos de alta capacidad mediante la reiteracion de un numero pequeno de bloques fundamentales de construccion. Tambien proporciona una capacidad para preservar la informacion del estado, tal como informacion de conexion de TCP, localmente en la maquina relevante de estado controlada por microcodigo como parte de su estado. A diferencia del enfoque tfpico en
5
10
15
20
25
30
35
40
45
50
55
cortafuegos de informacion de estado, que preserva todas las conexiones en una memoria compartida, este tejido tambien permite que se almacene informacion de estado como un estado local de una unica maquina de estado controlada por microcodigo. Sin embargo, la arquitectura tambien soporta una tabla global de estado (que puede contener informacion de conexion) que esta disponible globalmente para todos los motores 1204 de reglas. La tabla de estado global puede mantenerse en una CAM o una memoria externa, y puede implementarse como memoria en chip. Si se encuentra en una CAM o una memoria externa, se puede acceder a la tabla de estado global por medio de los motores 1204 de reglas mediante la interfaz 1212 de gestion, que es responsable de un controlador que mantiene la informacion de estado y presenta informacion relevante de estado pertinente al paquete actual a todos los motores de reglas. Los motores 1204 de reglas pueden acceder simultaneamente a la informacion en la tabla de estado global, tal como mediante lfneas de senal de soporte ffsico a cada motor 1204 de reglas. En la presente realizacion, no se malgasta ningun ciclo de reloj gestionando colas de solicitudes de consultas a una CAM o a una memoria externa. La tabla de estado global puede ser actualizada paquete por paquete por medio de un soporte ffsico dedicado. Esta arquitectura, junto con su conjunto asociado de instrucciones, tambien puede ser personalizada y optimizada. Esto permite un procesamiento eficaz, facilmente configurable y unificado de la cabecera y una inspeccion profunda de las cargas utiles de paquete.
El circuito 1206 de agregacion incluye logica de salida que impone normativas. Una normativa puede ser una coleccion sencilla de reglas relacionadas con el uso de logica booleana. En una realizacion, el circuito 1206 de agregacion agrega las salidas de bloques individuales, por ejemplo expresadas como una O booleana de varias reglas. Si cualquiera de estas multiples reglas es un arbol, en el que se puede configurar cada nodo del arbol para que funcione como una O o Y logica. Se puede configurar una normativa para que sea una relacion compuesta complicada entre reglas, tal como una suma de productos y/o una relacion causal o temporal. La logica de agregacion puede implementar cualquier logica combinatoria o secuencial.
En una realizacion, el circuito 1206 de agregacion genera senales de control para activar y desactivar un subconjunto de uno o mas del conjunto de motores 1204 de reglas. La logica de agregacion tambien puede reiniciar o proporcionar una informacion de retorno de reglas al subconjunto de motores 1204 de reglas, y puede establecer parametros utilizados por el circuito 1202 de distribucion. Un motor 1204 de reglas puede incluir logica y puede generar senales de control para activar y desactivar directamente uno o mas motores adicionales de reglas.
Con referencia a las FIGURAS 6 y 8, la logica 682 de procesamiento del recorrido de los datos puede incluir el circuito 1202 de distribucion, las una o mas maquinas 1204 de estado controladas por microcodigo y el circuito 1206 de agregacion. El recorrido 692 de los datos puede incluir al menos un circuito 1202 de distribucion, la interfaz 696 de salida y conexiones con el circuito 1202 de distribucion y la interfaz 696 de salida recorridas por los paquetes de datos incluidos en uno o mas de los flujos 695 de datos que recorren el dispositivo 602 de red.
La FIG. 8 ilustra un ejemplo de una arquitectura parametrica, que permite el cambio de escala de metrica de rendimiento clave, tal como el caudal de proceso, con parametros de diseno, tales como la anchura del segmento de trafico, sin cambiar la estructura fundamental de la arquitectura. Se pueden utilizar segmentos mas anchos de trafico, que se corresponden con un recorrido mas ancho de los datos, para aumentar el caudal de proceso total del sistema transmitiendo, sin que medie solicitud, mas bits por ciclo de reloj del soporte ffsico a traves del aparato. Es posible afinar la anchura del recorrido de los datos y alcanzar una solucion de compromiso entre el uso de recursos (puertas) de silicio y la frecuencia operativa del aparato. Se puede calcular con precision el caudal de proceso mas desfavorable a traves del aparato multiplicando la anchura del segmento de trafico por el numero de ciclos de reloj por segundo dividido por el numero mas desfavorable de ciclos de reloj por segmento de trafico. Para aplicaciones tfpicas, el numero mas desfavorable de ciclos de reloj por segmento de trafico es inferior a cinco, preferentemente dos. Se puede calcular con precision el tiempo de espera mas desfavorable dependiendo de si la normativa de desvfo es almacenar y remitir o conmutar. Para almacenar y remitir, el tiempo de espera mas desfavorable es directamente proporcional al cociente del numero de segmentos en dos paquetes de tamano maximo dividido por la frecuencia del reloj. El tiempo de procesamiento es lineal en el numero de segmentos de trafico en un paquete.
La arquitectura ilustrada en la FIG. 8 esta disenada para ser optima, especfficamente, para aplicaciones de monitorizacion de la red, de analisis del trafico y de seguridad. Sin embargo, esta arquitectura tambien es suficientemente general para implementar una correspondencia de patrones de uso general, incluyendo aplicaciones de clasificacion de paquetes, de inspeccion profunda y de base de datos sobre la marcha. El denominador comun es el concepto de procesamiento de datos un segmento cada vez, siendo el tamano de un segmento un parametro de diseno de una arquitectura parametrica.
Las reglas utilizadas por los motores 1204 de reglas pueden especificarse de varias formas, incluyendo sin limitacion la configuracion de bits del soporte ffsico, el uso de un ensamblador de bajo nivel, la traduccion de lenguajes existentes utilizados por los sistemas de deteccion de intrusos (IDS) y los cortafuegos comunes, o el uso de un lenguaje de alto nivel. En una realizacion, se utiliza un ensamblador de bajo nivel, basado en una arquitectura de conjunto de instrucciones (ISA) unica y patentada correspondiente a una arquitectura subyacente de soporte ffsico optimizada para aplicaciones de seguridad de la red. En otra realizacion, se utiliza un lenguaje de alto nivel, con definicion de reglas a medida, basado en un lenguaje patentado de alto nivel para la seccion de entrada de
5
10
15
20
25
30
inspeccion de corrientes y paquetes (SPIFE). Algunos ejemplos de reglas en un lenguaje de alto nivel de definicion de reglas incluyen:
drop inbound eth:ip:tcp ip.src = 1.2.3.4, tcp.dport = 80;
Significado: soltar paquetes de TCP que estan entrando (de la red externa hacia el segmento protegido), que tienen una direccion IP fuente de 1.2.3.4 y un puerto 80 de destino (http).
drop inbound eth:ip:udp payload: “malicious”;
Significado: soltar paquetes de protocolo de datagrama de usuario (UDP) que estan entrando (de la red externa hacia el segmento protegido) si su carga util contiene la palabra clave “malicious”.
drop inbound eth:ip:udp payload: “malic*ious” [ignorecase];
Significado: soltar paquetes de protocolo de datagrama de usuario (UDP) que estan entrando (de la red externa hacia el segmento protegido) si su carga util incluye la palabra clave “malicious” en la que un numero cualquiera de caracteres separa la “c” de la “i”. La carga util no distingue entre mayusculas y minusculas, de forma que, por ejemplo, se sueltan “Malicious”, “mAliCious” y “MALICIOUS”.
count all inbound eth:ip:icmp icmp.type = PING_REPLY;
Significado: contar los paquetes de rastreo-respuesta de protocolo de mensajes de control de Internet (ICMP) enviados por las capas de protocolo IP y de Ethernet.
duplicate all inbound eth:ip:icmp icmp.type = PING_REPLY;
Significado: duplicar los paquetes entrantes de rastreo-respuesta de ICMP enviados por las capas de protocolo IP y de Ethernet a la tercera interfaz sin interferir con el flujo normal de paquetes de la primera interfaz a la segunda interfaz, o desde la segunda interfaz a la primera interfaz.
redirect all inbound eth:ip:icmp icmp.type = PING_REPLY;
Significado: redirigir los paquetes entrantes de rastreo-respuesta de ICMP enviados por las capas de protocolo IP y de Ethernet a la tercera interfaz.
La FIG. 9 ilustra el uso de la arquitectura de la FIG. 8 para aplicaciones bidireccionales, segun una realizacion de la invencion. Un ejemplo son las aplicaciones cliente-servidor, para las que es deseable monitorizar los comportamientos de protocolo bidireccional o el desencadenamiento de eventos. Si el servidor se encuentra fuera de la porcion de la red protegida por el aparato y el cliente se encuentra dentro de esa porcion de la red, el trafico procedente del servidor es entrante y las solicitudes y respuestas de ese cliente son salientes. Los paquetes entrantes 695 de entrada son procesados por el circuito 1202 de distribucion, el conjunto de motores 1204 de reglas y el circuito 1206 de agregacion para obtener paquetes entrantes 697 de salida. La interfaz 696 de salida no se muestra en la FIG. 9 en aras de la sencillez. Los paquetes salientes 1300 de entrada son procesados por el circuito 1302 de distribucion, un conjunto de motores 1304 de reglas y el circuito 1306 de agregacion para obtener paquetes salientes 1310 de salida. El circuito 1202 de distribucion, el conjunto de motores 1204 de reglas y el circuito 1206 de agregacion forman un primer recorrido en la primera direccion, o de entrada, y puede alinearse con el circuito diferenciado 1302 de distribucion, el conjunto de motores 1304 de reglas y el circuito 1306 de agregacion que forman un segundo recorrido en una segunda direccion, o de salida, distinta, tal como opuesta, de la primera direccion. El alineamiento en este contexto es conceptual, y no implica ninguna restriccion sobre el posicionamiento ffsico mutuo de estos bloques en una implementacion. Para gestionar las aplicaciones bidireccionales, puede ser deseable que el conjunto de motores 1204 de reglas intercambie informacion de control con el conjunto de motores 1304 de reglas. En otra realizacion, cada motor 1204 de reglas podrfa alternar dinamicamente entre el procesamiento de trafico del primer recorrido y del segundo recorrido. Esta alteracion dinamica puede ser controlada por microcodigo, y tambien puede ser controlada por los bits de configuracion del motor 1204 de reglas. Los motores 1204 de reglas pueden alternar entre el procesamiento de trafico del primer recorrido y del segundo recorrido de forma independiente y/o como un grupo.
La FIG. 10 ilustra una realizacion de la arquitectura interna del circuito 1202 de distribucion mostrado en la FIG. 8, segun una realizacion de la invencion. Los paquetes 695 de entrada introducen una memoria intermedia 1320 de tramas. En la presente realizacion, la memoria intermedia 1320 es una memoria intermedia FIFO, y esta organizada de forma logica en tamanos de segmento iguales a la anchura del recorrido de los datos a traves del aparato. Los paquetes 695 de entrada pueden haber sido divididos ya en segmentos de trafico por medio de un preprocesador, en cuyo caso puede no requerirse la memoria intermedia 1320 de tramas. De lo contrario, se colocan los paquetes 695 de entrada en la memoria intermedia 1320 de tramas con un separador entre los paquetes 695 de entrada. La memoria intermedia 1320 de tramas logicamente tiene un puerto de escritura, para los paquetes de entrada, y dos puertos de lectura, uno para un bloque logico 1324 de distribucion y el otro para la interfaz 696 de salida. Una
5
10
15
20
25
30
35
40
45
50
55
60
implementacion estandar de tal memoria intermedia utiliza dos bloques separados de memoria, de tal forma que uno se encuentre cerca de la interfaz de entrada y uno se encuentre cerca de la interfaz de salida. En una implementacion de almacenar y remitir, un paquete permanece almacenado en la memoria intermedia 1320 de tramas hasta que se ha comunicado por medio del circuito 1206 de agregacion una decision de los motores 1204 de reglas a la interfaz 696 de salida, provocando que la interfaz 696 de salida afirme la siguiente lfnea de paquetes. En una implementacion de conmutacion, cada segmento de trafico de un paquete es remitido sin retraso a la interfaz 696 de salida. Se puede enviar una senal de aborto a la interfaz 696 de salida para provocar que la interfaz 696 de salida corrompa una porcion del paquete para provocar que el paquete sea desechado por los dispositivos en el extremo de recepcion en la red. Tanto la memoria intermedia 1320 de tramas como la logica 1324 de distribucion pueden tener interfaces de gestion/de instruccion/de control.
La logica 1324 de distribucion saca un segmento de datos de la memoria intermedia 1320 de tramas cuando todos los motores conectados 1204 de reglas estan listos para el siguiente segmento de datos, segun se indica por su negacion de sus lfneas de control de avance a la logica 1324 de distribucion. Si uno o mas de los motores 1204 de reglas no esta listo, la logica 1324 de distribucion niega la lfnea de control de avance a la memoria intermedia 1320 de tramas y espera hasta que todos los motores 1204 de reglas estan listos. La logica 1324 de distribucion recibe el reinicio del circuito 1206 de agregacion, descrito con referencia a la FIG. 8, que provoca que la logica 1324 de distribucion se salte todos los segmentos restantes del paquete actual y vaya directamente al procesamiento del siguiente paquete.
La FIG. 11 ilustra el diseno interno de un motor 1204 de reglas basado en una maquina de estado controlada por microcodigo configurada segun una realizacion de la invencion. El diseno esta basado en una maquina programable personalizada de estado con una memoria local independiente. Normalmente, la memoria es memoria estatica de acceso aleatorio (SRAM), pero puede ser de un tipo distinto. La programacion de la maquina de estado se lleva a cabo escribiendo contenido en una memoria 1406 de almacenamiento de control. Las implementaciones de bus para permitir la lectura de la memoria local distribuida, y la escritura en la misma, son bien conocidas en la tecnica. Tambien se contempla que el motor 1204 de reglas pueda ser implementado de diversas formas, tales como utilizando circuitos integrados para aplicaciones especfficas (ASIC) o dispositivos de logica programable (PLD).
Cada motor 1204 de reglas puede contener una pequena memoria intermedia local 1400 de primero en entrar y en salir (FIFO) para contener segmentos de trafico recibidos procedentes del circuito 1202 de distribucion mientras cada motor 1204 de reglas se encuentra procesando un segmento precedente. Si esta presente, esta memoria intermedia indica a la logica de distribucion mediante la lfnea de avance cuando puede aceptar segmentos adicionales.
El fin de la memoria intermedia local es evitar periodos de tiempo durante los que no hay datos disponibles para ser procesados por un motor 1204 de reglas (retrasos). Se puede visualizar la memoria intermedia local como una ventana de longitud fija que se desliza sobre los datos de entrada. Se proporciona un segmento de trafico a cada motor 1204 de reglas por medio del circuito 1202 de distribucion cuando se ha afirmado a todos los motores 1204 de reglas sus lfneas de avance, lo que indica que las memorias intermedias locales de todos los motores 1204 de reglas tienen espacio para el segmento de trafico. Los segmentos de trafico que ya estan en las memorias intermedias locales de los motores 1204 de reglas estan disponibles para un procesamiento en paralelo por todos los motores 1204 de reglas. Como resultado, un motor 1204 de reglas que ha completado el procesamiento de un primer segmento de trafico puede recibir inmediatamente, sin que medie solicitud, el siguiente segmento de trafico de la memoria intermedia local, sin ser retrasado por otro motor 1204 de reglas que aun no ha completado el procesamiento del primer segmento. Dado que hay un maximo numero de comparaciones y, por lo tanto, de ciclos de procesamiento, requeridos para aplicar una regla a un segmento de trafico, se puede acotar el tamano de esta memoria intermedia local. Normalmente, el procesamiento de un segmento de trafico por medio de un motor 1204 de reglas no requiere mas de dos ciclos. Si se establece entonces dos ciclos como el numero de ciclos de procesamiento para cualquier segmento de trafico, deslizar la ventana cada dos ciclos el numero de bytes requerido para incluir el siguiente segmento de trafico garantiza que ninguna de las memorias intermedias locales se llena.
Un bloque 1402 de logica de condicion indica mediante una lfnea de avance cuando esta listo para recibir el siguiente segmento de datos procedente de la memoria intermedia 1400 de entrada o directamente procedente del circuito 1202 de distribucion. La logica de condicion esta configurada por cada lfnea de microcodigo para llevar a cabo una o mas comparaciones en el segmento actual y, en funcion de las comparaciones, seleccionar el siguiente estado utilizando un selector 1404. La logica 1402 de condicion y el selector 1404 estan incluidos en una rutina 1403 de calculo. La logica 1402 de condicion implementa operaciones combinatorias al igual que logica secuencial, que depende de su estado interno. En la presente realizacion, el siguiente estado es la direccion de la siguiente instruccion de microcodigo que ha de ser ejecutada. Ademas, la logica 1402 de condicion establece las indicaciones de ejecutado, correspondencia, accion e invalidacion proporcionadas al circuito 1206 de agregacion. La logica de agregacion puede generar senales de control para activar y desactivar la logica 1402 de condicion, o para proporcionar una informacion de retorno de reglas a la logica 1402 de condicion.
Cada lfnea de microcodigo en el almacenamiento 1406 de control determina que tipo de comparacion llevar a cabo en el segmento actual de trafico. En funcion de los resultados de la comparacion, la lfnea de microcodigo tambien
5
10
15
20
25
30
35
40
45
50
55
60
proporciona la direccion de la siguiente linea de microcodigo que ha de ser ejecutada. En una realizacion, cada linea en el almacenamiento 1406 de control incluye cuatro tipos de informacion:
1. Bits de control (tales como codigos de operacion o bits de configuracion) que determinan que tipo de comparaciones lleva a cabo la logica 1402 de condicion, y que estado interno deberfa almacenarse en variables internas de estado (flops y registros).
2. Valores utilizados por las comparaciones. Los tipos de comparacion incluyen paridad, pertenencia a un conjunto, comparacion de alcance y operaciones mas complejas, tales como comparaciones de contador que indican si se ha producido una secuencia de bits mas de 3 veces en los anteriores 10 segmentos.
3. Direcciones de direcciones subsiguientes que han de ser ejecutadas en funcion de la salida de la logica 1402 de condicion. Dependiendo del resultado de la logica 1402 de condicion, se puede seleccionar una de multiples siguientes direcciones. Permitir mas de una siguiente direccion permite una mayor flexibilidad para implementar condiciones complejas, mientras haya ciclos de reloj.
4. Control del estado interno y salidas primarias del motor 1204 de reglas. Por ejemplo, esto puede incluir si se afirma o no la linea ejecutada, ya sea para hacer avanzar el siguiente segmento en el paquete o para mantenerse para otra comparacion que implique el segmento actual, o si moverse inmediatamente al extremo del paquete actual.
Estos distintos tipos de comparaciones, junto con la arquitectura, permiten el procesamiento tanto de paquetes individuales como de corrientes de paquetes por medio del conjunto de motores 1204 de reglas. Un motor 1204 de reglas puede procesar una corriente sin reconstruirla completamente en realidad en la memoria externa del sistema. En funcion de las instrucciones de microcodigo, el motor 1204 de reglas puede tomar decisiones que estan basadas en una secuencia de eventos que se producen con el paso del tiempo y que estan encapsulados en distintos paquetes.
La FIG. 12 muestra un ejemplo de una secuencia de ejecucion de instrucciones de microcodigo para implementar una regla de comparacion, segun una realizacion de la invencion. La secuencia de busquedas para una secuencia de cuatro bytes “abcd” en dos segmentos sucesivos (se supone que cada uno es de 2 bytes), seguida por una secuencia de dos bytes con un valor entre “10” y “14”, ambos inclusive. Para un paquete de veinte bytes que se representa simbolicamente como “1234yzwxabcd12345678”, el estado real hace una transicion desde el inicio del paquete hasta que una decision sea 0 -> 1 -> 1 -> 1 -> 1 -> 1 -> 2 -> 3 -> 4. Cuando el motor 1204 de reglas alcanza el estado 4, afirma las salidas tanto de ejecutado como de correspondencia al circuito 1206 de agregacion en la FIG. 8. Si los paquetes de datos no incluyen el contenido deseado, entonces en cuanto el SEGMENTO es igual al separador de paquetes de dos bytes “- -”, hay una transicion automatica al estado 5. En el estado 5, el motor 1204 de reglas afirma la linea ejecutada y niega la linea adaptada.
El numero de operaciones que pueden ser ejecutadas en paralelo en el SEGMENTO y su tipo depende de la implementacion especffica de soporte ffsico, incluyendo la anchura de la linea de memoria del almacenamiento de control. Este ejemplo supone que la comparacion del SEGMENTO con un valor dado y la comprobacion de si el SEGMENTO se encuentran dentro de un alcance dado pueden realizarse en paralelo. De lo contrario, las operaciones pueden realizarse en dos ciclos de reloj consecutivos separados. Por ejemplo, el estado 3 realiza dos comprobaciones en paralelo y supone que los siguientes tres valores de direccion pueden ser especificados en una linea de memoria del almacenamiento de control.
La FIG. 13 ilustra un ejemplo de la implementacion de la logica de condicion de la FIG. 11, segun una realizacion de la invencion. En funcion del segmento introducido procedente de la memoria intermedia local 1400 y del codigo de operacion y de los bits de configuracion procedentes del almacenamiento 1406 de control, se puede realizar un conjunto de comparaciones en paralelo entre el segmento, los operandos y las variables internas de estado. Un operando es un valor configurado utilizado para una comparacion. Una variable interna de estado incluye valores almacenados en flops, registros, o contadores, tal como estadfstica. Estos valores incluyen el resultado de comparaciones entre valores almacenados, tales como el numero de veces que el valor en un primer contador ha superado el valor en un segundo contador. En la presente realizacion, cada bloque 1402 de logica de condicion tiene dos contadores que se dedican a contar el numero de paquetes y el numero total de segmentos (o bytes) que han sido procesados por el microcodigo en el almacenamiento 1406 de control. Tambien hay contadores y registros de estado asociados con interfaces de entrada, de salida y de gestion. Las comparaciones pueden realizarse entre registros y contadores locales y/o contadores globales.
Cada subbloque en la FIG. 13 implementa una comparacion especffica. Se implementan comparaciones de operandos con datos tales como una comprobacion de paridad 1502 y de alcance 1504 por medio de circuitos 1500 de comprobacion de condicion, que son utilizados para evaluar reglas basadas en firma. La modificacion del estado interno almacenado en flops, registros o contadores 1510 y comparaciones entre un estado interno variable y un operando 1512 (u otro registro/variable interno de estado o un contador/variable global de estado) se implementan mediante circuitos 508 de analisis de la condicion, que pueden ser utilizados para evaluar reglas de comportamiento o para recoger estadfstica. Existe una actualizacion automatica de los estados internos, tales como el numero de
5
10
15
20
25
30
35
40
45
50
55
60
bytes del paquete actual que han sido procesados hasta entonces, segun se especifica mediante el codigo de operacion y las entradas de configuracion. Los resultados de las comparaciones paralelas entre subbloques son aumentados por un bloque en un bloque configurable 1514 de logica de salida (booleana o secuencial o ambas). La seleccion de la siguiente direccion utilizada por el selector 1404 y las salidas de las maquinas de estado controladas por microcodigo visibles al circuito 1206 de agregacion estan configuradas por la logica configurable 1514 de salida.
Las realizaciones de la presente invencion permiten la modificacion del trafico de la red que puede tener una granularidad bit a bit (ser granular hasta el bit) en cualquier lugar en el trafico de la red. Se puede modificar el trafico de la red en forma de paquetes en cualquier lugar en la carga util o en la cabecera del paquete. Estas modificaciones a la carga util o la cabecera del paquete pueden incluir cambios de uno o mas bits existentes, la insercion de uno o mas bits, y la eliminacion de uno o mas bits. Tambien se contempla que las realizaciones de la presente invencion permitan una reflexion selectiva del trafico de entrada con una granularidad bit a bit, de forma que solo se dirija el trafico que necesita ser mirado en detalle a una entidad con una menor velocidad de transferencia de procesamiento de paquetes, tal como una CPU o un analizador de protocolo.
Con referencia a la FIG. 8, la arquitectura de una realizacion de la invencion tambien soporta modificaciones y una reflexion granulares del trafico. Despues de completar la evaluacion de una regla para un segmento de datos correspondiente a uno o mas paquetes 695 de entrada, cada motor 1204 de reglas notifica al circuito 1206 de agregacion mediante lfneas de instruccion de modificaciones que han de ser realizadas a cada paquete en el segmento de datos. Las instrucciones de modificacion indicadas por un motor 1204A de reglas pueden ser identicas a las instrucciones de modificacion, o solaparse a las mismas, indicadas por uno o mas de los otros motores 1204B - 1204N de reglas. La logica en el circuito 1206 de agregacion que puede incluir logica tanto secuencial como combinatoria combina las instrucciones de modificacion indicadas por los motores 1204 de reglas en una orden de modificacion que incluye indicaciones de todas las modificaciones que han de ser realizadas a cada paquete en el segmento de datos. Cuando se combinan las instrucciones de modificacion indicadas por los motores 1204 de reglas en la orden de modificacion, el circuito 1206 de agregacion puede eliminar o modificar instrucciones de modificacion para eliminar la redundancia.
Para cada paquete en el segmento de datos, la interfaz 696 de salida normalmente responde a una orden de modificacion procedente del circuito 1206 de agregacion si la interfaz 696 de salida ha recibido indicaciones del circuito 1206 de agregacion en la lfnea de decision de que el paquete sea remitido, redirigido o duplicado. Dado que el circuito 696 de salida recibe segmentos de trafico procedentes del circuito 1202 de distribucion en respuesta a las indicaciones del siguiente paquete y del siguiente segmento, el circuito 696 de salida puede introducir en memoria intermedia parte de un paquete, o todo el, para facilitar la modificacion del paquete por medio del circuito 696 de salida. El circuito 696 de salida puede contener memoria que almacena la orden de modificacion o una version procesada de la orden de modificacion. Como parte de la modificacion del paquete, el circuito 696 de salida puede modificar campos en el paquete utilizados para la deteccion de errores o la correccion de errores, tal como el campo de secuencia de comprobacion de tramas (FCS) o de comprobacion cfclica de la redundancia (CRC) para la cabecera, la carga util o todo el paquete. Si el circuito 696 de salida inserta campos en un paquete o encapsula un paquete con una nueva cabecera, se pueden anadir al paquete uno o mas campos nuevos para la deteccion de errores o la correccion de errores.
En funcion de las salidas de los motores 1204 de reglas, el circuito 1206 de agregacion utiliza las lfneas identificadoras de la interfaz de duplicacion para indicar a la interfaz 696 de salida que se esta redirigiendo o duplicando un paquete, y la o las interfaces a las que se esta enviando el paquete. El paquete redirigido o duplicado puede ser modificado por la interfaz 696 de salida. Los datos reflejados pueden corresponderse con uno o mas puertos 800 que pueden ser cualquier combinacion de puertos ffsicos y logicos. Los datos reflejados pueden ser datos redirigidos a la interfaz 1212 de gestion desde la interfaz 696 de salida o datos duplicados dirigidos a la interfaz 1212 de gestion y tambien remitidos desde la interfaz 696 de salida. Alguna combinacion de la interfaz 696 de salida y la interfaz 1212 de gestion puede tener una cantidad limitada de memoria para la correspondencia de velocidades de transferencia de datos de los segmentos de trafico que entran en la interfaz 1212 de gestion desde el circuito 1202 de distribucion hasta la salida de la interfaz 1212 de gestion. Tambien se puede llevar a cabo cualquier correspondencia de velocidades de transferencia de datos mediante dispositivos externos conectados con la interfaz 1212 de gestion. La salida de la interfaz 1212 de gestion puede combinar datos reflejados y comunicaciones de gestion o de control.
Las modificaciones de paquetes pueden facilitar la seguridad y la monitorizacion de la red, tal como permitiendo una monitorizacion selectiva de trafico sospechoso, evitando ataques, o mitigar ataques en curso. Por ejemplo, se pueden modificar los paquetes 695 de entrada en la FIG. 8 con un numero no estandar o no asignado de puertos TCP, utilizando la arquitectura mostrada en la FIG. 8, formando paquetes 697 de salida con un numero de puertos TCP correlacionados con una aplicacion segura corriente abajo para una monitorizacion. Los paquetes 695 de entrada de fuentes desconocidas con opciones no autorizadas de protocolo de Internet (IP) pueden ser modificados creando paquetes 697 de salida, por ejemplo, con las opciones de IP borradas o modificadas para ser no operativas para evitar o mitigar ataques. Los paquetes 695 de entrada con direcciones IP falsificadas pueden ser modificados formando paquetes 697 de salida con la direccion IP de un dispositivo corriente abajo de monitorizacion.
5
10
15
20
25
30
35
40
45
50
55
60
Esta modificacion tambien puede facilitar la gestion de trafico ademas, o con independencia, de facilitar la seguridad de la red. Por ejemplo, los paquetes 695 de entrada pueden ser modificados creando paquetes 697 de salida con una etiqueta insertada de red de area local virtual (VLAN) o con una etiqueta de conmutacion multiprotocolo basada en etiquetas (MPLS) que pueden corresponderse con el envfo, por parte del cliente, de los paquetes 695 de entrada a un segmento especffico de LAN en el caso de la etiqueta de VLAN, o con un tunel especffico de MPLS en el caso de la etiqueta de MPLS. Esto es un ejemplo de etiquetado de paquetes. Los paquetes 695 de entrada tambien pueden ser modificados formando paquetes 697 de salida con una etiqueta de conmutacion multiprotocolo basada en etiquetas (MPLS) que contiene una marca de calidad de servicio que indica el tipo de procesamiento que debe recibir este paquete de los dispositivos corriente abajo. Esta operacion es un ejemplo de coloracion de paquetes.
Esta modificacion tambien puede facilitar la integracion de dispositivos en un sistema. Por ejemplo, los paquetes 695 de entrada pueden ser modificados formando paquetes 697 de salida que tienen una cabecera encapsulada. Esta cabecera encapsulada puede transmitir informacion de control de significado para un dispositivo corriente abajo particular. Un fin comun de la encapsulacion de cabeceras es indicar los resultados de preprocesamiento de paquetes 695 de entrada por un dispositivo con la arquitectura mostrada en la FIG. 8, de forma que los dispositivos corriente abajo, tales como NP, que reciben paquetes 697 de salida no necesiten repetir el mismo procesamiento, ahorrando recursos de calculo y mejorando el rendimiento de la red.
Se utiliza la reflexion para dirigir trafico de entrada a una entidad tal como una CPU o un analizador de protocolo para una monitorizacion y un analisis detallados del trafico. Es deseable una reflexion selectiva entre los puertos 800 de entrada debido a que una CPU o un analizador de protocolo normalmente no puede procesar paquetes a la misma velocidad de transferencia de datos que la arquitectura de la FIG. 8, que esta disenada para altas velocidades de transferencia de datos de multiples gigabits por segundo.
La reflexion con granularidad bit a bit permite una reflexion selectiva, precisa, quirurgica. El uso de la arquitectura mostrada en la FIG. 8 para filtrar flexiblemente el trafico de alta velocidad permite el uso de una CPU o un analizador de protocolo para trafico dirigido de manera precisa enviado por la interfaz 1212 de gestion. Tampoco hay restriccion sobre los tipos de puertos 800, tales como un puerto ffsico o un puerto logico definido por una LAN virtual, que puede ser reflejado a la interfaz 1212 de gestion. Por ejemplo, puede ser deseable inspeccionar unicamente paquetes que comuniquen cotizaciones de bolsa o de una pagina Web particular. La inspeccion profunda de paquetes soportada por la arquitectura de la FIG. 8 permite la aplicacion de reglas, incluyendo reglas basadas en firma, en las que la firma puede aparecer en la cabecera o carga util de paquetes individuales, o en una secuencia de paquetes. Las reglas de comportamiento tambien pueden integrarse con reglas basadas en firma para definir los criterios para una reflexion selectiva. El filtrado del trafico de alta velocidad que utiliza una combinacion de reglas de comportamiento y basadas en firma puede adaptarse para generar una solucion a nivel del sistema que aprovecha mejor las capacidades de procesamiento de la CPU o del analizador de protocolo, sin requerir NP ni CAM costosos. Por ejemplo, la arquitectura de la FIG. 8 puede aplicar una regla incluyente basada en firma para el trafico reflejado si la carga de trafico reflejado es sustancialmente menor que la maxima capacidad de procesamiento del analizador de protocolo, y puede aplicar reglas basadas en firma progresivamente mas estrictas segun se aproxima la carga de trafico reflejado a la maxima capacidad de procesamiento del analizador de protocolo.
La arquitectura de la FIG. 8 esta basada en soporte ffsico y optimizada para aplicaciones de analisis de cabecera, de inspeccion profunda de paquetes y de modificacion de paquetes. En particular, la arquitectura no incorpora disenos de componentes de uso general tales como CPU. Para evitar un rediseno intrusivo del soporte ffsico, de registros y de soporte logico de bajo nivel de NP y de conmutadores, una forma sencilla para incorporar esta arquitectura en componentes de serie existentes es integrar la arquitectura en un componente en la capa ffsica (PHY) o en una combinacion de la PHY y de la subcapa de control de acceso a los medios (MAC) del modelo de referencia de interconexion de sistemas abiertos (OSI) de siete capas para capas de protocolo de red. Estas capas, moviendose hacia arriba desde bits no tratados en un canal de comunicaciones hasta protocolos de aplicacion utilizados comunmente por los usuarios finales, incluyen la capa ffsica, la capa de enlace de datos, la capa de red, la capa de transporte, la capa de sesion, la capa de presentacion y la capa de aplicacion. La division de las capas del modelo de referencia oSi esta basado en principios que incluyen una definicion clara de las funciones llevadas a cabo por cada capa, una abstraccion de capas para minimizar dependencias entre capas y una facilitacion de la definicion de estandares.
Con referencia a la FIG. 8, la arquitectura de una realizacion de la invencion tambien soporta la reduccion de datos, la gestion basada en la transmision, sin que medie solicitud, la generacion de alertas y el analisis del tiempo de espera de la red y de la fluctuacion. Segun se ha descrito con referencia a la FIG. 7, estas funciones estan soportadas por logica incluida en la logica 694 de analisis del trafico. En una realizacion, la logica 694 de analisis del trafico incluye logica de soporte ffsico dedicada para llevar a cabo cada una de estas funciones. Se puede incluir la logica 694 de analisis del trafico, junto con el resto de la arquitectura mostrada en la FIG. 8, en un unico chip. El unico chip puede ser un sistema en chip, y puede incluir uno o mas circuitos integrados. La logica 694 de analisis del trafico, junto con el resto de la arquitectura mostrada en la FIG. 8, puede implementarse en circuiterfa de soporte ffsico y/o en logica reconfigurable. De forma alternativa, la logica 694 de analisis del trafico puede implementarse en soporte logico inalterable.
5
10
15
20
25
30
35
40
45
50
55
60
La logica 694 de analisis del trafico puede estar configurada para recibir informacion relacionada con los datos de la red (tal como la informacion 686 relacionada con los datos de la red descrita con referencia a la FIG. 6) e informacion de identificacion del flujo procedente de las maquinas 1204 de estado controladas por microcodigo. Con referencia a la FIG. 7, una o mas de la logica 700 de reduccion de datos, la logica 702 de transmision, sin que medie solicitud, la logica 704 de generacion de alertas, la logica 706 de analisis del tiempo de retraso de la red y de la fluctuacion, la logica 708 de calculo y la logica 710 de control estan configuradas para procesar la informacion relacionada con los datos de la red y la informacion de identificacion del flujo como parte del desempeno de sus funciones. Ademas, la logica 694 de analisis del trafico puede estar configurada para recibir informacion de control (tal como la informacion 688 de control descrita con referencia a la FIG. 6) procedente del circuito 1202 de distribucion. Con referencia a la FIG. 7, la logica 710 de control puede estar configurada para procesar la informacion de control, y para convertir la informacion de control en senales para configurar una o mas de la logica 700 de reduccion de datos, la logica 702 de transmision, sin que medie solicitud, la logica 704 de generacion de alertas, la logica 706 de analisis del tiempo de espera de la red y de la fluctuacion, y la logica 708 de calculo. En una realizacion, se proporcionan paquetes que incluyen datos de analisis del trafico de la red generados por la logica 702 de transmision, sin que medie solicitud (tal como los datos 690 de analisis del trafico de la red descritos con referencia a la FIG. 6) a la interfaz 696 de salida en respuesta a la siguiente senal de paquete procedente de la interfaz 696 de salida.
En una realizacion, las maquinas 1204 de estado controladas por microcodigo pueden ser configurables de forma sensible a la informacion de control para variar una granularidad de tiempo en la cual se recogen los datos estadfsticos no reducidos. Se puede proporcionar la informacion de control a las maquinas 1204 de estado controladas por microcodigo por medio del circuito 1202 de distribucion de una forma similar a como se proporcionan segmentos de los paquetes 695 de entrada a las maquinas 1204 de estado controladas por microcodigo.
Las modificaciones de paquetes, segun se han descrito anteriormente con referencia a la FIG. 8, tambien pueden facilitar la medicion del tiempo de espera de la red, ademas, o independientemente, de facilitar la seguridad de la red y la gestion del trafico. Por ejemplo, los paquetes 695 de entrada incluidos en uno o mas flujos de datos (tales como los puertos logicos 800) pueden ser modificados formando paquetes 697 de salida con un sello de tiempo insertado. El sello de tiempo puede indicar un tiempo de transmision. El contenido del sello de tiempo puede determinarse en funcion de una senal de referencia de tiempo proporcionada por una fuente de tiempo acoplada con las maquinas 1204 de estado controladas por microcodigo. Se puede proporcionar el sello de tiempo como parte de la instruccion de modificacion al circuito 1206 de agregacion.
Con referencia a la FIG. 11, la logica 1402 de condicion puede estar configurada por microcodigo almacenado en el almacenamiento 1406 de control para evaluar una regla para medir el tiempo de espera de la red por paquete asociado con los paquetes 695 de entrada incluidos en uno o mas flujos de datos (tales como los puertos logicos 800).
Con referencia a la FIG. 8, cada motor 1204 de reglas puede interconectarse con un modulo asociado de direccionamiento. La FIG. 14 ilustra un diagrama de bloques logicos de la interfaz entre motores 1204 de reglas y sus modulos asociados 2400 de direccionamiento, segun una realizacion de la invencion. Cada motor 1204 de reglas puede aplicar una regla para extraer uno o mas campos de una unidad de entrada de datos de la red, tal como un paquete de entrada. La regla puede tener una granularidad bit a bit en la cabecera y la carga util del paquete, de forma que los campos extrafdos puedan tener una granularidad bit a bit y ser de cualquier porcion del paquete. Cada motor 1204 de reglas proporciona los campos extrafdos a un modulo 2400 de direccionamiento. En una realizacion, cada motor 1204 de reglas puede proporcionar un tiempo medido de espera de la red por paquete al modulo 2400 de direccionamiento. Cada modulo 2400 de direccionamiento procesa los datos para generar un identificador de direccionamiento que tiene una anchura deseablemente menor en bits que los campos extrafdos proporcionados al modulo 2400 de direccionamiento, y proporciona el identificador de direccionamiento de nuevo al motor 1204 de reglas que proporciono los campos extrafdos. El identificador de direccionamiento puede estar asociado con un tipo de paquete o flujo de paquete o, de forma mas general, con cualquier subconjunto de unidades de datos de la red que comparten una propiedad o atributo. Cada modulo 2400 de direccionamiento puede configurarse mediante la interfaz 1212 de gestion. En una realizacion, se pueden proporcionar los identificadores de direccionamiento a la interfaz 1212 de gestion.
De forma alternativa, cada motor 1204 de reglas puede generar el identificador de direccionamiento como parte de su procesamiento de unidades de entrada de datos de la red. En este caso, la funcion de los modulos 2400 de direccionamiento es realizada por los motores 1204 de reglas, haciendo que sean innecesarios modulos separados 2400 de direccionamiento.
En una realizacion, cada motor 1204 de reglas puede aplicar una regla para producir instrucciones de modificacion en funcion de la informacion de categorizacion, tal como el identificador de direccionamiento. Las instrucciones de modificacion pueden incluir el identificador de direccionamiento. El circuito 1206 de agregacion puede combinar las instrucciones de modificacion indicadas por los motores 1204 de reglas en una orden de modificacion que se proporciona al circuito 696 de salida, segun se ha descrito anteriormente. En funcion de la orden de modificacion, el circuito 696 de salida puede anadir el identificador de direccionamiento a la unidad de datos de la red. El
5
10
15
20
25
30
35
40
45
50
55
60
identificador de direccionamiento puede anadirse a cualquier parte de la unidad de datos de la red, tal como la cabecera. En funcion de la decision de encaminamiento del circuito 1206 de agregacion, el circuito 696 de salida puede proporcionar la unidad modificada de datos de la red a un sistema de gestion mediante la interfaz 1212 de gestion. El circuito 696 de salida tambien puede transmitir la unidad modificada de datos de la red a dispositivos corriente abajo. Un beneficio de adjuntar informacion de categorizacion, tal como un identificador de direccionamiento, a una unidad de datos de la red pasada a otros dispositivos en la red es para que los dispositivos corriente abajo puedan aprovechar las capacidades de analisis y de procesamiento del trafico de la red de un dispositivo corriente arriba. Los dispositivos corriente abajo pueden no tener las mismas capacidades de analisis y de procesamiento del trafico que el dispositivo corriente arriba. Los dispositivos corriente abajo tambien pueden aprovechar la informacion de categorizacion asociada con una unidad recibida de datos de la red para simplificar y racionalizar el analisis y el procesamiento del trafico de la red llevados a cabo en los dispositivos corriente abajo.
Las realizaciones de la invencion son rentables, sencillas de utilizar, gestionables y flexibles. Con un algoritmo y un diseno de bloques unificados en el circuito 1202 de distribucion, los motores 1204 de reglas y el circuito 1206 de agregacion, el aparato lleva a cabo funciones de analisis de la cabecera, de inspeccion profunda de paquetes y de modificacion de paquetes sin el uso de multiples coprocesadores costosos, tales como NP, para un procesamiento de cabeceras y una modificacion de paquetes y una CAM para la correspondencia de patrones. El aparato puede ser desplegado incrementalmente para equilibrar el riesgo con el presupuesto disponible. El aparato puede integrarse como parte de una capa ffsica, una capa de enlace de datos u otra interfaz de capa inferior, y como parte de la misma, para permitir un procesamiento basado en reglas de capa superior en dispositivos rentables de baja potencia que no utilizan ninguno de los recursos de calculo de los NP y de las CAM. La arquitectura del aparato esta adaptada al analisis de cabeceras, a una inspeccion profunda de paquetes y a una modificacion de paquetes a multi Gb/s y a mayores velocidades de entrada. El aparato proporciona una interfaz 1212 para la gestion y la monitorizacion de la red, la configuracion de sus caracterfsticas especializadas y la salida de datos reflejados, y tambien puede soportar el uso de preprocesadores y de postprocesadores para necesidades especfficas del cliente.
Las realizaciones de la invencion tambien tienen un rendimiento predecible y facilmente verificable, basado en su arquitectura. La implementacion del conjunto de motores 1204 de reglas como un tejido de procesamiento en cadena de maquinas de estado de microcodigo que operan de forma simultanea y colaborativa garantiza que se pueden calcular y acotar el caudal de proceso y el tiempo de espera mas desfavorable a traves del aparato. Como resultado, se pueden realizar predicciones precisas acerca de cuando se puede hacer funcionar el aparato a velocidad del hilo. La operacion de la velocidad de hilo es suficientemente rapida para procesar, sin una perdida involuntaria de trafico, la combinacion mas desfavorable de tamano de paquete de entrada y de velocidad de transferencia de paquetes en paquetes por segundo dada una regla de maxima complejidad. Ademas, dado que hay un numero determinista mas desfavorable de ciclos de reloj para el procesamiento de cualquier segmento de trafico por medio de un motor 1204 de reglas, el aparato puede tener un pequeno retraso acotado de procesamiento entre mezclas de tipos de trafico, de tamanos de paquetes y de complejidad de las reglas. Un pequeno retraso acotado significa que el aparato puede utilizar memorias intermedias en chip sencillas en vez de memoria externa o caches que pueden requerir una jerarqufa de memoria o estructuras de encolamiento complejas. El uso de memorias intermedias en chip sencillas no solo aumenta el rendimiento del aparato mediante un uso eficaz y optimo de los recursos de soporte ffsico, tales como puertas y elementos de memoria, sino que tambien evita casos diagonales relacionados con diversos patrones de trafico. Tambien permite la validacion utilizando una verificacion formal y una cobertura estructural, que reducen la probabilidad de escapes y errores de diseno.
Una persona con un nivel normal de dominio de la tecnica comprendera que las realizaciones descritas en la presente memoria pueden procesar diversas formas de trafico de red incluyendo, sin limitacion, paquetes. Por ejemplo, las realizaciones descritas en la presente memoria pueden procesar celulas o tramas.
Las realizaciones de la invencion pueden permitir una monitorizacion de la red que puede ser suficientemente completa para identificar fenomenos de la red que pueden no ser identificables por anteriores sistemas de monitorizacion y de gestion de la red, tales como microrrafagas o nuevos tipos de ataques virales no reconocidos por los cortafuegos o el soporte logico AV. Una monitorizacion eficaz requiere una recogida extensa de estadfstica de la red para permitir un analisis de comportamiento de la red. La recogida de estadfstica puede complementarse con una copia de instantaneas de toda la estadfstica recogida en un instante, o la agregacion y correlacion de informacion procedente de multiples aparatos para proporcionar una vision clara del estado y del comportamiento de la red.
La anterior descripcion, para los fines de la explicacion, ha utilizado nomenclatura especffica para proporcionar una comprension minuciosa de la invencion. Sin embargo, sera evidente para un experto en la tecnica que no se requieren detalles especfficos para poner en practica la invencion. Por lo tanto, las anteriores descripciones de realizaciones especfficas de la invencion se presentan con fines ilustrativos y descriptivos. No se concibe que sean exhaustivas ni que limiten la invencion a las formas precisas divulgadas; evidentemente, son posibles muchas modificaciones y variaciones en vista de las anteriores ensenanzas. Las realizaciones han sido escogidas y descritas para explicar de forma optima los principios de la invencion y sus aplicaciones practicas, por lo tanto, permiten que otros expertos en la tecnica utilicen de forma optima la invencion y diversas realizaciones con diversas
modificaciones tambien son aptas para el uso particular contemplado. Se concibe que las siguientes reivindicaciones y sus equivalentes definan el alcance de la invencion.

Claims (13)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    REIVINDICACIONES
    1. Un aparato, que comprende:
    una pluralidad de maquinas (1204) de estado controladas por microcodigo, estando configurada al menos una de la pluralidad de maquinas (1204) de estado controladas por microcodigo para generar primeros datos estadfsticos medidos en cada uno de una pluralidad de intervalos de tiempo de una primera granularidad de tiempo en funcion de los datos de la red incluidos en cada uno de una pluralidad de flujos (695) de datos que recorren la al menos una de la pluralidad de maquinas (1204) de estado controladas por microcodigo;
    estando el aparato caracterizado por
    logica (700) de reduccion de datos configurada para recibir los primeros datos estadfsticos, y para obtener segundos datos estadfsticos que tienen un volumen reducido con respecto a un volumen de los primeros datos estadfsticos en funcion del desempeno de una operacion matematica sobre los primeros datos estadfsticos, estando asociados los segundos datos estadfsticos con cada uno de la pluralidad de intervalos de tiempo de una segunda granularidad de tiempo, siendo mas fina la primera granularidad de tiempo que la segunda granularidad de tiempo; y
    logica (702) de transmision, sin que medie solicitud, configurada para enviar los segundos datos estadfsticos a traves de una red con independencia de una solicitud en tiempo real procedente de la red.
  2. 2. El aparato de la reivindicacion 1, en el que la logica (700) de reduccion de datos es configurable para reducir el volumen de los primeros datos estadfsticos para obtener los segundos datos estadfsticos, de forma que se mantenga una indicacion de una funcion de los primeros datos estadfsticos en los segundos datos estadfsticos, en el que la funcion quedarfa enmascarada si los segundos datos estadfsticos estuviesen basados en una agregacion de los primeros datos estadfsticos en cada uno de la pluralidad de intervalos de tiempo de la segunda granularidad de tiempo.
  3. 3. El aparato de la reivindicacion 2, en el que: la operacion matematica incluye un maximo; y
    los segundos datos estadfsticos incluyen un resultado de la operacion matematica aplicada a los primeros datos estadfsticos en cada uno de la pluralidad de intervalos de tiempo de la segunda granularidad de tiempo, de forma que una indicacion de variaciones incluidas en los primeros datos estadfsticos que son sustancialmente mayores que un valor medio de los primeros datos estadfsticos sean visibles tras la representacion visual de los segundos datos estadfsticos.
  4. 4. El aparato de la reivindicacion 2, en el que:
    la funcion en los primeros datos estadfsticos incluye un pico y un valle, y esta indicada por un subconjunto de los primeros datos estadfsticos;
    el pico se indica mediante una porcion del subconjunto de los primeros datos estadfsticos; y el valle se indica mediante una porcion restante del subconjunto de los primeros datos estadfsticos.
  5. 5. El aparato de la reivindicacion 1, en el que un volumen de los segundos datos estadfsticos es reducido al menos diez veces con respecto a un volumen de los primeros datos estadfsticos.
  6. 6. El aparato de la reivindicacion 1, en el que la operacion matematica incluye al menos uno de un mfnimo, un maximo y una media.
  7. 7. El aparato de la reivindicacion 1, en el que la operacion matematica incluye al menos uno de una convolucion, una media movil, una suma de los cuadrados, una operacion de filtrado lineal y una operacion de filtrado no lineal.
  8. 8. El aparato de la reivindicacion 1, en el que la logica (702) de transmision, sin que medie solicitud, es configurable para generar uno o mas paquetes que incluyen los segundos datos estadfsticos e informacion de direcciones asociada con un dispositivo ubicado en otro lugar en la red.
  9. 9. El aparato de la reivindicacion 1, en el que la logica (702) de transmision, sin que medie solicitud, es configurable para anunciar la pluralidad de flujos (695) de datos a un dispositivo ubicado en otro lugar en la red.
  10. 10. El aparato de la reivindicacion 1, en el que:
    la pluralidad de flujos (695) de datos recorre un recorrido de los datos que se extiende a traves de una porcion del aparato; y
    la logica (702) de transmision, sin que medie solicitud, es operable para enviar, sin que haya solicitud, los segundos datos estadfsticos mediante comunicaciones que recorren al menos una porcion del recorrido de los datos.
  11. 11. El aparato de la reivindicacion 1, en el que la solicitud en tiempo real es un sondeo procedente de un dispositivo ubicado en otro lugar en la red.
    5 12. El aparato de la reivindicacion 1, que comprende, ademas, logica (706) de analisis del tiempo de espera de la
    red y de la fluctuacion configurada para recibir informacion del tiempo de espera de la red procedente de al menos una de la pluralidad de maquinas (1204) de estado controladas por microcodigo.
  12. 13. El aparato de cualquiera de las reivindicaciones 1-12, que comprende, ademas:
    logica (704) de generacion de alertas configurada para generar una indicacion de alerta asociada con el al menos 10 uno de la pluralidad de flujos (695) de datos procesando los primeros datos estadfsticos para determinar si los primeros datos estadfsticos implican una caractenstica asociada con la alerta;
    estando configurada la logica (702) de transmision, sin que medie solicitud, ademas, para enviar la indicacion de alerta a traves de la red con independencia de una solicitud de la red.
    15 14. El aparato de la reivindicacion 13, en el que la caractenstica se indica en funcion de la aparicion de un patron de
    bits en los datos de la red.
  13. 15. El aparato de la reivindicacion 13, en el que la caractenstica se indica en funcion de la aparicion de un patron de variacion en una velocidad de transferencia de datos asociada con los datos de la red.
ES13860780.9T 2012-12-07 2013-12-06 Aparato, sistema y procedimiento para la monitorización de red mejorada, comunicación de datos, y proceso de datos Active ES2652292T3 (es)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201261734910P 2012-12-07 2012-12-07
US201261734909P 2012-12-07 2012-12-07
US201261734912P 2012-12-07 2012-12-07
US201261734915P 2012-12-07 2012-12-07
US201261734915P 2012-12-07
US201261734909P 2012-12-07
US201261734912P 2012-12-07
US201261734910P 2012-12-07
PCT/US2013/073679 WO2014089489A2 (en) 2012-12-07 2013-12-06 Apparatus, system and method for enhanced network monitoring, data reporting, and data processing

Publications (1)

Publication Number Publication Date
ES2652292T3 true ES2652292T3 (es) 2018-02-01

Family

ID=50884147

Family Applications (1)

Application Number Title Priority Date Filing Date
ES13860780.9T Active ES2652292T3 (es) 2012-12-07 2013-12-06 Aparato, sistema y procedimiento para la monitorización de red mejorada, comunicación de datos, y proceso de datos

Country Status (5)

Country Link
EP (1) EP2929472B1 (es)
DK (1) DK2929472T3 (es)
ES (1) ES2652292T3 (es)
HK (1) HK1215479A1 (es)
WO (1) WO2014089489A2 (es)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2929472B1 (en) * 2012-12-07 2017-09-06 CPacket Networks, Inc. Apparatus, system and method for enhanced network monitoring, data reporting, and data processing
WO2015105684A1 (en) * 2014-01-07 2015-07-16 Cpacket Networks, Inc. Apparatus, system, and method for enhanced monitoring and interception of network data
CN107710686A (zh) * 2016-03-02 2018-02-16 华为技术有限公司 管理网络设备的方法和装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6801756B1 (en) * 2002-02-08 2004-10-05 Networks Associates Technology, Inc. Method and system for dynamic evaluation of a wireless network with a portable computing device
US7743420B2 (en) * 2003-12-02 2010-06-22 Imperva, Inc. Dynamic learning method and adaptive normal behavior profile (NBP) architecture for providing fast protection of enterprise applications
US7543052B1 (en) * 2003-12-22 2009-06-02 Packeteer, Inc. Automatic network traffic discovery and classification mechanism including dynamic discovery thresholds
US7836171B2 (en) * 2007-03-27 2010-11-16 Verint Americas Inc. Communication link interception using link fingerprint analysis
GB2456026A (en) * 2007-12-26 2009-07-01 Contendo Inc CDN balancing and sharing platform
CA2673135C (en) * 2009-07-17 2017-01-17 Anomalous Networks, Inc. Determining usage predictions and detecting anomalous user activity through traffic patterns
CN102771083B (zh) * 2009-12-23 2015-05-13 思杰***有限公司 用于全局服务器负载平衡的IPv6和IPv4 DNS的混合模式的***和方法
EP2561645B1 (en) * 2010-04-23 2020-02-26 Keysight Technologies Singapore (Sales) Pte. Ltd. Integrated network data collection arrangement
EP2929472B1 (en) * 2012-12-07 2017-09-06 CPacket Networks, Inc. Apparatus, system and method for enhanced network monitoring, data reporting, and data processing

Also Published As

Publication number Publication date
DK2929472T3 (en) 2017-12-04
WO2014089489A2 (en) 2014-06-12
EP2929472B1 (en) 2017-09-06
WO2014089489A3 (en) 2014-09-18
HK1215479A1 (zh) 2016-08-26
EP2929472A4 (en) 2016-07-20
EP2929472A2 (en) 2015-10-14

Similar Documents

Publication Publication Date Title
US9787556B2 (en) Apparatus, system, and method for enhanced monitoring, searching, and visualization of network data
US9407518B2 (en) Apparatus, system, and method for enhanced reporting and measurement of performance data
US10069704B2 (en) Apparatus, system, and method for enhanced monitoring and searching of devices distributed over a network
US8024799B2 (en) Apparatus and method for facilitating network security with granular traffic modifications
US8665868B2 (en) Apparatus and method for enhancing forwarding and classification of network traffic with prioritized matching and categorization
US7890991B2 (en) Apparatus and method for providing security and monitoring in a networking architecture
US7882554B2 (en) Apparatus and method for selective mirroring
US8296846B2 (en) Apparatus and method for associating categorization information with network traffic to facilitate application level processing
US8346918B2 (en) Apparatus and method for biased and weighted sampling of network traffic to facilitate network monitoring
CN103929334B (zh) 网络异常通知方法和装置
US7937756B2 (en) Apparatus and method for facilitating network security
US8724633B2 (en) Internet real-time deep packet inspection and control device and method
IL182111A (en) Application of hardware for network communication testing and monitoring of the execution of a communication network device
US11374844B2 (en) Methods and systems for smart sensor implementation within a network appliance data plane
US20140173102A1 (en) Apparatus, System, and Method for Enhanced Reporting and Processing of Network Data
JP5661764B2 (ja) ネットワークトラフィックの転送、分類および監視を向上させる装置および方法
ES2652292T3 (es) Aparato, sistema y procedimiento para la monitorización de red mejorada, comunicación de datos, y proceso de datos
EP3092737B1 (en) Systems for enhanced monitoring, searching, and visualization of network data
US20140172852A1 (en) Apparatus, System, and Method for Reducing Data to Facilitate Identification and Presentation of Data Variations
WO2015105684A1 (en) Apparatus, system, and method for enhanced monitoring and interception of network data
CN103026679A (zh) 网络设备中检测到的模式的减轻
Kumarapillai Chandrikakutty Protecting Network Processors with High Performance Logic Based Monitors