GoalBit: la primer red P2P de distribuci³n de video en vivo de

53
Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones GoalBit: la primer red P2P de distribución de video en vivo de código abierto y gratuita Daniel De Vera Facultad de Ingeniería, Universidad de la República. Tutores: Dr. Pablo Rodríguez-Bocca (Universidad de la República) Dr. Héctor Cancela (Universidad de la República) Maestría en Informática, Defensa de Tesis, 18 de Octubre, 2010 1 / 48

Transcript of GoalBit: la primer red P2P de distribuci³n de video en vivo de

Page 1: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

GoalBit: la primer red P2Pde distribución de video en vivo

de código abierto y gratuita

Daniel De Vera

Facultad de Ingeniería, Universidad de la República.

Tutores: Dr. Pablo Rodríguez-Bocca (Universidad de la República)Dr. Héctor Cancela (Universidad de la República)

Maestría en Informática, Defensa de Tesis,18 de Octubre, 2010

1 / 48

Page 2: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Outline

1 Introducción

2 Streaming GoalBit

3 Extensiones del Streaming GoalBit

4 Conclusiones y Perspectivas

2 / 48

Page 3: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Outline

1 Introducción

2 Streaming GoalBit

3 Extensiones del Streaming GoalBit

4 Conclusiones y Perspectivas

3 / 48

Page 4: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Introducción / Distribución de Video

Distribución de Video: Contexto Actual

ContextoTráfico de video en Internet: 40% del tráfico total, seespera que en el 2014 este alcance al 57%.Crecimiento del video en vivo respecto a otras formas dedistribución.Mayores costos/problemas asociados a la distribución devideo en vivo.

Demanda en ráfaga.¿Como escalar la red?

Una SoluciónLas redes P2P pueden resolver estos problemas.

4 / 48

Page 5: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Introducción / Distribución de Video

Distribución de Video: Contexto Actual

ContextoTráfico de video en Internet: 40% del tráfico total, seespera que en el 2014 este alcance al 57%.Crecimiento del video en vivo respecto a otras formas dedistribución.Mayores costos/problemas asociados a la distribución devideo en vivo.

Demanda en ráfaga.¿Como escalar la red?

Una SoluciónLas redes P2P pueden resolver estos problemas.

4 / 48

Page 6: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Introducción / Distribución de Video

Redes P2P para la Distribución de Video en VivoRedes virtuales a nivel de aplicación sobre InternetLos nodos de la red ofrecen sus recursos a otros nodos dela red.

BeneficiosAl aumentar la cantidad de usuarios en la red, aumenta lacantidad de recursos disponibles.Disminuye el ancho de banda requerido por el proveedor.Es posible elegir a los nodos que sirven a un peer segúnun criterio de proximidad, evitando los cuellos de botellaen la red.

DesafíosLos recursos son muy dinámicos: la red debe ser robustapara soportar estas fluctuaciones.

5 / 48

Page 7: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Introducción / Distribución de Video

Redes P2PTV y la Actualidad

Actuales Redes P2PTVPPLive: más de 200, 000 usuarios concurrentes en unmismo canal.SopCast: más de 100, 000 usuarios concurrentes.Octoshape, TVants, TVU networks, etc.

Todas redes comerciales de código y protocolocerrado.

Proceso de EstandarizaciónEn Febrero del 2010, la IETF anunció la creación delgrupo de trabajo PPSP.Protocolo estándar de streaming P2P para contenidos envivo y para video bajo demanda.

6 / 48

Page 8: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Introducción / Distribución de Video

Distribución de Video: Contribuciones

Contribuciones en el Área de la Distribución de VideoSe diseñó un protocolo abierto, para la distribución decontenidos en vivo, de tipo P2P.Se realizó una implementación de referencia.Se contribuyó con el grupo PPSP de la IETF en ladefinición de un protocolo estándar de streaming P2P.Se extendió la implementación para su uso en una CDN.

7 / 48

