Closed3
【Web技術 / 学習メモ】WebSocket / WebRTC
WebSocketとは
- クライアントとサーバー間で、非同期の双方向通信を可能にするWeb技術
- クライアントとサーバー間を常時接続するので、リアルタイム性のあるやり取りが可能になる(チャットアプリの実装などで使える)
参考URL
WebRTCとは
-
クライアントとクライアント間で、双方向通信を可能にするP2P型(ピアツーピア型)[1]のWeb技術
※P2Pと言いつつ、ネットワーク越しの双方向通信を実現するには結局サーバーは必要 - Webブラウザ上で、音声や映像などのデータをリアルタイムに送受信できる技術
※ユースケースとしては音声や映像データの送受信が多い様だが、データであればテキストやファイルの送受信も可能
WebRTCの関連用語
用語 | 概要 |
---|---|
シグナリングサーバー | P2Pを実現する際に必要なサーバー。 通信相手に関する情報を得るために利用する |
STUNサーバ | 外部ネットワークから見た自端末の、IPアドレス教えてくれるもの |
TURNサーバ | P2P通信したい端末の間立ち、データをリレーしてくれるもの |
SFU (Selective Forwarding Unit) |
WebRTCの通信方式の一つ。 クライアントから来るデータを、別のクライアント側に受け渡す |
MCU (Multipoint Control Unit) |
WebRTCの通信方式の一つ。 クライアントから来るデータをサーバー側で合成して、クライアント側に返す |
SFUとMCUの通信イメージ
- SFUはデータを中継するだけ。サーバーからの出力はN本になる
- MCUはサーバー側で人数分のデータを合成し、1つにまとめて送信する。そのためサーバーからの出力は1本になる
参考URL
- zenn | WebRTC徹底解説
- WebRTC コトハジメ
- WebRTCとは?その仕組みや構成をわかりやすく解説
- Qita | 【初心者向け】STUN/TURNサーバをざっくり解説してみた
- Qita | WebRTCの基本とP2P通信が成立するまでを学ぶ
- SFU(Selective Forwarding Unit )/MCU(Multipoint Control Unit)とは
-
「Peer to Peer」の略称。サーバーを介さずに、端末同士で直接データのやり取りを行う通信方式 ↩︎
WebsocketとWebRTCの比較イメージ
このスクラップは2023/11/04にクローズされました