SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
WebRTC beyond
Audio and Video
Silvia Pfeiffer
Coviu
WebRTC Summit, 4th Nov
8:30am – 9:05am
A bit about me
What is WebRTC to you?
1. An SDK to develop voice and video mobile applications?
2. A means to include the browser in your unified
communications solution?
3. An extension-free way to re-write your video conferencing
application?
4. An opportunity for adding video/audio communications to
your Web application?
5. A new Web API that Web developers need help with?
Is it …
Are you even using
the data channel?
What does data
sharing mean to you?
• File sharing ?
• Screensharing ?
• Text chat ?
What is WebRTC to the Web?
• Google’s original motivation: video conferencing for the Web
• What it really is: A novel paradigm: peer-to-peer
• Every browser is a (potential) server
• Every browser can share files
• Every browser can share compute time
• Distributed computing
for the Web
Distributed Computing
Characteristics
• concurrency of components
(decentralisation)
• lack of a global clock
• independent failure of components
Decentralisation
• Decentralisation of data
• No central storage, efficiency
• High availability
• Privacy of data
• Scalability
• Decentralisation of computing
• Parallel computing
• Scalability
• Decentralisation of communication channels
• Publish – Subscribe
Challenges of Peer-to-Peer
• Decentralisation of data
• No central storage: search is more difficult
• Potential for lower availability
• Decentralisation of computing
• Parallel computing complexity
• Coherence
• Decentralisation of communication
channels
• Not scalable
P2P Applications
of WebRTC
1. Video & Data streaming CDNs
How it works
• Provide video file on a server via HTML5 MSE
• Every user gets the video segment information
from the server
• Every user also turns into a server
• All users share video file segments with each
other via HTML5 MSE and WebRTC
Demo: https://www.peer5.com/video?=blg190215
P2P CDN goals
• Low-latency downloads
• Fast discovery: rely on server
• Robustness towards peak usage
• Less server infrastructure
• Less bandwidth use for publisher
Challenges for P2P CDN
approaches
Video consumer may object to
• Uncontrolled use of upstream bandwidth
QoS for video consumer may degrade
• Limited by upload speed of others
2. Webtorrent:
Bittorrent for the Web
Webtorrent: How it works
• Provide file through browser (seed)
• Webtorrent creates the torrent file, i.e. a DHT
of chunks of the file
• Share the magnet URI of the torrent file with
others
• New users at the magnet URI start leeching and
seeding
Web/Bittorrent goals
• No servers / pure P2P
• Sharing economy
• Parallel download instead of server
limits
• Avoid server infrastructure
• Minimal bandwidth use for publisher
Challenges for Webtorrent
approaches
• User may object to uncontrolled use of upstream
bandwidth (leads to freeriders)
• Need to leave browser open to continue seeding
• Distribution relies on a large number of participants
• Latency through distributed nodes
• Limited security – only publicly available content
3. P2P for
Video Collaboration?
Traditional collaboration
• Edit token serialises annotations between
endpoints
• Server keeps track of changes and holds ground
truth
• Token request and release introduces
• Document locking
• Taking turns
• Unresponsive UX
• Limited scalability
Properties of P2P Collaboration
• Collaborate on annotations in parallel
• Unsynchronised clocks
• Reliable communication is not guaranteed
• Participants drop out and return, new ones join
• Eventually everyone needs to see the same state
How to achieve consistency
• The order per endpoint matters: monotonically
increasing system state
• Broadcast state update to everyone else (gossip
protocol)
• The result between peers is commutative
A
B
C
Consistent shared state:
Line1
{L1, L2, L3, L4}
Line3
Line2
Line4
L1
L2
L2
L1
L1
L2 L3 L4
L3 L4
L4 L3
CRDT = commutative replicated data type
A
B
C
Line1 Line3
Line2
Line4
L1
L2
L2
L1
L1
L2 L3 L4
L3 L4
L4 L3
Duplication detection
Consistent shared state: {L1, L2, L3, L4}
A
B
C
Line1 Line3
Line2
Line4
L1
L2
L2
L1
L1
L2 L3 L4
L3 L4
L4 L1
Disconnect & Reconnect / Late connect
L2
L3
Consistent shared state: {L1, L2, L3, L4}
P2P Collaboration goals
• No servers / pure P2P
• Sharing in a safe environment: security and privacy
• Fastest way to share annotations
• Avoid server infrastructure
• Minimal bandwidth use for publisher
Summary
• P2P is a new paradigm on the Web:
• File sharing
• Richer collaboration
• Advantages are clear:
• Security & Privacy
• Speed in parallelisation
• Server-less introduces scalability
• Challenges:
• Concurrency complexity
• Network fault tolerance
Silvia Pfeiffer
Coviu
silvia@coviu.com
@CoviuApp
@silviapfeiffer