Page 9: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Introducción / Monitoreo de Video

Monitoreo de Video: Introducción

Una CDN debe monitorear continuamente su distribución devideo, detectando fallas y corrigiendolas.

Tipos de MonitoreoActivo / Pasivo.Completo / Parcial.Calidad de Experiencia (QoE) / Otros.

¿Como Podemos Medir la Calidad de Experiencia?Evaluaciones Subjetivas / Objetivas.Enfoque híbrido: Pseudo-Subjective Quality Assessment.

Aproxima los valores obtenidos mediante evaluacionessubjetivas de forma automática.

Es ideal lograr un monitoreo de la QoE completo.8 / 48

Page 10: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Introducción / Monitoreo de Video

Monitoreo de Video y la Actualidad

En la Actualidad:Existen múltiples soluciones de monitoreo, pero todassuelen ser:

soluciones de alto porte, muy costosas;soluciones de monitoreo parcial, no brindan una visióncompleta de la red.soluciones de monitoreo pasivo, aplicando alguna técnicade “probing”, capturan el estado de los contenidos.

9 / 48

Page 11: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Introducción / Monitoreo de Video

Monitoreo de Video: Contribuciones

Contribuciones en el Área del Monitoreo de VideoSe integra la metodología PSQA al diseño del protocoloGoalBit y a su implementación de referencia.Al usar GoalBit se dispone de un monitoreo completo dela calidad percibida por los usuarios finales.Se desarrolla un prototipo de un monitor genérico,pasivo y parcial, de redes de distribución de video.Se lleva a cabo un exhaustivo análisis sobre los videosdistribuidos en YouTube.

10 / 48

Page 12: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Outline

1 Introducción

2 Streaming GoalBit

3 Extensiones del Streaming GoalBit

4 Conclusiones y Perspectivas

11 / 48

Page 13: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / Arquitectura

Arquitectura

ComponentesBroadcaster(s)Super-peersPeersTrackerMedia Portal

12 / 48

Page 14: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / GoalBit Transport Protocol (GBTP)

Flujo de Ejecución de un Contenido

13 / 48

Page 15: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / GoalBit Transport Protocol (GBTP)

Conceptos Generales

El stream es dividido en piezas de tamaño fijo, cada piezaes identificada por un único número.Cada peer posee una ventana deslizante y un reproductorde video que consume de dicha ventana.Active Buffer : la secuencia ininterrumpida de chunks apartir de la línea de ejecución del reproductor.

Active Buffer Index (ABI): Se define como el mayornúmero de secuencia incluido dentro del active buffer.

14 / 48

Page 16: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / GoalBit Transport Protocol (GBTP)

Comunicación Peers-Tracker

Comunicación Peers-TrackerAl iniciar el peer solicita al tracker un swarm (conjunto depeers) y un ABI en donde comenzar la ejecución.Los peers reportan sistematicamente su ABI y su calidadpercibida al tracker.Comunicación sobre HTTP/HTTPS, basada en un únicomensaje llamado announce.El swarm debe ser distinto según el tipo de peer que losolicita:

un broadcaster-peer no va a utilizar su swarm;un super-peer debe recibir la lista de los broadcaster-peersy de los otros super-peers;un peer debe recibir una lista con algunos super-peers ymuchos peers.

15 / 48

Page 17: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / GoalBit Transport Protocol (GBTP)

Comunicación Peer-Peer

Comunicación Peer-PeerLlevada a cabo en base al intercambio de 13 mensajesbinarios sobre el protocolo TCP.El puerto es configurable, por defecto se usa el 2706.Los mensajes se pueden clasificar en dos grandes grupos:

mensajes de intercambio de información contextual (quepeer permanece conectado y que piezas posee):HANDSHAKE, BITFIELD, HAVE, WINDOW UPDATE yKEEP-ALIVE;mensajes de intercambio de piezas: INTERESTED, NOTINTERESTED, CHOKE, UNCHOKE, REQUEST, CANCEL,PIECE y DONT HAVE.

