Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Descripción de los servicios gRPC para administrar dispositivos de red

RESUMEN Las aplicaciones de cliente gRPC pueden usar servicios de red gRPC, incluidas las operaciones de gNOI y los servicios gRIBI, para administrar los dispositivos de red compatibles.

Beneficios de los servicios de red gRPC

  • Proporcione interfaces simples y agnósticas de proveedor para administrar dispositivos de red.
  • Le permite administrar redes de múltiples proveedores con mayor facilidad a gran escala.
  • Utilice el marco de llamada a procedimiento remoto gRPC para el transporte y búferes de protocolo para definiciones y codificación de servicio, que proporcionan un transporte eficiente y un procesamiento rápido.

Descripción de OpenConfig

OpenConfig es un esfuerzo colaborativo en la industria de las redes para avanzar hacia un método más dinámico y programable para configurar y administrar redes de múltiples proveedores. OpenConfig admite el uso de definiciones de servicio y modelos de datos neutrales del proveedor para administrar y configurar la red. Las definiciones de servicio definen las operaciones comunes ejecutadas en dispositivos de red, y los modelos de datos definen la configuración y el estado operativo de los dispositivos de red para protocolos o servicios de red comunes.

Los operadores con una red de múltiples proveedores se benefician en gran medida del uso de modelos y especificaciones estándar de la industria. El objetivo de OpenConfig es que los operadores puedan usar un único conjunto de modelos de datos y operaciones para configurar y administrar todos los dispositivos de red que admiten la iniciativa OpenConfig. El grupo de trabajo de OpenConfig ha desarrollado especificaciones para interfaces basadas en gRPC para administrar los flujos de configuración, operaciones y telemetría en dispositivos de red, lo que ofrece ventajas sobre otros protocolos tradicionales de administración de red.

Descripción general de servicios basados en gRPC

gRPC es un marco de llamada a procedimiento remoto (RPC) de código abierto que fue desarrollado originalmente por Google. gRPC utiliza HTTP/2 para el transporte y admite mecanismos de seguridad modernos y transmisión bidireccional. gRPC utiliza el formato de datos de búferes de protocolo para definir servicios y codificar datos. Los búferes de protocolo son independientes del lenguaje y admite enlaces para muchos idiomas diferentes, lo que permite a los operadores integrar fácilmente los servicios basados en gRPC en las aplicaciones de administración existentes.

El grupo de trabajo de OpenConfig ha definido especificaciones para los protocolos de administración de red basados en gRPC. Los servicios de red basados en gRPC incluyen:

  • Interfaz de administración de red gRPC (gNMI): servicio único para administración de configuración y telemetría de transmisión.
  • Interfaz de operaciones de red gRPC (gNOI): conjunto de microservicios para la gestión de operaciones.
  • Interfaz de base de información de enrutamiento gRPC (gRIBI): servicio que permite que aplicaciones externas agreguen o eliminen entradas de forma programática en una tabla de enrutamiento en el dispositivo de destino.

La figura 1 ilustra el alcance de los diferentes servicios.

Figura 1: Interfaces gRPC Network Interfaces de red gRPC

Descripción general de servicios gNMI, gNOI y gRIBI

gNMI proporciona un único servicio para la administración de estado de los elementos de red. La gNMI utiliza modelos de datos neutrales de proveedor que definen la configuración y el estado operativo de los dispositivos de red para servicios o protocolos de red comunes. Los clientes gNMI pueden recuperar y modificar la configuración de un dispositivo de red, así como datos operativos de transmisión. Los operadores supervisan la red suscribiéndose a los objetos de datos específicos de interés. La gNMI también admite la transmisión en tiempo real, que es fundamental para las operaciones sensibles al tiempo.

Para obtener más información acerca del uso de gNMI para la administración de configuración y la transmisión de telemetría en dispositivos Junos, consulte:

Mientras que la gNMI maneja la administración de estado, la gNOI se encarga de la administración de operaciones. gNOI es una colección de microservicios basados en gRPC para realizar operaciones comunes en dispositivos de red. Cada definición de servicio define las llamadas de procedimiento remoto (RPCs) que las aplicaciones de administración pueden ejecutar en un dispositivo para realizar un conjunto de operaciones, por ejemplo, reiniciar un dispositivo, actualizar el software o rotar un certificado. Para obtener una lista de servicios gNOI compatibles, consulte Descripción general de servicios gNOI.

gRIBI es un único servicio para administrar la base de información de enrutamiento del dispositivo de red (RIB, también conocida como tabla de enrutamiento) y la base de información de reenvío (FIB, también conocida como tabla de reenvío). Las aplicaciones de administración pueden ejecutar RPCs gRIBI en un dispositivo para recuperar, agregar, modificar o eliminar rutas desde rib o FIB del dispositivo. Para obtener más información acerca de las RPCs gRIBI compatibles, consulte gRIBI.

gNMI, gNOI y gRIBI usan gRPC para el transporte, y la conexión entre el servidor gRPC y el cliente gRPC se realiza a través de una sesión gRPC cifrada por SSL. Por ejemplo, la Figura 2 muestra una conexión simple entre un cliente y un servidor gNOI. Juniper Networks admite la autenticación de solo servidor y la autenticación mutua para la sesión gRPC, que utiliza certificados X.509 para autenticar el dispositivo o la aplicación. Los certificados pueden ser firmados por una autoridad de certificación o autofirmados.

Figura 2: Interacción del servidor y el cliente gNOI gNOI Server and Client Interaction

gNMI, gNOI y gRIBI definen servicios para administrar dispositivos de red. Cada definición de servicio define las operaciones (RPCs) y las estructuras de datos (mensajes) para ese servicio específico en archivos de definición de prototipo. Las estructuras de datos se definen mediante búferes de protocolo, que es un formato de datos de código abierto y neutral en lenguaje para serializar datos estructurados. Usted utiliza protoc o un compilador equivalente para compilar los archivos de prototipo para el idioma de su elección. Las aplicaciones de administración pueden usar el código de los archivos compilados para realizar las operaciones solicitadas en dispositivos de red. La Tabla 1 proporciona las ubicaciones de los repositorios gNMI, gNOI y gRIBI de GitHub que contienen los archivos de proto definción.

Tabla 1: Repositorios gNMI, gNOI y gRIBI
Interfaz Repositorio de GitHub
gNMI openconfig/gnmi
gNOI openconfig/gnoi
gRIBI openconfig/gribi

gNMI, gNOI y gRIBI ofrecen alternativas y ventajas sobre otros protocolos de administración de red como NETCONF y RESTCONF. Dado que gNMI, gNOI y gRIBI son servicios basados en gRPC, y los archivos de definición de prototipo se pueden compilar para muchos idiomas compatibles diferentes, los servicios se pueden integrar fácilmente con las aplicaciones de administración existentes para administrar redes de múltiples proveedores. Además, el uso de búferes de protocolo para la serialización de datos generalmente proporciona un transporte más eficiente y un procesamiento más rápido sobre otros formatos de serialización como JSON y XML.