Configuración del muestreo de tráfico en enrutadores MX, M y serie T
El muestreo de tráfico permite copiar tráfico a una tarjeta de interfaz física (PIC) que realiza la contabilidad de flujo mientras el enrutador reenvía el paquete a su destino original. Puede configurar el enrutador para que realice el muestreo en una de las tres ubicaciones siguientes:
-
En el motor de enrutamiento, mediante el proceso de muestreo. Para seleccionar este método, use un filtro (de entrada o de salida) con un término coincidente que contenga la
then sampleinstrucción. -
en los servicios de monitoreo, servicios adaptables o PIC de multiservicios.
-
En una ruta de datos en línea, sin necesidad de un servicio Concentrador de puerto denso (CPC). Para realizar este muestreo activo en línea, se define una instancia de muestreo con propiedades específicas. Un concentrador de PIC flexible (FPC) solo puede admitir una instancia; para cada caso, se admite el muestreo basado en PIC de servicios o el muestreo en línea por familia. El muestreo en línea admite las plantillas de recopilación de flujo versión 9 e IPFIX.
El muestreo basado en el motor de enrutamiento no se admite en instancias de enrutamiento y reenvío VPN (VRF).
Configuración del filtro de firewall para el muestreo de tráfico
Para configurar el filtro de firewall para el muestreo de tráfico, debe realizar las siguientes tareas:
-
Cree un filtro de firewall para aplicarlo a las interfaces lógicas que se están muestreando incluyendo la
filterinstrucción en el nivel de[edit firewall family family-name]jerarquía. En la instrucción filterthen, debe especificar el modificadorsamplede acción y la acciónaccept.filter filter-name { term term-name { then { sample; accept; } } }
Para obtener más información acerca de las acciones de filtro de firewall y los modificadores de acción, consulte la Guía del usuario de políticas de enrutamiento, filtros de firewall y agentes de policía de tráfico.
-
Aplique el filtro a las interfaces en las que desea muestrear el tráfico incluyendo las
addressinstrucciones andfilteren el nivel de[edit interfaces interface-name unit logical-unit-number family family-name]jerarquía:address address { } filter { input filter-name; }
Los siguientes requisitos previos se aplican a los enrutadores M, MX y serie T cuando se configura el muestreo de tráfico en interfaces y en filtros de firewall:
-
Si configura una acción de ejemplo en un filtro de firewall para una familia inet o inet6 en una interfaz sin configurar los ajustes de opciones de reenvío, pueden producirse problemas operativos si también configura las funcionalidades de duplicación de puerto o de toma de flujo. En este caso, todos los paquetes que coincidan con el filtro de firewall se envían incorrectamente a la PIC de servicio.
-
Si incluye la
then sampleinstrucción en el nivel de[edit firewall family inet filter filter-name term term-name]jerarquía para especificar una acción de ejemplo en un filtro de firewall para paquetes IPv4, también debe incluir lafamily inetinstrucción en el nivel de[edit forwarding-options sampling]jerarquía o lainstance instance-name family inetinstrucción en el[edit forwarding-options sampling]nivel de jerarquía. De manera similar, si incluye la instrucción thensampleen el nivel de[edit firewall family inet6 filter filter-name term term-name]jerarquía para especificar una acción de ejemplo en un filtro de firewall para paquetes IPv6, también debe incluirfamily inet6la instrucción en el nivel de[edit forwarding-options sampling]jerarquía o lainstance instance-name family inet6instrucción en el[edit forwarding-options sampling]nivel de jerarquía. De lo contrario, se producirá un error de confirmación al intentar confirmar la configuración. -
Además, si configura el muestreo de tráfico en una interfaz lógica incluyendo las instrucciones de entrada o salida de muestreo en el
[edit interface interface-name unit logical-unit-number]nivel de jerarquía, también debe incluir lafamily inet | inet6instrucción en el nivel de[edit forwarding-options sampling]jerarquía o lainstance instance-name family inet | inet6instrucción en el[edit forwarding-options sampling]nivel de jerarquía.
Configuración del muestreo de tráfico en una interfaz lógica
Para configurar el muestreo de tráfico en cualquier interfaz lógica, habilite el muestreo y especifique una frecuencia de muestreo distinta de cero incluyendo la instrucción de muestreo en el nivel de [edit forwarding-options] jerarquía:
sampling { input { rate number; run-length number; max-packets-per-second number; maximum-packet-length bytes; }
Cuando utilice el muestreo basado en motor de enrutamiento, especifique el valor de umbral de tráfico incluyendo la max-packets-per-second instrucción. El valor es el número máximo de paquetes que se van a muestrear, más allá del cual el mecanismo de muestreo comienza a descartar paquetes. El rango es de 0 a 65,535. Un valor 0 indica al motor de reenvío de paquetes que no muestree ningún paquete. El valor predeterminado es 1000.
Cuando se configura la supervisión activa y se especifica una PIC de servicios de supervisión, servicios adaptables o multiservicios en la output instrucción, o cuando se configura el muestreo en línea, el max-packets-per-second valor se omite.
Especifique la frecuencia de muestreo estableciendo los valores para rate y run-length (consulte la Figura 1).
de muestreo
No configure el muestreo de entrada en ms- interfaces lógicas en las que esté habilitada la supervisión de flujo basada en PIC, ya que esto provoca un comportamiento de supervisión de flujo no deseado y podría dar lugar a un muestreo repetido de un solo paquete. A partir de Junos OS versión 15.1, se produce un error de confirmación cuando intenta configurar el muestreo de tráfico de entrada en esa interfaz. En Junos OS versión 14.2 y anteriores, el error de confirmación no se produce, pero no debe configurar el muestreo de tráfico de entrada en esa interfaz.
Si la supervisión de flujo basada en PIC está habilitada en una interfaz msfpc/pic/port.logical-unit -, se produce un error de comprobación de confirmación cuando intenta configurar el muestreo de tráfico de entrada en esa interfaz. Este error se produce porque una combinación de muestreo de entrada y operaciones de supervisión de flujo basadas en PIC en una interfaz lógica provoca un ms- comportamiento de supervisión de flujo no deseado y puede dar como resultado un muestreo repetido de un solo paquete. No debe configurar el muestreo de entrada en ms- interfaces lógicas en las que esté habilitada la supervisión de flujo basada en PIC.
La rate instrucción especifica la proporción de paquetes que se van a muestrear. Por ejemplo, si configura una velocidad de 10, x se muestrea el número de paquetes de cada 10, donde x=longitud de ejecución + 1. De forma predeterminada, la tasa es 0, lo que significa que no se muestrea ningún tráfico.
La run-length instrucción especifica el número de paquetes coincidentes que se van a muestrear después del evento desencadenador inicial de un paquete. De forma predeterminada, la duración de la ejecución es 0, lo que significa que no se muestrea más tráfico después del evento desencadenante. El rango va de 0 a 20. La configuración de una longitud de ejecución mayor que 0 le permite muestrear paquetes después de los que ya se están muestreando.
Las run-length instrucciones y maximum-packet-length de configuración no se admiten en enrutadores MX80.
Si no incluye la instrucción, se deshabilita el input muestreo.
Para recopilar los paquetes de muestra en un archivo, incluya la file instrucción en el nivel de [edit forwarding-options sampling output] jerarquía. Los formatos de archivo de salida se analizan más adelante en el capítulo.
Deshabilitar el muestreo de tráfico
Para deshabilitar explícitamente el muestreo de tráfico en el enrutador, incluya la disable instrucción en el nivel de [edit forwarding-options sampling] jerarquía:
disable;
Muestreo una vez
Para muestrear explícitamente un paquete para la supervisión activa solo una vez, incluya la sample-once instrucción en el nivel de [edit forwarding-options sampling] jerarquía:
sample-once;
La configuración de esta opción evita la duplicación de paquetes en los casos en que el muestreo está habilitado en las interfaces de entrada y salida, y simplifica el análisis del tráfico muestreado.
Conservar el valor TDS de la preescritura para paquetes de salida muestreados o reflejados
A partir de Junos OS versión 14.1, puede conservar el valor del tipo de servicio (TDS) prenormalizado en paquetes con muestreo o duplicados de salida. Incluya la pre-rewrite-tos instrucción en el [edit forwarding-options sampling] nivel de jerarquía.
En interfaces basadas en MPC, puede configurar la reescritura de TDS mediante la configuración de clase de servicio (CoS) mediante la inclusión de la rewrite-rules dscp rule_name instrucción en el nivel de jerarquía o mediante la [edit class-of-service interfaces interface-name unit logical-unit-number] configuración del filtro de firewall mediante la inclusión de la dscp instrucción en el nivel de [edit firewall family family-name filter filter-name term term-name then] jerarquía. Si se configura la reescritura de TDS, las copias reflejadas o muestreadas de salida contienen los valores de TDS posteriores a la reescritura de forma predeterminada. Con la pre-rewrite-tos configuración, puede conservar el valor de TDS de preescritura en los paquetes muestreados o reflejados.
-
Si la reescritura de TDS está configurada en la interfaz de salida mediante la configuración de filtro de firewall y CoS, y si la
pre-rewrite-tosinstrucción también está configurada, los paquetes de muestra de salida contienen el valor DSCP establecido mediante la configuración de filtro de firewall. Sin embargo, si lapre-rewrite-tosinstrucción no está configurada, los paquetes muestreados de salida contienen el valor DSCP establecido por la configuración de CoS. -
Con esta instrucción, puede configurar la
pre-rewrite-tosconservación de los valores de TDS de prenormalización solo para el muestreo realizado enfamily inetyfamily inet6. -
Esta característica no se puede configurar en el nivel de
[edit logical-systems]jerarquía. Solo se puede configurar a nivel global en laforwarding-optionconfiguración. -
Cuando la reescritura de TDS se configura mediante un filtro de firewall en las interfaces de entrada y salida, los paquetes de muestreo de salida contienen el valor DSCP establecido por la configuración de reescritura de TDS de entrada si la
pre-rewrite-tosinstrucción está configurada. Sin embargo, si lapre-rewrite-tosinstrucción no está configurada, los paquetes muestreados de salida contienen el valor DSCP establecido por la configuración de reescritura de TDS para el filtro del firewall de salida. -
Si la
pre-rewrite-tosinstrucción está configurada y se realiza una operación de desactivar o eliminar en el nivel de jerarquía,pre-rewrite-tosla[edit forwarding-options]configuración seguirá activa. Para deshabilitar lapre-rewrite-tosconfiguración en tal caso, debe desactivar o eliminar explícitamente lapre-rewrite-tosinstrucción en el nivel de[edit forwarding-options sampling]jerarquía antes de realizar una operación de desactivación o eliminación en el nivel de[edit forwarding-options]jerarquía.
Configuración de la salida de muestreo de tráfico
Para configurar la salida del muestreo de tráfico, incluya las siguientes instrucciones en el nivel de [edit forwarding-options sampling family (inet | inet6 | mpls) output] jerarquía:
aggregate-export-intervalseconds; flow-active-timeoutseconds; flow-inactive-timeoutseconds; extension-serviceservice-name; flow-serverhostname { aggregation { autonomous-system; destination-prefix; protocol-port; source-destination-prefix { caida-compliant; } source-prefix; } autonomous-system-type (origin | peer); (local-dump | no-local-dump); portport-number; source-address address; versionformat; version9 { template template-name; } } interfaceinterface-name { engine-idnumber; engine-typenumber; source-addressaddress; } file { disable; filenamefilename; filesnumber; sizebytes; (stamp | no-stamp); (world-readable | no-world-readable); }
Para configurar la supervisión de flujo en línea en enrutadores de la serie MX, incluya la inline-jflow instrucción en el [edit forwarding-options sampling instance instance-name family (inet | inet6 | mpls) output] nivel de jerarquía. El muestreo en línea admite exclusivamente un nuevo formato denominado IP_FIX que usa UDP como protocolo de transporte. Cuando configure el muestreo en línea, debe incluir la version-ipfix instrucción en el nivel de [edit forwarding-options sampling instance instance-name family (inet | inet6 | mpls) output flow-server address] jerarquía y también en el nivel de [edit services flow-monitoring] jerarquía. Para obtener más información sobre cómo configurar la supervisión del flujo en línea, consulte Configurar la supervisión del flujo activo en línea mediante enrutadores, conmutadores o NFX250.
Para dirigir el tráfico de muestra a una interfaz de supervisión de flujo, incluya la interface instrucción. Las engine-id instrucciones and engine-type especifican la identidad y los números de tipo de la interfaz; se generan dinámicamente en función del concentrador de PIC flexible (FPC), la PIC y los números de ranura, y el tipo de chasis. La source-address instrucción especifica el origen del tráfico.
A partir de la versión 19.3R1 de Junos OS, para configurar la supervisión de flujo en línea en la nube de prevención de amenazas avanzadas de Juniper (nube ATP), incluya la flow-server instrucción en el nivel de [edit forwarding-options sampling instance instance-name family (inet | inet6 | mpls) output] jerarquía. El muestreo en línea admite exclusivamente un nuevo formato denominado IP_FIX que usa UDP como protocolo de transporte. Cuando configure el muestreo en línea, debe incluir la version-ipfix instrucción en el nivel de [edit forwarding-options sampling instance instance-name family (inet | inet6 | mpls) output flow-server address] jerarquía y también en el nivel de [edit services flow-monitoring] jerarquía.
Para configurar la salida de la versión 9 del muestreo de flujo, debe incluir la template instrucción en el nivel de [edit forwarding-options sampling output version9] jerarquía. Para obtener más información acerca de cflowd, consulte Habilitación de la agregación de flujo.
La aggregate-export-interval instrucción se describe en Configuración de la contabilidad de descarte y las instrucciones flow-active-timeout y flow-inactive-timeout se describen en Configuración de la supervisión de flujo.
Los resultados del muestreo de tráfico se guardan automáticamente en un archivo del directorio /var/tmp . Para recopilar los paquetes de muestra en un archivo, incluya la file instrucción en el nivel de [edit forwarding-options sampling family inet output] jerarquía:
file { disable; filename filename; files number; size bytes; (stamp | no-stamp); (world-readable | no-world-readable); }
Formato de salida de muestreo de tráfico
Los resultados del muestreo de tráfico se guardan en un archivo de texto ASCII. A continuación, se muestra un ejemplo de la salida de muestreo de tráfico que se guarda en un archivo del directorio /var/tmp . Cada línea del archivo de salida contiene información para un paquete muestreado. Opcionalmente, puede mostrar una marca de tiempo para cada línea.
Los encabezados de columna se repiten después de cada grupo de 1000 paquetes.
# Apr 7 15:48:50
Time Dest Src Dest Src Proto TOS Pkt Intf IP TCP
addr addr port port len num frag flags
Apr 7 15:48:54 192.168.9.194 192.168.9.195 0 0 1 0x0 84 8 0x0 0x0
Apr 7 15:48:55 192.168.9.194 192.168.9.195 0 0 1 0x0 84 8 0x0 0x0
Apr 7 15:48:56 192.168.9.194 192.168.9.195 0 0 1 0x0 84 8 0x0 0x0
Apr 7 15:48:57 192.168.9.194 192.168.9.195 0 0 1 0x0 84 8 0x0 0x0
Apr 7 15:48:58 192.168.9.194 192.168.9.195 0 0 1 0x0 84 8 0x0 0x0
Para establecer la opción de marca de hora para el archivo my-sample, escriba lo siguiente:
[edit forwarding-options sampling output file] user@host# set filename my-sample files 5 size 2m world-readable stamp;
Cada vez que alterna la opción de marca de tiempo, se incluye un nuevo encabezado en el archivo. Si establece la stamp opción, se muestra el Time campo.
# Apr 7 15:48:50 # Time Dest Src Dest Src Proto TOS Pkt Intf IP TCP # addr addr port port len num frag flags # Feb 1 20:31:21 # Dest Src Dest Src Proto TOS Pkt Intf IP TCP # addr addr port port len num frag flags
Rastreo de operaciones de muestreo de tráfico
Las operaciones de rastreo rastrean todas las operaciones de muestreo de tráfico y las registran en un archivo de registro en el directorio /var/log . De forma predeterminada, este archivo se denomina /var/log/sampled. El tamaño de archivo predeterminado es 128K y se crean 10 archivos antes de que se sobrescriba el primero.
Para realizar un seguimiento de las operaciones de muestreo de tráfico, incluya la traceoptions instrucción en el nivel de [edit forwarding-options sampling] jerarquía:
traceoptions { no-remote-trace; file filename <files number> <size bytes> <match expression> <world-readable | no-world-readable>; }
Ejemplos de muestreo de tráfico
- Ejemplo: muestreo de una sola interfaz SONET/SDH
- Ejemplo: muestreo de todo el tráfico desde una sola dirección IP
- Ejemplo: muestreo de todo el tráfico FTP
Ejemplo: muestreo de una sola interfaz SONET/SDH
La siguiente configuración recopila información de muestreo estadístico de un pequeño porcentaje de todo el tráfico en una sola interfaz SONET/SDH y la recopila en un archivo llamado sonet-samples.txt.
Cree el filtro:
[edit firewall family inet]
filter {
input sample-sonet {
then {
sample;
accept;
}
}
}
Aplique el filtro a la interfaz SONET/SDH:
[edit interfaces]
so-0/0/1 {
unit 0 {
family inet {
filter {
input sample-sonet;
}
address 10.127.68.254/32 {
destination 172.16.74.7;
}
}
}
}
Por último, configure el muestreo de tráfico:
[edit forwarding-options]
sampling {
input {
family inet {
rate 100;
run-length 2;
}
}
family inet {
output {
file {
filename sonet-samples.txt;
files 40;
size 5m;
}
}
}
}
Ejemplo: muestreo de todo el tráfico desde una sola dirección IP
La siguiente configuración recopila información estadística acerca de cada paquete que entra en el enrutador en un puerto Gigabit Ethernet específico que se origina en una única dirección IP de origen de 172.16.92.31, y la recopila en un archivo llamado samples-172-16-92-31.txt.
Cree el filtro:
[edit firewall family inet]
filter one-ip {
term get-ip {
from {
source-address 172.16.92.31;
}
then {
sample;
accept;
}
}
}
Aplique el filtro a la interfaz de Gigabit Ethernet:
[edit interfaces]
ge-4/1/1 {
unit 0 {
family inet {
filter {
input one-ip;
}
address 10.45.92.254;
}
}
}
Finalmente, recopilar estadísticas sobre todas las muestras candidatas; En este caso, recopile todas las estadísticas:
[edit forwarding-options]
sampling {
input {
family inet {
rate 1;
}
}
family inet {
output {
file {
filename samples-172-16-92-31.txt;
files 100;
size 100k;
}
}
}
}
Ejemplo: muestreo de todo el tráfico FTP
La siguiente configuración recopila información estadística sobre un porcentaje moderado de paquetes que usan el protocolo de transferencia de datos FTP en la ruta de salida de una interfaz T3 específica y recopila la información en un archivo denominado t3-ftp-traffic.txt.
Cree un filtro:
[edit firewall family inet]
filter ftp-stats {
term ftp-usage {
from {
destination-port [ftp ftp-data];
}
then {
sample;
accept;
}
}
}
Aplique el filtro a la interfaz T3:
[edit interfaces]
t3-7/0/2 {
unit 0 {
family inet {
filter {
input ftp-stats;
}
address 10.35.78.254/32 {
destination 10.35.78.4;
}
}
}
}
Finalmente, recopile estadísticas sobre el 10 por ciento de las muestras candidatas:
[edit forwarding-options]
sampling {
input {
family inet {
rate 10;
}
}
family inet {
output {
file {
filename t3-ftp-traffic.txt;
files 50;
size 1m;
}
}
}
}
Tabla de historial de cambios
La compatibilidad de la función depende de la plataforma y la versión que utilice. Utilice el Explorador de características para determinar si una característica es compatible con su plataforma.
pre-rewrite-tos instrucción en el
[edit forwarding-options sampling] nivel de jerarquía.