¿Qué es peer-to-peer (P2P)?
En informática, una red peer-to-peer (P2P) consta de un grupo de dispositivos que almacenan y comparten archivos colectivamente. Cada participante (nodo) actúa como un par individual. Todos los nodos suelen tener la misma potencia y realizar las mismas tareas.
En tecnología financiera, el término peer-to-peer generalmente se refiere al intercambio de monedas o activos digitales a través de una red distribuida. Las plataformas P2P permiten a compradores y vendedores ejecutar operaciones directamente sin necesidad de intermediarios. En algunos casos, los sitios web también pueden proporcionar un entorno P2P que conecta a prestamistas y prestatarios.
La arquitectura P2P puede ser adecuada para muchos casos de uso diferentes, pero se hizo particularmente popular en la década de 1990, cuando se creó el primer software para compartir archivos. Hoy en día, las redes P2P se han convertido en el núcleo de la mayoría de las monedas digitales, que constituyen una gran parte de la industria blockchain. Sin embargo, actualmente también es compatible con otras aplicaciones informáticas distribuidas, incluidos motores de búsqueda web, plataformas de transmisión por secuencias, mercados en línea y el protocolo web InterPlanetary File System (IPFS).
¿Cómo funciona el P2P?
Básicamente, los sistemas P2P son mantenidos por una red distribuida de usuarios y generalmente no tienen un administrador o servidor central porque cada nodo contiene una copia de los archivos y actúa como cliente y servidor para los otros nodos. Por lo tanto, cada nodo puede descargar archivos de otros nodos o cargar archivos a otros nodos. Esto es lo que distingue a las redes P2P de los sistemas de servidores tradicionales en los que los dispositivos descargan archivos desde un servidor central.
Los dispositivos conectados en redes P2P comparten archivos almacenados en sus discos duros utilizando aplicaciones de software diseñadas para mediar en el intercambio de datos y archivos. Los usuarios también pueden consultar otros dispositivos conectados en la red para buscar y descargar archivos. Una vez que un usuario descarga un archivo en particular, puede actuar como fuente de ese archivo.
En otras palabras, cuando un nodo actúa como cliente, descarga archivos de otros nodos de la red. Pero cuando los nodos actúan como servidores, se convierten en la fuente desde la cual otros nodos pueden descargar archivos. Sin embargo, en la práctica ambas funciones se pueden realizar al mismo tiempo (como descargar el archivo A y cargar el archivo B).
Las redes P2P tienden a volverse más rápidas y eficientes a medida que crece su base de usuarios porque cada nodo almacena, transmite y recibe archivos. Además, su arquitectura distribuida hace que los sistemas P2P sean altamente resistentes a los ciberataques porque las redes P2P no tienen un único punto de falla, a diferencia de los modelos tradicionales.
Podemos clasificar los sistemas peer-to-peer según su arquitectura. Los tres tipos principales de redes P2P se denominan no estructuradas, estructuradas e híbridas.
Redes P2P no reguladas
Las redes P2P no estructuradas no proporcionan ninguna organización específica de nodos. Donde los participantes se comunican aleatoriamente entre sí. Estos sistemas son eficaces cuando hay un estado de alta actividad (por ejemplo, muchos nodos se unen y abandonan la red con frecuencia).
Aunque las redes P2P no estructuradas son fáciles de construir, pueden requerir un mayor uso de CPU y memoria porque las consultas de búsqueda se envían a tantos pares como sea posible. Esto tiende a inundar la red con consultas, especialmente si sólo hay unos pocos nodos que proporcionan el contenido solicitado.
Redes P2P organizadas
Por el contrario, las redes P2P estructuradas ofrecen una estructura organizada, como sugiere el nombre. Esto permite a los nodos buscar archivos de manera eficiente incluso si el contenido no está ampliamente disponible. En la mayoría de los casos, esto se logra mediante el uso de funciones hash que facilitan las búsquedas en bases de datos.
Aunque las redes organizadas pueden ser más eficientes, tienden a introducir mayores niveles de centralización y normalmente requieren mayores costos de instalación y mantenimiento. De lo contrario, las redes organizadas también son menos sólidas cuando enfrentan altas tasas de disrupción.
Redes P2P híbridas
Las redes híbridas P2P combinan el modelo tradicional cliente-servidor con algunos aspectos de una arquitectura peer-to-peer. Por ejemplo, diseña un servidor central que facilita la comunicación entre pares.
En comparación con los otros dos tipos de redes peer-to-peer, el tipo híbrido tiende a ofrecer un rendimiento general mejorado. Como suele combinar algunas de las principales ventajas de cada tipo. Lo cual logra grandes grados de eficiencia y descentralización simultáneamente.
Distribuido y descentralizado
Aunque el entorno P2P es de naturaleza distribuida, es importante señalar que existen distintos grados de descentralización. Entonces no todas las redes P2P están descentralizadas.
De hecho, muchos sistemas dependen de una autoridad central para dirigir la actividad de la red, lo que los vuelve algo centralizados. Por ejemplo, algunos sistemas de intercambio de archivos P2P permiten a los usuarios buscar y descargar archivos de otros usuarios, pero no pueden participar en otras operaciones como la gestión de búsquedas.
Además, podemos decir que las redes pequeñas controladas por una base de usuarios limitada con objetivos comunes tienen un mayor grado de centralización a pesar de la falta de una infraestructura de red central.
El papel del peer-to-peer (P2P) en blockchain
En las primeras etapas de Bitcoin, Satoshi Nakamoto lo definió como un "sistema de efectivo electrónico de igual a igual". Bitcoin fue creado como una forma digital de dinero. Puede transferirse de un usuario a otro a través de una red P2P que ejecuta un libro de contabilidad distribuido llamado blockchain.
En este contexto, la arquitectura P2P inherente a la tecnología blockchain es la que permite transferir/transferir fácilmente Bitcoin y otras monedas digitales alrededor del mundo sin necesidad de intermediarios ni de ningún servidor central. Cualquiera también puede configurar un nodo en la cadena de bloques de Bitcoin si desea participar en el proceso de verificación y autenticación de bloques.
Por lo tanto, no hay bancos que procesen ni registren transacciones en la red Bitcoin. En cambio, la cadena de bloques actúa como un libro de contabilidad digital distribuido que registra toda la actividad públicamente para que otros participantes puedan verla. Básicamente, cada nodo mantiene una copia de la cadena de bloques y la compara con otros nodos para garantizar la precisión de los datos. La red rechaza rápidamente cualquier actividad maliciosa o inexacta.
En la cadena de bloques de criptomonedas, los nodos pueden desempeñar una variedad de funciones diferentes. Por ejemplo, los nodos completos son los que brindan seguridad a la red al verificar las transacciones de acuerdo con las reglas de consenso del sistema.
Cada nodo completo mantiene una copia completa y actualizada de la cadena de bloques, lo que le permite participar en el trabajo colectivo de verificar el estado actual del libro mayor distribuido. Sin embargo, cabe señalar que no todos los nodos de verificación completa están representados por mineros.
Ventajas
La estructura peer-to-peer de blockchain ofrece muchos beneficios. El principal de ellos es el hecho de que las redes P2P ofrecen mayor seguridad que los acuerdos tradicionales cliente-servidor. Como la cadena de bloques se distribuye en una gran cantidad de nodos, es prácticamente inmune a los ataques de denegación de servicio (DoS) que infectan muchos sistemas.
Además, dado que la mayoría de los nodos deben llegar a un consenso antes de agregar datos a la cadena de bloques, es casi imposible que un atacante cambie los datos. Esto es especialmente cierto para redes grandes como la red Bitcoin. Las redes blockchain más pequeñas son más vulnerables a los ataques porque una persona o grupo puede eventualmente controlar la mayoría de los nodos (esto se conoce como ataque del 51% o ataque mayoritario).
Como resultado, una red distribuida de igual a igual combinada con requisitos de consenso mayoritario brinda a las redes blockchain un grado relativamente alto de resistencia a la actividad maliciosa. El modelo P2P es una de las razones por las que Bitcoin (y otras cadenas de bloques) pueden alcanzar la llamada tolerancia a fallos bizantinos.
Además de la protección que brinda, el uso de la arquitectura P2P en las cadenas de bloques de criptomonedas también las hace resistentes a la censura por parte de las autoridades centrales. A diferencia de las cuentas bancarias tradicionales, los gobiernos no pueden congelar ni retirar dinero de las billeteras de moneda digital. Esta resistencia también se extiende a los esfuerzos de censura emprendidos por plataformas de contenidos y pagos privados. Algunos creadores de contenido y comerciantes en línea han adoptado pagos con criptomonedas como una forma de evitar que terceros bloqueen sus pagos.
Restricciones
Aunque existen muchas ventajas, el uso de redes P2P en blockchain también tiene limitaciones definitivas.
Debido a que el libro mayor distribuido debe actualizarse en cada nodo participante en lugar de en un servidor central, agregar transacciones a la cadena de bloques requiere una enorme cantidad de potencia informática. Si bien esta medida proporciona mayor seguridad, reduce en gran medida la eficiencia y es uno de los principales inconvenientes cuando se trata de escalamiento y adopción generalizados. Sin embargo, aquellos interesados en los desarrolladores de criptografía y blockchain están buscando alternativas que puedan usarse como soluciones a este escalamiento. Ejemplos notables incluyen Lightning Network, Ethereum Plasma y el protocolo Mimblewimble.
Otra posible limitación se relaciona con los ataques que pueden surgir durante eventos de bifurcación dura. Debido al hecho de que la mayoría de las redes blockchain son descentralizadas y de código abierto, los grupos de nodos son libres de copiar y modificar el código, separarse de la cadena principal y formar una nueva red paralela. Las bifurcaciones duras son completamente normales y no representan una amenaza por sí solas, pero si ciertos métodos de seguridad no se implementan adecuadamente, ambas cadenas pueden volverse vulnerables a ataques de repetición.
Además, la naturaleza distribuida de las redes P2P las hace relativamente difíciles de controlar y legalizar, no sólo en el espacio blockchain. Muchas aplicaciones y empresas P2P han estado involucradas en actividades ilegales y violaciones de derechos de autor.
Pensamientos concluyentes
La arquitectura peer-to-peer se puede desarrollar y utilizar de muchas maneras diferentes. Es el núcleo de blockchain lo que hace posibles las monedas digitales. La arquitectura P2P proporciona seguridad, descentralización y resistencia a la censura al distribuir libros de transacciones a través de grandes redes de nodos.
Además de su utilidad en la tecnología blockchain, los sistemas P2P también se pueden utilizar en otras aplicaciones informáticas distribuidas, desde redes de intercambio de archivos hasta plataformas de comercio de energía.


