¿Qué es peer-to-peer (P2P)?

En informática, una red peer-to-peer consta de un grupo de dispositivos que pueden almacenar y compartir documentos. Cada participante (nodo) es equivalente a un individuo igual. Es decir, todos los nodos tienen los mismos derechos y realizan las mismas tareas.

En el campo de las fintech, P2P generalmente se refiere a la transacción de moneda digital o activos digitales a través de una red distribuida. Una plataforma P2P permite a compradores y vendedores realizar transacciones directamente sin intermediarios. Algunos sitios web también pueden proporcionar un entorno comercial P2P para prestatarios y prestamistas.

La arquitectura P2P es adecuada para varios escenarios, pero realmente se hizo popular en la década de 1990, cuando nacieron los primeros programas para compartir archivos. Hoy en día, las redes peer-to-peer se han convertido en el núcleo de la mayoría de las monedas digitales y representan una gran parte de la industria blockchain. Sin embargo, también se utiliza en una variedad de otros programas informáticos distribuidos, incluidos: motores de búsqueda web, plataformas de transmisión por secuencias, mercados en línea y el protocolo de red InterPlanetary File System (IPFS).


Cómo funciona el P2P

Básicamente, los usuarios mantienen un sistema P2P en una red distribuida. Normalmente, no tienen un administrador de sistemas o un servidor central porque cada nodo tiene una copia de los archivos: un usuario y un servidor para otros nodos. Por lo tanto, cada nodo puede descargar archivos de otros nodos o cargar archivos en ellos. El dispositivo cliente del sistema de servidor tradicional necesita descargar archivos del servidor central, ésta es la diferencia entre la red P2P y otros sistemas de servicios tradicionales.

En una red P2P, los archivos compartidos por dispositivos interconectados se almacenan en sus discos duros. Y al utilizar aplicaciones de software para transferir datos compartidos, los usuarios también pueden buscar y descargar archivos en otros dispositivos. Si un usuario descarga un archivo específico, puede actuar como fuente de ese archivo.

En otras palabras, cuando un nodo actúa como usuario, descarga archivos de otros nodos. Pero si funciona como servidor, otros nodos pueden descargar archivos desde él. De hecho, estas dos funciones se pueden realizar simultáneamente (por ejemplo, descargar el archivo A y cargar el archivo B).

Dado que cada nodo puede almacenar, transmitir y recibir archivos, y a medida que crece la base de usuarios de la red P2P, se vuelve más rápida y eficiente. La estructura distribuida también hace que el sistema P2P sea más resistente a los ataques a la red. A diferencia de los modelos tradicionales, las redes P2P no tienen un único punto de falla.

Según su estructura, podemos clasificar los sistemas P2P, de los cuales los tres tipos principales son: red peer-to-peer no estructurada, red peer-to-peer estructurada y red híbrida peer-to-peer.


Red P2P no estructurada

Las redes peer-to-peer no estructuradas no revelan la arquitectura específica de los nodos. Los participantes pueden comunicarse libremente entre sí. Estos sistemas son resistentes a la actividad de alta frecuencia, lo que significa que varios nodos que entran y salen con frecuencia de la red no tendrán ningún impacto en el sistema.

Si bien las redes peer-to-peer no estructuradas son más fáciles de configurar, requieren CPU y memoria más potentes porque las consultas de búsqueda se envían a la mayor cantidad de peers. Especialmente si una pequeña cantidad de nodos puede proporcionar el contenido requerido, una gran cantidad de búsquedas inundarán la red.


red estructurada de igual a igual

A diferencia de las redes peer-to-peer no estructuradas, las redes estructuradas peer-to-peer exhiben una estructura organizativa que permite a los nodos buscar un archivo de manera eficiente incluso si el contenido del archivo no se usa ampliamente. La mayoría de las veces, las búsquedas se realizan mediante funciones hash para facilitar las búsquedas en bases de datos.

En términos relativos, las redes estructuradas entre pares son más eficientes porque pueden demostrar un mayor nivel de centralización y requieren más capital inicial y costos de mantenimiento. Además, las redes estructuradas entre pares son menos tolerantes a la actividad de alta frecuencia.


Red híbrida de igual a igual

Las redes híbridas peer-to-peer combinan la arquitectura tradicional maestro-esclavo con algunas características de la arquitectura peer-to-peer. Por ejemplo, podría establecer un servidor central para acelerar la integración entre puntos.

A diferencia de los otros dos modos, las redes híbridas de igual a igual tienden a exhibir un rendimiento general mejorado. Combina las ventajas de cada método al tiempo que logra eficiencia y descentralización.


Distribuido VS Descentralizado

Aunque todas las estructuras peer-to-peer están distribuidas, su grado de descentralización es diferente. Por tanto, no todas las redes peer-to-peer están descentralizadas.

De hecho, muchos sistemas requieren una autoridad central para dirigir la actividad de la red, haciéndola más o menos centralizada. Por ejemplo, algunos sistemas de intercambio de archivos entre pares permiten a los usuarios buscar y descargar archivos de otros usuarios, pero no pueden participar en procesos como la gestión de consultas de búsqueda.

Además, también se puede decir que algunas redes pequeñas controladas por un pequeño número de usuarios están altamente centralizadas, aunque es posible que no tengan una infraestructura neutral.


