【うぇぶあーるてぃーしー】

WebRTC とは?

💡 ブラウザだけでビデオ通話ができる「裏方の立役者」
📌 このページのポイント
WebRTC: ブラウザ間P2P通信 ブラウザ A 映像 + 音声 + データ 送信側 ブラウザ B 映像 + 音声 + データ 受信側 P2P 直接接続 シグナリングサーバー(接続仲介) サーバー不要で通信 低遅延リアルタイム 暗号化が標準 ※ ビデオ通話、画面共有、ファイル転送などに利用
WebRTCのイメージ
ひよこ ひよこ

WebRTCがあると何がうれしいの?

ペンギン先生 ペンギン先生

昔はブラウザビデオ通話をするにはFlashやプラグインが必要だったんだ。WebRTCのおかげで、ブラウザだけで高品質なビデオ通話ファイル共有ができるようになったよ

ひよこ ひよこ

ZoomもWebRTCを使ってるの?

ペンギン先生 ペンギン先生

ZoomのWeb版はWebRTCを使っているけど、デスクトップアプリは独自の通信技術を使ってるよ。Google MeetやDiscordはWebRTCがメインの基盤技術だね

ひよこ ひよこ

P2P通信ってことは、大人数の会議はどうなるの?

ペンギン先生 ペンギン先生

参加者が増えるとP2Pだと回線がパンクするから、SFU(Selective Forwarding Unit)というサーバーを中継に使うよ。各参加者の映像をサーバーが受け取って、必要な映像だけを他の参加者に転送するんだ

ひよこ ひよこ

おもしろい!NAT越えって何?

ペンギン先生 ペンギン先生

家庭のルーターはNATという仕組みで外からの接続をブロックしてるから、ブラウザ同士が直接つながれないことがあるんだ。STUNサーバーで自分のグローバルIPを知り、それでもダメならTURNサーバーがデータを中継してくれる。この仕組みをICEと呼ぶよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「WebRTC」って出てきたら「ブラウザだけでリアルタイム通信(ビデオ通話など)ができる技術」と思えればだいたいOK!
📖 おまけ:英語の意味
「Web Real-Time Communication」 = Webリアルタイム通信
💬 「Web上でリアルタイム通信を実現する」という意味で、Googleが開発してオープンソース化した技術がベースだよ
← 用語集にもどる