16 / 48

Page 18: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / GoalBit Transport Protocol (GBTP)

Comunicación Peer-Peer (2)

Flujo de mensajes referidos al intercambio de informacióncontextual.

17 / 48

Page 19: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / GoalBit Transport Protocol (GBTP)

Comunicación Peer-Peer (3)

Flujo de mensajes referidos al intercambio de piezas.

18 / 48

Page 20: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / GoalBit Packetized Stream (GBPS)

GoalBit Packetized Stream (GBPS)

GBPS define el contenido y la estructura de las piezas aser distribuidas mediante GBTP.

Formato de las piezas GBPS:

19 / 48

Page 21: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / Implementación de Referencia

Implementación de Referencia: GoalBit Player

La implementación de GoalBit se basa en 3 diferentesaplicaciones: Videolan Media Player (VLC), EnhancedCTorrent y OpenTracker.

Al momento de implementar el protocolo se deben tomarvarias desiciones de diseño... 20 / 48

Page 22: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / Implementación de Referencia

Implementación de Referencia: GoalBit Player

La implementación de GoalBit se basa en 3 diferentesaplicaciones: Videolan Media Player (VLC), EnhancedCTorrent y OpenTracker.

Al momento de implementar el protocolo se deben tomarvarias desiciones de diseño... 20 / 48

Page 23: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / Decisiones de Diseño

Estrategia de Armado del Swarm de un Peer

¿Como el tracker arma el swarm de un peer?El swarm debería ser:

pequeño, típicamente 55 peers;incluir peers que se encuentran descargandoaproximadamente las mismas piezas (ABIs similares);incluir peers que presentan el mismo compromiso con lared (o no?. . . );incluir peers de forma aleatoria (o no?. . . );geográficamente próximo al peer iniciándose.

Tesis de maestría de Darío Padula: armado del swarm en basea la geografía de los peers (modelo P4P).

21 / 48

Page 24: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / Decisiones de Diseño

Estrategia de Armado del Swarm de un Peer

¿Como el tracker arma el swarm de un peer?El swarm debería ser:

pequeño, típicamente 55 peers;incluir peers que se encuentran descargandoaproximadamente las mismas piezas (ABIs similares);incluir peers que presentan el mismo compromiso con lared (o no?. . . );incluir peers de forma aleatoria (o no?. . . );geográficamente próximo al peer iniciándose.

Tesis de maestría de Darío Padula: armado del swarm en basea la geografía de los peers (modelo P4P).

21 / 48

Page 25: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / Decisiones de Diseño

Estrategia de Selección de Peers

¿Como decide un peer a que pares enviarles contenido?Tit-for-Tat (aplicada en BitTorrent):

un peer debe habilitar a los pares de los que realiza másdescargas;recompensa para los contactos más generosos.

Optimistic-Unchocking (aplicada en BitTorrent):con el fin de explorar la red y de integrar a los nuevospeers, cada ciertos intervalos de tiempo se selecciona unpar al azar.

En la implementación de referencia, se aplica tit-for-tat cada 10segundos y optimistic-unchocking cada 30 segundos.

22 / 48

Page 26: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / Decisiones de Diseño

Estrategia de Selección de Peers

¿Como decide un peer a que pares enviarles contenido?Tit-for-Tat (aplicada en BitTorrent):

un peer debe habilitar a los pares de los que realiza másdescargas;recompensa para los contactos más generosos.

Optimistic-Unchocking (aplicada en BitTorrent):con el fin de explorar la red y de integrar a los nuevospeers, cada ciertos intervalos de tiempo se selecciona unpar al azar.

En la implementación de referencia, se aplica tit-for-tat cada 10segundos y optimistic-unchocking cada 30 segundos.

22 / 48

Page 27: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / Decisiones de Diseño

Estrategia de Selección de Piezas

