Enrutamiento multiruta basado en aplicaciones
Descripción general del enrutamiento multiruta basado en aplicaciones
El tráfico de video y voz es sensible a la pérdida de paquetes, la latencia y la fluctuación. La pérdida de paquetes conduce directamente a la degradación de la calidad de las llamadas de voz y video. en llamadas de voz o video.
Para garantizar la entrega a tiempo de este tráfico sensible de aplicaciones, el enrutamiento de varias rutas basado en aplicaciones (también conocido como enrutamiento de varias rutas en este documento) se admite en los dispositivos de la serie SRX para permitir que el dispositivo de envío cree copias de paquetes y envíe cada copia a través de dos o más vínculos WAN.
Multipath identifica dos o más rutas según la configuración del SLA y envía una copia del tráfico original en todas las rutas identificadas.
En el otro extremo, entre las múltiples copias del paquete recibido, el dispositivo receptor selecciona el primer paquete recibido y elimina los siguientes. En el dispositivo receptor, mientras la copia del paquete está en curso, la multiruta calcula la fluctuación y la pérdida de paquetes para los vínculos combinados y, luego, estima la fluctuación y la pérdida de paquetes para el mismo tráfico en vínculos individuales. Puede comparar la reducción de la pérdida de paquetes cuando se utilizan vínculos combinados en lugar de vínculos individuales utilizados para el tráfico.
El envío de varias copias del tráfico de la aplicación garantiza que, si hay una pérdida o retraso de paquete, el otro vínculo aún podría entregar el paquete al punto de conexión.
Los dispositivos serie SRX admiten enrutamiento multiruta basado en aplicaciones a partir de Junos OS versión 15.1X49-D160 en modo independiente.
Los dispositivos de la serie SRX admiten enrutamiento multiruta basado en aplicaciones a partir de Junos OS versión 19.2R1 y Junos OS versión 15.1X49-D170 en modo de clúster de chasis.
El enrutamiento de varias rutas aprovecha las siguientes funciones:
-
Detalles de identificación de la aplicación de la inspección profunda de paquetes (DPI)
-
Funcionalidad APBR para la función de reenvío de paquetes
-
Servicio AppQoE para la asociación de SLA.
- Casos de uso compatibles
- Limitaciones
- Beneficios del enrutamiento de varias rutas
- Descripción del flujo de trabajo en el enrutamiento de varias rutas
Casos de uso compatibles
-
Topología radial y radial de SD-WAN
-
Topología de malla SD-WAN
Limitaciones
-
Todos los vínculos WAN seleccionados deben ser de rutas ECMP para un destino.
-
Todas las interfaces WAN seleccionadas que deben formar parte de las sesiones de enrutamiento de varias rutas deben pertenecer a una sola zona
-
La función de enrutamiento de varias rutas solo se admite entre dos dispositivos de seguridad finales de libro.
Beneficios del enrutamiento de varias rutas
-
La compatibilidad con varias rutas en el caso de uso de SD-WAN mejora la experiencia de la aplicación al reducir la pérdida de paquetes, la entrega más rápida del paquete y menos fluctuación, lo que resulta en una mejor calidad de servicio para el tráfico, especialmente para el tráfico de voz y video.
Descripción del flujo de trabajo en el enrutamiento de varias rutas
En la aplicación del enrutamiento multiruta intervienen las siguientes secuencias:
-
La identificación de aplicación de Junos OS identifica las aplicaciones y, una vez que se identifica una aplicación, su información se guarda en la caché del sistema de aplicaciones (ASC).
-
El enrutamiento basado en políticas de aplicación (APBR) consulta el módulo de caché del sistema de aplicaciones (ASC) para obtener los detalles de los atributos de la aplicación.
-
El APBR usa los detalles de la aplicación para buscar una regla coincidente en el perfil APBR (perfil de aplicación). Si se encuentra una regla coincidente, el tráfico se redirige a la instancia de enrutamiento especificada para la búsqueda de ruta.
-
AppQoE comprueba si un SLA está habilitado para una sesión. Si la sesión es candidata para una medición de SLA y si el enrutamiento de varias rutas está configurado, se activa el enrutamiento de varias rutas.
-
Según la regla de SLA, el enrutamiento de varias rutas obtiene los tipos de vínculos subyacentes y las superposiciones correspondientes en las que se debe realizar la duplicación de paquetes. El enrutamiento de varias rutas se puede activar según la configuración de una regla de SLA. Cuando el enrutamiento de varias rutas está configurado dentro de una regla de SLA para una aplicación específica, la funcionalidad de AppQoE se deshabilita para todas las sesiones de esa aplicación que coincidan con la regla de SLA.
-
Según el tráfico de la aplicación y el límite de ancho de banda configurado, la multiruta identifica dos o más rutas y activa una copia del tráfico original en todas las rutas identificadas. La selección de rutas de enrutamiento multiruta se realiza en las rutas superpuestas. Los parámetros para limitar el ancho de banda se basan en la velocidad del vínculo subyacente y la selección se basa en el tipo de vínculo.
-
En el dispositivo receptor, mientras la copia del paquete está en curso, la multiruta calcula la fluctuación y la pérdida de paquete para los vínculos combinados y, luego, estima la fluctuación y la pérdida de paquetes para el mismo tráfico en vínculos individuales.
-
En el dispositivo receptor, el enrutamiento de varias rutas acepta paquetes de una sesión que llegan a través de diferentes vínculos, mantiene la secuencia de un paquete que llega a diferentes colas de CoS y elimina los duplicados.
El enrutamiento de varias rutas copia paquetes en todos los vínculos que pertenecen a una regla hasta que se alcanza el límite de ancho de banda. El límite de ancho de banda se calcula en función de la velocidad de menor vínculo identificada para esa regla. Esto se aplica a todas las sesiones de todas las aplicaciones que coincidan con esa regla de enrutamiento de varias rutas. Una vez que se alcanza el límite, el enrutamiento de varias rutas deja de copiar paquetes y inicia un temporizador durante un período de tiempo configurado en la opción de tiempo máximo-espera en la configuración de enrutamiento de varias rutas. Cuando caduca el temporizador, vuelve a reiniciar la copia de los paquetes.
Mejoras de AMR
A partir de Junos OS versión 21.2R1, se introducen las siguientes mejoras para AMR:
- Compatibilidad con AMR para tráfico inverso
- Mecanismo de cola para paquetes fuera de orden
- Soporte de AMR para perfil APBR
- Selección de vínculo
- AMR en modo de violación de SLA o modo independiente
- Soporte para tráfico IPv6
- Admite AMR a través de IPsec y sesiones de encapsulación de enrutamiento genérico (GRE)
Compatibilidad con AMR para tráfico inverso
puede aplicar la funcionalidad de varias rutas en el tráfico inverso. Ahora, tanto el dispositivo de envío como el dispositivo receptor pueden crear copias de paquetes y enviar cada copia a través de dos vínculos WAN al dispositivo de destino. Esta mejora garantiza una entrega ininterrumpida del tráfico sensible de la aplicación en ambas direcciones.
De forma predeterminada, AMR para el tráfico inverso está deshabilitado. Puede habilitarlo con la siguiente opción de CLI:
set security advance-policy-based-routing multipath-rule rule-name enable-reverse-wing
Para deshabilitar AMR para el tráfico inverso, utilice la siguiente opción de CLI:
delete security advance-policy-based-routing multipath-rule rule-name enable-reverse-wing
La compatibilidad con AMR para el tráfico del ala inversa está disponible cuando los dispositivos funcionan en modo AD. Tenga en cuenta que los paquetes de la cola se pierden durante la conmutación por error de AD.
Mecanismo de cola para paquetes fuera de orden
A partir de Junos OS versión 21.2R1, se mejoró el mecanismo de cola para los paquetes fuera de orden en el dispositivo receptor.
Anteriormente, el dispositivo receptor de AMR descartaba paquetes fuera de orden, lo que provocaba pérdida de paquetes y degradación de la calidad del servicio. Con el mecanismo de cola, cuando el dispositivo receptor recibe paquetes fuera de orden, espera aún más a que lleguen más paquetes y, luego, los almacena en memoria intermedia en la cola durante una corta duración. Esta búfer ayuda a reordenar paquetes y evita el descarte de paquetes.
Soporte de AMR para perfil APBR
A partir de Junos OS versión 21.2R1, el dispositivo de seguridad admite AMR cuando se usa con un perfil APBR configurado con una política APBR. Puede crear la política de APBR definiendo direcciones de origen, direcciones de destino y aplicaciones como condiciones de coincidencia.
En las versiones anteriores de Junos OS, podía adjuntar un perfil APBR a una zona de seguridad entrante del tráfico de entrada. En este caso, el APBR se aplicó según la base de la zona de seguridad.
El siguiente ejemplo muestra un fragmento de configuración de una política APBR definiendo direcciones de origen, direcciones de destino y aplicaciones como condiciones de coincidencia. Se aplica una regla de SLA para el tráfico que coincide con las reglas de política de APBR. Se aplica una regla de varias rutas asociada con la regla de SLA y se habilita la funcionalidad de enrutamiento de varias rutas para la sesión.
set security advance-policy-based-routing multipath-rule amr-rule1 number-of-paths 2 set security advance-policy-based-routing multipath-rule amr-rule1 bandwidth-limit 30 set security advance-policy-based-routing multipath-rule amr-rule1 max-time-to-wait 60 set security advance-policy-based-routing multipath-rule amr-rule1 application junos:SSH set security advance-policy-based-routing multipath-rule amr-rule1 application junos:HTTP set security advance-policy-based-routing multipath-rule amr-rule1 link-type MPLS set security advance-policy-based-routing multipath-rule amr-rule1 link-type IP set security advance-policy-based-routing profile apbr1 rule rule1 match dynamic-application junos:RTP set security advance-policy-based-routing profile apbr1 rule rule1 then routing-instance TC1_VPN set security advance-policy-based-routing profile apbr1 rule rule1 then sla-rule sla1 set security advance-policy-based-routing sla-rule sla1 multipath-rule amr-rule1 set security zones security-zone trust advance-policy-based-routing-profile apbr1 set security advance-policy-based-routing from-zone trust policy sla_policy1 match source-address 10.4.0.1 set security advance-policy-based-routing from-zone trust policy sla_policy1 match destination-address 10.5.0.1 set security advance-policy-based-routing from-zone trust policy sla_policy1 match application junos-RTP set security advance-policy-based-routing from-zone trust policy sla_policy1 then application-services advance-policy-based-routing-profile apbr1
Selección de vínculo
En versiones anteriores, para el enrutamiento de varias rutas basado en aplicaciones, el mecanismo de selección de vínculos era predeterminado (uno de los dos primeros vínculos disponibles) o estaba basado en la configuración del tipo de vínculo (IP/MPLS) AppQoE configuración de interfaz subyacente.
A partir de Junos OS versión 21.2R1, puede especificar las opciones de preferencia del vínculo como encapsulación de enrutamiento genérico (GRE) y túnel seguro (st). El dispositivo selecciona directamente una de las interfaces especificadas para el enrutamiento de varias rutas.
Si no ha configurado el link-preference
, la AMR selecciona los vínculos de los dos primeros vínculos disponibles desde las rutas configuradas.
Puede especificar preferencias de vínculo mediante la siguiente opción de CLI:
set security advance-policy-based-routing multipath-rule rule-name link-preferences [st0.0 | st0.1}
AMR en modo de violación de SLA o modo independiente
A partir de Junos OS versión 21.2R1, AMR se habilita en uno de los dos modos siguientes:
-
Modo de violación de SLA: cuando AppQoE detecta una violación de SLA en todos los vínculos, habilita la AMR. La AMR se deshabilita cuando se cumple el SLA en cualquiera de los vínculos basados en la configuración del temporizador.
-
Modo independiente: cuando haya configurado AMR sin configurar métricas de SLA, la AMR se habilita independientemente del estado de AppQoE. En este modo, cuando se alcanza el límite de ancho de banda, amr se pausa durante una duración predeterminada y, luego, se reinicia.
Ejemplo:
A continuación, se muestra una configuración samp de las métricas de un SLA. Las métricas de SLA especifican los parámetros de requisitos, que AppQoE utiliza para evaluar el SLA del vínculo. Para lograr el SLA, AppQoE monitorea la red en busca de fuentes de fallas o congestión. Si el rendimiento de un vínculo está por debajo de los niveles aceptables especificados por el SLA, la situación se considera una violación del SLA. Si se nota la infracción de LA en todos los vínculos, AMR se habilita en el modo de infracción de SLA.
set security advance-policy-based-routing metrics-profile metric1 sla-threshold delay-round-trip 50000 set security advance-policy-based-routing metrics-profile metric1 sla-threshold jitter 10000 set security advance-policy-based-routing metrics-profile metric1 sla-threshold jitter-type egress-jitter set security advance-policy-based-routing metrics-profile metric1 sla-threshold packet-loss 4 set security advance-policy-based-routing metrics-profile metric1 sla-threshold match all set security advance-policy-based-routing sla-rule sla1 metrics-profile metric1
Si la configuración de métricas de SLA (como se muestra en el ejemplo anterior) no está disponible en la configuración de AMR, amr se habilita en modo independiente.
Soporte para tráfico IPv6
El enrutamiento multiruta basado en aplicaciones admite tráfico IPv6:
- Tráfico IPv6 a través de túneles IPv4 (Junos OS versión 21.2R1)
- Tráfico IPv6 a través de túneles IPv6 (Junos OS versión 21.3R1)
Admite AMR a través de IPsec y sesiones de encapsulación de enrutamiento genérico (GRE)
- Enrutamiento multiruta basado en aplicaciones mediante túneles IPsec directos sin GRE (Junos OS versión 21.2R1)
- Enrutamiento multiruta basado en aplicaciones mediante túneles directos de encapsulación de enrutamiento genérico (GRE) sin IPsec (versión 21.2R1 de Junos OS)
- Enrutamiento multiruta basado en aplicaciones a través de túneles IPsec directos sin GRE para tráfico IPv6 (Junos OS versión 21.3R1)
- Enrutamiento multiruta basado en aplicaciones a través de túneles GRE directos sin IPsec para tráfico IPv6 (Junos OS versión 21.3R1)
- Enrutamiento multiruta basado en aplicaciones a través de MPLS-over-GRE-over-IPsec para tráfico IPv6 (Junos OS versión 21.3R1)
Ver también
Configuración de ejemplo de enrutamiento de múltiples rutas basada en aplicaciones
Configuración de enrutamiento multiruta de ejemplo basada en aplicaciones (topología radial y radial)
En esta sección, se trata una muestra de la configuración de enrutamiento de múltiples rutas basada en aplicaciones para la topología radial y hub. La configuración usa el SLA establecido por el APBR y funciona independientemente de APPQoE. Para el SLA de APPQoE, consulte Calidad de la experiencia de la aplicación. Puede configurar el dispositivo para funciones adicionales, como la selección de vínculos según las preferencias, la selección de ruta basada en el tipo de vínculo y la compatibilidad de enrutamiento de varias rutas a través de túneles IPsec y GRE. El enrutamiento de varias rutas se puede configurar con Contrail Service Orchestrator. Consulte la Guía de despliegue de Contrail Service Orchestration (CSO) para obtener más información.
Configuración básica del dispositivo del lado del radio
user@host#
set security advance-policy-based-routing profile profile1 rule r1 match dynamic-application junos:HTTPuser@host#
set security advance-policy-based-routing profile profile1 rule r1 match dynamic-application junos:SIPuser@host#
set security advance-policy-based-routing profile profile1 rule r1 then routing-instance TC1_VPNuser@host#
set security advance-policy-based-routing profile profile1 rule r1 sla-rule sla_rule1user@host#
set security advance-policy-based-routing sla-rule sla_rule1 multipath-rule mult1user@host#
set security advance-policy-based-routing multipath-rule mult1 number-of-paths 2user@host#
set security advance-policy-based-routing multipath-rule mult1 bandwidth-limit 90user@host#
set security advance-policy-based-routing multipath-rule mult1 application junos:HTTPuser@host#
set security advance-policy-based-routing multipath-rule mult1 application junos:SIP
Configuración básica del dispositivo del lado del concentrador
user@host#
set security advance-policy-based-routing multipath-rule mult1 number-of-paths 2user@host#
set security advance-policy-based-routing multipath-rule mult1 bandwidth-limit 90user@host#
set security advance-policy-based-routing multipath-rule mult1 enable-reverse-winguser@host#
set security advance-policy-based-routing multipath-rule mult1 application junos:HTTPuser@host#
sset security advance-policy-based-routing multipath-rule mult1 application junos:SIP
Configuración de preferencias de vínculo
user@host#
set security advance-policy-based-routing multipath-rule mult1 link-preferences gr-0/0/0.0user@host#
set security advance-policy-based-routing multipath-rule mult1 link-preferences gr-0/0/0.1
Configuración de selección de ruta basada en el tipo de vínculo
user@host#
set security advance-policy-based-routing multipath-rule mult1 link-type MPLSuser@host#
set security advance-policy-based-routing multipath-rule mult1 link-type IP
Configuración basada en interfaz a nivel de enrutamiento multiruta basado en aplicaciones
user@host#
set security advance-policy-based-routing interface gr-0/0/0.0 link-tag IPuser@host#
set security advance-policy-based-routing interface gr-0/0/0.1 link-tag MPLS
Configuración VPN IPsec con túneles IPv6 y tráfico IPv4 en el dispositivo del lado del radio para enrutamiento multiruta basado en aplicaciones
user@host#
set groups ipsec-groups security ike proposal salausehdotp1 authentication-method pre-shared-keysuser@host#
set groups ipsec-groups security ike proposal salausehdotp1 dh-group group5user@host#
set groups ipsec-groups security ike proposal salausehdotp1 encryption-algorithm aes-256-gcmuser@host#
set groups ipsec-groups security ike policy salauspolitiikkap1 mode mainuser@host#
set groups ipsec-groups security ike policy salauspolitiikkap1 proposals salausehdotp1user@host#
set groups ipsec-groups security ike policy salauspolitiikkap1 pre-shared-key ascii-text "$9$1-7ESeLxd2oGdbPQnCB1-VwYgJDi.TF/aZ"user@host#
set groups ipsec-groups security ike gateway gateway1 ike-policy salauspolitiikkap1user@host#
set groups ipsec-groups security ike gateway gateway1 version v2-onlyuser@host#
set groups ipsec-groups security ipsec proposal salausehdotp2 protocol espuser@host#
set groups ipsec-groups security ipsec proposal salausehdotp2 encryption-algorithm aes-256-gcmuser@host#
set groups ipsec-groups security ipsec policy salauspolitiikkap2 perfect-forward-secrecy keys group5user@host#
set groups ipsec-groups security ipsec policy salauspolitiikkap2 proposals salausehdotp2user@host#
set groups ipsec-groups security ipsec vpn vpn1 df-bit clearuser@host#
set groups ipsec-groups security ipsec vpn vpn1 ike ipsec-policy salauspolitiikkap2user@host#
set groups ipsec-groups security ipsec vpn vpn1 establish-tunnels immediatelyuser@host#
set system host-name SRX345-2user@host#
set system root-authentication encrypted-password "$ABC123"user@host#
set system services ssh root-login allowuser@host#
set services application-identificationuser@host#
set security apply-groups ipsec-groupsuser@host#
set security ike gateway SRX345-1-A address fdf:a::1user@host#
set security ike gateway SRX345-1-A external-interface ge-0/0/0.0user@host#
set security ike gateway SRX345-1-B address fdf:b::1user@host#
set security ike gateway SRX345-1-B external-interface ge-0/0/1.0user@host#
set security ipsec vpn SRX345-1-A bind-interface st0.0user@host#
set security ipsec vpn SRX345-1-A ike gateway SRX345-1-Auser@host#
set security ipsec vpn SRX345-1-B bind-interface st0.1user@host#
set security ipsec vpn SRX345-1-B ike gateway SRX345-1-Buser@host#
set security application-tracking first-updateuser@host#
set security application-tracking session-update-interval 1user@host#
set security forwarding-options family inet6 mode flow-baseduser@host#
set security forwarding-options family mpls mode flow-baseduser@host#
set security flow allow-dns-replyuser@host#
set security flow allow-embedded-icmpuser@host#
set security flow sync-icmp-sessionuser@host#
set security flow tcp-mss all-tcp mss 1300user@host#
set security flow tcp-mss ipsec-vpn mss 1350user@host#
set security flow tcp-session no-syn-checkuser@host#
set security flow tcp-session no-syn-check-in-tunneluser@host#
set security flow tcp-session no-sequence-checkuser@host#
set security policies default-policy permit-alluser@host#
set security zones security-zone Untrust host-inbound-traffic system-services alluser@host#
set security zones security-zone Untrust host-inbound-traffic protocols alluser@host#
set security zones security-zone Untrust interfaces ge-0/0/0.0user@host#
set security zones security-zone Untrust interfaces ge-0/0/1.0user@host#
set security zones security-zone Untrust application-trackinguser@host#
set security zones security-zone Untrust enable-reverse-rerouteuser@host#
set security zones security-zone trust host-inbound-traffic system-services alluser@host#
set security zones security-zone trust host-inbound-traffic protocols alluser@host#
set security zones security-zone trust interfaces ge-0/0/6.0user@host#
set security zones security-zone trust application-trackinguser@host#
set security zones security-zone trust advance-policy-based-routing-profile apbruser@host#
set security zones security-zone trust enable-reverse-rerouteuser@host#
set security zones security-zone VPN host-inbound-traffic system-services alluser@host#
set security zones security-zone VPN host-inbound-traffic protocols alluser@host#
set security zones security-zone VPN interfaces st0.0user@host#
set security zones security-zone VPN interfaces st0.1user@host#
set security zones security-zone VPN application-trackinguser@host#
set security zones security-zone VPN enable-reverse-rerouteuser@host#
set security zones security-zone test interfaces ge-0/0/7.0 host-inbound-traffic system-services alluser@host#
set security zones security-zone test interfaces ge-0/0/7.0 host-inbound-traffic protocols alluser@host#
set security advance-policy-based-routing profile apbr rule r1 match dynamic-application junos:ICMPuser@host#
set security advance-policy-based-routing profile apbr rule r1 match dynamic-application junos:SSHuser@host#
set security advance-policy-based-routing profile apbr rule r1 match dynamic-application junos:ICMP-ECHOuser@host#
set security advance-policy-based-routing profile apbr rule r1 then routing-instance apbruser@host#
set security advance-policy-based-routing profile apbr rule r1 then sla-rule sla1user@host#
set security advance-policy-based-routing sla-rule sla1 multipath-rule amr-rule1user@host#
set security advance-policy-based-routing multipath-rule amr-rule1 number-of-paths 2user@host#
set security advance-policy-based-routing multipath-rule amr-rule1 bandwidth-limit 30user@host#
set security advance-policy-based-routing multipath-rule amr-rule1 enable-reverse-winguser@host#
set security advance-policy-based-routing multipath-rule amr-rule1 max-time-to-wait 60user@host#
set security advance-policy-based-routing multipath-rule amr-rule1 application junos:ICMPuser@host#
set security advance-policy-based-routing multipath-rule amr-rule1 application junos:SSHuser@host#
set security advance-policy-based-routing multipath-rule amr-rule1 application junos:ICMP-ECHOuser@host#
set security advance-policy-based-routing multipath-rule amr-rule1 link-preferences st0.0user@host#
set security advance-policy-based-routing multipath-rule amr-rule1 link-preferences st0.1user@host#
set interfaces ge-0/0/0 unit 0 family inet6 address fdf:a::2/64user@host#
set interfaces ge-0/0/1 unit 0 family inet6 address fdf:b::2/640user@host#
set interfaces ge-0/0/6 unit 0 family inet address 10.0.12.1/24user@host#
set interfaces ge-0/0/7 unit 0 family inet address 10.0.12.10/24user@host#
set interfaces fxp0 unit 0 family inet address 192.168.123.2/24user@host#
set interfaces st0 unit 0 family inet address 10.0.0.2/30user@host#
set interfaces st0 unit 1 family inet address 10.0.1.2/30user@host#
set policy-options policy-statement ecmp then load-balance per-packetuser@host#
set routing-instances IPSEC protocols ospf area 0.0.0.0 interface st0.0 interface-type p2puser@host#
set routing-instances IPSEC protocols ospf area 0.0.0.0 interface st0.1 interface-type p2puser@host#
set routing-instances IPSEC protocols ospf area 0.0.0.0 interface ge-0/0/6.0 passiveuser@host#
set routing-instances IPSEC interface ge-0/0/6.0user@host#
set routing-instances IPSEC interface st0.0user@host#
set routing-instances IPSEC interface st0.1user@host#
set routing-instances IPSEC instance-type virtual-routeruser@host#
set routing-instances IPSEC routing-options interface-routes rib-group inet apbr-groupuser@host#
set routing-instances apbr instance-type forwardinguser@host#
set routing-instances apbr routing-options static route 0.0.0.0/0 next-hop st0.0user@host#
set routing-instances apbr routing-options static route 0.0.0.0/0 next-hop st0.1user@host#
set routing-instances test interface ge-0/0/7.0user@host#
set routing-instances test instance-type virtual-routeruser@host#
set routing-instances test routing-options static route 0.0.0.0/0 next-hop 10.0.12.1user@host#
set routing-options rib-groups apbr-group import-rib IPSEC.inet.0user@host#
set routing-options rib-groups apbr-group import-rib apbr.inet.0user@host#
set routing-options forwarding-table export ecmp
En el caso de los túneles GRE, sustitúyase por ipsec
gre
. Para el túnel IPv4, el tráfico IPv4 y el tráfico IPv6, reemplace la configuración con IPv4 e IPv6 de manera adecuada.
Ejemplo: Configuración del enrutamiento de varias rutas basado en aplicaciones
En este ejemplo, se muestra cómo configurar el enrutamiento de varias rutas para proporcionar calidad de experiencia (QoE) mediante la habilitación de la supervisión en tiempo real del tráfico de la aplicación de acuerdo con el SLA especificado.
Requisitos
-
Dispositivo de la serie SRX compatible con Junos OS versión 15.1X49-D160, Junos OS versión 19.2R1 o posterior. Este ejemplo de configuración se ha probado para Junos OS versión 15.1X49-D160.
-
Licencia de función de identificación de aplicación válida instalada en un dispositivo de seguridad.
-
Políticas de seguridad adecuadas para hacer cumplir las reglas para el tráfico de tránsito, en términos de qué tráfico puede pasar por el dispositivo y las acciones que deben tener lugar en el tráfico a medida que pasa por el dispositivo.
-
Habilite el soporte de seguimiento de aplicaciones habilitado para la zona. Consulte Seguimiento de aplicaciones.
-
Asegúrese de que están configuradas las siguientes funciones:
Visión general
Para garantizar una entrega ininterrumpida de este tráfico sensible de aplicaciones, se admite el enrutamiento multiruta basado en aplicaciones en dispositivos de seguridad para permitir que el dispositivo de envío cree copias de paquetes y envíe cada copia a través de dos vínculos WAN al destino.
El enrutamiento de varias rutas identifica dos rutas según la configuración del SLA, crea una copia duplicada del tráfico de la aplicación y envía el tráfico simultáneamente a diferentes rutas físicas. En el dispositivo receptor, mientras la copia del paquete está en curso, el enrutamiento de varias rutas estima la reducción de la fluctuación, rtt y pérdida de paquetes, y analiza la calidad del servicio para enrutar el tráfico al mejor vínculo para proporcionar SLA al usuario final. Esto también ayuda en la estimación de la reducción de la fluctuación, rtt y pérdida de paquetes se realiza. Si ambas copias se reciben en el extremo remoto, se considera el primer paquete recibido y se pierden los posteriores.
La tabla 1 proporciona los detalles de los parámetros utilizados en este ejemplo.
Parámetro |
Opciones |
Valores |
---|---|---|
Regla de varias rutas (multi1) |
Número de rutas |
2 |
límite de ancho de banda |
60 |
|
Tiempo máximo de espera |
60 |
|
Tipo de vínculo |
MPLS, IP |
|
Aplicación |
junos:YAHOO, junos:GOOGLE |
|
grupo de aplicaciones |
junos:web |
|
Regla de SLA (sla1) |
Regla de varias rutas asociada |
multi1 |
Perfil APBR (apbr1) |
Aplicaciones de coincidencia |
junos:YAHOO |
Regla APBR |
regla 1 |
|
Regla de SLA |
sla1 |
|
Interfaz subyacente |
ge-0/0/2 y ge-0/0/3
|
En este ejemplo, se configuran reglas de varias rutas para el tráfico de aplicaciones junos:YAHOO y junos:GOOGLE. A continuación, configure una regla de SLA y asocie las reglas de varias rutas con la regla de varias rutas.
A continuación, asocie las reglas del SLA con reglas APBR creadas para la aplicación de Yahoo. El APBR usa los detalles de la aplicación para buscar una regla coincidente en el perfil APBR (perfil de aplicación).
La regla de varias rutas se aplica en el tráfico que coincide con junos:YAHOO o junos:GOOGLE, y se reenvía a la dirección del salto siguiente como se especifica en la instancia de enrutamiento.
El enrutamiento de varias rutas obtiene los tipos de vínculo subyacente y las superposiciones correspondientes en las que se requiere la duplicación de paquetes según la regla SLA. Según el tráfico de la aplicación y el límite de ancho de banda configurado, la multiruta identifica dos o más rutas y activa una copia del tráfico original en todas las rutas identificadas.
Cuando el tráfico llega al extremo receptor, el dispositivo receptor acepta paquetes de una sesión que llegan a través de diferentes vínculos, mantiene la secuencia de un paquete que llega a diferentes colas de CoS y elimina los paquetes duplicados.
Asegúrese de que la configuración sea la misma en todos los dispositivos, tanto en el lado de envío como en el de recepción, es tal que los dispositivos puedan actuar como remitente y receptor.
Configuración
- Configurar reglas de varias rutas para el tráfico de aplicaciones (dispositivo configurado para enviar tráfico)
- Configurar reglas de varias rutas para el tráfico de aplicaciones (dispositivo configurado para recibir tráfico))
Configurar reglas de varias rutas para el tráfico de aplicaciones (dispositivo configurado para enviar tráfico)
Procedimiento paso a paso
Configure perfiles APBR para el tráfico de diferentes aplicaciones y asocie la regla de SLA y la regla de varias rutas.
-
Cree instancias de enrutamiento.
user@host#
set routing-instances TC1_VPN instance-type vrfuser@host#
set routing-instances TC1_VPN route-distinguisher 10.150.0.1:101user@host#
set routing-instances TC1_VPN vrf-target target:100:101user@host#
set routing-instances TC1_VPN vrf-table-labeluser@host#
set routing-instances TC1_VPN routing-options static route 10.19.0.0/8 next-table Default_VPN.inet.0 -
Agrupe una o más tablas de enrutamiento para formar un grupo RIB e importar rutas a las tablas de enrutamiento.
user@host#
set routing-options rib-groups Default-VPN-to-TC1_VPN import-rib [ Default_VPN.inet.0 TC1_VPN.inet.0 ] -
Configure AppQoE como servicio. Debe configurar AppQoE como servicio para el tráfico entrante de host para una zona deseada.
user@host#
set security zones security-zone untrust1 host-inbound-traffic system-services appqoe -
Cree el perfil APBR y defina las reglas.
user@host#
set security advance-policy-based-routing profile apbr1 rule rule1 match dynamic-application junos:GOOGLEuser@host#
set security advance-policy-based-routing profile apbr1 rule rule1 match dynamic-application junos:YAHOOuser@host#
set security advance-policy-based-routing profile apbr1 rule rule1 match dynamic-application-group junos:webuser@host#
set security advance-policy-based-routing profile apbr1 rule rule1 then routing-instance TC1_VPNuser@host#
set security advance-policy-based-routing profile apbr1 rule rule1 then sla-rule sla1 -
Configure los parámetros de sondeo activos.
user@host#
set security advance-policy-based-routing active-probe-params probe1 settings data-fill juniperuser@host#
set security advance-policy-based-routing active-probe-params probe1 settings data-size 100user@host#
set security advance-policy-based-routing active-probe-params probe1 settings probe-interval 30user@host#
set security advance-policy-based-routing active-probe-params probe1 settings probe-count 30user@host#
set security advance-policy-based-routing active-probe-params probe1 settings burst-size 1user@host#
set security advance-policy-based-routing active-probe-params probe1 settings sla-export-interval 60user@host#
set security advance-policy-based-routing active-probe-params probe1 settings dscp-code-points 000110 -
Configure el perfil de métricas.
user@host#
set security advance-policy-based-routing metrics-profile metric1 sla-threshold delay-round-trip 120000user@host#
set security advance-policy-based-routing metrics-profile metric1 sla-threshold jitter 21000user@host#
set security advance-policy-based-routing metrics-profile metric1 sla-threshold jitter-type egress-jitteruser@host#
set security advance-policy-based-routing metrics-profile metric1 sla-threshold packet-loss 2 -
Configure interfaces subyacentes.
si el tipo de vínculo no está configurado en la opción interfaces subyacentes, se utiliza la IP de tipo de vínculo predeterminado y se considera la velocidad de vínculo predeterminada de 1000 Mbps.
user@host#
set security advance-policy-based-routing underlay-interface ge-0/0/2 unit 0 link-type MPLSuser@host#
set security advance-policy-based-routing underlay-interface ge-0/0/2 unit 0 speed 800user@host#
set security advance-policy-based-routing underlay-interface ge-0/0/3 unit 0 link-type MPLSuser@host#
set security advance-policy-based-routing underlay-interface ge-0/0/3 unit 0 speed 500 -
Configure rutas superpuestas.
user@host#
set security advance-policy-based-routing overlay-path overlay-path1 tunnel-path local ip-address 10.40.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path1 tunnel-path remote ip-address 10.40.1.1user@host#
set security advance-policy-based-routing overlay-path overlay-path1 probe-path local ip-address 10.40.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path1 probe-path remote ip-address 10.40.1.1user@host#
set security advance-policy-based-routing overlay-path overlay-path2 tunnel-path local ip-address 10.41.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path2 tunnel-path remote ip-address 10.41.1.1user@host#
set security advance-policy-based-routing overlay-path overlay-path2 probe-path local ip-address 10.41.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path2 probe-path remote ip-address 10.41.1.1user@host#
set security advance-policy-based-routing overlay-path overlay-path3 tunnel-path local ip-address 10.42.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path3 tunnel-path remote ip-address 10.42.1.1user@host#
set security advance-policy-based-routing overlay-path overlay-path3 probe-path local ip-address 10.42.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path3 probe-path remote ip-address 10.42.1.1 -
Configure grupos de rutas de destino.
user@host#
set security advance-policy-based-routing destination-path-group site1 probe-routing-instance transituser@host#
set security advance-policy-based-routing destination-path-group site1 overlay-path overlay-path1user@host#
set security advance-policy-based-routing destination-path-group site1 overlay-path overlay-path2user@host#
set security advance-policy-based-routing destination-path-group site1 overlay-path overlay-path3 -
Configure la regla de varias rutas.
user@host#
set security advance-policy-based-routing multipath-rule multi1 bandwidth-limit 60user@host#
set security advance-policy-based-routing multipath-rule multi1 application junos:YAHOOuser@host#
set security advance-policy-based-routing multipath-rule multi1 application junos:GOOGLEuser@host#
set security advance-policy-based-routing multipath-rule multi1 application-group junos:webuser@host#
set security advance-policy-based-routing multipath-rule multi1 link-type MPLSuser@host#
set security advance-policy-based-routing multipath-rule multi1 link-type IPuser@host#
set security advance-policy-based-routing multipath-rule multi1 max-time-to-wait 30user@host#
set security advance-policy-based-routing multipath-rule multi1 number-of-paths 2 -
Configure la regla de SLA.
user@host#
set security advance-policy-based-routing sla-rule sla1 switch-idle-time 40user@host#
set security advance-policy-based-routing sla-rule sla1 metrics-profile metric1user@host#
set security advance-policy-based-routing sla-rule sla1 active-probe-params probe1user@host#
set security advance-policy-based-routing sla-rule sla1 passive-probe-params sampling-percentage 25user@host#
set security advance-policy-based-routing sla-rule sla1 passive-probe-params violation-count 2user@host#
set security advance-policy-based-routing sla-rule sla1 passive-probe-params sampling-period 60000user@host#
set security advance-policy-based-routing sla-rule sla1 passive-probe-params type book-ended -
Asocie una regla de SLA a una regla de varias rutas.
user@host#
set security advance-policy-based-routing sla-rule sla1 multipath-rule multi1
Configurar reglas de varias rutas para el tráfico de aplicaciones (dispositivo configurado para recibir tráfico))
Procedimiento paso a paso
Las variables configuradas en este paso son las mismas tanto para el dispositivo de envío como para el de recepción.
-
Configure la regla de varias rutas en el dispositivo receptor.
user@host#
set security advance-policy-based-routing multipath-rule multi1 bandwidth-limit 60user@host#
set security advance-policy-based-routing multipath-rule multi1 application junos:YAHOOuser@host#
set security advance-policy-based-routing multipath-rule multi1 application junos:GOOGLEuser@host#
set security advance-policy-based-routing multipath-rule multi1 application-group junos:webuser@host#
set security advance-policy-based-routing multipath-rule multi1 link-type MPLSuser@host#
set security advance-policy-based-routing multipath-rule multi1 link-type IP
Resultados
Desde el modo de configuración, ingrese los comandos para confirmar la show
configuración. Si el resultado no muestra la configuración deseada, repita las instrucciones de configuración en este ejemplo para corregirla.
Configuración de reglas de varias rutas del dispositivo del lado del hub
[edit security]
user@host#
show advance-policy-based-routing multipath-rule multi1 multipath-rule multi1 { bandwidth-limit 60; application [ junos:YAHOO junos:GOOGLE ]; application-group junos:web; link-type [ MPLS IP ]; number-of-paths 2; }
[edit security]
user@host#
show advance-policy-based-routing profile apbr1 { rule rule1 { match { dynamic-application [ junos:GOOGLE, junos:YAHOO ]; dynamic-application-group [ junos:web ]; } then { routing-instance TC1_VPN; sla-rule { sla1; } } } } active-probe-params probe1 { settings { data-fill { juniper; } data-size { 100; } probe-interval { 30; } probe-count { 30; } burst-size { 1; } sla-export-interval { 60; } dscp-code-points { 000110; } } } metrics-profile metric1 { sla-threshold { delay-round-trip { 120000; } jitter { 21000; } jitter-type { egress-jitter; } packet-loss { 2; } } } underlay-interface ge-0/0/2 { unit 0 { link-type MPLS; speed 800; } } underlay-interface ge-0/0/3 { unit 0 { link-type MPLS; speed 500; } } overlay-path overlay-path1 { tunnel-path { local { ip-address { 10.40.1.2; } } remote { ip-address { 10.40.1.1; } } } probe-path { local { ip-address { 10.40.1.2; } } remote { ip-address { 10.40.1.1; } } } } overlay-path overlay-path2 { tunnel-path { local { ip-address { 10.41.1.2; } } remote { ip-address { 10.41.1.1; } } } probe-path { local { ip-address { 10.41.1.2; } } remote { ip-address { 10.41.1.1; } } } } overlay-path overlay-path3 { tunnel-path { local { ip-address { 10.42.1.2; } } remote { ip-address { 10.42.1.1; } } } probe-path { local { ip-address { 10.42.1.2; } } remote { ip-address { 10.42.1.1; } } } } destination-path-group site1 { probe-routing-instance { transit; } overlay-path overlay-path1; overlay-path overlay-path2; overlay-path overlay-path3; } sla-rule sla1 { switch-idle-time { 40; } metrics-profile { metric1; } active-probe-params { probe1; } passive-probe-params { sampling-percentage { 25; } violation-count { 2; } sampling-period { 60000; } type { book-ended; } } multipath-rule { multi1; } } multipath-rule multi1 { bandwidth-limit 60; application [ junos:YAHOO junos:GOOGLE ]; application-group junos:web; link-type [ MPLS IP ]; number-of-paths 2; }
Si ha terminado de configurar el dispositivo, ingrese commit
desde el modo de configuración.
Verificación
- Mostrar estado de la regla de varias rutas
- Mostrar estadísticas de reglas de varias rutas para una aplicación
- Mostrar políticas de reglas de varias rutas
- Mostrar estado de la regla de varias rutas
Mostrar estado de la regla de varias rutas
Propósito
Muestra los detalles de la regla de varias rutas en el dispositivo configurado para enviar tráfico.
Acción
Desde el modo operativo, ingrese el show security advance-policy-based-routing multipath rule
comando.
user@host>
show security advance-policy-based-routing multipath rule multi1
Multipath Rule Status:
Multipath Rule Information:
Multipath rule name multi1
Multipath rule type Packet-Copy
Multipath rule state Active
Configured number of paths 2
Configured application groups junos:web
Configured applications junos:GOOGLE, junos:YAHOO
Path Group Information:
Total path groups : 1
Path-Group-Id State Avl-Num-Paths
1 Active 3
Receiver Information:
Path Groups Information:
Total receiver path groups : 1
Path-Group-Id : 1, Avg-Pkt-Loss(%) : 0, Avg-Ingress-Jitter(us) : 171
Path Information:
Dst-IP Pkts-Rcvd Pkt-Loss(%) Ingress-Jitter(us) Reduction-Pkt-Loss(%) Reduction-Ingress-Jitter(us)
10.40.1.2 2442 0 165 0 -6
10.41.1.2 2442 0 158 0 -13
Cos Q Statistics:
Total receiver cos queues: 8
COS-Q-Id Pkts-Rcvd Out-Of-Seq-Drop
0 4884 2442
1 0 0
2 0 0
3 0 0
4 0 0
5 0 0
6 0 0
7 0 0
Significado
El resultado del comando muestra los detalles de la regla de varias rutas.
Mostrar estadísticas de reglas de varias rutas para una aplicación
Propósito
Mostrar los detalles del tráfico de la aplicación en el dispositivo configurado para recibir tráfico
Acción
Desde el modo operativo, ingrese el show security advance-policy-based-routing multipath rule rule-name application application-name
comando.
user@host>
show security advance-policy-based-routing multipath rule multi1 application junos:YAHOO
Multipath Rule Status:
Multipath Rule Information:
Multipath rule name multi1
Multipath rule type Packet-Copy
Multipath rule state Active
Configured number of paths 2
Configured applications junos:YAHOO
Sender Information:
Statistics:
Current Sessions 0
Ignored Sessions 1
Applications Matched 1
Applications Switched 0
Stopped due to Bandwidth Limit 0
Packets in path inactive state 0
Packets in path active state 627
Midstream Packets Ignored 0
Total Packets Processed 627
Total Packets Copied 627
Significado
El resultado del comando muestra la regla de varias rutas para la aplicación.
Mostrar políticas de reglas de varias rutas
Propósito
Muestra los detalles de la regla de varias rutas en el dispositivo configurado para enviar tráfico.
Acción
Desde el modo operativo, ingrese el show security advance-policy-based-routing multipath rule
comando.
user@host>
show security advance-policy-based-routing multipath policy statistics application junos:YAHOO multipath-name multi1 profile apbr1 rule rule1 zone trust
Sender Information:
Statistics:
Current Sessions 0
Ignored Sessions 0
Applications Matched 1
Applications Switched 0
Stopped due to Bandwidth Limit 0
Packets in path inactive state 26
Packets in path active state 2416
Less than Configured Paths 0
Midstream Packets Ignored 0
Total Packets Processed 2442
Total Packets Copied 2442
Significado
El resultado del comando muestra los detalles del tráfico que se maneja con la regla de varias rutas aplicadas.
Mostrar estado de la regla de varias rutas
Propósito
Mostrar los detalles de la regla de varias rutas en el dispositivo configurado para recibir tráfico
Acción
Desde el modo operativo, ingrese el show security advance-policy-based-routing multipath rule
comando.
user@host>
show security advance-policy-based-routing multipath rule multi1
Multipath Rule Status:
Multipath Rule Information:
Multipath rule name multi1
Multipath rule type Packet-Copy
Multipath rule state Active
Configured number of paths 2
Configured application groups junos:web
Configured applications junos:GOOGLE, junos:YAHOO
Path Group Information:
Total path groups : 1
Path-Group-Id State Avl-Num-Paths
1 Active 3
Receiver Information:
Path Groups Information:
Total receiver path groups : 1
Path-Group-Id : 1, Avg-Pkt-Loss(%) : 0, Avg-Ingress-Jitter(us) : 171
Path Information:
Dst-IP Pkts-Rcvd Pkt-Loss(%) Ingress-Jitter(us) Reduction-Pkt-Loss(%) Reduction-Ingress-Jitter(us)
10.40.1.1 2442 0 165 0 -6
10.41.1.1 2442 0 158 0 -13
Cos Q Statistics:
Total receiver cos queues: 8
COS-Q-Id Pkts-Rcvd Out-Of-Seq-Drop
0 4884 2442
1 0 0
2 0 0
3 0 0
4 0 0
5 0 0
6 0 0
7 0 0
Significado
El resultado muestra los detalles relacionados con la regla de varias rutas.