SlideShare a Scribd company logo
Truyền thông thời gian thực
WebRTC
Topic: Future Internet
Nguyễn Văn Quyền
Nhữ Bảo Vũ
1
Nội dung trình bày
1
• Giới thiệu tổng quan
• Tính phổ biến và tiềm năng phát triển
• Tính cách mạng của WebRTC
2
• Kiến trúc và kỹ thuật bên trong WebRTC
• Quá trình tín hiệu WebRTC Signaling
• So sánh WebRTC với VoIP truyền thống
3
• Các nền tảng hỗ trợ WebRTC
• Mô hình ứng dụng và thử nghiệm
• Kết luận
2
Giới thiệu tổng quan
WebRTC (Web Real Time Communication) là tập hợp các
tiêu chuẩn và giao thức cho phép các trình duyệt Web thực
hiện trực tiếp các tính năng truyền thông đa phương tiện thời
gian thực như gọi điện, truyền hình, truyền dữ liệu, gửi tin
nhắn bằng các API JavaScript.
3
Giới thiệu tổng quan
 Ý tưởng WebRTC được đưa ra bởi nhóm phát triển Google
Hangouts từ năm 2009.
 Mục tiêu của dự án là kết nối máy tính, điện thoại, tivi, … và
thực hiện được các cuộc gọi thông qua 1 nền tảng chung.
 Việc giao tiếp của chúng ta sẽ dễ hàng hơn và điều này có
thể thay thế các phương phức liên lạc hiện có.
 Điểm đột phá của WebRTC là có thể tham gia ngay cuộc hội
thoại ngay trên trình duyệt. (no install + no plugins).
 10/02/2015, WebRTC 1.0 chính thức được công bố.
4
Tính phổ biến và tiềm năng phát triển
 Tính đến cuối 2013, đã có hơn 1 tỉ thiết bị được kích hoạt sử
dụng WebRTC
 Dự báo tăng lên 4 tỷ vào năm 2016, trong đó có khoảng 1,5
tỷ người dùng thường xuyên. @disruptivedean
 WebRTC có thể hoạt động trên bất cứ thiết bị nào có cài một
trong các trình duyệt hỗ trợ WebRTC.
Khảo sát: http://www.dialogic.com/en/landing/webrtcsurvey-results.aspx
5
Tính cách mạng của WebRTC
 VoIP là một thị trường tương đối đóng, đặc biệt là khi so với
những gì đang diễn ra với các công nghệ trên nền web.
 WebRTC làm đơn giản hóa rất nhiều công nghệ cho các nhà
phát triển. Mã nguồn mở và miễn phí.
 Tiếp cận được với số đông các nhà phát triển web – một
nhóm lớn hơn nhiều so với các chuyên gia VoIP.
6
Tổng quan kiến trúc WebRTC7
WebRTC API
 MediaStream (aka getUserMedia): truy cập audio, video
 RTCPeerConnection: giao tiếp audio và video, trao đổi SDP,
chạy thuật toán vượt NAT.
 RTCDataChannel: truyền dữ liệu tùy ý peer-to-peer.
8
Media Stream (aka getUserMedia)
 <video> trong html5
 Ràng buộc: {video: true, audio: true}
9
Media Stream (aka getUserMedia)10
Quá trình tín hiệu WebRTC Signaling
 WebRTC sử dụng RTCPeerConnection để streaming dữ liệu qua các trình duyệt,
nhưng cần 1 cơ chế điều phối giao tiếp và gửi thông điệp điều khiển.
 Quá trình tín hiệu được sử dụng và trao đổi 3 loại thông tin:
 Session control messages: để khởi tạo, đóng phiên truyền thông và báo cáo lỗi.
 Network configuration: thông tin mạng bên ngoài, bandwidth, ip và port ?
 Media capabilities: chứa thông tin bộ mã hóa, độ phân giải có thể được xử lý bởi trình