¿Al momento de solicitar una pieza, que se debe solicitar?Estrategia exponencial:

se definen 3 rangos: el “urgente”, el “próximo” y el “futuro”;si falta una pieza en el rango urgente, se pide esa pieza;sino, se piden piezas en base al resultado del muestreo deuna variable aleatoria exponencial.

Tesis de maestría de Pablo Romero: “Optimización de laEstrategia de Selección de Piezas de Video en Redes P2P”.

23 / 48

Page 28: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / Decisiones de Diseño

Estrategia de Selección de Piezas

¿Al momento de solicitar una pieza, que se debe solicitar?Estrategia exponencial:

se definen 3 rangos: el “urgente”, el “próximo” y el “futuro”;si falta una pieza en el rango urgente, se pide esa pieza;sino, se piden piezas en base al resultado del muestreo deuna variable aleatoria exponencial.

Tesis de maestría de Pablo Romero: “Optimización de laEstrategia de Selección de Piezas de Video en Redes P2P”.

23 / 48

Page 29: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Especificación del Streaming GoalBit / Decisiones de Diseño

Estrategia de Selección de Piezas (2)

En tesis de maestría de Pablo Romero:se analiza esta problemática desde un punto de vistamatemático;se define un modelo de cooperación entre pares;se buscan soluciones óptimas en el modelo (estrategiasde permutaciones).

En esta tesis:mediante emulaciones se compara la estrategia depermutaciones con la exponencial;en redes pequeñas la estrategia de permutacionesperforma mejor que la exponencial;en redes mayores los resultados se invierten.

24 / 48

Page 30: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Resultados Empíricos / Análisis del Protocolo GBTP

Análisis del Protocolo GBTP

Mensajes GBTP: 2400 segundos, evento poco popular.

Recibidos EnviadosTipo de mensaje Cantidad Bytes % Cantidad Bytes %

HANDSHAKE 24 1848 0.00 365 28105 0.56BITFIELD 42 2135 0.00 128 4792 0.10

HAVE 3323 33230 0.03 5469 54690 1.10WIN UPDATE 120 720 0.00 65 390 0.01KEEP-ALIVE 19 19 0.00 19 19 0.00INTERESTED 2208 4416 0.00 2179 4358 0.09

NOT INTERESTED 2203 4406 0.00 2166 4332 0.09CHOKE 636 1272 0.00 617 1234 0.02

UNCHOKE 653 1306 0.00 627 1254 0.03REQUEST 63 882 0.00 54013 756182 15.17CANCEL 4 56 0.00 7 98 0.00PIECE 1707 111887022 99.68 63 4129398 82.84

DONT HAVE 52296 313776 0.28 0 0 0.00Total 112251088 100.00 4984852 100.00

25 / 48

Page 31: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Resultados Empíricos / Análisis del Protocolo GBTP

Análisis del Protocolo GBTP (2)

Mensajes GBTP: 5600 segundos, evento popular.

Recibidos EnviadosTipo de mensaje Cantidad Bytes % Cantidad Bytes %

HANDSHAKE 66 5082 0.00 953 73381 0.03BITFIELD 279 12956 0.01 387 18692 0.01

HAVE 16286 162860 0.06 46968 469680 0.16WIN UPDATE 322 1932 0.00 321 1926 0.00KEEP-ALIVE 0 0 0.00 14 14 0.00INTERESTED 11031 22062 0.01 7253 14506 0.01

NOT INTERESTED 10989 21978 0.01 7237 14474 0.01CHOKE 2664 5328 0.00 2537 5074 0.00

UNCHOKE 2689 5378 0.00 2584 5168 0.00REQUEST 4741 66374 0.03 56159 786226 0.27CANCEL 608 8512 0.00 173 2422 0.00PIECE 3871 253728566 99.75 4358 285649468 99.52

DONT HAVE 52174 313044 0.12 0 0 0.00Total 254354072 100.00 287041031 100.00

26 / 48

