Tipos de nodos y topología de la Red
La Red cuenta con cuatro tipos de nodos: validadores, boot, escritores y observadores. Cada nodo tiene un rol diferente lo que motiva que sus derechos y deberes sean distintos. Las características de los nodos son las siguientes:
La Figura 2 presenta un esquema de la topología de la red y conexiones entre nodos, que obedece a la topología establecida en el Framework de LACChain para redes permisionadas públicas[2]. Para el establecimiento de comunicación p2p entre nodos se utiliza el puerto 60606 (TCP/UDP) y para la conexión entre nodos escritores y aplicaciones o servicios externos a la red se propone el uso del puerto 4545 (TCP).
Figura 2. Topología LACChain aplicada en las redes orquestadas por L-Net.
Todos los nodos en su instalación por defecto se comportan de acuerdo con lo establecido en este documento. Cualquier modificación del nodo por parte del Solicitante encargado de su operación deberá realizarse asegurando que no afecta el cumplimiento de las normas establecidas en el presente Contrato.
Permisionado, despermisionado y re-permisionado de nodos
El permisionado de nodos en la Red consiste en el registro del identificador enode en el contrato inteligente de permisionado que todos los nodos de la Red deben de seguir a la hora de establecer sus conexiones. Este contrato está administrado por el Equipo Operacional de L-Net de forma totalmente transparente.
El Equipo Operacional de L-Net permisiona y despermisiona nodos obedeciendo a las condiciones establecidas en los Términos y Condiciones, de manera que cualquier entidad que formaliza su relación con L-Net mediante la aceptación de los Términos y Condiciones y realiza el pago correspondiente de la membresía será permisionado en la Red y operará en esta al mismo nivel jerárquico que cualquier otra entidad. En caso de que una entidad incumpla las condiciones establecidas será despermisionado, lo que implica la eliminación de su identificador enode del contrato de permisionado y el consecuente bloque al nodo por parte del resto de nodos de la Red.
El re-permisionado de nodos que hayan sido despermisionados se realizará de acuerdo a los procesos de aclaración de violaciones de las reglas y políticas de uso de la Red descritos en los Términos y Condiciones. En caso de pérdida, extravío o robo del control sobre el nodo, tras la notificación por parte del Solicitante según lo establecido en el inciso g) de la cláusula 3 de los Términos y Condiciones, se procederá a dar de baja el nodo comprometido y a permisionar el nuevo nodo habilitado por la entidad como reemplazo.
Gestión del uso de la Red y modelo de distribución de GAS
L-Net ha desarrollado un modelo vanguardista de distribución de recursos en la Red que permite garantizar disponibilidad de registro de transacciones para todos los operadores de nodos escritores con límites establecidos según la membresía contratada. Este modelo elimina la necesidad de un pago por transacción y al mismo tiempo previene ataques de denegación de servicio. El modelo administra el GAS que los nodos escritores pueden utilizar. El GAS es la magnitud en la que se mide la complejidad computacional que tiene para los nodos de una Red basada en Ethereum la ejecución de una transacción. Cuanto mayor complejidad, mayor GAS asociado.
El modelo de distribución de GAS establece un límite de GAS por bloque que cada nodo escritor puede consumir. Estos límites se calculan automáticamente de acuerdo con un algoritmo desarrollado por L-Net. Gracias al algoritmo, los límites son recalculados de forma constante y dinámica para garantizar la mayor optimización posible de la Red y los resultados se exponen en el contrato inteligente que corresponde dentro de esta solución. Cuando se alcanza el límite de GAS, el nodo deja de enviar transacciones y devuelve un error por exceso de GAS por bloque. Se recomienda tanto a los administradores de aplicaciones y servicios conectados con la Red como a los operadores de nodos escritores el manejo de colas que permitan el re-envío de transacciones rechazadas tanto por este como por otros motivos, lo cual es un comportamiento natural dado el carácter asíncrono de blockchain. Si un nodo escritor envía una transacción a la red que exceda el límite de GAS que le corresponde será automáticamente despermisionado de la Red. El proceso de re-permisionado del nodo se dará de acuerdo con las condiciones establecidas en los Términos y Condiciones.
Para conocer más detalles sobre el algoritmo visita aquí.
Condiciones de validez para las transacciones
Las transacciones enviadas a la Red deben de cumplir con unos requisitos específicos para ser consideradas válidas. Las transacciones que no cumplan con estos requisitos serán rechazadas por la Red. Aquellos nodos que sean modificados por sus operadores para aceptar transacciones inválidas serán automáticamente despermisionados. El proceso de re-permisionado se dará de acuerdo con las condiciones establecidas en los Términos y Condiciones. Los requisitos para transacciones enviadas a la Red son:
Los nodos escritores están pre-configurados para construir y firmar estas transacciones de manera automática. Solamente los administradores de las aplicaciones y servicios que construyan las transacciones necesitarán añadir a sus transacciones y por su propia seguridad los dos parámetros mencionados.
Esquema de rotación de nodos validadores
L-Net ha desarrollado un esquema vanguardista de rotación de nodos validadores siguiendo las reglas establecidas en el Framework de LACChain para redes permisionadas públicas[1]. Este esquema permite que cualquier entidad con las capacidades técnicas y el compromiso operacional para operar un nodo validador pueda hacerlo, aportando descentralización y diversidad al protocolo de consenso.
El esquema establece en 11 el número de nodos validadores activos y habilita un pool de nodos validadores inactivos que están en constante rotación con los activos. Para determinar los nodos a rotar, se establece un sistema de puntuación para todos los nodos validadores en función de su comportamiento que tiene en cuenta el tiempo de procesamiento y generación de bloques, el uptime, o el grado de descentralización que aporta a la red, entre otros.
Para ciertas métricas existen límites por debajo de los cuales se considera que el nodo validador no está funcionando de manera aceptable. Los límites establecidos son:
Hay dos tipos de procedimientos de rotación de nodos.
Canales privados
La Red habilita canales privados a disposición opcional de los operadores de nodos escritores. Los canales privados permiten establecer conexiones privadas fuera de la Red. L-Net no tiene acceso o control ni asume ningún tipo de responsabilidad sobre estos canales privados. Los operadores de nodos escritores que decidan establecerlos son enteramente responsables de su uso y gobernanza.
Almacenamiento descentralizado
La Red habilita soluciones de almacenamiento descentralizado tipo IPFS y similar que permiten a los operadores de nodos escritores el registro y la compartición de archivos pesados. L-Net no asume ningún tipo de responsabilidad sobre estas soluciones de almacenamiento descentralizado. Los operadores de nodos escritores que decidan establecerlos son enteramente responsables de su uso.
_____
[1] https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/
[2] https://publications.iadb.org/publications/english/document/LACChain-Framework-for-Permissioned-Public-Blockchain-Networks-From-Blockchain-Technology-to-Blockchain-Networks.pd