duyệt gọi đi và trình duyệt gọi đến.
 Việc trao đổi tín hiệu thông tin phải hoàn tất trước khi quá trình streaming peer-to-
peer bắt đầu.
11
Quá trình tín hiệu WebRTC Signaling12
Quá trình tín hiệu WebRTC Signaling13
Quá trình tín hiệu WebRTC Signaling
An RTCSessionDescription
 Bản tin SDP
14
Ví dụ khởi tạo RTCPeerConnection15
Các phương pháp truyền tín hiệu
 Người phát triển quyết định (*)
16
Kỹ thuật Ưu điểm Yêu cầu phía máy chủ
WebSocket Không yêu cầu 1 hạ tầng
tín hiệu
Máy chủ WebSocket được cài
đặt theo giao thức riêng
XHR Không yêu cầu 1 hạ tầng
tín hiệu
Máy chủ Web cài đặt theo giao
thức riêng
SIP over WebSocket Dễ dàng tương tác với
SIP
SIP Registrar/Proxy Server có
hỗ trợ SIP over WebSocket
XMPP/Jingle Dễ dàng tương thích với
XMPP clients
XMPP Server có hỗ trợ XMPP
WebSocket transport
Data Channel Độ trễ tín hiệu thấp và
nâng cao bảo mật
WebSocket hoặc WebServer
cài đặt thiết lập Data Channel
Kênh dữ liệu RTCDataChannel
 Giao tiếp dữ liệu bất kỳ peer-to-peer
 Same API as WebSockets
 Ultra-low latency
 Unreliable or reliable
 Secure
17
Mô hình lý tưởng18
Mô hình thực tế có STUN và TURN19
Security
 Bắt buộc mã hóa đối với media và data
 Secure UI, explicit opt-in
 Sandboxed, no plugins
20
So sánh WebRTC với VoIP truyền thống
Classic VoIP WebRTC
Signaling SIP, XMPP or H.323 in most cases Undefined
Media
transport
RTP/RTCP RTP/RTCP
Security SRTP in SIP,H.235 in H.323 SRTP
NAT
traversal
STUN/TURN/ICE in SIP,H.450.x in
H.323
STUN/TURN/ICE
Video
codecs
H.263, H.264 VP8, H.264
Voice
codecs
G.7xx series of codecs G.711, iLBC, iSAC
Network IPV4 / IPV6
21
Các nền tảng hỗ trợ WebRTC
 Browsers:
 Chrome
 Chrome for Android
 Firefox
 Opera
 Native Java and Objective-C bindings
 Phones and more
 sipML5 open source JavaScript SIP client
 Phono open source JavaScript phone API
 Zingaya embeddable phone widget
22
Network topologies
Peer to peer: one-to-one call
 Fello.in – Tư vấn khách hàng, khám bệnh trực tuyến
23
Network topologies
Mesh: small N-way call
 Room43.in – Phòng họp trực
tuyến
24
Network topologies
Star: medium N-way call
 Meetingui.com phục vụ học trực tuyến
25
Network topologies
MCU: large N-way call
26
27
Kết luận
 WebRTC sẽ trở lên phổ biến và thân thiện trong truyền thông trong
khoảng 10 năm tới
 Nó đã sẵn sàng và đang được sử dụng (WebRTC 1.0, February 10, 2015)
 “Khuynh hướng” tiếng nói và truyền hình được đưa vào Web và các ứng
dụng
 Trao đổi dữ liệu thời gian thực
 Là một hệ sinh thái mới cho các nhà phát triển, các công ty viễn thông,
nhà cung cấp dịch vụ cloud.
 Chi phí thấp, truyền thông audio video chất lượng cao.
 Đa dạng nền tảng, không chỉ chạy trên các trình duyệt. Hàng tỉ thiết bị và
hàng tỉ người dùng !
28
Tài liệu tham khảo
 Twitter: @webrtc, @disruptivedean, @dialogic, @nhubaovu
 WebRTC presentation at Google I/O 2013