Page 32: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Resultados Empíricos / Análisis del Protocolo GBTP

Análisis del Protocolo GBTP (3)

Resultados del Análisis del Protocolo GBTPDefinimos como overhead, a los bytes de la transmisión nopertenecientes al contenido de video.GBTP presenta un bajo overhead : entre 0.4% y 1.1%

Overhead durante latransmisión del evento poco

popular.

Tipo de Overhead Bytes %Entrante 381136 0.34Saliente 856084 17.17Global 1237220 1.05

Overhead durante latransmisión del evento popular.

Tipo de Overhead Bytes %Entrante 664216 0.26Saliente 1435143 0.50Global 2099359 0.38

27 / 48

Page 33: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Resultados Empíricos / Resultados del Broadcasting de un Usuario Final

Resultados del Broadcasting de un Usuario

Broadcasting de un Usuario FinalCaracterísticas de la transmisión:

un único servidor con capacidad de ancho de banda desubida de 2 Mbps;el stream fue codificado a 300 Kbps.

Información capturada desde nuestro cliente GoalBit:

28 / 48

Page 34: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Resultados Empíricos / Resultados del Broadcasting de un Usuario Final

Resultados del Broadcasting de un Usuario (2)

Resultados ObtenidosGrandes ahorros en términos de ancho de banda:

en una arquitectura cliente-servidor se hubieran necesitado18 Mbps, por lo que se miden ahorros de hasta un 90%.

Muy buena calidad de experiencia:nuestro cliente midió un 0.03% de pérdidas durante laejecución del streaming.

29 / 48

Page 35: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Outline

1 Introducción

2 Streaming GoalBit

3 Extensiones del Streaming GoalBit

4 Conclusiones y Perspectivas

30 / 48

Page 36: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

La Plataforma GoalBit / Introducción

La Plataforma GoalBit

Funcionalidades Provistas por la Plataforma GoalBitAsignación dinámica de recursos.

Administración centralizada.Adaptación del streaming a otras tecnologías.

31 / 48

Page 37: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

La Plataforma GoalBit / Arquitectura

Arquitectura

ArquitecturaLos broadcasters y los super-peers se anuncianperiodicamente en el servidor de control.Los super-peers toman ordenes del servidor de control.El tracker reporta la demanda de cada contenido.El servidor de control asigna los recursos disponibleseficientemente.

32 / 48

Page 38: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

La Plataforma GoalBit / Implementación

Implementación

Tanto los broadcasters como los controllers fueronimplementados sobre el GoalBit Media Player.El servidor de control fue implementado con PHP,BerkeleyDB y MySQL.

33 / 48

Page 39: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

La Plataforma GoalBit / Implantación en AdinetTV

Implantación a Modo de Prueba

Los broadcasters toman la señal desde un streamingMMS en formato WMV/WMA/ASF.Se adapta la señal para ser servida con servidores Flash.Se sirve el streaming al usuario final mediante RTMP yGBTP.

34 / 48

Page 40: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Monitoreo de la Calidad de Experiencia en GoalBit / Introducción

Monitoreo de QoE en GoalBit: Introducción

Objetivo: tener una visión completa de la QoEpercibida en la red.Para calcular la QoE se aplica la función de PSQA definidapor Pablo Rodriguez-Bocca en su doctorado.Para su aplicación se requiere insertar cierta informacióndentro del streaming, en un proceso de post-codificación.

En el streaming GoalBitLos broadcasters insertan dentro del streaming lainformación necesaria para calcular el PSQA.Los peers al reproducir el contenido, calculan su PSQA ylo reportan al tracker.

35 / 48

Page 41: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Monitoreo de la Calidad de Experiencia en GoalBit / Resultados Obtenidos

Resultados Obtenidos

Evolución del PSQA promedio medido por el trackerdurante más de 5 horas de la transmisión de un streaming.

El PSQA promedio valió 0.997, lo que significa que losusuarios vieron el video con una calidad excelente.

36 / 48