Contenu connexe

Tendances

Tendances (20)

Getting started with WebRTC
Getting started with WebRTCGetting started with WebRTC
Getting started with WebRTC
 
Baby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC TutorialBaby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC Tutorial
 
WebRTC on Mobile Devices: Challenges and Opportunities
WebRTC on Mobile Devices: Challenges and OpportunitiesWebRTC on Mobile Devices: Challenges and Opportunities
WebRTC on Mobile Devices: Challenges and Opportunities
 
WebRTC overview
WebRTC overviewWebRTC overview
WebRTC overview
 
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
 
WebRTC on Mobile
WebRTC on MobileWebRTC on Mobile
WebRTC on Mobile
 
WebRTC for Telco: Informa's WebRTC Global Summit Preconference
WebRTC for Telco: Informa's WebRTC Global Summit PreconferenceWebRTC for Telco: Informa's WebRTC Global Summit Preconference
WebRTC for Telco: Informa's WebRTC Global Summit Preconference
 
WebRTC presentation
WebRTC presentationWebRTC presentation
WebRTC presentation
 
Webrtc
WebrtcWebrtc
Webrtc
 
Implementation Lessons using WebRTC in Asterisk
Implementation Lessons using WebRTC in AsteriskImplementation Lessons using WebRTC in Asterisk
Implementation Lessons using WebRTC in Asterisk
 
WebRTC - a History Lesson
WebRTC - a History LessonWebRTC - a History Lesson
WebRTC - a History Lesson
 
Introduction to WebRTC
Introduction to WebRTCIntroduction to WebRTC
Introduction to WebRTC
 
WebRTC Overview
WebRTC OverviewWebRTC Overview
WebRTC Overview
 
WebRTC for Beginners Webinar Slides
WebRTC for Beginners Webinar SlidesWebRTC for Beginners Webinar Slides
WebRTC for Beginners Webinar Slides
 
DevCon5 (July 2014) - Intro to WebRTC
DevCon5 (July 2014) - Intro to WebRTCDevCon5 (July 2014) - Intro to WebRTC
DevCon5 (July 2014) - Intro to WebRTC
 
8 pre launch steps to go with the web rtc based application development
8 pre launch steps to go with the web rtc based application development8 pre launch steps to go with the web rtc based application development
8 pre launch steps to go with the web rtc based application development
 
WebRTC and Telehealth
WebRTC and TelehealthWebRTC and Telehealth
WebRTC and Telehealth
 
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
 
WebRTC and Janus intro for FOSS Stockholm January 2019
WebRTC and Janus intro for FOSS Stockholm January 2019WebRTC and Janus intro for FOSS Stockholm January 2019
WebRTC and Janus intro for FOSS Stockholm January 2019
 
WebRTC with Java
WebRTC with JavaWebRTC with Java
WebRTC with Java
 

En vedette

MLLeap, or How to Productionize Data Science Workflows Using Spark by Mikha...
  MLLeap, or How to Productionize Data Science Workflows Using Spark by Mikha...  MLLeap, or How to Productionize Data Science Workflows Using Spark by Mikha...
MLLeap, or How to Productionize Data Science Workflows Using Spark by Mikha...
Spark Summit
 

En vedette (14)

Devops and Immutable infrastructure - Cloud Expo 2015 NYC
Devops and Immutable infrastructure  - Cloud Expo 2015 NYCDevops and Immutable infrastructure  - Cloud Expo 2015 NYC
Devops and Immutable infrastructure - Cloud Expo 2015 NYC
 
Pets vs. Cattle: The Elastic Cloud Story
Pets vs. Cattle: The Elastic Cloud StoryPets vs. Cattle: The Elastic Cloud Story
Pets vs. Cattle: The Elastic Cloud Story
 
Internet of things, Big Data and Analytics 101
Internet of things, Big Data and Analytics 101Internet of things, Big Data and Analytics 101
Internet of things, Big Data and Analytics 101
 