http://io13webrtc.appspot.com/
 Dialogic WebRTC Impact Survey, 2013
http://www.dialogic.com/en/landing/webrtcsurvey-results.aspx
 Google Groups (discuss-webrtc)
https://groups.google.com/forum/#!forum/discuss-webrtc
 The leading authority on WebRTC
https://bloggeek.me/webrtc/
 Getting Started with WebRTC
http://www.html5rocks.com/en/tutorials/webrtc/basics/
29

More Related Content

Similar to Future Internet - WebRTC

[DevDay 2017] WebRTC: Công nghệ trao đổi video, âm thanh, dữ liệu thời gian t...
[DevDay 2017] WebRTC: Công nghệ trao đổi video, âm thanh, dữ liệu thời gian t...[DevDay 2017] WebRTC: Công nghệ trao đổi video, âm thanh, dữ liệu thời gian t...
[DevDay 2017] WebRTC: Công nghệ trao đổi video, âm thanh, dữ liệu thời gian t...
DevDay Da Nang
 
Voip
VoipVoip
Bao cao da lap trinh manh
Bao cao da lap trinh manhBao cao da lap trinh manh
Bao cao da lap trinh manh
Bồ Công Anh
 
New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word documentNguyễn 0983882811
 
Code Camp #1
Code Camp #1Code Camp #1
Code Camp #1
Dat Le Viet
 
Vpn Qos trên router cisco
Vpn Qos trên router ciscoVpn Qos trên router cisco
Vpn Qos trên router cisco
laonap166
 
Giới thiệu giải pháp polycom
Giới thiệu giải pháp polycomGiới thiệu giải pháp polycom
Giới thiệu giải pháp polycomtechworldvn
 
Bao cao thuc tap vpn
Bao cao thuc tap vpnBao cao thuc tap vpn
Bao cao thuc tap vpn
TranQuangChien
 
Tổng quan về vpn
Tổng quan về vpnTổng quan về vpn
Tổng quan về vpn
VNG
 
Giới thiệu tổng quan mạng lưới và dịch vụ của HITC_2023 - Copy.pdf
Giới thiệu tổng quan mạng lưới và dịch vụ của HITC_2023 - Copy.pdfGiới thiệu tổng quan mạng lưới và dịch vụ của HITC_2023 - Copy.pdf
Giới thiệu tổng quan mạng lưới và dịch vụ của HITC_2023 - Copy.pdf
p7bentre
 
Giai phap hoi nghi truyen hinh h264-svc
Giai phap hoi nghi truyen hinh h264-svcGiai phap hoi nghi truyen hinh h264-svc
Giai phap hoi nghi truyen hinh h264-svc
Vidyo Việt Nam
 
Chuong 1 tongquanve web&amp;htm-lcanban
Chuong 1  tongquanve web&amp;htm-lcanban Chuong 1  tongquanve web&amp;htm-lcanban
Chuong 1 tongquanve web&amp;htm-lcanban
Quý Nguyễn
 
Chuong 1 tongquanve web&amp;htm-lcanban
Chuong 1  tongquanve web&amp;htm-lcanban Chuong 1  tongquanve web&amp;htm-lcanban
Chuong 1 tongquanve web&amp;htm-lcanban
Quý Nguyễn
 
VoIP with Opensips
VoIP with OpensipsVoIP with Opensips
VoIP with Opensips
Trần Thanh
 
C10 - Routing Remote Access -2020.pdf
C10 - Routing Remote Access -2020.pdfC10 - Routing Remote Access -2020.pdf
C10 - Routing Remote Access -2020.pdf
TrnMinhT9
 
VietTel AntiDDoS Volume Based
VietTel AntiDDoS Volume BasedVietTel AntiDDoS Volume Based
VietTel AntiDDoS Volume Based
Pavel Odintsov
 
Giai phap hntt aver
Giai phap hntt averGiai phap hntt aver
Giai phap hntt averThieu Nguyen
 

