¿Te gustaría colaborar en un proyecto de software libre? Conoce P2PSP

Entendiendo el protocolo P2PSP

Comparte este artículo

Llevo unas semanas desconectado del proyecto por los exámenes, aunque he dedicado algún tiempo a probar WebRTC y buscar la forma de adaptar el P2PSP para conseguir implementarlo con éxito en el navegador. Lo primero, entender como funciona el protocolo.

El Protocolo P2PSP es un conjunto de reglas de transmisión y comportamiento que ayuda a aumentar la calidad de servicio en los sistemas de transmisión de streaming en tiempo real. El protocolo está diseñado por módulos, cada uno de ellos está definido por un conjunto de reglas que provee diferentes funcionalidades. Los módulos que forman el P2PSP son: Data Broadcasting Set (DBS) of rules, Lost chunks Recovery Set (LRS) of rules, Adaptive Chunk-rate Set (ACS) of rules, End-point Masquerading Set (EMS) of rules, NAT Traversal Set (NTS) of rules, Multi-Channel Set (MCS) of rules, Data Integrity Set (DIS) of rules, Data Privacy Set (DPS) of rules. 

El módulo principal e indispensable para el funcionamiento básico del protocolo es el DBS, el resto son opcionales, por lo tanto, nos centraremos en implementar este módulo en WebRTC para conseguir streaming de vídeo en tiempo real en el navegador.

Las entidades que serán necesarias para el funcionamiento del módulo DBS son:

  • Source: Es el que produce el stream que será transmitido a la red P2PSP. Normalmente es un servidor de video HTTP como Icecast
  • Player: Es el encargado de decodificar y reproducir el stream.
  • Splitter: Esta entidad recibe el stream desde el Source, lo divide en trozos del mismo tamaño y envía los trozos a los peers.
  • Peer: Recibe los trozos desde el splitter y desde otros peers, ensambla el stream y lo envia al Player

Sin embargo, para la versión en WebRTC debemos tener en cuenta que el Player y el Peer estarán incrustados en el navegador Web y el Splitter además de su función en la red P2PSP hará también la función de Signaling Server de WebRTC

Un posible escenario del P2PSP implementado con WebRTC se muestra a continuación:

Escenario WebRTC+P2PSP

Nótese que en la imagen anterior el player forma parte del Client+Peer y el Source se ha divido en Streaming Server, que hace la función del Source original descrito en el White Paper del protocolo P2PSP y en el Video Source, que es un dispositivo encargado de capturar el vídeo y enviarlo al Streaming Server.

El conjunto de reglas necesario para implementar el módulo DBS está descrito en la Web oficial del protocolo en la sección The Data Broadcasting Set of rules

Comparte este artículo

Escribir un comentario


Código de seguridad
Refescar

Suscripción RSS

feed-image Blog