El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
Este documento describe las directrices de diseño de Ruteo de segmentos sobre IPv6 (SRv6) y las prácticas recomendadas de implementación. También cubre una estrategia de migración perfecta.
SRv6 introduce un nivel de simplificación mediante el uso del plano de datos IPv6 y el concepto de programación de red. La arquitectura SRv6 descrita en RFC 8986 se basa en el ruteo de origen, SRv6 define el procesamiento de paquetes en la red como un programa. La programación de red es la capacidad de codificar una ruta de red y una función de red en el encabezado de un paquete. El programa se expresa como una lista de segmentos incluidos en un encabezado de extensión SRv6. Cada segmento es una entidad de 128 bits donde los primeros bits identifican al router en la trayectoria de red (la parte localizadora del segmento) y los bits que permanecen identifican la función que debe ejecutar ese router.
Figura 1: Descripción general de la arquitectura de routing de segmentos
IPv6 es la nueva tendencia y SRv6 es un nuevo paradigma para la progresión lógica hacia SDN y la red programable. SRv6 se concibió para salvar la distancia entre SDN y las redes tradicionales. SRv6 proporciona capacidades avanzadas de ingeniería de tráfico (TE) SRv6, transforma la red en una infraestructura multiservicio y capacidades de algoritmo flexible (Flex-Algo o FA) para habilitar varias optimizaciones de la misma infraestructura de red física en varias dimensiones.
SRv6 elimina la necesidad de tunelizar tecnologías como LDP y RSVP-TE mediante una extensión de IGP y simplifica el plano de control. Utiliza una dirección IPv6 para programar la ruta de extremo a extremo en lugar de utilizar una etiqueta MPLS en el plano de datos. SRv6 simplifica en gran medida los protocolos de red y reduce la complejidad de las operaciones y el mantenimiento en los niveles del plano de control y del plano de datos. Permite que la nube, la red y los terminales implementen una solución integral gestionable y controlable basada en el mismo protocolo estándar.
Además, dado que el segmento de ruta más corta incluye todas las rutas ECMP al nodo relacionado, SR admite la naturaleza ECMP de IP por diseño.
SRv6 permite que un nodo dirija un paquete a través del dominio SR con el uso de una lista ordenada de segmentos e indica cómo los nodos a lo largo de la ruta pueden procesar el paquete. Los segmentos de SRv6 pueden hacer referencia a la instrucción para enviar un paquete a través de la ruta más corta a un nodo, a través de un vínculo específico o hacia una aplicación. SRv6 es un routing basado en el origen, la información de ruta se codifica en el paquete que debe atravesar y los routers intermedios no tienen que mantener el estado para todas las rutas. SRv6 permite romper el límite entre la red del operador y la red del Data Center, lo que mejora en gran medida la extensibilidad y la flexibilidad de implementación de SRv6.
La capacidad de programación de infraestructuras de SRv6 supone un cambio en la forma en que la red trata las aplicaciones. La red ya no se limita a enrutar el tráfico desde el punto A al punto B según algunas restricciones específicas expresadas por las aplicaciones (por ejemplo, la ingeniería de tráfico de SR). La red ahora puede realizar acciones en las aplicaciones a lo largo de la misma ruta por la que se transportan las aplicaciones. Hace que sus aplicaciones y su red interactúen de una forma completamente diferente y nueva.
Al aprovechar las capacidades de ingeniería de tráfico SRv6 más avanzadas, la red se puede convertir en una infraestructura multiservicio. Las nuevas capacidades de Algoritmo Flexible hacen posibles varias optimizaciones de la misma infraestructura de red física en varias dimensiones (por ejemplo, una puede optimizarse para baja latencia frente a otra para ancho de banda, o una puede ofrecer rutas separadas a través de dos planos distintos)
La división de la red desempeña un papel fundamental a medida que los proveedores de servicios y las empresas se preparan para ofrecer una amplia gama de servicios 5G, que tienen necesidades específicas y diferenciadas, a través de una infraestructura convergente. Como resultado, los proveedores de servicios implementan soluciones de ingeniería de tráfico de primera clase en toda su red, directamente desde el sitio de la célula y hasta el núcleo y los Data Centers, con el fin de garantizar que cada servicio obtiene su propia división de red dedicada con su propio conjunto de SLA.
La resistencia desempeña un papel fundamental para garantizar que la red esté siempre activa, de modo que pueda acceder a sus servicios desde cualquier lugar y en cualquier momento. Los protocolos de routing IGP actuales proporcionan un primer nivel de resistencia al redirigir el tráfico en torno a los fallos de la red. Pero no es suficiente. Cada vez más aplicaciones necesitan la red para garantizar una protección de menos de 50 ms frente a cualquier tipo de fallo de red. Esto es exactamente lo que SRv6 TI-LFA (Topology Independent Loop Free Alternate) con prevención de Uloop ofrece con una cobertura de topología del 100%, simplicidad y optimización de la ruta.
En los servicios basados en SRv6, el PE de salida señala un SID del servicio SRv6 con la ruta de servicio BGP. El PE de ingreso encapsula la carga útil en un encabezado IPv6 externo donde la dirección de destino es el SID del servicio SRv6 anunciado por el PE de egreso. Los mensajes BGP entre PE llevan SID del servicio SRv6 para interconectar PE y formar VPN. El SID del servicio SRv6 hace referencia a un identificador de segmento asociado con uno de los comportamientos específicos del servicio SRv6 anunciados por el router PE de salida, como:
Estos servicios basados en SRv6 son compatibles en el momento de escribir este documento:
La función L3VPN basada en SRv6 permite la implementación de L3VPN en un plano de datos SRv6. L3VPN basada en SRv6 utiliza ID de segmento (SID) de SRv6 para segmentos de servicio en lugar de etiquetas.
El SID BGP se puede asignar de las siguientes maneras:
EVPN VPWS utiliza un plano de control BGP para los servicios punto a punto. Las ventajas de VPWS con EVPN son:
El comportamiento del terminal SID uDX2 se utiliza para los servicios VPN VPWS de EVPN.
El encadenamiento de funciones de servicio (SFC) permite la creación de servicios de red compuestos que constan de un conjunto ordenado de funciones de servicio. SFC indica el proceso de reenvío de paquetes a través de la secuencia de funciones de red virtual (VNF). SRv6 proporciona una forma sencilla y escalable de encadenar funciones de servicio tanto para el servicio con reconocimiento de SR como para las funciones de servicio (SF) sin reconocimiento de SR. SRv6 es un paradigma de ruteo de origen que le permite dirigir paquetes a través de una lista ordenada de VNF. SR habilita SFC mediante la asignación de un SID a cada SF y la secuenciación de estos SID de SF en una lista de SID. Si SF no detecta SRv6, se necesita un proxy SR delante de SF para enrutar el tráfico a ese SF.
SFC es una de las funciones esenciales de los Data Centers. El tráfico de los Data Centers pasa a través de diversas funciones, como firewalls, sistemas de detección de intrusiones (IDS), inspección profunda de paquetes (DPI) y traducción de direcciones de red (NAT), que procesan paquetes y, por tanto, forman una cadena de servicios. De ahí el encadenamiento de funciones de servicio de nombres o encadenamiento de servicios.
SRv6 ayuda a crear segmentos basados en restricciones de SLA que se inician desde la aplicación del usuario hasta el transporte al Data Center central. La separación lógica con división con ingeniería de tráfico SRv6 y algoritmo flexible ayuda a proporcionar un tratamiento de servicio específico para aplicaciones sensibles a la latencia con optimización del ancho de banda. La división de la red desempeña un papel importante a medida que los proveedores de servicios y las empresas se preparan para ofrecer una amplia gama de servicios 5G.
La solución SRv6 proporciona un equilibrio de carga óptimo desde el primer día, a diferencia de MPLS, que sigue teniendo problemas con el equilibrio de carga. En MPLS, la entropía para la selección de múltiples rutas de igual costo (ECMP) está en el paquete IP interno, por lo que los routers deben excavar a través de la pila de etiquetas MPLS para obtener acceso al encabezado IP utilizado para el hashing.
En SRv6, el PE de entrada calcula un hash en el paquete del cliente y escribe el resultado en el campo Etiqueta de flujo del encabezado IPv6 de router agregado. El resto de la red aprovecha esta etiqueta de flujo para realizar la selección ECMP con solo echar un vistazo al encabezado externo sin necesidad de profundizar en las capas de encapsulación.
La funcionalidad Path Tracing ayuda a proporcionar operaciones y gestión del rendimiento del transporte SRv6 con la provisión de un registro de la ruta de paquetes como una secuencia de IDS de interfaz. Además, proporciona un registro de la demora de extremo a extremo, la demora por salto y la carga en cada interfaz de salida a lo largo de la trayectoria de entrega de paquetes. El seguimiento de rutas permite realizar un seguimiento de 14 saltos con un encabezado de extensión salto a salto IPv6 de 40 bytes solamente.
Admite marcas de tiempo específicas y se ha diseñado para la implementación de hardware de velocidad de línea en la canalización base.
Para obtener más información, consulte Aspectos básicos de la tecnología SRv6.
Como su nombre indica, SRv6 es el routing de segmentos implementado en el plano de datos IPv6. Por lo tanto, para habilitar el routing de segmentos en la versión 6, la infraestructura del proveedor de servicios debe habilitarse primero para IPv6. Por lo tanto, el primer paso para implementar SRv6 es planificar el espacio de direcciones para la implementación de IPv6. Durante la fase de planificación, se puede seleccionar una de las subredes para las direcciones del localizador SRv6. En SRv6, un SID representa un valor de 128 bits, de los cuales el localizador es la primera parte del SID de servicio con los bits más significativos, que se utiliza para el ruteo al nodo que es responsable de realizar la función como se explica en esta sección. También puede considerarlo una dirección de red.
RFC8986 define un SID de servicio SRv6 como que consta de tres partes:
Los SID del localizador SRv6 de un nodo se pueden asignar independientemente del direccionamiento IPv6 de ese nodo. Para una red SRv6, se pueden planificar direcciones IPv6 para direcciones de infraestructura, planos de administración y direcciones de servicio para usuarios finales superpuestos. El direccionamiento IP de infraestructura y la asignación de SID SRv6 pueden pertenecer a dos bloques diferentes; por ejemplo, las direcciones IPv6 de infraestructura, como las direcciones de red para las interconexiones de dispositivos, se asignan desde un bloque de direcciones IPv6 planeado para las direcciones de infraestructura o el plano de administración y los SID SRv6 se asignan desde el bloque planeado para el plano de servicio.
Aunque las direcciones de infraestructura y los SID se representan como direcciones IPv6, se recomienda que ambos se asignen desde bloques diferentes. De esta manera, un plan de direcciones IPv6 existente no es una restricción para ningún plan de asignación SID SRv6 actual o futuro.
Para la portadora uSID SRv6, el formato se especifica generalmente con la notación 'Fbbuu', donde 'bb' es el tamaño del bloque y 'uu' es el tamaño del ID. Por ejemplo, 'F3216' es un formato con un bloque uSID de 32 bits e identificadores uSID de 16 bits. Para alinearse con esto, la estrategia de direccionamiento general puede cumplir con una estructura de localizador de cuatro niveles: SID Space, uSID Block, Set ID y Node ID, como se explica aquí:
Figura 2: formato uSID
Los dos primeros niveles se forman a partir del bloque uSID:
Los dos niveles siguientes se forman a partir del ID de uSID:
'Se recomienda que los SID de SRv6 para localizadores se asignen desde el intervalo de direcciones de dirección local única (ULA) IPv6 privada, que comienza por FC00:. Se puede utilizar un rango inferior de /24 desde el espacio de direcciones ULA IPv6 como FC00::/8. El rango público para el espacio SID también es compatible, por lo tanto, el bloque SID también se puede asignar desde bloques asignados globalmente. Esta figura indica la lógica de asignación de ubicaciones recomendada que se puede utilizar durante la fase de planificación y diseño. La asignación de bits para ‘SSNN’ bajo uSID1 puede ajustarse según el requisito del proveedor y no tiene que terminar en el límite de 8 bits como se muestra para Nibble 33-40.
Figura 3 - Ejemplo de planificación del localizador uSID
Para diferentes flex-algoritmos, se recomienda utilizar diferentes esquemas de localización que se pueden derivar con el método explicado.
En la implementación SRv6, la dirección de bucle invertido se puede asignar desde el intervalo de prefijos del localizador o independientemente del intervalo IPv6 de la infraestructura planeada. Sin embargo, si la dirección de loopback se asigna desde el rango de prefijos del localizador, entonces es accesible a través del anuncio del rango de prefijos del localizador y no tiene que ser anunciado por separado como un prefijo /128 entre los dominios.
Por ejemplo, si el bloque localizador uSID es BBBB:BB00:0001/48, la dirección de loopback puede ser BBBB:BB00:0001::L /128 con L=1-F. IGP ISIS se encarga de anunciar el bloque localizador para que no haya necesidad de anunciar el bloque loopback por separado.
Nota: Los SID dinámicos no entran en conflicto con los SID/prefijos que existen, como las direcciones de loopback del bloque localizador.
Existen varias ventajas para asignar el direccionamiento de loopback desde el bloque localizador:
Cuando tiene el esquema IP de loopbacks del espacio del localizador, da como resultado SA y DA de tráfico de servicios en el espacio SRv6, ya que las aplicaciones SRv6 (como ISIS y BGP) lo utilizan para asignar SID.
El loopback para el peering BGP se puede separar del conjunto de localizadores tomado del bloque de servicios. Con las direcciones de loopback extraídas del bloque de servicio con la redistribución de un bloque de ubicación en el nodo de agregación o el nodo de borde, los loopbacks bajo un localizador se pueden alcanzar a través del prefijo del localizador y no tienen que anunciarse por separado como prefijo /128.
El resumen del prefijo SRv6 es una ventaja inherente a las redes IP. SRv6 elimina todas estas complejidades de MPLS donde el prefijo /32 de publicidad era un requisito para que el plano de datos funcionara. Mientras que con SRv6, si tiene dos redes de metro, cada una con cientos de miles de localizadores /64 (routers compatibles con SRv6), cada metro puede anunciar una única ruta de resumen en el núcleo. Por lo tanto, el núcleo solo lleva los localizadores de los nodos de núcleo y las rutas de resumen de las redes de metro. Se trata de una función extremadamente potente en términos de simplicidad y escalabilidad.
Figura 4: Resumen de ubicación
MPLS/SR-MPLS: el enlace de etiquetas con una dirección de host de 32 bits debe anunciarse en varios dominios sin agregación. La falta de resumen de rutas tiene un impacto en la escalabilidad de los proveedores de servicios a gran escala.
SRv6: la función de herencia de IP nativa y el routing agregado se pueden importar a través de los dominios de red, lo que supone una ventaja significativa en términos de simplicidad y escalabilidad para los operadores.
SR-MPLS: SRGB y el SID del nodo necesitan una planificación global de toda la red en el escenario de dominios cruzados.
SRv6: con SRv6, el operador puede configurar un túnel E2E directamente basándose únicamente en el alcance IPv6 normal. La compatibilidad con SRv6 en el nodo transitorio no es obligatoria, por lo tanto, los operadores tienen la flexibilidad de habilitar SRv6 de forma gradual, mientras que, en el caso de MPLS, se requiere compatibilidad con el plano de datos MPLS de extremo a extremo.
SR-MPLS: actualice toda la red en primer lugar y, a continuación, implemente SR-MPLS o implemente servidores de asignación en algunos de los nodos intermedios.
SRv6: la red se puede migrar a SRv6 a demanda. Como se ha resaltado anteriormente, los nodos en los que SRv6 no está habilitado o no es compatible pueden atravesarse a través del reenvío IPv6 normal.
En resumen:
MPLS/SR-MPLS: la base es la accesibilidad IP. El anuncio de etiqueta MPLS se debe realizar en toda la red.
SRv6: el alcance de IPv6 es la base. SRv6 se puede implementar de forma incremental, por fases.
Figura 5: Estrategia de migración de alto nivel
Para una migración más fluida, se recomienda continuar con un enfoque gradual. En un nivel superior, este es el enfoque de implementación incremental:
Se recomienda tener un reflector de ruta BGP independiente para SRv6 porque deben configurarse varias familias de direcciones (IPv6, VPNv4, VPNv6, etc.). Para habilitar SRv6, IPv6 debe estar habilitado en la red.
Paso 1. Actualizar a IPv6 (la condición previa de SRv6 es que esté preparado para IPv6)
Paso 2. Actualice los dispositivos periféricos para introducir VPN sobre SRv6 PE
Paso 3. Actualizar algunos nodos intermedios para admitir tráfico TI-LFA, TE, SFC, etc.
Paso 4: Actualizar toda la red para que sea compatible con E2E SRv6
Para una migración más fluida, se recomienda continuar con un enfoque gradual. En un nivel superior, este es el enfoque de implementación incremental:
Se recomienda tener un reflector de ruta BGP independiente para SRv6. BGP se ha mejorado y es compatible con servicios ampliados a través de una red SRv6, como:
Basándose en los mensajes y procedimientos definidos en el borrador de IETF 'SRv6 BGP based Overlay services', BGP codifica el SID del servicio SRv6 en el atributo prefix-SID de BGP Network Layer Reachability Information (NLRI) que corresponde y lo anuncia a sus pares BGP IPv6.
La función L3VPN basada en SRv6 permite la implementación de L3VPN en un plano de datos SRv6. En los servicios basados en SRv6, el PE de salida señala un SID del servicio SRv6 con la ruta de servicio BGP. El PE de ingreso encapsula la carga útil en un encabezado IPv6 externo donde la dirección de destino es el SID del servicio SRv6 anunciado por el PE de egreso. Los mensajes BGP entre PE llevan SID del servicio SRv6 como medio para interconectar PE y formar VPN. El SID del servicio SRv6 hace referencia a un identificador de segmento asociado con uno de los comportamientos específicos del servicio SRv6 anunciados por el router PE de salida, como:
Esta función proporciona un servicio ELINE (P2P) con capacidad multihoming totalmente activa en una red SRv6. El alojamiento múltiple activo permite a un operador conectar un dispositivo de extremo del cliente (CE) a dos o más dispositivos de extremo del proveedor (PE) para proporcionar equilibrio de carga y conectividad redundante. Con el Multi-Homing Activo, todos los PE pueden reenviar el tráfico hacia y desde el dispositivo multi-homed. Estas funciones uSID se utilizan:
El gateway de interconexión de servicios L3 SRv6/MPLS le permite ampliar los servicios L3 entre los dominios MPLS y SRv6 al proporcionar continuidad de servicio en el plano de control y el plano de datos.
Esta función permite que los dominios L3VPN SRv6 interactúen con los dominios L3VPN MPLS existentes. La función también permite una forma de migrar de MPLS L3VPN a SRv6 L3VPN.
El gateway de interconexión de servicios SRv6/MPLS L3 proporciona transporte y terminación de servicio en el nodo del gateway. El gateway genera SID de VPN SRv6 y etiquetas de VPN MPLS para todos los prefijos bajo el VRF configurado para la reoriginación. El gateway admite el reenvío de tráfico desde el dominio MPLS al dominio SRv6 al hacer estallar la etiqueta VPN MPLS, buscar el prefijo de destino y enviar la encapsulación SRv6 adecuada. Del dominio SRv6 al dominio MPLS, el gateway elimina el encabezado IPv6 exterior, busca el prefijo de destino y envía las etiquetas VPN y MPLS de siguiente salto.
Los VRF en el nodo de gateway se configuran con dos conjuntos de destinos de ruta (RT):
El gateway realiza estas acciones:
La migración desde una red MPLS basada en LDP o una red MPLS basada en SR es bastante similar. El día 0, cada nodo de la red ejecuta MPLS, ya sea basado en LDP o SR, en el plano de datos subyacente para todos los servicios que proporciona un proveedor de servicios de la compañía telefónica. Esta es una topología de laboratorio de ejemplo utilizada para explicar el enfoque de migración por fases.
Figura 6: Estado de la red el día 0
Para habilitar Segment Routing over IPv6, utilice el comando hw-module profile segment-routing srv6 mode micro-segment format f3216
comando en Modo de configuración XR. Este comando sólo se aplica a los dispositivos basados en Cisco IOS XR.
Para preparar la red para la migración de SRv6, en primer lugar, el operador debe planificar la habilitación de IPv6 en la red. Como se ha indicado anteriormente sin IPv6, SRv6 no se puede habilitar. Por lo tanto, con las direcciones IPv6 planificadas para la infraestructura, IPv6 se debe habilitar en todas partes de la red. En la primera fase de la migración, todas las interfaces lógicas y físicas del nodo obtienen una dirección IPv6. Esto se suma a la dirección IPv4 (enfoque de pila dual) que existe. De esta forma, todos los servicios seguirán ejecutándose en el plano de datos existente.
Una vez que las direcciones IPv6 se configuran en la infraestructura SP en las interfaces, así como en el loopback, IGP se debe habilitar para anunciar los prefijos IPv6 en el dominio.
Figura 7: Estado de la red el día 1
Estos son los pasos dados por ISIS:
IGP se configura en una red para que los dispositivos dentro de la red se alcancen entre sí. Debe configurar IS-IS para la familia de direcciones IPv6.
router isis 100
address-family ipv6 unicast
!
!
!
interface Loopback0
address-family ipv6 unicast
! !
interface GigabitEthernet0/0/0/1
address-family ipv6 unicast
!
!
interface GigabitEthernet0/0/0/2
address-family ipv6 unicast
!
!
!
Commit
La habilitación de la familia de direcciones IPv6 de ISIS se puede hacer de manera gradual. Una vez que los dispositivos tienen disponibilidad sobre IPv6, debe continuar con BGP.
En el día 2, como siguiente paso para la habilitación de SRv6, se recomienda tener un conjunto separado de reflector de ruta BGP y estos reflectores de ruta son para múltiples familias de direcciones (IPv6, VPNv4, VPNv6, etc.). De esta manera el reflector de ruta que existe no se ve perturbado. Tenga en cuenta que todos los servicios de la compañía telefónica se ejecutan en el plano de datos MPLS que existe en esta etapa.
Figura 8: Estado de la red el día 2
Este fragmento de configuración resalta la configuración BGP.
Configure BGP para la familia de direcciones IPv6.
!
!
route-policy LOCAL-PREF
set local-preference 50
end-policy
!
commit
!
!
router bgp 100
!
neighbor 2001:db8:2:2:2::2
remote-as 100
update-source Loopback0
address-family vpnv4 unicast
route-policy LOCAL-PREF in
!
commit
Una preferencia local de 50 en BGP se agrega como actualmente. Desea que se prefieran las rutas a través de MPLS RR para que los servicios funcionen correctamente.
Ahora, para la migración a SRv6, puede adoptar un enfoque incremental muy seguro y comenzar con solo dos PE.
Luego, se debe considerar el localizador SRv6 en el ruteo de segmentos y esto se debe anunciar a través de IGP y BGP para los servicios.
Figura 9: Estado de la red el día 3
Esta sección describe cómo configurar SRv6.
router isis 100
address-family ipv6 unicast
segment-routing srv6
locator LOC0
!
router bgp 100
!
segment-routing srv6
locator LOC0
!
vrf XYZ
address-family ipv4 unicast
segment-routing srv6
alloc mode per-vrf
!
!
!
segment-routing
srv6
locators
locator LOC0
prefix 2001:db8:a::/48
commit
Puede cambiar la preferencia local para las rutas que provienen de SRv6 RR y hacer que sean rutas VPN preferidas. De esta manera, justo entre estos dos PE, el tráfico VRF L3VPN fluye sobre SRv6.
Lentamente, otros PE y servicios se pueden migrar con un enfoque similar. Una vez que todos los PE se migran a SRv6, el RR MPLS IPv4 y la configuración asociada se pueden desactivar de la red.
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
01-Jun-2023 |
Versión inicial |