Similar to Future Internet - WebRTC (20)

Basic VOIP
Basic VOIPBasic VOIP
Basic VOIP
 
[DevDay 2017] WebRTC: Công nghệ trao đổi video, âm thanh, dữ liệu thời gian t...
[DevDay 2017] WebRTC: Công nghệ trao đổi video, âm thanh, dữ liệu thời gian t...[DevDay 2017] WebRTC: Công nghệ trao đổi video, âm thanh, dữ liệu thời gian t...
[DevDay 2017] WebRTC: Công nghệ trao đổi video, âm thanh, dữ liệu thời gian t...
 
Voip
VoipVoip
Voip
 
Bao cao da lap trinh manh
Bao cao da lap trinh manhBao cao da lap trinh manh
Bao cao da lap trinh manh
 
New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word document
 
Code Camp #1
Code Camp #1Code Camp #1
Code Camp #1
 
Giới thiệu WCF
Giới thiệu WCFGiới thiệu WCF
Giới thiệu WCF
 
Vpn Qos trên router cisco
Vpn Qos trên router ciscoVpn Qos trên router cisco
Vpn Qos trên router cisco
 
Giới thiệu giải pháp polycom
Giới thiệu giải pháp polycomGiới thiệu giải pháp polycom
Giới thiệu giải pháp polycom
 
Bao cao thuc tap vpn
Bao cao thuc tap vpnBao cao thuc tap vpn
Bao cao thuc tap vpn
 
công nghệ wimax
công nghệ wimaxcông nghệ wimax
công nghệ wimax
 
Tổng quan về vpn
Tổng quan về vpnTổng quan về vpn
Tổng quan về vpn
 
Giới thiệu tổng quan mạng lưới và dịch vụ của HITC_2023 - Copy.pdf
Giới thiệu tổng quan mạng lưới và dịch vụ của HITC_2023 - Copy.pdfGiới thiệu tổng quan mạng lưới và dịch vụ của HITC_2023 - Copy.pdf
Giới thiệu tổng quan mạng lưới và dịch vụ của HITC_2023 - Copy.pdf
 
Giai phap hoi nghi truyen hinh h264-svc
Giai phap hoi nghi truyen hinh h264-svcGiai phap hoi nghi truyen hinh h264-svc
Giai phap hoi nghi truyen hinh h264-svc
 
Chuong 1 tongquanve web&amp;htm-lcanban
Chuong 1  tongquanve web&amp;htm-lcanban Chuong 1  tongquanve web&amp;htm-lcanban
Chuong 1 tongquanve web&amp;htm-lcanban
 
Chuong 1 tongquanve web&amp;htm-lcanban
Chuong 1  tongquanve web&amp;htm-lcanban Chuong 1  tongquanve web&amp;htm-lcanban
Chuong 1 tongquanve web&amp;htm-lcanban
 
VoIP with Opensips
VoIP with OpensipsVoIP with Opensips
VoIP with Opensips
 
C10 - Routing Remote Access -2020.pdf
C10 - Routing Remote Access -2020.pdfC10 - Routing Remote Access -2020.pdf
C10 - Routing Remote Access -2020.pdf
 
VietTel AntiDDoS Volume Based
VietTel AntiDDoS Volume BasedVietTel AntiDDoS Volume Based
VietTel AntiDDoS Volume Based
 
Giai phap hntt aver
Giai phap hntt averGiai phap hntt aver
Giai phap hntt aver
 

