
P2P (Peer-to-Peer)
glossary.categories.architectureConexión directa entre participantes sin un servidor central
¿Qué es P2P (Peer-to-Peer)?
P2P (Peer-to-Peer o entre pares) es una arquitectura de comunicación donde dos dispositivos se conectan directamente entre sí sin enrutar datos a través de un servidor central. En las videollamadas, esto significa que tu video y audio viajan directamente desde tu dispositivo al dispositivo de la otra persona, sin pasar por servidores intermediarios.
WebRTC fue diseñado fundamentalmente como un protocolo peer-to-peer. La conexión directa proporciona la menor latencia posible, la mejor privacidad (los datos no pasan por servidores de terceros) y los menores costos de infraestructura (sin servidores de medios para mantener).
Ventajas de P2P
- Menor latencia: La ruta más directa entre participantes, sin saltos de servidor
- Mejor privacidad: Los datos fluyen directamente entre participantes, sin pasar por servidores de terceros
- Menor costo de infraestructura: Sin servidores de medios para mantener ni ancho de banda de servidor para pagar
- E2EE integrado: DTLS-SRTP de WebRTC proporciona cifrado de extremo a extremo verdadero en conexiones P2P
Limitaciones de P2P
- No escala: Con N participantes, cada uno necesita enviar su flujo a N-1 pares. Para 5 personas, envías 4 flujos y descargas 4 flujos
- Dependiente de ancho de banda de subida: Tu ancho de banda de subida se divide entre todos los pares
- No hay grabación del servidor: Sin servidor involucrado, la grabación debe ocurrir del lado del cliente
- Sin funciones del servidor: No hay moderación centralizada, transcripción ni funciones de IA
Cuándo usar P2P vs. SFU
- Usar P2P: Llamadas 1 a 1, máxima privacidad, menor costo, menor latencia
- Usar SFU: Llamadas grupales (3+ participantes), necesidad de grabación del servidor, funciones empresariales
Muchas plataformas de videollamadas usan un enfoque híbrido: P2P para llamadas 1 a 1 y cambian automáticamente a SFU cuando un tercer participante se une.
Referencias
- Peer to Peer - BlogGeek.me