Operationalize all the network things
Operationalize all the network thingsOperationalize all the network things
Operationalize all the network things
 
Cloud Expo - KEYNOTE Career Hacks
Cloud Expo - KEYNOTE Career HacksCloud Expo - KEYNOTE Career Hacks
Cloud Expo - KEYNOTE Career Hacks
 
Architectures for open and scalable clouds
Architectures for open and scalable cloudsArchitectures for open and scalable clouds
Architectures for open and scalable clouds
 
The Missing WebRTC Infrastructure
The Missing WebRTC InfrastructureThe Missing WebRTC Infrastructure
The Missing WebRTC Infrastructure
 
Webrtc - rich communication - quobis - victor pascual
Webrtc  - rich communication - quobis - victor pascualWebrtc  - rich communication - quobis - victor pascual
Webrtc - rich communication - quobis - victor pascual
 
Comcast Cloud - Pushing the Boundaries
Comcast Cloud - Pushing the BoundariesComcast Cloud - Pushing the Boundaries
Comcast Cloud - Pushing the Boundaries
 
WebRTC on Mobile | Kranky Geek SF 2016
WebRTC on Mobile | Kranky Geek SF 2016WebRTC on Mobile | Kranky Geek SF 2016
WebRTC on Mobile | Kranky Geek SF 2016
 
How WebRTC ushers the next wave of e-Learning innovation
How WebRTC ushers the next wave of e-Learning innovationHow WebRTC ushers the next wave of e-Learning innovation
How WebRTC ushers the next wave of e-Learning innovation
 
MLLeap, or How to Productionize Data Science Workflows Using Spark by Mikha...
  MLLeap, or How to Productionize Data Science Workflows Using Spark by Mikha...  MLLeap, or How to Productionize Data Science Workflows Using Spark by Mikha...
MLLeap, or How to Productionize Data Science Workflows Using Spark by Mikha...
 
Netflix Global Cloud Architecture
Netflix Global Cloud ArchitectureNetflix Global Cloud Architecture
Netflix Global Cloud Architecture
 
DevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for DockerDevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for Docker
 

Similaire à WebRTC beyond Audio and Video

Similaire à WebRTC beyond Audio and Video (20)

minor-project-1.ppt
minor-project-1.pptminor-project-1.ppt
minor-project-1.ppt
 
Semantic Web Analytics.pptx
Semantic Web Analytics.pptxSemantic Web Analytics.pptx
Semantic Web Analytics.pptx
 
Short introduction to WebRTC at the Amsterdam WebRTC Meetup, March 26, 2014
Short introduction to WebRTC at the Amsterdam WebRTC Meetup, March 26, 2014Short introduction to WebRTC at the Amsterdam WebRTC Meetup, March 26, 2014
Short introduction to WebRTC at the Amsterdam WebRTC Meetup, March 26, 2014
 
1. web technology basics
1. web technology basics1. web technology basics
1. web technology basics
 
BWE in Janus
BWE in JanusBWE in Janus
BWE in Janus
 
WebRTC Summit (June 2014) - WebRTC Interoperability (and why it is important)
WebRTC Summit (June 2014) - WebRTC Interoperability (and why it is important)WebRTC Summit (June 2014) - WebRTC Interoperability (and why it is important)
WebRTC Summit (June 2014) - WebRTC Interoperability (and why it is important)
 
Web conferancing
Web conferancingWeb conferancing
Web conferancing
 
Unit 1 web technology uptu slide
Unit 1 web technology uptu slideUnit 1 web technology uptu slide
Unit 1 web technology uptu slide
 
Видео+Конференция 2015: Секреты WebRTC: как вендоры извлекают пользу из проры...
Видео+Конференция 2015: Секреты WebRTC: как вендоры извлекают пользу из проры...Видео+Конференция 2015: Секреты WebRTC: как вендоры извлекают пользу из проры...
Видео+Конференция 2015: Секреты WebRTC: как вендоры извлекают пользу из проры...
 
Видео+Конференция 2015: Секреты WebRTC: как вендоры извлекают пользу из проры...
Видео+Конференция 2015: Секреты WebRTC: как вендоры извлекают пользу из проры...Видео+Конференция 2015: Секреты WebRTC: как вендоры извлекают пользу из проры...
Видео+Конференция 2015: Секреты WebRTC: как вендоры извлекают пользу из проры...
 