Page 42: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Monitoreo de la Calidad de Experiencia en GoalBit / Resultados Obtenidos

Resultados Obtenidos (2)

Evolución del PSQA promedio medido por el trackerdurante más de 7 horas de transmisión de un streaming.

En este caso se puede observar problemas con lafuente: problemas con la señal de ingreso al broadcastero problemas con el broadcaster en sí mismo.

37 / 48

Page 43: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Monitor Goalbit: un Monitor Genérico para la Distribución de Video / Introducción

Monitor Goalbit: Introducción

Una NecesidadUn monitor pasivo automático es imprescindible en redes dedistribución de contenidos de mediano y gran porte.

Una pequeña CDN con: 20 canales en video y 800 videos.10 servidores de streaming.Puntos de acceso al contenido: (800 + 20)× 10 = 8200.

Monitor Genérico de Contenidos en Vivo y bajo DemandaMonitoreo pasivo, basado en la técnica de probing.Visión parcial del estado de los contenidos en la red.Capaz de monitorear cualquier tipo de streaming (GoalBit,MMS, RTMP, etc.).Diseño muy similar a las soluciones de alto porte.

38 / 48

Page 44: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Monitor Goalbit: un Monitor Genérico para la Distribución de Video / Implementación

Implementación

Componentes:Ejecución del monitoreo: implementado en el propioGoalBit Media Player.Administración y presentación de los resultados:implementado con PHP, BerkeleyDB y MySQL.

39 / 48

Page 45: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Monitor Goalbit: un Monitor Genérico para la Distribución de Video / Implementación

Implementación (2)

Interfaz del Monitor GoalBit al detectar un error sobre unstreaming.

40 / 48

Page 46: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Monitor Goalbit: un Monitor Genérico para la Distribución de Video / Resultados

Resultados Obtenidos: un Análisis sobre YouTube

Potencial del Monitor GoalBit:En Octubre del 2009 se llevó a cabo un exhaustivomonitoreo sobre YouTube.Se implementó un módulo de web-crawling, el cual explorael portal Web capturando los videos existentes.

Cantidad de contenidos capturados: 31159Cantidad de codificaciones por contenido: 2.74Cantidad de videos analizados: 85205Cantidad de videos con error: 861Porcentaje de videos con error: 1.01 %

41 / 48

Page 47: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Monitor Goalbit: un Monitor Genérico para la Distribución de Video / Resultados

Un Análisis sobre YouTube (2)

Principales codificaciones de los contenidos en YouTube.

Codec de video Codec de audio Muxer Cantidad total Porcentaje sobre Bitrate promediode videos el total de videos (en Kbps)

H.264 MP4A FLV 37823 44.4 % 590Resoluciones más populares: 320x240 9185 24.3 % (10.8 %) 302

640x360 6103 16.1 % (7.2 %) 729640x480 5809 15.4 % (6.8 %) 712480x360 4074 10.8 % (4.8 %) 647854x480 3874 10.2 % (4.5 %) 1040

FLV1 MP3 FLV 30562 35.9 % 329Resoluciones más populares: 320x240 17278 56.5 % (20.3 %) 316

400x226 6191 20.3 % (7.7 %) 370320x180 1836 6.0 % (2.2 %) 333320x214 1571 5.1 % (1.8 %) 329300x240 500 1.6 % (0.6 %) 323

AVC1 MP4A MP4 15742 18.5 % 856Resoluciones más populares: 480x360 6450 41.0 % (7.6 %) 706

1280x720 3648 23.2 % (4.3 %) 1211480x270 2408 15.3 % (2.8 %) 610480x320 1106 7.0 % (1.3 %) 680450x360 458 2.9 % (0.5 %) 592

42 / 48

Page 48: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Monitor Goalbit: un Monitor Genérico para la Distribución de Video / Resultados

Un Análisis sobre YouTube (3)

Perfiles de las diferentes codificaciones de los contenidos.