El papel del peer-to-peer en blockchain

En los primeros días de Bitcoin, Satoshi Nakamoto lo definió como un "sistema de efectivo electrónico de igual a igual". Bitcoin apareció ante el público como una forma de dinero electrónico. Se puede transferir entre dos usuarios a través de una red peer-to-peer, lo que requiere el uso de un libro de contabilidad distribuido, a saber: blockchain.

En la cadena de bloques, la arquitectura peer-to-peer permite que Bitcoin y otras monedas digitales se transfieran entre sí en todo el mundo sin la necesidad de intermediarios ni servidores centrales. Si algún usuario quiere participar en el proceso de verificación de bloques, puede establecer un nodo Bitcoin.

Por lo tanto, no existen pasos bancarios ni registros de transacciones en la red Bitcoin. En cambio, la cadena de bloques sirve como un libro de contabilidad electrónico que registra públicamente toda la actividad de las transacciones. Básicamente, cada nodo tiene una copia de la cadena de bloques y la compara con otros nodos para garantizar la exactitud de los datos. La red Bitcoin puede limpiar rápidamente todo tipo de errores y actividades maliciosas.

Los nodos pueden desempeñar una variedad de funciones diferentes en la cadena de bloques. Por ejemplo, los nodos completos verifican las transacciones mediante reglas de consenso, garantizando así la seguridad de la red.

Cada nodo completo mantiene una copia completa y actualizada de la cadena de bloques, lo que permite que estas copias de la cadena de bloques trabajen juntas para verificar el verdadero estado del libro mayor distribuido. Cabe señalar que no todos los nodos de verificación son mineros.


Ventaja

La arquitectura peer-to-peer de Blockchain tiene muchas ventajas. Más importante aún, en comparación con la arquitectura tradicional maestro-esclavo, las redes punto a punto tienen una mayor confidencialidad. La mayoría de los nodos son casi inmunes a los ataques de denegación de servicio (DoS) que han comprometido muchos sistemas.

Del mismo modo, dado que los datos se agregan a la cadena de bloques y requieren el consentimiento unánime de la mayoría de los nodos, es casi imposible que un atacante altere los datos. Especialmente en una red grande como Bitcoin. Sin embargo, las cadenas de bloques relativamente pequeñas son vulnerables a los ataques porque una persona u organización a menudo controla una gran cantidad de nodos (esto también es un ataque del 51%).

Por lo tanto, bajo la premisa del consentimiento unánime de la mayoría de los nodos, la red distribuida peer-to-peer hace que la cadena de bloques sea más resistente a ataques de red maliciosos. El modelo peer-to-peer es la razón principal por la que la red Bitcoin puede lograr una tolerancia a fallas bizantinas.

Además de la seguridad, la arquitectura peer-to-peer permite que las cadenas de bloques de moneda digital eviten el escrutinio de las autoridades centrales. A diferencia de las cuentas bancarias normales, los gobiernos no pueden congelar ni consumir las billeteras de moneda digital. Las plataformas de contenido y procesamiento de pagos personales también pueden evitar los correspondientes esfuerzos de censura. Para evitar la intervención de terceros en sus pagos, algunos comerciantes en línea han adoptado métodos de pago en moneda digital.


limitación

A pesar de las ventajas anteriores, el uso de redes P2P en blockchain también tiene ciertas limitaciones.

Dado que el libro mayor distribuido debe actualizarse en cada nodo, agregar transacciones a la cadena de bloques requiere una enorme potencia informática. Aunque esto mejora la seguridad, también reduce en gran medida la eficiencia y se ha convertido en uno de los principales obstáculos para la expansión y promoción de las redes blockchain. Sin embargo, los criptógrafos y los desarrolladores de blockchain están trabajando en alternativas para abordar los problemas de escalabilidad. Algunos ejemplos obvios incluyen la "Red Lightning", el "Plasma Ethereum" y el "Protocolo Mimblewimble".

Otra posible limitación se refiere a posibles ataques durante una bifurcación dura. Dado que la mayoría de las cadenas de bloques son descentralizadas y de código abierto, los nodos son libres de copiar y modificar el código y separarse de la cadena principal, formando de esta manera nuevas redes paralelas. Las bifurcaciones duras son completamente normales y no representan una amenaza. Pero ambas cadenas pueden ser vulnerables a ataques de repetición si ciertas medidas de seguridad no se emplean adecuadamente.

Además, la naturaleza distribuida de las redes P2P las hace relativamente difíciles de controlar y regular. Este problema no se limita a blockchain, algunas aplicaciones y empresas P2P también están involucradas en actividades ilegales como la infracción.


Resumir

La arquitectura peer-to-peer se puede desarrollar y utilizar en muchos aspectos diferentes, y su posición central en blockchain también contribuyó al nacimiento de las monedas digitales. Al distribuir el libro de transacciones a través de una gran red de nodos, la arquitectura peer-to-peer proporciona las ventajas de seguridad, descentralización y protección contra la regulación.

Además de sus ventajas en la tecnología blockchain, los sistemas P2P también se pueden aplicar a otros campos de aplicaciones informáticas distribuidas, desde redes de intercambio de archivos hasta plataformas de comercio de energía.