![Page 1: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/1.jpg)
Peer-to-Peer et livestreaming10 ans de rechercheacadémiqueGwendal Simon
![Page 2: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/2.jpg)
la bulle académique
2 / 14 Gwendal Simon P2P live streaming
![Page 3: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/3.jpg)
monde académique vs. industriel
3 / 14 Gwendal Simon P2P live streaming
![Page 4: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/4.jpg)
qu’est-ce qu’un peer ?
px
=
+ +
Ex : PeerJS, Adobe Cirrus Ex : µTP, STUN
4 / 14 Gwendal Simon P2P live streaming
![Page 5: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/5.jpg)
qu’est-ce qu’un peer ?
px
=
+ +
Ex : PeerJS, Adobe Cirrus
Ex : µTP, STUN
4 / 14 Gwendal Simon P2P live streaming
![Page 6: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/6.jpg)
qu’est-ce qu’un peer ?
px
=
+ +
Ex : PeerJS, Adobe Cirrus Ex : µTP, STUN
4 / 14 Gwendal Simon P2P live streaming
![Page 7: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/7.jpg)
à l’origine fut la structure
s
source
p1
p2
p3 p4
p5
p6 p7
p8
feuilles non-contributeurs
impact des défaillances
structure figée
Points faiblespas de multi-layer video
coût de maintien
structure figée
Points faibles
5 / 14 Gwendal Simon P2P live streaming
![Page 8: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/8.jpg)
à l’origine fut la structure
s
source
p1
p2
p3 p4
p5
p6 p7
p8
feuilles non-contributeurs
impact des défaillances
structure figée
Points faiblespas de multi-layer video
coût de maintien
structure figée
Points faibles
5 / 14 Gwendal Simon P2P live streaming
![Page 9: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/9.jpg)
à l’origine fut la structure
s
source
p1
p2
p3 p4
p5
p6 p7
p8
feuilles non-contributeurs
impact des défaillances
structure figée
Points faibles
pas de multi-layer video
coût de maintien
structure figée
Points faibles
5 / 14 Gwendal Simon P2P live streaming
![Page 10: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/10.jpg)
à l’origine fut la structure
s
source
p1
p2
p3 p4
p5
p6 p7
p8
feuilles non-contributeurs
impact des défaillances
structure figée
Points faiblespas de multi-layer video
coût de maintien
structure figée
Points faibles
5 / 14 Gwendal Simon P2P live streaming
![Page 11: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/11.jpg)
à l’origine fut la structure
s
source
p1
p2
p3 p4
p5
p6 p7
p8
feuilles non-contributeurs
impact des défaillances
structure figée
Points faibles
pas de multi-layer video
coût de maintien
structure figée
Points faibles
5 / 14 Gwendal Simon P2P live streaming
![Page 12: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/12.jpg)
changer les règles du jeu
découpage en chunks
partage de chunk map
pull-based téléchargement
structure aléatoire mesh
6 / 14 Gwendal Simon P2P live streaming
![Page 13: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/13.jpg)
changer les règles du jeu
découpage en chunks
partage de chunk map
pull-based téléchargement
structure aléatoire mesh
6 / 14 Gwendal Simon P2P live streaming
![Page 14: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/14.jpg)
changer les règles du jeu
découpage en chunks
partage de chunk map
pull-based téléchargement
structure aléatoire mesh
6 / 14 Gwendal Simon P2P live streaming
![Page 15: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/15.jpg)
changer les règles du jeu
découpage en chunks
partage de chunk map
pull-based téléchargement
structure aléatoire mesh
6 / 14 Gwendal Simon P2P live streaming
![Page 16: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/16.jpg)
changer les règles du jeu
découpage en chunks
partage de chunk map
pull-based téléchargement
structure aléatoire mesh
6 / 14 Gwendal Simon P2P live streaming
![Page 17: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/17.jpg)
les réseaux mesh
s
source
p1
p2
p3 p4
p5
p6 p7
p8
à chaque round :
1. échange de chunk map
à chaque round :
1. échange de chunk map
2. requête de chunks c7
c8
c7
c3
c6
c4
c6
c5
c4
c3 c5
c5
à chaque round :
1. échange de chunk map
2. requête de chunks
3. envoi des chunks
7 / 14 Gwendal Simon P2P live streaming
![Page 18: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/18.jpg)
les réseaux mesh
s
source
p1
p2
p3 p4
p5
p6 p7
p8
à chaque round :
1. échange de chunk map
à chaque round :
1. échange de chunk map
2. requête de chunks c7
c8
c7
c3
c6
c4
c6
c5
c4
c3 c5
c5
à chaque round :
1. échange de chunk map
2. requête de chunks
3. envoi des chunks
7 / 14 Gwendal Simon P2P live streaming
![Page 19: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/19.jpg)
les réseaux mesh
s
source
p1
p2
p3 p4
p5
p6 p7
p8
à chaque round :
1. échange de chunk map
à chaque round :
1. échange de chunk map
2. requête de chunks
c7
c8
c7
c3
c6
c4
c6
c5
c4
c3 c5
c5
à chaque round :
1. échange de chunk map
2. requête de chunks
3. envoi des chunks
7 / 14 Gwendal Simon P2P live streaming
![Page 20: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/20.jpg)
les réseaux mesh
s
source
p1
p2
p3 p4
p5
p6 p7
p8
à chaque round :
1. échange de chunk map
à chaque round :
1. échange de chunk map
2. requête de chunks
c7
c8
c7
c3
c6
c4
c6
c5
c4
c3 c5
c5
à chaque round :
1. échange de chunk map
2. requête de chunks
3. envoi des chunks
7 / 14 Gwendal Simon P2P live streaming
![Page 21: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/21.jpg)
fenêtre glissante (exemple avec un peer)
lag. . .
chunk prodduitpar la source s
chunk le plus récentqu’un peer à 1 hopde s peut recevoir
chunk le plus récentqu’un peer à k hopsde s peut recevoir
le plus récentchunk reçu
chunks prioritaires
chunk à l’écran
chunks déjà joués
8 / 14 Gwendal Simon P2P live streaming
![Page 22: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/22.jpg)
fenêtre glissante (exemple avec un peer)
lag. . .
chunk prodduitpar la source s
chunk le plus récentqu’un peer à 1 hopde s peut recevoir
chunk le plus récentqu’un peer à k hopsde s peut recevoir
le plus récentchunk reçu
chunks prioritaires
chunk à l’écran
chunks déjà joués
8 / 14 Gwendal Simon P2P live streaming
![Page 23: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/23.jpg)
fenêtre glissante (exemple avec un peer)
lag. . .
chunk prodduitpar la source s
chunk le plus récentqu’un peer à 1 hopde s peut recevoir
chunk le plus récentqu’un peer à k hopsde s peut recevoir
le plus récentchunk reçu
chunks prioritaires
chunk à l’écran
chunks déjà joués
8 / 14 Gwendal Simon P2P live streaming
![Page 24: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/24.jpg)
fenêtre glissante (exemple avec un peer)
lag. . .
chunk prodduitpar la source s
chunk le plus récentqu’un peer à 1 hopde s peut recevoir
chunk le plus récentqu’un peer à k hopsde s peut recevoir
le plus récentchunk reçu
chunks prioritaires
chunk à l’écran
chunks déjà joués
8 / 14 Gwendal Simon P2P live streaming
![Page 25: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/25.jpg)
principaux algorithmescomment trouver des voisins ?
utilisation d’un tracker- tirage aléatoire- proximité réseau (IETF ALTO)- test de bande-passante, réputation, etc.
système peer-to-peer (trackerless)- gossip- table de hashage distribuée
quel chunk envoyer à qui ?tirage aléatoirele chunk le plus rare au peer le plus méritanten fonction de l’urgence
9 / 14 Gwendal Simon P2P live streaming
![Page 26: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/26.jpg)
principaux algorithmescomment trouver des voisins ?
utilisation d’un tracker- tirage aléatoire- proximité réseau (IETF ALTO)- test de bande-passante, réputation, etc.
système peer-to-peer (trackerless)- gossip- table de hashage distribuée
quel chunk envoyer à qui ?tirage aléatoirele chunk le plus rare au peer le plus méritanten fonction de l’urgence
9 / 14 Gwendal Simon P2P live streaming
![Page 27: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/27.jpg)
principaux algorithmescomment trouver des voisins ?
utilisation d’un tracker- tirage aléatoire- proximité réseau (IETF ALTO)- test de bande-passante, réputation, etc.
système peer-to-peer (trackerless)- gossip- table de hashage distribuée
quel chunk envoyer à qui ?tirage aléatoirele chunk le plus rare au peer le plus méritanten fonction de l’urgence
9 / 14 Gwendal Simon P2P live streaming
![Page 28: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/28.jpg)
principaux algorithmescomment trouver des voisins ?
utilisation d’un tracker- tirage aléatoire- proximité réseau (IETF ALTO)- test de bande-passante, réputation, etc.
système peer-to-peer (trackerless)- gossip- table de hashage distribuée
quel chunk envoyer à qui ?
tirage aléatoirele chunk le plus rare au peer le plus méritanten fonction de l’urgence
9 / 14 Gwendal Simon P2P live streaming
![Page 29: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/29.jpg)
principaux algorithmescomment trouver des voisins ?
utilisation d’un tracker- tirage aléatoire- proximité réseau (IETF ALTO)- test de bande-passante, réputation, etc.
système peer-to-peer (trackerless)- gossip- table de hashage distribuée
quel chunk envoyer à qui ?tirage aléatoirele chunk le plus rare au peer le plus méritanten fonction de l’urgence
9 / 14 Gwendal Simon P2P live streaming
![Page 30: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/30.jpg)
succès commercial
10 / 14 Gwendal Simon P2P live streaming
![Page 31: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/31.jpg)
la révolution du network coding
s
source
p1
p2
p3 p4
p5
p6 p7
p8
c1c2
c1c2
c2
c1
c1 ⊕ c2
c1 ⊕ c2
rappel : 1100 ⊕ 1010 = 0110
Un nouveau découpage en une génération dek blocs b1, b2, . . . , bk .Un peer possédant m blocs dans une généra-tion choisit des coefficients d1, d2, . . . , dm etgénère un nouveau bloc :∑
i≤mdi · bi
Quand un peer reçoit k blocs, il est capable dereconstituer la génération complète.
en pratique
c1 ⊕ c2
c1 ⊕ c2
utilisation optimale debande-passante
suppression des requêtes(push delivery)
11 / 14 Gwendal Simon P2P live streaming
![Page 32: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/32.jpg)
la révolution du network coding
s
source
p1
p2
p3 p4
p5
p6 p7
p8
c1c2
c1c2
c2
c1
c1 ⊕ c2
c1 ⊕ c2
rappel : 1100 ⊕ 1010 = 0110
Un nouveau découpage en une génération dek blocs b1, b2, . . . , bk .Un peer possédant m blocs dans une généra-tion choisit des coefficients d1, d2, . . . , dm etgénère un nouveau bloc :∑
i≤mdi · bi
Quand un peer reçoit k blocs, il est capable dereconstituer la génération complète.
en pratique
c1 ⊕ c2
c1 ⊕ c2
utilisation optimale debande-passante
suppression des requêtes(push delivery)
11 / 14 Gwendal Simon P2P live streaming
![Page 33: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/33.jpg)
la révolution du network coding
s
source
p1
p2
p3 p4
p5
p6 p7
p8
c1c2
c1c2
c2
c1
c1 ⊕ c2
c1 ⊕ c2
rappel : 1100 ⊕ 1010 = 0110
Un nouveau découpage en une génération dek blocs b1, b2, . . . , bk .Un peer possédant m blocs dans une généra-tion choisit des coefficients d1, d2, . . . , dm etgénère un nouveau bloc :∑
i≤mdi · bi
Quand un peer reçoit k blocs, il est capable dereconstituer la génération complète.
en pratique
c1 ⊕ c2
c1 ⊕ c2
utilisation optimale debande-passante
suppression des requêtes(push delivery)
11 / 14 Gwendal Simon P2P live streaming
![Page 34: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/34.jpg)
la révolution du network coding
s
source
p1
p2
p3 p4
p5
p6 p7
p8
c1c2
c1c2
c2
c1
c1 ⊕ c2
c1 ⊕ c2
rappel : 1100 ⊕ 1010 = 0110
Un nouveau découpage en une génération dek blocs b1, b2, . . . , bk .Un peer possédant m blocs dans une généra-tion choisit des coefficients d1, d2, . . . , dm etgénère un nouveau bloc :∑
i≤mdi · bi
Quand un peer reçoit k blocs, il est capable dereconstituer la génération complète.
en pratique
c1 ⊕ c2
c1 ⊕ c2
utilisation optimale debande-passante
suppression des requêtes(push delivery)
11 / 14 Gwendal Simon P2P live streaming
![Page 35: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/35.jpg)
la révolution du network coding
s
source
p1
p2
p3 p4
p5
p6 p7
p8
c1c2
c1c2
c2
c1
c1 ⊕ c2
c1 ⊕ c2
rappel : 1100 ⊕ 1010 = 0110
Un nouveau découpage en une génération dek blocs b1, b2, . . . , bk .Un peer possédant m blocs dans une généra-tion choisit des coefficients d1, d2, . . . , dm etgénère un nouveau bloc :∑
i≤mdi · bi
Quand un peer reçoit k blocs, il est capable dereconstituer la génération complète.
en pratique
c1 ⊕ c2
c1 ⊕ c2
utilisation optimale debande-passante
suppression des requêtes(push delivery)
11 / 14 Gwendal Simon P2P live streaming
![Page 36: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/36.jpg)
la révolution du network coding
s
source
p1
p2
p3 p4
p5
p6 p7
p8
c1c2
c1c2
c2
c1
c1 ⊕ c2
c1 ⊕ c2
rappel : 1100 ⊕ 1010 = 0110
Un nouveau découpage en une génération dek blocs b1, b2, . . . , bk .Un peer possédant m blocs dans une généra-tion choisit des coefficients d1, d2, . . . , dm etgénère un nouveau bloc :∑
i≤mdi · bi
Quand un peer reçoit k blocs, il est capable dereconstituer la génération complète.
en pratique
c1 ⊕ c2
c1 ⊕ c2
utilisation optimale debande-passante
suppression des requêtes(push delivery)
11 / 14 Gwendal Simon P2P live streaming
![Page 37: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/37.jpg)
et ça marche !
12 / 14 Gwendal Simon P2P live streaming
![Page 38: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/38.jpg)
vers les architectures peer-assisted
s
s0 s1 s2
source
datacenters
p1
p2
p3 p4
p5
p6 p7
p8
13 / 14 Gwendal Simon P2P live streaming
![Page 39: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/39.jpg)
pour conclure
10 ans de recherche pour des technologies qui :réduisent le traffic de contrôles’adaptent à une population dynamique
Et quelques défis toujours ouverts, dont :comment intégrer des mécanismes rate-adaptive ?cela peut-il être implémenté dans un smartphone ?
contact : [email protected]
14 / 14 Gwendal Simon P2P live streaming
![Page 40: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/40.jpg)
pour conclure
10 ans de recherche pour des technologies qui :réduisent le traffic de contrôles’adaptent à une population dynamique
Et quelques défis toujours ouverts, dont :comment intégrer des mécanismes rate-adaptive ?cela peut-il être implémenté dans un smartphone ?
contact : [email protected]
14 / 14 Gwendal Simon P2P live streaming
![Page 41: ConférenSquad #2 : Gwendal Simon - P2P & Live Streaming](https://reader034.vdocuments.site/reader034/viewer/2022051611/549f603aac7959504c8b481d/html5/thumbnails/41.jpg)
pour conclure
10 ans de recherche pour des technologies qui :réduisent le traffic de contrôles’adaptent à une population dynamique
Et quelques défis toujours ouverts, dont :comment intégrer des mécanismes rate-adaptive ?cela peut-il être implémenté dans un smartphone ?
contact : [email protected]
14 / 14 Gwendal Simon P2P live streaming