Cantidad de videos Número de Codec de video Codec de audio Muxer Posiblespor contenido video resoluciones

1 1 FLV1 MP3 FLV 320x2402 1 H.264 MP4A FLV 640x360 o 320x240

2 FLV1 MP3 FLV 400x226 o 320x2403 1 H.264 MP4A FLV 640x480 o 640x360

2 H.264 MP4A FLV 480x360 o 640x3603 FLV1 MP3 FLV 320x240 o 400x226

4 1 AVC1 MP4A MP4 1280x7202 H.264 MP4A FLV 854x4803 H.264 MP4A FLV 640x3604 FLV1 MP3 FLV 400x226

5 1 AVC1 MP4A MP4 1280x7202 H.264 MP4A FLV 854x480 o 640x3603 AVC1 MP4A MP4 480x2704 H.264 MP4A FLV 640x360 o 320x1805 FLV1 MP3 FLV 400x226 o 320x180

43 / 48

Page 49: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Outline

1 Introducción

2 Streaming GoalBit

3 Extensiones del Streaming GoalBit

4 Conclusiones y Perspectivas

44 / 48

Page 50: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Conclusiones y Perspectivas / Publicaciones

Publicaciones y Demostraciones

Publicaciones realizadas durante el transcurso de la tesis:

M. E. Bertinat, D. De Vera, D. Padula, F. Robledo, P.Rodríguez-Bocca, P. Romero y G. Rubino.GoalBit: The First Free and Open Source Peer-to-PeerStreaming NetworkLANC’09

M. E. Bertinat, D. De Vera, D. Padula, F. Robledo, P.Rodríguez-Bocca, P. Romero y G. Rubino.A COP for Cooperation in a P2P Streaming ProtocolICUMT’09

M. E. Bertinat, D. De Vera, D. Padula, F. Robledo, P.Rodríguez-Bocca y P. Romero.Systematic Procedure for Improving Continuity andLatency on a P2P Streaming ProtocolLatinCom’09

D. De Vera, P. Rodríguez-Bocca, y G. Rubino.QoE Monitoring Platform for Video Delivery NetworksIPOM’07

D. De Vera, P. Rodríguez-Bocca y G. Rubino.Automatic quality of experience measuring on videodelivering networksACM SIGMETRICS Performance Evaluation Review,Volume 36, Issue 2, páginas 79-82, 2008.

Demostraciones realizadas en conferencias:

D. De Vera, P. Rodríguez-Bocca, y G. Rubino.Automatic quality of experience measuring on videodelivering networksSIGMETRICS’08. Ganadora del Best StudentDemonstration Award.

45 / 48

Page 51: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Conclusiones y Perspectivas / Conclusiones

Conclusiones

ConclusionesSe presentó el diseño e implementación de GoalBit.Se presentaron algunas extensiones realizadas alstreaming GoalBit:

la Plataforma GoalBit;el Monitor GoalBit.

Muy buenos resultados obtenidos con GoalBit:90% de ahorro en el ancho de banda;muy buena calidad percibida por los usuarios finales.

No solo un gran aporte a la comunidad open-source,un importante aporte a la comunidad académica:

desde la creación de GoalBit, han habido 2 tesis de grado y4 tesis de maestría inspiradas en él.

46 / 48

Page 52: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Conclusiones y Perspectivas / Perspectivas

Perspectivas a Futuro

Perspectivas a FuturoMejoras en el protocolo GBTP y en la especificaciónGBPS.Mejoras en las estrategias aplicadas en el protocolo.Mejoras en la implementación.Integración de video bajo demanda.Continuar contribuyendo con el grupo PPSP de la IETF.Crear la primer CDN-P2P open-source.

47 / 48

Page 53: GoalBit: la primer red P2P de distribuci³n de video en vivo de

Introducción Streaming GoalBit Extensiones del Streaming GoalBit Conclusiones

Preguntas?

Preguntas?

Gracias!!Por su atención.

48 / 48