Tải bản đầy đủ (.pdf) (29 trang)

Truyền Thông Thời Gian Thực Future Internet WebRTC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.42 MB, 29 trang )

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: />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 WebRTC
7
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 Signaling
12
Quá trình tín hiệu WebRTC Signaling
13
Quá trình tín hiệu WebRTC Signaling
An RTCSessionDescription
 Bản tin SDP
14
Ví dụ khởi tạo RTCPeerConnection
15
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ưởng
18
Mô hình thực tế có STUN và TURN
19
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

×