P2 p
P2 pP2 p
P2 p
 
How to Architect your WebRTC application, Alberto Gonzalez and Arin Sime, Web...
How to Architect your WebRTC application, Alberto Gonzalez and Arin Sime, Web...How to Architect your WebRTC application, Alberto Gonzalez and Arin Sime, Web...
How to Architect your WebRTC application, Alberto Gonzalez and Arin Sime, Web...
 
Multimedia- How Internet Works
Multimedia- How Internet WorksMultimedia- How Internet Works
Multimedia- How Internet Works
 
Kamailio World 2017: Getting Real with WebRTC
Kamailio World 2017: Getting Real with WebRTCKamailio World 2017: Getting Real with WebRTC
Kamailio World 2017: Getting Real with WebRTC
 
WebRTC Seminar Report
WebRTC  Seminar ReportWebRTC  Seminar Report
WebRTC Seminar Report
 
Blockchain powered video sharing platform
Blockchain powered video sharing platformBlockchain powered video sharing platform
Blockchain powered video sharing platform
 
Workshop web rtc implementation details
Workshop web rtc implementation detailsWorkshop web rtc implementation details
Workshop web rtc implementation details
 
WebRTC
WebRTCWebRTC
WebRTC
 
[Wroclaw #4] WebRTC & security: 101
[Wroclaw #4] WebRTC & security: 101[Wroclaw #4] WebRTC & security: 101
[Wroclaw #4] WebRTC & security: 101
 
Write a SocialTV app @ OpenSIPS 2021
Write a SocialTV app @ OpenSIPS 2021Write a SocialTV app @ OpenSIPS 2021
Write a SocialTV app @ OpenSIPS 2021
 

Plus de Silvia Pfeiffer

Plus de Silvia Pfeiffer (12)

Asymmetrical Interfaces in Telehealth
Asymmetrical Interfaces in TelehealthAsymmetrical Interfaces in Telehealth
Asymmetrical Interfaces in Telehealth
 
State of Media Accessibility in HTML5
State of Media Accessibility in HTML5State of Media Accessibility in HTML5
State of Media Accessibility in HTML5
 
Html5 Open Video Tutorial
Html5 Open Video TutorialHtml5 Open Video Tutorial
Html5 Open Video Tutorial
 
Taking HTML5 video a step further
Taking HTML5 video a step furtherTaking HTML5 video a step further
Taking HTML5 video a step further
 
Video Accessibility HTML5
Video Accessibility HTML5Video Accessibility HTML5
Video Accessibility HTML5
 
Scaling a Social Media Campaign
Scaling a Social Media CampaignScaling a Social Media Campaign
Scaling a Social Media Campaign
 
Nsw Public Sphere1: Video for Politicians and Government
Nsw Public Sphere1: Video for Politicians and GovernmentNsw Public Sphere1: Video for Politicians and Government
Nsw Public Sphere1: Video for Politicians and Government
 
Public Sphere3: ICT innovation is easy - commercialisation is hard
Public Sphere3: ICT innovation is easy - commercialisation is hardPublic Sphere3: ICT innovation is easy - commercialisation is hard
Public Sphere3: ICT innovation is easy - commercialisation is hard
 
Open Video Conference: HTML and the video tag
Open Video Conference: HTML and the video tagOpen Video Conference: HTML and the video tag
Open Video Conference: HTML and the video tag
 
Launch VQmetrics
Launch VQmetricsLaunch VQmetrics
Launch VQmetrics
 
OSDC 2008 talk: An open source "YouTube"
OSDC 2008 talk:  An open source "YouTube"OSDC 2008 talk:  An open source "YouTube"
OSDC 2008 talk: An open source "YouTube"
 
OSDC 2009, Metavidwiki: when you need a web video solution
OSDC 2009, Metavidwiki: when you need a web video solutionOSDC 2009, Metavidwiki: when you need a web video solution
OSDC 2009, Metavidwiki: when you need a web video solution
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Dernier (20)

What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

WebRTC beyond Audio and Video

  • 1. WebRTC beyond Audio and Video Silvia Pfeiffer Coviu WebRTC Summit, 4th Nov 8:30am – 9:05am
  • 3. What is WebRTC to you?
  • 4. 1. An SDK to develop voice and video mobile applications? 2. A means to include the browser in your unified communications solution? 3. An extension-free way to re-write your video conferencing application? 4. An opportunity for adding video/audio communications to your Web application? 5. A new Web API that Web developers need help with? Is it …
  • 5. Are you even using the data channel?
  • 6. What does data sharing mean to you? • File sharing ? • Screensharing ? • Text chat ?
  • 7.
  • 8. What is WebRTC to the Web? • Google’s original motivation: video conferencing for the Web • What it really is: A novel paradigm: peer-to-peer • Every browser is a (potential) server • Every browser can share files • Every browser can share compute time • Distributed computing for the Web
  • 9. Distributed Computing Characteristics • concurrency of components (decentralisation) • lack of a global clock • independent failure of components
  • 10. Decentralisation • Decentralisation of data • No central storage, efficiency • High availability • Privacy of data • Scalability • Decentralisation of computing • Parallel computing • Scalability • Decentralisation of communication channels • Publish – Subscribe
  • 11. Challenges of Peer-to-Peer • Decentralisation of data • No central storage: search is more difficult • Potential for lower availability • Decentralisation of computing • Parallel computing complexity • Coherence • Decentralisation of communication channels • Not scalable
  • 13. 1. Video & Data streaming CDNs
  • 14. How it works • Provide video file on a server via HTML5 MSE • Every user gets the video segment information from the server • Every user also turns into a server • All users share video file segments with each other via HTML5 MSE and WebRTC
  • 16. P2P CDN goals • Low-latency downloads • Fast discovery: rely on server • Robustness towards peak usage • Less server infrastructure • Less bandwidth use for publisher
  • 17. Challenges for P2P CDN approaches Video consumer may object to • Uncontrolled use of upstream bandwidth QoS for video consumer may degrade • Limited by upload speed of others
  • 19. Webtorrent: How it works • Provide file through browser (seed) • Webtorrent creates the torrent file, i.e. a DHT of chunks of the file • Share the magnet URI of the torrent file with others • New users at the magnet URI start leeching and seeding
  • 20. Web/Bittorrent goals • No servers / pure P2P • Sharing economy • Parallel download instead of server limits • Avoid server infrastructure • Minimal bandwidth use for publisher
  • 21. Challenges for Webtorrent approaches • User may object to uncontrolled use of upstream bandwidth (leads to freeriders) • Need to leave browser open to continue seeding • Distribution relies on a large number of participants • Latency through distributed nodes • Limited security – only publicly available content
  • 22. 3. P2P for Video Collaboration?
  • 23. Traditional collaboration • Edit token serialises annotations between endpoints • Server keeps track of changes and holds ground truth • Token request and release introduces • Document locking • Taking turns • Unresponsive UX • Limited scalability
  • 24. Properties of P2P Collaboration • Collaborate on annotations in parallel • Unsynchronised clocks • Reliable communication is not guaranteed • Participants drop out and return, new ones join • Eventually everyone needs to see the same state
  • 25. How to achieve consistency • The order per endpoint matters: monotonically increasing system state • Broadcast state update to everyone else (gossip protocol) • The result between peers is commutative
  • 26. A B C Consistent shared state: Line1 {L1, L2, L3, L4} Line3 Line2 Line4 L1 L2 L2 L1 L1 L2 L3 L4 L3 L4 L4 L3 CRDT = commutative replicated data type
  • 27. A B C Line1 Line3 Line2 Line4 L1 L2 L2 L1 L1 L2 L3 L4 L3 L4 L4 L3 Duplication detection Consistent shared state: {L1, L2, L3, L4}
  • 28. A B C Line1 Line3 Line2 Line4 L1 L2 L2 L1 L1 L2 L3 L4 L3 L4 L4 L1 Disconnect & Reconnect / Late connect L2 L3 Consistent shared state: {L1, L2, L3, L4}
  • 29. P2P Collaboration goals • No servers / pure P2P • Sharing in a safe environment: security and privacy • Fastest way to share annotations • Avoid server infrastructure • Minimal bandwidth use for publisher
  • 30. Summary • P2P is a new paradigm on the Web: • File sharing • Richer collaboration • Advantages are clear: • Security & Privacy • Speed in parallelisation • Server-less introduces scalability • Challenges: • Concurrency complexity • Network fault tolerance