Future Internet - WebRTC

  • 1. Truyền thông thời gian thực WebRTC Topic: Future Internet Nguyễn Văn Quyền Nhữ Bảo Vũ 1
  • 2. Nội dung trình bày 1 • Giới thiệu tổng quan • Tính phổ biến và tiềm năng phát triển • Tính cách mạng của WebRTC 2 • Kiến trúc và kỹ thuật bên trong WebRTC • Quá trình tín hiệu WebRTC Signaling • So sánh WebRTC với VoIP truyền thống 3 • Các nền tảng hỗ trợ WebRTC • Mô hình ứng dụng và thử nghiệm • Kết luận 2
  • 3. Giới thiệu tổng quan WebRTC (Web Real Time Communication) là tập hợp các tiêu chuẩn và giao thức cho phép các trình duyệt Web thực hiện trực tiếp các tính năng truyền thông đa phương tiện thời gian thực như gọi điện, truyền hình, truyền dữ liệu, gửi tin nhắn bằng các API JavaScript. 3
  • 4. Giới thiệu tổng quan  Ý tưởng WebRTC được đưa ra bởi nhóm phát triển Google Hangouts từ năm 2009.  Mục tiêu của dự án là kết nối máy tính, điện thoại, tivi, … và thực hiện được các cuộc gọi thông qua 1 nền tảng chung.  Việc giao tiếp của chúng ta sẽ dễ hàng hơn và điều này có thể thay thế các phương phức liên lạc hiện có.  Điểm đột phá của WebRTC là có thể tham gia ngay cuộc hội thoại ngay trên trình duyệt. (no install + no plugins).  10/02/2015, WebRTC 1.0 chính thức được công bố. 4
  • 5. Tính phổ biến và tiềm năng phát triển  Tính đến cuối 2013, đã có hơn 1 tỉ thiết bị được kích hoạt sử dụng WebRTC  Dự báo tăng lên 4 tỷ vào năm 2016, trong đó có khoảng 1,5 tỷ người dùng thường xuyên. @disruptivedean  WebRTC có thể hoạt động trên bất cứ thiết bị nào có cài một trong các trình duyệt hỗ trợ WebRTC. Khảo sát: http://www.dialogic.com/en/landing/webrtcsurvey-results.aspx 5
  • 6. Tính cách mạng của WebRTC  VoIP là một thị trường tương đối đóng, đặc biệt là khi so với những gì đang diễn ra với các công nghệ trên nền web.  WebRTC làm đơn giản hóa rất nhiều công nghệ cho các nhà phát triển. Mã nguồn mở và miễn phí.  Tiếp cận được với số đông các nhà phát triển web – một nhóm lớn hơn nhiều so với các chuyên gia VoIP. 6
  • 7. Tổng quan kiến trúc WebRTC7
  • 8. WebRTC API  MediaStream (aka getUserMedia): truy cập audio, video  RTCPeerConnection: giao tiếp audio và video, trao đổi SDP, chạy thuật toán vượt NAT.  RTCDataChannel: truyền dữ liệu tùy ý peer-to-peer. 8
  • 9. Media Stream (aka getUserMedia)  <video> trong html5  Ràng buộc: {video: true, audio: true} 9
  • 10. Media Stream (aka getUserMedia)10
  • 11. Quá trình tín hiệu WebRTC Signaling  WebRTC sử dụng RTCPeerConnection để streaming dữ liệu qua các trình duyệt, nhưng cần 1 cơ chế điều phối giao tiếp và gửi thông điệp điều khiển.  Quá trình tín hiệu được sử dụng và trao đổi 3 loại thông tin:  Session control messages: để khởi tạo, đóng phiên truyền thông và báo cáo lỗi.  Network configuration: thông tin mạng bên ngoài, bandwidth, ip và port ?  Media capabilities: chứa thông tin bộ mã hóa, độ phân giải có thể được xử lý bởi trình duyệt gọi đi và trình duyệt gọi đến.  Việc trao đổi tín hiệu thông tin phải hoàn tất trước khi quá trình streaming peer-to- peer bắt đầu. 11
  • 12. Quá trình tín hiệu WebRTC Signaling12
  • 13. Quá trình tín hiệu WebRTC Signaling13
  • 14. Quá trình tín hiệu WebRTC Signaling An RTCSessionDescription  Bản tin SDP 14
  • 15. Ví dụ khởi tạo RTCPeerConnection15
  • 16. Các phương pháp truyền tín hiệu  Người phát triển quyết định (*) 16 Kỹ thuật Ưu điểm Yêu cầu phía máy chủ WebSocket Không yêu cầu 1 hạ tầng tín hiệu Máy chủ WebSocket được cài đặt theo giao thức riêng XHR Không yêu cầu 1 hạ tầng tín hiệu Máy chủ Web cài đặt theo giao thức riêng SIP over WebSocket Dễ dàng tương tác với SIP SIP Registrar/Proxy Server có hỗ trợ SIP over WebSocket XMPP/Jingle Dễ dàng tương thích với XMPP clients XMPP Server có hỗ trợ XMPP WebSocket transport Data Channel Độ trễ tín hiệu thấp và nâng cao bảo mật WebSocket hoặc WebServer cài đặt thiết lập Data Channel
  • 17. Kênh dữ liệu RTCDataChannel  Giao tiếp dữ liệu bất kỳ peer-to-peer  Same API as WebSockets  Ultra-low latency  Unreliable or reliable  Secure 17
  • 18. Mô hình lý tưởng18
  • 19. Mô hình thực tế có STUN và TURN19
  • 20. Security  Bắt buộc mã hóa đối với media và data  Secure UI, explicit opt-in  Sandboxed, no plugins 20
  • 21. So sánh WebRTC với VoIP truyền thống Classic VoIP WebRTC Signaling SIP, XMPP or H.323 in most cases Undefined Media transport RTP/RTCP RTP/RTCP Security SRTP in SIP,H.235 in H.323 SRTP NAT traversal STUN/TURN/ICE in SIP,H.450.x in H.323 STUN/TURN/ICE Video codecs H.263, H.264 VP8, H.264 Voice codecs G.7xx series of codecs G.711, iLBC, iSAC Network IPV4 / IPV6 21
  • 22. Các nền tảng hỗ trợ WebRTC  Browsers:  Chrome  Chrome for Android  Firefox  Opera  Native Java and Objective-C bindings  Phones and more  sipML5 open source JavaScript SIP client  Phono open source JavaScript phone API  Zingaya embeddable phone widget 22
  • 23. Network topologies Peer to peer: one-to-one call  Fello.in – Tư vấn khách hàng, khám bệnh trực tuyến 23
  • 24. Network topologies Mesh: small N-way call  Room43.in – Phòng họp trực tuyến 24
  • 25. Network topologies Star: medium N-way call  Meetingui.com phục vụ học trực tuyến 25
  • 27. 27
  • 28. Kết luận  WebRTC sẽ trở lên phổ biến và thân thiện trong truyền thông trong khoảng 10 năm tới  Nó đã sẵn sàng và đang được sử dụng (WebRTC 1.0, February 10, 2015)  “Khuynh hướng” tiếng nói và truyền hình được đưa vào Web và các ứng dụng  Trao đổi dữ liệu thời gian thực  Là một hệ sinh thái mới cho các nhà phát triển, các công ty viễn thông, nhà cung cấp dịch vụ cloud.  Chi phí thấp, truyền thông audio video chất lượng cao.  Đa dạng nền tảng, không chỉ chạy trên các trình duyệt. Hàng tỉ thiết bị và hàng tỉ người dùng ! 28
  • 29. Tài liệu tham khảo  Twitter: @webrtc, @disruptivedean, @dialogic, @nhubaovu  WebRTC presentation at Google I/O 2013 http://io13webrtc.appspot.com/  Dialogic WebRTC Impact Survey, 2013 http://www.dialogic.com/en/landing/webrtcsurvey-results.aspx  Google Groups (discuss-webrtc) https://groups.google.com/forum/#!forum/discuss-webrtc  The leading authority on WebRTC https://bloggeek.me/webrtc/  Getting Started with WebRTC http://www.html5rocks.com/en/tutorials/webrtc/basics/ 29