Observabilidad
La inercia se puede sobrealimentación. La suplantación de una tecnología requiere competir con no solo la propia tecnología, sino también con su ecosistema. El ecosistema incluye—ingenieros de red, diseñadores, arquitectos y operadores que se han especializado en el uso de un determinado kit de herramientas. Incluye pedidos, facturación, garantía de servicio, orquestación y aplicaciones de visualización. Esto puede ralentizar la transición e incluso impedirle detenerla.
Por suerte, segmentar el enrutamiento está disfrutando de una enorme popularidad. Esto ha dado como resultado que se haya invertido en el desarrollo, aprendizaje e implementación de la TI. Las aplicaciones se están poniendo al día, ofreciendo experiencias de usuario conocidas para reducir la curva de aprendizaje; los mejores casos de uso más prometedores que son que son de exclusiva logro con SR.
En este capítulo se examinan las herramientas que se describen y proporcionan garantía de servicio para una red enrutada de segmentos.
Zonas
NorthStar es una controladora de subyacente de MPLS y una superposición selectiva. Su Genesis está arraigada en el auge de la centralización de la política y el control de tráfico. En lugar de tener que destinarse a ser un único panel de cristal, se illusory a tierra mediante la implementación de una funcionalidad de ingeniería de tráfico bien definida.
Día uno: Controlador NorthStar activo y en ejecución es el mejor recurso de inicio para obtener más información sobre esta aplicación: https://www.juniper.net/us/en/training/jnbooks/day-one/networking-technologies-series/northstar-controller/.
Esta concentración de este capítulo no estará administrando NorthStar, pero permitir que una implementación existente agregue valor a una red de SR.
A su vez, también nos centraremos en tierra. En primer lugar’, se va a ver la red creada hasta ese momento. Nueva familia de direcciones BGP– link-state
–estará habilitado entre los enrutadores de borde de área (ABR’) y Northstar Junos máquina virtual. Esto exporta la topología para cada nodo de – área, vínculos, atributos de vínculo y prefijos. Tanto Junos como NorthStar se han mejorado para admitir la exportación de capacidades específicas de SR, como los SID rango de SRGB, nodo y adyacencia.
Aplique la siguiente configuración a los abr en Nueva York y Washington – P1. NYC, P2. NYC, P1. IAD y P2. IAD, sustituyendo los valores específicos de los enrutadores según corresponda. Esto proporciona redundancia, ya que configura todos los Abr de una región para exportar la topología específica de área; también garantiza la cobertura de toda la red de múltiples niveles:
Echemos’un vistazo a lo que P1. NYC exporta de sus dos áreas. ’Revisamos un ejemplo de cada uno de los nodos, enlaces y prefijos, y cómo esa información se ha enriquecido con atributos de Sr.
Control plane: p1.nyc exporting pe2.nyc as a node, as well as its SR attributes
user@p1.nyc> show route advertising-protocol bgp 192.168.88.99 te-node-iso 0128.0049.1060.00 lsdist.0: 82 destinations, 82 routes (82 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path NODE { AS:4200000000 ISO:0128.0049.1060.00 ISIS-L1:0 }/1216 * Self 100 I IPv4 Router-ids: 128.49.106.0 Area border router: No External router: No Attached: No Overload: Yes Hostname: pe2.nyc Area membership: 49 00 01 SPRING-Capabilities: - SRGB block [Start: 1000, Range: 128, Flags: 0xc0] SPRING-Algorithms: - Algo: 0
Control Plane: p1.nyc exporting the link between itself and pe1.nyc, and its local adjacency SID
user@p1.nyc> show route advertising-protocol bgp 192.168.88.99 te-link-local-ip 192.0.2.5 lsdist.0: 82 destinations, 82 routes (82 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path LINK { Local { AS:4200000000 ISO:0128.0049.1063.00 }. { IPv4:192.0.2.5 } Remote { AS:4200000000 ISO:0128.0049.1061.00 }. { IPv4:192.0.2.4 } ISIS-L1:0 }/1216 * Self 100 I Metric: 10 TE Metric: 10 P2P IPV4 Adj-SID - Label: 16, Flags: 0x70, Weight: 0
Control plane: p1.nyc exporting pe2.iad’s prefix and associated SID index
user@p1.nyc> show route advertising-protocol bgp 192.168.88.99 te-ipv4-prefix-ip 128.49.106.10 lsdist.0: 82 destinations, 82 routes (82 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path PREFIX { Node { AS:4200000000 ISO:0128.0049.1062.00 } { IPv4:128.49.106.10/32 } ISIS-L1:0 }/1216 * Self 100 I Prefix SID: 10, Flags: 0xe0, Algo: 0
La suma total del BGP-LS de Exchange permite a NorthStar construir un gráfico de la red tal y como Figure 1 se Figure 2muestra en el y el.


Además de deshacer la serialización ‘de las’ rutas BGP-LS, Northstar puede recopilar, a través de NETCONF, y analizar la configuración del dispositivo. Para ello, puede recorrer el menú de’ti s en la parte superior derecha (administración > programador de tareas > agregar > colección de dispositivos). Asegúrese de especificar credenciales de usuario’que no sean raíz.
La recopilación de la configuración del dispositivo es opcional, pero mejora la experiencia del usuario. Por ejemplo, los ASNs a los que se adjunta nuestra red se hacen visibles en la IU. Puede profundizar en los VRFs VPN de capa 3 para descubrir sus PEs, los circuitos de conexión y los destinos de ruta. ’Estas no son las indicaciones exportadas por BGP-LS. El análisis de la configuración presenta a los operadores varios aspectos de su red.
Pero se trata de un libro sobre el enrutamiento segmentado. NorthStar tiene varias visualizaciones valiosas y específicas de SR. Cada vínculo puede mostrar no solo una dirección IP, sino también su SID de adyacencia asignado localmente. Puede seleccionar esto haciendo clic en el icono de engranaje del espacio de trabajo (debajo de los botones de Figure 3+/-zoom). Desde ahí, elija vínculos > Mostrar etiqueta > IP, SID A:: Z.

Otra característica muy útil es hacer clic con el botón secundario del mouse (ratón) en un enrutador y seleccionar los SID del nodo seleccionado. Las etiquetas del otro enrutador cambian para mostrar el SID del nodo junto a su nombre de host. Esto se produce agregando el’índice de cada nodo (solo IPv4 en el momento) al sRGB anunciado de los vecinos del’enrutador.
Como práctica recomendada, la base y tamaño SRGB se han mantenido coherentes en nuestra red. En las redes en las’que no se’puede seguir este caso, esta característica solo puede ser Lifesaver.
Hacemos’una pausa en nuestra exploración de Northstar como herramienta de visualización. Siempre’nos devolvemos en su trabajo diario como un controlador de la ingeniería de tráfico. En este punto, a’partir de este ejercicio de sólo vista, realizamos el cálculo y el aprovisionamiento de las directivas de Sr-te (el nombre apropiado del LSP de Sr-t).

Telemetría
A partir de su propia naturaleza,’ Junos implementación de Sr renuncia a la exportación de estadísticas a través de SNMP. Conocido que es de, SNMP está siendo sustituido por protocolos y marcos ampliamente más eficaces que organizan la información.
En la parte frontal del Protocolo, gRPC obsoletos de SNMP. Hereda las ventajas de HTTP/2, como:
Binario: A diferencia de Text, la serialización y la anulación de la serialización de los protocolos binarios es más eficiente, compacta y menos propensa a errores en comparación con aspectos tales como el tratamiento de los espacios en blanco. gRPC utiliza búferes de protocolo para codificar y descodificar datos. SNMP utiliza ASN. 1.
Multiplexaciónde: Esto permite varias solicitudes activas a través de una sola conexión TCP, a la vez que allow to parallelism. En la práctica, SNMP se basa en UDP y hereda su naturaleza no garantizada.
Bidireccional: A diferencia de su antecesor, HTTP/2 permite al servidor insertar al cliente datos potencialmente útiles, sin necesidad de solicitarlos de forma explícita.
gRPC admite autenticación mutua basada en certificados; la rara vez usada SNMPv3 solo admite la autenticación de claves compartidas. gRPC también ofrece enfoques de publicación y suscripción periódicos e impulsados por eventos. Esto es parecido al sondeo de estadísticas de SNMP’s y se basa en interrupciones no solicitadas para transmitir cambios de estado. Lo que hace gRPC más eficaz es que permite que un cliente exprese su interés en subconjuntos del árbol de información de estado; a medida que el estado cambia, el servidor publica la actualización a – los clientes, lo que’podría incluir un ARP de enrutador o una tabla ND, estado LSP, et al.
jtimon es un cliente de gRPC de código abierto’que es de muy invaluable para pruebas. No solo admite la suscripción a varios paths para cambios periódicos y desencadenados por eventos, sino que también admite autenticación mutua, conversión cómoda de pares clave/valor a JSON, y exporta a Influxdb y Prometheus. Puede encontrarlo en https://github.com/nileshsimaria/jtimon.
A partir de este mejor, el transporte es OpenConfig, una iniciativa para modelar redes de manera neutral con respecto a los proveedores. Se trata de un intento de mejorar el’método de SNMP s de – organizar la información que base de información de administración – (BIA), lo que dio como resultado una escasa compatibilidad con proveedores neutros. Tanto los modelos de datos de configuración como los de funcionamiento se han definido por OpenConfig para – las características más utilizadas BGP, LLDP y, por supuesto, Sr. Otras se quedan en el trabajo.
Explore el conjunto de características de Junos OpenConfig en https://Juni.PR/2WRRLst. Visite www.openconfig.net para estar al día con el progreso de los modelos de datos y que posiblemente contribuyan a él. Recuerde que OpenConfig no es una sola tecnología o protocolo, sino el nombre de un grupo de trabajo que comparte el objetivo de una infraestructura más programable.
El protocolo de transporte sólido y la representación intuitiva del modelo de datos facilita la telemetría moderna para el operador.
Por ejemplo, así es cómo se llevaría a cabo tradicionalmente’una encuesta SNMP para el estado operativo de una interfaz. En primer lugar,’tendría que detectarse la interfaz s. Se trata de un valor entero arbitrario que el dispositivo asigna a una interfaz. Todos los contadores y el estado específico de la interfaz se codifican utilizando ese índice. Durante mucho tiempo, el valor de tipo sería el de almacenamiento en caché, posiblemente reasignado y, por lo tanto, el reaprendizaje en el reinicio del dispositivo. Entonces, el estado y los contadores asociados con dicha interfaz tendrían que ser sondeados:
IF-MIB::ifDescr
es una abreviatura de uso humano para el OID – subyacente. 1.3.6.1.2.1.2. No todas las ramas del BIA tienen una representación fácil de enseres humanos. Por el contrario, la ruta de acceso del subárbol equivalente con OpenConfig es /interfaces/interface[name=’ge-0/0/0’]/state/oper-status/
. No funciona’bien en la lógica para comprender la intención, incluso si el operador no está desconocido inicialmente con esta sintaxis de ruta de acceso X.
Habilitando OpenConfig con transporte gRPC
La habilitación del transporte de gRPC es trivial para fines de pruebas. La habilitación de la TI para la producción implica una sobrecarga en la autenticación basada en certificados. Como resultado, requiere una infraestructura de clave pública (PKI) funcional, concretamente una entidad emisora de certificados (CA), que pueda emitir certificados digitales.
Este libro aspira a aplicar las prácticas recomendadas. Como resultado, la configuración de la telemetría será segura. Aún así, mantener y reforzar un entorno de PKI queda fuera del ámbito de este libro. También se proporcionará una versión no segura con una abundancia de precauciones para no implementarla en la práctica.
Hay seis pasos necesarios para activar y proteger el gRPC:
Crear una instancia de una entidad emisora raíz. Esto se debe hacer en un host x86. El siguiente ejemplo utiliza OpenSSL para crear una clave privada (. Key Extension) y un certificado con firma personal (extensión. CRT).
% openssl genrsa -out ca/root_ca.key 2048% openssl req -x509 -new -key CA/root_ca.key -days 3650 -out CA/root_ca.crt -subj ‘/CN=Root CA’A continuación, generará una clave privada y una solicitud de firma de certificado (CSR,
.csr
extensión) del cliente gRPC. En nuestro ejemplo, jtimon es el cliente gRPC. El host x86 en el que se ejecuta necesita presentar su identidad a los servidores gRPC (enrutadores) para la autenticación mutua. La entidad emisora creada anteriormente puede aprobar el uso del CSR, lo que genera un certificado para jtimon.% openssl genrsa -out client/client.key 2048% openssl req -new -key client/client.key -out client/client.csr -subj ‘/CN=localhost’% openssl x509 -req -in client/client.csr -CA CA/root_ca.crt -CAkey CA/root_ca.key -CAcreateserial -out client/client.crt -days 365Cada enrutador debe generar una clave privada y un CSR. A continuación, la entidad emisora cumplirá cada CSR, como en el paso anterior, generando un certificado para el enrutador respectivo. Tanto el certificado como la clave privada se agrupan (.
pem
extensión). El ejemplo siguiente corresponde a PE1. NYC:% openssl genrsa -out router/pe1.nyc.key 2048% openssl req -new -key router/pe1.nyc.key -out router/pe1.nyc.csr ‘/CN=pe1.nyc’% openssl x509 -req -in router/router.csr -CA CA/RootCA.crt -CAkey CA/RootCA.key -CAcreateserial -out router/router.crt -days 365% cat router/pe1.nyc.crt router/pe1.nyc.key > router/pe1.nyc.pemLas tres identidades – , la entidad’emisora raíz y los’jtimon de host s, así como el’paquete – propio de enrutador, deben copiarse en el
/var/tmp
Ubicación en cada enrutador. Como ejemplo, esto es lo que resulta de PE1. NYC:user@pe1.nyc> file list /var/tmp/*.crt/var/tmp/client.crt/var/tmp/root_ca.crtuser@pe1.nyc> file list /var/tmp/*.pem/var/tmp/pe1.nyc.pemLos certificados deben activarse a través de la configuración. El ejemplo siguiente corresponde a PE1. NYC:
[edit]# set security pki ca-profile root_ca ca-identity root_ca# set security certificates local local-cert load-key-file /var/tmp/pe1.nyc.pem# commit# run request security pki ca-certificate load ca-profile root_ca filename /var/tmp/root_ca.crtPor último, gRPC puede habilitarse para escuchar en un puerto seguro y requiere autenticación mutua. Es necesario proporcionar un nombre de usuario y una contraseña jtimon – el usuario debe estar presente en la
[system login]
jerarquía de configuración del enrutador:user@pe1.nyc> show configurationsystem {services {extension-service {request-response {grpc {ssl {port 32767;local-certificate local-cert; mutual-authentication {certificate-authority root_ca;client-certificate-request require-certificate-and-verify;}}}}}}}
Estrictamente para fines de prueba, puede que desee utilizar gRPC de forma no segura. Hágalo fuera de un entorno de laboratorio bajo su propia responsabilidad. Omita los pasos 1-5 anteriores y reemplace Stanza en el paso 6 por:
SR telemetría
Con este telón de fondo’, explore las estadísticas de Sr que se pueden transmitir por secuencias. El más fundamental es el volumen de tráfico enrutado de segmento que se transmite en tránsito a una interfaz. Durante una migración de otros protocolos de transporte MPLS, este sensor puede distinguir qué parte del plano de envío se ha desplazado a SR.
Puede configurarlo de la siguiente manera:
Esto instala sensores para cada interfaz que tenga un salto siguiente de SR.
Management plane: Verify the OpenConfig sensors have been installed
user@pe1.nyc> show isis spring sensor info @IS-IS SENSOR INFORMATION Per-interface-per-member-link Ingress Sensor: Sensor-name Sensor-id aggr_ingress_intf_sensor 3221225555 Per-interface-per-member-link Egress Sensor: Sensor-name Sensor-id ge-0/0/1.0 3221225556 ge-0/0/2.0 3221225557 user@pe1.nyc> show route table inet.3 128.49.106.0/32 detail inet.3: 8 destinations, 9 routes (8 active, 0 holddown, 0 hidden) 128.49.106.0/32 (1 entry, 1 announced) *L-ISIS Preference: 14 ... Next hop: 192.0.2.5 via ge-0/0/1.0 Label operation: Push 1000 ... Statistics ID Group: Kernel ID = 2, Stats IDs = { 3221225556 } Next hop: 192.0.2.7 via ge-0/0/2.0, selected Label operation: Push 1000 ... Statistics ID Group: Kernel ID = 1, Stats IDs = { 3221225557 }
Ahora puede suscribirse a la ruta de acceso de OpenConfig que exporta estas estadísticas (/MPLS/Signaling-Protocols/Segment-Routing/interfaces/). Configure jtimon mediante un archivo similar al siguiente, sustituyendo las credenciales de autenticación y rutas de la clave privada y los certificados según sea necesario:
La configuración se explica por sí misma. Se solicita al enrutador que publique las estadísticas de la interfaz SR cada 10 segundos. Inicie jtimon y observe qué PE1. NYC informes:
% jtimon-darwin-amd64 --config dev/telemetry/pe1.nyc.ssl.json –print Connecting to pe1.nyc:32767 ... Receiving telemetry data from pe1.nyc:32767 system_id: pe1.nyc component_id: 0 sub_component_id: 0 path: sensor_1019_1:/junos/services/segment-routing/interface/egress/usage/:/mpls/signaling- protocols/segment-routing/interfaces/:PFE sequence_number: 0 timestamp: 1550427772636 sync_response: false key: timestamp uint_value: 1550427772637 key: prefix str_value: /mpls/signalling-protocols/segment-routing/interfaces/interface[name=’ge-0/0/1.0’]/ state/counters[name=’oc-84’]/ key: out-pkts int_value: 5 key: out-octets int_value: 420
Como un PE de entrada, puede ver que el tráfico IP entrante de CEs se ha enviado con una etiqueta SR a través de la interfaz conectada con P1. nyc. No’se explica que el destino del tráfico es la etiqueta impuesta’t comunicada. Observe que el nombre del contador (oc-84
) utiliza un número arbitrario, que no está relacionado con las etiquetas que se utilizan.
Jtimon apuntando a P1. NYC muestra el flujo de tráfico bidireccional. El mismo número de paquetes de entrada y salida GE-0/0/2 y GE-0/0/3 – estas interfaces conectan con PE1. NYC y PE2. NYC, respectivamente:
system_id: p1.nyc ... str_value: /mpls/signalling-protocols/segment-routing/interfaces/interface[name=’ge-0/0/2.0’]/ state/counters[name=’oc-82’]/ key: out-pkts int_value: 5 key: out-octets int_value: 440 ... str_value: /mpls/signalling-protocols/segment-routing/interfaces/interface[name=’ge-0/0/3.0’]/ state/counters[name=’oc-83’]/ key: out-pkts int_value: 5 key: out-octets int_value: 440 system_id: p1.nyc ... str_value: /mpls/signalling-protocols/segment-routing/interfaces/interface[name=’ge-0/0/2.0’]/ key: in-pkts int_value: 5 key: in-octets int_value: 440 ... str_value: /mpls/signalling-protocols/segment-routing/interfaces/interface[name=’ge-0/0/3.0’]/ key: in-pkts int_value: 5 key: in-octets int_value: 440
Como paso final, instrumentando PE2. NYC muestra el tráfico de SR de salida GE-0/0/1, que es una interfaz’local de PE2. NYC s a P1. NYC:
system_id: pe2.nyc ... str_value: /mpls/signalling-protocols/segment-routing/interfaces/interface[name=’ge-0/0/1.0’]/ state/counters[name=’oc-45’]/ key: out-pkts int_value: 5 key: out-octets int_value: 420
El Eagle-Eyed habrá observado que P1. NYC informa de un tamaño promedio de paquete de 4 bytes mayor que el de – los enrutadores PE que confirman el establecimiento de un único SID de nodo derivado MPLS etiqueta.
Esto es un buen comienzo, por lo que solo podemos obtener más detalle. Las estadísticas por SID, especialmente con una SRGB uniforme a todo el dominio, pueden ser muy útiles para calcular matrices de tráfico. La configuración para permitir esto es:
Management plane: Verify additional OpenConfig sensors have been installed per-SID
user@pe1.nyc> show isis spring sensor info @IS-IS SENSOR INFORMATION Per-interface-per-member-link Ingress Sensor: Sensor-name Sensor-id aggr_ingress_intf_sensor 3221225555 Per-interface-per-member-link Egress Sensor: Sensor-name Sensor-id ge-0/0/1.0 3221225556 ge-0/0/2.0 3221225557 Per-sid Ingress Sensor: Sensor-name Sensor-id 17 3221225558 18 3221225559 19 3221225560 20 3221225561 1060 3221225562 1062 3221225563 1063 3221225564 1068 3221225565 1069 3221225566 1070 3221225567 1071 3221225568 1073 3221225569 1000 3221225570 1002 3221225571 1003 3221225572 1008 3221225573 1009 3221225574 1010 3221225575 1011 3221225576 1013 3221225577 IPv4/IPv6 Per-sid Egress Sensor: Sensor-name Sensor-id L-ISIS-128.49.106.0 3221225578 L-ISIS-128.49.106.2 3221225579 L-ISIS-128.49.106.3 3221225580 L-ISIS-128.49.106.8 3221225581 L-ISIS-128.49.106.9 3221225582 L-ISIS-128.49.106.10 3221225583 L-ISIS-128.49.106.11 3221225584 L-ISIS-128.49.106.13 3221225585 L-ISIS-2001:db8::128:49:106:0 3221225586 L-ISIS-2001:db8::128:49:106:2 3221225587 L-ISIS-2001:db8::128:49:106:3 3221225588 L-ISIS-2001:db8::128:49:106:8 3221225589 L-ISIS-2001:db8::128:49:106:9 3221225590 L-ISIS-2001:db8::128:49:106:10 3221225591 L-ISIS-2001:db8::128:49:106:11 3221225592 L-ISIS-2001:db8::128:49:106:13 3221225593
Se ha creado una matriz de sensores adicionales. Los nombres de los sensores de entrada por SID corresponden a los nodos IPv4 e IPv6, así como a los SID de adyacencia. En la dirección de salida, se les asigna un nombre basado en el protocolo subyacente y el SID del prefijo anunciado.
Ahora, cambie la ruta de acceso a la que jtimon suscribe: /mpls/signaling-protocols/segment-routing/aggregate-sid-counters/
. Los detalles se encuentran entre PE1. NYC, P1. NYC y PE2. NYC para incluir el volumen de tráfico por SID.
Management plane: Per-SID statistics at pe1.nyc
str_value: /mpls/signalling-protocols/segment-routing/aggregate-sid-counters/aggregate-sid- counter[ip-addr=’L-ISIS-128.49.106.0’]/state/counters[name=’oc-106’]/out-pkts/ key: out-pkts int_value: 5 key: out-octets int_value: 420
Management plane: Per-SID statistics at p1.nyc
str_value: /mpls/signalling-protocols/segment-routing/aggregate-sid-counters/aggregate-sid- counter[mpls-label=’1000’]/state/counters[name=’oc-95’]/ key: in-pkts int_value: 5 key: in-octets int_value: 440 ... str_value: /mpls/signalling-protocols/segment-routing/aggregate-sid-counters/aggregate-sid- counter[mpls-label=’1001’]/state/counters[name=’oc-96’]/ key: in-pkts int_value: 5 key: in-octets int_value: 440
Management plane: Per-SID statistics at pe2.nyc
str_value: /mpls/signalling-protocols/segment-routing/aggregate-sid-counters/aggregate-sid- counter[ip-addr=’L-ISIS-128.49.106.1’]/state/counters[name=’oc-67’]/out-pkts/ key: out-pkts int_value: 5 key: out-octets int_value: 420
Lo fantástico de esto es que muestra unerringly cuánto tráfico está destinado desde PE1. NYC a PE2. NYC, y viceversa. Observando P1. NYC’s contadores muestra la cantidad de tráfico destinado a PE1. NYC o PE2. NYC de otros PES. Con un SRGB universal, cada enrutador comparte una comprensión común de la etiqueta asociada con un SID de nodo. Mediante la suma de los contadores asociados al mismo MPLS etiqueta, el operador puede ver cuánto tráfico se envía al creador del SID del nodo a través de cada enrutador de tránsito. Contadores acumulados asociados con un prefijo el SID muestra la cantidad de tráfico que se envía a un enrutador remoto. Esto puede simplificar en gran medida la construcción de matrices de tráfico.
Telemetría de SR-TE
En ningún lugar, la telemetría es más importante que segmentar el tráfico de enrutamiento (SR-TE). Debido al volumen de tráfico dirigido a una directiva – Sr-me que se comunica de manera poco estricta, un LSP – de la Sr-te inicia el ciclo de comentarios que puede utilizar un mecanismo de control centralizado que puede redireccionar el LSP en función de la disponibilidad y las necesidades de ancho de banda.
Para centrarse en su aspecto de telemetría, se ha creado un LSP de SR-TE entre PE2. NYC y PE1. IAD. Se trata de un LSP en color , lo que significa que se le ha asignado un valor numérico arbitrario, significativo y local. Cuando una ruta de servicio se aprende a través de BGP y transporta una comunidad de color extendida con un valor’coincidente, el siguiente salto del protocolo Route s se señala automáticamente a este LSP de Sr-te.
La revisión SR-TE se trata de forma más amplia en el capítulo capacidad de Optimizability .
El tráfico destinado a las rutas de servicio que se resuelven sobre el LSP en color se trata como estadísticas de SR-TE. Como antes, la telemetría de SR-TE se ha habilitado específicamente a través de:
Una configuración de LSP de la SR-TE de colores sencilla y en vigor es efectiva:
Management plane: confirm sensor is attached to SR-TE LSP
user@pe2.nyc> show route table inet6color.0 detail inet6color.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden) 2001:db8::128:49:106:11-7100<c6>/160 (1 entry, 1 announced) *SPRING-TE Preference: 8 … Next hop: fe80::5668:a3ff:fe1e:6af via ge-0/0/2.0 weight 0x1, selected … Protocol next hop: 24 Label operation: Push 1071, Push 1061(top) … SRTE Policy State: SR Preference/Override: 100/100 BSID: 1000000 SRTE Policy Statistics State: Statistics Enabled: Ingress, Transit Ingress Sensor Status: Active, Sensor Id: 3758096403
Control plane: confirm service route points at SR-TE LSP
user@pe2.nyc> show route 2001:db8::198:51:100:54 detail inet6.0: 24 destinations, 31 routes (24 active, 0 holddown, 0 hidden) 2001:db8::198:51:100:54/127 (2 entries, 1 announced) *BGP Preference: 170/-101 ... Next hop: fe80::5668:a3ff:fe1e:6af via ge-0/0/2.0 weight 0x1, selected ... Protocol next hop: 2001:db8::128:49:106:11-7100<c6> ... Communities: color:0:7100
De forma predeterminada, hay dos sensores conectados a un LSP de la actualización de la la era de la era. El sensor de entrada mide la cantidad de tráfico IP que se dirige a la política, mientras que el sensor de tránsito mide la cantidad de tráfico con etiqueta que se dirige de forma similar a la política. El sensor de tránsito es necesario si el SID de enlace (bSID), otro de forma local y separada del identificador numérico de color, asociado con la Directiva de Sr-te se utiliza para dirigir el tráfico MPLS etiquetado al LSP.
Como sucede con todos los sensores de enrutamiento de segmentos, nada se exporta hasta que se acumulen las estadísticas que no son cero. En cuanto llega el tráfico IP que coincide con la ruta de servicio de color, los contadores aumentan y se publican posteriormente según la frecuencia solicitada por el cliente gRPC.
Management plane: SR-TE IP statistics
system_id: pe2.nyc component_id: 0 sub_component_id: 0 path: sensor_1005_1:/junos/services/segment-routing/traffic-engineering/ingress/usage/:/mpls/ signaling-protocols/segment-routing/sr-te-ip-policies/:PFE sequence_number: 17 timestamp: 1550946298603 sync_response: false key: timestamp uint_value: 1550946298604 key: prefix str_value: /mpls/signalling-protocols/segment-routing/sr-te-ip-policies/sr-te-ip-policy[to- address=’2001:db8::128:49:106:11’, color=’7100’]/state/ counters[name=’oc-19’]/ key: packets int_value: 5 key: bytes int_value: 280
El nombre de la Directiva IP, que es intuitivamente, contiene el punto de conexión del LSP, así como su color. Si MPLS el tráfico etiquetado que se había reenviado a este LSP mediante el SID de enlace, el nombre de la Directiva también contendría el identificador bSID. Además, inarguable es’el tratamiento de Sr-s de IPv6 como ciudadano de primera clase en – toda la gama, desde crear una política de Sr-te coloreada hacia un extremo de IPv6, hasta dirigir el tráfico IPv6 hacia ese LSP, terminando con la recepción de telemetría para el esfuerzo.
Telemetría de SR EPE
La última aplicación de la telemetría de SR es with peer out (EPE). En general, un enrutador de límite de sistema autónomo (ASBR) puede asociar una etiqueta a un par BGP, un vínculo específico a una par BGP determinada o un conjunto de BGP iguales del mismo nivel. Esta etiqueta sólo está instalada en el plano’de reenvío de la transmisión s y se exporta a un controlador a través de BGP-LS como un SID EPE. El controlador puede crear políticas de SR-TE que conducen más allá de un ASBR determinado a un interlocutor distintivo, un vínculo único a un igual o incluso a una colección de elementos del mismo nivel.
Tal y como se utilizaba anteriormente, se ha instalado un LSP de SR-TE en PE2. NYC para una par BGP concreta de PE1. IAD. Esto requiere que la etiqueta EPE configurada en PE1. IAD esté presente en la parte inferior de la lista de segmentos en la Directiva de SR-TE. La telemetría de SR-EPE debe estar habilitada explícitamente, tal y como habrá llegado a esperar:
Control plane: confirm sensor is installed for the EPE SID
user@pe1.iad> show route label 1044444 detail mpls.0: 36 destinations, 36 routes (36 active, 0 holddown, 0 hidden) 1044444 (1 entry, 1 announced) *BGP-LS-EPE Preference: 170 ... Next hop: 198.51.100.56 via ge-0/0/12.0, selected Label operation: Pop ... Stats ID Group: Kernel ID = 39, Stats IDs = { 268435458 }
Traffic matching the colored service route is transmitted, resulting in pe1.iad emitting telemetry for the EPE SID:
system_id: pe1.iad component_id: 0 sub_component_id: 0 path: sensor_1006_2:/junos/services/segment-routing/sid/usage/:/mpls/signaling-protocols/segment- routing/aggregate-sid-counters/:PFE sequence_number: 895 timestamp: 1550958775682 sync_response: false key: timestamp uint_value: 1550958775684 key: prefix str_value: /mpls/signalling-protocols/segment-routing/aggregate-sid-counters/aggregate-sid- counter[mpls-label=’1044444’]/state/counters[name=’oc-2’]/ key: in-pkts int_value: 5 key: in-octets int_value: 440
MANTENIMIENTO seguros (operaciones, administración, mantenimiento)
La verdad es que mantenimiento seguros suele ser una idea a los ingenieros de redes. La’ti s sólo cuando las cosas se inclinan de lado a producción que llegan mucho más para herramientas que no limitan la vida de la trayectoria de plano de planos, sino que también verifican la higiene del plano de datos.
Esto es aún más importante para SR-TE, ya que elimina la señalización de ruta. En su lugar, lo delega en sBFD (detección de reenvío bidireccional sin problemas). BFD ha sido un "separador" de la detección de errores de ruta de datos. Cada nodo de una relación punto a punto comienza por aprender el discriminador de’otros s, el nodo y el identificador de aplicación en el BFD. Después de esta detección, una sesión de BFD establece para comprobar la conectividad.
sBFD simplifica la BFD al eliminar el protocolo de enlace que se necesita para aprender los discriminadores. En su lugar, el operador asigna al menos un discriminador local a cada nodo de la red. Para establecer sBFD para una ruta de SR-TE, la Head-end se configura con el discriminador del’nodo remoto.
El jefe actúa como el iniciador e inserta la pila de etiqueta de SR-’te en la que se encontraban los paquetes de comprobación de la vida y garantiza que los paquetes atraviesan la misma ruta de acceso que encontrarán el tráfico del usuario; el statelessly de destino de la Directiva SR-TE responde a los paquetes sBFD. La ruta de acceso de SR-TE es viable siempre y cuando la sesión sBFD esté en el enrutador de entrada.
Puede configurar sBFD agregando un discriminador en cada nodo de la red. Supongamos’que s agregue sBFD comprobación de la vida en la ruta IPv4 de Sr-te que hemos definido desde PE2. NYC a PE1. IAD:
Después de agregar esta configuración, la ruta de SR-TE permanecerá activa siempre que sBFD el reenvío entre los dos enrutadores, utilizando la misma pila de etiquetas.
Control plane: Verify pe2.nyc’s sBFD session to pe1.iad is Up
user@pe2.nyc> show bfd session extensive Detect Transmit Address State Interface Time Interval Multiplier 127.0.0.1 Up 0.400 0.100 4 Client SPRING-TE, TX interval 0.100, RX interval 0.100 Session up time 01:41:41 Local diagnostic None, remote diagnostic None Remote state Up, version 1 Session type: Multi hop BFD (Seamless) Min async interval 0.100, min slow interval 1.000 Adaptive async TX interval 0.100, RX interval 0.100 Local min TX interval 0.100, minimum RX interval 0.100, multiplier 4 Remote min TX interval 0.100, min RX interval 0.100, multiplier 4 Local discriminator 18, remote discriminator 111 Echo mode disabled/inactive Remote is control-plane independent Path-Name V4-pe1.iad_v4_path0 Session ID: 0x0 1 sessions, 1 clients Cumulative transmit rate 10.0 pps, cumulative receive rate 10.0 pps
Control plane: Verify pe2.nyc’s SR-TE policy has a valid path
user@pe2.nyc> show spring-traffic-engineering lsp detail name pe2.nyc:pe1.iad_v4 Name: pe2.nyc:pe1.iad_v4 Tunnel-source: Static configuration To: 128.49.106.11-7100<c> State: Up Path: pe1.iad_v4_path0 Outgoing interface: NA Auto-translate status: Disabled Auto-translate result: N/A BFD status: Up BFD name: V4-pe1.iad_v4_path0 SR-ERO hop count: 2 Hop 1 (Strict): NAI: None SID type: 20-bit label, Value: 21 Hop 2 (Loose): NAI: None SID type: 20-bit label, Value: 1011
El primer salto utiliza el SID de adyacencia con P1. NYC (21). Si la adyacencia entre PE2. NYC y P1. NYC falters, se dejará de usar esta directiva de SR-TE.
Control plane: Verify the SR-TE policy goes Down if the label stack is rendered unusable
user@pe2.nyc> show isis adjacency Interface System L State Hold (secs) SNPA ge-0/0/1.0 p1.nyc 1 Down 0 ge-0/0/2.0 p2.nyc 1 Up 25
user@pe2.nyc> show spring-traffic-engineering lsp detail name pe2.nyc:pe1.iad_v4 Name: pe2.nyc:pe1.iad_v4 Tunnel-source: Static configuration To: 128.49.106.11-7100<c> State: Down Path: pe1.iad_v4_path0 Outgoing interface: NA Auto-translate status: Disabled Auto-translate result: N/A BFD status: Down BFD name: V4-pe1.iad_v4_path0 SR-ERO hop count: 2 Hop 1 (Strict): NAI: None SID type: 20-bit label, Value: 21 Hop 2 (Loose): NAI: None SID type: 20-bit label, Value: 1011
No hay ninguna lista de SID alternativos, lo que se conoce también como ruta, para que la Directiva la utilice. El tráfico de usuario resolverá a través de una ruta que no sea SR-TE, si hay alguna disponible. Por el contrario, las rutas de SR-TE configuradas estáticamente que’no se aprovechan de sBFD siguen siendo engañosas.
Depurabilidad
La telemetría es, pero una parte de la de observación. La solución de problemas de rendimiento y disponibilidad de la red depende tanto de la claridad de los protocolos subyacentes como del diagnóstico y el registro de las implementaciones disponibles.
Minimización de la revisión’s en los enrutadores de tránsito y en el uso de un sRGB uniforme, es más fácil para el usuario analizar las acciones de reenvío de las – etiquetas de SID de nodo, hay menos Grok. Junos se basa en esta simplicidad con una funcionalidad de registro enriquecida para detectar errores humanos.
La sección SRMS dio un ejemplo de cómo se marcaron los SID de nodo configurados incorrectamente. Hay dos tipos distintos de conflictos que SR. de revisión identifica:
Conflicto de SID: Esto se detecta si se asignan SID diferentes al mismo prefijo.
Conflicto de prefijo: Esto ocurre si hay prefijos distintos asignados al mismo SID.
El ejemplo anterior mostró un conflicto de SID. ’Es posible forzar temporalmente un conflicto de prefijo y usar gRPC para transmitirlo como un evento. Syslog tradicional está todavía disponible por supuesto, pero al igual que ocurre con éxito de gRPC para la telemetría, los eventos ahora se pueden transmitir también a través de gRPC.
Deje’que s configure jtimon para suscribirse a /junos/events/
. Para provocar un conflicto de prefijo, PE1. IAD está configurado temporalmente con una dirección de bucle de retroceso adicional que, en realidad, pertenece a P1. IAD (128.49.106.9/32). Esto sería adecuado si estas direcciones se utilizaron para generar un SID común de difusión por proximidad. En su lugar, PE1. IAD se configuró incorrectamente para anunciar un índice de prefijo diferente (99) a P1. IAD (9) con una política de exportación IS-IS.
Control plane: pe1.iad misconfiguration to cause a prefix conflict
Management plane: streamed system event about the prefix conflict
system_id: pe1.iad component_id: 65535 sub_component_id: 0 path: sensor_1004:/junos/events/:/junos/events/:eventd sequence_number: 5831 timestamp: 1551326098693 sync_response: false key: timestamp uint_value: 1551326098694 key: junos_re_stream_creation_timestamp uint_value: 1551326098693 key: junos_re_payload_get_timestamp uint_value: 1551326098693 key: junos_re_event_timestamp uint_value: 1551326098693 key: prefix str_value: /junos/events/event[id=’RPD_ISIS_PREFIX_SID_CNFLCT’ and type=’2’ and facility=’3’]/ key: timestamp/seconds uint_value: 1551326098 key: timestamp/microseconds uint_value: 692834 key: priority uint_value: 3 key: pid uint_value: 3211 key: message str_value: RPD_ISIS_PREFIX_SID_CNFLCT: IS- IS detected L1 prefix segment index ‘9’ originated by ‘p1. iad’ for prefix 128.49.106.9/32 conflicting with self- originated L1 prefix segment index ‘99’ for prefix 128.49.106.9/32 key: daemon str_value: rpd key: hostname str_value: pe1.iad key: prefix str_value: /junos/events/event[id=’RPD_ISIS_PREFIX_SID_CNFLCT’ and type=’2’ and facility=’3’]/ attributes[key=’isis-level’]/ key: value str_value: 1 key: prefix str_value: /junos/events/event[id=’RPD_ISIS_PREFIX_SID_CNFLCT’ and type=’2’ and facility=’3’]/ key: logoptions int_value: 9
La atención es beckoned y la recitifed de configuración no es la más importante. SR especifica una serie de reglas de ruptura de las empates para abordar el conflicto hasta que tenga lugar una intervención humana. Las reglas evolucionan. En este punto, son:
Preferir entradas IPv6 a través de IPv4
Preferir longitud de prefijo más larga
Preferir la dirección del prefijo más baja numérica
Preferir el índice de segmento más bajo numérico
Los conflictos de prefijo se resuelven primero; La resolución de conflictos de SID se muestra a continuación en las entradas pendientes. Con esto, deje’pasar la cara de nuestro análisis a labilidad de observación y avance a la optimización.